Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 03 Sep 2019 14:06:29 -0000
From:      Enji Cooper <ngie@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r346044 - in projects/runtime-coverage-v2: . contrib/bsnmp/lib contrib/elftoolchain/strings contrib/libxo contrib/libxo/doc contrib/libxo/libxo contrib/libxo/tests/core contrib/libxo/te...
Message-ID:  <201904082257.x38Mvbem097796@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: ngie
Date: Mon Apr  8 22:57:36 2019
New Revision: 346044
URL: https://svnweb.freebsd.org/changeset/base/346044

Log:
  MFhead@r346043

Added:
  projects/runtime-coverage-v2/contrib/libxo/libxo/xo_explicit.h
     - copied unchanged from r346043, head/contrib/libxo/libxo/xo_explicit.h
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.H.err
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.H.err
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.H.out
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.H.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.HIPx.err
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.HIPx.err
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.HIPx.out
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.HIPx.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.HP.err
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.HP.err
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.HP.out
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.HP.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.J.err
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.J.err
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.J.out
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.JP.err
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.JP.err
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.JP.out
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.JP.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.T.err
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.T.err
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.T.out
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.T.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.X.err
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.X.err
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.X.out
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.X.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.XP.err
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.XP.err
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_02.XP.out
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/saved/xo_02.XP.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/xo_02.sh
     - copied unchanged from r346043, head/contrib/libxo/tests/xo/xo_02.sh
  projects/runtime-coverage-v2/lib/libsecureboot/pass_manifest.c
     - copied unchanged from r346043, head/lib/libsecureboot/pass_manifest.c
  projects/runtime-coverage-v2/sys/security/mac_veriexec_parser/
     - copied from r346043, head/sys/security/mac_veriexec_parser/
  projects/runtime-coverage-v2/tests/sys/geom/class/eli/online_resize_test.sh
     - copied unchanged from r346043, head/tests/sys/geom/class/eli/online_resize_test.sh
  projects/runtime-coverage-v2/tools/build/options/WITHOUT_LLVM_TARGET_RISCV
     - copied unchanged from r346043, head/tools/build/options/WITHOUT_LLVM_TARGET_RISCV
  projects/runtime-coverage-v2/tools/build/options/WITH_LLVM_TARGET_RISCV
     - copied unchanged from r346043, head/tools/build/options/WITH_LLVM_TARGET_RISCV
  projects/runtime-coverage-v2/tools/build/options/WITH_LOADER_VERIEXEC_PASS_MANFIEST
     - copied unchanged from r346043, head/tools/build/options/WITH_LOADER_VERIEXEC_PASS_MANFIEST
