Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 18 Mar 2008 08:22:25 GMT
From:      Peter Wemm <peter@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 137985 for review
Message-ID:  <200803180822.m2I8MPql063476@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=137985

Change 137985 by peter@peter_overcee on 2008/03/18 08:21:38

	IFC @137982

Affected files ...

.. //depot/projects/hammer/ObsoleteFiles.inc#47 integrate
.. //depot/projects/hammer/UPDATING#114 integrate
.. //depot/projects/hammer/bin/Makefile#6 integrate
.. //depot/projects/hammer/bin/ps/ps.1#25 integrate
.. //depot/projects/hammer/bin/uuidgen/Makefile#2 integrate
.. //depot/projects/hammer/contrib/cvs/lib/getdate#2 delete
.. //depot/projects/hammer/contrib/tcsh/sh.lex.c#7 integrate
.. //depot/projects/hammer/lib/libalias/libalias/Makefile#3 integrate
.. //depot/projects/hammer/lib/libarchive/Makefile#47 integrate
.. //depot/projects/hammer/lib/libarchive/archive.h.in#22 integrate
.. //depot/projects/hammer/lib/libarchive/archive_entry.3#16 integrate
.. //depot/projects/hammer/lib/libarchive/archive_entry.c#33 integrate
.. //depot/projects/hammer/lib/libarchive/archive_entry.h#22 integrate
.. //depot/projects/hammer/lib/libarchive/archive_read.c#23 integrate
.. //depot/projects/hammer/lib/libarchive/archive_read_private.h#5 integrate
.. //depot/projects/hammer/lib/libarchive/archive_read_support_format_ar.c#6 integrate
.. //depot/projects/hammer/lib/libarchive/archive_read_support_format_mtree.c#3 integrate
.. //depot/projects/hammer/lib/libarchive/archive_read_support_format_tar.c#41 integrate
.. //depot/projects/hammer/lib/libarchive/archive_string.h#10 integrate
.. //depot/projects/hammer/lib/libarchive/archive_string_sprintf.c#10 integrate
.. //depot/projects/hammer/lib/libarchive/archive_util.c#16 integrate
.. //depot/projects/hammer/lib/libarchive/archive_write.c#18 integrate
.. //depot/projects/hammer/lib/libarchive/archive_write_disk.c#12 integrate
.. //depot/projects/hammer/lib/libarchive/archive_write_private.h#3 integrate
.. //depot/projects/hammer/lib/libarchive/archive_write_set_compression_compress.c#1 branch
.. //depot/projects/hammer/lib/libarchive/archive_write_set_format_ar.c#6 integrate
.. //depot/projects/hammer/lib/libarchive/archive_write_set_format_cpio.c#13 integrate
.. //depot/projects/hammer/lib/libarchive/archive_write_set_format_cpio_newc.c#4 integrate
.. //depot/projects/hammer/lib/libarchive/archive_write_set_format_pax.c#33 integrate
.. //depot/projects/hammer/lib/libarchive/archive_write_set_format_shar.c#13 integrate
.. //depot/projects/hammer/lib/libarchive/archive_write_set_format_ustar.c#20 integrate
.. //depot/projects/hammer/lib/libarchive/config_freebsd.h#6 integrate
.. //depot/projects/hammer/lib/libarchive/test/.cvsignore#1 branch
.. //depot/projects/hammer/lib/libarchive/test/Makefile#9 integrate
.. //depot/projects/hammer/lib/libarchive/test/main.c#10 integrate
.. //depot/projects/hammer/lib/libarchive/test/test.h#7 integrate
.. //depot/projects/hammer/lib/libarchive/test/test_archive_api_feature.c#4 integrate
.. //depot/projects/hammer/lib/libarchive/test/test_compat_gtar.c#2 integrate
.. //depot/projects/hammer/lib/libarchive/test/test_compat_tar_hardlink.c#2 integrate
.. //depot/projects/hammer/lib/libarchive/test/test_compat_zip.c#2 integrate
.. //depot/projects/hammer/lib/libarchive/test/test_empty_write.c#2 integrate
.. //depot/projects/hammer/lib/libarchive/test/test_entry.c#3 integrate
.. //depot/projects/hammer/lib/libarchive/test/test_pax_filename_encoding.c#1 branch
.. //depot/projects/hammer/lib/libarchive/test/test_pax_filename_encoding.tar.gz.uu#1 branch
.. //depot/projects/hammer/lib/libarchive/test/test_read_format_ar.c#5 integrate
.. //depot/projects/hammer/lib/libarchive/test/test_read_format_gtar_sparse.c#7 integrate
.. //depot/projects/hammer/lib/libarchive/test/test_write_compress.c#1 branch
.. //depot/projects/hammer/lib/libarchive/test/test_write_format_ar.c#6 integrate
.. //depot/projects/hammer/lib/libc/gen/Makefile.inc#33 integrate
.. //depot/projects/hammer/lib/libc/gen/scandir.c#3 integrate
.. //depot/projects/hammer/lib/libc/gen/sem_timedwait.3#1 branch
.. //depot/projects/hammer/lib/libc/gen/sem_wait.3#4 integrate
.. //depot/projects/hammer/lib/libc/locale/wctype.c#3 integrate
.. //depot/projects/hammer/lib/libc/sys/Makefile.inc#32 integrate
.. //depot/projects/hammer/lib/libc/sys/Symbol.map#7 integrate
.. //depot/projects/hammer/lib/libc/sys/kldunload.2#6 integrate
.. //depot/projects/hammer/lib/libkvm/kvm_proc.c#38 integrate
.. //depot/projects/hammer/lib/libpmc/libpmc.c#9 integrate
.. //depot/projects/hammer/lib/libpmc/pmc.3#15 integrate
.. //depot/projects/hammer/lib/libpmc/pmc_capabilities.3#2 integrate
.. //depot/projects/hammer/lib/libthr/thread/thr_create.c#25 integrate
.. //depot/projects/hammer/lib/libthr/thread/thr_exit.c#23 integrate
.. //depot/projects/hammer/lib/libthr/thread/thr_sig.c#17 integrate
.. //depot/projects/hammer/lib/libthread_db/Makefile#11 integrate
.. //depot/projects/hammer/release/doc/en_US.ISO8859-1/relnotes/article.sgml#29 integrate
.. //depot/projects/hammer/sbin/atacontrol/atacontrol.8#10 integrate
.. //depot/projects/hammer/sbin/atacontrol/atacontrol.c#26 integrate
.. //depot/projects/hammer/sbin/geom/class/multipath/gmultipath.8#4 integrate
.. //depot/projects/hammer/sbin/mount/mount.8#26 integrate
.. //depot/projects/hammer/share/examples/cvsup/cvs-supfile#12 integrate
.. //depot/projects/hammer/share/man/man4/man4.i386/ar.4#4 integrate
.. //depot/projects/hammer/share/man/man4/man4.i386/linux.4#8 integrate
.. //depot/projects/hammer/share/man/man4/man4.i386/pnp.4#5 integrate
.. //depot/projects/hammer/share/man/man4/man4.i386/scd.4#6 integrate
.. //depot/projects/hammer/share/man/man4/man4.i386/streams.4#4 integrate
.. //depot/projects/hammer/share/man/man4/man4.i386/svr4.4#7 integrate
.. //depot/projects/hammer/share/man/man4/uart.4#7 integrate
.. //depot/projects/hammer/share/man/man9/Makefile#80 integrate
.. //depot/projects/hammer/share/man/man9/atomic.9#5 integrate
.. //depot/projects/hammer/share/man/man9/ieee80211_radiotap.9#4 integrate
.. //depot/projects/hammer/share/man/man9/rwlock.9#7 integrate
.. //depot/projects/hammer/share/man/man9/stack.9#4 integrate
.. //depot/projects/hammer/sys/amd64/acpica/acpi_machdep.c#24 integrate
.. //depot/projects/hammer/sys/amd64/acpica/madt.c#51 integrate
.. //depot/projects/hammer/sys/amd64/amd64/amd64_mem.c#11 integrate
.. //depot/projects/hammer/sys/amd64/amd64/intr_machdep.c#52 integrate
.. //depot/projects/hammer/sys/amd64/amd64/legacy.c#24 integrate
.. //depot/projects/hammer/sys/amd64/amd64/local_apic.c#79 integrate
.. //depot/projects/hammer/sys/amd64/amd64/machdep.c#166 integrate
.. //depot/projects/hammer/sys/amd64/amd64/mem.c#27 integrate
.. //depot/projects/hammer/sys/amd64/amd64/mptable.c#46 integrate
.. //depot/projects/hammer/sys/amd64/amd64/nexus.c#44 integrate
.. //depot/projects/hammer/sys/amd64/amd64/trap.c#103 integrate
.. //depot/projects/hammer/sys/amd64/amd64/vm_machdep.c#92 integrate
.. //depot/projects/hammer/sys/amd64/conf/DEFAULTS#10 integrate
.. //depot/projects/hammer/sys/amd64/ia32/ia32_signal.c#23 integrate
.. //depot/projects/hammer/sys/amd64/include/atomic.h#26 integrate
.. //depot/projects/hammer/sys/amd64/include/intr_machdep.h#28 integrate
.. //depot/projects/hammer/sys/amd64/include/nexusvar.h#1 branch
.. //depot/projects/hammer/sys/amd64/include/specialreg.h#29 integrate
.. //depot/projects/hammer/sys/amd64/isa/atpic.c#59 integrate
.. //depot/projects/hammer/sys/amd64/linux32/linux32_proto.h#14 integrate
.. //depot/projects/hammer/sys/amd64/linux32/linux32_syscall.h#14 integrate
.. //depot/projects/hammer/sys/amd64/linux32/linux32_sysent.c#14 integrate
.. //depot/projects/hammer/sys/amd64/linux32/linux32_sysvec.c#20 integrate
.. //depot/projects/hammer/sys/amd64/linux32/syscalls.master#14 integrate
.. //depot/projects/hammer/sys/arm/arm/busdma_machdep.c#28 integrate
.. //depot/projects/hammer/sys/arm/arm/intr.c#17 integrate
.. //depot/projects/hammer/sys/arm/arm/machdep.c#21 integrate
.. //depot/projects/hammer/sys/arm/arm/nexus.c#10 integrate
.. //depot/projects/hammer/sys/arm/arm/trap.c#23 integrate
.. //depot/projects/hammer/sys/arm/arm/vm_machdep.c#29 integrate
.. //depot/projects/hammer/sys/arm/conf/AVILA#8 integrate
.. //depot/projects/hammer/sys/arm/xscale/i8134x/crb_machdep.c#4 integrate
.. //depot/projects/hammer/sys/boot/common/dev_net.c#5 integrate
.. //depot/projects/hammer/sys/boot/powerpc/uboot/metadata.c#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/Makefile#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/common/main.c#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/Makefile#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/api_public.h#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/console.c#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/copy.c#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/devicename.c#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/disk.c#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/elf_freebsd.c#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/glue.c#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/glue.h#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/libuboot.h#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/module.c#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/net.c#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/reboot.c#2 integrate
.. //depot/projects/hammer/sys/boot/uboot/lib/time.c#2 integrate
.. //depot/projects/hammer/sys/cam/scsi/scsi_ses.c#16 integrate
.. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_proto.h#52 integrate
.. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_syscall.h#49 integrate
.. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_syscalls.c#49 integrate
.. //depot/projects/hammer/sys/compat/freebsd32/freebsd32_sysent.c#49 integrate
.. //depot/projects/hammer/sys/compat/freebsd32/syscalls.master#54 integrate
.. //depot/projects/hammer/sys/compat/linux/linux_misc.c#46 integrate
.. //depot/projects/hammer/sys/compat/svr4/svr4_fcntl.c#15 integrate
.. //depot/projects/hammer/sys/compat/svr4/svr4_sysvec.c#17 integrate
.. //depot/projects/hammer/sys/conf/files#175 integrate
.. //depot/projects/hammer/sys/conf/options#124 integrate
.. //depot/projects/hammer/sys/contrib/opensolaris/uts/common/fs/zfs/zfs_vnops.c#9 integrate
.. //depot/projects/hammer/sys/contrib/opensolaris/uts/common/os/callb.c#2 integrate
.. //depot/projects/hammer/sys/contrib/opensolaris/uts/common/os/taskq.c#2 integrate
.. //depot/projects/hammer/sys/dev/aac/aac.c#44 integrate
.. //depot/projects/hammer/sys/dev/acpica/acpi.c#82 integrate
.. //depot/projects/hammer/sys/dev/acpica/acpivar.h#56 integrate
.. //depot/projects/hammer/sys/dev/agp/agp_i810.c#3 integrate
.. //depot/projects/hammer/sys/dev/ata/ata-all.c#66 integrate
.. //depot/projects/hammer/sys/dev/ata/ata-all.h#48 integrate
.. //depot/projects/hammer/sys/dev/ata/ata-disk.c#47 integrate
.. //depot/projects/hammer/sys/dev/ata/ata-disk.h#10 integrate
.. //depot/projects/hammer/sys/dev/cxgb/common/cxgb_ael1002.c#5 integrate
.. //depot/projects/hammer/sys/dev/cxgb/common/cxgb_common.h#7 integrate
.. //depot/projects/hammer/sys/dev/cxgb/common/cxgb_version.h#4 integrate
.. //depot/projects/hammer/sys/dev/cxgb/cxgb_ioctl.h#6 integrate
.. //depot/projects/hammer/sys/dev/cxgb/cxgb_main.c#17 integrate
.. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#4 integrate
.. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c#4 integrate
.. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_ddp.c#2 integrate
.. //depot/projects/hammer/sys/dev/cxgb/ulp/tom/cxgb_defs.h#3 integrate
.. //depot/projects/hammer/sys/dev/hwpmc/pmc_events.h#2 integrate
.. //depot/projects/hammer/sys/dev/mxge/if_mxge.c#14 integrate
.. //depot/projects/hammer/sys/dev/ofw/ofw_console.c#23 integrate
.. //depot/projects/hammer/sys/dev/syscons/sysmouse.c#14 integrate
.. //depot/projects/hammer/sys/dev/tdfx/tdfx_pci.c#17 integrate
.. //depot/projects/hammer/sys/dev/tsec/if_tsec.c#2 integrate
.. //depot/projects/hammer/sys/dev/tsec/if_tsec.h#2 integrate
.. //depot/projects/hammer/sys/dev/uart/uart.h#8 integrate
.. //depot/projects/hammer/sys/dev/uart/uart_dev_ns8250.c#17 integrate
.. //depot/projects/hammer/sys/dev/usb/ehci_pci.c#26 integrate
.. //depot/projects/hammer/sys/dev/usb/if_zyd.c#9 integrate
.. //depot/projects/hammer/sys/dev/usb/ums.c#25 integrate
.. //depot/projects/hammer/sys/dev/usb/usb_quirks.c#22 integrate
.. //depot/projects/hammer/sys/dev/usb/usbdevs#96 integrate
.. //depot/projects/hammer/sys/dev/wpi/if_wpi.c#6 integrate
.. //depot/projects/hammer/sys/fs/fifofs/fifo_vnops.c#44 integrate
.. //depot/projects/hammer/sys/fs/procfs/procfs_ctl.c#13 integrate
.. //depot/projects/hammer/sys/fs/procfs/procfs_dbregs.c#10 integrate
.. //depot/projects/hammer/sys/fs/procfs/procfs_status.c#19 integrate
.. //depot/projects/hammer/sys/gdb/gdb_cons.c#3 integrate
.. //depot/projects/hammer/sys/i386/acpica/acpi_machdep.c#30 integrate
.. //depot/projects/hammer/sys/i386/acpica/acpi_wakeup.c#27 integrate
.. //depot/projects/hammer/sys/i386/acpica/madt.c#24 integrate
.. //depot/projects/hammer/sys/i386/conf/DEFAULTS#10 integrate
.. //depot/projects/hammer/sys/i386/cpufreq/est.c#9 integrate
.. //depot/projects/hammer/sys/i386/cpufreq/p4tcc.c#4 integrate
.. //depot/projects/hammer/sys/i386/i386/i686_mem.c#10 integrate
.. //depot/projects/hammer/sys/i386/i386/intr_machdep.c#26 integrate
.. //depot/projects/hammer/sys/i386/i386/k6_mem.c#5 integrate
.. //depot/projects/hammer/sys/i386/i386/legacy.c#16 integrate
.. //depot/projects/hammer/sys/i386/i386/local_apic.c#35 integrate
.. //depot/projects/hammer/sys/i386/i386/machdep.c#86 integrate
.. //depot/projects/hammer/sys/i386/i386/mp_machdep.c#73 integrate
.. //depot/projects/hammer/sys/i386/i386/mptable.c#23 integrate
.. //depot/projects/hammer/sys/i386/i386/nexus.c#24 integrate
.. //depot/projects/hammer/sys/i386/i386/sys_machdep.c#26 integrate
.. //depot/projects/hammer/sys/i386/i386/trap.c#59 integrate
.. //depot/projects/hammer/sys/i386/i386/vm_machdep.c#61 integrate
.. //depot/projects/hammer/sys/i386/ibcs2/imgact_coff.c#17 integrate
.. //depot/projects/hammer/sys/i386/include/atomic.h#14 integrate
.. //depot/projects/hammer/sys/i386/include/intr_machdep.h#14 integrate
.. //depot/projects/hammer/sys/i386/include/specialreg.h#17 integrate
.. //depot/projects/hammer/sys/i386/isa/atpic.c#21 integrate
.. //depot/projects/hammer/sys/i386/linux/linux_proto.h#25 integrate
.. //depot/projects/hammer/sys/i386/linux/linux_syscall.h#25 integrate
.. //depot/projects/hammer/sys/i386/linux/linux_sysent.c#26 integrate
.. //depot/projects/hammer/sys/i386/linux/linux_sysvec.c#31 integrate
.. //depot/projects/hammer/sys/i386/linux/syscalls.master#25 integrate
.. //depot/projects/hammer/sys/i386/svr4/svr4_machdep.c#10 integrate
.. //depot/projects/hammer/sys/i386/xbox/xbox.c#4 integrate
.. //depot/projects/hammer/sys/ia64/conf/DEFAULTS#8 integrate
.. //depot/projects/hammer/sys/ia64/ia64/interrupt.c#29 integrate
.. //depot/projects/hammer/sys/ia64/ia64/machdep.c#68 integrate
.. //depot/projects/hammer/sys/ia64/ia64/nexus.c#14 integrate
.. //depot/projects/hammer/sys/ia64/ia64/sscdisk.c#12 integrate
.. //depot/projects/hammer/sys/ia64/ia64/trap.c#43 integrate
.. //depot/projects/hammer/sys/ia64/include/atomic.h#7 integrate
.. //depot/projects/hammer/sys/ia64/include/ucontext.h#6 integrate
.. //depot/projects/hammer/sys/ia64/isa/isa_dma.c#8 integrate
.. //depot/projects/hammer/sys/kern/imgact_elf.c#47 integrate
.. //depot/projects/hammer/sys/kern/init_main.c#54 integrate
.. //depot/projects/hammer/sys/kern/init_sysent.c#66 integrate
.. //depot/projects/hammer/sys/kern/kern_alq.c#19 integrate
.. //depot/projects/hammer/sys/kern/kern_clock.c#45 integrate
.. //depot/projects/hammer/sys/kern/kern_condvar.c#27 integrate
.. //depot/projects/hammer/sys/kern/kern_conf.c#48 integrate
.. //depot/projects/hammer/sys/kern/kern_descrip.c#77 integrate
.. //depot/projects/hammer/sys/kern/kern_event.c#50 integrate
.. //depot/projects/hammer/sys/kern/kern_exec.c#79 integrate
.. //depot/projects/hammer/sys/kern/kern_fork.c#69 integrate
.. //depot/projects/hammer/sys/kern/kern_idle.c#22 integrate
.. //depot/projects/hammer/sys/kern/kern_intr.c#48 integrate
.. //depot/projects/hammer/sys/kern/kern_kse.c#41 delete
.. //depot/projects/hammer/sys/kern/kern_linker.c#34 integrate
.. //depot/projects/hammer/sys/kern/kern_malloc.c#36 integrate
.. //depot/projects/hammer/sys/kern/kern_mbuf.c#30 integrate
.. //depot/projects/hammer/sys/kern/kern_module.c#15 integrate
.. //depot/projects/hammer/sys/kern/kern_ntptime.c#16 integrate
.. //depot/projects/hammer/sys/kern/kern_poll.c#19 integrate
.. //depot/projects/hammer/sys/kern/kern_proc.c#66 integrate
.. //depot/projects/hammer/sys/kern/kern_resource.c#39 integrate
.. //depot/projects/hammer/sys/kern/kern_shutdown.c#52 integrate
.. //depot/projects/hammer/sys/kern/kern_sig.c#88 integrate
.. //depot/projects/hammer/sys/kern/kern_switch.c#60 integrate
.. //depot/projects/hammer/sys/kern/kern_sx.c#21 integrate
.. //depot/projects/hammer/sys/kern/kern_synch.c#66 integrate
.. //depot/projects/hammer/sys/kern/kern_tc.c#27 integrate
.. //depot/projects/hammer/sys/kern/kern_thread.c#105 integrate
.. //depot/projects/hammer/sys/kern/kern_timeout.c#28 integrate
.. //depot/projects/hammer/sys/kern/link_elf.c#31 integrate
.. //depot/projects/hammer/sys/kern/link_elf_obj.c#55 integrate
.. //depot/projects/hammer/sys/kern/p1003_1b.c#5 integrate
.. //depot/projects/hammer/sys/kern/sched_4bsd.c#58 integrate
.. //depot/projects/hammer/sys/kern/sched_ule.c#93 integrate
.. //depot/projects/hammer/sys/kern/subr_autoconf.c#8 integrate
.. //depot/projects/hammer/sys/kern/subr_eventhandler.c#6 integrate
.. //depot/projects/hammer/sys/kern/subr_log.c#13 integrate
.. //depot/projects/hammer/sys/kern/subr_prof.c#16 integrate
.. //depot/projects/hammer/sys/kern/subr_sleepqueue.c#28 integrate
.. //depot/projects/hammer/sys/kern/subr_smp.c#35 integrate
.. //depot/projects/hammer/sys/kern/subr_trap.c#42 integrate
.. //depot/projects/hammer/sys/kern/subr_witness.c#69 integrate
.. //depot/projects/hammer/sys/kern/sys_process.c#43 integrate
.. //depot/projects/hammer/sys/kern/syscalls.c#64 integrate
.. //depot/projects/hammer/sys/kern/syscalls.master#66 integrate
.. //depot/projects/hammer/sys/kern/systrace_args.c#10 integrate
.. //depot/projects/hammer/sys/kern/tty_cons.c#26 integrate
.. //depot/projects/hammer/sys/kern/tty_pts.c#8 integrate
.. //depot/projects/hammer/sys/kern/tty_pty.c#38 integrate
.. //depot/projects/hammer/sys/kern/tty_subr.c#7 integrate
.. //depot/projects/hammer/sys/kern/tty_tty.c#14 integrate
.. //depot/projects/hammer/sys/kern/uipc_domain.c#21 integrate
.. //depot/projects/hammer/sys/kern/uipc_socket.c#78 integrate
.. //depot/projects/hammer/sys/kern/vfs_acl.c#5 integrate
.. //depot/projects/hammer/sys/kern/vfs_bio.c#86 integrate
.. //depot/projects/hammer/sys/kern/vfs_cache.c#28 integrate
.. //depot/projects/hammer/sys/kern/vfs_hash.c#9 integrate
.. //depot/projects/hammer/sys/kern/vfs_lookup.c#34 integrate
.. //depot/projects/hammer/sys/kern/vfs_subr.c#126 integrate
.. //depot/projects/hammer/sys/net/bpf.c#57 integrate
.. //depot/projects/hammer/sys/net/ieee8023ad_lacp.c#8 integrate
.. //depot/projects/hammer/sys/net/ieee8023ad_lacp.h#7 integrate
.. //depot/projects/hammer/sys/net/if.c#73 integrate
.. //depot/projects/hammer/sys/net/if_lagg.c#14 integrate
.. //depot/projects/hammer/sys/net/netisr.c#16 integrate
.. //depot/projects/hammer/sys/net/rtsock.c#35 integrate
.. //depot/projects/hammer/sys/netatm/ipatm/ipatm_load.c#10 integrate
.. //depot/projects/hammer/sys/netatm/sigpvc/sigpvc_if.c#6 integrate
.. //depot/projects/hammer/sys/netatm/spans/spans_if.c#6 integrate
.. //depot/projects/hammer/sys/netatm/uni/uni_load.c#4 integrate
.. //depot/projects/hammer/sys/netgraph/netgraph.h#33 integrate
.. //depot/projects/hammer/sys/netgraph/ng_base.c#56 integrate
.. //depot/projects/hammer/sys/netgraph/ng_l2tp.c#15 integrate
.. //depot/projects/hammer/sys/netgraph/ng_socket.c#29 integrate
.. //depot/projects/hammer/sys/netinet/in_pcb.c#54 integrate
.. //depot/projects/hammer/sys/netinet/ip_fw2.c#93 integrate
.. //depot/projects/hammer/sys/netinet/ip_ipsec.c#8 integrate
.. //depot/projects/hammer/sys/netinet/libalias/alias.c#6 integrate
.. //depot/projects/hammer/sys/netinet/libalias/alias.h#4 integrate
.. //depot/projects/hammer/sys/netinet/libalias/alias_irc.c#7 integrate
.. //depot/projects/hammer/sys/netinet/libalias/alias_old.c#4 delete
.. //depot/projects/hammer/sys/netinet6/ip6_ipsec.c#5 integrate
.. //depot/projects/hammer/sys/netinet6/ip6_ipsec.h#4 integrate
.. //depot/projects/hammer/sys/netinet6/ip6_output.c#49 integrate
.. //depot/projects/hammer/sys/netipsec/ipsec.c#21 integrate
.. //depot/projects/hammer/sys/netipsec/ipsec_output.c#14 integrate
.. //depot/projects/hammer/sys/netipsec/key.c#19 integrate
.. //depot/projects/hammer/sys/nfsclient/nfs_diskless.c#17 integrate
.. //depot/projects/hammer/sys/pc98/conf/DEFAULTS#7 integrate
.. //depot/projects/hammer/sys/pc98/include/nexusvar.h#1 branch
.. //depot/projects/hammer/sys/pc98/pc98/machdep.c#23 integrate
.. //depot/projects/hammer/sys/powerpc/aim/machdep.c#5 integrate
.. //depot/projects/hammer/sys/powerpc/aim/trap.c#3 integrate
.. //depot/projects/hammer/sys/powerpc/aim/vm_machdep.c#3 integrate
.. //depot/projects/hammer/sys/powerpc/booke/machdep.c#2 integrate
.. //depot/projects/hammer/sys/powerpc/booke/trap.c#2 integrate
.. //depot/projects/hammer/sys/powerpc/booke/vm_machdep.c#2 integrate
.. //depot/projects/hammer/sys/powerpc/conf/DEFAULTS#6 integrate
.. //depot/projects/hammer/sys/powerpc/include/atomic.h#12 integrate
.. //depot/projects/hammer/sys/powerpc/include/bootinfo.h#4 integrate
.. //depot/projects/hammer/sys/powerpc/include/gdb_machdep.h#2 integrate
.. //depot/projects/hammer/sys/powerpc/include/ocpbus.h#2 integrate
.. //depot/projects/hammer/sys/powerpc/mpc85xx/ocpbus.c#2 integrate
.. //depot/projects/hammer/sys/powerpc/powerpc/gdb_machdep.c#3 integrate
.. //depot/projects/hammer/sys/powerpc/powerpc/intr_machdep.c#17 integrate
.. //depot/projects/hammer/sys/security/audit/audit.c#16 integrate
.. //depot/projects/hammer/sys/sparc64/conf/DEFAULTS#6 integrate
.. //depot/projects/hammer/sys/sparc64/include/atomic.h#6 integrate
.. //depot/projects/hammer/sys/sparc64/sparc64/intr_machdep.c#17 integrate
.. //depot/projects/hammer/sys/sparc64/sparc64/trap.c#27 integrate
.. //depot/projects/hammer/sys/sparc64/sparc64/vm_machdep.c#27 integrate
.. //depot/projects/hammer/sys/sun4v/include/atomic.h#2 integrate
.. //depot/projects/hammer/sys/sun4v/sun4v/intr_machdep.c#5 integrate
.. //depot/projects/hammer/sys/sys/ata.h#21 integrate
.. //depot/projects/hammer/sys/sys/bus_dma.h#4 integrate
.. //depot/projects/hammer/sys/sys/condvar.h#8 integrate
.. //depot/projects/hammer/sys/sys/conf.h#43 integrate
.. //depot/projects/hammer/sys/sys/cpuset.h#2 integrate
.. //depot/projects/hammer/sys/sys/disklabel.h#17 integrate
.. //depot/projects/hammer/sys/sys/eventhandler.h#12 integrate
.. //depot/projects/hammer/sys/sys/interrupt.h#17 integrate
.. //depot/projects/hammer/sys/sys/kernel.h#24 integrate
.. //depot/projects/hammer/sys/sys/kse.h#20 delete
.. //depot/projects/hammer/sys/sys/module.h#5 integrate
.. //depot/projects/hammer/sys/sys/param.h#107 integrate
.. //depot/projects/hammer/sys/sys/proc.h#116 integrate
.. //depot/projects/hammer/sys/sys/resourcevar.h#19 integrate
.. //depot/projects/hammer/sys/sys/rwlock.h#11 integrate
.. //depot/projects/hammer/sys/sys/sched.h#25 integrate
.. //depot/projects/hammer/sys/sys/sleepqueue.h#11 integrate
.. //depot/projects/hammer/sys/sys/syscall.h#63 integrate
.. //depot/projects/hammer/sys/sys/syscall.mk#63 integrate
.. //depot/projects/hammer/sys/sys/sysproto.h#64 integrate
.. //depot/projects/hammer/sys/sys/systm.h#52 integrate
.. //depot/projects/hammer/sys/sys/taskqueue.h#11 integrate
.. //depot/projects/hammer/sys/ufs/ffs/ffs_softdep.c#51 integrate
.. //depot/projects/hammer/sys/vm/vm_fault.c#52 integrate
.. //depot/projects/hammer/sys/vm/vm_glue.c#50 integrate
.. //depot/projects/hammer/sys/vm/vm_init.c#13 integrate
.. //depot/projects/hammer/sys/vm/vm_map.c#68 integrate
.. //depot/projects/hammer/sys/vm/vm_meter.c#24 integrate
.. //depot/projects/hammer/sys/vm/vm_mmap.c#50 integrate
.. //depot/projects/hammer/sys/vm/vm_page.c#69 integrate
.. //depot/projects/hammer/sys/vm/vm_page.h#31 integrate
.. //depot/projects/hammer/sys/vm/vm_pageout.c#48 integrate
.. //depot/projects/hammer/sys/vm/vm_pageq.c#23 delete
.. //depot/projects/hammer/sys/vm/vm_zeroidle.c#30 integrate
.. //depot/projects/hammer/tools/tools/editing/freebsd.vim#1 branch
.. //depot/projects/hammer/usr.bin/cpuset/cpuset.1#2 integrate
.. //depot/projects/hammer/usr.bin/cpuset/cpuset.c#2 integrate
.. //depot/projects/hammer/usr.bin/kdump/kdump.c#24 integrate
.. //depot/projects/hammer/usr.bin/kdump/kdump_subr.h#4 integrate
.. //depot/projects/hammer/usr.bin/kdump/mksubr#5 integrate
.. //depot/projects/hammer/usr.bin/make/globals.h#7 integrate
.. //depot/projects/hammer/usr.bin/make/hash_tables.c#4 integrate
.. //depot/projects/hammer/usr.bin/make/main.c#44 integrate
.. //depot/projects/hammer/usr.bin/make/make.1#33 integrate
.. //depot/projects/hammer/usr.bin/make/parse.c#37 integrate
.. //depot/projects/hammer/usr.bin/ministat/ministat.1#2 integrate
.. //depot/projects/hammer/usr.bin/ruptime/ruptime.c#5 integrate
.. //depot/projects/hammer/usr.bin/split/split.1#8 integrate
.. //depot/projects/hammer/usr.bin/split/split.c#6 integrate
.. //depot/projects/hammer/usr.bin/tar/Makefile#24 integrate
.. //depot/projects/hammer/usr.bin/tar/bsdtar.1#27 integrate
.. //depot/projects/hammer/usr.bin/tar/bsdtar.c#37 integrate
.. //depot/projects/hammer/usr.bin/tar/bsdtar.h#20 integrate
.. //depot/projects/hammer/usr.bin/tar/config_freebsd.h#3 integrate
.. //depot/projects/hammer/usr.bin/tar/matching.c#12 integrate
.. //depot/projects/hammer/usr.bin/tar/read.c#25 integrate
.. //depot/projects/hammer/usr.bin/tar/write.c#31 integrate
.. //depot/projects/hammer/usr.bin/uuidgen/Makefile#4 delete
.. //depot/projects/hammer/usr.bin/uuidgen/uuidgen.1#7 delete
.. //depot/projects/hammer/usr.bin/uuidgen/uuidgen.c#4 delete
.. //depot/projects/hammer/usr.sbin/adduser/adduser.8#14 integrate
.. //depot/projects/hammer/usr.sbin/bluetooth/rfcomm_pppd/rfcomm_pppd.c#7 integrate
.. //depot/projects/hammer/usr.sbin/fifolog/lib/miniobj.h#2 integrate
.. //depot/projects/hammer/usr.sbin/mixer/Makefile#2 integrate
.. //depot/projects/hammer/usr.sbin/mixer/mixer.8#9 integrate
.. //depot/projects/hammer/usr.sbin/mixer/mixer.c#9 integrate
.. //depot/projects/hammer/usr.sbin/ppp/command.c#16 integrate
.. //depot/projects/hammer/usr.sbin/ppp/ipcp.c#10 integrate
.. //depot/projects/hammer/usr.sbin/ppp/main.c#6 integrate
.. //depot/projects/hammer/usr.sbin/ppp/nat_cmd.c#6 integrate

