Date: Sat, 14 Mar 2009 16:57:57 +0000 (UTC) From: John Birrell <jb@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r189798 - in projects/jbuild: . bin/sh contrib/bind9 contrib/cpio contrib/gdtoa contrib/ncurses contrib/netcat contrib/ntp contrib/openbsm contrib/openpam contrib/pf contrib/sendmail co... Message-ID: <200903141657.n2EGvvLb002060@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jb Date: Sat Mar 14 16:57:56 2009 New Revision: 189798 URL: http://svn.freebsd.org/changeset/base/189798 Log: MFC Added: projects/jbuild/contrib/top/install-sh - copied unchanged from r189797, head/contrib/top/install-sh projects/jbuild/lib/libc/nls/ca_ES.ISO8859-1.msg - copied unchanged from r189797, head/lib/libc/nls/ca_ES.ISO8859-1.msg projects/jbuild/lib/libc/nls/de_DE.ISO8859-1.msg - copied unchanged from r189797, head/lib/libc/nls/de_DE.ISO8859-1.msg projects/jbuild/lib/libc/nls/el_GR.ISO8859-7.msg - copied unchanged from r189797, head/lib/libc/nls/el_GR.ISO8859-7.msg projects/jbuild/lib/libc/nls/es_ES.ISO8859-1.msg - copied unchanged from r189797, head/lib/libc/nls/es_ES.ISO8859-1.msg projects/jbuild/lib/libc/nls/fi_FI.ISO8859-1.msg - copied unchanged from r189797, head/lib/libc/nls/fi_FI.ISO8859-1.msg projects/jbuild/lib/libc/nls/fr_FR.ISO8859-1.msg - copied unchanged from r189797, head/lib/libc/nls/fr_FR.ISO8859-1.msg projects/jbuild/lib/libc/nls/hu_HU.ISO8859-2.msg - copied unchanged from r189797, head/lib/libc/nls/hu_HU.ISO8859-2.msg projects/jbuild/lib/libc/nls/it_IT.ISO8859-15.msg - copied unchanged from r189797, head/lib/libc/nls/it_IT.ISO8859-15.msg projects/jbuild/lib/libc/nls/mn_MN.UTF-8.msg - copied unchanged from r189797, head/lib/libc/nls/mn_MN.UTF-8.msg projects/jbuild/lib/libc/nls/nl_NL.ISO8859-1.msg - copied unchanged from r189797, head/lib/libc/nls/nl_NL.ISO8859-1.msg projects/jbuild/lib/libc/nls/no_NO.ISO8859-1.msg - copied unchanged from r189797, head/lib/libc/nls/no_NO.ISO8859-1.msg projects/jbuild/lib/libc/nls/sk_SK.ISO8859-2.msg - copied unchanged from r189797, head/lib/libc/nls/sk_SK.ISO8859-2.msg projects/jbuild/lib/libc/nls/sv_SE.ISO8859-1.msg - copied unchanged from r189797, head/lib/libc/nls/sv_SE.ISO8859-1.msg projects/jbuild/lib/libusb/ (props changed) - copied from r189797, head/lib/libusb/ projects/jbuild/share/man/man4/amdtemp.4 - copied unchanged from r189797, head/share/man/man4/amdtemp.4 projects/jbuild/share/man/man4/igmp.4 - copied unchanged from r189797, head/share/man/man4/igmp.4 projects/jbuild/sys/amd64/conf/XENHVM - copied unchanged from r189797, head/sys/amd64/conf/XENHVM projects/jbuild/sys/amd64/include/xen/ (props changed) - copied from r189797, head/sys/amd64/include/xen/ projects/jbuild/sys/dev/amdtemp/ - copied from r189797, head/sys/dev/amdtemp/ projects/jbuild/sys/dev/ath/ath_hal/ar5416/ar9280.c - copied unchanged from r189797, head/sys/dev/ath/ath_hal/ar5416/ar9280.c projects/jbuild/sys/dev/ath/ath_hal/ar5416/ar9280.h - copied unchanged from r189797, head/sys/dev/ath/ath_hal/ar5416/ar9280.h projects/jbuild/sys/dev/ath/ath_hal/ar5416/ar9280_attach.c - copied unchanged from r189797, head/sys/dev/ath/ath_hal/ar5416/ar9280_attach.c projects/jbuild/sys/dev/ath/ath_hal/ar5416/ar9280v1.ini - copied unchanged from r189797, head/sys/dev/ath/ath_hal/ar5416/ar9280v1.ini projects/jbuild/sys/dev/ath/ath_hal/ar5416/ar9280v2.ini - copied unchanged from r189797, head/sys/dev/ath/ath_hal/ar5416/ar9280v2.ini projects/jbuild/sys/dev/cfi/cfi_disk.c - copied unchanged from r189797, head/sys/dev/cfi/cfi_disk.c projects/jbuild/sys/dev/cxgb/t3c_protocol_sram.h - copied unchanged from r189797, head/sys/dev/cxgb/t3c_protocol_sram.h projects/jbuild/sys/dev/cxgb/t3c_tp_eeprom.h - copied unchanged from r189797, head/sys/dev/cxgb/t3c_tp_eeprom.h projects/jbuild/sys/dev/xen/xenpci/ (props changed) - copied from r189797, head/sys/dev/xen/xenpci/ projects/jbuild/sys/geom/geom_redboot.c - copied unchanged from r189797, head/sys/geom/geom_redboot.c projects/jbuild/sys/modules/amdtemp/ - copied from r189797, head/sys/modules/amdtemp/ projects/jbuild/sys/xen/features.h - copied unchanged from r189797, head/sys/xen/features.h projects/jbuild/sys/xen/reboot.c - copied unchanged from r189797, head/sys/xen/reboot.c projects/jbuild/tools/regression/usr.bin/pkill/pgrep-_g.t - copied unchanged from r189797, head/tools/regression/usr.bin/pkill/pgrep-_g.t projects/jbuild/tools/regression/usr.bin/pkill/pgrep-_s.t - copied unchanged from r189797, head/tools/regression/usr.bin/pkill/pgrep-_s.t projects/jbuild/tools/regression/usr.bin/pkill/pkill-_g.t - copied unchanged from r189797, head/tools/regression/usr.bin/pkill/pkill-_g.t projects/jbuild/tools/tools/ath/athdecode/ - copied from r189797, head/tools/tools/ath/athdecode/ projects/jbuild/tools/tools/ath/athpoke/ - copied from r189797, head/tools/tools/ath/athpoke/ projects/jbuild/tools/tools/ath/common/dumpregs.h - copied unchanged from r189797, head/tools/tools/ath/common/dumpregs.h projects/jbuild/tools/tools/ath/common/dumpregs_5210.c - copied unchanged from r189797, head/tools/tools/ath/common/dumpregs_5210.c projects/jbuild/tools/tools/ath/common/dumpregs_5211.c - copied unchanged from r189797, head/tools/tools/ath/common/dumpregs_5211.c projects/jbuild/tools/tools/ath/common/dumpregs_5212.c - copied unchanged from r189797, head/tools/tools/ath/common/dumpregs_5212.c projects/jbuild/tools/tools/ath/common/dumpregs_5416.c - copied unchanged from r189797, head/tools/tools/ath/common/dumpregs_5416.c projects/jbuild/tools/tools/netrate/tcpp/ - copied from r189797, head/tools/tools/netrate/tcpp/ projects/jbuild/usr.bin/tar/getdate.c - copied unchanged from r189797, head/usr.bin/tar/getdate.c projects/jbuild/usr.bin/tar/test/test_option_s.c - copied unchanged from r189797, head/usr.bin/tar/test/test_option_s.c projects/jbuild/usr.bin/tar/test/test_patterns_2.tar.uu - copied unchanged from r189797, head/usr.bin/tar/test/test_patterns_2.tar.uu projects/jbuild/usr.bin/tar/test/test_patterns_3.tar.uu - copied unchanged from r189797, head/usr.bin/tar/test/test_patterns_3.tar.uu projects/jbuild/usr.bin/tar/test/test_patterns_4.tar.uu - copied unchanged from r189797, head/usr.bin/tar/test/test_patterns_4.tar.uu Deleted: projects/jbuild/contrib/top/install projects/jbuild/lib/libusb20/ projects/jbuild/share/man/man4/k8temp.4 projects/jbuild/share/man/man4/usb2_bluetooth.4 projects/jbuild/share/man/man4/usb2_controller.4 projects/jbuild/share/man/man4/usb2_ethernet.4 projects/jbuild/share/man/man4/usb2_image.4 projects/jbuild/share/man/man4/usb2_input.4 projects/jbuild/share/man/man4/usb2_misc.4 projects/jbuild/share/man/man4/usb2_ndis.4 projects/jbuild/share/man/man4/usb2_quirk.4 projects/jbuild/share/man/man4/usb2_serial.4 projects/jbuild/share/man/man4/usb2_sound.4 projects/jbuild/share/man/man4/usb2_storage.4 projects/jbuild/share/man/man4/usb2_wlan.4 projects/jbuild/sys/dev/k8temp/ projects/jbuild/sys/modules/k8temp/ projects/jbuild/tools/regression/usr.bin/pkill/pgrep-G.t projects/jbuild/tools/regression/usr.bin/pkill/pgrep-S.t projects/jbuild/tools/regression/usr.bin/pkill/pkill-G.t projects/jbuild/tools/tools/ath/athregs/dumpregs.h projects/jbuild/tools/tools/ath/athregs/dumpregs_5210.c projects/jbuild/tools/tools/ath/athregs/dumpregs_5211.c projects/jbuild/tools/tools/ath/athregs/dumpregs_5212.c projects/jbuild/tools/tools/ath/athregs/dumpregs_5416.c projects/jbuild/usr.bin/tar/getdate.y projects/jbuild/usr.bin/tar/test/test_patterns_2.tgz.uu projects/jbuild/usr.bin/tar/test/test_patterns_3.tgz.uu Modified: projects/jbuild/ (props changed) projects/jbuild/Makefile projects/jbuild/Makefile.inc1 projects/jbuild/ObsoleteFiles.inc projects/jbuild/UPDATING projects/jbuild/bin/sh/miscbltin.c projects/jbuild/contrib/bind9/ (props changed) projects/jbuild/contrib/cpio/ (props changed) projects/jbuild/contrib/gdtoa/ (props changed) projects/jbuild/contrib/ncurses/ (props changed) projects/jbuild/contrib/netcat/ (props changed) projects/jbuild/contrib/ntp/ (props changed) projects/jbuild/contrib/openbsm/ (props changed) projects/jbuild/contrib/openpam/ (props changed) projects/jbuild/contrib/pf/ (props changed) projects/jbuild/contrib/sendmail/ (props changed) projects/jbuild/contrib/top/ (props changed) projects/jbuild/contrib/wpa/ (props changed) projects/jbuild/contrib/wpa/wpa_supplicant/ctrl_iface_unix.c projects/jbuild/crypto/openssh/ (props changed) projects/jbuild/crypto/openssl/ (props changed) projects/jbuild/etc/defaults/rc.conf projects/jbuild/etc/network.subr projects/jbuild/include/stdlib.h projects/jbuild/lib/Makefile projects/jbuild/lib/libarchive/archive.h projects/jbuild/lib/libarchive/archive_write_set_format_mtree.c projects/jbuild/lib/libarchive/config_freebsd.h projects/jbuild/lib/libbluetooth/Buildfile projects/jbuild/lib/libbluetooth/Buildfile.dirdep projects/jbuild/lib/libc/ (props changed) projects/jbuild/lib/libc/Makefile projects/jbuild/lib/libc/nls/Makefile.inc projects/jbuild/lib/libc/softfloat/fpgetmask.c projects/jbuild/lib/libc/softfloat/fpgetround.c projects/jbuild/lib/libc/softfloat/fpgetsticky.c projects/jbuild/lib/libc/softfloat/fpsetmask.c projects/jbuild/lib/libc/softfloat/fpsetround.c projects/jbuild/lib/libc/softfloat/fpsetsticky.c projects/jbuild/lib/libc/stdtime/ (props changed) projects/jbuild/lib/libc/string/ffsll.c (props changed) projects/jbuild/lib/libc/string/flsll.c (props changed) projects/jbuild/lib/libelf/Makefile projects/jbuild/lib/libsdp/Buildfile projects/jbuild/lib/libsdp/Buildfile.dirdep projects/jbuild/lib/libthr/Makefile projects/jbuild/lib/libthr/thread/thr_syscalls.c projects/jbuild/lib/libutil/ (props changed) projects/jbuild/release/amd64/boot_crunch.conf projects/jbuild/release/doc/share/misc/dev.archlist.txt projects/jbuild/release/i386/boot_crunch.conf projects/jbuild/release/ia64/boot_crunch.conf projects/jbuild/release/powerpc/boot_crunch.conf projects/jbuild/release/sparc64/boot_crunch.conf projects/jbuild/release/sun4v/boot_crunch.conf projects/jbuild/sbin/devd/devd.conf.5 projects/jbuild/sbin/recoverdisk/recoverdisk.1 projects/jbuild/sbin/recoverdisk/recoverdisk.c projects/jbuild/share/man/man4/Makefile projects/jbuild/share/man/man4/altq.4 projects/jbuild/share/man/man4/ip.4 projects/jbuild/share/man/man4/multicast.4 projects/jbuild/share/man/man4/txp.4 projects/jbuild/share/man/man5/rc.conf.5 projects/jbuild/share/man/man7/tuning.7 projects/jbuild/share/man/man8/diskless.8 projects/jbuild/share/man/man9/VOP_VPTOCNP.9 projects/jbuild/share/misc/iso3166 projects/jbuild/share/zoneinfo/ (props changed) projects/jbuild/stage/include.mtree projects/jbuild/sys/ (props changed) projects/jbuild/sys/amd64/amd64/elf_machdep.c projects/jbuild/sys/amd64/amd64/machdep.c projects/jbuild/sys/amd64/amd64/mp_machdep.c projects/jbuild/sys/amd64/amd64/pmap.c projects/jbuild/sys/amd64/amd64/trap.c projects/jbuild/sys/amd64/include/pcpu.h projects/jbuild/sys/amd64/linux32/linux32_sysvec.c projects/jbuild/sys/arm/arm/elf_machdep.c projects/jbuild/sys/arm/conf/AVILA projects/jbuild/sys/arm/conf/CAMBRIA projects/jbuild/sys/arm/conf/CAMBRIA.hints projects/jbuild/sys/arm/xscale/ixp425/avila_machdep.c projects/jbuild/sys/arm/xscale/ixp425/if_npe.c projects/jbuild/sys/arm/xscale/ixp425/ixp425.c projects/jbuild/sys/arm/xscale/ixp425/ixp425_pci.c projects/jbuild/sys/arm/xscale/ixp425/ixp425reg.h projects/jbuild/sys/boot/i386/libi386/Makefile projects/jbuild/sys/boot/i386/libi386/bioscd.c projects/jbuild/sys/boot/i386/libi386/biosdisk.c projects/jbuild/sys/boot/i386/libi386/devicename.c projects/jbuild/sys/boot/i386/libi386/libi386.h projects/jbuild/sys/boot/i386/loader/Makefile projects/jbuild/sys/boot/i386/loader/main.c projects/jbuild/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_znode.c projects/jbuild/sys/compat/ia32/ia32_sysvec.c projects/jbuild/sys/compat/ndis/hal_var.h projects/jbuild/sys/compat/ndis/subr_hal.c projects/jbuild/sys/compat/ndis/subr_usbd.c projects/jbuild/sys/compat/svr4/svr4_sysvec.c projects/jbuild/sys/conf/files projects/jbuild/sys/conf/files.amd64 projects/jbuild/sys/conf/files.i386 projects/jbuild/sys/conf/options.amd64 projects/jbuild/sys/conf/options.arm projects/jbuild/sys/contrib/pf/ (props changed) projects/jbuild/sys/ddb/db_expr.c projects/jbuild/sys/dev/agp/agp.c projects/jbuild/sys/dev/agp/agp_amd64.c projects/jbuild/sys/dev/agp/agp_i810.c projects/jbuild/sys/dev/agp/agp_intel.c projects/jbuild/sys/dev/agp/agp_via.c projects/jbuild/sys/dev/agp/agppriv.h projects/jbuild/sys/dev/aic7xxx/ahc_pci.c projects/jbuild/sys/dev/aic7xxx/ahd_pci.c projects/jbuild/sys/dev/ata/ata-card.c projects/jbuild/sys/dev/ata/ata-cbus.c projects/jbuild/sys/dev/ata/ata-isa.c projects/jbuild/sys/dev/ata/ata-pci.c projects/jbuild/sys/dev/ata/ata-usb.c (props changed) projects/jbuild/sys/dev/ath/ath_hal/ah.c projects/jbuild/sys/dev/ath/ath_hal/ar5416/ar5416.h projects/jbuild/sys/dev/ath/ath_hal/ar5416/ar5416_attach.c projects/jbuild/sys/dev/ath/ath_hal/ar5416/ar5416_reset.c projects/jbuild/sys/dev/ath/ath_hal/ar5416/ar9160_attach.c projects/jbuild/sys/dev/ath/if_ath.c projects/jbuild/sys/dev/ath/if_ath_pci.c projects/jbuild/sys/dev/ath/if_athvar.h projects/jbuild/sys/dev/cardbus/cardbus.c projects/jbuild/sys/dev/cardbus/cardbus_cis.c projects/jbuild/sys/dev/cfi/cfi_core.c projects/jbuild/sys/dev/cfi/cfi_dev.c projects/jbuild/sys/dev/cfi/cfi_var.h projects/jbuild/sys/dev/cxgb/ (props changed) projects/jbuild/sys/dev/cxgb/bin2h.pl projects/jbuild/sys/dev/cxgb/common/cxgb_ael1002.c projects/jbuild/sys/dev/cxgb/common/cxgb_common.h projects/jbuild/sys/dev/cxgb/common/cxgb_t3_cpl.h projects/jbuild/sys/dev/cxgb/common/cxgb_t3_hw.c projects/jbuild/sys/dev/cxgb/common/cxgb_xgmac.c projects/jbuild/sys/dev/cxgb/cxgb_adapter.h projects/jbuild/sys/dev/cxgb/cxgb_ioctl.h projects/jbuild/sys/dev/cxgb/cxgb_main.c projects/jbuild/sys/dev/cxgb/cxgb_multiq.c projects/jbuild/sys/dev/cxgb/cxgb_sge.c projects/jbuild/sys/dev/cxgb/cxgb_t3fw.c projects/jbuild/sys/dev/cxgb/cxgb_t3fw.h projects/jbuild/sys/dev/dc/if_dc.c projects/jbuild/sys/dev/dcons/dcons_os.c projects/jbuild/sys/dev/drm/drmP.h projects/jbuild/sys/dev/drm/drm_bufs.c projects/jbuild/sys/dev/drm/drm_drv.c projects/jbuild/sys/dev/drm/drm_pci.c projects/jbuild/sys/dev/drm/drm_scatter.c projects/jbuild/sys/dev/drm/drm_sysctl.c projects/jbuild/sys/dev/drm/i915_drv.c projects/jbuild/sys/dev/drm/mach64_drv.c projects/jbuild/sys/dev/drm/mga_drv.c projects/jbuild/sys/dev/drm/r128_drv.c projects/jbuild/sys/dev/drm/r600_cp.c projects/jbuild/sys/dev/drm/radeon_cp.c projects/jbuild/sys/dev/drm/radeon_drv.c projects/jbuild/sys/dev/drm/savage_drv.c projects/jbuild/sys/dev/drm/sis_drv.c projects/jbuild/sys/dev/drm/tdfx_drv.c projects/jbuild/sys/dev/ed/if_ed_pccard.c projects/jbuild/sys/dev/exca/exca.c projects/jbuild/sys/dev/fe/if_fe_pccard.c projects/jbuild/sys/dev/firewire/fwohci_pci.c projects/jbuild/sys/dev/fxp/if_fxp.c projects/jbuild/sys/dev/if_ndis/if_ndis.c projects/jbuild/sys/dev/if_ndis/if_ndis_pci.c projects/jbuild/sys/dev/if_ndis/if_ndis_usb.c projects/jbuild/sys/dev/if_ndis/if_ndisvar.h projects/jbuild/sys/dev/ipw/if_ipw.c projects/jbuild/sys/dev/malo/if_malo_pci.c projects/jbuild/sys/dev/md/md.c projects/jbuild/sys/dev/mii/ip1000phy.c projects/jbuild/sys/dev/mii/ip1000phyreg.h projects/jbuild/sys/dev/mmc/mmc.c projects/jbuild/sys/dev/pccard/card_if.m projects/jbuild/sys/dev/pccard/pccard_cis.c projects/jbuild/sys/dev/pccard/pccarddevs projects/jbuild/sys/dev/pccbb/pccbb.c projects/jbuild/sys/dev/pci/pci.c projects/jbuild/sys/dev/pci/pci_pci.c projects/jbuild/sys/dev/pci/pcib_private.h projects/jbuild/sys/dev/ppbus/lpbb.c projects/jbuild/sys/dev/puc/puc_pci.c projects/jbuild/sys/dev/ral/if_ral_pci.c projects/jbuild/sys/dev/re/if_re.c projects/jbuild/sys/dev/sio/sio_pci.c projects/jbuild/sys/dev/smbus/smbus.c projects/jbuild/sys/dev/smbus/smbus.h projects/jbuild/sys/dev/sound/pci/emu10k1.c projects/jbuild/sys/dev/sound/pci/emu10kx.c projects/jbuild/sys/dev/sound/usb/uaudio.c (props changed) projects/jbuild/sys/dev/sound/usb/uaudio.h (props changed) projects/jbuild/sys/dev/sound/usb/uaudio_pcm.c (props changed) projects/jbuild/sys/dev/sound/usb/uaudioreg.h (props changed) projects/jbuild/sys/dev/syscons/scterm-teken.c projects/jbuild/sys/dev/syscons/syscons.c projects/jbuild/sys/dev/syscons/syscons.h projects/jbuild/sys/dev/syscons/teken/teken.c projects/jbuild/sys/dev/syscons/teken/teken.h projects/jbuild/sys/dev/txp/if_txp.c projects/jbuild/sys/dev/txp/if_txpreg.h projects/jbuild/sys/dev/uart/uart_bus_pci.c projects/jbuild/sys/dev/usb/controller/atmegadci.c projects/jbuild/sys/dev/usb/controller/atmegadci.h projects/jbuild/sys/dev/usb/controller/atmegadci_atmelarm.c projects/jbuild/sys/dev/usb/controller/ehci_pci.c projects/jbuild/sys/dev/usb/controller/musb_otg_atmelarm.c projects/jbuild/sys/dev/usb/controller/ohci_pci.c projects/jbuild/sys/dev/usb/controller/uhci_pci.c projects/jbuild/sys/dev/usb/controller/usb_controller.c projects/jbuild/sys/dev/usb/input/ums.c projects/jbuild/sys/dev/usb/net/if_axe.c projects/jbuild/sys/dev/usb/net/if_cdce.c projects/jbuild/sys/dev/usb/net/usb_ethernet.c projects/jbuild/sys/dev/usb/net/usb_ethernet.h projects/jbuild/sys/dev/usb/serial/u3g.c projects/jbuild/sys/dev/usb/usb.h (props changed) projects/jbuild/sys/dev/usb/usb_core.h projects/jbuild/sys/dev/usb/usb_device.c projects/jbuild/sys/dev/usb/usb_hid.c projects/jbuild/sys/dev/usb/usb_hid.h projects/jbuild/sys/dev/usb/usb_hub.c projects/jbuild/sys/dev/usb/usb_if.m (props changed) projects/jbuild/sys/dev/usb/usbdevs (props changed) projects/jbuild/sys/dev/usb/usbhid.h (props changed) projects/jbuild/sys/dev/vge/if_vge.c projects/jbuild/sys/dev/xen/balloon/balloon.c projects/jbuild/sys/dev/xen/blkfront/blkfront.c projects/jbuild/sys/dev/xen/console/console.c projects/jbuild/sys/dev/xen/console/xencons_ring.c projects/jbuild/sys/dev/xen/netfront/ (props changed) projects/jbuild/sys/dev/xen/netfront/netfront.c projects/jbuild/sys/dev/xl/if_xl.c projects/jbuild/sys/fs/cd9660/cd9660_vfsops.c projects/jbuild/sys/fs/devfs/devfs_vnops.c projects/jbuild/sys/fs/nullfs/null_vnops.c projects/jbuild/sys/fs/udf/udf_vfsops.c projects/jbuild/sys/geom/part/g_part_pc98.c projects/jbuild/sys/gnu/fs/reiserfs/reiserfs_fs.h projects/jbuild/sys/i386/i386/elf_machdep.c projects/jbuild/sys/i386/i386/in_cksum.c projects/jbuild/sys/i386/i386/mp_machdep.c projects/jbuild/sys/i386/i386/pmap.c projects/jbuild/sys/i386/i386/trap.c projects/jbuild/sys/i386/include/xen/xenpmap.h projects/jbuild/sys/i386/linux/linux_sysvec.c projects/jbuild/sys/ia64/ia64/elf_machdep.c projects/jbuild/sys/kern/imgact_elf.c projects/jbuild/sys/kern/kern_ktrace.c projects/jbuild/sys/kern/kern_lock.c projects/jbuild/sys/kern/kern_mutex.c projects/jbuild/sys/kern/kern_prot.c projects/jbuild/sys/kern/kern_sysctl.c projects/jbuild/sys/kern/kern_tc.c projects/jbuild/sys/kern/kern_umtx.c projects/jbuild/sys/kern/sched_ule.c projects/jbuild/sys/kern/subr_bus.c projects/jbuild/sys/kern/subr_param.c projects/jbuild/sys/kern/subr_witness.c projects/jbuild/sys/kern/sys_generic.c projects/jbuild/sys/kern/sys_pipe.c projects/jbuild/sys/kern/uipc_sem.c projects/jbuild/sys/kern/uipc_usrreq.c projects/jbuild/sys/kern/vfs_bio.c projects/jbuild/sys/kern/vfs_cache.c projects/jbuild/sys/kern/vfs_default.c projects/jbuild/sys/kern/vfs_extattr.c projects/jbuild/sys/kern/vfs_lookup.c projects/jbuild/sys/kern/vfs_vnops.c projects/jbuild/sys/kern/vnode_if.src projects/jbuild/sys/legacy/dev/usb/ehci_pci.c projects/jbuild/sys/legacy/dev/usb/ohci_pci.c projects/jbuild/sys/legacy/dev/usb/uhci_pci.c projects/jbuild/sys/mips/mips/elf64_machdep.c projects/jbuild/sys/mips/mips/elf_machdep.c projects/jbuild/sys/modules/Makefile projects/jbuild/sys/net/bpf.c projects/jbuild/sys/netinet/if_ether.c projects/jbuild/sys/netinet/igmp.c projects/jbuild/sys/netinet/igmp_var.h projects/jbuild/sys/netinet/in.c projects/jbuild/sys/netinet/in.h projects/jbuild/sys/netinet/in_mcast.c projects/jbuild/sys/netinet/in_pcb.c projects/jbuild/sys/netinet/in_pcb.h projects/jbuild/sys/netinet/in_proto.c projects/jbuild/sys/netinet/in_var.h projects/jbuild/sys/netinet/ip_input.c projects/jbuild/sys/netinet/ip_var.h projects/jbuild/sys/netinet/raw_ip.c projects/jbuild/sys/netinet/sctp.h projects/jbuild/sys/netinet/sctp_constants.h projects/jbuild/sys/netinet/sctp_indata.c projects/jbuild/sys/netinet/sctp_output.c projects/jbuild/sys/netinet/sctp_timer.c projects/jbuild/sys/netinet/sctp_var.h projects/jbuild/sys/netinet/sctputil.c projects/jbuild/sys/netinet/sctputil.h projects/jbuild/sys/netinet/udp_usrreq.c projects/jbuild/sys/netinet/vinet.h projects/jbuild/sys/nfsclient/nfs_vnops.c projects/jbuild/sys/pc98/cbus/scterm-sck.c projects/jbuild/sys/powerpc/aim/mmu_oea.c projects/jbuild/sys/powerpc/include/spr.h projects/jbuild/sys/powerpc/mpc85xx/mpc85xx.c projects/jbuild/sys/powerpc/mpc85xx/mpc85xx.h projects/jbuild/sys/powerpc/mpc85xx/ocpbus.c projects/jbuild/sys/powerpc/powerpc/elf_machdep.c projects/jbuild/sys/security/audit/audit.c projects/jbuild/sys/security/audit/audit.h projects/jbuild/sys/security/audit/audit_syscalls.c projects/jbuild/sys/security/mac/mac_atalk.c projects/jbuild/sys/security/mac/mac_audit.c projects/jbuild/sys/security/mac/mac_cred.c projects/jbuild/sys/security/mac/mac_framework.c projects/jbuild/sys/security/mac/mac_framework.h projects/jbuild/sys/security/mac/mac_inet.c projects/jbuild/sys/security/mac/mac_inet6.c projects/jbuild/sys/security/mac/mac_internal.h projects/jbuild/sys/security/mac/mac_net.c projects/jbuild/sys/security/mac/mac_pipe.c projects/jbuild/sys/security/mac/mac_policy.h projects/jbuild/sys/security/mac/mac_posix_sem.c projects/jbuild/sys/security/mac/mac_posix_shm.c projects/jbuild/sys/security/mac/mac_priv.c projects/jbuild/sys/security/mac/mac_process.c projects/jbuild/sys/security/mac/mac_socket.c projects/jbuild/sys/security/mac/mac_syscalls.c projects/jbuild/sys/security/mac/mac_system.c projects/jbuild/sys/security/mac/mac_sysv_msg.c projects/jbuild/sys/security/mac/mac_sysv_sem.c projects/jbuild/sys/security/mac/mac_sysv_shm.c projects/jbuild/sys/security/mac/mac_vfs.c projects/jbuild/sys/security/mac_biba/mac_biba.c projects/jbuild/sys/security/mac_bsdextended/mac_bsdextended.c projects/jbuild/sys/security/mac_bsdextended/ugidfw_internal.h projects/jbuild/sys/security/mac_bsdextended/ugidfw_vnode.c projects/jbuild/sys/security/mac_lomac/mac_lomac.c projects/jbuild/sys/security/mac_mls/mac_mls.c projects/jbuild/sys/security/mac_stub/mac_stub.c projects/jbuild/sys/security/mac_test/mac_test.c projects/jbuild/sys/sparc64/conf/GENERIC projects/jbuild/sys/sparc64/sparc64/elf_machdep.c projects/jbuild/sys/sys/buf.h projects/jbuild/sys/sys/diskpc98.h projects/jbuild/sys/sys/imgact_elf.h projects/jbuild/sys/sys/ktrace.h projects/jbuild/sys/sys/mount.h projects/jbuild/sys/sys/param.h projects/jbuild/sys/sys/pipe.h projects/jbuild/sys/sys/proc.h projects/jbuild/sys/sys/sysctl.h projects/jbuild/sys/sys/vimage.h projects/jbuild/sys/sys/vnode.h projects/jbuild/sys/ufs/ffs/ffs_snapshot.c projects/jbuild/sys/ufs/ffs/ffs_vfsops.c projects/jbuild/sys/ufs/ffs/ffs_vnops.c projects/jbuild/sys/ufs/ufs/inode.h projects/jbuild/sys/vm/vm_init.c projects/jbuild/sys/vm/vnode_pager.c projects/jbuild/sys/xen/evtchn.h (props changed) projects/jbuild/sys/xen/evtchn/evtchn.c projects/jbuild/sys/xen/evtchn/evtchn_dev.c projects/jbuild/sys/xen/features.c projects/jbuild/sys/xen/gnttab.c projects/jbuild/sys/xen/gnttab.h projects/jbuild/sys/xen/hypervisor.h (contents, props changed) projects/jbuild/sys/xen/interface/arch-x86/xen.h projects/jbuild/sys/xen/interface/hvm/params.h projects/jbuild/sys/xen/xen_intr.h (contents, props changed) projects/jbuild/sys/xen/xenbus/xenbus_probe.c projects/jbuild/sys/xen/xenbus/xenbus_xs.c projects/jbuild/tools/regression/lib/msun/test-conj.t (props changed) projects/jbuild/tools/regression/sockets/unix_gc/unix_gc.c projects/jbuild/tools/tools/ath/Makefile projects/jbuild/tools/tools/ath/athregs/Makefile projects/jbuild/usr.bin/calendar/calendars/calendar.freebsd projects/jbuild/usr.bin/kdump/kdump.1 projects/jbuild/usr.bin/kdump/kdump.c projects/jbuild/usr.bin/ktrace/ktrace.1 projects/jbuild/usr.bin/ktrace/ktrace.h projects/jbuild/usr.bin/ktrace/subr.c projects/jbuild/usr.bin/netstat/inet.c projects/jbuild/usr.bin/procstat/ (props changed) projects/jbuild/usr.bin/sockstat/sockstat.c projects/jbuild/usr.bin/systat/vmstat.c projects/jbuild/usr.bin/tar/ (props changed) projects/jbuild/usr.bin/tar/Makefile projects/jbuild/usr.bin/tar/bsdtar.c projects/jbuild/usr.bin/tar/bsdtar.h projects/jbuild/usr.bin/tar/bsdtar_platform.h projects/jbuild/usr.bin/tar/cmdline.c projects/jbuild/usr.bin/tar/matching.c projects/jbuild/usr.bin/tar/read.c projects/jbuild/usr.bin/tar/siginfo.c projects/jbuild/usr.bin/tar/test/Makefile projects/jbuild/usr.bin/tar/test/main.c projects/jbuild/usr.bin/tar/test/test.h projects/jbuild/usr.bin/tar/test/test_0.c projects/jbuild/usr.bin/tar/test/test_basic.c projects/jbuild/usr.bin/tar/test/test_copy.c projects/jbuild/usr.bin/tar/test/test_getdate.c projects/jbuild/usr.bin/tar/test/test_option_T.c projects/jbuild/usr.bin/tar/test/test_patterns.c projects/jbuild/usr.bin/tar/test/test_strip_components.c projects/jbuild/usr.bin/tar/test/test_symlink_dir.c projects/jbuild/usr.bin/tar/test/test_version.c projects/jbuild/usr.bin/tar/tree.c projects/jbuild/usr.bin/tar/util.c projects/jbuild/usr.bin/tar/write.c projects/jbuild/usr.bin/top/machine.c projects/jbuild/usr.sbin/bluetooth/bthidcontrol/Buildfile projects/jbuild/usr.sbin/bluetooth/bthidcontrol/Buildfile.dirdep projects/jbuild/usr.sbin/bluetooth/bthidd/Buildfile projects/jbuild/usr.sbin/bluetooth/bthidd/Buildfile.dirdep projects/jbuild/usr.sbin/bluetooth/btpand/Buildfile projects/jbuild/usr.sbin/bluetooth/btpand/Buildfile.dirdep projects/jbuild/usr.sbin/bluetooth/hcsecd/Buildfile projects/jbuild/usr.sbin/bluetooth/hcsecd/Buildfile.dirdep projects/jbuild/usr.sbin/bluetooth/l2control/Buildfile projects/jbuild/usr.sbin/bluetooth/l2control/Buildfile.dirdep projects/jbuild/usr.sbin/bluetooth/l2ping/Buildfile projects/jbuild/usr.sbin/bluetooth/l2ping/Buildfile.dirdep projects/jbuild/usr.sbin/bluetooth/rfcomm_pppd/Buildfile projects/jbuild/usr.sbin/bluetooth/rfcomm_pppd/Buildfile.dirdep projects/jbuild/usr.sbin/bluetooth/sdpcontrol/Buildfile projects/jbuild/usr.sbin/bluetooth/sdpcontrol/Buildfile.dirdep projects/jbuild/usr.sbin/bluetooth/sdpd/Buildfile projects/jbuild/usr.sbin/bluetooth/sdpd/Buildfile.dirdep projects/jbuild/usr.sbin/cxgbtool/cxgbtool.c projects/jbuild/usr.sbin/cxgbtool/version.h projects/jbuild/usr.sbin/gstat/gstat.8 projects/jbuild/usr.sbin/gstat/gstat.c projects/jbuild/usr.sbin/ifmcstat/Makefile projects/jbuild/usr.sbin/ifmcstat/ifmcstat.8 projects/jbuild/usr.sbin/ifmcstat/ifmcstat.c projects/jbuild/usr.sbin/makefs/ffs/ffs_bswap.c (props changed) projects/jbuild/usr.sbin/makefs/ffs/ffs_subr.c (props changed) projects/jbuild/usr.sbin/makefs/ffs/ufs_bswap.h (props changed) projects/jbuild/usr.sbin/makefs/getid.c (props changed) projects/jbuild/usr.sbin/mergemaster/mergemaster.sh projects/jbuild/usr.sbin/sysinstall/config.c projects/jbuild/usr.sbin/sysinstall/dispatch.c projects/jbuild/usr.sbin/sysinstall/menus.c projects/jbuild/usr.sbin/sysinstall/modules.c projects/jbuild/usr.sbin/sysinstall/sysinstall.8 projects/jbuild/usr.sbin/sysinstall/sysinstall.h projects/jbuild/usr.sbin/usbconfig/Makefile projects/jbuild/usr.sbin/zic/ (props changed) Modified: projects/jbuild/Makefile ============================================================================== --- projects/jbuild/Makefile Sat Mar 14 16:06:06 2009 (r189797) +++ projects/jbuild/Makefile Sat Mar 14 16:57:56 2009 (r189798) @@ -88,7 +88,7 @@ TGTS= all all-man buildenv buildenvvars obj objlink regress rerelease showconfig tags toolchain update \ _worldtmp _legacy _bootstrap-tools _cleanobj _obj \ _build-tools _cross-tools _includes _libraries _depend \ - build32 distribute32 install32 + build32 distribute32 install32 xdev xdev-build xdev-install TGTS+= ${SUBDIR_TARGETS} BITGTS= files includes Modified: projects/jbuild/Makefile.inc1 ============================================================================== --- projects/jbuild/Makefile.inc1 Sat Mar 14 16:06:06 2009 (r189797) +++ projects/jbuild/Makefile.inc1 Sat Mar 14 16:57:56 2009 (r189798) @@ -232,7 +232,7 @@ BMAKE= MAKEOBJDIRPREFIX=${WORLDTMP} \ BOOTSTRAPPING=${OSRELDATE} \ SSP_CFLAGS= \ -DWITHOUT_HTML -DWITHOUT_INFO -DNO_LINT -DWITHOUT_MAN \ - -DWITHOUT_NLS -DNO_PIC -DWITHOUT_PROFILE -DNO_SHARED \ + -DNO_PIC -DWITHOUT_PROFILE -DNO_SHARED \ -DNO_CPU_CFLAGS -DNO_WARNS -DNO_CTF # build-tools stage @@ -291,7 +291,7 @@ LIB32WMAKEENV= MAKEOBJDIRPREFIX=${OBJTRE SHLIBDIR=/usr/lib32 LIB32WMAKE= ${LIB32WMAKEENV} ${MAKE} -DNO_CPU_CFLAGS -DCOMPAT_32BIT \ - -DWITHOUT_BIND -DWITHOUT_MAN -DWITHOUT_NLS -DWITHOUT_INFO \ + -DWITHOUT_BIND -DWITHOUT_MAN -DWITHOUT_INFO \ -DWITHOUT_HTML -DNO_CTF DESTDIR=${LIB32TMP} LIB32IMAKE= ${LIB32WMAKE:NINSTALL=*:NDESTDIR=*} -DNO_INCS .endif @@ -429,7 +429,7 @@ _libraries: @echo "--------------------------------------------------------------" ${_+_}cd ${.CURDIR}; \ ${WMAKE} -DNO_FSCHG -DWITHOUT_HTML -DWITHOUT_INFO -DNO_LINT \ - -DWITHOUT_MAN -DWITHOUT_NLS -DWITHOUT_PROFILE libraries + -DWITHOUT_MAN -DWITHOUT_PROFILE libraries _depend: @echo @echo "--------------------------------------------------------------" @@ -612,8 +612,12 @@ installcheck_UGID: # # Required install tools to be saved in a scratch dir for safety. # +.if ${MK_INFO} != "no" +_install-info= install-info +.endif + ITOOLS= [ awk cap_mkdb cat chflags chmod chown \ - date echo egrep find grep install-info \ + date echo egrep find grep ${_install-info} \ ln lockf make mkdir mtree mv pwd_mkdb rm sed sh sysctl \ test true uname wc zic @@ -1328,3 +1332,89 @@ check-old: check-old-files check-old-lib # showconfig: @${MAKE} -n -f bsd.own.mk -V dummy -dg1 | grep ^MK_ | sort + + +############### + +.if defined(XDEV) && defined(XDEV_ARCH) + +NOFUN=-DNO_FSCHG -DWITHOUT_HTML -DWITHOUT_INFO -DNO_LINT \ + -DWITHOUT_MAN -DWITHOUT_NLS -DWITHOUT_PROFILE \ + -DWITHOUT_KERBEROS -DWITHOUT_RESCUE -DNO_WARNS + +XDDIR=${XDEV}-freebsd +XDTP=/usr/${XDDIR} +CDBENV=MAKEOBJDIRPREFIX=${MAKEOBJDIRPREFIX}/${XDDIR} \ + TARGET=${XDEV} TARGET_ARCH=${XDEV_ARCH} +CDENV= ${CDBENV} \ + _SHLIBDIRPREFIX=${XDTP} \ + TOOLS_PREFIX=${XDTP} +CD2ENV=${CDENV} \ + MACHINE=${XDEV} MACHINE_ARCH=${XDEV_ARCH} + +CDTMP= ${MAKEOBJDIRPREFIX}/${XDEV}/${.CURDIR}/tmp +CDMAKE=${CDENV} ${MAKE} ${NOFUN} +CD2MAKE=${CD2ENV} PATH=${CDTMP}/usr/bin:${XDTP}/usr/bin:${PATH} ${MAKE} ${NOFUN} +XDDESTDIR=${DESTDIR}${XDTP} + +.ORDER: xdev-build xdev-install +xdev: xdev-build xdev-install + +.ORDER: _xb-build-tools _xb-cross-tools +xdev-build: _xb-build-tools _xb-cross-tools + +_xb-build-tools: + ${_+_}cd ${.CURDIR}; \ + ${CDBENV} ${MAKE} -f Makefile.inc1 ${NOFUN} build-tools + +_xb-cross-tools: +.for _tool in \ + gnu/usr.bin/binutils \ + gnu/usr.bin/cc + ${_+_}@${ECHODIR} "===> xdev ${_tool} (obj,depend,all)"; \ + cd ${.CURDIR}/${_tool}; \ + ${CDMAKE} DIRPRFX=${_tool}/ obj; \ + ${CDMAKE} DIRPRFX=${_tool}/ depend; \ + ${CDMAKE} DIRPRFX=${_tool}/ all +.endfor + +_xi-mtree: + ${_+_}@${ECHODIR} "mtree populating ${XDDESTDIR}" + mkdir -p ${XDDESTDIR} + mtree -deU -f ${.CURDIR}/etc/mtree/BSD.root.dist \ + -p ${XDDESTDIR} >/dev/null + mtree -deU -f ${.CURDIR}/etc/mtree/BSD.usr.dist \ + -p ${XDDESTDIR}/usr >/dev/null + mtree -deU -f ${.CURDIR}/etc/mtree/BSD.include.dist \ + -p ${XDDESTDIR}/usr/include >/dev/null + +.ORDER: _xi-mtree _xi-cross-tools _xi-includes _xi-libraries _xi-links +xdev-install: _xi-mtree _xi-cross-tools _xi-includes _xi-libraries _xi-links + +_xi-cross-tools: + @echo "_xi-cross-tools" +.for _tool in \ + gnu/usr.bin/binutils \ + gnu/usr.bin/cc + ${_+_}@${ECHODIR} "===> xdev ${_tool} (install)"; \ + cd ${.CURDIR}/${_tool}; \ + ${CDMAKE} DIRPRFX=${_tool}/ install DESTDIR=${XDDESTDIR} +.endfor + +_xi-includes: + ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 par-includes \ + DESTDIR=${XDDESTDIR} + +_xi-libraries: + ${_+_}cd ${.CURDIR}; ${CD2MAKE} -f Makefile.inc1 libraries \ + DESTDIR=${XDDESTDIR} + +_xi-links: + ${_+_}cd ${XDDESTDIR}/usr/bin; \ + for i in *; do \ + ln -sf ../../${XDTP}/usr/bin/$$i \ + ../../../../usr/bin/${XDDIR}-$$i; \ + ln -sf ../../${XDTP}/usr/bin/$$i \ + ../../../../usr/bin/${XDDIR}${OSREL}-$$i; \ + done +.endif Modified: projects/jbuild/ObsoleteFiles.inc ============================================================================== --- projects/jbuild/ObsoleteFiles.inc Sat Mar 14 16:06:06 2009 (r189797) +++ projects/jbuild/ObsoleteFiles.inc Sat Mar 14 16:57:56 2009 (r189798) @@ -14,6 +14,12 @@ # The file is partitioned: OLD_FILES first, then OLD_LIBS and OLD_DIRS last. # +# 20090308: libusb.so.1 renamed +OLD_LIBS+=usr/lib/libusb20.so.1 +OLD_FILES+=usr/lib/libusb20.a +OLD_FILES+=usr/lib/libusb20.so +OLD_FILES+=usr/lib/libusb20_p.a +OLD_FILES+=usr/include/libusb20_compat01.h # 20090226: libmp(3) functions renamed OLD_LIBS+=usr/lib/libmp.so.6 # 20090223: changeover of USB stacks @@ -1766,9 +1772,6 @@ OLD_FILES+=usr/lib/libss.a OLD_FILES+=usr/lib/libss_p.a OLD_FILES+=usr/lib/libtelnet.a OLD_FILES+=usr/lib/libtelnet_p.a -OLD_FILES+=usr/lib/libusb.a -OLD_FILES+=usr/lib/libusb.so -OLD_FILES+=usr/lib/libusb_p.a OLD_FILES+=usr/sbin/diskpart # 200202XX OLD_FILES+=usr/bin/gprof4 Modified: projects/jbuild/UPDATING ============================================================================== --- projects/jbuild/UPDATING Sat Mar 14 16:06:06 2009 (r189797) +++ projects/jbuild/UPDATING Sat Mar 14 16:57:56 2009 (r189798) @@ -22,6 +22,63 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 8. to maximize performance. (To disable malloc debugging, run ln -s aj /etc/malloc.conf.) +20090313: + POSIX.1 Native Language Support (NLS) has been enabled in libc and + a bunch of new language catalog files have also been added. + This means that some common libc messages are now localized and + they depend on the LC_MESSAGES environmental variable. + +20090313: + The k8temp(4) driver has been renamed to amdtemp(4) since + support for K10 and K11 CPU families was added. + +20090309: + IGMPv3 and Source-Specific Multicast (SSM) have been merged + to the IPv4 stack. VIMAGE hooks are in but not yet used. + + For kernel developers, the most important changes are that the + ip_output() and ip_input() paths no longer take the IN_MULTI_LOCK(), + and this lock has been downgraded to a non-recursive mutex. + + Transport protocols (UDP, Raw IP) are now responsible for filtering + inbound multicast traffic according to group membership and source + filters. The imo_multicast_filter() KPI exists for this purpose. + Transports which do not use multicast (SCTP, TCP) already reject + multicast by default. Forwarding and receive performance may improve + as a mutex acquisition is no longer needed in the ip_input() + low-level input path. in_addmulti() and in_delmulti() are shimmed + to new KPIs which exist to support SSM in-kernel. + + For application developers, it is recommended that loopback of + multicast datagrams be disabled for best performance, as this + will still cause the lock to be taken for each looped-back + datagram transmission. The net.inet.ip.mcast.loop sysctl may + be tuned to 0 to disable loopback by default; it defaults to 1 + to preserve the existing behaviour. + + For systems administrators, to obtain best performance with + multicast reception and multiple groups, it is always recommended + that a card with a suitably precise hash filter is used. Hash + collisions will still result in the lock being taken within the + transport protocol input path to check group membership. + + If deploying FreeBSD in an environment with IGMP snooping switches, + it is recommended that the net.inet.igmp.sendlocal sysctl remain + enabled; this forces 224.0.0.0/24 group membership to be announced + via IGMP. + + The size of 'struct igmpstat' has changed; netstat needs to be + recompiled to reflect this. + Bump __FreeBSD_version to 800070. + +20090309: + libusb20.so.1 is now installed as libusb.so.1 and the ports system + updated to use it. This requires a buildworld/installworld in order to + update the library and dependencies (usbconfig, etc). Its advisable to + rebuild all ports which uses libusb. More specific directions are given + in the ports collection UPDATING file. Any /etc/libmap.conf entries for + libusb are no longer required and can be removed. + 20090302: A workaround is committed to allow the creation of System V shared memory segment of size > 2 GB on the 64-bit architectures. Modified: projects/jbuild/bin/sh/miscbltin.c ============================================================================== --- projects/jbuild/bin/sh/miscbltin.c Sat Mar 14 16:06:06 2009 (r189797) +++ projects/jbuild/bin/sh/miscbltin.c Sat Mar 14 16:57:56 2009 (r189798) @@ -147,6 +147,7 @@ readcmd(int argc __unused, char **argv _ if (tcgetattr(0, &told) == 0) { memcpy(&tnew, &told, sizeof(told)); cfmakeraw(&tnew); + tnew.c_iflag |= told.c_iflag & ICRNL; tcsetattr(0, TCSANOW, &tnew); tsaved = 1; } Copied: projects/jbuild/contrib/top/install-sh (from r189797, head/contrib/top/install-sh) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ projects/jbuild/contrib/top/install-sh Sat Mar 14 16:57:56 2009 (r189798, copy of r189797, head/contrib/top/install-sh) @@ -0,0 +1,69 @@ +#!/bin/sh +# +# this shell script is amazingly similar to the old and lamented +# BSD "install" command. It recognized the following options: +# +# -o target file owner +# -m target file mode +# -g target file group owner +# +# +# scan the options +# +while [ $# -gt 0 ]; do + case $1 in + -o) + owner=$2 + shift ; shift + ;; + + -m) + mode=$2 + shift; shift + ;; + + -g) + group=$2 + shift ; shift + ;; + + -*) + echo "install: unknown option $1" + exit + ;; + + *) + break + ;; + esac +done +# +# we need two more: filename and destination +# +if [ $# -ne 2 ]; then + echo "Usage: install [ -o owner ] [ -m mode ] [ -g group ] file destination" + exit +fi +# +# first, copy +# +cp $1 $2 +# +# normalize the name +# +dest=$2 +if [ -d $2 ]; then + dest=$2/`basename $1` +fi +# +# do optional things +# +if [ "$owner" ]; then + chown $owner $dest +fi +if [ "$group" ]; then + chgrp $group $dest +fi +if [ "$mode" ]; then + chmod $mode $dest +fi Modified: projects/jbuild/contrib/wpa/wpa_supplicant/ctrl_iface_unix.c ============================================================================== --- projects/jbuild/contrib/wpa/wpa_supplicant/ctrl_iface_unix.c Sat Mar 14 16:06:06 2009 (r189797) +++ projects/jbuild/contrib/wpa/wpa_supplicant/ctrl_iface_unix.c Sat Mar 14 16:57:56 2009 (r189798) @@ -16,6 +16,7 @@ #include <sys/un.h> #include <sys/stat.h> #include <grp.h> +#include <stddef.h> #include "common.h" #include "eloop.h" @@ -69,7 +70,8 @@ static int wpa_supplicant_ctrl_iface_att dst->next = priv->ctrl_dst; priv->ctrl_dst = dst; wpa_hexdump(MSG_DEBUG, "CTRL_IFACE monitor attached", - (u8 *) from->sun_path, fromlen - sizeof(from->sun_family)); + (u8 *) from->sun_path, + fromlen - offsetof(struct sockaddr_un, sun_path)); return 0; } @@ -84,7 +86,7 @@ static int wpa_supplicant_ctrl_iface_det while (dst) { if (fromlen == dst->addrlen && os_memcmp(from->sun_path, dst->addr.sun_path, - fromlen - sizeof(from->sun_family)) == 0) { + fromlen - offsetof(struct sockaddr_un, sun_path)) == 0) { if (prev == NULL) priv->ctrl_dst = dst->next; else @@ -92,7 +94,7 @@ static int wpa_supplicant_ctrl_iface_det os_free(dst); wpa_hexdump(MSG_DEBUG, "CTRL_IFACE monitor detached", (u8 *) from->sun_path, - fromlen - sizeof(from->sun_family)); + fromlen - offsetof(struct sockaddr_un, sun_path)); return 0; } prev = dst; @@ -115,10 +117,10 @@ static int wpa_supplicant_ctrl_iface_lev while (dst) { if (fromlen == dst->addrlen && os_memcmp(from->sun_path, dst->addr.sun_path, - fromlen - sizeof(from->sun_family)) == 0) { + fromlen - offsetof(struct sockaddr_un, sun_path)) == 0) { wpa_hexdump(MSG_DEBUG, "CTRL_IFACE changed monitor " "level", (u8 *) from->sun_path, - fromlen - sizeof(from->sun_family)); + fromlen - offsetof(struct sockaddr_un, sun_path)); dst->debug_level = atoi(level); return 0; } @@ -339,6 +341,8 @@ wpa_supplicant_ctrl_iface_init(struct wp } os_memset(&addr, 0, sizeof(addr)); + /* XXX #ifdef */ + addr.sun_len = sizeof(addr); addr.sun_family = AF_UNIX; fname = wpa_supplicant_ctrl_iface_path(wpa_s); if (fname == NULL) @@ -509,8 +513,8 @@ static void wpa_supplicant_ctrl_iface_se next = dst->next; if (level >= dst->debug_level) { wpa_hexdump(MSG_DEBUG, "CTRL_IFACE monitor send", - (u8 *) dst->addr.sun_path, dst->addrlen - - sizeof(dst->addr.sun_family)); + (u8 *) dst->addr.sun_path, + dst->addrlen - offsetof(struct sockaddr_un, sun_path)); msg.msg_name = (void *) &dst->addr; msg.msg_namelen = dst->addrlen; if (sendmsg(priv->sock, &msg, 0) < 0) { @@ -637,6 +641,8 @@ wpa_supplicant_global_ctrl_iface_init(st } os_memset(&addr, 0, sizeof(addr)); + /* XXX #ifdef */ + addr.sun_len = sizeof(addr); addr.sun_family = AF_UNIX; os_strlcpy(addr.sun_path, global->params.ctrl_interface, sizeof(addr.sun_path)); Modified: projects/jbuild/etc/defaults/rc.conf ============================================================================== --- projects/jbuild/etc/defaults/rc.conf Sat Mar 14 16:06:06 2009 (r189797) +++ projects/jbuild/etc/defaults/rc.conf Sat Mar 14 16:57:56 2009 (r189798) @@ -197,6 +197,7 @@ ifconfig_lo0="inet 127.0.0.1" # default #ifconfig_ed0_ipx="ipx 0x00010010" # Sample IPX address family entry. #ifconfig_fxp0_name="net0" # Change interface name from fxp0 to net0. #wlans_ath0="wlan0" # wlan(4) interfaces for ath0 device +#wlandebug_wlan0="scan+auth+assoc" # Set debug flags with wlanddebug(8) #ipv4_addrs_fxp0="192.168.0.1/24 192.168.1.1-5/28" # example IPv4 address entry. # #autobridge_interfaces="bridge0" # List of bridges to check Modified: projects/jbuild/etc/network.subr ============================================================================== --- projects/jbuild/etc/network.subr Sat Mar 14 16:06:06 2009 (r189797) +++ projects/jbuild/etc/network.subr Sat Mar 14 16:57:56 2009 (r189798) @@ -499,7 +499,7 @@ clone_down() # childif_create() { - local cfg child child_wlans create_args ifn i + local cfg child child_wlans create_args debug_flags ifn i cfg=1 ifn=$1 @@ -509,10 +509,18 @@ childif_create() for child in ${child_wlans}; do create_args="wlandev $ifn `get_if_var $child create_args_IF`" + debug_flags="`get_if_var $child wlandebug_IF`" + if expr $child : 'wlan[0-9][0-9]*$' >/dev/null 2>&1; then ifconfig $child create ${create_args} && cfg=0 + if [ -n "${debug_flags}" ]; then + wlandebug -i $child ${debug_flags} + fi else i=`ifconfig wlan create ${create_args}` + if [ -n "${debug_flags}" ]; then + wlandebug -i $i ${debug_flags} + fi ifconfig $i name $child && cfg=0 fi if autoif $child; then Modified: projects/jbuild/include/stdlib.h ============================================================================== --- projects/jbuild/include/stdlib.h Sat Mar 14 16:06:06 2009 (r189797) +++ projects/jbuild/include/stdlib.h Sat Mar 14 16:57:56 2009 (r189798) @@ -196,7 +196,7 @@ long jrand48(unsigned short[3]); char *l64a(long); void lcong48(unsigned short[7]); long lrand48(void); -#if !defined(_MKTEMP_DECLARED) && __XSI_VISIBLE <= 600 +#if !defined(_MKTEMP_DECLARED) && (__BSD_VISIBLE || __XSI_VISIBLE <= 600) char *mktemp(char *); #define _MKTEMP_DECLARED #endif Modified: projects/jbuild/lib/Makefile ============================================================================== --- projects/jbuild/lib/Makefile Sat Mar 14 16:06:06 2009 (r189797) +++ projects/jbuild/lib/Makefile Sat Mar 14 16:57:56 2009 (r189798) @@ -40,7 +40,7 @@ SUBDIR= ${_csu} libc libbsm libauditd li ${_libpmc} libproc librt ${_libsdp} ${_libsm} ${_libsmb} \ ${_libsmdb} \ ${_libsmutil} libstand ${_libtelnet} ${_libthr} libthread_db libufs \ - libugidfw ${_libusbhid} ${_libusb20} ${_libvgl} libwrap liby libz \ + libugidfw ${_libusbhid} ${_libusb} ${_libvgl} libwrap liby libz \ ${_bind} .if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf) @@ -139,7 +139,7 @@ _libtelnet= libtelnet .if ${MK_USB} != "no" _libusbhid= libusbhid -_libusb20= libusb20 +_libusb= libusb .endif .include <bsd.subdir.mk> Modified: projects/jbuild/lib/libarchive/archive.h ============================================================================== --- projects/jbuild/lib/libarchive/archive.h Sat Mar 14 16:06:06 2009 (r189797) +++ projects/jbuild/lib/libarchive/archive.h Sat Mar 14 16:57:56 2009 (r189798) @@ -118,13 +118,13 @@ extern "C" { * (ARCHIVE_API_VERSION * 1000000 + ARCHIVE_API_FEATURE * 1000) * #endif */ -#define ARCHIVE_VERSION_NUMBER 2005903 +#define ARCHIVE_VERSION_NUMBER 2006901 __LA_DECL int archive_version_number(void); /* * Textual name/version of the library, useful for version displays. */ -#define ARCHIVE_VERSION_STRING "libarchive 2.5.903a" +#define ARCHIVE_VERSION_STRING "libarchive 2.6.901a" __LA_DECL const char * archive_version_string(void); #if ARCHIVE_VERSION_NUMBER < 3000000 @@ -231,6 +231,7 @@ typedef int archive_close_callback(struc #define ARCHIVE_COMPRESSION_COMPRESS 3 #define ARCHIVE_COMPRESSION_PROGRAM 4 #define ARCHIVE_COMPRESSION_LZMA 5 +#define ARCHIVE_COMPRESSION_XZ 6 /* * Codes returned by archive_format. Modified: projects/jbuild/lib/libarchive/archive_write_set_format_mtree.c ============================================================================== --- projects/jbuild/lib/libarchive/archive_write_set_format_mtree.c Sat Mar 14 16:06:06 2009 (r189797) +++ projects/jbuild/lib/libarchive/archive_write_set_format_mtree.c Sat Mar 14 16:57:56 2009 (r189798) @@ -1,4 +1,5 @@ /*- + * Copyright (c) 2009 Michihiro NAKAJIMA * Copyright (c) 2008 Joerg Sonnenberger * All rights reserved. * @@ -26,19 +27,199 @@ #include "archive_platform.h" __FBSDID("$FreeBSD$"); +#ifdef HAVE_SYS_TYPES_H +#include <sys/types.h> +#endif #include <errno.h> #include <stdlib.h> #include <string.h> +#ifdef HAVE_OPENSSL_MD5_H +#include <openssl/md5.h> +#else /* HAVE_OPENSSL_MD5_H */ +#ifdef HAVE_MD5_H +#include <md5.h> +#endif +#endif /* HAVE_OPENSSL_MD5_H */ +#ifdef HAVE_OPENSSL_RIPEMD_H +#include <openssl/ripemd.h> +#else /* HAVE_OPENSSL_RIPEMD_H */ +#ifdef HAVE_RIPEMD_H +#include <ripemd.h> +#endif +#ifdef HAVE_RMD160_H +#include <rmd160.h> +#endif +#endif /* HAVE_OPENSSL_RIPEMD_H */ +#ifdef HAVE_OPENSSL_SHA_H +#include <openssl/sha.h> +#else /* HAVE_OPENSSL_SHA_H */ +#ifdef HAVE_SHA_H +#include <sha.h> +#endif +#ifdef HAVE_SHA1_H +#include <sha1.h> +#endif +#ifdef HAVE_SHA2_H +#include <sha2.h> +#endif +#ifdef HAVE_SHA256_H +#include <sha256.h> +#endif +#endif /* HAVE_OPENSSL_SHA_H */ #include "archive.h" #include "archive_entry.h" #include "archive_private.h" #include "archive_write_private.h" +#define INDENTNAMELEN 15 +#define MAXLINELEN 80 + struct mtree_writer { struct archive_entry *entry; + struct archive_string ebuf; struct archive_string buf; int first; + uint64_t entry_bytes_remaining; + struct { + int output; + int processed; + struct archive_string parent; + mode_t type; + int keys; + uid_t uid; + gid_t gid; + mode_t mode; + unsigned long fflags_set; + unsigned long fflags_clear; + } set; + /* chekc sum */ + int compute_sum; + uint32_t crc; + uint64_t crc_len; +#ifdef HAVE_MD5 + MD5_CTX md5ctx; +#endif +#if defined(HAVE_OPENSSL_RIPEMD_H) || defined(HAVE_RIPEMD_H) + RIPEMD160_CTX rmd160ctx; +#elif defined(HAVE_RMD160_H) + RMD160_CTX rmd160ctx; +#endif +#ifdef HAVE_SHA1 +#if defined(HAVE_OPENSSL_SHA_H) || defined(HAVE_SHA_H) + SHA_CTX sha1ctx; +#else + SHA1_CTX sha1ctx; +#endif +#endif +#ifdef HAVE_SHA256 + SHA256_CTX sha256ctx; +#endif +#ifdef HAVE_SHA384 +#if defined(HAVE_OPENSSL_SHA_H) + SHA512_CTX sha384ctx; +#else + SHA384_CTX sha384ctx; +#endif +#endif +#ifdef HAVE_SHA512 + SHA512_CTX sha512ctx; +#endif + /* Keyword options */ + int keys; +#define F_CKSUM 0x00000001 /* check sum */ +#define F_DEV 0x00000002 /* device type */ +#define F_DONE 0x00000004 /* directory done */ +#define F_FLAGS 0x00000008 /* file flags */ +#define F_GID 0x00000010 /* gid */ +#define F_GNAME 0x00000020 /* group name */ +#define F_IGN 0x00000040 /* ignore */ +#define F_MAGIC 0x00000080 /* name has magic chars */ +#define F_MD5 0x00000100 /* MD5 digest */ +#define F_MODE 0x00000200 /* mode */ +#define F_NLINK 0x00000400 /* number of links */ +#define F_NOCHANGE 0x00000800 /* If owner/mode "wrong", do + * not change */ +#define F_OPT 0x00001000 /* existence optional */ +#define F_RMD160 0x00002000 /* RIPEMD160 digest */ +#define F_SHA1 0x00004000 /* SHA-1 digest */ +#define F_SIZE 0x00008000 /* size */ +#define F_SLINK 0x00010000 /* symbolic link */ +#define F_TAGS 0x00020000 /* tags */ +#define F_TIME 0x00040000 /* modification time */ +#define F_TYPE 0x00080000 /* file type */ +#define F_UID 0x00100000 /* uid */ +#define F_UNAME 0x00200000 /* user name */ +#define F_VISIT 0x00400000 /* file visited */ +#define F_SHA256 0x00800000 /* SHA-256 digest */ +#define F_SHA384 0x01000000 /* SHA-384 digest */ +#define F_SHA512 0x02000000 /* SHA-512 digest */ + + /* Options */ + int dironly; /* if the dironly is 1, ignore everything except + * directory type files. like mtree(8) -d option. + */ + int indent; /* if the indent is 1, indent writing data. */ +}; + +#define DEFAULT_KEYS (F_DEV | F_FLAGS | F_GID | F_GNAME | F_SLINK | F_MODE\ + | F_NLINK | F_SIZE | F_TIME | F_TYPE | F_UID\ + | F_UNAME) + +#define COMPUTE_CRC(var, ch) (var) = (var) << 8 ^ crctab[(var) >> 24 ^ (ch)] +static const uint32_t crctab[] = { + 0x0, + 0x04c11db7, 0x09823b6e, 0x0d4326d9, 0x130476dc, 0x17c56b6b, + 0x1a864db2, 0x1e475005, 0x2608edb8, 0x22c9f00f, 0x2f8ad6d6, + 0x2b4bcb61, 0x350c9b64, 0x31cd86d3, 0x3c8ea00a, 0x384fbdbd, + 0x4c11db70, 0x48d0c6c7, 0x4593e01e, 0x4152fda9, 0x5f15adac, + 0x5bd4b01b, 0x569796c2, 0x52568b75, 0x6a1936c8, 0x6ed82b7f, + 0x639b0da6, 0x675a1011, 0x791d4014, 0x7ddc5da3, 0x709f7b7a, + 0x745e66cd, 0x9823b6e0, 0x9ce2ab57, 0x91a18d8e, 0x95609039, + 0x8b27c03c, 0x8fe6dd8b, 0x82a5fb52, 0x8664e6e5, 0xbe2b5b58, + 0xbaea46ef, 0xb7a96036, 0xb3687d81, 0xad2f2d84, 0xa9ee3033, + 0xa4ad16ea, 0xa06c0b5d, 0xd4326d90, 0xd0f37027, 0xddb056fe, + 0xd9714b49, 0xc7361b4c, 0xc3f706fb, 0xceb42022, 0xca753d95, + 0xf23a8028, 0xf6fb9d9f, 0xfbb8bb46, 0xff79a6f1, 0xe13ef6f4, + 0xe5ffeb43, 0xe8bccd9a, 0xec7dd02d, 0x34867077, 0x30476dc0, + 0x3d044b19, 0x39c556ae, 0x278206ab, 0x23431b1c, 0x2e003dc5, + 0x2ac12072, 0x128e9dcf, 0x164f8078, 0x1b0ca6a1, 0x1fcdbb16, + 0x018aeb13, 0x054bf6a4, 0x0808d07d, 0x0cc9cdca, 0x7897ab07, + 0x7c56b6b0, 0x71159069, 0x75d48dde, 0x6b93dddb, 0x6f52c06c, + 0x6211e6b5, 0x66d0fb02, 0x5e9f46bf, 0x5a5e5b08, 0x571d7dd1, + 0x53dc6066, 0x4d9b3063, 0x495a2dd4, 0x44190b0d, 0x40d816ba, + 0xaca5c697, 0xa864db20, 0xa527fdf9, 0xa1e6e04e, 0xbfa1b04b, + 0xbb60adfc, 0xb6238b25, 0xb2e29692, 0x8aad2b2f, 0x8e6c3698, + 0x832f1041, 0x87ee0df6, 0x99a95df3, 0x9d684044, 0x902b669d, + 0x94ea7b2a, 0xe0b41de7, 0xe4750050, 0xe9362689, 0xedf73b3e, + 0xf3b06b3b, 0xf771768c, 0xfa325055, 0xfef34de2, 0xc6bcf05f, + 0xc27dede8, 0xcf3ecb31, 0xcbffd686, 0xd5b88683, 0xd1799b34, + 0xdc3abded, 0xd8fba05a, 0x690ce0ee, 0x6dcdfd59, 0x608edb80, + 0x644fc637, 0x7a089632, 0x7ec98b85, 0x738aad5c, 0x774bb0eb, + 0x4f040d56, 0x4bc510e1, 0x46863638, 0x42472b8f, 0x5c007b8a, + 0x58c1663d, 0x558240e4, 0x51435d53, 0x251d3b9e, 0x21dc2629, + 0x2c9f00f0, 0x285e1d47, 0x36194d42, 0x32d850f5, 0x3f9b762c, + 0x3b5a6b9b, 0x0315d626, 0x07d4cb91, 0x0a97ed48, 0x0e56f0ff, + 0x1011a0fa, 0x14d0bd4d, 0x19939b94, 0x1d528623, 0xf12f560e, + 0xf5ee4bb9, 0xf8ad6d60, 0xfc6c70d7, 0xe22b20d2, 0xe6ea3d65, + 0xeba91bbc, 0xef68060b, 0xd727bbb6, 0xd3e6a601, 0xdea580d8, + 0xda649d6f, 0xc423cd6a, 0xc0e2d0dd, 0xcda1f604, 0xc960ebb3, + 0xbd3e8d7e, 0xb9ff90c9, 0xb4bcb610, 0xb07daba7, 0xae3afba2, + 0xaafbe615, 0xa7b8c0cc, 0xa379dd7b, 0x9b3660c6, 0x9ff77d71, + 0x92b45ba8, 0x9675461f, 0x8832161a, 0x8cf30bad, 0x81b02d74, + 0x857130c3, 0x5d8a9099, 0x594b8d2e, 0x5408abf7, 0x50c9b640, + 0x4e8ee645, 0x4a4ffbf2, 0x470cdd2b, 0x43cdc09c, 0x7b827d21, + 0x7f436096, 0x7200464f, 0x76c15bf8, 0x68860bfd, 0x6c47164a, + 0x61043093, 0x65c52d24, 0x119b4be9, 0x155a565e, 0x18197087, + 0x1cd86d30, 0x029f3d35, 0x065e2082, 0x0b1d065b, 0x0fdc1bec, + 0x3793a651, 0x3352bbe6, 0x3e119d3f, 0x3ad08088, 0x2497d08d, + 0x2056cd3a, 0x2d15ebe3, 0x29d4f654, 0xc5a92679, 0xc1683bce, + 0xcc2b1d17, 0xc8ea00a0, 0xd6ad50a5, 0xd26c4d12, 0xdf2f6bcb, + 0xdbee767c, 0xe3a1cbc1, 0xe760d676, 0xea23f0af, 0xeee2ed18, + 0xf0a5bd1d, 0xf464a0aa, 0xf9278673, 0xfde69bc4, 0x89b8fd09, + 0x8d79e0be, 0x803ac667, 0x84fbdbd0, 0x9abc8bd5, 0x9e7d9662, + 0x933eb0bb, 0x97ffad0c, 0xafb010b1, 0xab710d06, 0xa6322bdf, + 0xa2f33668, 0xbcb4666d, 0xb8757bda, 0xb5365d03, 0xb1f740b4 }; static int @@ -63,7 +244,7 @@ mtree_safe_char(char c) } static void -mtree_quote(struct mtree_writer *mtree, const char *str) +mtree_quote(struct archive_string *s, const char *str) { const char *start; char buf[4]; @@ -73,18 +254,333 @@ mtree_quote(struct mtree_writer *mtree, if (mtree_safe_char(*str)) continue; if (start != str) - archive_strncat(&mtree->buf, start, str - start); + archive_strncat(s, start, str - start); c = (unsigned char)*str; buf[0] = '\\'; buf[1] = (c / 64) + '0'; buf[2] = (c / 8 % 8) + '0'; buf[3] = (c % 8) + '0'; - archive_strncat(&mtree->buf, buf, 4); + archive_strncat(s, buf, 4); start = str + 1; } if (start != str) - archive_strncat(&mtree->buf, start, str - start); + archive_strncat(s, start, str - start); +} + +static void +mtree_indent(struct mtree_writer *mtree) +{ + int i, fn; + const char *r, *s, *x; + + fn = 1; + s = r = mtree->ebuf.s; + x = NULL; + while (*r == ' ') + r++; + while ((r = strchr(r, ' ')) != NULL) { + if (fn) { + fn = 0; + archive_strncat(&mtree->buf, s, r - s); + if (r -s > INDENTNAMELEN) { + archive_strncat(&mtree->buf, " \\\n", 3); + for (i = 0; i < (INDENTNAMELEN + 1); i++) + archive_strappend_char(&mtree->buf, ' '); + } else { + for (i = r -s; i < (INDENTNAMELEN + 1); i++) + archive_strappend_char(&mtree->buf, ' '); + } + s = ++r; + x = NULL; + continue; + } + if (r - s <= MAXLINELEN - 3 - INDENTNAMELEN) + x = r++; + else { + if (x == NULL) + x = r; + archive_strncat(&mtree->buf, s, x - s); + archive_strncat(&mtree->buf, " \\\n", 3); + for (i = 0; i < (INDENTNAMELEN + 1); i++) + archive_strappend_char(&mtree->buf, ' '); + s = r = ++x; + x = NULL; + } + } + if (x != NULL && strlen(s) > MAXLINELEN - 3 - INDENTNAMELEN) { + /* Last keyword is longer. */ + archive_strncat(&mtree->buf, s, x - s); + archive_strncat(&mtree->buf, " \\\n", 3); + for (i = 0; i < (INDENTNAMELEN + 1); i++) + archive_strappend_char(&mtree->buf, ' '); + s = ++x; + } + archive_strcat(&mtree->buf, s); + archive_string_empty(&mtree->ebuf); +} + +#ifndef _WIN32 +static size_t +dir_len(struct archive_entry *entry) +{ + const char *path, *r; + + path = archive_entry_pathname(entry); + r = strrchr(path, '/'); + if (r == NULL) + return (0); + /* Include a separator size */ + return (r - path + 1); +} + +#else +/* + * Note: We should use wide-character for findng '\' character, + * a directory separator on Windows, because some character-set have + * been using the '\' character for a part of its multibyte character + * code. + */ +static size_t +dir_len(struct archive_entry *entry) +{ + wchar_t wc; + const char *path; + const char *p, *rp; + size_t al, l, size; + + path = archive_entry_pathname(entry); + al = l = -1; + for (p = path; *p != '\0'; ++p) { + if (*p == '\\') + al = l = p - path; + else if (*p == '/') + al = p - path; + } + if (l == -1) + goto alen; + size = p - path; + rp = p = path; + while (*p != '\0') { + l = mbtowc(&wc, p, size); + if (l == -1) + goto alen; + if (l == 1 && (wc == L'/' || wc == L'\\')) + rp = p; + p += l; + size -= l; + } + return (rp - path + 1); +alen: + if (al == -1) + return (0); + return (al + 1); +} +#endif /* _WIN32 */ + +static int +parent_dir_changed(struct archive_string *dir, struct archive_entry *entry) +{ + const char *path; + size_t l; + + l = dir_len(entry); + path = archive_entry_pathname(entry); + if (archive_strlen(dir) > 0) { + if (l == 0) { + archive_string_empty(dir); + return (1); + } + if (strncmp(dir->s, path, l) == 0) + return (0); /* The parent directory is the same. */ + } else if (l == 0) + return (0); /* The parent directory is the same. */ + archive_strncpy(dir, path, l); + return (1); +} + +/* + * Write /set keyword. It means set global datas. + * [directory-only mode] + * - It is only once to write /set keyword. It is using values of the + * first entry. + * [normal mode] + * - Write /set keyword. It is using values of the first entry whose + * filetype is a regular file. + * - When a parent directory of the entry whose filetype is the regular + * file is changed, check the global datas and write it again if its + * values are different from the entry's. + */ +static void +set_global(struct mtree_writer *mtree, struct archive_entry *entry) +{ + struct archive_string setstr; + struct archive_string unsetstr; + const char *name; + int keys, oldkeys, effkeys; + mode_t set_type = 0; + + switch (archive_entry_filetype(entry)) { + case AE_IFLNK: case AE_IFSOCK: case AE_IFCHR: + case AE_IFBLK: case AE_IFIFO: + break; + case AE_IFDIR: + if (mtree->dironly) + set_type = AE_IFDIR; + break; + case AE_IFREG: + default: /* Handle unknown file types as regular files. */ + if (!mtree->dironly) + set_type = AE_IFREG; + break; + } + if (set_type == 0) + return; + if (mtree->set.processed && + !parent_dir_changed(&mtree->set.parent, entry)) + return; + /* At first, save a parent directory of the entry for following + * entries. */ + if (!mtree->set.processed && set_type == AE_IFREG) + parent_dir_changed(&mtree->set.parent, entry); + + archive_string_init(&setstr); + archive_string_init(&unsetstr); + keys = mtree->keys & (F_FLAGS | F_GID | F_GNAME | F_NLINK | F_MODE + | F_TYPE | F_UID | F_UNAME); + oldkeys = mtree->set.keys; + effkeys = keys; + if (mtree->set.processed) { + /* + * Check the global datas for whether it needs updating. + */ + effkeys &= ~F_TYPE; + if ((oldkeys & (F_UNAME | F_UID)) != 0 && + mtree->set.uid == archive_entry_uid(entry)) + effkeys &= ~(F_UNAME | F_UID); + if ((oldkeys & (F_GNAME | F_GID)) != 0 && + mtree->set.gid == archive_entry_gid(entry)) + effkeys &= ~(F_GNAME | F_GID); + if ((oldkeys & F_MODE) != 0 && + mtree->set.mode == (archive_entry_mode(entry) & 07777)) + effkeys &= ~F_MODE; + if ((oldkeys & F_FLAGS) != 0) { + unsigned long fflags_set; + unsigned long fflags_clear; + + archive_entry_fflags(entry, &fflags_set, &fflags_clear); + if (fflags_set == mtree->set.fflags_set && + fflags_clear == mtree->set.fflags_clear) + effkeys &= ~F_FLAGS; + } + } + if ((keys & effkeys & F_TYPE) != 0) { + mtree->set.type = set_type; + if (set_type == AE_IFDIR) + archive_strcat(&setstr, " type=dir"); + else + archive_strcat(&setstr, " type=file"); + } + if ((keys & effkeys & F_UNAME) != 0) { + if ((name = archive_entry_uname(entry)) != NULL) { + archive_strcat(&setstr, " uname="); + mtree_quote(&setstr, name); + } else if ((oldkeys & F_UNAME) != 0) + archive_strcat(&unsetstr, " uname"); + else + keys &= ~F_UNAME; + } + if ((keys & effkeys & F_UID) != 0) { + mtree->set.uid = archive_entry_uid(entry); + archive_string_sprintf(&setstr, " uid=%jd", + (intmax_t)mtree->set.uid); + } + if ((keys & effkeys & F_GNAME) != 0) { + if ((name = archive_entry_gname(entry)) != NULL) { + archive_strcat(&setstr, " gname="); + mtree_quote(&setstr, name); + } else if ((oldkeys & F_GNAME) != 0) + archive_strcat(&unsetstr, " gname"); + else + keys &= ~F_GNAME; + } + if ((keys & effkeys & F_GID) != 0) { + mtree->set.gid = archive_entry_gid(entry); + archive_string_sprintf(&setstr, " gid=%jd", + (intmax_t)mtree->set.gid); + } + if ((keys & effkeys & F_MODE) != 0) { + mtree->set.mode = archive_entry_mode(entry) & 07777; + archive_string_sprintf(&setstr, " mode=%o", mtree->set.mode); + } + if ((keys & effkeys & F_FLAGS) != 0) { + if ((name = archive_entry_fflags_text(entry)) != NULL) { + archive_strcat(&setstr, " flags="); + mtree_quote(&setstr, name); + archive_entry_fflags(entry, &mtree->set.fflags_set, + &mtree->set.fflags_clear); + } else if ((oldkeys & F_FLAGS) != 0) + archive_strcat(&unsetstr, " flags"); + else + keys &= ~F_FLAGS; + } + if (unsetstr.length > 0) + archive_string_sprintf(&mtree->buf, "/unset%s\n", unsetstr.s); + archive_string_free(&unsetstr); + if (setstr.length > 0) + archive_string_sprintf(&mtree->buf, "/set%s\n", setstr.s); + archive_string_free(&setstr); + mtree->set.keys = keys; + mtree->set.processed = 1; + /* On directory-only mode, it is only once to write /set keyword. */ + if (mtree->dironly) + mtree->set.output = 0; +} *** DIFF OUTPUT TRUNCATED AT 1000 LINES ***
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200903141657.n2EGvvLb002060>