Date: Fri, 31 Jul 2020 19:25:36 +0000 (UTC) From: Dimitry Andric <dim@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r363739 - in projects/clang1100-import: . bin/ps bin/sh cddl/lib cddl/lib/libdtrace cddl/lib/libzpool contrib/ipfilter/iplang contrib/ipfilter/ipsend contrib/netbsd-tests/lib/libc/regex... Message-ID: <202007311925.06VJPaqj029901@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: dim Date: Fri Jul 31 19:25:35 2020 New Revision: 363739 URL: https://svnweb.freebsd.org/changeset/base/363739 Log: Merge ^/head r363583 through r363738. Added: projects/clang1100-import/sys/arm/ti/am335x/am3359_cppi41.c - copied unchanged from r363738, head/sys/arm/ti/am335x/am3359_cppi41.c projects/clang1100-import/sys/arm/ti/am335x/am335x_usb_phy.c - copied unchanged from r363738, head/sys/arm/ti/am335x/am335x_usb_phy.c projects/clang1100-import/sys/arm/ti/clk/ - copied from r363738, head/sys/arm/ti/clk/ projects/clang1100-import/sys/arm/ti/ti_omap4_cm.c - copied unchanged from r363738, head/sys/arm/ti/ti_omap4_cm.c projects/clang1100-import/sys/arm/ti/ti_omap4_cm.h - copied unchanged from r363738, head/sys/arm/ti/ti_omap4_cm.h projects/clang1100-import/sys/arm/ti/ti_prm.c - copied unchanged from r363738, head/sys/arm/ti/ti_prm.c projects/clang1100-import/sys/arm/ti/ti_prm.h - copied unchanged from r363738, head/sys/arm/ti/ti_prm.h projects/clang1100-import/sys/arm/ti/ti_scm_syscon.c - copied unchanged from r363738, head/sys/arm/ti/ti_scm_syscon.c projects/clang1100-import/sys/arm/ti/ti_sysc.h - copied unchanged from r363738, head/sys/arm/ti/ti_sysc.h projects/clang1100-import/sys/contrib/pcg-c/ - copied from r363738, head/sys/contrib/pcg-c/ projects/clang1100-import/sys/dev/acpica/acpi_apei.c - copied unchanged from r363738, head/sys/dev/acpica/acpi_apei.c projects/clang1100-import/sys/dev/smc/if_smc_acpi.c - copied unchanged from r363738, head/sys/dev/smc/if_smc_acpi.c Deleted: projects/clang1100-import/release/sparc64/ projects/clang1100-import/sbin/init/ttys.sparc64 projects/clang1100-import/share/man/man4/cy.4 projects/clang1100-import/share/man/man4/rc.4 projects/clang1100-import/share/man/man4/rp.4 projects/clang1100-import/sys/arm/ti/am335x/am335x_prcm.c projects/clang1100-import/sys/arm/ti/am335x/am335x_usbss.c projects/clang1100-import/sys/arm/ti/ti_hwmods.c projects/clang1100-import/sys/arm/ti/ti_hwmods.h projects/clang1100-import/sys/dev/cy/ projects/clang1100-import/sys/dev/rc/ projects/clang1100-import/sys/dev/rp/ projects/clang1100-import/sys/modules/rc/ projects/clang1100-import/sys/modules/rp/ projects/clang1100-import/usr.sbin/bsdinstall/partedit/partedit_sparc64.c projects/clang1100-import/usr.sbin/kldxref/ef_sparc64.c Modified: projects/clang1100-import/ObsoleteFiles.inc projects/clang1100-import/RELNOTES projects/clang1100-import/UPDATING projects/clang1100-import/bin/ps/ps.c projects/clang1100-import/bin/sh/main.c projects/clang1100-import/cddl/lib/Makefile projects/clang1100-import/cddl/lib/libdtrace/Makefile projects/clang1100-import/cddl/lib/libzpool/Makefile projects/clang1100-import/contrib/ipfilter/iplang/iplang_y.y projects/clang1100-import/contrib/ipfilter/ipsend/arp.c projects/clang1100-import/contrib/ipfilter/ipsend/ipresend.c projects/clang1100-import/contrib/ipfilter/ipsend/ipsend.c projects/clang1100-import/contrib/ipfilter/ipsend/iptest.c projects/clang1100-import/contrib/ipfilter/ipsend/iptests.c projects/clang1100-import/contrib/ipfilter/ipsend/sock.c projects/clang1100-import/contrib/netbsd-tests/lib/libc/regex/data/meta.in projects/clang1100-import/contrib/netbsd-tests/lib/libc/regex/data/subexp.in projects/clang1100-import/contrib/openbsm/CREDITS projects/clang1100-import/contrib/openbsm/bin/auditd/auditd.c projects/clang1100-import/contrib/openbsm/bin/auditdistd/auditdistd.c projects/clang1100-import/contrib/openbsm/bin/auditdistd/proto_tls.c projects/clang1100-import/contrib/openbsm/libauditd/auditd_lib.c projects/clang1100-import/contrib/openbsm/libbsm/au_control.3 projects/clang1100-import/contrib/openbsm/libbsm/au_domain.3 projects/clang1100-import/contrib/openbsm/libbsm/au_errno.3 projects/clang1100-import/contrib/openbsm/libbsm/au_socket_type.3 projects/clang1100-import/contrib/openbsm/man/audit.log.5 projects/clang1100-import/contrib/openbsm/man/getaudit.2 projects/clang1100-import/contrib/openbsm/sys/bsm/audit.h projects/clang1100-import/crypto/openssh/FREEBSD-upgrade projects/clang1100-import/crypto/openssh/myproposal.h projects/clang1100-import/crypto/openssh/servconf.c projects/clang1100-import/crypto/openssh/sshd_config.5 projects/clang1100-import/etc/mtree/BSD.usr.dist projects/clang1100-import/include/regex.h projects/clang1100-import/lib/libc/regex/Symbol.map projects/clang1100-import/lib/libc/regex/regcomp.c projects/clang1100-import/lib/libpmc/libpmc_pmu_util.c projects/clang1100-import/rescue/rescue/Makefile projects/clang1100-import/share/man/man3/siginfo.3 projects/clang1100-import/share/man/man3/tree.3 projects/clang1100-import/share/man/man4/Makefile projects/clang1100-import/share/man/man4/aesni.4 projects/clang1100-import/share/man/man4/hifn.4 projects/clang1100-import/share/man/man4/man4.aarch64/armv8crypto.4 projects/clang1100-import/share/man/man4/man4.i386/glxsb.4 projects/clang1100-import/share/man/man4/ng_iface.4 projects/clang1100-import/share/man/man4/padlock.4 projects/clang1100-import/share/man/man4/safe.4 projects/clang1100-import/share/man/man4/safexcel.4 projects/clang1100-import/share/man/man8/rc.subr.8 projects/clang1100-import/share/misc/committers-doc.dot projects/clang1100-import/share/misc/committers-src.dot projects/clang1100-import/stand/common/install.c projects/clang1100-import/sys/arm/allwinner/clkng/ccu_sun8i_r.c projects/clang1100-import/sys/arm/arm/trap-v6.c projects/clang1100-import/sys/arm/broadcom/bcm2835/bcm2835_cpufreq.c projects/clang1100-import/sys/arm/broadcom/bcm2835/bcm2835_firmware.c projects/clang1100-import/sys/arm/broadcom/bcm2835/bcm2835_firmware.h projects/clang1100-import/sys/arm/broadcom/bcm2835/bcm2835_mbox.c projects/clang1100-import/sys/arm/broadcom/bcm2835/bcm2835_mbox_prop.h projects/clang1100-import/sys/arm/broadcom/bcm2835/bcm2835_sdhci.c projects/clang1100-import/sys/arm/ti/am335x/am335x_dmtimer.c projects/clang1100-import/sys/arm/ti/am335x/am335x_dmtpps.c projects/clang1100-import/sys/arm/ti/am335x/am335x_dmtreg.h projects/clang1100-import/sys/arm/ti/am335x/am335x_gpio.c projects/clang1100-import/sys/arm/ti/am335x/am335x_lcd.c projects/clang1100-import/sys/arm/ti/am335x/am335x_musb.c projects/clang1100-import/sys/arm/ti/am335x/am335x_pwmss.c projects/clang1100-import/sys/arm/ti/am335x/am335x_rtc.c projects/clang1100-import/sys/arm/ti/am335x/am335x_scm.c projects/clang1100-import/sys/arm/ti/am335x/files.am335x projects/clang1100-import/sys/arm/ti/cpsw/if_cpsw.c projects/clang1100-import/sys/arm/ti/files.ti projects/clang1100-import/sys/arm/ti/omap4/files.omap4 projects/clang1100-import/sys/arm/ti/ti_adc.c projects/clang1100-import/sys/arm/ti/ti_edma3.c projects/clang1100-import/sys/arm/ti/ti_gpio.c projects/clang1100-import/sys/arm/ti/ti_i2c.c projects/clang1100-import/sys/arm/ti/ti_mbox.c projects/clang1100-import/sys/arm/ti/ti_pinmux.c projects/clang1100-import/sys/arm/ti/ti_prcm.c projects/clang1100-import/sys/arm/ti/ti_prcm.h projects/clang1100-import/sys/arm/ti/ti_pruss.c projects/clang1100-import/sys/arm/ti/ti_scm.c projects/clang1100-import/sys/arm/ti/ti_sdhci.c projects/clang1100-import/sys/arm/ti/ti_sdma.c projects/clang1100-import/sys/arm/ti/ti_spi.c projects/clang1100-import/sys/arm/ti/ti_sysc.c projects/clang1100-import/sys/arm/ti/ti_wdt.c projects/clang1100-import/sys/arm/ti/usb/omap_ehci.c projects/clang1100-import/sys/arm/ti/usb/omap_host.c projects/clang1100-import/sys/arm/ti/usb/omap_tll.c projects/clang1100-import/sys/arm64/arm64/machdep.c projects/clang1100-import/sys/arm64/include/acpica_machdep.h projects/clang1100-import/sys/conf/files projects/clang1100-import/sys/dev/acpica/acpi.c projects/clang1100-import/sys/dev/cxgbe/t4_main.c projects/clang1100-import/sys/dev/hwpmc/hwpmc_mod.c projects/clang1100-import/sys/dev/hyperv/vmbus/vmbus.c projects/clang1100-import/sys/dev/iommu/busdma_iommu.c projects/clang1100-import/sys/dev/iommu/iommu.h projects/clang1100-import/sys/dev/iommu/iommu_gas.c projects/clang1100-import/sys/dev/mpr/mpr.c projects/clang1100-import/sys/dev/mpr/mpr_sas.c projects/clang1100-import/sys/dev/mpr/mpr_user.c projects/clang1100-import/sys/dev/mps/mps.c projects/clang1100-import/sys/dev/mps/mps_sas.c projects/clang1100-import/sys/dev/mps/mps_user.c projects/clang1100-import/sys/dev/ntb/ntb_hw/ntb_hw_intel.c projects/clang1100-import/sys/dev/ntb/ntb_hw/ntb_hw_plx.c projects/clang1100-import/sys/dev/pci/pci.c projects/clang1100-import/sys/dev/pci/pcivar.h projects/clang1100-import/sys/dev/smc/if_smc.c projects/clang1100-import/sys/dev/smc/if_smc_fdt.c projects/clang1100-import/sys/dev/smc/if_smcvar.h projects/clang1100-import/sys/dev/uart/uart_dev_ti8250.c projects/clang1100-import/sys/dev/virtio/pci/virtio_pci.c projects/clang1100-import/sys/fs/nfs/nfs_commonsubs.c projects/clang1100-import/sys/fs/nfsserver/nfs_nfsdport.c projects/clang1100-import/sys/geom/eli/g_eli_integrity.c projects/clang1100-import/sys/geom/eli/g_eli_privacy.c projects/clang1100-import/sys/geom/geom.h projects/clang1100-import/sys/geom/geom_ctl.c projects/clang1100-import/sys/geom/geom_map.c projects/clang1100-import/sys/geom/geom_redboot.c projects/clang1100-import/sys/kern/kern_dump.c projects/clang1100-import/sys/kern/kern_priv.c projects/clang1100-import/sys/kern/makesyscalls.sh projects/clang1100-import/sys/kern/uipc_socket.c projects/clang1100-import/sys/kern/uipc_usrreq.c projects/clang1100-import/sys/kern/vfs_bio.c projects/clang1100-import/sys/kern/vfs_cache.c projects/clang1100-import/sys/kern/vfs_default.c projects/clang1100-import/sys/kern/vfs_lookup.c projects/clang1100-import/sys/kern/vfs_subr.c projects/clang1100-import/sys/kern/vfs_syscalls.c projects/clang1100-import/sys/kern/vnode_if.src projects/clang1100-import/sys/mips/conf/std.MALTA projects/clang1100-import/sys/mips/mips/trap.c projects/clang1100-import/sys/modules/Makefile projects/clang1100-import/sys/modules/esp/Makefile projects/clang1100-import/sys/modules/uart/Makefile projects/clang1100-import/sys/net/iflib.c projects/clang1100-import/sys/netgraph/ng_iface.c projects/clang1100-import/sys/netgraph/ng_iface.h projects/clang1100-import/sys/netinet/tcp_subr.c projects/clang1100-import/sys/netinet6/ip6_output.c projects/clang1100-import/sys/powerpc/powerpc/trap.c projects/clang1100-import/sys/riscv/riscv/intr_machdep.c projects/clang1100-import/sys/riscv/riscv/trap.c projects/clang1100-import/sys/security/mac/mac_framework.c projects/clang1100-import/sys/security/mac/mac_framework.h projects/clang1100-import/sys/sys/ata.h projects/clang1100-import/sys/sys/file.h projects/clang1100-import/sys/sys/namei.h projects/clang1100-import/sys/sys/sysctl.h projects/clang1100-import/sys/sys/vnode.h projects/clang1100-import/sys/tools/vnode_if.awk projects/clang1100-import/sys/vm/vm_page.c projects/clang1100-import/sys/vm/vm_page.h projects/clang1100-import/sys/x86/include/acpica_machdep.h projects/clang1100-import/sys/x86/include/bus_dma.h projects/clang1100-import/sys/x86/iommu/intel_ctx.c projects/clang1100-import/sys/x86/iommu/intel_dmar.h projects/clang1100-import/sys/x86/iommu/intel_drv.c projects/clang1100-import/sys/x86/iommu/intel_idpgtbl.c projects/clang1100-import/sys/x86/iommu/intel_intrmap.c projects/clang1100-import/sys/x86/iommu/intel_qi.c projects/clang1100-import/sys/x86/iommu/intel_quirks.c projects/clang1100-import/sys/x86/iommu/intel_utils.c projects/clang1100-import/sys/x86/x86/busdma_machdep.c projects/clang1100-import/sys/x86/x86/cpu_machdep.c projects/clang1100-import/usr.bin/calendar/calendars/calendar.freebsd projects/clang1100-import/usr.bin/comm/comm.1 projects/clang1100-import/usr.bin/diff/tests/diff_test.sh projects/clang1100-import/usr.bin/sed/tests/sed2_test.sh projects/clang1100-import/usr.bin/truncate/truncate.1 projects/clang1100-import/usr.sbin/bhyve/bhyve.8 projects/clang1100-import/usr.sbin/bhyve/pci_ahci.c projects/clang1100-import/usr.sbin/ctld/kernel.c projects/clang1100-import/usr.sbin/nologin/nologin.8 Directory Properties: projects/clang1100-import/ (props changed) projects/clang1100-import/cddl/ (props changed) projects/clang1100-import/contrib/ipfilter/ (props changed) projects/clang1100-import/contrib/netbsd-tests/ (props changed) projects/clang1100-import/contrib/openbsm/ (props changed) projects/clang1100-import/crypto/openssh/ (props changed) Modified: projects/clang1100-import/ObsoleteFiles.inc ============================================================================== --- projects/clang1100-import/ObsoleteFiles.inc Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/ObsoleteFiles.inc Fri Jul 31 19:25:35 2020 (r363739) @@ -36,6 +36,11 @@ # xargs -n1 | sort | uniq -d; # done +# 20200729: remove long expired serial drivers +OLD_FILES+=usr/share/man/man4/cy.4.gz +OLD_FILES+=usr/share/man/man4/rc.4.gz +OLD_FILES+=usr/share/man/man4/rp.4.gz + # 20200715: rework of devstat(9) man page OLD_FILES+=usr/share/man/man9/devstat_add_entry.9.gz Modified: projects/clang1100-import/RELNOTES ============================================================================== --- projects/clang1100-import/RELNOTES Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/RELNOTES Fri Jul 31 19:25:35 2020 (r363739) @@ -10,6 +10,10 @@ newline. Entries should be separated by a newline. Changes to this file should not be MFCed. +r363679: + Applications using regex(3), e.g. sed/grep, will no longer accept + redundant escapes for most ordinary characters. + r363253: SCTP support has been removed from GENERIC kernel configurations. The SCTP stack is now built as sctp.ko and can be dynamically loaded. Modified: projects/clang1100-import/UPDATING ============================================================================== --- projects/clang1100-import/UPDATING Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/UPDATING Fri Jul 31 19:25:35 2020 (r363739) @@ -26,6 +26,18 @@ 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".) +20200729: + r363679 has redefined some undefined behavior in regcomp(3); notably, + extraneous escapes of most ordinary characters will no longer be + accepted. An exp-run has identified all of the problems with this in + ports, but other non-ports software may need extra escapes removed to + continue to function. + + Because of this change, installworld may encounter the following error + from rtld: Undefined symbol "regcomp@FBSD_1.6" -- It is imperative that + you do not halt installworld. Instead, let it run to completion (whether + successful or not) and run installworld once more. + 20200627: A new implementation of bc and dc has been imorted in r362681. This implementation corrects non-conformant behavior of the previous bc Modified: projects/clang1100-import/bin/ps/ps.c ============================================================================== --- projects/clang1100-import/bin/ps/ps.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/bin/ps/ps.c Fri Jul 31 19:25:35 2020 (r363739) @@ -1264,6 +1264,7 @@ fmt(char **(*fn)(kvm_t *, const struct kinfo_proc *, i static void saveuser(KINFO *ki) { + char tdname[COMMLEN + 1]; char *argsp; if (ki->ki_p->ki_flag & P_INMEM) { @@ -1280,12 +1281,14 @@ saveuser(KINFO *ki) * save arguments if needed */ if (needcomm) { - if (ki->ki_p->ki_stat == SZOMB) + if (ki->ki_p->ki_stat == SZOMB) { ki->ki_args = strdup("<defunct>"); - else if (UREADOK(ki) || (ki->ki_p->ki_args != NULL)) + } else if (UREADOK(ki) || (ki->ki_p->ki_args != NULL)) { + (void)snprintf(tdname, sizeof(tdname), "%s%s", + ki->ki_p->ki_tdname, ki->ki_p->ki_moretdname); ki->ki_args = fmt(kvm_getargv, ki, - ki->ki_p->ki_comm, ki->ki_p->ki_tdname, MAXCOMLEN); - else { + ki->ki_p->ki_comm, tdname, COMMLEN * 2 + 1); + } else { asprintf(&argsp, "(%s)", ki->ki_p->ki_comm); ki->ki_args = argsp; } Modified: projects/clang1100-import/bin/sh/main.c ============================================================================== --- projects/clang1100-import/bin/sh/main.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/bin/sh/main.c Fri Jul 31 19:25:35 2020 (r363739) @@ -228,6 +228,10 @@ cmdloop(int top) } } popstackmark(&smark); + if (top && iflag) { + out2c('\n'); + flushout(out2); + } } Modified: projects/clang1100-import/cddl/lib/Makefile ============================================================================== --- projects/clang1100-import/cddl/lib/Makefile Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/cddl/lib/Makefile Fri Jul 31 19:25:35 2020 (r363739) @@ -2,10 +2,10 @@ .include <src.opts.mk> -SUBDIR= ${_drti} \ +SUBDIR= drti \ libavl \ libctf \ - ${_libdtrace} \ + libdtrace \ libnvpair \ libumem \ libuutil \ @@ -21,11 +21,6 @@ _libzfs= libzfs .if ${MK_LIBTHR} != "no" _libzpool= libzpool .endif -.endif - -.if ${MACHINE_CPUARCH} != "sparc64" -_drti= drti -_libdtrace= libdtrace .endif SUBDIR_DEPEND_libdtrace= libctf Modified: projects/clang1100-import/cddl/lib/libdtrace/Makefile ============================================================================== --- projects/clang1100-import/cddl/lib/libdtrace/Makefile Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/cddl/lib/libdtrace/Makefile Fri Jul 31 19:25:35 2020 (r363739) @@ -103,9 +103,6 @@ CFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/powerpc CFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/riscv .PATH: ${SRCTOP}/cddl/contrib/opensolaris/lib/libdtrace/riscv .PATH: ${SRCTOP}/sys/cddl/dev/dtrace/riscv -.elif ${MACHINE_CPUARCH} == "sparc64" -CFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/sparc -.PATH: ${SRCTOP}/cddl/contrib/opensolaris/lib/libdtrace/sparc .else # temporary hack CFLAGS+= -I${OPENSOLARIS_SYS_DISTDIR}/uts/intel Modified: projects/clang1100-import/cddl/lib/libzpool/Makefile ============================================================================== --- projects/clang1100-import/cddl/lib/libzpool/Makefile Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/cddl/lib/libzpool/Makefile Fri Jul 31 19:25:35 2020 (r363739) @@ -18,9 +18,7 @@ .if exists(${SRCTOP}/sys/cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH}/opensolaris_atomic.S) .PATH: ${SRCTOP}/sys/cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH} ATOMIC_SRCS= opensolaris_atomic.S -.if ${MACHINE_ARCH} != "sparc64" ACFLAGS+= -Wa,--noexecstack -.endif .else .PATH: ${SRCTOP}/sys/cddl/compat/opensolaris/kern ATOMIC_SRCS= opensolaris_atomic.c Modified: projects/clang1100-import/contrib/ipfilter/iplang/iplang_y.y ============================================================================== --- projects/clang1100-import/contrib/ipfilter/iplang/iplang_y.y Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/ipfilter/iplang/iplang_y.y Fri Jul 31 19:25:35 2020 (r363739) @@ -45,11 +45,6 @@ #include "ipf.h" #include "iplang.h" -#if !defined(__NetBSD__) && (!defined(__FreeBSD_version) && \ - __FreeBSD_version < 400020) && (!SOLARIS || SOLARIS2 < 10) -extern struct ether_addr *ether_aton __P((char *)); -#endif - extern int opts; extern struct ipopt_names ionames[]; extern int state, state, lineNum, token; @@ -58,11 +53,7 @@ extern char yytext[]; extern FILE *yyin; int yylex __P((void)); #define YYDEBUG 1 -#if !defined(ultrix) && !defined(hpux) int yydebug = 1; -#else -extern int yydebug; -#endif iface_t *iflist = NULL, **iftail = &iflist; iface_t *cifp = NULL; Modified: projects/clang1100-import/contrib/ipfilter/ipsend/arp.c ============================================================================== --- projects/clang1100-import/contrib/ipfilter/ipsend/arp.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/ipfilter/ipsend/arp.c Fri Jul 31 19:25:35 2020 (r363739) @@ -11,17 +11,13 @@ static const char rcsid[] = "@(#)$Id$"; #endif #include <sys/types.h> #include <sys/socket.h> -#if !defined(ultrix) && !defined(hpux) && !defined(__hpux) && !defined(__osf__) && !defined(_AIX51) # include <sys/sockio.h> -#endif #include <sys/ioctl.h> #include <netinet/in_systm.h> #include <netinet/in.h> #include <net/if.h> #include <netinet/if_ether.h> -#ifndef ultrix # include <net/if_arp.h> -#endif #include <netinet/in.h> #include <netinet/ip.h> #include <netinet/ip_var.h> Modified: projects/clang1100-import/contrib/ipfilter/ipsend/ipresend.c ============================================================================== --- projects/clang1100-import/contrib/ipfilter/ipsend/ipresend.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/ipfilter/ipsend/ipresend.c Fri Jul 31 19:25:35 2020 (r363739) @@ -38,15 +38,7 @@ int opts = 0; # ifdef sun char default_device[] = "le0"; # else -# ifdef ultrix -char default_device[] = "ln0"; -# else -# ifdef __bsdi__ -char default_device[] = "ef0"; -# else char default_device[] = "lan0"; -# endif -# endif # endif #else char default_device[] = DEFAULT_DEVICE; Modified: projects/clang1100-import/contrib/ipfilter/ipsend/ipsend.c ============================================================================== --- projects/clang1100-import/contrib/ipfilter/ipsend/ipsend.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/ipfilter/ipsend/ipsend.c Fri Jul 31 19:25:35 2020 (r363739) @@ -33,15 +33,7 @@ extern void iplang __P((FILE *)); char options[68]; int opts; -# ifdef ultrix -char default_device[] = "ln0"; -# else -# ifdef __bsdi__ -char default_device[] = "ef0"; -# else char default_device[] = "le0"; -# endif /* __bsdi__ */ -# endif /* ultrix */ static void usage __P((char *)); Modified: projects/clang1100-import/contrib/ipfilter/ipsend/iptest.c ============================================================================== --- projects/clang1100-import/contrib/ipfilter/ipsend/iptest.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/ipfilter/ipsend/iptest.c Fri Jul 31 19:25:35 2020 (r363739) @@ -34,15 +34,7 @@ char options[68]; # ifdef sun char default_device[] = "le0"; # else -# ifdef ultrix -char default_device[] = "ln0"; -# else -# ifdef __bsdi__ -char default_device[] = "ef0"; -# else char default_device[] = "lan0"; -# endif -# endif # endif static void usage __P((char *)); Modified: projects/clang1100-import/contrib/ipfilter/ipsend/iptests.c ============================================================================== --- projects/clang1100-import/contrib/ipfilter/ipsend/iptests.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/ipfilter/ipsend/iptests.c Fri Jul 31 19:25:35 2020 (r363739) @@ -36,18 +36,13 @@ typedef int boolean_t; # endif # undef _KERNEL # undef KERNEL -#if !defined(solaris) && !defined(linux) && !defined(__sgi) +#if !defined(solaris) # include <nlist.h> # include <sys/user.h> # include <sys/proc.h> #endif -#if !defined(ultrix) && !defined(hpux) && !defined(linux) && \ - !defined(__sgi) && !defined(__osf__) && !defined(_AIX51) # include <kvm.h> -#endif -#ifndef ultrix # include <sys/socket.h> -#endif #if defined(solaris) # include <sys/stream.h> #else @@ -57,11 +52,9 @@ typedef int boolean_t; #include <sys/systm.h> #include <sys/session.h> #endif -#if BSD >= 199103 # include <sys/sysctl.h> # include <sys/filedesc.h> # include <paths.h> -#endif #include <netinet/in_systm.h> #include <sys/socket.h> #include <net/if.h> @@ -74,7 +67,7 @@ typedef int boolean_t; #include <netinet/in.h> #include <arpa/inet.h> #include <netinet/ip.h> -#if defined(__SVR4) || defined(__svr4__) || defined(__sgi) +#if defined(__SVR4) || defined(__svr4__) # include <sys/sysmacros.h> #endif #include <stdio.h> @@ -82,7 +75,7 @@ typedef int boolean_t; #include <stdlib.h> #include <string.h> # include <netinet/ip_var.h> -# if !defined(__hpux) && !defined(solaris) +# if !defined(solaris) # include <netinet/in_pcb.h> # endif #include "ipsend.h" Modified: projects/clang1100-import/contrib/ipfilter/ipsend/sock.c ============================================================================== --- projects/clang1100-import/contrib/ipfilter/ipsend/sock.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/ipfilter/ipsend/sock.c Fri Jul 31 19:25:35 2020 (r363739) @@ -21,14 +21,8 @@ static const char rcsid[] = "@(#)$Id$"; */ typedef int boolean_t; #endif -#ifndef ultrix #include <fcntl.h> -#endif -#if (__FreeBSD_version >= 300000) # include <sys/dirent.h> -#else -# include <sys/dir.h> -#endif # ifdef __NetBSD__ # include <machine/lock.h> # endif @@ -38,10 +32,6 @@ typedef int boolean_t; # define _KERNEL # define KERNEL # endif -# ifdef ultrix -# undef LOCORE -# include <sys/smp_lock.h> -# endif # include <sys/file.h> # ifdef __FreeBSD__ # undef _WANT_FILE @@ -54,18 +44,14 @@ typedef int boolean_t; #include <sys/socket.h> #include <sys/socketvar.h> #include <sys/proc.h> -#if !defined(ultrix) && !defined(hpux) && !defined(__osf__) # include <kvm.h> -#endif #ifdef sun #include <sys/systm.h> #include <sys/session.h> #endif -#if BSD >= 199103 #include <sys/sysctl.h> #include <sys/filedesc.h> #include <paths.h> -#endif #include <math.h> #include <netinet/in.h> #include <netinet/in_systm.h> @@ -143,128 +129,10 @@ int kmemcpy(buf, pos, n) struct nlist names[4] = { { "_proc" }, { "_nproc" }, -#ifdef ultrix - { "_u" }, -#else { NULL }, -#endif { NULL } }; -#if BSD < 199103 -static struct proc *getproc() -{ - struct proc *p; - pid_t pid = getpid(); - int siz, n; - - n = nlist(KERNEL, names); - if (n != 0) - { - fprintf(stderr, "nlist(%#x) == %d\n", names, n); - return NULL; - } - if (KMCPY(&nproc, names[1].n_value, sizeof(nproc)) == -1) - { - fprintf(stderr, "read nproc (%#x)\n", names[1].n_value); - return NULL; - } - siz = nproc * sizeof(struct proc); - if (KMCPY(&p, names[0].n_value, sizeof(p)) == -1) - { - fprintf(stderr, "read(%#x,%#x,%d) proc\n", - names[0].n_value, &p, sizeof(p)); - return NULL; - } - proc = (struct proc *)malloc(siz); - if (KMCPY(proc, p, siz) == -1) - { - fprintf(stderr, "read(%#x,%#x,%d) proc\n", - p, proc, siz); - return NULL; - } - - p = proc; - - for (n = nproc; n; n--, p++) - if (p->p_pid == pid) - break; - if (!n) - return NULL; - - return p; -} - - -struct tcpcb *find_tcp(fd, ti) - int fd; - struct tcpiphdr *ti; -{ - struct tcpcb *t; - struct inpcb *i; - struct socket *s; - struct user *up; - struct proc *p; - struct file *f, **o; - - if (!(p = getproc())) - return NULL; - up = (struct user *)malloc(sizeof(*up)); -#ifndef ultrix - if (KMCPY(up, p->p_uarea, sizeof(*up)) == -1) - { - fprintf(stderr, "read(%#x,%#x) failed\n", p, p->p_uarea); - return NULL; - } -#else - if (KMCPY(up, names[2].n_value, sizeof(*up)) == -1) - { - fprintf(stderr, "read(%#x,%#x) failed\n", p, names[2].n_value); - return NULL; - } -#endif - - o = (struct file **)calloc(up->u_lastfile + 1, sizeof(*o)); - if (KMCPY(o, up->u_ofile, (up->u_lastfile + 1) * sizeof(*o)) == -1) - { - fprintf(stderr, "read(%#x,%#x,%d) - u_ofile - failed\n", - up->u_ofile, o, sizeof(*o)); - return NULL; - } - f = (struct file *)calloc(1, sizeof(*f)); - if (KMCPY(f, o[fd], sizeof(*f)) == -1) - { - fprintf(stderr, "read(%#x,%#x,%d) - o[fd] - failed\n", - up->u_ofile[fd], f, sizeof(*f)); - return NULL; - } - - s = (struct socket *)calloc(1, sizeof(*s)); - if (KMCPY(s, f->f_data, sizeof(*s)) == -1) - { - fprintf(stderr, "read(%#x,%#x,%d) - f_data - failed\n", - o[fd], s, sizeof(*s)); - return NULL; - } - - i = (struct inpcb *)calloc(1, sizeof(*i)); - if (KMCPY(i, s->so_pcb, sizeof(*i)) == -1) - { - fprintf(stderr, "kvm_read(%#x,%#x,%d) - so_pcb - failed\n", - s->so_pcb, i, sizeof(*i)); - return NULL; - } - - t = (struct tcpcb *)calloc(1, sizeof(*t)); - if (KMCPY(t, i->inp_ppcb, sizeof(*t)) == -1) - { - fprintf(stderr, "read(%#x,%#x,%d) - inp_ppcb - failed\n", - i->inp_ppcb, t, sizeof(*t)); - return NULL; - } - return (struct tcpcb *)i->inp_ppcb; -} -#else static struct kinfo_proc *getproc() { static struct kinfo_proc kp; @@ -304,7 +172,7 @@ struct tcpcb *find_tcp(tfd, ti) fd = (struct filedesc *)malloc(sizeof(*fd)); if (fd == NULL) return NULL; -#if defined( __FreeBSD_version) && __FreeBSD_version >= 500013 +#if defined( __FreeBSD_version) if (KMCPY(fd, p->ki_fd, sizeof(*fd)) == -1) { fprintf(stderr, "read(%#lx,%#lx) failed\n", @@ -381,7 +249,6 @@ finderror: free(t); return NULL; } -#endif /* BSD < 199301 */ int do_socket(dev, mtu, ti, gwip) char *dev; Modified: projects/clang1100-import/contrib/netbsd-tests/lib/libc/regex/data/meta.in ============================================================================== --- projects/clang1100-import/contrib/netbsd-tests/lib/libc/regex/data/meta.in Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/netbsd-tests/lib/libc/regex/data/meta.in Fri Jul 31 19:25:35 2020 (r363739) @@ -4,7 +4,9 @@ a[bc]d & abd abd a\*c & a*c a*c a\\b & a\b a\b a\\\*b & a\*b a\*b -a\bc & abc abc +# Begin FreeBSD +a\bc &C EESCAPE +# End FreeBSD a\ &C EESCAPE a\\bc & a\bc a\bc \{ bC BADRPT Modified: projects/clang1100-import/contrib/netbsd-tests/lib/libc/regex/data/subexp.in ============================================================================== --- projects/clang1100-import/contrib/netbsd-tests/lib/libc/regex/data/subexp.in Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/netbsd-tests/lib/libc/regex/data/subexp.in Fri Jul 31 19:25:35 2020 (r363739) @@ -12,7 +12,7 @@ a(b+)c - abbbc abbbc bbb a(b*)c - ac ac @c (a|ab)(bc([de]+)f|cde) - abcdef abcdef a,bcdef,de # Begin FreeBSD -a\(b\|c\)d b ab|cd ab|cd b|c +a\(b|c\)d b ab|cd ab|cd b|c # End FreeBSD # the regression tester only asks for 9 subexpressions a(b)(c)(d)(e)(f)(g)(h)(i)(j)k - abcdefghijk abcdefghijk b,c,d,e,f,g,h,i,j Modified: projects/clang1100-import/contrib/openbsm/CREDITS ============================================================================== --- projects/clang1100-import/contrib/openbsm/CREDITS Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/openbsm/CREDITS Fri Jul 31 19:25:35 2020 (r363739) @@ -36,6 +36,9 @@ the development of OpenBSM: Ryan Steinmetz The FreeBSD Foundation Brooks Davis + Mateusz Piotrowski + Alan Somers + Aniket Pandey In addition, Coverity, Inc.'s Prevent(tm) static analysis tool and Gimpel Software's FlexeLint tool were used to identify a number of bugs in the Modified: projects/clang1100-import/contrib/openbsm/bin/auditd/auditd.c ============================================================================== --- projects/clang1100-import/contrib/openbsm/bin/auditd/auditd.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/openbsm/bin/auditd/auditd.c Fri Jul 31 19:25:35 2020 (r363739) @@ -712,7 +712,7 @@ auditd_config_controls(void) */ err = auditd_set_qsize(); if (err) { - auditd_log_err("audit_set_qsize() %s: %m", + auditd_log_err("auditd_set_qsize() %s: %m", auditd_strerror(err)); ret = -1; } else Modified: projects/clang1100-import/contrib/openbsm/bin/auditdistd/auditdistd.c ============================================================================== --- projects/clang1100-import/contrib/openbsm/bin/auditdistd/auditdistd.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/openbsm/bin/auditdistd/auditdistd.c Fri Jul 31 19:25:35 2020 (r363739) @@ -523,7 +523,7 @@ main_loop(void) } TAILQ_FOREACH(adhost, &adcfg->adc_hosts, adh_next) { if (adhost->adh_role == ADIST_ROLE_SENDER) { - /* Only sender workers asks for connections. */ + /* Only sender workers ask for connections. */ PJDLOG_ASSERT(adhost->adh_conn != NULL); fd = proto_descriptor(adhost->adh_conn); PJDLOG_ASSERT(fd >= 0); Modified: projects/clang1100-import/contrib/openbsm/bin/auditdistd/proto_tls.c ============================================================================== --- projects/clang1100-import/contrib/openbsm/bin/auditdistd/proto_tls.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/openbsm/bin/auditdistd/proto_tls.c Fri Jul 31 19:25:35 2020 (r363739) @@ -413,7 +413,7 @@ tls_exec_client(const char *user, int startfd, const c tls_certificate_verify(ssl, fingerprint); /* - * The following byte is send to make proto_connect_wait() to work. + * The following byte is sent to make proto_connect_wait() work. */ connected = 1; for (;;) { @@ -460,7 +460,7 @@ tls_call_exec_client(struct proto_conn *sock, const ch proto_close(sock); } else { /* - * The FD_CLOEXEC is cleared by dup2(2), so when we not + * The FD_CLOEXEC is cleared by dup2(2), so when we do not * call it, we have to clear it by hand in case it is set. */ if (fcntl(startfd, F_SETFD, 0) == -1) Modified: projects/clang1100-import/contrib/openbsm/libauditd/auditd_lib.c ============================================================================== --- projects/clang1100-import/contrib/openbsm/libauditd/auditd_lib.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/openbsm/libauditd/auditd_lib.c Fri Jul 31 19:25:35 2020 (r363739) @@ -498,7 +498,7 @@ auditd_expire_trails(int (*warn_expired)(char *)) * update the mtime of the trail file to the current * time. This is so we don't prematurely remove a trail * file that was created while the system clock reset - * to the * "beginning of time" but later the system + * to the "beginning of time" but later the system * clock is set to the correct current time. */ if (current_time >= JAN_01_2000 && Modified: projects/clang1100-import/contrib/openbsm/libbsm/au_control.3 ============================================================================== --- projects/clang1100-import/contrib/openbsm/libbsm/au_control.3 Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/openbsm/libbsm/au_control.3 Fri Jul 31 19:25:35 2020 (r363739) @@ -201,7 +201,7 @@ converts an audit policy flags string, .Fa polstr , to a numeric audit policy mask returned via .Fa policy . -.Sh RETURN VALULES +.Sh RETURN VALUES The .Fn getacfilesz , .Fn getacdir , Modified: projects/clang1100-import/contrib/openbsm/libbsm/au_domain.3 ============================================================================== --- projects/clang1100-import/contrib/openbsm/libbsm/au_domain.3 Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/openbsm/libbsm/au_domain.3 Fri Jul 31 19:25:35 2020 (r363739) @@ -62,7 +62,7 @@ The function accepts a local domain, and returns the BSM domain for it. This call cannot fail, and instead returns a BSM domain indicating to a later decoder that the domain could not be encoded. -.Sh RETURN VALULES +.Sh RETURN VALUES On success, .Fn au_bsm_to_domain returns 0 and a converted domain; on failure, it returns -1 but does not set Modified: projects/clang1100-import/contrib/openbsm/libbsm/au_errno.3 ============================================================================== --- projects/clang1100-import/contrib/openbsm/libbsm/au_errno.3 Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/openbsm/libbsm/au_errno.3 Fri Jul 31 19:25:35 2020 (r363739) @@ -76,7 +76,7 @@ function converts a BSM error value to a string, gener local error number and using the local .Xr strerror 3 function, but will also work for errors that are not locally defined. -.Sh RETURN VALULES +.Sh RETURN VALUES On success, .Fn au_bsm_to_errno returns 0 and a converted error value; on failure, it returns -1 but does not Modified: projects/clang1100-import/contrib/openbsm/libbsm/au_socket_type.3 ============================================================================== --- projects/clang1100-import/contrib/openbsm/libbsm/au_socket_type.3 Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/openbsm/libbsm/au_socket_type.3 Fri Jul 31 19:25:35 2020 (r363739) @@ -61,7 +61,7 @@ operating system. function accepts a local socket type, and returns the BSM socket type for it. This call cannot fail, and instead returns a BSM socket type indicating to a later decoder that the socket type could not be encoded. -.Sh RETURN VALULES +.Sh RETURN VALUES On success, .Fn au_bsm_to_socket_type returns 0 and a converted socket type; on failure, it returns -1 but does not Modified: projects/clang1100-import/contrib/openbsm/man/audit.log.5 ============================================================================== --- projects/clang1100-import/contrib/openbsm/man/audit.log.5 Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/openbsm/man/audit.log.5 Fri Jul 31 19:25:35 2020 (r363739) @@ -102,7 +102,7 @@ token can be created using .It Sy "Field Bytes Description" .It "Token ID 1 byte Token ID" .It "Record Byte Count 4 bytes Number of bytes in record" -.It "Version Number 2 bytes Record version number" +.It "Version Number 1 byte Record version number" .It "Event Type 2 bytes Event type" .It "Event Modifier 2 bytes Event sub-type" .It "Seconds 4/8 bytes Record time stamp (32/64-bits)" @@ -126,7 +126,7 @@ token can be created using .It Sy "Field Bytes Description" .It "Token ID 1 byte Token ID" .It "Record Byte Count 4 bytes Number of bytes in record" -.It "Version Number 2 bytes Record version number" +.It "Version Number 1 byte Record version number" .It "Event Type 2 bytes Event type" .It "Event Modifier 2 bytes Event sub-type" .It "Address Type/Length 1 byte Host address type and length" @@ -325,7 +325,7 @@ or .It "Process ID 4 bytes Process ID" .It "Session ID 4 bytes Audit session ID" .It "Terminal Port ID 4/8 bytes Terminal port ID (32/64-bits)" -.It "Terminal Address Type/Length 1 byte Length of machine address" +.It "Terminal Address Type/Length 4 bytes Length of machine address" .It "Terminal Machine Address 4 bytes IPv4 or IPv6 address of machine" .El .Ss Return Token Modified: projects/clang1100-import/contrib/openbsm/man/getaudit.2 ============================================================================== --- projects/clang1100-import/contrib/openbsm/man/getaudit.2 Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/openbsm/man/getaudit.2 Fri Jul 31 19:25:35 2020 (r363739) @@ -24,7 +24,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.Dd October 19, 2008 +.Dd March 14, 2018 .Dt GETAUDIT 2 .Os .Sh NAME @@ -62,6 +62,7 @@ struct auditinfo { au_mask_t ai_mask; /* Audit masks */ au_tid_t ai_termid; /* Terminal ID */ au_asid_t ai_asid; /* Audit session ID */ + au_asflgs_t ai_flags; /* Audit session flags. */ }; typedef struct auditinfo auditinfo_t; .Ed Modified: projects/clang1100-import/contrib/openbsm/sys/bsm/audit.h ============================================================================== --- projects/clang1100-import/contrib/openbsm/sys/bsm/audit.h Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/contrib/openbsm/sys/bsm/audit.h Fri Jul 31 19:25:35 2020 (r363739) @@ -46,7 +46,7 @@ #define MIN_AUDIT_FILE_SIZE (512 * 1024) /* - * Minimum noumber of free blocks on the filesystem containing the audit + * Minimum number of free blocks on the filesystem containing the audit * log necessary to avoid a hard log rotation. DO NOT SET THIS VALUE TO 0 * as the kernel does an unsigned compare, plus we want to leave a few blocks * free so userspace can terminate the log, etc. @@ -249,14 +249,14 @@ typedef struct au_token token_t; /* * Kernel audit queue control parameters: * Default: Maximum: - * aq_hiwater: AQ_HIWATER (100) AQ_MAXHIGH (10000) + * aq_hiwater: AQ_HIWATER (100) AQ_MAXHIGH (10000) * aq_lowater: AQ_LOWATER (10) <aq_hiwater * aq_bufsz: AQ_BUFSZ (32767) AQ_MAXBUFSZ (1048576) - * aq_delay: 20 20000 (not used) + * aq_delay: 20 20000 (not used) */ struct au_qctrl { int aq_hiwater; /* Max # of audit recs in queue when */ - /* threads with new ARs get blocked. */ + /* threads with new ARs get blocked. */ int aq_lowater; /* # of audit recs in queue when */ /* blocked threads get unblocked. */ Modified: projects/clang1100-import/crypto/openssh/FREEBSD-upgrade ============================================================================== --- projects/clang1100-import/crypto/openssh/FREEBSD-upgrade Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/crypto/openssh/FREEBSD-upgrade Fri Jul 31 19:25:35 2020 (r363739) @@ -168,13 +168,6 @@ ignore HPN-related configuration options to avoid breaking existing configurations. -9) AES-CBC - - The AES-CBC ciphers were removed from the server-side proposal list - in 6.7p1 due to theoretical weaknesses and the availability of - superior ciphers (including AES-CTR and AES-GCM). We have re-added - them for compatibility with third-party clients. - This port was brought to you by (in no particular order) DARPA, NAI Modified: projects/clang1100-import/crypto/openssh/myproposal.h ============================================================================== --- projects/clang1100-import/crypto/openssh/myproposal.h Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/crypto/openssh/myproposal.h Fri Jul 31 19:25:35 2020 (r363739) @@ -1,5 +1,4 @@ /* $OpenBSD: myproposal.h,v 1.57 2018/09/12 01:34:02 djm Exp $ */ -/* $FreeBSD$ */ /* * Copyright (c) 2000 Markus Friedl. All rights reserved. @@ -122,8 +121,7 @@ #define KEX_SERVER_ENCRYPT \ "chacha20-poly1305@openssh.com," \ "aes128-ctr,aes192-ctr,aes256-ctr" \ - AESGCM_CIPHER_MODES \ - ",aes128-cbc,aes192-cbc,aes256-cbc" + AESGCM_CIPHER_MODES #define KEX_CLIENT_ENCRYPT KEX_SERVER_ENCRYPT Modified: projects/clang1100-import/crypto/openssh/servconf.c ============================================================================== --- projects/clang1100-import/crypto/openssh/servconf.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/crypto/openssh/servconf.c Fri Jul 31 19:25:35 2020 (r363739) @@ -660,6 +660,7 @@ static struct { { "rdomain", sRDomain, SSHCFG_ALL }, { "casignaturealgorithms", sCASignatureAlgorithms, SSHCFG_ALL }, { "useblacklist", sUseBlacklist, SSHCFG_GLOBAL }, + { "useblocklist", sUseBlacklist, SSHCFG_GLOBAL }, /* alias */ { "noneenabled", sUnsupported, SSHCFG_ALL }, { "hpndisabled", sDeprecated, SSHCFG_ALL }, { "hpnbuffersize", sDeprecated, SSHCFG_ALL }, Modified: projects/clang1100-import/crypto/openssh/sshd_config.5 ============================================================================== --- projects/clang1100-import/crypto/openssh/sshd_config.5 Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/crypto/openssh/sshd_config.5 Fri Jul 31 19:25:35 2020 (r363739) @@ -35,7 +35,7 @@ .\" .\" $OpenBSD: sshd_config.5,v 1.282 2018/09/20 03:28:06 djm Exp $ .\" $FreeBSD$ -.Dd $Mdocdate: September 20 2018 $ +.Dd $Mdocdate: July 28 2020 $ .Dt SSHD_CONFIG 5 .Os .Sh NAME @@ -495,8 +495,7 @@ The default is: .Bd -literal -offset indent chacha20-poly1305@openssh.com, aes128-ctr,aes192-ctr,aes256-ctr, -aes128-gcm@openssh.com,aes256-gcm@openssh.com, -aes128-cbc,aes192-cbc,aes256-cbc +aes128-gcm@openssh.com,aes256-gcm@openssh.com .Ed .Pp The list of available ciphers may also be obtained using @@ -1603,6 +1602,11 @@ to the daemon. The default is .Cm no . +For forward compatibility with an upcoming +.Xr blacklistd +rename, the +.Cm UseBlocklist +alias can be used instead. .It Cm UseDNS Specifies whether .Xr sshd 8 Modified: projects/clang1100-import/etc/mtree/BSD.usr.dist ============================================================================== --- projects/clang1100-import/etc/mtree/BSD.usr.dist Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/etc/mtree/BSD.usr.dist Fri Jul 31 19:25:35 2020 (r363739) @@ -864,8 +864,6 @@ .. powerpc .. - sparc64 - .. .. man5 .. @@ -879,8 +877,6 @@ i386 .. powerpc - .. - sparc64 .. .. man9 Modified: projects/clang1100-import/include/regex.h ============================================================================== --- projects/clang1100-import/include/regex.h Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/include/regex.h Fri Jul 31 19:25:35 2020 (r363739) @@ -71,6 +71,7 @@ typedef struct { #define REG_NOSPEC 0020 #define REG_PEND 0040 #define REG_DUMP 0200 +#define REG_POSIX 0400 /* only POSIX-compliant regex (libregex) */ /* regerror() flags */ #define REG_ENOSYS (-1) Modified: projects/clang1100-import/lib/libc/regex/Symbol.map ============================================================================== --- projects/clang1100-import/lib/libc/regex/Symbol.map Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/lib/libc/regex/Symbol.map Fri Jul 31 19:25:35 2020 (r363739) @@ -3,8 +3,11 @@ */ FBSD_1.0 { - regcomp; regerror; regexec; regfree; +}; + +FBSD_1.6 { + regcomp; }; Modified: projects/clang1100-import/lib/libc/regex/regcomp.c ============================================================================== --- projects/clang1100-import/lib/libc/regex/regcomp.c Fri Jul 31 16:08:25 2020 (r363738) +++ projects/clang1100-import/lib/libc/regex/regcomp.c Fri Jul 31 19:25:35 2020 (r363739) @@ -102,11 +102,14 @@ struct parse { sopno pend[NPAREN]; /* -> ) ([0] unused) */ bool allowbranch; /* can this expression branch? */ bool bre; /* convenience; is this a BRE? */ + int pflags; /* other parsing flags -- legacy escapes? */ bool (*parse_expr)(struct parse *, struct branchc *); void (*pre_parse)(struct parse *, struct branchc *); void (*post_parse)(struct parse *, struct branchc *); }; +#define PFLAG_LEGACY_ESC 0x00000001 + /* ========= begin header generated by ./mkh ========= */ #ifdef __cplusplus extern "C" { @@ -132,6 +135,7 @@ static void p_b_cclass(struct parse *p, cset *cs); static void p_b_eclass(struct parse *p, cset *cs); static wint_t p_b_symbol(struct parse *p); static wint_t p_b_coll_elem(struct parse *p, wint_t endc); +static bool may_escape(struct parse *p, const wint_t ch); static wint_t othercase(wint_t ch); static void bothcases(struct parse *p, wint_t ch); static void ordinary(struct parse *p, wint_t ch); @@ -199,22 +203,10 @@ static char nuls[10]; /* place to point scanner in ev /* Macro used by computejump()/computematchjump() */ #define MIN(a,b) ((a)<(b)?(a):(b)) -/* - - regcomp - interface for parser and compilation - = extern int regcomp(regex_t *, const char *, int); - = #define REG_BASIC 0000 - = #define REG_EXTENDED 0001 - = #define REG_ICASE 0002 - = #define REG_NOSUB 0004 - = #define REG_NEWLINE 0010 - = #define REG_NOSPEC 0020 - = #define REG_PEND 0040 - = #define REG_DUMP 0200 - */ -int /* 0 success, otherwise REG_something */ -regcomp(regex_t * __restrict preg, +static int /* 0 success, otherwise REG_something */ +regcomp_internal(regex_t * __restrict preg, const char * __restrict pattern, - int cflags) + int cflags, int pflags) { struct parse pa; struct re_guts *g; @@ -273,6 +265,7 @@ regcomp(regex_t * __restrict preg, p->end = p->next + len; p->error = 0; p->ncsalloc = 0; + p->pflags = pflags; for (i = 0; i < NPAREN; i++) { p->pbegin[i] = 0; p->pend[i] = 0; @@ -346,6 +339,43 @@ regcomp(regex_t * __restrict preg, } /* + - regcomp - interface for parser and compilation + = extern int regcomp(regex_t *, const char *, int); + = #define REG_BASIC 0000 + = #define REG_EXTENDED 0001 + = #define REG_ICASE 0002 + = #define REG_NOSUB 0004 + = #define REG_NEWLINE 0010 + = #define REG_NOSPEC 0020 + = #define REG_PEND 0040 + = #define REG_DUMP 0200 + */ +int /* 0 success, otherwise REG_something */ +regcomp(regex_t * __restrict preg, + const char * __restrict pattern, + int cflags) +{ + + return (regcomp_internal(preg, pattern, cflags, 0)); +} + +#ifndef LIBREGEX +/* + * Legacy interface that requires more lax escaping behavior. + */ +int +freebsd12_regcomp(regex_t * __restrict preg, + const char * __restrict pattern, + int cflags, int pflags) +{ + + return (regcomp_internal(preg, pattern, cflags, PFLAG_LEGACY_ESC)); +} + +__sym_compat(regcomp, freebsd12_regcomp, FBSD_1.0); +#endif /* !LIBREGEX */ + +/* - p_ere_exp - parse one subERE, an atom possibly followed by a repetition op, - return whether we should terminate or not == static bool p_ere_exp(struct parse *p); @@ -435,7 +465,10 @@ p_ere_exp(struct parse *p, struct branchc *bc) EMIT(OEOW, 0); break; default: - ordinary(p, wc); + if (may_escape(p, wc)) + ordinary(p, wc); + else + SETERROR(REG_EESCAPE); break; } break; @@ -797,7 +830,10 @@ p_simp_re(struct parse *p, struct branchc *bc) return (false); /* Definitely not $... */ p->next--; wc = WGETNEXT(); - ordinary(p, wc); + if ((c & BACKSL) == 0 || may_escape(p, wc)) + ordinary(p, wc); + else + SETERROR(REG_EESCAPE); break; } @@ -1092,6 +1128,55 @@ p_b_coll_elem(struct parse *p, else SETERROR(REG_ECOLLATE); /* neither */ return(0); +} + +/* + - may_escape - determine whether 'ch' is escape-able in the current context + == static int may_escape(struct parse *p, const wint_t ch) + */ +static bool +may_escape(struct parse *p, const wint_t ch) +{ + + if ((p->pflags & PFLAG_LEGACY_ESC) != 0) + return (true); + if (isalpha(ch) || ch == '\'' || ch == '`') + return (false); + return (true); +#ifdef NOTYET + /* + * Build a whitelist of characters that may be escaped to produce an + * ordinary in the current context. This assumes that these have not + * been otherwise interpreted as a special character. Escaping an + * ordinary character yields undefined results according to + * IEEE 1003.1-2008. Some extensions (notably, some GNU extensions) take + * advantage of this and use escaped ordinary characters to provide + * special meaning, e.g. \b, \B, \w, \W, \s, \S. + */ + switch(ch) { + case '|': + case '+': + case '?': + /* The above characters may not be escaped in BREs */ + if (!(p->g->cflags®_EXTENDED)) + return (false); + /* Fallthrough */ + case '(': + case ')': + case '{': + case '}': + case '.': + case '[': + case ']': + case '\\': + case '*': + case '^': + case '$': + return (true); + default: + return (false); + } +#endif } *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202007311925.06VJPaqj029901>