Differences ...

==== //depot/projects/hammer/ObsoleteFiles.inc#47 (text+ko) ====

@@ -1,5 +1,5 @@
 #
-# $FreeBSD: src/ObsoleteFiles.inc,v 1.132 2008/03/08 21:59:43 antoine Exp $
+# $FreeBSD: src/ObsoleteFiles.inc,v 1.133 2008/03/13 18:17:46 brueffer Exp $
 #
 # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and
 # directories (OLD_DIRS) which should get removed at an update. Recently
@@ -27,6 +27,8 @@
 # 20071207: Merged with fortunes-o.real
 OLD_FILES+=usr/share/games/fortune/fortunes2-o
 OLD_FILES+=usr/share/games/fortune/fortunes2-o.dat
+# 20071201: Removal of XRPU driver
+OLD_FILES+=usr/include/sys/xrpuio.h
 # 20071129: Disabled static versions of libkse by default
 .if ${DEFAULT_THREAD_LIB} != "libkse" && ${MK_LIBTHR} != "no"
 OLD_FILES+=usr/lib/libkse.a

==== //depot/projects/hammer/UPDATING#114 (text+ko) ====

@@ -22,6 +22,16 @@
 	to maximize performance.  (To disable malloc debugging, run
 	ln -s aj /etc/malloc.conf.)
 