Modified:
  projects/runtime-coverage-v2/UPDATING
  projects/runtime-coverage-v2/contrib/bsnmp/lib/snmpclient.c
  projects/runtime-coverage-v2/contrib/elftoolchain/strings/strings.c
  projects/runtime-coverage-v2/contrib/libxo/configure.ac
  projects/runtime-coverage-v2/contrib/libxo/doc/api.rst
  projects/runtime-coverage-v2/contrib/libxo/doc/libxo-manual.html
  projects/runtime-coverage-v2/contrib/libxo/doc/xo.rst
  projects/runtime-coverage-v2/contrib/libxo/libxo/Makefile.am
  projects/runtime-coverage-v2/contrib/libxo/libxo/libxo.c
  projects/runtime-coverage-v2/contrib/libxo/libxo/xo.h
  projects/runtime-coverage-v2/contrib/libxo/libxo/xo_attr.3
  projects/runtime-coverage-v2/contrib/libxo/libxo/xo_buf.h
  projects/runtime-coverage-v2/contrib/libxo/libxo/xo_emit.3
  projects/runtime-coverage-v2/contrib/libxo/libxo/xo_emit_f.3
  projects/runtime-coverage-v2/contrib/libxo/libxo/xo_finish.3
  projects/runtime-coverage-v2/contrib/libxo/libxo/xo_flush.3
  projects/runtime-coverage-v2/contrib/libxo/libxo/xo_open_container.3
  projects/runtime-coverage-v2/contrib/libxo/libxo/xo_open_list.3
  projects/runtime-coverage-v2/contrib/libxo/libxo/xo_open_marker.3
  projects/runtime-coverage-v2/contrib/libxo/libxo/xo_set_writer.3
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_01.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_02.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_03.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_04.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_05.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_05.JP.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_06.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_07.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_08.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_09.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_10.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_11.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.E.err
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.E.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.H.err
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.H.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.HIPx.err
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.HIPx.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.HP.err
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.HP.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.J.err
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.JP.err
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.JP.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.T.err
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.T.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.X.err
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.X.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.XP.err
  projects/runtime-coverage-v2/contrib/libxo/tests/core/saved/test_12.XP.out
  projects/runtime-coverage-v2/contrib/libxo/tests/core/test_12.c
  projects/runtime-coverage-v2/contrib/libxo/tests/gettext/po/pig_latin/strerror.po
  projects/runtime-coverage-v2/contrib/libxo/tests/gettext/saved/gt_01.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/Makefile.am
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_01.H.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_01.HIPx.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_01.HP.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_01.J.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_01.JP.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/saved/xo_01.T.out
  projects/runtime-coverage-v2/contrib/libxo/tests/xo/xo_01.sh
  projects/runtime-coverage-v2/contrib/libxo/xo/xo.1
  projects/runtime-coverage-v2/contrib/libxo/xo/xo.c
  projects/runtime-coverage-v2/contrib/sqlite3/Makefile.in
  projects/runtime-coverage-v2/contrib/sqlite3/Makefile.msc
  projects/runtime-coverage-v2/contrib/sqlite3/aclocal.m4
  projects/runtime-coverage-v2/contrib/sqlite3/config.guess
  projects/runtime-coverage-v2/contrib/sqlite3/config.sub
  projects/runtime-coverage-v2/contrib/sqlite3/configure
  projects/runtime-coverage-v2/contrib/sqlite3/configure.ac
  projects/runtime-coverage-v2/contrib/sqlite3/depcomp
  projects/runtime-coverage-v2/contrib/sqlite3/install-sh
  projects/runtime-coverage-v2/contrib/sqlite3/ltmain.sh
  projects/runtime-coverage-v2/contrib/sqlite3/shell.c
  projects/runtime-coverage-v2/contrib/sqlite3/sqlite3.c
  projects/runtime-coverage-v2/contrib/sqlite3/sqlite3.h
  projects/runtime-coverage-v2/contrib/sqlite3/tea/configure
  projects/runtime-coverage-v2/contrib/sqlite3/tea/configure.ac
  projects/runtime-coverage-v2/contrib/sqlite3/tea/generic/tclsqlite3.c
  projects/runtime-coverage-v2/include/unistd.h
  projects/runtime-coverage-v2/lib/atf/libatf-c++/tests/Makefile
  projects/runtime-coverage-v2/lib/atf/libatf-c/tests/Makefile
  projects/runtime-coverage-v2/lib/clang/include/llvm/Config/AsmParsers.def
  projects/runtime-coverage-v2/lib/clang/include/llvm/Config/AsmPrinters.def
  projects/runtime-coverage-v2/lib/clang/include/llvm/Config/Disassemblers.def
  projects/runtime-coverage-v2/lib/clang/include/llvm/Config/Targets.def
  projects/runtime-coverage-v2/lib/clang/libllvm/Makefile
  projects/runtime-coverage-v2/lib/clang/llvm.build.mk
  projects/runtime-coverage-v2/lib/geom/eli/geli.8
  projects/runtime-coverage-v2/lib/geom/eli/geom_eli.c
  projects/runtime-coverage-v2/lib/libbe/be.c
  projects/runtime-coverage-v2/lib/libc/net/getnameinfo.c
  projects/runtime-coverage-v2/lib/libc/sys/Makefile.inc
  projects/runtime-coverage-v2/lib/libc/sys/Symbol.map
  projects/runtime-coverage-v2/lib/libc/sys/unlink.2
  projects/runtime-coverage-v2/lib/libdevctl/devctl.3
  projects/runtime-coverage-v2/lib/libdevctl/devctl.c
  projects/runtime-coverage-v2/lib/libdevctl/devctl.h
  projects/runtime-coverage-v2/lib/libsecureboot/Makefile.libsa.inc
  projects/runtime-coverage-v2/lib/libsecureboot/h/verify_file.h
  projects/runtime-coverage-v2/lib/libsecureboot/libsecureboot-priv.h
  projects/runtime-coverage-v2/lib/libsecureboot/verify_file.c
  projects/runtime-coverage-v2/lib/libutil/pidfile.c
  projects/runtime-coverage-v2/lib/libvgl/bitmap.c
  projects/runtime-coverage-v2/lib/libxo/xo_config.h
  projects/runtime-coverage-v2/libexec/rc/network.subr
  projects/runtime-coverage-v2/libexec/rc/rc.conf
  projects/runtime-coverage-v2/libexec/rc/rc.d/abi
  projects/runtime-coverage-v2/libexec/rc/rc.d/bthidd
  projects/runtime-coverage-v2/libexec/rc/rc.d/cfumass
  projects/runtime-coverage-v2/libexec/rc/rc.d/kld
  projects/runtime-coverage-v2/libexec/rc/rc.d/mdconfig
  projects/runtime-coverage-v2/libexec/rc/rc.d/mdconfig2
  projects/runtime-coverage-v2/libexec/rc/rc.d/mountcritremote
  projects/runtime-coverage-v2/libexec/rc/rc.d/syscons
  projects/runtime-coverage-v2/libexec/rc/rc.subr
  projects/runtime-coverage-v2/release/Makefile.vm
  projects/runtime-coverage-v2/release/tools/ec2.conf
  projects/runtime-coverage-v2/release/tools/vmimage.subr
  projects/runtime-coverage-v2/sbin/bectl/bectl.8
  projects/runtime-coverage-v2/sbin/fsck_msdosfs/dir.c
  projects/runtime-coverage-v2/sbin/fsck_msdosfs/fat.c
  projects/runtime-coverage-v2/sbin/mount/mount.c
  projects/runtime-coverage-v2/share/man/man4/intro.4
  projects/runtime-coverage-v2/share/man/man5/rc.conf.5
  projects/runtime-coverage-v2/share/man/man5/src.conf.5
  projects/runtime-coverage-v2/share/mk/src.opts.mk
  projects/runtime-coverage-v2/stand/common/boot.c
  projects/runtime-coverage-v2/stand/common/module.c
  projects/runtime-coverage-v2/stand/efi/loader/main.c
  projects/runtime-coverage-v2/stand/loader.mk
  projects/runtime-coverage-v2/sys/amd64/conf/NOTES
  projects/runtime-coverage-v2/sys/amd64/vmm/io/ppt.c
  projects/runtime-coverage-v2/sys/arm/ti/cpsw/if_cpsw.c
  projects/runtime-coverage-v2/sys/cam/ata/ata_all.c
  projects/runtime-coverage-v2/sys/cddl/compat/opensolaris/sys/vnode.h
  projects/runtime-coverage-v2/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c
  projects/runtime-coverage-v2/sys/compat/cloudabi/cloudabi_file.c
  projects/runtime-coverage-v2/sys/compat/freebsd32/freebsd32_syscall.h
  projects/runtime-coverage-v2/sys/compat/freebsd32/freebsd32_syscalls.c
  projects/runtime-coverage-v2/sys/compat/freebsd32/freebsd32_sysent.c
  projects/runtime-coverage-v2/sys/compat/freebsd32/freebsd32_systrace_args.c
  projects/runtime-coverage-v2/sys/compat/freebsd32/syscalls.master
  projects/runtime-coverage-v2/sys/compat/linux/linux_file.c
  projects/runtime-coverage-v2/sys/compat/linuxkpi/common/include/linux/etherdevice.h
  projects/runtime-coverage-v2/sys/compat/linuxkpi/common/include/linux/random.h
  projects/runtime-coverage-v2/sys/conf/files
  projects/runtime-coverage-v2/sys/conf/newvers.sh
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/changes.txt
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/common/adisasm.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslcodegen.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslcompile.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslcompiler.h
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/asldefine.h
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslerror.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslfileio.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslfiles.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslglobal.h
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/asllisting.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslload.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslmain.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslmessages.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslmessages.h
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/asloperands.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/asloptions.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslstartup.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslsupport.l
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/asltree.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/asltypes.h
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslutils.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/aslxref.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/dtcompile.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/compiler/prutils.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/components/events/evgpe.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/components/namespace/nsalloc.c
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/include/acpixf.h
  projects/runtime-coverage-v2/sys/dev/fdt/fdt_common.c
  projects/runtime-coverage-v2/sys/dev/iicbus/twsi/a10_twsi.c
  projects/runtime-coverage-v2/sys/dev/iicbus/twsi/twsi.c
  projects/runtime-coverage-v2/sys/dev/iicbus/twsi/twsi.h
  projects/runtime-coverage-v2/sys/dev/pci/pci.c
  projects/runtime-coverage-v2/sys/dev/pci/pci_pci.c
  projects/runtime-coverage-v2/sys/dev/pci/pcivar.h
  projects/runtime-coverage-v2/sys/dev/smartpqi/smartpqi_cam.c
  projects/runtime-coverage-v2/sys/dev/smartpqi/smartpqi_defines.h
  projects/runtime-coverage-v2/sys/dev/tpm/tpm20.c
  projects/runtime-coverage-v2/sys/dev/usb/net/if_muge.c
  projects/runtime-coverage-v2/sys/dev/usb/net/if_urereg.h
  projects/runtime-coverage-v2/sys/fs/fuse/fuse_vfsops.c
  projects/runtime-coverage-v2/sys/fs/msdosfs/msdosfs_denode.c
  projects/runtime-coverage-v2/sys/fs/nfs/nfs.h
  projects/runtime-coverage-v2/sys/fs/nfs/nfs_commonkrpc.c
  projects/runtime-coverage-v2/sys/fs/nfs/nfs_commonport.c
  projects/runtime-coverage-v2/sys/fs/nfs/nfs_commonsubs.c
  projects/runtime-coverage-v2/sys/fs/nfs/nfs_var.h
  projects/runtime-coverage-v2/sys/fs/nfsclient/nfs_clport.c
  projects/runtime-coverage-v2/sys/geom/eli/g_eli.c
  projects/runtime-coverage-v2/sys/geom/eli/g_eli.h
  projects/runtime-coverage-v2/sys/geom/eli/g_eli_ctl.c
  projects/runtime-coverage-v2/sys/geom/eli/g_eli_key_cache.c
  projects/runtime-coverage-v2/sys/i386/conf/NOTES
  projects/runtime-coverage-v2/sys/kern/bus_if.m
  projects/runtime-coverage-v2/sys/kern/capabilities.conf
  projects/runtime-coverage-v2/sys/kern/imgact_elf.c
  projects/runtime-coverage-v2/sys/kern/init_sysent.c
  projects/runtime-coverage-v2/sys/kern/kern_exit.c
  projects/runtime-coverage-v2/sys/kern/subr_bus.c
  projects/runtime-coverage-v2/sys/kern/subr_pctrie.c
  projects/runtime-coverage-v2/sys/kern/syscalls.c
  projects/runtime-coverage-v2/sys/kern/syscalls.master
  projects/runtime-coverage-v2/sys/kern/systrace_args.c
  projects/runtime-coverage-v2/sys/kern/vfs_mountroot.c
  projects/runtime-coverage-v2/sys/kern/vfs_syscalls.c
  projects/runtime-coverage-v2/sys/kern/vfs_vnops.c
  projects/runtime-coverage-v2/sys/modules/geom/geom_label/Makefile
  projects/runtime-coverage-v2/sys/net/if_spppsubr.c
  projects/runtime-coverage-v2/sys/netinet/in.c
  projects/runtime-coverage-v2/sys/netinet/ip_input.c
  projects/runtime-coverage-v2/sys/netinet/ip_output.c
  projects/runtime-coverage-v2/sys/netinet/netdump/netdump_client.c
  projects/runtime-coverage-v2/sys/netinet/tcp_output.c
  projects/runtime-coverage-v2/sys/netipsec/key.c
  projects/runtime-coverage-v2/sys/netipsec/key.h
  projects/runtime-coverage-v2/sys/netipsec/xform_esp.c
  projects/runtime-coverage-v2/sys/netpfil/ipfw/nat64/nat64_translate.h
  projects/runtime-coverage-v2/sys/netpfil/pf/pf.c
  projects/runtime-coverage-v2/sys/powerpc/fpu/fpu_sqrt.c
  projects/runtime-coverage-v2/sys/powerpc/include/trap.h
  projects/runtime-coverage-v2/sys/powerpc/powernv/opal.h
  projects/runtime-coverage-v2/sys/powerpc/powernv/opal_async.c
  projects/runtime-coverage-v2/sys/powerpc/powernv/opal_flash.c
  projects/runtime-coverage-v2/sys/powerpc/powerpc/exec_machdep.c
  projects/runtime-coverage-v2/sys/powerpc/powerpc/trap.c
  projects/runtime-coverage-v2/sys/riscv/include/pcpu.h
  projects/runtime-coverage-v2/sys/riscv/riscv/machdep.c
  projects/runtime-coverage-v2/sys/rpc/rpcsec_gss/svc_rpcsec_gss.c
  projects/runtime-coverage-v2/sys/sparc64/conf/NOTES
  projects/runtime-coverage-v2/sys/sys/ata.h
  projects/runtime-coverage-v2/sys/sys/bus.h
  projects/runtime-coverage-v2/sys/sys/fcntl.h
  projects/runtime-coverage-v2/sys/sys/param.h
  projects/runtime-coverage-v2/sys/sys/pctrie.h
  projects/runtime-coverage-v2/sys/sys/syscall.h
  projects/runtime-coverage-v2/sys/sys/syscall.mk
  projects/runtime-coverage-v2/sys/sys/syscallsubr.h
  projects/runtime-coverage-v2/sys/sys/sysproto.h
  projects/runtime-coverage-v2/sys/ufs/ffs/ffs_alloc.c
  projects/runtime-coverage-v2/sys/ufs/ffs/ffs_vfsops.c
  projects/runtime-coverage-v2/sys/vm/vm_map.c
  projects/runtime-coverage-v2/tests/sys/geom/class/eli/Makefile
  projects/runtime-coverage-v2/tests/sys/geom/class/eli/configure_test.sh
  projects/runtime-coverage-v2/tests/sys/kern/ptrace_test.c
  projects/runtime-coverage-v2/tools/build/Makefile
  projects/runtime-coverage-v2/usr.bin/rctl/rctl.c
  projects/runtime-coverage-v2/usr.bin/sort/coll.c
  projects/runtime-coverage-v2/usr.bin/strings/Makefile
  projects/runtime-coverage-v2/usr.bin/xohtml/xohtml.sh
  projects/runtime-coverage-v2/usr.sbin/bhyve/Makefile
  projects/runtime-coverage-v2/usr.sbin/bhyve/pci_nvme.c
  projects/runtime-coverage-v2/usr.sbin/bhyve/uart_emul.c
  projects/runtime-coverage-v2/usr.sbin/devctl/devctl.8
  projects/runtime-coverage-v2/usr.sbin/devctl/devctl.c
  projects/runtime-coverage-v2/usr.sbin/nfsuserd/Makefile
  projects/runtime-coverage-v2/usr.sbin/nfsuserd/nfsuserd.8
  projects/runtime-coverage-v2/usr.sbin/nfsuserd/nfsuserd.c
  projects/runtime-coverage-v2/usr.sbin/vidcontrol/vidcontrol.c
