aboutsummaryrefslogtreecommitdiff
path: root/share
diff options
context:
space:
mode:
Diffstat (limited to 'share')
-rw-r--r--share/Makefile15
-rw-r--r--share/atf/Makefile36
-rw-r--r--share/atf/Makefile.depend12
-rw-r--r--share/dict/README6
-rw-r--r--share/doc/Makefile2
-rw-r--r--share/doc/papers/beyond4.3/beyond43.ms6
-rw-r--r--share/doc/papers/diskperf/abs.ms6
-rw-r--r--share/doc/papers/diskperf/appendix.ms6
-rw-r--r--share/doc/papers/diskperf/conclusions.ms6
-rw-r--r--share/doc/papers/diskperf/equip.ms6
-rw-r--r--share/doc/papers/diskperf/methodology.ms6
-rw-r--r--share/doc/papers/diskperf/motivation.ms6
-rw-r--r--share/doc/papers/diskperf/results.ms6
-rw-r--r--share/doc/papers/diskperf/tests.ms6
-rw-r--r--share/doc/papers/fsinterface/abstract.ms6
-rw-r--r--share/doc/papers/fsinterface/fsinterface.ms6
-rw-r--r--share/doc/papers/fsinterface/slides.t6
-rw-r--r--share/doc/papers/kernmalloc/alloc.fig6
-rw-r--r--share/doc/papers/kernmalloc/appendix.ms6
-rw-r--r--share/doc/papers/kernmalloc/appendix.t6
-rw-r--r--share/doc/papers/kernmalloc/kernmalloc.t6
-rw-r--r--share/doc/papers/kernmalloc/usage.tbl6
-rw-r--r--share/doc/papers/kerntune/0.t6
-rw-r--r--share/doc/papers/kerntune/1.t6
-rw-r--r--share/doc/papers/kerntune/2.t6
-rw-r--r--share/doc/papers/kerntune/3.t6
-rw-r--r--share/doc/papers/kerntune/4.t6
-rw-r--r--share/doc/papers/kerntune/fig2.pic6
-rw-r--r--share/doc/papers/newvm/0.t6
-rw-r--r--share/doc/papers/newvm/1.t6
-rw-r--r--share/doc/papers/newvm/a.t6
-rw-r--r--share/doc/papers/relengr/0.t6
-rw-r--r--share/doc/papers/relengr/1.t6
-rw-r--r--share/doc/papers/relengr/2.t6
-rw-r--r--share/doc/papers/relengr/3.t6
-rw-r--r--share/doc/papers/sysperf/0.t6
-rw-r--r--share/doc/papers/sysperf/1.t6
-rw-r--r--share/doc/papers/sysperf/2.t6
-rw-r--r--share/doc/papers/sysperf/3.t6
-rw-r--r--share/doc/papers/sysperf/4.t6
-rw-r--r--share/doc/papers/sysperf/5.t6
-rw-r--r--share/doc/papers/sysperf/6.t6
-rw-r--r--share/doc/papers/sysperf/7.t6
-rw-r--r--share/doc/papers/sysperf/a1.t6
-rw-r--r--share/doc/papers/sysperf/a2.t6
-rw-r--r--share/doc/papers/sysperf/appendix.ms12
-rw-r--r--share/doc/psd/05.sysman/0.t6
-rw-r--r--share/doc/psd/05.sysman/1.0.t6
-rw-r--r--share/doc/psd/05.sysman/1.1.t6
-rw-r--r--share/doc/psd/05.sysman/1.2.t6
-rw-r--r--share/doc/psd/05.sysman/1.3.t6
-rw-r--r--share/doc/psd/05.sysman/1.4.t6
-rw-r--r--share/doc/psd/05.sysman/1.5.t6
-rw-r--r--share/doc/psd/05.sysman/1.6.t6
-rw-r--r--share/doc/psd/05.sysman/1.7.t6
-rw-r--r--share/doc/psd/05.sysman/2.0.t6
-rw-r--r--share/doc/psd/05.sysman/2.1.t6
-rw-r--r--share/doc/psd/05.sysman/2.2.t6
-rw-r--r--share/doc/psd/05.sysman/2.3.t6
-rw-r--r--share/doc/psd/05.sysman/2.4.t6
-rw-r--r--share/doc/psd/05.sysman/2.5.t6
-rw-r--r--share/doc/psd/05.sysman/a.t6
-rw-r--r--share/doc/psd/12.make/tutorial.ms6
-rw-r--r--share/doc/psd/18.gprof/abstract.me6
-rw-r--r--share/doc/psd/18.gprof/gathering.me6
-rw-r--r--share/doc/psd/18.gprof/header.me6
-rw-r--r--share/doc/psd/18.gprof/intro.me6
-rw-r--r--share/doc/psd/18.gprof/postp.me6
-rw-r--r--share/doc/psd/18.gprof/postp1.pic6
-rw-r--r--share/doc/psd/18.gprof/postp2.pic6
-rw-r--r--share/doc/psd/18.gprof/postp3.pic6
-rw-r--r--share/doc/psd/18.gprof/pres1.pic6
-rw-r--r--share/doc/psd/18.gprof/pres2.pic6
-rw-r--r--share/doc/psd/18.gprof/present.me6
-rw-r--r--share/doc/psd/18.gprof/profiling.me6
-rw-r--r--share/doc/psd/18.gprof/refs.me6
-rw-r--r--share/doc/psd/20.ipctut/dgramread.c6
-rw-r--r--share/doc/psd/20.ipctut/dgramsend.c6
-rw-r--r--share/doc/psd/20.ipctut/pipe.c6
-rw-r--r--share/doc/psd/20.ipctut/socketpair.c6
-rw-r--r--share/doc/psd/20.ipctut/strchkread.c6
-rw-r--r--share/doc/psd/20.ipctut/streamread.c6
-rw-r--r--share/doc/psd/20.ipctut/streamwrite.c6
-rw-r--r--share/doc/psd/20.ipctut/tutor.me6
-rw-r--r--share/doc/psd/20.ipctut/udgramread.c6
-rw-r--r--share/doc/psd/20.ipctut/udgramsend.c6
-rw-r--r--share/doc/psd/20.ipctut/ustreamread.c6
-rw-r--r--share/doc/psd/20.ipctut/ustreamwrite.c6
-rw-r--r--share/doc/psd/21.ipc/0.t6
-rw-r--r--share/doc/psd/21.ipc/1.t6
-rw-r--r--share/doc/psd/21.ipc/2.t6
-rw-r--r--share/doc/psd/21.ipc/3.t6
-rw-r--r--share/doc/psd/21.ipc/4.t6
-rw-r--r--share/doc/psd/21.ipc/5.t6
-rw-r--r--share/doc/psd/contents/contents.ms6
-rw-r--r--share/doc/smm/01.setup/0.t6
-rw-r--r--share/doc/smm/01.setup/1.t6
-rw-r--r--share/doc/smm/01.setup/2.t6
-rw-r--r--share/doc/smm/01.setup/3.t6
-rw-r--r--share/doc/smm/01.setup/4.t6
-rw-r--r--share/doc/smm/01.setup/5.t6
-rw-r--r--share/doc/smm/01.setup/6.t6
-rw-r--r--share/doc/smm/02.config/0.t6
-rw-r--r--share/doc/smm/02.config/1.t6
-rw-r--r--share/doc/smm/02.config/2.t6
-rw-r--r--share/doc/smm/02.config/3.t6
-rw-r--r--share/doc/smm/02.config/4.t6
-rw-r--r--share/doc/smm/02.config/5.t6
-rw-r--r--share/doc/smm/02.config/6.t6
-rw-r--r--share/doc/smm/02.config/a.t6
-rw-r--r--share/doc/smm/02.config/b.t6
-rw-r--r--share/doc/smm/02.config/c.t6
-rw-r--r--share/doc/smm/02.config/d.t6
-rw-r--r--share/doc/smm/02.config/e.t6
-rw-r--r--share/doc/smm/04.quotas/quotas.ms6
-rw-r--r--share/doc/smm/05.fastfs/0.t6
-rw-r--r--share/doc/smm/05.fastfs/1.t6
-rw-r--r--share/doc/smm/05.fastfs/2.t6
-rw-r--r--share/doc/smm/05.fastfs/3.t6
-rw-r--r--share/doc/smm/05.fastfs/4.t6
-rw-r--r--share/doc/smm/05.fastfs/5.t6
-rw-r--r--share/doc/smm/05.fastfs/6.t6
-rw-r--r--share/doc/smm/06.nfs/0.t6
-rw-r--r--share/doc/smm/06.nfs/1.t6
-rw-r--r--share/doc/smm/06.nfs/2.t6
-rw-r--r--share/doc/smm/06.nfs/ref.t6
-rw-r--r--share/doc/smm/07.lpd/0.t6
-rw-r--r--share/doc/smm/07.lpd/1.t6
-rw-r--r--share/doc/smm/07.lpd/2.t6
-rw-r--r--share/doc/smm/07.lpd/3.t6
-rw-r--r--share/doc/smm/07.lpd/4.t6
-rw-r--r--share/doc/smm/07.lpd/5.t6
-rw-r--r--share/doc/smm/07.lpd/6.t6
-rw-r--r--share/doc/smm/07.lpd/7.t6
-rw-r--r--share/doc/smm/11.timedop/timed.ms6
-rw-r--r--share/doc/smm/12.timed/date6
-rw-r--r--share/doc/smm/12.timed/loop6
-rw-r--r--share/doc/smm/12.timed/time6
-rw-r--r--share/doc/smm/12.timed/timed.ms6
-rw-r--r--share/doc/smm/12.timed/unused6
-rw-r--r--share/doc/smm/18.net/0.t6
-rw-r--r--share/doc/smm/18.net/1.t6
-rw-r--r--share/doc/smm/18.net/2.t6
-rw-r--r--share/doc/smm/18.net/3.t6
-rw-r--r--share/doc/smm/18.net/4.t6
-rw-r--r--share/doc/smm/18.net/5.t6
-rw-r--r--share/doc/smm/18.net/6.t6
-rw-r--r--share/doc/smm/18.net/7.t6
-rw-r--r--share/doc/smm/18.net/8.t6
-rw-r--r--share/doc/smm/18.net/9.t6
-rw-r--r--share/doc/smm/18.net/a.t6
-rw-r--r--share/doc/smm/18.net/b.t6
-rw-r--r--share/doc/smm/18.net/c.t6
-rw-r--r--share/doc/smm/18.net/d.t6
-rw-r--r--share/doc/smm/18.net/e.t6
-rw-r--r--share/doc/smm/18.net/f.t6
-rw-r--r--share/doc/smm/contents/contents.ms6
-rw-r--r--share/doc/usd/07.mail/mail0.nr6
-rw-r--r--share/doc/usd/07.mail/mail1.nr6
-rw-r--r--share/doc/usd/07.mail/mail2.nr6
-rw-r--r--share/doc/usd/07.mail/mail3.nr6
-rw-r--r--share/doc/usd/07.mail/mail4.nr6
-rw-r--r--share/doc/usd/07.mail/mail5.nr6
-rw-r--r--share/doc/usd/07.mail/mail6.nr6
-rw-r--r--share/doc/usd/07.mail/mail7.nr6
-rw-r--r--share/doc/usd/07.mail/mail8.nr6
-rw-r--r--share/doc/usd/07.mail/mail9.nr6
-rw-r--r--share/doc/usd/07.mail/maila.nr6
-rw-r--r--share/doc/usd/18.msdiffs/ms.diffs6
-rw-r--r--share/doc/usd/contents/contents.ms6
-rw-r--r--share/examples/FreeBSD_version/Makefile2
-rw-r--r--share/examples/Makefile14
-rw-r--r--share/examples/atf/Makefile38
-rw-r--r--share/examples/atf/Makefile.depend12
-rw-r--r--share/examples/autofs/driver/Makefile2
-rwxr-xr-xshare/examples/bhyve/vmrun.sh56
-rw-r--r--share/examples/dma/Makefile10
-rw-r--r--share/examples/dma/mailer.conf5
-rw-r--r--share/examples/etc/make.conf13
-rw-r--r--share/examples/find_interface/Makefile2
-rw-r--r--share/examples/kld/cdev/test/Makefile2
-rw-r--r--share/examples/kld/random_adaptor/random_adaptor_example.c41
-rw-r--r--share/examples/kld/syscall/test/Makefile2
-rw-r--r--share/examples/libusb20/Makefile9
-rw-r--r--share/examples/libusb20/aux.c120
-rw-r--r--share/examples/libusb20/bulk.c16
-rw-r--r--share/examples/libusb20/control.c17
-rw-r--r--share/examples/libusb20/util.c50
-rw-r--r--share/examples/libusb20/util.h (renamed from share/examples/libusb20/aux.h)1
-rw-r--r--share/examples/libvgl/Makefile2
-rw-r--r--share/examples/perfmon/Makefile2
-rw-r--r--share/examples/ppi/Makefile2
-rw-r--r--share/examples/tests/Makefile12
-rw-r--r--share/examples/tests/README37
-rw-r--r--share/examples/tests/tests/Makefile27
-rw-r--r--share/examples/tests/tests/atf/Kyuafile46
-rw-r--r--share/examples/tests/tests/atf/Makefile30
-rw-r--r--share/examples/tests/tests/atf/cp_test.sh119
-rw-r--r--share/examples/tests/tests/atf/printf_test.c155
-rw-r--r--share/examples/tests/tests/plain/Kyuafile47
-rw-r--r--share/examples/tests/tests/plain/Makefile30
-rw-r--r--share/examples/tests/tests/plain/cp_test.sh84
-rw-r--r--share/examples/tests/tests/plain/printf_test.c119
-rw-r--r--share/i18n/csmapper/JIS/JISX0201-KANA%UCS.src71
-rw-r--r--share/i18n/csmapper/JIS/JISX0208@1990%UCS.src2
-rw-r--r--share/i18n/csmapper/JIS/UCS%JISX0201-KANA.src1031
-rw-r--r--share/i18n/csmapper/JIS/UCS%JISX0208@1990.src7469
-rw-r--r--share/i18n/csmapper/JIS/charset.pivot.JIS.src2
-rw-r--r--share/i18n/csmapper/JIS/mapper.dir.JIS.src14
-rw-r--r--share/i18n/esdb/EUC/EUC-JP.src2
-rw-r--r--share/keys/Makefile5
-rw-r--r--share/keys/pkg/Makefile5
-rw-r--r--share/keys/pkg/trusted/Makefile10
-rw-r--r--share/keys/pkg/trusted/pkg.freebsd.org.20131023014
-rw-r--r--share/man/man1/Makefile2
-rw-r--r--share/man/man1/intro.16
-rw-r--r--share/man/man3/assert.36
-rw-r--r--share/man/man3/bitstring.36
-rw-r--r--share/man/man3/end.36
-rw-r--r--share/man/man3/fpgetround.36
-rw-r--r--share/man/man3/intro.36
-rw-r--r--share/man/man3/pthread_create.33
-rw-r--r--share/man/man3/pthread_exit.33
-rw-r--r--share/man/man3/queue.36
-rw-r--r--share/man/man3/stdarg.343
-rw-r--r--share/man/man3/tree.333
-rw-r--r--share/man/man4/Makefile46
-rw-r--r--share/man/man4/ada.413
-rw-r--r--share/man/man4/ahci.413
-rw-r--r--share/man/man4/altera_atse.4100
-rw-r--r--share/man/man4/altq.41
-rw-r--r--share/man/man4/arcmsr.44
-rw-r--r--share/man/man4/ath.420
-rw-r--r--share/man/man4/atp.4117
-rw-r--r--share/man/man4/axge.4150
-rw-r--r--share/man/man4/bpf.420
-rw-r--r--share/man/man4/capsicum.421
-rw-r--r--share/man/man4/cd.487
-rw-r--r--share/man/man4/crypto.41
-rw-r--r--share/man/man4/cxgbe.4124
-rw-r--r--share/man/man4/cy.46
-rw-r--r--share/man/man4/ddb.414
-rw-r--r--share/man/man4/devctl.48
-rw-r--r--share/man/man4/digi.46
-rw-r--r--share/man/man4/disc.46
-rw-r--r--share/man/man4/edsc.46
-rw-r--r--share/man/man4/ef.4111
-rw-r--r--share/man/man4/fd.46
-rw-r--r--share/man/man4/geom_uncompress.4107
-rw-r--r--share/man/man4/gpio.489
-rw-r--r--share/man/man4/gpioiic.4171
-rw-r--r--share/man/man4/gpioled.4156
-rw-r--r--share/man/man4/gre.46
-rw-r--r--share/man/man4/hv_ata_pci_disengage.490
-rw-r--r--share/man/man4/hv_kvp.496
-rw-r--r--share/man/man4/hv_netvsc.483
-rw-r--r--share/man/man4/hv_storvsc.489
-rw-r--r--share/man/man4/hv_utils.485
-rw-r--r--share/man/man4/hv_vmbus.493
-rw-r--r--share/man/man4/icmp.46
-rw-r--r--share/man/man4/inet.46
-rw-r--r--share/man/man4/ip.46
-rw-r--r--share/man/man4/isf.4135
-rw-r--r--share/man/man4/iwn.419
-rw-r--r--share/man/man4/iwnfw.412
-rw-r--r--share/man/man4/kld.46
-rw-r--r--share/man/man4/ksyms.46
-rw-r--r--share/man/man4/lagg.41
-rw-r--r--share/man/man4/lp.46
-rw-r--r--share/man/man4/man4.arm/Makefile5
-rw-r--r--share/man/man4/man4.arm/ti_adc.4119
-rw-r--r--share/man/man4/mem.46
-rw-r--r--share/man/man4/mfi.411
-rw-r--r--share/man/man4/miibus.43
-rw-r--r--share/man/man4/mtio.46
-rw-r--r--share/man/man4/multicast.44
-rw-r--r--share/man/man4/natm.41
-rw-r--r--share/man/man4/netfpga10g_nf10bmac.470
-rw-r--r--share/man/man4/netgraph.438
-rw-r--r--share/man/man4/netintro.46
-rw-r--r--share/man/man4/netmap.41145
-rw-r--r--share/man/man4/ng_fec.4109
-rw-r--r--share/man/man4/ng_iface.47
-rw-r--r--share/man/man4/null.46
-rw-r--r--share/man/man4/nvd.422
-rw-r--r--share/man/man4/nve.4141
-rw-r--r--share/man/man4/nvme.424
-rw-r--r--share/man/man4/pf.47
-rw-r--r--share/man/man4/procdesc.44
-rw-r--r--share/man/man4/pts.46
-rw-r--r--share/man/man4/random.4121
-rw-r--r--share/man/man4/rights.4674
-rw-r--r--share/man/man4/route.48
-rw-r--r--share/man/man4/run.428
-rw-r--r--share/man/man4/runfw.44
-rw-r--r--share/man/man4/scsi.42
-rw-r--r--share/man/man4/sctp.46
-rw-r--r--share/man/man4/sem.410
-rw-r--r--share/man/man4/sio.46
-rw-r--r--share/man/man4/sysmouse.47
-rw-r--r--share/man/man4/tcp.417
-rw-r--r--share/man/man4/terasic_mtl.41
-rw-r--r--share/man/man4/termios.46
-rw-r--r--share/man/man4/timecounters.437
-rw-r--r--share/man/man4/tty.46
-rw-r--r--share/man/man4/u3g.410
-rw-r--r--share/man/man4/udp.46
-rw-r--r--share/man/man4/udplite.496
-rw-r--r--share/man/man4/uftdi.4112
-rw-r--r--share/man/man4/umass.47
-rw-r--r--share/man/man4/umoscom.466
-rw-r--r--share/man/man4/unix.46
-rw-r--r--share/man/man4/urndis.497
-rw-r--r--share/man/man4/urtwn.444
-rw-r--r--share/man/man4/urtwnfw.477
-rw-r--r--share/man/man4/usb.43
-rw-r--r--share/man/man4/usb_quirk.419
-rw-r--r--share/man/man4/usb_template.4 (renamed from share/man/man4/usb2_template.4)19
-rw-r--r--share/man/man4/usfs.462
-rw-r--r--share/man/man4/virtio_random.461
-rw-r--r--share/man/man4/vlan.41
-rw-r--r--share/man/man4/vmx.425
-rw-r--r--share/man/man4/wsp.490
-rw-r--r--share/man/man4/xhci.422
-rw-r--r--share/man/man5/Makefile7
-rw-r--r--share/man/man5/a.out.56
-rw-r--r--share/man/man5/acct.56
-rw-r--r--share/man/man5/core.56
-rw-r--r--share/man/man5/devfs.56
-rw-r--r--share/man/man5/dir.56
-rw-r--r--share/man/man5/disktab.56
-rw-r--r--share/man/man5/fdescfs.56
-rw-r--r--share/man/man5/fs.56
-rw-r--r--share/man/man5/fstab.510
-rw-r--r--share/man/man5/group.56
-rw-r--r--share/man/man5/hosts.515
-rw-r--r--share/man/man5/hosts.equiv.59
-rw-r--r--share/man/man5/hosts.lpd.56
-rw-r--r--share/man/man5/intro.56
-rw-r--r--share/man/man5/make.conf.57
-rw-r--r--share/man/man5/networks.56
-rw-r--r--share/man/man5/nsmb.conf.59
-rw-r--r--share/man/man5/nsswitch.conf.53
-rw-r--r--share/man/man5/passwd.56
-rw-r--r--share/man/man5/periodic.conf.513
-rw-r--r--share/man/man5/phones.56
-rw-r--r--share/man/man5/protocols.56
-rw-r--r--share/man/man5/rc.conf.5215
-rw-r--r--share/man/man5/remote.56
-rw-r--r--share/man/man5/resolver.511
-rw-r--r--share/man/man5/services.56
-rw-r--r--share/man/man5/shells.56
-rw-r--r--share/man/man5/src.conf.5129
-rw-r--r--share/man/man5/stab.56
-rw-r--r--share/man/man6/intro.66
-rw-r--r--share/man/man7/Makefile14
-rw-r--r--share/man/man7/adding_user.76
-rw-r--r--share/man/man7/ascii.76
-rw-r--r--share/man/man7/build.723
-rw-r--r--share/man/man7/development.72
-rw-r--r--share/man/man7/environ.76
-rw-r--r--share/man/man7/hier.750
-rw-r--r--share/man/man7/hostname.711
-rw-r--r--share/man/man7/intro.76
-rw-r--r--share/man/man7/mailaddr.76
-rw-r--r--share/man/man7/operator.76
-rw-r--r--share/man/man7/release.7128
-rw-r--r--share/man/man7/security.711
-rw-r--r--share/man/man7/sticky.76
-rw-r--r--share/man/man7/tests.7234
-rw-r--r--share/man/man8/Makefile1
-rw-r--r--share/man/man8/crash.86
-rw-r--r--share/man/man8/hv_kvp_daemon.896
-rw-r--r--share/man/man8/intro.86
-rw-r--r--share/man/man8/rc.829
-rw-r--r--share/man/man8/rc.sendmail.838
-rw-r--r--share/man/man9/EVENTHANDLER.985
-rw-r--r--share/man/man9/Makefile24
-rw-r--r--share/man/man9/SDT.963
-rw-r--r--share/man/man9/VOP_STRATEGY.94
-rw-r--r--share/man/man9/buf.96
-rw-r--r--share/man/man9/bus_dma.97
-rw-r--r--share/man/man9/bus_space.97
-rw-r--r--share/man/man9/cd.97
-rw-r--r--share/man/man9/counter.98
-rw-r--r--share/man/man9/crypto.93
-rw-r--r--share/man/man9/disk.92
-rw-r--r--share/man/man9/eventtimers.919
-rw-r--r--share/man/man9/getenv.9210
-rw-r--r--share/man/man9/ieee80211_crypto.92
-rw-r--r--share/man/man9/ifnet.924
-rw-r--r--share/man/man9/intro.96
-rw-r--r--share/man/man9/malloc.913
-rw-r--r--share/man/man9/mbuf.921
-rw-r--r--share/man/man9/memguard.94
-rw-r--r--share/man/man9/netisr.910
-rw-r--r--share/man/man9/rtentry.936
-rw-r--r--share/man/man9/sglist.913
-rw-r--r--share/man/man9/taskqueue.975
-rw-r--r--share/man/man9/timeout.92
-rw-r--r--share/man/man9/vm_set_page_size.98
-rw-r--r--share/man/man9/vnode.913
-rw-r--r--share/man/man9/zone.939
-rw-r--r--share/me/acm.me6
-rw-r--r--share/me/chars.me6
-rw-r--r--share/me/deltext.me6
-rw-r--r--share/me/eqn.me6
-rw-r--r--share/me/float.me6
-rw-r--r--share/me/footnote.me6
-rw-r--r--share/me/index.me6
-rw-r--r--share/me/letterhead.me6
-rw-r--r--share/me/local.me6
-rw-r--r--share/me/null.me6
-rw-r--r--share/me/orig_me.76
-rw-r--r--share/me/refer.me6
-rw-r--r--share/me/sh.me6
-rw-r--r--share/me/tbl.me6
-rw-r--r--share/me/thesis.me6
-rw-r--r--share/me/tmac.orig_me6
-rw-r--r--share/misc/bsd-family-tree48
-rw-r--r--share/misc/committers-doc.dot7
-rw-r--r--share/misc/committers-ports.dot21
-rw-r--r--share/misc/committers-src.dot15
-rw-r--r--share/mk/Makefile7
-rw-r--r--share/mk/atf.test.mk176
-rw-r--r--share/mk/bsd.README97
-rw-r--r--share/mk/bsd.cpu.mk14
-rw-r--r--share/mk/bsd.crunchgen.mk2
-rw-r--r--share/mk/bsd.endian.mk1
-rw-r--r--share/mk/bsd.files.mk8
-rw-r--r--share/mk/bsd.incs.mk4
-rw-r--r--share/mk/bsd.init.mk9
-rw-r--r--share/mk/bsd.lib.mk6
-rw-r--r--share/mk/bsd.libnames.mk24
-rw-r--r--share/mk/bsd.man.mk9
-rw-r--r--share/mk/bsd.mkopt.mk40
-rw-r--r--share/mk/bsd.opts.mk423
-rw-r--r--share/mk/bsd.own.mk503
-rw-r--r--share/mk/bsd.prog.mk4
-rw-r--r--share/mk/bsd.progs.mk38
-rw-r--r--share/mk/bsd.subdir.mk31
-rw-r--r--share/mk/bsd.sys.mk47
-rw-r--r--share/mk/bsd.test.mk124
-rw-r--r--share/mk/plain.test.mk64
-rw-r--r--share/mk/suite.test.mk127
-rw-r--r--share/mk/sys.mk13
-rw-r--r--share/mk/tap.test.mk93
-rw-r--r--share/skel/dot.cshrc9
-rw-r--r--share/skel/dot.profile7
-rw-r--r--share/syscons/keymaps/INDEX.keymaps2
-rw-r--r--share/termcap/termcap.56
-rw-r--r--share/termcap/termcap.src2
-rw-r--r--share/tests/Makefile10
-rw-r--r--share/xml/Makefile36
-rw-r--r--share/xml/Makefile.inc30
-rw-r--r--share/xml/atf/Makefile38
-rw-r--r--share/xml/atf/Makefile.depend12
-rw-r--r--share/xsl/Makefile36
-rw-r--r--share/xsl/Makefile.inc30
-rw-r--r--share/xsl/atf/Makefile38
-rw-r--r--share/xsl/atf/Makefile.depend12
461 files changed, 8132 insertions, 12713 deletions
diff --git a/share/Makefile b/share/Makefile
index 075f116851e0..8ac475044833 100644
--- a/share/Makefile
+++ b/share/Makefile
@@ -5,13 +5,13 @@
# Do not include `info' in the SUBDIR list, it is handled separately.
-SUBDIR= ${_atf} \
- ${_colldef} \
+SUBDIR= ${_colldef} \
${_dict} \
${_doc} \
dtrace \
${_examples} \
${_i18n} \
+ keys \
${_man} \
${_me} \
misc \
@@ -26,17 +26,12 @@ SUBDIR= ${_atf} \
${_syscons} \
tabset \
termcap \
+ ${_tests} \
${_timedef} \
- xml \
- xsl \
${_zoneinfo}
# NB: keep these sorted by MK_* knobs
-.if ${MK_ATF} != "no"
-_atf= atf
-.endif
-
.if ${MK_BSNMP} != "no"
_snmp= snmp
.endif
@@ -86,6 +81,10 @@ _doc= doc
_syscons= syscons
.endif
+.if ${MK_TESTS} != "no"
+_tests= tests
+.endif
+
.if ${MK_ZONEINFO} != "no"
_zoneinfo= zoneinfo
.endif
diff --git a/share/atf/Makefile b/share/atf/Makefile
deleted file mode 100644
index ff3b8f055328..000000000000
--- a/share/atf/Makefile
+++ /dev/null
@@ -1,36 +0,0 @@
-#-
-# Copyright (c) 2012 EMC Corporation.
-# 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.
-#
-# $FreeBSD$
-
-ATF= ${.CURDIR}/../../contrib/atf
-
-.PATH: ${ATF}/atf-run/sample
-
-
-FILESDIR= ${SHAREDIR}/atf
-FILES= atf-run.hooks
-
-.include <bsd.prog.mk>
diff --git a/share/atf/Makefile.depend b/share/atf/Makefile.depend
deleted file mode 100644
index 57b7e10c3d71..000000000000
--- a/share/atf/Makefile.depend
+++ /dev/null
@@ -1,12 +0,0 @@
-# Autogenerated - do NOT edit!
-
-DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,}
-
-DIRDEPS = \
-
-
-.include <dirdeps.mk>
-
-.if ${DEP_RELDIR} == ${_DEP_RELDIR}
-# local dependencies - needed for -jN in clean tree
-.endif
diff --git a/share/dict/README b/share/dict/README
index 1a51c20a95a1..35f8b722220b 100644
--- a/share/dict/README
+++ b/share/dict/README
@@ -10,12 +10,6 @@ noun and adverbial phrases. The wordlist makes a dandy 'grep' victim.
-- James A. Woods {ihnp4,hplabs}!ames!jaw (or jaw@riacs)
-Dictionaries for other languages, e.g. Afrikaans, American, Aussie,
-Chinese, Croatian, Czech, Danish, Dutch, Esperanto, Finnish, French,
-German, Hindi, Hungarian, Italian, Japanese, Latin, Norwegian, Polish,
-Russian, Spanish, Swahili, Swedish, Yiddish, are available
-at ftp://ftp.ox.ac.uk/pub/wordlists.
-
Country names are stored in the file /usr/share/misc/iso3166.
diff --git a/share/doc/Makefile b/share/doc/Makefile
index 1ec57e86da42..a4fe61d6c479 100644
--- a/share/doc/Makefile
+++ b/share/doc/Makefile
@@ -9,7 +9,7 @@ SUBDIR= ${_IPv6} \
${_llvm} \
${_roffdocs}
-.if ${MK_ATF} != "no"
+.if ${MK_TESTS} != "no"
_atf= atf
.endif
diff --git a/share/doc/papers/beyond4.3/beyond43.ms b/share/doc/papers/beyond4.3/beyond43.ms
index b682ffc0d836..ef8b6dc5b4eb 100644
--- a/share/doc/papers/beyond4.3/beyond43.ms
+++ b/share/doc/papers/beyond4.3/beyond43.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/diskperf/abs.ms b/share/doc/papers/diskperf/abs.ms
index a61104d5de48..4076b5c7aede 100644
--- a/share/doc/papers/diskperf/abs.ms
+++ b/share/doc/papers/diskperf/abs.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/diskperf/appendix.ms b/share/doc/papers/diskperf/appendix.ms
index e059249e4143..09474de53d93 100644
--- a/share/doc/papers/diskperf/appendix.ms
+++ b/share/doc/papers/diskperf/appendix.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/diskperf/conclusions.ms b/share/doc/papers/diskperf/conclusions.ms
index 9e20f1a64708..bdba05f99e54 100644
--- a/share/doc/papers/diskperf/conclusions.ms
+++ b/share/doc/papers/diskperf/conclusions.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/diskperf/equip.ms b/share/doc/papers/diskperf/equip.ms
index 264ea0494737..651cbb51b8f4 100644
--- a/share/doc/papers/diskperf/equip.ms
+++ b/share/doc/papers/diskperf/equip.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/diskperf/methodology.ms b/share/doc/papers/diskperf/methodology.ms
index 703d7b6f0545..e357217f24e8 100644
--- a/share/doc/papers/diskperf/methodology.ms
+++ b/share/doc/papers/diskperf/methodology.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/diskperf/motivation.ms b/share/doc/papers/diskperf/motivation.ms
index d5fde9d1b933..28e85f862d4b 100644
--- a/share/doc/papers/diskperf/motivation.ms
+++ b/share/doc/papers/diskperf/motivation.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/diskperf/results.ms b/share/doc/papers/diskperf/results.ms
index 09f61a81824f..6bee1327c609 100644
--- a/share/doc/papers/diskperf/results.ms
+++ b/share/doc/papers/diskperf/results.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/diskperf/tests.ms b/share/doc/papers/diskperf/tests.ms
index e9379311301c..90a9adf95181 100644
--- a/share/doc/papers/diskperf/tests.ms
+++ b/share/doc/papers/diskperf/tests.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/fsinterface/abstract.ms b/share/doc/papers/fsinterface/abstract.ms
index ab8b473170e1..9b6667fa0030 100644
--- a/share/doc/papers/fsinterface/abstract.ms
+++ b/share/doc/papers/fsinterface/abstract.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/fsinterface/fsinterface.ms b/share/doc/papers/fsinterface/fsinterface.ms
index 453cc7e9d594..a37bcaa7de98 100644
--- a/share/doc/papers/fsinterface/fsinterface.ms
+++ b/share/doc/papers/fsinterface/fsinterface.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/fsinterface/slides.t b/share/doc/papers/fsinterface/slides.t
index 3caaafbeea59..c494a3b43726 100644
--- a/share/doc/papers/fsinterface/slides.t
+++ b/share/doc/papers/fsinterface/slides.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/kernmalloc/alloc.fig b/share/doc/papers/kernmalloc/alloc.fig
index 1ef260b9ac7c..576e3fd0b01f 100644
--- a/share/doc/papers/kernmalloc/alloc.fig
+++ b/share/doc/papers/kernmalloc/alloc.fig
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/kernmalloc/appendix.ms b/share/doc/papers/kernmalloc/appendix.ms
index 058912700b9f..2378b72edff7 100644
--- a/share/doc/papers/kernmalloc/appendix.ms
+++ b/share/doc/papers/kernmalloc/appendix.ms
@@ -82,11 +82,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/kernmalloc/appendix.t b/share/doc/papers/kernmalloc/appendix.t
index bcd3e8ce7ef7..dee3fd4838d0 100644
--- a/share/doc/papers/kernmalloc/appendix.t
+++ b/share/doc/papers/kernmalloc/appendix.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/kernmalloc/kernmalloc.t b/share/doc/papers/kernmalloc/kernmalloc.t
index d074c9ed48d4..e84c4a5521c3 100644
--- a/share/doc/papers/kernmalloc/kernmalloc.t
+++ b/share/doc/papers/kernmalloc/kernmalloc.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/kernmalloc/usage.tbl b/share/doc/papers/kernmalloc/usage.tbl
index c5ebdfee0508..3c56d1e84ac4 100644
--- a/share/doc/papers/kernmalloc/usage.tbl
+++ b/share/doc/papers/kernmalloc/usage.tbl
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/kerntune/0.t b/share/doc/papers/kerntune/0.t
index 90fa2bf3a934..ea4f09a161f5 100644
--- a/share/doc/papers/kerntune/0.t
+++ b/share/doc/papers/kerntune/0.t
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/kerntune/1.t b/share/doc/papers/kerntune/1.t
index 49b653f501f8..5570a622a158 100644
--- a/share/doc/papers/kerntune/1.t
+++ b/share/doc/papers/kerntune/1.t
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/kerntune/2.t b/share/doc/papers/kerntune/2.t
index 2857dc29ad5b..370eac65a238 100644
--- a/share/doc/papers/kerntune/2.t
+++ b/share/doc/papers/kerntune/2.t
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/kerntune/3.t b/share/doc/papers/kerntune/3.t
index e03236b4bac6..0e4fc25ef318 100644
--- a/share/doc/papers/kerntune/3.t
+++ b/share/doc/papers/kerntune/3.t
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/kerntune/4.t b/share/doc/papers/kerntune/4.t
index 38bae438ae85..a521d42c35d3 100644
--- a/share/doc/papers/kerntune/4.t
+++ b/share/doc/papers/kerntune/4.t
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/kerntune/fig2.pic b/share/doc/papers/kerntune/fig2.pic
index 6731ca99f972..4c2e2cf7e380 100644
--- a/share/doc/papers/kerntune/fig2.pic
+++ b/share/doc/papers/kerntune/fig2.pic
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/newvm/0.t b/share/doc/papers/newvm/0.t
index e23a95dfc34a..29de74e59cd5 100644
--- a/share/doc/papers/newvm/0.t
+++ b/share/doc/papers/newvm/0.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/newvm/1.t b/share/doc/papers/newvm/1.t
index 02ac8be22d1a..0971c7d0286f 100644
--- a/share/doc/papers/newvm/1.t
+++ b/share/doc/papers/newvm/1.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/newvm/a.t b/share/doc/papers/newvm/a.t
index bb20df115a55..6187df6f91ce 100644
--- a/share/doc/papers/newvm/a.t
+++ b/share/doc/papers/newvm/a.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/relengr/0.t b/share/doc/papers/relengr/0.t
index 569be698d4fd..d99b8114479e 100644
--- a/share/doc/papers/relengr/0.t
+++ b/share/doc/papers/relengr/0.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/relengr/1.t b/share/doc/papers/relengr/1.t
index 6fbe287825d5..a48231e7302d 100644
--- a/share/doc/papers/relengr/1.t
+++ b/share/doc/papers/relengr/1.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/relengr/2.t b/share/doc/papers/relengr/2.t
index 0c3ce8c80bcc..61cda2596ff2 100644
--- a/share/doc/papers/relengr/2.t
+++ b/share/doc/papers/relengr/2.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/relengr/3.t b/share/doc/papers/relengr/3.t
index 8d89ded0c0ce..bef83e80fb6c 100644
--- a/share/doc/papers/relengr/3.t
+++ b/share/doc/papers/relengr/3.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/sysperf/0.t b/share/doc/papers/sysperf/0.t
index 0c27a344cf3a..57cc0333f244 100644
--- a/share/doc/papers/sysperf/0.t
+++ b/share/doc/papers/sysperf/0.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/sysperf/1.t b/share/doc/papers/sysperf/1.t
index 88608eef4f0a..8f4124e53425 100644
--- a/share/doc/papers/sysperf/1.t
+++ b/share/doc/papers/sysperf/1.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/sysperf/2.t b/share/doc/papers/sysperf/2.t
index 703cbb63cb46..50a248a9ec46 100644
--- a/share/doc/papers/sysperf/2.t
+++ b/share/doc/papers/sysperf/2.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/sysperf/3.t b/share/doc/papers/sysperf/3.t
index 832ad4255ab3..8a0502da4ed4 100644
--- a/share/doc/papers/sysperf/3.t
+++ b/share/doc/papers/sysperf/3.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/sysperf/4.t b/share/doc/papers/sysperf/4.t
index 373a0d0ce14a..5b298fed9986 100644
--- a/share/doc/papers/sysperf/4.t
+++ b/share/doc/papers/sysperf/4.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/sysperf/5.t b/share/doc/papers/sysperf/5.t
index ff008c336c34..a73746b47144 100644
--- a/share/doc/papers/sysperf/5.t
+++ b/share/doc/papers/sysperf/5.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/sysperf/6.t b/share/doc/papers/sysperf/6.t
index a445ee19ff5a..2a6eda6d109c 100644
--- a/share/doc/papers/sysperf/6.t
+++ b/share/doc/papers/sysperf/6.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/sysperf/7.t b/share/doc/papers/sysperf/7.t
index 68f5717f5c09..f415bfcdcb81 100644
--- a/share/doc/papers/sysperf/7.t
+++ b/share/doc/papers/sysperf/7.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/sysperf/a1.t b/share/doc/papers/sysperf/a1.t
index b94f6aa1e2c9..7cc8f76c773d 100644
--- a/share/doc/papers/sysperf/a1.t
+++ b/share/doc/papers/sysperf/a1.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/sysperf/a2.t b/share/doc/papers/sysperf/a2.t
index e1882cf28ba4..2285df413f89 100644
--- a/share/doc/papers/sysperf/a2.t
+++ b/share/doc/papers/sysperf/a2.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/papers/sysperf/appendix.ms b/share/doc/papers/sysperf/appendix.ms
index 20cbbf1948bb..2920eff89f66 100644
--- a/share/doc/papers/sysperf/appendix.ms
+++ b/share/doc/papers/sysperf/appendix.ms
@@ -82,11 +82,7 @@
.\" 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
+.\" 3. 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.
.\"
@@ -931,11 +927,7 @@ rnd()
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/0.t b/share/doc/psd/05.sysman/0.t
index 865e8ff521ee..900c9530fddd 100644
--- a/share/doc/psd/05.sysman/0.t
+++ b/share/doc/psd/05.sysman/0.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/1.0.t b/share/doc/psd/05.sysman/1.0.t
index 5a465a7281cf..4dd694ae60ba 100644
--- a/share/doc/psd/05.sysman/1.0.t
+++ b/share/doc/psd/05.sysman/1.0.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/1.1.t b/share/doc/psd/05.sysman/1.1.t
index 223cf831e556..8bc8e73c1f21 100644
--- a/share/doc/psd/05.sysman/1.1.t
+++ b/share/doc/psd/05.sysman/1.1.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/1.2.t b/share/doc/psd/05.sysman/1.2.t
index 8527a75f8f3e..469206c2d809 100644
--- a/share/doc/psd/05.sysman/1.2.t
+++ b/share/doc/psd/05.sysman/1.2.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/1.3.t b/share/doc/psd/05.sysman/1.3.t
index f81a18501179..8b3d2d49a7ec 100644
--- a/share/doc/psd/05.sysman/1.3.t
+++ b/share/doc/psd/05.sysman/1.3.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/1.4.t b/share/doc/psd/05.sysman/1.4.t
index a67a5cedcfa8..1b1a1a1fee10 100644
--- a/share/doc/psd/05.sysman/1.4.t
+++ b/share/doc/psd/05.sysman/1.4.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/1.5.t b/share/doc/psd/05.sysman/1.5.t
index e642e2dfa2bd..4dbc71415309 100644
--- a/share/doc/psd/05.sysman/1.5.t
+++ b/share/doc/psd/05.sysman/1.5.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/1.6.t b/share/doc/psd/05.sysman/1.6.t
index 109d2714f54a..88799ec2f327 100644
--- a/share/doc/psd/05.sysman/1.6.t
+++ b/share/doc/psd/05.sysman/1.6.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/1.7.t b/share/doc/psd/05.sysman/1.7.t
index 09e1a027930f..e000835bb35b 100644
--- a/share/doc/psd/05.sysman/1.7.t
+++ b/share/doc/psd/05.sysman/1.7.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/2.0.t b/share/doc/psd/05.sysman/2.0.t
index ca44bc2a8690..b3dcf44e164c 100644
--- a/share/doc/psd/05.sysman/2.0.t
+++ b/share/doc/psd/05.sysman/2.0.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/2.1.t b/share/doc/psd/05.sysman/2.1.t
index ef25887ee180..79be8738a502 100644
--- a/share/doc/psd/05.sysman/2.1.t
+++ b/share/doc/psd/05.sysman/2.1.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/2.2.t b/share/doc/psd/05.sysman/2.2.t
index 996e9b5953b4..443a7cd92495 100644
--- a/share/doc/psd/05.sysman/2.2.t
+++ b/share/doc/psd/05.sysman/2.2.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/2.3.t b/share/doc/psd/05.sysman/2.3.t
index edf3e10fb52e..7fe386a5bb84 100644
--- a/share/doc/psd/05.sysman/2.3.t
+++ b/share/doc/psd/05.sysman/2.3.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/2.4.t b/share/doc/psd/05.sysman/2.4.t
index cd7dcb987900..fee93019872e 100644
--- a/share/doc/psd/05.sysman/2.4.t
+++ b/share/doc/psd/05.sysman/2.4.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/2.5.t b/share/doc/psd/05.sysman/2.5.t
index 109eb6a46ef8..9af7718f7b6f 100644
--- a/share/doc/psd/05.sysman/2.5.t
+++ b/share/doc/psd/05.sysman/2.5.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/05.sysman/a.t b/share/doc/psd/05.sysman/a.t
index dd9cfd991d05..3fdfedd75f35 100644
--- a/share/doc/psd/05.sysman/a.t
+++ b/share/doc/psd/05.sysman/a.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/12.make/tutorial.ms b/share/doc/psd/12.make/tutorial.ms
index 320d5dfc3c4b..e9d16dcacf14 100644
--- a/share/doc/psd/12.make/tutorial.ms
+++ b/share/doc/psd/12.make/tutorial.ms
@@ -14,11 +14,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/abstract.me b/share/doc/psd/18.gprof/abstract.me
index 28e8066fc331..cfa4c3ad21fd 100644
--- a/share/doc/psd/18.gprof/abstract.me
+++ b/share/doc/psd/18.gprof/abstract.me
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/gathering.me b/share/doc/psd/18.gprof/gathering.me
index 17130c330e68..f328ba5685e8 100644
--- a/share/doc/psd/18.gprof/gathering.me
+++ b/share/doc/psd/18.gprof/gathering.me
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/header.me b/share/doc/psd/18.gprof/header.me
index aef606d1fedd..80e70db114c8 100644
--- a/share/doc/psd/18.gprof/header.me
+++ b/share/doc/psd/18.gprof/header.me
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/intro.me b/share/doc/psd/18.gprof/intro.me
index 3a872b2e2f0c..b43a9930f7b8 100644
--- a/share/doc/psd/18.gprof/intro.me
+++ b/share/doc/psd/18.gprof/intro.me
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/postp.me b/share/doc/psd/18.gprof/postp.me
index d71fefb3e321..003638ec2218 100644
--- a/share/doc/psd/18.gprof/postp.me
+++ b/share/doc/psd/18.gprof/postp.me
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/postp1.pic b/share/doc/psd/18.gprof/postp1.pic
index 1446092e877c..7ce3b099324f 100644
--- a/share/doc/psd/18.gprof/postp1.pic
+++ b/share/doc/psd/18.gprof/postp1.pic
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/postp2.pic b/share/doc/psd/18.gprof/postp2.pic
index 3b31736e91a8..15cdd0e8c97e 100644
--- a/share/doc/psd/18.gprof/postp2.pic
+++ b/share/doc/psd/18.gprof/postp2.pic
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/postp3.pic b/share/doc/psd/18.gprof/postp3.pic
index 65eb2a78f51b..fa44820371b8 100644
--- a/share/doc/psd/18.gprof/postp3.pic
+++ b/share/doc/psd/18.gprof/postp3.pic
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/pres1.pic b/share/doc/psd/18.gprof/pres1.pic
index 0c311a19e0ee..4e4f7b096a42 100644
--- a/share/doc/psd/18.gprof/pres1.pic
+++ b/share/doc/psd/18.gprof/pres1.pic
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/pres2.pic b/share/doc/psd/18.gprof/pres2.pic
index c3a4ea069594..4da002ac4926 100644
--- a/share/doc/psd/18.gprof/pres2.pic
+++ b/share/doc/psd/18.gprof/pres2.pic
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/present.me b/share/doc/psd/18.gprof/present.me
index 1dd7f62ad812..18f1eb994be1 100644
--- a/share/doc/psd/18.gprof/present.me
+++ b/share/doc/psd/18.gprof/present.me
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/profiling.me b/share/doc/psd/18.gprof/profiling.me
index 227aedf5cf78..ff8c072d0604 100644
--- a/share/doc/psd/18.gprof/profiling.me
+++ b/share/doc/psd/18.gprof/profiling.me
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/18.gprof/refs.me b/share/doc/psd/18.gprof/refs.me
index 580d08030f51..ce4badc7b230 100644
--- a/share/doc/psd/18.gprof/refs.me
+++ b/share/doc/psd/18.gprof/refs.me
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/20.ipctut/dgramread.c b/share/doc/psd/20.ipctut/dgramread.c
index 193fca90067a..b3352230513c 100644
--- a/share/doc/psd/20.ipctut/dgramread.c
+++ b/share/doc/psd/20.ipctut/dgramread.c
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/20.ipctut/dgramsend.c b/share/doc/psd/20.ipctut/dgramsend.c
index 4bd1e5a13015..c2d4ab5e6f68 100644
--- a/share/doc/psd/20.ipctut/dgramsend.c
+++ b/share/doc/psd/20.ipctut/dgramsend.c
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/20.ipctut/pipe.c b/share/doc/psd/20.ipctut/pipe.c
index 86cb66354250..a3284e254c6d 100644
--- a/share/doc/psd/20.ipctut/pipe.c
+++ b/share/doc/psd/20.ipctut/pipe.c
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/20.ipctut/socketpair.c b/share/doc/psd/20.ipctut/socketpair.c
index f525c76fc792..359854fbfc00 100644
--- a/share/doc/psd/20.ipctut/socketpair.c
+++ b/share/doc/psd/20.ipctut/socketpair.c
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/20.ipctut/strchkread.c b/share/doc/psd/20.ipctut/strchkread.c
index a1e148bb438d..57fa340e3f13 100644
--- a/share/doc/psd/20.ipctut/strchkread.c
+++ b/share/doc/psd/20.ipctut/strchkread.c
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/20.ipctut/streamread.c b/share/doc/psd/20.ipctut/streamread.c
index ffad802f63e0..cc99a733cf92 100644
--- a/share/doc/psd/20.ipctut/streamread.c
+++ b/share/doc/psd/20.ipctut/streamread.c
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/20.ipctut/streamwrite.c b/share/doc/psd/20.ipctut/streamwrite.c
index 6205f135cf51..e7aeec67c59b 100644
--- a/share/doc/psd/20.ipctut/streamwrite.c
+++ b/share/doc/psd/20.ipctut/streamwrite.c
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/20.ipctut/tutor.me b/share/doc/psd/20.ipctut/tutor.me
index fba4583f1392..3b7c367a1cae 100644
--- a/share/doc/psd/20.ipctut/tutor.me
+++ b/share/doc/psd/20.ipctut/tutor.me
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/20.ipctut/udgramread.c b/share/doc/psd/20.ipctut/udgramread.c
index 2cb605d76a1d..b8a7156777ad 100644
--- a/share/doc/psd/20.ipctut/udgramread.c
+++ b/share/doc/psd/20.ipctut/udgramread.c
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/20.ipctut/udgramsend.c b/share/doc/psd/20.ipctut/udgramsend.c
index 3e3ba932403e..cb56fef1d1e8 100644
--- a/share/doc/psd/20.ipctut/udgramsend.c
+++ b/share/doc/psd/20.ipctut/udgramsend.c
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/20.ipctut/ustreamread.c b/share/doc/psd/20.ipctut/ustreamread.c
index 97fadb95f873..a8ea8b2dcfb7 100644
--- a/share/doc/psd/20.ipctut/ustreamread.c
+++ b/share/doc/psd/20.ipctut/ustreamread.c
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/20.ipctut/ustreamwrite.c b/share/doc/psd/20.ipctut/ustreamwrite.c
index bdc0b95d2d45..d6008d24686c 100644
--- a/share/doc/psd/20.ipctut/ustreamwrite.c
+++ b/share/doc/psd/20.ipctut/ustreamwrite.c
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/21.ipc/0.t b/share/doc/psd/21.ipc/0.t
index d28199a1bd3c..d91b701ac459 100644
--- a/share/doc/psd/21.ipc/0.t
+++ b/share/doc/psd/21.ipc/0.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/21.ipc/1.t b/share/doc/psd/21.ipc/1.t
index f4e48ffc23dd..5472d9080f6b 100644
--- a/share/doc/psd/21.ipc/1.t
+++ b/share/doc/psd/21.ipc/1.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/21.ipc/2.t b/share/doc/psd/21.ipc/2.t
index 6f0845436756..b42d701a6cb4 100644
--- a/share/doc/psd/21.ipc/2.t
+++ b/share/doc/psd/21.ipc/2.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/21.ipc/3.t b/share/doc/psd/21.ipc/3.t
index 6e7eb0622364..6a2380432c56 100644
--- a/share/doc/psd/21.ipc/3.t
+++ b/share/doc/psd/21.ipc/3.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/21.ipc/4.t b/share/doc/psd/21.ipc/4.t
index 22e6836d28a4..15e8b4a40ab1 100644
--- a/share/doc/psd/21.ipc/4.t
+++ b/share/doc/psd/21.ipc/4.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/21.ipc/5.t b/share/doc/psd/21.ipc/5.t
index 8ce44b2018c1..b59867777d89 100644
--- a/share/doc/psd/21.ipc/5.t
+++ b/share/doc/psd/21.ipc/5.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/psd/contents/contents.ms b/share/doc/psd/contents/contents.ms
index 9f374dc47cdd..4a222460600a 100644
--- a/share/doc/psd/contents/contents.ms
+++ b/share/doc/psd/contents/contents.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/01.setup/0.t b/share/doc/smm/01.setup/0.t
index 1951cd024d88..803243d86f74 100644
--- a/share/doc/smm/01.setup/0.t
+++ b/share/doc/smm/01.setup/0.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/01.setup/1.t b/share/doc/smm/01.setup/1.t
index 2f71b772eab7..16d011e2fb87 100644
--- a/share/doc/smm/01.setup/1.t
+++ b/share/doc/smm/01.setup/1.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/01.setup/2.t b/share/doc/smm/01.setup/2.t
index f97e8262e3cd..9d1d28c6aa5f 100644
--- a/share/doc/smm/01.setup/2.t
+++ b/share/doc/smm/01.setup/2.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/01.setup/3.t b/share/doc/smm/01.setup/3.t
index fb7be963f079..3d9a6b472732 100644
--- a/share/doc/smm/01.setup/3.t
+++ b/share/doc/smm/01.setup/3.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/01.setup/4.t b/share/doc/smm/01.setup/4.t
index 149aab04467b..aed3367d353f 100644
--- a/share/doc/smm/01.setup/4.t
+++ b/share/doc/smm/01.setup/4.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/01.setup/5.t b/share/doc/smm/01.setup/5.t
index 8125866217d8..78b16221eba5 100644
--- a/share/doc/smm/01.setup/5.t
+++ b/share/doc/smm/01.setup/5.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/01.setup/6.t b/share/doc/smm/01.setup/6.t
index d043474c1fdd..10cee17a1672 100644
--- a/share/doc/smm/01.setup/6.t
+++ b/share/doc/smm/01.setup/6.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/02.config/0.t b/share/doc/smm/02.config/0.t
index ae5bf77221ca..e33ffae06fa8 100644
--- a/share/doc/smm/02.config/0.t
+++ b/share/doc/smm/02.config/0.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/02.config/1.t b/share/doc/smm/02.config/1.t
index 453041b02f1b..b4836b0cb591 100644
--- a/share/doc/smm/02.config/1.t
+++ b/share/doc/smm/02.config/1.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/02.config/2.t b/share/doc/smm/02.config/2.t
index 34e6b6349b22..2a8d43745513 100644
--- a/share/doc/smm/02.config/2.t
+++ b/share/doc/smm/02.config/2.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/02.config/3.t b/share/doc/smm/02.config/3.t
index e0b62348eec5..b1c28b99dbbb 100644
--- a/share/doc/smm/02.config/3.t
+++ b/share/doc/smm/02.config/3.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/02.config/4.t b/share/doc/smm/02.config/4.t
index 74981859a18b..9461d5161f20 100644
--- a/share/doc/smm/02.config/4.t
+++ b/share/doc/smm/02.config/4.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/02.config/5.t b/share/doc/smm/02.config/5.t
index 81f2a52b7735..3f55a820be85 100644
--- a/share/doc/smm/02.config/5.t
+++ b/share/doc/smm/02.config/5.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/02.config/6.t b/share/doc/smm/02.config/6.t
index 49f6e91bd8e8..3ae687059131 100644
--- a/share/doc/smm/02.config/6.t
+++ b/share/doc/smm/02.config/6.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/02.config/a.t b/share/doc/smm/02.config/a.t
index dfcb9548022c..ffdbd2bd2e02 100644
--- a/share/doc/smm/02.config/a.t
+++ b/share/doc/smm/02.config/a.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/02.config/b.t b/share/doc/smm/02.config/b.t
index 901a009c2c9c..c71bdda24bb2 100644
--- a/share/doc/smm/02.config/b.t
+++ b/share/doc/smm/02.config/b.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/02.config/c.t b/share/doc/smm/02.config/c.t
index 67b63ec2f635..a19336b6c421 100644
--- a/share/doc/smm/02.config/c.t
+++ b/share/doc/smm/02.config/c.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/02.config/d.t b/share/doc/smm/02.config/d.t
index db9ab80116c5..d9b1dcc43db8 100644
--- a/share/doc/smm/02.config/d.t
+++ b/share/doc/smm/02.config/d.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/02.config/e.t b/share/doc/smm/02.config/e.t
index 0a9505b2441d..ebf3a61d2a51 100644
--- a/share/doc/smm/02.config/e.t
+++ b/share/doc/smm/02.config/e.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/04.quotas/quotas.ms b/share/doc/smm/04.quotas/quotas.ms
index 369183025180..7001543b81b6 100644
--- a/share/doc/smm/04.quotas/quotas.ms
+++ b/share/doc/smm/04.quotas/quotas.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/05.fastfs/0.t b/share/doc/smm/05.fastfs/0.t
index 9cc759b87f48..d680e4e626c2 100644
--- a/share/doc/smm/05.fastfs/0.t
+++ b/share/doc/smm/05.fastfs/0.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/05.fastfs/1.t b/share/doc/smm/05.fastfs/1.t
index dbdafc4e7581..2018ee02f540 100644
--- a/share/doc/smm/05.fastfs/1.t
+++ b/share/doc/smm/05.fastfs/1.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/05.fastfs/2.t b/share/doc/smm/05.fastfs/2.t
index 33d9ade4c6b4..b00cc0cd50af 100644
--- a/share/doc/smm/05.fastfs/2.t
+++ b/share/doc/smm/05.fastfs/2.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/05.fastfs/3.t b/share/doc/smm/05.fastfs/3.t
index 23db86aead85..1a01c608954e 100644
--- a/share/doc/smm/05.fastfs/3.t
+++ b/share/doc/smm/05.fastfs/3.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/05.fastfs/4.t b/share/doc/smm/05.fastfs/4.t
index 15e3923dfbec..767def4566d2 100644
--- a/share/doc/smm/05.fastfs/4.t
+++ b/share/doc/smm/05.fastfs/4.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/05.fastfs/5.t b/share/doc/smm/05.fastfs/5.t
index 96d721ac20fe..ce72f848705e 100644
--- a/share/doc/smm/05.fastfs/5.t
+++ b/share/doc/smm/05.fastfs/5.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/05.fastfs/6.t b/share/doc/smm/05.fastfs/6.t
index 40be6aaccbcc..3e32e261f527 100644
--- a/share/doc/smm/05.fastfs/6.t
+++ b/share/doc/smm/05.fastfs/6.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/06.nfs/0.t b/share/doc/smm/06.nfs/0.t
index 4d77f560e2aa..6a3d1bbab249 100644
--- a/share/doc/smm/06.nfs/0.t
+++ b/share/doc/smm/06.nfs/0.t
@@ -12,11 +12,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/06.nfs/1.t b/share/doc/smm/06.nfs/1.t
index 96415dabec0e..8610179fa47e 100644
--- a/share/doc/smm/06.nfs/1.t
+++ b/share/doc/smm/06.nfs/1.t
@@ -12,11 +12,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/06.nfs/2.t b/share/doc/smm/06.nfs/2.t
index 85e28963fd3f..3e74d7f3c32d 100644
--- a/share/doc/smm/06.nfs/2.t
+++ b/share/doc/smm/06.nfs/2.t
@@ -12,11 +12,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/06.nfs/ref.t b/share/doc/smm/06.nfs/ref.t
index 039363bb0a4c..9841afb69db4 100644
--- a/share/doc/smm/06.nfs/ref.t
+++ b/share/doc/smm/06.nfs/ref.t
@@ -12,11 +12,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/07.lpd/0.t b/share/doc/smm/07.lpd/0.t
index 65ecd4e44aa9..092e5fdda39c 100644
--- a/share/doc/smm/07.lpd/0.t
+++ b/share/doc/smm/07.lpd/0.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/07.lpd/1.t b/share/doc/smm/07.lpd/1.t
index 1d34e9ea86ce..0d032117bc38 100644
--- a/share/doc/smm/07.lpd/1.t
+++ b/share/doc/smm/07.lpd/1.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/07.lpd/2.t b/share/doc/smm/07.lpd/2.t
index 9da2ae231cc6..a19817eacb5c 100644
--- a/share/doc/smm/07.lpd/2.t
+++ b/share/doc/smm/07.lpd/2.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/07.lpd/3.t b/share/doc/smm/07.lpd/3.t
index 8c950a961c8d..2fbf68a4a98e 100644
--- a/share/doc/smm/07.lpd/3.t
+++ b/share/doc/smm/07.lpd/3.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/07.lpd/4.t b/share/doc/smm/07.lpd/4.t
index 8800bc0d51c0..b7de3d44e84f 100644
--- a/share/doc/smm/07.lpd/4.t
+++ b/share/doc/smm/07.lpd/4.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/07.lpd/5.t b/share/doc/smm/07.lpd/5.t
index 137a342640bc..1e2c035744d4 100644
--- a/share/doc/smm/07.lpd/5.t
+++ b/share/doc/smm/07.lpd/5.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/07.lpd/6.t b/share/doc/smm/07.lpd/6.t
index 708779055f7d..02417e152d0f 100644
--- a/share/doc/smm/07.lpd/6.t
+++ b/share/doc/smm/07.lpd/6.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/07.lpd/7.t b/share/doc/smm/07.lpd/7.t
index a6f6bea50320..ef05de084cf5 100644
--- a/share/doc/smm/07.lpd/7.t
+++ b/share/doc/smm/07.lpd/7.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/11.timedop/timed.ms b/share/doc/smm/11.timedop/timed.ms
index feea0b52e315..2e37b7b17b8f 100644
--- a/share/doc/smm/11.timedop/timed.ms
+++ b/share/doc/smm/11.timedop/timed.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/12.timed/date b/share/doc/smm/12.timed/date
index e4e4d58a0308..ae4f81873a0d 100644
--- a/share/doc/smm/12.timed/date
+++ b/share/doc/smm/12.timed/date
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/12.timed/loop b/share/doc/smm/12.timed/loop
index 11ccb4da5c33..091de5ae9a63 100644
--- a/share/doc/smm/12.timed/loop
+++ b/share/doc/smm/12.timed/loop
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/12.timed/time b/share/doc/smm/12.timed/time
index 619d1718744c..eb7c9b324fca 100644
--- a/share/doc/smm/12.timed/time
+++ b/share/doc/smm/12.timed/time
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/12.timed/timed.ms b/share/doc/smm/12.timed/timed.ms
index 412399ae41b3..1d8db03c432a 100644
--- a/share/doc/smm/12.timed/timed.ms
+++ b/share/doc/smm/12.timed/timed.ms
@@ -11,11 +11,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/12.timed/unused b/share/doc/smm/12.timed/unused
index adadfc3d72ca..bd06565f3527 100644
--- a/share/doc/smm/12.timed/unused
+++ b/share/doc/smm/12.timed/unused
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/0.t b/share/doc/smm/18.net/0.t
index d16e56fb9952..c379c640c7a6 100644
--- a/share/doc/smm/18.net/0.t
+++ b/share/doc/smm/18.net/0.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/1.t b/share/doc/smm/18.net/1.t
index ba5adb534e7e..81e9910b94b6 100644
--- a/share/doc/smm/18.net/1.t
+++ b/share/doc/smm/18.net/1.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/2.t b/share/doc/smm/18.net/2.t
index f5048897cbae..2aef949b9e6c 100644
--- a/share/doc/smm/18.net/2.t
+++ b/share/doc/smm/18.net/2.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/3.t b/share/doc/smm/18.net/3.t
index 1d1fddd1fb54..f6af857a0049 100644
--- a/share/doc/smm/18.net/3.t
+++ b/share/doc/smm/18.net/3.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/4.t b/share/doc/smm/18.net/4.t
index afa6913fcad0..593f25583eec 100644
--- a/share/doc/smm/18.net/4.t
+++ b/share/doc/smm/18.net/4.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/5.t b/share/doc/smm/18.net/5.t
index d4fb8e38fa26..a3179aeef9b3 100644
--- a/share/doc/smm/18.net/5.t
+++ b/share/doc/smm/18.net/5.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/6.t b/share/doc/smm/18.net/6.t
index 601988cdea84..58bee5e9f224 100644
--- a/share/doc/smm/18.net/6.t
+++ b/share/doc/smm/18.net/6.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/7.t b/share/doc/smm/18.net/7.t
index e165de0e8f4a..3eb0ad162bae 100644
--- a/share/doc/smm/18.net/7.t
+++ b/share/doc/smm/18.net/7.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/8.t b/share/doc/smm/18.net/8.t
index e65e65665f14..2a713e51e3df 100644
--- a/share/doc/smm/18.net/8.t
+++ b/share/doc/smm/18.net/8.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/9.t b/share/doc/smm/18.net/9.t
index 506037a4297e..5e587c1cea47 100644
--- a/share/doc/smm/18.net/9.t
+++ b/share/doc/smm/18.net/9.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/a.t b/share/doc/smm/18.net/a.t
index dddba57807bf..27b2aef3cbe5 100644
--- a/share/doc/smm/18.net/a.t
+++ b/share/doc/smm/18.net/a.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/b.t b/share/doc/smm/18.net/b.t
index 2e39a8ad82fc..1cdeb29e639f 100644
--- a/share/doc/smm/18.net/b.t
+++ b/share/doc/smm/18.net/b.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/c.t b/share/doc/smm/18.net/c.t
index 2c7f752cd6ef..92de3aa4cbad 100644
--- a/share/doc/smm/18.net/c.t
+++ b/share/doc/smm/18.net/c.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/d.t b/share/doc/smm/18.net/d.t
index 675bece2aa7f..369b43b9f472 100644
--- a/share/doc/smm/18.net/d.t
+++ b/share/doc/smm/18.net/d.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/e.t b/share/doc/smm/18.net/e.t
index 77e8a2aaec7b..b8e404fb597a 100644
--- a/share/doc/smm/18.net/e.t
+++ b/share/doc/smm/18.net/e.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/18.net/f.t b/share/doc/smm/18.net/f.t
index 18995fd18db9..c9fd3e82df3d 100644
--- a/share/doc/smm/18.net/f.t
+++ b/share/doc/smm/18.net/f.t
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/smm/contents/contents.ms b/share/doc/smm/contents/contents.ms
index 1b8038a22d44..102cc656a2d6 100644
--- a/share/doc/smm/contents/contents.ms
+++ b/share/doc/smm/contents/contents.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/07.mail/mail0.nr b/share/doc/usd/07.mail/mail0.nr
index e569a5fbe72f..355a894d6e99 100644
--- a/share/doc/usd/07.mail/mail0.nr
+++ b/share/doc/usd/07.mail/mail0.nr
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/07.mail/mail1.nr b/share/doc/usd/07.mail/mail1.nr
index 50e7883c745e..dd1cffdbded1 100644
--- a/share/doc/usd/07.mail/mail1.nr
+++ b/share/doc/usd/07.mail/mail1.nr
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/07.mail/mail2.nr b/share/doc/usd/07.mail/mail2.nr
index 0419859257be..6a78f8dfaa34 100644
--- a/share/doc/usd/07.mail/mail2.nr
+++ b/share/doc/usd/07.mail/mail2.nr
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/07.mail/mail3.nr b/share/doc/usd/07.mail/mail3.nr
index 8b133ef39b80..7a3531d651b7 100644
--- a/share/doc/usd/07.mail/mail3.nr
+++ b/share/doc/usd/07.mail/mail3.nr
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/07.mail/mail4.nr b/share/doc/usd/07.mail/mail4.nr
index 1a1e0469fab1..9b6b3214fa69 100644
--- a/share/doc/usd/07.mail/mail4.nr
+++ b/share/doc/usd/07.mail/mail4.nr
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/07.mail/mail5.nr b/share/doc/usd/07.mail/mail5.nr
index 10e707cc3c0c..af96938d4be1 100644
--- a/share/doc/usd/07.mail/mail5.nr
+++ b/share/doc/usd/07.mail/mail5.nr
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/07.mail/mail6.nr b/share/doc/usd/07.mail/mail6.nr
index 0465a94135e9..5af9f8668b94 100644
--- a/share/doc/usd/07.mail/mail6.nr
+++ b/share/doc/usd/07.mail/mail6.nr
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/07.mail/mail7.nr b/share/doc/usd/07.mail/mail7.nr
index 0b2590b19fce..b985d23758a5 100644
--- a/share/doc/usd/07.mail/mail7.nr
+++ b/share/doc/usd/07.mail/mail7.nr
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/07.mail/mail8.nr b/share/doc/usd/07.mail/mail8.nr
index b09afbdaf6be..99cf477b1fb7 100644
--- a/share/doc/usd/07.mail/mail8.nr
+++ b/share/doc/usd/07.mail/mail8.nr
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/07.mail/mail9.nr b/share/doc/usd/07.mail/mail9.nr
index 271548e9d072..78081864e0b6 100644
--- a/share/doc/usd/07.mail/mail9.nr
+++ b/share/doc/usd/07.mail/mail9.nr
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/07.mail/maila.nr b/share/doc/usd/07.mail/maila.nr
index 84b01fede670..01c2e90df30b 100644
--- a/share/doc/usd/07.mail/maila.nr
+++ b/share/doc/usd/07.mail/maila.nr
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/18.msdiffs/ms.diffs b/share/doc/usd/18.msdiffs/ms.diffs
index be6883f15b7a..3bd8de6fb7bd 100644
--- a/share/doc/usd/18.msdiffs/ms.diffs
+++ b/share/doc/usd/18.msdiffs/ms.diffs
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/doc/usd/contents/contents.ms b/share/doc/usd/contents/contents.ms
index 15bc07a6467a..f18d046f40b2 100644
--- a/share/doc/usd/contents/contents.ms
+++ b/share/doc/usd/contents/contents.ms
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/examples/FreeBSD_version/Makefile b/share/examples/FreeBSD_version/Makefile
index fcfc6b314506..834d925a6fe2 100644
--- a/share/examples/FreeBSD_version/Makefile
+++ b/share/examples/FreeBSD_version/Makefile
@@ -1,7 +1,7 @@
# $FreeBSD$
PROG= FreeBSD_version
-NO_MAN=
+MAN=
install:
diff --git a/share/examples/Makefile b/share/examples/Makefile
index 04f53d683a2c..a4270bf38ae8 100644
--- a/share/examples/Makefile
+++ b/share/examples/Makefile
@@ -107,8 +107,8 @@ XFILES= BSD_daemon/FreeBSD.pfa \
kld/syscall/test/call.c \
libusb20/Makefile \
libusb20/README \
- libusb20/aux.c \
- libusb20/aux.h \
+ libusb20/util.c \
+ libusb20/util.h \
libusb20/bulk.c \
libusb20/control.c \
libvgl/Makefile \
@@ -241,15 +241,19 @@ etc-examples:
.if ${SHARED} != "symlinks"
SUBDIR= smbfs
-.if ${MK_ATF} != "no"
-SUBDIR+=atf
-.endif
.if ${MK_IPFILTER} != "no"
SUBDIR+=ipfilter
.endif
.if ${MK_PF} != "no"
SUBDIR+=pf
.endif
+.if ${MK_DMAGENT} != "no"
+SUBDIR+=dma
+.endif
+.endif
+
+.if ${MK_TESTS} != "no"
+SUBDIR+=tests
.endif
.include <bsd.subdir.mk>
diff --git a/share/examples/atf/Makefile b/share/examples/atf/Makefile
deleted file mode 100644
index 1a8cf9685fc2..000000000000
--- a/share/examples/atf/Makefile
+++ /dev/null
@@ -1,38 +0,0 @@
-#-
-# Copyright (c) 2011 Google, 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 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.
-#
-# $FreeBSD$
-
-ATF= ${.CURDIR}/../../../contrib/atf
-
-.PATH: ${ATF}/atf-report
-.PATH: ${ATF}/atf-run/sample
-
-
-FILESDIR= ${SHAREDIR}/examples/atf
-FILES= atf-run.hooks \
- tests-results.css
-
-.include <bsd.prog.mk>
diff --git a/share/examples/atf/Makefile.depend b/share/examples/atf/Makefile.depend
deleted file mode 100644
index 57b7e10c3d71..000000000000
--- a/share/examples/atf/Makefile.depend
+++ /dev/null
@@ -1,12 +0,0 @@
-# Autogenerated - do NOT edit!
-
-DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,}
-
-DIRDEPS = \
-
-
-.include <dirdeps.mk>
-
-.if ${DEP_RELDIR} == ${_DEP_RELDIR}
-# local dependencies - needed for -jN in clean tree
-.endif
diff --git a/share/examples/autofs/driver/Makefile b/share/examples/autofs/driver/Makefile
index d577668dc4e7..3e158837b59f 100644
--- a/share/examples/autofs/driver/Makefile
+++ b/share/examples/autofs/driver/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PROG= autodriver
-NO_MAN=
+MAN=
SRCS= autodriver.c
WARNS?= 4
diff --git a/share/examples/bhyve/vmrun.sh b/share/examples/bhyve/vmrun.sh
index 2e1bb38cd9df..0714b7f6cebc 100755
--- a/share/examples/bhyve/vmrun.sh
+++ b/share/examples/bhyve/vmrun.sh
@@ -34,17 +34,25 @@ FBSDRUN=/usr/sbin/bhyve
DEFAULT_MEMSIZE=512M
DEFAULT_CPUS=2
DEFAULT_TAPDEV=tap0
+DEFAULT_CONSOLE=stdio
DEFAULT_VIRTIO_DISK="./diskdev"
DEFAULT_ISOFILE="./release.iso"
usage() {
- echo "Usage: vmrun.sh [-hai][-g <gdbport>][-m <memsize>][-d <disk file>][-I <location of installation iso>][-t <tapdev>] <vmname>"
+ echo "Usage: vmrun.sh [-ahi] [-c <CPUs>] [-C <console>] [-d <disk file>]"
+ echo " [-e <name=value>] [-g <gdbport> ] [-H <directory>]"
+ echo " [-I <location of installation iso>] [-m <memsize>]"
+ echo " [-t <tapdev>] <vmname>"
+ echo ""
echo " -h: display this help message"
- echo " -a: force memory mapped local apic access"
+ echo " -a: force memory mapped local APIC access"
echo " -c: number of virtual cpus (default is ${DEFAULT_CPUS})"
+ echo " -C: console device (default is ${DEFAULT_CONSOLE})"
echo " -d: virtio diskdev file (default is ${DEFAULT_VIRTIO_DISK})"
+ echo " -e: set FreeBSD loader environment variable"
echo " -g: listen for connection from kgdb at <gdbport>"
+ echo " -H: host filesystem to export to the loader"
echo " -i: force boot of the Installation CDROM image"
echo " -I: Installation CDROM image location (default is ${DEFAULT_ISOFILE})"
echo " -m: memory size (default is ${DEFAULT_MEMSIZE})"
@@ -68,24 +76,36 @@ fi
force_install=0
isofile=${DEFAULT_ISOFILE}
memsize=${DEFAULT_MEMSIZE}
+console=${DEFAULT_CONSOLE}
cpus=${DEFAULT_CPUS}
virtio_diskdev=${DEFAULT_VIRTIO_DISK}
tapdev=${DEFAULT_TAPDEV}
apic_opt=""
gdbport=0
+loader_opt=""
-while getopts haic:g:I:m:d:t: c ; do
+while getopts ac:C:d:e:g:hH:iI:m:t: c ; do
case $c in
- h)
- usage
- ;;
a)
apic_opt="-a"
;;
+ c)
+ cpus=${OPTARG}
+ ;;
+ C)
+ console=${OPTARG}
+ ;;
d)
virtio_diskdev=${OPTARG}
;;
- g) gdbport=${OPTARG}
+ e)
+ loader_opt="${loader_opt} -e ${OPTARG}"
+ ;;
+ g)
+ gdbport=${OPTARG}
+ ;;
+ H)
+ host_base=`realpath ${OPTARG}`
;;
i)
force_install=1
@@ -93,16 +113,13 @@ while getopts haic:g:I:m:d:t: c ; do
I)
isofile=${OPTARG}
;;
- c)
- cpus=${OPTARG}
- ;;
m)
memsize=${OPTARG}
;;
t)
tapdev=${OPTARG}
;;
- \?)
+ *)
usage
;;
esac
@@ -115,6 +132,9 @@ if [ $# -ne 1 ]; then
fi
vmname="$1"
+if [ -n "${host_base}" ]; then
+ loader_opt="${loader_opt} -h ${host_base}"
+fi
# Create the virtio diskdev file if needed
if [ ! -f ${virtio_diskdev} ]; then
@@ -157,24 +177,26 @@ while [ 1 ]; do
exit 1
fi
BOOTDISK=${isofile}
- installer_opt="-s 3:0,virtio-blk,${BOOTDISK}"
+ installer_opt="-s 31:0,virtio-blk,${BOOTDISK}"
else
BOOTDISK=${virtio_diskdev}
installer_opt=""
fi
- ${LOADER} -m ${memsize} -d ${BOOTDISK} ${vmname}
+ ${LOADER} -c ${console} -m ${memsize} -d ${BOOTDISK} ${loader_opt} \
+ ${vmname}
if [ $? -ne 0 ]; then
break
fi
- ${FBSDRUN} -c ${cpus} -m ${memsize} ${apic_opt} -AI -H -P \
+ ${FBSDRUN} -c ${cpus} -m ${memsize} ${apic_opt} -A -H -P \
-g ${gdbport} \
-s 0:0,hostbridge \
- -s 1:0,virtio-net,${tapdev} \
- -s 2:0,virtio-blk,${virtio_diskdev} \
+ -s 1:0,lpc \
+ -s 2:0,virtio-net,${tapdev} \
+ -s 3:0,virtio-blk,${virtio_diskdev} \
+ -l com1,${console} \
${installer_opt} \
- -S 31,uart,stdio \
${vmname}
if [ $? -ne 0 ]; then
break
diff --git a/share/examples/dma/Makefile b/share/examples/dma/Makefile
new file mode 100644
index 000000000000..d4ce70930fe8
--- /dev/null
+++ b/share/examples/dma/Makefile
@@ -0,0 +1,10 @@
+# $FreeBSD$
+
+NO_OBJ=
+
+FILES= mailer.conf
+
+FILESDIR= ${SHAREDIR}/examples/dma
+
+.include <bsd.prog.mk>
+
diff --git a/share/examples/dma/mailer.conf b/share/examples/dma/mailer.conf
new file mode 100644
index 000000000000..53f42c251ce6
--- /dev/null
+++ b/share/examples/dma/mailer.conf
@@ -0,0 +1,5 @@
+# $FreeBSD$
+
+sendmail /usr/libexec/dma
+send-mail /usr/libexec/dma
+mailq /usr/libexec/dma
diff --git a/share/examples/etc/make.conf b/share/examples/etc/make.conf
index 19be71347235..5a5293319761 100644
--- a/share/examples/etc/make.conf
+++ b/share/examples/etc/make.conf
@@ -45,8 +45,8 @@
# if omitted), ultrasparc3
# Additionally the following CPU types are recognized by clang:
# Intel x86 architecture (for both amd64 and i386):
-# (AMD CPUs) bdver2, bdver1, btver2, btver1
-# (Intel CPUs) core-avx2, core-avx-i, corei7-avx, corei7, atom
+# (AMD CPUs) bdver3, bdver2, bdver1, btver2, btver1
+# (Intel CPUs) slm, core-avx2, core-avx-i, corei7-avx, corei7, atom
#
# (?= allows to buildworld for a different CPUTYPE.)
#
@@ -60,6 +60,12 @@
# nonstandard optimization settings
# before submitting bug reports without patches to the developers.
#
+# CFLAGS.arch provides a mechanism for applying CFLAGS only when building
+# the given architecture. This is useful primarily on a system used for
+# cross-building, when you have a set of flags to apply to the TARGET_ARCH
+# being cross-built but don't want those settings applied to building the
+# cross-tools or other components that run on the build host machine.
+#
# CXXFLAGS controls the compiler settings used when compiling C++ code.
# Note that CXXFLAGS is initially set to the value of CFLAGS. If you wish
# to add to CXXFLAGS value, "+=" must be used rather than "=". Using "="
@@ -71,6 +77,7 @@
#
# CFLAGS+= -msse3
# CXXFLAGS+= -msse3
+# CFLAGS.armv6+= -mfloat-abi=softfp
#
# MAKE_SHELL controls the shell used internally by make(1) to process the
# command scripts in makefiles. Three shells are supported, sh, ksh, and
@@ -131,7 +138,7 @@
# If you do not want unformatted manual pages to be compressed
# when they are installed:
#
-#NO_MANCOMPRESS=
+#WITHOUT_MANCOMPRESS=t
#
#
# Default format for system documentation, depends on your printer.
diff --git a/share/examples/find_interface/Makefile b/share/examples/find_interface/Makefile
index ac6de9cf7f05..425d5d3fa106 100644
--- a/share/examples/find_interface/Makefile
+++ b/share/examples/find_interface/Makefile
@@ -1,6 +1,6 @@
# $FreeBSD$
PROG= find_interface
-NO_MAN=
+MAN=
.include <bsd.prog.mk>
diff --git a/share/examples/kld/cdev/test/Makefile b/share/examples/kld/cdev/test/Makefile
index ad0c0fcd08d0..eebf54d7cb6a 100644
--- a/share/examples/kld/cdev/test/Makefile
+++ b/share/examples/kld/cdev/test/Makefile
@@ -67,7 +67,7 @@
# $FreeBSD$
#
PROG= testcdev
-NO_MAN=
+MAN=
WARNS?= 5
MODSTAT= /sbin/kldstat
diff --git a/share/examples/kld/random_adaptor/random_adaptor_example.c b/share/examples/kld/random_adaptor/random_adaptor_example.c
index c0ab10a83fc5..da588a87fe5d 100644
--- a/share/examples/kld/random_adaptor/random_adaptor_example.c
+++ b/share/examples/kld/random_adaptor/random_adaptor_example.c
@@ -30,32 +30,29 @@ __FBSDID("$FreeBSD$");
#include <sys/param.h>
#include <sys/kernel.h>
+#include <sys/lock.h>
#include <sys/module.h>
-#include <sys/selinfo.h>
+#include <sys/random.h>
#include <sys/systm.h>
+#include <dev/random/live_entropy_sources.h>
#include <dev/random/random_adaptors.h>
#include <dev/random/randomdev.h>
-#define RNG_NAME "example"
-
static int random_example_read(void *, int);
struct random_adaptor random_example = {
.ident = "Example RNG",
- .init = (random_init_func_t *)random_null_func,
- .deinit = (random_deinit_func_t *)random_null_func,
+ .source = RANDOM_PURE_BOGUS, /* Make sure this is in
+ * sys/random.h and is unique */
.read = random_example_read,
- .write = (random_write_func_t *)random_null_func,
- .reseed = (random_reseed_func_t *)random_null_func,
- .seeded = 1,
};
/*
* Used under the license provided @ http://xkcd.com/221/
* http://creativecommons.org/licenses/by-nc/2.5/
*/
-static u_char
+static uint8_t
getRandomNumber(void)
{
return 4; /* chosen by fair dice roll, guaranteed to be random */
@@ -64,14 +61,13 @@ getRandomNumber(void)
static int
random_example_read(void *buf, int c)
{
- u_char *b;
+ uint8_t *b;
int count;
b = buf;
- for (count = 0; count < c; count++) {
+ for (count = 0; count < c; count++)
b[count] = getRandomNumber();
- }
printf("returning %d bytes of pure randomness\n", c);
return (c);
@@ -80,15 +76,26 @@ random_example_read(void *buf, int c)
static int
random_example_modevent(module_t mod, int type, void *unused)
{
+ int error = 0;
switch (type) {
case MOD_LOAD:
- random_adaptor_register(RNG_NAME, &random_example);
- EVENTHANDLER_INVOKE(random_adaptor_attach, &random_example);
- return (0);
+ live_entropy_source_register(&random_example);
+ break;
+
+ case MOD_UNLOAD:
+ live_entropy_source_deregister(&random_example);
+ break;
+
+ case MOD_SHUTDOWN:
+ break;
+
+ default:
+ error = EOPNOTSUPP;
+ break;
}
- return (EINVAL);
+ return (error);
}
-RANDOM_ADAPTOR_MODULE(random_example, random_example_modevent, 1);
+LIVE_ENTROPY_SRC_MODULE(live_entropy_source_example, random_example_modevent, 1);
diff --git a/share/examples/kld/syscall/test/Makefile b/share/examples/kld/syscall/test/Makefile
index 09d535bf686c..6cc6907d1f4c 100644
--- a/share/examples/kld/syscall/test/Makefile
+++ b/share/examples/kld/syscall/test/Makefile
@@ -2,7 +2,7 @@
# $FreeBSD$
PROG= call
-NO_MAN=
+MAN=
WARNS?= 5
.include <bsd.prog.mk>
diff --git a/share/examples/libusb20/Makefile b/share/examples/libusb20/Makefile
index 6f870a192949..f0da6bf527a4 100644
--- a/share/examples/libusb20/Makefile
+++ b/share/examples/libusb20/Makefile
@@ -1,13 +1,14 @@
# $FreeBSD$
TARGETS= bulk control
+CFLAGS+= -Wall
all: $(TARGETS)
-bulk: bulk.o aux.o
- $(CC) $(CFLAGS) -o bulk bulk.o aux.o -lusb
+bulk: bulk.o util.o
+ $(CC) $(CFLAGS) -o bulk bulk.o util.o -lusb
-control: control.o aux.o
- $(CC) $(CFLAGS) -o control control.o aux.o -lusb
+control: control.o util.o
+ $(CC) $(CFLAGS) -o control control.o util.o -lusb
clean:
rm -f $(TARGETS) *.o *~
diff --git a/share/examples/libusb20/aux.c b/share/examples/libusb20/aux.c
deleted file mode 100644
index 434972aa736c..000000000000
--- a/share/examples/libusb20/aux.c
+++ /dev/null
@@ -1,120 +0,0 @@
-/* ----------------------------------------------------------------------------
- * "THE BEER-WARE LICENSE" (Revision 42) (by Poul-Henning Kamp):
- * <joerg@FreeBSD.ORG> wrote this file. As long as you retain this notice you
- * can do whatever you want with this stuff. If we meet some day, and you think
- * this stuff is worth it, you can buy me a beer in return. Joerg Wunsch
- * ----------------------------------------------------------------------------
- *
- * $FreeBSD$
- */
-
-/*
- * Helper functions common to all examples
- */
-
-#include <stdio.h>
-#include <stdint.h>
-#include <stdlib.h>
-
-#include <libusb20.h>
-#include <libusb20_desc.h>
-
-#include "aux.h"
-
-/*
- * Return a textual description for error "r".
- */
-const char *
-usb_error(enum libusb20_error r)
-{
- const char *msg = "UNKNOWN";
-
- switch (r)
- {
- case LIBUSB20_SUCCESS:
- msg = "success";
- break;
-
- case LIBUSB20_ERROR_IO:
- msg = "IO error";
- break;
-
- case LIBUSB20_ERROR_INVALID_PARAM:
- msg = "Invalid parameter";
- break;
-
- case LIBUSB20_ERROR_ACCESS:
- msg = "Access denied";
- break;
-
- case LIBUSB20_ERROR_NO_DEVICE:
- msg = "No such device";
- break;
-
- case LIBUSB20_ERROR_NOT_FOUND:
- msg = "Entity not found";
- break;
-
- case LIBUSB20_ERROR_BUSY:
- msg = "Resource busy";
- break;
-
- case LIBUSB20_ERROR_TIMEOUT:
- msg = "Operation timed out";
- break;
-
- case LIBUSB20_ERROR_OVERFLOW:
- msg = "Overflow";
- break;
-
- case LIBUSB20_ERROR_PIPE:
- msg = "Pipe error";
- break;
-
- case LIBUSB20_ERROR_INTERRUPTED:
- msg = "System call interrupted";
- break;
-
- case LIBUSB20_ERROR_NO_MEM:
- msg = "Insufficient memory";
- break;
-
- case LIBUSB20_ERROR_NOT_SUPPORTED:
- msg = "Operation not supported";
- break;
-
- case LIBUSB20_ERROR_OTHER:
- msg = "Other error";
- break;
- }
-
- return msg;
-}
-
-/*
- * Print "len" bytes from "buf" in hex, followed by an ASCII
- * representation (somewhat resembling the output of hd(1)).
- */
-void
-print_formatted(uint8_t *buf, uint32_t len)
-{
- int i, j;
-
- for (j = 0; j < len; j += 16)
- {
- printf("%02x: ", j);
-
- for (i = 0; i < 16 && i + j < len; i++)
- printf("%02x ", buf[i + j]);
- printf(" ");
- for (i = 0; i < 16 && i + j < len; i++)
- {
- uint8_t c = buf[i + j];
- if(c >= ' ' && c <= '~')
- printf("%c", (char)c);
- else
- putchar('.');
- }
- putchar('\n');
- }
-}
diff --git a/share/examples/libusb20/bulk.c b/share/examples/libusb20/bulk.c
index 7b6b02c005b1..08ba029c0817 100644
--- a/share/examples/libusb20/bulk.c
+++ b/share/examples/libusb20/bulk.c
@@ -41,7 +41,7 @@
#include <libusb20.h>
#include <libusb20_desc.h>
-#include "aux.h"
+#include "util.h"
/*
* If you want to see the details of the internal datastructures
@@ -74,7 +74,7 @@ doit(struct libusb20_device *dev)
*/
if ((rv = libusb20_dev_open(dev, 2)) != 0)
{
- fprintf(stderr, "libusb20_dev_open: %s\n", usb_error(rv));
+ fprintf(stderr, "libusb20_dev_open: %s\n", libusb20_strerror(rv));
return;
}
@@ -84,7 +84,7 @@ doit(struct libusb20_device *dev)
*/
if ((rv = libusb20_dev_set_config_index(dev, 0)) != 0)
{
- fprintf(stderr, "libusb20_dev_set_config_index: %s\n", usb_error(rv));
+ fprintf(stderr, "libusb20_dev_set_config_index: %s\n", libusb20_strerror(rv));
return;
}
@@ -97,7 +97,7 @@ doit(struct libusb20_device *dev)
if (xfr_in == NULL || xfr_out == NULL)
{
- fprintf(stderr, "libusb20_tr_get_pointer: %s\n", usb_error(rv));
+ fprintf(stderr, "libusb20_tr_get_pointer: %s\n", libusb20_strerror(rv));
return;
}
@@ -107,12 +107,12 @@ doit(struct libusb20_device *dev)
*/
if ((rv = libusb20_tr_open(xfr_out, 0, 1, out_ep)) != 0)
{
- fprintf(stderr, "libusb20_tr_open: %s\n", usb_error(rv));
+ fprintf(stderr, "libusb20_tr_open: %s\n", libusb20_strerror(rv));
return;
}
if ((rv = libusb20_tr_open(xfr_in, 0, 1, in_ep)) != 0)
{
- fprintf(stderr, "libusb20_tr_open: %s\n", usb_error(rv));
+ fprintf(stderr, "libusb20_tr_open: %s\n", libusb20_strerror(rv));
return;
}
@@ -124,7 +124,7 @@ doit(struct libusb20_device *dev)
if ((rv = libusb20_tr_bulk_intr_sync(xfr_out, out_buf, out_len, &rlen, TIMEOUT))
!= 0)
{
- fprintf(stderr, "libusb20_tr_bulk_intr_sync (OUT): %s\n", usb_error(rv));
+ fprintf(stderr, "libusb20_tr_bulk_intr_sync (OUT): %s\n", libusb20_strerror(rv));
}
printf("sent %d bytes\n", rlen);
}
@@ -132,7 +132,7 @@ doit(struct libusb20_device *dev)
if ((rv = libusb20_tr_bulk_intr_sync(xfr_in, in_buf, BUFLEN, &rlen, TIMEOUT))
!= 0)
{
- fprintf(stderr, "libusb20_tr_bulk_intr_sync: %s\n", usb_error(rv));
+ fprintf(stderr, "libusb20_tr_bulk_intr_sync: %s\n", libusb20_strerror(rv));
}
printf("received %d bytes\n", rlen);
if (rlen > 0)
diff --git a/share/examples/libusb20/control.c b/share/examples/libusb20/control.c
index 0a9d152068a0..724ef5979ede 100644
--- a/share/examples/libusb20/control.c
+++ b/share/examples/libusb20/control.c
@@ -11,8 +11,6 @@
/*
* Simple demo program to illustrate the handling of FreeBSD's
* libusb20.
- *
- * XXX
*/
/*
@@ -38,12 +36,15 @@
#include <stdlib.h>
#include <sysexits.h>
#include <unistd.h>
+#include <string.h>
#include <libusb20.h>
#include <libusb20_desc.h>
#include <sys/queue.h>
+#include "util.h"
+
/*
* If you want to see the details of the internal datastructures
* in the debugger, unifdef the following.
@@ -86,7 +87,7 @@ doit(struct libusb20_device *dev)
*/
if ((rv = libusb20_dev_open(dev, 1)) != 0)
{
- fprintf(stderr, "libusb20_dev_open: %s\n", usb_error(rv));
+ fprintf(stderr, "libusb20_dev_open: %s\n", libusb20_strerror(rv));
return;
}
@@ -96,7 +97,7 @@ doit(struct libusb20_device *dev)
*/
if ((rv = libusb20_dev_set_config_index(dev, 0)) != 0)
{
- fprintf(stderr, "libusb20_dev_set_config_index: %s\n", usb_error(rv));
+ fprintf(stderr, "libusb20_dev_set_config_index: %s\n", libusb20_strerror(rv));
return;
}
@@ -126,7 +127,7 @@ doit(struct libusb20_device *dev)
0 /* flags */)) != 0)
{
fprintf(stderr,
- "libusb20_dev_request_sync: %s\n", usb_error(rv));
+ "libusb20_dev_request_sync: %s\n", libusb20_strerror(rv));
}
printf("sent %d bytes\n", actlen);
if ((setup.bmRequestType & 0x80) != 0)
@@ -146,7 +147,7 @@ doit(struct libusb20_device *dev)
if (xfr_intr == NULL)
{
- fprintf(stderr, "libusb20_tr_get_pointer: %s\n", usb_error(rv));
+ fprintf(stderr, "libusb20_tr_get_pointer: %s\n", libusb20_strerror(rv));
return;
}
@@ -155,7 +156,7 @@ doit(struct libusb20_device *dev)
*/
if ((rv = libusb20_tr_open(xfr_intr, 0, 1, intr_ep)) != 0)
{
- fprintf(stderr, "libusb20_tr_open: %s\n", usb_error(rv));
+ fprintf(stderr, "libusb20_tr_open: %s\n", libusb20_strerror(rv));
return;
}
@@ -165,7 +166,7 @@ doit(struct libusb20_device *dev)
if ((rv = libusb20_tr_bulk_intr_sync(xfr_intr, in_buf, BUFLEN, &rlen, TIMEOUT))
!= 0)
{
- fprintf(stderr, "libusb20_tr_bulk_intr_sync: %s\n", usb_error(rv));
+ fprintf(stderr, "libusb20_tr_bulk_intr_sync: %s\n", libusb20_strerror(rv));
}
printf("received %d bytes\n", rlen);
if (rlen > 0)
diff --git a/share/examples/libusb20/util.c b/share/examples/libusb20/util.c
new file mode 100644
index 000000000000..4a24ee0cf8c9
--- /dev/null
+++ b/share/examples/libusb20/util.c
@@ -0,0 +1,50 @@
+/* ----------------------------------------------------------------------------
+ * "THE BEER-WARE LICENSE" (Revision 42) (by Poul-Henning Kamp):
+ * <joerg@FreeBSD.ORG> wrote this file. As long as you retain this notice you
+ * can do whatever you want with this stuff. If we meet some day, and you think
+ * this stuff is worth it, you can buy me a beer in return. Joerg Wunsch
+ * ----------------------------------------------------------------------------
+ *
+ * $FreeBSD$
+ */
+
+/*
+ * Helper functions common to all examples
+ */
+
+#include <stdio.h>
+#include <stdint.h>
+#include <stdlib.h>
+
+#include <libusb20.h>
+#include <libusb20_desc.h>
+
+#include "util.h"
+
+/*
+ * Print "len" bytes from "buf" in hex, followed by an ASCII
+ * representation (somewhat resembling the output of hd(1)).
+ */
+void
+print_formatted(uint8_t *buf, uint32_t len)
+{
+ int i, j;
+
+ for (j = 0; j < len; j += 16)
+ {
+ printf("%02x: ", j);
+
+ for (i = 0; i < 16 && i + j < len; i++)
+ printf("%02x ", buf[i + j]);
+ printf(" ");
+ for (i = 0; i < 16 && i + j < len; i++)
+ {
+ uint8_t c = buf[i + j];
+ if(c >= ' ' && c <= '~')
+ printf("%c", (char)c);
+ else
+ putchar('.');
+ }
+ putchar('\n');
+ }
+}
diff --git a/share/examples/libusb20/aux.h b/share/examples/libusb20/util.h
index d43ea4e571fb..5fd2a6e09c2d 100644
--- a/share/examples/libusb20/aux.h
+++ b/share/examples/libusb20/util.h
@@ -11,5 +11,4 @@
#include <stdint.h>
#include <libusb20.h>
-const char *usb_error(enum libusb20_error r);
void print_formatted(uint8_t *buf, uint32_t len);
diff --git a/share/examples/libvgl/Makefile b/share/examples/libvgl/Makefile
index 6b4e916851da..f78584ed3888 100644
--- a/share/examples/libvgl/Makefile
+++ b/share/examples/libvgl/Makefile
@@ -1,7 +1,7 @@
# $FreeBSD$
PROG= demo
-NO_MAN=
+MAN=
DPADD= ${LIBVGL}
LDADD= -lvgl
diff --git a/share/examples/perfmon/Makefile b/share/examples/perfmon/Makefile
index de59b9effcf0..51ecf4dd74db 100644
--- a/share/examples/perfmon/Makefile
+++ b/share/examples/perfmon/Makefile
@@ -1,7 +1,7 @@
# $FreeBSD$
PROG= perfmon
-NO_MAN=
+MAN=
install:
diff --git a/share/examples/ppi/Makefile b/share/examples/ppi/Makefile
index 9b0d0d59c3d3..09a98cdc8963 100644
--- a/share/examples/ppi/Makefile
+++ b/share/examples/ppi/Makefile
@@ -3,6 +3,6 @@
# $FreeBSD$
PROG= ppilcd
-NO_MAN=
+MAN=
.include <bsd.prog.mk>
diff --git a/share/examples/tests/Makefile b/share/examples/tests/Makefile
new file mode 100644
index 000000000000..387b8068b1f7
--- /dev/null
+++ b/share/examples/tests/Makefile
@@ -0,0 +1,12 @@
+# $FreeBSD$
+
+.include <bsd.own.mk>
+
+TESTSDIR= ${TESTSBASE}/share/examples
+
+SUBDIR= tests
+
+KYUAFILE= yes
+.PATH: ${.CURDIR:H:H:H}/tests
+
+.include <bsd.test.mk>
diff --git a/share/examples/tests/README b/share/examples/tests/README
new file mode 100644
index 000000000000..0465cbe79889
--- /dev/null
+++ b/share/examples/tests/README
@@ -0,0 +1,37 @@
+$FreeBSD$
+
+This directory contains sample test programs along the Makefile and
+Kyuafile logic to get them build and installed.
+
+The goal of these test programs is to illustrate, via simple and
+heaviliy-commented code, how to construct test programs using all the
+supported interfaces in the system.
+
+If you use any files in here as templates for your own code, please
+remove all comments while doing so and then write your own if necessary.
+
+The subdirectories here contain:
+
+* tests/: Regular directory containing the tests code. Note that the
+ apparently-redundant tests/tests/ path component here is expected for
+ consistency reasons and required to get the right layout under
+ /usr/tests/.
+
+* tests/atf/: Tests that use the ATF libraries, including atf-c, atf-c++
+ and atf-sh. See kyua-atf-interface(1) for details.
+
+* tests/plain/: Tests that do not use any testing framework. See
+ kyua-plain-interface(1) for details.
+
+To inspect the available sample test cases from an installed system:
+
+ $ kyua list -k /usr/tests/share/examples/tests/Kyuafile
+
+To run the full suite of sample test cases:
+
+ $ kyua test -k /usr/tests/share/examples/tests/Kyuafile
+
+And to debug a specific failing test case, if any:
+
+ $ kyua debug -k /usr/tests/share/examples/tests/Kyuafile \
+ atf/cp_test:simple
diff --git a/share/examples/tests/tests/Makefile b/share/examples/tests/tests/Makefile
new file mode 100644
index 000000000000..9f7b5a4729c4
--- /dev/null
+++ b/share/examples/tests/tests/Makefile
@@ -0,0 +1,27 @@
+# $FreeBSD$
+
+.include <bsd.own.mk>
+
+# Directory into which the Kyuafile provided by this directory will be
+# installed.
+#
+# This is always a subdirectory of ${TESTSBASE}/. The remainder of the
+# path has to match the relative path within the source tree in which
+# these files are found modulo the tests/ component at the end.
+#
+# For example: if this Makefile were in src/bin/cp/tests/, its TESTSDIR
+# would point at ${TESTSBASE}/bin/cp/.
+TESTSDIR= ${TESTSBASE}/share/examples/tests
+
+# List of subdirectories into which we want to recurse during the build
+# of the system. We use TESTS_SUBDIRS instead of SUBDIR because we want
+# the auto-generated Kyuafile to recurse into these directories.
+TESTS_SUBDIRS= atf plain
+
+# We leave KYUAFILE unset so that bsd.test.mk auto-generates a Kyuafile
+# for us based on the contents of the TESTS_SUBDIRS line above. The
+# generated file will tell the tests run-time engine to recurse into the
+# directories listed above.
+#KYUAFILE= auto
+
+.include <bsd.test.mk>
diff --git a/share/examples/tests/tests/atf/Kyuafile b/share/examples/tests/tests/atf/Kyuafile
new file mode 100644
index 000000000000..8c60947d1082
--- /dev/null
+++ b/share/examples/tests/tests/atf/Kyuafile
@@ -0,0 +1,46 @@
+-- $FreeBSD$
+--
+-- Copyright 2013 Google 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:
+--
+-- * Redistributions of source code must retain the above copyright
+-- notice, this list of conditions and the following disclaimer.
+-- * 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.
+-- * Neither the name of Google Inc. 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 COPYRIGHT HOLDERS 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
+-- OWNER 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.
+
+syntax(2)
+
+-- All tests provided by the FreeBSD base system should set the test_suite
+-- property to FreeBSD. This creates a namespace in the configuration file
+-- in which specific run-time properties can be passed to the tests below.
+test_suite('FreeBSD')
+
+-- Register the various test programs into the test suite defined in this
+-- directory.
+--
+-- Note that, while Kyua supports overriding the test case metadata
+-- properties (e.g. their timeout) along the test program definition, you
+-- should not do so for ATF test programs. The ATF test cases themselves
+-- encode the right values.
+atf_test_program{name='cp_test'}
+atf_test_program{name='printf_test'}
diff --git a/share/examples/tests/tests/atf/Makefile b/share/examples/tests/tests/atf/Makefile
new file mode 100644
index 000000000000..c7bd46fef7b1
--- /dev/null
+++ b/share/examples/tests/tests/atf/Makefile
@@ -0,0 +1,30 @@
+# $FreeBSD$
+
+.include <bsd.own.mk>
+
+# Directory into which the Kyuafile provided by this directory will be
+# installed.
+#
+# This is always a subdirectory of ${TESTSBASE}/. The remainder of the
+# path has to match the relative path within the source tree in which
+# these files are found modulo the tests/ component at the end.
+#
+# For example: if this Makefile were in src/bin/cp/tests/, its TESTSDIR
+# would point at ${TESTSBASE}/bin/cp/.
+TESTSDIR= ${TESTSBASE}/share/examples/tests/atf
+
+# List of test programs to build. Note that we can build more than one
+# test from a single directory, and this is expected.
+ATF_TESTS_C= printf_test
+ATF_TESTS_SH= cp_test
+
+# Tell bsd.test.mk that we are providing a hand-crafted Kyuafile in this
+# directory. We do so because the file in this directory exists for
+# documentation purposes.
+#
+# In general, however, you should NOT define KYUAFILE at all to allow
+# bsd.test.mk auto-generate one for you based on the ATF_TESTS_*
+# definitions from above.
+KYUAFILE= yes
+
+.include <bsd.test.mk>
diff --git a/share/examples/tests/tests/atf/cp_test.sh b/share/examples/tests/tests/atf/cp_test.sh
new file mode 100644
index 000000000000..83d691460d0f
--- /dev/null
+++ b/share/examples/tests/tests/atf/cp_test.sh
@@ -0,0 +1,119 @@
+# $FreeBSD$
+#
+# Copyright 2013 Google 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:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * 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.
+# * Neither the name of Google Inc. 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 COPYRIGHT HOLDERS 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
+# OWNER 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.
+
+#
+# INTRODUCTION
+#
+# This sample test program implements various test cases for the cp(1)
+# utility in order to demonstrate the usage of the ATF shell API (see
+# atf-sh-api(3)).
+#
+
+#
+# Auxiliary function to compare two files for equality.
+#
+verify_copy() {
+ if ! cmp -s "${1}" "${2}"; then
+ echo "${1} and ${2} differ, but they should be equal"
+ diff -u "${1}" "${2}"
+ atf_fail "Original and copy do not match"
+ fi
+}
+
+#
+# This is the simplest form of a test case definition: a test case
+# without a header.
+#
+# In most cases, this is the definition you will want to use. However,
+# make absolutely sure that the test case name is descriptive enough.
+# Multi-word test case names are encouraged. Keep in mind that these
+# are exposed to the reader in the test reports, and the goal is for
+# the combination of the test program plus the name of the test case to
+# give a pretty clear idea of what specific condition the test is
+# validating.
+#
+atf_test_case simple
+simple_body() {
+ echo 'File 1' >file1
+
+ # The atf_check function is a very powerful function of atf-sh.
+ # It allows you to define checkers for the exit status, the
+ # stdout and the stderr of any command you execute. If the
+ # result of the command does not match the expectations defined
+ # in the checkers, the test fails and verbosely reports data
+ # behind the problem.
+ #
+ # See atf-check(1) for details.
+ atf_check -s exit:0 -o empty -e empty cp file1 file2
+
+ verify_copy file1 file2
+
+ # Of special note here is that we are NOT deleting the temporary
+ # files we created in this test. Kyua takes care of this
+ # cleanup automatically and tests can (and should) rely on this
+ # behavior.
+}
+
+#
+# This is a more complex form of a test case definition: a test case
+# with a header and a body. You should always favor the simpler
+# definition above unless you have to override specific metadata
+# variables.
+#
+# See atf-test-case(4) and kyua-atf-interface(1) for details on all
+# available properties.
+#
+atf_test_case force
+force_head() {
+ # In this specific case, we define a textual description for
+ # the test case, which is later exported to the reports for
+ # documentation purposes.
+ #
+ # However, note again that you should favor highly descriptive
+ # test case names to textual descriptions.
+ atf_set "descr" "Tests that the -f flag causes cp to forcibly" \
+ "override the destination file"
+}
+force_body() {
+ echo 'File 1' >file1
+ echo 'File 2' >file2
+ chmod 400 file2
+ atf_check cp -f file1 file2
+ verify_copy file1 file2
+}
+
+#
+# Lastly, we tell ATF which test cases exist in this program. This
+# function should not do anything other than this registration.
+#
+atf_init_test_cases() {
+ atf_add_test_case simple
+ atf_add_test_case force
+}
diff --git a/share/examples/tests/tests/atf/printf_test.c b/share/examples/tests/tests/atf/printf_test.c
new file mode 100644
index 000000000000..04a5665cdd89
--- /dev/null
+++ b/share/examples/tests/tests/atf/printf_test.c
@@ -0,0 +1,155 @@
+/* $FreeBSD$
+ *
+ * Copyright 2013 Google 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * Neither the name of Google Inc. 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 COPYRIGHT HOLDERS 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
+ * OWNER 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. */
+
+/*
+ * INTRODUCTION
+ *
+ * This sample test program implements various test cases for the printf(3)
+ * family of functions in order to demonstrate the usage of the ATF C API
+ * (see atf-c-api(3)).
+ *
+ * Note that this test program is called printf_test because it is intended
+ * to validate various functions of the printf(3) family. For this reason,
+ * each test is prefixed with the name of the function under test followed
+ * by a description of the specific condition being validated. You should
+ * use a similar naming scheme for your own tests.
+ */
+
+#include <atf-c.h>
+#include <stdio.h>
+#include <string.h>
+
+/*
+ * This is the simplest form of a test case definition: a test case
+ * without a header.
+ *
+ * In most cases, this is the definition you will want to use. However,
+ * make absolutely sure that the test case name is descriptive enough.
+ * Multi-word test case names are encouraged. Keep in mind that these
+ * are exposed to the reader in the test reports, and the goal is for
+ * the combination of the test program plus the name of the test case to
+ * give a pretty clear idea of what specific condition the test is
+ * validating.
+ */
+ATF_TC_WITHOUT_HEAD(snprintf__two_formatters);
+ATF_TC_BODY(snprintf__two_formatters, tc)
+{
+ char buffer[128];
+
+ /* This first require-style check invokes the function we are
+ * interested in testing. This will cause the test to fail if
+ * the condition provided to ATF_REQUIRE is not met. */
+ ATF_REQUIRE(snprintf(buffer, sizeof(buffer), "%s, %s!",
+ "Hello", "tests") > 0);
+
+ /* This second check-style check compares that the result of the
+ * snprintf call we performed above is correct. We use a check
+ * instead of a require. */
+ ATF_CHECK_STREQ("Hello, tests!", buffer);
+}
+
+/*
+ * This is a more complex form of a test case definition: a test case
+ * with a header and a body. You should always favor the simpler
+ * definition above unless you have to override specific metadata
+ * variables.
+ *
+ * See atf-test-case(4) and kyua-atf-interface(1) for details on all
+ * available properties.
+ */
+ATF_TC(snprintf__overflow);
+ATF_TC_HEAD(snprintf__overflow, tc)
+{
+ /* In this specific case, we define a textual description for
+ * the test case, which is later exported to the reports for
+ * documentation purposes.
+ *
+ * However, note again that you should favor highly descriptive
+ * test case names to textual descriptions. */
+ atf_tc_set_md_var(tc, "descr", "This test case validates the proper "
+ "truncation of the output string from snprintf when it does not "
+ "fit the provided buffer.");
+}
+ATF_TC_BODY(snprintf__overflow, tc)
+{
+ char buffer[10];
+
+ /* This is a similar test to the above, but in this case we do the
+ * test ourselves and forego the ATF_* macros. Note that we use the
+ * atf_tc_fail() function instead of exit(2) or similar because we
+ * want Kyua to have access to the failure message.
+ *
+ * In general, prefer using the ATF_* macros wherever possible. Only
+ * resort to manual tests when the macros are unsuitable (and consider
+ * filing a feature request to get a new macro if you think your case
+ * is generic enough). */
+ if (snprintf(buffer, sizeof(buffer), "0123456789abcdef") != 16)
+ atf_tc_fail("snprintf did not return the expected number "
+ "of characters");
+
+ ATF_CHECK(strcmp(buffer, "012345678") == 0);
+}
+
+/*
+ * Another simple test case, but this time with side-effects. This
+ * particular test case modifies the contents of the current directory
+ * and does not clean up after itself, which is perfectly fine.
+ */
+ATF_TC_WITHOUT_HEAD(fprintf__simple_string);
+ATF_TC_BODY(fprintf__simple_string, tc)
+{
+ const char *contents = "This is a message\n";
+
+ FILE *output = fopen("test.txt", "w");
+ ATF_REQUIRE(fprintf(output, "%s", contents) > 0);
+ fclose(output);
+
+ /* The ATF C library provides more than just macros to verify the
+ * outcome of expressions. It also includes various helper functions
+ * to work with files and processes. Here is just a simple
+ * example. */
+ ATF_REQUIRE(atf_utils_compare_file("test.txt", contents));
+
+ /* Of special note here is that we are NOT deleting the
+ * temporary files we created in this test. Kyua takes care of
+ * this cleanup automatically and tests can (and should) rely on
+ * this behavior. */
+}
+
+/*
+ * Lastly, we tell ATF which test cases exist in this program. This
+ * function should not do anything other than this registration.
+ */
+ATF_TP_ADD_TCS(tp)
+{
+ ATF_TP_ADD_TC(tp, snprintf__two_formatters);
+ ATF_TP_ADD_TC(tp, snprintf__overflow);
+ ATF_TP_ADD_TC(tp, fprintf__simple_string);
+}
diff --git a/share/examples/tests/tests/plain/Kyuafile b/share/examples/tests/tests/plain/Kyuafile
new file mode 100644
index 000000000000..c9301b0ef97e
--- /dev/null
+++ b/share/examples/tests/tests/plain/Kyuafile
@@ -0,0 +1,47 @@
+-- $FreeBSD$
+--
+-- Copyright 2013 Google 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:
+--
+-- * Redistributions of source code must retain the above copyright
+-- notice, this list of conditions and the following disclaimer.
+-- * 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.
+-- * Neither the name of Google Inc. 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 COPYRIGHT HOLDERS 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
+-- OWNER 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.
+
+syntax(2)
+
+-- All tests provided by the FreeBSD base system should set the test_suite
+-- property to FreeBSD. This creates a namespace in the configuration file
+-- in which specific run-time properties can be passed to the tests below.
+test_suite('FreeBSD')
+
+-- Register the various test programs into the test suite defined in this
+-- directory.
+--
+-- Because plain test programs cannot define metadata in their code (they
+-- have no mechanism to communicate that to Kyua), we can instead define
+-- any metadata properties in here. These have the exact same meaning as
+-- their ATF counterparts. These properties are often useful to define
+-- prerequisites for the execution of the tests.
+plain_test_program{name='cp_test', required_programs='/bin/cp'}
+plain_test_program{name='printf_test'}
diff --git a/share/examples/tests/tests/plain/Makefile b/share/examples/tests/tests/plain/Makefile
new file mode 100644
index 000000000000..7348c5a970e5
--- /dev/null
+++ b/share/examples/tests/tests/plain/Makefile
@@ -0,0 +1,30 @@
+# $FreeBSD$
+
+.include <bsd.own.mk>
+
+# Directory into which the Kyuafile provided by this directory will be
+# installed.
+#
+# This is always a subdirectory of ${TESTSBASE}/. The remainder of the
+# path has to match the relative path within the source tree in which
+# these files are found modulo the tests/ component at the end.
+#
+# For example: if this Makefile were in src/bin/cp/tests/, its TESTSDIR
+# would point at ${TESTSBASE}/bin/cp/.
+TESTSDIR= ${TESTSBASE}/share/examples/tests/plain
+
+# List of test programs to build. Note that we can build more than one
+# test from a single directory, and this is expected.
+PLAIN_TESTS_C= printf_test
+PLAIN_TESTS_SH= cp_test
+
+# Tell bsd.test.mk that we are providing a hand-crafted Kyuafile in this
+# directory. We do so because the file in this directory exists for
+# documentation purposes.
+#
+# In general, however, you should NOT define KYUAFILE at all to allow
+# bsd.test.mk auto-generate one for you based on the PLAIN_TESTS_*
+# definitions from above.
+KYUAFILE= yes
+
+.include <bsd.test.mk>
diff --git a/share/examples/tests/tests/plain/cp_test.sh b/share/examples/tests/tests/plain/cp_test.sh
new file mode 100644
index 000000000000..ea6470518cda
--- /dev/null
+++ b/share/examples/tests/tests/plain/cp_test.sh
@@ -0,0 +1,84 @@
+# $FreeBSD$
+#
+# Copyright 2013 Google 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:
+#
+# * Redistributions of source code must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+# * 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.
+# * Neither the name of Google Inc. 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 COPYRIGHT HOLDERS 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
+# OWNER 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.
+
+#
+# INTRODUCTION
+#
+# This plain test program mimics the structure and contents of its
+# ATF-based counterpart. It attempts to represent various test cases
+# in different separate functions and just calls them all from main.
+#
+# In reality, plain test programs can be much simpler. All they have
+# to do is return 0 on success and non-0 otherwise.
+#
+
+set -e
+
+# Prints an error message and exits.
+err() {
+ echo "${@}" 1>&2
+ exit 1
+}
+
+# Auxiliary function to compare two files for equality.
+verify_copy() {
+ if ! cmp -s "${1}" "${2}"; then
+ diff -u "${1}" "${2}"
+ err "${1} and ${2} differ, but they should be equal"
+ fi
+}
+
+simple_test() {
+ echo 'File 1' >file1
+ cp file1 file2 || err "cp failed"
+ verify_copy file1 file2
+}
+
+force_test() {
+ echo 'File 1' >file1
+ echo 'File 2' >file2
+ chmod 400 file2
+ cp -f file1 file2 || err "cp failed"
+ verify_copy file1 file2
+}
+
+# If you have read the cp_test.sh counterpart in the atf/ directory, you
+# may think that the sequencing of tests below and the exposed behavior
+# to the user is very similar. But you'd be wrong.
+#
+# There are two major differences with this and the ATF version. The
+# first is that the code below has no provisions to detect failures in
+# one test and continue running the other tests: the first failure
+# causes the whole test program to exit. The second is that this
+# particular "main" has no arguments: without ATF, all test programs may
+# expose a different command-line interface, and this is an issue for
+# consistency purposes.
+simple_test
+force_test
diff --git a/share/examples/tests/tests/plain/printf_test.c b/share/examples/tests/tests/plain/printf_test.c
new file mode 100644
index 000000000000..c43269b2a73c
--- /dev/null
+++ b/share/examples/tests/tests/plain/printf_test.c
@@ -0,0 +1,119 @@
+/* $FreeBSD$
+ *
+ * Copyright 2013 Google 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:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ * * 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.
+ * * Neither the name of Google Inc. 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 COPYRIGHT HOLDERS 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
+ * OWNER 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. */
+
+/*
+ * INTRODUCTION
+ *
+ * This plain test program mimics the structure and contents of its
+ * ATF-based counterpart. It attempts to represent various test cases
+ * in different separate functions and just calls them all from main().
+ *
+ * In reality, plain test programs can be much simpler. All they have
+ * to do is return 0 on success and non-0 otherwise.
+ */
+
+#include <err.h>
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+
+static void
+snprintf__two_formatters(void)
+{
+ char buffer[128];
+
+ if (snprintf(buffer, sizeof(buffer), "%s, %s!", "Hello",
+ "tests") <= 0)
+ errx(EXIT_FAILURE, "snprintf with two formatters failed");
+
+ if (strcmp(buffer, "Hello, tests!") != 0)
+ errx(EXIT_FAILURE, "Bad formatting: got %s", buffer);
+}
+
+static void
+snprintf__overflow(void)
+{
+ char buffer[10];
+
+ if (snprintf(buffer, sizeof(buffer), "0123456789abcdef") != 16)
+ errx(EXIT_FAILURE, "snprintf did not return the expected "
+ "number of characters");
+
+ if (strcmp(buffer, "012345678") != 0)
+ errx(EXIT_FAILURE, "Bad formatting: got %s", buffer);
+}
+
+static void
+fprintf__simple_string(void)
+{
+ FILE *file;
+ char buffer[128];
+ size_t length;
+ const char *contents = "This is a message\n";
+
+ file = fopen("test.txt", "w+");
+ if (fprintf(file, "%s", contents) <= 0)
+ err(EXIT_FAILURE, "fprintf failed to write to file");
+ rewind(file);
+ length = fread(buffer, 1, sizeof(buffer) - 1, file);
+ if (length != strlen(contents))
+ err(EXIT_FAILURE, "fread failed");
+ buffer[length] = '\0';
+ fclose(file);
+
+ if (strcmp(buffer, contents) != 0)
+ errx(EXIT_FAILURE, "Written and read data differ");
+
+ /* Of special note here is that we are NOT deleting the temporary
+ * files we created in this test. Kyua takes care of this cleanup
+ * automatically and tests can (and should) rely on this behavior. */
+}
+
+int
+main(void)
+{
+ /* If you have read the printf_test.c counterpart in the atf/
+ * directory, you may think that the sequencing of tests below and
+ * the exposed behavior to the user is very similar. But you'd be
+ * wrong.
+ *
+ * There are two major differences with this and the ATF version.
+ * The first is that the code below has no provisions to detect
+ * failures in one test and continue running the other tests: the
+ * first failure causes the whole test program to exit. The second
+ * is that this particular main() has no arguments: without ATF,
+ * all test programs may expose a different command-line interface,
+ * and this is an issue for consistency purposes. */
+ snprintf__two_formatters();
+ snprintf__overflow();
+ fprintf__simple_string();
+
+ return EXIT_SUCCESS;
+}
diff --git a/share/i18n/csmapper/JIS/JISX0201-KANA%UCS.src b/share/i18n/csmapper/JIS/JISX0201-KANA%UCS.src
index 535116011ade..c55ee8225481 100644
--- a/share/i18n/csmapper/JIS/JISX0201-KANA%UCS.src
+++ b/share/i18n/csmapper/JIS/JISX0201-KANA%UCS.src
@@ -3,7 +3,7 @@
TYPE ROWCOL
NAME JISX0201-KANA/UCS
-SRC_ZONE 0x00-0xDF
+SRC_ZONE 0x21-0x5F
OOB_MODE ILSEQ
DST_ILSEQ 0xFFFE
DST_UNIT_BITS 16
@@ -62,10 +62,67 @@ BEGIN_MAP
# The entries are in JIS order
#
#
-0x00 - 0x5B = 0x0000 -
-0x5C = 0x00A5
-0x5D - 0x7D = 0x005D -
-0x7E = 0x203E
-0x7F = 0x007F
-0xA1 - 0xDF = 0xFF61 -
+0x21 = 0xFF61
+0x22 = 0xFF62
+0x23 = 0xFF63
+0x24 = 0xFF64
+0x25 = 0xFF65
+0x26 = 0xFF66
+0x27 = 0xFF67
+0x28 = 0xFF68
+0x29 = 0xFF69
+0x2A = 0xFF6A
+0x2B = 0xFF6B
+0x2C = 0xFF6C
+0x2D = 0xFF6D
+0x2E = 0xFF6E
+0x2F = 0xFF6F
+0x30 = 0xFF70
+0x31 = 0xFF71
+0x32 = 0xFF72
+0x33 = 0xFF73
+0x34 = 0xFF74
+0x35 = 0xFF75
+0x36 = 0xFF76
+0x37 = 0xFF77
+0x38 = 0xFF78
+0x39 = 0xFF79
+0x3A = 0xFF7A
+0x3B = 0xFF7B
+0x3C = 0xFF7C
+0x3D = 0xFF7D
+0x3E = 0xFF7E
+0x3F = 0xFF7F
+0x40 = 0xFF80
+0x41 = 0xFF81
+0x42 = 0xFF82
+0x43 = 0xFF83
+0x44 = 0xFF84
+0x45 = 0xFF85
+0x46 = 0xFF86
+0x47 = 0xFF87
+0x48 = 0xFF88
+0x49 = 0xFF89
+0x4A = 0xFF8A
+0x4B = 0xFF8B
+0x4C = 0xFF8C
+0x4D = 0xFF8D
+0x4E = 0xFF8E
+0x4F = 0xFF8F
+0x50 = 0xFF90
+0x51 = 0xFF91
+0x52 = 0xFF92
+0x53 = 0xFF93
+0x54 = 0xFF94
+0x55 = 0xFF95
+0x56 = 0xFF96
+0x57 = 0xFF97
+0x58 = 0xFF98
+0x59 = 0xFF99
+0x5A = 0xFF9A
+0x5B = 0xFF9B
+0x5C = 0xFF9C
+0x5D = 0xFF9D
+0x5E = 0xFF9E
+0x5F = 0xFF9F
END_MAP
diff --git a/share/i18n/csmapper/JIS/JISX0208@1990%UCS.src b/share/i18n/csmapper/JIS/JISX0208@1990%UCS.src
index 7cb608b94788..880b49328499 100644
--- a/share/i18n/csmapper/JIS/JISX0208@1990%UCS.src
+++ b/share/i18n/csmapper/JIS/JISX0208@1990%UCS.src
@@ -119,7 +119,7 @@ BEGIN_MAP
0x213A = 0x3006
0x213B = 0x3007
0x213C = 0x30FC
-0x213D = 0x2015
+0x213D = 0x2014
0x213E = 0x2010
0x213F = 0xFF0F
0x2140 = 0xFF3C
diff --git a/share/i18n/csmapper/JIS/UCS%JISX0201-KANA.src b/share/i18n/csmapper/JIS/UCS%JISX0201-KANA.src
index 5f47995e1824..e70750917813 100644
--- a/share/i18n/csmapper/JIS/UCS%JISX0201-KANA.src
+++ b/share/i18n/csmapper/JIS/UCS%JISX0201-KANA.src
@@ -3,10 +3,10 @@
TYPE ROWCOL
NAME "UCS/JISX0201-KANA"
-SRC_ZONE 0x0000 - 0xFFEC
+SRC_ZONE 0xFF60 - 0xFF9F
OOB_MODE INVALID
DST_INVALID 0xFF
-DST_UNIT_BITS 32
+DST_UNIT_BITS 8
BEGIN_MAP
#
@@ -62,1094 +62,67 @@ BEGIN_MAP
# The entries are in JIS order
#
#
-
-0x0000 = 0x00
-0x0001 = 0x01
-0x0002 = 0x02
-0x0003 = 0x03
-0x0004 = 0x04
-0x0005 = 0x05
-0x0006 = 0x06
-0x0007 = 0x07
-0x0008 = 0x08
-0x0009 = 0x09
-0x000A = 0x0A
-0x000B = 0x0B
-0x000C = 0x0C
-0x000D = 0x0D
-0x000E = 0x0E
-0x000F = 0x0F
-0x0010 = 0x10
-0x0011 = 0x11
-0x0012 = 0x12
-0x0013 = 0x13
-0x0014 = 0x14
-0x0015 = 0x15
-0x0016 = 0x16
-0x0017 = 0x17
-0x0018 = 0x18
-0x0019 = 0x19
-0x001A = 0x1A
-0x001B = 0x1B
-0x001C = 0x1C
-0x001D = 0x1D
-0x001E = 0x1E
-0x001F = 0x1F
-0x0020 = 0x20
-0x0021 = 0x21
-0x0022 = 0x22
-0x0023 = 0x23
-0x0024 = 0x24
-0x0025 = 0x25
-0x0026 = 0x26
-0x0027 = 0x27
-0x0028 = 0x28
-0x0029 = 0x29
-0x002A = 0x2A
-0x002B = 0x2B
-0x002C = 0x2C
-0x002D = 0x2D
-0x002E = 0x2E
-0x002F = 0x2F
-0x0030 = 0x30
-0x0031 = 0x31
-0x0032 = 0x32
-0x0033 = 0x33
-0x0034 = 0x34
-0x0035 = 0x35
-0x0036 = 0x36
-0x0037 = 0x37
-0x0038 = 0x38
-0x0039 = 0x39
-0x003A = 0x3A
-0x003B = 0x3B
-0x003C = 0x3C
-0x003D = 0x3D
-0x003E = 0x3E
-0x003F = 0x3F
-0x0040 = 0x40
-0x0041 = 0x41
-0x0042 = 0x42
-0x0043 = 0x43
-0x0044 = 0x44
-0x0045 = 0x45
-0x0046 = 0x46
-0x0047 = 0x47
-0x0048 = 0x48
-0x0049 = 0x49
-0x004A = 0x4A
-0x004B = 0x4B
-0x004C = 0x4C
-0x004D = 0x4D
-0x004E = 0x4E
-0x004F = 0x4F
-0x0050 = 0x50
-0x0051 = 0x51
-0x0052 = 0x52
-0x0053 = 0x53
-0x0054 = 0x54
-0x0055 = 0x55
-0x0056 = 0x56
-0x0057 = 0x57
-0x0058 = 0x58
-0x0059 = 0x59
-0x005A = 0x5A
-0x005B = 0x5B
-0x005D = 0x5D
-0x005E = 0x5E
-0x005F = 0x5F
-0x0060 = 0x60
-0x0061 = 0x61
-0x0062 = 0x62
-0x0063 = 0x63
-0x0064 = 0x64
-0x0065 = 0x65
-0x0066 = 0x66
-0x0067 = 0x67
-0x0068 = 0x68
-0x0069 = 0x69
-0x006A = 0x6A
-0x006B = 0x6B
-0x006C = 0x6C
-0x006D = 0x6D
-0x006E = 0x6E
-0x006F = 0x6F
-0x0070 = 0x70
-0x0071 = 0x71
-0x0072 = 0x72
-0x0073 = 0x73
-0x0074 = 0x74
-0x0075 = 0x75
-0x0076 = 0x76
-0x0077 = 0x77
-0x0078 = 0x78
-0x0079 = 0x79
-0x007A = 0x7A
-0x007B = 0x7B
-0x007C = 0x7C
-0x007D = 0x7D
-0x007F = 0x7F
-0x00A0 = 0x20
-0x00A1 = 0x21
-0x00A2 = 0x63
-0x00A3 = 0x626C
-0x00A5 = 0x5C
-0x00A6 = 0x7C
-0x00A7 = 0x5353
-0x00A8 = 0x22
-0x00A9 = 0x296328
-0x00AA = 0x61
-0x00AB = 0x3C3C
-0x00AC = 0x746F6E
-0x00AD = 0x2D
-0x00AE = 0x295228
-0x00B0 = 0x305E
-0x00B1 = 0x2D2F2B
-0x00B2 = 0x325E
-0x00B3 = 0x335E
-0x00B4 = 0x27
-0x00B5 = 0x75
-0x00B6 = 0x50
-0x00B7 = 0x2E
-0x00B8 = 0x2C
-0x00B9 = 0x315E
-0x00BA = 0x6F
-0x00BB = 0x3E3E
-0x00BF = 0x3F
-0x00C0 = 0x4160
-0x00C1 = 0x4127
-0x00C2 = 0x415E
-0x00C4 = 0x4122
-0x00C5 = 0x41
-0x00C6 = 0x4541
-0x00C7 = 0x43
-0x00C8 = 0x4560
-0x00C9 = 0x4527
-0x00CA = 0x455E
-0x00CB = 0x4522
-0x00CC = 0x4960
-0x00CD = 0x4927
-0x00CE = 0x495E
-0x00CF = 0x4922
-0x00D0 = 0x44
-0x00D2 = 0x4F60
-0x00D3 = 0x4F27
-0x00D4 = 0x4F5E
-0x00D6 = 0x4F22
-0x00D7 = 0x78
-0x00D8 = 0x4F
-0x00D9 = 0x5560
-0x00DA = 0x5527
-0x00DB = 0x555E
-0x00DC = 0x5522
-0x00DD = 0x5927
-0x00DE = 0x6854
-0x00DF = 0x7373
-0x00E0 = 0x6160
-0x00E1 = 0x6127
-0x00E2 = 0x615E
-0x00E4 = 0x6122
-0x00E5 = 0x61
-0x00E6 = 0x6561
-0x00E7 = 0x63
-0x00E8 = 0x6560
-0x00E9 = 0x6527
-0x00EA = 0x655E
-0x00EB = 0x6522
-0x00EC = 0x6960
-0x00ED = 0x6927
-0x00EE = 0x695E
-0x00EF = 0x6922
-0x00F0 = 0x64
-0x00F2 = 0x6F60
-0x00F3 = 0x6F27
-0x00F4 = 0x6F5E
-0x00F6 = 0x6F22
-0x00F7 = 0x3A
-0x00F8 = 0x6F
-0x00F9 = 0x7560
-0x00FA = 0x7527
-0x00FB = 0x755E
-0x00FC = 0x7522
-0x00FD = 0x7927
-0x00FE = 0x6874
-0x00FF = 0x7922
-0x0100 = 0x41
-0x0101 = 0x61
-0x0102 = 0x41
-0x0103 = 0x61
-0x0104 = 0x41
-0x0105 = 0x61
-0x0106 = 0x4327
-0x0107 = 0x6327
-0x0108 = 0x435E
-0x0109 = 0x635E
-0x010A = 0x43
-0x010B = 0x63
-0x010C = 0x43
-0x010D = 0x63
-0x010E = 0x44
-0x010F = 0x64
-0x0110 = 0x44
-0x0111 = 0x64
-0x0112 = 0x45
-0x0113 = 0x65
-0x0114 = 0x45
-0x0115 = 0x65
-0x0116 = 0x45
-0x0117 = 0x65
-0x0118 = 0x45
-0x0119 = 0x65
-0x011A = 0x45
-0x011B = 0x65
-0x011C = 0x475E
-0x011D = 0x675E
-0x011E = 0x47
-0x011F = 0x67
-0x0120 = 0x47
-0x0121 = 0x67
-0x0122 = 0x47
-0x0123 = 0x67
-0x0124 = 0x485E
-0x0125 = 0x685E
-0x0126 = 0x48
-0x0127 = 0x68
-0x012A = 0x49
-0x012B = 0x69
-0x012C = 0x49
-0x012D = 0x69
-0x012E = 0x49
-0x012F = 0x69
-0x0130 = 0x49
-0x0131 = 0x69
-0x0132 = 0x4A49
-0x0133 = 0x6A69
-0x0134 = 0x4A5E
-0x0135 = 0x6A5E
-0x0136 = 0x4B
-0x0137 = 0x6B
-0x0139 = 0x4C
-0x013A = 0x6C
-0x013B = 0x4C
-0x013C = 0x6C
-0x013D = 0x4C
-0x013E = 0x6C
-0x013F = 0x4C
-0x0140 = 0x6C
-0x0141 = 0x4C
-0x0142 = 0x6C
-0x0143 = 0x4E27
-0x0144 = 0x6E27
-0x0145 = 0x4E
-0x0146 = 0x6E
-0x0147 = 0x4E
-0x0148 = 0x6E
-0x0149 = 0x6E27
-0x014C = 0x4F
-0x014D = 0x6F
-0x014E = 0x4F
-0x014F = 0x6F
-0x0150 = 0x4F22
-0x0151 = 0x6F22
-0x0152 = 0x454F
-0x0153 = 0x656F
-0x0154 = 0x5227
-0x0155 = 0x7227
-0x0156 = 0x52
-0x0157 = 0x72
-0x0158 = 0x52
-0x0159 = 0x72
-0x015A = 0x5327
-0x015B = 0x7327
-0x015C = 0x535E
-0x015D = 0x735E
-0x015E = 0x53
-0x015F = 0x73
-0x0160 = 0x53
-0x0161 = 0x73
-0x0162 = 0x54
-0x0163 = 0x74
-0x0164 = 0x54
-0x0165 = 0x74
-0x0166 = 0x54
-0x0167 = 0x74
-0x016A = 0x55
-0x016B = 0x75
-0x016C = 0x55
-0x016D = 0x75
-0x016E = 0x55
-0x016F = 0x75
-0x0170 = 0x5522
-0x0171 = 0x7522
-0x0172 = 0x55
-0x0173 = 0x75
-0x0174 = 0x575E
-0x0175 = 0x775E
-0x0176 = 0x595E
-0x0177 = 0x795E
-0x0178 = 0x5922
-0x0179 = 0x5A27
-0x017A = 0x7A27
-0x017B = 0x5A
-0x017C = 0x7A
-0x017D = 0x5A
-0x017E = 0x7A
-0x017F = 0x73
-0x0192 = 0x66
-0x01C4 = 0x5A44
-0x01C5 = 0x7A44
-0x01C6 = 0x7A64
-0x01C7 = 0x4A4C
-0x01C8 = 0x6A4C
-0x01C9 = 0x6A6C
-0x01CA = 0x4A4E
-0x01CB = 0x6A4E
-0x01CC = 0x6A6E
-0x01F1 = 0x5A44
-0x01F2 = 0x7A44
-0x01F3 = 0x7A64
-0x0218 = 0x53
-0x0219 = 0x73
-0x021A = 0x54
-0x021B = 0x74
-0x02B9 = 0x27
-0x02BA = 0x2727
-0x02BB = 0x27
-0x02BC = 0x27
-0x02BD = 0x27
-0x02C6 = 0x5E
-0x02C8 = 0x27
-0x02CA = 0x27
-0x02CB = 0x60
-0x02CD = 0x5F
-0x02DD = 0x22
-0x1E02 = 0x42
-0x1E03 = 0x62
-0x1E0A = 0x44
-0x1E0B = 0x64
-0x1E1E = 0x46
-0x1E1F = 0x66
-0x1E40 = 0x4D
-0x1E41 = 0x6D
-0x1E56 = 0x50
-0x1E57 = 0x70
-0x1E60 = 0x53
-0x1E61 = 0x73
-0x1E6A = 0x54
-0x1E6B = 0x74
-0x1E80 = 0x5760
-0x1E81 = 0x7760
-0x1E82 = 0x5727
-0x1E83 = 0x7727
-0x1E84 = 0x5722
-0x1E85 = 0x7722
-0x1EF2 = 0x5960
-0x1EF3 = 0x7960
-0x2002 = 0x20
-0x2003 = 0x20
-0x2004 = 0x20
-0x2005 = 0x20
-0x2006 = 0x20
-0x2008 = 0x20
-0x2009 = 0x20
-0x200A = 0x20
-0x2010 = 0x2D
-0x2011 = 0x2D
-0x2012 = 0x2D
-0x2013 = 0x2D
-0x2014 = 0x2D
-0x2015 = 0x2D
-0x2018 = 0x27
-0x2019 = 0x27
-0x201A = 0x27
-0x201B = 0x27
-0x201C = 0x22
-0x201D = 0x22
-0x201E = 0x22
-0x201F = 0x22
-0x2020 = 0x2B
-0x2022 = 0x6F
-0x2024 = 0x2E
-0x2025 = 0x2E2E
-0x2026 = 0x2E2E2E
-0x2030 = 0x6F6F2F6F
-0x2032 = 0x27
-0x2033 = 0x2727
-0x2034 = 0x272727
-0x2039 = 0x3C
-0x203A = 0x3E
-0x203C = 0x2121
-0x203E = 0x7E
-0x2044 = 0x2F
-0x2047 = 0x3F3F
-0x2048 = 0x213F
-0x2049 = 0x3F21
-0x2057 = 0x27272727
-0x20A8 = 0x7352
-0x20AC = 0x525545
-0x2100 = 0x632F61
-0x2101 = 0x732F61
-0x2102 = 0x43
-0x2103 = 0x43305E
-0x2105 = 0x6F2F63
-0x2106 = 0x752F63
-0x2109 = 0x46305E
-0x210A = 0x67
-0x210B = 0x48
-0x210C = 0x48
-0x210D = 0x48
-0x210E = 0x68
-0x210F = 0x68
-0x2110 = 0x49
-0x2111 = 0x49
-0x2112 = 0x4C
-0x2113 = 0x6C
-0x2115 = 0x4E
-0x2116 = 0x6F4E
-0x2119 = 0x50
-0x211A = 0x51
-0x211B = 0x52
-0x211C = 0x52
-0x211D = 0x52
-0x2121 = 0x4C4554
-0x2122 = 0x4D54
-0x2124 = 0x5A
-0x2126 = 0x6D684F
-0x2128 = 0x5A
-0x212C = 0x42
-0x212D = 0x43
-0x212E = 0x65
-0x212F = 0x65
-0x2130 = 0x45
-0x2131 = 0x46
-0x2133 = 0x4D
-0x2134 = 0x6F
-0x2139 = 0x69
-0x213B = 0x584146
-0x2145 = 0x44
-0x2146 = 0x64
-0x2147 = 0x65
-0x2148 = 0x69
-0x2149 = 0x6A
-0x215F = 0x2F3120
-0x2160 = 0x49
-0x2161 = 0x4949
-0x2162 = 0x494949
-0x2163 = 0x5649
-0x2164 = 0x56
-0x2165 = 0x4956
-0x2166 = 0x494956
-0x2167 = 0x49494956
-0x2168 = 0x5849
-0x2169 = 0x58
-0x216A = 0x4958
-0x216B = 0x494958
-0x216C = 0x4C
-0x216D = 0x43
-0x216E = 0x44
-0x216F = 0x4D
-0x2170 = 0x69
-0x2171 = 0x6969
-0x2172 = 0x696969
-0x2173 = 0x7669
-0x2174 = 0x76
-0x2175 = 0x6976
-0x2176 = 0x696976
-0x2177 = 0x69696976
-0x2178 = 0x7869
-0x2179 = 0x78
-0x217A = 0x6978
-0x217B = 0x696978
-0x217C = 0x6C
-0x217D = 0x63
-0x217E = 0x64
-0x217F = 0x6D
-0x2190 = 0x2D3C
-0x2191 = 0x5E
-0x2192 = 0x3E2D
-0x2193 = 0x56
-0x2194 = 0x3E2D3C
-0x21D0 = 0x3D3C
-0x21D2 = 0x3E3D
-0x21D4 = 0x3E3D3C
-0x2212 = 0x2D
-0x2215 = 0x2F
-0x2217 = 0x2A
-0x2219 = 0x6F
-0x2223 = 0x7C
-0x2236 = 0x3A
-0x2260 = 0x3D2F
-0x2264 = 0x3D3C
-0x2265 = 0x3D3E
-0x226A = 0x3C3C
-0x226B = 0x3E3E
-0x22C5 = 0x2E
-0x22D8 = 0x3C3C3C
-0x22D9 = 0x3E3E3E
-0x22EF = 0x2E2E2E
-0x2408 = 0x5D53425B
-0x2409 = 0x5D54485B
-0x240A = 0x5D464C5B
-0x240B = 0x5D54565B
-0x240C = 0x5D46465B
-0x240D = 0x5D52435B
-0x240E = 0x5D4F535B
-0x240F = 0x5D49535B
-0x2419 = 0x5D4D455B
-0x241C = 0x5D53465B
-0x241D = 0x5D53475B
-0x241E = 0x5D53525B
-0x241F = 0x5D53555B
-0x2420 = 0x5D50535B
-0x2424 = 0x5D4C4E5B
-0x2460 = 0x293128
-0x2461 = 0x293228
-0x2462 = 0x293328
-0x2463 = 0x293428
-0x2464 = 0x293528
-0x2465 = 0x293628
-0x2466 = 0x293728
-0x2467 = 0x293828
-0x2468 = 0x293928
-0x2469 = 0x29303128
-0x246A = 0x29313128
-0x246B = 0x29323128
-0x246C = 0x29333128
-0x246D = 0x29343128
-0x246E = 0x29353128
-0x246F = 0x29363128
-0x2470 = 0x29373128
-0x2471 = 0x29383128
-0x2472 = 0x29393128
-0x2473 = 0x29303228
-0x2474 = 0x293128
-0x2475 = 0x293228
-0x2476 = 0x293328
-0x2477 = 0x293428
-0x2478 = 0x293528
-0x2479 = 0x293628
-0x247A = 0x293728
-0x247B = 0x293828
-0x247C = 0x293928
-0x247D = 0x29303128
-0x247E = 0x29313128
-0x247F = 0x29323128
-0x2480 = 0x29333128
-0x2481 = 0x29343128
-0x2482 = 0x29353128
-0x2483 = 0x29363128
-0x2484 = 0x29373128
-0x2485 = 0x29383128
-0x2486 = 0x29393128
-0x2487 = 0x29303228
-0x2488 = 0x2E31
-0x2489 = 0x2E32
-0x248A = 0x2E33
-0x248B = 0x2E34
-0x248C = 0x2E35
-0x248D = 0x2E36
-0x248E = 0x2E37
-0x248F = 0x2E38
-0x2490 = 0x2E39
-0x2491 = 0x2E3031
-0x2492 = 0x2E3131
-0x2493 = 0x2E3231
-0x2494 = 0x2E3331
-0x2495 = 0x2E3431
-0x2496 = 0x2E3531
-0x2497 = 0x2E3631
-0x2498 = 0x2E3731
-0x2499 = 0x2E3831
-0x249A = 0x2E3931
-0x249B = 0x2E3032
-0x249C = 0x296128
-0x249D = 0x296228
-0x249E = 0x296328
-0x249F = 0x296428
-0x24A0 = 0x296528
-0x24A1 = 0x296628
-0x24A2 = 0x296728
-0x24A3 = 0x296828
-0x24A4 = 0x296928
-0x24A5 = 0x296A28
-0x24A6 = 0x296B28
-0x24A7 = 0x296C28
-0x24A8 = 0x296D28
-0x24A9 = 0x296E28
-0x24AA = 0x296F28
-0x24AB = 0x297028
-0x24AC = 0x297128
-0x24AD = 0x297228
-0x24AE = 0x297328
-0x24AF = 0x297428
-0x24B0 = 0x297528
-0x24B1 = 0x297628
-0x24B2 = 0x297728
-0x24B3 = 0x297828
-0x24B4 = 0x297928
-0x24B5 = 0x297A28
-0x24B6 = 0x294128
-0x24B7 = 0x294228
-0x24B8 = 0x294328
-0x24B9 = 0x294428
-0x24BA = 0x294528
-0x24BB = 0x294628
-0x24BC = 0x294728
-0x24BD = 0x294828
-0x24BE = 0x294928
-0x24BF = 0x294A28
-0x24C0 = 0x294B28
-0x24C1 = 0x294C28
-0x24C2 = 0x294D28
-0x24C3 = 0x294E28
-0x24C4 = 0x294F28
-0x24C5 = 0x295028
-0x24C6 = 0x295128
-0x24C7 = 0x295228
-0x24C8 = 0x295328
-0x24C9 = 0x295428
-0x24CA = 0x295528
-0x24CB = 0x295628
-0x24CC = 0x295728
-0x24CD = 0x295828
-0x24CE = 0x295928
-0x24CF = 0x295A28
-0x24D0 = 0x296128
-0x24D1 = 0x296228
-0x24D2 = 0x296328
-0x24D3 = 0x296428
-0x24D4 = 0x296528
-0x24D5 = 0x296628
-0x24D6 = 0x296728
-0x24D7 = 0x296828
-0x24D8 = 0x296928
-0x24D9 = 0x296A28
-0x24DA = 0x296B28
-0x24DB = 0x296C28
-0x24DC = 0x296D28
-0x24DD = 0x296E28
-0x24DE = 0x296F28
-0x24DF = 0x297028
-0x24E0 = 0x297128
-0x24E1 = 0x297228
-0x24E2 = 0x297328
-0x24E3 = 0x297428
-0x24E4 = 0x297528
-0x24E5 = 0x297628
-0x24E6 = 0x297728
-0x24E7 = 0x297828
-0x24E8 = 0x297928
-0x24E9 = 0x297A28
-0x24EA = 0x293028
-0x2500 = 0x2D
-0x2502 = 0x7C
-0x250C = 0x2B
-0x2510 = 0x2B
-0x2514 = 0x2B
-0x2518 = 0x2B
-0x251C = 0x2B
-0x2524 = 0x2B
-0x252C = 0x2B
-0x2534 = 0x2B
-0x253C = 0x2B
-0x25E6 = 0x6F
-0x2A74 = 0x3D3A3A
-0x2A75 = 0x3D3D
-0x2A76 = 0x3D3D3D
-0x3000 = 0x20
-0x30A0 = 0x3D
-0x3250 = 0x455450
-0x3251 = 0x29313228
-0x3252 = 0x29323228
-0x3253 = 0x29333228
-0x3254 = 0x29343228
-0x3255 = 0x29353228
-0x3256 = 0x29363228
-0x3257 = 0x29373228
-0x3258 = 0x29383228
-0x3259 = 0x29393228
-0x325A = 0x29303328
-0x325B = 0x29313328
-0x325C = 0x29323328
-0x325D = 0x29333328
-0x325E = 0x29343328
-0x325F = 0x29353328
-0x32B1 = 0x29363328
-0x32B2 = 0x29373328
-0x32B3 = 0x29383328
-0x32B4 = 0x29393328
-0x32B5 = 0x29303428
-0x32B6 = 0x29313428
-0x32B7 = 0x29323428
-0x32B8 = 0x29333428
-0x32B9 = 0x29343428
-0x32BA = 0x29353428
-0x32BB = 0x29363428
-0x32BC = 0x29373428
-0x32BD = 0x29383428
-0x32BE = 0x29393428
-0x32BF = 0x29303528
-0x32CC = 0x6748
-0x32CD = 0x677265
-0x32CE = 0x5665
-0x32CF = 0x44544C
-0x3371 = 0x615068
-0x3372 = 0x6164
-0x3373 = 0x5541
-0x3374 = 0x726162
-0x3375 = 0x566F
-0x3376 = 0x6370
-0x3377 = 0x6D64
-0x3378 = 0x325E6D64
-0x3379 = 0x335E6D64
-0x337A = 0x5549
-0x3380 = 0x4170
-0x3381 = 0x416E
-0x3383 = 0x416D
-0x3384 = 0x416B
-0x3385 = 0x424B
-0x3386 = 0x424D
-0x3387 = 0x4247
-0x3388 = 0x6C6163
-0x3389 = 0x6C61636B
-0x338A = 0x4670
-0x338B = 0x466E
-0x338E = 0x676D
-0x338F = 0x676B
-0x3390 = 0x7A48
-0x3391 = 0x7A486B
-0x3392 = 0x7A484D
-0x3393 = 0x7A4847
-0x3394 = 0x7A4854
-0x3396 = 0x6C6D
-0x3397 = 0x6C64
-0x3398 = 0x6C6B
-0x3399 = 0x6D66
-0x339A = 0x6D6E
-0x339C = 0x6D6D
-0x339D = 0x6D63
-0x339E = 0x6D6B
-0x339F = 0x325E6D6D
-0x33A0 = 0x325E6D63
-0x33A1 = 0x325E6D
-0x33A2 = 0x325E6D6B
-0x33A3 = 0x335E6D6D
-0x33A4 = 0x335E6D63
-0x33A5 = 0x335E6D
-0x33A6 = 0x335E6D6B
-0x33A7 = 0x732F6D
-0x33A9 = 0x6150
-0x33AA = 0x61506B
-0x33AB = 0x61504D
-0x33AC = 0x615047
-0x33AD = 0x646172
-0x33B0 = 0x7370
-0x33B1 = 0x736E
-0x33B3 = 0x736D
-0x33B4 = 0x5670
-0x33B5 = 0x566E
-0x33B7 = 0x566D
-0x33B8 = 0x566B
-0x33B9 = 0x564D
-0x33BA = 0x5770
-0x33BB = 0x576E
-0x33BD = 0x576D
-0x33BE = 0x576B
-0x33BF = 0x574D
-0x33C2 = 0x2E6D2E61
-0x33C3 = 0x7142
-0x33C4 = 0x6363
-0x33C5 = 0x6463
-0x33C6 = 0x676B2F43
-0x33C7 = 0x2E6F43
-0x33C8 = 0x4264
-0x33C9 = 0x7947
-0x33CA = 0x6168
-0x33CB = 0x5048
-0x33CC = 0x6E69
-0x33CD = 0x4B4B
-0x33CE = 0x4D4B
-0x33CF = 0x746B
-0x33D0 = 0x6D6C
-0x33D1 = 0x6E6C
-0x33D2 = 0x676F6C
-0x33D3 = 0x786C
-0x33D4 = 0x626D
-0x33D5 = 0x6C696D
-0x33D6 = 0x6C6F6D
-0x33D7 = 0x4850
-0x33D8 = 0x2E6D2E70
-0x33D9 = 0x4D5050
-0x33DA = 0x5250
-0x33DB = 0x7273
-0x33DC = 0x7653
-0x33DD = 0x6257
-0x33DE = 0x6D2F56
-0x33DF = 0x6D2F41
-0x33FF = 0x6C6167
-0xFB00 = 0x6666
-0xFB01 = 0x6966
-0xFB02 = 0x6C66
-0xFB03 = 0x696666
-0xFB04 = 0x6C6666
-0xFB05 = 0x7473
-0xFB06 = 0x7473
-0xFB29 = 0x2B
-0xFE49 = 0x7E
-0xFE4A = 0x7E
-0xFE4B = 0x7E
-0xFE4C = 0x7E
-0xFE4D = 0x5F
-0xFE4E = 0x5F
-0xFE4F = 0x5F
-0xFE50 = 0x2C
-0xFE52 = 0x2E
-0xFE54 = 0x3B
-0xFE55 = 0x3A
-0xFE56 = 0x3F
-0xFE57 = 0x21
-0xFE58 = 0x2D
-0xFE59 = 0x28
-0xFE5A = 0x29
-0xFE5B = 0x7B
-0xFE5C = 0x7D
-0xFE5F = 0x23
-0xFE60 = 0x26
-0xFE61 = 0x2A
-0xFE62 = 0x2B
-0xFE63 = 0x2D
-0xFE64 = 0x3C
-0xFE65 = 0x3E
-0xFE66 = 0x3D
-0xFE69 = 0x24
-0xFE6A = 0x25
-0xFE6B = 0x40
-0xFF01 = 0x21
-0xFF02 = 0x22
-0xFF03 = 0x23
-0xFF04 = 0x24
-0xFF05 = 0x25
-0xFF06 = 0x26
-0xFF07 = 0x27
-0xFF08 = 0x28
-0xFF09 = 0x29
-0xFF0A = 0x2A
-0xFF0B = 0x2B
-0xFF0C = 0x2C
-0xFF0D = 0x2D
-0xFF0E = 0x2E
-0xFF0F = 0x2F
-0xFF10 = 0x30
-0xFF11 = 0x31
-0xFF12 = 0x32
-0xFF13 = 0x33
-0xFF14 = 0x34
-0xFF15 = 0x35
-0xFF16 = 0x36
-0xFF17 = 0x37
-0xFF18 = 0x38
-0xFF19 = 0x39
-0xFF1A = 0x3A
-0xFF1B = 0x3B
-0xFF1C = 0x3C
-0xFF1D = 0x3D
-0xFF1E = 0x3E
-0xFF1F = 0x3F
-0xFF20 = 0x40
-0xFF21 = 0x41
-0xFF22 = 0x42
-0xFF23 = 0x43
-0xFF24 = 0x44
-0xFF25 = 0x45
-0xFF26 = 0x46
-0xFF27 = 0x47
-0xFF28 = 0x48
-0xFF29 = 0x49
-0xFF2A = 0x4A
-0xFF2B = 0x4B
-0xFF2C = 0x4C
-0xFF2D = 0x4D
-0xFF2E = 0x4E
-0xFF2F = 0x4F
-0xFF30 = 0x50
-0xFF31 = 0x51
-0xFF32 = 0x52
-0xFF33 = 0x53
-0xFF34 = 0x54
-0xFF35 = 0x55
-0xFF36 = 0x56
-0xFF37 = 0x57
-0xFF38 = 0x58
-0xFF39 = 0x59
-0xFF3A = 0x5A
-0xFF3B = 0x5B
-0xFF3D = 0x5D
-0xFF3E = 0x5E
-0xFF3F = 0x5F
-0xFF40 = 0x60
-0xFF41 = 0x61
-0xFF42 = 0x62
-0xFF43 = 0x63
-0xFF44 = 0x64
-0xFF45 = 0x65
-0xFF46 = 0x66
-0xFF47 = 0x67
-0xFF48 = 0x68
-0xFF49 = 0x69
-0xFF4A = 0x6A
-0xFF4B = 0x6B
-0xFF4C = 0x6C
-0xFF4D = 0x6D
-0xFF4E = 0x6E
-0xFF4F = 0x6F
-0xFF50 = 0x70
-0xFF51 = 0x71
-0xFF52 = 0x72
-0xFF53 = 0x73
-0xFF54 = 0x74
-0xFF55 = 0x75
-0xFF56 = 0x76
-0xFF57 = 0x77
-0xFF58 = 0x78
-0xFF59 = 0x79
-0xFF5A = 0x7A
-0xFF5B = 0x7B
-0xFF5C = 0x7C
-0xFF5D = 0x7D
0xFF61 = 0x21
-0xFF61 = 0xA1
0xFF62 = 0x22
-0xFF62 = 0xA2
0xFF63 = 0x23
-0xFF63 = 0xA3
0xFF64 = 0x24
-0xFF64 = 0xA4
0xFF65 = 0x25
-0xFF65 = 0xA5
0xFF66 = 0x26
-0xFF66 = 0xA6
0xFF67 = 0x27
-0xFF67 = 0xA7
0xFF68 = 0x28
-0xFF68 = 0xA8
0xFF69 = 0x29
-0xFF69 = 0xA9
0xFF6A = 0x2A
-0xFF6A = 0xAA
0xFF6B = 0x2B
-0xFF6B = 0xAB
0xFF6C = 0x2C
-0xFF6C = 0xAC
0xFF6D = 0x2D
-0xFF6D = 0xAD
0xFF6E = 0x2E
-0xFF6E = 0xAE
0xFF6F = 0x2F
-0xFF6F = 0xAF
0xFF70 = 0x30
-0xFF70 = 0xB0
0xFF71 = 0x31
-0xFF71 = 0xB1
0xFF72 = 0x32
-0xFF72 = 0xB2
0xFF73 = 0x33
-0xFF73 = 0xB3
0xFF74 = 0x34
-0xFF74 = 0xB4
0xFF75 = 0x35
-0xFF75 = 0xB5
0xFF76 = 0x36
-0xFF76 = 0xB6
0xFF77 = 0x37
-0xFF77 = 0xB7
0xFF78 = 0x38
-0xFF78 = 0xB8
0xFF79 = 0x39
-0xFF79 = 0xB9
0xFF7A = 0x3A
-0xFF7A = 0xBA
0xFF7B = 0x3B
-0xFF7B = 0xBB
0xFF7C = 0x3C
-0xFF7C = 0xBC
0xFF7D = 0x3D
-0xFF7D = 0xBD
0xFF7E = 0x3E
-0xFF7E = 0xBE
0xFF7F = 0x3F
-0xFF7F = 0xBF
0xFF80 = 0x40
-0xFF80 = 0xC0
0xFF81 = 0x41
-0xFF81 = 0xC1
0xFF82 = 0x42
-0xFF82 = 0xC2
0xFF83 = 0x43
-0xFF83 = 0xC3
0xFF84 = 0x44
-0xFF84 = 0xC4
0xFF85 = 0x45
-0xFF85 = 0xC5
0xFF86 = 0x46
-0xFF86 = 0xC6
0xFF87 = 0x47
-0xFF87 = 0xC7
0xFF88 = 0x48
-0xFF88 = 0xC8
0xFF89 = 0x49
-0xFF89 = 0xC9
0xFF8A = 0x4A
-0xFF8A = 0xCA
0xFF8B = 0x4B
-0xFF8B = 0xCB
0xFF8C = 0x4C
-0xFF8C = 0xCC
0xFF8D = 0x4D
-0xFF8D = 0xCD
0xFF8E = 0x4E
-0xFF8E = 0xCE
0xFF8F = 0x4F
-0xFF8F = 0xCF
0xFF90 = 0x50
-0xFF90 = 0xD0
0xFF91 = 0x51
-0xFF91 = 0xD1
0xFF92 = 0x52
-0xFF92 = 0xD2
0xFF93 = 0x53
-0xFF93 = 0xD3
0xFF94 = 0x54
-0xFF94 = 0xD4
0xFF95 = 0x55
-0xFF95 = 0xD5
0xFF96 = 0x56
-0xFF96 = 0xD6
0xFF97 = 0x57
-0xFF97 = 0xD7
0xFF98 = 0x58
-0xFF98 = 0xD8
0xFF99 = 0x59
-0xFF99 = 0xD9
0xFF9A = 0x5A
-0xFF9A = 0xDA
0xFF9B = 0x5B
-0xFF9B = 0xDB
0xFF9C = 0x5C
-0xFF9C = 0xDC
0xFF9D = 0x5D
-0xFF9D = 0xDD
0xFF9E = 0x5E
-0xFF9E = 0xDE
0xFF9F = 0x5F
-0xFF9F = 0xDF
-0xFFE0 = 0x63
-0xFFE1 = 0x626C
-0xFFE2 = 0x746F6E
-0xFFE4 = 0x7C
-0xFFE5 = 0x5C
-0xFFE8 = 0x7C
-0xFFE9 = 0x2D3C
-0xFFEA = 0x5E
-0xFFEB = 0x3E2D
-0xFFEC = 0x56
END_MAP
diff --git a/share/i18n/csmapper/JIS/UCS%JISX0208@1990.src b/share/i18n/csmapper/JIS/UCS%JISX0208@1990.src
index f30b32977c1a..16cd55a9b82e 100644
--- a/share/i18n/csmapper/JIS/UCS%JISX0208@1990.src
+++ b/share/i18n/csmapper/JIS/UCS%JISX0208@1990.src
@@ -3,10 +3,10 @@
TYPE ROWCOL
NAME "UCS/JISX0208:1990"
-SRC_ZONE 0x005C - 0xFFEE
+SRC_ZONE 0x005C - 0xFFE5
OOB_MODE INVALID
DST_INVALID 0xFFFF
-DST_UNIT_BITS 32
+DST_UNIT_BITS 16
BEGIN_MAP
#
@@ -6970,7469 +6970,4 @@ BEGIN_MAP
0xFF5D = 0x2151
0xFFE3 = 0x2131
0xFFE5 = 0x216F
-0x00A2 = 0x7121
-0x00A3 = 0x7221
-0x00A7 = 0x7821
-0x00A8 = 0x2F21
-0x00AC = 0x4C22
-0x00B0 = 0x6B21
-0x00B1 = 0x5E21
-0x00B4 = 0x2D21
-0x00B6 = 0x7922
-0x00D7 = 0x5F21
-0x00F7 = 0x6021
-0x02B9 = 0x6C21
-0x02BA = 0x6D21
-0x02BB = 0x4621
-0x02BC = 0x4721
-0x02CA = 0x2D21
-0x0391 = 0x2126
-0x0392 = 0x2226
-0x0393 = 0x2326
-0x0394 = 0x2426
-0x0395 = 0x2526
-0x0397 = 0x2726
-0x0398 = 0x2826
-0x0399 = 0x2926
-0x039A = 0x2A26
-0x039B = 0x2B26
-0x039C = 0x2C26
-0x039D = 0x2D26
-0x039E = 0x2E26
-0x039F = 0x2F26
-0x03A0 = 0x3026
-0x03A1 = 0x3126
-0x03A3 = 0x3226
-0x03A4 = 0x3326
-0x03A5 = 0x3426
-0x03A6 = 0x3526
-0x03A7 = 0x3626
-0x03A8 = 0x3726
-0x03A9 = 0x3826
-0x03B1 = 0x4126
-0x03B2 = 0x4226
-0x03B3 = 0x4326
-0x03B4 = 0x4426
-0x03B5 = 0x4526
-0x03B6 = 0x4626
-0x03B7 = 0x4726
-0x03B8 = 0x4826
-0x03B9 = 0x4926
-0x03BA = 0x4A26
-0x03BB = 0x4B26
-0x03BC = 0x4C26
-0x03BD = 0x4D26
-0x03BE = 0x4E26
-0x03BF = 0x4F26
-0x03C0 = 0x5026
-0x03C1 = 0x5126
-0x03C3 = 0x5226
-0x03C4 = 0x5326
-0x03C5 = 0x5426
-0x03C6 = 0x5526
-0x03C7 = 0x5626
-0x03C8 = 0x5726
-0x03C9 = 0x5826
-0x03D0 = 0x4226
-0x03D1 = 0x4826
-0x03D2 = 0x3426
-0x03D5 = 0x5526
-0x03D6 = 0x5026
-0x03F0 = 0x4A26
-0x03F1 = 0x5126
-0x03F4 = 0x2826
-0x03F5 = 0x4526
-0x03F9 = 0x3226
-0x0410 = 0x2127
-0x0411 = 0x2227
-0x0412 = 0x2327
-0x0413 = 0x2427
-0x0414 = 0x2527
-0x0415 = 0x2627
-0x0416 = 0x2827
-0x0417 = 0x2927
-0x0418 = 0x2A27
-0x0419 = 0x2B27
-0x041A = 0x2C27
-0x041B = 0x2D27
-0x041C = 0x2E27
-0x041D = 0x2F27
-0x041E = 0x3027
-0x041F = 0x3127
-0x0420 = 0x3227
-0x0421 = 0x3327
-0x0422 = 0x3427
-0x0423 = 0x3527
-0x0424 = 0x3627
-0x0425 = 0x3727
-0x0426 = 0x3827
-0x0427 = 0x3927
-0x0428 = 0x3A27
-0x0429 = 0x3B27
-0x042A = 0x3C27
-0x042B = 0x3D27
-0x042C = 0x3E27
-0x042D = 0x3F27
-0x042E = 0x4027
-0x042F = 0x4127
-0x0430 = 0x5127
-0x0431 = 0x5227
-0x0432 = 0x5327
-0x0433 = 0x5427
-0x0434 = 0x5527
-0x0435 = 0x5627
-0x0436 = 0x5827
-0x0437 = 0x5927
-0x0438 = 0x5A27
-0x0439 = 0x5B27
-0x043A = 0x5C27
-0x043B = 0x5D27
-0x043C = 0x5E27
-0x043D = 0x5F27
-0x043E = 0x6027
-0x043F = 0x6127
-0x0440 = 0x6227
-0x0441 = 0x6327
-0x0442 = 0x6427
-0x0443 = 0x6527
-0x0444 = 0x6627
-0x0445 = 0x6727
-0x0446 = 0x6827
-0x0447 = 0x6927
-0x0448 = 0x6A27
-0x0449 = 0x6B27
-0x044A = 0x6C27
-0x044B = 0x6D27
-0x044C = 0x6E27
-0x044D = 0x6F27
-0x044E = 0x7027
-0x044F = 0x7127
-0x0451 = 0x5727
-0x2010 = 0x3E21
-0x2015 = 0x3D21
-0x2016 = 0x4221
-0x2018 = 0x4621
-0x2019 = 0x4721
-0x201A = 0x4621
-0x201C = 0x4821
-0x201D = 0x4921
-0x2020 = 0x7722
-0x2021 = 0x7822
-0x2025 = 0x4521
-0x2026 = 0x4421
-0x2030 = 0x7322
-0x2032 = 0x6C21
-0x2033 = 0x6D21
-0x203B = 0x2822
-0x2103 = 0x6E21
-0x212B = 0x7222
-0x213D = 0x4326
-0x213E = 0x2326
-0x213F = 0x3026
-0x2190 = 0x2B22
-0x2191 = 0x2C22
-0x2192 = 0x2A22
-0x2193 = 0x2D22
-0x21D2 = 0x4D22
-0x21D4 = 0x4E22
-0x2200 = 0x4F22
-0x2202 = 0x5F22
-0x2203 = 0x5022
-0x2207 = 0x6022
-0x2208 = 0x3A22
-0x220B = 0x3B22
-0x2212 = 0x5D21
-0x221A = 0x6522
-0x221D = 0x6722
-0x221E = 0x6721
-0x2220 = 0x5C22
-0x2227 = 0x4A22
-0x2228 = 0x4B22
-0x2229 = 0x4122
-0x222A = 0x4022
-0x222B = 0x6922
-0x222C = 0x6A22
-0x2234 = 0x6821
-0x2235 = 0x6822
-0x223D = 0x6622
-0x2252 = 0x6222
-0x2260 = 0x6221
-0x2261 = 0x6122
-0x2266 = 0x6521
-0x2267 = 0x6621
-0x226A = 0x6322
-0x226B = 0x6422
-0x2282 = 0x3E22
-0x2283 = 0x3F22
-0x2286 = 0x3C22
-0x2287 = 0x3D22
-0x22A5 = 0x5D22
-0x2312 = 0x5E22
-0x2500 = 0x2128
-0x2501 = 0x2C28
-0x2502 = 0x2228
-0x2503 = 0x2D28
-0x250C = 0x2328
-0x250F = 0x2E28
-0x2510 = 0x2428
-0x2513 = 0x2F28
-0x2514 = 0x2628
-0x2517 = 0x3128
-0x2518 = 0x2528
-0x251B = 0x3028
-0x251C = 0x2728
-0x251D = 0x3C28
-0x2520 = 0x3728
-0x2523 = 0x3228
-0x2524 = 0x2928
-0x2525 = 0x3E28
-0x2528 = 0x3928
-0x252B = 0x3428
-0x252F = 0x3828
-0x2530 = 0x3D28
-0x2533 = 0x3328
-0x2534 = 0x2A28
-0x2537 = 0x3A28
-0x2538 = 0x3F28
-0x253B = 0x3528
-0x253C = 0x2B28
-0x253F = 0x3B28
-0x2542 = 0x4028
-0x254B = 0x3628
-0x25A0 = 0x2322
-0x25B2 = 0x2522
-0x25B3 = 0x2422
-0x25BC = 0x2722
-0x25BD = 0x2622
-0x25C6 = 0x2122
-0x25C7 = 0x7E21
-0x25CB = 0x7B21
-0x25CE = 0x7D21
-0x25CF = 0x7C21
-0x25EF = 0x7E22
-0x2605 = 0x7A21
-0x2606 = 0x7921
-0x2640 = 0x6A21
-0x2642 = 0x6921
-0x266A = 0x7622
-0x266D = 0x7522
-0x266F = 0x7422
-0x2E9F = 0x6C4A
-0x2F00 = 0x6C30
-0x2F02 = 0x2650
-0x2F03 = 0x2850
-0x2F04 = 0x3532
-0x2F05 = 0x2D50
-0x2F06 = 0x7346
-0x2F07 = 0x3550
-0x2F08 = 0x4D3F
-0x2F09 = 0x3951
-0x2F0A = 0x7E46
-0x2F0B = 0x2C48
-0x2F0C = 0x4451
-0x2F0D = 0x4C51
-0x2F0E = 0x5251
-0x2F0F = 0x5C51
-0x2F10 = 0x6151
-0x2F11 = 0x6145
-0x2F12 = 0x4F4E
-0x2F13 = 0x3152
-0x2F14 = 0x3852
-0x2F15 = 0x3952
-0x2F16 = 0x3E52
-0x2F17 = 0x3D3D
-0x2F18 = 0x4E4B
-0x2F19 = 0x4752
-0x2F1A = 0x4C52
-0x2F1B = 0x5352
-0x2F1C = 0x744B
-0x2F1D = 0x7D38
-0x2F1E = 0x7853
-0x2F1F = 0x5A45
-0x2F20 = 0x4E3B
-0x2F21 = 0x6954
-0x2F22 = 0x6A54
-0x2F23 = 0x3C4D
-0x2F24 = 0x6742
-0x2F25 = 0x773D
-0x2F26 = 0x523B
-0x2F27 = 0x5F55
-0x2F28 = 0x2340
-0x2F29 = 0x2E3E
-0x2F2A = 0x7755
-0x2F2B = 0x7955
-0x2F2C = 0x2556
-0x2F2D = 0x333B
-0x2F2E = 0x5F56
-0x2F2F = 0x2939
-0x2F30 = 0x4A38
-0x2F31 = 0x5236
-0x2F32 = 0x3334
-0x2F33 = 0x7656
-0x2F34 = 0x7856
-0x2F35 = 0x2E57
-0x2F36 = 0x3057
-0x2F37 = 0x3557
-0x2F38 = 0x5D35
-0x2F3A = 0x4457
-0x2F3B = 0x4657
-0x2F3C = 0x343F
-0x2F3D = 0x7958
-0x2F3F = 0x6A3C
-0x2F40 = 0x593B
-0x2F41 = 0x3D5A
-0x2F42 = 0x384A
-0x2F43 = 0x4D45
-0x2F44 = 0x5436
-0x2F45 = 0x7D4A
-0x2F46 = 0x5B5A
-0x2F47 = 0x7C46
-0x2F48 = 0x295B
-0x2F49 = 0x6E37
-0x2F4A = 0x5A4C
-0x2F4B = 0x6737
-0x2F4C = 0x5F3B
-0x2F4D = 0x465D
-0x2F4E = 0x555D
-0x2F4F = 0x595D
-0x2F50 = 0x6648
-0x2F51 = 0x534C
-0x2F52 = 0x613B
-0x2F53 = 0x635D
-0x2F54 = 0x653F
-0x2F55 = 0x5032
-0x2F56 = 0x5E44
-0x2F57 = 0x6349
-0x2F58 = 0x2B60
-0x2F59 = 0x2D60
-0x2F5A = 0x524A
-0x2F5B = 0x6732
-0x2F5C = 0x6D35
-0x2F5D = 0x2438
-0x2F5E = 0x3C38
-0x2F5F = 0x4C36
-0x2F60 = 0x3B31
-0x2F61 = 0x2434
-0x2F62 = 0x4534
-0x2F63 = 0x3840
-0x2F64 = 0x514D
-0x2F65 = 0x4445
-0x2F66 = 0x2549
-0x2F68 = 0x2262
-0x2F69 = 0x7247
-0x2F6A = 0x6948
-0x2F6B = 0x2E3B
-0x2F6C = 0x5C4C
-0x2F6D = 0x374C
-0x2F6E = 0x704C
-0x2F6F = 0x5040
-0x2F70 = 0x283C
-0x2F72 = 0x5332
-0x2F73 = 0x6A37
-0x2F74 = 0x294E
-0x2F75 = 0x5D43
-0x2F76 = 0x464A
-0x2F77 = 0x653B
-0x2F78 = 0x4C34
-0x2F79 = 0x2666
-0x2F7A = 0x534D
-0x2F7B = 0x2931
-0x2F7C = 0x374F
-0x2F7D = 0x293C
-0x2F7E = 0x5066
-0x2F7F = 0x2A3C
-0x2F80 = 0x6666
-0x2F81 = 0x7946
-0x2F82 = 0x433F
-0x2F83 = 0x2B3C
-0x2F84 = 0x6A3B
-0x2F85 = 0x3131
-0x2F86 = 0x6540
-0x2F87 = 0x2441
-0x2F88 = 0x2E3D
-0x2F89 = 0x313A
-0x2F8A = 0x273F
-0x2F8B = 0x6767
-0x2F8C = 0x4869
-0x2F8D = 0x6E43
-0x2F8E = 0x6C37
-0x2F8F = 0x5439
-0x2F90 = 0x6130
-0x2F91 = 0x286B
-0x2F92 = 0x2B38
-0x2F93 = 0x5133
-0x2F94 = 0x4038
-0x2F95 = 0x2B43
-0x2F96 = 0x2646
-0x2F97 = 0x356C
-0x2F98 = 0x386C
-0x2F99 = 0x2D33
-0x2F9A = 0x5640
-0x2F9B = 0x7641
-0x2F9C = 0x2D42
-0x2F9D = 0x483F
-0x2F9E = 0x563C
-0x2F9F = 0x493F
-0x2FA0 = 0x2443
-0x2FA2 = 0x384D
-0x2FA3 = 0x5346
-0x2FA4 = 0x5048
-0x2FA5 = 0x244E
-0x2FA6 = 0x6236
-0x2FA7 = 0x3944
-0x2FA8 = 0x674C
-0x2FA9 = 0x6C49
-0x2FAA = 0x3070
-0x2FAB = 0x3270
-0x2FAC = 0x2B31
-0x2FAE = 0x7348
-0x2FAF = 0x4C4C
-0x2FB0 = 0x5733
-0x2FB1 = 0x6A70
-0x2FB2 = 0x6C70
-0x2FB3 = 0x3B32
-0x2FB4 = 0x474A
-0x2FB5 = 0x7749
-0x2FB6 = 0x7448
-0x2FB7 = 0x293F
-0x2FB8 = 0x733C
-0x2FB9 = 0x6139
-0x2FBA = 0x4F47
-0x2FBB = 0x7C39
-0x2FBC = 0x6239
-0x2FBD = 0x7571
-0x2FBE = 0x2872
-0x2FBF = 0x2E72
-0x2FC0 = 0x2F72
-0x2FC1 = 0x3435
-0x2FC2 = 0x7B35
-0x2FC3 = 0x3B44
-0x2FC4 = 0x4373
-0x2FC5 = 0x2F3C
-0x2FC6 = 0x4E73
-0x2FC7 = 0x634B
-0x2FC9 = 0x5035
-0x2FCB = 0x6373
-0x2FCC = 0x6673
-0x2FCD = 0x2445
-0x2FCE = 0x5D38
-0x2FCF = 0x4D41
-0x2FD0 = 0x2149
-0x2FD1 = 0x6E73
-0x2FD2 = 0x6F73
-0x2FD3 = 0x364E
-0x2FD4 = 0x7D73
-0x2FD5 = 0x7E73
-0x3001 = 0x2221
-0x3002 = 0x2321
-0x3003 = 0x3721
-0x3005 = 0x3921
-0x3006 = 0x3A21
-0x3007 = 0x3B21
-0x3008 = 0x5221
-0x3009 = 0x5321
-0x300A = 0x5421
-0x300B = 0x5521
-0x300C = 0x5621
-0x300D = 0x5721
-0x300E = 0x5821
-0x300F = 0x5921
-0x3010 = 0x5A21
-0x3011 = 0x5B21
-0x3012 = 0x2922
-0x3013 = 0x2E22
-0x3014 = 0x4C21
-0x3015 = 0x4D21
-0x301C = 0x4121
-0x3036 = 0x2922
-0x3038 = 0x3D3D
-0x303A = 0x4152
-0x3041 = 0x2124
-0x3042 = 0x2224
-0x3043 = 0x2324
-0x3045 = 0x2524
-0x3046 = 0x2624
-0x3047 = 0x2724
-0x3048 = 0x2824
-0x3049 = 0x2924
-0x304A = 0x2A24
-0x304B = 0x2B24
-0x304C = 0x2C24
-0x304D = 0x2D24
-0x304E = 0x2E24
-0x304F = 0x2F24
-0x3050 = 0x3024
-0x3051 = 0x3124
-0x3052 = 0x3224
-0x3053 = 0x3324
-0x3054 = 0x3424
-0x3055 = 0x3524
-0x3056 = 0x3624
-0x3057 = 0x3724
-0x3058 = 0x3824
-0x3059 = 0x3924
-0x305A = 0x3A24
-0x305B = 0x3B24
-0x305C = 0x3C24
-0x305D = 0x3D24
-0x305E = 0x3E24
-0x305F = 0x3F24
-0x3060 = 0x4024
-0x3061 = 0x4124
-0x3062 = 0x4224
-0x3063 = 0x4324
-0x3064 = 0x4424
-0x3065 = 0x4524
-0x3066 = 0x4624
-0x3067 = 0x4724
-0x3068 = 0x4824
-0x3069 = 0x4924
-0x306A = 0x4A24
-0x306B = 0x4B24
-0x306C = 0x4C24
-0x306D = 0x4D24
-0x306E = 0x4E24
-0x306F = 0x4F24
-0x3070 = 0x5024
-0x3071 = 0x5124
-0x3072 = 0x5224
-0x3073 = 0x5324
-0x3074 = 0x5424
-0x3075 = 0x5524
-0x3076 = 0x5624
-0x3077 = 0x5724
-0x3078 = 0x5824
-0x3079 = 0x5924
-0x307A = 0x5A24
-0x307B = 0x5B24
-0x307C = 0x5C24
-0x307D = 0x5D24
-0x307E = 0x5E24
-0x307F = 0x5F24
-0x3080 = 0x6024
-0x3081 = 0x6124
-0x3082 = 0x6224
-0x3083 = 0x6324
-0x3084 = 0x6424
-0x3085 = 0x6524
-0x3086 = 0x6624
-0x3087 = 0x6724
-0x3088 = 0x6824
-0x3089 = 0x6924
-0x308A = 0x6A24
-0x308B = 0x6B24
-0x308C = 0x6C24
-0x308D = 0x6D24
-0x308E = 0x6E24
-0x308F = 0x6F24
-0x3090 = 0x7024
-0x3091 = 0x7124
-0x3092 = 0x7224
-0x3093 = 0x7324
-0x3095 = 0x2B24
-0x3096 = 0x3124
-0x309B = 0x2B21
-0x309C = 0x2C21
-0x309D = 0x3521
-0x309E = 0x3621
-0x30A1 = 0x2125
-0x30A2 = 0x2225
-0x30A3 = 0x2325
-0x30A4 = 0x2425
-0x30A6 = 0x2625
-0x30A7 = 0x2725
-0x30A8 = 0x2825
-0x30A9 = 0x2925
-0x30AA = 0x2A25
-0x30AB = 0x2B25
-0x30AC = 0x2C25
-0x30AD = 0x2D25
-0x30AE = 0x2E25
-0x30AF = 0x2F25
-0x30B0 = 0x3025
-0x30B1 = 0x3125
-0x30B2 = 0x3225
-0x30B3 = 0x3325
-0x30B4 = 0x3425
-0x30B5 = 0x3525
-0x30B6 = 0x3625
-0x30B7 = 0x3725
-0x30B8 = 0x3825
-0x30B9 = 0x3925
-0x30BA = 0x3A25
-0x30BB = 0x3B25
-0x30BC = 0x3C25
-0x30BD = 0x3D25
-0x30BE = 0x3E25
-0x30BF = 0x3F25
-0x30C0 = 0x4025
-0x30C1 = 0x4125
-0x30C2 = 0x4225
-0x30C3 = 0x4325
-0x30C4 = 0x4425
-0x30C5 = 0x4525
-0x30C6 = 0x4625
-0x30C7 = 0x4725
-0x30C8 = 0x4825
-0x30C9 = 0x4925
-0x30CA = 0x4A25
-0x30CB = 0x4B25
-0x30CC = 0x4C25
-0x30CD = 0x4D25
-0x30CE = 0x4E25
-0x30CF = 0x4F25
-0x30D0 = 0x5025
-0x30D1 = 0x5125
-0x30D2 = 0x5225
-0x30D3 = 0x5325
-0x30D4 = 0x5425
-0x30D5 = 0x5525
-0x30D6 = 0x5625
-0x30D7 = 0x5725
-0x30D8 = 0x5825
-0x30D9 = 0x5925
-0x30DA = 0x5A25
-0x30DB = 0x5B25
-0x30DC = 0x5C25
-0x30DD = 0x5D25
-0x30DE = 0x5E25
-0x30DF = 0x5F25
-0x30E0 = 0x6025
-0x30E1 = 0x6125
-0x30E2 = 0x6225
-0x30E3 = 0x6325
-0x30E4 = 0x6425
-0x30E5 = 0x6525
-0x30E6 = 0x6625
-0x30E7 = 0x6725
-0x30E8 = 0x6825
-0x30E9 = 0x6925
-0x30EA = 0x6A25
-0x30EB = 0x6B25
-0x30EC = 0x6C25
-0x30ED = 0x6D25
-0x30EE = 0x6E25
-0x30EF = 0x6F25
-0x30F0 = 0x7025
-0x30F1 = 0x7125
-0x30F2 = 0x7225
-0x30F3 = 0x7325
-0x30F4 = 0x7425
-0x30F5 = 0x7525
-0x30F6 = 0x7625
-0x30FB = 0x2621
-0x30FC = 0x3C21
-0x30FD = 0x3321
-0x30FE = 0x3421
-0x31F0 = 0x2F25
-0x31F1 = 0x3725
-0x31F2 = 0x3925
-0x31F3 = 0x4825
-0x31F4 = 0x4C25
-0x31F5 = 0x4F25
-0x31F6 = 0x5225
-0x31F7 = 0x5525
-0x31F8 = 0x5825
-0x31F9 = 0x5B25
-0x31FA = 0x6025
-0x31FB = 0x6925
-0x31FC = 0x6A25
-0x31FD = 0x6B25
-0x31FE = 0x6C25
-0x31FF = 0x6D25
-0x3310 = 0x2C252E25
-0x3314 = 0x6D252D25
-0x3325 = 0x37254725
-0x3326 = 0x6B254925
-0x3327 = 0x73254825
-0x3328 = 0x4E254A25
-0x3330 = 0x33255425
-0x3331 = 0x6B255325
-0x3337 = 0x3D255A25
-0x333F = 0x73255B25
-0x3349 = 0x6A255F25
-0x334B = 0x2C256125
-0x3352 = 0x69256A25
-0x3355 = 0x60256C25
-0x337B = 0x2E403F4A
-0x337C = 0x424F3C3E
-0x337D = 0x35406742
-0x337E = 0x233C404C
-0x4E00 = 0x6C30
-0x4E01 = 0x7A43
-0x4E03 = 0x373C
-0x4E07 = 0x7C4B
-0x4E08 = 0x663E
-0x4E09 = 0x303B
-0x4E0A = 0x653E
-0x4E0B = 0x3C32
-0x4E0D = 0x5449
-0x4E0E = 0x3F4D
-0x4E10 = 0x2250
-0x4E11 = 0x2F31
-0x4E14 = 0x6E33
-0x4E15 = 0x2350
-0x4E16 = 0x2440
-0x4E17 = 0x4252
-0x4E18 = 0x5635
-0x4E19 = 0x3A4A
-0x4E1E = 0x673E
-0x4E21 = 0x3E4E
-0x4E26 = 0x424A
-0x4E2A = 0x2450
-0x4E2D = 0x6643
-0x4E31 = 0x2550
-0x4E32 = 0x7A36
-0x4E36 = 0x2650
-0x4E38 = 0x5D34
-0x4E39 = 0x3043
-0x4E3B = 0x673C
-0x4E3C = 0x2750
-0x4E3F = 0x2850
-0x4E42 = 0x2950
-0x4E43 = 0x3547
-0x4E45 = 0x5735
-0x4E4B = 0x3747
-0x4E4D = 0x6346
-0x4E4E = 0x4338
-0x4E4F = 0x334B
-0x4E55 = 0x4969
-0x4E56 = 0x2A50
-0x4E57 = 0x683E
-0x4E58 = 0x2B50
-0x4E59 = 0x3532
-0x4E5D = 0x6536
-0x4E5E = 0x7038
-0x4E5F = 0x694C
-0x4E62 = 0x2656
-0x4E71 = 0x704D
-0x4E73 = 0x7D46
-0x4E7E = 0x2534
-0x4E82 = 0x2C50
-0x4E85 = 0x2D50
-0x4E86 = 0x3B4E
-0x4E88 = 0x3D4D
-0x4E89 = 0x6841
-0x4E8A = 0x2F50
-0x4E8B = 0x763B
-0x4E8C = 0x7346
-0x4E8E = 0x3250
-0x4E91 = 0x3E31
-0x4E92 = 0x5F38
-0x4E94 = 0x5E38
-0x4E95 = 0x6630
-0x4E98 = 0x4B4F
-0x4E99 = 0x4A4F
-0x4E9B = 0x333A
-0x4E9C = 0x2130
-0x4E9E = 0x3350
-0x4E9F = 0x3450
-0x4EA0 = 0x3550
-0x4EA1 = 0x344B
-0x4EA2 = 0x3650
-0x4EA4 = 0x7238
-0x4EA5 = 0x6730
-0x4EA6 = 0x724B
-0x4EA8 = 0x7C35
-0x4EAB = 0x7D35
-0x4EAC = 0x7E35
-0x4EAD = 0x6244
-0x4EAE = 0x3C4E
-0x4EB0 = 0x3750
-0x4EB3 = 0x3850
-0x4EB6 = 0x3950
-0x4EBA = 0x4D3F
-0x4EC0 = 0x3A3D
-0x4EC1 = 0x4E3F
-0x4EC2 = 0x3E50
-0x4EC4 = 0x3C50
-0x4EC6 = 0x3D50
-0x4EC7 = 0x5835
-0x4ECA = 0x233A
-0x4ECB = 0x7032
-0x4ECD = 0x3B50
-0x4ECE = 0x3A50
-0x4ECF = 0x294A
-0x4ED4 = 0x463B
-0x4ED5 = 0x453B
-0x4ED6 = 0x3E42
-0x4ED7 = 0x3F50
-0x4ED8 = 0x5549
-0x4ED9 = 0x6740
-0x4EDD = 0x3821
-0x4EDE = 0x4050
-0x4EDF = 0x4250
-0x4EE3 = 0x6542
-0x4EE4 = 0x614E
-0x4EE5 = 0x4A30
-0x4EED = 0x4150
-0x4EEE = 0x3E32
-0x4EF0 = 0x4436
-0x4EF2 = 0x6743
-0x4EF6 = 0x6F37
-0x4EF7 = 0x4350
-0x4EFB = 0x2447
-0x4F01 = 0x6B34
-0x4F09 = 0x4450
-0x4F0A = 0x4B30
-0x4F0D = 0x6038
-0x4F0E = 0x6C34
-0x4F0F = 0x7A49
-0x4F10 = 0x3248
-0x4F11 = 0x5935
-0x4F1A = 0x7132
-0x4F1C = 0x6750
-0x4F1D = 0x4145
-0x4F2F = 0x6C47
-0x4F30 = 0x4650
-0x4F34 = 0x3C48
-0x4F36 = 0x624E
-0x4F38 = 0x2D3F
-0x4F3A = 0x473B
-0x4F3C = 0x773B
-0x4F3D = 0x4032
-0x4F43 = 0x5144
-0x4F46 = 0x2243
-0x4F47 = 0x4A50
-0x4F4D = 0x4C30
-0x4F4E = 0x6344
-0x4F4F = 0x3B3D
-0x4F50 = 0x343A
-0x4F51 = 0x244D
-0x4F53 = 0x4E42
-0x4F55 = 0x3F32
-0x4F57 = 0x4950
-0x4F59 = 0x3E4D
-0x4F5A = 0x4550
-0x4F5B = 0x4750
-0x4F5C = 0x6E3A
-0x4F5D = 0x4850
-0x4F5E = 0x2455
-0x4F6F = 0x5350
-0x4F70 = 0x5150
-0x4F73 = 0x4232
-0x4F75 = 0x3B4A
-0x4F76 = 0x4B50
-0x4F7B = 0x4F50
-0x4F7C = 0x7338
-0x4F7F = 0x483B
-0x4F83 = 0x2634
-0x4F86 = 0x5450
-0x4F88 = 0x4C50
-0x4F8B = 0x634E
-0x4F8D = 0x783B
-0x4F8F = 0x4D50
-0x4F91 = 0x5250
-0x4F96 = 0x5550
-0x4F98 = 0x4E50
-0x4F9B = 0x2136
-0x4F9D = 0x4D30
-0x4FA0 = 0x2236
-0x4FA1 = 0x4132
-0x4FAB = 0x2555
-0x4FAD = 0x794B
-0x4FAE = 0x6E49
-0x4FAF = 0x7438
-0x4FB5 = 0x2F3F
-0x4FB6 = 0x374E
-0x4FBF = 0x584A
-0x4FC2 = 0x3837
-0x4FC3 = 0x2542
-0x4FC4 = 0x6432
-0x4FCA = 0x533D
-0x4FCE = 0x5950
-0x4FD0 = 0x5E50
-0x4FD1 = 0x5C50
-0x4FD4 = 0x5750
-0x4FD7 = 0x2F42
-0x4FD8 = 0x5A50
-0x4FDA = 0x5D50
-0x4FDB = 0x5B50
-0x4FDD = 0x5D4A
-0x4FDF = 0x5850
-0x4FE1 = 0x2E3F
-0x4FE3 = 0x734B
-0x4FE4 = 0x5F50
-0x4FE5 = 0x6050
-0x4FEE = 0x243D
-0x4FEF = 0x6D50
-0x4FF3 = 0x5047
-0x4FF5 = 0x3649
-0x4FF6 = 0x6850
-0x4FF8 = 0x704A
-0x4FFA = 0x3632
-0x4FFE = 0x6C50
-0x5005 = 0x6650
-0x5006 = 0x6F50
-0x5009 = 0x5241
-0x500B = 0x4438
-0x500D = 0x5C47
-0x500F = 0x4760
-0x5011 = 0x6E50
-0x5012 = 0x5D45
-0x5014 = 0x6350
-0x5016 = 0x7638
-0x5019 = 0x7538
-0x501A = 0x6150
-0x501F = 0x5A3C
-0x5021 = 0x6950
-0x5023 = 0x6F4A
-0x5024 = 0x4D43
-0x5025 = 0x6550
-0x5026 = 0x7137
-0x5028 = 0x6250
-0x5029 = 0x6A50
-0x502A = 0x6450
-0x502B = 0x514E
-0x502C = 0x6B50
-0x502D = 0x414F
-0x5036 = 0x6636
-0x5039 = 0x7037
-0x5043 = 0x7050
-0x5047 = 0x7150
-0x5048 = 0x7550
-0x5049 = 0x4E30
-0x504F = 0x504A
-0x5050 = 0x7450
-0x5055 = 0x7350
-0x5056 = 0x7750
-0x505A = 0x7650
-0x505C = 0x6444
-0x5065 = 0x7237
-0x506C = 0x7850
-0x5072 = 0x453C
-0x5074 = 0x2642
-0x5075 = 0x6544
-0x5076 = 0x7636
-0x5078 = 0x7950
-0x507D = 0x3635
-0x5080 = 0x7A50
-0x5085 = 0x7C50
-0x508D = 0x354B
-0x5091 = 0x6637
-0x5098 = 0x313B
-0x5099 = 0x7748
-0x509A = 0x7B50
-0x50AC = 0x453A
-0x50AD = 0x434D
-0x50B2 = 0x7E50
-0x50B3 = 0x2351
-0x50B4 = 0x7D50
-0x50B5 = 0x443A
-0x50B7 = 0x7D3D
-0x50BE = 0x3937
-0x50C2 = 0x2451
-0x50C5 = 0x4F36
-0x50C9 = 0x2151
-0x50CA = 0x2251
-0x50CD = 0x2F46
-0x50CF = 0x7C41
-0x50D1 = 0x2336
-0x50D5 = 0x4D4B
-0x50D6 = 0x2551
-0x50DA = 0x3D4E
-0x50DE = 0x2651
-0x50E3 = 0x2951
-0x50E5 = 0x2751
-0x50E7 = 0x4E41
-0x50ED = 0x2851
-0x50EE = 0x2A51
-0x50F5 = 0x2C51
-0x50F9 = 0x2B51
-0x50FB = 0x484A
-0x5100 = 0x3735
-0x5101 = 0x2E51
-0x5102 = 0x2F51
-0x5104 = 0x2F32
-0x5109 = 0x2D51
-0x5112 = 0x743C
-0x5114 = 0x3251
-0x5115 = 0x3151
-0x5116 = 0x3051
-0x5118 = 0x5650
-0x511A = 0x3351
-0x511F = 0x7E3D
-0x5121 = 0x3451
-0x512A = 0x254D
-0x5132 = 0x594C
-0x5137 = 0x3651
-0x513A = 0x3551
-0x513B = 0x3851
-0x513C = 0x3751
-0x513F = 0x3951
-0x5140 = 0x3A51
-0x5141 = 0x7430
-0x5143 = 0x3538
-0x5144 = 0x3B37
-0x5145 = 0x3C3D
-0x5146 = 0x7B43
-0x5147 = 0x2436
-0x5148 = 0x6840
-0x5149 = 0x7738
-0x514B = 0x6E39
-0x514C = 0x3C51
-0x514D = 0x484C
-0x514E = 0x4645
-0x5150 = 0x793B
-0x5152 = 0x3B51
-0x5154 = 0x3D51
-0x515A = 0x5E45
-0x515C = 0x7533
-0x5162 = 0x3E51
-0x5165 = 0x7E46
-0x5168 = 0x3441
-0x5169 = 0x4051
-0x516A = 0x4151
-0x516B = 0x2C48
-0x516C = 0x7838
-0x516D = 0x3B4F
-0x516E = 0x4251
-0x5171 = 0x2636
-0x5175 = 0x3C4A
-0x5176 = 0x3642
-0x5177 = 0x7136
-0x5178 = 0x3545
-0x517C = 0x7337
-0x5180 = 0x4351
-0x5182 = 0x4451
-0x5185 = 0x6246
-0x5186 = 0x5F31
-0x5189 = 0x4751
-0x518A = 0x7D3A
-0x518C = 0x4651
-0x518D = 0x463A
-0x518F = 0x4851
-0x5190 = 0x6E66
-0x5191 = 0x4951
-0x5192 = 0x414B
-0x5193 = 0x4A51
-0x5195 = 0x4B51
-0x5196 = 0x4C51
-0x5197 = 0x693E
-0x5199 = 0x4C3C
-0x51A0 = 0x2734
-0x51A2 = 0x4F51
-0x51A4 = 0x4D51
-0x51A5 = 0x3D4C
-0x51A6 = 0x4E51
-0x51A8 = 0x5A49
-0x51A9 = 0x5051
-0x51AB = 0x5251
-0x51AC = 0x5F45
-0x51B0 = 0x5651
-0x51B1 = 0x5451
-0x51B2 = 0x5551
-0x51B3 = 0x5351
-0x51B4 = 0x633A
-0x51B5 = 0x5751
-0x51B6 = 0x6A4C
-0x51B7 = 0x644E
-0x51BD = 0x5851
-0x51C4 = 0x2840
-0x51C5 = 0x5951
-0x51C6 = 0x5A3D
-0x51C9 = 0x5A51
-0x51CB = 0x7C43
-0x51CC = 0x3F4E
-0x51CD = 0x6045
-0x51D6 = 0x4552
-0x51DB = 0x5B51
-0x51DC = 0x2574
-0x51DD = 0x4536
-0x51E0 = 0x5C51
-0x51E1 = 0x5E4B
-0x51E6 = 0x683D
-0x51E7 = 0x7C42
-0x51E9 = 0x5E51
-0x51EA = 0x6446
-0x51ED = 0x5F51
-0x51F0 = 0x6051
-0x51F1 = 0x2E33
-0x51F5 = 0x6151
-0x51F6 = 0x2736
-0x51F8 = 0x4C46
-0x51F9 = 0x7A31
-0x51FA = 0x503D
-0x51FD = 0x2148
-0x51FE = 0x6251
-0x5200 = 0x6145
-0x5203 = 0x4F3F
-0x5204 = 0x6351
-0x5206 = 0x2C4A
-0x5207 = 0x5A40
-0x5208 = 0x2234
-0x520A = 0x2934
-0x520B = 0x6451
-0x520E = 0x6651
-0x5211 = 0x3A37
-0x5214 = 0x6551
-0x5217 = 0x734E
-0x521D = 0x693D
-0x5224 = 0x3D48
-0x5225 = 0x4C4A
-0x5227 = 0x6751
-0x5229 = 0x784D
-0x522A = 0x6851
-0x522E = 0x6951
-0x5230 = 0x7E45
-0x5233 = 0x6A51
-0x5236 = 0x2940
-0x5237 = 0x7E3A
-0x5238 = 0x7437
-0x5239 = 0x6B51
-0x523A = 0x493B
-0x523B = 0x6F39
-0x5243 = 0x6644
-0x5244 = 0x6D51
-0x5247 = 0x2742
-0x524A = 0x6F3A
-0x524B = 0x6E51
-0x524C = 0x6F51
-0x524D = 0x3041
-0x524F = 0x6C51
-0x5254 = 0x7151
-0x5256 = 0x364B
-0x525B = 0x6439
-0x525E = 0x7051
-0x5263 = 0x7537
-0x5264 = 0x5E3A
-0x5265 = 0x6D47
-0x5269 = 0x7451
-0x526A = 0x7251
-0x526F = 0x7B49
-0x5270 = 0x6A3E
-0x5271 = 0x7B51
-0x5272 = 0x6433
-0x5273 = 0x7551
-0x5274 = 0x7351
-0x5275 = 0x4F41
-0x527D = 0x7751
-0x527F = 0x7651
-0x5283 = 0x4433
-0x5287 = 0x6037
-0x5288 = 0x7C51
-0x5289 = 0x2D4E
-0x528D = 0x7851
-0x5291 = 0x7D51
-0x5292 = 0x7A51
-0x5294 = 0x7951
-0x529B = 0x4F4E
-0x529F = 0x7938
-0x52A0 = 0x4332
-0x52A3 = 0x744E
-0x52A9 = 0x753D
-0x52AA = 0x5845
-0x52AB = 0x6539
-0x52AC = 0x2252
-0x52AD = 0x2352
-0x52B1 = 0x654E
-0x52B4 = 0x2B4F
-0x52B5 = 0x2552
-0x52B9 = 0x7A38
-0x52BC = 0x2452
-0x52BE = 0x2F33
-0x52C1 = 0x2652
-0x52C3 = 0x564B
-0x52C5 = 0x3C44
-0x52C7 = 0x264D
-0x52C9 = 0x594A
-0x52CD = 0x2752
-0x52D2 = 0x5570
-0x52D5 = 0x3046
-0x52D7 = 0x2852
-0x52D8 = 0x2A34
-0x52D9 = 0x334C
-0x52DD = 0x213E
-0x52DE = 0x2952
-0x52DF = 0x674A
-0x52E0 = 0x2D52
-0x52E2 = 0x2A40
-0x52E3 = 0x2A52
-0x52E4 = 0x5036
-0x52E6 = 0x2B52
-0x52E7 = 0x2B34
-0x52F2 = 0x2E37
-0x52F3 = 0x2E52
-0x52F5 = 0x2F52
-0x52F8 = 0x3052
-0x52F9 = 0x3152
-0x52FA = 0x5B3C
-0x52FE = 0x7B38
-0x52FF = 0x5E4C
-0x5301 = 0x684C
-0x5302 = 0x7746
-0x5305 = 0x714A
-0x5306 = 0x3252
-0x5308 = 0x3352
-0x530D = 0x3552
-0x530F = 0x3752
-0x5310 = 0x3652
-0x5315 = 0x3852
-0x5316 = 0x3D32
-0x5317 = 0x4C4B
-0x5319 = 0x7C3A
-0x531A = 0x3952
-0x531D = 0x5941
-0x5320 = 0x223E
-0x5321 = 0x2936
-0x5323 = 0x3A52
-0x532A = 0x5B48
-0x532F = 0x3B52
-0x5331 = 0x3C52
-0x5333 = 0x3D52
-0x5338 = 0x3E52
-0x5339 = 0x2449
-0x533A = 0x6836
-0x533B = 0x6530
-0x533F = 0x3F46
-0x5340 = 0x3F52
-0x5343 = 0x6940
-0x5345 = 0x4152
-0x5346 = 0x4052
-0x5347 = 0x233E
-0x5348 = 0x6138
-0x5349 = 0x4352
-0x534A = 0x3E48
-0x534D = 0x4452
-0x5351 = 0x5C48
-0x5352 = 0x3442
-0x5353 = 0x6E42
-0x5354 = 0x2836
-0x5357 = 0x6E46
-0x5358 = 0x3143
-0x535A = 0x6E47
-0x535C = 0x4E4B
-0x535E = 0x4652
-0x5360 = 0x6A40
-0x5366 = 0x3537
-0x5369 = 0x4752
-0x536E = 0x4852
-0x536F = 0x2C31
-0x5370 = 0x7530
-0x5371 = 0x6D34
-0x5373 = 0x2842
-0x5374 = 0x5135
-0x5375 = 0x714D
-0x5377 = 0x4B52
-0x5378 = 0x3732
-0x537B = 0x4A52
-0x537F = 0x2A36
-0x5382 = 0x4C52
-0x5384 = 0x714C
-0x5396 = 0x4D52
-0x5398 = 0x524E
-0x539A = 0x7C38
-0x539F = 0x3638
-0x53A0 = 0x4E52
-0x53A5 = 0x5052
-0x53A6 = 0x4F52
-0x53A8 = 0x5F3F
-0x53A9 = 0x3931
-0x53AD = 0x5E31
-0x53AE = 0x5152
-0x53B3 = 0x3738
-0x53B6 = 0x5352
-0x53BB = 0x6E35
-0x53C2 = 0x323B
-0x53C3 = 0x5452
-0x53C8 = 0x744B
-0x53C9 = 0x353A
-0x53CA = 0x5A35
-0x53CB = 0x274D
-0x53CC = 0x5041
-0x53CD = 0x3F48
-0x53CE = 0x7D3C
-0x53D4 = 0x473D
-0x53D6 = 0x683C
-0x53D7 = 0x753C
-0x53D9 = 0x763D
-0x53DB = 0x4048
-0x53DF = 0x5752
-0x53E1 = 0x4331
-0x53E2 = 0x5141
-0x53E3 = 0x7D38
-0x53E4 = 0x4538
-0x53E5 = 0x6736
-0x53E8 = 0x5B52
-0x53E9 = 0x2143
-0x53EA = 0x7E42
-0x53EB = 0x2B36
-0x53EC = 0x243E
-0x53ED = 0x5C52
-0x53EE = 0x5A52
-0x53EF = 0x4432
-0x53F0 = 0x6642
-0x53F1 = 0x383C
-0x53F2 = 0x4B3B
-0x53F3 = 0x2631
-0x53F6 = 0x7033
-0x53F7 = 0x6639
-0x53F8 = 0x4A3B
-0x53FA = 0x5D52
-0x5401 = 0x5E52
-0x5403 = 0x4935
-0x5404 = 0x4633
-0x5408 = 0x6739
-0x5409 = 0x4835
-0x540A = 0x5F44
-0x540B = 0x2531
-0x540C = 0x3146
-0x540D = 0x3E4C
-0x540E = 0x2139
-0x540F = 0x794D
-0x5410 = 0x4745
-0x5411 = 0x7E38
-0x541B = 0x2F37
-0x541D = 0x6752
-0x541F = 0x6336
-0x5420 = 0x4A4B
-0x5426 = 0x5D48
-0x5429 = 0x6652
-0x542B = 0x5E34
-0x542C = 0x6152
-0x542D = 0x6252
-0x542E = 0x6452
-0x5436 = 0x6552
-0x5438 = 0x5B35
-0x5439 = 0x613F
-0x543B = 0x2D4A
-0x543C = 0x6352
-0x543D = 0x5F52
-0x543E = 0x6338
-0x5440 = 0x6052
-0x5442 = 0x244F
-0x5446 = 0x724A
-0x5448 = 0x6844
-0x5449 = 0x6238
-0x544A = 0x7039
-0x544E = 0x6852
-0x5451 = 0x5D46
-0x545F = 0x6C52
-0x5468 = 0x7E3C
-0x546A = 0x763C
-0x5470 = 0x6F52
-0x5471 = 0x6D52
-0x5473 = 0x234C
-0x5475 = 0x6A52
-0x5476 = 0x7352
-0x5477 = 0x6E52
-0x547B = 0x7152
-0x547C = 0x4638
-0x547D = 0x3F4C
-0x5480 = 0x7252
-0x5484 = 0x7452
-0x5486 = 0x7652
-0x548B = 0x703A
-0x548C = 0x424F
-0x548E = 0x6B52
-0x548F = 0x6952
-0x5490 = 0x7552
-0x5492 = 0x7052
-0x54A2 = 0x7852
-0x54A4 = 0x2353
-0x54A5 = 0x7A52
-0x54A8 = 0x7E52
-0x54AB = 0x2153
-0x54AC = 0x7B52
-0x54AF = 0x3E53
-0x54B2 = 0x693A
-0x54B3 = 0x3133
-0x54B8 = 0x7952
-0x54BC = 0x2553
-0x54BD = 0x7630
-0x54BE = 0x2453
-0x54C0 = 0x2530
-0x54C1 = 0x4A49
-0x54C2 = 0x2253
-0x54C4 = 0x7C52
-0x54C7 = 0x7752
-0x54C8 = 0x7D52
-0x54C9 = 0x483A
-0x54D8 = 0x2653
-0x54E1 = 0x7730
-0x54E2 = 0x2F53
-0x54E5 = 0x2753
-0x54E6 = 0x2853
-0x54E8 = 0x253E
-0x54E9 = 0x694B
-0x54ED = 0x2D53
-0x54EE = 0x2C53
-0x54F2 = 0x2F45
-0x54FA = 0x2E53
-0x54FD = 0x2B53
-0x5504 = 0x3431
-0x5506 = 0x363A
-0x5507 = 0x303F
-0x550F = 0x2953
-0x5510 = 0x6245
-0x5514 = 0x2A53
-0x5516 = 0x2230
-0x552E = 0x3453
-0x552F = 0x234D
-0x5531 = 0x273E
-0x5533 = 0x3A53
-0x5538 = 0x3953
-0x5539 = 0x3053
-0x553E = 0x4342
-0x5540 = 0x3153
-0x5544 = 0x6F42
-0x5545 = 0x3653
-0x5546 = 0x263E
-0x554C = 0x3353
-0x554F = 0x644C
-0x5553 = 0x3C37
-0x5556 = 0x3753
-0x5557 = 0x3853
-0x555C = 0x3553
-0x555D = 0x3B53
-0x5563 = 0x3253
-0x557B = 0x4153
-0x557C = 0x4653
-0x557E = 0x4253
-0x5580 = 0x3D53
-0x5583 = 0x4753
-0x5584 = 0x3141
-0x5587 = 0x4953
-0x5589 = 0x2239
-0x558A = 0x3F53
-0x558B = 0x7D43
-0x5598 = 0x4353
-0x5599 = 0x3C53
-0x559A = 0x2D34
-0x559C = 0x6E34
-0x559D = 0x6533
-0x559E = 0x4453
-0x559F = 0x4053
-0x55A7 = 0x7637
-0x55A8 = 0x4A53
-0x55A9 = 0x4853
-0x55AA = 0x5341
-0x55AB = 0x4A35
-0x55AC = 0x2C36
-0x55AE = 0x4553
-0x55B0 = 0x7436
-0x55B6 = 0x4431
-0x55C4 = 0x4E53
-0x55C5 = 0x4C53
-0x55C7 = 0x2754
-0x55D4 = 0x5153
-0x55DA = 0x4B53
-0x55DC = 0x4F53
-0x55DF = 0x4D53
-0x55E3 = 0x4C3B
-0x55E4 = 0x5053
-0x55F9 = 0x5853
-0x55FD = 0x5653
-0x55FE = 0x5553
-0x5606 = 0x3243
-0x5609 = 0x4532
-0x5614 = 0x5253
-0x5616 = 0x5453
-0x5617 = 0x283E
-0x5618 = 0x3331
-0x561B = 0x5753
-0x5629 = 0x5E32
-0x562F = 0x6253
-0x5631 = 0x7C3E
-0x5632 = 0x5E53
-0x5634 = 0x5C53
-0x5636 = 0x5D53
-0x5638 = 0x5F53
-0x5642 = 0x3D31
-0x564C = 0x3941
-0x564E = 0x5953
-0x5650 = 0x5A53
-0x565B = 0x7A33
-0x5664 = 0x6153
-0x5668 = 0x6F34
-0x566A = 0x6453
-0x566B = 0x6053
-0x566C = 0x6353
-0x5674 = 0x2E4A
-0x5678 = 0x5546
-0x567A = 0x3848
-0x5680 = 0x6653
-0x5686 = 0x6553
-0x5687 = 0x4533
-0x568A = 0x6753
-0x568F = 0x6A53
-0x5694 = 0x6953
-0x56A0 = 0x6853
-0x56A2 = 0x3947
-0x56A5 = 0x6B53
-0x56AE = 0x6C53
-0x56B4 = 0x6E53
-0x56B6 = 0x6D53
-0x56BC = 0x7053
-0x56C0 = 0x7353
-0x56C1 = 0x7153
-0x56C2 = 0x6F53
-0x56C3 = 0x7253
-0x56C8 = 0x7453
-0x56CE = 0x7553
-0x56D1 = 0x7653
-0x56D3 = 0x7753
-0x56D7 = 0x7853
-0x56D8 = 0x4551
-0x56DA = 0x7C3C
-0x56DB = 0x4D3B
-0x56DE = 0x7332
-0x56E0 = 0x7830
-0x56E3 = 0x4443
-0x56EE = 0x7953
-0x56F0 = 0x243A
-0x56F2 = 0x4F30
-0x56F3 = 0x5E3F
-0x56F9 = 0x7A53
-0x56FA = 0x4738
-0x56FD = 0x7139
-0x56FF = 0x7C53
-0x5700 = 0x7B53
-0x5703 = 0x604A
-0x5704 = 0x7D53
-0x5708 = 0x2154
-0x5709 = 0x7E53
-0x570B = 0x2254
-0x570D = 0x2354
-0x570F = 0x7737
-0x5712 = 0x6031
-0x5713 = 0x2454
-0x5716 = 0x2654
-0x5718 = 0x2554
-0x571C = 0x2854
-0x571F = 0x5A45
-0x5726 = 0x2954
-0x5727 = 0x3530
-0x5728 = 0x5F3A
-0x572D = 0x3D37
-0x5730 = 0x4F43
-0x5737 = 0x2A54
-0x5738 = 0x2B54
-0x573B = 0x2D54
-0x5740 = 0x2E54
-0x5742 = 0x643A
-0x5747 = 0x5136
-0x574A = 0x374B
-0x574E = 0x2C54
-0x574F = 0x2F54
-0x5750 = 0x413A
-0x5751 = 0x2339
-0x5761 = 0x3354
-0x5764 = 0x253A
-0x5766 = 0x3343
-0x5769 = 0x3054
-0x576A = 0x5A44
-0x577F = 0x3454
-0x5782 = 0x623F
-0x5788 = 0x3254
-0x5789 = 0x3554
-0x578B = 0x3F37
-0x5793 = 0x3654
-0x57A0 = 0x3754
-0x57A2 = 0x2439
-0x57A3 = 0x4033
-0x57A4 = 0x3954
-0x57AA = 0x3A54
-0x57B0 = 0x3B54
-0x57B3 = 0x3854
-0x57C0 = 0x3154
-0x57C3 = 0x3C54
-0x57C6 = 0x3D54
-0x57CB = 0x644B
-0x57CE = 0x6B3E
-0x57D2 = 0x3F54
-0x57D3 = 0x4054
-0x57D4 = 0x3E54
-0x57D6 = 0x4254
-0x57DC = 0x3847
-0x57DF = 0x6830
-0x57E0 = 0x5649
-0x57E3 = 0x4354
-0x57F4 = 0x7D3E
-0x57F7 = 0x393C
-0x57F9 = 0x5D47
-0x57FA = 0x7034
-0x57FC = 0x6B3A
-0x5800 = 0x594B
-0x5802 = 0x3246
-0x5805 = 0x7837
-0x5806 = 0x4F42
-0x580A = 0x4154
-0x580B = 0x4454
-0x5815 = 0x4442
-0x5819 = 0x4554
-0x581D = 0x4654
-0x5821 = 0x4854
-0x5824 = 0x6944
-0x582A = 0x2E34
-0x582F = 0x2174
-0x5830 = 0x6131
-0x5831 = 0x734A
-0x5834 = 0x6C3E
-0x5835 = 0x4845
-0x583A = 0x663A
-0x583D = 0x4E54
-0x5840 = 0x3D4A
-0x5841 = 0x5D4E
-0x584A = 0x7432
-0x584B = 0x4A54
-0x5851 = 0x3A41
-0x5852 = 0x4D54
-0x5854 = 0x6345
-0x5857 = 0x4945
-0x5858 = 0x6445
-0x5859 = 0x3948
-0x585A = 0x4D44
-0x585E = 0x493A
-0x5862 = 0x4954
-0x5869 = 0x7631
-0x586B = 0x3645
-0x5870 = 0x4B54
-0x5872 = 0x4754
-0x5875 = 0x503F
-0x5879 = 0x4F54
-0x587E = 0x4E3D
-0x5883 = 0x2D36
-0x5885 = 0x5054
-0x5893 = 0x684A
-0x5897 = 0x7D41
-0x589C = 0x4644
-0x589F = 0x5254
-0x58A8 = 0x4F4B
-0x58AB = 0x5354
-0x58AE = 0x5854
-0x58B3 = 0x2F4A
-0x58B8 = 0x5754
-0x58B9 = 0x5154
-0x58BB = 0x5654
-0x58BE = 0x263A
-0x58C1 = 0x494A
-0x58C5 = 0x5954
-0x58C7 = 0x4543
-0x58CA = 0x7532
-0x58CC = 0x6D3E
-0x58D1 = 0x5B54
-0x58D3 = 0x5A54
-0x58D5 = 0x6839
-0x58D7 = 0x5C54
-0x58D8 = 0x5E54
-0x58D9 = 0x5D54
-0x58DC = 0x6054
-0x58DE = 0x5554
-0x58DF = 0x6254
-0x58E4 = 0x6154
-0x58E5 = 0x5F54
-0x58EB = 0x4E3B
-0x58EC = 0x513F
-0x58EE = 0x5441
-0x58EF = 0x6354
-0x58F0 = 0x3C40
-0x58F1 = 0x6D30
-0x58F2 = 0x6447
-0x58F7 = 0x5B44
-0x58F9 = 0x6554
-0x58FA = 0x6454
-0x58FB = 0x6654
-0x58FC = 0x6754
-0x58FD = 0x6854
-0x5902 = 0x6954
-0x5909 = 0x514A
-0x590A = 0x6A54
-0x590F = 0x4632
-0x5910 = 0x6B54
-0x5915 = 0x3C4D
-0x5916 = 0x3033
-0x5918 = 0x4952
-0x5919 = 0x483D
-0x591A = 0x3F42
-0x591B = 0x6C54
-0x591C = 0x6B4C
-0x5922 = 0x344C
-0x5925 = 0x6E54
-0x5927 = 0x6742
-0x5929 = 0x3745
-0x592A = 0x4042
-0x592B = 0x5749
-0x592C = 0x6F54
-0x592D = 0x7054
-0x592E = 0x7B31
-0x5931 = 0x3A3C
-0x5932 = 0x7154
-0x5937 = 0x5030
-0x5938 = 0x7254
-0x593E = 0x7354
-0x5944 = 0x6231
-0x5947 = 0x7134
-0x5948 = 0x6046
-0x5949 = 0x744A
-0x594E = 0x7754
-0x594F = 0x5541
-0x5950 = 0x7654
-0x5951 = 0x4037
-0x5954 = 0x5B4B
-0x5955 = 0x7554
-0x5957 = 0x6545
-0x5958 = 0x7954
-0x595A = 0x7854
-0x5960 = 0x7B54
-0x5962 = 0x7A54
-0x5965 = 0x7C31
-0x5967 = 0x7C54
-0x5968 = 0x293E
-0x5969 = 0x7E54
-0x596A = 0x2543
-0x596C = 0x7D54
-0x596E = 0x334A
-0x5973 = 0x773D
-0x5974 = 0x5B45
-0x5978 = 0x2155
-0x597D = 0x2539
-0x5981 = 0x2255
-0x5982 = 0x2147
-0x5983 = 0x5E48
-0x5984 = 0x514C
-0x598A = 0x2547
-0x598D = 0x2B55
-0x5993 = 0x3835
-0x5996 = 0x454D
-0x5999 = 0x2F4C
-0x599B = 0x2C56
-0x599D = 0x2355
-0x59A3 = 0x2655
-0x59A5 = 0x4542
-0x59A8 = 0x384B
-0x59AC = 0x4A45
-0x59B2 = 0x2755
-0x59B9 = 0x654B
-0x59BB = 0x4A3A
-0x59BE = 0x2A3E
-0x59C6 = 0x2855
-0x59C9 = 0x503B
-0x59CB = 0x4F3B
-0x59D0 = 0x3930
-0x59D1 = 0x4838
-0x59D3 = 0x2B40
-0x59D4 = 0x5130
-0x59D9 = 0x2C55
-0x59DA = 0x2D55
-0x59DC = 0x2A55
-0x59E5 = 0x3831
-0x59E6 = 0x2F34
-0x59E8 = 0x2955
-0x59EA = 0x454C
-0x59EB = 0x3149
-0x59F6 = 0x2830
-0x59FB = 0x7930
-0x59FF = 0x513B
-0x5A01 = 0x5230
-0x5A03 = 0x2330
-0x5A09 = 0x3255
-0x5A11 = 0x3055
-0x5A18 = 0x3C4C
-0x5A1A = 0x3355
-0x5A1C = 0x3155
-0x5A1F = 0x2F55
-0x5A20 = 0x313F
-0x5A25 = 0x2E55
-0x5A29 = 0x5A4A
-0x5A2F = 0x6438
-0x5A35 = 0x3755
-0x5A36 = 0x3855
-0x5A3C = 0x2B3E
-0x5A40 = 0x3455
-0x5A41 = 0x2C4F
-0x5A46 = 0x4C47
-0x5A49 = 0x3655
-0x5A5A = 0x273A
-0x5A62 = 0x3955
-0x5A66 = 0x5849
-0x5A6A = 0x3A55
-0x5A6C = 0x3555
-0x5A7F = 0x3B4C
-0x5A92 = 0x5E47
-0x5A9A = 0x3B55
-0x5A9B = 0x3249
-0x5ABC = 0x3C55
-0x5ABD = 0x4055
-0x5ABE = 0x3D55
-0x5AC1 = 0x4732
-0x5AC2 = 0x3F55
-0x5AC9 = 0x3B3C
-0x5ACB = 0x3E55
-0x5ACC = 0x7937
-0x5AD0 = 0x4C55
-0x5AD6 = 0x4555
-0x5AD7 = 0x4255
-0x5AE1 = 0x6443
-0x5AE3 = 0x4155
-0x5AE6 = 0x4355
-0x5AE9 = 0x4455
-0x5AFA = 0x4655
-0x5AFB = 0x4755
-0x5B09 = 0x7234
-0x5B0B = 0x4955
-0x5B0C = 0x4855
-0x5B16 = 0x4A55
-0x5B22 = 0x6E3E
-0x5B2A = 0x4D55
-0x5B2C = 0x5C44
-0x5B30 = 0x4531
-0x5B32 = 0x4B55
-0x5B36 = 0x4E55
-0x5B3E = 0x4F55
-0x5B40 = 0x5255
-0x5B43 = 0x5055
-0x5B45 = 0x5155
-0x5B50 = 0x523B
-0x5B51 = 0x5355
-0x5B54 = 0x2639
-0x5B55 = 0x5455
-0x5B57 = 0x7A3B
-0x5B58 = 0x3842
-0x5B5B = 0x5655
-0x5B5C = 0x5A3B
-0x5B5D = 0x2739
-0x5B5F = 0x524C
-0x5B63 = 0x2835
-0x5B64 = 0x4938
-0x5B65 = 0x5755
-0x5B66 = 0x5833
-0x5B69 = 0x5855
-0x5B6B = 0x3942
-0x5B70 = 0x5955
-0x5B71 = 0x2356
-0x5B73 = 0x5A55
-0x5B75 = 0x5B55
-0x5B78 = 0x5C55
-0x5B7A = 0x5E55
-0x5B80 = 0x5F55
-0x5B83 = 0x6055
-0x5B85 = 0x7042
-0x5B87 = 0x2731
-0x5B88 = 0x693C
-0x5B89 = 0x4230
-0x5B8B = 0x5741
-0x5B8C = 0x3034
-0x5B8D = 0x353C
-0x5B8F = 0x2839
-0x5B95 = 0x6645
-0x5B97 = 0x213D
-0x5B98 = 0x3134
-0x5B99 = 0x6843
-0x5B9A = 0x6A44
-0x5B9B = 0x3830
-0x5B9C = 0x3935
-0x5B9D = 0x754A
-0x5B9F = 0x423C
-0x5BA2 = 0x5235
-0x5BA3 = 0x6B40
-0x5BA5 = 0x284D
-0x5BA6 = 0x6155
-0x5BAE = 0x5C35
-0x5BB0 = 0x4B3A
-0x5BB3 = 0x3233
-0x5BB4 = 0x6331
-0x5BB5 = 0x2C3E
-0x5BB6 = 0x4832
-0x5BB8 = 0x6255
-0x5BB9 = 0x464D
-0x5BBF = 0x493D
-0x5BC2 = 0x643C
-0x5BC3 = 0x6355
-0x5BC4 = 0x7334
-0x5BC5 = 0x5246
-0x5BC6 = 0x294C
-0x5BC7 = 0x6455
-0x5BC9 = 0x6555
-0x5BCC = 0x5949
-0x5BD0 = 0x6755
-0x5BD2 = 0x2834
-0x5BD3 = 0x7736
-0x5BD4 = 0x6655
-0x5BDB = 0x3234
-0x5BDD = 0x323F
-0x5BDE = 0x6B55
-0x5BDF = 0x213B
-0x5BE1 = 0x4932
-0x5BE2 = 0x6A55
-0x5BE4 = 0x6855
-0x5BE5 = 0x6C55
-0x5BE6 = 0x6955
-0x5BE7 = 0x2B47
-0x5BE8 = 0x4D5C
-0x5BE9 = 0x333F
-0x5BEB = 0x6D55
-0x5BEE = 0x404E
-0x5BF0 = 0x6E55
-0x5BF3 = 0x7055
-0x5BF5 = 0x7E43
-0x5BF6 = 0x6F55
-0x5BF8 = 0x2340
-0x5BFA = 0x7B3B
-0x5BFE = 0x5042
-0x5BFF = 0x773C
-0x5C01 = 0x7549
-0x5C02 = 0x6C40
-0x5C04 = 0x4D3C
-0x5C05 = 0x7155
-0x5C06 = 0x2D3E
-0x5C07 = 0x7255
-0x5C08 = 0x7355
-0x5C09 = 0x5330
-0x5C0A = 0x3A42
-0x5C0B = 0x523F
-0x5C0D = 0x7455
-0x5C0E = 0x3346
-0x5C0F = 0x2E3E
-0x5C11 = 0x2F3E
-0x5C13 = 0x7555
-0x5C16 = 0x6D40
-0x5C1A = 0x303E
-0x5C20 = 0x7655
-0x5C22 = 0x7755
-0x5C24 = 0x604C
-0x5C28 = 0x7855
-0x5C2D = 0x4636
-0x5C31 = 0x223D
-0x5C38 = 0x7955
-0x5C39 = 0x7A55
-0x5C3A = 0x5C3C
-0x5C3B = 0x2C3F
-0x5C3C = 0x7446
-0x5C3D = 0x543F
-0x5C3E = 0x7848
-0x5C3F = 0x2247
-0x5C40 = 0x4936
-0x5C41 = 0x7B55
-0x5C45 = 0x6F35
-0x5C46 = 0x7C55
-0x5C48 = 0x7E36
-0x5C4A = 0x4F46
-0x5C4B = 0x3032
-0x5C4D = 0x533B
-0x5C4E = 0x7D55
-0x5C4F = 0x2256
-0x5C50 = 0x2156
-0x5C51 = 0x7D36
-0x5C53 = 0x7E55
-0x5C55 = 0x3845
-0x5C5E = 0x3042
-0x5C60 = 0x4B45
-0x5C61 = 0x483C
-0x5C64 = 0x5841
-0x5C65 = 0x7A4D
-0x5C6C = 0x2456
-0x5C6E = 0x2556
-0x5C6F = 0x5646
-0x5C71 = 0x333B
-0x5C76 = 0x2756
-0x5C79 = 0x2856
-0x5C8C = 0x2956
-0x5C90 = 0x7434
-0x5C91 = 0x2A56
-0x5C94 = 0x2B56
-0x5CA1 = 0x2C32
-0x5CA8 = 0x3B41
-0x5CA9 = 0x6434
-0x5CAB = 0x2D56
-0x5CAC = 0x284C
-0x5CB1 = 0x5242
-0x5CB3 = 0x5933
-0x5CB6 = 0x2F56
-0x5CB7 = 0x3156
-0x5CB8 = 0x5F34
-0x5CBB = 0x2E56
-0x5CBC = 0x3056
-0x5CBE = 0x3356
-0x5CC5 = 0x3256
-0x5CC7 = 0x3456
-0x5CD9 = 0x3556
-0x5CE0 = 0x3D46
-0x5CE1 = 0x2E36
-0x5CE8 = 0x6532
-0x5CE9 = 0x3656
-0x5CEA = 0x3B56
-0x5CED = 0x3956
-0x5CEF = 0x774A
-0x5CF0 = 0x764A
-0x5CF6 = 0x6745
-0x5CFA = 0x3856
-0x5CFB = 0x543D
-0x5CFD = 0x3756
-0x5D07 = 0x723F
-0x5D0B = 0x3C56
-0x5D0E = 0x6A3A
-0x5D11 = 0x4256
-0x5D14 = 0x4356
-0x5D15 = 0x3D56
-0x5D17 = 0x3E56
-0x5D18 = 0x4756
-0x5D19 = 0x4656
-0x5D1A = 0x4556
-0x5D1B = 0x4156
-0x5D1F = 0x4056
-0x5D22 = 0x4456
-0x5D29 = 0x784A
-0x5D4B = 0x4B56
-0x5D4C = 0x4856
-0x5D4E = 0x4A56
-0x5D50 = 0x724D
-0x5D52 = 0x4956
-0x5D5C = 0x3F56
-0x5D69 = 0x733F
-0x5D6C = 0x4C56
-0x5D6F = 0x373A
-0x5D73 = 0x4D56
-0x5D76 = 0x4E56
-0x5D82 = 0x5156
-0x5D84 = 0x5056
-0x5D87 = 0x4F56
-0x5D8B = 0x6845
-0x5D8C = 0x3A56
-0x5D90 = 0x5756
-0x5D9D = 0x5356
-0x5DA2 = 0x5256
-0x5DAC = 0x5456
-0x5DAE = 0x5556
-0x5DB7 = 0x5856
-0x5DBA = 0x664E
-0x5DBC = 0x5956
-0x5DC9 = 0x5A56
-0x5DCC = 0x6034
-0x5DCD = 0x5B56
-0x5DD2 = 0x5D56
-0x5DD3 = 0x5C56
-0x5DD6 = 0x5E56
-0x5DDB = 0x5F56
-0x5DDD = 0x6E40
-0x5DDE = 0x233D
-0x5DE1 = 0x643D
-0x5DE3 = 0x6341
-0x5DE5 = 0x2939
-0x5DE6 = 0x383A
-0x5DE7 = 0x2A39
-0x5DE8 = 0x7035
-0x5DEB = 0x6056
-0x5DEE = 0x393A
-0x5DF1 = 0x4A38
-0x5DF2 = 0x6156
-0x5DF3 = 0x264C
-0x5DF4 = 0x4347
-0x5DF5 = 0x6256
-0x5DF7 = 0x2B39
-0x5DFB = 0x2C34
-0x5DFD = 0x2743
-0x5DFE = 0x5236
-0x5E02 = 0x543B
-0x5E03 = 0x5B49
-0x5E06 = 0x4148
-0x5E0B = 0x6356
-0x5E0C = 0x7534
-0x5E11 = 0x6656
-0x5E16 = 0x2144
-0x5E19 = 0x6556
-0x5E1A = 0x6456
-0x5E1B = 0x6756
-0x5E1D = 0x6B44
-0x5E25 = 0x633F
-0x5E2B = 0x553B
-0x5E2D = 0x4A40
-0x5E2F = 0x5342
-0x5E30 = 0x2235
-0x5E33 = 0x2244
-0x5E36 = 0x6856
-0x5E37 = 0x6956
-0x5E38 = 0x6F3E
-0x5E3D = 0x394B
-0x5E40 = 0x6C56
-0x5E43 = 0x6B56
-0x5E44 = 0x6A56
-0x5E45 = 0x7D49
-0x5E47 = 0x7356
-0x5E4C = 0x5A4B
-0x5E4E = 0x6D56
-0x5E54 = 0x6F56
-0x5E55 = 0x6B4B
-0x5E57 = 0x6E56
-0x5E5F = 0x7056
-0x5E61 = 0x2848
-0x5E62 = 0x7156
-0x5E63 = 0x3E4A
-0x5E64 = 0x7256
-0x5E72 = 0x3334
-0x5E73 = 0x3F4A
-0x5E74 = 0x2F47
-0x5E75 = 0x7456
-0x5E76 = 0x7556
-0x5E78 = 0x2C39
-0x5E7A = 0x7656
-0x5E7C = 0x444D
-0x5E7D = 0x294D
-0x5E7E = 0x7634
-0x5E7F = 0x7856
-0x5E81 = 0x2344
-0x5E83 = 0x2D39
-0x5E84 = 0x313E
-0x5E87 = 0x5F48
-0x5E8A = 0x323E
-0x5E8F = 0x783D
-0x5E95 = 0x6C44
-0x5E96 = 0x794A
-0x5E97 = 0x3945
-0x5E9A = 0x2E39
-0x5E9C = 0x5C49
-0x5EA0 = 0x7956
-0x5EA6 = 0x5945
-0x5EA7 = 0x423A
-0x5EAB = 0x4B38
-0x5EAD = 0x6D44
-0x5EB5 = 0x4330
-0x5EB6 = 0x6E3D
-0x5EB7 = 0x2F39
-0x5EB8 = 0x474D
-0x5EC1 = 0x7A56
-0x5EC2 = 0x7B56
-0x5EC3 = 0x5147
-0x5EC8 = 0x7C56
-0x5EC9 = 0x774E
-0x5ECA = 0x2D4F
-0x5ECF = 0x7E56
-0x5ED0 = 0x7D56
-0x5ED3 = 0x4733
-0x5ED6 = 0x2157
-0x5EDA = 0x2457
-0x5EDB = 0x2557
-0x5EDD = 0x2357
-0x5EDF = 0x4049
-0x5EE0 = 0x333E
-0x5EE1 = 0x2757
-0x5EE2 = 0x2657
-0x5EE3 = 0x2257
-0x5EE8 = 0x2857
-0x5EE9 = 0x2957
-0x5EEC = 0x2A57
-0x5EF0 = 0x2D57
-0x5EF1 = 0x2B57
-0x5EF3 = 0x2C57
-0x5EF4 = 0x2E57
-0x5EF6 = 0x6431
-0x5EF7 = 0x6E44
-0x5EF8 = 0x2F57
-0x5EFA = 0x7A37
-0x5EFB = 0x7632
-0x5EFC = 0x3647
-0x5EFE = 0x3057
-0x5EFF = 0x7B46
-0x5F01 = 0x5B4A
-0x5F03 = 0x3157
-0x5F04 = 0x2E4F
-0x5F09 = 0x3257
-0x5F0A = 0x404A
-0x5F0B = 0x3557
-0x5F0C = 0x2150
-0x5F0D = 0x3150
-0x5F0F = 0x303C
-0x5F10 = 0x7546
-0x5F11 = 0x3657
-0x5F13 = 0x5D35
-0x5F14 = 0x2444
-0x5F15 = 0x7A30
-0x5F16 = 0x3757
-0x5F17 = 0x264A
-0x5F18 = 0x3039
-0x5F1B = 0x5043
-0x5F1F = 0x6F44
-0x5F25 = 0x6F4C
-0x5F26 = 0x3938
-0x5F27 = 0x4C38
-0x5F29 = 0x3857
-0x5F2D = 0x3957
-0x5F2F = 0x3F57
-0x5F31 = 0x653C
-0x5F35 = 0x2544
-0x5F37 = 0x2F36
-0x5F38 = 0x3A57
-0x5F3C = 0x2B49
-0x5F3E = 0x4643
-0x5F41 = 0x3B57
-0x5F48 = 0x3C57
-0x5F4A = 0x3036
-0x5F4C = 0x3D57
-0x5F4E = 0x3E57
-0x5F51 = 0x4057
-0x5F53 = 0x7645
-0x5F56 = 0x4157
-0x5F57 = 0x4257
-0x5F59 = 0x4357
-0x5F5C = 0x3457
-0x5F5D = 0x3357
-0x5F61 = 0x4457
-0x5F62 = 0x4137
-0x5F66 = 0x2749
-0x5F69 = 0x4C3A
-0x5F6A = 0x3749
-0x5F6B = 0x2644
-0x5F6C = 0x4B49
-0x5F6D = 0x4557
-0x5F70 = 0x343E
-0x5F71 = 0x4631
-0x5F73 = 0x4657
-0x5F77 = 0x4757
-0x5F79 = 0x724C
-0x5F7C = 0x6048
-0x5F7F = 0x4A57
-0x5F80 = 0x7D31
-0x5F81 = 0x2C40
-0x5F82 = 0x4957
-0x5F83 = 0x4857
-0x5F84 = 0x4237
-0x5F85 = 0x5442
-0x5F87 = 0x4E57
-0x5F88 = 0x4C57
-0x5F8A = 0x4B57
-0x5F8B = 0x274E
-0x5F8C = 0x6538
-0x5F90 = 0x793D
-0x5F91 = 0x4D57
-0x5F92 = 0x4C45
-0x5F93 = 0x3E3D
-0x5F97 = 0x4046
-0x5F98 = 0x5157
-0x5F99 = 0x5057
-0x5F9E = 0x4F57
-0x5FA0 = 0x5257
-0x5FA1 = 0x6638
-0x5FA8 = 0x5357
-0x5FA9 = 0x7C49
-0x5FAA = 0x5B3D
-0x5FAD = 0x5457
-0x5FAE = 0x7948
-0x5FB3 = 0x4146
-0x5FB4 = 0x2744
-0x5FB9 = 0x3045
-0x5FBC = 0x5557
-0x5FBD = 0x2B35
-0x5FC3 = 0x343F
-0x5FC5 = 0x2C49
-0x5FCC = 0x7734
-0x5FCD = 0x2647
-0x5FD6 = 0x5657
-0x5FD7 = 0x563B
-0x5FD8 = 0x3A4B
-0x5FD9 = 0x3B4B
-0x5FDC = 0x7E31
-0x5FDD = 0x5B57
-0x5FE0 = 0x6943
-0x5FE4 = 0x5857
-0x5FEB = 0x7732
-0x5FF0 = 0x2D58
-0x5FF1 = 0x5A57
-0x5FF5 = 0x3047
-0x5FF8 = 0x5957
-0x5FFD = 0x7A39
-0x5FFF = 0x5D57
-0x600E = 0x6357
-0x600F = 0x6957
-0x6010 = 0x6157
-0x6012 = 0x5C45
-0x6015 = 0x6657
-0x6016 = 0x5D49
-0x6019 = 0x6057
-0x601B = 0x6557
-0x601C = 0x674E
-0x601D = 0x573B
-0x6020 = 0x5542
-0x6021 = 0x5E57
-0x6025 = 0x5E35
-0x6026 = 0x6857
-0x6027 = 0x2D40
-0x6028 = 0x6531
-0x6029 = 0x6257
-0x602A = 0x7832
-0x602B = 0x6757
-0x602F = 0x3136
-0x6031 = 0x6457
-0x603A = 0x6A57
-0x6041 = 0x6C57
-0x6042 = 0x7657
-0x6043 = 0x7457
-0x6046 = 0x7157
-0x604A = 0x7057
-0x604B = 0x784E
-0x604D = 0x7257
-0x6050 = 0x3236
-0x6052 = 0x3139
-0x6055 = 0x7A3D
-0x6059 = 0x7957
-0x605A = 0x6B57
-0x605F = 0x6F57
-0x6060 = 0x5F57
-0x6062 = 0x7A32
-0x6063 = 0x7357
-0x6064 = 0x7557
-0x6065 = 0x5143
-0x6068 = 0x283A
-0x6069 = 0x3832
-0x606A = 0x6D57
-0x606B = 0x7857
-0x606C = 0x7757
-0x606D = 0x3336
-0x606F = 0x2942
-0x6070 = 0x6633
-0x6075 = 0x4337
-0x6077 = 0x6E57
-0x6081 = 0x7A57
-0x6083 = 0x7D57
-0x6084 = 0x2158
-0x6089 = 0x3D3C
-0x608B = 0x2758
-0x608C = 0x7044
-0x608D = 0x7B57
-0x6092 = 0x2558
-0x6094 = 0x7932
-0x6096 = 0x2358
-0x6097 = 0x2458
-0x609A = 0x7E57
-0x609B = 0x2258
-0x609F = 0x6738
-0x60A0 = 0x2A4D
-0x60A3 = 0x3534
-0x60A6 = 0x5931
-0x60A7 = 0x2658
-0x60A9 = 0x3A47
-0x60AA = 0x2D30
-0x60B2 = 0x6148
-0x60B3 = 0x5C57
-0x60B4 = 0x2C58
-0x60B5 = 0x3058
-0x60B6 = 0x654C
-0x60B8 = 0x2958
-0x60BC = 0x6945
-0x60BD = 0x2E58
-0x60C5 = 0x703E
-0x60C6 = 0x2F58
-0x60C7 = 0x5746
-0x60D1 = 0x474F
-0x60D3 = 0x2B58
-0x60D8 = 0x3158
-0x60DA = 0x7B39
-0x60DC = 0x4B40
-0x60DF = 0x5430
-0x60E0 = 0x2A58
-0x60E1 = 0x2858
-0x60E3 = 0x5A41
-0x60E7 = 0x7C57
-0x60E8 = 0x343B
-0x60F0 = 0x4642
-0x60F1 = 0x3D58
-0x60F3 = 0x5B41
-0x60F4 = 0x3858
-0x60F6 = 0x3558
-0x60F7 = 0x3658
-0x60F9 = 0x663C
-0x60FA = 0x3958
-0x60FB = 0x3C58
-0x6100 = 0x3758
-0x6101 = 0x253D
-0x6103 = 0x3A58
-0x6106 = 0x3458
-0x6108 = 0x7C4C
-0x6109 = 0x7B4C
-0x610D = 0x3E58
-0x610E = 0x3F58
-0x610F = 0x5530
-0x6115 = 0x3358
-0x611A = 0x7236
-0x611B = 0x2630
-0x611F = 0x3634
-0x6121 = 0x3B58
-0x6127 = 0x4358
-0x6128 = 0x4258
-0x612C = 0x4758
-0x6134 = 0x4858
-0x613C = 0x4658
-0x613D = 0x4958
-0x613E = 0x4158
-0x613F = 0x4558
-0x6142 = 0x4A58
-0x6144 = 0x4B58
-0x6147 = 0x4058
-0x6148 = 0x7C3B
-0x614A = 0x4458
-0x614B = 0x5642
-0x614C = 0x3239
-0x614D = 0x3258
-0x614E = 0x353F
-0x6155 = 0x694A
-0x6158 = 0x4E58
-0x6159 = 0x4F58
-0x615A = 0x5058
-0x615D = 0x5758
-0x615F = 0x5658
-0x6162 = 0x7D4B
-0x6163 = 0x3734
-0x6165 = 0x5458
-0x6167 = 0x4537
-0x6168 = 0x3433
-0x616B = 0x5158
-0x616E = 0x384E
-0x616F = 0x5358
-0x6170 = 0x5630
-0x6171 = 0x5558
-0x6173 = 0x4C58
-0x6174 = 0x5258
-0x6175 = 0x5958
-0x6176 = 0x4437
-0x6177 = 0x4D58
-0x617E = 0x5D4D
-0x6182 = 0x2B4D
-0x6187 = 0x5C58
-0x618A = 0x6058
-0x618E = 0x7E41
-0x6190 = 0x794E
-0x6191 = 0x6158
-0x6194 = 0x5E58
-0x6196 = 0x5B58
-0x6199 = 0x5A58
-0x619A = 0x5F58
-0x61A4 = 0x304A
-0x61A7 = 0x3446
-0x61A9 = 0x4637
-0x61AB = 0x6258
-0x61AC = 0x5D58
-0x61AE = 0x6358
-0x61B2 = 0x7B37
-0x61B6 = 0x3132
-0x61BA = 0x6B58
-0x61BE = 0x3834
-0x61C3 = 0x6958
-0x61C6 = 0x6A58
-0x61C7 = 0x293A
-0x61C8 = 0x6858
-0x61C9 = 0x6658
-0x61CA = 0x6558
-0x61CB = 0x6C58
-0x61CC = 0x6458
-0x61CD = 0x6E58
-0x61D0 = 0x7B32
-0x61E3 = 0x7058
-0x61E6 = 0x6F58
-0x61F2 = 0x2844
-0x61F4 = 0x7358
-0x61F6 = 0x7158
-0x61F7 = 0x6758
-0x61F8 = 0x7C37
-0x61FA = 0x7258
-0x61FC = 0x7658
-0x61FD = 0x7558
-0x61FE = 0x7758
-0x61FF = 0x7458
-0x6200 = 0x7858
-0x6208 = 0x7958
-0x6209 = 0x7A58
-0x620A = 0x6A4A
-0x620C = 0x7C58
-0x620D = 0x7B58
-0x620E = 0x3F3D
-0x6210 = 0x2E40
-0x6211 = 0x6632
-0x6212 = 0x7C32
-0x6214 = 0x7D58
-0x6216 = 0x3F30
-0x621A = 0x4C40
-0x621B = 0x7E58
-0x621D = 0x436C
-0x621E = 0x2159
-0x621F = 0x6137
-0x6221 = 0x2259
-0x6226 = 0x6F40
-0x622A = 0x2359
-0x622E = 0x2459
-0x622F = 0x3A35
-0x6230 = 0x2559
-0x6232 = 0x2659
-0x6233 = 0x2759
-0x6234 = 0x5742
-0x6238 = 0x4D38
-0x623B = 0x614C
-0x623F = 0x3C4B
-0x6240 = 0x6A3D
-0x6241 = 0x2859
-0x6247 = 0x7040
-0x6248 = 0x3D6E
-0x6249 = 0x6248
-0x624B = 0x6A3C
-0x624D = 0x4D3A
-0x624E = 0x2959
-0x6253 = 0x4742
-0x6255 = 0x274A
-0x6258 = 0x7142
-0x625B = 0x2C59
-0x625E = 0x2A59
-0x6260 = 0x2D59
-0x6263 = 0x2B59
-0x6268 = 0x2E59
-0x626E = 0x314A
-0x6271 = 0x3730
-0x6276 = 0x5E49
-0x6279 = 0x6348
-0x627C = 0x2F59
-0x627E = 0x3259
-0x627F = 0x353E
-0x6280 = 0x3B35
-0x6282 = 0x3059
-0x6283 = 0x3759
-0x6284 = 0x363E
-0x6289 = 0x3159
-0x628A = 0x4447
-0x6291 = 0x5E4D
-0x6292 = 0x3359
-0x6293 = 0x3459
-0x6294 = 0x3859
-0x6295 = 0x6A45
-0x6296 = 0x3559
-0x6297 = 0x3339
-0x6298 = 0x5E40
-0x629B = 0x4659
-0x629C = 0x3448
-0x629E = 0x7242
-0x62AB = 0x6448
-0x62AC = 0x2D5A
-0x62B1 = 0x7A4A
-0x62B5 = 0x7144
-0x62B9 = 0x754B
-0x62BB = 0x3B59
-0x62BC = 0x2132
-0x62BD = 0x6A43
-0x62C2 = 0x4459
-0x62C5 = 0x3443
-0x62C6 = 0x3E59
-0x62C7 = 0x4559
-0x62C8 = 0x4059
-0x62C9 = 0x4759
-0x62CA = 0x4359
-0x62CC = 0x4259
-0x62CD = 0x6F47
-0x62CF = 0x3C59
-0x62D0 = 0x7D32
-0x62D1 = 0x3A59
-0x62D2 = 0x7135
-0x62D3 = 0x7342
-0x62D4 = 0x3659
-0x62D7 = 0x3959
-0x62D8 = 0x3439
-0x62D9 = 0x5B40
-0x62DB = 0x373E
-0x62DC = 0x4159
-0x62DD = 0x5247
-0x62E0 = 0x7235
-0x62E1 = 0x4833
-0x62EC = 0x6733
-0x62ED = 0x213F
-0x62EE = 0x4959
-0x62EF = 0x4E59
-0x62F1 = 0x4A59
-0x62F3 = 0x7D37
-0x62F5 = 0x4F59
-0x62F6 = 0x223B
-0x62F7 = 0x6939
-0x62FE = 0x263D
-0x62FF = 0x3D59
-0x6301 = 0x7D3B
-0x6302 = 0x4C59
-0x6307 = 0x583B
-0x6308 = 0x4D59
-0x6309 = 0x4430
-0x630C = 0x4859
-0x6311 = 0x2944
-0x6319 = 0x7335
-0x631F = 0x3436
-0x6327 = 0x4B59
-0x6328 = 0x2730
-0x632B = 0x433A
-0x632F = 0x363F
-0x633A = 0x7244
-0x633D = 0x5448
-0x633E = 0x5159
-0x633F = 0x5E41
-0x6349 = 0x2A42
-0x634C = 0x2B3B
-0x634D = 0x5259
-0x634F = 0x5459
-0x6350 = 0x5059
-0x6355 = 0x614A
-0x6357 = 0x3D44
-0x635C = 0x5C41
-0x6367 = 0x7B4A
-0x6368 = 0x4E3C
-0x6369 = 0x6059
-0x636B = 0x5F59
-0x636E = 0x783F
-0x6372 = 0x7E37
-0x6377 = 0x393E
-0x637A = 0x6846
-0x637B = 0x3147
-0x6380 = 0x5759
-0x6383 = 0x5D41
-0x6388 = 0x783C
-0x6389 = 0x5C59
-0x638C = 0x383E
-0x638E = 0x5659
-0x638F = 0x5B59
-0x6392 = 0x5347
-0x6396 = 0x5559
-0x6398 = 0x2137
-0x639B = 0x5D33
-0x639F = 0x5D59
-0x63A0 = 0x2B4E
-0x63A1 = 0x4E3A
-0x63A2 = 0x3543
-0x63A3 = 0x5A59
-0x63A5 = 0x5C40
-0x63A7 = 0x3539
-0x63A8 = 0x643F
-0x63A9 = 0x6631
-0x63AA = 0x3C41
-0x63AB = 0x5859
-0x63AC = 0x4535
-0x63B2 = 0x4737
-0x63B4 = 0x4F44
-0x63B5 = 0x5E59
-0x63BB = 0x5F41
-0x63BE = 0x6159
-0x63C0 = 0x6359
-0x63C3 = 0x3742
-0x63C4 = 0x6959
-0x63C6 = 0x6459
-0x63C9 = 0x6659
-0x63CF = 0x4149
-0x63D0 = 0x7344
-0x63D2 = 0x6759
-0x63D6 = 0x2C4D
-0x63DA = 0x484D
-0x63DB = 0x3934
-0x63E1 = 0x2E30
-0x63E3 = 0x6559
-0x63E9 = 0x6259
-0x63EE = 0x7834
-0x63F4 = 0x6731
-0x63F6 = 0x6859
-0x63FA = 0x494D
-0x6406 = 0x6C59
-0x640D = 0x3B42
-0x640F = 0x7359
-0x6413 = 0x6D59
-0x6416 = 0x6A59
-0x6417 = 0x7159
-0x641C = 0x5359
-0x6426 = 0x6E59
-0x6428 = 0x7259
-0x642C = 0x4248
-0x642D = 0x6B45
-0x6434 = 0x6B59
-0x6436 = 0x6F59
-0x643A = 0x4837
-0x643E = 0x713A
-0x6442 = 0x5D40
-0x644E = 0x7759
-0x6458 = 0x2645
-0x6467 = 0x7459
-0x6469 = 0x604B
-0x646F = 0x7559
-0x6476 = 0x7659
-0x6478 = 0x4E4C
-0x647A = 0x2240
-0x6483 = 0x6237
-0x6488 = 0x7D59
-0x6492 = 0x353B
-0x6493 = 0x7A59
-0x6495 = 0x7959
-0x649A = 0x3247
-0x649E = 0x3546
-0x64A4 = 0x3145
-0x64A5 = 0x7B59
-0x64A9 = 0x7C59
-0x64AB = 0x6F49
-0x64AD = 0x4547
-0x64AE = 0x233B
-0x64B0 = 0x7140
-0x64B2 = 0x504B
-0x64B9 = 0x4933
-0x64BB = 0x255A
-0x64BC = 0x7E59
-0x64C1 = 0x4A4D
-0x64C2 = 0x275A
-0x64C5 = 0x235A
-0x64C7 = 0x245A
-0x64CD = 0x6041
-0x64D2 = 0x225A
-0x64D4 = 0x3F59
-0x64D8 = 0x265A
-0x64DA = 0x215A
-0x64E0 = 0x2B5A
-0x64E1 = 0x2C5A
-0x64E2 = 0x2745
-0x64E3 = 0x2E5A
-0x64E6 = 0x243B
-0x64E7 = 0x295A
-0x64EC = 0x3C35
-0x64EF = 0x2F5A
-0x64F1 = 0x285A
-0x64F2 = 0x335A
-0x64F4 = 0x325A
-0x64F6 = 0x315A
-0x64FA = 0x345A
-0x64FD = 0x365A
-0x64FE = 0x713E
-0x6500 = 0x355A
-0x6505 = 0x395A
-0x6518 = 0x375A
-0x651C = 0x385A
-0x651D = 0x7059
-0x6523 = 0x3B5A
-0x6524 = 0x3A5A
-0x652A = 0x7859
-0x652B = 0x3C5A
-0x652C = 0x305A
-0x652F = 0x593B
-0x6534 = 0x3D5A
-0x6535 = 0x3E5A
-0x6536 = 0x405A
-0x6537 = 0x3F5A
-0x6538 = 0x415A
-0x6539 = 0x7E32
-0x653B = 0x3639
-0x653E = 0x7C4A
-0x653F = 0x2F40
-0x6545 = 0x4E38
-0x6548 = 0x435A
-0x654D = 0x465A
-0x654F = 0x5249
-0x6551 = 0x5F35
-0x6555 = 0x455A
-0x6556 = 0x445A
-0x6557 = 0x5447
-0x6558 = 0x475A
-0x6559 = 0x3536
-0x655D = 0x495A
-0x655E = 0x485A
-0x6562 = 0x3A34
-0x6563 = 0x363B
-0x6566 = 0x5846
-0x656C = 0x4937
-0x6570 = 0x743F
-0x6572 = 0x4A5A
-0x6574 = 0x3040
-0x6575 = 0x2845
-0x6577 = 0x5F49
-0x6578 = 0x4B5A
-0x6582 = 0x4C5A
-0x6583 = 0x4D5A
-0x6587 = 0x384A
-0x6588 = 0x5D55
-0x6589 = 0x4640
-0x658C = 0x4C49
-0x658E = 0x583A
-0x6590 = 0x6548
-0x6591 = 0x4348
-0x6597 = 0x4D45
-0x6599 = 0x414E
-0x659B = 0x4F5A
-0x659C = 0x503C
-0x659F = 0x505A
-0x65A1 = 0x3630
-0x65A4 = 0x5436
-0x65A5 = 0x4D40
-0x65A7 = 0x6049
-0x65AB = 0x515A
-0x65AC = 0x423B
-0x65AD = 0x4743
-0x65AF = 0x5B3B
-0x65B0 = 0x373F
-0x65B7 = 0x525A
-0x65B9 = 0x7D4A
-0x65BC = 0x7731
-0x65BD = 0x5C3B
-0x65C1 = 0x555A
-0x65C3 = 0x535A
-0x65C4 = 0x565A
-0x65C5 = 0x394E
-0x65C6 = 0x545A
-0x65CB = 0x7B40
-0x65CC = 0x575A
-0x65CF = 0x3242
-0x65D2 = 0x585A
-0x65D7 = 0x7A34
-0x65DB = 0x595A
-0x65E0 = 0x5B5A
-0x65E1 = 0x5C5A
-0x65E2 = 0x7B34
-0x65E5 = 0x7C46
-0x65E6 = 0x3643
-0x65E7 = 0x6C35
-0x65E8 = 0x5D3B
-0x65E9 = 0x6141
-0x65EC = 0x5C3D
-0x65F1 = 0x5D5A
-0x65FA = 0x2232
-0x65FB = 0x615A
-0x6602 = 0x3739
-0x6603 = 0x605A
-0x6606 = 0x2B3A
-0x6607 = 0x3A3E
-0x660A = 0x5F5A
-0x660C = 0x3B3E
-0x660E = 0x404C
-0x660F = 0x2A3A
-0x6613 = 0x5730
-0x6614 = 0x4E40
-0x661C = 0x665A
-0x661F = 0x3140
-0x6620 = 0x4731
-0x6625 = 0x553D
-0x6627 = 0x664B
-0x6628 = 0x723A
-0x662D = 0x3C3E
-0x662F = 0x2740
-0x6634 = 0x655A
-0x6635 = 0x635A
-0x6636 = 0x645A
-0x663C = 0x6B43
-0x663F = 0x265B
-0x6641 = 0x6A5A
-0x6642 = 0x7E3B
-0x6643 = 0x3839
-0x6644 = 0x685A
-0x6649 = 0x695A
-0x664B = 0x383F
-0x664F = 0x675A
-0x6652 = 0x2F3B
-0x665D = 0x6C5A
-0x665E = 0x6B5A
-0x665F = 0x705A
-0x6662 = 0x715A
-0x6664 = 0x6D5A
-0x6666 = 0x2233
-0x6667 = 0x6E5A
-0x6668 = 0x6F5A
-0x6669 = 0x5548
-0x666E = 0x6149
-0x666F = 0x4A37
-0x6670 = 0x725A
-0x6674 = 0x3240
-0x6676 = 0x3D3E
-0x667A = 0x5243
-0x6681 = 0x4736
-0x6683 = 0x735A
-0x6684 = 0x775A
-0x6687 = 0x4B32
-0x6688 = 0x745A
-0x6689 = 0x765A
-0x668E = 0x755A
-0x6691 = 0x6B3D
-0x6696 = 0x4843
-0x6697 = 0x4530
-0x6698 = 0x785A
-0x669D = 0x795A
-0x66A2 = 0x2A44
-0x66A6 = 0x714E
-0x66AB = 0x433B
-0x66AE = 0x6B4A
-0x66B4 = 0x3D4B
-0x66B8 = 0x225B
-0x66B9 = 0x7B5A
-0x66BC = 0x7E5A
-0x66BE = 0x7D5A
-0x66C1 = 0x7A5A
-0x66C4 = 0x215B
-0x66C7 = 0x5E46
-0x66C9 = 0x7C5A
-0x66D6 = 0x235B
-0x66D9 = 0x6C3D
-0x66DA = 0x245B
-0x66DC = 0x4B4D
-0x66DD = 0x7847
-0x66E0 = 0x255B
-0x66E6 = 0x275B
-0x66E9 = 0x285B
-0x66F0 = 0x295B
-0x66F2 = 0x4A36
-0x66F3 = 0x4831
-0x66F5 = 0x2A5B
-0x66F7 = 0x2B5B
-0x66F8 = 0x713D
-0x66F9 = 0x6241
-0x66FC = 0x5852
-0x66FD = 0x3E41
-0x66FE = 0x3D41
-0x66FF = 0x5842
-0x6700 = 0x473A
-0x6703 = 0x7250
-0x6708 = 0x6E37
-0x6709 = 0x2D4D
-0x670B = 0x7E4A
-0x670D = 0x7E49
-0x670F = 0x2C5B
-0x6714 = 0x733A
-0x6715 = 0x3F44
-0x6716 = 0x2D5B
-0x6717 = 0x2F4F
-0x671B = 0x3E4B
-0x671D = 0x2B44
-0x671E = 0x2E5B
-0x671F = 0x7C34
-0x6726 = 0x2F5B
-0x6727 = 0x305B
-0x6728 = 0x5A4C
-0x672A = 0x244C
-0x672B = 0x764B
-0x672C = 0x5C4B
-0x672D = 0x253B
-0x672E = 0x325B
-0x6731 = 0x6B3C
-0x6734 = 0x514B
-0x6736 = 0x345B
-0x6737 = 0x375B
-0x6738 = 0x365B
-0x673A = 0x7934
-0x673D = 0x6035
-0x673F = 0x335B
-0x6741 = 0x355B
-0x6746 = 0x385B
-0x6749 = 0x793F
-0x674E = 0x7B4D
-0x674F = 0x4930
-0x6750 = 0x603A
-0x6751 = 0x3C42
-0x6753 = 0x5D3C
-0x6756 = 0x733E
-0x6759 = 0x3B5B
-0x675C = 0x4E45
-0x675E = 0x395B
-0x675F = 0x2B42
-0x6760 = 0x3A5B
-0x6761 = 0x723E
-0x6762 = 0x5D4C
-0x6763 = 0x3C5B
-0x6764 = 0x3D5B
-0x6765 = 0x684D
-0x676A = 0x425B
-0x676D = 0x3A39
-0x676F = 0x5547
-0x6770 = 0x3F5B
-0x6771 = 0x6C45
-0x6772 = 0x5E5A
-0x6773 = 0x625A
-0x6775 = 0x4F35
-0x677C = 0x415B
-0x677F = 0x4448
-0x6785 = 0x475B
-0x6787 = 0x7A48
-0x6789 = 0x3E5B
-0x678B = 0x445B
-0x678C = 0x435B
-0x6790 = 0x4F40
-0x6795 = 0x6D4B
-0x6797 = 0x534E
-0x679A = 0x674B
-0x679C = 0x4C32
-0x679D = 0x5E3B
-0x67A0 = 0x484F
-0x67A1 = 0x465B
-0x67A2 = 0x753F
-0x67A6 = 0x455B
-0x67A9 = 0x405B
-0x67AF = 0x4F38
-0x67B3 = 0x4C5B
-0x67B4 = 0x4A5B
-0x67B6 = 0x4D32
-0x67B7 = 0x485B
-0x67B8 = 0x4E5B
-0x67B9 = 0x545B
-0x67C1 = 0x4842
-0x67C4 = 0x414A
-0x67C6 = 0x565B
-0x67CA = 0x2249
-0x67CE = 0x555B
-0x67CF = 0x7047
-0x67D0 = 0x3F4B
-0x67D1 = 0x3B34
-0x67D3 = 0x7740
-0x67D4 = 0x403D
-0x67D8 = 0x5344
-0x67DA = 0x2E4D
-0x67DD = 0x515B
-0x67DE = 0x505B
-0x67E2 = 0x525B
-0x67E4 = 0x4F5B
-0x67E7 = 0x575B
-0x67E9 = 0x4D5B
-0x67EC = 0x4B5B
-0x67EE = 0x535B
-0x67EF = 0x495B
-0x67F1 = 0x6C43
-0x67F3 = 0x784C
-0x67F4 = 0x463C
-0x67F5 = 0x743A
-0x67FE = 0x6F4B
-0x67FF = 0x4133
-0x6802 = 0x4E44
-0x6803 = 0x4A46
-0x6804 = 0x4931
-0x6813 = 0x7240
-0x6816 = 0x3440
-0x6817 = 0x2A37
-0x681E = 0x595B
-0x6821 = 0x3B39
-0x6822 = 0x7C33
-0x682A = 0x7433
-0x682B = 0x615B
-0x6832 = 0x5E5B
-0x6834 = 0x7340
-0x6838 = 0x4B33
-0x6839 = 0x2C3A
-0x683C = 0x4A33
-0x683D = 0x4F3A
-0x6840 = 0x5C5B
-0x6841 = 0x6537
-0x6842 = 0x4B37
-0x6843 = 0x6D45
-0x6846 = 0x5A5B
-0x6848 = 0x4630
-0x684D = 0x5D5B
-0x684E = 0x5F5B
-0x6850 = 0x4D36
-0x6851 = 0x2C37
-0x6853 = 0x3C34
-0x6854 = 0x4B35
-0x6859 = 0x625B
-0x685C = 0x793A
-0x685D = 0x714B
-0x685F = 0x373B
-0x6863 = 0x635B
-0x6867 = 0x3049
-0x6874 = 0x6F5B
-0x6876 = 0x3332
-0x6877 = 0x645B
-0x687E = 0x755B
-0x687F = 0x655B
-0x6881 = 0x424E
-0x6883 = 0x6C5B
-0x6885 = 0x5F47
-0x688D = 0x745B
-0x688F = 0x675B
-0x6893 = 0x3430
-0x6894 = 0x695B
-0x6897 = 0x3C39
-0x689B = 0x6B5B
-0x689D = 0x6A5B
-0x689F = 0x665B
-0x68A0 = 0x715B
-0x68A2 = 0x3F3E
-0x68A6 = 0x6D54
-0x68A7 = 0x6838
-0x68A8 = 0x7C4D
-0x68AD = 0x685B
-0x68AF = 0x7444
-0x68B0 = 0x2333
-0x68B1 = 0x2D3A
-0x68B3 = 0x605B
-0x68B5 = 0x705B
-0x68B6 = 0x6133
-0x68B9 = 0x6E5B
-0x68BA = 0x725B
-0x68BC = 0x6E45
-0x68C4 = 0x7E34
-0x68C6 = 0x325C
-0x68C9 = 0x494C
-0x68CA = 0x775B
-0x68CB = 0x7D34
-0x68CD = 0x7E5B
-0x68D2 = 0x404B
-0x68D4 = 0x215C
-0x68D5 = 0x235C
-0x68D7 = 0x275C
-0x68D8 = 0x795B
-0x68DA = 0x2A43
-0x68DF = 0x6F45
-0x68E0 = 0x2B5C
-0x68E1 = 0x7C5B
-0x68E3 = 0x285C
-0x68E7 = 0x225C
-0x68EE = 0x393F
-0x68EF = 0x2C5C
-0x68F2 = 0x3340
-0x68F9 = 0x2A5C
-0x68FA = 0x3D34
-0x6900 = 0x504F
-0x6901 = 0x765B
-0x6904 = 0x265C
-0x6905 = 0x5830
-0x6908 = 0x785B
-0x690B = 0x3A4C
-0x690C = 0x7D5B
-0x690D = 0x223F
-0x690E = 0x4744
-0x690F = 0x735B
-0x6912 = 0x255C
-0x6919 = 0x7A3F
-0x691A = 0x2F5C
-0x691B = 0x7133
-0x691C = 0x2138
-0x6921 = 0x315C
-0x6922 = 0x7A5B
-0x6923 = 0x305C
-0x6925 = 0x295C
-0x6926 = 0x7B5B
-0x6928 = 0x2D5C
-0x692A = 0x2E5C
-0x6930 = 0x3F5C
-0x6934 = 0x4E46
-0x6936 = 0x245C
-0x6939 = 0x3B5C
-0x693D = 0x3D5C
-0x693F = 0x5844
-0x694A = 0x4C4D
-0x6953 = 0x7649
-0x6954 = 0x385C
-0x6955 = 0x4A42
-0x6959 = 0x3E5C
-0x695A = 0x3F41
-0x695C = 0x355C
-0x695D = 0x425C
-0x695E = 0x415C
-0x6960 = 0x6F46
-0x6961 = 0x405C
-0x6962 = 0x6A46
-0x696A = 0x445C
-0x696B = 0x375C
-0x696D = 0x4836
-0x696E = 0x3A5C
-0x696F = 0x5D3D
-0x6973 = 0x6047
-0x6974 = 0x3C5C
-0x6975 = 0x4B36
-0x6977 = 0x345C
-0x6978 = 0x365C
-0x6979 = 0x335C
-0x697C = 0x304F
-0x697D = 0x5A33
-0x697E = 0x395C
-0x6981 = 0x435C
-0x6982 = 0x3533
-0x698A = 0x673A
-0x698E = 0x5D31
-0x6991 = 0x545C
-0x6994 = 0x314F
-0x6995 = 0x575C
-0x699B = 0x3A3F
-0x699C = 0x565C
-0x69A0 = 0x555C
-0x69A7 = 0x525C
-0x69AE = 0x465C
-0x69B1 = 0x635C
-0x69B2 = 0x455C
-0x69B4 = 0x585C
-0x69BB = 0x505C
-0x69BE = 0x4B5C
-0x69BF = 0x485C
-0x69C1 = 0x495C
-0x69C3 = 0x515C
-0x69C7 = 0x2274
-0x69CA = 0x4E5C
-0x69CB = 0x3D39
-0x69CC = 0x4844
-0x69CD = 0x6441
-0x69CE = 0x4C5C
-0x69D0 = 0x475C
-0x69D3 = 0x4A5C
-0x69D9 = 0x6A4B
-0x69DD = 0x4F5C
-0x69DE = 0x595C
-0x69E7 = 0x615C
-0x69E8 = 0x5A5C
-0x69EB = 0x675C
-0x69ED = 0x655C
-0x69F2 = 0x605C
-0x69F9 = 0x5F5C
-0x69FB = 0x5044
-0x69FD = 0x6541
-0x69FF = 0x5D5C
-0x6A02 = 0x5B5C
-0x6A05 = 0x625C
-0x6A0A = 0x685C
-0x6A0B = 0x7548
-0x6A0C = 0x6E5C
-0x6A12 = 0x695C
-0x6A13 = 0x6C5C
-0x6A14 = 0x665C
-0x6A17 = 0x7443
-0x6A19 = 0x3849
-0x6A1E = 0x645C
-0x6A1F = 0x403E
-0x6A21 = 0x4F4C
-0x6A22 = 0x785C
-0x6A23 = 0x6B5C
-0x6A29 = 0x2238
-0x6A2A = 0x2332
-0x6A2B = 0x5F33
-0x6A2E = 0x535C
-0x6A35 = 0x413E
-0x6A36 = 0x705C
-0x6A38 = 0x775C
-0x6A39 = 0x793C
-0x6A3A = 0x7233
-0x6A3D = 0x2E43
-0x6A44 = 0x6D5C
-0x6A47 = 0x725C
-0x6A48 = 0x765C
-0x6A58 = 0x4C35
-0x6A59 = 0x745C
-0x6A5F = 0x2135
-0x6A61 = 0x4B46
-0x6A62 = 0x735C
-0x6A66 = 0x755C
-0x6A72 = 0x6F5C
-0x6A78 = 0x715C
-0x6A7F = 0x6033
-0x6A80 = 0x4943
-0x6A84 = 0x7C5C
-0x6A8D = 0x7A5C
-0x6A8E = 0x6938
-0x6A90 = 0x795C
-0x6A97 = 0x215D
-0x6A9C = 0x585B
-0x6AA0 = 0x7B5C
-0x6AA2 = 0x7D5C
-0x6AA3 = 0x7E5C
-0x6AAA = 0x2C5D
-0x6AAC = 0x285D
-0x6AAE = 0x6D5B
-0x6AB3 = 0x275D
-0x6AB8 = 0x265D
-0x6ABB = 0x235D
-0x6AC1 = 0x6A5C
-0x6AC2 = 0x255D
-0x6AC3 = 0x245D
-0x6AD1 = 0x2A5D
-0x6AD3 = 0x264F
-0x6ADA = 0x2D5D
-0x6ADB = 0x7B36
-0x6ADE = 0x295D
-0x6ADF = 0x2B5D
-0x6AE8 = 0x2748
-0x6AEA = 0x2E5D
-0x6AFA = 0x325D
-0x6AFB = 0x2F5D
-0x6B04 = 0x734D
-0x6B05 = 0x305D
-0x6B0A = 0x5E5C
-0x6B12 = 0x335D
-0x6B16 = 0x345D
-0x6B1D = 0x3531
-0x6B1F = 0x365D
-0x6B20 = 0x6737
-0x6B21 = 0x213C
-0x6B23 = 0x5536
-0x6B27 = 0x2432
-0x6B32 = 0x5F4D
-0x6B37 = 0x385D
-0x6B38 = 0x375D
-0x6B39 = 0x3A5D
-0x6B3A = 0x3D35
-0x6B3D = 0x5636
-0x6B3E = 0x3E34
-0x6B43 = 0x3D5D
-0x6B47 = 0x3C5D
-0x6B49 = 0x3E5D
-0x6B4C = 0x4E32
-0x6B4E = 0x3743
-0x6B50 = 0x3F5D
-0x6B53 = 0x3F34
-0x6B54 = 0x415D
-0x6B59 = 0x405D
-0x6B5B = 0x425D
-0x6B5F = 0x435D
-0x6B61 = 0x445D
-0x6B62 = 0x5F3B
-0x6B63 = 0x3540
-0x6B64 = 0x213A
-0x6B66 = 0x7049
-0x6B69 = 0x624A
-0x6B6A = 0x444F
-0x6B6F = 0x753B
-0x6B73 = 0x503A
-0x6B74 = 0x724E
-0x6B78 = 0x455D
-0x6B79 = 0x465D
-0x6B7B = 0x603B
-0x6B7F = 0x475D
-0x6B80 = 0x485D
-0x6B83 = 0x4A5D
-0x6B84 = 0x495D
-0x6B86 = 0x584B
-0x6B89 = 0x5E3D
-0x6B8A = 0x6C3C
-0x6B8B = 0x443B
-0x6B8D = 0x4B5D
-0x6B95 = 0x4D5D
-0x6B96 = 0x233F
-0x6B98 = 0x4C5D
-0x6B9E = 0x4E5D
-0x6BA4 = 0x4F5D
-0x6BAA = 0x505D
-0x6BAB = 0x515D
-0x6BAF = 0x525D
-0x6BB1 = 0x545D
-0x6BB2 = 0x535D
-0x6BB3 = 0x555D
-0x6BB4 = 0x2532
-0x6BB5 = 0x4A43
-0x6BB7 = 0x565D
-0x6BBA = 0x263B
-0x6BBB = 0x4C33
-0x6BBC = 0x575D
-0x6BBF = 0x4245
-0x6BC0 = 0x4C54
-0x6BC5 = 0x2335
-0x6BC6 = 0x585D
-0x6BCB = 0x595D
-0x6BCD = 0x6C4A
-0x6BCE = 0x684B
-0x6BD2 = 0x4746
-0x6BD3 = 0x5A5D
-0x6BD4 = 0x6648
-0x6BD8 = 0x7B48
-0x6BDB = 0x534C
-0x6BDF = 0x5B5D
-0x6BEC = 0x5C5D
-0x6BEF = 0x5F5D
-0x6BF3 = 0x5E5D
-0x6C08 = 0x615D
-0x6C0F = 0x613B
-0x6C11 = 0x314C
-0x6C13 = 0x625D
-0x6C14 = 0x635D
-0x6C17 = 0x2435
-0x6C1B = 0x645D
-0x6C23 = 0x665D
-0x6C24 = 0x655D
-0x6C34 = 0x653F
-0x6C37 = 0x3949
-0x6C38 = 0x4A31
-0x6C3E = 0x4548
-0x6C40 = 0x7544
-0x6C41 = 0x413D
-0x6C42 = 0x6135
-0x6C4E = 0x4648
-0x6C50 = 0x2E3C
-0x6C55 = 0x685D
-0x6C57 = 0x4034
-0x6C5A = 0x7831
-0x6C5D = 0x7246
-0x6C5E = 0x675D
-0x6C5F = 0x3E39
-0x6C60 = 0x5343
-0x6C62 = 0x695D
-0x6C68 = 0x715D
-0x6C6A = 0x6A5D
-0x6C70 = 0x4142
-0x6C72 = 0x6235
-0x6C73 = 0x725D
-0x6C7A = 0x6837
-0x6C7D = 0x2535
-0x6C7E = 0x705D
-0x6C81 = 0x6E5D
-0x6C82 = 0x6B5D
-0x6C83 = 0x604D
-0x6C88 = 0x4044
-0x6C8C = 0x5946
-0x6C8D = 0x6C5D
-0x6C90 = 0x745D
-0x6C92 = 0x735D
-0x6C93 = 0x2337
-0x6C96 = 0x2D32
-0x6C99 = 0x3B3A
-0x6C9A = 0x6D5D
-0x6C9B = 0x6F5D
-0x6CA1 = 0x574B
-0x6CA2 = 0x7442
-0x6CAB = 0x774B
-0x6CAE = 0x7C5D
-0x6CB1 = 0x7D5D
-0x6CB3 = 0x4F32
-0x6CB8 = 0x284A
-0x6CB9 = 0x7D4C
-0x6CBA = 0x215E
-0x6CBB = 0x233C
-0x6CBC = 0x423E
-0x6CBD = 0x785D
-0x6CBE = 0x7E5D
-0x6CBF = 0x6831
-0x6CC1 = 0x3736
-0x6CC4 = 0x755D
-0x6CC5 = 0x7A5D
-0x6CC9 = 0x7440
-0x6CCA = 0x7147
-0x6CCC = 0x6748
-0x6CD3 = 0x775D
-0x6CD5 = 0x214B
-0x6CD7 = 0x795D
-0x6CD9 = 0x245E
-0x6CDB = 0x225E
-0x6CDD = 0x7B5D
-0x6CE1 = 0x224B
-0x6CE2 = 0x4847
-0x6CE3 = 0x6335
-0x6CE5 = 0x2545
-0x6CE8 = 0x6D43
-0x6CEA = 0x255E
-0x6CEF = 0x235E
-0x6CF0 = 0x5942
-0x6CF1 = 0x765D
-0x6CF3 = 0x4B31
-0x6D0B = 0x4E4D
-0x6D0C = 0x305E
-0x6D12 = 0x2F5E
-0x6D17 = 0x7640
-0x6D19 = 0x2C5E
-0x6D1B = 0x6C4D
-0x6D1E = 0x3646
-0x6D1F = 0x265E
-0x6D25 = 0x4544
-0x6D29 = 0x4C31
-0x6D2A = 0x3F39
-0x6D2B = 0x295E
-0x6D32 = 0x273D
-0x6D33 = 0x2E5E
-0x6D35 = 0x2D5E
-0x6D36 = 0x285E
-0x6D38 = 0x2B5E
-0x6D3B = 0x6833
-0x6D3D = 0x2A5E
-0x6D3E = 0x4947
-0x6D41 = 0x2E4E
-0x6D44 = 0x743E
-0x6D45 = 0x7540
-0x6D59 = 0x365E
-0x6D5A = 0x345E
-0x6D5C = 0x4D49
-0x6D63 = 0x315E
-0x6D64 = 0x335E
-0x6D66 = 0x3A31
-0x6D69 = 0x4039
-0x6D6A = 0x324F
-0x6D6C = 0x3D33
-0x6D6E = 0x6249
-0x6D74 = 0x614D
-0x6D77 = 0x2433
-0x6D78 = 0x3B3F
-0x6D79 = 0x355E
-0x6D85 = 0x3A5E
-0x6D88 = 0x433E
-0x6D8C = 0x304D
-0x6D8E = 0x375E
-0x6D93 = 0x325E
-0x6D95 = 0x385E
-0x6D99 = 0x5E4E
-0x6D9B = 0x7345
-0x6D9C = 0x4246
-0x6DAF = 0x3633
-0x6DB2 = 0x5531
-0x6DB5 = 0x3E5E
-0x6DB8 = 0x415E
-0x6DBC = 0x434E
-0x6DC0 = 0x644D
-0x6DC5 = 0x485E
-0x6DC6 = 0x425E
-0x6DC7 = 0x3F5E
-0x6DCB = 0x544E
-0x6DCC = 0x455E
-0x6DD1 = 0x4A3D
-0x6DD2 = 0x475E
-0x6DD5 = 0x4C5E
-0x6DD8 = 0x7145
-0x6DD9 = 0x4A5E
-0x6DDE = 0x445E
-0x6DE1 = 0x3843
-0x6DE4 = 0x4B5E
-0x6DE6 = 0x405E
-0x6DE8 = 0x465E
-0x6DEA = 0x4D5E
-0x6DEB = 0x7C30
-0x6DEC = 0x435E
-0x6DEE = 0x4E5E
-0x6DF1 = 0x3C3F
-0x6DF3 = 0x5F3D
-0x6DF5 = 0x254A
-0x6DF7 = 0x2E3A
-0x6DF9 = 0x3B5E
-0x6DFA = 0x495E
-0x6DFB = 0x3A45
-0x6E05 = 0x3640
-0x6E07 = 0x6933
-0x6E08 = 0x513A
-0x6E09 = 0x443E
-0x6E0A = 0x3D5E
-0x6E0B = 0x423D
-0x6E13 = 0x4C37
-0x6E15 = 0x3C5E
-0x6E19 = 0x525E
-0x6E1A = 0x6D3D
-0x6E1B = 0x3A38
-0x6E1D = 0x615E
-0x6E1F = 0x5B5E
-0x6E20 = 0x7435
-0x6E21 = 0x4F45
-0x6E23 = 0x565E
-0x6E24 = 0x5F5E
-0x6E25 = 0x2F30
-0x6E26 = 0x3231
-0x6E29 = 0x3932
-0x6E2B = 0x585E
-0x6E2C = 0x2C42
-0x6E2D = 0x4F5E
-0x6E2E = 0x515E
-0x6E2F = 0x4139
-0x6E38 = 0x625E
-0x6E3A = 0x5D5E
-0x6E3E = 0x555E
-0x6E43 = 0x5C5E
-0x6E4A = 0x2B4C
-0x6E4D = 0x5A5E
-0x6E56 = 0x5038
-0x6E58 = 0x453E
-0x6E5B = 0x3943
-0x6E5F = 0x545E
-0x6E67 = 0x2F4D
-0x6E6B = 0x575E
-0x6E6E = 0x505E
-0x6E6F = 0x7245
-0x6E72 = 0x535E
-0x6E76 = 0x595E
-0x6E7E = 0x514F
-0x6E7F = 0x3E3C
-0x6E80 = 0x7E4B
-0x6E82 = 0x635E
-0x6E8C = 0x2E48
-0x6E8F = 0x6F5E
-0x6E90 = 0x3B38
-0x6E96 = 0x603D
-0x6E98 = 0x655E
-0x6E9C = 0x2F4E
-0x6E9D = 0x4239
-0x6E9F = 0x725E
-0x6EA2 = 0x6E30
-0x6EA5 = 0x705E
-0x6EAA = 0x645E
-0x6EAF = 0x6A5E
-0x6EB2 = 0x6C5E
-0x6EB6 = 0x4F4D
-0x6EB7 = 0x675E
-0x6EBA = 0x2E45
-0x6EBD = 0x695E
-0x6EC2 = 0x715E
-0x6EC4 = 0x6B5E
-0x6EC5 = 0x474C
-0x6EC9 = 0x665E
-0x6ECB = 0x223C
-0x6ECC = 0x7E5E
-0x6ED1 = 0x6A33
-0x6ED3 = 0x685E
-0x6ED4 = 0x6D5E
-0x6ED5 = 0x6E5E
-0x6EDD = 0x6C42
-0x6EDE = 0x5A42
-0x6EEC = 0x765E
-0x6EEF = 0x7C5E
-0x6EF2 = 0x7A5E
-0x6EF4 = 0x2945
-0x6EF7 = 0x235F
-0x6EF8 = 0x775E
-0x6EFE = 0x785E
-0x6EFF = 0x605E
-0x6F01 = 0x7935
-0x6F02 = 0x3A49
-0x6F06 = 0x3F3C
-0x6F09 = 0x7739
-0x6F0F = 0x334F
-0x6F11 = 0x745E
-0x6F13 = 0x225F
-0x6F14 = 0x6931
-0x6F15 = 0x6641
-0x6F20 = 0x7947
-0x6F22 = 0x4134
-0x6F23 = 0x7A4E
-0x6F2B = 0x214C
-0x6F2C = 0x5244
-0x6F31 = 0x7B5E
-0x6F32 = 0x7D5E
-0x6F38 = 0x3241
-0x6F3E = 0x215F
-0x6F3F = 0x795E
-0x6F41 = 0x735E
-0x6F45 = 0x4334
-0x6F54 = 0x6937
-0x6F58 = 0x2F5F
-0x6F5B = 0x2A5F
-0x6F5C = 0x7840
-0x6F5F = 0x6333
-0x6F64 = 0x613D
-0x6F66 = 0x335F
-0x6F6D = 0x2C5F
-0x6F6E = 0x2C44
-0x6F6F = 0x295F
-0x6F70 = 0x5944
-0x6F74 = 0x4C5F
-0x6F78 = 0x265F
-0x6F7A = 0x255F
-0x6F7C = 0x2E5F
-0x6F80 = 0x285F
-0x6F81 = 0x275F
-0x6F82 = 0x2D5F
-0x6F84 = 0x2140
-0x6F86 = 0x245F
-0x6F8E = 0x305F
-0x6F91 = 0x315F
-0x6F97 = 0x4234
-0x6FA1 = 0x365F
-0x6FA3 = 0x355F
-0x6FA4 = 0x375F
-0x6FAA = 0x3A5F
-0x6FB1 = 0x4345
-0x6FB3 = 0x345F
-0x6FB9 = 0x385F
-0x6FC0 = 0x6337
-0x6FC1 = 0x7942
-0x6FC2 = 0x325F
-0x6FC3 = 0x3B47
-0x6FC6 = 0x395F
-0x6FD4 = 0x3E5F
-0x6FD5 = 0x3C5F
-0x6FD8 = 0x3F5F
-0x6FDB = 0x425F
-0x6FDF = 0x3B5F
-0x6FE0 = 0x6A39
-0x6FE1 = 0x2847
-0x6FE4 = 0x395E
-0x6FEB = 0x744D
-0x6FEC = 0x3D5F
-0x6FEE = 0x415F
-0x6FEF = 0x7542
-0x6FF1 = 0x405F
-0x6FF3 = 0x2B5F
-0x6FF6 = 0x696F
-0x6FFA = 0x455F
-0x6FFE = 0x495F
-0x7001 = 0x475F
-0x7009 = 0x435F
-0x700B = 0x445F
-0x700F = 0x485F
-0x7011 = 0x465F
-0x7015 = 0x4E49
-0x7018 = 0x4E5F
-0x701A = 0x4B5F
-0x701B = 0x4A5F
-0x701D = 0x4D5F
-0x701E = 0x5446
-0x701F = 0x4F5F
-0x7026 = 0x7543
-0x7027 = 0x6D42
-0x702C = 0x2540
-0x7030 = 0x505F
-0x7032 = 0x525F
-0x703E = 0x515F
-0x704C = 0x755E
-0x7051 = 0x535F
-0x7058 = 0x6746
-0x7063 = 0x545F
-0x706B = 0x5032
-0x706F = 0x7445
-0x7070 = 0x2533
-0x7078 = 0x6435
-0x707C = 0x5E3C
-0x707D = 0x523A
-0x7089 = 0x274F
-0x708A = 0x663F
-0x708E = 0x6A31
-0x7092 = 0x565F
-0x7099 = 0x555F
-0x70AC = 0x595F
-0x70AD = 0x3A43
-0x70AE = 0x5C5F
-0x70AF = 0x575F
-0x70B3 = 0x5B5F
-0x70B8 = 0x5A5F
-0x70B9 = 0x4045
-0x70BA = 0x5930
-0x70C8 = 0x754E
-0x70CB = 0x5E5F
-0x70CF = 0x2831
-0x70D9 = 0x605F
-0x70DF = 0x5D5F
-0x70F1 = 0x585F
-0x70F9 = 0x234B
-0x70FD = 0x625F
-0x7109 = 0x615F
-0x7114 = 0x6B31
-0x7119 = 0x645F
-0x711A = 0x324A
-0x711C = 0x635F
-0x7121 = 0x354C
-0x7126 = 0x473E
-0x7136 = 0x3341
-0x713C = 0x463E
-0x7149 = 0x7B4E
-0x714C = 0x6A5F
-0x714E = 0x7940
-0x7155 = 0x665F
-0x7156 = 0x6B5F
-0x7159 = 0x6C31
-0x7162 = 0x695F
-0x7164 = 0x6147
-0x7165 = 0x655F
-0x7166 = 0x685F
-0x7167 = 0x483E
-0x7169 = 0x5148
-0x716C = 0x6C5F
-0x716E = 0x513C
-0x717D = 0x7A40
-0x7184 = 0x6F5F
-0x7188 = 0x675F
-0x718A = 0x2737
-0x718F = 0x6D5F
-0x7194 = 0x504D
-0x7195 = 0x705F
-0x7199 = 0x2674
-0x719F = 0x4F3D
-0x71A8 = 0x715F
-0x71AC = 0x725F
-0x71B1 = 0x2E47
-0x71B9 = 0x745F
-0x71BE = 0x755F
-0x71C3 = 0x3347
-0x71C8 = 0x7545
-0x71C9 = 0x775F
-0x71CE = 0x795F
-0x71D0 = 0x554E
-0x71D2 = 0x765F
-0x71D4 = 0x785F
-0x71D5 = 0x6D31
-0x71D7 = 0x735F
-0x71DF = 0x5B53
-0x71E0 = 0x7A5F
-0x71E5 = 0x6741
-0x71E6 = 0x383B
-0x71E7 = 0x7C5F
-0x71EC = 0x7B5F
-0x71ED = 0x243F
-0x71EE = 0x5952
-0x71F5 = 0x7D5F
-0x71F9 = 0x2160
-0x71FB = 0x6E5F
-0x71FC = 0x7E5F
-0x71FF = 0x2260
-0x7206 = 0x7A47
-0x720D = 0x2360
-0x7210 = 0x2460
-0x721B = 0x2560
-0x7228 = 0x2660
-0x722A = 0x5E44
-0x722C = 0x2860
-0x722D = 0x2760
-0x7230 = 0x2960
-0x7232 = 0x2A60
-0x7235 = 0x5F3C
-0x7236 = 0x6349
-0x723A = 0x6C4C
-0x723B = 0x2B60
-0x723C = 0x2C60
-0x723D = 0x5641
-0x723E = 0x243C
-0x723F = 0x2D60
-0x7240 = 0x2E60
-0x7246 = 0x2F60
-0x7247 = 0x524A
-0x7248 = 0x4748
-0x724B = 0x3060
-0x724C = 0x5747
-0x7252 = 0x2D44
-0x7258 = 0x3160
-0x7259 = 0x6732
-0x725B = 0x6D35
-0x725D = 0x464C
-0x725F = 0x364C
-0x7261 = 0x3432
-0x7262 = 0x344F
-0x7267 = 0x524B
-0x7269 = 0x2A4A
-0x7272 = 0x3740
-0x7274 = 0x3260
-0x7279 = 0x4346
-0x727D = 0x2338
-0x727E = 0x3360
-0x7280 = 0x543A
-0x7281 = 0x3560
-0x7282 = 0x3460
-0x7287 = 0x3660
-0x7292 = 0x3760
-0x7296 = 0x3860
-0x72A0 = 0x3E35
-0x72A2 = 0x3960
-0x72A7 = 0x3A60
-0x72AC = 0x2438
-0x72B2 = 0x3C60
-0x72B6 = 0x753E
-0x72B9 = 0x3B60
-0x72C2 = 0x3836
-0x72C3 = 0x3D60
-0x72C4 = 0x3F60
-0x72C6 = 0x3E60
-0x72CE = 0x4060
-0x72D0 = 0x5138
-0x72D2 = 0x4160
-0x72D7 = 0x6936
-0x72D9 = 0x4041
-0x72DB = 0x7D39
-0x72E0 = 0x4360
-0x72E1 = 0x4460
-0x72E2 = 0x4260
-0x72E9 = 0x6D3C
-0x72EC = 0x4846
-0x72ED = 0x3936
-0x72F7 = 0x4660
-0x72F8 = 0x2C43
-0x72F9 = 0x4560
-0x72FC = 0x354F
-0x72FD = 0x6247
-0x730A = 0x4960
-0x7316 = 0x4B60
-0x7317 = 0x4860
-0x731B = 0x544C
-0x731C = 0x4A60
-0x731D = 0x4C60
-0x731F = 0x444E
-0x7325 = 0x5060
-0x7329 = 0x4F60
-0x732A = 0x7643
-0x732B = 0x2D47
-0x732E = 0x2538
-0x732F = 0x4E60
-0x7334 = 0x4D60
-0x7336 = 0x314D
-0x7337 = 0x324D
-0x733E = 0x5160
-0x733F = 0x6E31
-0x7344 = 0x7639
-0x7345 = 0x623B
-0x734E = 0x5260
-0x734F = 0x5360
-0x7357 = 0x5560
-0x7363 = 0x433D
-0x7368 = 0x5760
-0x736A = 0x5660
-0x7370 = 0x5860
-0x7372 = 0x4D33
-0x7375 = 0x5A60
-0x7378 = 0x5960
-0x737A = 0x5C60
-0x737B = 0x5B60
-0x7384 = 0x3C38
-0x7387 = 0x284E
-0x7389 = 0x4C36
-0x738B = 0x2632
-0x7396 = 0x6A36
-0x73A9 = 0x6134
-0x73B2 = 0x684E
-0x73B3 = 0x5E60
-0x73C0 = 0x6160
-0x73C2 = 0x5132
-0x73C8 = 0x5D60
-0x73CA = 0x393B
-0x73CD = 0x4144
-0x73CE = 0x5F60
-0x73DE = 0x6460
-0x73E0 = 0x6E3C
-0x73E5 = 0x6260
-0x73EA = 0x3E37
-0x73ED = 0x4948
-0x73EE = 0x6360
-0x73F1 = 0x7E60
-0x73F8 = 0x6960
-0x73FE = 0x3D38
-0x7403 = 0x6535
-0x7405 = 0x6660
-0x7406 = 0x7D4D
-0x7409 = 0x304E
-0x7422 = 0x7642
-0x7425 = 0x6860
-0x7432 = 0x6A60
-0x7433 = 0x564E
-0x7434 = 0x5736
-0x7435 = 0x7C48
-0x7436 = 0x4A47
-0x743A = 0x6B60
-0x743F = 0x6D60
-0x7441 = 0x7060
-0x7455 = 0x6C60
-0x7459 = 0x6F60
-0x745A = 0x6A38
-0x745B = 0x4D31
-0x745C = 0x7160
-0x745E = 0x703F
-0x745F = 0x6E60
-0x7460 = 0x5C4E
-0x7463 = 0x7460
-0x7464 = 0x2474
-0x7469 = 0x7260
-0x746A = 0x7560
-0x746F = 0x6760
-0x7470 = 0x7360
-0x7473 = 0x3C3A
-0x7476 = 0x7660
-0x747E = 0x7760
-0x7483 = 0x7E4D
-0x748B = 0x7860
-0x749E = 0x7960
-0x74A2 = 0x6560
-0x74A7 = 0x7A60
-0x74B0 = 0x4434
-0x74BD = 0x253C
-0x74CA = 0x7B60
-0x74CF = 0x7C60
-0x74D4 = 0x7D60
-0x74DC = 0x3B31
-0x74E0 = 0x2161
-0x74E2 = 0x3B49
-0x74E3 = 0x2261
-0x74E6 = 0x2434
-0x74E7 = 0x2361
-0x74E9 = 0x2461
-0x74EE = 0x2561
-0x74F0 = 0x2761
-0x74F1 = 0x2861
-0x74F2 = 0x2661
-0x74F6 = 0x5349
-0x74F7 = 0x2A61
-0x74F8 = 0x2961
-0x7503 = 0x2C61
-0x7504 = 0x2B61
-0x7505 = 0x2D61
-0x750C = 0x2E61
-0x750D = 0x3061
-0x750E = 0x2F61
-0x7511 = 0x7939
-0x7513 = 0x3261
-0x7515 = 0x3161
-0x7518 = 0x4534
-0x751A = 0x533F
-0x751C = 0x3C45
-0x751E = 0x3361
-0x751F = 0x3840
-0x7523 = 0x3A3B
-0x7525 = 0x7931
-0x7526 = 0x3461
-0x7528 = 0x514D
-0x752B = 0x634A
-0x752C = 0x3561
-0x7530 = 0x4445
-0x7531 = 0x334D
-0x7532 = 0x4339
-0x7533 = 0x3D3F
-0x7537 = 0x4B43
-0x7538 = 0x3452
-0x753A = 0x2E44
-0x753B = 0x6832
-0x753C = 0x3661
-0x7544 = 0x3761
-0x7546 = 0x3C61
-0x7549 = 0x3A61
-0x754A = 0x3961
-0x754B = 0x425A
-0x754C = 0x2633
-0x754D = 0x3861
-0x754F = 0x5A30
-0x7551 = 0x2A48
-0x7554 = 0x4A48
-0x7559 = 0x314E
-0x755A = 0x3D61
-0x755B = 0x3B61
-0x755C = 0x5C43
-0x755D = 0x2640
-0x7560 = 0x2B48
-0x7562 = 0x2D49
-0x7564 = 0x3F61
-0x7565 = 0x2C4E
-0x7566 = 0x4D37
-0x7567 = 0x4061
-0x7569 = 0x3E61
-0x756A = 0x5648
-0x756B = 0x4161
-0x756D = 0x4261
-0x7570 = 0x5B30
-0x7573 = 0x763E
-0x7574 = 0x4761
-0x7576 = 0x4461
-0x7577 = 0x6D46
-0x7578 = 0x4361
-0x757F = 0x2635
-0x7582 = 0x4A61
-0x7586 = 0x4561
-0x7587 = 0x4661
-0x7589 = 0x4961
-0x758A = 0x4861
-0x758B = 0x2549
-0x758E = 0x4241
-0x7591 = 0x3F35
-0x7594 = 0x4B61
-0x759A = 0x4C61
-0x759D = 0x4D61
-0x75A3 = 0x4F61
-0x75A5 = 0x4E61
-0x75AB = 0x5631
-0x75B1 = 0x5761
-0x75B2 = 0x6848
-0x75B3 = 0x5161
-0x75B5 = 0x5361
-0x75B8 = 0x5561
-0x75B9 = 0x3E3F
-0x75BC = 0x5661
-0x75BD = 0x5461
-0x75BE = 0x403C
-0x75C2 = 0x5061
-0x75C3 = 0x5261
-0x75C5 = 0x4249
-0x75C7 = 0x493E
-0x75CA = 0x5961
-0x75CD = 0x5861
-0x75D2 = 0x5A61
-0x75D4 = 0x263C
-0x75D5 = 0x2F3A
-0x75D8 = 0x7745
-0x75D9 = 0x5B61
-0x75DB = 0x4B44
-0x75DE = 0x5D61
-0x75E2 = 0x214E
-0x75E3 = 0x5C61
-0x75E9 = 0x6941
-0x75F0 = 0x6261
-0x75F2 = 0x6461
-0x75F3 = 0x6561
-0x75F4 = 0x5443
-0x75FA = 0x6361
-0x75FC = 0x6061
-0x75FE = 0x5E61
-0x75FF = 0x5F61
-0x7609 = 0x6861
-0x760B = 0x6661
-0x760D = 0x6761
-0x761F = 0x6961
-0x7620 = 0x6B61
-0x7621 = 0x6C61
-0x7622 = 0x6D61
-0x7624 = 0x6E61
-0x7627 = 0x6A61
-0x7630 = 0x7061
-0x7634 = 0x6F61
-0x763B = 0x7161
-0x7642 = 0x454E
-0x7646 = 0x7461
-0x7647 = 0x7261
-0x7648 = 0x7361
-0x764C = 0x6234
-0x7652 = 0x7E4C
-0x7658 = 0x7661
-0x765C = 0x7561
-0x7661 = 0x7761
-0x7662 = 0x7861
-0x7667 = 0x7C61
-0x7668 = 0x7961
-0x7669 = 0x7A61
-0x766A = 0x7B61
-0x766C = 0x7D61
-0x7670 = 0x7E61
-0x7672 = 0x2162
-0x7676 = 0x2262
-0x7678 = 0x2362
-0x767A = 0x2F48
-0x767B = 0x5045
-0x767C = 0x2462
-0x767D = 0x7247
-0x767E = 0x3449
-0x7680 = 0x2562
-0x7683 = 0x2662
-0x7684 = 0x2A45
-0x7686 = 0x2733
-0x7687 = 0x4439
-0x7688 = 0x2762
-0x768B = 0x2862
-0x768E = 0x2962
-0x7690 = 0x293B
-0x7693 = 0x2B62
-0x7696 = 0x2A62
-0x7699 = 0x2C62
-0x769A = 0x2D62
-0x76AE = 0x6948
-0x76B0 = 0x2E62
-0x76B4 = 0x2F62
-0x76B7 = 0x6973
-0x76B8 = 0x3062
-0x76B9 = 0x3162
-0x76BA = 0x3262
-0x76BF = 0x2E3B
-0x76C2 = 0x3362
-0x76C3 = 0x5647
-0x76C6 = 0x5F4B
-0x76C8 = 0x4E31
-0x76CA = 0x5731
-0x76CD = 0x3462
-0x76D2 = 0x3662
-0x76D6 = 0x3562
-0x76D7 = 0x7045
-0x76DB = 0x3940
-0x76DC = 0x395D
-0x76DE = 0x3762
-0x76DF = 0x414C
-0x76E1 = 0x3862
-0x76E3 = 0x4634
-0x76E4 = 0x5748
-0x76E5 = 0x3962
-0x76E7 = 0x3A62
-0x76EA = 0x3B62
-0x76EE = 0x5C4C
-0x76F2 = 0x554C
-0x76F4 = 0x3E44
-0x76F8 = 0x6A41
-0x76FB = 0x3D62
-0x76FE = 0x623D
-0x7701 = 0x4A3E
-0x7704 = 0x4062
-0x7707 = 0x3F62
-0x7708 = 0x3E62
-0x7709 = 0x7D48
-0x770B = 0x4734
-0x770C = 0x2938
-0x771B = 0x4662
-0x771E = 0x4362
-0x7720 = 0x324C
-0x7724 = 0x4262
-0x7725 = 0x4462
-0x7726 = 0x4562
-0x7729 = 0x4162
-0x7737 = 0x4762
-0x7738 = 0x4862
-0x773A = 0x2F44
-0x773C = 0x6334
-0x7740 = 0x6543
-0x7747 = 0x4962
-0x775A = 0x4A62
-0x775B = 0x4D62
-0x7761 = 0x673F
-0x7763 = 0x4446
-0x7765 = 0x4E62
-0x7766 = 0x534B
-0x7768 = 0x4B62
-0x776B = 0x4C62
-0x7779 = 0x5162
-0x777E = 0x5062
-0x777F = 0x4F62
-0x778B = 0x5362
-0x778E = 0x5262
-0x7791 = 0x5462
-0x779E = 0x5662
-0x77A0 = 0x5562
-0x77A5 = 0x4D4A
-0x77AC = 0x563D
-0x77AD = 0x464E
-0x77B0 = 0x5762
-0x77B3 = 0x3746
-0x77B6 = 0x5862
-0x77B9 = 0x5962
-0x77BB = 0x5D62
-0x77BC = 0x5B62
-0x77BD = 0x5C62
-0x77BF = 0x5A62
-0x77C7 = 0x5E62
-0x77CD = 0x5F62
-0x77D7 = 0x6062
-0x77DA = 0x6162
-0x77DB = 0x374C
-0x77E2 = 0x704C
-0x77E3 = 0x6362
-0x77E5 = 0x4E43
-0x77E7 = 0x6A47
-0x77E9 = 0x6B36
-0x77ED = 0x3B43
-0x77EE = 0x6462
-0x77EF = 0x3A36
-0x77F3 = 0x5040
-0x77FC = 0x6562
-0x7802 = 0x3D3A
-0x780C = 0x6662
-0x7812 = 0x6762
-0x7814 = 0x2638
-0x7815 = 0x553A
-0x7820 = 0x6962
-0x7825 = 0x5645
-0x7826 = 0x563A
-0x7827 = 0x4E35
-0x7832 = 0x244B
-0x7834 = 0x4B47
-0x783A = 0x5745
-0x783F = 0x5C39
-0x7845 = 0x6B62
-0x785D = 0x4B3E
-0x786B = 0x324E
-0x786C = 0x4539
-0x786F = 0x2738
-0x7872 = 0x2348
-0x7874 = 0x6D62
-0x787C = 0x6F62
-0x7881 = 0x6B38
-0x7886 = 0x6E62
-0x7887 = 0x7644
-0x788C = 0x7162
-0x788D = 0x3733
-0x788E = 0x6C62
-0x7891 = 0x6A48
-0x7893 = 0x3031
-0x7895 = 0x6C3A
-0x7897 = 0x524F
-0x789A = 0x7062
-0x78A3 = 0x7262
-0x78A7 = 0x4B4A
-0x78A9 = 0x5940
-0x78AA = 0x7462
-0x78AF = 0x7562
-0x78B5 = 0x7362
-0x78BA = 0x4E33
-0x78BC = 0x7B62
-0x78BE = 0x7A62
-0x78C1 = 0x273C
-0x78C5 = 0x7C62
-0x78C6 = 0x7762
-0x78CA = 0x7D62
-0x78CB = 0x7862
-0x78D0 = 0x5848
-0x78D1 = 0x7662
-0x78D4 = 0x7962
-0x78DA = 0x2263
-0x78E7 = 0x2163
-0x78E8 = 0x614B
-0x78EC = 0x7E62
-0x78EF = 0x6B30
-0x78F4 = 0x2463
-0x78FD = 0x2363
-0x7901 = 0x4C3E
-0x7907 = 0x2563
-0x790E = 0x4341
-0x7911 = 0x2763
-0x7912 = 0x2663
-0x7919 = 0x2863
-0x7926 = 0x6862
-0x792A = 0x6A62
-0x792B = 0x2A63
-0x792C = 0x2963
-0x793A = 0x283C
-0x793C = 0x694E
-0x793E = 0x523C
-0x7940 = 0x2B63
-0x7947 = 0x4035
-0x7948 = 0x2735
-0x7949 = 0x633B
-0x7950 = 0x344D
-0x7953 = 0x3163
-0x7955 = 0x3063
-0x7956 = 0x4441
-0x7957 = 0x2D63
-0x795A = 0x2F63
-0x795D = 0x4B3D
-0x795E = 0x403F
-0x795F = 0x2E63
-0x7960 = 0x2C63
-0x7962 = 0x2A47
-0x7965 = 0x4D3E
-0x7968 = 0x3C49
-0x796D = 0x573A
-0x7977 = 0x7845
-0x797A = 0x3263
-0x797F = 0x3363
-0x7980 = 0x4963
-0x7981 = 0x5836
-0x7984 = 0x3D4F
-0x7985 = 0x3541
-0x798A = 0x3463
-0x798D = 0x5232
-0x798E = 0x7744
-0x798F = 0x214A
-0x799D = 0x3563
-0x79A6 = 0x7A35
-0x79A7 = 0x3663
-0x79AA = 0x3863
-0x79AE = 0x3963
-0x79B0 = 0x2947
-0x79B3 = 0x3A63
-0x79B9 = 0x3B63
-0x79BA = 0x3C63
-0x79BD = 0x5936
-0x79BE = 0x5332
-0x79BF = 0x4546
-0x79C0 = 0x283D
-0x79C1 = 0x643B
-0x79C9 = 0x3D63
-0x79CB = 0x293D
-0x79D1 = 0x4A32
-0x79D2 = 0x4349
-0x79D5 = 0x3E63
-0x79D8 = 0x6B48
-0x79DF = 0x4541
-0x79E1 = 0x4163
-0x79E3 = 0x4263
-0x79E4 = 0x6947
-0x79E6 = 0x413F
-0x79E7 = 0x3F63
-0x79E9 = 0x6143
-0x79EC = 0x4063
-0x79F0 = 0x4E3E
-0x79FB = 0x5C30
-0x7A00 = 0x2935
-0x7A08 = 0x4363
-0x7A0B = 0x7844
-0x7A0D = 0x4463
-0x7A0E = 0x4740
-0x7A14 = 0x2D4C
-0x7A17 = 0x2349
-0x7A18 = 0x4563
-0x7A19 = 0x4663
-0x7A1A = 0x5543
-0x7A1C = 0x474E
-0x7A1F = 0x4863
-0x7A20 = 0x4763
-0x7A2E = 0x6F3C
-0x7A31 = 0x4A63
-0x7A32 = 0x7030
-0x7A37 = 0x4D63
-0x7A3B = 0x4B63
-0x7A3C = 0x5432
-0x7A3D = 0x4E37
-0x7A3E = 0x4C63
-0x7A3F = 0x4639
-0x7A40 = 0x7239
-0x7A42 = 0x664A
-0x7A43 = 0x4E63
-0x7A46 = 0x544B
-0x7A49 = 0x5063
-0x7A4D = 0x5140
-0x7A4E = 0x4F31
-0x7A4F = 0x3A32
-0x7A50 = 0x2C30
-0x7A57 = 0x4F63
-0x7A61 = 0x5163
-0x7A62 = 0x5263
-0x7A63 = 0x773E
-0x7A69 = 0x5363
-0x7A6B = 0x4F33
-0x7A70 = 0x5563
-0x7A74 = 0x6A37
-0x7A76 = 0x6635
-0x7A79 = 0x5663
-0x7A7A = 0x7536
-0x7A7D = 0x5763
-0x7A7F = 0x7C40
-0x7A81 = 0x4D46
-0x7A83 = 0x6040
-0x7A84 = 0x753A
-0x7A88 = 0x5863
-0x7A92 = 0x6243
-0x7A93 = 0x6B41
-0x7A95 = 0x5A63
-0x7A96 = 0x5C63
-0x7A97 = 0x5963
-0x7A98 = 0x5B63
-0x7A9F = 0x2237
-0x7AA9 = 0x5D63
-0x7AAA = 0x2637
-0x7AAE = 0x6735
-0x7AAF = 0x524D
-0x7AB0 = 0x5F63
-0x7AB6 = 0x6063
-0x7ABA = 0x2E31
-0x7AC3 = 0x7633
-0x7AC4 = 0x6263
-0x7AC5 = 0x6163
-0x7AC7 = 0x6563
-0x7AC8 = 0x5E63
-0x7ACA = 0x6663
-0x7ACB = 0x294E
-0x7ACD = 0x6763
-0x7ACF = 0x6863
-0x7AD2 = 0x7454
-0x7AD3 = 0x6A63
-0x7AD5 = 0x6963
-0x7AD9 = 0x6B63
-0x7ADA = 0x6C63
-0x7ADC = 0x354E
-0x7ADD = 0x6D63
-0x7ADF = 0x6F70
-0x7AE0 = 0x4F3E
-0x7AE1 = 0x6E63
-0x7AE2 = 0x6F63
-0x7AE3 = 0x573D
-0x7AE5 = 0x3846
-0x7AE6 = 0x7063
-0x7AEA = 0x2843
-0x7AED = 0x7163
-0x7AEF = 0x3C43
-0x7AF0 = 0x7263
-0x7AF6 = 0x2536
-0x7AF8 = 0x3F51
-0x7AF9 = 0x5D43
-0x7AFA = 0x333C
-0x7AFF = 0x4834
-0x7B02 = 0x7363
-0x7B04 = 0x2264
-0x7B06 = 0x7663
-0x7B08 = 0x6835
-0x7B0A = 0x7563
-0x7B0B = 0x2464
-0x7B0F = 0x7463
-0x7B11 = 0x503E
-0x7B18 = 0x7863
-0x7B19 = 0x7963
-0x7B1B = 0x2B45
-0x7B1E = 0x7A63
-0x7B20 = 0x5E33
-0x7B25 = 0x5A3F
-0x7B26 = 0x6449
-0x7B28 = 0x7C63
-0x7B2C = 0x6842
-0x7B33 = 0x7763
-0x7B35 = 0x7B63
-0x7B36 = 0x7D63
-0x7B39 = 0x7B3A
-0x7B45 = 0x2664
-0x7B46 = 0x2E49
-0x7B48 = 0x2648
-0x7B49 = 0x7945
-0x7B4B = 0x5A36
-0x7B4C = 0x2564
-0x7B4D = 0x2364
-0x7B4F = 0x3548
-0x7B50 = 0x7E63
-0x7B51 = 0x5E43
-0x7B52 = 0x7B45
-0x7B54 = 0x7A45
-0x7B56 = 0x763A
-0x7B5D = 0x3864
-0x7B65 = 0x2864
-0x7B67 = 0x2A64
-0x7B6C = 0x2D64
-0x7B6E = 0x2E64
-0x7B70 = 0x2B64
-0x7B71 = 0x2C64
-0x7B74 = 0x2964
-0x7B75 = 0x2764
-0x7B7A = 0x2164
-0x7B86 = 0x4F4A
-0x7B87 = 0x5532
-0x7B8B = 0x3564
-0x7B8D = 0x3264
-0x7B8F = 0x3764
-0x7B92 = 0x3664
-0x7B94 = 0x7347
-0x7B95 = 0x274C
-0x7B98 = 0x3064
-0x7B99 = 0x3964
-0x7B9A = 0x3464
-0x7B9C = 0x3364
-0x7B9D = 0x2F64
-0x7B9F = 0x3164
-0x7BA1 = 0x4934
-0x7BAA = 0x3D43
-0x7BAD = 0x7D40
-0x7BB1 = 0x2248
-0x7BB4 = 0x3E64
-0x7BB8 = 0x2448
-0x7BC0 = 0x6140
-0x7BC1 = 0x3B64
-0x7BC4 = 0x4F48
-0x7BC6 = 0x3F64
-0x7BC7 = 0x534A
-0x7BC9 = 0x5B43
-0x7BCB = 0x3A64
-0x7BCC = 0x3C64
-0x7BCF = 0x3D64
-0x7BDD = 0x4064
-0x7BE0 = 0x443C
-0x7BE5 = 0x4564
-0x7BE6 = 0x4464
-0x7BE9 = 0x4164
-0x7BED = 0x364F
-0x7BF3 = 0x4A64
-0x7BF6 = 0x4E64
-0x7BF7 = 0x4B64
-0x7C00 = 0x4764
-0x7C07 = 0x4864
-0x7C0D = 0x4D64
-0x7C11 = 0x4264
-0x7C12 = 0x5552
-0x7C13 = 0x4964
-0x7C14 = 0x4364
-0x7C17 = 0x4C64
-0x7C1F = 0x5264
-0x7C21 = 0x4A34
-0x7C23 = 0x4F64
-0x7C27 = 0x5064
-0x7C2A = 0x5164
-0x7C2B = 0x5464
-0x7C37 = 0x5364
-0x7C38 = 0x7648
-0x7C3D = 0x5564
-0x7C3E = 0x7C4E
-0x7C3F = 0x6D4A
-0x7C40 = 0x5A64
-0x7C43 = 0x5764
-0x7C4C = 0x5664
-0x7C4D = 0x5240
-0x7C4F = 0x5964
-0x7C50 = 0x5B64
-0x7C54 = 0x5864
-0x7C56 = 0x5F64
-0x7C58 = 0x5C64
-0x7C5F = 0x5D64
-0x7C60 = 0x4664
-0x7C64 = 0x5E64
-0x7C65 = 0x6064
-0x7C6C = 0x6164
-0x7C73 = 0x464A
-0x7C75 = 0x6264
-0x7C7E = 0x624C
-0x7C81 = 0x4E36
-0x7C82 = 0x2937
-0x7C83 = 0x6364
-0x7C89 = 0x344A
-0x7C8B = 0x683F
-0x7C8D = 0x304C
-0x7C92 = 0x334E
-0x7C95 = 0x7447
-0x7C97 = 0x4641
-0x7C98 = 0x3447
-0x7C9B = 0x4D3D
-0x7C9F = 0x4030
-0x7CA1 = 0x6964
-0x7CA2 = 0x6764
-0x7CA4 = 0x6564
-0x7CA5 = 0x2134
-0x7CA7 = 0x513E
-0x7CA8 = 0x6A64
-0x7CAB = 0x6864
-0x7CAD = 0x6664
-0x7CAE = 0x6E64
-0x7CB1 = 0x6D64
-0x7CB2 = 0x6C64
-0x7CB3 = 0x6B64
-0x7CB9 = 0x6F64
-0x7CBD = 0x7064
-0x7CBE = 0x3A40
-0x7CC0 = 0x7164
-0x7CC2 = 0x7364
-0x7CC5 = 0x7264
-0x7CCA = 0x5238
-0x7CCE = 0x3841
-0x7CD2 = 0x7564
-0x7CD6 = 0x7C45
-0x7CD8 = 0x7464
-0x7CDC = 0x7664
-0x7CDE = 0x354A
-0x7CDF = 0x6C41
-0x7CE0 = 0x4739
-0x7CE2 = 0x7764
-0x7CE7 = 0x484E
-0x7CEF = 0x7964
-0x7CF2 = 0x7A64
-0x7CF4 = 0x7B64
-0x7CF6 = 0x7C64
-0x7CF8 = 0x653B
-0x7CFA = 0x7D64
-0x7CFB = 0x4F37
-0x7CFE = 0x6A35
-0x7D00 = 0x2A35
-0x7D02 = 0x2165
-0x7D04 = 0x734C
-0x7D05 = 0x4839
-0x7D06 = 0x7E64
-0x7D0A = 0x2465
-0x7D0B = 0x664C
-0x7D0D = 0x3C47
-0x7D10 = 0x3349
-0x7D14 = 0x633D
-0x7D15 = 0x2365
-0x7D17 = 0x533C
-0x7D18 = 0x4939
-0x7D19 = 0x663B
-0x7D1A = 0x6935
-0x7D1B = 0x364A
-0x7D1C = 0x2265
-0x7D20 = 0x4741
-0x7D21 = 0x424B
-0x7D22 = 0x773A
-0x7D2B = 0x673B
-0x7D2C = 0x5D44
-0x7D2E = 0x2765
-0x7D2F = 0x5F4E
-0x7D30 = 0x593A
-0x7D32 = 0x2865
-0x7D33 = 0x423F
-0x7D35 = 0x2A65
-0x7D39 = 0x523E
-0x7D3A = 0x303A
-0x7D3F = 0x2965
-0x7D42 = 0x2A3D
-0x7D43 = 0x3E38
-0x7D44 = 0x4841
-0x7D45 = 0x2565
-0x7D46 = 0x2B65
-0x7D4B = 0x2665
-0x7D4C = 0x5037
-0x7D4E = 0x2E65
-0x7D4F = 0x3265
-0x7D50 = 0x6B37
-0x7D56 = 0x2D65
-0x7D5B = 0x3665
-0x7D5E = 0x4A39
-0x7D61 = 0x6D4D
-0x7D62 = 0x3C30
-0x7D63 = 0x3365
-0x7D66 = 0x6B35
-0x7D68 = 0x3065
-0x7D6E = 0x3165
-0x7D71 = 0x7D45
-0x7D72 = 0x2F65
-0x7D73 = 0x2C65
-0x7D75 = 0x2833
-0x7D76 = 0x6440
-0x7D79 = 0x2838
-0x7D7D = 0x3865
-0x7D89 = 0x3565
-0x7D8F = 0x3765
-0x7D93 = 0x3465
-0x7D99 = 0x5137
-0x7D9A = 0x3342
-0x7D9B = 0x3965
-0x7D9C = 0x6E41
-0x7D9F = 0x4665
-0x7DA2 = 0x4265
-0x7DA3 = 0x3C65
-0x7DAB = 0x4065
-0x7DAC = 0x7A3C
-0x7DAD = 0x5D30
-0x7DAE = 0x3B65
-0x7DAF = 0x4365
-0x7DB0 = 0x4765
-0x7DB1 = 0x4B39
-0x7DB2 = 0x564C
-0x7DB4 = 0x5644
-0x7DB5 = 0x3D65
-0x7DB8 = 0x4565
-0x7DBA = 0x3A65
-0x7DBB = 0x3E43
-0x7DBD = 0x3F65
-0x7DBE = 0x3D30
-0x7DBF = 0x4A4C
-0x7DC7 = 0x3E65
-0x7DCA = 0x5B36
-0x7DCB = 0x6C48
-0x7DCF = 0x6D41
-0x7DD1 = 0x504E
-0x7DD2 = 0x6F3D
-0x7DD5 = 0x6E65
-0x7DD8 = 0x4865
-0x7DDA = 0x7E40
-0x7DDC = 0x4465
-0x7DDD = 0x4965
-0x7DDE = 0x4B65
-0x7DE0 = 0x7944
-0x7DE1 = 0x4E65
-0x7DE4 = 0x4A65
-0x7DE8 = 0x544A
-0x7DE9 = 0x4B34
-0x7DEC = 0x4B4C
-0x7DEF = 0x5E30
-0x7DF2 = 0x4D65
-0x7DF4 = 0x7D4E
-0x7DFB = 0x4C65
-0x7E01 = 0x6F31
-0x7E04 = 0x6C46
-0x7E05 = 0x4F65
-0x7E09 = 0x5665
-0x7E0A = 0x5065
-0x7E0B = 0x5765
-0x7E12 = 0x5365
-0x7E1B = 0x7B47
-0x7E1E = 0x4A3C
-0x7E1F = 0x5565
-0x7E21 = 0x5265
-0x7E22 = 0x5865
-0x7E23 = 0x5165
-0x7E26 = 0x443D
-0x7E2B = 0x254B
-0x7E2E = 0x4C3D
-0x7E31 = 0x5465
-0x7E32 = 0x6065
-0x7E35 = 0x5C65
-0x7E37 = 0x5F65
-0x7E39 = 0x5D65
-0x7E3A = 0x6165
-0x7E3B = 0x5B65
-0x7E3D = 0x4165
-0x7E3E = 0x5340
-0x7E41 = 0x4B48
-0x7E43 = 0x5E65
-0x7E46 = 0x5965
-0x7E4A = 0x2141
-0x7E4B = 0x5237
-0x7E4D = 0x2B3D
-0x7E54 = 0x253F
-0x7E55 = 0x3641
-0x7E56 = 0x6465
-0x7E59 = 0x6665
-0x7E5A = 0x6765
-0x7E5D = 0x6365
-0x7E66 = 0x5A65
-0x7E67 = 0x6265
-0x7E69 = 0x6A65
-0x7E6A = 0x6965
-0x7E6D = 0x7A4B
-0x7E70 = 0x2B37
-0x7E79 = 0x6865
-0x7E7B = 0x6C65
-0x7E7C = 0x6B65
-0x7E7D = 0x6F65
-0x7E7F = 0x7165
-0x7E82 = 0x3C3B
-0x7E83 = 0x6D65
-0x7E88 = 0x7265
-0x7E89 = 0x7365
-0x7E8C = 0x7465
-0x7E8E = 0x7A65
-0x7E8F = 0x3B45
-0x7E90 = 0x7665
-0x7E92 = 0x7565
-0x7E93 = 0x7765
-0x7E94 = 0x7865
-0x7E96 = 0x7965
-0x7E9B = 0x7B65
-0x7E9C = 0x7C65
-0x7F36 = 0x4C34
-0x7F38 = 0x7D65
-0x7F3A = 0x7E65
-0x7F45 = 0x2166
-0x7F4C = 0x2266
-0x7F4D = 0x2366
-0x7F4E = 0x2466
-0x7F50 = 0x2566
-0x7F51 = 0x2666
-0x7F54 = 0x2866
-0x7F55 = 0x2766
-0x7F58 = 0x2966
-0x7F5F = 0x2A66
-0x7F60 = 0x2B66
-0x7F67 = 0x2E66
-0x7F68 = 0x2C66
-0x7F69 = 0x2D66
-0x7F6A = 0x613A
-0x7F6B = 0x5337
-0x7F6E = 0x5643
-0x7F70 = 0x3348
-0x7F72 = 0x703D
-0x7F75 = 0x4D47
-0x7F77 = 0x6D48
-0x7F78 = 0x2F66
-0x7F79 = 0x6D58
-0x7F82 = 0x3066
-0x7F83 = 0x3266
-0x7F85 = 0x654D
-0x7F86 = 0x3166
-0x7F87 = 0x3466
-0x7F88 = 0x3366
-0x7F8A = 0x534D
-0x7F8C = 0x3566
-0x7F8E = 0x7E48
-0x7F94 = 0x3666
-0x7F9A = 0x3966
-0x7F9D = 0x3866
-0x7F9E = 0x3766
-0x7FA3 = 0x3A66
-0x7FA4 = 0x3237
-0x7FA8 = 0x2241
-0x7FA9 = 0x4135
-0x7FAE = 0x3E66
-0x7FAF = 0x3B66
-0x7FB2 = 0x3C66
-0x7FB6 = 0x3F66
-0x7FB8 = 0x4066
-0x7FB9 = 0x3D66
-0x7FBD = 0x2931
-0x7FC1 = 0x2732
-0x7FC5 = 0x4266
-0x7FC6 = 0x4366
-0x7FCA = 0x4466
-0x7FCC = 0x624D
-0x7FD2 = 0x2C3D
-0x7FD4 = 0x4666
-0x7FD5 = 0x4566
-0x7FE0 = 0x693F
-0x7FE1 = 0x4766
-0x7FE6 = 0x4866
-0x7FE9 = 0x4966
-0x7FEB = 0x6534
-0x7FF0 = 0x4D34
-0x7FF3 = 0x4A66
-0x7FF9 = 0x4B66
-0x7FFB = 0x5D4B
-0x7FFC = 0x634D
-0x8000 = 0x544D
-0x8001 = 0x374F
-0x8003 = 0x4D39
-0x8004 = 0x4E66
-0x8005 = 0x543C
-0x8006 = 0x4D66
-0x800B = 0x4F66
-0x800C = 0x293C
-0x8010 = 0x5142
-0x8012 = 0x5066
-0x8015 = 0x4C39
-0x8017 = 0x574C
-0x8018 = 0x5166
-0x8019 = 0x5266
-0x801C = 0x5366
-0x8021 = 0x5466
-0x8028 = 0x5566
-0x8033 = 0x2A3C
-0x8036 = 0x6D4C
-0x803B = 0x5766
-0x803D = 0x3F43
-0x803F = 0x5666
-0x8046 = 0x5966
-0x804A = 0x5866
-0x8052 = 0x5A66
-0x8056 = 0x3B40
-0x8058 = 0x5B66
-0x805A = 0x5C66
-0x805E = 0x394A
-0x805F = 0x5D66
-0x8061 = 0x6F41
-0x8062 = 0x5E66
-0x8068 = 0x5F66
-0x806F = 0x7E4E
-0x8070 = 0x6266
-0x8072 = 0x6166
-0x8073 = 0x6066
-0x8074 = 0x3044
-0x8076 = 0x6366
-0x8077 = 0x263F
-0x8079 = 0x6466
-0x807D = 0x6566
-0x807E = 0x384F
-0x8084 = 0x6766
-0x8085 = 0x6966
-0x8086 = 0x6866
-0x8087 = 0x2548
-0x8089 = 0x7946
-0x808B = 0x3E4F
-0x808C = 0x2948
-0x8093 = 0x6B66
-0x8096 = 0x533E
-0x8098 = 0x2A49
-0x809A = 0x6C66
-0x809B = 0x6A66
-0x809D = 0x4E34
-0x80A1 = 0x5438
-0x80A2 = 0x683B
-0x80A5 = 0x6E48
-0x80A9 = 0x2A38
-0x80AA = 0x434B
-0x80AC = 0x6F66
-0x80AD = 0x6D66
-0x80AF = 0x4E39
-0x80B1 = 0x4F39
-0x80B2 = 0x6930
-0x80B4 = 0x683A
-0x80BA = 0x5947
-0x80C3 = 0x5F30
-0x80C4 = 0x7466
-0x80C6 = 0x4043
-0x80CC = 0x5847
-0x80CE = 0x5B42
-0x80D6 = 0x7666
-0x80D9 = 0x7266
-0x80DA = 0x7566
-0x80DB = 0x7066
-0x80DD = 0x7366
-0x80DE = 0x264B
-0x80E1 = 0x5538
-0x80E4 = 0x7D30
-0x80E5 = 0x7166
-0x80EF = 0x7866
-0x80F1 = 0x7966
-0x80F4 = 0x3946
-0x80F8 = 0x3B36
-0x80FC = 0x2667
-0x80FD = 0x3D47
-0x8102 = 0x693B
-0x8105 = 0x3C36
-0x8106 = 0x4840
-0x8107 = 0x464F
-0x8108 = 0x2E4C
-0x8109 = 0x7766
-0x810A = 0x5440
-0x811A = 0x5335
-0x811B = 0x7A66
-0x8123 = 0x7C66
-0x8129 = 0x7B66
-0x812F = 0x7D66
-0x8131 = 0x2643
-0x8133 = 0x3E47
-0x8139 = 0x3144
-0x813E = 0x2367
-0x8146 = 0x2267
-0x814B = 0x7E66
-0x814E = 0x553F
-0x8150 = 0x6549
-0x8151 = 0x2567
-0x8153 = 0x2467
-0x8154 = 0x5039
-0x8155 = 0x534F
-0x815F = 0x3567
-0x8165 = 0x2967
-0x8166 = 0x2A67
-0x816B = 0x703C
-0x816E = 0x2867
-0x8170 = 0x7839
-0x8171 = 0x2767
-0x8174 = 0x2B67
-0x8178 = 0x3244
-0x8179 = 0x224A
-0x817A = 0x2341
-0x817F = 0x5C42
-0x8180 = 0x2F67
-0x8182 = 0x3067
-0x8183 = 0x2C67
-0x8188 = 0x2D67
-0x818A = 0x2E67
-0x818F = 0x5139
-0x8193 = 0x3667
-0x8195 = 0x3267
-0x819A = 0x6649
-0x819C = 0x6C4B
-0x819D = 0x2849
-0x81A0 = 0x3167
-0x81A3 = 0x3467
-0x81A4 = 0x3367
-0x81A8 = 0x444B
-0x81A9 = 0x3767
-0x81B0 = 0x3867
-0x81B3 = 0x3741
-0x81B5 = 0x3967
-0x81B8 = 0x3B67
-0x81BA = 0x3F67
-0x81BD = 0x3C67
-0x81BE = 0x3A67
-0x81BF = 0x3F47
-0x81C0 = 0x3D67
-0x81C2 = 0x3E67
-0x81C8 = 0x4567
-0x81C9 = 0x4067
-0x81CD = 0x4167
-0x81D1 = 0x4267
-0x81D3 = 0x2142
-0x81D8 = 0x4467
-0x81D9 = 0x4367
-0x81DA = 0x4667
-0x81DF = 0x4767
-0x81E0 = 0x4867
-0x81E3 = 0x433F
-0x81E5 = 0x6932
-0x81E7 = 0x4967
-0x81E8 = 0x574E
-0x81EA = 0x2B3C
-0x81ED = 0x2D3D
-0x81F3 = 0x6A3B
-0x81F4 = 0x5743
-0x81FA = 0x4A67
-0x81FB = 0x4B67
-0x81FE = 0x4C67
-0x8201 = 0x4D67
-0x8202 = 0x4E67
-0x8205 = 0x4F67
-0x8207 = 0x5067
-0x8208 = 0x3D36
-0x8209 = 0x2A5A
-0x820A = 0x5167
-0x820C = 0x6540
-0x820D = 0x5267
-0x820E = 0x4B3C
-0x8210 = 0x5367
-0x8212 = 0x3050
-0x8216 = 0x5467
-0x8217 = 0x5E4A
-0x8218 = 0x5C34
-0x821B = 0x2441
-0x821C = 0x583D
-0x821E = 0x7149
-0x821F = 0x2E3D
-0x8229 = 0x5567
-0x822A = 0x5239
-0x822B = 0x5667
-0x822C = 0x4C48
-0x822E = 0x6467
-0x8233 = 0x5867
-0x8235 = 0x4942
-0x8236 = 0x7547
-0x8237 = 0x3F38
-0x8238 = 0x5767
-0x8239 = 0x2541
-0x8240 = 0x5967
-0x8247 = 0x7A44
-0x8258 = 0x5B67
-0x8259 = 0x5A67
-0x825A = 0x5D67
-0x825D = 0x5C67
-0x825F = 0x5E67
-0x8262 = 0x6067
-0x8264 = 0x5F67
-0x8266 = 0x4F34
-0x8268 = 0x6167
-0x826A = 0x6267
-0x826B = 0x6367
-0x826E = 0x313A
-0x826F = 0x494E
-0x8271 = 0x6567
-0x8272 = 0x273F
-0x8276 = 0x7031
-0x8277 = 0x6667
-0x827E = 0x6867
-0x828B = 0x7230
-0x828D = 0x6967
-0x8292 = 0x6A67
-0x8299 = 0x6749
-0x829D = 0x473C
-0x829F = 0x6C67
-0x82A5 = 0x2933
-0x82A6 = 0x3230
-0x82AB = 0x6B67
-0x82AC = 0x6E67
-0x82AD = 0x4E47
-0x82AF = 0x443F
-0x82B1 = 0x5632
-0x82B3 = 0x274B
-0x82B8 = 0x5D37
-0x82B9 = 0x5C36
-0x82BB = 0x6D67
-0x82BD = 0x6A32
-0x82C5 = 0x2334
-0x82D1 = 0x7131
-0x82D2 = 0x7267
-0x82D3 = 0x6A4E
-0x82D4 = 0x5D42
-0x82D7 = 0x4449
-0x82D9 = 0x7E67
-0x82DB = 0x5732
-0x82DC = 0x7C67
-0x82DE = 0x7A67
-0x82DF = 0x7167
-0x82E1 = 0x6F67
-0x82E3 = 0x7067
-0x82E5 = 0x633C
-0x82E6 = 0x6C36
-0x82E7 = 0x7743
-0x82EB = 0x5146
-0x82F1 = 0x5131
-0x82F3 = 0x7467
-0x82F4 = 0x7367
-0x82F9 = 0x7967
-0x82FA = 0x7567
-0x82FB = 0x7867
-0x8302 = 0x504C
-0x8303 = 0x7767
-0x8304 = 0x5832
-0x8305 = 0x7D33
-0x8306 = 0x7B67
-0x8309 = 0x7D67
-0x830E = 0x5437
-0x8316 = 0x2368
-0x8317 = 0x2C68
-0x8318 = 0x2D68
-0x831C = 0x2B30
-0x8323 = 0x3468
-0x8328 = 0x7130
-0x832B = 0x2B68
-0x832F = 0x2A68
-0x8331 = 0x2568
-0x8332 = 0x2468
-0x8334 = 0x2268
-0x8335 = 0x2168
-0x8336 = 0x6343
-0x8338 = 0x7B42
-0x8339 = 0x2768
-0x8340 = 0x2668
-0x8345 = 0x2968
-0x8349 = 0x7041
-0x834A = 0x5537
-0x834F = 0x4131
-0x8350 = 0x2868
-0x8352 = 0x5339
-0x8358 = 0x7141
-0x8373 = 0x3A68
-0x8375 = 0x3B68
-0x8377 = 0x5932
-0x837B = 0x2E32
-0x837C = 0x3868
-0x8385 = 0x2E68
-0x8387 = 0x3668
-0x8389 = 0x3D68
-0x838A = 0x3768
-0x838E = 0x3568
-0x8393 = 0x7667
-0x8396 = 0x3368
-0x839A = 0x2F68
-0x839E = 0x5034
-0x839F = 0x3168
-0x83A0 = 0x3C68
-0x83A2 = 0x3268
-0x83A8 = 0x3E68
-0x83AA = 0x3068
-0x83AB = 0x7C47
-0x83B1 = 0x694D
-0x83B5 = 0x3968
-0x83BD = 0x4F68
-0x83C1 = 0x4768
-0x83C5 = 0x7B3F
-0x83CA = 0x4635
-0x83CC = 0x5D36
-0x83CE = 0x4268
-0x83D3 = 0x5B32
-0x83D6 = 0x543E
-0x83D8 = 0x4568
-0x83DC = 0x5A3A
-0x83DF = 0x5145
-0x83E0 = 0x4A68
-0x83E9 = 0x6E4A
-0x83EB = 0x4168
-0x83EF = 0x5A32
-0x83F0 = 0x5638
-0x83F1 = 0x2949
-0x83F2 = 0x4B68
-0x83F4 = 0x3F68
-0x83F7 = 0x4868
-0x83FB = 0x5268
-0x83FD = 0x4368
-0x8403 = 0x4468
-0x8404 = 0x3A46
-0x8407 = 0x4968
-0x840B = 0x4668
-0x840C = 0x284B
-0x840D = 0x4C68
-0x840E = 0x6030
-0x8413 = 0x4068
-0x8420 = 0x4E68
-0x8422 = 0x4D68
-0x8429 = 0x6B47
-0x842A = 0x5468
-0x842C = 0x5F68
-0x8431 = 0x7E33
-0x8435 = 0x6268
-0x8438 = 0x5068
-0x843C = 0x5568
-0x843D = 0x6E4D
-0x8446 = 0x5E68
-0x8449 = 0x554D
-0x844E = 0x2A4E
-0x8457 = 0x7843
-0x845B = 0x6B33
-0x8461 = 0x7249
-0x8462 = 0x6468
-0x8463 = 0x2146
-0x8466 = 0x3130
-0x8469 = 0x5D68
-0x846B = 0x5968
-0x846C = 0x7241
-0x846D = 0x5368
-0x846E = 0x5B68
-0x846F = 0x6068
-0x8471 = 0x2C47
-0x8475 = 0x2A30
-0x8477 = 0x5868
-0x8479 = 0x6168
-0x847A = 0x7849
-0x8482 = 0x5C68
-0x8484 = 0x5768
-0x848B = 0x553E
-0x8490 = 0x2F3D
-0x8494 = 0x2C3C
-0x8499 = 0x584C
-0x849C = 0x4749
-0x849F = 0x6768
-0x84A1 = 0x7068
-0x84AD = 0x5A68
-0x84B2 = 0x7733
-0x84B8 = 0x783E
-0x84B9 = 0x6568
-0x84BB = 0x6A68
-0x84BC = 0x7341
-0x84BF = 0x6668
-0x84C1 = 0x6D68
-0x84C4 = 0x5F43
-0x84C6 = 0x6E68
-0x84C9 = 0x564D
-0x84CA = 0x6368
-0x84CB = 0x3833
-0x84CD = 0x6968
-0x84D0 = 0x6C68
-0x84D1 = 0x2C4C
-0x84D6 = 0x6F68
-0x84DA = 0x6B68
-0x84EC = 0x294B
-0x84EE = 0x214F
-0x84F4 = 0x7368
-0x84FC = 0x7A68
-0x84FF = 0x7268
-0x8500 = 0x433C
-0x8506 = 0x5168
-0x8511 = 0x4E4A
-0x8513 = 0x224C
-0x8514 = 0x7968
-0x8515 = 0x7868
-0x8517 = 0x7468
-0x8518 = 0x7568
-0x851A = 0x3631
-0x851F = 0x7768
-0x8521 = 0x7168
-0x8526 = 0x5544
-0x852C = 0x7668
-0x852D = 0x7E30
-0x8535 = 0x2242
-0x853D = 0x434A
-0x8540 = 0x7B68
-0x8541 = 0x2169
-0x8543 = 0x5948
-0x8548 = 0x7E68
-0x8549 = 0x563E
-0x854A = 0x493C
-0x854B = 0x2369
-0x854E = 0x3E36
-0x8555 = 0x2469
-0x8557 = 0x7949
-0x8558 = 0x7D68
-0x855A = 0x5668
-0x8563 = 0x7C68
-0x8569 = 0x2246
-0x856A = 0x7349
-0x856D = 0x2B69
-0x8577 = 0x3169
-0x857E = 0x3269
-0x8580 = 0x2569
-0x8584 = 0x7647
-0x8587 = 0x2F69
-0x8588 = 0x2769
-0x858A = 0x2969
-0x8590 = 0x3369
-0x8591 = 0x2869
-0x8594 = 0x2C69
-0x8597 = 0x7231
-0x8599 = 0x6546
-0x859B = 0x2D69
-0x859C = 0x3069
-0x85A4 = 0x2669
-0x85A6 = 0x2641
-0x85A8 = 0x2A69
-0x85A9 = 0x273B
-0x85AA = 0x453F
-0x85AB = 0x3037
-0x85AC = 0x744C
-0x85AE = 0x794C
-0x85AF = 0x723D
-0x85B9 = 0x3769
-0x85BA = 0x3569
-0x85C1 = 0x4E4F
-0x85C9 = 0x3469
-0x85CD = 0x754D
-0x85CF = 0x3669
-0x85D0 = 0x3869
-0x85D5 = 0x3969
-0x85DC = 0x3C69
-0x85DD = 0x3A69
-0x85E4 = 0x2346
-0x85E5 = 0x3B69
-0x85E9 = 0x4D48
-0x85EA = 0x2E69
-0x85F7 = 0x733D
-0x85F9 = 0x3D69
-0x85FA = 0x4269
-0x85FB = 0x7441
-0x85FE = 0x4169
-0x8602 = 0x2269
-0x8606 = 0x4369
-0x8607 = 0x4941
-0x860A = 0x3E69
-0x860B = 0x4069
-0x8613 = 0x3F69
-0x8616 = 0x315D
-0x8617 = 0x225D
-0x861A = 0x4569
-0x8622 = 0x4469
-0x862D = 0x764D
-0x862F = 0x3C62
-0x8630 = 0x4669
-0x863F = 0x4769
-0x864D = 0x4869
-0x864E = 0x5738
-0x8650 = 0x5435
-0x8654 = 0x4A69
-0x8655 = 0x5D51
-0x865A = 0x7535
-0x865C = 0x3A4E
-0x865E = 0x7336
-0x865F = 0x4B69
-0x8667 = 0x4C69
-0x866B = 0x6E43
-0x8671 = 0x4D69
-0x8679 = 0x7A46
-0x867B = 0x3A30
-0x868A = 0x6332
-0x868B = 0x5269
-0x868C = 0x5369
-0x8693 = 0x4E69
-0x8695 = 0x3D3B
-0x86A3 = 0x4F69
-0x86A4 = 0x4247
-0x86A9 = 0x5069
-0x86AA = 0x5169
-0x86AB = 0x5B69
-0x86AF = 0x5569
-0x86B0 = 0x5869
-0x86B6 = 0x5469
-0x86C4 = 0x5669
-0x86C6 = 0x5769
-0x86C7 = 0x583C
-0x86C9 = 0x5969
-0x86CB = 0x4143
-0x86CD = 0x5637
-0x86CE = 0x4233
-0x86D4 = 0x5C69
-0x86D9 = 0x3F33
-0x86DB = 0x6169
-0x86DE = 0x5D69
-0x86DF = 0x6069
-0x86E4 = 0x3A48
-0x86E9 = 0x5E69
-0x86EC = 0x5F69
-0x86ED = 0x4849
-0x86EE = 0x5A48
-0x86EF = 0x6269
-0x86F8 = 0x7D42
-0x86F9 = 0x6C69
-0x86FB = 0x6869
-0x86FE = 0x6B32
-0x8700 = 0x6669
-0x8702 = 0x2A4B
-0x8703 = 0x6769
-0x8706 = 0x6469
-0x8708 = 0x6569
-0x8709 = 0x6A69
-0x870A = 0x6D69
-0x870D = 0x6B69
-0x8712 = 0x6369
-0x8718 = 0x5843
-0x871A = 0x7469
-0x871C = 0x2A4C
-0x8725 = 0x7269
-0x8729 = 0x7369
-0x8734 = 0x6E69
-0x8737 = 0x7069
-0x873B = 0x7169
-0x873F = 0x6F69
-0x8749 = 0x6640
-0x874B = 0x394F
-0x874C = 0x7869
-0x874E = 0x7969
-0x8753 = 0x216A
-0x8755 = 0x2A3F
-0x8757 = 0x7B69
-0x8759 = 0x7E69
-0x875F = 0x7669
-0x8760 = 0x7569
-0x8763 = 0x226A
-0x8766 = 0x5C32
-0x8768 = 0x7C69
-0x876A = 0x236A
-0x876E = 0x7D69
-0x8774 = 0x7A69
-0x8776 = 0x3344
-0x8778 = 0x7769
-0x877F = 0x6847
-0x8782 = 0x276A
-0x878D = 0x3B4D
-0x879F = 0x266A
-0x87A2 = 0x256A
-0x87AB = 0x2E6A
-0x87AF = 0x286A
-0x87B3 = 0x306A
-0x87BA = 0x664D
-0x87BB = 0x336A
-0x87BD = 0x2A6A
-0x87C0 = 0x2B6A
-0x87C4 = 0x2F6A
-0x87C6 = 0x326A
-0x87C7 = 0x316A
-0x87CB = 0x296A
-0x87D0 = 0x2C6A
-0x87D2 = 0x3D6A
-0x87E0 = 0x366A
-0x87EF = 0x346A
-0x87F2 = 0x356A
-0x87F6 = 0x3A6A
-0x87F7 = 0x3B6A
-0x87F9 = 0x2A33
-0x87FB = 0x4235
-0x87FE = 0x396A
-0x8805 = 0x246A
-0x880D = 0x386A
-0x880E = 0x3C6A
-0x880F = 0x376A
-0x8811 = 0x3E6A
-0x8815 = 0x406A
-0x8816 = 0x3F6A
-0x8821 = 0x426A
-0x8822 = 0x416A
-0x8823 = 0x5A69
-0x8827 = 0x466A
-0x8831 = 0x436A
-0x8836 = 0x446A
-0x8839 = 0x456A
-0x883B = 0x476A
-0x8840 = 0x6C37
-0x8842 = 0x496A
-0x8844 = 0x486A
-0x8846 = 0x303D
-0x884C = 0x5439
-0x884D = 0x275E
-0x8852 = 0x4A6A
-0x8853 = 0x513D
-0x8857 = 0x3933
-0x8859 = 0x4B6A
-0x885B = 0x5231
-0x885D = 0x573E
-0x885E = 0x4C6A
-0x8861 = 0x5539
-0x8862 = 0x4D6A
-0x8863 = 0x6130
-0x8868 = 0x3D49
-0x886B = 0x4E6A
-0x8870 = 0x6A3F
-0x8872 = 0x556A
-0x8875 = 0x526A
-0x8877 = 0x6F43
-0x887D = 0x536A
-0x887E = 0x506A
-0x887F = 0x5E36
-0x8881 = 0x4F6A
-0x8882 = 0x566A
-0x8888 = 0x3637
-0x888B = 0x5E42
-0x888D = 0x5C6A
-0x8892 = 0x586A
-0x8896 = 0x3542
-0x8897 = 0x576A
-0x8899 = 0x5A6A
-0x889E = 0x516A
-0x88A2 = 0x5B6A
-0x88A4 = 0x5D6A
-0x88AB = 0x6F48
-0x88AE = 0x596A
-0x88B0 = 0x5E6A
-0x88B1 = 0x606A
-0x88B4 = 0x5338
-0x88B5 = 0x546A
-0x88B7 = 0x4130
-0x88BF = 0x5F6A
-0x88C1 = 0x5B3A
-0x88C2 = 0x764E
-0x88C3 = 0x616A
-0x88C4 = 0x626A
-0x88C5 = 0x7541
-0x88CF = 0x224E
-0x88D4 = 0x636A
-0x88D5 = 0x354D
-0x88D8 = 0x646A
-0x88D9 = 0x656A
-0x88DC = 0x644A
-0x88DD = 0x666A
-0x88DF = 0x403A
-0x88E1 = 0x234E
-0x88E8 = 0x6B6A
-0x88F2 = 0x6C6A
-0x88F3 = 0x583E
-0x88F8 = 0x674D
-0x88F9 = 0x676A
-0x88FC = 0x696A
-0x88FD = 0x3D40
-0x88FE = 0x7E3F
-0x8902 = 0x686A
-0x8904 = 0x6D6A
-0x8907 = 0x234A
-0x890A = 0x6F6A
-0x890C = 0x6E6A
-0x8910 = 0x6C33
-0x8912 = 0x2B4B
-0x8913 = 0x706A
-0x891D = 0x7C6A
-0x891E = 0x726A
-0x8925 = 0x736A
-0x892A = 0x746A
-0x892B = 0x756A
-0x8936 = 0x796A
-0x8938 = 0x7A6A
-0x893B = 0x786A
-0x8941 = 0x766A
-0x8943 = 0x716A
-0x8944 = 0x776A
-0x894C = 0x7B6A
-0x894D = 0x3770
-0x8956 = 0x2832
-0x895E = 0x7E6A
-0x895F = 0x5F36
-0x8960 = 0x7D6A
-0x8964 = 0x226B
-0x8966 = 0x216B
-0x896A = 0x246B
-0x896D = 0x236B
-0x896F = 0x256B
-0x8972 = 0x313D
-0x8974 = 0x266B
-0x8977 = 0x276B
-0x897E = 0x286B
-0x897F = 0x3E40
-0x8981 = 0x574D
-0x8983 = 0x296B
-0x8986 = 0x244A
-0x8987 = 0x4647
-0x8988 = 0x2A6B
-0x898A = 0x2B6B
-0x898B = 0x2B38
-0x898F = 0x2C35
-0x8993 = 0x2C6B
-0x8996 = 0x6B3B
-0x8997 = 0x4147
-0x8998 = 0x2D6B
-0x899A = 0x5033
-0x89A1 = 0x2E6B
-0x89A6 = 0x306B
-0x89A7 = 0x774D
-0x89A9 = 0x2F6B
-0x89AA = 0x463F
-0x89AC = 0x316B
-0x89AF = 0x326B
-0x89B2 = 0x336B
-0x89B3 = 0x5134
-0x89BA = 0x346B
-0x89BD = 0x356B
-0x89BF = 0x366B
-0x89C0 = 0x376B
-0x89D2 = 0x5133
-0x89DA = 0x386B
-0x89DC = 0x396B
-0x89DD = 0x3A6B
-0x89E3 = 0x7232
-0x89E6 = 0x283F
-0x89E7 = 0x3B6B
-0x89F4 = 0x3C6B
-0x89F8 = 0x3D6B
-0x8A00 = 0x4038
-0x8A02 = 0x7B44
-0x8A03 = 0x3E6B
-0x8A08 = 0x5737
-0x8A0A = 0x563F
-0x8A0C = 0x416B
-0x8A0E = 0x2446
-0x8A10 = 0x406B
-0x8A13 = 0x3137
-0x8A16 = 0x3F6B
-0x8A17 = 0x7742
-0x8A18 = 0x2D35
-0x8A1B = 0x426B
-0x8A1D = 0x436B
-0x8A1F = 0x593E
-0x8A23 = 0x6D37
-0x8A25 = 0x446B
-0x8A2A = 0x2C4B
-0x8A2D = 0x5F40
-0x8A31 = 0x7635
-0x8A33 = 0x754C
-0x8A34 = 0x4A41
-0x8A36 = 0x456B
-0x8A3A = 0x473F
-0x8A3B = 0x7043
-0x8A3C = 0x5A3E
-0x8A41 = 0x466B
-0x8A46 = 0x496B
-0x8A48 = 0x4A6B
-0x8A50 = 0x3E3A
-0x8A52 = 0x486B
-0x8A54 = 0x5B3E
-0x8A55 = 0x3E49
-0x8A5B = 0x476B
-0x8A5E = 0x6C3B
-0x8A60 = 0x5331
-0x8A62 = 0x4E6B
-0x8A63 = 0x5837
-0x8A66 = 0x6E3B
-0x8A69 = 0x6D3B
-0x8A6B = 0x4D4F
-0x8A6C = 0x4D6B
-0x8A6D = 0x4C6B
-0x8A6E = 0x2741
-0x8A70 = 0x4D35
-0x8A71 = 0x434F
-0x8A72 = 0x3A33
-0x8A73 = 0x5C3E
-0x8A7C = 0x4B6B
-0x8A82 = 0x506B
-0x8A84 = 0x516B
-0x8A85 = 0x4F6B
-0x8A87 = 0x5838
-0x8A89 = 0x404D
-0x8A8C = 0x6F3B
-0x8A8D = 0x2747
-0x8A91 = 0x546B
-0x8A95 = 0x4243
-0x8A98 = 0x364D
-0x8A9A = 0x576B
-0x8A9E = 0x6C38
-0x8AA0 = 0x3F40
-0x8AA1 = 0x536B
-0x8AA3 = 0x586B
-0x8AA4 = 0x6D38
-0x8AA5 = 0x556B
-0x8AA6 = 0x566B
-0x8AA8 = 0x526B
-0x8AAC = 0x6240
-0x8AAD = 0x4946
-0x8AB0 = 0x2F43
-0x8AB2 = 0x5D32
-0x8AB9 = 0x7048
-0x8ABC = 0x4335
-0x8ABF = 0x3444
-0x8AC2 = 0x5B6B
-0x8AC4 = 0x596B
-0x8AC7 = 0x4C43
-0x8ACB = 0x4140
-0x8ACC = 0x5234
-0x8ACD = 0x5A6B
-0x8ACF = 0x5B3F
-0x8AD2 = 0x4A4E
-0x8AD6 = 0x404F
-0x8ADA = 0x5C6B
-0x8ADB = 0x676B
-0x8ADC = 0x3544
-0x8ADE = 0x666B
-0x8AE0 = 0x636B
-0x8AE2 = 0x646B
-0x8AE4 = 0x606B
-0x8AE6 = 0x7C44
-0x8AE7 = 0x5F6B
-0x8AEB = 0x5D6B
-0x8AED = 0x214D
-0x8AEE = 0x703B
-0x8AF1 = 0x616B
-0x8AF3 = 0x5E6B
-0x8AF7 = 0x656B
-0x8AF8 = 0x743D
-0x8AFA = 0x4138
-0x8AFE = 0x7A42
-0x8B00 = 0x454B
-0x8B01 = 0x5A31
-0x8B02 = 0x6230
-0x8B04 = 0x2546
-0x8B07 = 0x696B
-0x8B0C = 0x686B
-0x8B0E = 0x6646
-0x8B10 = 0x6D6B
-0x8B14 = 0x626B
-0x8B16 = 0x6C6B
-0x8B17 = 0x6E6B
-0x8B19 = 0x2C38
-0x8B1A = 0x6A6B
-0x8B1B = 0x5639
-0x8B1D = 0x553C
-0x8B20 = 0x6F6B
-0x8B21 = 0x584D
-0x8B26 = 0x726B
-0x8B28 = 0x756B
-0x8B2B = 0x736B
-0x8B2C = 0x3549
-0x8B33 = 0x706B
-0x8B39 = 0x6036
-0x8B3E = 0x746B
-0x8B41 = 0x766B
-0x8B49 = 0x7A6B
-0x8B4C = 0x776B
-0x8B4E = 0x796B
-0x8B4F = 0x786B
-0x8B56 = 0x7B6B
-0x8B58 = 0x313C
-0x8B5A = 0x7D6B
-0x8B5B = 0x7C6B
-0x8B5C = 0x6849
-0x8B5F = 0x216C
-0x8B66 = 0x5937
-0x8B6B = 0x7E6B
-0x8B6C = 0x226C
-0x8B6F = 0x236C
-0x8B70 = 0x4435
-0x8B71 = 0x4166
-0x8B72 = 0x793E
-0x8B74 = 0x246C
-0x8B77 = 0x6E38
-0x8B7D = 0x256C
-0x8B80 = 0x266C
-0x8B83 = 0x3E3B
-0x8B8A = 0x4E5A
-0x8B8C = 0x276C
-0x8B8E = 0x286C
-0x8B90 = 0x323D
-0x8B92 = 0x296C
-0x8B93 = 0x2A6C
-0x8B96 = 0x2B6C
-0x8B99 = 0x2C6C
-0x8B9A = 0x2D6C
-0x8C37 = 0x2B43
-0x8C3A = 0x2E6C
-0x8C3F = 0x306C
-0x8C41 = 0x2F6C
-0x8C46 = 0x2646
-0x8C48 = 0x316C
-0x8C4A = 0x2D4B
-0x8C4C = 0x326C
-0x8C4E = 0x336C
-0x8C50 = 0x346C
-0x8C55 = 0x356C
-0x8C5A = 0x5A46
-0x8C61 = 0x5D3E
-0x8C62 = 0x366C
-0x8C6A = 0x6B39
-0x8C6B = 0x2E50
-0x8C6C = 0x376C
-0x8C78 = 0x386C
-0x8C79 = 0x3F49
-0x8C7A = 0x396C
-0x8C7C = 0x416C
-0x8C82 = 0x3A6C
-0x8C85 = 0x3C6C
-0x8C89 = 0x3B6C
-0x8C8A = 0x3D6C
-0x8C8C = 0x464B
-0x8C8D = 0x3E6C
-0x8C8E = 0x3F6C
-0x8C94 = 0x406C
-0x8C98 = 0x426C
-0x8C9D = 0x2D33
-0x8C9E = 0x6744
-0x8CA0 = 0x6949
-0x8CA1 = 0x623A
-0x8CA2 = 0x5739
-0x8CA7 = 0x4F49
-0x8CA8 = 0x5F32
-0x8CA9 = 0x4E48
-0x8CAA = 0x456C
-0x8CAB = 0x5334
-0x8CAC = 0x5540
-0x8CAD = 0x446C
-0x8CAE = 0x496C
-0x8CAF = 0x7943
-0x8CB0 = 0x634C
-0x8CB2 = 0x476C
-0x8CB3 = 0x486C
-0x8CB4 = 0x2E35
-0x8CB6 = 0x4A6C
-0x8CB7 = 0x6347
-0x8CB8 = 0x5F42
-0x8CBB = 0x7148
-0x8CBC = 0x3D45
-0x8CBD = 0x466C
-0x8CBF = 0x474B
-0x8CC0 = 0x6C32
-0x8CC1 = 0x4C6C
-0x8CC2 = 0x284F
-0x8CC3 = 0x4244
-0x8CC4 = 0x454F
-0x8CC7 = 0x713B
-0x8CC8 = 0x4B6C
-0x8CCA = 0x3142
-0x8CCD = 0x5C6C
-0x8CCE = 0x2841
-0x8CD1 = 0x7846
-0x8CD3 = 0x5049
-0x8CDA = 0x4F6C
-0x8CDB = 0x3F3B
-0x8CDC = 0x723B
-0x8CDE = 0x5E3E
-0x8CE0 = 0x6547
-0x8CE2 = 0x2D38
-0x8CE3 = 0x4E6C
-0x8CE4 = 0x4D6C
-0x8CE6 = 0x6A49
-0x8CEA = 0x413C
-0x8CED = 0x5245
-0x8CFA = 0x516C
-0x8CFB = 0x526C
-0x8CFC = 0x5839
-0x8CFD = 0x506C
-0x8D04 = 0x536C
-0x8D05 = 0x546C
-0x8D07 = 0x566C
-0x8D08 = 0x2342
-0x8D0A = 0x556C
-0x8D0B = 0x6634
-0x8D0D = 0x586C
-0x8D0F = 0x576C
-0x8D10 = 0x596C
-0x8D13 = 0x5B6C
-0x8D14 = 0x5D6C
-0x8D16 = 0x5E6C
-0x8D64 = 0x5640
-0x8D66 = 0x4F3C
-0x8D67 = 0x5F6C
-0x8D6B = 0x5233
-0x8D6D = 0x606C
-0x8D70 = 0x7641
-0x8D71 = 0x616C
-0x8D73 = 0x626C
-0x8D74 = 0x6B49
-0x8D77 = 0x2F35
-0x8D81 = 0x636C
-0x8D85 = 0x3644
-0x8D8A = 0x5B31
-0x8D99 = 0x646C
-0x8DA3 = 0x713C
-0x8DA8 = 0x763F
-0x8DB3 = 0x2D42
-0x8DBA = 0x676C
-0x8DBE = 0x666C
-0x8DC2 = 0x656C
-0x8DCB = 0x6D6C
-0x8DCC = 0x6B6C
-0x8DCF = 0x686C
-0x8DD6 = 0x6A6C
-0x8DDA = 0x696C
-0x8DDD = 0x7735
-0x8DDF = 0x706C
-0x8DE1 = 0x5740
-0x8DE3 = 0x716C
-0x8DE8 = 0x5938
-0x8DEA = 0x6E6C
-0x8DEB = 0x6F6C
-0x8DEF = 0x294F
-0x8DF3 = 0x3744
-0x8DF5 = 0x2941
-0x8DFC = 0x726C
-0x8DFF = 0x756C
-0x8E08 = 0x736C
-0x8E09 = 0x746C
-0x8E0A = 0x594D
-0x8E0F = 0x2746
-0x8E10 = 0x786C
-0x8E1D = 0x766C
-0x8E1E = 0x776C
-0x8E1F = 0x796C
-0x8E2A = 0x296D
-0x8E30 = 0x7C6C
-0x8E34 = 0x7D6C
-0x8E35 = 0x7B6C
-0x8E42 = 0x7A6C
-0x8E44 = 0x7D44
-0x8E47 = 0x216D
-0x8E48 = 0x256D
-0x8E49 = 0x226D
-0x8E4A = 0x7E6C
-0x8E4C = 0x236D
-0x8E50 = 0x246D
-0x8E55 = 0x2B6D
-0x8E59 = 0x266D
-0x8E5F = 0x5840
-0x8E60 = 0x286D
-0x8E63 = 0x2A6D
-0x8E64 = 0x276D
-0x8E72 = 0x2D6D
-0x8E74 = 0x333D
-0x8E76 = 0x2C6D
-0x8E7C = 0x2E6D
-0x8E81 = 0x2F6D
-0x8E84 = 0x326D
-0x8E85 = 0x316D
-0x8E87 = 0x306D
-0x8E8A = 0x346D
-0x8E8B = 0x336D
-0x8E8D = 0x764C
-0x8E91 = 0x366D
-0x8E93 = 0x356D
-0x8E94 = 0x376D
-0x8E99 = 0x386D
-0x8EA1 = 0x3A6D
-0x8EAA = 0x396D
-0x8EAB = 0x483F
-0x8EAC = 0x3B6D
-0x8EAF = 0x6D36
-0x8EB0 = 0x3C6D
-0x8EB1 = 0x3E6D
-0x8EBE = 0x3F6D
-0x8EC5 = 0x406D
-0x8EC6 = 0x3D6D
-0x8EC8 = 0x416D
-0x8ECA = 0x563C
-0x8ECB = 0x426D
-0x8ECC = 0x3035
-0x8ECD = 0x3337
-0x8ED2 = 0x2E38
-0x8EDB = 0x436D
-0x8EDF = 0x7046
-0x8EE2 = 0x3E45
-0x8EE3 = 0x446D
-0x8EEB = 0x476D
-0x8EF8 = 0x343C
-0x8EFB = 0x466D
-0x8EFC = 0x456D
-0x8EFD = 0x5A37
-0x8EFE = 0x486D
-0x8F03 = 0x5333
-0x8F05 = 0x4A6D
-0x8F09 = 0x5C3A
-0x8F0A = 0x496D
-0x8F0C = 0x526D
-0x8F12 = 0x4C6D
-0x8F13 = 0x4E6D
-0x8F14 = 0x654A
-0x8F15 = 0x4B6D
-0x8F19 = 0x4D6D
-0x8F1B = 0x516D
-0x8F1C = 0x4F6D
-0x8F1D = 0x3135
-0x8F1F = 0x506D
-0x8F26 = 0x536D
-0x8F29 = 0x5A47
-0x8F2A = 0x584E
-0x8F2F = 0x343D
-0x8F33 = 0x546D
-0x8F38 = 0x224D
-0x8F39 = 0x566D
-0x8F3B = 0x556D
-0x8F3E = 0x596D
-0x8F3F = 0x414D
-0x8F42 = 0x586D
-0x8F44 = 0x6D33
-0x8F45 = 0x576D
-0x8F46 = 0x5C6D
-0x8F49 = 0x5B6D
-0x8F4C = 0x5A6D
-0x8F4D = 0x3245
-0x8F4E = 0x5D6D
-0x8F57 = 0x5E6D
-0x8F5C = 0x5F6D
-0x8F5F = 0x6C39
-0x8F61 = 0x2537
-0x8F62 = 0x606D
-0x8F63 = 0x616D
-0x8F64 = 0x626D
-0x8F9B = 0x493F
-0x8F9C = 0x636D
-0x8F9E = 0x2D3C
-0x8F9F = 0x646D
-0x8FA3 = 0x656D
-0x8FA7 = 0x2152
-0x8FA8 = 0x7E51
-0x8FAD = 0x666D
-0x8FAE = 0x7065
-0x8FAF = 0x676D
-0x8FB0 = 0x2443
-0x8FB1 = 0x2B3F
-0x8FB2 = 0x4047
-0x8FB7 = 0x686D
-0x8FBA = 0x554A
-0x8FBB = 0x5444
-0x8FBC = 0x7E39
-0x8FBF = 0x2943
-0x8FC2 = 0x2A31
-0x8FC4 = 0x784B
-0x8FC5 = 0x573F
-0x8FCE = 0x5E37
-0x8FD1 = 0x6136
-0x8FD4 = 0x564A
-0x8FDA = 0x696D
-0x8FE2 = 0x6B6D
-0x8FE5 = 0x6A6D
-0x8FE6 = 0x6032
-0x8FE9 = 0x7646
-0x8FEA = 0x6C6D
-0x8FEB = 0x7747
-0x8FED = 0x3345
-0x8FF0 = 0x523D
-0x8FF4 = 0x6F6D
-0x8FF7 = 0x424C
-0x8FF8 = 0x7E6D
-0x8FF9 = 0x716D
-0x8FFA = 0x726D
-0x8FFD = 0x4944
-0x9000 = 0x6042
-0x9001 = 0x7741
-0x9003 = 0x2846
-0x9005 = 0x706D
-0x9006 = 0x5535
-0x900B = 0x796D
-0x900D = 0x766D
-0x900E = 0x256E
-0x900F = 0x2946
-0x9010 = 0x6043
-0x9011 = 0x736D
-0x9013 = 0x7E44
-0x9014 = 0x5345
-0x9015 = 0x746D
-0x9016 = 0x786D
-0x9017 = 0x603F
-0x9019 = 0x6747
-0x901A = 0x4C44
-0x901D = 0x4240
-0x901E = 0x776D
-0x901F = 0x2E42
-0x9020 = 0x2442
-0x9021 = 0x756D
-0x9022 = 0x2930
-0x9023 = 0x224F
-0x9027 = 0x7A6D
-0x902E = 0x6142
-0x9031 = 0x353D
-0x9032 = 0x4A3F
-0x9035 = 0x7C6D
-0x9036 = 0x7B6D
-0x9038 = 0x6F30
-0x9039 = 0x7D6D
-0x903C = 0x2F49
-0x903E = 0x276E
-0x9041 = 0x5B46
-0x9042 = 0x6B3F
-0x9045 = 0x5943
-0x9047 = 0x7836
-0x9049 = 0x266E
-0x904A = 0x374D
-0x904B = 0x3F31
-0x904D = 0x574A
-0x904E = 0x6132
-0x904F = 0x216E
-0x9050 = 0x226E
-0x9051 = 0x236E
-0x9052 = 0x246E
-0x9053 = 0x3B46
-0x9054 = 0x2343
-0x9055 = 0x6330
-0x9056 = 0x286E
-0x9058 = 0x296E
-0x9059 = 0x2374
-0x905C = 0x3D42
-0x905E = 0x2A6E
-0x9060 = 0x7331
-0x9061 = 0x4C41
-0x9063 = 0x2F38
-0x9065 = 0x5A4D
-0x9068 = 0x2B6E
-0x9069 = 0x2C45
-0x906D = 0x7841
-0x906E = 0x573C
-0x906F = 0x2C6E
-0x9072 = 0x2F6E
-0x9075 = 0x653D
-0x9076 = 0x2D6E
-0x9077 = 0x2B41
-0x9078 = 0x2A41
-0x907A = 0x6430
-0x907C = 0x4B4E
-0x907D = 0x316E
-0x907F = 0x7248
-0x9080 = 0x336E
-0x9081 = 0x326E
-0x9082 = 0x306E
-0x9083 = 0x6463
-0x9084 = 0x5434
-0x9087 = 0x6E6D
-0x9089 = 0x356E
-0x908A = 0x346E
-0x908F = 0x366E
-0x9091 = 0x384D
-0x90A3 = 0x6146
-0x90A6 = 0x2E4B
-0x90A8 = 0x376E
-0x90AA = 0x593C
-0x90AF = 0x386E
-0x90B1 = 0x396E
-0x90B5 = 0x3A6E
-0x90B8 = 0x2145
-0x90C1 = 0x6A30
-0x90CA = 0x5939
-0x90CE = 0x3A4F
-0x90DB = 0x3E6E
-0x90E1 = 0x3437
-0x90E2 = 0x3B6E
-0x90E4 = 0x3C6E
-0x90E8 = 0x7449
-0x90ED = 0x5433
-0x90F5 = 0x394D
-0x90F7 = 0x3F36
-0x90FD = 0x5445
-0x9102 = 0x3F6E
-0x9112 = 0x406E
-0x9119 = 0x416E
-0x912D = 0x2245
-0x9130 = 0x436E
-0x9132 = 0x426E
-0x9149 = 0x5346
-0x914A = 0x446E
-0x914B = 0x363D
-0x914C = 0x603C
-0x914D = 0x5B47
-0x914E = 0x7143
-0x9152 = 0x723C
-0x9154 = 0x6C3F
-0x9156 = 0x456E
-0x9158 = 0x466E
-0x9162 = 0x5D3F
-0x9163 = 0x476E
-0x9165 = 0x486E
-0x9169 = 0x496E
-0x916A = 0x6F4D
-0x916C = 0x373D
-0x9172 = 0x4B6E
-0x9173 = 0x4A6E
-0x9175 = 0x5A39
-0x9177 = 0x7339
-0x9178 = 0x403B
-0x9182 = 0x4E6E
-0x9187 = 0x663D
-0x9189 = 0x4D6E
-0x918B = 0x4C6E
-0x918D = 0x6942
-0x9190 = 0x6F38
-0x9192 = 0x4340
-0x9197 = 0x3048
-0x919C = 0x393D
-0x91A2 = 0x4F6E
-0x91A4 = 0x5F3E
-0x91AA = 0x526E
-0x91AB = 0x506E
-0x91AF = 0x516E
-0x91B4 = 0x546E
-0x91B5 = 0x536E
-0x91B8 = 0x7A3E
-0x91BA = 0x556E
-0x91C0 = 0x566E
-0x91C1 = 0x576E
-0x91C6 = 0x5048
-0x91C7 = 0x533A
-0x91C8 = 0x613C
-0x91C9 = 0x586E
-0x91CB = 0x596E
-0x91CC = 0x244E
-0x91CD = 0x453D
-0x91CE = 0x6E4C
-0x91CF = 0x4C4E
-0x91D0 = 0x5A6E
-0x91D1 = 0x6236
-0x91D6 = 0x5B6E
-0x91D8 = 0x2345
-0x91DB = 0x5E6E
-0x91DC = 0x7833
-0x91DD = 0x4B3F
-0x91DF = 0x5C6E
-0x91E1 = 0x5D6E
-0x91E3 = 0x6044
-0x91E6 = 0x554B
-0x91E7 = 0x7C36
-0x91F5 = 0x606E
-0x91F6 = 0x616E
-0x91FC = 0x5F6E
-0x91FF = 0x636E
-0x920D = 0x5F46
-0x920E = 0x4333
-0x9211 = 0x676E
-0x9214 = 0x646E
-0x9215 = 0x666E
-0x921E = 0x626E
-0x9229 = 0x4F6F
-0x922C = 0x656E
-0x9234 = 0x6B4E
-0x9237 = 0x5A38
-0x923F = 0x6F6E
-0x9244 = 0x3445
-0x9245 = 0x6A6E
-0x9248 = 0x6D6E
-0x9249 = 0x6B6E
-0x924B = 0x706E
-0x9250 = 0x716E
-0x9257 = 0x696E
-0x925A = 0x766E
-0x925B = 0x7431
-0x925E = 0x686E
-0x9262 = 0x2D48
-0x9264 = 0x6C6E
-0x9266 = 0x603E
-0x9271 = 0x5B39
-0x927E = 0x484B
-0x9280 = 0x6436
-0x9283 = 0x463D
-0x9285 = 0x3C46
-0x9291 = 0x2D41
-0x9293 = 0x746E
-0x9296 = 0x736E
-0x9298 = 0x434C
-0x929A = 0x3844
-0x929B = 0x756E
-0x929C = 0x726E
-0x92AD = 0x2C41
-0x92B7 = 0x796E
-0x92B9 = 0x786E
-0x92CF = 0x776E
-0x92D2 = 0x2F4B
-0x92E4 = 0x7B3D
-0x92E9 = 0x7A6E
-0x92EA = 0x5F4A
-0x92ED = 0x5431
-0x92F2 = 0x4649
-0x92F3 = 0x7243
-0x92F8 = 0x7835
-0x92FA = 0x7C6E
-0x92FC = 0x5D39
-0x9306 = 0x2C3B
-0x930F = 0x7B6E
-0x9310 = 0x6D3F
-0x9318 = 0x6E3F
-0x9319 = 0x216F
-0x931A = 0x236F
-0x9320 = 0x7B3E
-0x9322 = 0x226F
-0x9323 = 0x246F
-0x9326 = 0x5336
-0x9328 = 0x4549
-0x932B = 0x623C
-0x932C = 0x234F
-0x932E = 0x7E6E
-0x932F = 0x783A
-0x9332 = 0x3F4F
-0x9335 = 0x266F
-0x933A = 0x256F
-0x933B = 0x276F
-0x9344 = 0x7D6E
-0x934B = 0x6946
-0x934D = 0x5545
-0x9354 = 0x5744
-0x9356 = 0x2C6F
-0x935C = 0x286F
-0x9360 = 0x296F
-0x936C = 0x2D37
-0x936E = 0x2B6F
-0x9375 = 0x3038
-0x937C = 0x2A6F
-0x937E = 0x613E
-0x938C = 0x7933
-0x9394 = 0x306F
-0x9396 = 0x3F3A
-0x9397 = 0x7941
-0x939A = 0x4A44
-0x93A7 = 0x3B33
-0x93AC = 0x2E6F
-0x93AD = 0x2F6F
-0x93AE = 0x4344
-0x93B0 = 0x2D6F
-0x93B9 = 0x316F
-0x93C3 = 0x376F
-0x93C8 = 0x3A6F
-0x93D0 = 0x396F
-0x93D1 = 0x2D45
-0x93D6 = 0x326F
-0x93D7 = 0x336F
-0x93D8 = 0x366F
-0x93DD = 0x386F
-0x93E1 = 0x4036
-0x93E4 = 0x3B6F
-0x93E5 = 0x356F
-0x93E8 = 0x346F
-0x9403 = 0x3F6F
-0x9407 = 0x406F
-0x9410 = 0x416F
-0x9413 = 0x3E6F
-0x9414 = 0x3D6F
-0x9418 = 0x623E
-0x9419 = 0x2A46
-0x941A = 0x3C6F
-0x9421 = 0x456F
-0x942B = 0x436F
-0x9435 = 0x446F
-0x9436 = 0x426F
-0x9438 = 0x7842
-0x943A = 0x466F
-0x9441 = 0x476F
-0x9444 = 0x496F
-0x9451 = 0x5534
-0x9452 = 0x486F
-0x9453 = 0x7A4C
-0x945A = 0x546F
-0x945B = 0x4A6F
-0x945E = 0x4D6F
-0x9460 = 0x4B6F
-0x9462 = 0x4C6F
-0x946A = 0x4E6F
-0x9470 = 0x506F
-0x9475 = 0x516F
-0x9477 = 0x526F
-0x947C = 0x556F
-0x947D = 0x536F
-0x947E = 0x566F
-0x947F = 0x586F
-0x9481 = 0x576F
-0x9577 = 0x3944
-0x9580 = 0x674C
-0x9582 = 0x596F
-0x9583 = 0x2E41
-0x9587 = 0x5A6F
-0x9589 = 0x444A
-0x958A = 0x5B6F
-0x958B = 0x2B33
-0x958F = 0x3C31
-0x9591 = 0x5734
-0x9593 = 0x5634
-0x9594 = 0x5C6F
-0x9596 = 0x5D6F
-0x9598 = 0x5E6F
-0x9599 = 0x5F6F
-0x95A0 = 0x606F
-0x95A2 = 0x5834
-0x95A3 = 0x5533
-0x95A4 = 0x5E39
-0x95A5 = 0x3648
-0x95A7 = 0x626F
-0x95A8 = 0x616F
-0x95AD = 0x636F
-0x95B2 = 0x5C31
-0x95B9 = 0x666F
-0x95BB = 0x656F
-0x95BC = 0x646F
-0x95BE = 0x676F
-0x95C3 = 0x6A6F
-0x95C7 = 0x4730
-0x95CA = 0x686F
-0x95CC = 0x6C6F
-0x95CD = 0x6B6F
-0x95D4 = 0x6E6F
-0x95D5 = 0x6D6F
-0x95D8 = 0x2E46
-0x95DC = 0x706F
-0x95E1 = 0x716F
-0x95E2 = 0x736F
-0x95E5 = 0x726F
-0x961C = 0x6C49
-0x9621 = 0x746F
-0x9628 = 0x756F
-0x962A = 0x653A
-0x962E = 0x766F
-0x962F = 0x776F
-0x9632 = 0x494B
-0x963B = 0x4B41
-0x963F = 0x2430
-0x9640 = 0x4B42
-0x9642 = 0x786F
-0x9644 = 0x6D49
-0x964B = 0x7B6F
-0x964C = 0x796F
-0x964D = 0x5F39
-0x964F = 0x7A6F
-0x9650 = 0x4238
-0x965B = 0x454A
-0x965C = 0x7D6F
-0x965D = 0x2170
-0x965E = 0x7E6F
-0x965F = 0x2270
-0x9662 = 0x2131
-0x9663 = 0x583F
-0x9664 = 0x7C3D
-0x9665 = 0x5934
-0x9666 = 0x2370
-0x966A = 0x6647
-0x966C = 0x2570
-0x9670 = 0x2231
-0x9672 = 0x2470
-0x9675 = 0x4D4E
-0x9676 = 0x2B46
-0x9677 = 0x7C6F
-0x9678 = 0x264E
-0x967A = 0x3138
-0x967D = 0x5B4D
-0x9685 = 0x7936
-0x9686 = 0x344E
-0x9688 = 0x2837
-0x968A = 0x6242
-0x968B = 0x2167
-0x968D = 0x2670
-0x968E = 0x2C33
-0x968F = 0x6F3F
-0x9694 = 0x5633
-0x9695 = 0x2870
-0x9697 = 0x2970
-0x9698 = 0x2770
-0x9699 = 0x6437
-0x969B = 0x5D3A
-0x969C = 0x633E
-0x96A0 = 0x2331
-0x96A3 = 0x594E
-0x96A7 = 0x2B70
-0x96A8 = 0x2E6E
-0x96AA = 0x2A70
-0x96B0 = 0x2E70
-0x96B1 = 0x2C70
-0x96B2 = 0x2D70
-0x96B4 = 0x2F70
-0x96B6 = 0x3070
-0x96B7 = 0x6C4E
-0x96B8 = 0x3170
-0x96B9 = 0x3270
-0x96BB = 0x4940
-0x96BC = 0x3B48
-0x96C0 = 0x7D3F
-0x96C1 = 0x6734
-0x96C4 = 0x3A4D
-0x96C5 = 0x6D32
-0x96C6 = 0x383D
-0x96C7 = 0x5B38
-0x96C9 = 0x3570
-0x96CB = 0x3470
-0x96CC = 0x733B
-0x96CD = 0x3670
-0x96CE = 0x3370
-0x96D1 = 0x283B
-0x96D5 = 0x3A70
-0x96D6 = 0x2D6A
-0x96D9 = 0x5652
-0x96DB = 0x773F
-0x96DC = 0x3870
-0x96E2 = 0x254E
-0x96E3 = 0x7146
-0x96E8 = 0x2B31
-0x96EA = 0x6340
-0x96EB = 0x363C
-0x96F0 = 0x374A
-0x96F2 = 0x4031
-0x96F6 = 0x6D4E
-0x96F7 = 0x6B4D
-0x96F9 = 0x3B70
-0x9700 = 0x7B3C
-0x9704 = 0x3C70
-0x9706 = 0x3D70
-0x9707 = 0x4C3F
-0x9708 = 0x3E70
-0x970A = 0x6E4E
-0x970D = 0x3970
-0x970E = 0x4070
-0x970F = 0x4270
-0x9711 = 0x4170
-0x9713 = 0x3F70
-0x9716 = 0x4370
-0x9719 = 0x4470
-0x971C = 0x7A41
-0x971E = 0x6232
-0x9724 = 0x4570
-0x9727 = 0x384C
-0x972A = 0x4670
-0x9730 = 0x4770
-0x9732 = 0x2A4F
-0x9738 = 0x315B
-0x9739 = 0x4870
-0x973D = 0x4970
-0x973E = 0x4A70
-0x9742 = 0x4E70
-0x9744 = 0x4B70
-0x9746 = 0x4C70
-0x9748 = 0x4D70
-0x9749 = 0x4F70
-0x9752 = 0x4440
-0x9756 = 0x774C
-0x9759 = 0x4540
-0x975C = 0x5070
-0x975E = 0x7348
-0x9760 = 0x5170
-0x9761 = 0x5373
-0x9764 = 0x5270
-0x9766 = 0x5370
-0x9768 = 0x5470
-0x9769 = 0x5733
-0x976B = 0x5670
-0x976D = 0x593F
-0x9771 = 0x5770
-0x9774 = 0x2437
-0x9779 = 0x5870
-0x977A = 0x5C70
-0x977C = 0x5A70
-0x9781 = 0x5B70
-0x9784 = 0x7333
-0x9785 = 0x5970
-0x9786 = 0x5D70
-0x978B = 0x5E70
-0x978D = 0x4830
-0x978F = 0x5F70
-0x9790 = 0x6070
-0x9798 = 0x643E
-0x979C = 0x6170
-0x97A0 = 0x4735
-0x97A3 = 0x6470
-0x97A6 = 0x6370
-0x97A8 = 0x6270
-0x97AB = 0x716B
-0x97AD = 0x5C4A
-0x97B3 = 0x6570
-0x97B4 = 0x6670
-0x97C3 = 0x6770
-0x97C6 = 0x6870
-0x97C8 = 0x6970
-0x97CB = 0x6A70
-0x97D3 = 0x5A34
-0x97DC = 0x6B70
-0x97ED = 0x6C70
-0x97EE = 0x2347
-0x97F2 = 0x6E70
-0x97F3 = 0x3B32
-0x97F5 = 0x7170
-0x97FB = 0x2431
-0x97FF = 0x4136
-0x9801 = 0x474A
-0x9802 = 0x3A44
-0x9803 = 0x223A
-0x9805 = 0x6039
-0x9806 = 0x673D
-0x9808 = 0x5C3F
-0x980C = 0x7370
-0x980F = 0x7270
-0x9810 = 0x424D
-0x9811 = 0x6834
-0x9812 = 0x5248
-0x9813 = 0x5C46
-0x9817 = 0x7C3F
-0x981A = 0x5B37
-0x9821 = 0x7670
-0x9824 = 0x7570
-0x982D = 0x2C46
-0x9834 = 0x5031
-0x9837 = 0x7770
-0x9838 = 0x7470
-0x983B = 0x5149
-0x983C = 0x6A4D
-0x983D = 0x7870
-0x9846 = 0x7970
-0x984B = 0x7B70
-0x984C = 0x6A42
-0x984D = 0x5B33
-0x984E = 0x5C33
-0x984F = 0x7A70
-0x9854 = 0x6934
-0x9855 = 0x3238
-0x9858 = 0x6A34
-0x985B = 0x3F45
-0x985E = 0x604E
-0x9867 = 0x5C38
-0x986B = 0x7C70
-0x986F = 0x7D70
-0x9870 = 0x7E70
-0x9871 = 0x2171
-0x9873 = 0x2371
-0x9874 = 0x2271
-0x98A8 = 0x7749
-0x98AA = 0x2471
-0x98AF = 0x2571
-0x98B1 = 0x2671
-0x98B6 = 0x2771
-0x98C3 = 0x2971
-0x98C4 = 0x2871
-0x98C6 = 0x2A71
-0x98DB = 0x7448
-0x98DC = 0x4C66
-0x98DF = 0x293F
-0x98E2 = 0x3235
-0x98E9 = 0x2B71
-0x98EB = 0x2C71
-0x98ED = 0x2C52
-0x98EE = 0x3B5D
-0x98EF = 0x5348
-0x98F2 = 0x7B30
-0x98F4 = 0x3B30
-0x98FC = 0x743B
-0x98FD = 0x304B
-0x98FE = 0x7E3E
-0x9903 = 0x2D71
-0x9905 = 0x5F4C
-0x9909 = 0x2E71
-0x990A = 0x5C4D
-0x990C = 0x4231
-0x9910 = 0x413B
-0x9912 = 0x2F71
-0x9913 = 0x6E32
-0x9914 = 0x3071
-0x9918 = 0x3171
-0x991D = 0x3371
-0x991E = 0x3471
-0x9920 = 0x3671
-0x9921 = 0x3271
-0x9924 = 0x3571
-0x9928 = 0x5B34
-0x992C = 0x3771
-0x992E = 0x3871
-0x993D = 0x3971
-0x993E = 0x3A71
-0x9942 = 0x3B71
-0x9945 = 0x3D71
-0x9949 = 0x3C71
-0x994B = 0x3F71
-0x994C = 0x4271
-0x9950 = 0x3E71
-0x9951 = 0x4071
-0x9952 = 0x4171
-0x9955 = 0x4371
-0x9957 = 0x4236
-0x9996 = 0x733C
-0x9997 = 0x4471
-0x9998 = 0x4571
-0x9999 = 0x6139
-0x99A5 = 0x4671
-0x99A8 = 0x3E33
-0x99AC = 0x4F47
-0x99AD = 0x4771
-0x99AE = 0x4871
-0x99B3 = 0x5A43
-0x99B4 = 0x6B46
-0x99BC = 0x4971
-0x99C1 = 0x7D47
-0x99C4 = 0x4C42
-0x99C5 = 0x5831
-0x99C6 = 0x6E36
-0x99C8 = 0x6F36
-0x99D0 = 0x7343
-0x99D1 = 0x4E71
-0x99D2 = 0x7036
-0x99D5 = 0x6F32
-0x99D8 = 0x4D71
-0x99DB = 0x4B71
-0x99DD = 0x4C71
-0x99DF = 0x4A71
-0x99E2 = 0x5871
-0x99ED = 0x4F71
-0x99EE = 0x5071
-0x99F1 = 0x5171
-0x99F2 = 0x5271
-0x99F8 = 0x5471
-0x99FB = 0x5371
-0x99FF = 0x593D
-0x9A01 = 0x5571
-0x9A05 = 0x5771
-0x9A0E = 0x3335
-0x9A0F = 0x5671
-0x9A12 = 0x7B41
-0x9A13 = 0x3338
-0x9A19 = 0x5971
-0x9A28 = 0x4D42
-0x9A2B = 0x5A71
-0x9A30 = 0x2D46
-0x9A37 = 0x5B71
-0x9A3E = 0x6071
-0x9A40 = 0x5E71
-0x9A42 = 0x5D71
-0x9A43 = 0x5F71
-0x9A45 = 0x5C71
-0x9A4D = 0x6271
-0x9A55 = 0x6171
-0x9A57 = 0x6471
-0x9A5A = 0x4336
-0x9A5B = 0x6371
-0x9A5F = 0x6571
-0x9A62 = 0x6671
-0x9A64 = 0x6871
-0x9A65 = 0x6771
-0x9A69 = 0x6971
-0x9A6A = 0x6B71
-0x9A6B = 0x6A71
-0x9AA8 = 0x7C39
-0x9AAD = 0x6C71
-0x9AB0 = 0x6D71
-0x9AB8 = 0x3C33
-0x9ABC = 0x6E71
-0x9AC0 = 0x6F71
-0x9AC4 = 0x713F
-0x9ACF = 0x7071
-0x9AD3 = 0x7271
-0x9AD4 = 0x7371
-0x9AD8 = 0x6239
-0x9ADE = 0x7471
-0x9ADF = 0x7571
-0x9AE2 = 0x7671
-0x9AE3 = 0x7771
-0x9AE6 = 0x7871
-0x9AEA = 0x3148
-0x9AEB = 0x7A71
-0x9AED = 0x2649
-0x9AEE = 0x7B71
-0x9AEF = 0x7971
-0x9AF1 = 0x7D71
-0x9AF4 = 0x7C71
-0x9AF7 = 0x7E71
-0x9AFB = 0x2172
-0x9B06 = 0x2272
-0x9B18 = 0x2372
-0x9B1A = 0x2472
-0x9B1F = 0x2572
-0x9B22 = 0x2672
-0x9B23 = 0x2772
-0x9B25 = 0x2872
-0x9B27 = 0x2972
-0x9B28 = 0x2A72
-0x9B29 = 0x2B72
-0x9B2A = 0x2C72
-0x9B2E = 0x2D72
-0x9B2F = 0x2E72
-0x9B31 = 0x355D
-0x9B32 = 0x2F72
-0x9B3B = 0x7864
-0x9B3C = 0x3435
-0x9B41 = 0x2133
-0x9B42 = 0x323A
-0x9B43 = 0x3172
-0x9B44 = 0x3072
-0x9B45 = 0x254C
-0x9B4D = 0x3372
-0x9B4E = 0x3472
-0x9B4F = 0x3272
-0x9B51 = 0x3572
-0x9B54 = 0x624B
-0x9B58 = 0x3672
-0x9B5A = 0x7B35
-0x9B6F = 0x254F
-0x9B74 = 0x3772
-0x9B83 = 0x3972
-0x9B8E = 0x3E30
-0x9B91 = 0x3A72
-0x9B92 = 0x2B4A
-0x9B93 = 0x3872
-0x9B96 = 0x3B72
-0x9B97 = 0x3C72
-0x9B9F = 0x3D72
-0x9BA0 = 0x3E72
-0x9BA8 = 0x3F72
-0x9BAA = 0x6E4B
-0x9BAB = 0x2D3B
-0x9BAD = 0x7A3A
-0x9BAE = 0x2F41
-0x9BB4 = 0x4072
-0x9BB9 = 0x4372
-0x9BC0 = 0x4172
-0x9BC6 = 0x4472
-0x9BC9 = 0x7138
-0x9BCA = 0x4272
-0x9BCF = 0x4572
-0x9BD1 = 0x4672
-0x9BD2 = 0x4772
-0x9BD4 = 0x4B72
-0x9BD6 = 0x2A3B
-0x9BDB = 0x6442
-0x9BE1 = 0x4C72
-0x9BE2 = 0x4972
-0x9BE3 = 0x4872
-0x9BE4 = 0x4A72
-0x9BE8 = 0x5F37
-0x9BF0 = 0x5072
-0x9BF1 = 0x4F72
-0x9BF2 = 0x4E72
-0x9BF5 = 0x3330
-0x9C04 = 0x5A72
-0x9C06 = 0x5672
-0x9C08 = 0x5772
-0x9C09 = 0x5372
-0x9C0A = 0x5972
-0x9C0C = 0x5572
-0x9C0D = 0x6233
-0x9C10 = 0x4C4F
-0x9C12 = 0x5872
-0x9C13 = 0x5472
-0x9C14 = 0x5272
-0x9C15 = 0x5172
-0x9C1B = 0x5C72
-0x9C21 = 0x5F72
-0x9C24 = 0x5E72
-0x9C25 = 0x5D72
-0x9C2E = 0x5B72
-0x9C2F = 0x7330
-0x9C30 = 0x6072
-0x9C32 = 0x6272
-0x9C39 = 0x6F33
-0x9C3A = 0x4D72
-0x9C3B = 0x3731
-0x9C3E = 0x6472
-0x9C46 = 0x6372
-0x9C47 = 0x6172
-0x9C48 = 0x2D43
-0x9C52 = 0x704B
-0x9C57 = 0x5A4E
-0x9C5A = 0x6572
-0x9C60 = 0x6672
-0x9C67 = 0x6772
-0x9C76 = 0x6872
-0x9C78 = 0x6972
-0x9CE5 = 0x3B44
-0x9CE7 = 0x6A72
-0x9CE9 = 0x3748
-0x9CEB = 0x6F72
-0x9CEC = 0x6B72
-0x9CF0 = 0x6C72
-0x9CF3 = 0x314B
-0x9CF4 = 0x444C
-0x9CF6 = 0x5046
-0x9D03 = 0x7072
-0x9D06 = 0x7172
-0x9D07 = 0x3E46
-0x9D08 = 0x6E72
-0x9D09 = 0x6D72
-0x9D0E = 0x2A32
-0x9D12 = 0x7972
-0x9D15 = 0x7872
-0x9D1B = 0x7531
-0x9D1F = 0x7672
-0x9D23 = 0x7572
-0x9D26 = 0x7372
-0x9D28 = 0x7B33
-0x9D2B = 0x323C
-0x9D2C = 0x2932
-0x9D3B = 0x6339
-0x9D3E = 0x7C72
-0x9D3F = 0x7B72
-0x9D41 = 0x7A72
-0x9D44 = 0x7772
-0x9D46 = 0x7D72
-0x9D48 = 0x7E72
-0x9D50 = 0x2573
-0x9D51 = 0x2473
-0x9D59 = 0x2673
-0x9D5C = 0x2D31
-0x9D5D = 0x2173
-0x9D5E = 0x2273
-0x9D60 = 0x7439
-0x9D61 = 0x394C
-0x9D64 = 0x2373
-0x9D6C = 0x324B
-0x9D6F = 0x2B73
-0x9D72 = 0x2773
-0x9D7A = 0x2C73
-0x9D87 = 0x2973
-0x9D89 = 0x2873
-0x9D8F = 0x5C37
-0x9D9A = 0x2D73
-0x9DA4 = 0x2E73
-0x9DA9 = 0x2F73
-0x9DAB = 0x2A73
-0x9DAF = 0x7472
-0x9DB2 = 0x3073
-0x9DB4 = 0x6144
-0x9DB8 = 0x3473
-0x9DBA = 0x3573
-0x9DBB = 0x3373
-0x9DC1 = 0x3273
-0x9DC2 = 0x3873
-0x9DC4 = 0x3173
-0x9DC6 = 0x3673
-0x9DCF = 0x3773
-0x9DD3 = 0x3A73
-0x9DD9 = 0x3973
-0x9DE6 = 0x3C73
-0x9DED = 0x3D73
-0x9DEF = 0x3E73
-0x9DF2 = 0x494F
-0x9DF8 = 0x3B73
-0x9DF9 = 0x6B42
-0x9DFA = 0x6D3A
-0x9DFD = 0x3F73
-0x9E1A = 0x4073
-0x9E1B = 0x4173
-0x9E1E = 0x4273
-0x9E75 = 0x4373
-0x9E78 = 0x3438
-0x9E79 = 0x4473
-0x9E7D = 0x4573
-0x9E7F = 0x2F3C
-0x9E81 = 0x4673
-0x9E88 = 0x4773
-0x9E8B = 0x4873
-0x9E8C = 0x4973
-0x9E91 = 0x4C73
-0x9E92 = 0x4A73
-0x9E93 = 0x3C4F
-0x9E95 = 0x4B73
-0x9E97 = 0x6F4E
-0x9E9D = 0x4D73
-0x9E9F = 0x5B4E
-0x9EA5 = 0x4E73
-0x9EA6 = 0x7E47
-0x9EA9 = 0x4F73
-0x9EAA = 0x5173
-0x9EAD = 0x5273
-0x9EB8 = 0x5073
-0x9EB9 = 0x6D39
-0x9EBA = 0x4D4C
-0x9EBB = 0x634B
-0x9EBC = 0x7756
-0x9EBE = 0x605D
-0x9EBF = 0x7B4B
-0x9EC4 = 0x2B32
-0x9ECC = 0x5473
-0x9ECD = 0x5035
-0x9ECE = 0x5573
-0x9ECF = 0x5673
-0x9ED0 = 0x5773
-0x9ED2 = 0x7539
-0x9ED4 = 0x5873
-0x9ED8 = 0x5460
-0x9ED9 = 0x5B4C
-0x9EDB = 0x6342
-0x9EDC = 0x5973
-0x9EDD = 0x5B73
-0x9EDE = 0x5A73
-0x9EE0 = 0x5C73
-0x9EE5 = 0x5D73
-0x9EE8 = 0x5E73
-0x9EEF = 0x5F73
-0x9EF4 = 0x6073
-0x9EF6 = 0x6173
-0x9EF7 = 0x6273
-0x9EF9 = 0x6373
-0x9EFB = 0x6473
-0x9EFC = 0x6573
-0x9EFD = 0x6673
-0x9F07 = 0x6773
-0x9F08 = 0x6873
-0x9F0E = 0x2445
-0x9F13 = 0x5D38
-0x9F15 = 0x6A73
-0x9F20 = 0x4D41
-0x9F21 = 0x6B73
-0x9F2C = 0x6C73
-0x9F3B = 0x2149
-0x9F3E = 0x6D73
-0x9F4A = 0x6E73
-0x9F4B = 0x3763
-0x9F4E = 0x5A6C
-0x9F4F = 0x6D70
-0x9F52 = 0x6F73
-0x9F54 = 0x7073
-0x9F5F = 0x7273
-0x9F61 = 0x7473
-0x9F62 = 0x704E
-0x9F63 = 0x7173
-0x9F66 = 0x7573
-0x9F67 = 0x7673
-0x9F6A = 0x7873
-0x9F6C = 0x7773
-0x9F72 = 0x7A73
-0x9F76 = 0x7B73
-0x9F77 = 0x7973
-0x9F8D = 0x364E
-0x9F95 = 0x7C73
-0x9F9C = 0x7D73
-0x9F9D = 0x5463
-0x9FA0 = 0x7E73
-0xF900 = 0x316C
-0xF901 = 0x3939
-0xF902 = 0x563C
-0xF903 = 0x4B6C
-0xF904 = 0x6A33
-0xF905 = 0x7A36
-0xF906 = 0x6736
-0xF907 = 0x7D73
-0xF908 = 0x7D73
-0xF909 = 0x4037
-0xF90A = 0x6236
-0xF90B = 0x4953
-0xF90C = 0x6046
-0xF90D = 0x7158
-0xF90E = 0x7A61
-0xF90F = 0x654D
-0xF910 = 0x4769
-0xF911 = 0x664D
-0xF912 = 0x674D
-0xF913 = 0x366E
-0xF914 = 0x5B5C
-0xF915 = 0x6C4D
-0xF916 = 0x605F
-0xF917 = 0x6460
-0xF918 = 0x6E4D
-0xF919 = 0x6F4D
-0xF91A = 0x5171
-0xF91B = 0x2C50
-0xF91C = 0x714D
-0xF91D = 0x734D
-0xF91E = 0x2560
-0xF91F = 0x764D
-0xF920 = 0x4273
-0xF921 = 0x724D
-0xF922 = 0x744D
-0xF923 = 0x754D
-0xF924 = 0x226B
-0xF925 = 0x4759
-0xF926 = 0x4467
-0xF928 = 0x2D4F
-0xF929 = 0x2F4F
-0xF92A = 0x324F
-0xF92B = 0x354F
-0xF92C = 0x3A4F
-0xF92D = 0x5450
-0xF92E = 0x644E
-0xF92F = 0x2952
-0xF931 = 0x264F
-0xF932 = 0x2460
-0xF933 = 0x3A62
-0xF934 = 0x374F
-0xF935 = 0x4369
-0xF936 = 0x3A4E
-0xF937 = 0x294F
-0xF938 = 0x2A4F
-0xF939 = 0x254F
-0xF93A = 0x6D3A
-0xF93B = 0x7162
-0xF93C = 0x3363
-0xF940 = 0x2F3C
-0xF941 = 0x404F
-0xF942 = 0x6254
-0xF943 = 0x2E4F
-0xF944 = 0x4664
-0xF945 = 0x384F
-0xF946 = 0x344F
-0xF947 = 0x7D62
-0xF948 = 0x284F
-0xF949 = 0x6B4D
-0xF94A = 0x5E54
-0xF94C = 0x6C5C
-0xF94E = 0x334F
-0xF94F = 0x5F4E
-0xF950 = 0x5F65
-0xF951 = 0x7B6F
-0xF952 = 0x5570
-0xF953 = 0x3E4F
-0xF954 = 0x2574
-0xF955 = 0x3F4E
-0xF956 = 0x474E
-0xF957 = 0x3D30
-0xF958 = 0x2949
-0xF959 = 0x4D4E
-0xF95A = 0x266C
-0xF95B = 0x3C59
-0xF95C = 0x5B5C
-0xF95D = 0x7A42
-0xF95E = 0x3043
-0xF95F = 0x2B47
-0xF960 = 0x5C45
-0xF961 = 0x284E
-0xF962 = 0x5B30
-0xF963 = 0x4C4B
-0xF965 = 0x584A
-0xF966 = 0x7C49
-0xF967 = 0x5449
-0xF968 = 0x6748
-0xF969 = 0x4B5A
-0xF96A = 0x773A
-0xF96B = 0x5452
-0xF96C = 0x493A
-0xF96D = 0x4A3E
-0xF96E = 0x554D
-0xF970 = 0x263B
-0xF971 = 0x2443
-0xF972 = 0x4044
-0xF973 = 0x263D
-0xF974 = 0x633C
-0xF975 = 0x2B4E
-0xF976 = 0x2C4E
-0xF977 = 0x3C4E
-0xF978 = 0x4051
-0xF979 = 0x5A51
-0xF97A = 0x424E
-0xF97B = 0x484E
-0xF97C = 0x494E
-0xF97D = 0x4A4E
-0xF97E = 0x4C4E
-0xF97F = 0x2F52
-0xF980 = 0x244F
-0xF981 = 0x773D
-0xF982 = 0x2A57
-0xF983 = 0x394E
-0xF984 = 0x495F
-0xF985 = 0x6A62
-0xF986 = 0x636F
-0xF987 = 0x6B71
-0xF988 = 0x6F4E
-0xF989 = 0x5573
-0xF98A = 0x4F4E
-0xF98D = 0x606D
-0xF98E = 0x2F47
-0xF98F = 0x794E
-0xF990 = 0x7858
-0xF991 = 0x3247
-0xF992 = 0x7A4E
-0xF993 = 0x7B4E
-0xF996 = 0x7D4E
-0xF997 = 0x7E4E
-0xF998 = 0x536D
-0xF999 = 0x214F
-0xF99A = 0x224F
-0xF99C = 0x734E
-0xF99D = 0x744E
-0xF99E = 0x7630
-0xF99F = 0x754E
-0xF9A0 = 0x764E
-0xF9A2 = 0x774E
-0xF9A3 = 0x3047
-0xF9A4 = 0x3147
-0xF9A6 = 0x7C4E
-0xF9A7 = 0x5A60
-0xF9A8 = 0x614E
-0xF9A9 = 0x7A53
-0xF9AA = 0x2B47
-0xF9AB = 0x664E
-0xF9AC = 0x674E
-0xF9AD = 0x684E
-0xF9AE = 0x7260
-0xF9AF = 0x3966
-0xF9B0 = 0x5966
-0xF9B1 = 0x6B4E
-0xF9B2 = 0x6D4E
-0xF9B3 = 0x4D70
-0xF9B4 = 0x4E4E
-0xF9B5 = 0x634E
-0xF9B6 = 0x3963
-0xF9B7 = 0x546E
-0xF9B8 = 0x3170
-0xF9B9 = 0x2858
-0xF9BA = 0x3B4E
-0xF9BB = 0x3D4E
-0xF9BC = 0x404E
-0xF9BD = 0x2247
-0xF9BE = 0x414E
-0xF9BF = 0x5B5C
-0xF9C0 = 0x795F
-0xF9C1 = 0x454E
-0xF9C2 = 0x7A68
-0xF9C3 = 0x4B4E
-0xF9C4 = 0x364E
-0xF9C5 = 0x745A
-0xF9C6 = 0x766F
-0xF9C7 = 0x2D4E
-0xF9C9 = 0x784C
-0xF9CA = 0x2E4E
-0xF9CB = 0x2F4E
-0xF9CC = 0x304E
-0xF9CD = 0x314E
-0xF9CE = 0x324E
-0xF9CF = 0x3349
-0xF9D0 = 0x604E
-0xF9D1 = 0x3B4F
-0xF9D2 = 0x2459
-0xF9D3 = 0x264E
-0xF9D4 = 0x514E
-0xF9D5 = 0x4656
-0xF9D6 = 0x4D5E
-0xF9D7 = 0x584E
-0xF9D8 = 0x274E
-0xF9D9 = 0x4B58
-0xF9DA = 0x2A37
-0xF9DB = 0x284E
-0xF9DC = 0x344E
-0xF9DD = 0x784D
-0xF9DE = 0x794D
-0xF9DF = 0x7A4D
-0xF9E0 = 0x5730
-0xF9E1 = 0x7B4D
-0xF9E2 = 0x7C4D
-0xF9E3 = 0x2545
-0xF9E4 = 0x7D4D
-0xF9E5 = 0x214E
-0xF9E6 = 0x6D58
-0xF9E7 = 0x224E
-0xF9E8 = 0x234E
-0xF9E9 = 0x244E
-0xF9EA = 0x254E
-0xF9EB = 0x3F46
-0xF9EC = 0x2E45
-0xF9ED = 0x6752
-0xF9EE = 0x554E
-0xF9F0 = 0x4269
-0xF9F1 = 0x594E
-0xF9F2 = 0x5A4E
-0xF9F3 = 0x5B4E
-0xF9F4 = 0x534E
-0xF9F5 = 0x544E
-0xF9F6 = 0x574E
-0xF9F7 = 0x294E
-0xF9F8 = 0x5E33
-0xF9F9 = 0x334E
-0xF9FB = 0x555F
-0xF9FC = 0x313C
-0xF9FD = 0x3A3D
-0xF9FE = 0x6343
-0xF9FF = 0x493B
-0xFA00 = 0x5A40
-0xFA01 = 0x5945
-0xFA02 = 0x7342
-0xFA03 = 0x7C45
-0xFA04 = 0x7042
-0xFA05 = 0x3646
-0xFA06 = 0x3D4B
-0xFA07 = 0x556D
-0xFA08 = 0x5439
-0xFA09 = 0x5F39
-0xFA0A = 0x2B38
-0xFA0B = 0x4733
-0xFA0C = 0x3A51
-0xFA10 = 0x4D44
-0xFA12 = 0x3240
-0xFA16 = 0x7643
-0xFA17 = 0x5731
-0xFA18 = 0x694E
-0xFA19 = 0x403F
-0xFA1A = 0x4D3E
-0xFA1B = 0x214A
-0xFA1C = 0x774C
-0xFA1D = 0x3A40
-0xFA1E = 0x2931
-0xFA22 = 0x743D
-0xFA25 = 0x6F30
-0xFA26 = 0x5445
-0xFA2A = 0x5348
-0xFA2B = 0x743B
-0xFA2C = 0x5B34
-0xFA2D = 0x6144
-0xFA30 = 0x6E49
-0xFA31 = 0x4E41
-0xFA32 = 0x484C
-0xFA33 = 0x594A
-0xFA34 = 0x5036
-0xFA35 = 0x5C48
-0xFA36 = 0x6533
-0xFA37 = 0x3243
-0xFA38 = 0x6F34
-0xFA39 = 0x3D4A
-0xFA3A = 0x4F4B
-0xFA3B = 0x5841
-0xFA3C = 0x2556
-0xFA3D = 0x7932
-0xFA3E = 0x3433
-0xFA3F = 0x7E41
-0xFA40 = 0x2844
-0xFA41 = 0x5249
-0xFA42 = 0x7B34
-0xFA43 = 0x6B3D
-0xFA44 = 0x5F47
-0xFA45 = 0x2433
-0xFA46 = 0x6D3D
-0xFA47 = 0x4134
-0xFA48 = 0x513C
-0xFA4A = 0x7642
-0xFA4B = 0x6A48
-0xFA4C = 0x523C
-0xFA4D = 0x633B
-0xFA4E = 0x2735
-0xFA4F = 0x344D
-0xFA50 = 0x4441
-0xFA51 = 0x4B3D
-0xFA52 = 0x5232
-0xFA53 = 0x7744
-0xFA54 = 0x7239
-0xFA55 = 0x4D46
-0xFA56 = 0x6140
-0xFA57 = 0x7D4E
-0xFA58 = 0x5665
-0xFA59 = 0x4B48
-0xFA5A = 0x703D
-0xFA5B = 0x543C
-0xFA5C = 0x2D3D
-0xFA5F = 0x7843
-0xFA60 = 0x6C33
-0xFA61 = 0x6B3B
-0xFA62 = 0x5A31
-0xFA63 = 0x6036
-0xFA64 = 0x5049
-0xFA65 = 0x2342
-0xFA67 = 0x6F30
-0xFA68 = 0x7146
-0xFA69 = 0x4136
-0xFA6A = 0x5149
-0xFE51 = 0x2221
-0xFE5D = 0x4C21
-0xFE5E = 0x4D21
-0xFF01 = 0x2A21
-0xFF03 = 0x7421
-0xFF04 = 0x7021
-0xFF05 = 0x7321
-0xFF06 = 0x7521
-0xFF08 = 0x4A21
-0xFF09 = 0x4B21
-0xFF0A = 0x7621
-0xFF0B = 0x5C21
-0xFF0C = 0x2421
-0xFF0E = 0x2521
-0xFF0F = 0x3F21
-0xFF10 = 0x3023
-0xFF11 = 0x3123
-0xFF12 = 0x3223
-0xFF13 = 0x3323
-0xFF14 = 0x3423
-0xFF15 = 0x3523
-0xFF16 = 0x3623
-0xFF17 = 0x3723
-0xFF18 = 0x3823
-0xFF19 = 0x3923
-0xFF1A = 0x2721
-0xFF1B = 0x2821
-0xFF1C = 0x6321
-0xFF1D = 0x6121
-0xFF1E = 0x6421
-0xFF1F = 0x2921
-0xFF20 = 0x7721
-0xFF21 = 0x4123
-0xFF22 = 0x4223
-0xFF23 = 0x4323
-0xFF24 = 0x4423
-0xFF25 = 0x4523
-0xFF26 = 0x4623
-0xFF27 = 0x4723
-0xFF28 = 0x4823
-0xFF29 = 0x4923
-0xFF2A = 0x4A23
-0xFF2B = 0x4B23
-0xFF2C = 0x4C23
-0xFF2D = 0x4D23
-0xFF2E = 0x4E23
-0xFF2F = 0x4F23
-0xFF30 = 0x5023
-0xFF31 = 0x5123
-0xFF32 = 0x5223
-0xFF33 = 0x5323
-0xFF34 = 0x5423
-0xFF35 = 0x5523
-0xFF36 = 0x5623
-0xFF37 = 0x5723
-0xFF38 = 0x5823
-0xFF39 = 0x5923
-0xFF3A = 0x5A23
-0xFF3B = 0x4E21
-0xFF3C = 0x4021
-0xFF3D = 0x4F21
-0xFF3E = 0x3021
-0xFF3F = 0x3221
-0xFF40 = 0x2E21
-0xFF41 = 0x6123
-0xFF42 = 0x6223
-0xFF43 = 0x6323
-0xFF44 = 0x6423
-0xFF45 = 0x6523
-0xFF46 = 0x6623
-0xFF47 = 0x6723
-0xFF48 = 0x6823
-0xFF49 = 0x6923
-0xFF4A = 0x6A23
-0xFF4B = 0x6B23
-0xFF4C = 0x6C23
-0xFF4D = 0x6D23
-0xFF4E = 0x6E23
-0xFF4F = 0x6F23
-0xFF50 = 0x7023
-0xFF51 = 0x7123
-0xFF52 = 0x7223
-0xFF53 = 0x7323
-0xFF54 = 0x7423
-0xFF55 = 0x7523
-0xFF56 = 0x7623
-0xFF57 = 0x7723
-0xFF58 = 0x7823
-0xFF59 = 0x7923
-0xFF5A = 0x7A23
-0xFF5B = 0x5021
-0xFF5C = 0x4321
-0xFF5D = 0x5121
-0xFF61 = 0x2321
-0xFF62 = 0x5621
-0xFF63 = 0x5721
-0xFF64 = 0x2221
-0xFF65 = 0x2621
-0xFF66 = 0x7225
-0xFF67 = 0x2125
-0xFF68 = 0x2325
-0xFF69 = 0x2525
-0xFF6A = 0x2725
-0xFF6B = 0x2925
-0xFF6C = 0x6325
-0xFF6D = 0x6525
-0xFF6E = 0x6725
-0xFF6F = 0x4325
-0xFF70 = 0x3C21
-0xFF71 = 0x2225
-0xFF72 = 0x2425
-0xFF73 = 0x2625
-0xFF74 = 0x2825
-0xFF75 = 0x2A25
-0xFF76 = 0x2B25
-0xFF77 = 0x2D25
-0xFF78 = 0x2F25
-0xFF79 = 0x3125
-0xFF7A = 0x3325
-0xFF7B = 0x3525
-0xFF7C = 0x3725
-0xFF7D = 0x3925
-0xFF7E = 0x3B25
-0xFF7F = 0x3D25
-0xFF80 = 0x3F25
-0xFF81 = 0x4125
-0xFF82 = 0x4425
-0xFF83 = 0x4625
-0xFF84 = 0x4825
-0xFF85 = 0x4A25
-0xFF86 = 0x4B25
-0xFF87 = 0x4C25
-0xFF88 = 0x4D25
-0xFF89 = 0x4E25
-0xFF8A = 0x4F25
-0xFF8B = 0x5225
-0xFF8C = 0x5525
-0xFF8D = 0x5825
-0xFF8E = 0x5B25
-0xFF8F = 0x5E25
-0xFF90 = 0x5F25
-0xFF91 = 0x6025
-0xFF92 = 0x6125
-0xFF93 = 0x6225
-0xFF94 = 0x6425
-0xFF95 = 0x6625
-0xFF96 = 0x6825
-0xFF97 = 0x6925
-0xFF98 = 0x6A25
-0xFF99 = 0x6B25
-0xFF9A = 0x6C25
-0xFF9B = 0x6D25
-0xFF9C = 0x6F25
-0xFF9D = 0x7325
-0xFFE0 = 0x7121
-0xFFE1 = 0x7221
-0xFFE2 = 0x4C22
-0xFFE3 = 0x3121
-0xFFE5 = 0x6F21
-0xFFE8 = 0x2228
-0xFFE9 = 0x2B22
-0xFFEA = 0x2C22
-0xFFEB = 0x2A22
-0xFFEC = 0x2D22
-0xFFED = 0x2322
-0xFFEE = 0x7B21
END_MAP
diff --git a/share/i18n/csmapper/JIS/charset.pivot.JIS.src b/share/i18n/csmapper/JIS/charset.pivot.JIS.src
index a96e47486a00..b97b3f360e53 100644
--- a/share/i18n/csmapper/JIS/charset.pivot.JIS.src
+++ b/share/i18n/csmapper/JIS/charset.pivot.JIS.src
@@ -4,7 +4,6 @@
JISX0201-KANA UCS 1
JISX0208:1978 UCS 1
JISX0208:1990 UCS 1
-JISX0208:EUC UCS 1
JISX0208:EUCMSSET UCS 1
JISX0212 UCS 1
JISX0212:EUCMSSET UCS 1
@@ -14,7 +13,6 @@ JISX0212+0213-2 UCS 1
UCS JISX0201-KANA 1
UCS JISX0208:1978 1
UCS JISX0208:1990 1
-UCS JISX0208:EUC 1
UCS JISX0208:EUCMSSET 1
UCS JISX0212 1
UCS JISX0212:EUCMSSET 1
diff --git a/share/i18n/csmapper/JIS/mapper.dir.JIS.src b/share/i18n/csmapper/JIS/mapper.dir.JIS.src
index eefc8b9a5b10..6f778e3d5317 100644
--- a/share/i18n/csmapper/JIS/mapper.dir.JIS.src
+++ b/share/i18n/csmapper/JIS/mapper.dir.JIS.src
@@ -7,7 +7,6 @@ JISX0208:1990/UCS mapper_std JIS/JISX0208@1990%UCS.mps
JISX0208:MS/UCS mapper_std JIS/JISX0208@MS%UCS.mps
JISX0208VDC:NEC/UCS mapper_std JIS/JISX0208VDC@NEC%UCS.mps
JISX0208UDC/UCS mapper_std JIS/JISX0208UDC%UCS.mps
-JISX0208:EUC/UCS mapper_parallel JISX0208UDC/UCS,JISX0208:1990/UCS
JISX0208:EUCMSSET/UCS mapper_parallel JISX0208VDC:NEC/UCS,JISX0208UDC/UCS,JISX0208:MS/UCS
JISX0212/UCS mapper_std JIS/JISX0212%UCS.mps
JISX0212:MS/UCS mapper_std JIS/JISX0212@MS%UCS.mps
@@ -16,10 +15,12 @@ JISX0212UDC/UCS mapper_std JIS/JISX0212UDC%UCS.mps
JISX0212:EUCMSSET/UCS mapper_parallel JISX0212VDC:IBM/UCS,JISX0212UDC/UCS,JISX0212:MS/UCS
JISX0213-1/UCS:BMP mapper_std JIS/JISX0213-1%UCS@BMP.mps
JISX0213-1/UCS:SIP mapper_std JIS/JISX0213-1%UCS@SIP.mps
-JISX0213-1/UCS mapper_parallel JISX0213-1/UCS:BMP,JISX0213-1/UCS:SIP,JISX0208:1990/UCS
+JISX0213-1/UCS:SIPx mapper_serial JISX0213-1/UCS:SIP,UCS:SIP/UCS
+JISX0213-1/UCS mapper_parallel JISX0213-1/UCS:BMP,JISX0213-1/UCS:SIPx,JISX0208:1990/UCS
JISX0213-2/UCS:BMP mapper_std JIS/JISX0213-2%UCS@BMP.mps
JISX0213-2/UCS:SIP mapper_std JIS/JISX0213-2%UCS@SIP.mps
-JISX0213-2/UCS mapper_parallel JISX0213-2/UCS:BMP,JISX0213-2/UCS:SIP
+JISX0213-2/UCS:SIPx mapper_serial JISX0213-2/UCS:SIP,UCS:SIP/UCS
+JISX0213-2/UCS mapper_parallel JISX0213-2/UCS:BMP,JISX0213-2/UCS:SIPx
JISX0212+0213-2/UCS mapper_parallel JISX0213-2/UCS,JISX0212/UCS
UCS/JISX0201-KANA mapper_std JIS/UCS%JISX0201-KANA.mps
UCS/JISX0208:1978 mapper_std JIS/UCS%JISX0208@1978.mps
@@ -27,7 +28,6 @@ UCS/JISX0208:1990 mapper_std JIS/UCS%JISX0208@1990.mps
UCS/JISX0208:MS mapper_std JIS/UCS%JISX0208@MS.mps
UCS/JISX0208VDC:NEC mapper_std JIS/UCS%JISX0208VDC@NEC.mps
UCS/JISX0208UDC mapper_std JIS/UCS%JISX0208UDC.mps
-UCS/JISX0208:EUC mapper_parallel UCS/JISX0208:1990,UCS/JISX0208UDC
UCS/JISX0208:EUCMSSET mapper_parallel UCS/JISX0208:MS,UCS/JISX0208VDC:NEC,UCS/JISX0208UDC
UCS/JISX0212 mapper_std JIS/UCS%JISX0212.mps
UCS/JISX0212:MS mapper_std JIS/UCS%JISX0212@MS.mps
@@ -36,8 +36,10 @@ UCS/JISX0212UDC mapper_std JIS/UCS%JISX0212UDC.mps
UCS/JISX0212:EUCMSSET mapper_parallel UCS/JISX0212VDC:IBM,UCS/JISX0212UDC,UCS/JISX0212:MS
UCS:BMP/JISX0213-1 mapper_std JIS/UCS@BMP%JISX0213-1.mps
UCS:SIP/JISX0213-1 mapper_std JIS/UCS@SIP%JISX0213-1.mps
-UCS/JISX0213-1 mapper_parallel UCS/JISX0208:1990,UCS:BMP/JISX0213-1,UCS:SIP/JISX0213-1
+UCS:SIPx/JISX0213-1 mapper_serial UCS/UCS:SIP,UCS:SIP/JISX0213-1
+UCS/JISX0213-1 mapper_parallel UCS/JISX0208:1990,UCS:BMP/JISX0213-1,UCS:SIPx/JISX0213-1
UCS:BMP/JISX0213-2 mapper_std JIS/UCS@BMP%JISX0213-2.mps
UCS:SIP/JISX0213-2 mapper_std JIS/UCS@SIP%JISX0213-2.mps
-UCS/JISX0213-2 mapper_parallel UCS:BMP/JISX0213-2,UCS:SIP/JISX0213-2
+UCS:SIPx/JISX0213-2 mapper_serial UCS/UCS:SIP,UCS:SIP/JISX0213-2
+UCS/JISX0213-2 mapper_parallel UCS:BMP/JISX0213-2,UCS:SIPx/JISX0213-2
UCS/JISX0212+0213-2 mapper_parallel UCS/JISX0213-2,UCS/JISX0212
diff --git a/share/i18n/esdb/EUC/EUC-JP.src b/share/i18n/esdb/EUC/EUC-JP.src
index e36cc05a2e4b..f0766eb98f1f 100644
--- a/share/i18n/esdb/EUC/EUC-JP.src
+++ b/share/i18n/esdb/EUC/EUC-JP.src
@@ -5,7 +5,7 @@ NAME "EUC-JP"
ENCODING "EUC"
VARIABLE "1 0x0000 2 0x8080 2 0x0080 3 0x8000 0x8080"
DEFCSID "ISO646-US" 0
-DEFCSID "JISX0208:EUC" 0x8080
+DEFCSID "JISX0208:1990" 0x8080
DEFCSID "JISX0201-KANA" 0x0080
DEFCSID "JISX0212" 0x8000
INVALID 0xA2AE # GETA
diff --git a/share/keys/Makefile b/share/keys/Makefile
new file mode 100644
index 000000000000..d685b064ccd3
--- /dev/null
+++ b/share/keys/Makefile
@@ -0,0 +1,5 @@
+# $FreeBSD$
+
+SUBDIR= pkg
+
+.include <bsd.subdir.mk>
diff --git a/share/keys/pkg/Makefile b/share/keys/pkg/Makefile
new file mode 100644
index 000000000000..1d83caf9bfe8
--- /dev/null
+++ b/share/keys/pkg/Makefile
@@ -0,0 +1,5 @@
+# $FreeBSD$
+
+SUBDIR= trusted
+
+.include <bsd.subdir.mk>
diff --git a/share/keys/pkg/trusted/Makefile b/share/keys/pkg/trusted/Makefile
new file mode 100644
index 000000000000..ee0d4c9224cd
--- /dev/null
+++ b/share/keys/pkg/trusted/Makefile
@@ -0,0 +1,10 @@
+# $FreeBSD$
+
+NO_OBJ=
+
+FILES= pkg.freebsd.org.2013102301
+
+FILESDIR= /usr/share/keys/pkg/trusted
+FILESMODE= 644
+
+.include <bsd.prog.mk>
diff --git a/share/keys/pkg/trusted/pkg.freebsd.org.2013102301 b/share/keys/pkg/trusted/pkg.freebsd.org.2013102301
new file mode 100644
index 000000000000..3a144a338f29
--- /dev/null
+++ b/share/keys/pkg/trusted/pkg.freebsd.org.2013102301
@@ -0,0 +1,4 @@
+# $FreeBSD$
+
+function: "sha256"
+fingerprint: "b0170035af3acc5f3f3ae1859dc717101b4e6c1d0a794ad554928ca0cbb2f438"
diff --git a/share/man/man1/Makefile b/share/man/man1/Makefile
index 23bc1d8aeb5b..97885a6a8b83 100644
--- a/share/man/man1/Makefile
+++ b/share/man/man1/Makefile
@@ -5,7 +5,7 @@
MAN= builtin.1 intro.1
-.if ${MK_ATF} != "no"
+.if ${MK_TESTS} != "no"
ATF= ${.CURDIR}/../../../contrib/atf
.PATH: ${ATF}/doc
MAN+= atf-test-program.1
diff --git a/share/man/man1/intro.1 b/share/man/man1/intro.1
index c7bd089dfc0e..8fa293efe6f6 100644
--- a/share/man/man1/intro.1
+++ b/share/man/man1/intro.1
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man3/assert.3 b/share/man/man3/assert.3
index 88805357b929..ae56162d8464 100644
--- a/share/man/man3/assert.3
+++ b/share/man/man3/assert.3
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man3/bitstring.3 b/share/man/man3/bitstring.3
index ed7b0f3dfd0c..e7e942603492 100644
--- a/share/man/man3/bitstring.3
+++ b/share/man/man3/bitstring.3
@@ -11,11 +11,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man3/end.3 b/share/man/man3/end.3
index 42e73fe586a4..66ad47b5a528 100644
--- a/share/man/man3/end.3
+++ b/share/man/man3/end.3
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man3/fpgetround.3 b/share/man/man3/fpgetround.3
index fff26cf8d711..c6f013072143 100644
--- a/share/man/man3/fpgetround.3
+++ b/share/man/man3/fpgetround.3
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man3/intro.3 b/share/man/man3/intro.3
index 5645ad94f996..22c95154ccc7 100644
--- a/share/man/man3/intro.3
+++ b/share/man/man3/intro.3
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man3/pthread_create.3 b/share/man/man3/pthread_create.3
index 277d157cfbfc..58bef13629c8 100644
--- a/share/man/man3/pthread_create.3
+++ b/share/man/man3/pthread_create.3
@@ -30,7 +30,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd November 4, 2006
+.Dd March 15, 2014
.Dt PTHREAD_CREATE 3
.Os
.Sh NAME
@@ -118,6 +118,7 @@ is invalid.
.Sh SEE ALSO
.Xr fork 2 ,
.Xr pthread_attr 3 ,
+.Xr pthread_cancel 3 ,
.Xr pthread_cleanup_pop 3 ,
.Xr pthread_cleanup_push 3 ,
.Xr pthread_exit 3 ,
diff --git a/share/man/man3/pthread_exit.3 b/share/man/man3/pthread_exit.3
index d949f190ef11..f50947112c17 100644
--- a/share/man/man3/pthread_exit.3
+++ b/share/man/man3/pthread_exit.3
@@ -30,7 +30,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd April 4, 1996
+.Dd March 15, 2014
.Dt PTHREAD_EXIT 3
.Os
.Sh NAME
@@ -97,6 +97,7 @@ None.
.Sh SEE ALSO
.Xr _exit 2 ,
.Xr exit 3 ,
+.Xr pthread_cancel 3 ,
.Xr pthread_create 3 ,
.Xr pthread_join 3
.Sh STANDARDS
diff --git a/share/man/man3/queue.3 b/share/man/man3/queue.3
index 2b7ad44cb934..6c6cee37bb10 100644
--- a/share/man/man3/queue.3
+++ b/share/man/man3/queue.3
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man3/stdarg.3 b/share/man/man3/stdarg.3
index 92a26f7c6d48..e396123c8788 100644
--- a/share/man/man3/stdarg.3
+++ b/share/man/man3/stdarg.3
@@ -13,11 +13,7 @@
.\" 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
+.\" 3. 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.
.\"
@@ -59,7 +55,7 @@ The include file
.In stdarg.h
declares a type
.Pq Em va_list
-and defines three macros for stepping
+and defines four macros for stepping
through a list of arguments whose number and types are not known to
the called function.
.Pp
@@ -77,7 +73,8 @@ The
macro initializes
.Fa ap
for subsequent use by
-.Fn va_arg
+.Fn va_arg ,
+.Fn va_copy ,
and
.Fn va_end ,
and must be called first.
@@ -93,10 +90,6 @@ macro, it should not be declared as a register variable, or as a
function or an array type.
.Pp
The
-.Fn va_start
-macro returns no value.
-.Pp
-The
.Fn va_arg
macro expands to an expression that has the type and value of the next
argument in the call.
@@ -105,7 +98,9 @@ The parameter
is the
.Em va_list Fa ap
initialized by
-.Fn va_start .
+.Fn va_start
+or
+.Fn va_copy .
Each call to
.Fn va_arg
modifies
@@ -152,18 +147,28 @@ the same number of times as called with
.Fa src .
.Pp
The
-.Fn va_copy
-macro returns no value.
+.Fn va_end
+macro cleans up any state associated with the variable argument list
+.Fa ap .
.Pp
-The
+Each invocation of
+.Fn va_start
+or
+.Fn va_copy
+must be paired with a corresponding invocation of
.Fn va_end
-macro handles a normal return from the function whose variable argument
-list was initialized by
-.Fn va_start .
+in the same function.
+.Sh RETURN VALUES
+The
+.Fn va_arg
+macro returns the value of the next argument.
.Pp
The
+.Fn va_start ,
+.Fn va_copy ,
+and
.Fn va_end
-macro returns no value.
+macros return no value.
.Sh EXAMPLES
The function
.Em foo
diff --git a/share/man/man3/tree.3 b/share/man/man3/tree.3
index 351e935418cb..2e9c63cf751e 100644
--- a/share/man/man3/tree.3
+++ b/share/man/man3/tree.3
@@ -30,7 +30,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd December 27, 2007
+.Dd November 10, 2013
.Dt TREE 3
.Os
.Sh NAME
@@ -70,7 +70,11 @@
.Nm RB_RIGHT ,
.Nm RB_PARENT ,
.Nm RB_FOREACH ,
+.Nm RB_FOREACH_FROM ,
+.Nm RB_FOREACH_SAFE ,
.Nm RB_FOREACH_REVERSE ,
+.Nm RB_FOREACH_REVERSE_FROM ,
+.Nm RB_FOREACH_REVERSE_SAFE ,
.Nm RB_INIT ,
.Nm RB_INSERT ,
.Nm RB_REMOVE
@@ -135,7 +139,11 @@
.Ft "struct TYPE *"
.Fn RB_PARENT "struct TYPE *elm" "RB_ENTRY NAME"
.Fn RB_FOREACH VARNAME NAME "RB_HEAD *head"
+.Fn RB_FOREACH_FROM "VARNAME" "NAME" "POS_VARNAME"
+.Fn RB_FOREACH_SAFE "VARNAME" "NAME" "RB_HEAD *head" "TEMP_VARNAME"
.Fn RB_FOREACH_REVERSE VARNAME NAME "RB_HEAD *head"
+.Fn RB_FOREACH_REVERSE_FROM "VARNAME" "NAME" "POS_VARNAME"
+.Fn RB_FOREACH_REVERSE_SAFE "VARNAME" "NAME" "RB_HEAD *head" "TEMP_VARNAME"
.Ft void
.Fn RB_INIT "RB_HEAD *head"
.Ft "struct TYPE *"
@@ -454,6 +462,29 @@ macro:
.Fn RB_FOREACH np NAME head
.Ed
.Pp
+The macros
+.Fn RB_FOREACH_SAFE
+and
+.Fn RB_FOREACH_REVERSE_SAFE
+traverse the tree referenced by head
+in a forward or reverse direction respectively,
+assigning each element in turn to np.
+However, unlike their unsafe counterparts,
+they permit both the removal of np
+as well as freeing it from within the loop safely
+without interfering with the traversal.
+.Pp
+Both
+.Fn RB_FOREACH_FROM
+and
+.Fn RB_FOREACH_REVERSE_FROM
+may be used to continue an interrupted traversal
+in a forward or reverse direction respectively.
+The head pointer is not required.
+The pointer to the node from where to resume the traversal
+should be passed as their last argument,
+and will be overwritten to provide safe traversal.
+.Pp
The
.Fn RB_EMPTY
macro should be used to check whether a red-black tree is empty.
diff --git a/share/man/man4/Makefile b/share/man/man4/Makefile
index e22179546790..59fd3e9bc3b7 100644
--- a/share/man/man4/Makefile
+++ b/share/man/man4/Makefile
@@ -13,6 +13,7 @@ MAN= aac.4 \
${_acpi_hp.4} \
${_acpi_ibm.4} \
${_acpi_panasonic.4} \
+ ${_acpi_rapidstart.4} \
${_acpi_sony.4} \
acpi_thermal.4 \
${_acpi_toshiba.4} \
@@ -35,6 +36,7 @@ MAN= aac.4 \
alc.4 \
ale.4 \
alpm.4 \
+ altera_atse.4 \
altera_avgen.4 \
altera_jtag_uart.4 \
altera_sdcard.4 \
@@ -58,7 +60,7 @@ MAN= aac.4 \
ath_pci.4 \
atkbd.4 \
atkbdc.4 \
- ${_atp.4} \
+ atp.4 \
${_atf_test_case.4} \
${_atrtc.4} \
${_attimer.4} \
@@ -66,6 +68,7 @@ MAN= aac.4 \
auditpipe.4 \
aue.4 \
axe.4 \
+ axge.4 \
bce.4 \
bfe.4 \
bge.4 \
@@ -119,7 +122,6 @@ MAN= aac.4 \
dummynet.4 \
ed.4 \
edsc.4 \
- ef.4 \
ehci.4 \
em.4 \
en.4 \
@@ -151,10 +153,13 @@ MAN= aac.4 \
geom_fox.4 \
geom_linux_lvm.4 \
geom_map.4 \
+ geom_uncompress.4 \
geom_uzip.4 \
gif.4 \
gpib.4 \
gpio.4 \
+ gpioiic.4 \
+ gpioled.4 \
gre.4 \
h_ertt.4 \
hatm.4 \
@@ -166,6 +171,12 @@ MAN= aac.4 \
${_hptmv.4} \
${_hptnr.4} \
${_hptrr.4} \
+ hv_ata_pci_disengage.4 \
+ hv_kvp.4 \
+ hv_netvsc.4 \
+ hv_storvsc.4 \
+ hv_utils.4 \
+ hv_vmbus.4 \
hwpmc.4 \
ichsmb.4 \
${_ichwd.4} \
@@ -195,7 +206,6 @@ MAN= aac.4 \
ipwfw.4 \
isci.4 \
iscsi_initiator.4 \
- isf.4 \
isp.4 \
ispfw.4 \
iwi.4 \
@@ -270,6 +280,7 @@ MAN= aac.4 \
ncv.4 \
${_ndis.4} \
net80211.4 \
+ netfpga10g_nf10bmac.4 \
netgraph.4 \
netintro.4 \
netmap.4 \
@@ -295,7 +306,6 @@ MAN= aac.4 \
ng_etf.4 \
ng_ether.4 \
ng_ether_echo.4 \
- ng_fec.4 \
ng_frame_relay.4 \
ng_gif.4 \
ng_gif_demux.4 \
@@ -340,7 +350,6 @@ MAN= aac.4 \
${_ntb.4} \
null.4 \
${_nvd.4} \
- ${_nve.4} \
${_nvme.4} \
${_nvram.4} \
${_nvram2env.4} \
@@ -383,6 +392,7 @@ MAN= aac.4 \
rc.4 \
re.4 \
rgephy.4 \
+ rights.4 \
rl.4 \
rndtest.4 \
route.4 \
@@ -501,6 +511,7 @@ MAN= aac.4 \
udav.4 \
udbp.4 \
udp.4 \
+ udplite.4 \
uep.4 \
ufm.4 \
ufoma.4 \
@@ -516,17 +527,22 @@ MAN= aac.4 \
umcs.4 \
umct.4 \
umodem.4 \
+ umoscom.4 \
ums.4 \
unix.4 \
upgt.4 \
uplcom.4 \
ural.4 \
urio.4 \
+ urndis.4 \
${_urtw.4} \
urtwn.4 \
+ urtwnfw.4 \
usb.4 \
+ usb_template.4 \
usb_quirk.4 \
uslcom.4 \
+ usfs.4 \
utopia.4 \
uvisor.4 \
uvscom.4 \
@@ -538,6 +554,7 @@ MAN= aac.4 \
${_virtio.4} \
${_virtio_balloon.4} \
${_virtio_blk.4} \
+ ${_virtio_random.4} \
${_virtio_scsi.4} \
vkbd.4 \
vlan.4 \
@@ -560,6 +577,7 @@ MAN= aac.4 \
wlan_wep.4 \
wlan_xauth.4 \
${_wpi.4} \
+ wsp.4 \
xe.4 \
${_xen.4} \
xhci.4 \
@@ -574,6 +592,7 @@ MLINKS+=age.4 if_age.4
MLINKS+=agp.4 agpgart.4
MLINKS+=alc.4 if_alc.4
MLINKS+=ale.4 if_ale.4
+MLINKS+=altera_atse.4 atse.4
MLINKS+=altera_sdcard.4 altera_sdcardc.4
MLINKS+=altq.4 ALTQ.4
MLINKS+=ath.4 if_ath.4
@@ -600,7 +619,6 @@ MLINKS+=de.4 if_de.4
MLINKS+=disc.4 if_disc.4
MLINKS+=ed.4 if_ed.4
MLINKS+=edsc.4 if_edsc.4
-MLINKS+=ef.4 if_ef.4
MLINKS+=em.4 if_em.4
MLINKS+=en.4 if_en.4
MLINKS+=enc.4 if_enc.4
@@ -620,6 +638,7 @@ MLINKS+=fxp.4 if_fxp.4
MLINKS+=gem.4 if_gem.4
MLINKS+=geom.4 GEOM.4
MLINKS+=gif.4 if_gif.4
+MLINKS+=gpio.4 gpiobus.4
MLINKS+=gre.4 if_gre.4
MLINKS+=hatm.4 if_hatm.4
MLINKS+=hme.4 if_hme.4
@@ -635,6 +654,8 @@ MLINKS+=ipw.4 if_ipw.4
MLINKS+=iwi.4 if_iwi.4
MLINKS+=iwn.4 if_iwn.4
MLINKS+=ixgb.4 if_ixgb.4
+MLINKS+=ixgbe.4 ix.4
+MLINKS+=ixgbe.4 if_ix.4
MLINKS+=ixgbe.4 if_ixgbe.4
MLINKS+=jme.4 if_jme.4
MLINKS+=kue.4 if_kue.4
@@ -655,13 +676,13 @@ MLINKS+=mwl.4 if_mwl.4
MLINKS+=mxge.4 if_mxge.4
MLINKS+=my.4 if_my.4
MLINKS+=${_ndis.4} ${_if_ndis.4}
+MLINKS+=netfpga10g_nf10bmac.4 if_nf10bmac.4
MLINKS+=netintro.4 net.4 \
netintro.4 networking.4
MLINKS+=${_nfe.4} ${_if_nfe.4}
MLINKS+=nge.4 if_nge.4
MLINKS+=${_ntb.4} ${_if_ntb.4} \
${_ntb.4} ${_ntb_hw.4}
-MLINKS+=${_nve.4} ${_if_nve.4}
MLINKS+=${_nxge.4} ${_if_nxge.4}
MLINKS+=patm.4 if_patm.4
MLINKS+=pccbb.4 cbb.4
@@ -706,6 +727,7 @@ MLINKS+=uath.4 if_uath.4
MLINKS+=udav.4 if_udav.4
MLINKS+=upgt.4 if_upgt.4
MLINKS+=ural.4 if_ural.4
+MLINKS+=urndis.4 if_urndis.4
MLINKS+=${_urtw.4} ${_if_urtw.4}
MLINKS+=vge.4 if_vge.4
MLINKS+=vlan.4 if_vlan.4
@@ -731,6 +753,7 @@ _acpi_fujitsu.4=acpi_fujitsu.4
_acpi_hp.4= acpi_hp.4
_acpi_ibm.4= acpi_ibm.4
_acpi_panasonic.4=acpi_panasonic.4
+_acpi_rapidstart.4=acpi_rapidstart.4
_acpi_sony.4= acpi_sony.4
_acpi_toshiba.4=acpi_toshiba.4
_acpi_wmi.4= acpi_wmi.4
@@ -744,7 +767,6 @@ _amdsbwd.4= amdsbwd.4
_amdsmb.4= amdsmb.4
_amdtemp.4= amdtemp.4
_asmc.4= asmc.4
-_atp.4= atp.4
_bxe.4= bxe.4
_coretemp.4= coretemp.4
_cpuctl.4= cpuctl.4
@@ -759,7 +781,6 @@ _ichwd.4= ichwd.4
_if_bxe.4= if_bxe.4
_if_ndis.4= if_ndis.4
_if_nfe.4= if_nfe.4
-_if_nve.4= if_nve.4
_if_nxge.4= if_nxge.4
_if_urtw.4= if_urtw.4
_if_vmx.4= if_vmx.4
@@ -774,13 +795,13 @@ _ndis.4= ndis.4
_nfe.4= nfe.4
_nfsmb.4= nfsmb.4
_nvd.4= nvd.4
-_nve.4= nve.4
_nvme.4= nvme.4
_nvram.4= nvram.4
_nxge.4= nxge.4
_virtio.4= virtio.4
_virtio_balloon.4=virtio_balloon.4
_virtio_blk.4= virtio_blk.4
+_virtio_random.4= virtio_random.4
_virtio_scsi.4= virtio_scsi.4
_vmx.4= vmx.4
_vtnet.4= vtnet.4
@@ -816,9 +837,6 @@ MLINKS+=qlxgbe.4 if_qlxgbe.4
MLINKS+=sfxge.4 if_sfxge.4
.endif
-.if ${MACHINE_CPUARCH} == "powerpc"
-_atp.4= atp.4
-.endif
.if ${MACHINE_CPUARCH} == "mips"
_nvram2env.4= nvram2env.4
.endif
@@ -827,7 +845,7 @@ _nvram2env.4= nvram2env.4
SUBDIR= man4.${MACHINE_CPUARCH}
.endif
-.if ${MK_ATF} != "no"
+.if ${MK_TESTS} != "no"
ATF= ${.CURDIR}/../../../contrib/atf
.PATH: ${ATF}/doc
_atf_test_case.4= atf-test-case.4
diff --git a/share/man/man4/ada.4 b/share/man/man4/ada.4
index 698ce364c22a..760fa6649ae5 100644
--- a/share/man/man4/ada.4
+++ b/share/man/man4/ada.4
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 8, 2012
+.Dd February 21, 2014
.Dt ADA 4
.Os
.Sh NAME
@@ -126,11 +126,16 @@ The default is currently enabled.
.It Va kern.cam.ada.write_cache
.It Va kern.cam.ada. Ns Ar X Ns Va .write_cache
.Pp
-These variables determines whether device write cache should be enabled
+These variables determine whether device write cache should be enabled
globally or per-device or disabled.
Set to 1 to enable write cache, 0 to disable, -1 to leave it as-is.
-Values modified in runtime take effect only after device reset.
-The global default is currently enabled.
+Values modified at runtime take effect only after device reset
+.Pq using the reset subcommand of Xr camcontrol 8 .
+Because of that, this setting should be changed in
+.Pa /boot/loader.conf
+instead of
+.Pa /etc/sysctl.conf .
+The global default is currently 1.
The per-device default is to leave it as-is (follow global setting).
.El
.Sh FILES
diff --git a/share/man/man4/ahci.4 b/share/man/man4/ahci.4
index 23c457419a9e..1019e6dc2709 100644
--- a/share/man/man4/ahci.4
+++ b/share/man/man4/ahci.4
@@ -1,4 +1,4 @@
-.\" Copyright (c) 2009-2012 Alexander Motin <mav@FreeBSD.org>
+.\" Copyright (c) 2009-2013 Alexander Motin <mav@FreeBSD.org>
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd July 25, 2012
+.Dd October 22, 2013
.Dt AHCI 4
.Os
.Sh NAME
@@ -57,9 +57,9 @@ controls Message Signaled Interrupts (MSI) usage by the specified controller.
.It 0
MSI disabled;
.It 1
-single MSI vector used, if supported (default);
+single MSI vector used, if supported;
.It 2
-multiple MSI vectors used, if supported;
+multiple MSI vectors used, if supported (default);
.El
.It Va hint.ahci. Ns Ar X Ns Va .ccc
controls Command Completion Coalescing (CCC) usage by the specified controller.
@@ -68,6 +68,11 @@ for interrupt, if there are some more requests present on controller queue.
CCC reduces number of context switches on systems with many parallel requests,
but it can decrease disk performance on some workloads due to additional
command latency.
+.It Va hint.ahci. Ns Ar X Ns Va .direct
+controls whether the driver should use direct command completion from
+interrupt thread(s), or queue them to CAM completion threads.
+Default value depends on number of MSI interrupts supported and number of
+implemented SATA ports.
.It Va hint.ahcich. Ns Ar X Ns Va .pm_level
controls SATA interface Power Management for the specified channel,
allowing some power to be saved at the cost of additional command
diff --git a/share/man/man4/altera_atse.4 b/share/man/man4/altera_atse.4
new file mode 100644
index 000000000000..d3d96ffe1e10
--- /dev/null
+++ b/share/man/man4/altera_atse.4
@@ -0,0 +1,100 @@
+.\"-
+.\" Copyright (c) 2013 SRI International
+.\" All rights reserved.
+.\"
+.\" This software was developed by SRI International and the University of
+.\" Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237)
+.\" ("CTSRD"), as part of the DARPA CRASH research programme.
+.\"
+.\" 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd October 18, 2013
+.Dt ALTERA_ATSE 4
+.Os
+.Sh NAME
+.Nm atse
+.Nd driver for the Altera Triple-Speed Ethernet MegaCore
+.Sh SYNOPSIS
+.Cd "device atse"
+.Cd "options ATSE_CFI_HACK"
+.Pp
+In
+.Pa /boot/device.hints :
+.Cd hint.atse.0.at="nexus0"
+.Cd hint.atse.0.maddr=0x7f007000
+.Cd hint.atse.0.msize=0x540
+.Cd hint.atse.0.rc_irq=1
+.Cd hint.atse.0.rx_maddr=0x7f007500
+.Cd hint.atse.0.rx_msize=0x8
+.Cd hint.atse.0.rxc_maddr=0x7f007520
+.Cd hint.atse.0.rxc_msize=0x20
+.Cd hint.atse.0.tx_irq=2
+.Cd hint.atse.0.tx_maddr=0x7f007400
+.Cd hint.atse.0.tx_msize=0x8
+.Cd hint.atse.0.txc_maddr=0x7f007420
+.Cd hint.atse.0.txc_msize=0x20
+.Cd hint.e1000phy.0.at="miibus0"
+.Cd hint.e1000phy.0.phyno=0
+.Sh DESCRIPTION
+The
+.Nm
+device driver provides support for the Altera Triple-Speed Ethernet
+MegaCore.
+.Sh HARDWARE
+The current version of the
+.Nm
+driver supports the Ethernet MegaCore as described in version 11.1 of
+Altera's documentation when the device is configured with internal FIFOs.
+.Sh SEE ALSO
+.Xr miibus 4 ,
+.Xr netintro 4 ,
+.Xr ifconfig 8
+.Rs
+.%T Triple-Speed Ethernet MegaCore Function User Guide
+.%D November 2011
+.%I Altera Corporation
+.Re
+.Sh HISTORY
+The
+.Nm
+device driver first appeared in
+.Fx 10.0 .
+.Sh AUTHORS
+The
+.Nm
+device driver and this manual page were
+developed by SRI International and the University of Cambridge Computer
+Laboratory under DARPA/AFRL contract
+.Pq FA8750-10-C-0237
+.Pq Do CTSRD Dc ,
+as part of the DARPA CRASH research programme.
+This device driver was written by
+.An Bjoern A. Zeeb .
+.Sh BUGS
+The
+.Nm
+driver only supports a single configuration of the MegaCore as installed
+on the Terasic Technologies Altera DE4 Development and Education Board.
+.Pp
+Only gigabit Ethernet speeds are currently supported.
diff --git a/share/man/man4/altq.4 b/share/man/man4/altq.4
index 1effdb2c002a..718b593c0aba 100644
--- a/share/man/man4/altq.4
+++ b/share/man/man4/altq.4
@@ -151,7 +151,6 @@ They have been applied to the following hardware drivers:
.Xr nfe 4 ,
.Xr nge 4 ,
.Xr npe 4 ,
-.Xr nve 4 ,
.Xr qlxgb 4 ,
.Xr ral 4 ,
.Xr re 4 ,
diff --git a/share/man/man4/arcmsr.4 b/share/man/man4/arcmsr.4
index 87c70509fec0..1d4d650702aa 100644
--- a/share/man/man4/arcmsr.4
+++ b/share/man/man4/arcmsr.4
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 27, 2013
+.Dd December 18, 2013
.Dt ARCMSR 4
.Os
.Sh NAME
@@ -143,6 +143,8 @@ ARC-1681
ARC-1880
.It
ARC-1882
+.It
+ARC-1883
.El
.Sh FILES
.Bl -tag -width ".Pa /dev/arcmsr?" -compact
diff --git a/share/man/man4/ath.4 b/share/man/man4/ath.4
index 8ae8cd7bebb3..acd83a86d3ff 100644
--- a/share/man/man4/ath.4
+++ b/share/man/man4/ath.4
@@ -28,7 +28,7 @@
.\"
.\" $FreeBSD$
.\"/
-.Dd August 28, 2011
+.Dd April 14, 2014
.Dt ATH 4
.Os
.Sh NAME
@@ -58,7 +58,7 @@ if_ath_pci_load="YES"
The
.Nm
driver provides support for wireless network adapters based on
-the Atheros AR5210, AR5211, AR5212, and AR5416 programming APIs.
+the Atheros AR5210, AR5211, AR5212, AR5416 and AR9300 programming APIs.
These APIs are used by a wide variety of chips; most all chips with
a PCI and/or CardBus interface are supported.
.Pp
@@ -92,20 +92,19 @@ speeds as above for 802.11a operation and
1Mbps, 2Mbps, 5.5 Mbps and 11Mbps for 802.11b operation.
AR5212-based devices support 802.11a, 802.11b, and 802.11g operation
with transmit speeds appropriate to each.
-AR5416-class devices are capable of 802.11n operation
-but are supported only in legacy modes (802.11a, 11b, 11g).
+AR5416 and later class devices are capable of 802.11n operation.
Most chips also support an Atheros Turbo Mode (TM) that operates in
the 5GHz frequency range with 2x the transmit speeds.
Some chips also support Turbo mode in the 2.4GHz range with 802.11g
though this support is not presently available due to regulatory requirements.
(Note that Turbo modes are, however,
only interoperable with other Atheros-based devices.)
-AR5212-based devices also support half- (10MHz) and quarter-width (5MHz) channels.
+AR5212-based and AR5416-based devices also support half- (10MHz) and quarter-width (5MHz) channels.
The actual transmit speed used is dependent on signal quality and the
.Dq "rate control"
algorithm employed by the driver.
All chips support WEP encryption.
-AR5212 and AR5416 parts have hardware support for the
+AR5212, AR5416 and later parts have hardware support for the
AES-CCM, TKIP, and Michael cryptographic
operations required for WPA.
To enable encryption, use
@@ -125,7 +124,7 @@ mode operation.
Multiple
.Cm hostap
virtual interfaces may be configured for simultaneous
-use on cards that use a 5212 part.
+use on cards that use a 5212 or later part.
When multiple interfaces are configured each may have a separate
mac address that is formed by setting the U/L bits in the mac
address assigned to the underlying device.
@@ -294,9 +293,10 @@ device driver first appeared in
Revision A1 of the D-LINK DWL-G520 and DWL-G650 are based on an
Intersil PrismGT chip and are not supported by this driver.
.Sh BUGS
-There is no software retransmit; only hardware retransmit is used.
-.Pp
The driver does not fully enable power-save operation of the chip
in station mode; consequently power use is suboptimal (e.g. on a laptop).
.Pp
-WPA is not supported for 5210 parts.
+The AR5210 can only do WEP in hardware; consequently hardware assisted WEP
+is disabled in order to allow software implementations of TKIP and CCMP to
+function.
+Hardware WEP can be re-enabled by modifying the driver.
diff --git a/share/man/man4/atp.4 b/share/man/man4/atp.4
index 10bb41f35c48..f7827988ca30 100644
--- a/share/man/man4/atp.4
+++ b/share/man/man4/atp.4
@@ -1,4 +1,4 @@
-.\" Copyright (c) 2009 Rohit Grover <rgrover1 at gmail dot com>.
+.\" Copyright (c) 2014 Rohit Grover <rgrover1 at gmail dot com>.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -27,7 +27,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd November 12, 2009
+.Dd February 24, 2014
.Dt ATP 4
.Os
.Sh NAME
@@ -41,8 +41,7 @@ your kernel configuration file:
.Cd "device usb"
.Ed
.Pp
-Alternatively, to load the driver as a
-module at boot time, place the following line in
+Alternatively, to load the driver as a module at boot time, place the following line in
.Xr loader.conf 5 :
.Bd -literal -offset indent
atp_load="YES"
@@ -50,24 +49,21 @@ atp_load="YES"
.Sh DESCRIPTION
The
.Nm
-driver provides support for the Apple Internal Trackpad
-device found in many Apple laptops.
+driver provides support for the Apple Internal Trackpad device found in many
+Apple laptops. Older (Fountain/Geyser) and the newer (Wellspring) trackpad
+families are all supported through a unified driver.
+.Pp
+The driver simulates a three\-button mouse using multi\-finger tap detection.
+Single finger tap generates a left\-button click; two\-finger tap maps to the
+middle button; whereas a three\-finger tap gets treated as a right button
+click.
+.Pp
+There is support for 2\-finger horizontal scrolling, which translates to
+page\-back/forward events; vertical multi\-finger scrolling emulates the mouse
+wheel.
.Pp
-The driver simulates a three\-button mouse using multi\-finger tap
-detection.
-.
-A single\-finger tap generates a left button click;
-two\-finger tap maps to the middle button; whereas a three\-finger tap
-gets treated as a right button click.
-.
A double\-tap followed by a drag is treated as a selection gesture; a
virtual left\-button click is assumed for the lifespan of the drag.
-.
-.Nm
-attempts to filter away activity at the horizontal edges of the
-trackpad\-\-this is to keep unintentional palm movement from being
-considered as user input.
-.
.Pp
.Nm
supports dynamic reconfiguration using
@@ -76,6 +72,28 @@ through nodes under
.Nm hw.usb.atp .
Pointer sensitivity can be controlled using the sysctl tunable
.Nm hw.usb.atp.scale_factor .
+Smaller values of
+.Fa scale_factor
+result in faster movement.
+.
+A simple high-pass filter is used to reduce contributions
+from small movements; the threshold for this filter may be controlled by
+.Nm hw.usb.atp.small_movement .
+.
+The maximum tolerable duration of a touch gesture is controlled by
+.Nm hw.usb.atp.touch_timeout
+(in microseconds); beyond this period, touches are considered to be slides.
+(This conversion also happens when a finger stroke accumulates at least
+.Nm hw.usb.atp.slide_min_movement
+movement (in mickeys).
+.
+The maximum time (in microseconds) to allow an association between a double-
+tap and drag gesture may be controlled by
+.Nm hw.usb.atp.double_tap_threshold .
+.
+Should one want to disable tap detection and rely only upon physical button
+presses, set the following sysctl to a value of 2
+.Nm hw.usb.atp.tap_minimum .
.
.Sh HARDWARE
The
@@ -84,6 +102,8 @@ driver provides support for the following Product IDs:
.Pp
.Bl -bullet -compact
.It
+PowerBooks, iBooks (IDs: 0x020e, 0x020f, 0x0210, 0x0214, 0x0215, 0x0216)
+.It
Core Duo MacBook & MacBook Pro (IDs: 0x0217, 0x0218, 0x0219)
.It
Core2 Duo MacBook & MacBook Pro (IDs: 0x021a, 0x021b, 0x021c)
@@ -95,6 +115,14 @@ Core2 Duo MacBook3,1 (IDs: 0x0229, 0x022a, 0x022b)
15 inch PowerBook (IDs: 0x020e, 0x020f, 0x0215)
.It
17 inch PowerBook (ID: 0x020d)
+.It
+Almost all recent Macbook-Pros and Airs (IDs: 0x0223, 0x0223, 0x0224, 0x0224,
+0x0225, 0x0225, 0x0230, 0x0230, 0x0231, 0x0231, 0x0232, 0x0232, 0x0236,
+0x0236, 0x0237, 0x0237, 0x0238, 0x0238, 0x023f, 0x023f, 0x0240, 0x0241,
+0x0242, 0x0243, 0x0244, 0x0245, 0x0246, 0x0247, 0x0249, 0x024a, 0x024b,
+0x024c, 0x024d, 0x024e, 0x0252, 0x0252, 0x0253, 0x0253, 0x0254, 0x0254,
+0x0259, 0x025a, 0x025b, 0x0262, 0x0262, 0x0263, 0x0264, 0x0290, 0x0291,
+0x0292)
.El
.Pp
To discover the product\-id of a touchpad, search for 'Trackpad' in the
@@ -114,57 +142,6 @@ type device\-\-see
.Xr moused 8
for an explanation of these mouse
types.
-.Xr moused 8
-can be configured to read touchpad data from
-.Pa /dev/atp0
-and pass it along to the
-.Xr sysmouse 4
-driver so that any process wanting to utilize mouse operation (such as
-an X server) may fetch it from
-.Pa /dev/sysmouse ;
-alternatively,
-.Pa /dev/atp0
-may be manipulated via
-.Xr read 2
-and
-.Xr ioctl 2
-calls to get mouse data directly.
-.Sh EXAMPLES
-To use a compatible Apple Trackpad as your console mouse:
-.Pp
-.Dl moused -p /dev/atp0 -t auto
-.Pp
-To launch
-.Xr moused 8
-automatically upon boot, add the following to
-.Pa /etc/rc.conf :
-.Pp
-.Dl moused_enable="YES"
-.Dl moused_type="auto"
-.Dl moused_port="/dev/atp0"
-.Pp
-If you want
-.Xr moused 8
-to also probe for external USB mice or other devices, then add the
-following to
-.Pa /etc/rc.conf :
-.Pp
-.Dl moused_nondefault_enable="YES"
-.Dl moused_ums0_enable="YES"
-.Dl moused_ums1_enable="YES"
-.Pp
-To be able to use the trackpad under X, change the "Pointer" section in
-.Nm xorg.conf
-to the following:
-.Pp
-.Dl Device "/dev/atp0"
-.Dl Protocol "Auto"
-.Pp
-Better still, if you want to be able to use the mouse in both virtual
-consoles as well as in X change it to:
-.Pp
-.Dl Device "/dev/sysmouse"
-.Dl Protocol "Auto"
.Sh SEE ALSO
.Xr sysmouse 4 ,
.Xr usb 4 ,
diff --git a/share/man/man4/axge.4 b/share/man/man4/axge.4
new file mode 100644
index 000000000000..33f7db3188ff
--- /dev/null
+++ b/share/man/man4/axge.4
@@ -0,0 +1,150 @@
+.\" Copyright (c) 1997, 1998, 1999, 2000-2003
+.\" Bill Paul <wpaul@windriver.com>. 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 Bill Paul.
+.\" 4. 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 Bill Paul 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 Bill Paul OR THE VOICES IN HIS HEAD
+.\" 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$
+.\"
+.Dd November 22, 2013
+.Dt AXGE 4
+.Os
+.Sh NAME
+.Nm axge
+.Nd "ASIX Electronics AX88178A/AX88179 USB Gigabit Ethernet driver"
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device xhci"
+.Cd "device ehci"
+.Cd "device uhci"
+.Cd "device ohci"
+.Cd "device usb"
+.Cd "device miibus"
+.Cd "device axge"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+if_axge_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for USB Gigabit Ethernet adapters based on the ASIX
+Electronics AX88179 USB 3.0 and AX88178A USB 2.0 chipsets.
+.Pp
+The AX88179 and AX88178A contain a 10/100/1000 Ethernet MAC with a GMII
+interface for interfacing with the Gigabit Ethernet PHY.
+.Pp
+These devices will operate with both USB 1.x and USB 2.0 controllers, and the
+AX88179 will operate with USB 3.0 controllers.
+Packets are received and transmitted over separate USB bulk transfer endpoints.
+.Pp
+The
+.Nm
+driver supports the following media types:
+.Bl -tag -width ".Cm 10baseT/UTP"
+.It Cm autoselect
+Enable autoselection of the media type and options.
+The user can manually override
+the autoselected mode by adding media options to
+.Xr rc.conf 5 .
+.It Cm 10baseT/UTP
+Set 10Mbps operation.
+The
+.Xr ifconfig 8
+.Cm mediaopt
+option can also be used to select either
+.Cm full-duplex
+or
+.Cm half-duplex
+modes.
+.It Cm 100baseTX
+Set 100Mbps (Fast Ethernet) operation.
+The
+.Xr ifconfig 8
+.Cm mediaopt
+option can also be used to select either
+.Cm full-duplex
+or
+.Cm half-duplex
+modes.
+.It Cm 1000baseT
+Set 1000Mbps (Gigabit Ethernet) operation (AX88178 only).
+The
+.Xr ifconfig 8
+.Cm mediaopt
+option can also be used to select either
+.Cm full-duplex
+or
+.Cm half-duplex
+modes.
+.El
+.Pp
+The
+.Nm
+driver supports the following media options:
+.Bl -tag -width ".Cm full-duplex"
+.It Cm full-duplex
+Force full duplex operation.
+.It Cm half-duplex
+Force half duplex operation.
+.El
+.Pp
+For more information on configuring this device, see
+.Xr ifconfig 8 .
+.Sh SEE ALSO
+.Xr altq 4 ,
+.Xr arp 4 ,
+.Xr miibus 4 ,
+.Xr netintro 4 ,
+.Xr ng_ether 4 ,
+.Xr rgephy 4 ,
+.Xr vlan 4 ,
+.Xr ifconfig 8
+.Sh HISTORY
+The
+.Nm
+device driver first appeared in
+.Fx 10.1 .
+.Sh AUTHORS
+The
+.Nm
+driver was written by
+.An Kevin Lo Aq kevlo@FreeBSD.org
+and
+.An Li-Wen Hsu Aq lwhsu@FreeBSD.org .
+This manual page was adapted by
+.An Mark Johnston Aq markj@FreeBSD.org
+from the
+.Xr axe 4
+manual page.
diff --git a/share/man/man4/bpf.4 b/share/man/man4/bpf.4
index 4095f5e62948..072f8e099f42 100644
--- a/share/man/man4/bpf.4
+++ b/share/man/man4/bpf.4
@@ -697,9 +697,11 @@ is used when the time stamp is set to
.Dv BPF_T_MICROTIME_MONOTONIC_FAST ,
or
.Dv BPF_T_NONE
-for backward compatibility reasons. Otherwise,
+for backward compatibility reasons.
+Otherwise,
.Vt bpf_xhdr
-is used. However,
+is used.
+However,
.Vt bpf_hdr
may be deprecated in the near future.
Suitable precautions
@@ -962,19 +964,23 @@ subsystem
.It Va net.bpf.optimize_writers: No 0
Various programs use BPF to send (but not receive) raw packets
(cdpd, lldpd, dhcpd, dhcp relays, etc. are good examples of such programs).
-They do not need incoming packets to be send to them. Turning this option on
+They do not need incoming packets to be send to them.
+Turning this option on
makes new BPF users to be attached to write-only interface list until program
explicitly specifies read filter via
-.Cm pcap_set_filter() .
+.Fn pcap_set_filter .
This removes any performance degradation for high-speed interfaces.
.It Va net.bpf.stats:
Binary interface for retrieving general statistics.
.It Va net.bpf.zerocopy_enable: No 0
-Permits zero-copy to be used with net BPF readers. Use with caution.
+Permits zero-copy to be used with net BPF readers.
+Use with caution.
.It Va net.bpf.maxinsns: No 512
-Maximum number of instructions that BPF program can contain. Use
+Maximum number of instructions that BPF program can contain.
+Use
.Xr tcpdump 1
--d option to determine approximate number of instruction for any filter.
+.Fl d
+option to determine approximate number of instruction for any filter.
.It Va net.bpf.maxbufsize: No 524288
Maximum buffer size to allocate for packets buffer.
.It Va net.bpf.bufsize: No 4096
diff --git a/share/man/man4/capsicum.4 b/share/man/man4/capsicum.4
index b2a157d6f88f..9009d3ff4b46 100644
--- a/share/man/man4/capsicum.4
+++ b/share/man/man4/capsicum.4
@@ -26,7 +26,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd September 17, 2013
+.Dd October 19, 2013
.Dt CAPSICUM 4
.Os
.Sh NAME
@@ -35,7 +35,6 @@
.Sh SYNOPSIS
.Cd "options CAPABILITY_MODE"
.Cd "options CAPABILITIES"
-.Cd "options PROCDESC"
.Sh DESCRIPTION
.Nm
is a lightweight OS capability and sandbox framework implementing a hybrid
@@ -58,8 +57,8 @@ memory mappings or file descriptors, may be used.
Once set, the flag is inherited by future children processes, and may not be
cleared.
.It capabilities
-File descriptors that wrap other file descriptors, masking operations that can
-be called on them; for example, a file descriptor returned by
+Limit operations that can be called on file descriptors.
+For example, a file descriptor returned by
.Xr open 2
may be refined using
.Xr cap_rights_limit 2
@@ -69,6 +68,9 @@ and
.Xr write 2
can be called, but not
.Xr fchmod 2 .
+The complete list of the capability rights can be found in the
+.Xr rights 4
+manual page.
.El
.Pp
In some cases,
@@ -88,8 +90,9 @@ associated with file descriptors; described in greater detail in
.El
.Sh SEE ALSO
.Xr cap_enter 2 ,
+.Xr cap_fcntls_limit 2 ,
.Xr cap_getmode 2 ,
-.Xr cap_rights_get 2 ,
+.Xr cap_ioctls_limit 2 ,
.Xr cap_rights_limit 2 ,
.Xr fchmod 2 ,
.Xr open 2 ,
@@ -100,7 +103,10 @@ associated with file descriptors; described in greater detail in
.Xr read 2 ,
.Xr shm_open 2 ,
.Xr write 2 ,
-.Xr procdesc 4
+.Xr cap_rights_get 3 ,
+.Xr libcapsicum 3 ,
+.Xr procdesc 4 ,
+.Xr casperd 8
.Sh HISTORY
.Nm
first appeared in
@@ -117,7 +123,8 @@ at the University of Cambridge, and
.An "Ben Laurie" Aq benl@FreeBSD.org
and
.An "Kris Kennaway" Aq kris@FreeBSD.org
-at Google, Inc.
+at Google, Inc., and
+.An "Pawel Jakub Dawidek" Aq pawel@dawidek.net .
.Sh BUGS
.Nm
is considered experimental in
diff --git a/share/man/man4/cd.4 b/share/man/man4/cd.4
index f3a6fc239189..495b28df79ce 100644
--- a/share/man/man4/cd.4
+++ b/share/man/man4/cd.4
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 8, 2012
+.Dd April 9, 2014
.Dt CD 4
.Os
.Sh NAME
@@ -33,8 +33,6 @@
.Nd SCSI CD-ROM driver
.Sh SYNOPSIS
.Cd device cd
-.Cd "options ""CHANGER_MIN_BUSY_SECONDS=3"""
-.Cd "options ""CHANGER_MAX_BUSY_SECONDS=11"""
.Sh DESCRIPTION
The
.Nm
@@ -288,65 +286,6 @@ Some work is planned to support
some of the more common `broken'
.Tn CD-ROM
drives; however, this is not yet under way.
-.Sh CHANGER OPERATION
-This driver has built-in support for LUN-based CD changers.
-A LUN-based CD
-changer is a drive that can hold two or more CDs, but only has one CD
-player mechanism.
-Each CD in the drive shows up as a separate logical unit
-on the
-.Tn SCSI
-bus.
-The
-.Nm
-driver automatically recognizes LUN-based changers, and routes commands for
-changers through an internal scheduler.
-The scheduler prevents changer
-"thrashing", which is caused by sending commands to different LUNs in the
-changer at the same time.
-.Pp
-The scheduler honors minimum and maximum time
-quanta that the driver will spend on a particular LUN.
-The minimum time
-is the guaranteed minimum amount of time that the driver will spend on a
-given LUN, even if there is no outstanding I/O for that LUN.
-The maximum
-time is the maximum amount of time the changer will spend on a LUN if there
-is outstanding I/O for another LUN.
-If there is no outstanding I/O for
-another LUN, the driver will allow indefinite access to a given LUN.
-.Pp
-The minimum and maximum time quanta are configurable via kernel options and
-also via sysctl and kernel tunable variables.
-The kernel options are:
-.Pp
-.Bl -item -compact
-.It
-.Cd "options ""CHANGER_MIN_BUSY_SECONDS=3"""
-.It
-.Cd "options ""CHANGER_MAX_BUSY_SECONDS=11"""
-.El
-.Pp
-The sysctl/kernel tunable variables are:
-.Pp
-.Bl -item -compact
-.It
-.Va kern.cam.cd.changer.min_busy_seconds
-.It
-.Va kern.cam.cd.changer.max_busy_seconds
-.El
-.Pp
-It is suggested that the user try experimenting with the minimum and
-maximum timeouts via the sysctl variables to arrive at the proper values
-for your changer.
-Once you have settled on the proper timeouts for your
-changer, you can then put them in your kernel config file.
-.Pp
-If your system does have a LUN-based changer, you may notice that the
-probe messages for the various LUNs of the changer will continue to appear
-while the boot process is going on.
-This is normal, and is caused by the
-changer scheduling code.
.Sh SYSCTL VARIABLES
The following variables are available as both
.Xr sysctl 8
@@ -397,12 +336,6 @@ Valid minimum command sizes
are 6 and 10.
Any value above 6 will be rounded to 10, and any value below
6 will be rounded to 6.
-.It kern.cam.cd.changer.min_busy_seconds
-.It kern.cam.cd.changer.max_busy_seconds
-.Pp
-Tune how long individual LUNs are 'locked' for I/O operations to
-optimize changer operation.
-See CHANGER OPERATION section for information on how to use these items.
.El
.Sh FILES
.Bl -tag -width /dev/cd[0-9][a-h] -compact
@@ -437,21 +370,3 @@ were poorly chosen, and a number of spelling errors have survived in
the names of the
.Fn ioctl
commands.
-.Pp
-There is no mechanism currently to set different minimum and maximum
-timeouts for different CD changers; the timeout values set by the kernel
-options or the sysctl variables apply to all LUN-based CD changers in the
-system.
-It is possible to implement such support, but the sysctl
-implementation at least would be rather inelegant, because of the current
-inability of the sysctl code to handle the addition of nodes after compile
-time.
-Thus, it would take one dynamically sized sysctl variable and a
-userland utility to get/set the timeout values.
-Implementation of separate
-timeouts for different CD devices in the kernel config file would likely
-require modification of
-.Xr config 8
-to support the two timeouts when hardwiring
-.Nm
-devices.
diff --git a/share/man/man4/crypto.4 b/share/man/man4/crypto.4
index bb628254556b..4f3b24cafa4a 100644
--- a/share/man/man4/crypto.4
+++ b/share/man/man4/crypto.4
@@ -107,7 +107,6 @@ crypto access device
.El
.Sh SEE ALSO
.Xr aesni 4 ,
-.Xr glxsb 4 ,
.Xr hifn 4 ,
.Xr ipsec 4 ,
.Xr padlock 4 ,
diff --git a/share/man/man4/cxgbe.4 b/share/man/man4/cxgbe.4
index 93925a716532..af6a6a0c4f65 100644
--- a/share/man/man4/cxgbe.4
+++ b/share/man/man4/cxgbe.4
@@ -1,4 +1,4 @@
-.\" Copyright (c) 2011-2012, Chelsio Inc
+.\" Copyright (c) 2011-2014, Chelsio Inc
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -31,12 +31,12 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 25, 2012
+.Dd March 20, 2014
.Dt CXGBE 4
.Os
.Sh NAME
.Nm cxgbe
-.Nd "Chelsio T4 10Gb and 1Gb Ethernet adapter driver"
+.Nd "Chelsio T4 and T5 based 40Gb, 10Gb, and 1Gb Ethernet adapter driver"
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following lines in your
@@ -50,13 +50,14 @@ module at boot time, place the following lines in
.Xr loader.conf 5 :
.Bd -literal -offset indent
t4fw_cfg_load="YES"
+t5fw_cfg_load="YES"
if_cxgbe_load="YES"
.Ed
.Sh DESCRIPTION
The
.Nm
driver provides support for PCI Express Ethernet adapters based on
-the Chelsio Terminator 4 (T4) ASIC.
+the Chelsio Terminator 4 and Terminator 5 ASICs (T4 and T5).
The driver supports Jumbo Frames, Transmit/Receive checksum offload,
TCP segmentation offload (TSO), Large Receive Offload (LRO), VLAN
tag insertion/extraction, VLAN checksum offload, VLAN TSO, and
@@ -65,11 +66,49 @@ For further hardware information and questions related to hardware
requirements, see
.Pa http://www.chelsio.com/ .
.Pp
+Note that ports of T5 cards are named cxl and attach to a t5nex parent device
+(in contrast to ports named cxgbe that attach to a t4nex parent for a T4 card).
+Loader tunables with the hw.cxgbe prefix apply to both T4 and T5 cards.
+The sysctl MIBs are at dev.t5nex and dev.cxl for T5 cards and at dev.t4nex and
+dev.cxgbe for T4 cards.
+.Pp
For more information on configuring this device, see
.Xr ifconfig 8 .
.Sh HARDWARE
The
.Nm
+driver supports 40Gb, 10Gb and 1Gb Ethernet adapters based on the T5 ASIC
+(ports will be named cxl):
+.Pp
+.Bl -bullet -compact
+.It
+Chelsio T580-CR
+.It
+Chelsio T580-LP-CR
+.It
+Chelsio T580-LP-SO-CR
+.It
+Chelsio T560-CR
+.It
+Chelsio T540-CR
+.It
+Chelsio T540-LP-CR
+.It
+Chelsio T522-CR
+.It
+Chelsio T520-LL-CR
+.It
+Chelsio T520-CR
+.It
+Chelsio T520-SO
+.It
+Chelsio T520-BT
+.It
+Chelsio T504-BT
+.El
+.Pp
+The
+.Nm
driver supports 10Gb and 1Gb Ethernet adapters based on the T4 ASIC:
.Pp
.Bl -bullet -compact
@@ -101,11 +140,11 @@ prompt before booting the kernel or stored in
.Xr loader.conf 5 .
.Bl -tag -width indent
.It Va hw.cxgbe.ntxq10g
-The number of tx queues to use for a 10Gb port.
+The number of tx queues to use for a 10Gb or 40Gb port.
The default is 16 or the number
of CPU cores in the system, whichever is less.
.It Va hw.cxgbe.nrxq10g
-The number of rx queues to use for a 10Gb port.
+The number of rx queues to use for a 10Gb or 40Gb port.
The default is 8 or the number
of CPU cores in the system, whichever is less.
.It Va hw.cxgbe.ntxq1g
@@ -117,11 +156,11 @@ The number of rx queues to use for a 1Gb port.
The default is 2 or the number
of CPU cores in the system, whichever is less.
.It Va hw.cxgbe.nofldtxq10g
-The number of TOE tx queues to use for a 10Gb port.
+The number of TOE tx queues to use for a 10Gb or 40Gb port.
The default is 8 or the
number of CPU cores in the system, whichever is less.
.It Va hw.cxgbe.nofldrxq10g
-The number of TOE rx queues to use for a 10Gb port.
+The number of TOE rx queues to use for a 10Gb or 40Gb port.
The default is 2 or the
number of CPU cores in the system, whichever is less.
.It Va hw.cxgbe.nofldtxq1g
@@ -137,20 +176,18 @@ The timer index value to use to delay interrupts.
The holdoff timer list has the values 1, 5, 10, 50, 100, and 200
by default (all values are in microseconds) and the index selects a
value from this list.
-The default value is 1 for both 10Gb and 1Gb ports, which means the
-timer value is 5us.
-Different cxgbe interfaces can be assigned different values at any time via the
-dev.cxgbe.X.holdoff_tmr_idx sysctl.
+The default value is 1 which means the timer value is 5us.
+Different interfaces can be assigned different values at any time via the
+dev.cxgbe.X.holdoff_tmr_idx or dev.cxl.X.holdoff_tmr_idx sysctl.
.It Va hw.cxgbe.holdoff_pktc_idx_10G
.It Va hw.cxgbe.holdoff_pktc_idx_1G
The packet-count index value to use to delay interrupts.
The packet-count list has the values 1, 8, 16, and 32 by default
and the index selects a value from this list.
-The default value is -1 for both 10Gb and 1Gb ports, which means packet
-counting is disabled and interrupts are generated based solely on the
-holdoff timer value.
-Different cxgbe interfaces can be assigned different values via the
-dev.cxgbe.X.holdoff_pktc_idx sysctl.
+The default value is -1 which means packet counting is disabled and interrupts
+are generated based solely on the holdoff timer value.
+Different interfaces can be assigned different values via the
+dev.cxgbe.X.holdoff_pktc_idx or dev.cxl.X.holdoff_pktc_idx sysctl.
This sysctl works only when the interface has never been marked up (as done by
ifconfig up).
.It Va hw.cxgbe.qsize_txq
@@ -161,16 +198,16 @@ software queuing.
See
.Xr ifnet 9 .
The default value is 1024.
-Different cxgbe interfaces can be assigned different values via the
-dev.cxgbe.X.qsize_txq sysctl.
+Different interfaces can be assigned different values via the
+dev.cxgbe.X.qsize_txq sysctl or dev.cxl.X.qsize_txq sysctl.
This sysctl works only when the interface has never been marked up (as done by
ifconfig up).
.It Va hw.cxgbe.qsize_rxq
The size, in number of entries, of the descriptor ring used for an
rx queue.
The default value is 1024.
-Different cxgbe interfaces can be assigned different values via the
-dev.cxgbe.X.qsize_rxq sysctl.
+Different interfaces can be assigned different values via the
+dev.cxgbe.X.qsize_rxq or dev.cxl.X.qsize_rxq sysctl.
This sysctl works only when the interface has never been marked up (as done by
ifconfig up).
.It Va hw.cxgbe.interrupt_types
@@ -188,6 +225,43 @@ already on the card.
long as it is compatible with the driver and is a different version than
the one already on the card.
The default is 1.
+.It Va hw.cxgbe.fl_pktshift
+The number of bytes of padding inserted before the begining of an Ethernet
+frame in the receive buffer.
+The default value of 2 ensures that the Ethernet payload (usually the IP header)
+is at a 4 byte aligned address.
+0-7 are all valid values.
+.It Va hw.cxgbe.fl_pad
+A non-zero value ensures that writes from the hardware to a receive buffer are
+padded up to the specified boundary.
+The default is -1 which lets the driver pick a pad boundary.
+0 disables trailer padding completely.
+.It Va hw.cxgbe.cong_drop
+Controls the hardware response to congestion.
+-1 disables congestion feedback and is not recommended.
+0 instructs the hardware to backpressure its pipeline on congestion.
+This usually results in the port emitting pause frames.
+1 instructs the hardware to drop frames destined for congested queues.
+.It Va hw.cxgbe.buffer_packing
+Allow the hardware to deliver multiple frames in the same receive buffer
+opportunistically.
+The default is -1 which lets the driver decide.
+0 or 1 explicitly disable or enable this feature.
+.It Va hw.cxgbe.allow_mbufs_in_cluster
+1 allows the driver to lay down one or more mbufs within the receive buffer
+opportunistically. This is the default.
+0 prohibits the driver from doing so.
+.It Va hw.cxgbe.largest_rx_cluster
+.It Va hw.cxgbe.safest_rx_cluster
+Sizes of rx clusters. Each of these must be set to one of the sizes available
+(usually 2048, 4096, 9216, and 16384) and largest_rx_cluster must be greater
+than or equal to safest_rx_cluster.
+The defaults are 16384 and 4096 respectively.
+The driver will never attempt to allocate a receive buffer larger than
+largest_rx_cluster and will fall back to allocating buffers of
+safest_rx_cluster size if an allocation larger than safest_rx_cluster fails.
+Note that largest_rx_cluster merely establishes a ceiling -- the driver is
+allowed to allocate buffers of smaller sizes.
.It Va hw.cxgbe.config_file
Select a pre-packaged device configuration file.
A configuration file contains a recipe for partitioning and configuring the
@@ -195,7 +269,7 @@ hardware resources on the card.
This tunable is for specialized applications only and should not be used in
normal operation.
The configuration profile currently in use is available in the dev.t4nex.X.cf
-and dev.t4nex.X.cfcsum sysctls.
+and dev.t4nex.X.cfcsum (dev.t5nex for T5 cards) sysctls.
.It Va hw.cxgbe.linkcaps_allowed
.It Va hw.cxgbe.niccaps_allowed
.It Va hw.cxgbe.toecaps_allowed
@@ -209,7 +283,7 @@ capability.
This tunable is for specialized applications only and should not be used in
normal operation.
The capabilities for which hardware resources have been reserved are listed in
-dev.t4nex.X.*caps sysctls.
+dev.t4nex.X.*caps or dev.t5nex.X.*caps sysctls.
.El
.Sh SUPPORT
For general information and support,
@@ -231,6 +305,10 @@ The
.Nm
device driver first appeared in
.Fx 9.0 .
+Support for T5 cards first appeared in
+.Fx 9.2
+and
+.Fx 10.0 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/cy.4 b/share/man/man4/cy.4
index 3ad479fbce35..c0c807286f1e 100644
--- a/share/man/man4/cy.4
+++ b/share/man/man4/cy.4
@@ -12,11 +12,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/ddb.4 b/share/man/man4/ddb.4
index 452e1c2282c5..01f5135f58e1 100644
--- a/share/man/man4/ddb.4
+++ b/share/man/man4/ddb.4
@@ -251,19 +251,7 @@ The location is also displayed in hex at the beginning of each line.
display as an instruction
.It Cm I
display as an instruction with possible alternate formats depending on the
-machine:
-.Bl -tag -width ".Tn powerpc" -compact
-.It Tn amd64
-No alternate format.
-.It Tn i386
-No alternate format.
-.It Tn ia64
-No alternate format.
-.It Tn powerpc
-No alternate format.
-.It Tn sparc64
-No alternate format.
-.El
+machine, but none of the supported architectures have an alternate format.
.It Cm S
display a symbol name for the pointer stored at the address
.El
diff --git a/share/man/man4/devctl.4 b/share/man/man4/devctl.4
index 50afee70442e..b86cf23b6b69 100644
--- a/share/man/man4/devctl.4
+++ b/share/man/man4/devctl.4
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 11, 2003
+.Dd March 26, 2014
.Dt DEVCTL 4
.Os
.Sh NAME
@@ -73,9 +73,9 @@ If you try to read this device a character at a time, you will lose
the rest of the data.
Listening programs are expected to cope.
.Pp
-The sysctl and boot parameter
-.Va hw.bus.devctl_disable
-is used to disable
+The sysctl
+.Va hw.bus.devctl_queue
+can be used to control queue length. It is set to 0 to disable
.Nm
when no
.Xr devd 8
diff --git a/share/man/man4/digi.4 b/share/man/man4/digi.4
index f84ac78e0adb..1e3411995f5d 100644
--- a/share/man/man4/digi.4
+++ b/share/man/man4/digi.4
@@ -12,11 +12,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/disc.4 b/share/man/man4/disc.4
index 300e712272fc..1a4eae190ff4 100644
--- a/share/man/man4/disc.4
+++ b/share/man/man4/disc.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/edsc.4 b/share/man/man4/edsc.4
index 075e73617695..a25cee3a4143 100644
--- a/share/man/man4/edsc.4
+++ b/share/man/man4/edsc.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/ef.4 b/share/man/man4/ef.4
deleted file mode 100644
index ce074879ba43..000000000000
--- a/share/man/man4/ef.4
+++ /dev/null
@@ -1,111 +0,0 @@
-.\"
-.\" Copyright (c) 1999, Boris Popov
-.\" 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd June 20, 1999
-.Dt EF 4
-.Os
-.Sh NAME
-.Nm ef
-.Nd "pseudo-device driver providing support for multiple Ethernet frame types"
-.Sh SYNOPSIS
-.Cd "device ef"
-.Sh DESCRIPTION
-The
-.Nm
-pseudo-device driver clones each Ethernet type device with four
-additional interfaces.
-Each of them is capable to send or receive only
-one predefined frame type.
-.Pp
-Names for the new interfaces are created by adding a
-.Ar fN
-suffix to an existing device name.
-Where
-.Ar N
-is a device unit which can have one of the following values:
-.Bd -literal -offset indent
-0 interface with an Ethernet_II frame
-1 interface with a Novell Ethernet_802.3 frame
-2 interface with an Ethernet_802.2 frame
-3 interface with an Ethernet_802.2/SNAP frame support.
-.Ed
-.Pp
-For example, device
-.Ar ed0
-will be populated with four devices:
-.Ar ed0f0 ,
-.Ar ed0f1 ,
-.Ar ed0f2
-and
-.Ar ed0f3 .
-.Pp
-After that, each device can be configured as usual:
-.Dl # ifconfig ed0f1 ipx 0x105
-This will configure IPX protocol with network number
-.Ar 0x105
-and
-.Ar Ethernet_802.3
-frame type.
-.Pp
-Please note that it is impossible to configure the IPX protocol on the parent
-.Ar ed0
-device after the
-.Ar if_ef.ko
-driver has been loaded.
-.Pp
-If the parent interface is not configured for any other protocol
-(IP for example), subinterfaces will not function.
-To avoid that, the parent interface should be
-manually marked as
-.Dq up :
-.Dl # ifconfig ed0 up
-.Sh EXAMPLES
-The
-.Nm
-driver can be loaded via the
-.Xr loader.conf 5
-file:
-.Dl if_ef_load="YES"
-.Pp
-In this case, ordinary interface configuration commands can be used
-in the
-.Xr rc.conf 5
-file:
-.Dl network_interfaces="ed2 lo0 tun0 ed2f0 ed2f1"
-.Dl ifconfig_ed2f0_ipx="ipx 0x101"
-.Dl ifconfig_ed2f1_ipx="ipx 0x102"
-.Sh DIAGNOSTICS
-None.
-.Sh SEE ALSO
-.Xr ipx 3 ,
-.Xr ifconfig 8
-.Sh AUTHORS
-.An Boris Popov Aq bp@FreeBSD.org .
-.Sh CAVEATS
-Avoid to configure the parent Ethernet device for the IPX protocol, after the
-.Nm
-driver is loaded.
diff --git a/share/man/man4/fd.4 b/share/man/man4/fd.4
index 99a05317c4fb..0becf5140308 100644
--- a/share/man/man4/fd.4
+++ b/share/man/man4/fd.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/geom_uncompress.4 b/share/man/man4/geom_uncompress.4
new file mode 100644
index 000000000000..6e848d430fac
--- /dev/null
+++ b/share/man/man4/geom_uncompress.4
@@ -0,0 +1,107 @@
+.\" Copyright (c) 2014, Luiz Otavio O Souza <loos@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 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd January 9, 2014
+.Dt GEOM_UNCOMPRESS 4
+.Os
+.Sh NAME
+.Nm geom_uncompress
+.Nd "GEOM based compressed disk images"
+.Sh SYNOPSIS
+To compile this driver into the kernel, place the following line in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "options GEOM_UNCOMPRESS"
+.Ed
+.Pp
+Alternatively, to load the driver as a module at boot time, place the
+following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+geom_uncompress_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+framework provides support for compressed read only disk images.
+This allows significant storage savings at the expense of a little CPU
+time on each read.
+Data written in the GEOM label area allows
+.Nm
+to detect compressed images which have been created with
+.Xr mkulzma 8
+or
+.Xr mkuzip 8
+and presented to the kernel as a logical disk device via
+.Xr md 4 .
+.Nm
+creates a unique
+.Pa md#.uncompress
+device for each image.
+.Pp
+The
+.Nm
+device is subsequently used by the
+.Fx
+kernel to access the disk images.
+The
+.Nm
+driver does not allow write operations to the underlying disk image.
+To check which
+.Xr md 4
+devices match a given
+.Nm
+device:
+.Bd -literal -offset indent
+# geom uncompress list
+Geom name: md0.uncompress
+Providers:
+1. Name: md0.uncompress
+ Mediasize: 52428800 (50M)
+ Sectorsize: 512
+ Mode: r1w0e0
+Consumers:
+1. Name: md0
+ Mediasize: 20864000 (20M)
+ Sectorsize: 512
+ Mode: r1w0e0
+.Ed
+.Sh SEE ALSO
+.Xr GEOM 4 ,
+.Xr md 4 ,
+.Xr geom 8 ,
+.Xr mkulzma 8 ,
+.Xr mkuzip 8
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm
+driver was written by
+.An "Maxim Sobolev" Aq sobomax@FreeBSD.org
+and
+.An "Aleksandr Rybalko" Aq ray@FreeBSD.org .
+This manual page was written by
+.An "Luiz Otavio O Souza" Aq loos@FreeBSD.org .
diff --git a/share/man/man4/gpio.4 b/share/man/man4/gpio.4
index 614a722c4d22..119f9384c2cb 100644
--- a/share/man/man4/gpio.4
+++ b/share/man/man4/gpio.4
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd September 13, 2013
+.Dd November 5, 2013
.Dt GPIO 4
.Os
.Sh NAME
@@ -34,16 +34,15 @@
To compile these devices into your kernel and use the device hints, place the
following lines in your kernel configuration file:
.Bd -ragged -offset indent
-.Cd "device gpiobus"
-.Cd "device gpioiic"
.Cd "device gpio"
.Cd "device gpioc"
+.Cd "device gpioiic"
.Cd "device gpioled"
.Ed
.Pp
Additional device entries for the
.Li ARM
-architecure include:
+architecture include:
.Bd -ragged -offset indent
.Cd "device a10_gpio"
.Cd "device bcm_gpio"
@@ -59,7 +58,7 @@ architecure include:
.Pp
Additional device entries for the
.Li MIPS
-architecure include:
+architecture include:
.Bd -ragged -offset indent
.Cd "device ar71xxx_gpio"
.Cd "device octeon_gpio"
@@ -68,16 +67,17 @@ architecure include:
.Pp
Additional device entries for the
.Li POWERPC
-architecure include:
+architecture include:
.Bd -ragged -offset indent
.Cd "device wiigpio"
.Cd "device macgpio"
.Ed
.Sh DESCRIPTION
The
-.Em gpiobus
-system provides a simple interface to the bit banging style GPIO bus
-found on embedded architectures.
+.Nm
+system provides a simple interface to the GPIO pins that are usually
+available on embedded architectures and can provide bit banging style
+devices to the system.
.Pp
The acronym
.Li GPIO
@@ -88,81 +88,50 @@ The BUS physically consists of multiple pins that can be configured
for input/output, IRQ delivery, SDA/SCL
.Em iicbus
use, etc.
-On most embedded architechtures (mips/arm), discovery of the bus and
+.Pp
+On some embedded architectures (like MIPS), discovery of the bus and
configuration of the pins is done via
.Xr device.hints 5
in the platform's kernel
.Xr config 5
file.
.Pp
-Assignment of
-.Xr gpioiic 4
-bus variables is done via:
-.Bl -tag -width ".Va hint.gpioiic.%d.atXXX"
-.It Va hint.gpioiic.%d.at
-Normally just gpiobus0.
-.It Va hint.gpioiic.%d.pins
-This is a bitmask of the pins on the gpio board that are to be used for
-SCLOCK and SDATA from the IIC bus.
-To configure pin 0 and 7, use the bitmask of
-10000001 and convert it to a hexadecimal value of 0x0081.
-Should only ever have two bits set in mask.
-.It Va hint.gpioiic.%d.scl
-Indicates which bit in the
-.Va hint.gpioiic.%d.pins
-should be used as the SCLOCK
-source.
-.It Va hint.gpioiic.%d.sda
-Indicates which bit in the
-.Va hint.gpioiic.%d.pins
-should be used as the SDATA
-source.
-.El
+On some others (like ARM), where
+.Xr FDT 4
+is used to describe the device tree, the bus discovery is done via the DTS
+passed to the kernel, being either statically compiled in, or by a variety
+of ways where the boot loader (or Open Firmware enabled system) passes the
+DTS blob to the kernel at boot.
.Pp
-The following are only provided by the
+The following
+.Xr device.hints 5
+are only provided by the
.Cd ar71xx_gpio
-driver.
+driver:
.Bl -tag -width ".Va hint.gpioiic.%d.atXXX"
.It Va hint.gpio.%d.pinmask
-This is a bitmask of pins on the gpio board that we would like to expose
-for use to the host o/s.
+This is a bitmask of pins on the GPIO board that we would like to expose
+for use to the host operating system.
To expose pin 0, 4 and 7, use the bitmask of
10010001 converted to the hexadecimal value 0x0091.
.It Va hint.gpio.%d.pinon
-This is a bitmask of pins on the gpio board that will be set to ON at host
+This is a bitmask of pins on the GPIO board that will be set to ON at host
start.
To set pin 2, 5 and 13 to be set ON at boot, use the bitmask of
10000000010010 converted to the hexadecimal value 0x2012.
.It Va hint.gpio.function_set
.It Va hint.gpio.function_clear
-These are a bitmask of pins that will remap a pin to handle a specific
+These are bitmasks of pins that will remap a pin to handle a specific
function (USB, UART TX/RX, etc) in the Atheros function registers.
-This is mainly used to set/clear functions that we need when they are setup or
-not setup by uBoot.
-.El
-.Pp
-These values are configureable from the
-.Xr gpioled 4
-interface and help create
-.Xr led 4
-compatible devices in
-.Pa /dev/led/<name> .
-.Bl -tag -width ".Va hint.gpioiic.%d.atXXX"
-.It Va hint.gpioled.%d.at
-Normally assigned to gpiobus0.
-.It Va hint.gpioled.%d.name
-Arbitrary name of device in
-.Pa /dev/led/
-to create for
-.Xr led 4
-interfaces.
-.It Va hint.gpioled.%d.pins
-Which pin on the GPIO interface to map to this instance.
+This is mainly used to set/clear functions that we need when they are set up or
+not set up by uBoot.
.El
.Pp
Simply put, each pin of the GPIO interface is connected to an input/output
of some device in a system.
.Sh SEE ALSO
+.Xr gpioiic 4 ,
+.Xr gpioled 4 ,
.Xr iicbus 4 ,
.Xr gpioctl 8
.Sh HISTORY
diff --git a/share/man/man4/gpioiic.4 b/share/man/man4/gpioiic.4
new file mode 100644
index 000000000000..20750969852f
--- /dev/null
+++ b/share/man/man4/gpioiic.4
@@ -0,0 +1,171 @@
+.\" Copyright (c) 2013, Luiz Otavio O Souza <loos@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 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd February 13, 2014
+.Dt GPIOIIC 4
+.Os
+.Sh NAME
+.Nm gpioiic
+.Nd GPIO I2C bit-banging device driver
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device gpio"
+.Cd "device gpioiic"
+.Cd "device iic"
+.Cd "device iicbb"
+.Cd "device iicbus"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides an IIC bit-banging interface using two GPIO pins for the
+SCL and SDA on the
+.Nm gpiobus .
+.Nm
+implements an open collector kind of output, as recommended by the standard,
+when driving the pins on the
+.Nm gpiobus ,
+i.e, they are never switched to the logical value of '1',
+or they are '0' or simply open (Hi-Z/tri-state).
+So the pullup resistors are required so
+.Nm
+can work.
+.Pp
+On a
+.Xr device.hints 5
+based system, like
+.Li MIPS ,
+these values are configurable for the
+.Nm :
+.Bl -tag -width ".Va hint.gpioiic.%d.atXXX"
+.It Va hint.gpioiic.%d.at
+The
+.Nm gpiobus
+you are attaching to.
+Normally just gpiobus0.
+.It Va hint.gpioiic.%d.pins
+This is a bitmask of the pins on the
+.Nm gpiobus
+that are to be used for SCLOCK and SDATA from the GPIO IIC
+bit-banging bus.
+To configure pin 0 and 7, use the bitmask of
+0b10000001 and convert it to a hexadecimal value of 0x0081.
+Please note that this mask should only ever have two bits set
+(any other bits - i.e., pins - will be ignored).
+.It Va hint.gpioiic.%d.scl
+Indicates which bit in the
+.Va hint.gpioiic.%d.pins
+should be used as the SCLOCK
+source.
+Optional, defaults to 0.
+.It Va hint.gpioiic.%d.sda
+Indicates which bit in the
+.Va hint.gpioiic.%d.pins
+should be used as the SDATA
+source.
+Optional, defaults to 1.
+.El
+.Pp
+On a
+.Xr FDT 4
+based system, like
+.Li ARM ,
+the DTS part for a
+.Nm gpioiic
+device usually looks like:
+.Bd -literal
+gpio: gpio {
+
+ gpio-controller;
+ ...
+
+ gpioiic0 {
+ compatible = "gpioiic";
+ /*
+ * Attach to GPIO pins 21 and 22. Set them
+ * initially as inputs.
+ */
+ gpios = <&gpio 21 1 0
+ &gpio 22 1 0>;
+ scl = <0>; /* GPIO pin 21 - optional */
+ sda = <1>; /* GPIO pin 22 - optional */
+
+ /* This is an example of a gpioiic child. */
+ gpioiic-child0 {
+ compatible = "lm75";
+ i2c-address = <0x4f>;
+ };
+ };
+};
+.Ed
+.Pp
+Where:
+.Bl -tag -width ".Va compatible"
+.It Va compatible
+Should always be set to "gpioiic".
+.It Va gpios
+The
+.Va gpios
+property indicates which GPIO pins should be used for SCLOCK and SDATA
+on the GPIO IIC bit-banging bus.
+For more details about the
+.Va gpios
+property, please consult
+.Pa /usr/src/sys/boot/fdt/dts/bindings-gpio.txt .
+.It Va scl
+The
+.Va scl
+option indicates which bit in the
+.Va gpios
+should be used as the SCLOCK source.
+Optional, defaults to 0.
+.It Va sda
+The
+.Va sda
+option indicates which bit in the
+.Va gpios
+should be used as the SDATA source.
+Optional, defaults to 1.
+.El
+.Sh SEE ALSO
+.Xr fdt 4 ,
+.Xr gpio 4 ,
+.Xr gpioled 4 ,
+.Xr iic 4 ,
+.Xr iicbb 4 ,
+.Xr iicbus 4
+.Sh HISTORY
+The
+.Nm
+manual page first appeared in
+.Fx 11.0 .
+.Sh AUTHORS
+This
+manual page was written by
+.An Luiz Otavio O Souza .
diff --git a/share/man/man4/gpioled.4 b/share/man/man4/gpioled.4
new file mode 100644
index 000000000000..4f428f6adb2e
--- /dev/null
+++ b/share/man/man4/gpioled.4
@@ -0,0 +1,156 @@
+.\" Copyright (c) 2013, Luiz Otavio O Souza <loos@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 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd February 13, 2014
+.Dt GPIOLED 4
+.Os
+.Sh NAME
+.Nm gpioled
+.Nd GPIO LED generic device driver
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device gpio"
+.Cd "device gpioled"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides glue to attach a
+.Xr led 4
+compatible device to a GPIO pin.
+Each LED in the system has a
+.Pa name
+which is used to export a device as
+.Pa /dev/led/<name> .
+The GPIO pin can then be controlled by writing to this device as described
+in
+.Xr led 4 .
+.Pp
+On a
+.Xr device.hints 5
+based system, like
+.Li MIPS ,
+these values are configurable for
+.Nm :
+.Bl -tag -width ".Va hint.gpioiic.%d.atXXX"
+.It Va hint.gpioled.%d.at
+The gpiobus you are attaching to.
+Normally assigned to gpiobus0.
+.It Va hint.gpioled.%d.name
+Arbitrary name of device in
+.Pa /dev/led/
+to create for
+.Xr led 4 .
+.It Va hint.gpioled.%d.pins
+Which pin on the GPIO interface to map to this instance.
+Please note that this mask should only ever have one bit set
+(any other bits - i.e., pins - will be ignored).
+.El
+.Pp
+On a
+.Xr FDT 4
+based system, like
+.Li ARM ,
+the DTS part for a
+.Nm gpioled
+device usually looks like:
+.Bd -literal
+gpio: gpio {
+
+ gpio-controller;
+ ...
+
+ led0 {
+ compatible = "gpioled";
+ gpios = <&gpio 16 2 0>; /* GPIO pin 16. */
+ name = "ok";
+ };
+
+ led1 {
+ compatible = "gpioled";
+ gpios = <&gpio 17 2 0>; /* GPIO pin 17. */
+ name = "user-led1";
+ };
+};
+.Ed
+.Pp
+Optionally, you can choose to combine all the LEDs under a single
+.Dq gpio-leds
+compatible node:
+.Bd -literal
+simplebus0 {
+
+ ...
+
+ leds {
+ compatible = "gpio-leds";
+
+ led0 {
+ gpios = <&gpio 16 2 0>;
+ name = "ok"
+ };
+
+ led1 {
+ gpios = <&gpio 17 2 0>;
+ name = "user-led1"
+ };
+ };
+};
+.Ed
+.Pp
+Both methods are equally supported and it is possible to have the LEDs
+defined with any sort of mix between the methods.
+The only restriction is that a GPIO pin cannot be mapped by two different
+(gpio)leds.
+.Pp
+For more details about the
+.Va gpios
+property, please consult
+.Pa /usr/src/sys/boot/fdt/dts/bindings-gpio.txt .
+.Pp
+The property
+.Va name
+is the arbitrary name of the device in
+.Pa /dev/led/
+to create for
+.Xr led 4 .
+.Sh SEE ALSO
+.Xr fdt 4 ,
+.Xr gpio 4 ,
+.Xr gpioiic 4 ,
+.Xr led 4
+.Sh HISTORY
+The
+.Nm
+manual page first appeared in
+.Fx 11.0 .
+.Sh AUTHORS
+This
+manual page was written by
+.An Luiz Otavio O Souza .
diff --git a/share/man/man4/gre.4 b/share/man/man4/gre.4
index da33fd30a509..a9267c97c40a 100644
--- a/share/man/man4/gre.4
+++ b/share/man/man4/gre.4
@@ -75,7 +75,7 @@ Encapsulated datagrams are
prepended an outer datagram and a GRE header.
The GRE header specifies
the type of the encapsulated datagram and thus allows for tunneling other
-protocols than IP like e.g.\& AppleTalk.
+protocols than IP.
GRE mode is also the default tunnel mode on Cisco routers.
This is also the default mode of operation of the
.Nm
@@ -169,8 +169,7 @@ Get the GRE key currently used for outgoing packets.
Note that the IP addresses of the tunnel endpoints may be the same as the
ones defined with
.Xr ifconfig 8
-for the interface (as if IP is encapsulated), but need not be, as e.g.\& when
-encapsulating AppleTalk.
+for the interface (as if IP is encapsulated), but need not be.
.Sh EXAMPLES
Configuration example:
.Bd -literal
@@ -294,7 +293,6 @@ The kernel must be set to forward datagrams by setting the
.Xr sysctl 8
variable to non-zero.
.Sh SEE ALSO
-.\" Xr atalk 4 ,
.Xr gif 4 ,
.Xr inet 4 ,
.Xr ip 4 ,
diff --git a/share/man/man4/hv_ata_pci_disengage.4 b/share/man/man4/hv_ata_pci_disengage.4
new file mode 100644
index 000000000000..b8699f7b0b1b
--- /dev/null
+++ b/share/man/man4/hv_ata_pci_disengage.4
@@ -0,0 +1,90 @@
+.\" $FreeBSD$
+.\"
+.\" Copyright (c) 2012 Microsoft Corp.
+.\" 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 September 10, 2013
+.Dt HYPER-V 4
+.Os
+.Sh NAME
+.Nm hv_ata_pci_disengage
+.Nd Hyper-V ATA PCI Disengage driver
+.Sh SYNOPSIS
+To compile this driver into the kernel, place the following lines in
+the system kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device hyperv"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver prevents the native
+.Fx
+ATA driver from
+loading in the presence of Hyper-V.
+.Fx
+guests running on Hyper-V can take advantage of the Hyper-V Storage
+Virtual Consumer
+.Pq Xr hv_storvsc 4
+for using their IDE devices.
+Since the ATA
+driver serves IDE devices as well, there is a chance that the ATA driver may
+interfere with the operations of
+.Xr hv_storvsc 4 .
+The
+.Nm
+driver avoids
+conflicts between the ATA driver and
+.Xr hv_storvsc 4
+by disabling the ATA driver
+when the
+.Fx
+guest is booting.
+.Pp
+A side effect of disabling the ATA driver is that CDROM may become
+inoperational on
+.Fx
+guest partitions.
+If CDROM access is a must then users may use
+"set hw.ata.disk_enable=1" at boot time to prevent the ATA driver from being
+disabled.
+.Sh SEE ALSO
+.Xr hv_vmbus 4 ,
+.Xr hv_utils 4 ,
+.Xr hv_netvsc 4 ,
+.Xr hv_storvsc 4
+.Sh HISTORY
+Support for
+.Nm
+first appeared in
+.Fx 10.0 .
+The driver was developed through a joint effort between Citrix Incorporated,
+Microsoft Corporation, and Network Appliance Incorporated.
+.Sh AUTHORS
+.An -nosplit
+.Fx
+support for
+.Nm
+was first added by
+.An Microsoft BSD Integration Services Team Aq bsdic@microsoft.com .
diff --git a/share/man/man4/hv_kvp.4 b/share/man/man4/hv_kvp.4
new file mode 100644
index 000000000000..afd3e321f167
--- /dev/null
+++ b/share/man/man4/hv_kvp.4
@@ -0,0 +1,96 @@
+.\" $FreeBSD$
+.\"
+.\" Copyright (c) 2012 Microsoft Corp.
+.\" 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 September 10, 2013
+.Dt HYPER-V 4
+.Os
+.Sh NAME
+.Nm hv_kvp
+.Nd Hyper-V Key Value Pair Driver
+.Sh SYNOPSIS
+To compile this driver into the kernel, place the following lines in
+the system kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device hyperv"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides the ability to store, retrieve, modify and delete
+key value pairs for
+.Fx
+guest partitions running on Hyper-V.
+Hyper-V allows administrators to store custom metadata in the form
+of key value pairs inside the
+.Fx
+guest partition.
+Administrators can use Windows Powershell scripts to add, read,
+modify and delete such key value pairs.
+.Pp
+The driver is bare bones and merely forwards requests to its counterpart
+user mode daemon,
+.Xr hv_kvp_daemon 8 .
+The daemon maintains pools of key value
+pairs and does the actual metadata management.
+.Pp
+The same driver and daemon combination are also used to set and get
+IP addresses from a
+.Fx
+guest.
+.Pp
+The set functionality is particularly
+useful when the
+.Fx
+guest is assigned a static IP address and is failed over from one
+Hyper-V host to another.
+After failover, Hyper-V uses the set IP functionality to automatically
+update the
+.Fx
+guest's IP address to its original static value.
+.Pp
+On the other hand, the get IP functionality is used to update the guest IP
+address in the Hyper-V management console window.
+.Sh SEE ALSO
+.Xr hv_vmbus 4 ,
+.Xr hv_utils 4 ,
+.Xr hv_netvsc 4 ,
+.Xr hv_storvsc 4 ,
+.Xr hv_ata_pci_disengage 4 ,
+.Xr hv_kvp_daemon 8
+.Sh HISTORY
+Support for
+.Nm
+first appeared in
+.Fx 10.0 .
+The driver was developed through a joint effort between Citrix
+Incorporated, Microsoft Corporation and Network Appliance Incorporated.
+.Sh AUTHORS
+.An -nosplit
+.Fx
+support for
+.Nm
+was first added by
+.An Microsoft BSD Integration Services Team Aq bsdic@microsoft.com .
diff --git a/share/man/man4/hv_netvsc.4 b/share/man/man4/hv_netvsc.4
new file mode 100644
index 000000000000..ed04e9d4506b
--- /dev/null
+++ b/share/man/man4/hv_netvsc.4
@@ -0,0 +1,83 @@
+.\" $FreeBSD$
+.\"
+.\" Copyright (c) 2012 Microsoft Corp.
+.\" 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 September 10, 2013
+.Dt HYPER-V 4
+.Os
+.Sh NAME
+.Nm hv_netvsc
+.Nd Hyper-V Network Virtual Service Consumer
+.Sh SYNOPSIS
+To compile this driver into the kernel, place the following lines in
+the system kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device hyperv"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver implements the virtual network device for
+.Fx
+guest
+partitions running on Hyper-V.
+.Fx
+guest partitions running on Hyper-V do not have direct access to
+network devices attached to the Hyper-V server.
+Although a
+.Fx
+guest can access network devices using Hyper-V's
+full emulation mode, the performance in this mode tends to be unsatisfactory.
+.Pp
+To counter the above issues, the
+.Nm
+driver implements a network
+Virtual
+Service Consumer (VSC) that relays network requests from the guest partition
+to the network Virtual Service Provider (VSP) hosted in the root partition
+using the high performance data exchange infrastructure provided by
+.Xr hv_vmbus 4
+driver.
+The VSP in the root partition then forwards the network related requests to
+the physical network card.
+.Sh SEE ALSO
+.Xr hv_vmbus 4 ,
+.Xr hv_utils 4 ,
+.Xr hv_storvsc 4 ,
+.Xr hv_ata_pci_disengage 4
+.Sh HISTORY
+Support for
+.Nm
+first appeared in
+.Fx 10.0 .
+The driver was developed through a joint effort between Citrix Incorporated,
+Microsoft Corporation, and Network Appliance Incorporated.
+.Sh AUTHORS
+.An -nosplit
+.Fx
+support for
+.Nm
+was first added by
+.An Microsoft BSD Integration Services Team Aq bsdic@microsoft.com .
diff --git a/share/man/man4/hv_storvsc.4 b/share/man/man4/hv_storvsc.4
new file mode 100644
index 000000000000..57b6127924ed
--- /dev/null
+++ b/share/man/man4/hv_storvsc.4
@@ -0,0 +1,89 @@
+.\" $FreeBSD$
+.\"
+.\" Copyright (c) 2012 Microsoft Corp.
+.\" 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 September 10, 2013
+.Dt HYPER-V 4
+.Os
+.Sh NAME
+.Nm hv_storvsc
+.Nd Hyper-V Storage Virtual Service Consumer
+.Sh SYNOPSIS
+To compile this driver into the kernel, place the following lines in
+the system kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device hyperv"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver implements the virtual store device for
+.Fx
+guest
+partitions running on Hyper-V.
+.Fx
+guest partitions running on Hyper-V do not have direct access to
+storage devices attached to the Hyper-V server.
+Although a
+.Fx
+guest can access storage devices using Hyper-V's
+full emulation mode, the performance in this mode tends to be unsatisfactory.
+.Pp
+To counter the above issues, the
+.Nm
+driver implements a storage
+Virtual
+Service Consumer (VSC) that relays storage requests from the guest partition
+to the storage Virtual Service Provider (VSP) hosted in the root partition
+using the high performance data exchange infrastructure provided by
+.Xr hv_vmbus 4
+driver.
+The VSP in the root partition then forwards the storage related requests to
+the physical storage device.
+.Pp
+This driver functions by presenting a SCSI HBA interface to the Comman Access
+Method (CAM) layer.
+CAM control blocks (CCBs) are
+converted into VSCSI protocol messages which are delivered to the root
+partition VSP over the Hyper-V VMBus.
+.Sh SEE ALSO
+.Xr hv_vmbus 4 ,
+.Xr hv_utils 4 ,
+.Xr hv_netvsc 4 ,
+.Xr hv_ata_pci_disengage 4
+.Sh HISTORY
+Support for
+.Nm
+first appeared in
+.Fx 10.0 .
+The driver was developed through a joint effort between Citrix Incorporated,
+Microsoft Corporation, and Network Appliance Incorporated.
+.Sh AUTHORS
+.An -nosplit
+.Fx
+support for
+.Nm
+was first added by
+.An Microsoft BSD Integration Services Team Aq bsdic@microsoft.com .
diff --git a/share/man/man4/hv_utils.4 b/share/man/man4/hv_utils.4
new file mode 100644
index 000000000000..844e59933535
--- /dev/null
+++ b/share/man/man4/hv_utils.4
@@ -0,0 +1,85 @@
+.\" $FreeBSD$
+.\"
+.\" Copyright (c) 2012 Microsoft Corp.
+.\" 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 September 10, 2013
+.Dt HYPER-V 4
+.Os
+.Sh NAME
+.Nm hv_utils
+.Nd Hyper-V Utilities Driver
+.Sh SYNOPSIS
+To compile this driver into the kernel, place the following lines in
+the system kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device hyperv"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides time keeping, shutdown and heartbeat
+functionality for
+.Fx
+guest partitions running on Hyper-V.
+Hyper-V is a hypervisor-based virtualization technology from Microsoft.
+The
+.Nm
+driver is one of the core drivers required to be present in guest
+partitions running on Hyper-V.
+This driver provides the following
+functionalities to guest partitions:
+.Pp
+(a) Time Keeping: The clock inside the guest partition will remain accurate by
+synchronizing to the clock on the virtualization server via Timesync service,
+and with the help of the pluggable time source device.
+.Pp
+(b) Integrated shutdown: Guest partitions running
+.Fx
+can be shut down from
+Hyper-V Manager console by using the
+.Qq Shut down
+command.
+.Pp
+(c) Heartbeat: This feature allows the virtualization server to detect whether
+the guest partition is running and responsive.
+.Sh SEE ALSO
+.Xr hv_vmbus 4 ,
+.Xr hv_netvsc 4 ,
+.Xr hv_storvsc 4 ,
+.Xr hv_ata_pci_disengage 4
+.Sh HISTORY
+Support for
+.Nm
+first appeared in
+.Fx 10.0 .
+The driver was developed through a joint effort between Citrix Incorporated,
+Microsoft Corporation, and Network Appliance Incorporated.
+.Sh AUTHORS
+.An -nosplit
+.Fx
+support for
+.Nm
+was first added by
+.An Microsoft BSD Integration Services Team Aq bsdic@microsoft.com .
diff --git a/share/man/man4/hv_vmbus.4 b/share/man/man4/hv_vmbus.4
new file mode 100644
index 000000000000..873cb28e2ddc
--- /dev/null
+++ b/share/man/man4/hv_vmbus.4
@@ -0,0 +1,93 @@
+.\" $FreeBSD$
+.\"
+.\" Copyright (c) 2012 Microsoft Corp.
+.\" 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 September 10, 2013
+.Dt HYPER-V 4
+.Os
+.Sh NAME
+.Nm hv_vmbus
+.Nd Hyper-V Virtual Machine Bus (VMBus) Driver
+.Sh SYNOPSIS
+To compile this driver into the kernel, place the following lines in
+the system kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device hyperv"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+provides a high performance communication interface between
+guest and root partitions in Hyper-V.
+Hyper-V is a hypervisor-based virtualization technology from Microsoft.
+Hyper-V supports isolation in terms of a partition.
+A partition is a
+logical unit of isolation, supported by the hypervisor, in which
+operating systems execute.
+.Pp
+The Microsoft hypervisor must have at least one parent, or root,
+partition, running Windows Server operating system.
+The virtualization stack runs in the parent partition and has
+direct access to the hardware devices.
+The root partition then creates the child partitions which host
+the guest operating systems.
+.Pp
+Child partitions do not have direct access to other hardware resources
+and are presented
+a virtual view of the resources, as virtual devices (VDevs).
+Requests to the virtual devices are
+redirected either via the VMBus or the hypervisor to the devices in
+the parent partition, which handles the requests.
+.Pp
+The VMBus is a logical inter-partition communication channel.
+The parent partition hosts Virtualization Service Providers (VSPs)
+which communicate over the VMBus to handle device access requests from
+child partitions.
+Child partitions host Virtualization Service
+Consumers (VSCs) which redirect device requests to VSPs in the parent
+partition via the VMBus.
+The Hyper-V VMBus driver defines and implements
+the interface that facilitate high performance bi-directional communication
+between the VSCs and VSPs.
+All VSCs utilize the VMBus driver.
+.Sh SEE ALSO
+.Xr hv_utils 4 ,
+.Xr hv_netvsc 4 ,
+.Xr hv_storvsc 4 ,
+.Xr hv_ata_pci_disengage 4
+.Sh HISTORY
+Support for
+.Nm
+first appeared in
+.Fx 10.0 .
+The driver was developed through a joint effort between Citrix Incorporated,
+Microsoft Corporation, and Network Appliance Incorporated.
+.Sh AUTHORS
+.An -nosplit
+.Fx
+support for
+.Nm
+was first added by
+.An Microsoft BSD Integration Services Team Aq bsdic@microsoft.com .
diff --git a/share/man/man4/icmp.4 b/share/man/man4/icmp.4
index a6fbbf292b88..6b7f78eae926 100644
--- a/share/man/man4/icmp.4
+++ b/share/man/man4/icmp.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/inet.4 b/share/man/man4/inet.4
index 09cb0bccaae4..238cdbdb4ad3 100644
--- a/share/man/man4/inet.4
+++ b/share/man/man4/inet.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/ip.4 b/share/man/man4/ip.4
index 7d16fc0e5994..b95a350b34e2 100644
--- a/share/man/man4/ip.4
+++ b/share/man/man4/ip.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/isf.4 b/share/man/man4/isf.4
deleted file mode 100644
index f8637203b47c..000000000000
--- a/share/man/man4/isf.4
+++ /dev/null
@@ -1,135 +0,0 @@
-.\"-
-.\" Copyright (c) 2012 SRI International
-.\" All rights reserved.
-.\"
-.\" This software was developed by SRI International and the University of
-.\" Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237)
-.\" ("CTSRD"), as part of the DARPA CRASH research programme.
-.\"
-.\" 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd August 3, 2012
-.Dt ISF 4
-.Os
-.Sh NAME
-.Nm isf
-.Nd driver for Intel StrataFlash NOR flash devices
-.Sh SYNOPSIS
-.Cd "device isf"
-.Pp
-In
-.Pa /boot/device.hints :
-.Cd hint.isf.0.at="nexus0"
-.Cd hint.isf.0.maddr=0x74000000
-.Cd hint.isf.0.msize=0x2000000
-.Sh DESCRIPTION
-The
-.Nm
-device driver provides support for Intel StrataFlash NOR flash devices.
-Devices are presented as
-.Xr disk 9
-devices and read access is supported along with limited write support.
-Erasing blocks is supported the
-.Dv ISF_ERASE
-ioctl.
-.Pp
-The erase block size of
-.Nm
-devices is 128K.
-NOR flash blocks contains all 1's after an erase cycle.
-Writes to
-.Nm
-devices are allowed to succeed if and only if they all bits in the write
-block (512-bytes) remain the same or transition from 1 to 0.
-.Sh HARDWARE
-The current version of the
-.Nm
-driver is known to support the 64MB part found on the Altera DE4 board.
-It attempts to support other StrataFlash parts documented in the
-datasheet, but those are untested.
-.Sh IOCTLS
-The
-.Nm device
-supports the
-.Xr ioctl 2
-command codes:
-.Bl -tag -width ISF_ERASE
-.It Dv ISF_ERASE
-Erase one or more blocks.
-.Dv ISF_ERASE is defined as follows:
-.Bd -literal
- struct isf_range {
- off_t ir_off;
- size_t ir_size;
- };
-
- #define ISF_ERASE _IOW('I', 1, struct isf_range)
-.Ed
-.Pp
-The
-.Li ir_off
-member marks the beginning of the area to be erased and must fall on at 128K
-boundary.
-The
-.Li ir_size
-member indicates the size of the area to be erased and must a multiple
-of 128K.
-.El
-.Sh SEE ALSO
-.Xr isfctl 4 ,
-.Xr disk 9
-.Rs
-.%T Intel StrataFlash Embedded Memory (P30)
-.%D November 1, 2005
-.%I Intel Corporation
-.%U http://www.xilinx.com/products/boards/ml505/datasheets/30666604.pdf
-.Re
-.Sh HISTORY
-The
-.Nm
-device driver first appeared in
-.Fx 10.0 .
-.Sh AUTHORS
-The
-.Nm
-device driver and this manual page were
-developed by SRI International and the University of Cambridge Computer
-Laboratory under DARPA/AFRL contract
-.Pq FA8750-10-C-0237
-.Pq Do CTSRD Dc ,
-as part of the DARPA CRASH research programme.
-.Sh BUGS
-While an erase is in progress, all read and write operations return
-.Er EBUSY .
-In principle, reads could be allowed outside the programming region the
-blocked currently being erased resides in and writes could be allowed by
-suspending the erase, but neither of these is currently implemented.
-.Pp
-Depending on the flash part ether the top or bottom 128K of the flash
-address space is divided into 4 32K erase blocks.
-The
-.Nm
-driver hides this from the user requiring that all erase requests be
-multiples of 128K in size and erasing the individual blocks as needed at
-the top or bottom.
diff --git a/share/man/man4/iwn.4 b/share/man/man4/iwn.4
index 006f7f69f3d0..611482040e7d 100644
--- a/share/man/man4/iwn.4
+++ b/share/man/man4/iwn.4
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd March 19, 2013
+.Dd February 9, 2014
.Dt IWN 4
.Os
.Sh NAME
@@ -45,8 +45,10 @@ kernel configuration file:
You also need to select a firmware for your device.
Choose one from:
.Bd -ragged -offset indent
-.Cd "device iwn4965fw"
.Cd "device iwn1000fw"
+.Cd "device iwn2000fw"
+.Cd "device iwn2030fw"
+.Cd "device iwn4965fw"
.Cd "device iwn5000fw"
.Cd "device iwn5150fw"
.Cd "device iwn6000fw"
@@ -67,8 +69,10 @@ module at boot time, place the following lines in
.Xr loader.conf 5 :
.Bd -literal -offset indent
if_iwn_load="YES"
-iwn4965fw_load="YES"
iwn1000fw_load="YES"
+iwn2000fw_load="YES"
+iwn2030fw_load="YES"
+iwn4965fw_load="YES"
iwn5000fw_load="YES"
iwn5150fw_load="YES"
iwn6000fw_load="YES"
@@ -87,9 +91,18 @@ driver provides support for:
.It Intel Centrino Advanced-N 6230
.It Intel Centrino Advanced-N + WiMAX 6250
.It Intel Centrino Ultimate-N 6300
+.It Intel Centrino Wireless-N 100
.It Intel Centrino Wireless-N 130
.It Intel Centrino Wireless-N 1000
.It Intel Centrino Wireless-N 1030
+.It Intel Centrino Wireless-N 2200
+.It Intel Centrino Wireless-N 2230
+.It Intel Centrino Wireless-N 4965
+.It Intel Centrino Wireless-N 5100
+.It Intel Centrino Wireless-N 6150
+.It Intel Centrino Wireless-N 6200
+.It Intel Centrino Wireless-N 6250
+.It Intel Centrino Wireless-N 6250
.It Intel Centrino Wireless-N + WiMAX 6150
.It Intel Ultimate N WiFi Link 5300
.It Intel Wireless WiFi Link 4965
diff --git a/share/man/man4/iwnfw.4 b/share/man/man4/iwnfw.4
index 681d7284dea2..7af2bb25dd6b 100644
--- a/share/man/man4/iwnfw.4
+++ b/share/man/man4/iwnfw.4
@@ -22,7 +22,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd April 20, 2011
+.Dd February 9, 2014
.Dt IWNFW 4
.Os
.Sh NAME
@@ -40,8 +40,10 @@ This will include three firmware images inside the kernel.
If you want to pick only the firmware image for your network adapter choose one
of the following:
.Bd -ragged -offset indent
-.Cd "device iwn4965fw"
.Cd "device iwn1000fw"
+.Cd "device iwn2000fw"
+.Cd "device iwn2030fw"
+.Cd "device iwn4965fw"
.Cd "device iwn5000fw"
.Cd "device iwn5150fw"
.Cd "device iwn6000fw"
@@ -54,8 +56,10 @@ Alternatively, to load the driver as a
module at boot time, place the following line in
.Xr loader.conf 5 :
.Bd -literal -offset indent
-iwn4965fw_load="YES"
iwn1000fw_load="YES"
+iwn2000fw_load="YES"
+iwn2030fw_load="YES"
+iwn4965fw_load="YES"
iwn5000fw_load="YES"
iwn5150fw_load="YES"
iwn6000fw_load="YES"
@@ -65,7 +69,7 @@ iwn6050fw_load="YES"
.Ed
.Sh DESCRIPTION
This module provides access to firmware sets for the
-Intel Wireless WiFi Link 4965, 1000, 5000 and 6000 series of
+Intel Wireless WiFi Link 1000, 2000, 2030, 4965, 5000 and 6000 series of
IEEE 802.11n adapters.
It may be
statically linked into the kernel, or loaded as a module.
diff --git a/share/man/man4/kld.4 b/share/man/man4/kld.4
index c36f6ab2493a..de991c40ffd7 100644
--- a/share/man/man4/kld.4
+++ b/share/man/man4/kld.4
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd November 8, 1998
+.Dd January 13, 2014
.Dt KLD 4
.Os
.Sh NAME
@@ -166,8 +166,8 @@ binary, then
fails to execute the entry point.
.Pp
.Xr kldload 8
-returns the cryptic message
-.Sq Li "ENOEXEC (Exec format error)"
+points the user to read
+.Xr dmesg 8
for any error encountered while loading a module.
.Pp
When system internal interfaces change, old modules often cannot
diff --git a/share/man/man4/ksyms.4 b/share/man/man4/ksyms.4
index b8e4f2684ad4..5c1dae002e2c 100644
--- a/share/man/man4/ksyms.4
+++ b/share/man/man4/ksyms.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/lagg.4 b/share/man/man4/lagg.4
index aec7b7eda464..bb2cfc6c0161 100644
--- a/share/man/man4/lagg.4
+++ b/share/man/man4/lagg.4
@@ -175,7 +175,6 @@ device will be used:
(Note the mac address of the wireless device is forced to match the wired
device as a workaround.)
.Sh SEE ALSO
-.Xr ng_fec 4 ,
.Xr ng_one2many 4 ,
.Xr sysctl 8 ,
.Xr ifconfig 8
diff --git a/share/man/man4/lp.4 b/share/man/man4/lp.4
index f5b628e6ff0d..221b9c97ca58 100644
--- a/share/man/man4/lp.4
+++ b/share/man/man4/lp.4
@@ -11,11 +11,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/man4.arm/Makefile b/share/man/man4/man4.arm/Makefile
index 3bf4db0ed914..73e7bf72fc54 100644
--- a/share/man/man4/man4.arm/Makefile
+++ b/share/man/man4/man4.arm/Makefile
@@ -1,6 +1,9 @@
# $FreeBSD$
-MAN= mge.4 npe.4 devcfg.4
+MAN= devcfg.4 \
+ mge.4 \
+ npe.4 \
+ ti_adc.4
MLINKS= mge.4 if_mge.4
MLINKS+=npe.4 if_npe.4
diff --git a/share/man/man4/man4.arm/ti_adc.4 b/share/man/man4/man4.arm/ti_adc.4
new file mode 100644
index 000000000000..b10760a4c06b
--- /dev/null
+++ b/share/man/man4/man4.arm/ti_adc.4
@@ -0,0 +1,119 @@
+.\"
+.\" Copyright (c) 2014 Luiz Otavio O Souza <loos@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 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$
+.\"
+.Dd March 21, 2014
+.Dt TI_ADC 4
+.Os
+.Sh NAME
+.Nm ti_adc
+.Nd TI AM3XXX analog to digital converter driver
+.Sh SYNOPSIS
+.Cd "device ti_adc"
+.Sh DESCRIPTION
+The
+.Nm
+driver provides access to the AIN (analog inputs) on am3xxx SoCs.
+.Pp
+It provides raw readings of the converted values for each analog inputs.
+.Pp
+The access to
+.Nm
+data is made via the
+.Xr sysctl 8
+interface:
+.Bd -literal
+dev.ti_adc.0.%desc: TI ADC controller
+dev.ti_adc.0.%driver: ti_adc
+dev.ti_adc.0.%pnpinfo: name=adc@44E0D000 compat=ti,adc
+dev.ti_adc.0.%parent: simplebus0
+dev.ti_adc.0.clockdiv: 2400
+dev.ti_adc.0.ain.0.enable: 0
+dev.ti_adc.0.ain.0.open_delay: 0
+dev.ti_adc.0.ain.0.samples_avg: 0
+dev.ti_adc.0.ain.0.input: 0
+dev.ti_adc.0.ain.1.enable: 0
+dev.ti_adc.0.ain.1.open_delay: 0
+dev.ti_adc.0.ain.1.samples_avg: 0
+dev.ti_adc.0.ain.1.input: 0
+dev.ti_adc.0.ain.2.enable: 0
+dev.ti_adc.0.ain.2.open_delay: 0
+dev.ti_adc.0.ain.2.samples_avg: 0
+dev.ti_adc.0.ain.2.input: 0
+dev.ti_adc.0.ain.3.enable: 0
+dev.ti_adc.0.ain.3.open_delay: 0
+dev.ti_adc.0.ain.3.samples_avg: 0
+dev.ti_adc.0.ain.3.input: 0
+dev.ti_adc.0.ain.4.enable: 0
+dev.ti_adc.0.ain.4.open_delay: 0
+dev.ti_adc.0.ain.4.samples_avg: 0
+dev.ti_adc.0.ain.4.input: 0
+dev.ti_adc.0.ain.5.enable: 0
+dev.ti_adc.0.ain.5.open_delay: 0
+dev.ti_adc.0.ain.5.samples_avg: 0
+dev.ti_adc.0.ain.5.input: 0
+dev.ti_adc.0.ain.6.enable: 1
+dev.ti_adc.0.ain.6.open_delay: 0
+dev.ti_adc.0.ain.6.samples_avg: 4
+dev.ti_adc.0.ain.6.input: 2308
+.Ed
+.Pp
+Global settings:
+.Bl -tag -width ".Va dev.ti_adc.0.clockdiv"
+.It Va dev.ti_adc.0.clockdiv
+Sets the ADC clock prescaler.
+The minimum value is 10 and the maximum is 65535.
+The ADC clock is based on CLK_M_OSC (24Mhz) / clockdiv.
+This gives a maximum of ~2.4Mhz for the ADC clock and ~10Khz for the default
+setting (clockdiv = 2400).
+.El
+.Pp
+Settings per input:
+.Bl -tag -width ".Va dev.ti_adc.0.ain.%d.samples_avg"
+.It Va dev.ti_adc.0.ain.%d.enable
+Enable the conversion for the input.
+Each input should be individually enabled before it can be used.
+When all the inputs are disabled, the ADC is turned off.
+.It Va dev.ti_adc.0.ain.%d.open_delay
+Sets the number of ADC clock cycles to wait after applying the input
+configuration and before start the ADC conversion.
+.It Va dev.ti_adc.0.ain.%d.samples_avg
+Sets the number of samples average used on each input, it can be set to 0
+(no samples average), 2, 4, 8, or 16.
+.It Va dev.ti_adc.0.ain.%d.input
+Is the converted raw value of the voltage applied on the analog input.
+It is made of a 12 bit value (0 ~ 4095).
+.El
+.Sh SEE ALSO
+.Xr sysctl 8
+.Sh HISTORY
+The
+.Nm
+driver first appeared in
+.Fx 11.0 .
+.Sh AUTHORS
+.An -nosplit
+The driver and this manual page was written by
+.An Luiz Otavio O Souza Aq loos@FreeBSD.org
diff --git a/share/man/man4/mem.4 b/share/man/man4/mem.4
index 38c5110ae537..94da2aae24f6 100644
--- a/share/man/man4/mem.4
+++ b/share/man/man4/mem.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/mfi.4 b/share/man/man4/mfi.4
index 14dab802fb16..a6d6278f1e64 100644
--- a/share/man/man4/mfi.4
+++ b/share/man/man4/mfi.4
@@ -72,6 +72,17 @@ If the sysctl
.Va dev.mfi.%d.delete_busy_volumes
is set to 1,
then the driver will allow mounted volumes to be removed.
+.Pp
+A tunable is provided to adjust the
+.Nm
+driver's behaviour when attaching to a card. By default the driver will
+attach to all known cards with high probe priority. If the tunable
+.Va hw.mfi.mrsas_enable
+is set to 1,
+then the driver will reduce its probe priority to allow
+.Cd mrsas
+to attach to the card instead of
+.Nm .
.Sh HARDWARE
The
.Nm
diff --git a/share/man/man4/miibus.4 b/share/man/man4/miibus.4
index 2bcf9c5bfc89..2affa5600424 100644
--- a/share/man/man4/miibus.4
+++ b/share/man/man4/miibus.4
@@ -87,8 +87,6 @@ Marvell/SysKonnect Yukon II Gigabit Ethernet
NVIDIA nForce MCP Networking Adapter
.It Xr nge 4
National Semiconductor DP83820/DP83821 Gigabit Ethernet
-.It Xr nve 4
-NVIDIA nForce MCP Networking Adapter
.It Xr pcn 4
AMD Am79C97x PCI 10/100
.It Xr re 4
@@ -159,7 +157,6 @@ but as a result are not well behaved newbus device drivers.
.Xr netintro 4 ,
.Xr nfe 4 ,
.Xr nge 4 ,
-.Xr nve 4 ,
.Xr pcn 4 ,
.Xr re 4 ,
.Xr rgephy 4 ,
diff --git a/share/man/man4/mtio.4 b/share/man/man4/mtio.4
index e8056e6f65a4..b535c9222685 100644
--- a/share/man/man4/mtio.4
+++ b/share/man/man4/mtio.4
@@ -12,11 +12,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/multicast.4 b/share/man/man4/multicast.4
index 2f0954ee9a3e..81d6c778d455 100644
--- a/share/man/man4/multicast.4
+++ b/share/man/man4/multicast.4
@@ -326,7 +326,7 @@ mc.mf6cc_parent = iif_index;
for (i = 0; i < maxvifs; i++)
if (oifs_ttl[i] > 0)
IF_SET(i, &mc.mf6cc_ifset);
-setsockopt(mrouter_s4, IPPROTO_IPV6, MRT6_ADD_MFC,
+setsockopt(mrouter_s6, IPPROTO_IPV6, MRT6_ADD_MFC,
(void *)&mc, sizeof(mc));
.Ed
.Pp
@@ -365,7 +365,7 @@ struct mf6cctl mc;
memset(&mc, 0, sizeof(mc));
memcpy(&mc.mf6cc_origin, &source_addr, sizeof(mc.mf6cc_origin));
memcpy(&mc.mf6cc_mcastgrp, &group_addr, sizeof(mf6cc_mcastgrp));
-setsockopt(mrouter_s4, IPPROTO_IPV6, MRT6_DEL_MFC,
+setsockopt(mrouter_s6, IPPROTO_IPV6, MRT6_DEL_MFC,
(void *)&mc, sizeof(mc));
.Ed
.Pp
diff --git a/share/man/man4/natm.4 b/share/man/man4/natm.4
index a553f6ebd9e5..ce9fe606d636 100644
--- a/share/man/man4/natm.4
+++ b/share/man/man4/natm.4
@@ -14,6 +14,7 @@ ATM software comes with a
which provides socket level access to AAL0 and AAL5 virtual circuits.
To enable this protocol layer, add
.Dl options NATM
+.Dl device atm
to your kernel configuration file and re-make the kernel (do not forget
to do
.Dq make clean ) .
diff --git a/share/man/man4/netfpga10g_nf10bmac.4 b/share/man/man4/netfpga10g_nf10bmac.4
new file mode 100644
index 000000000000..a2ee787de527
--- /dev/null
+++ b/share/man/man4/netfpga10g_nf10bmac.4
@@ -0,0 +1,70 @@
+.\"-
+.\" Copyright (c) 2014 Bjoern A. Zeeb
+.\" All rights reserved.
+.\"
+.\" This software was developed by SRI International and the University of
+.\" Cambridge Computer Laboratory under DARPA/AFRL contract FA8750-11-C-0249
+.\" ("MRC2"), as part of the DARPA MRC research programme.
+.\"
+.\" 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd April 17, 2014
+.Dt NETFPGA10G_NF10BMAC 4
+.Os
+.Sh NAME
+.Nm netfpga10g_nf10bmac
+.Nd driver for the NetFPGA-10G Embedded CPU Ethernet Core
+.Sh SYNOPSIS
+.Cd "device netfpga10g_nf10bmac"
+.Sh DESCRIPTION
+The
+.Nm
+device driver provides support for the NetFPGA-10G Embedded CPU Ethernet
+Core.
+.Sh HARDWARE
+The current version of the
+.Nm
+driver works with one PIO mode interface of the
+NetFPGA-10G Embedded CPU Ethernet Core version 1.00a.
+.Sh SEE ALSO
+.Xr netintro 4 ,
+.Xr ifconfig 8
+.Rs
+.%T NetFPGA-10G Wiki
+.%U https://github.com/NetFPGA/NetFPGA-public/wiki
+.Re
+.Sh HISTORY
+The
+.Nm
+device driver first appeared in
+.Fx 11.0 .
+.Sh AUTHORS
+This software and this manual page were
+developed by SRI International and the University of Cambridge Computer
+Laboratory under DARPA/AFRL contract
+.Pq FA8750-11-C-0249
+.Pq Do MRC2 Dc ,
+as part of the DARPA MRC research programme.
+The device driver was written by
+.An Bjoern A. Zeeb .
diff --git a/share/man/man4/netgraph.4 b/share/man/man4/netgraph.4
index 6783973eac57..90fc77e4f528 100644
--- a/share/man/man4/netgraph.4
+++ b/share/man/man4/netgraph.4
@@ -36,7 +36,7 @@
.\" $Whistle: netgraph.4,v 1.7 1999/01/28 23:54:52 julian Exp $
.\" $FreeBSD$
.\"
-.Dd May 25, 2008
+.Dd November 25, 2013
.Dt NETGRAPH 4
.Os
.Sh NAME
@@ -292,7 +292,7 @@ unless specifically declared to be a reader in their definition.
(See
.Dv NGM_READONLY
in
-.In ng_message.h . )
+.In netgraph/ng_message.h . )
.Pp
While this mode of operation
results in good performance, it has a few implications for node
@@ -840,26 +840,27 @@ and should be used as a starting point for new node writers.
.Ss Netgraph Message Structure
Control messages have the following structure:
.Bd -literal
-#define NG_CMDSTRSIZ 32 /* Max command string (including nul) */
+#define NG_CMDSTRSIZ 32 /* Max command string (including null) */
struct ng_mesg {
struct ng_msghdr {
u_char version; /* Must equal NG_VERSION */
- u_char spare; /* Pad to 2 bytes */
- u_short arglen; /* Length of cmd/resp data */
- u_long flags; /* Message status flags */
- u_long token; /* Reply should have the same token */
- u_long typecookie; /* Node type understanding this message */
- u_long cmd; /* Command identifier */
- u_char cmdstr[NG_CMDSTRSIZ]; /* Cmd string (for debug) */
+ u_char spare; /* Pad to 4 bytes */
+ uint16_t spare2;
+ uint32_t arglen; /* Length of cmd/resp data */
+ uint32_t cmd; /* Command identifier */
+ uint32_t flags; /* Message status flags */
+ uint32_t token; /* Reply should have the same token */
+ uint32_t typecookie; /* Node type understanding this message */
+ u_char cmdstr[NG_CMDSTRSIZ]; /* cmd string + \0 */
} header;
- char data[0]; /* Start of cmd/resp data */
+ char data[]; /* placeholder for actual data */
};
-#define NG_ABI_VERSION 5 /* Netgraph kernel ABI version */
-#define NG_VERSION 4 /* Netgraph message version */
-#define NGF_ORIG 0x0000 /* Command */
-#define NGF_RESP 0x0001 /* Response */
+#define NG_ABI_VERSION 12 /* Netgraph kernel ABI version */
+#define NG_VERSION 8 /* Netgraph message version */
+#define NGF_ORIG 0x00000000 /* The msg is the original request */
+#define NGF_RESP 0x00000001 /* The message is a response */
.Ed
.Pp
Control messages have the fixed header shown above, followed by a
@@ -1268,8 +1269,8 @@ It allows capturing raw Ethernet frames from the network, as well as
sending frames out of the interface.
.It INTERFACE
This node is also a system networking interface.
-It has hooks representing
-each protocol family (IP, AppleTalk, IPX, etc.) and appears in the output of
+It has hooks representing each protocol family (IP, IPv6)
+and appears in the output of
.Xr ifconfig 8 .
The interfaces are named
.Dq Li ng0 ,
@@ -1296,7 +1297,7 @@ Used in conjunction with
either
.Xr ppp 8
or the
-.Pa net/mpd
+.Pa net/mpd5
port.
.It BRIDGE
This node, together with the Ethernet nodes, allows a very flexible
@@ -1430,7 +1431,6 @@ common networking problems, solved using
.Xr ng_eiface 4 ,
.Xr ng_etf 4 ,
.Xr ng_ether 4 ,
-.Xr ng_fec 4 ,
.Xr ng_frame_relay 4 ,
.Xr ng_gif 4 ,
.Xr ng_gif_demux 4 ,
diff --git a/share/man/man4/netintro.4 b/share/man/man4/netintro.4
index 9f05e48fa57e..574684d1cf18 100644
--- a/share/man/man4/netintro.4
+++ b/share/man/man4/netintro.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/netmap.4 b/share/man/man4/netmap.4
index 3b72417e2f33..1b2dc7a23da7 100644
--- a/share/man/man4/netmap.4
+++ b/share/man/man4/netmap.4
@@ -1,4 +1,4 @@
-.\" Copyright (c) 2011 Matteo Landi, Luigi Rizzo, Universita` di Pisa
+.\" Copyright (c) 2011-2014 Matteo Landi, Luigi Rizzo, Universita` di Pisa
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -21,230 +21,636 @@
.\" 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.
-.\"
+.\"
.\" This document is derived in part from the enet man page (enet.4)
.\" distributed with 4.3BSD Unix.
.\"
.\" $FreeBSD$
-.\" $Id: netmap.4 11563 2012-08-02 08:59:12Z luigi $: stable/8/share/man/man4/bpf.4 181694 2008-08-13 17:45:06Z ed $
.\"
-.Dd September 23, 2013
+.Dd February 13, 2014
.Dt NETMAP 4
.Os
.Sh NAME
.Nm netmap
.Nd a framework for fast packet I/O
+.br
+.Nm VALE
+.Nd a fast VirtuAl Local Ethernet using the netmap API
+.br
+.Nm netmap pipes
+.Nd a shared memory packet transport channel
.Sh SYNOPSIS
.Cd device netmap
.Sh DESCRIPTION
.Nm
-is a framework for fast and safe access to network devices
-(reaching 14.88 Mpps at less than 1 GHz).
-.Nm
-uses memory mapped buffers and metadata
-(buffer indexes and lengths) to communicate with the kernel,
-which is in charge of validating information through
-.Pa ioctl()
+is a framework for extremely fast and efficient packet I/O
+for both userspace and kernel clients.
+It runs on FreeBSD and Linux,
+and includes
+.Nm VALE ,
+a very fast and modular in-kernel software switch/dataplane,
and
-.Pa select()/poll().
+.Nm netmap pipes ,
+a shared memory packet transport channel.
+All these are accessed interchangeably with the same API.
+.Pp
+.Nm , VALE
+and
+.Nm netmap pipes
+are at least one order of magnitude faster than
+standard OS mechanisms
+(sockets, bpf, tun/tap interfaces, native switches, pipes),
+reaching 14.88 million packets per second (Mpps)
+with much less than one core on a 10 Gbit NIC,
+about 20 Mpps per core for VALE ports,
+and over 100 Mpps for netmap pipes.
+.Pp
+Userspace clients can dynamically switch NICs into
.Nm
-can exploit the parallelism in multiqueue devices and
-multicore systems.
+mode and send and receive raw packets through
+memory mapped buffers.
+Similarly,
+.Nm VALE
+switch instances and ports, and
+.Nm netmap pipes
+can be created dynamically,
+providing high speed packet I/O between processes,
+virtual machines, NICs and the host stack.
.Pp
.Nm
+suports both non-blocking I/O through
+.Xr ioctls() ,
+synchronization and blocking I/O through a file descriptor
+and standard OS mechanisms such as
+.Xr select 2 ,
+.Xr poll 2 ,
+.Xr epoll 2 ,
+.Xr kqueue 2 .
+.Nm VALE
+and
+.Nm netmap pipes
+are implemented by a single kernel module, which also emulates the
+.Nm
+API over standard drivers for devices without native
+.Nm
+support.
+For best performance,
+.Nm
requires explicit support in device drivers.
-For a list of supported devices, see the end of this manual page.
-.Sh OPERATION
+.Pp
+In the rest of this (long) manual page we document
+various aspects of the
+.Nm
+and
+.Nm VALE
+architecture, features and usage.
+.Pp
+.Sh ARCHITECTURE
+.Nm
+supports raw packet I/O through a
+.Em port ,
+which can be connected to a physical interface
+.Em ( NIC ) ,
+to the host stack,
+or to a
+.Nm VALE
+switch).
+Ports use preallocated circular queues of buffers
+.Em ( rings )
+residing in an mmapped region.
+There is one ring for each transmit/receive queue of a
+NIC or virtual port.
+An additional ring pair connects to the host stack.
+.Pp
+After binding a file descriptor to a port, a
+.Nm
+client can send or receive packets in batches through
+the rings, and possibly implement zero-copy forwarding
+between ports.
+.Pp
+All NICs operating in
+.Nm
+mode use the same memory region,
+accessible to all processes who own
+.Nm /dev/netmap
+file descriptors bound to NICs.
+Independent
+.Nm VALE
+and
+.Nm netmap pipe
+ports
+by default use separate memory regions,
+but can be independently configured to share memory.
+.Pp
+.Sh ENTERING AND EXITING NETMAP MODE
+The following section describes the system calls to create
+and control
+.Nm netmap
+ports (including
+.Nm VALE
+and
+.Nm netmap pipe
+ports).
+Simpler, higher level functions are described in section
+.Xr LIBRARIES .
+.Pp
+Ports and rings are created and controlled through a file descriptor,
+created by opening a special device
+.Dl fd = open("/dev/netmap");
+and then bound to a specific port with an
+.Dl ioctl(fd, NIOCREGIF, (struct nmreq *)arg);
+.Pp
.Nm
-clients must first open the
-.Pa open("/dev/netmap") ,
-and then issue an
-.Pa ioctl(...,NIOCREGIF,...)
-to bind the file descriptor to a network device.
+has multiple modes of operation controlled by the
+.Vt struct nmreq
+argument.
+.Va arg.nr_name
+specifies the port name, as follows:
+.Bl -tag -width XXXX
+.It Dv OS network interface name (e.g. 'em0', 'eth1', ... )
+the data path of the NIC is disconnected from the host stack,
+and the file descriptor is bound to the NIC (one or all queues),
+or to the host stack;
+.It Dv valeXXX:YYY (arbitrary XXX and YYY)
+the file descriptor is bound to port YYY of a VALE switch called XXX,
+both dynamically created if necessary.
+The string cannot exceed IFNAMSIZ characters, and YYY cannot
+be the name of any existing OS network interface.
+.El
.Pp
-When a device is put in
+On return,
+.Va arg
+indicates the size of the shared memory region,
+and the number, size and location of all the
.Nm
-mode, its data path is disconnected from the host stack.
-The processes owning the file descriptor
-can exchange packets with the device, or with the host stack,
-through an mmapped memory region that contains pre-allocated
-buffers and metadata.
+data structures, which can be accessed by mmapping the memory
+.Dl char *mem = mmap(0, arg.nr_memsize, fd);
.Pp
Non blocking I/O is done with special
-.Pa ioctl()'s ,
-whereas the file descriptor can be passed to
-.Pa select()/poll()
-to be notified about incoming packet or available transmit buffers.
-.Ss Data structures
-All data structures for all devices in
-.Nm
-mode are in a memory
-region shared by the kernel and all processes
-who open
-.Pa /dev/netmap
-(NOTE: visibility may be restricted in future implementations).
-All references between the shared data structure
-are relative (offsets or indexes). Some macros help converting
-them into actual pointers.
+.Xr ioctl 2
+.Xr select 2
+and
+.Xr poll 2
+on the file descriptor permit blocking I/O.
+.Xr epoll 2
+and
+.Xr kqueue 2
+are not supported on
+.Nm
+file descriptors.
.Pp
-The data structures in shared memory are the following:
+While a NIC is in
+.Nm
+mode, the OS will still believe the interface is up and running.
+OS-generated packets for that NIC end up into a
+.Nm
+ring, and another ring is used to send packets into the OS network stack.
+A
+.Xr close 2
+on the file descriptor removes the binding,
+and returns the NIC to normal mode (reconnecting the data path
+to the host stack), or destroys the virtual port.
+.Pp
+.Sh DATA STRUCTURES
+The data structures in the mmapped memory region are detailed in
+.Xr sys/net/netmap.h ,
+which is the ultimate reference for the
+.Nm
+API. The main structures and fields are indicated below:
.Bl -tag -width XXX
.It Dv struct netmap_if (one per interface)
-indicates the number of rings supported by an interface, their
-sizes, and the offsets of the
-.Pa netmap_rings
-associated to the interface.
-The offset of a
-.Pa struct netmap_if
-in the shared memory region is indicated by the
-.Pa nr_offset
-field in the structure returned by the
-.Pa NIOCREGIF
-(see below).
.Bd -literal
struct netmap_if {
- char ni_name[IFNAMSIZ]; /* name of the interface. */
- const u_int ni_num_queues; /* number of hw ring pairs */
- const ssize_t ring_ofs[]; /* offset of tx and rx rings */
+ ...
+ const uint32_t ni_flags; /* properties */
+ ...
+ const uint32_t ni_tx_rings; /* NIC tx rings */
+ const uint32_t ni_rx_rings; /* NIC rx rings */
+ uint32_t ni_bufs_head; /* head of extra bufs list */
+ ...
};
.Ed
+.Pp
+Indicates the number of available rings
+.Pa ( struct netmap_rings )
+and their position in the mmapped region.
+The number of tx and rx rings
+.Pa ( ni_tx_rings , ni_rx_rings )
+normally depends on the hardware.
+NICs also have an extra tx/rx ring pair connected to the host stack.
+.Em NIOCREGIF
+can also request additional unbound buffers in the same memory space,
+to be used as temporary storage for packets.
+.Pa ni_bufs_head
+contains the index of the first of these free rings,
+which are connected in a list (the first uint32_t of each
+buffer being the index of the next buffer in the list).
+A 0 indicates the end of the list.
+.Pp
.It Dv struct netmap_ring (one per ring)
-contains the index of the current read or write slot (cur),
-the number of slots available for reception or transmission (avail),
-and an array of
-.Pa slots
-describing the buffers.
-There is one ring pair for each of the N hardware ring pairs
-supported by the card (numbered 0..N-1), plus
-one ring pair (numbered N) for packets from/to the host stack.
.Bd -literal
struct netmap_ring {
- const ssize_t buf_ofs;
- const uint32_t num_slots; /* number of slots in the ring. */
- uint32_t avail; /* number of usable slots */
- uint32_t cur; /* 'current' index for the user side */
- uint32_t reserved; /* not refilled before current */
-
- const uint16_t nr_buf_size;
- uint16_t flags;
- struct netmap_slot slot[0]; /* array of slots. */
+ ...
+ const uint32_t num_slots; /* slots in each ring */
+ const uint32_t nr_buf_size; /* size of each buffer */
+ ...
+ uint32_t head; /* (u) first buf owned by user */
+ uint32_t cur; /* (u) wakeup position */
+ const uint32_t tail; /* (k) first buf owned by kernel */
+ ...
+ uint32_t flags;
+ struct timeval ts; /* (k) time of last rxsync() */
+ ...
+ struct netmap_slot slot[0]; /* array of slots */
}
.Ed
-.It Dv struct netmap_slot (one per packet)
-contains the metadata for a packet: a buffer index (buf_idx),
-a buffer length (len), and some flags.
+.Pp
+Implements transmit and receive rings, with read/write
+pointers, metadata and and an array of
+.Pa slots
+describing the buffers.
+.Pp
+.It Dv struct netmap_slot (one per buffer)
.Bd -literal
struct netmap_slot {
- uint32_t buf_idx; /* buffer index */
- uint16_t len; /* packet length */
- uint16_t flags; /* buf changed, etc. */
-#define NS_BUF_CHANGED 0x0001 /* must resync, buffer changed */
-#define NS_REPORT 0x0002 /* tell hw to report results
- * e.g. by generating an interrupt
- */
+ uint32_t buf_idx; /* buffer index */
+ uint16_t len; /* packet length */
+ uint16_t flags; /* buf changed, etc. */
+ uint64_t ptr; /* address for indirect buffers */
};
.Ed
+.Pp
+Describes a packet buffer, which normally is identified by
+an index and resides in the mmapped region.
.It Dv packet buffers
-are fixed size (approximately 2k) buffers allocated by the kernel
-that contain packet data. Buffers addresses are computed through
-macros.
+Fixed size (normally 2 KB) packet buffers allocated by the kernel.
.El
.Pp
-Some macros support the access to objects in the shared memory
-region. In particular:
+The offset of the
+.Pa struct netmap_if
+in the mmapped region is indicated by the
+.Pa nr_offset
+field in the structure returned by
+.Pa NIOCREGIF .
+From there, all other objects are reachable through
+relative references (offsets or indexes).
+Macros and functions in <net/netmap_user.h>
+help converting them into actual pointers:
+.Pp
+.Dl struct netmap_if *nifp = NETMAP_IF(mem, arg.nr_offset);
+.Dl struct netmap_ring *txr = NETMAP_TXRING(nifp, ring_index);
+.Dl struct netmap_ring *rxr = NETMAP_RXRING(nifp, ring_index);
+.Pp
+.Dl char *buf = NETMAP_BUF(ring, buffer_index);
+.Sh RINGS, BUFFERS AND DATA I/O
+.Va Rings
+are circular queues of packets with three indexes/pointers
+.Va ( head , cur , tail ) ;
+one slot is always kept empty.
+The ring size
+.Va ( num_slots )
+should not be assumed to be a power of two.
+.br
+(NOTE: older versions of netmap used head/count format to indicate
+the content of a ring).
+.Pp
+.Va head
+is the first slot available to userspace;
+.br
+.Va cur
+is the wakeup point:
+select/poll will unblock when
+.Va tail
+passes
+.Va cur ;
+.br
+.Va tail
+is the first slot reserved to the kernel.
+.Pp
+Slot indexes MUST only move forward;
+for convenience, the function
+.Dl nm_ring_next(ring, index)
+returns the next index modulo the ring size.
+.Pp
+.Va head
+and
+.Va cur
+are only modified by the user program;
+.Va tail
+is only modified by the kernel.
+The kernel only reads/writes the
+.Vt struct netmap_ring
+slots and buffers
+during the execution of a netmap-related system call.
+The only exception are slots (and buffers) in the range
+.Va tail\ . . . head-1 ,
+that are explicitly assigned to the kernel.
+.Pp
+.Ss TRANSMIT RINGS
+On transmit rings, after a
+.Nm
+system call, slots in the range
+.Va head\ . . . tail-1
+are available for transmission.
+User code should fill the slots sequentially
+and advance
+.Va head
+and
+.Va cur
+past slots ready to transmit.
+.Va cur
+may be moved further ahead if the user code needs
+more slots before further transmissions (see
+.Sx SCATTER GATHER I/O ) .
+.Pp
+At the next NIOCTXSYNC/select()/poll(),
+slots up to
+.Va head-1
+are pushed to the port, and
+.Va tail
+may advance if further slots have become available.
+Below is an example of the evolution of a TX ring:
+.Pp
+.Bd -literal
+ after the syscall, slots between cur and tail are (a)vailable
+ head=cur tail
+ | |
+ v v
+ TX [.....aaaaaaaaaaa.............]
+
+ user creates new packets to (T)ransmit
+ head=cur tail
+ | |
+ v v
+ TX [.....TTTTTaaaaaa.............]
+
+ NIOCTXSYNC/poll()/select() sends packets and reports new slots
+ head=cur tail
+ | |
+ v v
+ TX [..........aaaaaaaaaaa........]
+.Ed
+.Pp
+select() and poll() wlll block if there is no space in the ring, i.e.
+.Dl ring->cur == ring->tail
+and return when new slots have become available.
+.Pp
+High speed applications may want to amortize the cost of system calls
+by preparing as many packets as possible before issuing them.
+.Pp
+A transmit ring with pending transmissions has
+.Dl ring->head != ring->tail + 1 (modulo the ring size).
+The function
+.Va int nm_tx_pending(ring)
+implements this test.
+.Pp
+.Ss RECEIVE RINGS
+On receive rings, after a
+.Nm
+system call, the slots in the range
+.Va head\& . . . tail-1
+contain received packets.
+User code should process them and advance
+.Va head
+and
+.Va cur
+past slots it wants to return to the kernel.
+.Va cur
+may be moved further ahead if the user code wants to
+wait for more packets
+without returning all the previous slots to the kernel.
+.Pp
+At the next NIOCRXSYNC/select()/poll(),
+slots up to
+.Va head-1
+are returned to the kernel for further receives, and
+.Va tail
+may advance to report new incoming packets.
+.br
+Below is an example of the evolution of an RX ring:
.Bd -literal
-struct netmap_if *nifp;
-struct netmap_ring *txring = NETMAP_TXRING(nifp, i);
-struct netmap_ring *rxring = NETMAP_RXRING(nifp, i);
-int i = txring->slot[txring->cur].buf_idx;
-char *buf = NETMAP_BUF(txring, i);
+ after the syscall, there are some (h)eld and some (R)eceived slots
+ head cur tail
+ | | |
+ v v v
+ RX [..hhhhhhRRRRRRRR..........]
+
+ user advances head and cur, releasing some slots and holding others
+ head cur tail
+ | | |
+ v v v
+ RX [..*****hhhRRRRRR...........]
+
+ NICRXSYNC/poll()/select() recovers slots and reports new packets
+ head cur tail
+ | | |
+ v v v
+ RX [.......hhhRRRRRRRRRRRR....]
.Ed
+.Pp
+.Sh SLOTS AND PACKET BUFFERS
+Normally, packets should be stored in the netmap-allocated buffers
+assigned to slots when ports are bound to a file descriptor.
+One packet is fully contained in a single buffer.
+.Pp
+The following flags affect slot and buffer processing:
+.Bl -tag -width XXX
+.It NS_BUF_CHANGED
+it MUST be used when the buf_idx in the slot is changed.
+This can be used to implement
+zero-copy forwarding, see
+.Sx ZERO-COPY FORWARDING .
+.Pp
+.It NS_REPORT
+reports when this buffer has been transmitted.
+Normally,
+.Nm
+notifies transmit completions in batches, hence signals
+can be delayed indefinitely. This flag helps detecting
+when packets have been send and a file descriptor can be closed.
+.It NS_FORWARD
+When a ring is in 'transparent' mode (see
+.Sx TRANSPARENT MODE ) ,
+packets marked with this flags are forwarded to the other endpoint
+at the next system call, thus restoring (in a selective way)
+the connection between a NIC and the host stack.
+.It NS_NO_LEARN
+tells the forwarding code that the SRC MAC address for this
+packet must not be used in the learning bridge code.
+.It NS_INDIRECT
+indicates that the packet's payload is in a user-supplied buffer,
+whose user virtual address is in the 'ptr' field of the slot.
+The size can reach 65535 bytes.
+.br
+This is only supported on the transmit ring of
+.Nm VALE
+ports, and it helps reducing data copies in the interconnection
+of virtual machines.
+.It NS_MOREFRAG
+indicates that the packet continues with subsequent buffers;
+the last buffer in a packet must have the flag clear.
+.El
+.Sh SCATTER GATHER I/O
+Packets can span multiple slots if the
+.Va NS_MOREFRAG
+flag is set in all but the last slot.
+The maximum length of a chain is 64 buffers.
+This is normally used with
+.Nm VALE
+ports when connecting virtual machines, as they generate large
+TSO segments that are not split unless they reach a physical device.
+.Pp
+NOTE: The length field always refers to the individual
+fragment; there is no place with the total length of a packet.
+.Pp
+On receive rings the macro
+.Va NS_RFRAGS(slot)
+indicates the remaining number of slots for this packet,
+including the current one.
+Slots with a value greater than 1 also have NS_MOREFRAG set.
.Sh IOCTLS
.Nm
-supports some ioctl() to synchronize the state of the rings
-between the kernel and the user processes, plus some
-to query and configure the interface.
-The former do not require any argument, whereas the latter
-use a
-.Pa struct netmap_req
-defined as follows:
+uses two ioctls (NIOCTXSYNC, NIOCRXSYNC)
+for non-blocking I/O. They take no argument.
+Two more ioctls (NIOCGINFO, NIOCREGIF) are used
+to query and configure ports, with the following argument:
.Bd -literal
struct nmreq {
- char nr_name[IFNAMSIZ];
- uint32_t nr_version; /* API version */
-#define NETMAP_API 3 /* current version */
- uint32_t nr_offset; /* nifp offset in the shared region */
- uint32_t nr_memsize; /* size of the shared region */
- uint32_t nr_tx_slots; /* slots in tx rings */
- uint32_t nr_rx_slots; /* slots in rx rings */
- uint16_t nr_tx_rings; /* number of tx rings */
- uint16_t nr_rx_rings; /* number of tx rings */
- uint16_t nr_ringid; /* ring(s) we care about */
-#define NETMAP_HW_RING 0x4000 /* low bits indicate one hw ring */
-#define NETMAP_SW_RING 0x2000 /* we process the sw ring */
-#define NETMAP_NO_TX_POLL 0x1000 /* no gratuitous txsync on poll */
-#define NETMAP_RING_MASK 0xfff /* the actual ring number */
- uint16_t spare1;
- uint32_t spare2[4];
+ char nr_name[IFNAMSIZ]; /* (i) port name */
+ uint32_t nr_version; /* (i) API version */
+ uint32_t nr_offset; /* (o) nifp offset in mmap region */
+ uint32_t nr_memsize; /* (o) size of the mmap region */
+ uint32_t nr_tx_slots; /* (i/o) slots in tx rings */
+ uint32_t nr_rx_slots; /* (i/o) slots in rx rings */
+ uint16_t nr_tx_rings; /* (i/o) number of tx rings */
+ uint16_t nr_rx_rings; /* (i/o) number of tx rings */
+ uint16_t nr_ringid; /* (i/o) ring(s) we care about */
+ uint16_t nr_cmd; /* (i) special command */
+ uint16_t nr_arg1; /* (i/o) extra arguments */
+ uint16_t nr_arg2; /* (i/o) extra arguments */
+ uint32_t nr_arg3; /* (i/o) extra arguments */
+ uint32_t nr_flags /* (i/o) open mode */
+ ...
};
-
.Ed
-A device descriptor obtained through
+.Pp
+A file descriptor obtained through
.Pa /dev/netmap
-also supports the ioctl supported by network devices.
+also supports the ioctl supported by network devices, see
+.Xr netintro 4 .
.Pp
-The netmap-specific
-.Xr ioctl 2
-command codes below are defined in
-.In net/netmap.h
-and are:
.Bl -tag -width XXXX
.It Dv NIOCGINFO
-returns information about the interface named in nr_name.
-On return, nr_memsize indicates the size of the shared netmap
-memory region (this is device-independent),
-nr_tx_slots and nr_rx_slots indicates how many buffers are in a
-transmit and receive ring,
-nr_tx_rings and nr_rx_rings indicates the number of transmit
-and receive rings supported by the hardware.
-.Pp
-If the device does not support netmap, the ioctl returns EINVAL.
+returns EINVAL if the named port does not support netmap.
+Otherwise, it returns 0 and (advisory) information
+about the port.
+Note that all the information below can change before the
+interface is actually put in netmap mode.
+.Pp
+.Bl -tag -width XX
+.It Pa nr_memsize
+indicates the size of the
+.Nm
+memory region. NICs in
+.Nm
+mode all share the same memory region,
+whereas
+.Nm VALE
+ports have independent regions for each port.
+.It Pa nr_tx_slots , nr_rx_slots
+indicate the size of transmit and receive rings.
+.It Pa nr_tx_rings , nr_rx_rings
+indicate the number of transmit
+and receive rings.
+Both ring number and sizes may be configured at runtime
+using interface-specific functions (e.g.
+.Xr ethtool
+).
+.El
.It Dv NIOCREGIF
-puts the interface named in nr_name into netmap mode, disconnecting
-it from the host stack, and/or defines which rings are controlled
-through this file descriptor.
-On return, it gives the same info as NIOCGINFO, and nr_ringid
-indicates the identity of the rings controlled through the file
+binds the port named in
+.Va nr_name
+to the file descriptor. For a physical device this also switches it into
+.Nm
+mode, disconnecting
+it from the host stack.
+Multiple file descriptors can be bound to the same port,
+with proper synchronization left to the user.
+.Pp
+.Dv NIOCREGIF can also bind a file descriptor to one endpoint of a
+.Em netmap pipe ,
+consisting of two netmap ports with a crossover connection.
+A netmap pipe share the same memory space of the parent port,
+and is meant to enable configuration where a master process acts
+as a dispatcher towards slave processes.
+.Pp
+To enable this function, the
+.Pa nr_arg1
+field of the structure can be used as a hint to the kernel to
+indicate how many pipes we expect to use, and reserve extra space
+in the memory region.
+.Pp
+On return, it gives the same info as NIOCGINFO,
+with
+.Pa nr_ringid
+and
+.Pa nr_flags
+indicating the identity of the rings controlled through the file
descriptor.
.Pp
-Possible values for nr_ringid are
+.Va nr_flags
+.Va nr_ringid
+selects which rings are controlled through this file descriptor.
+Possible values of
+.Pa nr_flags
+are indicated below, together with the naming schemes
+that application libraries (such as the
+.Nm nm_open
+indicated below) can use to indicate the specific set of rings.
+In the example below, "netmap:foo" is any valid netmap port name.
+.Pp
.Bl -tag -width XXXXX
-.It 0
-default, all hardware rings
-.It NETMAP_SW_RING
-the ``host rings'' connecting to the host stack
-.It NETMAP_HW_RING + i
-the i-th hardware ring
+.It NR_REG_ALL_NIC "netmap:foo"
+(default) all hardware ring pairs
+.It NR_REG_SW_NIC "netmap:foo^"
+the ``host rings'', connecting to the host stack.
+.It NR_RING_NIC_SW "netmap:foo+
+all hardware rings and the host rings
+.It NR_REG_ONE_NIC "netmap:foo-i"
+only the i-th hardware ring pair, where the number is in
+.Pa nr_ringid ;
+.It NR_REG_PIPE_MASTER "netmap:foo{i"
+the master side of the netmap pipe whose identifier (i) is in
+.Pa nr_ringid ;
+.It NR_REG_PIPE_SLAVE "netmap:foo}i"
+the slave side of the netmap pipe whose identifier (i) is in
+.Pa nr_ringid .
+.Pp
+The identifier of a pipe must be thought as part of the pipe name,
+and does not need to be sequential. On return the pipe
+will only have a single ring pair with index 0,
+irrespective of the value of i.
.El
+.Pp
By default, a
-.Nm poll
+.Xr poll 2
or
-.Nm select
+.Xr select 2
call pushes out any pending packets on the transmit ring, even if
no write events are specified.
The feature can be disabled by or-ing
-.Nm NETMAP_NO_TX_SYNC
-to nr_ringid.
-But normally you should keep this feature unless you are using
-separate file descriptors for the send and receive rings, because
-otherwise packets are pushed out only if NETMAP_TXSYNC is called,
-or the send queue is full.
-.Pp
-.Pa NIOCREGIF
-can be used multiple times to change the association of a
-file descriptor to a ring pair, always within the same device.
-.It Dv NIOCUNREGIF
-brings an interface back to normal mode.
+.Va NETMAP_NO_TX_SYNC
+to the value written to
+.Va nr_ringid.
+When this feature is used,
+packets are transmitted only on
+.Va ioctl(NIOCTXSYNC)
+or select()/poll() are called with a write event (POLLOUT/wfdset) or a full ring.
+.Pp
+When registering a virtual interface that is dynamically created to a
+.Xr vale 4
+switch, we can specify the desired number of rings (1 by default,
+and currently up to 16) on it using nr_tx_rings and nr_rx_rings fields.
.It Dv NIOCTXSYNC
tells the hardware of new packets to transmit, and updates the
number of slots available for transmission.
@@ -252,54 +658,387 @@ number of slots available for transmission.
tells the hardware of consumed packets, and asks for newly available
packets.
.El
+.Sh SELECT, POLL, EPOLL, KQUEUE.
+.Xr select 2
+and
+.Xr poll 2
+on a
+.Nm
+file descriptor process rings as indicated in
+.Sx TRANSMIT RINGS
+and
+.Sx RECEIVE RINGS ,
+respectively when write (POLLOUT) and read (POLLIN) events are requested.
+Both block if no slots are available in the ring
+.Va ( ring->cur == ring->tail ) .
+Depending on the platform,
+.Xr epoll 2
+and
+.Xr kqueue 2
+are supported too.
+.Pp
+Packets in transmit rings are normally pushed out
+(and buffers reclaimed) even without
+requesting write events. Passing the NETMAP_NO_TX_SYNC flag to
+.Em NIOCREGIF
+disables this feature.
+By default, receive rings are processed only if read
+events are requested. Passing the NETMAP_DO_RX_SYNC flag to
+.Em NIOCREGIF updates receive rings even without read events.
+Note that on epoll and kqueue, NETMAP_NO_TX_SYNC and NETMAP_DO_RX_SYNC
+only have an effect when some event is posted for the file descriptor.
+.Sh LIBRARIES
+The
+.Nm
+API is supposed to be used directly, both because of its simplicity and
+for efficient integration with applications.
+.Pp
+For conveniency, the
+.Va <net/netmap_user.h>
+header provides a few macros and functions to ease creating
+a file descriptor and doing I/O with a
+.Nm
+port. These are loosely modeled after the
+.Xr pcap 3
+API, to ease porting of libpcap-based applications to
+.Nm .
+To use these extra functions, programs should
+.Dl #define NETMAP_WITH_LIBS
+before
+.Dl #include <net/netmap_user.h>
+.Pp
+The following functions are available:
+.Bl -tag -width XXXXX
+.It Va struct nm_desc * nm_open(const char *ifname, const struct nmreq *req, uint64_t flags, const struct nm_desc *arg)
+similar to
+.Xr pcap_open ,
+binds a file descriptor to a port.
+.Bl -tag -width XX
+.It Va ifname
+is a port name, in the form "netmap:XXX" for a NIC and "valeXXX:YYY" for a
+.Nm VALE
+port.
+.It Va req
+provides the initial values for the argument to the NIOCREGIF ioctl.
+The nm_flags and nm_ringid values are overwritten by parsing
+ifname and flags, and other fields can be overridden through
+the other two arguments.
+.It Va arg
+points to a struct nm_desc containing arguments (e.g. from a previously
+open file descriptor) that should override the defaults.
+The fields are used as described below
+.It Va flags
+can be set to a combination of the following flags:
+.Va NETMAP_NO_TX_POLL ,
+.Va NETMAP_DO_RX_POLL
+(copied into nr_ringid);
+.Va NM_OPEN_NO_MMAP (if arg points to the same memory region,
+avoids the mmap and uses the values from it);
+.Va NM_OPEN_IFNAME (ignores ifname and uses the values in arg);
+.Va NM_OPEN_ARG1 ,
+.Va NM_OPEN_ARG2 ,
+.Va NM_OPEN_ARG3 (uses the fields from arg);
+.Va NM_OPEN_RING_CFG (uses the ring number and sizes from arg).
+.El
+.It Va int nm_close(struct nm_desc *d)
+closes the file descriptor, unmaps memory, frees resources.
+.It Va int nm_inject(struct nm_desc *d, const void *buf, size_t size)
+similar to pcap_inject(), pushes a packet to a ring, returns the size
+of the packet is successful, or 0 on error;
+.It Va int nm_dispatch(struct nm_desc *d, int cnt, nm_cb_t cb, u_char *arg)
+similar to pcap_dispatch(), applies a callback to incoming packets
+.It Va u_char * nm_nextpkt(struct nm_desc *d, struct nm_pkthdr *hdr)
+similar to pcap_next(), fetches the next packet
+.Pp
+.El
+.Sh SUPPORTED DEVICES
+.Nm
+natively supports the following devices:
+.Pp
+On FreeBSD:
+.Xr em 4 ,
+.Xr igb 4 ,
+.Xr ixgbe 4 ,
+.Xr lem 4 ,
+.Xr re 4 .
+.Pp
+On Linux
+.Xr e1000 4 ,
+.Xr e1000e 4 ,
+.Xr igb 4 ,
+.Xr ixgbe 4 ,
+.Xr mlx4 4 ,
+.Xr forcedeth 4 ,
+.Xr r8169 4 .
+.Pp
+NICs without native support can still be used in
+.Nm
+mode through emulation. Performance is inferior to native netmap
+mode but still significantly higher than sockets, and approaching
+that of in-kernel solutions such as Linux's
+.Xr pktgen .
+.Pp
+Emulation is also available for devices with native netmap support,
+which can be used for testing or performance comparison.
+The sysctl variable
+.Va dev.netmap.admode
+globally controls how netmap mode is implemented.
+.Sh SYSCTL VARIABLES AND MODULE PARAMETERS
+Some aspect of the operation of
+.Nm
+are controlled through sysctl variables on FreeBSD
+.Em ( dev.netmap.* )
+and module parameters on Linux
+.Em ( /sys/module/netmap_lin/parameters/* ) :
+.Pp
+.Bl -tag -width indent
+.It Va dev.netmap.admode: 0
+Controls the use of native or emulated adapter mode.
+0 uses the best available option, 1 forces native and
+fails if not available, 2 forces emulated hence never fails.
+.It Va dev.netmap.generic_ringsize: 1024
+Ring size used for emulated netmap mode
+.It Va dev.netmap.generic_mit: 100000
+Controls interrupt moderation for emulated mode
+.It Va dev.netmap.mmap_unreg: 0
+.It Va dev.netmap.fwd: 0
+Forces NS_FORWARD mode
+.It Va dev.netmap.flags: 0
+.It Va dev.netmap.txsync_retry: 2
+.It Va dev.netmap.no_pendintr: 1
+Forces recovery of transmit buffers on system calls
+.It Va dev.netmap.mitigate: 1
+Propagates interrupt mitigation to user processes
+.It Va dev.netmap.no_timestamp: 0
+Disables the update of the timestamp in the netmap ring
+.It Va dev.netmap.verbose: 0
+Verbose kernel messages
+.It Va dev.netmap.buf_num: 163840
+.It Va dev.netmap.buf_size: 2048
+.It Va dev.netmap.ring_num: 200
+.It Va dev.netmap.ring_size: 36864
+.It Va dev.netmap.if_num: 100
+.It Va dev.netmap.if_size: 1024
+Sizes and number of objects (netmap_if, netmap_ring, buffers)
+for the global memory region. The only parameter worth modifying is
+.Va dev.netmap.buf_num
+as it impacts the total amount of memory used by netmap.
+.It Va dev.netmap.buf_curr_num: 0
+.It Va dev.netmap.buf_curr_size: 0
+.It Va dev.netmap.ring_curr_num: 0
+.It Va dev.netmap.ring_curr_size: 0
+.It Va dev.netmap.if_curr_num: 0
+.It Va dev.netmap.if_curr_size: 0
+Actual values in use.
+.It Va dev.netmap.bridge_batch: 1024
+Batch size used when moving packets across a
+.Nm VALE
+switch. Values above 64 generally guarantee good
+performance.
+.El
.Sh SYSTEM CALLS
.Nm
uses
-.Nm select
+.Xr select 2 ,
+.Xr poll 2 ,
+.Xr epoll
and
-.Nm poll
-to wake up processes when significant events occur.
+.Xr kqueue
+to wake up processes when significant events occur, and
+.Xr mmap 2
+to map memory.
+.Xr ioctl 2
+is used to configure ports and
+.Nm VALE switches .
+.Pp
+Applications may need to create threads and bind them to
+specific cores to improve performance, using standard
+OS primitives, see
+.Xr pthread 3 .
+In particular,
+.Xr pthread_setaffinity_np 3
+may be of use.
+.Sh CAVEATS
+No matter how fast the CPU and OS are,
+achieving line rate on 10G and faster interfaces
+requires hardware with sufficient performance.
+Several NICs are unable to sustain line rate with
+small packet sizes. Insufficient PCIe or memory bandwidth
+can also cause reduced performance.
+.Pp
+Another frequent reason for low performance is the use
+of flow control on the link: a slow receiver can limit
+the transmit speed.
+Be sure to disable flow control when running high
+speed experiments.
+.Pp
+.Ss SPECIAL NIC FEATURES
+.Nm
+is orthogonal to some NIC features such as
+multiqueue, schedulers, packet filters.
+.Pp
+Multiple transmit and receive rings are supported natively
+and can be configured with ordinary OS tools,
+such as
+.Xr ethtool
+or
+device-specific sysctl variables.
+The same goes for Receive Packet Steering (RPS)
+and filtering of incoming traffic.
+.Pp
+.Nm
+.Em does not use
+features such as
+.Em checksum offloading , TCP segmentation offloading ,
+.Em encryption , VLAN encapsulation/decapsulation ,
+etc. .
+When using netmap to exchange packets with the host stack,
+make sure to disable these features.
.Sh EXAMPLES
+.Ss TEST PROGRAMS
+.Nm
+comes with a few programs that can be used for testing or
+simple applications.
+See the
+.Va examples/
+directory in
+.Nm
+distributions, or
+.Va tools/tools/netmap/
+directory in FreeBSD distributions.
+.Pp
+.Xr pkt-gen
+is a general purpose traffic source/sink.
+.Pp
+As an example
+.Dl pkt-gen -i ix0 -f tx -l 60
+can generate an infinite stream of minimum size packets, and
+.Dl pkt-gen -i ix0 -f rx
+is a traffic sink.
+Both print traffic statistics, to help monitor
+how the system performs.
+.Pp
+.Xr pkt-gen
+has many options can be uses to set packet sizes, addresses,
+rates, and use multiple send/receive threads and cores.
+.Pp
+.Xr bridge
+is another test program which interconnects two
+.Nm
+ports. It can be used for transparent forwarding between
+interfaces, as in
+.Dl bridge -i ix0 -i ix1
+or even connect the NIC to the host stack using netmap
+.Dl bridge -i ix0 -i ix0
+.Ss USING THE NATIVE API
The following code implements a traffic generator
.Pp
.Bd -literal -compact
-#include <net/netmap.h>
#include <net/netmap_user.h>
-struct netmap_if *nifp;
-struct netmap_ring *ring;
-struct nmreq nmr;
+...
+void sender(void)
+{
+ struct netmap_if *nifp;
+ struct netmap_ring *ring;
+ struct nmreq nmr;
+ struct pollfd fds;
-fd = open("/dev/netmap", O_RDWR);
-bzero(&nmr, sizeof(nmr));
-strcpy(nmr.nr_name, "ix0");
-nmr.nr_version = NETMAP_API;
-ioctl(fd, NIOCREG, &nmr);
-p = mmap(0, nmr.nr_memsize, fd);
-nifp = NETMAP_IF(p, nmr.offset);
-ring = NETMAP_TXRING(nifp, 0);
-fds.fd = fd;
-fds.events = POLLOUT;
-for (;;) {
- poll(list, 1, -1);
- for ( ; ring->avail > 0 ; ring->avail--) {
- i = ring->cur;
- buf = NETMAP_BUF(ring, ring->slot[i].buf_index);
- ... prepare packet in buf ...
- ring->slot[i].len = ... packet length ...
- ring->cur = NETMAP_RING_NEXT(ring, i);
+ fd = open("/dev/netmap", O_RDWR);
+ bzero(&nmr, sizeof(nmr));
+ strcpy(nmr.nr_name, "ix0");
+ nmr.nm_version = NETMAP_API;
+ ioctl(fd, NIOCREGIF, &nmr);
+ p = mmap(0, nmr.nr_memsize, fd);
+ nifp = NETMAP_IF(p, nmr.nr_offset);
+ ring = NETMAP_TXRING(nifp, 0);
+ fds.fd = fd;
+ fds.events = POLLOUT;
+ for (;;) {
+ poll(&fds, 1, -1);
+ while (!nm_ring_empty(ring)) {
+ i = ring->cur;
+ buf = NETMAP_BUF(ring, ring->slot[i].buf_index);
+ ... prepare packet in buf ...
+ ring->slot[i].len = ... packet length ...
+ ring->head = ring->cur = nm_ring_next(ring, i);
+ }
+ }
+}
+.Ed
+.Ss HELPER FUNCTIONS
+A simple receiver can be implemented using the helper functions
+.Bd -literal -compact
+#define NETMAP_WITH_LIBS
+#include <net/netmap_user.h>
+...
+void receiver(void)
+{
+ struct nm_desc *d;
+ struct pollfd fds;
+ u_char *buf;
+ struct nm_pkthdr h;
+ ...
+ d = nm_open("netmap:ix0", NULL, 0, 0);
+ fds.fd = NETMAP_FD(d);
+ fds.events = POLLIN;
+ for (;;) {
+ poll(&fds, 1, -1);
+ while ( (buf = nm_nextpkt(d, &h)) )
+ consume_pkt(buf, h->len);
}
+ nm_close(d);
}
.Ed
-.Sh SUPPORTED INTERFACES
+.Ss ZERO-COPY FORWARDING
+Since physical interfaces share the same memory region,
+it is possible to do packet forwarding between ports
+swapping buffers. The buffer from the transmit ring is used
+to replenish the receive ring:
+.Bd -literal -compact
+ uint32_t tmp;
+ struct netmap_slot *src, *dst;
+ ...
+ src = &src_ring->slot[rxr->cur];
+ dst = &dst_ring->slot[txr->cur];
+ tmp = dst->buf_idx;
+ dst->buf_idx = src->buf_idx;
+ dst->len = src->len;
+ dst->flags = NS_BUF_CHANGED;
+ src->buf_idx = tmp;
+ src->flags = NS_BUF_CHANGED;
+ rxr->head = rxr->cur = nm_ring_next(rxr, rxr->cur);
+ txr->head = txr->cur = nm_ring_next(txr, txr->cur);
+ ...
+.Ed
+.Ss ACCESSING THE HOST STACK
+The host stack is for all practical purposes just a regular ring pair,
+which you can access with the netmap API (e.g. with
+.Dl nm_open("netmap:eth0^", ... ) ;
+All packets that the host would send to an interface in
.Nm
-supports the following interfaces:
-.Xr em 4 ,
-.Xr igb 4 ,
-.Xr ixgbe 4 ,
-.Xr lem 4 ,
-.Xr re 4
+mode end up into the RX ring, whereas all packets queued to the
+TX ring are send up to the host stack.
+.Ss VALE SWITCH
+A simple way to test the performance of a
+.Nm VALE
+switch is to attach a sender and a receiver to it,
+e.g. running the following in two different terminals:
+.Dl pkt-gen -i vale1:a -f rx # receiver
+.Dl pkt-gen -i vale1:b -f tx # sender
+The same example can be used to test netmap pipes, by simply
+changing port names, e.g.
+.Dl pkt-gen -i vale:x{3 -f rx # receiver on the master side
+.Dl pkt-gen -i vale:x}3 -f tx # sender on the slave side
+.Pp
+The following command attaches an interface and the host stack
+to a switch:
+.Dl vale-ctl -h vale2:em0
+Other
+.Nm
+clients attached to the same switch can now communicate
+with the network card or the host.
+.Pp
.Sh SEE ALSO
-.Xr vale 4
.Pp
http://info.iet.unipi.it/~luigi/netmap/
.Pp
@@ -308,17 +1047,29 @@ Communications of the ACM, 55 (3), pp.45-51, March 2012
.Pp
Luigi Rizzo, netmap: a novel framework for fast packet I/O,
Usenix ATC'12, June 2012, Boston
+.Pp
+Luigi Rizzo, Giuseppe Lettieri,
+VALE, a switched ethernet for virtual machines,
+ACM CoNEXT'12, December 2012, Nice
+.Pp
+Luigi Rizzo, Giuseppe Lettieri, Vincenzo Maffione,
+Speeding up packet I/O in virtual machines,
+ACM/IEEE ANCS'13, October 2013, San Jose
.Sh AUTHORS
.An -nosplit
The
.Nm
-framework has been designed and implemented at the
+framework has been originally designed and implemented at the
Universita` di Pisa in 2011 by
.An Luigi Rizzo ,
-with help from
+and further extended with help from
.An Matteo Landi ,
.An Gaetano Catalli ,
-.An Giuseppe Lettieri .
+.An Giuseppe Lettieri ,
+.An Vincenzo Maffione .
.Pp
.Nm
-has been funded by the European Commission within FP7 Project CHANGE (257422).
+and
+.Nm VALE
+have been funded by the European Commission within FP7 Projects
+CHANGE (257422) and OPENLAB (287581).
diff --git a/share/man/man4/ng_fec.4 b/share/man/man4/ng_fec.4
deleted file mode 100644
index f9759cbc020f..000000000000
--- a/share/man/man4/ng_fec.4
+++ /dev/null
@@ -1,109 +0,0 @@
-.\" Copyright (c) 2004 Gleb Smirnoff
-.\" 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.
-.\"
-.\" $FreeBSD$
-.\"
-.Dd July 22, 2004
-.Dt NG_FEC 4
-.Os
-.Sh NAME
-.Nm ng_fec
-.Nd netgraph Fast EtherChannel node
-.Sh SYNOPSIS
-.In netgraph/ng_fec.h
-.Sh DESCRIPTION
-The
-.Nm fec
-node implements Ethernet port trunking using the
-.Dq Cisco Fast EtherChannel
-protocol.
-Upon creation, a
-.Nm fec
-node creates a network interface associated with it.
-Interfaces are named
-.Dq Li fec0 ,
-.Dq Li fec1 ,
-etc.
-New nodes take the first available unit.
-.Sh HOOKS
-The
-.Nm fec
-node accepts any hooks.
-However it does not use them.
-Under normal operation, a
-.Nm fec
-node should not have any hooks.
-.Sh CONTROL MESSAGES
-Interface membership in the FEC group is configured with the following
-control messages:
-.Bl -tag -width foo
-.It Dv NGM_FEC_ADD_IFACE Pq Ic add_iface
-Attach interface to the FEC group.
-The target interface name is passed as a string argument.
-.It Dv NGM_FEC_DEL_IFACE Pq Ic del_iface
-Remove interface from the trunk.
-The target interface name is passed as a string argument.
-.El
-.Pp
-The following control messages define the forwarding method for a node:
-.Bl -tag -width foo
-.It Dv NGM_FEC_SET_MODE_MAC Pq Ic set_mode_mac
-Forwarding decisions will be based on the link-layer MAC address of the destination.
-.It Dv NGM_FEC_SET_MODE_INET Pq Ic set_mode_inet
-Forwarding decisions will be based on the IP address of the destination.
-.El
-.Sh SHUTDOWN
-This node shuts down upon receipt of a
-.Dv NGM_SHUTDOWN
-control message.
-.Sh EXAMPLES
-The following example script creates an
-.Nm fec
-node, attaches four Ethernet interfaces to it and
-sets the forwarding method to be IP-address based:
-.Bd -literal -offset indent
-/usr/sbin/ngctl -f- << SEQ
- mkpeer fec dummy fec
- msg fec0: add_iface "dc0"
- msg fec0: add_iface "dc1"
- msg fec0: add_iface "dc2"
- msg fec0: add_iface "dc3"
- msg fec0: set_mode_inet
-SEQ
-.Ed
-.Sh SEE ALSO
-.Xr netgraph 4
-.Sh HISTORY
-The
-.Nm fec
-node type was implemented in
-.Fx 5.0 .
-.Sh AUTHORS
-.An -nosplit
-The
-.Nm fec
-node was written by
-.An "Bill Paul" Aq wpaul@FreeBSD.org .
-This manual page was written by
-.An "Gleb Smirnoff" Aq glebius@FreeBSD.org .
diff --git a/share/man/man4/ng_iface.4 b/share/man/man4/ng_iface.4
index 1756f9d18a6f..270aa4fd1426 100644
--- a/share/man/man4/ng_iface.4
+++ b/share/man/man4/ng_iface.4
@@ -70,8 +70,7 @@ Packets transmitted via the interface flow out the corresponding
protocol-specific hook.
Similarly, packets received on a hook appear on the interface as
packets received into the corresponding protocol stack.
-The currently supported protocols are IP, IPv6, AppleTalk, IPX, ATM,
-NATM, and NS.
+The currently supported protocols are IP, IPv6, ATM, NATM, and NS.
.Pp
An
.Nm iface
@@ -88,10 +87,6 @@ This node type supports the following hooks:
Transmission and reception of IP packets.
.It Va inet6
Transmission and reception of IPv6 packets.
-.It Va atalk
-Transmission and reception of AppleTalk packets.
-.It Va ipx
-Transmission and reception of IPX packets.
.It Va atm
Transmission and reception of ATM packets.
.It Va natm
diff --git a/share/man/man4/null.4 b/share/man/man4/null.4
index cedfaeb9c7b4..05ba12a70e58 100644
--- a/share/man/man4/null.4
+++ b/share/man/man4/null.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/nvd.4 b/share/man/man4/nvd.4
index eee4c7bf16c0..0874ad5e70dd 100644
--- a/share/man/man4/nvd.4
+++ b/share/man/man4/nvd.4
@@ -1,5 +1,5 @@
.\"
-.\" Copyright (c) 2012-2013 Intel Corporation
+.\" Copyright (c) 2012-2014 Intel Corporation
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -33,7 +33,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd July 9, 2013
+.Dd March 18, 2014
.Dt NVD 4
.Os
.Sh NAME
@@ -62,15 +62,29 @@ It depends on the
.Xr nvme 4
driver for notification of existing NVMe namespaces and submission of NVM
I/O commands.
+.Pp
+Device nodes from the
+.Nm
+driver will have the format /dev/nvdX and are
+.Xr GEOM 4
+disks which can be partitioned by
+.Xr geom 8 .
+Note that device nodes from the
+.Xr nvme 4
+driver are not
+.Xr GEOM 4
+disks and cannot be partitioned.
.Sh SEE ALSO
+.Xr GEOM 4 ,
.Xr nvme 4 ,
+.Xr geom 8 ,
.Xr nvmecontrol 8 ,
-.Xr disk 9 .
+.Xr disk 9
.Sh HISTORY
The
.Nm
driver first appeared in
-.Fx 9.2.
+.Fx 9.2 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/nve.4 b/share/man/man4/nve.4
deleted file mode 100644
index 9e50d9c9ce00..000000000000
--- a/share/man/man4/nve.4
+++ /dev/null
@@ -1,141 +0,0 @@
-.\" Copyright (c) 2003 Quinton Dolan
-.\" 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.
-.\"
-.\" $Id: nvnet.4,v 1.1 2003/10/09 16:48:01 q Exp $
-.\"
-.\" $FreeBSD$
-.\"
-.Dd January 16, 2011
-.Dt NVE 4
-.Os
-.Sh NAME
-.Nm nve
-.Nd "NVIDIA nForce MCP Networking Adapter device driver"
-.Sh SYNOPSIS
-To compile this driver into the kernel,
-place the following lines in your
-kernel configuration file:
-.Bd -ragged -offset indent
-.Cd "device miibus"
-.Cd "device nve"
-.Ed
-.Pp
-Alternatively, to load the driver as a
-module at boot time, place the following line in
-.Xr loader.conf 5 :
-.Bd -literal -offset indent
-if_nve_load="YES"
-.Ed
-.Sh DESCRIPTION
-The
-.Nm
-driver provides support for the NVIDIA nForce MCP and nForce2 MCP2
-networking adapter that is embedded in the southbridge of most
-nForce and nForce2 motherboards.
-.Pp
-This driver is a reimplementation of the NVIDIA supported Linux
-.Nm nvnet
-driver and uses the same closed source API library to access
-the underlying hardware.
-There is currently no programming documentation available for this
-device, and therefore little is known about the internal architecture
-of the MAC engine itself.
-.Pp
-The
-.Nm
-driver supports the following media types:
-.Bl -tag -width ".Cm 10baseT/UTP"
-.It Cm autoselect
-Enable autoselection of the media type and options.
-.It Cm 10baseT/UTP
-Set 10Mbps operation.
-.It Cm 100baseTX
-Set 100Mbps (Fast Ethernet) operation.
-.It Cm 1000baseTX
-Set 1000Mbps (Gigabit Ethernet) operation.
-.El
-.Pp
-The
-.Nm
-driver supports the following media options:
-.Bl -tag -width ".Cm 10baseT/UTP"
-.It Cm full-duplex
-Set full duplex operation.
-.El
-.Pp
-For more information on configuring this device, see
-.Xr ifconfig 8 .
-.Sh HARDWARE
-The
-.Nm
-driver supports the NVIDIA MCP onboard adapters of mainboards with
-the following chipsets:
-.Pp
-.Bl -bullet -compact
-.It
-nForce
-.It
-nForce2
-.It
-nForce3
-.It
-nForce4
-.El
-.Sh DIAGNOSTICS
-.Bl -diag
-.It "nve%d: couldn't map memory"
-A fatal initialization error has occurred.
-.It "nve%d: couldn't map interrupt"
-A fatal initialization error has occurred.
-.It "nve%d: failed to allocate memory"
-There are not enough mbufs available for allocation.
-.It "nve%d: device timeout"
-The device has stopped responding to the network, or there is a problem with
-the network connection (cable).
-.El
-.Sh SEE ALSO
-.Xr altq 4 ,
-.Xr arp 4 ,
-.Xr miibus 4 ,
-.Xr netintro 4 ,
-.Xr ng_ether 4 ,
-.Xr rgephy 4 ,
-.Xr ifconfig 8
-.Sh HISTORY
-The
-.Nm
-driver first appeared in
-.Fx 6.0 .
-.Sh AUTHORS
-.An -nosplit
-The
-.Nm
-driver was written by
-.An Quinton Dolan Aq q@onthenet.com.au
-and
-.An "David E. O'Brien" Aq obrien@FreeBSD.org .
-.Sh BUGS
-There are reports that when the card is in auto select mode,
-ifconfig output reports a 10baseT/UTP output while the LEDs and
-bandwidth show that the card is actually in 100baseTX mode.
diff --git a/share/man/man4/nvme.4 b/share/man/man4/nvme.4
index 0e8527366ee1..cb95aafb64a3 100644
--- a/share/man/man4/nvme.4
+++ b/share/man/man4/nvme.4
@@ -1,5 +1,5 @@
.\"
-.\" Copyright (c) 2012-2013 Intel Corporation
+.\" Copyright (c) 2012-2014 Intel Corporation
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
@@ -33,7 +33,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd July 9, 2013
+.Dd March 18, 2014
.Dt NVME 4
.Os
.Sh NAME
@@ -54,7 +54,8 @@ nvme_load="YES"
.Pp
Most users will also want to enable
.Xr nvd 4
-to surface NVM Express namespaces as disk devices.
+to surface NVM Express namespaces as disk devices which can be
+partitioned.
Note that in NVM Express terms, a namespace is roughly equivalent to a
SCSI LUN.
.Sh DESCRIPTION
@@ -73,9 +74,15 @@ API for registering NVMe namespace consumers such as
API for submitting NVM commands to namespaces
.It
Ioctls for controller and namespace configuration and management
+.El
+.Pp
+The
.Nm
-creates controller devices in the format /dev/nvmeX and namespace devices in
-the format /dev/nvmeXnsY.
+driver creates controller device nodes in the format
+.Pa /dev/nvmeX
+and namespace device nodes in
+the format
+.Pa /dev/nvmeXnsY .
Note that the NVM Express specification starts numbering namespaces at 1,
not 0, and this driver follows that convention.
.El
@@ -104,7 +111,8 @@ Note that use of INTx implies disabling of per-CPU I/O queue pairs.
The following controller-level sysctls are currently implemented:
.Bl -tag -width indent
.It Va dev.nvme.0.int_coal_time
-(R/W) Interrupt coalescing timer period in microseconds. Set to 0 to disable.
+(R/W) Interrupt coalescing timer period in microseconds.
+Set to 0 to disable.
.It Va dev.nvme.0.int_coal_threshold
(R/W) Interrupt coalescing threshold in number of command completions.
Set to 0 to disable.
@@ -146,12 +154,12 @@ and completion queues to the console.
.Xr nvd 4 ,
.Xr pci 4 ,
.Xr nvmecontrol 8 ,
-.Xr disk 9 .
+.Xr disk 9
.Sh HISTORY
The
.Nm
driver first appeared in
-.Fx 9.2.
+.Fx 9.2 .
.Sh AUTHORS
.An -nosplit
The
diff --git a/share/man/man4/pf.4 b/share/man/man4/pf.4
index f290a9b6d268..b7b504d45e10 100644
--- a/share/man/man4/pf.4
+++ b/share/man/man4/pf.4
@@ -28,7 +28,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd September 18 2012
+.Dd November 14, 2013
.Dt PF 4
.Os
.Sh NAME
@@ -1181,5 +1181,8 @@ packet filtering mechanism first appeared in
and then
.Fx 5.2 .
.Pp
-This implementation matches
+This implementation is derived from
.Ox 4.5 .
+It has been heavily modified to be capable of running in multithreaded
+.Fx
+kernel and scale its performance on multiple CPUs.
diff --git a/share/man/man4/procdesc.4 b/share/man/man4/procdesc.4
index 9bd310200c20..e6895b0d68ee 100644
--- a/share/man/man4/procdesc.4
+++ b/share/man/man4/procdesc.4
@@ -35,8 +35,6 @@
.Sh NAME
.Nm procdesc
.Nd process descriptor facility
-.Sh SYNOPSIS
-.Cd "options PROCDESC"
.Sh DESCRIPTION
.Nm
is a file-descriptor-oriented interface to process signalling and control,
@@ -64,11 +62,11 @@ Given a process descriptor, it is possible to query its conventional PID using
.Sh SEE ALSO
.Xr fork 2 ,
.Xr kill 2 ,
-.Xr wait4 2 ,
.Xr pdfork 2 ,
.Xr pdgetpid 2 ,
.Xr pdkill 2 ,
.Xr pdwait4 2 ,
+.Xr wait4 2 ,
.Xr capsicum 4
.Sh HISTORY
.Nm
diff --git a/share/man/man4/pts.4 b/share/man/man4/pts.4
index 3faab8bbe5ee..e9aaaaa052fd 100644
--- a/share/man/man4/pts.4
+++ b/share/man/man4/pts.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/random.4 b/share/man/man4/random.4
index 5e73bc0aa6b0..a87a2ed7bbcb 100644
--- a/share/man/man4/random.4
+++ b/share/man/man4/random.4
@@ -1,4 +1,4 @@
-.\" Copyright (c) 2001 Mark R V Murray. All rights reserved.
+.\" Copyright (c) 2001-2013 Mark R V Murray. All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
@@ -23,7 +23,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd August 7, 2013
+.Dd October 12, 2013
.Dt RANDOM 4
.Os
.Sh NAME
@@ -43,35 +43,48 @@ The device will probe for
certain hardware entropy sources,
and use these in preference to the fallback,
which is a generator implemented in software.
-If the kernel environment MIB's
-.Va hw.nehemiah_rng_enable
-or
-.Va hw.ivy_rng_enable
-are set to
-.Dq Li 0 ,
-the associated hardware entropy source will be ignored.
.Pp
-If the device is using
-the software generator,
-writing data to
-.Nm
-would perturb the internal state.
-This perturbation of the internal state
-is the only userland method of introducing
-extra entropy into the device.
-If the writer has superuser privilege,
-then closing the device after writing
-will make the software generator reseed itself.
-This can be used for extra security,
-as it immediately introduces any/all new entropy
-into the PRNG.
-The hardware generators will generate
-sufficient quantities of entropy,
-and will therefore ignore user-supplied input.
-The software
+The software generator will start in an
+.Em unseeded
+state, and will block reads until
+it is (re)seeded.
+This may cause trouble at system boot
+when keys and the like
+are generated from
+/dev/random
+so steps should be taken to ensure a
+reseed as soon as possible.
+The
+.Xr sysctl 8
+controlling the
+.Em seeded
+status (see below) may be used
+if security is not an issue
+or for convenience
+during setup or development.
+.Pp
+This initial seeding
+of random number generators
+is a bootstrapping problem
+that needs very careful attention.
+In some cases,
+it may be difficult
+to find enough randomness
+to seed a random number generator
+until a system is fully operational,
+but the system requires random numbers
+to become fully operational.
+It is (or more accurately should be)
+critically important that the
.Nm
-device may be controlled with
-.Xr sysctl 8 .
+device is seeded
+before the first time it is used.
+In the case where a dummy or "blocking-only"
+device is used,
+it is the responsibility
+of the system architect
+to ensure that no blocking reads
+hold up critical processes.
.Pp
To see the current settings of the software
.Nm
@@ -81,22 +94,20 @@ device, use the command line:
.Pp
which results in something like:
.Bd -literal -offset indent
-kern.random.adaptors: yarrow
+kern.random.adaptors: yarrow,dummy
+kern.random.active_adaptor: yarrow
+kern.random.yarrow.gengateinterval: 10
+kern.random.yarrow.bins: 10
+kern.random.yarrow.fastthresh: 96
+kern.random.yarrow.slowthresh: 128
+kern.random.yarrow.slowoverthresh: 2
kern.random.sys.seeded: 1
kern.random.sys.harvest.ethernet: 1
kern.random.sys.harvest.point_to_point: 1
kern.random.sys.harvest.interrupt: 1
-kern.random.sys.harvest.swi: 0
-kern.random.yarrow.gengateinterval: 10
-kern.random.yarrow.bins: 10
-kern.random.yarrow.fastthresh: 192
-kern.random.yarrow.slowthresh: 256
-kern.random.yarrow.slowoverthresh: 2
+kern.random.sys.harvest.swi: 1
.Ed
.Pp
-(These would not be seen if a
-hardware generator is present.)
-.Pp
Other than
.Dl kern.random.adaptors
all settings are read/write.
@@ -107,9 +118,10 @@ variable indicates whether or not the
.Nm
device is in an acceptably secure state
as a result of reseeding.
-If set to 0, the device will block (on read) until the next reseed
-(which can be from an explicit write,
-or as a result of entropy harvesting).
+If set to 0,
+the device will block (on read)
+until the next reseed
+as a result of entropy harvesting.
A reseed will set the value to 1 (non-blocking).
.Pp
The
@@ -276,19 +288,6 @@ the generator produce independent sequences.
However, the guessability or reproducibility of the sequence is unimportant,
unlike the previous cases.
.Pp
-One final consideration for the seeding of random number generators
-is a bootstrapping problem.
-In some cases, it may be difficult to find enough randomness to
-seed a random number generator until a system is fully operational,
-but the system requires random numbers to become fully operational.
-There is no substitute for careful thought here,
-but the
-.Fx
-.Nm
-device,
-which is based on the Yarrow system,
-should be of some help in this area.
-.Pp
.Fx
does also provide the traditional
.Xr rand 3
@@ -325,17 +324,7 @@ and is an implementation of the
.Em Yarrow
algorithm by Bruce Schneier,
.Em et al .
-The only hardware implementations
-currently are for the
-.Tn VIA C3 Nehemiah
-(stepping 3 or greater)
-CPU
-and the
-.Tn Intel
-.Dq Bull Mountain
-.Em RdRand
-instruction and underlying random number generator (RNG).
-More will be added in the future.
+Significant infrastructure work was done by Arthur Mesh.
.Pp
The author gratefully acknowledges
significant assistance from VIA Technologies, Inc.
diff --git a/share/man/man4/rights.4 b/share/man/man4/rights.4
new file mode 100644
index 000000000000..5819677db20b
--- /dev/null
+++ b/share/man/man4/rights.4
@@ -0,0 +1,674 @@
+.\"
+.\" Copyright (c) 2008-2010 Robert N. M. Watson
+.\" Copyright (c) 2012-2013 The FreeBSD Foundation
+.\" All rights reserved.
+.\"
+.\" This software was developed at the University of Cambridge Computer
+.\" Laboratory with support from a grant from Google, Inc.
+.\"
+.\" Portions of this documentation were written by Pawel Jakub Dawidek
+.\" under sponsorship from the FreeBSD Foundation.
+.\"
+.\" 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd September 23, 2013
+.Dt RIGHTS 4
+.Os
+.Sh NAME
+.Nm Capability rights
+.Nd Capsicum capability rights for file descriptors
+.Sh DESCRIPTION
+When a file descriptor is created by a function such as
+.Xr accept 2 ,
+.Xr accept4 2 ,
+.Xr fhopen 2 ,
+.Xr kqueue 2 ,
+.Xr mq_open 2 ,
+.Xr open 2 ,
+.Xr openat 2 ,
+.Xr pdfork 2 ,
+.Xr pipe 2 ,
+.Xr shm_open 2 ,
+.Xr socket 2
+or
+.Xr socketpair 2 ,
+it is assigned all capability rights.
+Those rights can be reduced (but never expanded) by using the
+.Xr cap_rights_limit 2 ,
+.Xr cap_fcntls_limit 2 and
+.Xr cap_ioctls_limit 2
+system calls.
+Once capability rights are reduced, operations on the file descriptor will be
+limited to those permitted by rights.
+.Pp
+The complete list of capability rights is provided below.
+The
+.Vt cap_rights_t
+type is used to store list of capability rights.
+The
+.Xr cap_rights_init 3
+family of functions should be used to manage the structure.
+.Sh RIGHTS
+The following rights may be specified in a rights mask:
+.Bl -tag -width CAP_EXTATTR_DELETE
+.It Dv CAP_ACCEPT
+Permit
+.Xr accept 2
+and
+.Xr accept4 2 .
+.It Dv CAP_ACL_CHECK
+Permit
+.Xr acl_valid_fd_np 3 .
+.It Dv CAP_ACL_DELETE
+Permit
+.Xr acl_delete_fd_np 3 .
+.It Dv CAP_ACL_GET
+Permit
+.Xr acl_get_fd 3
+and
+.Xr acl_get_fd_np 3 .
+.It Dv CAP_ACL_SET
+Permit
+.Xr acl_set_fd 3
+and
+.Xr acl_set_fd_np 3 .
+.It Dv CAP_BIND
+Permit
+.Xr bind 2 .
+Note that sockets can also become bound implicitly as a result of
+.Xr connect 2
+or
+.Xr send 2 ,
+and that socket options set with
+.Xr setsockopt 2
+may also affect binding behavior.
+.It Dv CAP_BINDAT
+Permit
+.Xr bindat 2 .
+This right has to be present on the directory descriptor.
+This right includes the
+.Dv CAP_LOOKUP
+right.
+.It Dv CAP_CHFLAGSAT
+An alias to
+.Dv CAP_FCHFLAGS
+and
+.Dv CAP_LOOKUP .
+.It Dv CAP_CONNECT
+Permit
+.Xr connect 2 ;
+also required for
+.Xr sendto 2
+with a non-NULL destination address.
+.It Dv CAP_CONNECTAT
+Permit
+.Xr connectat 2 .
+This right has to be present on the directory descriptor.
+This right includes the
+.Dv CAP_LOOKUP
+right.
+.It Dv CAP_CREATE
+Permit
+.Xr openat 2
+with the
+.Dv O_CREAT
+flag.
+.It Dv CAP_EVENT
+Permit
+.Xr select 2 ,
+.Xr poll 2 ,
+and
+.Xr kevent 2
+to be used in monitoring the file descriptor for events.
+.It Dv CAP_EXTATTR_DELETE
+Permit
+.Xr extattr_delete_fd 2 .
+.It Dv CAP_EXTATTR_GET
+Permit
+.Xr extattr_get_fd 2 .
+.It Dv CAP_EXTATTR_LIST
+Permit
+.Xr extattr_list_fd 2 .
+.It Dv CAP_EXTATTR_SET
+Permit
+.Xr extattr_set_fd 2 .
+.It Dv CAP_FCHDIR
+Permit
+.Xr fchdir 2 .
+.It Dv CAP_FCHFLAGS
+Permit
+.Xr fchflags 2
+and
+.Xr chflagsat 2
+if the
+.Dv CAP_LOOKUP
+right is also present.
+.It Dv CAP_FCHMOD
+Permit
+.Xr fchmod 2
+and
+.Xr fchmodat 2
+if the
+.Dv CAP_LOOKUP
+right is also present.
+.It Dv CAP_FCHMODAT
+An alias to
+.Dv CAP_FCHMOD
+and
+.Dv CAP_LOOKUP .
+.It Dv CAP_FCHOWN
+Permit
+.Xr fchown 2
+and
+.Xr fchownat 2
+if the
+.Dv CAP_LOOKUP
+right is also present.
+.It Dv CAP_FCHOWNAT
+An alias to
+.Dv CAP_FCHOWN
+and
+.Dv CAP_LOOKUP .
+.It Dv CAP_FCNTL
+Permit
+.Xr fcntl 2 .
+Note that only the
+.Dv F_GETFL ,
+.Dv F_SETFL ,
+.Dv F_GETOWN
+and
+.Dv F_SETOWN
+commands require this capability right.
+Also note that the list of permitted commands can be further limited with the
+.Xr cap_fcntls_limit 2
+system call.
+.It Dv CAP_FEXECVE
+Permit
+.Xr fexecve 2
+and
+.Xr openat 2
+with the
+.Dv O_EXEC
+flag;
+.Dv CAP_READ
+is also be required.
+.It Dv CAP_FLOCK
+Permit
+.Xr flock 2 ,
+.Xr fcntl 2
+(with
+.Dv F_GETLK ,
+.Dv F_SETLK ,
+.Dv F_SETLKW
+or
+.Dv F_SETLK_REMOTE
+flag) and
+.Xr openat 2
+(with
+.Dv O_EXLOCK
+or
+.Dv O_SHLOCK
+flag).
+.It Dv CAP_FPATHCONF
+Permit
+.Xr fpathconf 2 .
+.It Dv CAP_FSCK
+Permit UFS background-fsck operations on the descriptor.
+.It Dv CAP_FSTAT
+Permit
+.Xr fstat 2
+and
+.Xr fstatat 2
+if the
+.Dv CAP_LOOKUP
+right is also present.
+.It Dv CAP_FSTATAT
+An alias to
+.Dv CAP_FSTAT
+and
+.Dv CAP_LOOKUP .
+.It Dv CAP_FSTATFS
+Permit
+.Xr fstatfs 2 .
+.It Dv CAP_FSYNC
+Permit
+.Xr aio_fsync 2 ,
+.Xr fsync 2
+and
+.Xr openat 2
+with
+.Dv O_FSYNC
+or
+.Dv O_SYNC
+flag.
+.It Dv CAP_FTRUNCATE
+Permit
+.Xr ftruncate 2
+and
+.Xr openat 2
+with the
+.Dv O_TRUNC
+flag.
+.It Dv CAP_FUTIMES
+Permit
+.Xr futimes 2
+and
+.Xr futimesat 2
+if the
+.Dv CAP_LOOKUP
+right is also present.
+.It Dv CAP_FUTIMESAT
+An alias to
+.Dv CAP_FUTIMES
+and
+.Dv CAP_LOOKUP .
+.It Dv CAP_GETPEERNAME
+Permit
+.Xr getpeername 2 .
+.It Dv CAP_GETSOCKNAME
+Permit
+.Xr getsockname 2 .
+.It Dv CAP_GETSOCKOPT
+Permit
+.Xr getsockopt 2 .
+.It Dv CAP_IOCTL
+Permit
+.Xr ioctl 2 .
+Be aware that this system call has enormous scope, including potentially
+global scope for some objects.
+The list of permitted ioctl commands can be further limited with the
+.Xr cap_ioctls_limit 2
+system call.
+.It Dv CAP_KQUEUE
+An alias to
+.Dv CAP_KQUEUE_CHANGE
+and
+.Dv CAP_KQUEUE_EVENT .
+.It Dv CAP_KQUEUE_CHANGE
+Permit
+.Xr kevent 2
+on a
+.Xr kqueue 2
+descriptor that modifies list of monitored events (the
+.Fa changelist
+argument is non-NULL).
+.It Dv CAP_KQUEUE_EVENT
+Permit
+.Xr kevent 2
+on a
+.Xr kqueue 2
+descriptor that monitors events (the
+.Fa eventlist
+argument is non-NULL).
+.Dv CAP_EVENT
+is also required on file descriptors that will be monitored using
+.Xr kevent 2 .
+.It Dv CAP_LINKAT
+Permit
+.Xr linkat 2
+and
+.Xr renameat 2
+on the destination directory descriptor.
+This right includes the
+.Dv CAP_LOOKUP
+right.
+.It Dv CAP_LISTEN
+Permit
+.Xr listen 2 ;
+not much use (generally) without
+.Dv CAP_BIND .
+.It Dv CAP_LOOKUP
+Permit the file descriptor to be used as a starting directory for calls such as
+.Xr linkat 2 ,
+.Xr openat 2 ,
+and
+.Xr unlinkat 2 .
+.It Dv CAP_MAC_GET
+Permit
+.Xr mac_get_fd 3 .
+.It Dv CAP_MAC_SET
+Permit
+.Xr mac_set_fd 3 .
+.It Dv CAP_MKDIRAT
+Permit
+.Xr mkdirat 2 .
+This right includes the
+.Dv CAP_LOOKUP
+right.
+.It Dv CAP_MKFIFOAT
+Permit
+.Xr mkfifoat 2 .
+This right includes the
+.Dv CAP_LOOKUP
+right.
+.It Dv CAP_MKNODAT
+Permit
+.Xr mknodat 2 .
+This right includes the
+.Dv CAP_LOOKUP
+right.
+.It Dv CAP_MMAP
+Permit
+.Xr mmap 2
+with the
+.Dv PROT_NONE
+protection.
+.It Dv CAP_MMAP_R
+Permit
+.Xr mmap 2
+with the
+.Dv PROT_READ
+protection.
+This right includes the
+.Dv CAP_READ
+and
+.Dv CAP_SEEK
+rights.
+.It Dv CAP_MMAP_RW
+An alias to
+.Dv CAP_MMAP_R
+and
+.Dv CAP_MMAP_W .
+.It Dv CAP_MMAP_RWX
+An alias to
+.Dv CAP_MMAP_R ,
+.Dv CAP_MMAP_W
+and
+.Dv CAP_MMAP_X .
+.It Dv CAP_MMAP_RX
+An alias to
+.Dv CAP_MMAP_R
+and
+.Dv CAP_MMAP_X .
+.It Dv CAP_MMAP_W
+Permit
+.Xr mmap 2
+with the
+.Dv PROT_WRITE
+protection.
+This right includes the
+.Dv CAP_WRITE
+and
+.Dv CAP_SEEK
+rights.
+.It Dv CAP_MMAP_WX
+An alias to
+.Dv CAP_MMAP_W
+and
+.Dv CAP_MMAP_X .
+.It Dv CAP_MMAP_X
+Permit
+.Xr mmap 2
+with the
+.Dv PROT_EXEC
+protection.
+This right includes the
+.Dv CAP_SEEK
+right.
+.It Dv CAP_PDGETPID
+Permit
+.Xr pdgetpid 2 .
+.It Dv CAP_PDKILL
+Permit
+.Xr pdkill 2 .
+.It Dv CAP_PDWAIT
+Permit
+.Xr pdwait4 2 .
+.It Dv CAP_PEELOFF
+Permit
+.Xr sctp_peeloff 2 .
+.It Dv CAP_PREAD
+An alias to
+.Dv CAP_READ
+and
+.Dv CAP_SEEK .
+.It Dv CAP_PWRITE
+An alias to
+.Dv CAP_SEEK
+and
+.Dv CAP_WRITE .
+.It Dv CAP_READ
+Permit
+.Xr aio_read 2
+.Dv ( CAP_SEEK
+is also required),
+.Xr openat 2
+with the
+.Dv O_RDONLY flag,
+.Xr read 2 ,
+.Xr readv 2 ,
+.Xr recv 2 ,
+.Xr recvfrom 2 ,
+.Xr recvmsg 2 ,
+.Xr pread 2
+.Dv ( CAP_SEEK
+is also required),
+.Xr preadv 2
+.Dv ( CAP_SEEK
+is also required) and related system calls.
+.It Dv CAP_RECV
+An alias to
+.Dv CAP_READ .
+.It Dv CAP_RENAMEAT
+Permit
+.Xr renameat 2 .
+This right is required on the source directory descriptor.
+This right includes the
+.Dv CAP_LOOKUP
+right.
+.It Dv CAP_SEEK
+Permit operations that seek on the file descriptor, such as
+.Xr lseek 2 ,
+but also required for I/O system calls that can read or write at any position
+in the file, such as
+.Xr pread 2
+and
+.Xr pwrite 2 .
+.It Dv CAP_SEM_GETVALUE
+Permit
+.Xr sem_getvalue 3 .
+.It Dv CAP_SEM_POST
+Permit
+.Xr sem_post 3 .
+.It Dv CAP_SEM_WAIT
+Permit
+.Xr sem_wait 3
+and
+.Xr sem_trywait 3 .
+.It Dv CAP_SEND
+An alias to
+.Dv CAP_WRITE .
+.It Dv CAP_SETSOCKOPT
+Permit
+.Xr setsockopt 2 ;
+this controls various aspects of socket behavior and may affect binding,
+connecting, and other behaviors with global scope.
+.It Dv CAP_SHUTDOWN
+Permit explicit
+.Xr shutdown 2 ;
+closing the socket will also generally shut down any connections on it.
+.It Dv CAP_SYMLINKAT
+Permit
+.Xr symlinkat 2 .
+This right includes the
+.Dv CAP_LOOKUP
+right.
+.It Dv CAP_TTYHOOK
+Allow configuration of TTY hooks, such as
+.Xr snp 4 ,
+on the file descriptor.
+.It Dv CAP_UNLINKAT
+Permit
+.Xr unlinkat 2
+and
+.Xr renameat 2 .
+This right is only required for
+.Xr renameat 2
+on the destination directory descriptor if the destination object already
+exists and will be removed by the rename.
+This right includes the
+.Dv CAP_LOOKUP
+right.
+.It Dv CAP_WRITE
+Allow
+.Xr aio_write 2 ,
+.Xr openat 2
+with
+.Dv O_WRONLY
+and
+.Dv O_APPEND
+flags set,
+.Xr send 2 ,
+.Xr sendmsg 2 ,
+.Xr sendto 2 ,
+.Xr write 2 ,
+.Xr writev 2 ,
+.Xr pwrite 2 ,
+.Xr pwritev 2
+and related system calls.
+For
+.Xr sendto 2
+with a non-NULL connection address,
+.Dv CAP_CONNECT
+is also required.
+For
+.Xr openat 2
+with the
+.Dv O_WRONLY
+flag, but without the
+.Dv O_APPEND
+flag,
+.Dv CAP_SEEK
+is also required.
+For
+.Xr aio_write 2 ,
+.Xr pwrite 2
+and
+.Xr pwritev 2
+.Dv CAP_SEEK
+is also required.
+.El
+.Sh SEE ALSO
+.Xr accept 2 ,
+.Xr accept4 2 ,
+.Xr aio_fsync 2 ,
+.Xr aio_read 2 ,
+.Xr aio_write 2 ,
+.Xr bind 2 ,
+.Xr bindat 2 ,
+.Xr cap_enter 2 ,
+.Xr cap_fcntls_limit 2 ,
+.Xr cap_ioctls_limit 2 ,
+.Xr cap_rights_limit 2 ,
+.Xr chflagsat 2 ,
+.Xr connect 2 ,
+.Xr connectat 2 ,
+.Xr extattr_delete_fd 2 ,
+.Xr extattr_get_fd 2 ,
+.Xr extattr_list_fd 2 ,
+.Xr extattr_set_fd 2 ,
+.Xr fchflags 2 ,
+.Xr fchmod 2 ,
+.Xr fchmodat 2 ,
+.Xr fchown 2 ,
+.Xr fchownat 2 ,
+.Xr fcntl 2 ,
+.Xr fexecve 2 ,
+.Xr fhopen 2 ,
+.Xr flock 2 ,
+.Xr fpathconf 2 ,
+.Xr fstat 2 ,
+.Xr fstatat 2 ,
+.Xr fstatfs 2 ,
+.Xr fsync 2 ,
+.Xr ftruncate 2 ,
+.Xr futimes 2 ,
+.Xr getpeername 2 ,
+.Xr getsockname 2 ,
+.Xr getsockopt 2 ,
+.Xr ioctl 2 ,
+.Xr kevent 2 ,
+.Xr kqueue 2 ,
+.Xr linkat 2 ,
+.Xr listen 2 ,
+.Xr mmap 2 ,
+.Xr mq_open 2 ,
+.Xr open 2 ,
+.Xr openat 2 ,
+.Xr pdfork 2 ,
+.Xr pdgetpid 2 ,
+.Xr pdkill 2 ,
+.Xr pdwait4 2 ,
+.Xr pipe 2 ,
+.Xr poll 2 ,
+.Xr pread 2 ,
+.Xr preadv 2 ,
+.Xr pwrite 2 ,
+.Xr pwritev 2 ,
+.Xr read 2 ,
+.Xr readv 2 ,
+.Xr recv 2 ,
+.Xr recvfrom 2 ,
+.Xr recvmsg 2 ,
+.Xr renameat 2 ,
+.Xr sctp_peeloff 2 ,
+.Xr select 2 ,
+.Xr send 2 ,
+.Xr sendmsg 2 ,
+.Xr sendto 2 ,
+.Xr setsockopt 2 ,
+.Xr shm_open 2 ,
+.Xr shutdown 2 ,
+.Xr socket 2 ,
+.Xr socketpair 2 ,
+.Xr symlinkat 2 ,
+.Xr unlinkat 2 ,
+.Xr write 2 ,
+.Xr writev 2 ,
+.Xr acl_delete_fd_np 3 ,
+.Xr acl_get_fd 3 ,
+.Xr acl_get_fd_np 3 ,
+.Xr acl_set_fd 3 ,
+.Xr acl_set_fd_np 3 ,
+.Xr acl_valid_fd_np 3 ,
+.Xr mac_get_fd 3 ,
+.Xr mac_set_fd 3 ,
+.Xr sem_getvalue 3 ,
+.Xr sem_post 3 ,
+.Xr sem_trywait 3 ,
+.Xr sem_wait 3 ,
+.Xr capsicum 4 ,
+.Xr snp 4
+.Sh HISTORY
+Support for capabilities and capabilities mode was developed as part of the
+.Tn TrustedBSD
+Project.
+.Sh AUTHORS
+.An -nosplit
+This manual page was created by
+.An Pawel Jakub Dawidek Aq pawel@dawidek.net
+under sponsorship from the FreeBSD Foundation based on the
+.Xr cap_new 2
+manual page by
+.An "Robert Watson" Aq rwatson@FreeBSD.org .
diff --git a/share/man/man4/route.4 b/share/man/man4/route.4
index b85b41cbe5a1..f20e90dbd75a 100644
--- a/share/man/man4/route.4
+++ b/share/man/man4/route.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
@@ -196,8 +192,6 @@ Messages include:
#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 - unused */
#define RTM_NEWADDR 0xc /* address being added to iface */
#define RTM_DELADDR 0xd /* address being removed from iface */
diff --git a/share/man/man4/run.4 b/share/man/man4/run.4
index 06d9604fe97e..f86a2968653b 100644
--- a/share/man/man4/run.4
+++ b/share/man/man4/run.4
@@ -16,7 +16,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd July 9, 2012
+.Dd January 3, 2014
.Dt RUN 4
.Os
.Sh NAME
@@ -52,7 +52,7 @@ runfw_load="YES"
The
.Nm
driver supports USB 2.0 wireless adapters based on the Ralink RT2700U,
-RT2800U and RT3000U chipsets.
+RT2800U, RT3000U and RT3900E chipsets.
.Pp
The RT2700U chipset consists of two integrated chips, an RT2770 MAC/BBP and
an RT2720 (1T2R) or RT2750 (dual-band 1T2R) radio transceiver.
@@ -64,6 +64,18 @@ The RT3000U is a single-chip solution based on an RT3070 MAC/BBP and
an RT3020 (1T1R), RT3021 (1T2R) or RT3022 (2T2R) single-band radio
transceiver.
.Pp
+The RT3900E is a single-chip USB 2.0 802.11n solution.
+The MAC/Baseband Processor can be an RT3593, RT5390, RT5392 or an RT5592.
+The radio can be an RT3053, RT5370, RT5372 or an RT5572.
+The RT3053 chip operates in the 2GHz and 5GHz spectra and supports up to
+3 transmit paths and 3 receiver paths (3T3R).
+The RT5370 chip operates in the 2GHz spectrum and supports 1 transmit path
+and 1 receiver path (1T1R).
+The RT5372 chip operates in the 2GHz spectrum and supports up to 2 transmit
+paths and 2 receiver paths (2T2R).
+The RT5572 chip operates in the 2GHz and 5GHz spectra and supports up to
+2 transmit paths and 2 receiver paths (2T2R).
+.Pp
These are the modes the
.Nm
driver can operate in:
@@ -113,11 +125,13 @@ driver supports the following wireless adapters:
.It Airlink101 AWLL6090
.It ASUS USB-N11
.It ASUS USB-N13 ver. A1
+.It ASUS USB-N66
.It ASUS WL-160N
.It Belkin F5D8051 ver 3000
.It Belkin F5D8053
.It Belkin F5D8055
.It Belkin F6D4050 ver 1
+.It Belkin F9L1103
.It Buffalo WLI-UC-AG300N
.It Buffalo WLI-UC-G300N
.It Buffalo WLI-UC-G301N
@@ -129,12 +143,15 @@ driver supports the following wireless adapters:
.It Corega CG-WLUSB300AGN
.It Corega CG-WLUSB300GNM
.It D-Link DWA-130 rev B1
-.It D-Link DWA-140 rev B1, B2
+.It D-Link DWA-140 rev B1, B2, B3, \&D1
+.It D-Link DWA-160 rev B2
+.It D-Link DWA-162
.It DrayTek Vigor N61
.It Edimax EW-7711UAn
.It Edimax EW-7711UTn
.It Edimax EW-7717Un
.It Edimax EW-7718Un
+.It Edimax EW-7733UnD
.It Gigabyte GN-WB30N
.It Gigabyte GN-WB31N
.It Gigabyte GN-WB32L
@@ -156,8 +173,11 @@ driver supports the following wireless adapters:
.It SMC SMCWUSBS-N2
.It Sweex LW303
.It Sweex LW313
+.It TP-LINK TL-WDN3200
+.It TP-LINK TL-WN727N v3
.It Unex DNUR-81
.It Unex DNUR-82
+.It ZyXEL NWD2705
.It ZyXEL NWD210N
.It ZyXEL NWD270N
.El
@@ -229,4 +249,4 @@ driver was written by
The
.Nm
driver does not support any of the 802.11n capabilities offered by the
-RT2800 and RT3000 chipsets.
+RT2800, RT3000 and RT3900 chipsets.
diff --git a/share/man/man4/runfw.4 b/share/man/man4/runfw.4
index 6bb86c742273..127a04431361 100644
--- a/share/man/man4/runfw.4
+++ b/share/man/man4/runfw.4
@@ -18,7 +18,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd January 12, 2011
+.Dd November 11, 2013
.Dt RUNFW 4
.Os
.Sh NAME
@@ -43,7 +43,7 @@ runfw_load="YES"
.Ed
.Sh DESCRIPTION
This module provides firmware sets for the Ralink RT2700U,
-RT2800U and RT3000U chip based USB WiFi adapters.
+RT2800U, RT3000U and RT3900E chip based USB WiFi adapters.
Please read Ralink's license, src/sys/contrib/dev/run/LICENSE.
.Sh SEE ALSO
.Xr run 4 ,
diff --git a/share/man/man4/scsi.4 b/share/man/man4/scsi.4
index fa5e05d589b9..868430708eaa 100644
--- a/share/man/man4/scsi.4
+++ b/share/man/man4/scsi.4
@@ -195,7 +195,7 @@ hint.scbus.0.bus="1"
This assigns
.Nm
bus 0 to the bus 1 instance on
-.Em ahc0 .
+.Em ahc1 .
Peripheral drivers can be wired to a specific bus, target, and lun as so:
.Bd -literal -offset indent
hint.da.0.at="scbus0"
diff --git a/share/man/man4/sctp.4 b/share/man/man4/sctp.4
index 8547428a10c8..880e808b5db9 100644
--- a/share/man/man4/sctp.4
+++ b/share/man/man4/sctp.4
@@ -8,11 +8,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/sem.4 b/share/man/man4/sem.4
index 3cc3a499a71f..2767dc72a200 100644
--- a/share/man/man4/sem.4
+++ b/share/man/man4/sem.4
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd May 3, 2011
+.Dd February 7, 2014
.Dt SEM 4
.Os
.Sh NAME
@@ -32,7 +32,7 @@
.Nd POSIX semaphores
.Sh SYNOPSIS
To compile this driver into the kernel,
-place the following lines in your
+place the following line in your
kernel configuration file:
.Bd -ragged -offset indent
.Cd "options P1003_1B_SEMAPHORES"
@@ -45,7 +45,11 @@ module at boot time, place the following line in
sem_load="YES"
.Ed
.Pp
-.Dl "kldload sem"
+To load the driver as a module at run-time, run the following
+command as root:
+.Bd -ragged -offset indent
+kldload sem
+.Ed
.Sh DESCRIPTION
The
.Nm
diff --git a/share/man/man4/sio.4 b/share/man/man4/sio.4
index 07e076d9110a..9987eee6ea0d 100644
--- a/share/man/man4/sio.4
+++ b/share/man/man4/sio.4
@@ -12,11 +12,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/sysmouse.4 b/share/man/man4/sysmouse.4
index 0fee7f357bc6..a02ffaa7d133 100644
--- a/share/man/man4/sysmouse.4
+++ b/share/man/man4/sysmouse.4
@@ -8,9 +8,6 @@
.\" 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 John-Mark Gurney AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
@@ -26,7 +23,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd January 16, 2010
+.Dd March 25, 2014
.Dt SYSMOUSE 4
.Os
.Sh NAME
@@ -471,6 +468,6 @@ driver first appeared in
.An -nosplit
This
manual page was written by
-.An John-Mark Gurney Aq gurney_j@efn.org
+.An John-Mark Gurney Aq jmg@FreeBSD.org
and
.An Kazutaka Yokota Aq yokota@FreeBSD.org .
diff --git a/share/man/man4/tcp.4 b/share/man/man4/tcp.4
index aa2755eca009..a95078fe73fb 100644
--- a/share/man/man4/tcp.4
+++ b/share/man/man4/tcp.4
@@ -15,11 +15,7 @@
.\" 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
+.\" 3. 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.
.\"
@@ -38,7 +34,7 @@
.\" From: @(#)tcp.4 8.1 (Berkeley) 6/5/93
.\" $FreeBSD$
.\"
-.Dd March 7, 2012
+.Dd November 8, 2013
.Dt TCP 4
.Os
.Sh NAME
@@ -48,6 +44,7 @@
.In sys/types.h
.In sys/socket.h
.In netinet/in.h
+.In netinet/tcp.h
.Ft int
.Fn socket AF_INET SOCK_STREAM 0
.Sh DESCRIPTION
@@ -147,7 +144,7 @@ See
.Xr mod_cc 4
for details.
.It Dv TCP_KEEPINIT
-This write-only
+This
.Xr setsockopt 2
option accepts a per-socket timeout argument of
.Vt "u_int"
@@ -160,7 +157,7 @@ in the
.Sx MIB Variables
section further down.
.It Dv TCP_KEEPIDLE
-This write-only
+This
.Xr setsockopt 2
option accepts an argument of
.Vt "u_int"
@@ -176,7 +173,7 @@ in the
.Sx MIB Variables
section further down.
.It Dv TCP_KEEPINTVL
-This write-only
+This
.Xr setsockopt 2
option accepts an argument of
.Vt "u_int"
@@ -191,7 +188,7 @@ in the
.Sx MIB Variables
section further down.
.It Dv TCP_KEEPCNT
-This write-only
+This
.Xr setsockopt 2
option accepts an argument of
.Vt "u_int"
diff --git a/share/man/man4/terasic_mtl.4 b/share/man/man4/terasic_mtl.4
index ae375cd3dd8b..757efd16bfee 100644
--- a/share/man/man4/terasic_mtl.4
+++ b/share/man/man4/terasic_mtl.4
@@ -109,7 +109,6 @@ as part of the DARPA CRASH research programme.
This device driver was written by
.An Robert N. M. Watson .
.Sh BUGS
-.Nm
The
.Xr syscons 4
attachment does not support the hardware cursor feature.
diff --git a/share/man/man4/termios.4 b/share/man/man4/termios.4
index b9148845de0b..6f38cf3b9f91 100644
--- a/share/man/man4/termios.4
+++ b/share/man/man4/termios.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/timecounters.4 b/share/man/man4/timecounters.4
index b6fc85e8fd5f..9abb52284b49 100644
--- a/share/man/man4/timecounters.4
+++ b/share/man/man4/timecounters.4
@@ -24,27 +24,27 @@
.\"
.\" $FreeBSD$
.\"
-.Dd December 20, 2011
+.Dd April 12, 2014
.Dt TIMECOUNTERS 4
.Os
.Sh NAME
.Nm timecounters
.Nd kernel time counters subsystem
.Sh SYNOPSIS
-Kernel uses several types of time-related devices, such as: real time clocks,
+The kernel uses several types of time-related devices, such as: real time clocks,
time counters and event timers.
-Real time clocks responsible for tracking real world time, mostly when system
+Real time clocks are responsible for tracking real world time, mostly when the system
is down.
-Time counters are responsible for tracking purposes, when system is running.
-Event timers are responsible for generating interrupts at specified time or
+Time counters are responsible for tracking purposes, when the system is running.
+Event timers are responsible for generating interrupts at a specified time or
periodically, to run different time-based events.
This page is about the second.
.Sh DESCRIPTION
-Time counters are the lowest level of time tracking in kernel.
+Time counters are the lowest level of time tracking in the kernel.
They provide monotonically increasing timestamps with known width and
update frequency.
-They can overflow, drift, etc and so in raw form used only in very limited
-performance-critical places like process scheduler.
+They can overflow, drift, etc and so in raw form can be used only in very limited
+performance-critical places like the process scheduler.
.Pp
More usable time is created by scaling the values read from the selected
time counter and combining it with some offset, regularly updated by
@@ -54,13 +54,14 @@ on
invocation.
.Pp
Different platforms provide different kinds of timer hardware.
-The goal of the time counters subsystem is to provide unified way to access
+The goal of the time counters subsystem is to provide a unified way to access
that hardware.
.Pp
-Each driver implementing time counters, registers them at the subsystem.
-It is possible to see the list of present time counters, like this, via
+Each driver implementing time counters registers them with the subsystem.
+It is possible to see the list of present time counters, via the
.Va kern.timecounter
-sysctl:
+.Xr sysctl 8
+variable:
.Bd -literal
kern.timecounter.choice: TSC-low(-100) HPET(950) i8254(0) ACPI-fast(900) dummy(-1000000)
kern.timecounter.tc.ACPI-fast.mask: 16777215
@@ -81,7 +82,7 @@ kern.timecounter.tc.TSC-low.frequency: 11458556
kern.timecounter.tc.TSC-low.quality: -100
.Ed
.Pp
-where:
+The output nodes are defined as follows:
.Bl -inset
.It Va kern.timecounter.tc. Ns Ar X Ns Va .mask
is a bitmask, defining valid counter bits,
@@ -90,13 +91,13 @@ is a present counter value,
.It Va kern.timecounter.tc. Ns Ar X Ns Va .frequency
is a counter update frequency,
.It Va kern.timecounter.tc. Ns Ar X Ns Va .quality
-is an integral value, defining how good is this time counter,
-comparing to others.
-Negative value means that this time counter is broken and should not be used.
+is an integral value, defining the quality of this time counter
+compared to others.
+A negative value means this time counter is broken and should not be used.
.El
.Pp
-Time management code of the kernel chooses one time counter from that list.
-Current choice can be read and affected via
+The time management code of the kernel chooses one time counter from that list.
+The current choice can be read and affected via the
.Va kern.timecounter.hardware
tunable/sysctl.
.Sh SEE ALSO
diff --git a/share/man/man4/tty.4 b/share/man/man4/tty.4
index 6e7c8527684f..70e5da2fc85b 100644
--- a/share/man/man4/tty.4
+++ b/share/man/man4/tty.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/u3g.4 b/share/man/man4/u3g.4
index db560441bedc..d83f1575a316 100644
--- a/share/man/man4/u3g.4
+++ b/share/man/man4/u3g.4
@@ -18,7 +18,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 8, 2012
+.Dd November 26, 2013
.Dt U3G 4
.Os
.Sh NAME
@@ -40,6 +40,9 @@ module at boot time, place the following line in
.Bd -literal -offset indent
u3g_load="YES"
.Ed
+.Pp
+If neither of the above is done, the driver will automatically be loaded
+by devd(8) when the device is connected.
.Sh DESCRIPTION
The
.Nm
@@ -98,6 +101,7 @@ and
.Xr ucom 4 ,
.Xr usb 4 ,
.Xr usb_quirk 4 ,
+.Xr devd 8 ,
.Xr usbconfig 8
.Sh HISTORY
The
@@ -117,3 +121,7 @@ driver was written by
and
.An Nick Hibma Aq n_hibma@FreeBSD.org .
Hardware for testing was provided by AnyWi Technologies, Leiden, NL.
+.Sh BUGS
+The automatic mode switch from disk mode to modem mode does not work unless
+the driver is either built into the kernel or loaded before the device is
+connected.
diff --git a/share/man/man4/udp.4 b/share/man/man4/udp.4
index 1092f5a9b24f..2f828bf76a95 100644
--- a/share/man/man4/udp.4
+++ b/share/man/man4/udp.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/udplite.4 b/share/man/man4/udplite.4
new file mode 100644
index 000000000000..37fcf121b4d3
--- /dev/null
+++ b/share/man/man4/udplite.4
@@ -0,0 +1,96 @@
+.\" Copyright (c) 2014, Kevin Lo.
+.\" 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 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd April 7, 2014
+.Dt UDPLITE 4
+.Os
+.Sh NAME
+.Nm udplite
+.Nd Lightweight User Datagram Protocol
+.Sh SYNOPSIS
+.In sys/types.h
+.In sys/socket.h
+.In netinet/udplite.h
+.Ft int
+.Fn socket AF_INET SOCK_STREAM IPPROTO_UDPLITE
+.Sh DESCRIPTION
+The
+.Tn UDP-Lite
+protocol provides a partial checksum which allows
+corrupted packets to be transmitted to the receiving
+application.
+This has advantages for some types of multimedia
+transport that may be able to make use of slightly
+damaged datagrams, rather than having them discarded
+by lower-layer protocols.
+.Pp
+.Tn UDP-Lite
+supports a number of socket options which can be set with
+.Xr setsockopt 2
+and tested with
+.Xr getsockopt 2 :
+.Bl -tag -width ".Dv SCTP_SET_PEER_PRIMARY_ADDR"
+.It Dv UDPLITE_SEND_CSCOV
+This option sets the sender checksum coverage.
+A value of zero indicates that the entire packet
+is covered by the checksum.
+A value of 1 to 7 must be discarded by the receiver.
+.It Dv UDPLITE_RECV_CSCOV
+This option is the receiver-side analogue.
+It is truly optional, i.e. not required to enable traffic
+with partial checksum coverage.
+Its function is that of a traffic filter:
+when enabled, it instructs the kernel to drop
+all packets which have a coverage less than this value.
+.El
+.Sh ERRORS
+A socket operation may fail with one of the following errors returned:
+.Bl -tag -width Er
+.It Bq Er EISCONN
+when trying 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;
+.It Bq Er ENOTCONN
+when trying to send a datagram, but
+no destination address is specified, and the socket has not been
+connected;
+.It Bq Er ENOBUFS
+when the system runs out of memory for
+an internal data structure;
+.It Bq Er EADDRINUSE
+when an attempt
+is made to create a socket with a port which has already been
+allocated;
+.It Bq Er EADDRNOTAVAIL
+when an attempt is made to create a
+socket with a network address for which no network interface
+exists.
+.El
+.Sh SEE ALSO
+.Xr getsockopt 2 ,
+.Xr recv 2 ,
+.Xr send 2 ,
+.Xr socket 2
diff --git a/share/man/man4/uftdi.4 b/share/man/man4/uftdi.4
index db75c68a6201..1045169b7a2d 100644
--- a/share/man/man4/uftdi.4
+++ b/share/man/man4/uftdi.4
@@ -29,12 +29,13 @@
.\"
.\" $FreeBSD$
.\"
-.Dd November 20, 2011
+.Dd March 31, 2014
.Dt UFTDI 4
.Os
.Sh NAME
.Nm uftdi
-.Nd USB support for serial adapters based on the FT8U100AX and FT8U232AM chips
+.Nd USB support for serial adapters based on the FTDI family of USB
+serial adapter chips.
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following lines in your
@@ -54,13 +55,116 @@ uftdi_load="YES"
.Sh DESCRIPTION
The
.Nm
-driver provides support for various serial adapters based on the FTDI
-FT2232C, FT8U100AX and FT8U232AM chips.
+driver provides support for various serial adapters based on the
+following FTDI chips:
+.Pp
+.Bl -bullet -compact
+.It
+FT8U100AX
+.It
+FT8U232AM
+.It
+FT8U232BM
+.It
+FT232R
+.It
+FT2232C
+.It
+FT2232D
+.It
+FT2232H
+.It
+FT4232H
+.It
+FT230X
+.El
.Pp
The device is accessed through the
.Xr ucom 4
driver which makes it behave like a
.Xr tty 4 .
+.Pp
+Many of the supported chips provide additional functionality
+such as bitbang mode and the MPSSE engine for serial bus emulation.
+The
+.Nm
+driver provides access to that functionality with the following
+.Xr ioctl 2
+calls, defined in
+.In dev/usb/uftdiio.h :
+.Bl -tag -width indent
+.It Dv UFTDIIOC_RESET_IO Pq Vt int
+Reset the channel to its default configuration, flush RX and TX FIFOs.
+.It Dv UFTDIIOC_RESET_RX Pq Vt int
+Flush the RX FIFO.
+.It Dv UFTDIIOC_RESET_TX Pq Vt int
+Flush the TX FIFO.
+.It Dv UFTDIIOC_SET_BITMODE Pq Vt "struct uftdi_bitmode"
+Put the channel into the operating mode specified in
+.Va mode ,
+and set the pins indicated by ones in
+.Va iomask
+to output mode.
+The
+.Va mode
+must be one of the
+.Va uftdi_bitmodes
+values.
+.Bd -literal
+enum uftdi_bitmodes
+{
+ UFTDI_BITMODE_ASYNC = 0,
+ UFTDI_BITMODE_MPSSE = 1,
+ UFTDI_BITMODE_SYNC = 2,
+ UFTDI_BITMODE_CPU_EMUL = 3,
+ UFTDI_BITMODE_FAST_SERIAL = 4,
+ UFTDI_BITMODE_CBUS = 5,
+ UFTDI_BITMODE_NONE = 0xff,
+};
+
+struct uftdi_bitmode
+{
+ uint8_t mode;
+ uint8_t iomask;
+};
+.Ed
+.Pp
+Manuals and application notes published by FTDI describe these
+modes in detail.
+To use most of these modes, you first put the channel into
+the desired mode, then you
+.Xr read 2
+and
+.Xr write 2
+data which either reflects pin state or is interpreted
+as MPSSE commands and parameters, depending on the mode.
+.It Dv UFTDIIOC_GET_BITMODE Pq Vt "struct uftdi_bitmode"
+Return the state of the bitbang pins at the time of the call in the
+.Va iomask
+member.
+The
+.Va mode
+member is unused.
+.It Dv UFTDIIOC_SET_ERROR_CHAR Pq Vt int
+Set the character which is inserted into the buffer to mark
+the point of an error such as FIFO overflow.
+.It Dv UFTDIIOC_SET_EVENT_CHAR Pq Vt int
+Set the character which causes a partial FIFO full of data
+to be returned immediately even if the FIFO is not full.
+.It Dv UFTDIIOC_SET_LATENCY Pq Vt int
+Set the amount of time to wait for a full FIFO,
+in milliseconds.
+If more than this much time elapses without receiving a new
+character, any characters in the FIFO are returned.
+.It Dv UFTDIIOC_GET_LATENCY Pq Vt int
+Get the current value of the latency timer.
+.It Dv UFTDIIOC_GET_HWREV Pq Vt int
+Get the hardware revision number.
+This is the
+.Va bcdDevice
+value from the
+.Va usb_device_descriptor .
+.El
.Sh HARDWARE
The
.Nm
diff --git a/share/man/man4/umass.4 b/share/man/man4/umass.4
index 3b6bc1f53640..e57849e200ee 100644
--- a/share/man/man4/umass.4
+++ b/share/man/man4/umass.4
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd October 22, 2009
+.Dd April 19, 2014
.Dt UMASS 4
.Os
.Sh NAME
@@ -60,6 +60,10 @@ and one of
.Xr uhci 4
or
.Xr ohci 4
+or
+.Xr ehci 4
+or
+.Xr xhci 4
must be configured in the kernel.
Additionally, since
.Nm
@@ -236,6 +240,7 @@ when using
.Xr mount 8 .
.Sh SEE ALSO
.Xr ehci 4 ,
+.Xr xhci 4 ,
.Xr ohci 4 ,
.Xr uhci 4 ,
.Xr usb 4 ,
diff --git a/share/man/man4/umoscom.4 b/share/man/man4/umoscom.4
new file mode 100644
index 000000000000..93f5fbd8414d
--- /dev/null
+++ b/share/man/man4/umoscom.4
@@ -0,0 +1,66 @@
+.\"
+.\" Copyright (c) 2014 Hans Petter Selasky
+.\" 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd March 18, 2014
+.Dt UMOSCOM 4
+.Os
+.Sh NAME
+.Nm umoscom
+.Nd USB support for serial adapters based on chips made by MOSCHIP
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device usb"
+.Cd "device ucom"
+.Cd "device umoscom"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+umoscom_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for various serial adapters based on chips from MOSCHIP.
+.Pp
+The device is accessed through the
+.Xr ucom 4
+driver which makes it behave like a
+.Xr tty 4 .
+.Sh SEE ALSO
+.Xr tty 4 ,
+.Xr ucom 4 ,
+.Xr usb 4
+.Sh HISTORY
+The
+.Nm
+driver appeared in OpenBSD and was ported to FreeBSD.
diff --git a/share/man/man4/unix.4 b/share/man/man4/unix.4
index c53cc4267173..173fd0e8ef61 100644
--- a/share/man/man4/unix.4
+++ b/share/man/man4/unix.4
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man4/urndis.4 b/share/man/man4/urndis.4
new file mode 100644
index 000000000000..9d126bd3fc77
--- /dev/null
+++ b/share/man/man4/urndis.4
@@ -0,0 +1,97 @@
+.\" Copyright (c) 2010 Michael Knudsen <mk@openbsd.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:
+.\"
+.\" - Redistributions of source code must retain the above copyright
+.\" notice, this list of conditions and the following disclaimer.
+.\" - 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 HOLDERS 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 HOLDERS 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.
+.\"
+.\" $OpenBSD: urndis.4,v 1.15 2013/07/16 16:05:49 schwarze Exp $
+.\"
+.\" $FreeBSD$
+.\"
+.Dd April 21, 2014
+.Dt URNDIS 4
+.Os
+.Sh NAME
+.Nm urndis
+.Nd USB Remote NDIS Ethernet device
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device ehci"
+.Cd "device uhci"
+.Cd "device ohci"
+.Cd "device xhci"
+.Cd "device usb"
+.Cd "device urndis"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+if_urndis_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides Ethernet access over Remote NDIS (RNDIS),
+allowing mobile devices such as phones and tablets to provide network access.
+It is often referred to as USB tethering,
+and in most cases must be explicitly enabled on the device.
+.Pp
+.Nm
+should work with any USB RNDIS devices,
+such as those commonly found on Android devices.
+It does not support different media types or options.
+For more information on configuring this device, see
+.Xr ifconfig 8 .
+.Sh SEE ALSO
+.Xr arp 4 ,
+.Xr netintro 4 ,
+.Xr usb 4 ,
+.Xr ifconfig 8
+.Sh HISTORY
+The
+.Nm
+device driver first appeared in
+.Ox 4.7 .
+The first
+.Fx
+release to include it was
+.Fx 9.3 .
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm
+driver was written by
+.An Jonathan Armani Aq Mt armani@openbsd.org ,
+.An Michael Knudsen Aq Mt mk@openbsd.org ,
+and
+.An Fabien Romano Aq Mt fabien@openbsd.org .
+It was ported to
+.Fx
+by
+.An Hans Petter Selasky Aq Mt hps@FreeBSD.org .
diff --git a/share/man/man4/urtwn.4 b/share/man/man4/urtwn.4
index aaf667db4709..ec1b612c9771 100644
--- a/share/man/man4/urtwn.4
+++ b/share/man/man4/urtwn.4
@@ -1,6 +1,3 @@
-.\" $OpenBSD: urtwn.4,v 1.20 2013/05/16 10:02:59 sthen Exp $
-.\" $FreeBSD$
-.\"
.\" Copyright (c) 2010 Damien Bergamini <damien.bergamini@free.fr>
.\"
.\" Permission to use, copy, modify, and distribute this software for any
@@ -15,12 +12,14 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.Dd October 6, 2013
+.\" $FreeBSD$
+.\"
+.Dd April 25, 2014
.Dt URTWN 4
.Os
.Sh NAME
.Nm urtwn
-.Nd Realtek RTL8188CU/RTL8192CU USB IEEE 802.11b/g/n wireless network device
+.Nd Realtek RTL8188CU/RTL8188EU/RTL8192CU USB IEEE 802.11b/g/n wireless network device
.Sh SYNOPSIS
To compile this driver into the kernel,
place the following lines in your
@@ -40,15 +39,22 @@ module at boot time, place the following line in
.Bd -literal -offset indent
if_urtwn_load="YES"
.Ed
+.Pp
+In both cases, place the following line in
+.Xr loader.conf 5
+to acknowledge the firmware license (see below):
+.Bd -literal -offset indent
+legal.realtek.license_ack=1
+.Ed
.Sh DESCRIPTION
The
.Nm
driver supports USB 2.0 wireless network devices based on Realtek
-RTL8188CUS, RTL8188CE-VAU, RTL8188RU and RTL8192CU chipsets.
+RTL8188CUS, RTL8188CE-VAU, RTL8188EUS, RTL8188RU and RTL8192CU chipsets.
.Pp
-The RTL8188CUS is a highly integrated 802.11n adapter that combines
-a MAC, a 1T1R capable baseband and an RF in a single chip.
-It operates in the 2GHz spectrum only.
+The RTL8188CUS and RTL8188EUS are highly integrated 802.11n adapter that
+combine a MAC, a 1T1R capable baseband and an RF in a single chip.
+They operate in the 2GHz spectrum only.
The RTL8188RU is a high-power variant of the RTL8188CUS.
The RTL8188CE-VAU is a PCI Express Mini Card adapter that attaches
to the USB interface.
@@ -57,16 +63,35 @@ The RTL8192CU is a highly integrated multiple-in, multiple-out (MIMO)
802.11n adapter that combines a MAC, a 2T2R capable baseband and an
RF in a single chip.
It operates in the 2GHz spectrum only.
+.Pp
+This driver requires the firmware built with the
+.Nm urtwnfw
+module to work.
+For the loaded firmware to be enabled for use the license at
+.Pa /usr/share/doc/legal/realtek
+must be agreed by adding the following line to
+.Xr loader.conf 5 :
+.Pp
+.Dl "legal.realtek.license_ack=1"
+.Sh FILES
+.Bl -tag -width ".Pa /usr/share/doc/legal/realtek" -compact
+.It Pa /usr/share/doc/legal/realtek
+.Nm
+firmware license
+.El
.Sh HARDWARE
The following adapters should work:
.Pp
.Bl -tag -width Ds -offset indent -compact
+.It ASUS USB-N10 NANO
.It Belkin F7D1102 Surf Wireless Micro
.It D-Link DWA-131
.It Edimax EW-7811Un
.It Netgear WNA1000M
.It Realtek RTL8192CU
.It Realtek RTL8188CUS
+.It TP-LINK TL-WN723N v3
+.It TP-LINK TL-WN725N v2
.El
.Sh EXAMPLES
Join an existing BSS network (i.e., connect to an access point):
@@ -97,6 +122,7 @@ The driver will reset the hardware.
This should not happen.
.El
.Sh SEE ALSO
+.Xr urtwnfw 4 ,
.Xr intro 4 ,
.Xr netintro 4 ,
.Xr usb 4 ,
diff --git a/share/man/man4/urtwnfw.4 b/share/man/man4/urtwnfw.4
new file mode 100644
index 000000000000..c25f944f1b5a
--- /dev/null
+++ b/share/man/man4/urtwnfw.4
@@ -0,0 +1,77 @@
+.\" Copyright (c) 2013 Kevin Lo
+.\" 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. 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$
+.\"
+.Dd April 25, 2014
+.Dt URTWNFW 4
+.Os
+.Sh NAME
+.Nm urtwnfw
+.Nd "Firmware Module for Realtek Wireless driver"
+.Sh SYNOPSIS
+To compile this module into the kernel,
+place the following line in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device urtwnfw"
+.Ed
+.Pp
+This will include three firmware images inside the kernel.
+If you want to pick only the firmware image for your network adapter choose one
+of the following:
+.Bd -ragged -offset indent
+.Cd "device urtwn-rtl8192cfwT"
+.Cd "device urtwn-rtl8192cfwU"
+.Cd "device urtwn-rtl8188eufw"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+urtwn-rtl8192cfwT_load="YES"
+urtwn-rtl8192cfwU_load="YES"
+urtwn-rtl8188eufw_load="YES"
+.Ed
+.Sh DESCRIPTION
+This module provides access to firmware sets for the
+Realtek RTL8188CUS, RTL8188CE-VAU, RTL8188EUS, RTL8188RU and RTL8192CU
+chip based USB WiFi adapters.
+It may be
+statically linked into the kernel, or loaded as a module.
+.Pp
+For the loaded firmware to be enabled for use the license at
+.Pa /usr/share/doc/legal/realtek
+must be agreed to by adding the following line to
+.Xr loader.conf 5 :
+.Pp
+.Dl "legal.realtek.license_ack=1"
+.Sh FILES
+.Bl -tag -width ".Pa /usr/share/doc/legal/realtek" -compact
+.It Pa /usr/share/doc/legal/realtek
+.Nm
+firmware license
+.El
+.Sh SEE ALSO
+.Xr urtwn 4 ,
+.Xr firmware 9
diff --git a/share/man/man4/usb.4 b/share/man/man4/usb.4
index d3a236fa13a8..f64d8b8c8108 100644
--- a/share/man/man4/usb.4
+++ b/share/man/man4/usb.4
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd May 20, 2009
+.Dd November 26, 2013
.Dt USB 4
.Os
.Sh NAME
@@ -147,6 +147,7 @@ specifications can be found at:
.Xr usbdi 4 ,
.Xr aue 4 ,
.Xr axe 4 ,
+.Xr axge 4 ,
.Xr cue 4 ,
.Xr ehci 4 ,
.Xr kue 4 ,
diff --git a/share/man/man4/usb_quirk.4 b/share/man/man4/usb_quirk.4
index a4c1c9b97577..eb45eaa6e08a 100644
--- a/share/man/man4/usb_quirk.4
+++ b/share/man/man4/usb_quirk.4
@@ -49,13 +49,13 @@ swap left and right channels
.It UQ_AU_INP_ASYNC
input is async despite claim of adaptive
.It UQ_AU_NO_FRAC
-don't adjust for fractional samples
+do not adjust for fractional samples
.It UQ_AU_NO_XU
audio device has broken extension unit
.It UQ_BAD_ADC
bad audio spec version number
.It UQ_BAD_AUDIO
-device claims audio class, but isn't
+device claims audio class, but is not
.It UQ_BROKEN_BIDIR
printer has broken bidir mode
.It UQ_BUS_POWERED
@@ -69,7 +69,7 @@ device should set the boot protocol
.It UQ_UMS_IGNORE
device should be ignored by ums class
.It UQ_MS_BAD_CLASS
-doesn't identify properly
+does not identify properly
.It UQ_MS_LEADING_BYTE
mouse sends an unknown leading byte
.It UQ_MS_REVZ
@@ -150,27 +150,28 @@ ejects after Huawei USB command
ejects after Sierra USB command
.It UQ_MSC_EJECT_SCSIEJECT
ejects after SCSI eject command
-0x1b0000000200
+.Dv 0x1b0000000200
.It UQ_MSC_EJECT_REZERO
ejects after SCSI rezero command
-0x010000000000
+.Dv 0x010000000000
.It UQ_MSC_EJECT_ZTESTOR
ejects after ZTE SCSI command
-0x850101011801010101010000
+.Dv 0x850101011801010101010000
.It UQ_MSC_EJECT_CMOTECH
ejects after C-motech SCSI command
-0xff52444556434847
+.Dv 0xff52444556434847
.It UQ_MSC_EJECT_WAIT
wait for the device to eject
.It UQ_MSC_EJECT_SAEL_M460
ejects after Sael USB commands
.It UQ_MSC_EJECT_HUAWEISCSI
ejects after Huawei SCSI command
-0x11060000000000000000000000000000
+.Dv 0x11060000000000000000000000000000
.It UQ_MSC_EJECT_TCT
ejects after TCT SCSI command
-0x06f504025270
+.Dv 0x06f504025270
.El
+.Pp
See
.Pa /sys/dev/usb/quirk/usb_quirk.h
for the complete list of supported quirks.
diff --git a/share/man/man4/usb2_template.4 b/share/man/man4/usb_template.4
index 92abef38fcd1..331ece97a3de 100644
--- a/share/man/man4/usb2_template.4
+++ b/share/man/man4/usb_template.4
@@ -23,14 +23,14 @@
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
-.Dd September 21, 2008
-.Dt USB2_TEMPLATE 4
+.Dd March 18, 2014
+.Dt USB_TEMPLATE 4
.Os
.
.Sh NAME
.
.
-.Nm usb2_template
+.Nm usb_template
.
.Nd "USB templates"
.
@@ -39,13 +39,13 @@
To compile this module into the kernel, place the following line in
your kernel configuration file:
.Bd -ragged -offset indent
-.Cd "device usb2_template"
+.Cd "device usb_template"
.Ed
.Pp
To load the module at boot time, place the following line in
.Xr loader.conf 5 :
.Bd -literal -offset indent
-usb2_template_load="YES"
+usb_template_load="YES"
.Ed
.
.Sh DESCRIPTION
@@ -62,21 +62,20 @@ descriptors.
The USB template module currently has templates for USB Mass Storage,
USB CDC Ethernet and Message Transfer Protocol.
.
-USB templates are currently selected using the "hw.usb2.template"
+USB templates are currently selected using the "hw.usb.template"
sysctl.
.
-The "hw.usb2.template" value can be changed at any time, but will not
+The "hw.usb.template" value can be changed at any time, but will not
have any effect until the USB device has been re-enumerated.
.
.
.
.Sh SEE ALSO
-.Xr usb2_controller 4
-.Xr usb2_core 4
+.Xr usb 4
.Sh STANDARDS
The
.Nm
-module complies with the USB 2.0 standard.
+module complies to the USB 1.0, 2.0 and 3.0 standard.
.Sh HISTORY
The
.Nm
diff --git a/share/man/man4/usfs.4 b/share/man/man4/usfs.4
new file mode 100644
index 000000000000..215d31e8cff9
--- /dev/null
+++ b/share/man/man4/usfs.4
@@ -0,0 +1,62 @@
+.\"
+.\" Copyright (c) 2014 Hans Petter Selasky
+.\" 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd March 18, 2014
+.Dt USFS 4
+.Os
+.Sh NAME
+.Nm usfs
+.Nd USB device side support for bulk only transport mass storage
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device usb"
+.Cd "device usfs"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+usfs_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for emulating an USB mass storage device when
+the USB stack is activated in USB device side mode.
+.Pp
+Upon attach the driver creates a RAM disk which can be read and written.
+.Sh SEE ALSO
+.Xr umass 4
+.Xr usb 4
+.Sh HISTORY
+The
+.Nm
+driver appeared in FreeBSD 8.
diff --git a/share/man/man4/virtio_random.4 b/share/man/man4/virtio_random.4
new file mode 100644
index 000000000000..a20e868d7441
--- /dev/null
+++ b/share/man/man4/virtio_random.4
@@ -0,0 +1,61 @@
+.\" Copyright (c) 2013 Bryan Venteicher
+.\" 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd December 28, 2013
+.Dt VIRTIO_RANDOM 4
+.Os
+.Sh NAME
+.Nm virtio_random
+.Nd VirtIO Entropy driver
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following lines in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device virtio_random"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+virtio_random_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+device driver provides support for VirtIO entropy devices.
+.Pp
+The entropy device supplies high-quality randomness from the
+hypervisor to the guest.
+.Sh SEE ALSO
+.Xr random 4
+.Xr virtio 4
+.Sh HISTORY
+The
+.Nm
+driver was written by
+.An Bryan Venteicher Aq bryanv@FreeBSD.org .
diff --git a/share/man/man4/vlan.4 b/share/man/man4/vlan.4
index e134f440d271..efdae27775e0 100644
--- a/share/man/man4/vlan.4
+++ b/share/man/man4/vlan.4
@@ -176,7 +176,6 @@ These interfaces natively support long frames for
.Xr hme 4 ,
.Xr le 4 ,
.Xr nfe 4 ,
-.Xr nve 4 ,
.Xr rl 4 ,
.Xr sf 4 ,
.Xr sis 4 ,
diff --git a/share/man/man4/vmx.4 b/share/man/man4/vmx.4
index c1dbe8e1eedf..0598aa898a8d 100644
--- a/share/man/man4/vmx.4
+++ b/share/man/man4/vmx.4
@@ -17,7 +17,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd August 4, 2013
+.Dd March 17, 2014
.Dt VMX 4
.Os
.Sh NAME
@@ -81,12 +81,35 @@ VMware Fusion 2.0 and newer
.Pp
For more information on configuring this device, see
.Xr ifconfig 8 .
+.Sh MULTIPLE QUEUES
+The
+.Nm
+driver supports multiple transmit and receive queues.
+Multiple queues are only supported by certain VMware products, such as ESXi.
+The number of queues allocated depends on the presence of MSI-X,
+the number of configured CPUs,
+and the tunables listed below.
+.Fx
+does not enable MSI-X support on VMware by default.
+The
+.Va hw.pci.honor_msi_blacklist
+tunable must be disabled to enable MSI-X support.
.Sh LOADER TUNABLES
Tunables can be set at the
.Xr loader 8
prompt before booting the kernel or stored in
.Xr loader.conf 5 .
.Bl -tag -width indent
+.It Va hw.vmx.txnqueue
+.It Va hw.vmx. Ns Ar X Ns Va .txnqueue
+Maximum number of transmit queues allocated by default by the driver.
+The default value is 8.
+The maximum supported by the VMXNET3 virtual NIC is 8.
+.It Va hw.vmx.rxnqueue
+.It Va hw.vmx. Ns Ar X Ns Va .rxnqueue
+Maximum number of receive queues allocated by default by the driver.
+The default value is 8.
+The maximum supported by the VMXNET3 virtual NIC is 16.
.It Va hw.vmx.txndesc
.It Va hw.vmx. Ns Ar X Ns Va .txndesc
.Pp
diff --git a/share/man/man4/wsp.4 b/share/man/man4/wsp.4
new file mode 100644
index 000000000000..a74097c7486f
--- /dev/null
+++ b/share/man/man4/wsp.4
@@ -0,0 +1,90 @@
+.\" Copyright (c) 2014 Hans Petter Selasky <hselasky at freebsd dot 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 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd February 7, 2014
+.Dt WSP 4
+.Os
+.Sh NAME
+.Nm wsp
+.Nd Wellspring touchpad driver
+.Sh SYNOPSIS
+To compile this driver into the kernel, place the following lines into
+your kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device wsp"
+.Cd "device usb"
+.Ed
+.Pp
+Alternatively, to load the driver as a module at boot time,
+place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+wsp_load="YES"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+driver provides support for the Apple Internal Trackpad
+device found in many Apple laptops.
+.Pp
+The driver simulates a three-button mouse using multi-finger tap
+detection.
+A single-finger press generates a left button click.
+A two-finger tap maps to the right button; whereas a three-finger tap
+gets treated as a middle button click.
+.Pp
+.Nm
+supports dynamic reconfiguration using
+.Xr sysctl 8
+through nodes under
+.Nm hw.usb.wsp .
+Pointer sensitivity can be controlled using the sysctl tunable
+.Nm hw.usb.wsp.scale_factor .
+.Sh FILES
+.Nm
+creates a blocking pseudo-device file,
+.Pa /dev/wsp0 ,
+which presents the mouse as a
+.Em sysmouse
+or
+.Em mousesystems
+type device--see
+.Xr moused 8
+for an explanation of these mouse
+types.
+.Sh SEE ALSO
+.Xr sysmouse 4 ,
+.Xr usb 4 ,
+.Xr loader.conf 5 ,
+.Xr xorg.conf 5 Pq Pa ports/x11/xorg ,
+.Xr moused 8 ,
+.Xr sysctl 8
+.Sh AUTHORS
+.An -nosplit
+The
+.Nm
+driver was written by
+.An Huang Wen Hui Aq huanghwh@gmail.com
diff --git a/share/man/man4/xhci.4 b/share/man/man4/xhci.4
index 09f3185353c5..69e944a9f444 100644
--- a/share/man/man4/xhci.4
+++ b/share/man/man4/xhci.4
@@ -10,17 +10,17 @@
.\" 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.
+.\" 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.
.\"
.\" $FreeBSD$
.\"
diff --git a/share/man/man5/Makefile b/share/man/man5/Makefile
index 6e4aa84375ad..e0bd22247d40 100644
--- a/share/man/man5/Makefile
+++ b/share/man/man5/Makefile
@@ -6,7 +6,6 @@
#MISSING: dump.5 plot.5
MAN= acct.5 \
ar.5 \
- ${_atf_formats.5} \
a.out.5 \
bluetooth.device.conf.5 \
bluetooth.hosts.5 \
@@ -80,12 +79,6 @@ MLINKS+=quota.user.5 quota.group.5
MLINKS+=rc.conf.5 rc.conf.local.5
MLINKS+=resolver.5 resolv.conf.5
-.if ${MK_ATF} != "no"
-ATF= ${.CURDIR}/../../../contrib/atf
-.PATH: ${ATF}/doc
-_atf_formats.5= atf-formats.5
-.endif
-
.if ${MK_FREEBSD_UPDATE} != "no"
MAN+= freebsd-update.conf.5
.endif
diff --git a/share/man/man5/a.out.5 b/share/man/man5/a.out.5
index d6318efdda16..aa4c7da96929 100644
--- a/share/man/man5/a.out.5
+++ b/share/man/man5/a.out.5
@@ -12,11 +12,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/acct.5 b/share/man/man5/acct.5
index 48283a58a6f1..06c72b2af727 100644
--- a/share/man/man5/acct.5
+++ b/share/man/man5/acct.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/core.5 b/share/man/man5/core.5
index e8a165337666..5a827e2993f4 100644
--- a/share/man/man5/core.5
+++ b/share/man/man5/core.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/devfs.5 b/share/man/man5/devfs.5
index 504a0627f428..5ee1621fd1aa 100644
--- a/share/man/man5/devfs.5
+++ b/share/man/man5/devfs.5
@@ -16,11 +16,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/dir.5 b/share/man/man5/dir.5
index c47104344bf8..19dfc56705c2 100644
--- a/share/man/man5/dir.5
+++ b/share/man/man5/dir.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/disktab.5 b/share/man/man5/disktab.5
index d564b87af3b8..fd11e2ba7161 100644
--- a/share/man/man5/disktab.5
+++ b/share/man/man5/disktab.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/fdescfs.5 b/share/man/man5/fdescfs.5
index 9c615817d51a..f7232085895b 100644
--- a/share/man/man5/fdescfs.5
+++ b/share/man/man5/fdescfs.5
@@ -16,11 +16,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/fs.5 b/share/man/man5/fs.5
index 5a5171c21f61..ab8b96d65bb4 100644
--- a/share/man/man5/fs.5
+++ b/share/man/man5/fs.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/fstab.5 b/share/man/man5/fstab.5
index 40994952d032..f6c3ffbbb576 100644
--- a/share/man/man5/fstab.5
+++ b/share/man/man5/fstab.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
@@ -32,7 +28,7 @@
.\" @(#)fstab.5 8.1 (Berkeley) 6/5/93
.\" $FreeBSD$
.\"
-.Dd September 10, 2013
+.Dd April 14, 2014
.Dt FSTAB 5
.Os
.Sh NAME
@@ -245,7 +241,7 @@ devices will cause automatic creation of encrypted devices.
The
.Dq ealgo ,
.Dq aalgo ,
-.Dq keylength ,
+.Dq keylen ,
and
.Dq sectorsize
options may be passed to control those
diff --git a/share/man/man5/group.5 b/share/man/man5/group.5
index 8cf52b886adb..79efa3582530 100644
--- a/share/man/man5/group.5
+++ b/share/man/man5/group.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/hosts.5 b/share/man/man5/hosts.5
index 218a4df37196..8b5dbaf3271c 100644
--- a/share/man/man5/hosts.5
+++ b/share/man/man5/hosts.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
@@ -32,7 +28,7 @@
.\" @(#)hosts.5 8.2 (Berkeley) 12/11/93
.\" $FreeBSD$
.\"
-.Dd December 11, 1993
+.Dd December 25, 2013
.Dt HOSTS 5
.Os
.Sh NAME
@@ -60,9 +56,7 @@ A ``#'' indicates the beginning of
a comment; characters up to the end of the line are
not interpreted by routines which search the file.
.Pp
-When using the name server
-.Xr named 8 ,
-this file provides a backup used when the name server
+This file provides a backup used when the name server
is not running.
For the name server, it is suggested that only a few addresses
be included in this file.
@@ -104,8 +98,7 @@ file resides in
.Sh SEE ALSO
.Xr gethostbyname 3 ,
.Xr nsswitch.conf 5 ,
-.Xr ifconfig 8 ,
-.Xr named 8
+.Xr ifconfig 8
.Rs
.%T "Name Server Operations Guide for BIND"
.Re
diff --git a/share/man/man5/hosts.equiv.5 b/share/man/man5/hosts.equiv.5
index 6bf8e0d1e2c1..cf2fca8cfcfe 100644
--- a/share/man/man5/hosts.equiv.5
+++ b/share/man/man5/hosts.equiv.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
@@ -31,7 +27,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd December 8, 2007
+.Dd December 25, 2013
.Dt HOSTS.EQUIV 5
.Os
.Sh NAME
@@ -139,7 +135,6 @@ except users from netgroup
.Xr ruserok 3 ,
.Xr netgroup 5 ,
.Xr ifconfig 8 ,
-.Xr named 8 ,
.Xr yp 8
.Sh BUGS
This manual page is incomplete.
diff --git a/share/man/man5/hosts.lpd.5 b/share/man/man5/hosts.lpd.5
index 910ac66c5964..740708785e23 100644
--- a/share/man/man5/hosts.lpd.5
+++ b/share/man/man5/hosts.lpd.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/intro.5 b/share/man/man5/intro.5
index 764ba4d2ba21..27912e3b1683 100644
--- a/share/man/man5/intro.5
+++ b/share/man/man5/intro.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/make.conf.5 b/share/man/man5/make.conf.5
index 7430a09164e4..2480b84d857e 100644
--- a/share/man/man5/make.conf.5
+++ b/share/man/man5/make.conf.5
@@ -434,8 +434,11 @@ Set this to run
.Dq Li "${MAKE} clean"
instead of
.Dq Li "${MAKE} cleandir" .
-.It Va NO_MANCOMPRESS
-.Pq Vt bool
+.It Va WITH_MANCOMPRESS
+.Pq Vt defined
+Set to install manual pages compressed.
+.It Va WITHOUT_MANCOMPRESS
+.Pq Vt defined
Set to install manual pages uncompressed.
.It Va NO_SHARE
.Pq Vt bool
diff --git a/share/man/man5/networks.5 b/share/man/man5/networks.5
index 386ee7dd1021..9483439339e9 100644
--- a/share/man/man5/networks.5
+++ b/share/man/man5/networks.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/nsmb.conf.5 b/share/man/man5/nsmb.conf.5
index 30fbecd7cc39..7e48f60ac0ee 100644
--- a/share/man/man5/nsmb.conf.5
+++ b/share/man/man5/nsmb.conf.5
@@ -82,7 +82,7 @@ Possible keywords may include:
.Bl -column ".Va retry_count" ".Sy Section"
.It Sy "Keyword Section Comment"
.It Sy " A B C D"
-.It Va addr Ta "- + - -" Ta "IP or IPX address of SMB server"
+.It Va addr Ta "- + - -" Ta "IP address of SMB server"
.It Va charsets Ta "- + + +" Ta "local:remote charset pair"
.It Va nbns Ta "+ + - -" Ta "address of NetBIOS name server (WINS)"
.It Va nbscope Ta "+ + - -" Ta "NetBIOS scope"
@@ -141,13 +141,6 @@ used on a password:
.Bd -literal -offset indent
smbutil crypt
.Ed
-.Sh COMPATIBILITY
-At the time of this writing, the
-.Tn IPX
-protocol remains unsupported.
-Future
-.Fx
-releases are expected to support this.
.Sh SEE ALSO
.Xr smbutil 1 ,
.Xr mount_smbfs 8
diff --git a/share/man/man5/nsswitch.conf.5 b/share/man/man5/nsswitch.conf.5
index c28720b2f164..80b6cb212fb0 100644
--- a/share/man/man5/nsswitch.conf.5
+++ b/share/man/man5/nsswitch.conf.5
@@ -33,7 +33,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd April 4, 2010
+.Dd December 25, 2013
.Dt NSSWITCH.CONF 5
.Os
.Sh NAME
@@ -362,7 +362,6 @@ databases.
.Xr nscd.conf 5 ,
.Xr resolv.conf 5 ,
.Xr nscd 8 ,
-.Xr named 8 ,
.Xr ypbind 8
.Sh HISTORY
The
diff --git a/share/man/man5/passwd.5 b/share/man/man5/passwd.5
index c49b0f73b01a..fa41c7b657e3 100644
--- a/share/man/man5/passwd.5
+++ b/share/man/man5/passwd.5
@@ -12,11 +12,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/periodic.conf.5 b/share/man/man5/periodic.conf.5
index b773c57d2856..b4629a8dc2c8 100644
--- a/share/man/man5/periodic.conf.5
+++ b/share/man/man5/periodic.conf.5
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd May 30, 2012
+.Dd December 25, 2013
.Dt PERIODIC.CONF 5
.Os
.Sh NAME
@@ -493,17 +493,6 @@ for the previous day.
.Pq Vt num
Set to the number of maillog files that should be checked
for yesterday's mail rejects.
-.It Va daily_status_named_enable
-.Pq Vt bool
-Set to
-.Dq Li YES
-if you want to summarise denied zone transfers (AXFR and IXFR)
-for the previous day.
-.It Va daily_status_named_usedns
-.Pq Vt bool
-Set to
-.Dq Li YES
-if you want to enable reverse DNS lookups.
.It Va daily_status_ntpd
.Pq Vt bool
Set to
diff --git a/share/man/man5/phones.5 b/share/man/man5/phones.5
index 59b491b61eb9..713c88117688 100644
--- a/share/man/man5/phones.5
+++ b/share/man/man5/phones.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/protocols.5 b/share/man/man5/protocols.5
index 37d3541daca0..1ccf0ce2be61 100644
--- a/share/man/man5/protocols.5
+++ b/share/man/man5/protocols.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/rc.conf.5 b/share/man/man5/rc.conf.5
index effbd96af0bd..2dd713bd40b6 100644
--- a/share/man/man5/rc.conf.5
+++ b/share/man/man5/rc.conf.5
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd October 10, 2013
+.Dd February 15, 2014
.Dt RC.CONF 5
.Os
.Sh NAME
@@ -917,6 +917,33 @@ Empty by default.
This variable contains additional flags passed to the
.Xr pflogd 8
program.
+.It Va pflog_instances
+.Pq Vt str
+If logging to more than one
+.Xr pflog 4
+interface is desired,
+.Va pflog_instances
+is set to the list of
+.Xr pflogd 8
+instances that should be started at system boot time. If
+.Va pflog_instances
+is set, for each whitespace-seperated
+.Ar element
+in the list,
+.Ao Ar element Ac Ns Va _dev
+and
+.Ao Ar element Ac Ns Va _logfile
+elements are assumed to exist.
+.Ao Ar element Ac Ns Va _dev
+must contain the
+.Xr pflog 4
+interface to be watched by the named
+.Xr pflogd 8
+instance.
+.Ao Ar element Ac Ns Va _logfile
+must contain the name of the logfile that will be used by the
+.Xr pflogd 8
+instance.
.It Va ftpproxy_enable
.Pq Vt bool
Set to
@@ -935,6 +962,19 @@ Empty by default.
This variable contains additional flags passed to the
.Xr ftp-proxy 8
program.
+.It Va ftpproxy_instances
+.Pq Vt str
+Empty by default. If multiple instances of
+.Xr ftp-proxy 8
+are desired at boot time,
+.Va ftpproxy_instances
+should contain a whitespace-seperated list of instance names. For each
+.Ar element
+in the list, a variable named
+.Ao Ar element Ac Ns Va _flags
+should be defined, containing the command-line flags to be passed to the
+.Xr ftp-proxy 8
+instance.
.It Va pfsync_enable
.Pq Vt bool
Set to
@@ -1676,33 +1716,6 @@ Even if this variable is specified to
.Dq YES ,
.Dq :nosticky
keyword can be used to override it on per interface basis.
-.It Va fec_interfaces
-.Pq Vt str
-Set to the list of
-.Xr ng_fec 4
-Fast EtherChannel interfaces to configure on this host.
-A
-.Va fecconfig_ Ns Aq Ar interface
-variable is assumed to exist for each value of
-.Ar interface .
-The value of this variable is used to configure link aggregated interfaces
-according to the syntax of the
-.Cm NGM_FEC_ADD_IFACE
-to
-.Xr ngctl 8
-msg.
-Additionally, this option ensures that each listed interface is created
-via the
-.Cm mkpeer
-command to
-.Xr ngctl 8
-before attempting to configure it.
-For example:
-.Bd -literal
-fec_interfaces="fec0"
-fecconfig_fec0="em0 em1"
-ifconfig_fec0="DHCP"
-.Ed
.It Va gif_interfaces
.Pq Vt str
This variable is deprecated in favor of
@@ -2048,85 +2061,6 @@ If set to
run the
.Xr unbound 8
daemon as a local caching resolver.
-.It Va named_enable
-.Pq Vt bool
-If set to
-.Dq Li YES ,
-run the
-.Xr named 8
-daemon.
-.It Va named_program
-.Pq Vt str
-Path to
-.Xr named 8
-(default
-.Pa /usr/sbin/named ) .
-.It Va named_conf
-.Pq Vt str
-Path to
-.Xr named 8
-configuration file, (default
-.Pa /etc/namedb/named.conf ) .
-.It Va named_flags
-.Pq Vt str
-If
-.Va named_enable
-is set to
-.Dq Li YES ,
-these are the flags to pass to
-.Xr named 8 .
-.It Va named_uid
-.Pq Vt str
-The user that the
-.Xr named 8
-process should be run as.
-.It Va named_chrootdir
-.Pq Vt str
-The root directory for a name server run in a
-.Xr chroot 8
-environment (default
-.Pa /var/named ) .
-If left empty
-.Xr named 8
-will not be run in a
-.Xr chroot 8
-environment.
-.It Va named_chroot_autoupdate
-.Pq Vt bool
-Set to
-.Dq Li NO
-to disable automatic update of the
-.Xr chroot 8
-environment.
-.It Va named_symlink_enable
-.Pq Vt bool
-Set to
-.Dq Li NO
-to disable symlinking of
-daemon's PID file
-into the
-.Xr chroot 8
-environment.
-.It Va named_wait
-.Pq Vt bool
-Set to have
-.Pa /etc/rc.d/named
-loop until working name service is established.
-.It Va named_wait_host
-.Pq Vt str
-Name of host to lookup for the named_wait option.
-(Default localhost)
-.It Va named_auto_forward
-.Pq Vt bool
-Set to enable automatic creation of a forwarder
-configuration file derived from
-.Pa /etc/resolv.conf .
-.It Va named_auto_forward_only
-.Pq Vt bool
-Set to change the default forwarder configuration from
-.Dq forward first
-to
-.Dq forward only .
.It Va kerberos5_server_enable
.Pq Vt bool
Set to
@@ -2911,27 +2845,6 @@ If
is set to
.Dq Li YES
this is the list of interfaces to use.
-.It Va ipxgateway_enable
-.Pq Vt bool
-If set to
-.Dq Li YES ,
-enable the routing of IPX traffic.
-.It Va ipxrouted_enable
-.Pq Vt bool
-If set to
-.Dq Li YES ,
-run the
-.Xr IPXrouted 8
-daemon at system boot time.
-.It Va ipxrouted_flags
-.Pq Vt str
-If
-.Va ipxrouted_enable
-is set to
-.Dq Li YES ,
-these are the flags to pass to the
-.Xr IPXrouted 8
-daemon.
.It Va arpproxy_all
.Pq Vt bool
If set to
@@ -3675,6 +3588,23 @@ and if
is set to
.Dq Li YES ,
this specifies a list of additional iBCS2 loaders to enable.
+.It Va firstboot_sentinel
+.Pq Vt str
+This variable specifies the full path to a
+.Dq first boot
+sentinel file.
+If a file exists with this path,
+.Pa rc.d
+scripts with the
+.Dq firstboot
+keyword will be run on startup and the sentinel file will be deleted
+after the boot process completes.
+The sentinel file must be located on a writable file system which is
+mounted no later than
+.Va early_late_divider
+to function properly.
+The default is
+.Pa /firstboot .
.It Va linux_enable
.Pq Vt bool
Set to
@@ -3992,9 +3922,7 @@ set from
.Va jail_ Ns Ao Ar jname Ac Ns Va _fstab
.It Li mount
set from
-.Va jail_ Ns Ao Ar jname Ac Ns Va _fdescfs_enable
-or
-.Va jail_ Ns Ao Ar jname Ac Ns Va _procfs_enable.
+.Va jail_ Ns Ao Ar jname Ac Ns Va _procfs_enable .
.It Li exec.fib
set from
.Va jail_ Ns Ao Ar jname Ac Ns Va _fib
@@ -4042,6 +3970,9 @@ set from
.Va jail_ Ns Ao Ar jname Ac Ns Va _devfs_ruleset .
This must be an integer,
not a string.
+.It Li mount.fdescfs
+set from
+.Va jail_ Ns Ao Ar jname Ac Ns Va _fdescfs_enable
.It Li allow.set_hostname
set from
.Va jail_ Ns Ao Ar jname Ac Ns Va _set_hostname_allow
@@ -4477,6 +4408,26 @@ interface if desired.
Defines the total number of seconds to wait for link to become usable,
polled at a 1-second interval.
The default is 30.
+.It Va rctl_enable
+.Pq Vt bool
+Set to
+.Dq Li YES
+to load
+.Xr rctl 8
+rules from the defined ruleset.
+The kernel must be built with
+.Cd "options RACCT"
+and
+.Cd "options RCTL" .
+.It Va rctl_rules
+.Pq Vt str
+Set to
+.Pa /etc/rctl.conf
+by default.
+This variables contains the
+.Xr rctl.conf 5
+ruleset to load for
+.Xr rctl 8 .
.El
.Sh FILES
.Bl -tag -width ".Pa /etc/defaults/rc.conf" -compact
@@ -4510,6 +4461,7 @@ The default is 30.
.Xr fstab 5 ,
.Xr ipf 5 ,
.Xr ipnat 5 ,
+.Xr jail.conf 5 ,
.Xr motd 5 ,
.Xr newsyslog.conf 5 ,
.Xr pf.conf 5 ,
@@ -4541,7 +4493,6 @@ The default is 30.
.Xr mountd 8 ,
.Xr moused 8 ,
.Xr mrouted 8 ,
-.Xr named 8 ,
.Xr newfs 8 ,
.Xr newsyslog 8 ,
.Xr nfsd 8 ,
diff --git a/share/man/man5/remote.5 b/share/man/man5/remote.5
index 1eb9bfc11938..6bb598d64efe 100644
--- a/share/man/man5/remote.5
+++ b/share/man/man5/remote.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/resolver.5 b/share/man/man5/resolver.5
index cbbd34c2ab16..4116f23c9cdc 100644
--- a/share/man/man5/resolver.5
+++ b/share/man/man5/resolver.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
@@ -32,7 +28,7 @@
.\" @(#)resolver.5 8.1 (Berkeley) 6/5/93
.\" $FreeBSD$
.\"
-.Dd September 9, 2004
+.Dd December 25, 2013
.Dt RESOLVER 5
.Os
.Sh NAME
@@ -210,8 +206,7 @@ resides in
.Sh SEE ALSO
.Xr gethostbyname 3 ,
.Xr resolver 3 ,
-.Xr hostname 7 ,
-.Xr named 8
+.Xr hostname 7
.Rs
.%T "Name Server Operations Guide for BIND"
.Re
diff --git a/share/man/man5/services.5 b/share/man/man5/services.5
index d1153d9d525e..6469cfce7a07 100644
--- a/share/man/man5/services.5
+++ b/share/man/man5/services.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/shells.5 b/share/man/man5/shells.5
index 585cc8385dd7..33a217b4b8a9 100644
--- a/share/man/man5/shells.5
+++ b/share/man/man5/shells.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man5/src.conf.5 b/share/man/man5/src.conf.5
index aad4004f5a62..885ffcea2581 100644
--- a/share/man/man5/src.conf.5
+++ b/share/man/man5/src.conf.5
@@ -1,7 +1,7 @@
.\" DO NOT EDIT-- this file is automatically generated.
.\" from FreeBSD: head/tools/build/options/makeman 255964 2013-10-01 07:22:04Z des
.\" $FreeBSD$
-.Dd October 6, 2013
+.Dd April 13, 2014
.Dt SRC.CONF 5
.Os
.Sh NAME
@@ -113,9 +113,6 @@ checks.
Set to not build
.Xr at 1
and related utilities.
-.It Va WITHOUT_ATF
-.\" from FreeBSD: head/tools/build/options/WITHOUT_ATF 241823 2012-10-22 01:18:41Z marcel
-Set to not build programs and libraries related to the ATF testing framework.
.It Va WITHOUT_ATM
.\" from FreeBSD: head/tools/build/options/WITHOUT_ATM 156932 2006-03-21 07:50:50Z ru
Set to not build
@@ -139,13 +136,13 @@ toolchain is enabled.
.\" from FreeBSD: head/tools/build/options/WITHOUT_BLUETOOTH 156932 2006-03-21 07:50:50Z ru
Set to not build Bluetooth related kernel modules, programs and libraries.
.It Va WITHOUT_BMAKE
-.\" from FreeBSD: head/tools/build/options/WITHOUT_BMAKE 250839 2013-05-21 00:41:49Z delphij
+.\" from FreeBSD: head/tools/build/options/WITHOUT_BMAKE 263089 2014-03-12 11:53:35Z jmmv
Set to not build and install the portable BSD make (bmake) as
.Xr make 1
instead of the traditional FreeBSD make.
This build option is temporary.
-It allows developers to switch to bmake in order to work out any remaining
-kinks or issues.
+It allows developers to switch to the traditional FreeBSD make in order to
+work out any remaining kinks or issues.
This option will be removed in due time.
.It Va WITHOUT_BOOT
.\" from FreeBSD: head/tools/build/options/WITHOUT_BOOT 156932 2006-03-21 07:50:50Z ru
@@ -184,6 +181,9 @@ Set to not build
.It Va WITHOUT_CAPSICUM
.\" from FreeBSD: head/tools/build/options/WITHOUT_CAPSICUM 229319 2012-01-02 21:57:58Z rwatson
Set to not build Capsicum support into system programs.
+.It Va WITHOUT_CASPER
+.\" from FreeBSD: head/tools/build/options/WITHOUT_CASPER 258838 2013-12-02 08:21:28Z pjd
+Set to not build Casper program and related libraries.
.It Va WITHOUT_CDDL
.\" from FreeBSD: head/tools/build/options/WITHOUT_CDDL 163861 2006-11-01 09:02:11Z jb
Set to not build code licensed under Sun's CDDL.
@@ -208,17 +208,13 @@ When set, it also enforces the following options:
.Va WITHOUT_CLANG_EXTRAS
.It
.Va WITHOUT_CLANG_FULL
-.It
-.Va WITHOUT_CLANG_IS_CC
-.It
-.Va WITHOUT_LLDB
.El
.It Va WITH_CLANG
.\" from FreeBSD: head/tools/build/options/WITH_CLANG 221730 2011-05-10 11:14:40Z ru
Set to build the Clang C/C++ compiler.
.Pp
It is a default setting on
-amd64/amd64, arm/arm, arm/armv6, i386/i386, pc98/i386, powerpc/powerpc and powerpc/powerpc64.
+amd64/amd64, arm/arm, arm/armv6, arm/armv6hf, i386/i386, pc98/i386, powerpc/powerpc and powerpc/powerpc64.
.It Va WITH_CLANG_EXTRAS
.\" from FreeBSD: head/tools/build/options/WITH_CLANG_EXTRAS 231057 2012-02-05 23:56:22Z dim
Set to build additional clang and llvm tools, such as bugpoint.
@@ -228,7 +224,7 @@ Set to avoid building the ARCMigrate, Rewriter and StaticAnalyzer components of
the Clang C/C++ compiler.
.Pp
It is a default setting on
-arm/arm, arm/armeb, arm/armv6, ia64/ia64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32 and sparc64/sparc64.
+arm/arm, arm/armeb, arm/armv6, arm/armv6hf, ia64/ia64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32 and sparc64/sparc64.
.It Va WITH_CLANG_FULL
.\" from FreeBSD: head/tools/build/options/WITH_CLANG_FULL 246259 2013-02-02 22:28:29Z dim
Set to build the ARCMigrate, Rewriter and StaticAnalyzer components of the
@@ -246,12 +242,6 @@ and
.Pp
It is a default setting on
arm/armeb, ia64/ia64, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, powerpc/powerpc, powerpc/powerpc64 and sparc64/sparc64.
-When set, it also enforces the following options:
-.Pp
-.Bl -item -compact
-.It
-.Va WITHOUT_LLDB
-.El
.It Va WITH_CLANG_IS_CC
.\" from FreeBSD: head/tools/build/options/WITH_CLANG_IS_CC 235342 2012-05-12 16:12:36Z gjb
Set to install the Clang C/C++ compiler as
@@ -261,7 +251,7 @@ and
.Pa /usr/bin/cpp .
.Pp
It is a default setting on
-amd64/amd64, arm/arm, arm/armv6, i386/i386 and pc98/i386.
+amd64/amd64, arm/arm, arm/armv6, arm/armv6hf, i386/i386 and pc98/i386.
.It Va WITHOUT_CPP
.\" from FreeBSD: head/tools/build/options/WITHOUT_CPP 156932 2006-03-21 07:50:50Z ru
Set to not build
@@ -323,11 +313,7 @@ When set, it also enforces the following options:
.It
.Va WITHOUT_CLANG_FULL
.It
-.Va WITHOUT_CLANG_IS_CC
-.It
.Va WITHOUT_GROFF
-.It
-.Va WITHOUT_LLDB
.El
.It Va WITH_DEBUG_FILES
.\" from FreeBSD: head/tools/build/options/WITH_DEBUG_FILES 251512 2013-06-07 21:40:02Z emaste
@@ -340,6 +326,9 @@ and are located automatically by
.It Va WITHOUT_DICT
.\" from FreeBSD: head/tools/build/options/WITHOUT_DICT 156932 2006-03-21 07:50:50Z ru
Set to not build the Webster dictionary files.
+.It Va WITHOUT_DMAGENT
+.\" from FreeBSD: head/tools/build/options/WITHOUT_DMAGENT 262335 2014-02-22 13:05:23Z bapt
+Set to not build dma Mail Transport Agent
.It Va WITHOUT_DYNAMICROOT
.\" from FreeBSD: head/tools/build/options/WITHOUT_DYNAMICROOT 156932 2006-03-21 07:50:50Z ru
Set this if you do not want to link
@@ -360,20 +349,14 @@ Set to avoid installing examples to
.\" from FreeBSD: head/tools/build/options/WITHOUT_FDT 221539 2011-05-06 19:10:27Z ru
Set to not build Flattened Device Tree support as part of the base system.
This includes the device tree compiler (dtc) and libfdt support library.
-.Pp
-It is a default setting on
-amd64/amd64, i386/i386, ia64/ia64, pc98/i386 and sparc64/sparc64.
-.It Va WITH_FDT
-.\" from FreeBSD: head/tools/build/options/WITH_FDT 221730 2011-05-10 11:14:40Z ru
-Set to build Flattened Device Tree support as part of the base system.
-This includes the device tree compiler (dtc) and libfdt support library.
-.Pp
-It is a default setting on
-arm/arm, arm/armeb, arm/armv6, mips/mipsel, mips/mips, mips/mips64el, mips/mips64, mips/mipsn32, powerpc/powerpc and powerpc/powerpc64.
.It Va WITHOUT_FLOPPY
.\" from FreeBSD: head/tools/build/options/WITHOUT_FLOPPY 221540 2011-05-06 19:13:03Z ru
Set to not build or install programs
for operating floppy disk driver.
+.It Va WITHOUT_FMTREE
+.\" from FreeBSD: head/tools/build/options/WITHOUT_FMTREE 261299 2014-01-30 21:37:43Z brooks
+Set to not build and install
+.Pa /usr/sbin/fmtree .
.It Va WITHOUT_FORMAT_EXTENSIONS
.\" from FreeBSD: head/tools/build/options/WITHOUT_FORMAT_EXTENSIONS 250658 2013-05-15 13:04:10Z brooks
Set to not enable
@@ -400,7 +383,7 @@ Set to not build games.
Set to not build and install gcc and g++.
.Pp
It is a default setting on
-amd64/amd64, arm/arm, arm/armv6 and i386/i386.
+amd64/amd64, arm/arm, arm/armv6, arm/armv6hf and i386/i386.
.It Va WITH_GCC
.\" from FreeBSD: head/tools/build/options/WITH_GCC 255326 2013-09-06 20:49:48Z zeising
Set to build and install gcc and g++.
@@ -436,7 +419,7 @@ Do not build the GNU C++ stack (g++, libstdc++).
This is the default on platforms where clang is the system compiler.
.Pp
It is a default setting on
-amd64/amd64, arm/arm, arm/armv6, i386/i386 and pc98/i386.
+amd64/amd64, arm/arm, arm/armv6, arm/armv6hf, i386/i386 and pc98/i386.
.It Va WITH_GNUCXX
.\" from FreeBSD: head/tools/build/options/WITH_GNUCXX 255321 2013-09-06 20:08:03Z theraven
Build the GNU C++ stack (g++, libstdc++).
@@ -455,10 +438,6 @@ Set to not build GPIB bus support.
Set to not build
.Xr gpioctl 8
as part of the base system.
-.It Va WITH_GPL_DTC
-.\" from FreeBSD: head/tools/build/options/WITH_GPL_DTC 246262 2013-02-02 22:42:46Z dim
-Set to build the GPL'd version of the device tree compiler from elinux.org,
-instead of the BSD licensed one.
.It Va WITHOUT_GROFF
.\" from FreeBSD: head/tools/build/options/WITHOUT_GROFF 218941 2011-02-22 08:13:49Z uqs
Set to not build
@@ -479,12 +458,6 @@ Set to not build HTML docs.
.It Va WITHOUT_ICONV
.\" from FreeBSD: head/tools/build/options/WITHOUT_ICONV 254919 2013-08-26 17:15:56Z antoine
Set to not build iconv as part of libc.
-When set, it also enforces the following options:
-.Pp
-.Bl -item -compact
-.It
-.Va WITHOUT_LIBICONV_COMPAT
-.El
.It Va WITHOUT_INET
.\" from FreeBSD: head/tools/build/options/WITHOUT_INET 221266 2011-04-30 17:58:28Z bz
Set to not build programs and libraries related to IPv4 networking.
@@ -537,18 +510,6 @@ Set to not build IP Filter package.
.It Va WITHOUT_IPFW
.\" from FreeBSD: head/tools/build/options/WITHOUT_IPFW 183242 2008-09-21 22:02:26Z sam
Set to not build IPFW tools.
-.It Va WITHOUT_IPX
-.\" from FreeBSD: head/tools/build/options/WITHOUT_IPX 156932 2006-03-21 07:50:50Z ru
-Set to not build programs and libraries related to IPX networking.
-When set, it also enforces the following options:
-.Pp
-.Bl -item -compact
-.It
-.Va WITHOUT_IPX_SUPPORT
-.El
-.It Va WITHOUT_IPX_SUPPORT
-.\" from FreeBSD: head/tools/build/options/WITHOUT_IPX_SUPPORT 156932 2006-03-21 07:50:50Z ru
-Set to build some programs without IPX support.
.It Va WITHOUT_JAIL
.\" from FreeBSD: head/tools/build/options/WITHOUT_JAIL 249966 2013-04-27 04:09:09Z eadler
Set to not build tools for the support of jails; e.g.,
@@ -641,9 +602,6 @@ runtime linker.
.It Va WITHOUT_LIBCPLUSPLUS
.\" from FreeBSD: head/tools/build/options/WITHOUT_LIBCPLUSPLUS 246262 2013-02-02 22:42:46Z dim
Set to avoid building libcxxrt and libc++.
-.It Va WITH_LIBICONV_COMPAT
-.\" from FreeBSD: head/tools/build/options/WITH_LIBICONV_COMPAT 254919 2013-08-26 17:15:56Z antoine
-Set to build libiconv API and link time compatibility.
.It Va WITHOUT_LIBPTHREAD
.\" from FreeBSD: head/tools/build/options/WITHOUT_LIBPTHREAD 188848 2009-02-20 11:09:55Z mtm
Set to not build the
@@ -684,6 +642,9 @@ and related programs.
Set to build
.Xr ls 1
without support for colors to distinguish file types.
+.It Va WITHOUT_LZMA_SUPPORT
+.\" from FreeBSD: head/tools/build/options/WITHOUT_LZMA_SUPPORT 245171 2013-01-08 18:37:12Z obrien
+Set to build some programs without optional lzma compression support.
.It Va WITHOUT_MAIL
.\" from FreeBSD: head/tools/build/options/WITHOUT_MAIL 183242 2008-09-21 22:02:26Z sam
Set to not build any mail support (MUA or MTA).
@@ -691,6 +652,8 @@ When set, it also enforces the following options:
.Pp
.Bl -item -compact
.It
+.Va WITHOUT_DMAGENT
+.It
.Va WITHOUT_MAILWRAPPER
.It
.Va WITHOUT_SENDMAIL
@@ -729,6 +692,11 @@ and related support files.
.It Va WITH_NAND
.\" from FreeBSD: head/tools/build/options/WITH_NAND 235537 2012-05-17 10:11:18Z gber
Set to build the NAND Flash components.
+.It Va WITHOUT_NCURSESW
+.\" from FreeBSD: head/tools/build/options/WITHOUT_NCURSESW 261300 2014-01-30 21:41:25Z brooks
+Set to not build or depend on the
+.Nm libncursesw
+library.
.It Va WITHOUT_NDIS
.\" from FreeBSD: head/tools/build/options/WITHOUT_NDIS 183242 2008-09-21 22:02:26Z sam
Set to not build programs and libraries
@@ -772,16 +740,6 @@ Set to not build NLS catalogs.
.\" from FreeBSD: head/tools/build/options/WITHOUT_NLS_CATALOGS 156932 2006-03-21 07:50:50Z ru
Set to not build NLS catalog support for
.Xr csh 1 .
-.It Va WITH_NMTREE
-.\" from FreeBSD: head/tools/build/options/WITH_NMTREE 245435 2013-01-14 20:38:32Z brooks
-Set to install
-.Xr nmtree 8
-as
-.Xr mtree 8 .
-By default
-.Xr fmtree 8
-is installed as
-.Xr mtree 8 .
.It Va WITHOUT_NS_CACHING
.\" from FreeBSD: head/tools/build/options/WITHOUT_NS_CACHING 172803 2007-10-19 14:01:25Z ru
Set to disable name caching in the
@@ -868,15 +826,10 @@ When set, it also enforces the following options:
.Va WITHOUT_AUTHPF
.El
.It Va WITHOUT_PKGBOOTSTRAP
-.\" from FreeBSD: head/tools/build/options/WITHOUT_PKGBOOTSTRAP 238023 2012-07-02 20:26:11Z marcel
+.\" from FreeBSD: head/tools/build/options/WITHOUT_PKGBOOTSTRAP 258924 2013-12-04 15:58:42Z bdrewery
Set to not build
-.Xr pkg 1
-bootstrap tool
-.It Va WITH_PKGTOOLS
-.\" from FreeBSD: head/tools/build/options/WITH_PKGTOOLS 253305 2013-07-12 23:11:17Z bapt
-Set to build
-.Xr pkg_add 8
-and related programs.
+.Xr pkg 7
+bootstrap tool.
.It Va WITHOUT_PMC
.\" from FreeBSD: head/tools/build/options/WITHOUT_PMC 183242 2008-09-21 22:02:26Z sam
Set to not build
@@ -910,7 +863,7 @@ This includes
.Xr rsh 1 ,
etc.
.It Va WITHOUT_RCS
-.\" from FreeBSD: head/tools/build/options/WITHOUT_RCS 156932 2006-03-21 07:50:50Z ru
+.\" from FreeBSD: head/tools/build/options/WITHOUT_RCS 256198 2013-10-09 17:07:20Z gjb
Set to not build
.Xr rcs 1
and related utilities.
@@ -945,6 +898,10 @@ The set includes
.Xr cc 1 ,
.Xr make 1
and necessary utilities like assembler, linker and library archive manager.
+.It Va WITH_SORT_THREADS
+.\" from FreeBSD: head/tools/build/options/WITH_SORT_THREADS 264158 2014-04-05 18:00:45Z imp
+Set to enable threads in
+.Xr sort 1 .
.It Va WITHOUT_SOURCELESS
.\" from FreeBSD: head/tools/build/options/WITHOUT_SOURCELESS 230972 2012-02-04 00:54:43Z rmh
Set to not build kernel modules that include sourceless code (either microcode or native code for host CPU).
@@ -1000,6 +957,14 @@ Set to not build and install
Set to not build
.Xr telnet 8
and related programs.
+.It Va WITH_TESTS
+.\" from FreeBSD: head/tools/build/options/WITH_TESTS 264408 2014-04-13 11:29:52Z jmmv
+Set to install the
+.Fx
+Test Suite.
+See
+.Xr tests 7
+for more details.
.It Va WITHOUT_TEXTPROC
.\" from FreeBSD: head/tools/build/options/WITHOUT_TEXTPROC 183242 2008-09-21 22:02:26Z sam
Set to not build
@@ -1030,13 +995,9 @@ When set, it also enforces the following options:
.It
.Va WITHOUT_CLANG_FULL
.It
-.Va WITHOUT_CLANG_IS_CC
-.It
.Va WITHOUT_GCC
.It
.Va WITHOUT_GDB
-.It
-.Va WITHOUT_LLDB
.El
.It Va WITHOUT_UNBOUND
.\" from FreeBSD: head/tools/build/options/WITHOUT_UNBOUND 255597 2013-09-15 14:51:23Z des
diff --git a/share/man/man5/stab.5 b/share/man/man5/stab.5
index bc4e680a87b9..683176862f2c 100644
--- a/share/man/man5/stab.5
+++ b/share/man/man5/stab.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man6/intro.6 b/share/man/man6/intro.6
index a7d08c5e9aa5..2abfeda57fb7 100644
--- a/share/man/man6/intro.6
+++ b/share/man/man6/intro.6
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man7/Makefile b/share/man/man7/Makefile
index 8417934b7133..9dcaad92bee8 100644
--- a/share/man/man7/Makefile
+++ b/share/man/man7/Makefile
@@ -27,6 +27,7 @@ MAN= adding_user.7 \
sprog.7 \
stdint.7 \
sticky.7 \
+ tests.7 \
tuning.7
MLINKS= intro.7 miscellaneous.7
@@ -36,17 +37,4 @@ MLINKS+= c99.7 c78.7
MLINKS+= c99.7 c89.7
MLINKS+= c99.7 c90.7
-.if ${MK_ATF} != "no"
-ATF= ${.CURDIR}/../../../contrib/atf
-.PATH: ${ATF}/doc
-MAN+= atf.7
-
-CLEANFILES+= atf.7 atf.7.tmp
-atf.7: atf.7.in
- sed -e 's,__DOCDIR__,${DOCDIR}/atf,g' \
- -e 's,__TESTSDIR__,${TESTSBASE},g' \
- < ${.ALLSRC} > ${.TARGET}.tmp
- mv ${.TARGET}.tmp ${.TARGET}
-.endif
-
.include <bsd.prog.mk>
diff --git a/share/man/man7/adding_user.7 b/share/man/man7/adding_user.7
index 499bd481615e..b0f7e8c1ed89 100644
--- a/share/man/man7/adding_user.7
+++ b/share/man/man7/adding_user.7
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man7/ascii.7 b/share/man/man7/ascii.7
index feba23385c21..a9c75ad9031b 100644
--- a/share/man/man7/ascii.7
+++ b/share/man/man7/ascii.7
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man7/build.7 b/share/man/man7/build.7
index 931b444a74d0..76a2fa6e1adf 100644
--- a/share/man/man7/build.7
+++ b/share/man/man7/build.7
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd October 10, 2012
+.Dd March 27, 2014
.Dt BUILD 7
.Os
.Sh NAME
@@ -411,8 +411,25 @@ then
is set to the value of
.Va KERNFAST .
.It Va LOCAL_DIRS
-If set, this variable supplies a list of additional directories to
-build, relative to the root of the source tree.
+If set, this variable supplies a list of additional directories relative to
+the root of the source tree to build as part of the
+.Cm everything
+target.
+.It Va LOCAL_LIB_DIRS
+If set, this variable supplies a list of additional directories relative to
+the root of the source tree to build as part of the
+.Cm libraries
+target.
+.It Va LOCAL_MTREE
+If set, this variable supplies a list of additional mtrees relative to the
+root of the source tree to use as part of the
+.Cm hierarchy
+target.
+.It Va LOCAL_TOOL_DIRS
+If set, this variable supplies a list of additional directories relative to
+the root of the source tree to build as part of the
+.Cm build-tools
+target.
.It Va PORTS_MODULES
A list of ports with kernel modules that should be built and installed
as part of the
diff --git a/share/man/man7/development.7 b/share/man/man7/development.7
index 58e6892213fd..18b98131fc40 100644
--- a/share/man/man7/development.7
+++ b/share/man/man7/development.7
@@ -454,8 +454,6 @@ This is a good time to also remind you that most of the
.Xr svn 1
operations you do will be done as
.Dq Li root .
-.Pp
-.Xr cron 8 .
.Sh SEE ALSO
.Xr crontab 1 ,
.Xr crontab 5 ,
diff --git a/share/man/man7/environ.7 b/share/man/man7/environ.7
index 2b80987d5aaf..826948838b2c 100644
--- a/share/man/man7/environ.7
+++ b/share/man/man7/environ.7
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man7/hier.7 b/share/man/man7/hier.7
index 328f88d1f9e8..1722ea37b35b 100644
--- a/share/man/man7/hier.7
+++ b/share/man/man7/hier.7
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
@@ -32,7 +28,7 @@
.\" @(#)hier.7 8.1 (Berkeley) 6/5/93
.\" $FreeBSD$
.\"
-.Dd January 21, 2010
+.Dd December 25, 2013
.Dt HIER 7
.Os
.Sh NAME
@@ -104,10 +100,6 @@ Sendmail control files
mtree configuration files;
see
.Xr mtree 8
-.It Pa namedb/
-named configuration files;
-see
-.Xr named 8
.It Pa pam.d/
configuration files for the Pluggable Authentication Modules (PAM)
library
@@ -287,8 +279,6 @@ mail filter API
machine-specific C include files
.It Pa net/
miscellaneous network C include files
-.It Pa netatalk/
-Appletalk protocol
.It Pa netinet/
C include files for Internet standard protocols;
see
@@ -301,8 +291,6 @@ see
kernel key-management service;
see
.Xr ipsec 4
-.It Pa netipx/
-IPX/SPX protocol stacks
.It Pa netnatm/
NATM include files;
see
@@ -387,6 +375,9 @@ a.out backward compatibility libraries
DTrace library scripts
.It Pa engines/
OpenSSL (Cryptography/SSL toolkit) dynamically loadable engines
+.It Pa private/
+Private system libraries not for use by third-party programs.
+ABI and API stability are not guaranteed.
.El
.Pp
.It Pa libdata/
@@ -547,6 +538,16 @@ ASCII text files used by various games
device description file for device name
.It Pa info/
GNU Info hypertext system
+.It Pa keys/
+known trusted and revoked keys.
+.Bl -tag -width ".Pa keys/pkg/" -compact
+.It Pa keys/pkg/
+fingerprints for
+.Xr pkg 7
+and
+.Xr pkg 8
+.El
+.Pp
.It Pa locale/
localization files;
see
@@ -692,6 +693,14 @@ source code for files in
source code for files in
.Pa /usr/sbin
.El
+.Pp
+.It Pa tests/
+The
+.Fx
+test suite.
+See
+.Xr tests 7
+for more details.
.El
.It Pa /var/
multi-purpose log, temporary, transient, and spool files
@@ -720,6 +729,14 @@ directory containing output spool files
.Pp
.It Pa backups/
miscellaneous backup files
+.It Pa cache/
+miscellaneous cached files
+.Bl -tag -width ".Pa pkg/" -compact
+.It Pa pkg/
+cached packages for
+.Xr pkg 8
+.El
+.Pp
.It Pa crash/
default directory to store kernel crash dumps; see
.Xr crash 8
@@ -780,11 +797,6 @@ system information files describing various info about
system since it was booted
.Pp
.Bl -tag -width Fl -compact
-.It Pa named/
-writable by the
-.Dq bind
-user; see
-.Xr named 8
.It Pa ppp/
writable by the
.Dq network
diff --git a/share/man/man7/hostname.7 b/share/man/man7/hostname.7
index 713a8b155525..2068b55b4f68 100644
--- a/share/man/man7/hostname.7
+++ b/share/man/man7/hostname.7
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
@@ -32,7 +28,7 @@
.\" @(#)hostname.7 8.2 (Berkeley) 12/30/93
.\" $FreeBSD$
.\"
-.Dd December 30, 1993
+.Dd December 25, 2013
.Dt HOSTNAME 7
.Os
.Sh NAME
@@ -86,8 +82,7 @@ by a system-wide configuration file (see
.Sh SEE ALSO
.Xr gethostbyname 3 ,
.Xr resolver 5 ,
-.Xr mailaddr 7 ,
-.Xr named 8
+.Xr mailaddr 7
.Sh HISTORY
.Nm Hostname
appeared in
diff --git a/share/man/man7/intro.7 b/share/man/man7/intro.7
index 1d9968c215df..e7ea8ccdb0d7 100644
--- a/share/man/man7/intro.7
+++ b/share/man/man7/intro.7
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man7/mailaddr.7 b/share/man/man7/mailaddr.7
index 772600621c89..5956f3417f53 100644
--- a/share/man/man7/mailaddr.7
+++ b/share/man/man7/mailaddr.7
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man7/operator.7 b/share/man/man7/operator.7
index 0ca8abdcbe2b..1971f2ff7ff0 100644
--- a/share/man/man7/operator.7
+++ b/share/man/man7/operator.7
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man7/release.7 b/share/man/man7/release.7
index b126cd796086..f3f897ec5406 100644
--- a/share/man/man7/release.7
+++ b/share/man/man7/release.7
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd August 14, 2013
+.Dd April 11, 2014
.Dt RELEASE 7
.Os
.Sh NAME
@@ -138,6 +138,11 @@ configuration file supports the following variables:
.Bl -tag -width Ev
.It Va CHROOTDIR
The directory within which the release will be built.
+.It Va CHROOT_MAKEENV
+Additional
+.Xr make 1
+arguments to pass through, which directly affect the
+tuning of the build chroot.
.It Va SVNROOT
The
.Xr svn 1
@@ -241,6 +246,110 @@ will prevent the
distribution package from being created.
Setting this also sets
.Va NODOC .
+.It Va WITH_DVD
+Set to a non-empty value to include the
+.Cm dvdrom
+target.
+.It Va WITH_COMPRESSED_IMAGES
+Set to a non-empty value to compress the release images with
+.Xr xz 1 .
+The original
+.Pq uncompressed
+images are not removed.
+.It Va VCSCMD
+The command run to obtain the source trees.
+Defaults to
+.Qq Cm svn checkout .
+.It Va CHROOTBUILD_SKIP
+If defined, the
+.Li buildworld ,
+.Li installworld ,
+and
+.Li distribution
+stages of the
+.Xr chroot 8
+build environment setup are skipped.
+This is intended solely for cases where the
+.Xr chroot 8
+userland are provided by alternate means.
+.It Va SRC_UPDATE_SKIP
+Set to a non-empty value to prevent checkout or update of
+.Fa /usr/src
+within the
+.Xr chroot 8 .
+This is intended for use only when
+.Fa /usr/src
+is expected to exist by alternative means.
+.It Va DOC_UPDATE_SKIP
+Set to a non-empty value to prevent checkout or update of
+.Fa /usr/doc
+within the
+.Xr chroot 8 .
+This is intended for use only when
+.Fa /usr/doc
+is expected to exist by alternative means.
+.It Va PORTS_UPDATE_SKIP
+Set to a non-empty value to prevent checkout or update of
+.Fa /usr/ports
+within the
+.Xr chroot 8 .
+This is intended for use only when
+.Fa /usr/ports
+is expected to exist by alternative means.
+.El
+.Sh EMBEDDED BUILDS
+The following
+.Fa release.conf
+variables are relevant only to release builds for embedded systems:
+.Bl -tag -width Ev
+.It Va EMBEDDEDBUILD
+Set to a non-null value to enable functionality for embedded device
+release builds.
+.Pq This option is considered highly experimental.
+.Pp
+When set,
+.Va WITH_DVD
+is unset, and
+.Va NODOC
+is defined.
+Additionally,
+.Va XDEV
+and
+.Va XDEV_ARCH
+must also be defined.
+When the build environment is created,
+.Fa release.sh
+runs a separate build script located in an architecture-specific
+directory in
+.Pa src/release/${XDEV}/ .
+.It Va EMBEDDEDPORTS
+Set to the list of any ports that are required for the target device
+in the format of
+.Fa category/port .
+The
+.Fa devel/subversion
+port is built by default.
+.It Va CROCHETSRC
+Set to the source URL for the Crochet build tool.
+.It Va CROCHETBRANCH
+Set to the subversion branch from
+.Va ${CROCHETSRC}
+to use.
+Defaults to
+.Pa trunk .
+.It Va UBOOTSRC
+Set to the source URL of u-boot, if required.
+.It Va UBOOTBRANCH
+Set to the subversion branch from
+.Va ${UBOOTSRC}
+to use.
+Defaults to
+.Pa trunk .
+.It Va UBOOTDIR
+Set to the target directory within
+.Va ${CHROOTDIR}
+to check out
+.Va ${UBOOTSRC}/${UBOOTBRANCH} .
.El
.Sh MAKEFILE TARGETS
The release makefile
@@ -270,6 +379,15 @@ This target produces files called
and
.Pa bootonly.iso
as its output.
+.It Cm dvdrom
+Builds installation DVD-ROM images.
+This may require the
+.Xr md 4
+(memory disk) device driver be present in the kernel
+(either by being compiled in or available as a module).
+This target produces the
+.Pa dvd1.iso
+file as its output.
.It Cm memstick
Builds an installation memory stick image named
.Pa memstick.img .
@@ -279,6 +397,11 @@ Requires that the
.Pq memory disk
device driver be present in the kernel
.Pq either by being compiled in or available as a module .
+.It Cm mini-memstick
+Similar to
+.Cm memstick ,
+with the exception that the installation distribution sets
+are not included.
.It Cm ftp
Creates a directory named
.Pa ftp
@@ -297,7 +420,8 @@ Builds a bootable installation system containing all the distribution files
packaged by the
.Cm packagesystem
target, and suitable for imaging by the
-.Cm cdrom
+.Cm cdrom ,
+.Cm dvdrom
and
.Cm memstick
targets.
diff --git a/share/man/man7/security.7 b/share/man/man7/security.7
index a3882d65bd0d..d51eea2dc689 100644
--- a/share/man/man7/security.7
+++ b/share/man/man7/security.7
@@ -23,7 +23,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 8, 2012
+.Dd December 25, 2013
.Dt SECURITY 7
.Os
.Sh NAME
@@ -350,13 +350,6 @@ now defaults to running
and
.Xr fingerd 8
in a sandbox.
-Another program which may be a candidate for running in a sandbox is
-.Xr named 8 .
-The default
-.Pa rc.conf
-includes the arguments necessary to run
-.Xr named 8
-in a sandbox in a commented-out form.
Depending on whether you
are installing a new system or upgrading an existing system, the special
user accounts used by these sandboxes may not be installed.
@@ -825,8 +818,6 @@ ports A, B, C, D, and M-Z
This
way you can firewall off all of your low ports except for certain specific
services such as
-.Xr named 8
-(if you are primary for a zone),
.Xr talkd 8 ,
.Xr sendmail 8 ,
and other internet-accessible services.
diff --git a/share/man/man7/sticky.7 b/share/man/man7/sticky.7
index 0f066036c47e..28fab62ea4c9 100644
--- a/share/man/man7/sticky.7
+++ b/share/man/man7/sticky.7
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man7/tests.7 b/share/man/man7/tests.7
new file mode 100644
index 000000000000..f7d0611fb94c
--- /dev/null
+++ b/share/man/man7/tests.7
@@ -0,0 +1,234 @@
+.\" $FreeBSD$
+.\" $NetBSD: tests.kyua.7,v 1.2 2013/07/20 21:39:59 wiz Exp $
+.\"
+.\" Copyright (c) 2010 The NetBSD Foundation, 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 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 April 13, 2014
+.Dt TESTS 7
+.Os
+.Sh NAME
+.Nm tests
+.Nd introduction to the FreeBSD Test Suite
+.Sh DESCRIPTION
+The
+.Fx
+Test Suite provides a collection of automated tests for two major purposes.
+On one hand, the test suite aids
+.Em developers
+to detect bugs and regressions when they modify the source tree. On the other
+hand, it allows
+.Em end users
+(and, in particular, system administrators) to verify that fresh installations
+of the
+.Fx
+operating system behave correctly on their hardware platform and also to ensure
+that the system does not suffer from regressions during regular operation and
+maintenance.
+.Pp
+The
+.Fx
+Test Suite can be found in the
+.Pa /usr/tests
+hierarchy.
+.Pp
+This manual page describes how to run the test suite and how to configure
+some of its optional features.
+.Ss Installing the test suite
+The test suite is not yet installed by default as part of
+.Fx ,
+but this is bound to change during the development of
+.Fx 11.0 .
+.Pp
+If the
+.Pa /usr/tests
+directory is missing, then you will have to enable the build of the test
+suite, rebuild your system and install the results.
+You can do so by setting
+.Sq WITH_TESTS=yes
+in your
+.Pa /etc/src.conf
+file (see
+.Xr src.conf 5
+for details)
+and rebuilding the system as described in
+.Xr build 7 .
+.Ss When to run the tests?
+Before diving into the details of how to run the test suite, here are some
+scenarios in which you should run it:
+.Bl -bullet -offset indent
+.It
+After a fresh installation of
+.Fx
+to ensure that the system works correctly on your hardware platform.
+.It
+After an upgrade of
+.Fx
+to a different version to ensure that the new code works well on your
+hardware platform and that the upgrade did not introduce regressions in your
+configuration.
+.It
+After modifying the source tree to detect any new bugs and/or regressions.
+.It
+Periodically, maybe from a
+.Xr cron 8
+job, to ensure that any changes to the system (such as the installation of
+third-party packages or manual modifications to configuration files) do not
+introduce unexpected failures.
+.El
+.Ss Running the tests
+First, you will need to install the
+.Sq devel/kyua
+package from
+.Xr ports 7 .
+Then use the following command to run the whole test suite:
+.Bd -literal -offset indent
+$ kyua test -k /usr/tests/Kyuafile
+.Ed
+.Pp
+The above will iterate through all test programs in
+.Pa /usr/tests
+recursively, execute them, store their results and debugging data in Kyua's
+database (by default in
+.Pa ~/.kyua/store.db ) ,
+and print a summary of the results.
+This summary includes a brief count of all total tests run and how many of
+them failed.
+.Pp
+It is possible to restrict which tests to run by providing their names in
+the command line.
+For example, this would execute the tests for the
+.Xr cp 1
+and
+.Xr cut 1
+utilities:
+.Bd -literal -offset indent
+$ kyua test -k /usr/tests/Kyuafile bin/cp usr.bin/cut
+.Ed
+.Ss Obtaining reports of the tests execution
+Additional information about the test results can be retrieved
+by using Kyua's various reporting commands.
+For example, the following would print a plain-text report of the executed
+tests and show which ones failed:
+.Bd -literal -offset indent
+$ kyua report
+.Ed
+.Pp
+This example would generate an HTML report ready to be published on a
+web server:
+.Bd -literal -offset indent
+$ kyua report-html --output ~/public_html/tests
+.Ed
+.Pp
+For further details on the command-line interface of Kyua, please refer
+to its manual page
+.Xr kyua 1 .
+.Ss Configuring the tests
+Some test cases in the
+.Fx
+Test Suite require manual configuration by the administrator before they can be
+run. Unless certain properties are defined, the tests that require them will
+be skipped.
+.Pp
+Test suites are configured by defining their configuration
+variables in
+.Pa /usr/local/etc/kyua/kyua.conf .
+The format of this file is detailed in
+.Xr kyua.conf 5 .
+.Pp
+The following configuration variables are available in the
+.Fx
+Test Suite:
+.Bl -tag -width "allow_sysctl_side_effects"
+.It allow_devfs_side_effects
+If defined, enables tests that may destroy and recreate semipermanent device
+nodes, like disk devices. Without this variable, tests may still create and
+destroy devices nodes that are normally transient, like /dev/tap* and
+/dev/pts*, as long as they clean them up afterwards. However, tests that
+require this variable have a relaxed cleanup requirement; they must recreate
+any devices that they destroyed, but not necessarily with the same devnames.
+.It allow_sysctl_side_effects
+Enables tests that change globally significant
+.Xr sysctl 8
+variables. The tests will undo any changes in their cleanup phases.
+.It disks
+Must be set to a space delimited list of disk device nodes. Tests that need
+destructive access to disks must use these devices. Tests are not required to
+preserve any data present on these disks.
+.It fibs
+Must be set to a space delimited list of FIBs (routing tables). Tests that
+need to modify a routing table may use any of these. Tests will cleanup any
+new routes that they create.
+.El
+.Ss What to do if something fails?
+If there is
+.Em any failure
+during the execution of the test suite, please consider reporting it to the
+.Fx
+developers so that the failure can be analyzed and fixed.
+To do so, either send a message to the appropriate mailing list or file a
+problem report.
+For more details please refer to:
+.Bl -bullet -offset indent -compact
+.It
+.Lk http://lists.freebsd.org/ "FreeBSD Mailing Lists"
+.It
+.Lk http://www.freebsd.org/send-pr.html "Submit a FreeBSD Problem Report"
+.El
+.Sh FILES
+.Bl -tag -compact -width usrXlocalXetcXkyuaXkyuaXconfXX
+.It Pa /usr/local/etc/kyua/kyua.conf
+System-wide configuration file for
+.Xr kyua 1 .
+.It Pa ~/.kyua/kyua.conf
+User-specific configuration file for
+.Xr kyua 1 ;
+overrides the system file.
+.It Pa ~/.kyua/store.db
+Default result database used by Kyua.
+.It Pa /usr/tests/
+Location of the
+.Fx
+Test Suite.
+.It Pa /usr/tests/Kyuafile
+Top-level test suite definition file.
+.El
+.Sh SEE ALSO
+.Xr kyua 1 ,
+.Xr build 7
+.Sh HISTORY
+The
+.Fx
+Test Suite first appeared in
+.Fx 10.1 .
+.Pp
+The
+.Nm
+manual page first appeared in
+.Nx 6.0
+and was later ported to
+.Fx 10.1 .
+.Sh AUTHORS
+.An Julio Merino Aq Mt jmmv@FreeBSD.org
diff --git a/share/man/man8/Makefile b/share/man/man8/Makefile
index f3de79da4aac..aa1258efff2d 100644
--- a/share/man/man8/Makefile
+++ b/share/man/man8/Makefile
@@ -3,6 +3,7 @@
MAN= crash.8 \
diskless.8 \
+ hv_kvp_daemon.8 \
intro.8 \
nanobsd.8 \
picobsd.8 \
diff --git a/share/man/man8/crash.8 b/share/man/man8/crash.8
index d2904435e08b..3383a75900fe 100644
--- a/share/man/man8/crash.8
+++ b/share/man/man8/crash.8
@@ -14,11 +14,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man8/hv_kvp_daemon.8 b/share/man/man8/hv_kvp_daemon.8
new file mode 100644
index 000000000000..a7171530c647
--- /dev/null
+++ b/share/man/man8/hv_kvp_daemon.8
@@ -0,0 +1,96 @@
+.\" $FreeBSD$
+.\"
+.\" Copyright (c) 2012 Microsoft Corp.
+.\" 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 September 10, 2013
+.Dt HYPER-V 4
+.Os
+.Sh NAME
+.Nm hv_kvp_daemon
+.Nd Hyper-V Key Value Pair Daemon
+.Sh SYNOPSIS
+To compile this driver into the kernel, place the following lines in
+the system kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device hyperv"
+.Ed
+.Sh DESCRIPTION
+The
+.Nm
+daemon provides the ability to store, retrieve, modify and delete
+Key Value pairs for
+.Fx
+guest partitions running on Hyper-V.
+Hyper-V allows administrators to store custom metadata in the form
+of Key Value pairs inside the
+.Fx
+guest partition.
+Administrators can use Windows Powershell scripts to add, read, modify
+and delete such Key Value pairs.
+.Pp
+The
+.Nm
+accepts Key Value pair management requests from the
+.Xr hv_kvp 4
+driver and performs the actual metadata management on the file-system.
+.Pp
+The same daemon and driver combination is also used to set and get
+IP addresses from a
+.Fx
+guest.
+.Pp
+The set functionality is particularly
+useful when the
+.Fx
+guest is assigned a static IP address and is failed
+over from one Hyper-V host to another.
+After failover, Hyper-V uses the set IP functionality to automatically
+update the
+.Fx
+guest's IP address to its original static value.
+.Pp
+On the other hand, the get IP functionality is used to update the guest IP
+address in the Hyper-V management console window.
+.Sh SEE ALSO
+.Xr hv_vmbus 4 ,
+.Xr hv_utils 4 ,
+.Xr hv_netvsc 4 ,
+.Xr hv_storvsc 4 ,
+.Xr hv_ata_pci_disengage 4 ,
+.Xr hv_kvp 4
+.Sh HISTORY
+Support for
+.Nm
+first appeared in
+.Fx 10.0 .
+The daemon was developed through a joint effort between Citrix Incorporated,
+Microsoft Corporation, and Network Appliance Incorporated.
+.Sh AUTHORS
+.An -nosplit
+.Fx
+support for
+.Nm
+was first added by
+.An Microsoft BSD Integration Services Team Aq bsdic@microsoft.com .
diff --git a/share/man/man8/intro.8 b/share/man/man8/intro.8
index 96406937da91..2c3649c4b18e 100644
--- a/share/man/man8/intro.8
+++ b/share/man/man8/intro.8
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man8/rc.8 b/share/man/man8/rc.8
index 32d0adeea2b2..ff0aa844b108 100644
--- a/share/man/man8/rc.8
+++ b/share/man/man8/rc.8
@@ -12,11 +12,7 @@
.\" 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
+.\" 3. 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.
.\"
@@ -35,7 +31,7 @@
.\" @(#)rc.8 8.2 (Berkeley) 12/11/93
.\" $FreeBSD$
.\"
-.Dd September 23, 2013
+.Dd December 25, 2013
.Dt RC 8
.Os
.Sh NAME
@@ -129,6 +125,13 @@ and add
(only allow vnet-enabled jails) to the list of KEYWORDS to skip in
.Xr rcorder 8 .
.It
+If the file
+.Va ${firstboot_sentinel}
+does not exist, add
+.Dq Li firstboot
+to the list of KEYWORDS to skip in
+.Xr rcorder 8 .
+.It
Invoke
.Xr rcorder 8
to order the files in
@@ -156,6 +159,11 @@ Stop processing when the script that is the value of the
.Va $early_late_divider
has been run.
.It
+Check again to see if the file
+.Va ${firstboot_sentinel}
+exists (in case it is located on a newly mounted file system)
+and adjust the list of KEYWORDs to skip appropriately.
+.It
Re-run
.Xr rcorder 8 ,
this time including the scripts in the
@@ -164,6 +172,13 @@ directories.
Ignore everything up to the
.Va $early_late_divider ,
then start executing the scripts as described above.
+.It
+If the file
+.Va ${firstboot_sentinel}
+exists, delete it.
+If the file
+.Va ${firstboot_sentinel}-reboot
+also exists (because it was created by a script), then delete it and reboot.
.El
.Ss Operation of Nm rc.shutdown
.Bl -enum
@@ -223,7 +238,7 @@ network configuration.
.It Pa SERVERS
Ensure basic services
exist for services that start early (such as
-.Pa named ) ,
+.Pa nisdomain ) ,
because they are required by
.Pa DAEMON
below.
diff --git a/share/man/man8/rc.sendmail.8 b/share/man/man8/rc.sendmail.8
index 14a30e4a7371..d8dff43fdbe3 100644
--- a/share/man/man8/rc.sendmail.8
+++ b/share/man/man8/rc.sendmail.8
@@ -26,7 +26,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd March 30, 2002
+.Dd October 19, 2013
.Dt RC.SENDMAIL 8
.Os
.Sh NAME
@@ -119,6 +119,42 @@ The
.Dq Li NONE
option is deprecated and should not be used.
It will be removed in a future release.
+.It Va sendmail_cert_create
+.Pq Vt str
+If
+.Va sendmail_enable
+is set to
+.Dq Li YES ,
+create a signed certificate
+.Pa /etc/mail/certs/host.cert
+representing
+.Pa /etc/mail/certs/host.key
+by the CA certificate in
+.Pa /etc/mail/certs/cacert.pem .
+This will enable connecting hosts to negotiate STARTTLS allowing incoming
+email to be encrypted in transit.
+.Xr sendmail 8
+needs to be configured to use these generated files.
+The default configuration in
+.Pa /etc/mail/freebsd.mc
+has the required options in it.
+.It Va sendmail_cert_cn
+.Pq Vt str
+If
+.Va sendmail_enable
+is set to
+.Dq Li YES
+and
+.Va sendmail_cert_create
+is set to
+.Dq Li YES ,
+this is the Common Name (CN) of the certificate that will be created.
+If
+.Va sendmail_cert_cn
+is not set, the system's hostname will be used.
+If there is no hostname set,
+.Dq Li amnesiac
+will be used.
.It Va sendmail_flags
.Pq Vt str
If
diff --git a/share/man/man9/EVENTHANDLER.9 b/share/man/man9/EVENTHANDLER.9
index d6e75562c9c8..fc22d5e0a6a7 100644
--- a/share/man/man9/EVENTHANDLER.9
+++ b/share/man/man9/EVENTHANDLER.9
@@ -23,7 +23,7 @@
.\" SUCH DAMAGE.
.\" $FreeBSD$
.\"
-.Dd August 1, 2013
+.Dd April 19, 2014
.Dt EVENTHANDLER 9
.Os
.Sh NAME
@@ -186,19 +186,45 @@ The following event handlers are present in the kernel:
Callbacks invoked when the system is being sent to sleep.
.It Vt acpi_wakeup_event
Callbacks invoked when the system is being woken up.
+.It Vt app_coredump_start
+Callbacks invoked at start of application core dump.
+.It Vt app_coredump_progress
+Callbacks invoked during progress of application core dump.
+.It Vt app_coredump_finish
+Callbacks invoked at finish of application core dump.
+.It Vt app_coredump_error
+Callbacks invoked on error of application core dump.
+.It Vt bpf_track
+Callbacks invoked when a BPF listener attaches to/detaches from network interface.
+.It Vt cpufreq_levels_changed
+Callback invoked when cpu frequence levels have changed.
+.It Vt cpufreq_post_change
+Callback invoked after cpu frequence has changed.
+.It Vt cpufreq_pre_change
+Callback invoked before cpu frequence has changed
+.It Vt dcons_poll
+Callback invoked to poll for dcons changes.
.It Vt dev_clone
Callbacks invoked when a new entry is created under
.Pa /dev .
+.It Vt group_attach_event
+Callback invoked when an interfance has been added to an interface group.
+.It Vt group_change_event
+Callback invoked when an change has been made to an interface group.
+.It Vt group_detach_event
+Callback invoked when an interfance has been removed from an interface group.
.It Vt ifaddr_event
Callbacks invoked when an address is set up on a network interface.
.It Vt if_clone_event
Callbacks invoked when an interface is cloned.
+.It Vt iflladdr_event
+Callback invoked when an if link layer address event has happened.
.It Vt ifnet_arrival_event
Callbacks invoked when a new network interface appears.
.It Vt ifnet_departure_event
Callbacks invoked when a network interface is taken down.
-.It Vt bpf_track
-Callbacks invoked when a BPF listener attaches to/detaches from network interface.
+.It Vt ifnet_link_event
+Callback invoked when an interfance link event has happened.
.It Vt kld_load
Callbacks invoked after a linker file has been loaded.
.It Vt kld_unload
@@ -207,22 +233,75 @@ Callbacks invoked after a linker file has been successfully unloaded.
Callbacks invoked before a linker file is about to be unloaded.
These callbacks may be used to return an error and prevent the unload from
proceeding.
+.It Vt lle_event
+Callback invoked when an link layer event has happened.
+.It Vt nmbclusters_change
+Callback invoked when the number of mbuf clusters has changed.
+.It Vt nmbufs_change
+Callback invoked when the number of mbufs has changed.
+.It Vt maxsockets_change
+Callback invoked when the maximum number of sockets has changed.
+.It Vt mountroot
+Callback invoked when root has been mounted.
.It Vt power_profile_change
Callbacks invoked when the power profile of the system changes.
+.It Vt power_resume
+Callback invoked when the system has resumed.
+.It Vt power_suspend
+Callback invoked just before the system is suspended.
+.It Vt process_ctor
+Callback invoked when a process is created.
+.It Vt process_dtor
+Callback invoked when a process is destroyed.
.It Vt process_exec
Callbacks invoked when a process performs an
.Fn exec
operation.
.It Vt process_exit
Callbacks invoked when a process exits.
+.It Vt process_fini
+Callback invoked when a process memory is destroyed.
+This is never called.
.It Vt process_fork
Callbacks invoked when a process forks a child.
+.It Vt process_init
+Callback invoked when a process is initalized.
+.It Vt random_adaptor_attach
+Callback invoked when a new random module has been loaded.
+.It Vt register_framebuffer
+Callback invoked when a new frame buffer is registered.
+.It Vt route_redirect_event
+Callback invoked when a route gets redirected to a new location.
.It Vt shutdown_pre_sync
Callbacks invoked at shutdown time, before file systems are synchronized.
.It Vt shutdown_post_sync
Callbacks invoked at shutdown time, after all file systems are synchronized.
.It Vt shutdown_final
Callbacks invoked just before halting the system.
+.It Vt tcp_offload_listen_start
+Callback invoked for TCP Offload to start listening for new connections.
+.It Vt tcp_offload_listen_stop
+Callback invoked ror TCP Offload to stop listening for new connections.
+.It Vt thread_ctor
+Callback invoked when a thread object is created.
+.It Vt thread_dtor
+Callback invoked when a thread object is destroyed.
+.It Vt thread_init
+Callback invoked when a thread object is initalized.
+.It Vt thread_fini
+Callback invoked when a thread object is deinitalized.
+.It Vt usb_dev_configured
+Callback invoked when a USB device is configured
+.It Vt unregister_framebuffer
+Callback invoked when a frame buffer is deregistered.
+.It Vt vfs_mounted
+Callback invoked when a file system is mounted.
+.It Vt vfs_unmounted
+Callback invoked when a file system is unmounted.
+.It Vt vlan_config
+Callback invoked when the vlan configuration has changed.
+.It Vt vlan_unconfig
+Callback invoked when a vlan is destroyed.
.It Vt vm_lowmem
Callbacks invoked when virtual memory is low.
.It Vt watchdog_list
diff --git a/share/man/man9/Makefile b/share/man/man9/Makefile
index 026ffea54450..37ba7f2e85fc 100644
--- a/share/man/man9/Makefile
+++ b/share/man/man9/Makefile
@@ -118,6 +118,7 @@ MAN= accept_filter.9 \
g_consumer.9 \
g_data.9 \
get_cyclecount.9 \
+ getenv.9 \
getnewvnode.9 \
g_event.9 \
g_geom.9 \
@@ -677,6 +678,14 @@ MLINKS+=g_consumer.9 g_destroy_consumer.9 \
g_consumer.9 g_new_consumer.9
MLINKS+=g_data.9 g_read_data.9 \
g_data.9 g_write_data.9
+MLINKS+=getenv.9 freeenv.9 \
+ getenv.9 getenv_int.9 \
+ getenv.9 getenv_long.9 \
+ getenv.9 getenv_string.9 \
+ getenv.9 getenv_quad.9 \
+ getenv.9 getenv_uint.9 \
+ getenv.9 getenv_ulong.9 \
+ getenv.9 testenv.9
MLINKS+=g_event.9 g_cancel_event.9 \
g_event.9 g_post_event.9 \
g_event.9 g_waitfor_event.9
@@ -869,6 +878,7 @@ MLINKS+=mbpool.9 mbp_alloc.9 \
MLINKS+=\
mbuf.9 m_adj.9 \
mbuf.9 M_ALIGN.9 \
+ mbuf.9 m_append.9 \
mbuf.9 m_apply.9 \
mbuf.9 m_cat.9 \
mbuf.9 MCHTYPE.9 \
@@ -892,6 +902,7 @@ MLINKS+=\
mbuf.9 m_freem.9 \
mbuf.9 MGET.9 \
mbuf.9 m_get.9 \
+ mbuf.9 m_getjcl.9 \
mbuf.9 m_getcl.9 \
mbuf.9 m_getclr.9 \
mbuf.9 MGETHDR.9 \
@@ -1134,11 +1145,14 @@ MLINKS+=sbuf.9 sbuf_bcat.9 \
sbuf.9 sbuf_finish.9 \
sbuf.9 sbuf_len.9 \
sbuf.9 sbuf_new.9 \
+ sbuf.9 sbuf_new_auto.9 \
sbuf.9 sbuf_new_for_sysctl.9 \
sbuf.9 sbuf_printf.9 \
sbuf.9 sbuf_putc.9 \
sbuf.9 sbuf_set_drain.9 \
sbuf.9 sbuf_setpos.9 \
+ sbuf.9 sbuf_start_section.9 \
+ sbuf.9 sbuf_end_section.9 \
sbuf.9 sbuf_trim.9 \
sbuf.9 sbuf_vprintf.9
MLINKS+=scheduler.9 curpriority_cmp.9 \
@@ -1172,6 +1186,7 @@ MLINKS+=sf_buf.9 sf_buf_alloc.9 \
sf_buf.9 sf_buf_page.9
MLINKS+=sglist.9 sglist_alloc.9 \
sglist.9 sglist_append.9 \
+ sglist.9 sglist_append_bio.9 \
sglist.9 sglist_append_mbuf.9 \
sglist.9 sglist_append_phys.9 \
sglist.9 sglist_append_uio.9 \
@@ -1335,6 +1350,7 @@ MLINKS+=sysctl_ctx_init.9 sysctl_ctx_entry_add.9 \
MLINKS+=SYSINIT.9 SYSUNINIT.9
MLINKS+=taskqueue.9 TASK_INIT.9 \
taskqueue.9 TASK_INITIALIZER.9 \
+ taskqueue.9 taskqueue_block.9 \
taskqueue.9 taskqueue_cancel.9 \
taskqueue.9 taskqueue_create.9 \
taskqueue.9 taskqueue_create_fast.9 \
@@ -1342,13 +1358,15 @@ MLINKS+=taskqueue.9 TASK_INIT.9 \
taskqueue.9 TASKQUEUE_DEFINE.9 \
taskqueue.9 TASKQUEUE_DEFINE_THREAD.9 \
taskqueue.9 taskqueue_drain.9 \
+ taskqueue.9 taskqueue_drain_all.9 \
taskqueue.9 taskqueue_enqueue.9 \
taskqueue.9 taskqueue_enqueue_fast.9 \
taskqueue.9 TASKQUEUE_FAST_DEFINE.9 \
taskqueue.9 TASKQUEUE_FAST_DEFINE_THREAD.9 \
taskqueue.9 taskqueue_free.9 \
taskqueue.9 taskqueue_member.9 \
- taskqueue.9 taskqueue_run.9
+ taskqueue.9 taskqueue_run.9 \
+ taskqueue.9 taskqueue_unblock.9
MLINKS+=time.9 boottime.9 \
time.9 time_second.9 \
time.9 time_uptime.9
@@ -1523,9 +1541,13 @@ MLINKS+=vslock.9 vsunlock.9
MLINKS+=zero_copy.9 zero_copy_sockets.9
MLINKS+=zone.9 uma.9 \
zone.9 uma_zalloc.9 \
+ zone.9 uma_zalloc_arg.9 \
zone.9 uma_zcreate.9 \
zone.9 uma_zdestroy.9 \
zone.9 uma_zfree.9 \
+ zone.9 uma_zfree_arg.9 \
+ zone.9 uma_zone_get_cur.9 \
+ zone.9 uma_zone_get_max.9 \
zone.9 uma_zone_set_max.9
.include <bsd.prog.mk>
diff --git a/share/man/man9/SDT.9 b/share/man/man9/SDT.9
index 39fbdeb846a9..1f821cf8d904 100644
--- a/share/man/man9/SDT.9
+++ b/share/man/man9/SDT.9
@@ -35,28 +35,28 @@
.Fn SDT_PROVIDER_DECLARE prov
.Fn SDT_PROVIDER_DEFINE prov
.Fn SDT_PROBE_DECLARE prov mod func name
-.Fn SDT_PROBE_DEFINE prov mod func name sname
-.Fn SDT_PROBE_DEFINE0 prov mod func name sname
-.Fn SDT_PROBE_DEFINE1 prov mod func name sname arg0
-.Fn SDT_PROBE_DEFINE2 prov mod func name sname arg0 arg1
-.Fn SDT_PROBE_DEFINE3 prov mod func name sname arg0 arg1 arg2
-.Fn SDT_PROBE_DEFINE4 prov mod func name sname arg0 arg1 arg2 arg3
-.Fn SDT_PROBE_DEFINE5 prov mod func name sname arg0 arg1 arg2 arg3 arg4
-.Fn SDT_PROBE_DEFINE6 prov mod func name sname arg0 arg1 arg2 arg3 arg4 arg5
-.Fn SDT_PROBE_DEFINE7 prov mod func name sname arg0 arg1 arg2 arg3 arg4 arg5 \
+.Fn SDT_PROBE_DEFINE prov mod func name
+.Fn SDT_PROBE_DEFINE0 prov mod func name
+.Fn SDT_PROBE_DEFINE1 prov mod func name arg0
+.Fn SDT_PROBE_DEFINE2 prov mod func name arg0 arg1
+.Fn SDT_PROBE_DEFINE3 prov mod func name arg0 arg1 arg2
+.Fn SDT_PROBE_DEFINE4 prov mod func name arg0 arg1 arg2 arg3
+.Fn SDT_PROBE_DEFINE5 prov mod func name arg0 arg1 arg2 arg3 arg4
+.Fn SDT_PROBE_DEFINE6 prov mod func name arg0 arg1 arg2 arg3 arg4 arg5
+.Fn SDT_PROBE_DEFINE7 prov mod func name arg0 arg1 arg2 arg3 arg4 arg5 \
arg6
-.Fn SDT_PROBE_DEFINE0_XLATE prov mod func name sname
-.Fn SDT_PROBE_DEFINE1_XLATE prov mod func name sname arg0 xarg0
-.Fn SDT_PROBE_DEFINE2_XLATE prov mod func name sname arg0 xarg0 arg1 xarg1
-.Fn SDT_PROBE_DEFINE3_XLATE prov mod func name sname arg0 xarg0 arg1 xarg1 \
+.Fn SDT_PROBE_DEFINE0_XLATE prov mod func name
+.Fn SDT_PROBE_DEFINE1_XLATE prov mod func name arg0 xarg0
+.Fn SDT_PROBE_DEFINE2_XLATE prov mod func name arg0 xarg0 arg1 xarg1
+.Fn SDT_PROBE_DEFINE3_XLATE prov mod func name arg0 xarg0 arg1 xarg1 \
arg2 xarg2
-.Fn SDT_PROBE_DEFINE4_XLATE prov mod func name sname arg0 xarg0 arg1 xarg1 \
+.Fn SDT_PROBE_DEFINE4_XLATE prov mod func name arg0 xarg0 arg1 xarg1 \
arg2 xarg2 arg3 xarg3
-.Fn SDT_PROBE_DEFINE5_XLATE prov mod func name sname arg0 xarg0 arg1 xarg1 \
+.Fn SDT_PROBE_DEFINE5_XLATE prov mod func name arg0 xarg0 arg1 xarg1 \
arg2 xarg2 arg3 xarg3 arg4 xarg4
-.Fn SDT_PROBE_DEFINE6_XLATE prov mod func name sname arg0 xarg0 arg1 xarg1 \
+.Fn SDT_PROBE_DEFINE6_XLATE prov mod func name arg0 xarg0 arg1 xarg1 \
arg2 xarg2 arg3 xarg3 arg4 xarg4 arg5 xarg5
-.Fn SDT_PROBE_DEFINE7_XLATE prov mod func name sname arg0 xarg0 arg1 xarg1 \
+.Fn SDT_PROBE_DEFINE7_XLATE prov mod func name arg0 xarg0 arg1 xarg1 \
arg2 xarg2 arg3 xarg3 arg4 xarg4 arg5 xarg5 arg6 xarg6
.Fn SDT_PROBE0 prov mod func name
.Fn SDT_PROBE1 prov mod func name arg0
@@ -136,20 +136,19 @@ See the
section.
Note in particular that probes must not be defined across multiple kernel
modules.
-The
-.Fn SDT_PROBE_DEFINE*
-macros also take an extra
-.Ar sname
-parameter.
-This is used to allow the creation of probes with names containing the
+.Pp
+If
.Ql -
-character.
-Specifically, the
+character (dash) is wanted in a probe name,
+then it should be represented as
+.Ql __
+(double underscore) in the probe
.Ar name
-argument should contain the probe name with all dashes converted to underscores,
-and the
-.Ar sname
-argument should be the probe name as it will be referenced by D scripts.
+parameter passed to various
+.Fn SDT_*
+macros,
+because of technical reasons
+(a dash is not valid in C identifiers).
.Pp
The
.Fn SDT_PROBE_DEFINE*
@@ -201,7 +200,7 @@ of type Destination Unreachable:
.Bd -literal -offset indent
SDT_PROVIDER_DECLARE(icmp);
-SDT_PROBE_DEFINE1(icmp, , unreach, pkt_receive, pkt-receive,
+SDT_PROBE_DEFINE1(icmp, , unreach, pkt__receive,
"struct icmp *");
.Ed
@@ -213,7 +212,7 @@ Consider a DTrace probe which fires when the network stack receives an IP
packet.
Such a probe would be defined by multiple tracepoints:
.Bd -literal -offset indent
-SDT_PROBE_DEFINE3(ip, , , receive, receive, "struct ifnet *",
+SDT_PROBE_DEFINE3(ip, , , receive, "struct ifnet *",
"struct ip *", "struct ip6_hdr *");
int
@@ -269,7 +268,7 @@ all in the
library path.
Then the FreeBSD probe above can be defined with:
.Bd -literal -offset indent
-SDT_PROBE_DEFINE1_XLATE(ip, , , receive, receive, "struct icmp *",
+SDT_PROBE_DEFINE1_XLATE(ip, , , receive, "struct icmp *",
"struct icmp_hdr_dt *");
.Ed
.Sh SEE ALSO
diff --git a/share/man/man9/VOP_STRATEGY.9 b/share/man/man9/VOP_STRATEGY.9
index 33d9fb8c1468..1265fe50ebdb 100644
--- a/share/man/man9/VOP_STRATEGY.9
+++ b/share/man/man9/VOP_STRATEGY.9
@@ -28,7 +28,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd July 24, 1996
+.Dd February 2, 2014
.Dt VOP_STRATEGY 9
.Os
.Sh NAME
@@ -57,7 +57,7 @@ Always zero.
Errors should be signalled by setting BIO_ERROR on b_ioflags field in struct buf,
and setting b_error to the appropriate errno value.
.Sh SEE ALSO
-.\" .Xr buf 9 ,
+.Xr buf 9 ,
.Xr vnode 9
.Sh AUTHORS
This manual page was written by
diff --git a/share/man/man9/buf.9 b/share/man/man9/buf.9
index cba34998b76f..43f56971541f 100644
--- a/share/man/man9/buf.9
+++ b/share/man/man9/buf.9
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man9/bus_dma.9 b/share/man/man9/bus_dma.9
index 023b5c385c4b..fa23fbff2358 100644
--- a/share/man/man9/bus_dma.9
+++ b/share/man/man9/bus_dma.9
@@ -37,13 +37,6 @@
.\" 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 by the NetBSD
-.\" Foundation, Inc. and its contributors.
-.\" 4. Neither the name of The NetBSD Foundation 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 NETBSD FOUNDATION, INC. AND CONTRIBUTORS
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
diff --git a/share/man/man9/bus_space.9 b/share/man/man9/bus_space.9
index 6bf03b45209c..1407b3ee2003 100644
--- a/share/man/man9/bus_space.9
+++ b/share/man/man9/bus_space.9
@@ -36,13 +36,6 @@
.\" 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 by the NetBSD
-.\" Foundation, Inc. and its contributors.
-.\" 4. Neither the name of The NetBSD Foundation 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 NETBSD FOUNDATION, INC. AND CONTRIBUTORS
.\" ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
diff --git a/share/man/man9/cd.9 b/share/man/man9/cd.9
index f5b748b4f962..4ed2d52a531e 100644
--- a/share/man/man9/cd.9
+++ b/share/man/man9/cd.9
@@ -9,9 +9,6 @@
.\" 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 John-Mark Gurney AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
@@ -27,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd September 2, 2003
+.Dd March 25, 2014
.Dt CD 9
.Os
.Sh NAME
@@ -119,7 +116,7 @@ manual page first appeared in
.An -nosplit
This
manual page was written by
-.An John-Mark Gurney Aq gurney_j@efn.org .
+.An John-Mark Gurney Aq jmg@FreeBSD.org .
It was updated for CAM and
.Fx 3.0
by
diff --git a/share/man/man9/counter.9 b/share/man/man9/counter.9
index c29c475e733c..079ce059fde8 100644
--- a/share/man/man9/counter.9
+++ b/share/man/man9/counter.9
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd April 3, 2013
+.Dd February 7, 2014
.Dt COUNTER 9
.Os
.Sh NAME
@@ -52,7 +52,7 @@
.Ft void
.Fn counter_u64_zero "counter_u64_t c"
.In sys/sysctl.h
-.Fn SYSCTL_COUNTER_U64 parent nbr name access ptr val descr
+.Fn SYSCTL_COUNTER_U64 parent nbr name access ptr descr
.Fn SYSCTL_ADD_COUNTER_U64 ctx parent nbr name access ptr descr
.Sh DESCRIPTION
.Nm
@@ -91,7 +91,7 @@ wait flag, should be either
or
.Va M_WAITOK .
If
-.Va M_WAITOK
+.Va M_NOWAIT
is specified the operation may fail.
.It Fn counter_u64_free c
Free the previously allocated counter
@@ -126,7 +126,7 @@ value for any moment.
Clear the counter
.Fa c
and set it to zero.
-.It Fn SYSCTL_COUNTER_U64 parent nbr name access ptr val descr
+.It Fn SYSCTL_COUNTER_U64 parent nbr name access ptr descr
Declare a static
.Xr sysctl
oid that would represent a
diff --git a/share/man/man9/crypto.9 b/share/man/man9/crypto.9
index c2682afbf66d..c9a999691cf3 100644
--- a/share/man/man9/crypto.9
+++ b/share/man/man9/crypto.9
@@ -17,7 +17,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd September 19, 2007
+.Dd April 18, 2014
.Dt CRYPTO 9
.Os
.Sh NAME
@@ -640,6 +640,7 @@ field.
most of the framework code
.El
.Sh SEE ALSO
+.Xr crypto 4 ,
.Xr ipsec 4 ,
.Xr malloc 9 ,
.Xr sleep 9
diff --git a/share/man/man9/disk.9 b/share/man/man9/disk.9
index 659a40dc549d..c0eb2e5381d7 100644
--- a/share/man/man9/disk.9
+++ b/share/man/man9/disk.9
@@ -106,8 +106,6 @@ and may not be subsequently changed:
Optional flags indicating to the storage framework what optional features
or descriptions the storage device driver supports.
Currently supported flags are
-.Dv DISKFLAG_NEEDSGIANT
-(maintained by device driver),
.Dv DISKFLAG_OPEN
(maintained by storage framework),
.Dv DISKFLAG_CANDELETE
diff --git a/share/man/man9/eventtimers.9 b/share/man/man9/eventtimers.9
index b43bc49bcc65..0c28d76b01c6 100644
--- a/share/man/man9/eventtimers.9
+++ b/share/man/man9/eventtimers.9
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 25, 2013
+.Dd April 2, 2014
.Dt EVENTTIMERS 9
.Os
.Sh NAME
@@ -68,6 +68,8 @@ struct eventtimer {
.Fn et_register "struct eventtimer *et"
.Ft int
.Fn et_deregister "struct eventtimer *et"
+.Ft void
+.Fn et_change_frequency "struct eventtimer *et" "uint64_t newfreq"
.Fn ET_LOCK
.Fn ET_UNLOCK
.Ft struct eventtimer *
@@ -176,6 +178,21 @@ methods control timers associated with the current CPU.
.Pp
Driver may deregister its functionality by calling
.Fn et_deregister .
+.Pp
+If the frequency of the clock hardware can change while it is
+running (for example, during power-saving modes), the driver must call
+.Fn et_change_frequency
+on each change.
+If the given event timer is the active timer,
+.Fn et_change_frequency
+stops the timer on all CPUs, updates
+.Va et->frequency ,
+then restarts the timer on all CPUs so that all
+current events are rescheduled using the new frequency.
+If the given timer is not currently active,
+.Fn et_change_frequency
+simply updates
+.Va et->frequency .
.Sh CONSUMER API
.Fn et_find
allows consumer to find available event timer, optionally matching specific
diff --git a/share/man/man9/getenv.9 b/share/man/man9/getenv.9
new file mode 100644
index 000000000000..a20c5e81e310
--- /dev/null
+++ b/share/man/man9/getenv.9
@@ -0,0 +1,210 @@
+.\" -*- nroff -*-
+.\"
+.\" Copyright (c) 2013 Advanced Computing Technologies LLC
+.\" Written by: John H. Baldwin <jhb@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 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.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd October 22, 2013
+.Dt GETENV 9
+.Os
+.Sh NAME
+.Nm freeenv ,
+.Nm getenv ,
+.Nm getenv_int ,
+.Nm getenv_long ,
+.Nm getenv_string ,
+.Nm getenv_quad ,
+.Nm getenv_uint ,
+.Nm getenv_ulong ,
+.Nm setenv ,
+.Nm testenv ,
+.Nm unsetenv
+.Nd kernel environment variable functions
+.Sh SYNOPSIS
+.In sys/param.h
+.In sys/systm.h
+.Ft void
+.Fn freeenv "char *env"
+.Ft char *
+.Fn getenv "const char *name"
+.Ft int
+.Fn getenv_int "const char *name" "int *data"
+.Ft int
+.Fn getenv_long "const char *name" "long *data"
+.Ft int
+.Fn getenv_string "const char *name" "char *data" "int size"
+.Ft int
+.Fn getenv_quad "const char *name" "quad_t *data"
+.Ft int
+.Fn getenv_uint "const char *name" "unsigned int *data"
+.Ft int
+.Fn getenv_ulong "const char *name" "unsigned long *data"
+.Ft int
+.Fn setenv "const char *name" "const char *value"
+.Ft int
+.Fn testenv "const char *name"
+.Ft int
+.Fn unsetenv "const char *name"
+.Sh DESCRIPTION
+These functions set, unset, fetch, and parse variables from the kernel's
+environment.
+.Pp
+The
+.Fn getenv
+function obtains the current value of the kernel environment variable
+.Fa name
+and returns a pointer to the string value.
+The caller should not modify the string pointed to by the return value.
+.Pp
+The
+.Fn getenv
+function may allocate temporary storage,
+so the
+.Fn freeenv
+function must be called to release any allocated resources when the value
+returned by
+.Fn getenv
+is no longer needed.
+The
+.Fa env
+argument passed to
+.Fn freeenv
+is the pointer returned by the earlier call to
+.Fn getenv .
+.Pp
+The
+.Fn setenv
+function inserts or resets the kernel environment variable
+.Fa name
+to
+.Fa value .
+If the variable
+.Fa name
+already exists,
+its value is replaced.
+This function can fail if an internal limit on the number of environment
+variables is exceeded.
+.Pp
+The
+.Fn unsetenv
+function deletes the kernel environment variable
+.Fa name .
+.Pp
+The
+.Fn testenv
+function is used to determine if a kernel environment variable exists.
+It returns a non-zero value if the variable
+.Fa name
+exists and zero if it does not.
+.Pp
+The
+.Fn getenv_int ,
+.Fn getenv_long ,
+.Fn getenv_quad ,
+.Fn getenv_uint ,
+and
+.Fn getenv_ulong
+functions look for a kernel environment variable
+.Fa name
+and parse it as a signed integer,
+long integer,
+signed 64-bit integer,
+unsigned integer,
+or an unsigned long integer,
+respectively.
+These functions fail and return zero if
+.Fa name
+does not exist or if any invalid characters are present in its value.
+On success,
+these function store the parsed value in the integer variable pointed to
+by
+.Fa data .
+If the parsed value overflows the integer type,
+a truncated value is stored in
+.Fa data
+and zero is returned.
+If the value begins with a prefix of
+.Dq 0x
+it is interpreted as hexadecimal.
+If it begins with a prefix of
+.Dq 0
+it is interpreted as octal.
+Otherwise,
+the value is interpreted as decimal.
+The value may contain a single character suffix specifying a unit for
+the value.
+The interpreted value is multipled by the unit's magnitude before being returned.
+The following unit suffixes are supported:
+.Bl -column -offset indent ".Sy Unit" ".Sy Magnitude"
+.It Sy Unit Ta Sy Magnitude
+.It k Ta 2^10
+.It m Ta 2^20
+.It g Ta 2^30
+.It t Ta 2^40
+.El
+.Pp
+The
+.Fn getenv_string
+function stores a copy of the kernel environment variable
+.Fa name
+in the buffer described by
+.Fa data
+and
+.Fa size.
+If the variable does not exist,
+zero is returned.
+If the variable exists,
+up to
+.Fa size - 1
+characters of it's value are copied to the buffer pointed to by
+.Fa data
+followed by a null character and a non-zero value is returned.
+.Sh RETURN VALUES
+The
+.Fn getenv
+function returns a pointer to an environment variable's value on success or
+.Dv NULL
+if the variable does not exist.
+.Pp
+The
+.Fn setenv
+and
+.Fn unsetenv
+functions return zero on success and -1 on failure.
+.Pp
+The
+.Fn testenv
+function returns zero if the specified environment variable does not exist and
+a non-zero value if it does exist.
+The
+.Fn getenv_int ,
+.Fn getenv_long ,
+.Fn getenv_string ,
+.Fn getenv_quad ,
+.Fn getenv_uint ,
+and
+.Fn getenv_ulong
+functions return a non-zero value on success and zero on failure.
diff --git a/share/man/man9/ieee80211_crypto.9 b/share/man/man9/ieee80211_crypto.9
index 9f48f21fd605..c82b87663197 100644
--- a/share/man/man9/ieee80211_crypto.9
+++ b/share/man/man9/ieee80211_crypto.9
@@ -236,7 +236,7 @@ For receive, drivers mark frames with the
.Dv M_WEP
mbuf flag to indicate the hardware has decrypted the payload.
If frames have the
-.Dv IEEE80211_FC1_WEP
+.Dv IEEE80211_FC1_PROTECTED
bit marked in their 802.11 header and are not tagged with
.Dv M_WEP
then decryption is done in software.
diff --git a/share/man/man9/ifnet.9 b/share/man/man9/ifnet.9
index 8cb436f75ea9..f1d3e471bc6a 100644
--- a/share/man/man9/ifnet.9
+++ b/share/man/man9/ifnet.9
@@ -28,7 +28,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd April 26, 2013
+.Dd November 5, 2013
.Dt IFNET 9
.Os
.Sh NAME
@@ -583,14 +583,6 @@ The interface is a loopback device.
The interface is point-to-point;
.Dq broadcast
address is actually the address of the other end.
-.It Dv IFF_SMART
-.Aq S*
-The interface manages its own routes, rather than using the generic
-code in
-.Fn if_up
-and
-.Fn if_down .
-This is probably useful for serial lines.
.It Dv IFF_DRV_RUNNING
.Aq D*
The interface has been configured and dynamic resources were
@@ -1284,9 +1276,8 @@ further interpretation.
The following commands are handled by
.Fn ifioctl :
.Pp
-.Bl -tag -width ".Dv OSIOCGIFNETMASK" -offset indent -compact
+.Bl -tag -width ".Dv SIOCGIFNETMASK" -offset indent -compact
.It Dv SIOCGIFCONF
-.It Dv OSIOCGIFCONF
Get interface configuration.
(No call-down to driver.)
.Pp
@@ -1380,17 +1371,6 @@ function is called to perform the operation; qq.v.
The socket's protocol control routine is called to implement the
requested action.
.Pp
-.It Dv OSIOCGIFADDR
-.It Dv OSIOCGIFDSTADDR
-.It Dv OSIOCGIFBRDADDR
-.It Dv OSIOCGIFNETMASK
-The socket's protocol control routine is called to implement the
-requested action.
-On return,
-.Vt sockaddr
-structures are converted into old-style (no
-.Va sa_len
-member).
.El
.El
.Pp
diff --git a/share/man/man9/intro.9 b/share/man/man9/intro.9
index 0e0fe8188d7a..83956c0bbccf 100644
--- a/share/man/man9/intro.9
+++ b/share/man/man9/intro.9
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/man/man9/malloc.9 b/share/man/man9/malloc.9
index 9653b5827cdc..07fb7581d9bb 100644
--- a/share/man/man9/malloc.9
+++ b/share/man/man9/malloc.9
@@ -29,7 +29,7 @@
.\" $NetBSD: malloc.9,v 1.3 1996/11/11 00:05:11 lukem Exp $
.\" $FreeBSD$
.\"
-.Dd November 15, 2012
+.Dd January 16, 2014
.Dt MALLOC 9
.Os
.Sh NAME
@@ -214,17 +214,6 @@ of two for requests up to the size of a page of memory.
For larger requests, one or more pages is allocated.
While it should not be relied upon, this information may be useful for
optimizing the efficiency of memory use.
-.Pp
-Programmers should be careful not to confuse the malloc flags
-.Dv M_NOWAIT
-and
-.Dv M_WAITOK
-with the
-.Xr mbuf 9
-flags
-.Dv M_DONTWAIT
-and
-.Dv M_WAIT .
.Sh CONTEXT
.Fn malloc ,
.Fn realloc
diff --git a/share/man/man9/mbuf.9 b/share/man/man9/mbuf.9
index 42fe3723e40e..4df1d6ab704d 100644
--- a/share/man/man9/mbuf.9
+++ b/share/man/man9/mbuf.9
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd November 13, 2012
+.Dd January 16, 2014
.Dt MBUF 9
.Os
.\"
@@ -74,6 +74,8 @@
.Ft struct mbuf *
.Fn m_getm "struct mbuf *orig" "int len" "int how" "int type"
.Ft struct mbuf *
+.Fn m_getjcl "int how" "short type" "int flags" "int size"
+.Ft struct mbuf *
.Fn m_getcl "int how" "short type" "int flags"
.Ft struct mbuf *
.Fn m_getclr "int how" "int type"
@@ -379,17 +381,6 @@ A number of other functions and macros related to
have the same argument because they may
at some point need to allocate new
.Vt mbufs .
-.Pp
-Historical
-.Vt mbuf
-allocator (See
-.Sx HISTORY
-section) used allocation flags
-.Dv M_WAIT
-and
-.Dv M_DONTWAIT .
-These constants are kept for compatibility
-and their use in new code is discouraged.
.It Fn MGETHDR mbuf how type
Allocate an
.Vt mbuf
@@ -592,6 +583,12 @@ together, as it avoids having to unlock/relock between allocations.
Returns
.Dv NULL
on failure.
+.It Fn m_getjcl how type flags size
+This is like
+.Fn m_getcl
+but it the size of the cluster allocated will be large enough for
+.Fa size
+bytes.
.It Fn m_getclr how type
Allocate an
.Vt mbuf
diff --git a/share/man/man9/memguard.9 b/share/man/man9/memguard.9
index 072d30b0fd6d..9ce773a3cfae 100644
--- a/share/man/man9/memguard.9
+++ b/share/man/man9/memguard.9
@@ -24,7 +24,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd October 21, 2011
+.Dd March 21, 2014
.Dt MEMGUARD 9
.Os
.Sh NAME
@@ -129,7 +129,7 @@ memory
.Nm
is allowed to consume.
The default is 10, so up to
-.Va cnt.v_page_count Ns /10
+.Va vm_cnt.v_page_count Ns /10
pages can be used.
.Nm
will reserve
diff --git a/share/man/man9/netisr.9 b/share/man/man9/netisr.9
index e1e582202a89..f1151e4f99d8 100644
--- a/share/man/man9/netisr.9
+++ b/share/man/man9/netisr.9
@@ -189,23 +189,15 @@ and
variants.
.Ss Protocol number constants
The follow protocol numbers are currently defined:
-.Bl -tag -width NETISR_ATALK1
+.Bl -tag -width NETISR_ROUTE
.It Dv NETISR_IP
IPv4
.It Dv NETISR_IGMP
IGMPv3 loopback
.It Dv NETISR_ROUTE
Routing socket loopback
-.It Dv NETISR_AARP
-Appletalk AARP
-.It Dv NETISR_ATALK1
-Appletalk phase 1
-.It Dv NETISR_ATALK2
-Appletalk phase 2
.It Dv NETISR_ARP
ARP
-.It Dv NETISR_IPX
-IPX/SPX
.It Dv NETISR_IPV6
IPv6
.It Dv NETISR_NATM
diff --git a/share/man/man9/rtentry.9 b/share/man/man9/rtentry.9
index d7e6953f5f82..65a63e481c4b 100644
--- a/share/man/man9/rtentry.9
+++ b/share/man/man9/rtentry.9
@@ -28,7 +28,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd December 11, 2008
+.Dd March 5, 2014
.Dt RTENTRY 9
.Os
.Sh NAME
@@ -78,6 +78,12 @@ intermediate stop on the way to that destination (if the
flag is set).
.It Vt "int rt_flags" ;
See below.
+If the
+.Dv RTF_UP
+flag is not present, the
+.Fn rtfree
+function will delete the route from the radix tree when the last
+reference drops.
.It Vt "int rt_refcnt" ;
Route entries are reference-counted; this field indicates the number
of external (to the radix tree) references.
@@ -89,14 +95,14 @@ as it were, to the question posed by a route lookup; that is, they
name the interface and interface address to be used in sending a
packet to the destination or set of destinations which this route
represents.
-.It Vt "struct rt_metrics_lite rt_rmx" ;
-See below.
-If the
-.Dv RTF_UP
-flag is not present, the
-.Fn rtfree
-function will delete the route from the radix tree when the last
-reference drops.
+.It Vt "u_long rt_mtu";
+See description of rmx_mtu below.
+.It Vt "u_long rt_weight";
+See description of rmx_weight below.
+.It Vt "u_long rt_expire";
+See description of rmx_expire below.
+.It Vt "counter64_t rt_pksent";
+See description of rmx_pksent below.
.It Vt "struct rtentry *rt_gwroute" ;
This member is a reference to a route whose destination is
.Va rt_gateway .
@@ -151,11 +157,8 @@ Requests that output sent via this route be discarded.
.It Dv RTF_PROTO2
.It Dv RTF_PROTO3
Protocol-specific.
-.It Dv RTF_PRCLONING
-This flag is obsolete and simply ignored by facility.
.It Dv RTF_PINNED
-(Reserved for future use to indicate routes which are not to be
-modified by a routing protocol.)
+Indicates that this route is immutable to a routing protocol.
.It Dv RTF_LOCAL
Indicates that the destination of this route is an address configured
as belonging to this system.
@@ -165,9 +168,7 @@ Indicates that the destination is a broadcast address.
Indicates that the destination is a multicast address.
.El
.Pp
-Every route has associated with it a set of metrics, stored in
-.Vt "struct rt_metrics_lite" .
-Metrics are supplied in
+Several metrics are supplied in
.Vt "struct rt_metrics"
passed with routing control messages via
.Xr route 4
@@ -176,8 +177,7 @@ Currently only
.Vt rmx_mtu , rmx_expire ,
and
.Vt rmx_pksent
-metrics are used in
-.Vt "struct rt_metrics_lite" .
+metrics are supplied.
All others are ignored.
.Pp
The following metrics are defined by
diff --git a/share/man/man9/sglist.9 b/share/man/man9/sglist.9
index 64f8935473da..280a9937e7e5 100644
--- a/share/man/man9/sglist.9
+++ b/share/man/man9/sglist.9
@@ -26,13 +26,14 @@
.\"
.\" $FreeBSD$
.\"
-.Dd May 15, 2009
+.Dd January 12, 2014
.Dt SGLIST 9
.Os
.Sh NAME
.Nm sglist ,
.Nm sglist_alloc ,
.Nm sglist_append ,
+.Nm sglist_append_bio ,
.Nm sglist_append_mbuf ,
.Nm sglist_append_phys ,
.Nm sglist_append_uio ,
@@ -58,6 +59,8 @@
.Ft int
.Fn sglist_append "struct sglist *sg" "void *buf" "size_t len"
.Ft int
+.Fn sglist_append_bio "struct sglist *sg" "struct bio *bp"
+.Ft int
.Fn sglist_append_mbuf "struct sglist *sg" "struct mbuf *m"
.Ft int
.Fn sglist_append_phys "struct sglist *sg" "vm_paddr_t paddr" "size_t len"
@@ -206,6 +209,13 @@ and is
bytes long.
.Pp
The
+.Nm sglist_append_bio
+function appends the physical address ranges described by a single bio
+.Fa bp
+to the scatter/gather list
+.Fa sg .
+.Pp
+The
.Nm sglist_append_mbuf
function appends the physical address ranges described by an entire mbuf
chain
@@ -499,6 +509,7 @@ list in
to describe the requested physical address ranges.
.El
.Sh SEE ALSO
+.Xr g_bio 9 ,
.Xr malloc 9 ,
.Xr mbuf 9 ,
.Xr uio 9
diff --git a/share/man/man9/taskqueue.9 b/share/man/man9/taskqueue.9
index 5f6131a4f7f0..910b33eee0f3 100644
--- a/share/man/man9/taskqueue.9
+++ b/share/man/man9/taskqueue.9
@@ -28,7 +28,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd December 4, 2012
+.Dd January 24, 2014
.Dt TASKQUEUE 9
.Os
.Sh NAME
@@ -86,6 +86,12 @@ struct timeout_task;
.Fn taskqueue_drain "struct taskqueue *queue" "struct task *task"
.Ft void
.Fn taskqueue_drain_timeout "struct taskqueue *queue" "struct timeout_task *timeout_task"
+.Ft void
+.Fn taskqueue_drain_all "struct taskqueue *queue"
+.Ft void
+.Fn taskqueue_block "struct taskqueue *queue"
+.Ft void
+.Fn taskqueue_unblock "struct taskqueue *queue"
.Ft int
.Fn taskqueue_member "struct taskqueue *queue" "struct thread *td"
.Ft void
@@ -255,6 +261,73 @@ function is used to wait for the scheduled task to finish.
There is no guarantee that the task will not be
enqueued after call to
.Fn taskqueue_drain .
+If the caller wants to put the task into a known state,
+then before calling
+.Fn taskqueue_drain
+the caller should use out-of-band means to ensure that the task
+would not be enqueued.
+For example, if the task is enqueued by an interrupt filter, then
+the interrupt could be disabled.
+.Pp
+The
+.Fn taskqueue_drain_all
+function is used to wait for all pending and running tasks that
+are enqueued on the taskqueue to finish.
+The caller must arrange that the tasks are not re-enqueued.
+Note that
+.Fn taskqueue_drain_all
+currently does not handle tasks with delayed enqueueing.
+.Pp
+The
+.Fn taskqueue_block
+function blocks the taskqueue.
+It prevents any enqueued but not running tasks from being executed.
+Future calls to
+.Fn taskqueue_enqueue
+will enqueue tasks, but the tasks will not be run until
+.Fn taskqueue_unblock
+is called.
+Please note that
+.Fn taskqueue_block
+does not wait for any currently running tasks to finish.
+Thus, the
+.Fn taskqueue_block
+does not provide a guarantee that
+.Fn taskqueue_run
+is not running after
+.Fn taskqueue_block
+returns, but it does provide a guarantee that
+.Fn taskqueue_run
+will not be called again
+until
+.Fn taskqueue_unblock
+is called.
+If the caller requires a guarantee that
+.Fn taskqueue_run
+is not running, then this must be arranged by the caller.
+Note that if
+.Fn taskqueue_drain
+is called on a task that is enqueued on a taskqueue that is blocked by
+.Fn taskqueue_block ,
+then
+.Fn taskqueue_drain
+can not return until the taskqueue is unblocked.
+This can result in a deadlock if the thread blocked in
+.Fn taskqueue_drain
+is the thread that is supposed to call
+.Fn taskqueue_unblock .
+Thus, use of
+.Fn taskqueue_drain
+after
+.Fn taskqueue_block
+is discouraged, because the state of the task can not be known in advance.
+The same caveat applies to
+.Fn taskqueue_drain_all .
+.Pp
+The
+.Fn taskqueue_unblock
+function unblocks the previously blocked taskqueue.
+All enqueued tasks can be run after this call.
.Pp
The
.Fn taskqueue_member
diff --git a/share/man/man9/timeout.9 b/share/man/man9/timeout.9
index 344ac81ce504..178250caefcf 100644
--- a/share/man/man9/timeout.9
+++ b/share/man/man9/timeout.9
@@ -357,7 +357,7 @@ The following
.Fa flags
may be specified:
.Bl -tag -width ".Dv C_DIRECT_EXEC"
-.It Dv C_ALSOLUTE
+.It Dv C_ABSOLUTE
Handle the
.Fa sbt
argument as absolute time of the event since boot, or relative time otherwise.
diff --git a/share/man/man9/vm_set_page_size.9 b/share/man/man9/vm_set_page_size.9
index d37dee819f3d..7f211d1bffc8 100644
--- a/share/man/man9/vm_set_page_size.9
+++ b/share/man/man9/vm_set_page_size.9
@@ -26,7 +26,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd July 17, 2001
+.Dd March 21, 2014
.Dt VM_SET_PAGE_SIZE 9
.Os
.Sh NAME
@@ -43,16 +43,16 @@ The
.Fn vm_set_page_size
function initializes the system page size.
If
-.Va cnt.v_page_size
+.Va vm_cnt.v_page_size
(see
.In sys/vmmeter.h )
equals 0,
.Dv PAGE_SIZE
is used; otherwise, the value stored in
-.Va cnt.v_page_size
+.Va vm_cnt.v_page_size
is used.
If
-.Va cnt.v_page_size
+.Va vm_cnt.v_page_size
is not a power of two, the system will panic.
.Pp
.Fn vm_set_page_size
diff --git a/share/man/man9/vnode.9 b/share/man/man9/vnode.9
index 652d9728ac56..cc80bde191e6 100644
--- a/share/man/man9/vnode.9
+++ b/share/man/man9/vnode.9
@@ -26,7 +26,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd February 13, 2010
+.Dd February 12, 2014
.Dt VNODE 9
.Os
.Sh NAME
@@ -69,11 +69,8 @@ and the
.Va v_holdcnt
of a vnode reaches zero then the vnode will be put on the freelist
and may be reused for another file, possibly in another file system.
-The transition to and from the freelist is handled by
-.Xr getnewvnode 9 ,
-.Xr vfree 9
-and
-.Xr vbusy 9 .
+The transition from the freelist is handled by
+.Xr getnewvnode 9 .
The third is a count of the number of clients which are writing into
the file.
It is maintained by the
@@ -82,9 +79,9 @@ and
.Xr close 2
system calls.
.Pp
-Any call which returns a vnode (e.g.\&
+Any call which returns a vnode (e.g.,\&
.Xr vget 9 ,
-.Xr VOP_LOOKUP 9
+.Xr VOP_LOOKUP 9 ,
etc.)
will increase the
.Va v_usecount
diff --git a/share/man/man9/zone.9 b/share/man/man9/zone.9
index 4199268ae7a2..d0af88ec2687 100644
--- a/share/man/man9/zone.9
+++ b/share/man/man9/zone.9
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd March 21, 2013
+.Dd February 7, 2014
.Dt ZONE 9
.Os
.Sh NAME
@@ -71,6 +71,11 @@
.Fn uma_zone_get_cur "uma_zone_t zone"
.Ft void
.Fn uma_zone_set_warning "uma_zone_t zone" "const char *warning"
+.In sys/sysctl.h
+.Fn SYSCTL_UMA_MAX parent nbr name access zone descr
+.Fn SYSCTL_ADD_UMA_MAX ctx parent nbr name access zone descr
+.Fn SYSCTL_UMA_CUR parent nbr name access zone descr
+.Fn SYSCTL_ADD_UMA_CUR ctx parent nbr name access zone descr
.Sh DESCRIPTION
The zone allocator provides an efficient interface for managing
dynamically-sized collections of items of similar size.
@@ -307,6 +312,38 @@ Warnings can be turned off globally by setting the
.Va vm.zone_warnings
sysctl tunable to
.Va 0 .
+.Pp
+The
+.Fn SYSCTL_UMA_MAX parent nbr name access zone descr
+macro declares a static
+.Xr sysctl
+oid that exports the effective upper limit number of items for a zone.
+The
+.Fa zone
+argument should be a pointer to
+.Vt uma_zone_t .
+A read of the oid returns value obtained through
+.Fn uma_zone_get_max .
+A write to the oid sets new value via
+.Fn uma_zone_set_max .
+The
+.Fn SYSCTL_ADD_UMA_MAX ctx parent nbr name access zone descr
+macro is provided to create this type of oid dynamically.
+.Pp
+The
+.Fn SYSCTL_UMA_CUR parent nbr name access zone descr
+macro declares a static read only
+.Xr sysctl
+oid that exports the approximate current occupancy of the zone.
+The
+.Fa zone
+argument should be a pointer to
+.Vt uma_zone_t .
+A read of the oid returns value obtained through
+.Fn uma_zone_get_cur .
+The
+.Fn SYSCTL_ADD_UMA_CUR ctx parent nbr name zone descr
+macro is provided to create this type of oid dynamically.
.Sh RETURN VALUES
The
.Fn uma_zalloc
diff --git a/share/me/acm.me b/share/me/acm.me
index e5d67031c8d6..53479135ee64 100644
--- a/share/me/acm.me
+++ b/share/me/acm.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/chars.me b/share/me/chars.me
index 7ff7b4fed226..8f553487ef8a 100644
--- a/share/me/chars.me
+++ b/share/me/chars.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/deltext.me b/share/me/deltext.me
index 44375cf7c4ae..08b3840c25bf 100644
--- a/share/me/deltext.me
+++ b/share/me/deltext.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/eqn.me b/share/me/eqn.me
index df2671c44295..e8034de82afe 100644
--- a/share/me/eqn.me
+++ b/share/me/eqn.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/float.me b/share/me/float.me
index b9ff0b0e3158..6204c3578109 100644
--- a/share/me/float.me
+++ b/share/me/float.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/footnote.me b/share/me/footnote.me
index de567edd52c2..5f9cad468f5f 100644
--- a/share/me/footnote.me
+++ b/share/me/footnote.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/index.me b/share/me/index.me
index a2fe52844e8e..9ffda71abab8 100644
--- a/share/me/index.me
+++ b/share/me/index.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/letterhead.me b/share/me/letterhead.me
index 7792d29676cf..542306e32f75 100644
--- a/share/me/letterhead.me
+++ b/share/me/letterhead.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/local.me b/share/me/local.me
index 8139e8d7f809..f3a61ce2bad3 100644
--- a/share/me/local.me
+++ b/share/me/local.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/null.me b/share/me/null.me
index df6385e947c6..0a93c2a21030 100644
--- a/share/me/null.me
+++ b/share/me/null.me
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/orig_me.7 b/share/me/orig_me.7
index afb7cb95b070..12958be53d0f 100644
--- a/share/me/orig_me.7
+++ b/share/me/orig_me.7
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/refer.me b/share/me/refer.me
index f24e5015e878..2626d870854c 100644
--- a/share/me/refer.me
+++ b/share/me/refer.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/sh.me b/share/me/sh.me
index 6f427d90fa0d..088c10fdc132 100644
--- a/share/me/sh.me
+++ b/share/me/sh.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/tbl.me b/share/me/tbl.me
index ab251dfe917f..65eed4bb7c51 100644
--- a/share/me/tbl.me
+++ b/share/me/tbl.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/thesis.me b/share/me/thesis.me
index c33f28fdc792..491f741c49f8 100644
--- a/share/me/thesis.me
+++ b/share/me/thesis.me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/me/tmac.orig_me b/share/me/tmac.orig_me
index 87c1687a3e04..a393fb657f46 100644
--- a/share/me/tmac.orig_me
+++ b/share/me/tmac.orig_me
@@ -10,11 +10,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/misc/bsd-family-tree b/share/misc/bsd-family-tree
index 74a9287a2898..a1d3d12bfa92 100644
--- a/share/misc/bsd-family-tree
+++ b/share/misc/bsd-family-tree
@@ -110,9 +110,11 @@ FreeBSD 2.1 | | | |
| | | | | NetBSD 1.3.2 | |
| FreeBSD 2.2.7 | | | | | |
| | | | | | | BSD/OS 4.0
- | v | | | | | |
| FreeBSD 2.2.8 | | | | | |
- | | | | | OpenBSD 2.4 |
+ | | | | | | | |
+ | v | | | | OpenBSD 2.4 |
+ | FreeBSD 2.2.9 | | | | | |
+ | | | | | | |
FreeBSD 3.0 <--------* | | v | |
| | | NetBSD 1.3.3 | |
*---FreeBSD 3.1 | | | |
@@ -275,19 +277,44 @@ FreeBSD 5.2 | | | |
| | | | | | 6.0.2 | |
| | | | | | | OpenBSD 5.3 DragonFly 3.4.1
| | | | | | NetBSD | |
- | | | | | | 6.0.2 | |
+ | | | | | | 6.0.3 | |
+ | | | | | | | | |
+ | | | | | | NetBSD | |
+ | | | | | | 6.0.4 | |
+ | | | | | | | | |
+ | | | | | | NetBSD | |
+ | | | | | | 6.0.5 | |
| | | | | | | |
| | | | | |`-NetBSD 6.1 | |
| | FreeBSD | | | | |
| | 8.4 | | NetBSD 6.1.1 | |
| | | | | | |
| FreeBSD | | NetBSD 6.1.2 | |
- | 9.2 | | | |
+ | 9.2 Mac OS X | | | |
+ | 10.9 | | OpenBSD 5.4 |
+ | | | | | DragonFly 3.6.0
+ | | | | | |
+ *--FreeBSD | | NetBSD 6.1.3 | |
+ | 10.0 | | | | |
+ | | | NetBSD 6.1.4 | DragonFly 3.6.1
+ | | | | |
+ | | | | |
+ | | | | DragonFly 3.6.2
+ | | | | |
+ | | | | |
+ | | | | |
+ | | | | |
+ | | | | |
+ | | | | |
+ | | | | |
+ | | | | |
+ | | | | |
+ | | | | |
| | | | |
| | | | |
| | | | |
| | | | |
-FreeBSD 10 -current | NetBSD -current OpenBSD -current |
+FreeBSD 11 -current | NetBSD -current OpenBSD -current DragonFly -current
| | | | |
v v v v v
@@ -531,6 +558,7 @@ FreeBSD 6.0 2005-11-01 [FBD]
NetBSD 2.1 2005-11-02 [NBD]
NetBSD 3.0 2005-12-23 [NBD]
DragonFly 1.4.0 2006-01-08 [DFB]
+FreeBSD 2.2.9 2006-04-01 [FBD]
OpenBSD 3.9 2006-05-01 [OBD]
FreeBSD 6.1 2006-05-08 [FBD]
FreeBSD 5.5 2006-05-25 [FBD]
@@ -600,6 +628,16 @@ NetBSD 5.2.1 2013-09-29 [NBD]
FreeBSD 9.2 2013-09-30 [FBD]
NetBSD 6.0.3 2013-09-30 [NBD]
NetBSD 6.1.2 2013-09-30 [NBD]
+Mac OS X 10.9 2013-10-22 [APL]
+OpenBSD 5.4 2013-11-01 [OBD]
+DragonFly 3.6.0 2013-11-25 [DFB]
+FreeBSD 10.0 2014-01-20 [FBD]
+NetBSD 6.0.4 2014-01-27 [NBD]
+NetBSD 6.1.3 2014-01-27 [NBD]
+DragonFly 3.6.1 2014-02-22 [DFB]
+DragonFly 3.6.2 2014-04-10 [DFB]
+NetBSD 6.0.5 2014-04-19 [NDB]
+NetBSD 6.1.4 2014-04-19 [NDB]
Bibliography
------------------------
diff --git a/share/misc/committers-doc.dot b/share/misc/committers-doc.dot
index e408eb12ef4e..49b6e07482f0 100644
--- a/share/misc/committers-doc.dot
+++ b/share/misc/committers-doc.dot
@@ -68,6 +68,7 @@ gavin [label="Gavin Atkinson\ngavin@FreeBSD.org\n2011/07/18"]
gjb [label="Glen Barber\ngjb@FreeBSD.org\n2010/09/01"]
hrs [label="Hiroki Sato\nhrs@FreeBSD.org\n2000/07/06"]
issyl0 [label="Isabell Long\nissyl0@FreeBSD.org\n2012/04/25"]
+jgh [label="Jason Helfman\njgh@FreeBSD.org\n2014/01/20"]
jkois [label="Johann Kois\njkois@FreeBSD.org\n2004/11/11"]
joel [label="Joel Dahl\njoel@FreeBSD.org\n2005/04/05"]
keramida [label="Giorgos Keramidas\nkeramida@FreeBSD.org\n2001/10/12"]
@@ -83,6 +84,7 @@ remko [label="Remko Lodder\nremko@FreeBSD.org\n2004/10/16"]
rene [label="Rene Ladan\nrene@FreeBSD.org\n2008/11/03"]
ryusuke [label="Ryusuke Suzuki\nryusuke@FreeBSD.org\n2009/12/21"]
simon [label="Simon L. Nielsen\nsimon@FreeBSD.org\n2003/07/20"]
+skreuzer [label="Steven Kreuzer\nskreuzer@FreeBSD.org\n2014/01/15"]
taras [label="Taras Korenko\ntaras@FreeBSD.org\n2010/06/25"]
trhodes [label="Tom Rhodes\ntrhodes@FreeBSD.org\n2002/03/25"]
wblock [label="Warren Block\nwblock@FreeBSD.org\n2011/09/12"]
@@ -97,6 +99,7 @@ bcr -> wblock
bcr -> eadler
bcr -> dru
bcr -> crees
+bcr -> jgh
blackend -> ale
@@ -126,6 +129,7 @@ gjb -> crees
hrs -> ryusuke
hrs -> dru
+hrs -> skreuzer
jesusr -> jcamou
@@ -163,10 +167,13 @@ nik -> keramida
remko -> jkois
remko -> rene
+remko -> jgh
simon -> josef
simon -> remko
trhodes -> danger
trhodes -> jcamou
+
+wblock -> jgh
}
diff --git a/share/misc/committers-ports.dot b/share/misc/committers-ports.dot
index c727cd724132..778d86b8049d 100644
--- a/share/misc/committers-ports.dot
+++ b/share/misc/committers-ports.dot
@@ -32,7 +32,6 @@ node [color=grey62, style=filled, bgcolor=black];
adamw [label="Adam Weinberger\nadamw@FreeBSD.org\n2002/10/16\n2006/09/25"]
asami [label="Satoshi Asami\nasami@FreeBSD.org\n1994/11/18\n2001/09/11"]
billf [label="Bill Fumerola\nbillf@FreeBSD.org\n1998/11/11\n2006/12/14"]
-bmah [label="Bruce A. Mah\nbmah@FreeBSD.org\n2000/08/23\n2006/12/19"]
jmallett [label="Juli Mallett\njmallett@FreeBSD.org\n2003/01/16\n2006/08/10"]
marcel [label="Marcel Moolenaar\nmarcel@FreeBSD.org\n1999/07/03\n2007/07/01"]
steve [label="Steve Price\nsteve@FreeBSD.org\nxxxx/xx/xx\nxxxx/xx/xx"]
@@ -49,6 +48,7 @@ ak [label="Alex Kozlov\nak@FreeBSD.org\n2012/02/29"]
ale [label="Alex Dupre\nale@FreeBSD.org\n2004/01/12"]
alepulver [label="Alejandro Pulver\nalepulver@FreeBSD.org\n2006/04/01"]
alexbl [label="Alexander Botero-Lowry\nalexbl@FreeBSD.org\n2006/09/11"]
+alexey [label="Alexey Degtyarev\nalexey@FreeBSD.org\n2013/11/09"]
amdmi3 [label="Dmitry Marakasov\namdmi3@FreeBSD.org\n2008/06/19"]
anray [label="Andrey Slusar\nanray@FreeBSD.org\n2005/12/11"]
antoine [label="Antoine Brodin\nantoine@FreeBSD.org\n2013/04/03"]
@@ -65,6 +65,7 @@ beat [label="Beat Gaetzi\nbeat@FreeBSD.org\n2009/01/28"]
beech [label="Beech Rintoul\nbeech@FreeBSD.org\n2007/05/30"]
bf [label="Brendan Fabeny\nbf@FreeBSD.org\n2010/06/02"]
bland [label="Alexander Nedotsukov\nbland@FreeBSD.org\n2003/08/14"]
+bmah [label="Bruce A. Mah\nbmah@FreeBSD.org\n2000/08/23"]
brix [label="Henrik Brix Andersen\nbrix@FreeBSD.org\n2007/10/31"]
brooks [label="Brooks Davies\nbrooks@FreeBSD.org\n2004/05/03"]
bsam [label="Boris Samorodov\nbsam@FreeBSD.org\n2006/07/20"]
@@ -104,6 +105,7 @@ gerald [label="Gerald Pfeifer\ngerald@FreeBSD.org\n2002/04/03"]
gjb [label="Glen Barber\ngjb@FreeBSD.org\n2012/06/19"]
glarkin [label="Greg Larkin\nglarkin@FreeBSD.org\n2008/07/17"]
glewis [label="Greg Lewis\nglewis@FreeBSD.org\n2002/04/08"]
+grembo [label="Michael Gmelin\ngrembo@FreeBSD.org\n2014/01/21"]
gnn [label="George Neville-Neil\ngnn@FreeBSD.org\n2013/09/04"]
hq [label="Herve Quiroz\nhq@FreeBSD.org\n2004/08/05"]
ijliao [label="Ying-Chieh Liao\nijliao@FreeBSD.org\n2001/01/20"]
@@ -153,6 +155,7 @@ mat [label="Mathieu Arnold\nmat@FreeBSD.org\n2003/08/15"]
matthew [label="Matthew Seaman\nmatthew@FreeBSD.org\n2012/02/07"]
mezz [label="Jeremy Messenger\nmezz@FreeBSD.org\n2004/04/30"]
mharo [label="Michael Haro\nmharo@FreeBSD.org\n1999/04/13"]
+milki [label="Jonathan Chu\nmilki@FreeBSD.org\n2013/12/15"]
miwi [label="Martin Wilke\nmiwi@FreeBSD.org\n2006/06/04"]
mm [label="Martin Matuska\nmm@FreeBSD.org\n2007/04/04"]
mnag [label="Marcus Alves Grando\nmnag@FreeBSD.org\n2005/09/15"]
@@ -177,8 +180,10 @@ philip [label="Philip Paeps\nphilip@FreeBSD.org\n2005/10/19"]
rafan [label="Rong-En Fan\nrafan@FreeBSD.org\n2006/06/23"]
rakuco [label="Raphael Kubo da Costa\nrakuco@FreeBSD.org\n2011/08/22"]
rene [label="Rene Ladan\nrene@FreeBSD.org\n2010/04/11"]
+riggs [label="Thomas Zander\nriggs@FreeBSD.org\n2014/01/09"]
rm [label="Ruslan Makhmatkhanov\nrm@FreeBSD.org\n2011/11/06"]
rnoland [label="Robert Noland\nrnoland@FreeBSD.org\n2008/07/21"]
+rodrigo [label="Rodrigo Osorio\nrodrigo@FreeBSD.org\n2014/01/15"]
romain [label="Romain Tartiere\nromain@FreeBSD.org\n2010/01/24"]
sahil [label="Sahil Tandon\nsahil@FreeBSD.org\n2010/04/11"]
sat [label="Andrew Pantyukhin\nsat@FreeBSD.org\n2006/05/06"]
@@ -207,12 +212,14 @@ tmclaugh [label="Tom McLaughlin\ntmclaugh@FreeBSD.org\n2005/09/15"]
tota [label="TAKATSU Tomonari\ntota@FreeBSD.org\n2009/03/30"]
trasz [label="Edward Tomasz Napierala\ntrasz@FreeBSD.org\n2007/04/12"]
trhodes [label="Tom Rhodes\ntrhodes@FreeBSD.org\n2004/07/06"]
+trociny [label="Mikolaj Golub\ntrociny@FreeBSD.org\n2013/10/17"]
uqs [label="Ulrich Spoerlein\nuqs@FreeBSD.org\n2012/01/19"]
vd [label="Vasil Dimov\nvd@FreeBSD.org\n2006/01/19"]
vg [label="Veniamin Gvozdikov\nvg@FreeBSD.org\n2013/06/11"]
wen [label="Wen Heping\nwen@FreeBSD.org\n2010/12/13"]
wg [label="William Grzybowski\nwg@FreeBSD.org\n2013/04/01"]
wxs [label="Wesley Shields\nwxs@FreeBSD.org\n2008/01/03"]
+xmj [label="Johannes Jost Meixner\nxmj@FreeBSD.org\n2014/04/07"]
xride [label="Soeren Straarup\nxride@FreeBSD.org\n2006/09/27"]
yzlin [label="Yi-Jheng Lin\nyzlin@FreeBSD.org\n2009/07/19"]
zeising [label="Niclas Zeising\nzeising@FreeBSD.org\n2012/07/03"]
@@ -246,12 +253,14 @@ avilla -> jhale
avilla -> rakuco
bdrewery -> dbn
+bdrewery -> trociny
bapt -> bdrewery
bapt -> eadler
bapt -> jlaffaye
bapt -> marius
bapt -> marino
+bapt -> rodrigo
beat -> decke
beat -> marius
@@ -298,6 +307,7 @@ eadler -> antoine
eadler -> dbn
eadler -> bdrewery
eadler -> gjb
+eadler -> milki
eadler -> tj
eadler -> vg
@@ -365,6 +375,7 @@ itetcu -> sylvio
jadawin -> bapt
jadawin -> flo
+jadawin -> riggs
jadawin -> sbz
jadawin -> wen
@@ -375,6 +386,8 @@ knu -> maho
knu -> nobutaka
knu -> nork
+koobs -> xmj
+
krion -> brooks
krion -> miwi
krion -> novel
@@ -384,6 +397,7 @@ krion -> sem
krion -> sergei
kwm -> jsa
+kwm -> rodrigo
kwm -> zeising
lawrance -> itetcu
@@ -406,6 +420,7 @@ makc -> bf
makc -> jhale
makc -> rakuco
+mat -> bmah
mat -> thierry
mezz -> tmclaugh
@@ -507,7 +522,9 @@ stas -> araujo
steve -> netchild
swills -> feld
+swills -> milki
swills -> pclin
+swills -> xmj
tabthorpe -> ashish
tabthorpe -> avilla
@@ -526,6 +543,7 @@ tabthorpe -> zi
tabthorpe -> gblach
thierry -> jadawin
+thierry -> riggs
tmclaugh -> itetcu
tmclaugh -> xride
@@ -534,6 +552,7 @@ wen -> cs
wen -> culot
wen -> pawel
+wg -> alexey
wg -> danilo
wg -> nemysis
diff --git a/share/misc/committers-src.dot b/share/misc/committers-src.dot
index b9729cc013cf..3ea6b0bedf05 100644
--- a/share/misc/committers-src.dot
+++ b/share/misc/committers-src.dot
@@ -40,8 +40,10 @@ billf [label="Bill Fumerola\nbillf@FreeBSD.org\n1998/11/11\n2008/11/10"]
bmah [label="Bruce A. Mah\nbmah@FreeBSD.org\n2002/01/29\n2009/09/13"]
bmilekic [label="Bosko Milekic\nbmilekic@FreeBSD.org\n2000/09/21\n2008/11/10"]
bushman [label="Michael Bushkov\nbushman@FreeBSD.org\n2007/03/10\n2010/04/29"]
+carl [label="Carl Delsey\ncarl@FreeBSD.org\n2013/01/14\n2014/03/06"]
ceri [label="Ceri Davies\nceri@FreeBSD.org\n2006/11/07\n2012/03/07"]
cjc [label="Crist J. Clark\ncjc@FreeBSD.org\n2001/06/01\n2006/12/29"]
+davidxu [label="David Xu\ndavidxu@FreeBSD.org\n2002/09/02\n2014/04/14"]
dds [label="Diomidis Spinellis\ndds@FreeBSD.org\n2003/06/20\n2010/09/22"]
dhartmei [label="Daniel Hartmeier\ndhartmei@FreeBSD.org\n2004/04/06\n2008/12/08"]
dmlb [label="Duncan Barclay\ndmlb@FreeBSD.org\n2001/12/14\n2008/11/10"]
@@ -114,6 +116,7 @@ art [label="Artem Belevich\nart@FreeBSD.org\n2011/03/29"]
asomers [label="Alan Somers\nasomers@FreeBSD.org\n2013/04/24"]
avg [label="Andriy Gapon\navg@FreeBSD.org\n2009/02/18"]
bapt [label="Baptiste Daroussin\nbapt@FreeBSD.org\n2011/12/23"]
+bdrewery [label="Bryan Drewery\nbdrewery@FreeBSD.org\n2013/12/14"]
benl [label="Ben Laurie\nbenl@FreeBSD.org\n2011/05/18"]
benno [label="Benno Rice\nbenno@FreeBSD.org\n2000/11/02"]
bms [label="Bruce M Simpson\nbms@FreeBSD.org\n2003/08/06"]
@@ -126,14 +129,12 @@ bruno [label="Bruno Ducrot\nbruno@FreeBSD.org\n2005/07/18"]
bryanv [label="Bryan Venteicher\nbryanv@FreeBSD.org\n2012/11/03"]
bschmidt [label="Bernhard Schmidt\nbschmidt@FreeBSD.org\n2010/02/06"]
bz [label="Bjoern A. Zeeb\nbz@FreeBSD.org\n2004/07/27"]
-carl [label="Carl Delsey\ncarl@FreeBSD.org\n2013/01/14"]
cognet [label="Olivier Houchard\ncognet@FreeBSD.org\n2002/10/09"]
cokane [label="Coleman Kane\ncokane@FreeBSD.org\n2000/06/19"]
cperciva [label="Colin Percival\ncperciva@FreeBSD.org\n2004/01/20"]
csjp [label="Christian S.J. Peron\ncsjp@FreeBSD.org\n2004/05/04"]
das [label="David Schultz\ndas@FreeBSD.org\n2003/02/21"]
davide [label="Davide Italiano\ndavide@FreeBSD.org\n2012/01/27"]
-davidxu [label="David Xu\ndavidxu@FreeBSD.org\n2002/09/02"]
dchagin [label="Dmitry Chagin\ndchagin@FreeBSD.org\n2009/02/28"]
delphij [label="Xin Li\ndelphij@FreeBSD.org\n2004/09/14"]
des [label="Dag-Erling Smorgrav\ndes@FreeBSD.org\n1998/04/03"]
@@ -190,6 +191,7 @@ jkoshy [label="A. Joseph Koshy\njkoshy@FreeBSD.org\n1998/05/13"]
jlh [label="Jeremie Le Hen\njlh@FreeBSD.org\n2012/04/22"]
jls [label="Jordan Sissel\njls@FreeBSD.org\n2006/12/06"]
jmg [label="John-Mark Gurney\njmg@FreeBSD.org\n1997/02/13"]
+jmmv [label="Julio Merino\njmmv@FreeBSD.org\n2013/11/02"]
joerg [label="Joerg Wunsch\njoerg@FreeBSD.org\n1993/11/14"]
jon [label="Jonathan Chen\njon@FreeBSD.org\n2000/10/17"]
jonathan [label="Jonathan Anderson\njonathan@FreeBSD.org\n2010/10/07"]
@@ -222,6 +224,7 @@ mjacob [label="Matt Jacob\nmjacob@FreeBSD.org\n1997/08/13"]
mjg [label="Mateusz Guzik\nmjg@FreeBSD.org\n2012/06/04"]
mlaier [label="Max Laier\nmlaier@FreeBSD.org\n2004/02/10"]
monthadar [label="Monthadar Al Jaberi\nmonthadar@FreeBSD.org\n2012/04/02"]
+mp [label="Mark Peek\nmp@FreeBSD.org\n2001/07/27"]
mr [label="Michael Reifenberger\nmr@FreeBSD.org\n2001/09/30"]
neel [label="Neel Natu\nneel@FreeBSD.org\n2009/09/20"]
netchild [label="Alexander Leidinger\nnetchild@FreeBSD.org\n2005/03/31"]
@@ -249,6 +252,7 @@ rmacklem [label="Rick Macklem\nrmacklem@FreeBSD.org\n2009/03/27"]
rmh [label="Robert Millan\nrmh@FreeBSD.org\n2011/09/18"]
rnoland [label="Robert Noland\nrnoland@FreeBSD.org\n2008/09/15"]
roberto [label="Ollivier Robert\nroberto@FreeBSD.org\n1995/02/22"]
+royger [label="Roger Pau Monne\nroyger@FreeBSD.org\n2013/11/26"]
rpaulo [label="Rui Paulo\nrpaulo@FreeBSD.org\n2007/09/25"]
rrs [label="Randall R Stewart\nrrs@FreeBSD.org\n2007/02/08"]
rse [label="Ralf S. Engelschall\nrse@FreeBSD.org\n1997/07/31"]
@@ -261,6 +265,7 @@ sbruno [label="Sean Bruno\nsbruno@FreeBSD.org\n2008/08/02"]
scf [label="Sean C. Farley\nscf@FreeBSD.org\n2007/06/24"]
schweikh [label="Jens Schweikhardt\nschweikh@FreeBSD.org\n2001/04/06"]
scottl [label="Scott Long\nscottl@FreeBSD.org\n2000/09/28"]
+se [label="Stefan Esser\nse@FreeBSD.org\n1994/08/26"]
sephe [label="Sepherosa Ziehau\nsephe@FreeBSD.org\n2007/03/28"]
sepotvin [label="Stephane E. Potvin\nsepotvin@FreeBSD.org\n2007/02/15"]
simon [label="Simon L. Nielsen\nsimon@FreeBSD.org\n2006/03/07"]
@@ -281,6 +286,7 @@ trasz [label="Edward Tomasz Napierala\ntrasz@FreeBSD.org\n2008/08/22"]
trhodes [label="Tom Rhodes\ntrhodes@FreeBSD.org\n2002/05/28"]
trociny [label="Mikolaj Golub\ntrociny@FreeBSD.org\n2011/03/10"]
tuexen [label="Michael Tuexen\ntuexen@FreeBSD.org\n2009/06/06"]
+tychon [label="Tycho Nightingale\ntychon@FreeBSD.org\n2014/01/21"]
ume [label="Hajimu UMEMOTO\nume@FreeBSD.org\n2000/02/26"]
uqs [label="Ulrich Spoerlein\nuqs@FreeBSD.org\n2010/01/28"]
vanhu [label="Yvan Vanhullebus\nvanhu@FreeBSD.org\n2008/07/21"]
@@ -327,6 +333,8 @@ avg -> art
avg -> pluknet
avg -> smh
+bapt -> bdrewery
+
benno -> grehan
billf -> dougb
@@ -414,6 +422,7 @@ gavin -> versus
gibbs -> mjacob
gibbs -> njl
+gibbs -> royger
glebius -> mav
@@ -511,6 +520,7 @@ julian -> davidxu
julian -> archie
julian -> adrian
julian -> zec
+julian -> mp
kan -> kib
@@ -607,6 +617,7 @@ rmacklem -> jwd
rpaulo -> avg
rpaulo -> bschmidt
rpaulo -> dim
+rpaulo -> jmmv
rrs -> brucec
rrs -> jchandra
diff --git a/share/mk/Makefile b/share/mk/Makefile
index c7291fca2516..75cd9be82a0b 100644
--- a/share/mk/Makefile
+++ b/share/mk/Makefile
@@ -22,8 +22,10 @@ FILES= \
bsd.libnames.mk \
bsd.links.mk \
bsd.man.mk \
+ bsd.mkopt.mk \
bsd.nls.mk \
bsd.obj.mk \
+ bsd.opts.mk \
bsd.own.mk \
bsd.port.mk \
bsd.port.options.mk \
@@ -42,8 +44,11 @@ FILES= \
FILESDIR= ${BINDIR}/mk
-.if ${MK_ATF} != "no"
+.if ${MK_TESTS} != "no"
FILES+= atf.test.mk
+FILES+= plain.test.mk
+FILES+= suite.test.mk
+FILES+= tap.test.mk
.endif
UPDATE_DEPENDFILE= no
diff --git a/share/mk/atf.test.mk b/share/mk/atf.test.mk
index 7e19087a4ff7..1be7244acfc5 100644
--- a/share/mk/atf.test.mk
+++ b/share/mk/atf.test.mk
@@ -1,49 +1,103 @@
-# $NetBSD$
# $FreeBSD$
#
+# You must include bsd.test.mk instead of this file from your Makefile.
+#
+# Logic to build and install ATF test programs; i.e. test programs linked
+# against the ATF libraries.
-.include <bsd.init.mk>
+.if !target(__<bsd.test.mk>__)
+.error atf.test.mk cannot be included directly.
+.endif
-ATF_TESTS:=
+# List of C, C++ and shell test programs to build.
+#
+# Programs listed here are built using PROGS, PROGS_CXX and SCRIPTS,
+# respectively, from bsd.prog.mk. However, the build rules are tweaked to
+# require the ATF libraries.
+#
+# Test programs registered in this manner are set to be installed into TESTSDIR
+# (which should be overriden by the Makefile) and are not required to provide a
+# manpage.
+ATF_TESTS_C?=
+ATF_TESTS_CXX?=
+ATF_TESTS_SH?=
+
+# Whether to allow using the deprecated ATF tools or not.
+#
+# If 'yes', this file will generate Atffiles when requested and will also
+# support using the deprecated atf-run tool to execute the tests.
+ALLOW_DEPRECATED_ATF_TOOLS?= no
-.if make(*test)
-TESTSDIR?= .
-.endif
+# Knob to control the handling of the Atffile for this Makefile.
+#
+# If 'yes', an Atffile exists in the source tree and is installed into
+# TESTSDIR.
+#
+# If 'auto', an Atffile is automatically generated based on the list of test
+# programs built by the Makefile and is installed into TESTSDIR. This is the
+# default and is sufficient in the majority of the cases.
+#
+# If 'no', no Atffile is installed.
+ATFFILE?= auto
-.if defined(ATF_TESTS_SUBDIRS)
-# Only visit subdirs when building, etc because ATF does this it on its own.
-.if !make(atf-test)
-SUBDIR+= ${ATF_TESTS_SUBDIRS}
-.endif
-ATF_TESTS+= ${ATF_TESTS_SUBDIRS}
+# Path to the prefix of the installed ATF tools, if any.
+#
+# If atf-run and atf-report are installed from ports, we automatically define a
+# realtest target below to run the tests using these tools. The tools are
+# searched for in the hierarchy specified by this variable.
+ATF_PREFIX?= /usr/local
-.include <bsd.subdir.mk>
-.endif
+# C compiler passed to ATF tests that need to build code.
+ATF_BUILD_CC?= ${DESTDIR}/usr/bin/cc
+TESTS_ENV+= ATF_BUILD_CC=${ATF_BUILD_CC}
+
+# C preprocessor passed to ATF tests that need to build code.
+ATF_BUILD_CPP?= ${DESTDIR}/usr/bin/cpp
+TESTS_ENV+= ATF_BUILD_CPP=${ATF_BUILD_CPP}
-.if defined(TESTS_C)
-ATF_TESTS+= ${TESTS_C}
-.for _T in ${TESTS_C}
+# C++ compiler passed to ATF tests that need to build code.
+ATF_BUILD_CXX?= ${DESTDIR}/usr/bin/c++
+TESTS_ENV+= ATF_BUILD_CXX=${ATF_BUILD_CXX}
+
+# Shell interpreter used to run atf-sh(1) based tests.
+ATF_SHELL?= ${DESTDIR}/bin/sh
+TESTS_ENV+= ATF_SHELL=${ATF_SHELL}
+
+.if !empty(ATF_TESTS_C)
+PROGS+= ${ATF_TESTS_C}
+_TESTS+= ${ATF_TESTS_C}
+.for _T in ${ATF_TESTS_C}
+BINDIR.${_T}= ${TESTSDIR}
+MAN.${_T}?= # empty
SRCS.${_T}?= ${_T}.c
DPADD.${_T}+= ${LIBATF_C}
LDADD.${_T}+= -latf-c
+TEST_INTERFACE.${_T}= atf
.endfor
.endif
-.if defined(TESTS_CXX)
-ATF_TESTS+= ${TESTS_CXX}
-.for _T in ${TESTS_CXX}
+.if !empty(ATF_TESTS_CXX)
+PROGS_CXX+= ${ATF_TESTS_CXX}
+_TESTS+= ${ATF_TESTS_CXX}
+.for _T in ${ATF_TESTS_CXX}
+BINDIR.${_T}= ${TESTSDIR}
+MAN.${_T}?= # empty
SRCS.${_T}?= ${_T}${CXX_SUFFIX:U.cc}
DPADD.${_T}+= ${LIBATF_CXX} ${LIBATF_C}
LDADD.${_T}+= -latf-c++ -latf-c
+TEST_INTERFACE.${_T}= atf
.endfor
.endif
-.if defined(TESTS_SH)
-ATF_TESTS+= ${TESTS_SH}
-.for _T in ${TESTS_SH}
+.if !empty(ATF_TESTS_SH)
+SCRIPTS+= ${ATF_TESTS_SH}
+_TESTS+= ${ATF_TESTS_SH}
+.for _T in ${ATF_TESTS_SH}
+SCRIPTSDIR_${_T}= ${TESTSDIR}
+TEST_INTERFACE.${_T}= atf
CLEANFILES+= ${_T} ${_T}.tmp
-TESTS_SH_SRC_${_T}?= ${_T}.sh
-${_T}: ${TESTS_SH_SRC_${_T}}
+ATF_TESTS_SH_SRC_${_T}?= ${_T}.sh
+${_T}: ${ATF_TESTS_SH_SRC_${_T}}
echo '#! /usr/bin/atf-sh' > ${.TARGET}.tmp
cat ${.ALLSRC} >> ${.TARGET}.tmp
chmod +x ${.TARGET}.tmp
@@ -51,7 +105,7 @@ ${_T}: ${TESTS_SH_SRC_${_T}}
.endfor
.endif
-ATFFILE?= auto
+.if ${ALLOW_DEPRECATED_ATF_TOOLS} != "no"
.if ${ATFFILE:tl} != "no"
FILES+= Atffile
@@ -65,72 +119,38 @@ Atffile: Makefile
echo; \
echo '# Automatically generated by atf-test.mk.'; \
echo; \
- echo 'prop: test-suite = "'`uname -o`'"'; \
+ echo 'prop: test-suite = "'${TESTSUITE}'"'; \
echo; \
- for tp in ${ATF_TESTS}; do \
+ for tp in ${ATF_TESTS_C} ${ATF_TESTS_CXX} ${ATF_TESTS_SH} \
+ ${TESTS_SUBDIRS}; \
+ do \
echo "tp: $${tp}"; \
done; } >Atffile.tmp
@mv Atffile.tmp Atffile
.endif
.endif
-# Generate support variables for atf-test.
+ATF_REPORT?= ${ATF_PREFIX}/bin/atf-report
+ATF_RUN?= ${ATF_PREFIX}/bin/atf-run
+.if exists(${ATF_RUN}) && exists(${ATF_REPORT})
+# Definition of the "make test" target and supporting variables.
#
-# atf-test can only work for native builds, i.e. a build host of a particular
-# OS building a release for the same OS version and architecture. The target
-# runs ATF, which is on the build host, and the tests execute code built for
-# the target host.
+# This target, by necessity, can only work for native builds (i.e. a freeBSD
+# host building a release for the same system). The target runs ATF, which is
+# not in the toolchain, and the tests execute code built for the target host.
#
# Due to the dependencies of the binaries built by the source tree and how they
# are used by tests, it is highly possible for a execution of "make test" to
# report bogus results unless the new binaries are put in place.
-
-# XXX (gcooper): Executing ATF from outside the source tree is improper; it
-# should be built as part of the OS toolchain build for the host OS and
-# executed from there.
-ATF_PATH+= ${DESTDIR}/bin ${DESTDIR}/sbin ${DESTDIR}/usr/bin ${DESTDIR}/usr/sbin
-TESTS_ENV+= PATH=${ATF_PATH:ts:}:${PATH}
-
-ATF_BUILD_CC?= ${DESTDIR}/usr/bin/cc
-ATF_BUILD_CPP?= ${DESTDIR}/usr/bin/cpp
-ATF_BUILD_CXX?= ${DESTDIR}/usr/bin/c++
-ATF_CONFDIR?= ${DESTDIR}/etc
-ATF_INCLUDEDIR?= ${DESTDIR}/usr/include
-ATF_LIBDIR?= ${DESTDIR}/usr/lib
-ATF_LIBEXECDIR?= ${DESTDIR}/usr/libexec
-ATF_PKGDATADIR?= ${DESTDIR}/usr/share/atf
-ATF_SHELL?= ${DESTDIR}/bin/sh
-LD_LIBRARY_PATH?= ${TESTS_LD_LIBRARY_PATH:tW:S/ /:/g}
-
-ATF_ENV_VARS= \
- ATF_BUILD_CC \
- ATF_BUILD_CPP \
- ATF_BUILD_CXX \
- ATF_CONFDIR \
- ATF_INCLUDEDIR \
- ATF_LIBDIR \
- ATF_LIBEXECDIR \
- ATF_PKGDATADIR \
- ATF_SHELL \
-
-.for v in ${ATF_ENV_VARS}
-.if !empty($v)
-TESTS_ENV+= $v=${$v}
-.endif
-.endfor
-
_TESTS_FIFO= ${.OBJDIR}/atf-run.fifo
_TESTS_LOG= ${.OBJDIR}/atf-run.log
CLEANFILES+= ${_TESTS_FIFO} ${_TESTS_LOG}
-
-ATF_BIN?= ${DESTDIR}/usr/bin
-ATF_REPORT?= ${ATF_BIN}/atf-report
-ATF_RUN?= ${ATF_BIN}/atf-run
-
-.PHONY: realtest
-realtest:
-.if defined(TESTSDIR)
+realtest: .PHONY
@set -e; \
+ if [ -z "${TESTSDIR}" ]; then \
+ echo "*** No TESTSDIR defined; nothing to do."; \
+ exit 0; \
+ fi; \
cd ${DESTDIR}${TESTSDIR}; \
rm -f ${_TESTS_FIFO}; \
mkfifo ${_TESTS_FIFO}; \
@@ -142,7 +162,9 @@ realtest:
rm -f ${_TESTS_FIFO}; \
echo; \
echo "*** The verbatim output of atf-run has been saved to ${_TESTS_LOG}"; \
+ echo "***"; \
+ echo "*** WARNING: atf-run is deprecated; please install kyua instead"; \
exit $${result}
.endif
-.include <bsd.test.mk>
+.endif
diff --git a/share/mk/bsd.README b/share/mk/bsd.README
index a9adc1f2201f..9740dac629ce 100644
--- a/share/mk/bsd.README
+++ b/share/mk/bsd.README
@@ -39,6 +39,7 @@ bsd.prog.mk - building programs from source files
bsd.snmpmod.mk - building modules for the SNMP daemon bsnmpd
bsd.subdir.mk - targets for building subdirectories
bsd.sys.mk - common settings used for building FreeBSD sources
+bsd.test.mk - building test programs from source files
sys.mk - default rules for all makes
This file does not document bsd.port*.mk. They are documented in ports(7).
@@ -308,7 +309,7 @@ To build foo from foo.c with a manual page foo.2, add the line:
If foo does not have a manual page at all, add the line:
- NO_MAN=
+ MAN=
If foo has multiple source files, add the line:
@@ -365,3 +366,97 @@ It has rules for building profiled objects; profiled libraries are
built by default.
Libraries are ranlib'd before installation.
+
+=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
+
+The include file <bsd.test.mk> handles building one or more test programs
+intended to be used in the FreeBSD Test Suite under /usr/tests/.
+
+It has seven targets:
+
+ all:
+ build the test programs.
+ clean:
+ remove the test programs and any object files.
+ cleandir:
+ remove all of the files removed by the target clean, as
+ well as .depend and tags.
+ depend:
+ make the dependencies for the source files, and store
+ them in the file .depend.
+ install:
+ install the test programs and their data files; if the
+ Makefile does not itself define the target install, the
+ targets beforeinstall and afterinstall may also be used
+ to cause actions immediately before and after the
+ install target is executed.
+ lint:
+ run lint on the source files.
+ tags:
+ create a tags file for the source files.
+ test:
+ runs the test programs from the object directory; if the
+ Makefile does not itself define the target test, the
+ targets beforetest and aftertest may also be used to
+ cause actions immediately before and after the test
+ target is executed.
+
+It sets/uses the following variables, among many others:
+
+TESTDIR Path to the installed tests. Must be a subdirectory of
+ TESTSBASE and the subpath should match the relative
+ location of the tests within the src tree.
+
+KYUAFILE If 'auto' (the default), generate a Kyuafile out of the
+ test programs defined in the Makefile. If 'yes', then a
+ manually-crafted Kyuafile must be supplied with the
+ sources. If 'no', no Kyuafile is installed (useful for
+ subdirectories providing helper programs or data files
+ only).
+
+ATF_TESTS_C The names of the ATF C test programs to build.
+
+ATF_TESTS_CXX The names of the ATF C++ test programs to build.
+
+ATF_TESTS_SH The names of the ATF sh test programs to build.
+
+PLAIN_TESTS_C The names of the plain (legacy) programs to build.
+
+PLAIN_TESTS_CXX The names of the plain (legacy) test programs to build.
+
+PLAIN_TESTS_SH The names of the plain (legacy) test programs to build.
+
+TAP_PERL_INTERPRETER
+ Path to the Perl interpreter to be used for
+ TAP-compliant test programs that are written in Perl.
+ Refer to TAP_TESTS_PERL for details.
+
+TAP_TESTS_C The names of the TAP-compliant C test programs to build.
+
+TAP_TESTS_CXX The names of the TAP-compliant C++ test programs to
+ build.
+
+TAP_TESTS_PERL The names of the TAP-compliant Perl test programs to
+ build. The corresponding source files should end with
+ the .pl extension; the test program is marked as
+ requiring Perl; and TAP_PERL_INTERPRETER is used in the
+ built scripts as the interpreter of choice.
+
+TAP_TESTS_SH The names of the TAP-compliant sh test programs to
+ build.
+
+TESTS_SUBDIRS List of subdirectories containing tests into which to
+ recurse. Differs from SUBDIR in that these directories
+ get registered into the automatically-generated
+ Kyuafile (if any).
+
+NOT_FOR_TEST_SUITE
+ If defined, none of the built test programs get
+ installed under /usr/tests/ and no Kyuafile is
+ automatically generated. Should not be used within the
+ FreeBSD source tree but is provided for the benefit of
+ third-parties.
+
+The actual building of the test programs is performed by <bsd.prog.mk>.
+Please see the documentation above for this other file for additional
+details on the behavior of <bsd.test.mk>.
diff --git a/share/mk/bsd.cpu.mk b/share/mk/bsd.cpu.mk
index caf83408d56c..553351c52013 100644
--- a/share/mk/bsd.cpu.mk
+++ b/share/mk/bsd.cpu.mk
@@ -142,7 +142,8 @@ _CPUCFLAGS = -mcpu=ultrasparc3
# presence of a CPU feature.
. if ${MACHINE_CPUARCH} == "i386"
-. if ${CPUTYPE} == "bdver2" || ${CPUTYPE} == "bdver1"
+. if ${CPUTYPE} == "bdver3" || ${CPUTYPE} == "bdver2" || \
+ ${CPUTYPE} == "bdver1"
MACHINE_CPU = xop avx sse42 sse41 ssse3 sse4a sse3 sse2 sse mmx k6 k5 i586
. elif ${CPUTYPE} == "btver2"
MACHINE_CPU = avx sse42 sse41 ssse3 sse4a sse3 sse2 sse mmx k6 k5 i586
@@ -170,7 +171,7 @@ MACHINE_CPU = k5 i586
MACHINE_CPU = avx2 avx sse42 sse41 ssse3 sse3 sse2 sse i686 mmx i586
. elif ${CPUTYPE} == "core-avx-i" || ${CPUTYPE} == "corei7-avx"
MACHINE_CPU = avx sse42 sse41 ssse3 sse3 sse2 sse i686 mmx i586
-. elif ${CPUTYPE} == "corei7"
+. elif ${CPUTYPE} == "slm" || ${CPUTYPE} == "corei7"
MACHINE_CPU = sse42 sse41 ssse3 sse3 sse2 sse i686 mmx i586
. elif ${CPUTYPE} == "penryn"
MACHINE_CPU = sse41 ssse3 sse3 sse2 sse i686 mmx i586
@@ -204,7 +205,8 @@ MACHINE_CPU = mmx
. endif
MACHINE_CPU += i486
. elif ${MACHINE_CPUARCH} == "amd64"
-. if ${CPUTYPE} == "bdver2" || ${CPUTYPE} == "bdver1"
+. if ${CPUTYPE} == "bdver3" || ${CPUTYPE} == "bdver2" || \
+ ${CPUTYPE} == "bdver1"
MACHINE_CPU = xop avx sse42 sse41 ssse3 sse4a sse3
. elif ${CPUTYPE} == "btver2"
MACHINE_CPU = avx sse42 sse41 ssse3 sse4a sse3
@@ -222,7 +224,7 @@ MACHINE_CPU = k8 3dnow
MACHINE_CPU = avx2 avx sse42 sse41 ssse3 sse3
. elif ${CPUTYPE} == "core-avx-i" || ${CPUTYPE} == "corei7-avx"
MACHINE_CPU = avx sse42 sse41 ssse3 sse3
-. elif ${CPUTYPE} == "corei7"
+. elif ${CPUTYPE} == "slm" || ${CPUTYPE} == "corei7"
MACHINE_CPU = sse42 sse41 ssse3 sse3
. elif ${CPUTYPE} == "penryn"
MACHINE_CPU = sse41 ssse3 sse3
@@ -260,3 +262,7 @@ CFLAGS += -G0
.if !defined(NO_CPU_CFLAGS)
CFLAGS += ${_CPUCFLAGS}
.endif
+
+# Add in any architecture-specific CFLAGS.
+# These come from make.conf or the command line or the environment.
+CFLAGS += ${CFLAGS.${MACHINE_ARCH}}
diff --git a/share/mk/bsd.crunchgen.mk b/share/mk/bsd.crunchgen.mk
index d8f07b1c48b1..cc7f02102642 100644
--- a/share/mk/bsd.crunchgen.mk
+++ b/share/mk/bsd.crunchgen.mk
@@ -48,7 +48,7 @@ CRUNCH_GENERATE_LINKS?= yes
CLEANFILES+= $(CONF) *.o *.lo *.c *.mk *.cache *.a *.h
# Don't try to extract debug info from ${PROG}.
-NO_DEBUG_FILES=
+MK_DEBUG_FILES=no
# Program names and their aliases contribute hardlinks to 'rescue' executable,
# except for those that get suppressed.
diff --git a/share/mk/bsd.endian.mk b/share/mk/bsd.endian.mk
index 12dcbc026f6a..15306a072a51 100644
--- a/share/mk/bsd.endian.mk
+++ b/share/mk/bsd.endian.mk
@@ -5,6 +5,7 @@
${MACHINE_ARCH} == "ia64" || \
${MACHINE_ARCH} == "arm" || \
${MACHINE_ARCH} == "armv6" || \
+ ${MACHINE_ARCH} == "armv6hf" || \
${MACHINE_ARCH:Mmips*el} != ""
TARGET_ENDIANNESS= 1234
.elif ${MACHINE_ARCH} == "powerpc" || \
diff --git a/share/mk/bsd.files.mk b/share/mk/bsd.files.mk
index 79b9d0346cb4..b0a1f121d362 100644
--- a/share/mk/bsd.files.mk
+++ b/share/mk/bsd.files.mk
@@ -14,9 +14,9 @@ buildfiles: ${${group}}
all: buildfiles
-.if !target(installfiles)
.for group in ${FILESGROUPS}
.if defined(${group}) && !empty(${group})
+installfiles: installfiles-${group}
${group}OWN?= ${SHAREOWN}
${group}GRP?= ${SHAREGRP}
@@ -48,7 +48,7 @@ STAGE_AS_SETS+= ${group}
STAGE_AS_${file:T}= ${${group}NAME_${file:T}}
stage_as.${group}: ${file}
-installfiles: _${group}INS_${file:T}
+installfiles-${group}: _${group}INS_${file:T}
_${group}INS_${file:T}: ${file}
${INSTALL} -o ${${group}OWN_${.ALLSRC:T}} \
-g ${${group}GRP_${.ALLSRC:T}} -m ${${group}MODE_${.ALLSRC:T}} \
@@ -61,7 +61,7 @@ _${group}FILES+= ${file}
.if !empty(_${group}FILES)
stage_files.${group}: ${_${group}FILES}
-installfiles: _${group}INS
+installfiles-${group}: _${group}INS
_${group}INS: ${_${group}FILES}
.if defined(${group}NAME)
${INSTALL} -o ${${group}OWN} -g ${${group}GRP} \
@@ -76,8 +76,6 @@ _${group}INS: ${_${group}FILES}
.endif # defined(${group}) && !empty(${group})
.endfor
-.endif # !target(installfiles)
-
realinstall: installfiles
.ORDER: beforeinstall installfiles
diff --git a/share/mk/bsd.incs.mk b/share/mk/bsd.incs.mk
index c84f97aa28b5..ee4305a73816 100644
--- a/share/mk/bsd.incs.mk
+++ b/share/mk/bsd.incs.mk
@@ -4,7 +4,7 @@
.error bsd.incs.mk cannot be included directly.
.endif
-.if !defined(NO_INCS) && ${MK_TOOLCHAIN} != "no"
+.if ${MK_TOOLCHAIN} != "no"
INCSGROUPS?= INCS
@@ -105,4 +105,4 @@ STAGE_SYMLINKS.INCS= ${INCSLINKS}
.endif
.endif
-.endif # !defined(NO_INCS) && ${MK_TOOLCHAIN} != "no"
+.endif # ${MK_TOOLCHAIN} != "no"
diff --git a/share/mk/bsd.init.mk b/share/mk/bsd.init.mk
index ec325c04ac58..74e477a74d18 100644
--- a/share/mk/bsd.init.mk
+++ b/share/mk/bsd.init.mk
@@ -1,12 +1,15 @@
# $FreeBSD$
-# The include file <bsd.init.mk> includes ../Makefile.inc and
-# <bsd.own.mk>; this is used at the top of all <bsd.*.mk> files
-# that actually "build something".
+# The include file <bsd.init.mk> includes <bsd.opts.mk>,
+# ../Makefile.inc and <bsd.own.mk>; this is used at the
+# top of all <bsd.*.mk> files that actually "build something".
+# bsd.opts.mk is included early so Makefile.inc can use the
+# MK_FOO variables.
.if !target(__<bsd.init.mk>__)
__<bsd.init.mk>__:
.sinclude "local.init.mk"
+.include <bsd.opts.mk>
.if exists(${.CURDIR}/../Makefile.inc)
.include "${.CURDIR}/../Makefile.inc"
.endif
diff --git a/share/mk/bsd.lib.mk b/share/mk/bsd.lib.mk
index 8e2707143331..9710d8ef8731 100644
--- a/share/mk/bsd.lib.mk
+++ b/share/mk/bsd.lib.mk
@@ -175,7 +175,7 @@ lib${LIB}.a: ${OBJS} ${STATICOBJS}
.else
@${AR} ${ARFLAGS} ${.TARGET} `NM='${NM}' lorder ${OBJS} ${STATICOBJS} | tsort -q` ${ARADD}
.endif
- ${RANLIB} ${.TARGET}
+ ${RANLIB} ${RANLIBFLAGS} ${.TARGET}
.endif
.if !defined(INTERNALLIB)
@@ -192,7 +192,7 @@ lib${LIB}_p.a: ${POBJS}
.else
@${AR} ${ARFLAGS} ${.TARGET} `NM='${NM}' lorder ${POBJS} | tsort -q` ${ARADD}
.endif
- ${RANLIB} ${.TARGET}
+ ${RANLIB} ${RANLIBFLAGS} ${.TARGET}
.endif
.if defined(SHLIB_NAME) || \
@@ -249,7 +249,7 @@ lib${LIB}_pic.a: ${SOBJS}
@${ECHO} building special pic ${LIB} library
@rm -f ${.TARGET}
@${AR} ${ARFLAGS} ${.TARGET} ${SOBJS} ${ARADD}
- ${RANLIB} ${.TARGET}
+ ${RANLIB} ${RANLIBFLAGS} ${.TARGET}
.endif
.if defined(WANT_LINT) && !defined(NO_LINT) && defined(LIB) && !empty(LIB)
diff --git a/share/mk/bsd.libnames.mk b/share/mk/bsd.libnames.mk
index 8ef6e7a9f139..3594b75cff8e 100644
--- a/share/mk/bsd.libnames.mk
+++ b/share/mk/bsd.libnames.mk
@@ -21,20 +21,20 @@ LIBAVL?= ${DESTDIR}${LIBDIR}/libavl.a
LIBBEGEMOT?= ${DESTDIR}${LIBDIR}/libbegemot.a
LIBBLUETOOTH?= ${DESTDIR}${LIBDIR}/libbluetooth.a
LIBBSDXML?= ${DESTDIR}${LIBDIR}/libbsdxml.a
-LIBBSDYML?= ${DESTDIR}${LIBDIR}/libbsdyml.a
LIBBSM?= ${DESTDIR}${LIBDIR}/libbsm.a
LIBBSNMP?= ${DESTDIR}${LIBDIR}/libbsnmp.a
LIBBZ2?= ${DESTDIR}${LIBDIR}/libbz2.a
-.if ${MK_LIBCPLUSPLUS} != "no"
LIBCXXRT?= ${DESTDIR}${LIBDIR}/libcxxrt.a
LIBCPLUSPLUS?= ${DESTDIR}${LIBDIR}/libc++.a
-.endif
LIBC?= ${DESTDIR}${LIBDIR}/libc.a
LIBC_PIC?= ${DESTDIR}${LIBDIR}/libc_pic.a
LIBCALENDAR?= ${DESTDIR}${LIBDIR}/libcalendar.a
LIBCAM?= ${DESTDIR}${LIBDIR}/libcam.a
+LIBCAPSICUM?= ${DESTDIR}${LIBDIR}/libcapsicum.a
+LIBCASPER?= ${DESTDIR}${LIBDIR}/libcasper.a
LIBCOM_ERR?= ${DESTDIR}${LIBDIR}/libcom_err.a
LIBCOMPAT?= ${DESTDIR}${LIBDIR}/libcompat.a
+LIBCOMPILER_RT?=${DESTDIR}${LIBDIR}/libcompiler_rt.a
LIBCRYPT?= ${DESTDIR}${LIBDIR}/libcrypt.a
LIBCRYPTO?= ${DESTDIR}${LIBDIR}/libcrypto.a
LIBCTF?= ${DESTDIR}${LIBDIR}/libctf.a
@@ -52,8 +52,6 @@ LIBFETCH?= ${DESTDIR}${LIBDIR}/libfetch.a
LIBFL?= "don't use LIBFL, use LIBL"
LIBFORM?= ${DESTDIR}${LIBDIR}/libform.a
LIBG2C?= ${DESTDIR}${LIBDIR}/libg2c.a
-LIBGCC?= ${DESTDIR}${LIBDIR}/libgcc.a
-LIBGCC_PIC?= ${DESTDIR}${LIBDIR}/libgcc_pic.a
LIBGEOM?= ${DESTDIR}${LIBDIR}/libgeom.a
LIBGNUREGEX?= ${DESTDIR}${LIBDIR}/libgnuregex.a
LIBGSSAPI?= ${DESTDIR}${LIBDIR}/libgssapi.a
@@ -67,9 +65,6 @@ LIBHEIMNTLM?= ${DESTDIR}${LIBDIR}/libheimntlm.a
LIBHEIMSQLITE?= ${DESTDIR}${LIBDIR}/libheimsqlite.a
LIBHX509?= ${DESTDIR}${LIBDIR}/libhx509.a
LIBIPSEC?= ${DESTDIR}${LIBDIR}/libipsec.a
-.if ${MK_IPX} != "no"
-LIBIPX?= ${DESTDIR}${LIBDIR}/libipx.a
-.endif
LIBJAIL?= ${DESTDIR}${LIBDIR}/libjail.a
LIBKADM5CLNT?= ${DESTDIR}${LIBDIR}/libkadm5clnt.a
LIBKADM5SRV?= ${DESTDIR}${LIBDIR}/libkadm5srv.a
@@ -80,9 +75,7 @@ LIBKICONV?= ${DESTDIR}${LIBDIR}/libkiconv.a
LIBKRB5?= ${DESTDIR}${LIBDIR}/libkrb5.a
LIBKVM?= ${DESTDIR}${LIBDIR}/libkvm.a
LIBL?= ${DESTDIR}${LIBDIR}/libl.a
-.if ${MK_LDNS} != "no"
LIBLDNS?= ${DESTDIR}${LIBPRIVATEDIR}/libldns.a
-.endif
LIBLN?= "don't use LIBLN, use LIBL"
LIBLZMA?= ${DESTDIR}${LIBDIR}/liblzma.a
LIBM?= ${DESTDIR}${LIBDIR}/libm.a
@@ -90,19 +83,20 @@ LIBMAGIC?= ${DESTDIR}${LIBDIR}/libmagic.a
LIBMD?= ${DESTDIR}${LIBDIR}/libmd.a
LIBMEMSTAT?= ${DESTDIR}${LIBDIR}/libmemstat.a
LIBMENU?= ${DESTDIR}${LIBDIR}/libmenu.a
-.if ${MK_SENDMAIL} != "no"
LIBMILTER?= ${DESTDIR}${LIBDIR}/libmilter.a
-.endif
LIBMP?= ${DESTDIR}${LIBDIR}/libmp.a
LIBNCURSES?= ${DESTDIR}${LIBDIR}/libncurses.a
LIBNCURSESW?= ${DESTDIR}${LIBDIR}/libncursesw.a
LIBNETGRAPH?= ${DESTDIR}${LIBDIR}/libnetgraph.a
LIBNGATM?= ${DESTDIR}${LIBDIR}/libngatm.a
+LIBNV?= ${DESTDIR}${LIBDIR}/libnv.a
LIBNVPAIR?= ${DESTDIR}${LIBDIR}/libnvpair.a
LIBOPIE?= ${DESTDIR}${LIBDIR}/libopie.a
# The static PAM library doesn't know its secondary dependencies,
-# so we have to specify them explicitly.
+# so we have to specify them explicitly. Ths is an unfortunate,
+# but necessary departure from testing MK_ flags to define
+# values here.
LIBPAM?= ${DESTDIR}${LIBDIR}/libpam.a
MINUSLPAM= -lpam
.if defined(LDFLAGS) && !empty(LDFLAGS:M-static)
@@ -127,6 +121,7 @@ MINUSLPAM+= -lypclnt
LIBPANEL?= ${DESTDIR}${LIBDIR}/libpanel.a
LIBPCAP?= ${DESTDIR}${LIBDIR}/libpcap.a
+LIBPJDLOG?= ${DESTDIR}${LIBDIR}/libpjdlog.a
LIBPMC?= ${DESTDIR}${LIBDIR}/libpmc.a
LIBPROC?= ${DESTDIR}${LIBDIR}/libproc.a
LIBPROCSTAT?= ${DESTDIR}${LIBDIR}/libprocstat.a
@@ -149,12 +144,11 @@ LIBTACPLUS?= ${DESTDIR}${LIBDIR}/libtacplus.a
LIBTERMCAP?= ${DESTDIR}${LIBDIR}/libtermcap.a
LIBTERMLIB?= "don't use LIBTERMLIB, use LIBTERMCAP"
LIBTINFO?= "don't use LIBTINFO, use LIBNCURSES"
+LIBUCL?= ${DESTDIR}${LIBPRIVATEDIR}/libucl.a
LIBUFS?= ${DESTDIR}${LIBDIR}/libufs.a
LIBUGIDFW?= ${DESTDIR}${LIBDIR}/libugidfw.a
LIBUMEM?= ${DESTDIR}${LIBDIR}/libumem.a
-.if ${MK_UNBOUND} != "no"
LIBUNBOUND?= ${DESTDIR}${LIBPRIVATEDIR}/libunbound.a
-.endif
LIBUSBHID?= ${DESTDIR}${LIBDIR}/libusbhid.a
LIBUSB?= ${DESTDIR}${LIBDIR}/libusb.a
LIBULOG?= ${DESTDIR}${LIBDIR}/libulog.a
diff --git a/share/mk/bsd.man.mk b/share/mk/bsd.man.mk
index 6445ba3f32a7..46c0989788e1 100644
--- a/share/mk/bsd.man.mk
+++ b/share/mk/bsd.man.mk
@@ -30,9 +30,6 @@
# second, and there may be multiple pairs. The files
# are hard-linked.
#
-# NO_MANCOMPRESS If you do not want unformatted manual pages to be
-# compressed when they are installed. [not set]
-#
# NO_MLINKS If you do not want install manual page links. [not set]
#
# MANFILTER command to pipe the raw man page through before compressing
@@ -77,10 +74,10 @@ MAN+= ${MAN${__sect}}
_manpages:
all-man: _manpages
-.if defined(NO_MANCOMPRESS)
+.if ${MK_MANCOMPRESS} == "no"
# Make special arrangements to filter to a temporary file at build time
-# for NO_MANCOMPRESS.
+# for MK_MANCOMPRESS == no.
.if defined(MANFILTER)
FILTEXTENSION= .filt
.else
@@ -162,7 +159,7 @@ maninstall: _maninstall
_maninstall:
.if defined(MAN) && !empty(MAN)
_maninstall: ${MAN}
-.if defined(NO_MANCOMPRESS)
+.if ${MK_MANCOMPRESS} == "no"
.if defined(MANFILTER)
.for __page in ${MAN}
${MINSTALL} ${__page:T:S/$/${FILTEXTENSION}/g} \
diff --git a/share/mk/bsd.mkopt.mk b/share/mk/bsd.mkopt.mk
new file mode 100644
index 000000000000..c084c7ece2e4
--- /dev/null
+++ b/share/mk/bsd.mkopt.mk
@@ -0,0 +1,40 @@
+#
+# $FreeBSD$
+#
+# Generic mechanism to deal with WITH and WITHOUT options and turn them into MK_ options.
+#
+#
+# For each option FOO that defaults to YES, MK_FOO is set to yes, unless WITHOUT_FOO
+# is defined, in which case it is set to no. If both WITH_FOO and WITHOUT_FOO are
+# defined, WITHOUT_FOO wins. The list of default yes options is contained in the
+# __DEFAULT_YES_OPTIONS variable, which is undefined after expansion.
+#
+# For each option FOO that defaults to NO, MK_FOO is set to no, unless WITH_FOO
+# is defined, in which case it is set to yes. If both WITH_FOO and WITHOUT_FOO are
+# defined, WITH_FOO wins. The list of default no options is contained in the
+# __DEFAULT_NO_OPTIONS variable, which is undefined after expansion.
+#
+.for var in ${__DEFAULT_YES_OPTIONS}
+.if !defined(MK_${var})
+.if defined(WITHOUT_${var}) # IF both WITH and WITHOUT defined, WITHOUT wins.
+MK_${var}:= no
+.else
+MK_${var}:= yes
+.endif
+.endif
+.endfor
+.undef __DEFAULT_YES_OPTIONS
+
+#
+# MK_* options which default to "no".
+#
+.for var in ${__DEFAULT_NO_OPTIONS}
+.if !defined(MK_${var})
+.if defined(WITH_${var}) # If both WITH and WITHOUT defined, WITH wins
+MK_${var}:= yes
+.else
+MK_${var}:= no
+.endif
+.endif
+.endfor
+.undef __DEFAULT_NO_OPTIONS
diff --git a/share/mk/bsd.opts.mk b/share/mk/bsd.opts.mk
new file mode 100644
index 000000000000..f689dc91fbbc
--- /dev/null
+++ b/share/mk/bsd.opts.mk
@@ -0,0 +1,423 @@
+# $FreeBSD$
+#
+# Option file for src builds.
+#
+# Users define WITH_FOO and WITHOUT_FOO on the command line or in /etc/src.conf
+# and /etc/make.conf files. These translate in the build system to MK_FOO={yes,no}
+# with sensible (usually) defaults.
+#
+# Makefiles must include bsd.opts.mk after defining specific MK_FOO options that
+# are applicable for that Makefile (typically there are none, but sometimes there
+# are exceptions). Recursive makes usually add MK_FOO=no for options that they wish
+# to omit from that make.
+#
+# Makefiles must include bsd.srcpot.mk before they test the value of any MK_FOO
+# variable.
+#
+# Makefiles may also assume that this file is included by bsd.own.mk should it
+# need variables defined there prior to the end of the Makefile where
+# bsd.{subdir,lib.bin}.mk is traditionally included.
+#
+# The old-style YES_FOO and NO_FOO are being phased out. No new instances of them
+# should be added. Old instances should be removed since they were just to
+# bridge the gap between FreeBSD 4 and FreeBSD 5.
+#
+# Makefiles should never test WITH_FOO or WITHOUT_FOO directly (although an
+# exception is made for _WITHOUT_SRCONF which turns off this mechanism
+# completely).
+#
+
+.if !target(__<bsd.opts.mk>__)
+__<bsd.opts.mk>__:
+
+.if !defined(_WITHOUT_SRCCONF)
+SRCCONF?= /etc/src.conf
+.if exists(${SRCCONF}) || ${SRCCONF} != "/etc/src.conf"
+.include "${SRCCONF}"
+.endif
+
+#
+# Define MK_* variables (which are either "yes" or "no") for users
+# to set via WITH_*/WITHOUT_* in /etc/src.conf and override in the
+# make(1) environment.
+# These should be tested with `== "no"' or `!= "no"' in makefiles.
+# The NO_* variables should only be set by makefiles for variables
+# that haven't been converted over.
+#
+
+# Only these options are used by bsd.*.mk. Most seem legit, except maybe
+# OPENSSH.
+
+__DEFAULT_YES_OPTIONS = \
+ ASSERT_DEBUG \
+ INFO \
+ INSTALLLIB \
+ KERBEROS \
+ MAN \
+ MANCOMPRESS \
+ NIS \
+ OPENSSH \
+ PROFILE \
+ SSP \
+ SYMVER \
+ TOOLCHAIN
+
+__DEFAULT_NO_OPTIONS = \
+ CTF \
+ DEBUG_FILES \
+ INSTALL_AS_USER \
+
+.include <bsd.mkopt.mk>
+
+# Note: __DEFAULT_{YES,NO}_OPTIONS unset by bsd.mkopt.mk
+
+# These options are used by src the builds
+
+__DEFAULT_YES_OPTIONS = \
+ ACCT \
+ ACPI \
+ AMD \
+ APM \
+ ARM_EABI \
+ AT \
+ ATM \
+ AUDIT \
+ AUTHPF \
+ BINUTILS \
+ BINUTILS_BOOTSTRAP \
+ BLUETOOTH \
+ BMAKE \
+ BOOT \
+ BSD_CPIO \
+ BSNMP \
+ BZIP2 \
+ CALENDAR \
+ CAPSICUM \
+ CASPER \
+ CDDL \
+ CPP \
+ CROSS_COMPILER \
+ CRYPT \
+ CTM \
+ CXX \
+ DICT \
+ DMAGENT \
+ DYNAMICROOT \
+ ED_CRYPTO \
+ EXAMPLES \
+ FDT \
+ FLOPPY \
+ FMTREE \
+ FORMAT_EXTENSIONS \
+ FORTH \
+ FP_LIBC \
+ FREEBSD_UPDATE \
+ GAMES \
+ GCOV \
+ GDB \
+ GNU \
+ GNU_GREP_COMPAT \
+ GPIB \
+ GPIO \
+ GPL_DTC \
+ GROFF \
+ HTML \
+ ICONV \
+ INET \
+ INET6 \
+ IPFILTER \
+ IPFW \
+ JAIL \
+ KDUMP \
+ KERNEL_SYMBOLS \
+ KVM \
+ LDNS \
+ LDNS_UTILS \
+ LEGACY_CONSOLE \
+ LIB32 \
+ LIBPTHREAD \
+ LIBTHR \
+ LOCALES \
+ LOCATE \
+ LPR \
+ LS_COLORS \
+ LZMA_SUPPORT \
+ MAIL \
+ MAILWRAPPER \
+ MAKE \
+ NCURSESW \
+ NDIS \
+ NETCAT \
+ NETGRAPH \
+ NLS \
+ NLS_CATALOGS \
+ NS_CACHING \
+ NTP \
+ OPENSSL \
+ PAM \
+ PC_SYSINSTALL \
+ PF \
+ PKGBOOTSTRAP \
+ PMC \
+ PORTSNAP \
+ PPP \
+ QUOTAS \
+ RCMDS \
+ RCS \
+ RESCUE \
+ ROUTED \
+ SENDMAIL \
+ SETUID_LOGIN \
+ SHAREDOCS \
+ SOURCELESS \
+ SOURCELESS_HOST \
+ SOURCELESS_UCODE \
+ SVNLITE \
+ SYSCALL_COMPAT \
+ SYSCONS \
+ SYSINSTALL \
+ TCSH \
+ TELNET \
+ TEXTPROC \
+ UNBOUND \
+ USB \
+ UTMPX \
+ VI \
+ WIRELESS \
+ WPA_SUPPLICANT_EAPOL \
+ ZFS \
+ ZONEINFO
+
+__DEFAULT_NO_OPTIONS = \
+ AUTO_OBJ \
+ BSD_GREP \
+ CLANG_EXTRAS \
+ EISA \
+ HESIOD \
+ LLDB \
+ META_MODE \
+ NAND \
+ OFED \
+ OPENLDAP \
+ OPENSSH_NONE_CIPHER \
+ SHARED_TOOLCHAIN \
+ SORT_THREADS \
+ STAGING \
+ STAGING_PROG \
+ SVN \
+ TESTS \
+ USB_GADGET_EXAMPLES
+
+#
+# Default behaviour of some options depends on the architecture. Unfortunately
+# this means that we have to test TARGET_ARCH (the buildworld case) as well
+# as MACHINE_ARCH (the non-buildworld case). Normally TARGET_ARCH is not
+# used at all in bsd.*.mk, but we have to make an exception here if we want
+# to allow defaults for some things like clang to vary by target architecture.
+# Additional, per-target behavior should be rarely added only after much
+# gnashing of teeth and grinding of gears.
+#
+.if defined(TARGET_ARCH)
+__T=${TARGET_ARCH}
+.else
+__T=${MACHINE_ARCH}
+.endif
+.if defined(TARGET)
+__TT=${TARGET}
+.else
+__TT=${MACHINE}
+.endif
+# Clang is only for x86, powerpc and little-endian arm right now, by default.
+.if ${__T} == "amd64" || ${__T} == "i386" || ${__T:Mpowerpc*}
+__DEFAULT_YES_OPTIONS+=CLANG CLANG_FULL CLANG_BOOTSTRAP
+.elif ${__T} == "arm" || ${__T} == "armv6" || ${__T} == "armv6hf"
+__DEFAULT_YES_OPTIONS+=CLANG CLANG_BOOTSTRAP
+# GCC is unable to build the full clang on arm, disable it by default.
+__DEFAULT_NO_OPTIONS+=CLANG_FULL
+.else
+__DEFAULT_NO_OPTIONS+=CLANG CLANG_FULL CLANG_BOOTSTRAP
+.endif
+# Clang the default system compiler only on little-endian arm and x86.
+.if ${__T} == "amd64" || ${__T} == "arm" || ${__T} == "armv6" || \
+ ${__T} == "armv6hf" || ${__T} == "i386"
+__DEFAULT_YES_OPTIONS+=CLANG_IS_CC
+__DEFAULT_NO_OPTIONS+=GNUCXX
+# The pc98 bootloader requires gcc to build and so we must leave gcc enabled
+# for pc98 for now.
+.if ${__TT} == "pc98"
+__DEFAULT_YES_OPTIONS+=GCC GCC_BOOTSTRAP
+.else
+__DEFAULT_NO_OPTIONS+=GCC GCC_BOOTSTRAP
+.endif
+.else
+# If clang is not cc, then build gcc by default
+__DEFAULT_NO_OPTIONS+=CLANG_IS_CC CLANG CLANG_BOOTSTRAP
+__DEFAULT_YES_OPTIONS+=GCC GNUCXX GCC_BOOTSTRAP
+.endif
+
+.include <bsd.mkopt.mk>
+
+#
+# Supported NO_* options (if defined, MK_* will be forced to "no",
+# regardless of user's setting).
+#
+# These are transitional and will disappaer in the FreeBSD 12.
+#
+.for var in \
+ CTF \
+ DEBUG_FILES \
+ INSTALLLIB \
+ MAN \
+ PROFILE
+.if defined(NO_${var})
+.warning "NO_${var} is defined, but deprecated. Please use MK_${var}=no instead."
+MK_${var}:=no
+.endif
+.endfor
+
+#
+# MK_* options that default to "yes" if the compiler is a C++11 compiler.
+#
+.include <bsd.compiler.mk>
+.for var in \
+ LIBCPLUSPLUS
+.if !defined(MK_${var})
+.if ${COMPILER_FEATURES:Mc++11}
+.if defined(WITHOUT_${var})
+MK_${var}:= no
+.else
+MK_${var}:= yes
+.endif
+.else
+.if defined(WITH_${var})
+MK_${var}:= yes
+.else
+MK_${var}:= no
+.endif
+.endif
+.endif
+.endfor
+
+#
+# Force some options off if their dependencies are off.
+# Order is somewhat important.
+#
+.if ${MK_LIBPTHREAD} == "no"
+MK_LIBTHR:= no
+.endif
+
+.if ${MK_LDNS} == "no"
+MK_LDNS_UTILS:= no
+MK_UNBOUND:= no
+.endif
+
+.if ${MK_SOURCELESS} == "no"
+MK_SOURCELESS_HOST:= no
+MK_SOURCELESS_UCODE:= no
+.endif
+
+.if ${MK_CDDL} == "no"
+MK_ZFS:= no
+MK_CTF:= no
+.endif
+
+.if ${MK_CRYPT} == "no"
+MK_OPENSSL:= no
+MK_OPENSSH:= no
+MK_KERBEROS:= no
+.endif
+
+.if ${MK_CXX} == "no"
+MK_CLANG:= no
+MK_GROFF:= no
+.endif
+
+.if ${MK_MAIL} == "no"
+MK_MAILWRAPPER:= no
+MK_SENDMAIL:= no
+MK_DMAGENT:= no
+.endif
+
+.if ${MK_NETGRAPH} == "no"
+MK_ATM:= no
+MK_BLUETOOTH:= no
+.endif
+
+.if ${MK_OPENSSL} == "no"
+MK_OPENSSH:= no
+MK_KERBEROS:= no
+.endif
+
+.if ${MK_PF} == "no"
+MK_AUTHPF:= no
+.endif
+
+.if ${MK_TEXTPROC} == "no"
+MK_GROFF:= no
+.endif
+
+.if ${MK_CROSS_COMPILER} == "no"
+MK_BINUTILS_BOOTSTRAP:= no
+MK_CLANG_BOOTSTRAP:= no
+MK_GCC_BOOTSTRAP:= no
+.endif
+
+.if ${MK_TOOLCHAIN} == "no"
+MK_BINUTILS:= no
+MK_CLANG:= no
+MK_GCC:= no
+MK_GDB:= no
+.endif
+
+.if ${MK_CLANG} == "no"
+MK_CLANG_EXTRAS:= no
+MK_CLANG_FULL:= no
+.endif
+
+#
+# Set defaults for the MK_*_SUPPORT variables.
+#
+
+#
+# MK_*_SUPPORT options which default to "yes" unless their corresponding
+# MK_* variable is set to "no".
+#
+.for var in \
+ BZIP2 \
+ GNU \
+ INET \
+ INET6 \
+ KERBEROS \
+ KVM \
+ NETGRAPH \
+ PAM \
+ WIRELESS
+.if defined(WITHOUT_${var}_SUPPORT) || ${MK_${var}} == "no"
+MK_${var}_SUPPORT:= no
+.else
+MK_${var}_SUPPORT:= yes
+.endif
+.endfor
+
+#
+# MK_* options whose default value depends on another option.
+#
+.for vv in \
+ GSSAPI/KERBEROS \
+ MAN_UTILS/MAN
+.if defined(WITH_${vv:H})
+MK_${vv:H}:= yes
+.elif defined(WITHOUT_${vv:H})
+MK_${vv:H}:= no
+.else
+MK_${vv:H}:= ${MK_${vv:T}}
+.endif
+.endfor
+
+.if !${COMPILER_FEATURES:Mc++11}
+MK_LLDB:= no
+.endif
+
+.endif # !_WITHOUT_SRCCONF
+
+.endif
diff --git a/share/mk/bsd.own.mk b/share/mk/bsd.own.mk
index b79d0bd244bf..3105cd63d0a2 100644
--- a/share/mk/bsd.own.mk
+++ b/share/mk/bsd.own.mk
@@ -122,13 +122,34 @@
.if !target(__<bsd.own.mk>__)
__<bsd.own.mk>__:
+.include <bsd.opts.mk>
+
.if !defined(_WITHOUT_SRCCONF)
-SRCCONF?= /etc/src.conf
-.if exists(${SRCCONF}) || ${SRCCONF} != "/etc/src.conf"
-.include "${SRCCONF}"
+
+.if ${MK_CTF} != "no"
+CTFCONVERT_CMD= ${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
+.elif defined(.PARSEDIR) || (defined(MAKE_VERSION) && ${MAKE_VERSION} >= 5201111300)
+CTFCONVERT_CMD=
+.else
+CTFCONVERT_CMD= @:
+.endif
+
+.if ${MK_INSTALL_AS_USER} != "no"
+_uid!= id -u
+.if ${_uid} != 0
+.if !defined(USER)
+USER!= id -un
+.endif
+_gid!= id -gn
+.for x in BIN CONF DOC INFO KMOD LIB MAN NLS SHARE
+$xOWN= ${USER}
+$xGRP= ${_gid}
+.endfor
.endif
.endif
+.endif # !_WITHOUT_SRCCONF
+
# Binaries
BINOWN?= root
BINGRP?= wheel
@@ -192,9 +213,6 @@ NLSMODE?= ${NOBINMODE}
INCLUDEDIR?= /usr/include
-TESTSBASE?= /usr/tests
-TESTSDIR?= ${TESTSBASE}/${RELDIR:S,/tests,,}
-
#
# install(1) parameters.
#
@@ -212,475 +230,8 @@ STRIP?= -s
COMPRESS_CMD?= gzip -cn
COMPRESS_EXT?= .gz
-.if !defined(_WITHOUT_SRCCONF)
-#
-# Define MK_* variables (which are either "yes" or "no") for users
-# to set via WITH_*/WITHOUT_* in /etc/src.conf and override in the
-# make(1) environment.
-# These should be tested with `== "no"' or `!= "no"' in makefiles.
-# The NO_* variables should only be set by makefiles.
-#
-
-#
-# Supported NO_* options (if defined, MK_* will be forced to "no",
-# regardless of user's setting).
-#
-.for var in \
- CTF \
- DEBUG_FILES \
- INSTALLLIB \
- MAN \
- PROFILE
-.if defined(NO_${var})
-.if defined(WITH_${var})
-.undef WITH_${var}
-.endif
-WITHOUT_${var}=
-.endif
-.endfor
-
-#
-# Older-style variables that enabled behaviour when set.
-#
-.if defined(YES_HESIOD)
-WITH_HESIOD=
-.endif
-
-__DEFAULT_YES_OPTIONS = \
- ACCT \
- ACPI \
- AMD \
- APM \
- ARM_EABI \
- ASSERT_DEBUG \
- AT \
- ATF \
- ATM \
- AUDIT \
- AUTHPF \
- BINUTILS \
- BLUETOOTH \
- BMAKE \
- BOOT \
- BSD_CPIO \
- BSNMP \
- BZIP2 \
- CALENDAR \
- CAPSICUM \
- CDDL \
- CPP \
- CROSS_COMPILER \
- CRYPT \
- CTM \
- CXX \
- DICT \
- DYNAMICROOT \
- ED_CRYPTO \
- EXAMPLES \
- FLOPPY \
- FORMAT_EXTENSIONS \
- FORTH \
- FP_LIBC \
- FREEBSD_UPDATE \
- GAMES \
- GCOV \
- GDB \
- GNU \
- GPIB \
- GPIO \
- GROFF \
- HTML \
- ICONV \
- INET \
- INET6 \
- INFO \
- INSTALLLIB \
- IPFILTER \
- IPFW \
- IPX \
- JAIL \
- KDUMP \
- KERBEROS \
- KERNEL_SYMBOLS \
- KVM \
- LDNS \
- LDNS_UTILS \
- LEGACY_CONSOLE \
- LIB32 \
- LIBPTHREAD \
- LIBTHR \
- LOCALES \
- LOCATE \
- LPR \
- LS_COLORS \
- MAIL \
- MAILWRAPPER \
- MAKE \
- MAN \
- NDIS \
- NETCAT \
- NETGRAPH \
- NIS \
- NLS \
- NLS_CATALOGS \
- NS_CACHING \
- NTP \
- OPENSSH \
- OPENSSL \
- PAM \
- PC_SYSINSTALL \
- PF \
- PKGBOOTSTRAP \
- PMC \
- PORTSNAP \
- PPP \
- PROFILE \
- QUOTAS \
- RCMDS \
- RCS \
- RESCUE \
- ROUTED \
- SENDMAIL \
- SETUID_LOGIN \
- SHAREDOCS \
- SOURCELESS \
- SOURCELESS_HOST \
- SOURCELESS_UCODE \
- SSP \
- SVNLITE \
- SYMVER \
- SYSCONS \
- SYSINSTALL \
- TCSH \
- TELNET \
- TEXTPROC \
- TOOLCHAIN \
- UNBOUND \
- USB \
- UTMPX \
- WIRELESS \
- WPA_SUPPLICANT_EAPOL \
- ZFS \
- ZONEINFO
-
-__DEFAULT_NO_OPTIONS = \
- AUTO_OBJ \
- BSD_GREP \
- BSD_PATCH \
- CLANG_EXTRAS \
- CTF \
- DEBUG_FILES \
- GPL_DTC \
- HESIOD \
- LIBICONV_COMPAT \
- INSTALL_AS_USER \
- LLDB \
- META_MODE \
- NAND \
- NMTREE \
- OFED \
- OPENSSH_NONE_CIPHER \
- PKGTOOLS \
- SHARED_TOOLCHAIN \
- STAGING \
- STAGING_PROG \
- SVN \
- USB_GADGET_EXAMPLES
-
-#
-# Default behaviour of some options depends on the architecture. Unfortunately
-# this means that we have to test TARGET_ARCH (the buildworld case) as well
-# as MACHINE_ARCH (the non-buildworld case). Normally TARGET_ARCH is not
-# used at all in bsd.*.mk, but we have to make an exception here if we want
-# to allow defaults for some things like clang and fdt to vary by target
-# architecture.
-#
-.if defined(TARGET_ARCH)
-__T=${TARGET_ARCH}
-.else
-__T=${MACHINE_ARCH}
-.endif
-.if defined(TARGET)
-__TT=${TARGET}
-.else
-__TT=${MACHINE}
-.endif
-# Clang is only for x86, powerpc and little-endian arm right now, by default.
-.if ${__T} == "amd64" || ${__T} == "i386" || ${__T:Mpowerpc*}
-__DEFAULT_YES_OPTIONS+=CLANG CLANG_FULL
-.elif ${__T} == "arm" || ${__T} == "armv6"
-__DEFAULT_YES_OPTIONS+=CLANG
-# GCC is unable to build the full clang on arm, disable it by default.
-__DEFAULT_NO_OPTIONS+=CLANG_FULL
-.else
-__DEFAULT_NO_OPTIONS+=CLANG CLANG_FULL
-.endif
-# Clang the default system compiler only on little-endian arm and x86.
-.if ${__T} == "amd64" || ${__T} == "arm" || ${__T} == "armv6" || \
- ${__T} == "i386"
-__DEFAULT_YES_OPTIONS+=CLANG_IS_CC
-# The pc98 bootloader requires gcc to build and so we must leave gcc enabled
-# for pc98 for now.
-.if ${__TT} == "pc98"
-__DEFAULT_NO_OPTIONS+=GNUCXX
-__DEFAULT_YES_OPTIONS+=GCC
-.else
-__DEFAULT_NO_OPTIONS+=GCC GNUCXX
-.endif
-# The libc++ headers use c++11 extensions. These are normally silenced because
-# they are treated as system headers, but we explicitly disable that warning
-# suppression when building the base system to catch bugs in our headers.
-# Eventually we'll want to start building the base system C++ code as C++11,
-# but not yet.
-_COMPVERSION!= ${CC} --version
-.if ${_COMPVERSION:Mclang}
-CXXFLAGS+= -Wno-c++11-extensions
-.endif
-.else
-# If clang is not cc, then build gcc by default
-__DEFAULT_NO_OPTIONS+=CLANG_IS_CC
-__DEFAULT_YES_OPTIONS+=GCC
-# And if g++ is c++, build the rest of the GNU C++ stack
-.if defined(WITHOUT_CXX)
-__DEFAULT_NO_OPTIONS+=GNUCXX
-.else
-__DEFAULT_YES_OPTIONS+=GNUCXX
-.endif
-.endif
-# FDT is needed only for arm, mips and powerpc
-.if ${__T:Marm*} || ${__T:Mpowerpc*} || ${__T:Mmips*}
-__DEFAULT_YES_OPTIONS+=FDT
-.else
-__DEFAULT_NO_OPTIONS+=FDT
-.endif
-.undef __T
-
-#
-# MK_* options which default to "yes".
-#
-.for var in ${__DEFAULT_YES_OPTIONS}
-.if defined(WITH_${var}) && defined(WITHOUT_${var})
-.error WITH_${var} and WITHOUT_${var} can't both be set.
-.endif
-.if defined(MK_${var})
-.error MK_${var} can't be set by a user.
-.endif
-.if defined(WITHOUT_${var})
-MK_${var}:= no
-.else
-MK_${var}:= yes
-.endif
-.endfor
-.undef __DEFAULT_YES_OPTIONS
-
-#
-# MK_* options which default to "no".
-#
-.for var in ${__DEFAULT_NO_OPTIONS}
-.if defined(WITH_${var}) && defined(WITHOUT_${var})
-.error WITH_${var} and WITHOUT_${var} can't both be set.
-.endif
-.if defined(MK_${var})
-.error MK_${var} can't be set by a user.
-.endif
-.if defined(WITH_${var})
-MK_${var}:= yes
-.else
-MK_${var}:= no
-.endif
-.endfor
-.undef __DEFAULT_NO_OPTIONS
-
-#
-# Force some options off if their dependencies are off.
-# Order is somewhat important.
-#
-.if ${MK_LIBPTHREAD} == "no"
-MK_LIBTHR:= no
-.endif
-
-.if ${MK_ICONV} == "no"
-MK_LIBICONV_COMPAT:= no
-.endif
-
-.if ${MK_LDNS} == "no"
-MK_LDNS_UTILS:= no
-MK_UNBOUND:= no
-.endif
-
-.if ${MK_SOURCELESS} == "no"
-MK_SOURCELESS_HOST:= no
-MK_SOURCELESS_UCODE:= no
-.endif
-
-.if ${MK_CDDL} == "no"
-MK_ZFS:= no
-MK_CTF:= no
-.endif
-
-.if ${MK_CRYPT} == "no"
-MK_OPENSSL:= no
-MK_OPENSSH:= no
-MK_KERBEROS:= no
-.endif
-
-.if ${MK_CXX} == "no"
-MK_CLANG:= no
-MK_GROFF:= no
-.endif
-
-.if ${MK_MAIL} == "no"
-MK_MAILWRAPPER:= no
-MK_SENDMAIL:= no
-.endif
-
-.if ${MK_NETGRAPH} == "no"
-MK_ATM:= no
-MK_BLUETOOTH:= no
-.endif
-
-.if ${MK_OPENSSL} == "no"
-MK_OPENSSH:= no
-MK_KERBEROS:= no
-.endif
-
-.if ${MK_PF} == "no"
-MK_AUTHPF:= no
-.endif
-
-.if ${MK_TEXTPROC} == "no"
-MK_GROFF:= no
-.endif
-
-.if ${MK_TOOLCHAIN} == "no"
-MK_BINUTILS:= no
-MK_CLANG:= no
-MK_GCC:= no
-MK_GDB:= no
-.endif
-
-.if ${MK_CLANG} == "no"
-MK_CLANG_EXTRAS:= no
-MK_CLANG_FULL:= no
-MK_CLANG_IS_CC:= no
-.endif
-
-.if !defined(.PARSEDIR)
-MK_AUTO_OBJ:= no
-MK_META_MODE:= no
-.endif
-
-.if ${MK_META_MODE} == "no"
-MK_STAGING:= no
-MK_STAGING_PROG:= no
-.endif
-
-.if ${MK_CLANG_IS_CC} == "no"
-MK_LLDB:= no
-.endif
-
-#
-# Set defaults for the MK_*_SUPPORT variables.
-#
-
-#
-# MK_*_SUPPORT options which default to "yes" unless their corresponding
-# MK_* variable is set to "no".
-#
-.for var in \
- BZIP2 \
- GNU \
- INET \
- INET6 \
- IPX \
- KERBEROS \
- KVM \
- NETGRAPH \
- PAM \
- WIRELESS
-.if defined(WITH_${var}_SUPPORT) && defined(WITHOUT_${var}_SUPPORT)
-.error WITH_${var}_SUPPORT and WITHOUT_${var}_SUPPORT can't both be set.
-.endif
-.if defined(MK_${var}_SUPPORT)
-.error MK_${var}_SUPPORT can't be set by a user.
-.endif
-.if defined(WITHOUT_${var}_SUPPORT) || ${MK_${var}} == "no"
-MK_${var}_SUPPORT:= no
-.else
-MK_${var}_SUPPORT:= yes
-.endif
-.endfor
-
-#
-# MK_* options whose default value depends on another option.
-#
-.for vv in \
- GSSAPI/KERBEROS \
- MAN_UTILS/MAN
-.if defined(WITH_${vv:H}) && defined(WITHOUT_${vv:H})
-.error WITH_${vv:H} and WITHOUT_${vv:H} can't both be set.
-.endif
-.if defined(MK_${vv:H})
-.error MK_${vv:H} can't be set by a user.
-.endif
-.if defined(WITH_${vv:H})
-MK_${vv:H}:= yes
-.elif defined(WITHOUT_${vv:H})
-MK_${vv:H}:= no
-.else
-MK_${vv:H}:= ${MK_${vv:T}}
-.endif
-.endfor
-
-#
-# MK_* options that default to "yes" if the compiler is a C++11 compiler.
-#
-.include <bsd.compiler.mk>
-.for var in \
- LIBCPLUSPLUS
-.if defined(WITH_${var}) && defined(WITHOUT_${var})
-.error WITH_${var} and WITHOUT_${var} can't both be set.
-.endif
-.if defined(MK_${var})
-.error MK_${var} can't be set by a user.
-.endif
-.if ${COMPILER_FEATURES:Mc++11}
-.if defined(WITHOUT_${var})
-MK_${var}:= no
-.else
-MK_${var}:= yes
-.endif
-.else
-.if defined(WITH_${var})
-MK_${var}:= yes
-.else
-MK_${var}:= no
-.endif
-.endif
-.endfor
-
-.if ${MK_CTF} != "no"
-CTFCONVERT_CMD= ${CTFCONVERT} ${CTFFLAGS} ${.TARGET}
-.elif defined(.PARSEDIR) || (defined(MAKE_VERSION) && ${MAKE_VERSION} >= 5201111300)
-CTFCONVERT_CMD=
-.else
-CTFCONVERT_CMD= @:
-.endif
-
-.if ${MK_INSTALL_AS_USER} != "no"
-_uid!= id -u
-.if ${_uid} != 0
-.if !defined(USER)
-USER!= id -un
-.endif
-_gid!= id -gn
-.for x in BIN CONF DOC INFO KMOD LIB MAN NLS SHARE
-$xOWN= ${USER}
-$xGRP= ${_gid}
-.endfor
-.endif
-.endif
-
-.endif # !_WITHOUT_SRCCONF
+# Pointer to the top directory into which tests are installed. Should not be
+# overriden by Makefiles, but the user may choose to set this in src.conf(5).
+TESTSBASE?= /usr/tests
.endif # !target(__<bsd.own.mk>__)
diff --git a/share/mk/bsd.prog.mk b/share/mk/bsd.prog.mk
index 1c28183f6c44..fc6ccbe0cac0 100644
--- a/share/mk/bsd.prog.mk
+++ b/share/mk/bsd.prog.mk
@@ -176,8 +176,8 @@ _EXTRADEPEND:
.endif
.else
echo ${PROG}: ${LIBC} ${DPADD} >> ${DEPENDFILE}
-.if defined(PROG_CXX)
-.if ${MK_CLANG_IS_CC} != "no" && empty(CXXFLAGS:M-stdlib=libstdc++)
+.if defined(PROG_CXX) && !defined(EARLY_BUILD)
+.if ${COMPILER_TYPE} == "clang" && empty(CXXFLAGS:M-stdlib=libstdc++)
echo ${PROG}: ${LIBCPLUSPLUS} >> ${DEPENDFILE}
.else
echo ${PROG}: ${LIBSTDCPLUSPLUS} >> ${DEPENDFILE}
diff --git a/share/mk/bsd.progs.mk b/share/mk/bsd.progs.mk
index 3262004297bb..c5e8c3d85adc 100644
--- a/share/mk/bsd.progs.mk
+++ b/share/mk/bsd.progs.mk
@@ -16,14 +16,20 @@
.MAIN: all
-.if defined(PROGS)
+.if defined(PROGS) || defined(PROGS_CXX)
+# we really only use PROGS below...
+PROGS += ${PROGS_CXX}
# In meta mode, we can capture dependenices for _one_ of the progs.
# if makefile doesn't nominate one, we use the first.
+.if defined(.PARSEDIR)
.ifndef UPDATE_DEPENDFILE_PROG
UPDATE_DEPENDFILE_PROG = ${PROGS:[1]}
.export UPDATE_DEPENDFILE_PROG
.endif
+.else
+UPDATE_DEPENDFILE_PROG?= no
+.endif
.ifndef PROG
# They may have asked us to build just one
@@ -38,13 +44,15 @@ PROG ?= $t
# just one of many
PROG_VARS += BINDIR CFLAGS CPPFLAGS CXXFLAGS DPADD DPLIBS LDADD MAN SRCS
.for v in ${PROG_VARS:O:u}
-.if defined(${v}.${PROG})
+.if defined(${v}.${PROG}) || defined(${v}_${PROG})
$v += ${${v}_${PROG}:U${${v}.${PROG}}}
+.else
+$v ?=
.endif
.endfor
# for meta mode, there can be only one!
-.if ${PROG} == ${UPDATE_DEPENDFILE_PROG:Uno}
+.if ${PROG} == ${UPDATE_DEPENDFILE_PROG}
UPDATE_DEPENDFILE ?= yes
.endif
UPDATE_DEPENDFILE ?= NO
@@ -63,9 +71,9 @@ UPDATE_DEPENDFILE = NO
.endif
# handle being called [bsd.]progs.mk
-.include <${.PARSEFILE:S,progs,prog,}>
+.include <bsd.prog.mk>
-.ifndef PROG
+.ifndef _RECURSING_PROGS
# tell progs.mk we might want to install things
PROGS_TARGETS+= cleandepend cleandir cleanobj depend install
@@ -76,11 +84,13 @@ x.$p= PROG_CXX=$p
.endif
$p ${p}_p: .PHONY .MAKE
- (cd ${.CURDIR} && ${.MAKE} -f ${MAKEFILE} PROG=$p ${x.$p})
+ (cd ${.CURDIR} && ${MAKE} -f ${MAKEFILE} _RECURSING_PROGS= \
+ SUBDIR= PROG=$p ${x.$p})
.for t in ${PROGS_TARGETS:O:u}
$p.$t: .PHONY .MAKE
- (cd ${.CURDIR} && ${.MAKE} -f ${MAKEFILE} PROG=$p ${x.$p} ${@:E})
+ (cd ${.CURDIR} && ${MAKE} -f ${MAKEFILE} _RECURSING_PROGS= \
+ SUBDIR= PROG=$p ${x.$p} ${@:E})
.endfor
.endfor
@@ -88,4 +98,18 @@ $p.$t: .PHONY .MAKE
$t: ${PROGS:%=%.$t}
.endfor
+SCRIPTS_TARGETS+= cleandepend cleandir cleanobj depend install
+
+.for p in ${SCRIPTS}
+.for t in ${SCRIPTS_TARGETS:O:u}
+$p.$t: .PHONY .MAKE
+ (cd ${.CURDIR} && ${MAKE} -f ${MAKEFILE} _RECURSING_PROGS= \
+ SUBDIR= SCRIPT=$p ${x.$p} ${@:E})
+.endfor
+.endfor
+
+.for t in ${SCRIPTS_TARGETS:O:u}
+$t: ${SCRIPTS:%=%.$t}
+.endfor
+
.endif
diff --git a/share/mk/bsd.subdir.mk b/share/mk/bsd.subdir.mk
index 8f2dd80b43ee..072c76c39450 100644
--- a/share/mk/bsd.subdir.mk
+++ b/share/mk/bsd.subdir.mk
@@ -54,7 +54,7 @@ distribute: .MAKE
_SUBDIR: .USE .MAKE
.if defined(SUBDIR) && !empty(SUBDIR) && !defined(NO_SUBDIR)
- @${_+_}set -e; for entry in ${SUBDIR}; do \
+ @${_+_}set -e; for entry in ${SUBDIR:N.WAIT}; do \
if test -d ${.CURDIR}/$${entry}.${MACHINE_ARCH}; then \
${ECHODIR} "===> ${DIRPRFX}$${entry}.${MACHINE_ARCH} (${.TARGET:realinstall=install})"; \
edir=$${entry}.${MACHINE_ARCH}; \
@@ -69,7 +69,7 @@ _SUBDIR: .USE .MAKE
done
.endif
-${SUBDIR}: .PHONY .MAKE
+${SUBDIR:N.WAIT}: .PHONY .MAKE
${_+_}@if test -d ${.TARGET}.${MACHINE_ARCH}; then \
cd ${.CURDIR}/${.TARGET}.${MACHINE_ARCH}; \
else \
@@ -77,10 +77,37 @@ ${SUBDIR}: .PHONY .MAKE
fi; \
${MAKE} all
+# Work around parsing of .if nested in .for by putting .WAIT string into a var.
+__wait= .WAIT
.for __target in all all-man checkdpadd clean cleandepend cleandir \
cleanilinks depend distribute lint maninstall manlint obj objlink \
realinstall regress tags ${SUBDIR_TARGETS}
+.ifdef SUBDIR_PARALLEL
+__subdir_targets=
+.for __dir in ${SUBDIR}
+.if ${__wait} == ${__dir}
+__subdir_targets+= .WAIT
+.else
+__subdir_targets+= ${__target}_subdir_${__dir}
+${__target}_subdir_${__dir}: .MAKE
+ @${_+_}set -e; \
+ if test -d ${.CURDIR}/${__dir}.${MACHINE_ARCH}; then \
+ ${ECHODIR} "===> ${DIRPRFX}${__dir}.${MACHINE_ARCH} (${__target:realinstall=install})"; \
+ edir=${__dir}.${MACHINE_ARCH}; \
+ cd ${.CURDIR}/$${edir}; \
+ else \
+ ${ECHODIR} "===> ${DIRPRFX}${__dir} (${__target:realinstall=install})"; \
+ edir=${__dir}; \
+ cd ${.CURDIR}/$${edir}; \
+ fi; \
+ ${MAKE} ${__target:realinstall=install} \
+ DIRPRFX=${DIRPRFX}$$edir/
+.endif
+.endfor
+${__target}: ${__subdir_targets}
+.else
${__target}: _SUBDIR
+.endif
.endfor
.for __target in files includes
diff --git a/share/mk/bsd.sys.mk b/share/mk/bsd.sys.mk
index 6df0dab24e2e..a222607f0a7c 100644
--- a/share/mk/bsd.sys.mk
+++ b/share/mk/bsd.sys.mk
@@ -30,10 +30,9 @@ CFLAGS+= -std=${CSTD}
.if defined(WARNS)
.if ${WARNS} >= 1
CWARNFLAGS+= -Wsystem-headers
-.if !defined(NO_WERROR) && (${COMPILER_TYPE} != "clang" \
- || !defined(NO_WERROR.clang))
+.if !defined(NO_WERROR) && !defined(NO_WERROR.${COMPILER_TYPE})
CWARNFLAGS+= -Werror
-.endif # !NO_WERROR && (!CLANG || !NO_WERROR.clang)
+.endif # !NO_WERROR && !NO_WERROR.${COMPILER_TYPE}
.endif # WARNS >= 1
.if ${WARNS} >= 2
CWARNFLAGS+= -Wall -Wno-format-y2k
@@ -45,10 +44,9 @@ CWARNFLAGS+= -W -Wno-unused-parameter -Wstrict-prototypes\
.if ${WARNS} >= 4
CWARNFLAGS+= -Wreturn-type -Wcast-qual -Wwrite-strings -Wswitch -Wshadow\
-Wunused-parameter
-.if !defined(NO_WCAST_ALIGN) && (${COMPILER_TYPE} != "clang" \
- || !defined(NO_WCAST_ALIGN.clang))
+.if !defined(NO_WCAST_ALIGN) && !defined(NO_WCAST_ALIGN.${COMPILER_TYPE})
CWARNFLAGS+= -Wcast-align
-.endif # !NO_WCAST_ALIGN && (!CLANG || !NO_WCAST_ALIGN.clang)
+.endif # !NO_WCAST_ALIGN !NO_WCAST_ALIGN.${COMPILER_TYPE}
.endif # WARNS >= 4
# BDECFLAGS
.if ${WARNS} >= 6
@@ -69,11 +67,11 @@ CWARNFLAGS+= -Wno-pointer-sign
# is set to low values, these have to be disabled explicitly.
.if ${COMPILER_TYPE} == "clang" && !defined(EARLY_BUILD)
.if ${WARNS} <= 6
-CWARNFLAGS+= -Wno-empty-body -Wno-string-plus-int
+CWARNFLAGS+= -Wno-empty-body -Wno-string-plus-int -Wno-unused-const-variable
.endif # WARNS <= 6
.if ${WARNS} <= 3
CWARNFLAGS+= -Wno-tautological-compare -Wno-unused-value\
- -Wno-parentheses-equality -Wno-unused-function -Wno-conversion
+ -Wno-parentheses-equality -Wno-unused-function -Wno-enum-conversion
.endif # WARNS <= 3
.if ${WARNS} <= 2
CWARNFLAGS+= -Wno-switch -Wno-switch-enum -Wno-knr-promoted-parameter
@@ -99,27 +97,40 @@ CWARNFLAGS+= -Wformat=2 -Wno-format-extra-args
CWARNFLAGS+= -Wno-format-nonliteral
.endif # WARNS <= 3
.endif # CLANG
-.if !defined(NO_WERROR) && (${COMPILER_TYPE} != "clang" \
- || !defined(NO_WERROR.clang))
+.if !defined(NO_WERROR) && !defined(NO_WERROR.${COMPILER_TYPE})
CWARNFLAGS+= -Werror
-.endif # !NO_WERROR && (!CLANG || !NO_WERROR.clang)
+.endif # !NO_WERROR && !NO_WERROR.${COMPILER_TYPE}
.endif # WFORMAT > 0
.endif # WFORMAT
-.if defined(NO_WFORMAT) || (${COMPILER_TYPE} == "clang" && defined(NO_WFORMAT.clang))
+.if defined(NO_WFORMAT) || defined(NO_WFORMAT.${COMPILER_TYPE})
CWARNFLAGS+= -Wno-format
-.endif # NO_WFORMAT || (CLANG && NO_WFORMAT.clang)
+.endif # NO_WFORMAT || NO_WFORMAT.${COMPILER_TYPE}
.endif # !NO_WARNS
.if defined(IGNORE_PRAGMA)
CWARNFLAGS+= -Wno-unknown-pragmas
.endif # IGNORE_PRAGMA
-.if ${COMPILER_TYPE} == "clang" && !defined(EARLY_BUILD)
+.if !defined(EARLY_BUILD)
+.if ${COMPILER_TYPE} == "clang"
CLANG_NO_IAS= -no-integrated-as
CLANG_OPT_SMALL= -mstack-alignment=8 -mllvm -inline-threshold=3\
-mllvm -enable-load-pre=false -mllvm -simplifycfg-dup-ret
CFLAGS+= -Qunused-arguments
+.if ${MACHINE_CPUARCH} == "sparc64"
+# Don't emit .cfi directives, since we must use GNU as on sparc64, for now.
+CFLAGS+= -fno-dwarf2-cfi-asm
+.endif # SPARC64
+# The libc++ headers use c++11 extensions. These are normally silenced because
+# they are treated as system headers, but we explicitly disable that warning
+# suppression when building the base system to catch bugs in our headers.
+# Eventually we'll want to start building the base system C++ code as C++11,
+# but not yet.
+CXXFLAGS+= -Wno-c++11-extensions
.endif # CLANG
+CFLAGS+= ${CFLAGS.${COMPILER_TYPE}}
+CXXFLAGS+= ${CXXFLAGS.${COMPILER_TYPE}}
+.endif # !EARLY_BUILD
.if ${MK_SSP} != "no" && ${MACHINE_CPUARCH} != "ia64" && \
${MACHINE_CPUARCH} != "arm" && ${MACHINE_CPUARCH} != "mips"
@@ -137,12 +148,16 @@ CFLAGS+= ${CWARNFLAGS}
PHONY_NOTMAIN = afterdepend afterinstall all beforedepend beforeinstall \
beforelinking build build-tools buildfiles buildincludes \
checkdpadd clean cleandepend cleandir cleanobj configure \
- depend dependall distclean distribute exe extract fetch \
+ depend dependall distclean distribute exe extract \
html includes install installfiles installincludes lint \
- obj objlink objs objwarn patch realall realdepend \
+ obj objlink objs objwarn realall realdepend \
realinstall regress subdir-all subdir-depend subdir-install \
tags whereobj
+.if defined(PORTNAME)
+PHONY_NOTMAIN+= fetch patch
+.endif
+
.if defined(.PARSEDIR)
# we don't want ${PROG} to be PHONY
.PHONY: ${PHONY_NOTMAIN:N${PROG:U}}
diff --git a/share/mk/bsd.test.mk b/share/mk/bsd.test.mk
index 24b6b61dc160..f05a0ee2df54 100644
--- a/share/mk/bsd.test.mk
+++ b/share/mk/bsd.test.mk
@@ -1,72 +1,67 @@
-# $NetBSD: bsd.test.mk,v 1.21 2012/08/25 22:21:16 jmmv Exp $
# $FreeBSD$
+#
+# Generic build infrastructure for test programs.
+#
+# This is the only public file that should be included by Makefiles when
+# tests are to be built. All other *.test.mk files are internal and not
+# to be included directly.
.include <bsd.init.mk>
-.if defined(TESTS_C)
-PROGS+= ${TESTS_C}
-.for _T in ${TESTS_C}
-BINDIR.${_T}= ${TESTSDIR}
-MAN.${_T}?= # empty
-.endfor
+__<bsd.test.mk>__:
+
+# List of subdirectories containing tests into which to recurse. This has the
+# same semantics as SUBDIR at build-time. However, the directories listed here
+# get registered into the run-time test suite definitions so that the test
+# engines know to recurse into these directories.
+#
+# In other words: list here any directories that contain test programs but use
+# SUBDIR for directories that may contain helper binaries and/or data files.
+TESTS_SUBDIRS?=
+
+# If defined, indicates that the tests built by the Makefile are not part of
+# the FreeBSD Test Suite. The implication of this is that the tests won't be
+# installed under /usr/tests/ and that Kyua won't be able to run them.
+#NOT_FOR_TEST_SUITE=
+
+# List of variables to pass to the tests at run-time via the environment.
+TESTS_ENV?=
+
+# Ordered list of directories to construct the PATH for the tests.
+TESTS_PATH+= ${DESTDIR}/bin ${DESTDIR}/sbin \
+ ${DESTDIR}/usr/bin ${DESTDIR}/usr/sbin
+TESTS_ENV+= PATH=${TESTS_PATH:tW:C/ +/:/g}
+
+# Ordered list of directories to construct the LD_LIBRARY_PATH for the tests.
+TESTS_LD_LIBRARY_PATH+= ${DESTDIR}/lib ${DESTDIR}/usr/lib
+TESTS_ENV+= LD_LIBRARY_PATH=${TESTS_LD_LIBRARY_PATH:tW:C/ +/:/g}
+
+# List of all tests being built. The various *.test.mk modules extend this
+# variable as needed.
+_TESTS=
+
+# Pull in the definitions of all supported test interfaces.
+.include <atf.test.mk>
+.include <plain.test.mk>
+.include <tap.test.mk>
+
+.if !empty(TESTS_SUBDIRS)
+SUBDIR+= ${TESTS_SUBDIRS}
.endif
-.if defined(TESTS_CXX)
-PROGS_CXX+= ${TESTS_CXX}
-PROGS+= ${TESTS_CXX}
-.for _T in ${TESTS_CXX}
-BINDIR.${_T}= ${TESTSDIR}
-MAN.${_T}?= # empty
-.endfor
-.endif
-
-.if defined(TESTS_SH)
-SCRIPTS+= ${TESTS_SH}
-.for _T in ${TESTS_SH}
-SCRIPTSDIR_${_T}= ${TESTSDIR}
-.endfor
-.endif
-
-TESTSBASE?= ${DESTDIR}/usr/tests
-
# it is rare for test cases to have man pages
.if !defined(MAN)
-WITHOUT_MAN=yes
-.export WITHOUT_MAN
+NO_MAN=yes
+.export NO_MAN
.endif
# tell progs.mk we might want to install things
-BINDIR = ${TESTSDIR}
+PROG_VARS+= BINDIR
PROGS_TARGETS+= install
-.ifdef PROG
-# we came here via bsd.progs.mk below
-# parent will do staging.
-MK_STAGING= no
-.endif
-
-.if !empty(PROGS) || !empty(PROGS_CXX) || !empty(SCRIPTS)
-.include <bsd.progs.mk>
-.endif
-
-beforetest: .PHONY
-.if defined(TESTSDIR)
-.if ${TESTSDIR} == ${TESTSBASE}
-# Forbid running from ${TESTSBASE}. It can cause false positives/negatives and
-# it does not cover all the tests (e.g. it misses testing software in external).
- @echo "*** Sorry, you cannot use make test from src/tests. Install the"
- @echo "*** tests into their final location and run them from ${TESTSBASE}"
- @false
-.else
- @echo "*** Using this test does not preclude you from running the tests"
- @echo "*** installed in ${TESTSBASE}. This test run may raise false"
- @echo "*** positives and/or false negatives."
-.endif
-.else
- @echo "*** No TESTSDIR defined; nothing to do."
- @false
+.if !defined(NOT_FOR_TEST_SUITE)
+.include <suite.test.mk>
.endif
- @echo
.if !target(realtest)
realtest: .PHONY
@@ -82,6 +77,22 @@ test: beforetest realtest
test: aftertest
.endif
+.if !empty(SUBDIR)
+.include <bsd.subdir.mk>
+.endif
+
+.ifdef PROG
+# we came here via bsd.progs.mk below
+# parent will do staging.
+MK_STAGING= no
+.endif
+
+.if !empty(PROGS) || !empty(PROGS_CXX) || !empty(SCRIPTS)
+.include <bsd.progs.mk>
+.elif !empty(FILES)
+.include <bsd.files.mk>
+.endif
+
.if !defined(PROG) && ${MK_STAGING} != "no"
.if !defined(_SKIP_BUILD)
# this will handle staging if needed
@@ -92,10 +103,9 @@ _SKIP_BUILD=
.if !empty(PROGS)
stage_files.prog: ${PROGS}
.endif
-
.include <bsd.prog.mk>
-
.endif
+
.if !target(objwarn)
.include <bsd.obj.mk>
.endif
diff --git a/share/mk/plain.test.mk b/share/mk/plain.test.mk
new file mode 100644
index 000000000000..99685ef1d966
--- /dev/null
+++ b/share/mk/plain.test.mk
@@ -0,0 +1,64 @@
+# $FreeBSD$
+#
+# You must include bsd.test.mk instead of this file from your Makefile.
+#
+# Logic to build and install plain test programs. A plain test programs it not
+# supposed to use any specific testing framework: all it does is run some code
+# and report the test's pass or fail status via a 0 or 1 exit code.
+
+.if !target(__<bsd.test.mk>__)
+.error plain.test.mk cannot be included directly.
+.endif
+
+# List of C, C++ and shell test programs to build.
+#
+# Programs listed here are built according to the semantics of bsd.prog.mk for
+# PROGS, PROGS_CXX and SCRIPTS, respectively.
+#
+# Test programs registered in this manner are set to be installed into TESTSDIR
+# (which should be overriden by the Makefile) and are not required to provide a
+# manpage.
+PLAIN_TESTS_C?=
+PLAIN_TESTS_CXX?=
+PLAIN_TESTS_SH?=
+
+.if !empty(PLAIN_TESTS_C)
+PROGS+= ${PLAIN_TESTS_C}
+_TESTS+= ${PLAIN_TESTS_C}
+.for _T in ${PLAIN_TESTS_C}
+BINDIR.${_T}= ${TESTSDIR}
+MAN.${_T}?= # empty
+SRCS.${_T}?= ${_T}.c
+TEST_INTERFACE.${_T}= plain
+.endfor
+.endif
+
+.if !empty(PLAIN_TESTS_CXX)
+PROGS_CXX+= ${PLAIN_TESTS_CXX}
+_TESTS+= ${PLAIN_TESTS_CXX}
+.for _T in ${PLAIN_TESTS_CXX}
+BINDIR.${_T}= ${TESTSDIR}
+MAN.${_T}?= # empty
+SRCS.${_T}?= ${_T}.cc
+TEST_INTERFACE.${_T}= plain
+.endfor
+.endif
+
+.if !empty(PLAIN_TESTS_SH)
+SCRIPTS+= ${PLAIN_TESTS_SH}
+_TESTS+= ${PLAIN_TESTS_SH}
+.for _T in ${PLAIN_TESTS_SH}
+SCRIPTSDIR_${_T}= ${TESTSDIR}
+TEST_INTERFACE.${_T}= plain
+CLEANFILES+= ${_T} ${_T}.tmp
+# TODO(jmmv): It seems to me that this SED and SRC functionality should
+# exist in bsd.prog.mk along the support for SCRIPTS. Move it there if
+# this proves to be useful within the tests.
+PLAIN_TESTS_SH_SED_${_T}?= # empty
+PLAIN_TESTS_SH_SRC_${_T}?= ${_T}.sh
+${_T}: ${PLAIN_TESTS_SH_SRC_${_T}}
+ cat ${.ALLSRC} | sed ${PLAIN_TESTS_SH_SED_${_T}} >${.TARGET}.tmp
+ chmod +x ${.TARGET}.tmp
+ mv ${.TARGET}.tmp ${.TARGET}
+.endfor
+.endif
diff --git a/share/mk/suite.test.mk b/share/mk/suite.test.mk
new file mode 100644
index 000000000000..5e1504c15ab0
--- /dev/null
+++ b/share/mk/suite.test.mk
@@ -0,0 +1,127 @@
+# $FreeBSD$
+#
+# You must include bsd.test.mk instead of this file from your Makefile.
+#
+# Internal glue for the build of /usr/tests/.
+
+.if !target(__<bsd.test.mk>__)
+.error suite.test.mk cannot be included directly.
+.endif
+
+# Directory in which to install tests defined by the current Makefile.
+# Makefiles have to override this to point to a subdirectory of TESTSBASE.
+TESTSDIR?= .
+
+# Name of the test suite these tests belong to. Should rarely be changed for
+# Makefiles built into the FreeBSD src tree.
+TESTSUITE?= FreeBSD
+
+# Knob to control the handling of the Kyuafile for this Makefile.
+#
+# If 'yes', a Kyuafile exists in the source tree and is installed into
+# TESTSDIR.
+#
+# If 'auto', a Kyuafile is automatically generated based on the list of test
+# programs built by the Makefile and is installed into TESTSDIR. This is the
+# default and is sufficient in the majority of the cases.
+#
+# If 'no', no Kyuafile is installed.
+KYUAFILE?= auto
+
+# Per-test program interface definition.
+#
+# The name provided here must match one of the interface names supported by
+# Kyua as this is later encoded in the Kyuafile test program definitions.
+#TEST_INTERFACE.<test-program>= interface-name
+
+# Per-test program metadata properties as a list of key/value pairs.
+#
+# All the variables for a particular program are appended to the program's
+# definition in the Kyuafile. This feature can be used to avoid having to
+# explicitly supply a Kyuafile in the source directory, allowing the caller
+# Makefile to rely on the KYUAFILE=auto behavior defined here.
+#TEST_METADATA.<test-program>+= key="value"
+
+# Path to the prefix of the installed Kyua CLI, if any.
+#
+# If kyua is installed from ports, we automatically define a realtest target
+# below to run the tests using this tool. The tools are searched for in the
+# hierarchy specified by this variable.
+KYUA_PREFIX?= /usr/local
+
+.if ${KYUAFILE:tl} == "yes"
+FILES+= Kyuafile
+FILESDIR_Kyuafile= ${TESTSDIR}
+
+CLEANFILES+= Kyuafile.auto Kyuafile.auto.tmp
+.elif ${KYUAFILE:tl} == "auto"
+FILES+= Kyuafile.auto
+FILESDIR_Kyuafile.auto= ${TESTSDIR}
+FILESNAME_Kyuafile.auto= Kyuafile
+
+CLEANFILES+= Kyuafile.auto Kyuafile.auto.tmp
+
+.NOPATH: Kyuafile.auto
+Kyuafile.auto: Makefile
+ @{ \
+ echo '-- Automatically generated by bsd.test.mk.'; \
+ echo; \
+ echo 'syntax(2)'; \
+ echo; \
+ echo 'test_suite("${TESTSUITE}")'; \
+ echo; \
+ } >Kyuafile.auto.tmp
+.for _T in ${_TESTS}
+ @echo '${TEST_INTERFACE.${_T}}_test_program{name="${_T}"${TEST_METADATA.${_T}:C/$/,/:tW:C/^/, /W:C/,$//W}}' \
+ >>Kyuafile.auto.tmp
+.endfor
+.for _T in ${TESTS_SUBDIRS:N.WAIT}
+ @echo "include(\"${_T}/Kyuafile\")" >>Kyuafile.auto.tmp
+.endfor
+ @mv Kyuafile.auto.tmp Kyuafile.auto
+.endif
+
+KYUA?= ${KYUA_PREFIX}/bin/kyua
+.if exists(${KYUA})
+# Definition of the "make test" target and supporting variables.
+#
+# This target, by necessity, can only work for native builds (i.e. a FreeBSD
+# host building a release for the same system). The target runs Kyua, which is
+# not in the toolchain, and the tests execute code built for the target host.
+#
+# Due to the dependencies of the binaries built by the source tree and how they
+# are used by tests, it is highly possible for a execution of "make test" to
+# report bogus results unless the new binaries are put in place.
+realtest: .PHONY
+ @echo "*** WARNING: make test is experimental"
+ @echo "***"
+ @echo "*** Using this test does not preclude you from running the tests"
+ @echo "*** installed in ${TESTSBASE}. This test run may raise false"
+ @echo "*** positives and/or false negatives."
+ @echo
+ @set -e; \
+ ${KYUA} test -k ${DESTDIR}${TESTSDIR}/Kyuafile; \
+ result=0; \
+ echo; \
+ echo "*** Once again, note that "make test" is unsupported."; \
+ test $${result} -eq 0
+.endif
+
+beforetest: .PHONY
+.if defined(TESTSDIR)
+.if ${TESTSDIR} == ${TESTSBASE}
+# Forbid running from ${TESTSBASE}. It can cause false positives/negatives and
+# it does not cover all the tests (e.g. it misses testing software in external).
+ @echo "*** Sorry, you cannot use make test from src/tests. Install the"
+ @echo "*** tests into their final location and run them from ${TESTSBASE}"
+ @false
+.else
+ @echo "*** Using this test does not preclude you from running the tests"
+ @echo "*** installed in ${TESTSBASE}. This test run may raise false"
+ @echo "*** positives and/or false negatives."
+.endif
+.else
+ @echo "*** No TESTSDIR defined; nothing to do."
+ @false
+.endif
+ @echo
diff --git a/share/mk/sys.mk b/share/mk/sys.mk
index eb9f2ca189d4..2f84319b84c7 100644
--- a/share/mk/sys.mk
+++ b/share/mk/sys.mk
@@ -13,7 +13,7 @@ unix ?= We run FreeBSD, not UNIX.
# and/or endian. This is called MACHINE_CPU in NetBSD, but that's used
# for something different in FreeBSD.
#
-MACHINE_CPUARCH=${MACHINE_ARCH:C/mips(n32|64)?(el)?/mips/:C/arm(v6)?(eb)?/arm/:C/powerpc64/powerpc/}
+MACHINE_CPUARCH=${MACHINE_ARCH:C/mips(n32|64)?(el)?/mips/:C/arm(v6)?(eb|hf)?/arm/:C/powerpc64/powerpc/}
.endif
# Set any local definitions first. Place this early, but it needs
@@ -39,9 +39,12 @@ AR ?= ar
.if defined(%POSIX)
ARFLAGS ?= -rv
.else
-ARFLAGS ?= cru
+ARFLAGS ?= -crD
.endif
RANLIB ?= ranlib
+.if !defined(%POSIX)
+RANLIBFLAGS ?= -D
+.endif
AS ?= as
AFLAGS ?=
@@ -168,11 +171,9 @@ YFLAGS ?= -d
# SINGLE SUFFIX RULES
.c:
${CC} ${CFLAGS} ${LDFLAGS} -o ${.TARGET} ${.IMPSRC}
- ${CTFCONVERT_CMD}
.f:
${FC} ${FFLAGS} ${LDFLAGS} -o ${.TARGET} ${.IMPSRC}
- ${CTFCONVERT_CMD}
.sh:
cp -f ${.IMPSRC} ${.TARGET}
@@ -182,25 +183,21 @@ YFLAGS ?= -d
.c.o:
${CC} ${CFLAGS} -c ${.IMPSRC}
- ${CTFCONVERT_CMD}
.f.o:
${FC} ${FFLAGS} -c ${.IMPSRC}
- ${CTFCONVERT_CMD}
.y.o:
${YACC} ${YFLAGS} ${.IMPSRC}
${CC} ${CFLAGS} -c y.tab.c
rm -f y.tab.c
mv y.tab.o ${.TARGET}
- ${CTFCONVERT_CMD}
.l.o:
${LEX} ${LFLAGS} ${.IMPSRC}
${CC} ${CFLAGS} -c lex.yy.c
rm -f lex.yy.c
mv lex.yy.o ${.TARGET}
- ${CTFCONVERT_CMD}
.y.c:
${YACC} ${YFLAGS} ${.IMPSRC}
diff --git a/share/mk/tap.test.mk b/share/mk/tap.test.mk
new file mode 100644
index 000000000000..4c056616c4c5
--- /dev/null
+++ b/share/mk/tap.test.mk
@@ -0,0 +1,93 @@
+# $FreeBSD$
+#
+# You must include bsd.test.mk instead of this file from your Makefile.
+#
+# Logic to build and install TAP-compliant test programs.
+#
+# This is provided to support existing tests in the FreeBSD source tree
+# (particularly those coming from tools/regression/) that comply with the
+# Test Anything Protocol. It should not be used for new tests.
+
+.if !target(__<bsd.test.mk>__)
+.error tap.test.mk cannot be included directly.
+.endif
+
+# List of C, C++ and shell test programs to build.
+#
+# Programs listed here are built according to the semantics of bsd.prog.mk for
+# PROGS, PROGS_CXX and SCRIPTS, respectively.
+#
+# Test programs registered in this manner are set to be installed into TESTSDIR
+# (which should be overriden by the Makefile) and are not required to provide a
+# manpage.
+TAP_TESTS_C?=
+TAP_TESTS_CXX?=
+TAP_TESTS_PERL?=
+TAP_TESTS_SH?=
+
+# Perl interpreter to use for test programs written in this language.
+TAP_PERL_INTERPRETER?= /usr/local/bin/perl
+
+.if !empty(TAP_TESTS_C)
+PROGS+= ${TAP_TESTS_C}
+_TESTS+= ${TAP_TESTS_C}
+.for _T in ${TAP_TESTS_C}
+BINDIR.${_T}= ${TESTSDIR}
+MAN.${_T}?= # empty
+SRCS.${_T}?= ${_T}.c
+TEST_INTERFACE.${_T}= tap
+.endfor
+.endif
+
+.if !empty(TAP_TESTS_CXX)
+PROGS_CXX+= ${TAP_TESTS_CXX}
+_TESTS+= ${TAP_TESTS_CXX}
+.for _T in ${TAP_TESTS_CXX}
+BINDIR.${_T}= ${TESTSDIR}
+MAN.${_T}?= # empty
+SRCS.${_T}?= ${_T}.cc
+TEST_INTERFACE.${_T}= tap
+.endfor
+.endif
+
+.if !empty(TAP_TESTS_PERL)
+SCRIPTS+= ${TAP_TESTS_PERL}
+_TESTS+= ${TAP_TESTS_PERL}
+.for _T in ${TAP_TESTS_PERL}
+SCRIPTSDIR_${_T}= ${TESTSDIR}
+TEST_INTERFACE.${_T}= tap
+TEST_METADATA.${_T}+= required_programs="${TAP_PERL_INTERPRETER}"
+CLEANFILES+= ${_T} ${_T}.tmp
+# TODO(jmmv): It seems to me that this SED and SRC functionality should
+# exist in bsd.prog.mk along the support for SCRIPTS. Move it there if
+# this proves to be useful within the tests.
+TAP_TESTS_PERL_SED_${_T}?= # empty
+TAP_TESTS_PERL_SRC_${_T}?= ${_T}.pl
+${_T}: ${TAP_TESTS_PERL_SRC_${_T}}
+ { \
+ echo '#! ${TAP_PERL_INTERPRETER}'; \
+ cat ${.ALLSRC} | sed ${TAP_TESTS_PERL_SED_${_T}}; \
+ } >${.TARGET}.tmp
+ chmod +x ${.TARGET}.tmp
+ mv ${.TARGET}.tmp ${.TARGET}
+.endfor
+.endif
+
+.if !empty(TAP_TESTS_SH)
+SCRIPTS+= ${TAP_TESTS_SH}
+_TESTS+= ${TAP_TESTS_SH}
+.for _T in ${TAP_TESTS_SH}
+SCRIPTSDIR_${_T}= ${TESTSDIR}
+TEST_INTERFACE.${_T}= tap
+CLEANFILES+= ${_T} ${_T}.tmp
+# TODO(jmmv): It seems to me that this SED and SRC functionality should
+# exist in bsd.prog.mk along the support for SCRIPTS. Move it there if
+# this proves to be useful within the tests.
+TAP_TESTS_SH_SED_${_T}?= # empty
+TAP_TESTS_SH_SRC_${_T}?= ${_T}.sh
+${_T}: ${TAP_TESTS_SH_SRC_${_T}}
+ cat ${.ALLSRC} | sed ${TAP_TESTS_SH_SED_${_T}} >${.TARGET}.tmp
+ chmod +x ${.TARGET}.tmp
+ mv ${.TARGET}.tmp ${.TARGET}
+.endfor
+.endif
diff --git a/share/skel/dot.cshrc b/share/skel/dot.cshrc
index 3e94371b6bce..d6c679830574 100644
--- a/share/skel/dot.cshrc
+++ b/share/skel/dot.cshrc
@@ -12,14 +12,15 @@ alias la ls -aF
alias lf ls -FA
alias ll ls -lAF
+# These are normally set through /etc/login.conf. You may override them here
+# if wanted.
+# set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin $HOME/bin)
+# setenv BLOCKSIZE K
# A righteous umask
-umask 22
-
-set path = (/sbin /bin /usr/sbin /usr/bin /usr/games /usr/local/sbin /usr/local/bin $HOME/bin)
+# umask 22
setenv EDITOR vi
setenv PAGER more
-setenv BLOCKSIZE K
if ($?prompt) then
# An interactive shell -- set some stuff up
diff --git a/share/skel/dot.profile b/share/skel/dot.profile
index 34398ad60acd..300402abb84e 100644
--- a/share/skel/dot.profile
+++ b/share/skel/dot.profile
@@ -5,15 +5,16 @@
# see also sh(1), environ(7).
#
-# remove /usr/games if you want
-PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:$HOME/bin; export PATH
+# These are normally set through /etc/login.conf. You may override them here
+# if wanted.
+# PATH=/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:$HOME/bin; export PATH
+# BLOCKSIZE=K; export BLOCKSIZE
# Setting TERM is normally done through /etc/ttys. Do only override
# if you're sure that you'll never log in via telnet or xterm or a
# serial line.
# TERM=xterm; export TERM
-BLOCKSIZE=K; export BLOCKSIZE
EDITOR=vi; export EDITOR
PAGER=more; export PAGER
diff --git a/share/syscons/keymaps/INDEX.keymaps b/share/syscons/keymaps/INDEX.keymaps
index 70bfd4e5c348..1ecfa74ee607 100644
--- a/share/syscons/keymaps/INDEX.keymaps
+++ b/share/syscons/keymaps/INDEX.keymaps
@@ -117,7 +117,7 @@ danish.cp865.kbd:fr:Danois Code page 865
danish.cp865.kbd:pt:Dinamarquês Codepage 865
danish.cp865.kbd:es:Danés Codepage 865
-danish.iso.macbook.kbd:Danish ISO-8859-1 (macbook)
+danish.iso.macbook.kbd:da:Danish ISO-8859-1 (macbook)
dutch.iso.acc.kbd:en:Dutch ISO keymap (accent keys)
diff --git a/share/termcap/termcap.5 b/share/termcap/termcap.5
index 1f9c7eabe940..d983b388f746 100644
--- a/share/termcap/termcap.5
+++ b/share/termcap/termcap.5
@@ -9,11 +9,7 @@
.\" 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
+.\" 3. 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.
.\"
diff --git a/share/termcap/termcap.src b/share/termcap/termcap.src
index 4bd4aabf9f89..23536f60526b 100644
--- a/share/termcap/termcap.src
+++ b/share/termcap/termcap.src
@@ -2729,7 +2729,7 @@ vt520|DEC VT520 :\
:kb=\b:kd=\E[B:ke=\E>:kl=\E[D:\
:kr=\E[C:ks=\E=:ku=\E[A:nd=\E[C:\
:rc=\E8:rf=/usr/lib/tabset/vt100:\
- :se=\E[m:so=\E[7m:\
+ :sc=\E7:se=\E[m:so=\E[7m:\
:sr=\EM:ue=\E[m:up=\E[A:us=\E[4m:nl=\E[B:ko=do,nd,up:
#
vt520nam|vt520-nam|v520n|DEC VT520 with no automargins:\
diff --git a/share/tests/Makefile b/share/tests/Makefile
new file mode 100644
index 000000000000..2c6362193ab7
--- /dev/null
+++ b/share/tests/Makefile
@@ -0,0 +1,10 @@
+# $FreeBSD$
+
+.include <bsd.own.mk>
+
+TESTSDIR= ${TESTSBASE}/share
+
+.PATH: ${.CURDIR:H:H}/tests
+KYUAFILE= yes
+
+.include <bsd.test.mk>
diff --git a/share/xml/Makefile b/share/xml/Makefile
deleted file mode 100644
index 0fb02253cf5a..000000000000
--- a/share/xml/Makefile
+++ /dev/null
@@ -1,36 +0,0 @@
-#-
-# Copyright (c) 2012 EMC Corporation.
-# 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.
-#
-# $FreeBSD$
-
-.include <bsd.own.mk>
-
-SUBDIR+= ${_atf}
-
-.if ${MK_ATF} != "no"
-_atf= atf
-.endif
-
-.include <bsd.subdir.mk>
diff --git a/share/xml/Makefile.inc b/share/xml/Makefile.inc
deleted file mode 100644
index e1c33983869c..000000000000
--- a/share/xml/Makefile.inc
+++ /dev/null
@@ -1,30 +0,0 @@
-#-
-# Copyright (c) 2012 EMC Corporation.
-# 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.
-#
-# $FreeBSD$
-
-BINDIR?= ${SHAREDIR}/xml
-
-# vim: syntax=make
diff --git a/share/xml/atf/Makefile b/share/xml/atf/Makefile
deleted file mode 100644
index 729592618dd9..000000000000
--- a/share/xml/atf/Makefile
+++ /dev/null
@@ -1,38 +0,0 @@
-#-
-# Copyright (c) 2011 Google, 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 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.
-#
-# $FreeBSD$
-
-ATF= ${.CURDIR}/../../../contrib/atf
-
-.PATH: ${ATF}/atf-report
-
-
-FILESGROUPS= XML
-
-XMLDIR= ${SHAREDIR}/xml/atf
-XML= tests-results.dtd
-
-.include <bsd.prog.mk>
diff --git a/share/xml/atf/Makefile.depend b/share/xml/atf/Makefile.depend
deleted file mode 100644
index 57b7e10c3d71..000000000000
--- a/share/xml/atf/Makefile.depend
+++ /dev/null
@@ -1,12 +0,0 @@
-# Autogenerated - do NOT edit!
-
-DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,}
-
-DIRDEPS = \
-
-
-.include <dirdeps.mk>
-
-.if ${DEP_RELDIR} == ${_DEP_RELDIR}
-# local dependencies - needed for -jN in clean tree
-.endif
diff --git a/share/xsl/Makefile b/share/xsl/Makefile
deleted file mode 100644
index 0fb02253cf5a..000000000000
--- a/share/xsl/Makefile
+++ /dev/null
@@ -1,36 +0,0 @@
-#-
-# Copyright (c) 2012 EMC Corporation.
-# 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.
-#
-# $FreeBSD$
-
-.include <bsd.own.mk>
-
-SUBDIR+= ${_atf}
-
-.if ${MK_ATF} != "no"
-_atf= atf
-.endif
-
-.include <bsd.subdir.mk>
diff --git a/share/xsl/Makefile.inc b/share/xsl/Makefile.inc
deleted file mode 100644
index c2ed46902372..000000000000
--- a/share/xsl/Makefile.inc
+++ /dev/null
@@ -1,30 +0,0 @@
-#-
-# Copyright (c) 2012 EMC Corporation.
-# 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.
-#
-# $FreeBSD$
-
-BINDIR?= ${SHAREDIR}/xsl
-
-# vim: syntax=make
diff --git a/share/xsl/atf/Makefile b/share/xsl/atf/Makefile
deleted file mode 100644
index f5ad98438024..000000000000
--- a/share/xsl/atf/Makefile
+++ /dev/null
@@ -1,38 +0,0 @@
-#-
-# Copyright (c) 2011 Google, 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 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.
-#
-# $FreeBSD$
-
-ATF= ${.CURDIR}/../../../contrib/atf
-
-.PATH: ${ATF}/atf-report
-
-
-FILESGROUPS= XSL
-
-XSLDIR= ${SHAREDIR}/xsl/atf
-XSL= tests-results.xsl
-
-.include <bsd.prog.mk>
diff --git a/share/xsl/atf/Makefile.depend b/share/xsl/atf/Makefile.depend
deleted file mode 100644
index 57b7e10c3d71..000000000000
--- a/share/xsl/atf/Makefile.depend
+++ /dev/null
@@ -1,12 +0,0 @@
-# Autogenerated - do NOT edit!
-
-DEP_RELDIR := ${_PARSEDIR:S,${SRCTOP}/,,}
-
-DIRDEPS = \
-
-
-.include <dirdeps.mk>
-
-.if ${DEP_RELDIR} == ${_DEP_RELDIR}
-# local dependencies - needed for -jN in clean tree
-.endif