+20080312:
+	Support for KSE threading has been removed from the kernel.  To
+	run legacy applications linked against KSE libmap.conf may
+	be used.  The following libmap.conf may be used to ensure
+	compatibility with any prior release:
+
+	libpthread.so.1 libthr.so.1
+	libpthread.so.2 libthr.so.2
+	libkse.so.3 libthr.so.3
+
 20080301:
 	The layout of struct vmspace has changed. This affects libkvm
 	and any executables that link against libkvm and use the
@@ -997,4 +1007,4 @@
 Contact Warner Losh if you have any questions about your use of
 this document.
 
-$FreeBSD: src/UPDATING,v 1.522 2008/03/01 22:54:42 marcel Exp $
+$FreeBSD: src/UPDATING,v 1.523 2008/03/12 09:48:42 jeff Exp $

==== //depot/projects/hammer/bin/Makefile#6 (text+ko) ====

@@ -1,5 +1,5 @@
 #	From: @(#)Makefile	8.1 (Berkeley) 5/31/93
-# $FreeBSD: src/bin/Makefile,v 1.26 2006/03/17 18:54:20 ru Exp $
+# $FreeBSD: src/bin/Makefile,v 1.27 2008/03/13 17:38:06 obrien Exp $
 
 .include <bsd.own.mk>
 