Directory Properties:
  projects/runtime-coverage-v2/   (props changed)
  projects/runtime-coverage-v2/contrib/elftoolchain/   (props changed)
  projects/runtime-coverage-v2/contrib/libxo/   (props changed)
  projects/runtime-coverage-v2/contrib/sqlite3/   (props changed)
  projects/runtime-coverage-v2/sys/cddl/contrib/opensolaris/   (props changed)
  projects/runtime-coverage-v2/sys/contrib/dev/acpica/   (props changed)

Modified: projects/runtime-coverage-v2/UPDATING
==============================================================================
--- projects/runtime-coverage-v2/UPDATING	Mon Apr  8 18:45:41 2019	(r346043)
+++ projects/runtime-coverage-v2/UPDATING	Mon Apr  8 22:57:36 2019	(r346044)
@@ -31,6 +31,14 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 13.x IS SLOW:
 	disable the most expensive debugging functionality run
 	"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
 
+20190404:
+	r345895 reverts r320698. This implies that an nfsuserd(8) daemon
+	built from head sources between r320757 (July 6, 2017) and
+	r338192 (Aug. 22, 2018) will not work unless the "-use-udpsock"
+	is added to the command line.
+	nfsuserd daemons built from head sources that are post-r338192 are
+	not affected and should continue to work.
+
 20190320:
 	The fuse(4) module has been renamed to fusefs(4) for consistency with
 	other filesystems.  You should update any kld_load="fuse" entries in

Modified: projects/runtime-coverage-v2/contrib/bsnmp/lib/snmpclient.c
==============================================================================
--- projects/runtime-coverage-v2/contrib/bsnmp/lib/snmpclient.c	Mon Apr  8 18:45:41 2019	(r346043)
+++ projects/runtime-coverage-v2/contrib/bsnmp/lib/snmpclient.c	Mon Apr  8 22:57:36 2019	(r346044)
@@ -1874,38 +1874,47 @@ snmp_client_set_port(struct snmp_client *cl, const cha
 	return (0);
 }
 
+static const char *const trans_list[] = {
+	[SNMP_TRANS_UDP]	= "udp::",
+	[SNMP_TRANS_LOC_DGRAM]	= "dgram::",
+	[SNMP_TRANS_LOC_STREAM]	= "stream::",
+	[SNMP_TRANS_UDP6]	= "udp6::",
+};
+
 /**
  * Try to get a transport identifier which is a leading alphanumeric string
- * (starting with '_' or a letter and including also '_') terminated by
- * a double colon. The string may not be empty. The transport identifier
- * is optional.
+ * terminated by a double colon. The string may not be empty. The transport
+ * identifier is optional.
  *
  * \param sc	client struct to set errors
  * \param strp	possible start of transport; updated to point to
  *		the next character to parse
  *
- * \return	end of transport; equals *strp if there is none; NULL if there
- *		was an error
+ * \return	transport identifier
  */