@@ -37,7 +37,8 @@
 	sleep \
 	stty \
 	sync \
-	test
+	test \
+	uuidgen
 
 .if ${MK_RCMDS} != "no"
 _rcp=	rcp

==== //depot/projects/hammer/bin/ps/ps.1#25 (text+ko) ====

@@ -27,7 +27,7 @@
 .\" SUCH DAMAGE.
 .\"
 .\"     @(#)ps.1	8.3 (Berkeley) 4/18/94
-.\" $FreeBSD: src/bin/ps/ps.1,v 1.89 2006/09/17 17:40:06 ru Exp $
+.\" $FreeBSD: src/bin/ps/ps.1,v 1.90 2008/03/12 10:01:34 jeff Exp $
 .\"
 .Dd August 21, 2006
 .Dt PS 1
@@ -290,7 +290,6 @@
 .It Dv "P_WAITED" Ta No "0x01000	Someone is waiting for us"
 .It Dv "P_WEXIT" Ta No "0x02000		Working on exiting"
 .It Dv "P_EXEC" Ta No "0x04000		Process called exec"
-.It Dv "P_SA" Ta No "0x08000		Using scheduler activations"
 .It Dv "P_CONTINUED" Ta No "0x10000	Proc has continued from a stopped state"
 .It Dv "P_STOPPED_SIG" Ta No "0x20000	Stopped due to SIGSTOP/SIGTSTP"
 .It Dv "P_STOPPED_TRACE" Ta No "0x40000	Stopped because of tracing"

==== //depot/projects/hammer/bin/uuidgen/Makefile#2 (text+ko) ====

@@ -1,6 +1,4 @@
-# $FreeBSD: src/bin/uuidgen/Makefile,v 1.3 2007/04/09 19:16:48 pjd Exp $
-
-BINDIR=	/bin
+# $FreeBSD: src/bin/uuidgen/Makefile,v 1.4 2008/03/13 17:38:06 obrien Exp $
 
 PROG=	uuidgen
 WARNS?=	6

==== //depot/projects/hammer/contrib/tcsh/sh.lex.c#7 (text+ko) ====

@@ -851,7 +851,8 @@
 	    return (en);
 	}
 	slhs.len = 0;
-	Strbuf_append(&slhs, lhsb.s);
+	if (lhsb.s != NULL && lhsb.len != 0)
+	    Strbuf_append(&slhs, lhsb.s);
 	Strbuf_terminate(&slhs);
 	if (exclc)
 	    en = dosub(sc, en, global);

==== //depot/projects/hammer/lib/libalias/libalias/Makefile#3 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/lib/libalias/libalias/Makefile,v 1.4 2007/06/18 18:47:53 rafan Exp $
+# $FreeBSD: src/lib/libalias/libalias/Makefile,v 1.5 2008/03/12 11:58:28 piso Exp $
 
 .PATH: ${.CURDIR}/../../../sys/netinet/libalias
 