-static inline const char *
+static inline int
 get_transp(struct snmp_client *sc, const char **strp)
 {
-	const char *p = *strp;
+	const char *p;
+	size_t i;
 
-	if (isascii(*p) && (isalpha(*p) || *p == '_')) {
-		p++;
-		while (isascii(*p) && (isalnum(*p) || *p == '_'))
-			p++;
-		if (p[0] == ':' && p[1] == ':') {
-			*strp = p + 2;
-			return (p);
+	for (i = 0; i < nitems(trans_list); i++) {
+		if (trans_list[i] == NULL || *trans_list[i] == '\0')
+			continue;
+		p = strstr(*strp, trans_list[i]);
+		if (p == *strp) {
+			*strp += strlen(trans_list[i]);
+			return ((int)i);
 		}
 	}
+
+	p = *strp;
 	if (p[0] == ':' && p[1] == ':') {
 		seterr(sc, "empty transport specifier");
-		return (NULL);
+		return (-1);
 	}
-	return (*strp);
+	/* by default assume UDP */
+	return (SNMP_TRANS_UDP);
 }
 
 /**
@@ -2143,24 +2152,13 @@ save_str(struct snmp_client *sc, const char *const s[2
 int
 snmp_parse_server(struct snmp_client *sc, const char *str)
 {
-#if DEBUG_PARSE
 	const char *const orig = str;
-#endif
-
-	const char *const trans_list[] = {
-		[SNMP_TRANS_UDP]	= "udp",
-		[SNMP_TRANS_LOC_DGRAM]	= "dgram",
-		[SNMP_TRANS_LOC_STREAM]	= "stream",
-		[SNMP_TRANS_UDP6]	= "udp6",
-	};
-
 	/* parse input */
-	const char *const transp[2] = {
-		str,
-		get_transp(sc, &str),
-	};
-	if (transp[1] == NULL)
+	int i, trans = get_transp(sc, &str);
+	if (trans < 0)
 		return (-1);
+	/* choose automatically */
+	i = orig == str ? -1: trans;
 
 	const char *const comm[2] = {
 		str,
@@ -2206,7 +2204,7 @@ snmp_parse_server(struct snmp_client *sc, const char *
 	}
 
 #if DEBUG_PARSE
-	printf("transp: %zu %zu\n", transp[0] - orig, transp[1] - orig);
+	printf("transp: %u\n", trans);
 	printf("comm:   %zu %zu\n", comm[0] - orig, comm[1] - orig);
 	printf("ipv6:   %zu %zu\n", ipv6[0] - orig, ipv6[1] - orig);
 	printf("ipv4:   %zu %zu\n", ipv4[0] - orig, ipv4[1] - orig);
@@ -2215,69 +2213,73 @@ snmp_parse_server(struct snmp_client *sc, const char *
 #endif
 
 	/* analyse and allocate */
-	int i = -1;
-	if (transp[0] != transp[1]) {
-		for (i = 0; i < (int)nitems(trans_list); i++) {
-			if (trans_list[i] != NULL &&
-			    strlen(trans_list[i]) == (size_t)(transp[1] -
-			    transp[0]) && !strncmp(trans_list[i], transp[0],
-			    transp[1] - transp[0]))
-				break;
-		}
-
-		if (i == (int)nitems(trans_list)) {
-			seterr(sc, "unknown transport specifier '%.*s'",
-			    transp[1] - transp[0], transp[0]);
-			return (-1);
-		}
-	}
-
 	char *chost;
 
 	if (ipv6[0] != ipv6[1]) {
 		if ((chost = save_str(sc, ipv6)) == NULL)
 			return (-1);
-		if (i == -1)
-			i = SNMP_TRANS_UDP6;
+		if (i == -1 || trans == SNMP_TRANS_UDP)
+			trans = SNMP_TRANS_UDP6;
 	} else if (ipv4[0] != ipv4[1]) {
 		if ((chost = save_str(sc, ipv4)) == NULL)
 			return (-1);
 		if (i == -1)
-			i = SNMP_TRANS_UDP;
+			trans = SNMP_TRANS_UDP;
 	} else {
 		if ((chost = save_str(sc, host)) == NULL)
 			return (-1);
 
 		if (i == -1) {
-			/* Default transport is UDP unless the host contains
-			 * a slash in which case we default to DGRAM. */
-			i = SNMP_TRANS_UDP;
+			/*
+			 * Default transport is UDP unless the host contains
+			 * a slash in which case we default to DGRAM.
+			 */
 			for (const char *p = host[0]; p < host[1]; p++)
 				if (*p == '/') {
-					i = SNMP_TRANS_LOC_DGRAM;
+					trans = SNMP_TRANS_LOC_DGRAM;
 					break;
 				}
 		}
 	}
 
-	char *cport = save_str(sc, port);
+	char *cport;
+
+	if (port[0] == port[1] && (
+	    trans == SNMP_TRANS_UDP || trans == SNMP_TRANS_UDP6)) {
+		/* If port was not specified, use "snmp" name by default */
+		cport = strdup("snmp");
+	} else
+		cport = save_str(sc, port);
+
 	if (cport == NULL) {
 		free(chost);
 		return (-1);
 	}
 
 	/* commit */
-	sc->trans = i;
+	sc->trans = trans;
+	/*
+	 * If community string was specified and it is empty, overwrite it.
+	 * If it was not specified, use default.
+	 */
+	if (comm[0] != comm[1] || strrchr(comm[0], '@') != NULL) {
+		strncpy(sc->read_community, comm[0], comm[1] - comm[0]);
+		sc->read_community[comm[1] - comm[0]] = '\0';
+		strncpy(sc->write_community, comm[0], comm[1] - comm[0]);
+		sc->write_community[comm[1] - comm[0]] = '\0';
+	}
 
-	strncpy(sc->read_community, comm[0], comm[1] - comm[0]);
-	sc->read_community[comm[1] - comm[0]] = '\0';
-	strncpy(sc->write_community, comm[0], comm[1] - comm[0]);
-	sc->write_community[comm[1] - comm[0]] = '\0';
-
 	free(sc->chost);
 	sc->chost = chost;
 	free(sc->cport);
 	sc->cport = cport;
 
+#if DEBUG_PARSE
+	printf("Committed values:\n");
+	printf("trans:	%u\n", sc->trans);
+	printf("comm:   '%s'/'%s'\n", sc->read_community, sc->write_community);
+	printf("host:   '%s'\n", sc->chost);
+	printf("port:   '%s'\n", sc->cport);
+#endif
 	return (0);
 }

Modified: projects/runtime-coverage-v2/contrib/elftoolchain/strings/strings.c
==============================================================================
--- projects/runtime-coverage-v2/contrib/elftoolchain/strings/strings.c	Mon Apr  8 18:45:41 2019	(r346043)
+++ projects/runtime-coverage-v2/contrib/elftoolchain/strings/strings.c	Mon Apr  8 22:57:36 2019	(r346044)
@@ -25,8 +25,10 @@
  */
 
 #include <sys/types.h>
+#include <sys/capsicum.h>
 #include <sys/stat.h>
 
+#include <capsicum_helpers.h>
 #include <ctype.h>
 #include <err.h>
 #include <errno.h>
@@ -44,6 +46,9 @@
 #include <libelftc.h>
 #include <gelf.h>
 
+#include <libcasper.h>
+#include <casper/cap_fileargs.h>
+
 #include "_elftc.h"
 
 ELFTC_VCSID("$Id: strings.c 3648 2018-11-22 23:26:43Z emaste $");
@@ -85,7 +90,7 @@ static struct option strings_longopts[] = {
 };
 
 int	getcharacter(FILE *, long *);
-int	handle_file(const char *);
+int	handle_file(fileargs_t *fa, const char *);
 int	handle_elf(const char *, FILE *);
 int	handle_binary(const char *, FILE *, size_t);
 int	find_strings(const char *, FILE *, off_t, off_t);
@@ -99,6 +104,8 @@ void	usage(void);
 int
 main(int argc, char **argv)
 {
+	fileargs_t *fa;
+	cap_rights_t rights;
 	int ch, rc;
 
 	rc = 0;
@@ -187,27 +194,41 @@ main(int argc, char **argv)
 	argc -= optind;
 	argv += optind;
 
+	cap_rights_init(&rights, CAP_READ, CAP_SEEK, CAP_FSTAT, CAP_FCNTL);
+	fa = fileargs_init(argc, argv, O_RDONLY, 0, &rights);
+	if (fa == NULL)
+		err(1, "Unable to initialize casper fileargs");
+
+	caph_cache_catpages();
+	if (caph_limit_stdio() < 0 && caph_enter_casper() < 0) {
+		fileargs_free(fa);
+		err(1, "Unable to enter capability mode");
+	}
+
 	if (min_len == 0)
 		min_len = 4;
 	if (*argv == NULL)
 		rc = find_strings("{standard input}", stdin, 0, 0);
 	else while (*argv != NULL) {
-		if (handle_file(*argv) != 0)
+		if (handle_file(fa, *argv) != 0)
 			rc = 1;
 		argv++;
 	}
+
+	fileargs_free(fa);
+
 	return (rc);
 }
 
 int
-handle_file(const char *name)
+handle_file(fileargs_t *fa, const char *name)
 {
 	FILE *pfile;
 	int rt;
 
 	if (name == NULL)
 		return (1);
-	pfile = fopen(name, "rb");
+	pfile = fileargs_fopen(fa, name, "rb");
 	if (pfile == NULL) {
 		warnx("'%s': %s", name, strerror(errno));
 		return (1);

Modified: projects/runtime-coverage-v2/contrib/libxo/configure.ac
==============================================================================
--- projects/runtime-coverage-v2/contrib/libxo/configure.ac	Mon Apr  8 18:45:41 2019	(r346043)
+++ projects/runtime-coverage-v2/contrib/libxo/configure.ac	Mon Apr  8 22:57:36 2019	(r346044)
@@ -12,7 +12,7 @@
 #
 
 AC_PREREQ(2.2)
-AC_INIT([libxo], [0.9.0], [phil@juniper.net])
+AC_INIT([libxo], [1.0.2], [phil@juniper.net])
 AM_INIT_AUTOMAKE([-Wall -Werror foreign -Wno-portability])
 
 # Support silent build rules.  Requires at least automake-1.11.

Modified: projects/runtime-coverage-v2/contrib/libxo/doc/api.rst
==============================================================================
--- projects/runtime-coverage-v2/contrib/libxo/doc/api.rst	Mon Apr  8 18:45:41 2019	(r346043)
+++ projects/runtime-coverage-v2/contrib/libxo/doc/api.rst	Mon Apr  8 22:57:36 2019	(r346044)
@@ -400,28 +400,28 @@ string, since an inappropriate cast can ruin your day.
 argument to `xo_emit_hv` points to a variable argument list that can
 be used to retrieve arguments via `va_arg`.
 
-.. c:function:: int xo_emit (const char *fmt, ...)
+.. c:function:: xo_ssize_t xo_emit (const char *fmt, ...)
 
   :param fmt: The format string, followed by zero or more arguments
   :returns: If XOF_COLUMNS is set, the number of columns used; otherwise the number of bytes emitted
-  :rtype: int
+  :rtype: xo_ssize_t
 
-.. c:function:: int xo_emit_h (xo_handle_t *xop, const char *fmt, ...)
+.. c:function:: xo_ssize_t xo_emit_h (xo_handle_t *xop, const char *fmt, ...)
 
   :param xop: Handle for modify (or NULL for default handle)
   :type xop: xo_handle_t \*
   :param fmt: The format string, followed by zero or more arguments
   :returns: If XOF_COLUMNS is set, the number of columns used; otherwise the number of bytes emitted
-  :rtype: int
+  :rtype: xo_ssize_t
 
-.. c:function:: int xo_emit_hv (xo_handle_t *xop, const char *fmt, va_list vap)
+.. c:function:: xo_ssize_t xo_emit_hv (xo_handle_t *xop, const char *fmt, va_list vap)
 
   :param xop: Handle for modify (or NULL for default handle)
   :type xop: xo_handle_t \*
   :param fmt: The format string
   :param va_list vap: A set of variadic arguments
   :returns: If XOF_COLUMNS is set, the number of columns used; otherwise the number of bytes emitted
-  :rtype: int
+  :rtype: xo_ssize_t
 
 .. index:: xo_emit_field
 
@@ -434,7 +434,7 @@ scenario where one would otherwise need to compose a f
 descriptors using `snprintf`.  The individual parts of the format
 descriptor are passed in distinctly.
 
-.. c:function:: int xo_emit_field (const char *rolmod, const char *contents, const char *fmt, const char *efmt, ...)
+.. c:function:: xo_ssize_t xo_emit_field (const char *rolmod, const char *contents, const char *fmt, const char *efmt, ...)
 
   :param rolmod: A comma-separated list of field roles and field modifiers
   :type rolmod: const char *
@@ -445,7 +445,7 @@ descriptor are passed in distinctly.
   :param efmt: Encoding format string, followed by additional arguments
   :type efmt: const char *
   :returns: If XOF_COLUMNS is set, the number of columns used; otherwise the number of bytes emitted
-  :rtype: int
+  :rtype: xo_ssize_t
 
   ::
 
@@ -453,7 +453,7 @@ descriptor are passed in distinctly.
         xo_emit_field("T", "Host name is ", NULL, NULL);
         xo_emit_field("V", "host-name", NULL, NULL, host-name);
 
-.. c:function:: int xo_emit_field_h (xo_handle_t *xop, const char *rolmod, const char *contents, const char *fmt, const char *efmt, ...)
+.. c:function:: xo_ssize_t xo_emit_field_h (xo_handle_t *xop, const char *rolmod, const char *contents, const char *fmt, const char *efmt, ...)
 
   :param xop: Handle for modify (or NULL for default handle)
   :type xop: xo_handle_t \*
@@ -466,9 +466,9 @@ descriptor are passed in distinctly.
   :param efmt: Encoding format string, followed by additional arguments
   :type efmt: const char *
   :returns: If XOF_COLUMNS is set, the number of columns used; otherwise the number of bytes emitted
-  :rtype: int
+  :rtype: xo_ssize_t
 
-.. c:function:: int xo_emit_field_hv (xo_handle_t *xop, const char *rolmod, const char *contents, const char *fmt, const char *efmt, va_list vap)
+.. c:function:: xo_ssize_t xo_emit_field_hv (xo_handle_t *xop, const char *rolmod, const char *contents, const char *fmt, const char *efmt, va_list vap)
 
   :param xop: Handle for modify (or NULL for default handle)
   :type xop: xo_handle_t \*
@@ -482,7 +482,7 @@ descriptor are passed in distinctly.
   :type efmt: const char *
   :param va_list vap: A set of variadic arguments
   :returns: If XOF_COLUMNS is set, the number of columns used; otherwise the number of bytes emitted
-  :rtype: int
+  :rtype: xo_ssize_t
 
 .. index:: xo_attr
 .. _xo_attr:
@@ -505,14 +505,14 @@ Since attributes are only emitted in XML, their use sh
 to meta-data and additional or redundant representations of data
 already emitted in other form.
 
-.. c:function:: int xo_attr (const char *name, const char *fmt, ...)
+.. c:function:: xo_ssize_t xo_attr (const char *name, const char *fmt, ...)
 
   :param name: Attribute name
   :type name: const char *
   :param fmt: Attribute value, as variadic arguments
   :type fmt: const char *
   :returns: -1 for error, or the number of bytes in the formatted attribute value
-  :rtype: int
+  :rtype: xo_ssize_t
 
   ::
 
@@ -525,7 +525,7 @@ already emitted in other form.
         <login-time seconds="1408336270">00:14</login-time>
 
 
-.. c:function:: int xo_attr_h (xo_handle_t *xop, const char *name, const char *fmt, ...)
+.. c:function:: xo_ssize_t xo_attr_h (xo_handle_t *xop, const char *name, const char *fmt, ...)
 
   :param xop: Handle for modify (or NULL for default handle)
   :type xop: xo_handle_t \*
@@ -533,7 +533,7 @@ already emitted in other form.
   The `xo_attr_h` function follows the conventions of `xo_attr` but
   adds an explicit libxo handle.
 
-.. c:function:: int xo_attr_hv (xo_handle_t *xop, const char *name, const char *fmt, va_list vap)
+.. c:function:: xo_ssize_t xo_attr_hv (xo_handle_t *xop, const char *name, const char *fmt, va_list vap)
 
   The `xo_attr_h` function follows the conventions of `xo_attr_h`
   but replaced the variadic list with a variadic pointer.

Modified: projects/runtime-coverage-v2/contrib/libxo/doc/libxo-manual.html
==============================================================================
--- projects/runtime-coverage-v2/contrib/libxo/doc/libxo-manual.html	Mon Apr  8 18:45:41 2019	(r346043)
+++ projects/runtime-coverage-v2/contrib/libxo/doc/libxo-manual.html	Mon Apr  8 22:57:36 2019	(r346044)
@@ -515,7 +515,7 @@ li.indline1 {
  
   } 
   @top-right {
-       content: "May 2018";
+       content: "April 2019";
  
   } 
   @top-center {
@@ -22011,7 +22011,7 @@ jQuery(function ($) {
 </tr>
 <tr>
 <td class="header left"></td>
-<td class="header right">May 21, 2018</td>
+<td class="header right">April 2, 2019</td>
 </tr>
 </table></div>
 <p id="title" class="title">libxo: The Easy Way to Generate text, XML, JSON, and HTML output<br><span class="filename">libxo-manual</span></p>

Modified: projects/runtime-coverage-v2/contrib/libxo/doc/xo.rst
==============================================================================
--- projects/runtime-coverage-v2/contrib/libxo/doc/xo.rst	Mon Apr  8 18:45:41 2019	(r346043)
+++ projects/runtime-coverage-v2/contrib/libxo/doc/xo.rst	Mon Apr  8 22:57:36 2019	(r346044)
@@ -75,7 +75,7 @@ prepend data to the XPath values used for HTML output 
   EXAMPLE;
     #!/bin/sh
     xo --open top/data
-    xo --depth 2 '{tag}' value
+    xo --depth 2 '{:tag}' value
     xo --close top/data
   XML:
     <top>
@@ -90,6 +90,84 @@ prepend data to the XPath values used for HTML output 
       }
     }
 
+When making partial lines of output (where the format string does not
+include a newline), use the `--continuation` option to let secondary
+invocations know they are adding data to an existing line.
+
+When emitting a series of objects, use the `--not-first` option to
+ensure that any details from the previous object (e.g. commas in JSON)
+are handled correctly.
+
+Use the `--top-wrap` option to ensure any top-level object details are
+handled correctly, e.g. wrap the entire output in a top-level set of
+braces for JSON output.
+
+  EXAMPLE;
+    #!/bin/sh
+    xo --top-wrap --open top/data
+    xo --depth 2 'First {:tag} ' value1
+    xo --depth 2 --continuation 'and then {:tag}\n' value2
+    xo --top-wrap --close top/data
+  TEXT:
+    First value1 and then value2
+  HTML:
+    <div class="line">
+      <div class="text">First </div>
+      <div class="data" data-tag="tag">value1</div>
+      <div class="text"> </div>
+      <div class="text">and then </div>
+      <div class="data" data-tag="tag">value2</div>
+    </div>
+  XML:
+    <top>
+      <data>
+        <tag>value1</tag>
+        <tag>value2</tag>
+      </data>
+    </top>
+  JSON:
+    {
+      "top": {
+        "data": {
+        "tag": "value1",
+        "tag": "value2"
+        }
+      }
+    } 
+
+Lists and Instances
+-------------------
+
+A "*list*" is set of one or more instances that appear under the same
+parent.  The instances contain details about a specific object.  One
+can think of instances as objects or records.  A call is needed to
+open and close the list, while a distinct call is needed to open and
+close each instance of the list.
+
+Use the `--open-list` and `--open-instances` to open lists and
+instances.  Use the `--close-list` and `--close-instances` to close
+them.  Each of these options take a `name` parameter, providing the
+name of the list and instance.
+
+In the following example, a list named "machine" is created with three
+instances:
+
+    opts="--json"
+    xo $opts --open-list machine
+    NF=
+    for name in red green blue; do
+        xo $opts --depth 1 $NF --open-instance machine
+        xo $opts --depth 2 "Machine {k:name} has {:memory}\n" $name 55
+        xo $opts --depth 1 --close-instance machine
+        NF=--not-first
+    done
+    xo $opts $NF --close-list machine
+
+The normal `libxo` functions use a state machine to help these
+transitions, but since each `xo` command is invoked independent of the
+previous calls, the state must be passed in explicitly via these
+command line options.
+
 Command Line Options
 --------------------
 
@@ -97,15 +175,23 @@ Command Line Options
 
   Usage: xo [options] format [fields]
     --close <path>        Close tags for the given path
+    --close-instance <name> Close an open instance name
+    --close-list <name>   Close an open list name
+    --continuation OR -C  Output belongs on same line as previous output
     --depth <num>         Set the depth for pretty printing
     --help                Display this help text
     --html OR -H          Generate HTML output
     --json OR -J          Generate JSON output
     --leading-xpath <path> Add a prefix to generated XPaths (HTML)
+    --not-first           Indicate this object is not the first (JSON)
     --open <path>         Open tags for the given path
+    --open-instance <name> Open an instance given by name
+    --open-list <name>   Open a list given by name
+    --option <opts> -or -O <opts>  Give formatting options
     --pretty OR -p        Make 'pretty' output (add indent, newlines)
     --style <style>       Generate given style (xml, json, text, html)
     --text OR -T          Generate text output (the default style)
+    --top-wrap            Generate a top-level object wrapper (JSON)
     --version             Display version information
     --warn OR -W          Display warnings in text on stderr
     --warn-xml            Display warnings in xml on stdout

Modified: projects/runtime-coverage-v2/contrib/libxo/libxo/Makefile.am
==============================================================================
--- projects/runtime-coverage-v2/contrib/libxo/libxo/Makefile.am	Mon Apr  8 18:45:41 2019	(r346043)
+++ projects/runtime-coverage-v2/contrib/libxo/libxo/Makefile.am	Mon Apr  8 22:57:36 2019	(r346044)
@@ -35,6 +35,7 @@ libxoinc_HEADERS = \
 
 noinst_HEADERS = \
      xo_buf.h \
+     xo_explicit.h \
      xo_humanize.h \
      xo_wcwidth.h
 

Modified: projects/runtime-coverage-v2/contrib/libxo/libxo/libxo.c
==============================================================================
--- projects/runtime-coverage-v2/contrib/libxo/libxo/libxo.c	Mon Apr  8 18:45:41 2019	(r346043)
+++ projects/runtime-coverage-v2/contrib/libxo/libxo/libxo.c	Mon Apr  8 22:57:36 2019	(r346044)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2014-2015, Juniper Networks, Inc.
+ * Copyright (c) 2014-2018, Juniper Networks, Inc.
  * All rights reserved.
  * This SOFTWARE is licensed under the LICENSE provided in the
  * ../Copyright file. By downloading, installing, copying, or otherwise
@@ -47,6 +47,7 @@
 #include "xo.h"
 #include "xo_encoder.h"
 #include "xo_buf.h"
+#include "xo_explicit.h"
 
 /*
  * We ask wcwidth() to do an impossible job, really.  It's supposed to
@@ -158,40 +159,9 @@ typedef unsigned xo_xsf_flags_t; /* XSF_* flags */
  (XSF_NOT_FIRST | XSF_CONTENT | XSF_EMIT | XSF_EMIT_KEY | XSF_EMIT_LEAF_LIST )
 
 /*
- * A word about states: We use a finite state machine (FMS) approach
- * to help remove fragility from the caller's code.  Instead of
- * requiring a specific order of calls, we'll allow the caller more
- * flexibility and make the library responsible for recovering from
- * missed steps.  The goal is that the library should not be capable
- * of emitting invalid xml or json, but the developer shouldn't need
- * to know or understand all the details about these encodings.
- *
- * You can think of states as either states or events, since they
- * function rather like both.  None of the XO_CLOSE_* events will
- * persist as states, since the matching stack frame will be popped.
- * Same is true of XSS_EMIT, which is an event that asks us to
- * prep for emitting output fields.
+ * Turn the transition between two states into a number suitable for
+ * a "switch" statement.
  */
-
-/* Stack frame states */
-typedef unsigned xo_state_t;
-#define XSS_INIT		0      	/* Initial stack state */
-#define XSS_OPEN_CONTAINER	1
-#define XSS_CLOSE_CONTAINER	2
-#define XSS_OPEN_LIST		3
-#define XSS_CLOSE_LIST		4
-#define XSS_OPEN_INSTANCE	5
-#define XSS_CLOSE_INSTANCE	6
-#define XSS_OPEN_LEAF_LIST	7
-#define XSS_CLOSE_LEAF_LIST	8
-#define XSS_DISCARDING		9	/* Discarding data until recovered */
-#define XSS_MARKER		10	/* xo_open_marker's marker */
-#define XSS_EMIT		11	/* xo_emit has a leaf field */
-#define XSS_EMIT_LEAF_LIST	12	/* xo_emit has a leaf-list ({l:}) */
-#define XSS_FINISH		13	/* xo_finish was called */
-
-#define XSS_MAX			13
-
 #define XSS_TRANSITION(_old, _new) ((_old) << 8 | (_new))
 
 /*
@@ -288,8 +258,8 @@ struct xo_handle_s {
     ssize_t xo_units_offset;	/* Start of units insertion point */
     ssize_t xo_columns;	/* Columns emitted during this xo_emit call */
 #ifndef LIBXO_TEXT_ONLY
-    uint8_t xo_color_map_fg[XO_NUM_COLORS]; /* Foreground color mappings */
-    uint8_t xo_color_map_bg[XO_NUM_COLORS]; /* Background color mappings */
+    xo_color_t xo_color_map_fg[XO_NUM_COLORS]; /* Foreground color mappings */
+    xo_color_t xo_color_map_bg[XO_NUM_COLORS]; /* Background color mappings */
 #endif /* LIBXO_TEXT_ONLY */
     xo_colors_t xo_colors;	/* Current color and effect values */
     xo_buffer_t xo_color_buf;	/* HTML: buffer of colors and effects */
@@ -321,6 +291,7 @@ struct xo_handle_s {
 
 #define XOIF_UNITS_PENDING XOF_BIT(4) /* We have a units-insertion pending */
 #define XOIF_INIT_IN_PROGRESS XOF_BIT(5) /* Init of handle is in progress */
+#define XOIF_MADE_OUTPUT XOF_BIT(6)	 /* Have already made output */
 
 /* Flags for formatting functions */
 typedef unsigned long xo_xff_flags_t;
@@ -468,7 +439,7 @@ static void
 xo_failure (xo_handle_t *xop, const char *fmt, ...);
 
 static ssize_t
-xo_transition (xo_handle_t *xop, xo_xsf_flags_t flags, const char *name,
+xo_transition (xo_handle_t *xop, xo_xof_flags_t flags, const char *name,
 	       xo_state_t new_state);
 
 static int
@@ -506,6 +477,20 @@ xo_style (xo_handle_t *xop UNUSED)
 }
 
 /*
+ * Allow the compiler to optimize out non-text-only code while
+ * still compiling it.
+ */
+static inline int
+xo_text_only (void)
+{
+#ifdef LIBXO_TEXT_ONLY
+    return TRUE;
+#else /* LIBXO_TEXT_ONLY */
+    return FALSE;
+#endif /* LIBXO_TEXT_ONLY */
+}
+
+/*
  * Callback to write data to a FILE pointer
  */
 static xo_ssize_t
@@ -607,6 +592,28 @@ xo_no_setlocale (void)
 }
 
 /*
+ * For XML, the first character of a tag cannot be numeric, but people
+ * will likely not notice.  So we people-proof them by forcing a leading
+ * underscore if they use invalid tags.  Note that this doesn't cover
+ * all broken tags, just this fairly specific case.
+ */
+static const char *
+xo_xml_leader_len (xo_handle_t *xop, const char *name, xo_ssize_t nlen)
+{
+    if (name == NULL || isalpha(name[0]) || name[0] == '_')
+        return "";
+
+    xo_failure(xop, "invalid XML tag name: '%.*s'", nlen, name);
+    return "_";
+}
+
+static const char *
+xo_xml_leader (xo_handle_t *xop, const char *name)
+{
+    return xo_xml_leader_len(xop, name, strlen(name));
+}
+
+/*
  * We need to decide if stdout is line buffered (_IOLBF).  Lacking a
  * standard way to decide this (e.g. getlinebuf()), we have configure
  * look to find __flbf, which glibc supported.  If not, we'll rely on
@@ -2194,9 +2201,8 @@ xo_set_style_name (xo_handle_t *xop, const char *name)
 static void
 xo_set_color_map (xo_handle_t *xop, char *value)
 {
-#ifdef LIBXO_TEXT_ONLY
-    return;
-#endif /* LIBXO_TEXT_ONLY */
+    if (xo_text_only())
+	return;
 
     char *cp, *ep, *vp, *np;
     ssize_t len = value ? strlen(value) + 1 : 0;
@@ -2214,8 +2220,11 @@ xo_set_color_map (xo_handle_t *xop, char *value)
 	fg = *cp ? xo_color_find(cp) : -1;
 	bg = (vp && *vp) ? xo_color_find(vp) : -1;
 
+#ifndef LIBXO_TEXT_ONLY
 	xop->xo_color_map_fg[num] = (fg < 0) ? num : fg;
 	xop->xo_color_map_bg[num] = (bg < 0) ? num : bg;
+#endif /* LIBXO_TEXT_ONLY */
+
 	if (++num > XO_NUM_COLORS)
 	    break;
     }
@@ -2226,9 +2235,11 @@ xo_set_color_map (xo_handle_t *xop, char *value)
     else
 	XOF_CLEAR(xop, XOF_COLOR_MAP);
 
+#ifndef LIBXO_TEXT_ONLY
     /* Fill in the rest of the colors with the defaults */
     for ( ; num < XO_NUM_COLORS; num++)
 	xop->xo_color_map_fg[num] = xop->xo_color_map_bg[num] = num;
+#endif /* LIBXO_TEXT_ONLY */
 }
 
 static int
@@ -2600,6 +2611,12 @@ xo_line_ensure_open (xo_handle_t *xop, xo_xff_flags_t 
     static char div_open[] = "<div class=\"line\">";
     static char div_open_blank[] = "<div class=\"blank-line\">";
 
+    if (XOF_ISSET(xop, XOF_CONTINUATION)) {
+	XOF_CLEAR(xop, XOF_CONTINUATION);
+	XOIF_SET(xop, XOIF_DIV_OPEN);
+	return;
+    }
+
     if (XOIF_ISSET(xop, XOIF_DIV_OPEN))
 	return;
 
@@ -3505,51 +3522,54 @@ xo_do_format_field (xo_handle_t *xop, xo_buffer_t *xbp
 		ssize_t columns = rc = xo_vsnprintf(xop, xbp, newfmt,
 						    xop->xo_vap);
 
-		/*
-		 * For XML and HTML, we need "&<>" processing; for JSON,
-		 * it's quotes.  Text gets nothing.
-		 */
-		switch (style) {
-		case XO_STYLE_XML:
-		    if (flags & XFF_TRIM_WS)
-			columns = rc = xo_trim_ws(xbp, rc);
-		    /* FALLTHRU */
-		case XO_STYLE_HTML:
-		    rc = xo_escape_xml(xbp, rc, (flags & XFF_ATTR));
-		    break;
+		if (rc > 0) {
+		    /*
+		     * For XML and HTML, we need "&<>" processing; for JSON,
+		     * it's quotes.  Text gets nothing.
+		     */
+		    switch (style) {
+		    case XO_STYLE_XML:
+			if (flags & XFF_TRIM_WS)
+			    columns = rc = xo_trim_ws(xbp, rc);
+			/* FALLTHRU */
+		    case XO_STYLE_HTML:
+			rc = xo_escape_xml(xbp, rc, (flags & XFF_ATTR));
+			break;
 
-		case XO_STYLE_JSON:
-		    if (flags & XFF_TRIM_WS)
-			columns = rc = xo_trim_ws(xbp, rc);
-		    rc = xo_escape_json(xbp, rc, 0);
-		    break;
+		    case XO_STYLE_JSON:
+			if (flags & XFF_TRIM_WS)
+			    columns = rc = xo_trim_ws(xbp, rc);
+			rc = xo_escape_json(xbp, rc, 0);
+			break;
 
-		case XO_STYLE_SDPARAMS:
-		    if (flags & XFF_TRIM_WS)
-			columns = rc = xo_trim_ws(xbp, rc);
-		    rc = xo_escape_sdparams(xbp, rc, 0);
-		    break;
+		    case XO_STYLE_SDPARAMS:
+			if (flags & XFF_TRIM_WS)
+			    columns = rc = xo_trim_ws(xbp, rc);
+			rc = xo_escape_sdparams(xbp, rc, 0);
+			break;
 
-		case XO_STYLE_ENCODER:
-		    if (flags & XFF_TRIM_WS)
-			columns = rc = xo_trim_ws(xbp, rc);
-		    break;
-		}
+		    case XO_STYLE_ENCODER:
+			if (flags & XFF_TRIM_WS)
+			    columns = rc = xo_trim_ws(xbp, rc);
+			break;
+		    }
 
-		/*
-		 * We can assume all the non-%s data we've
-		 * added is ASCII, so the columns and bytes are the
-		 * same.  xo_format_string handles all the fancy
-		 * string conversions and updates xo_anchor_columns
-		 * accordingly.
-		 */
-		if (XOF_ISSET(xop, XOF_COLUMNS))
-		    xop->xo_columns += columns;
-		if (XOIF_ISSET(xop, XOIF_ANCHOR))
-		    xop->xo_anchor_columns += columns;
+		    /*
+		     * We can assume all the non-%s data we've
+		     * added is ASCII, so the columns and bytes are the
+		     * same.  xo_format_string handles all the fancy
+		     * string conversions and updates xo_anchor_columns
+		     * accordingly.
+		     */
+		    if (XOF_ISSET(xop, XOF_COLUMNS))
+			xop->xo_columns += columns;
+		    if (XOIF_ISSET(xop, XOIF_ANCHOR))
+			xop->xo_anchor_columns += columns;
+		}
 	    }
 
-	    xbp->xb_curp += rc;
+	    if (rc > 0)
+		xbp->xb_curp += rc;
 	}
 
 	/*
@@ -4233,7 +4253,22 @@ xo_format_is_numeric (const char *fmt, ssize_t flen)
     return (strchr("diouDOUeEfFgG", *fmt) == NULL) ? FALSE : TRUE;
 }
 
+/*
+ * Update the stack flags using the object flags, allowing callers
+ * to monkey with the stack flags without even knowing they exist.
+ */
 static void
+xo_stack_set_flags (xo_handle_t *xop)
+{
+    if (XOF_ISSET(xop, XOF_NOT_FIRST)) {
+	xo_stack_t *xsp = &xop->xo_stack[xop->xo_depth];
+
+	xsp->xs_flags |= XSF_NOT_FIRST;
+	XOF_CLEAR(xop, XOF_NOT_FIRST);
+    }
+}
+
+static void
 xo_format_prep (xo_handle_t *xop, xo_xff_flags_t flags)
 {
     if (xop->xo_stack[xop->xo_depth].xs_flags & XSF_NOT_FIRST) {
@@ -4337,6 +4372,8 @@ xo_format_value (xo_handle_t *xop, const char *name, s
     xo_buffer_t *xbp = &xop->xo_data;
     xo_humanize_save_t save;	/* Save values for humanizing logic */
 
+    const char *leader = xo_xml_leader_len(xop, name, nlen);
+
     switch (xo_style(xop)) {
     case XO_STYLE_TEXT:
 	if (flags & XFF_ENCODE_ONLY)
@@ -4391,6 +4428,8 @@ xo_format_value (xo_handle_t *xop, const char *name, s
 	if (pretty)
 	    xo_buf_indent(xop, -1);
 	xo_data_append(xop, "<", 1);
+        if (*leader)
+            xo_data_append(xop, leader, 1);
 	xo_data_escape(xop, name, nlen);
 
 	if (xop->xo_attrs.xb_curp != xop->xo_attrs.xb_bufp) {
@@ -4423,6 +4462,8 @@ xo_format_value (xo_handle_t *xop, const char *name, s
 	xo_simple_field(xop, FALSE, value, vlen, fmt, flen, flags);
 
 	xo_data_append(xop, "</", 2);
+        if (*leader)
+            xo_data_append(xop, leader, 1);
 	xo_data_escape(xop, name, nlen);
 	xo_data_append(xop, ">", 1);
 	if (pretty)
@@ -4446,6 +4487,8 @@ xo_format_value (xo_handle_t *xop, const char *name, s
 	    flen = strlen(fmt);
 	}
 
+	xo_stack_set_flags(xop);
+
 	int first = (xop->xo_stack[xop->xo_depth].xs_flags & XSF_NOT_FIRST)
 	    ? 0 : 1;
 
@@ -4751,9 +4794,8 @@ xo_effect_find (const char *str)
 static void
 xo_colors_parse (xo_handle_t *xop, xo_colors_t *xocp, char *str)
 {
-#ifdef LIBXO_TEXT_ONLY
-    return;
-#endif /* LIBXO_TEXT_ONLY */
+    if (xo_text_only())
+	return;
 
     char *cp, *ep, *np, *xp;
     ssize_t len = strlen(str);
@@ -4837,12 +4879,9 @@ xo_colors_enabled (xo_handle_t *xop UNUSED)
  * the incoming foreground and background colors from the map.
  */
 static void
-xo_colors_update (xo_handle_t *xop, xo_colors_t *newp)
+xo_colors_update (xo_handle_t *xop UNUSED, xo_colors_t *newp UNUSED)
 {
-#ifdef LIBXO_TEXT_ONLY
-    return;
-#endif /* LIBXO_TEXT_ONLY */
-
+#ifndef LIBXO_TEXT_ONLY
     xo_color_t fg = newp->xoc_col_fg;
     if (XOF_ISSET(xop, XOF_COLOR_MAP) && fg < XO_NUM_COLORS)
 	fg = xop->xo_color_map_fg[fg]; /* Fetch from color map */
@@ -4852,6 +4891,7 @@ xo_colors_update (xo_handle_t *xop, xo_colors_t *newp)
     if (XOF_ISSET(xop, XOF_COLOR_MAP) && bg < XO_NUM_COLORS)
 	bg = xop->xo_color_map_bg[bg]; /* Fetch from color map */
     newp->xoc_col_bg = bg;
+#endif /* LIBXO_TEXT_ONLY */
 }
 
 static void
@@ -6454,9 +6494,7 @@ xo_do_emit_fields (xo_handle_t *xop, xo_field_info_t *
 
     /* If we don't have an anchor, write the text out */
     if (flush && !XOIF_ISSET(xop, XOIF_ANCHOR)) {
-	if (xo_write(xop) < 0) 
-	    rc = -1;		/* Report failure */
-	else if (xo_flush_h(xop) < 0)
+	if (xo_flush_h(xop) < 0)
 	    rc = -1;
     }
 
@@ -6804,17 +6842,6 @@ xo_attr (const char *name, const char *fmt, ...)
 }
 
 static void
-xo_stack_set_flags (xo_handle_t *xop)
-{
-    if (XOF_ISSET(xop, XOF_NOT_FIRST)) {
-	xo_stack_t *xsp = &xop->xo_stack[xop->xo_depth];
-
-	xsp->xs_flags |= XSF_NOT_FIRST;
-	XOF_CLEAR(xop, XOF_NOT_FIRST);
-    }
-}
-
-static void
 xo_depth_change (xo_handle_t *xop, const char *name,
 		 int delta, int indent, xo_state_t state, xo_xsf_flags_t flags)
 {
@@ -6889,6 +6916,15 @@ xo_set_depth (xo_handle_t *xop, int depth)
 
     xop->xo_depth += depth;

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201904082257.x38Mvbem097796>