@@ -6,7 +6,7 @@
 SHLIBDIR?= /lib
 SHLIB_MAJOR= 6
 MAN=	libalias.3
-SRCS=	alias.c alias_db.c alias_proxy.c alias_util.c alias_old.c alias_mod.c
+SRCS=	alias.c alias_db.c alias_proxy.c alias_util.c alias_mod.c
 INCS=	alias.h
 WARNS?=	6
 NO_WERROR=

==== //depot/projects/hammer/lib/libarchive/Makefile#47 (text+ko) ====

@@ -1,4 +1,4 @@
-# $FreeBSD: src/lib/libarchive/Makefile,v 1.80 2008/01/23 05:48:07 kientzle Exp $
+# $FreeBSD: src/lib/libarchive/Makefile,v 1.82 2008/03/14 23:00:53 kientzle Exp $
 
 LIB=	archive
 DPADD=	${LIBBZ2} ${LIBZ}
@@ -81,6 +81,7 @@
 	archive_write_open_filename.c			\
 	archive_write_open_memory.c			\
 	archive_write_set_compression_bzip2.c		\
+	archive_write_set_compression_compress.c	\
 	archive_write_set_compression_gzip.c		\
 	archive_write_set_compression_none.c		\
 	archive_write_set_compression_program.c		\
@@ -120,6 +121,8 @@
 MLINKS+=	archive_entry.3 archive_entry_copy_gname.3
 MLINKS+=	archive_entry.3 archive_entry_copy_gname_w.3
 MLINKS+=	archive_entry.3 archive_entry_copy_hardlink_w.3
+MLINKS+=	archive_entry.3 archive_entry_copy_link.3
+MLINKS+=	archive_entry.3 archive_entry_copy_link_w.3
 MLINKS+=	archive_entry.3 archive_entry_copy_pathname_w.3
 MLINKS+=	archive_entry.3 archive_entry_copy_stat.3
 MLINKS+=	archive_entry.3 archive_entry_copy_symlink_w.3

==== //depot/projects/hammer/lib/libarchive/archive.h.in#22 (text+ko) ====

@@ -22,18 +22,12 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: src/lib/libarchive/archive.h.in,v 1.47 2007/12/30 04:58:21 kientzle Exp $
+ * $FreeBSD: src/lib/libarchive/archive.h.in,v 1.49 2008/03/14 22:19:50 kientzle Exp $
  */
 
 #ifndef ARCHIVE_H_INCLUDED
 #define	ARCHIVE_H_INCLUDED
 
-/*
- * This header file corresponds to:
- *   Library version @ARCHIVE_VERSION@
- *   Shared library version @SHLIB_MAJOR@
- */
-
 #include <sys/types.h>  /* Linux requires this for off_t */
 @ARCHIVE_H_INCLUDE_INTTYPES_H@
 #include <stdio.h> /* For FILE * */
@@ -51,58 +45,59 @@
 #endif
 
 /*
- * Each of the version identifiers comes as a macro and a function.
+ * The version number is provided as both a macro and a function.
  * The macro identifies the installed header; the function identifies
  * the library version (which may not be the same if you're using a
  * dynamically-linked version of the library).
  */
 
 /*
- * Textual name/version of the library, useful for version displays.
- */
-#define	ARCHIVE_LIBRARY_VERSION	"libarchive @LIBARCHIVE_VERSION_STRING@"
-const char *	archive_version(void);
-
-/*
- * The "version stamp" is a single integer that makes it easy to check
- * the exact version: for version a.b.c, the version stamp is
- * printf("%d%03d%03d",a,b,c).  For example, version 2.12.108 has
- * version stamp 2012108.
+ * The version number is expressed as a single integer that makes it
+ * easy to compare versions at build time: for version a.b.c, the
+ * version number is printf("%d%03d%03d",a,b,c).  For example, if you
+ * know your application requires version 2.12.108 or later, you can
+ * assert that ARCHIVE_VERSION >= 2012108.
  *
- * This was introduced with libarchive 1.9.0 in the libarchive 1.x family
- * and libarchive 2.2.4 in the libarchive 2.x family.  The following
- * may be useful if you really want to do feature detection for earlier
- * libarchive versions (which defined API_VERSION and API_FEATURE):
+ * This single-number format was introduced with libarchive 1.9.0 in
+ * the libarchive 1.x family and libarchive 2.2.4 in the libarchive
+ * 2.x family.  The following may be useful if you really want to do
+ * feature detection for earlier libarchive versions (which defined
+ * ARCHIVE_API_VERSION and ARCHIVE_API_FEATURE instead):
  *
- * #ifndef ARCHIVE_VERSION_STAMP
- * #define ARCHIVE_VERSION_STAMP 	\
+ * #ifndef ARCHIVE_VERSION_NUMBER
+ * #define ARCHIVE_VERSION_NUMBER	\
  *             (ARCHIVE_API_VERSION * 1000000 + ARCHIVE_API_FEATURE * 1000)
  * #endif
  */
-#define ARCHIVE_VERSION_STAMP	@LIBARCHIVE_VERSION@
-int		archive_version_stamp(void);
+#define ARCHIVE_VERSION_NUMBER		@LIBARCHIVE_VERSION@
+int		archive_version_number(void);
 
 /*
- * Major version number: If ARCHIVE_API_VERSION !=
- * archive_api_version(), then the library you were linked with is
- * using an incompatible API to the one you were compiled with.  This
- * is almost certainly a fatal problem.
- * This is deprecated and will be removed; use ARCHIVE_VERSION_STAMP
- * instead.
+ * Textual name/version of the library, useful for version displays.
  */
-#define	ARCHIVE_API_VERSION	(ARCHIVE_VERSION_STAMP / 1000000)
-int		archive_api_version(void);
+const char *	archive_version_string(void);
 
+#if ARCHIVE_VERSION_NUMBER < 3000000
 /*
- * Minor version number.  This is deprecated and will be removed.
- * Use ARCHIVE_VERSION_STAMP to adapt to libarchive API variations.
+ * Deprecated; these are older names that will be removed in favor of
+ * the simpler definitions above.
  */
-#define	ARCHIVE_API_FEATURE	((ARCHIVE_VERSION_STAMP / 1000) % 1000)
+#define	ARCHIVE_VERSION_STAMP	ARCHIVE_VERSION_NUMBER
+int		archive_version_stamp(void);
+#define	ARCHIVE_LIBRARY_VERSION	"libarchive @LIBARCHIVE_VERSION_STRING@"
+const char *	archive_version(void);
+#define	ARCHIVE_API_VERSION	(ARCHIVE_VERSION_NUMBER / 1000000)
+int		archive_api_version(void);
+#define	ARCHIVE_API_FEATURE	((ARCHIVE_VERSION_NUMBER / 1000) % 1000)
 int		archive_api_feature(void);
+#endif
 
-
+#if ARCHIVE_VERSION_NUMBER < 3000000
+/* This should never have been here in the first place. */
+/* Legacy of old tar assumptions, will be removed in libarchive 3.0. */
 #define	ARCHIVE_BYTES_PER_RECORD	  512
 #define	ARCHIVE_DEFAULT_BYTES_PER_BLOCK	10240
+#endif
 
 /* Declare our basic types. */
 struct archive;
@@ -119,6 +114,7 @@
 #define	ARCHIVE_WARN	(-20)	/* Partial success. */
 /* For example, if write_header "fails", then you can't push data. */
 #define	ARCHIVE_FAILED	(-25)	/* Current operation cannot complete. */
+/* But if write_header is "fatal," then this archive is dead and useless. */
 #define	ARCHIVE_FATAL	(-30)	/* No more operations are possible. */
 
 /*
@@ -146,7 +142,7 @@
 typedef ssize_t	archive_read_callback(struct archive *, void *_client_data,
 		    const void **_buffer);
 /* Skips at most request bytes from archive and returns the skipped amount */
-#if ARCHIVE_API_VERSION < 2
+#if ARCHIVE_VERSION_NUMBER < 2000000
 typedef ssize_t	archive_skip_callback(struct archive *, void *_client_data,
 		    size_t request);
 #else
@@ -370,7 +366,7 @@
 int		 archive_read_close(struct archive *);
 /* Release all resources and destroy the object. */
 /* Note that archive_read_finish will call archive_read_close for you. */
-#if ARCHIVE_API_VERSION > 1
+#if ARCHIVE_VERSION_NUMBER >= 2000000
 int		 archive_read_finish(struct archive *);
 #else
 /* Temporarily allow library to compile with either 1.x or 2.0 API. */
@@ -407,6 +403,7 @@
 int		 archive_write_set_skip_file(struct archive *, dev_t, ino_t);
 
 int		 archive_write_set_compression_bzip2(struct archive *);
+int		 archive_write_set_compression_compress(struct archive *);
 int		 archive_write_set_compression_gzip(struct archive *);
 int		 archive_write_set_compression_none(struct archive *);
 int		 archive_write_set_compression_program(struct archive *,
@@ -445,7 +442,7 @@
  */
 int		 archive_write_header(struct archive *,
 		     struct archive_entry *);
-#if ARCHIVE_API_VERSION > 1
+#if ARCHIVE_VERSION_NUMBER >= 2000000
 ssize_t		 archive_write_data(struct archive *, const void *, size_t);
 #else
 /* Temporarily allow library to compile with either 1.x or 2.0 API. */
@@ -455,7 +452,7 @@
 ssize_t		 archive_write_data_block(struct archive *, const void *, size_t, off_t);
 int		 archive_write_finish_entry(struct archive *);
 int		 archive_write_close(struct archive *);
-#if ARCHIVE_API_VERSION > 1
+#if ARCHIVE_VERSION_NUMBER >= 2000000
 int		 archive_write_finish(struct archive *);
 #else
 /* Temporarily allow library to compile with either 1.x or 2.0 API. */

==== //depot/projects/hammer/lib/libarchive/archive_entry.3#16 (text+ko) ====

@@ -22,7 +22,7 @@
 .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.\" $FreeBSD: src/lib/libarchive/archive_entry.3,v 1.16 2008/03/10 14:44:40 jkoshy Exp $
+.\" $FreeBSD: src/lib/libarchive/archive_entry.3,v 1.17 2008/03/14 23:00:53 kientzle Exp $
 .\"
 .Dd December 15, 2003
 .Dt archive_entry 3
@@ -45,6 +45,8 @@
 .Nm archive_entry_copy_gname_w ,
 .Nm archive_entry_copy_hardlink ,
 .Nm archive_entry_copy_hardlink_w ,
+.Nm archive_entry_copy_link ,
+.Nm archive_entry_copy_link_w ,
 .Nm archive_entry_copy_pathname_w ,
 .Nm archive_entry_copy_stat ,
 .Nm archive_entry_copy_symlink ,

==== //depot/projects/hammer/lib/libarchive/archive_entry.c#33 (text+ko) ====

@@ -24,7 +24,7 @@
  */
 
 #include "archive_platform.h"
-__FBSDID("$FreeBSD: src/lib/libarchive/archive_entry.c,v 1.45 2007/12/30 04:58:21 kientzle Exp $");
+__FBSDID("$FreeBSD: src/lib/libarchive/archive_entry.c,v 1.51 2008/03/14 23:19:46 kientzle Exp $");
 
 #ifdef HAVE_SYS_STAT_H
 #include <sys/stat.h>
@@ -207,6 +207,8 @@
 static const wchar_t *
 aes_get_wcs(struct aes *aes)
 {
+	int r;
+
 	if (aes->aes_wcs == NULL && aes->aes_mbs == NULL)
 		return NULL;
 	if (aes->aes_wcs == NULL && aes->aes_mbs != NULL) {
@@ -221,8 +223,13 @@
 		aes->aes_wcs = aes->aes_wcs_alloc;
 		if (aes->aes_wcs == NULL)
 			__archive_errx(1, "No memory for aes_get_wcs()");
-		mbstowcs(aes->aes_wcs_alloc, aes->aes_mbs, wcs_length);
+		r = mbstowcs(aes->aes_wcs_alloc, aes->aes_mbs, wcs_length);
 		aes->aes_wcs_alloc[wcs_length] = 0;
+		if (r == -1) {
+			/* Conversion failed, don't lie to our clients. */
+			free(aes->aes_wcs_alloc);
+			aes->aes_wcs = aes->aes_wcs_alloc = NULL;
+		}
 	}
 	return (aes->aes_wcs);
 }
@@ -307,6 +314,8 @@
 struct archive_entry *
 archive_entry_clear(struct archive_entry *entry)
 {
+	if (entry == NULL)
+		return (NULL);
 	aes_clean(&entry->ae_fflags_text);
 	aes_clean(&entry->ae_gname);
 	aes_clean(&entry->ae_hardlink);
@@ -752,6 +761,28 @@
 		aes_set_mbs(&entry->ae_hardlink, target);
 }
 
+/* Set symlink if symlink is already set, else set hardlink. */
+void
+archive_entry_copy_link(struct archive_entry *entry, const char *target)
+{
+	if (entry->ae_symlink.aes_mbs != NULL ||
+	    entry->ae_symlink.aes_wcs != NULL)
+		aes_copy_mbs(&entry->ae_symlink, target);
+	else
+		aes_copy_mbs(&entry->ae_hardlink, target);
+}
+
+/* Set symlink if symlink is already set, else set hardlink. */
+void
+archive_entry_copy_link_w(struct archive_entry *entry, const wchar_t *target)
+{
+	if (entry->ae_symlink.aes_mbs != NULL ||
+	    entry->ae_symlink.aes_wcs != NULL)
+		aes_copy_wcs(&entry->ae_symlink, target);
+	else
+		aes_copy_wcs(&entry->ae_hardlink, target);
+}
+
 void
 archive_entry_set_mode(struct archive_entry *entry, mode_t m)
 {
@@ -1124,6 +1155,11 @@
 		entry->acl_p = entry->acl_p->next;
 	if (entry->acl_p == NULL) {
 		entry->acl_state = 0;
+		*type = 0;
+		*permset = 0;
+		*tag = 0;
+		*id = -1;
+		*name = NULL;
 		return (ARCHIVE_EOF); /* End of ACL entries. */
 	}
 	*type = entry->acl_p->type;
@@ -1143,7 +1179,7 @@
 archive_entry_acl_text_w(struct archive_entry *entry, int flags)
 {
 	int count;
-	int length;
+	size_t length;
 	const wchar_t *wname;
 	const wchar_t *prefix;
 	wchar_t separator;
@@ -1505,7 +1541,7 @@
 		return (ARCHIVE_OK);
 	} else {
 		*name = NULL;
-		*name = NULL;
+		*value = NULL;
 		*size = (size_t)0;
 		return (ARCHIVE_WARN);
 	}

==== //depot/projects/hammer/lib/libarchive/archive_entry.h#22 (text+ko) ====

@@ -22,7 +22,7 @@
  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
  *
- * $FreeBSD: src/lib/libarchive/archive_entry.h,v 1.24 2007/12/30 04:58:21 kientzle Exp $
+ * $FreeBSD: src/lib/libarchive/archive_entry.h,v 1.26 2008/03/14 23:00:53 kientzle Exp $
  */
 
 #ifndef ARCHIVE_ENTRY_H_INCLUDED
@@ -57,7 +57,25 @@
 struct archive_entry;
 
 /*
- * File-type constants.  These are returned from archive_entry_filetype().
+ * File-type constants.  These are returned from archive_entry_filetype()
+ * and passed to archive_entry_set_filetype().
+ *
+ * These values match S_XXX defines on every platform I've checked,
+ * including Windows, AIX, Linux, Solaris, and BSD.  They're
+ * (re)defined here because platforms generally don't define the ones
+ * they don't support.  For example, Windows doesn't define S_IFLNK or
+ * S_IFBLK.  Instead of having a mass of conditional logic and system
+ * checks to define any S_XXX values that aren't supported locally,
+ * I've just defined a new set of such constants so that
+ * libarchive-based applications can manipulate and identify archive
+ * entries properly even if the hosting platform can't store them on
+ * disk.
+ *
+ * These values are also used directly within some portable formats,
+ * such as cpio.  If you find a platform that varies from these, the
+ * correct solution is to leave these alone and translate from these
+ * portable values to platform-native values when entries are read from
+ * or written to disk.
  */
 #define	AE_IFMT		0170000
 #define	AE_IFREG	0100000
@@ -91,7 +109,8 @@
 dev_t			 archive_entry_devminor(struct archive_entry *);
 mode_t			 archive_entry_filetype(struct archive_entry *);
 void			 archive_entry_fflags(struct archive_entry *,
-			     unsigned long *set, unsigned long *clear);
+			    unsigned long * /* set */,
+			    unsigned long * /* clear */);
 const char		*archive_entry_fflags_text(struct archive_entry *);
 gid_t			 archive_entry_gid(struct archive_entry *);
 const char		*archive_entry_gname(struct archive_entry *);
@@ -130,7 +149,7 @@
 void	archive_entry_set_devminor(struct archive_entry *, dev_t);
 void	archive_entry_set_filetype(struct archive_entry *, unsigned int);
 void	archive_entry_set_fflags(struct archive_entry *,
-	    unsigned long set, unsigned long clear);
+	    unsigned long /* set */, unsigned long /* clear */);
 /* Returns pointer to start of first invalid token, or NULL if none. */
 /* Note that all recognized tokens are processed, regardless. */
 const wchar_t *archive_entry_copy_fflags_text_w(struct archive_entry *,
@@ -144,6 +163,8 @@
 void	archive_entry_copy_hardlink_w(struct archive_entry *, const wchar_t *);
 void	archive_entry_set_ino(struct archive_entry *, unsigned long);
 void	archive_entry_set_link(struct archive_entry *, const char *);
+void	archive_entry_copy_link(struct archive_entry *, const char *);
+void	archive_entry_copy_link_w(struct archive_entry *, const wchar_t *);
 void	archive_entry_set_mode(struct archive_entry *, mode_t);
 void	archive_entry_set_mtime(struct archive_entry *, time_t, long);
 void	archive_entry_set_nlink(struct archive_entry *, unsigned int);
@@ -182,6 +203,13 @@
  *   = there are many different ACL text formats
  *   = would like to be able to read/convert archives containing ACLs
  *     on platforms that lack ACL libraries
+ *
+ *  This last point, in particular, forces me to implement a reasonably
+ *  complete set of ACL support routines.
+ *
+ *  TODO: Extend this to support NFSv4/NTFS permissions.  That should
+ *  allow full ACL support on Mac OS, in particular, which uses
+ *  POSIX.1e-style interfaces to manipulate NFSv4/NTFS permissions.
  */
 
 /*
@@ -216,21 +244,24 @@
  */
 void	 archive_entry_acl_clear(struct archive_entry *);
 void	 archive_entry_acl_add_entry(struct archive_entry *,
-	     int type, int permset, int tag, int qual, const char *name);
+	    int /* type */, int /* permset */, int /* tag */,
+	    int /* qual */, const char * /* name */);
 void	 archive_entry_acl_add_entry_w(struct archive_entry *,
-	     int type, int permset, int tag, int qual, const wchar_t *name);
+	    int /* type */, int /* permset */, int /* tag */,
+	    int /* qual */, const wchar_t * /* name */);
 
 /*
  * To retrieve the ACL, first "reset", then repeatedly ask for the
  * "next" entry.  The want_type parameter allows you to request only
  * access entries or only default entries.
  */
-int	 archive_entry_acl_reset(struct archive_entry *, int want_type);
-int	 archive_entry_acl_next(struct archive_entry *, int want_type,
-	     int *type, int *permset, int *tag, int *qual, const char **name);
-int	 archive_entry_acl_next_w(struct archive_entry *, int want_type,
-	     int *type, int *permset, int *tag, int *qual,
-	     const wchar_t **name);
+int	 archive_entry_acl_reset(struct archive_entry *, int /* want_type */);
+int	 archive_entry_acl_next(struct archive_entry *, int /* want_type */,
+	    int * /* type */, int * /* permset */, int * /* tag */,
+	    int * /* qual */, const char ** /* name */);
+int	 archive_entry_acl_next_w(struct archive_entry *, int /* want_type */,
+	    int * /* type */, int * /* permset */, int * /* tag */,
+	    int * /* qual */, const wchar_t ** /* name */);
 
 /*
  * Construct a text-format ACL.  The flags argument is a bitmask that
@@ -245,10 +276,11 @@
  */
 #define	ARCHIVE_ENTRY_ACL_STYLE_EXTRA_ID	1024
 #define	ARCHIVE_ENTRY_ACL_STYLE_MARK_DEFAULT	2048
-const wchar_t	*archive_entry_acl_text_w(struct archive_entry *, int flags);
+const wchar_t	*archive_entry_acl_text_w(struct archive_entry *,
+		    int /* flags */);
 
 /* Return a count of entries matching 'want_type' */
-int	 archive_entry_acl_count(struct archive_entry *, int want_type);
+int	 archive_entry_acl_count(struct archive_entry *, int /* want_type */);
 
 /*
  * Private ACL parser.  This is private because it handles some
@@ -259,9 +291,12 @@
  * this interface are likely to be surprised when it changes.
  *
  * You were warned!
+ *
+ * TODO: Move this declaration out of the public header and into
+ * a private header.  Warnings above are silly.
  */
 int		 __archive_entry_acl_parse_w(struct archive_entry *,
-		     const wchar_t *, int type);
+		    const wchar_t *, int /* type */);
 
 /*
  * extended attributes

>>> TRUNCATED FOR MAIL (1000 lines) <<<



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