Date: Wed, 12 Nov 2008 09:13:09 GMT From: Ed Schouten <ed@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 152858 for review Message-ID: <200811120913.mAC9D9KQ075959@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=152858 Change 152858 by ed@ed_dull on 2008/11/12 09:12:12 IFC. Affected files ... .. //depot/projects/mpsafetty/Makefile.inc1#6 integrate .. //depot/projects/mpsafetty/cddl/Makefile.inc#2 integrate .. //depot/projects/mpsafetty/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c#2 integrate .. //depot/projects/mpsafetty/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/jdtrace/exception.lst#2 integrate .. //depot/projects/mpsafetty/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c#2 integrate .. //depot/projects/mpsafetty/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c#2 integrate .. //depot/projects/mpsafetty/cddl/contrib/opensolaris/lib/libdtrace/common/dt_proc.c#2 integrate .. //depot/projects/mpsafetty/cddl/contrib/opensolaris/lib/libdtrace/common/dt_proc.h#2 integrate .. //depot/projects/mpsafetty/cddl/contrib/opensolaris/lib/libdtrace/common/dt_program.c#2 integrate .. //depot/projects/mpsafetty/cddl/contrib/opensolaris/lib/libdtrace/common/dtrace.h#2 integrate .. //depot/projects/mpsafetty/lib/libc/amd64/sys/Makefile.inc#2 integrate .. //depot/projects/mpsafetty/lib/libc/arm/sys/Makefile.inc#2 integrate .. //depot/projects/mpsafetty/lib/libc/i386/sys/Makefile.inc#2 integrate .. //depot/projects/mpsafetty/lib/libc/ia64/sys/Makefile.inc#2 integrate .. //depot/projects/mpsafetty/lib/libc/mips/sys/Makefile.inc#2 integrate .. //depot/projects/mpsafetty/lib/libc/powerpc/sys/Makefile.inc#2 integrate .. //depot/projects/mpsafetty/lib/libc/sparc64/sys/Makefile.inc#2 integrate .. //depot/projects/mpsafetty/lib/libc/sys/pipe.2#2 integrate .. //depot/projects/mpsafetty/lib/libc/sys/rename.2#2 integrate .. //depot/projects/mpsafetty/lib/libkvm/Makefile#3 integrate .. //depot/projects/mpsafetty/lib/libkvm/kvm_arm.c#2 integrate .. //depot/projects/mpsafetty/lib/libkvm/kvm_minidump_arm.c#1 branch .. //depot/projects/mpsafetty/lib/libkvm/kvm_private.h#2 integrate .. //depot/projects/mpsafetty/lib/libproc/libproc.h#2 integrate .. //depot/projects/mpsafetty/lib/libproc/proc_create.c#2 integrate .. //depot/projects/mpsafetty/lib/libstand/stand.h#3 integrate .. //depot/projects/mpsafetty/lib/libutil/gr_util.c#2 integrate .. //depot/projects/mpsafetty/share/man/man4/snd_hda.4#7 integrate .. //depot/projects/mpsafetty/sys/amd64/include/pmc_mdep.h#3 integrate .. //depot/projects/mpsafetty/sys/amd64/linux32/linux32_machdep.c#4 integrate .. //depot/projects/mpsafetty/sys/amd64/linux32/linux32_proto.h#2 integrate .. //depot/projects/mpsafetty/sys/amd64/linux32/linux32_syscall.h#2 integrate .. //depot/projects/mpsafetty/sys/amd64/linux32/linux32_sysent.c#2 integrate .. //depot/projects/mpsafetty/sys/amd64/linux32/syscalls.master#2 integrate .. //depot/projects/mpsafetty/sys/arm/arm/dump_machdep.c#4 integrate .. //depot/projects/mpsafetty/sys/arm/arm/minidump_machdep.c#1 branch .. //depot/projects/mpsafetty/sys/arm/arm/pmap.c#4 integrate .. //depot/projects/mpsafetty/sys/arm/include/md_var.h#2 integrate .. //depot/projects/mpsafetty/sys/arm/include/minidump.h#1 branch .. //depot/projects/mpsafetty/sys/arm/include/pmap.h#2 integrate .. //depot/projects/mpsafetty/sys/arm/mv/mv_machdep.c#2 integrate .. //depot/projects/mpsafetty/sys/bsm/audit_internal.h#3 integrate .. //depot/projects/mpsafetty/sys/bsm/audit_record.h#3 integrate .. //depot/projects/mpsafetty/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c#2 integrate .. //depot/projects/mpsafetty/sys/cddl/compat/opensolaris/sys/types.h#2 integrate .. //depot/projects/mpsafetty/sys/cddl/compat/opensolaris/sys/uio.h#2 integrate .. //depot/projects/mpsafetty/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#5 integrate .. //depot/projects/mpsafetty/sys/cddl/contrib/opensolaris/uts/common/dtrace/fasttrap.c#2 integrate .. //depot/projects/mpsafetty/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_acl.c#2 integrate .. //depot/projects/mpsafetty/sys/cddl/dev/dtrace/dtrace_ioctl.c#2 integrate .. //depot/projects/mpsafetty/sys/cddl/dev/dtrace/dtrace_load.c#2 integrate .. //depot/projects/mpsafetty/sys/cddl/dev/dtrace/dtrace_unload.c#2 integrate .. //depot/projects/mpsafetty/sys/cddl/dev/systrace/systrace.c#2 integrate .. //depot/projects/mpsafetty/sys/compat/freebsd32/freebsd32_misc.c#7 integrate .. //depot/projects/mpsafetty/sys/compat/freebsd32/freebsd32_proto.h#11 integrate .. //depot/projects/mpsafetty/sys/compat/freebsd32/freebsd32_syscall.h#11 integrate .. //depot/projects/mpsafetty/sys/compat/freebsd32/freebsd32_syscalls.c#11 integrate .. //depot/projects/mpsafetty/sys/compat/freebsd32/freebsd32_sysent.c#11 integrate .. //depot/projects/mpsafetty/sys/compat/freebsd32/syscalls.master#12 integrate .. //depot/projects/mpsafetty/sys/compat/linux/linux_misc.c#9 integrate .. //depot/projects/mpsafetty/sys/conf/files.amd64#4 integrate .. //depot/projects/mpsafetty/sys/conf/files.arm#3 integrate .. //depot/projects/mpsafetty/sys/conf/files.i386#9 integrate .. //depot/projects/mpsafetty/sys/conf/files.pc98#3 integrate .. //depot/projects/mpsafetty/sys/dev/age/if_age.c#5 integrate .. //depot/projects/mpsafetty/sys/dev/an/if_an.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/cxgb/common/cxgb_ctl_defs.h#2 integrate .. //depot/projects/mpsafetty/sys/dev/cxgb/common/cxgb_t3_hw.c#6 integrate .. //depot/projects/mpsafetty/sys/dev/cxgb/cxgb_main.c#11 integrate .. //depot/projects/mpsafetty/sys/dev/cxgb/cxgb_osdep.h#6 integrate .. //depot/projects/mpsafetty/sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c#10 integrate .. //depot/projects/mpsafetty/sys/dev/cxgb/ulp/tom/cxgb_tom.c#6 integrate .. //depot/projects/mpsafetty/sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c#4 integrate .. //depot/projects/mpsafetty/sys/dev/e1000/if_em.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/e1000/if_igb.c#3 integrate .. //depot/projects/mpsafetty/sys/dev/en/midway.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_amd.c#4 integrate .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_amd.h#2 integrate .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_intel.c#1 branch .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_logging.c#3 integrate .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_mod.c#6 integrate .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_pentium.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_pentium.h#2 integrate .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_piv.c#4 integrate .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_piv.h#2 integrate .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_ppro.c#5 integrate .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_ppro.h#2 integrate .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_tsc.c#1 branch .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_tsc.h#1 branch .. //depot/projects/mpsafetty/sys/dev/hwpmc/hwpmc_x86.c#4 integrate .. //depot/projects/mpsafetty/sys/dev/if_ndis/if_ndis.c#4 integrate .. //depot/projects/mpsafetty/sys/dev/ispfw/ispfw.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/syscons/sysmouse.c#5 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/at91dci.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/at91dci_atmelarm.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/ehci2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/ehci2_pci.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/musb2_otg.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/musb2_otg_atmelarm.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/ohci2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/ohci2_atmelarm.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/ohci2_pci.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/uhci2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/uhci2_pci.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/usb2_bus.h#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/usb2_controller.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/uss820dci.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/uss820dci_atmelarm.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/controller/uss820dci_pccard.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/core/usb2_busdma.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/core/usb2_core.h#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/core/usb2_device.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/core/usb2_handle_request.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/core/usb2_hub.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/core/usb2_request.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/core/usb2_sw_transfer.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/core/usb2_transfer.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/core/usb2_transfer.h#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/uark2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/ubsa2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/ubser2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/uchcom2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/ucycom2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/ufoma2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/uftdi2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/ugensa2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/uipaq2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/umct2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/umodem2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/umoscom2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/uplcom2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/usb2_serial.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/uvisor2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/serial/uvscom2.c#2 integrate .. //depot/projects/mpsafetty/sys/dev/usb2/storage/ata-usb2.c#2 integrate .. //depot/projects/mpsafetty/sys/geom/part/g_part_gpt.c#3 integrate .. //depot/projects/mpsafetty/sys/i386/include/pmc_mdep.h#4 integrate .. //depot/projects/mpsafetty/sys/i386/linux/linux_machdep.c#2 integrate .. //depot/projects/mpsafetty/sys/i386/linux/linux_proto.h#2 integrate .. //depot/projects/mpsafetty/sys/i386/linux/linux_syscall.h#2 integrate .. //depot/projects/mpsafetty/sys/i386/linux/linux_sysent.c#2 integrate .. //depot/projects/mpsafetty/sys/i386/linux/syscalls.master#2 integrate .. //depot/projects/mpsafetty/sys/kern/init_sysent.c#7 integrate .. //depot/projects/mpsafetty/sys/kern/kern_exec.c#9 integrate .. //depot/projects/mpsafetty/sys/kern/kern_mbuf.c#2 integrate .. //depot/projects/mpsafetty/sys/kern/kern_xxx.c#4 integrate .. //depot/projects/mpsafetty/sys/kern/subr_firmware.c#3 integrate .. //depot/projects/mpsafetty/sys/kern/sys_pipe.c#2 integrate .. //depot/projects/mpsafetty/sys/kern/syscalls.c#6 integrate .. //depot/projects/mpsafetty/sys/kern/syscalls.master#8 integrate .. //depot/projects/mpsafetty/sys/kern/systrace_args.c#5 integrate .. //depot/projects/mpsafetty/sys/kern/tty.c#66 integrate .. //depot/projects/mpsafetty/sys/kern/tty_ttydisc.c#26 integrate .. //depot/projects/mpsafetty/sys/kern/vfs_syscalls.c#10 integrate .. //depot/projects/mpsafetty/sys/modules/hwpmc/Makefile#2 integrate .. //depot/projects/mpsafetty/sys/modules/krpc/Makefile#2 integrate .. //depot/projects/mpsafetty/sys/modules/nfsserver/Makefile#3 integrate .. //depot/projects/mpsafetty/sys/modules/zfs/Makefile#2 integrate .. //depot/projects/mpsafetty/sys/net/if.c#9 integrate .. //depot/projects/mpsafetty/sys/net/if_fddisubr.c#3 integrate .. //depot/projects/mpsafetty/sys/net/if_fwsubr.c#3 integrate .. //depot/projects/mpsafetty/sys/net/if_iso88025subr.c#4 integrate .. //depot/projects/mpsafetty/sys/net/radix_mpath.c#3 integrate .. //depot/projects/mpsafetty/sys/netgraph/ng_tty.c#11 integrate .. //depot/projects/mpsafetty/sys/netgraph/ng_tty.h#4 integrate .. //depot/projects/mpsafetty/sys/netinet/ip_fw2.c#13 integrate .. //depot/projects/mpsafetty/sys/netinet/tcp_input.c#11 integrate .. //depot/projects/mpsafetty/sys/netinet/tcp_subr.c#9 integrate .. //depot/projects/mpsafetty/sys/netinet/tcp_var.h#4 integrate .. //depot/projects/mpsafetty/sys/nfsserver/nfs_fha.c#2 integrate .. //depot/projects/mpsafetty/sys/nfsserver/nfs_srvsubs.c#5 integrate .. //depot/projects/mpsafetty/sys/security/audit/audit.c#5 integrate .. //depot/projects/mpsafetty/sys/security/audit/audit.h#4 integrate .. //depot/projects/mpsafetty/sys/security/audit/audit_bsm.c#4 integrate .. //depot/projects/mpsafetty/sys/security/audit/audit_bsm_token.c#4 integrate .. //depot/projects/mpsafetty/sys/security/audit/audit_private.h#4 integrate .. //depot/projects/mpsafetty/sys/security/audit/audit_syscalls.c#7 integrate .. //depot/projects/mpsafetty/sys/security/audit/audit_worker.c#5 integrate .. //depot/projects/mpsafetty/sys/sys/cfictl.h#2 integrate .. //depot/projects/mpsafetty/sys/sys/pmc.h#4 integrate .. //depot/projects/mpsafetty/sys/sys/priv.h#4 integrate .. //depot/projects/mpsafetty/sys/sys/syscall.h#6 integrate .. //depot/projects/mpsafetty/sys/sys/syscall.mk#6 integrate .. //depot/projects/mpsafetty/sys/sys/syscallsubr.h#3 integrate .. //depot/projects/mpsafetty/sys/sys/sysent.h#4 integrate .. //depot/projects/mpsafetty/sys/sys/sysproto.h#6 integrate .. //depot/projects/mpsafetty/sys/sys/ttydefaults.h#4 integrate .. //depot/projects/mpsafetty/sys/vm/vm_page.c#4 integrate .. //depot/projects/mpsafetty/sys/xdr/xdr_mbuf.c#3 integrate .. //depot/projects/mpsafetty/tools/regression/fstest/tests/misc.sh#2 integrate .. //depot/projects/mpsafetty/tools/regression/fstest/tests/rename/21.t#1 branch .. //depot/projects/mpsafetty/tools/regression/usr.bin/sed/regress.not.out#1 branch .. //depot/projects/mpsafetty/tools/regression/usr.bin/sed/regress.sh#2 integrate .. //depot/projects/mpsafetty/usr.bin/du/du.1#2 integrate .. //depot/projects/mpsafetty/usr.bin/du/du.c#3 integrate .. //depot/projects/mpsafetty/usr.bin/fstat/zfs/Makefile#2 integrate .. //depot/projects/mpsafetty/usr.bin/sed/compile.c#2 integrate .. //depot/projects/mpsafetty/usr.bin/tar/Makefile#3 integrate .. //depot/projects/mpsafetty/usr.bin/tar/bsdtar.1#3 integrate .. //depot/projects/mpsafetty/usr.bin/tar/bsdtar.c#3 integrate .. //depot/projects/mpsafetty/usr.bin/tar/bsdtar.h#3 integrate .. //depot/projects/mpsafetty/usr.bin/tar/cmdline.c#1 branch .. //depot/projects/mpsafetty/usr.bin/tar/config_freebsd.h#3 integrate .. //depot/projects/mpsafetty/usr.bin/tar/test/Makefile#4 integrate .. //depot/projects/mpsafetty/usr.bin/tar/test/test_strip_components.c#1 branch .. //depot/projects/mpsafetty/usr.bin/tar/util.c#2 integrate .. //depot/projects/mpsafetty/usr.sbin/cron/cron/cron.h#2 integrate .. //depot/projects/mpsafetty/usr.sbin/cron/crontab/Makefile#2 integrate .. //depot/projects/mpsafetty/usr.sbin/cron/crontab/crontab.c#2 integrate .. //depot/projects/mpsafetty/usr.sbin/cron/lib/Makefile#2 integrate .. //depot/projects/mpsafetty/usr.sbin/cron/lib/entry.c#2 integrate .. //depot/projects/mpsafetty/usr.sbin/cron/lib/misc.c#2 integrate .. //depot/projects/mpsafetty/usr.sbin/mergemaster/mergemaster.sh#2 integrate .. //depot/projects/mpsafetty/usr.sbin/pmccontrol/pmccontrol.8#2 integrate .. //depot/projects/mpsafetty/usr.sbin/pmccontrol/pmccontrol.c#2 integrate .. //depot/projects/mpsafetty/usr.sbin/sysinstall/dist.c#3 integrate Differences ... ==== //depot/projects/mpsafetty/Makefile.inc1#6 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.613 2008/10/23 16:06:49 des Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.614 2008/11/12 04:43:55 obrien Exp $ # # Make command line options: # -DNO_CLEANDIR run ${MAKE} clean, instead of ${MAKE} cleandir @@ -506,6 +506,9 @@ .if ${MK_CRYPT} != "no" cd ${.CURDIR}/secure/lib; ${LIB32IMAKE} ${.TARGET:S/32$//} .endif +.if ${MK_KERBEROS} != "no" + cd ${.CURDIR}/kerberos5/lib; ${LIB32IMAKE} ${.TARGET:S/32$//} +.endif cd ${.CURDIR}/libexec/rtld-elf; \ PROG=ld-elf32.so.1 ${LIB32IMAKE} ${.TARGET:S/32$//} cd ${.CURDIR}/usr.bin/ldd; PROG=ldd32 ${LIB32IMAKE} ${.TARGET:S/32$//} ==== //depot/projects/mpsafetty/cddl/Makefile.inc#2 (text+ko) ==== @@ -1,6 +1,8 @@ -# $FreeBSD: src/cddl/Makefile.inc,v 1.4 2008/03/27 23:21:23 jb Exp $ +# $FreeBSD: src/cddl/Makefile.inc,v 1.5 2008/11/05 19:35:09 rodrigc Exp $ OPENSOLARIS_USR_DISTDIR= ${.CURDIR}/../../../cddl/contrib/opensolaris OPENSOLARIS_SYS_DISTDIR= ${.CURDIR}/../../../sys/cddl/contrib/opensolaris IGNORE_PRAGMA= YES + +CFLAGS+= -DNEED_SOLARIS_BOOLEAN ==== //depot/projects/mpsafetty/cddl/contrib/opensolaris/cmd/dtrace/dtrace.c#2 (text+ko) ==== @@ -1576,7 +1576,7 @@ if ((v = make_argv(optarg)) == NULL) fatal("failed to allocate memory"); - P = dtrace_proc_create(g_dtp, v[0], v); + P = dtrace_proc_create(g_dtp, v[0], v, NULL, NULL); if (P == NULL) dfatal(NULL); /* dtrace_errmsg() only */ ==== //depot/projects/mpsafetty/cddl/contrib/opensolaris/cmd/dtrace/test/cmd/jdtrace/exception.lst#2 (text+ko) ==== @@ -23,7 +23,7 @@ # Copyright 2008 Sun Microsystems, Inc. All rights reserved. # Use is subject to license terms. # -#ident "%Z%%M% %I% %E% SMI" +# ident "%Z%%M% %I% %E% SMI" # Exception list: names tests that are bypassed when running in Java # mode (relative to /opt/SUNWdtrt/tst) @@ -49,6 +49,7 @@ common/usdt/tst.dlclose3.ksh common/usdt/tst.eliminate.ksh common/usdt/tst.enabled.ksh +common/usdt/tst.enabled2.ksh common/usdt/tst.entryreturn.ksh common/usdt/tst.fork.ksh common/usdt/tst.header.ksh ==== //depot/projects/mpsafetty/cddl/contrib/opensolaris/lib/libdtrace/common/dt_link.c#2 (text+ko) ==== @@ -868,15 +868,19 @@ /* * We may have already processed this object file in an earlier linker * invocation. Check to see if the present instruction sequence matches - * the one we would install. + * the one we would install below. */ if (isenabled) { - if (ip[0] == DT_OP_CLR_O0) + if (ip[0] == DT_OP_NOP) { + (*off) += sizeof (ip[0]); return (0); + } } else { if (DT_IS_RESTORE(ip[1])) { - if (ip[0] == DT_OP_RET) + if (ip[0] == DT_OP_RET) { + (*off) += sizeof (ip[0]); return (0); + } } else if (DT_IS_MOV_O7(ip[1])) { if (DT_IS_RETL(ip[0])) return (0); @@ -910,7 +914,17 @@ return (-1); } - ip[0] = DT_OP_CLR_O0; + + /* + * On SPARC, we take advantage of the fact that the first + * argument shares the same register as for the return value. + * The macro handles the work of zeroing that register so we + * don't need to do anything special here. We instrument the + * instruction in the delay slot as we'll need to modify the + * return register after that instruction has been emulated. + */ + ip[0] = DT_OP_NOP; + (*off) += sizeof (ip[0]); } else { /* * If the call is followed by a restore, it's a tail call so @@ -919,11 +933,16 @@ * so change the call to a retl-like instruction that returns * to that register value + 8 (rather than the typical %o7 + * 8); the delay slot instruction is left, but should have no - * effect. Otherwise we change the call to be a nop. In the - * first and the last case we adjust the offset to land on what - * was once the delay slot of the call so we correctly get all - * the arguments as they would have been passed in a normal - * function call. + * effect. Otherwise we change the call to be a nop. We + * identify the subsequent instruction as the probe point in + * all but the leaf tail-call case to ensure that arguments to + * the probe are complete and consistent. An astute, though + * largely hypothetical, observer would note that there is the + * possibility of a false-positive probe firing if the function + * contained a branch to the instruction in the delay slot of + * the call. Fixing this would require significant in-kernel + * modifications, and isn't worth doing until we see it in the + * wild. */ if (DT_IS_RESTORE(ip[1])) { ip[0] = DT_OP_RET; ==== //depot/projects/mpsafetty/cddl/contrib/opensolaris/lib/libdtrace/common/dt_open.c#2 (text+ko) ==== @@ -115,8 +115,9 @@ #define DT_VERS_1_5 DT_VERSION_NUMBER(1, 5, 0) #define DT_VERS_1_6 DT_VERSION_NUMBER(1, 6, 0) #define DT_VERS_1_6_1 DT_VERSION_NUMBER(1, 6, 1) -#define DT_VERS_LATEST DT_VERS_1_6_1 -#define DT_VERS_STRING "Sun D 1.6.1" +#define DT_VERS_1_6_2 DT_VERSION_NUMBER(1, 6, 2) +#define DT_VERS_LATEST DT_VERS_1_6_2 +#define DT_VERS_STRING "Sun D 1.6.2" const dt_version_t _dtrace_versions[] = { DT_VERS_1_0, /* D API 1.0.0 (PSARC 2001/466) Solaris 10 FCS */ @@ -130,6 +131,7 @@ DT_VERS_1_5, /* D API 1.5 Solaris Express 7/07 */ DT_VERS_1_6, /* D API 1.6 */ DT_VERS_1_6_1, /* D API 1.6.1 */ + DT_VERS_1_6_2, /* D API 1.6.2 */ 0 }; ==== //depot/projects/mpsafetty/cddl/contrib/opensolaris/lib/libdtrace/common/dt_proc.c#2 (text+ko) ==== @@ -955,7 +955,8 @@ } struct ps_prochandle * -dt_proc_create(dtrace_hdl_t *dtp, const char *file, char *const *argv) +dt_proc_create(dtrace_hdl_t *dtp, const char *file, char *const *argv, + proc_child_func *pcf, void *child_arg) { dt_proc_hash_t *dph = dtp->dt_procs; dt_proc_t *dpr; @@ -981,7 +982,7 @@ #else (void) proc_clearflags(dpr->dpr_proc, PR_RLC); (void) proc_setflags(dpr->dpr_proc, PR_KLC); - if ((err = proc_create(file, argv, &dpr->dpr_proc)) != 0) + if ((err = proc_create(file, argv, pcf, child_arg, &dpr->dpr_proc)) != 0) return (dt_proc_error(dtp, dpr, "failed to execute %s: %s\n", file, strerror(err))); dpr->dpr_hdl = dtp; @@ -1183,10 +1184,11 @@ } struct ps_prochandle * -dtrace_proc_create(dtrace_hdl_t *dtp, const char *file, char *const *argv) +dtrace_proc_create(dtrace_hdl_t *dtp, const char *file, char *const *argv, + proc_child_func *pcf, void *child_arg) { dt_ident_t *idp = dt_idhash_lookup(dtp->dt_macros, "target"); - struct ps_prochandle *P = dt_proc_create(dtp, file, argv); + struct ps_prochandle *P = dt_proc_create(dtp, file, argv, pcf, child_arg); if (P != NULL && idp != NULL && idp->di_id == 0) #if defined(sun) ==== //depot/projects/mpsafetty/cddl/contrib/opensolaris/lib/libdtrace/common/dt_proc.h#2 (text+ko) ==== @@ -99,7 +99,7 @@ } dt_proc_hash_t; extern struct ps_prochandle *dt_proc_create(dtrace_hdl_t *, - const char *, char *const *); + const char *, char *const *, proc_child_func *, void *); extern struct ps_prochandle *dt_proc_grab(dtrace_hdl_t *, pid_t, int, int); extern void dt_proc_release(dtrace_hdl_t *, struct ps_prochandle *); ==== //depot/projects/mpsafetty/cddl/contrib/opensolaris/lib/libdtrace/common/dt_program.c#2 (text+ko) ==== @@ -20,7 +20,7 @@ */ /* - * Copyright 2006 Sun Microsystems, Inc. All rights reserved. + * Copyright 2008 Sun Microsystems, Inc. All rights reserved. * Use is subject to license terms. */ @@ -436,8 +436,13 @@ if (fprintf(infop->dthi_out, ");\n") < 0) return (dt_set_errno(dtp, errno)); - if (fprintf(infop->dthi_out, "extern int " - "__dtraceenabled_%s___%s(void);\n", infop->dthi_pfname, fname) < 0) + if (fprintf(infop->dthi_out, + "#ifndef\t__sparc\n" + "extern int __dtraceenabled_%s___%s(void);\n" + "#else\n" + "extern int __dtraceenabled_%s___%s(long);\n" + "#endif\n", + infop->dthi_pfname, fname, infop->dthi_pfname, fname) < 0) return (dt_set_errno(dtp, errno)); return (0); @@ -499,13 +504,20 @@ return (dt_set_errno(dtp, errno)); if (!infop->dthi_empty) { - if (fprintf(infop->dthi_out, "#define\t%s_%s_ENABLED() \\\n", - infop->dthi_pmname, mname) < 0) + if (fprintf(infop->dthi_out, + "#ifndef\t__sparc\n" + "#define\t%s_%s_ENABLED() \\\n" + "\t__dtraceenabled_%s___%s()\n" + "#else\n" + "#define\t%s_%s_ENABLED() \\\n" + "\t__dtraceenabled_%s___%s(0)\n" + "#endif\n", + infop->dthi_pmname, mname, + infop->dthi_pfname, fname, + infop->dthi_pmname, mname, + infop->dthi_pfname, fname) < 0) return (dt_set_errno(dtp, errno)); - if (fprintf(infop->dthi_out, "\t__dtraceenabled_%s___%s()\n", - infop->dthi_pfname, fname) < 0) - return (dt_set_errno(dtp, errno)); } else { if (fprintf(infop->dthi_out, "#define\t%s_%s_ENABLED() (0)\n", infop->dthi_pmname, mname) < 0) ==== //depot/projects/mpsafetty/cddl/contrib/opensolaris/lib/libdtrace/common/dtrace.h#2 (text+ko) ==== @@ -33,6 +33,7 @@ #include <stdarg.h> #include <stdio.h> #include <gelf.h> +#include <libproc.h> #ifdef __cplusplus extern "C" { @@ -413,7 +414,7 @@ */ extern struct ps_prochandle *dtrace_proc_create(dtrace_hdl_t *, - const char *, char *const *); + const char *, char *const *, proc_child_func *, void *); extern struct ps_prochandle *dtrace_proc_grab(dtrace_hdl_t *, pid_t, int); extern void dtrace_proc_release(dtrace_hdl_t *, struct ps_prochandle *); ==== //depot/projects/mpsafetty/lib/libc/amd64/sys/Makefile.inc#2 (text+ko) ==== @@ -1,5 +1,5 @@ # from: Makefile.inc,v 1.1 1993/09/03 19:04:23 jtc Exp -# $FreeBSD: src/lib/libc/amd64/sys/Makefile.inc,v 1.30 2007/07/04 23:23:00 peter Exp $ +# $FreeBSD: src/lib/libc/amd64/sys/Makefile.inc,v 1.31 2008/11/09 10:45:13 ed Exp $ SRCS+= amd64_get_fsbase.c amd64_get_gsbase.c amd64_set_fsbase.c amd64_set_gsbase.c @@ -7,8 +7,7 @@ reboot.S sbrk.S setlogin.S sigreturn.S # Don't generate default code for these syscalls: -NOASM= break.o exit.o getdomainname.o getlogin.o openbsd_poll.o \ - setdomainname.o sstk.o uname.o vfork.o yield.o +NOASM= break.o exit.o getlogin.o openbsd_poll.o sstk.o vfork.o yield.o PSEUDO= _getlogin.o _exit.o .if !defined(WITHOUT_SYSCALL_COMPAT) ==== //depot/projects/mpsafetty/lib/libc/arm/sys/Makefile.inc#2 (text+ko) ==== @@ -1,10 +1,9 @@ -# $FreeBSD: src/lib/libc/arm/sys/Makefile.inc,v 1.3 2007/07/04 23:23:00 peter Exp $ +# $FreeBSD: src/lib/libc/arm/sys/Makefile.inc,v 1.4 2008/11/09 10:45:13 ed Exp $ MDASM= Ovfork.S brk.S cerror.S pipe.S ptrace.S sbrk.S shmat.S sigreturn.S syscall.S # Don't generate default code for these syscalls: -NOASM= break.o exit.o getdomainname.o getlogin.o openbsd_poll.o \ - setdomainname.o sstk.o uname.o vfork.o yield.o +NOASM= break.o exit.o getlogin.o openbsd_poll.o sstk.o vfork.o yield.o PSEUDO= _exit.o _getlogin.o .if !defined(WITHOUT_SYSCALL_COMPAT) ==== //depot/projects/mpsafetty/lib/libc/i386/sys/Makefile.inc#2 (text+ko) ==== @@ -1,5 +1,5 @@ # from: Makefile.inc,v 1.1 1993/09/03 19:04:23 jtc Exp -# $FreeBSD: src/lib/libc/i386/sys/Makefile.inc,v 1.32 2007/07/04 23:23:00 peter Exp $ +# $FreeBSD: src/lib/libc/i386/sys/Makefile.inc,v 1.33 2008/11/09 10:45:13 ed Exp $ .if !defined(COMPAT_32BIT) SRCS+= i386_clr_watch.c i386_get_ioperm.c \ @@ -12,8 +12,7 @@ reboot.S sbrk.S setlogin.S sigreturn.S syscall.S # Don't generate default code for these syscalls: -NOASM= break.o exit.o getdomainname.o getlogin.o openbsd_poll.o \ - setdomainname.o sstk.o uname.o vfork.o yield.o +NOASM= break.o exit.o getlogin.o openbsd_poll.o sstk.o vfork.o yield.o PSEUDO= _getlogin.o _exit.o .if !defined(WITHOUT_SYSCALL_COMPAT) ==== //depot/projects/mpsafetty/lib/libc/ia64/sys/Makefile.inc#2 (text+ko) ==== @@ -1,11 +1,10 @@ -# $FreeBSD: src/lib/libc/ia64/sys/Makefile.inc,v 1.9 2007/07/04 23:23:00 peter Exp $ +# $FreeBSD: src/lib/libc/ia64/sys/Makefile.inc,v 1.10 2008/11/09 10:45:13 ed Exp $ MDASM+= Ovfork.S brk.S cerror.S exect.S fork.S getcontext.S pipe.S ptrace.S \ sbrk.S setlogin.S sigreturn.S swapcontext.S # Don't generate default code for these syscalls: -NOASM= break.o exit.o getdomainname.o getlogin.o openbsd_poll.o \ - setdomainname.o sstk.o uname.o vfork.o yield.o +NOASM= break.o exit.o getlogin.o openbsd_poll.o sstk.o vfork.o yield.o PSEUDO= _getlogin.o _exit.o .if !defined(WITHOUT_SYSCALL_COMPAT) ==== //depot/projects/mpsafetty/lib/libc/mips/sys/Makefile.inc#2 (text+ko) ==== @@ -1,12 +1,11 @@ -# $FreeBSD: src/lib/libc/mips/sys/Makefile.inc,v 1.3 2008/04/26 12:08:02 imp Exp $ +# $FreeBSD: src/lib/libc/mips/sys/Makefile.inc,v 1.4 2008/11/09 10:45:13 ed Exp $ MDASM= Ovfork.S brk.S cerror.S exect.S \ fork.S pipe.S ptrace.S sbrk.S shmat.S syscall.S # Don't generate default code for these syscalls: -NOASM= break.o exit.o ftruncate.o getdomainname.o getlogin.o \ - lseek.o mmap.o openbsd_poll.o pread.o \ - pwrite.o setdomainname.o sstk.o truncate.o uname.o vfork.o yield.o +NOASM= break.o exit.o ftruncate.o getlogin.o lseek.o mmap.o \ + openbsd_poll.o pread.o pwrite.o sstk.o truncate.o vfork.o yield.o PSEUDO= _exit.o _getlogin.o .if !defined(WITHOUT_SYSCALL_COMPAT) ==== //depot/projects/mpsafetty/lib/libc/powerpc/sys/Makefile.inc#2 (text+ko) ==== @@ -1,10 +1,9 @@ -# $FreeBSD: src/lib/libc/powerpc/sys/Makefile.inc,v 1.3 2007/07/04 23:23:00 peter Exp $ +# $FreeBSD: src/lib/libc/powerpc/sys/Makefile.inc,v 1.4 2008/11/09 10:45:13 ed Exp $ MDASM+= brk.S cerror.S exect.S pipe.S ptrace.S sbrk.S setlogin.S # Don't generate default code for these syscalls: -NOASM= break.o exit.o getdomainname.o getlogin.o openbsd_poll.o \ - setdomainname.o sstk.o uname.o yield.o +NOASM= break.o exit.o getlogin.o openbsd_poll.o sstk.o yield.o PSEUDO= _getlogin.o _exit.o .if !defined(WITHOUT_SYSCALL_COMPAT) ==== //depot/projects/mpsafetty/lib/libc/sparc64/sys/Makefile.inc#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libc/sparc64/sys/Makefile.inc,v 1.11 2007/07/04 23:23:01 peter Exp $ +# $FreeBSD: src/lib/libc/sparc64/sys/Makefile.inc,v 1.12 2008/11/09 10:45:13 ed Exp $ SRCS+= __sparc_sigtramp_setup.c \ __sparc_utrap.c \ @@ -18,8 +18,7 @@ MDASM+= brk.S cerror.S exect.S pipe.S ptrace.S sbrk.S setlogin.S sigaction.S # Don't generate default code for these syscalls: -NOASM= break.o exit.o getdomainname.o getlogin.o openbsd_poll.o \ - setdomainname.o sstk.o uname.o yield.o +NOASM= break.o exit.o getlogin.o openbsd_poll.o sstk.o yield.o PSEUDO= _getlogin.o _exit.o .if !defined(WITHOUT_SYSCALL_COMPAT) ==== //depot/projects/mpsafetty/lib/libc/sys/pipe.2#2 (text+ko) ==== @@ -26,7 +26,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)pipe.2 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/sys/pipe.2,v 1.23 2007/01/09 00:28:15 imp Exp $ +.\" $FreeBSD: src/lib/libc/sys/pipe.2,v 1.24 2008/11/11 14:55:59 ed Exp $ .\" .Dd January 30, 2006 .Dt PIPE 2 @@ -39,7 +39,7 @@ .Sh SYNOPSIS .In unistd.h .Ft int -.Fn pipe "int *fildes" +.Fn pipe "int fildes[2]" .Sh DESCRIPTION The .Fn pipe @@ -96,11 +96,6 @@ The system file table is full. .It Bq Er ENOMEM Not enough kernel memory to establish a pipe. -.It Bq Er EFAULT -The -.Fa fildes -buffer is in an invalid area of the process's address -space. .El .Sh SEE ALSO .Xr sh 1 , ==== //depot/projects/mpsafetty/lib/libc/sys/rename.2#2 (text+ko) ==== @@ -26,7 +26,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)rename.2 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/sys/rename.2,v 1.28 2008/04/16 13:03:12 kib Exp $ +.\" $FreeBSD: src/lib/libc/sys/rename.2,v 1.29 2008/11/07 15:01:40 trasz Exp $ .\" .Dd April 10, 2008 .Dt RENAME 2 @@ -156,6 +156,11 @@ .It Bq Er EACCES The requested link requires writing in a directory with a mode that denies write permission. +.It Bq Er EACCES +The directory pointed at by the +.Fa from +argument denies write permission, and the operation would move +it to another parent directory. .It Bq Er EPERM The file pointed at by the .Fa from ==== //depot/projects/mpsafetty/lib/libkvm/Makefile#3 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 6/4/93 -# $FreeBSD: src/lib/libkvm/Makefile,v 1.19 2008/08/19 21:30:36 jhb Exp $ +# $FreeBSD: src/lib/libkvm/Makefile,v 1.20 2008/11/06 16:20:27 raj Exp $ LIB= kvm SHLIBDIR?= /lib @@ -11,7 +11,7 @@ SRCS= kvm.c kvm_${MACHINE_ARCH}.c kvm_cptime.c kvm_file.c kvm_getloadavg.c \ kvm_getswapinfo.c kvm_pcpu.c kvm_proc.c -.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" +.if ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "arm" SRCS+= kvm_minidump_${MACHINE_ARCH}.c .endif INCS= kvm.h ==== //depot/projects/mpsafetty/lib/libkvm/kvm_arm.c#2 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/lib/libkvm/kvm_arm.c,v 1.4 2007/01/08 18:25:58 imp Exp $"); +__FBSDID("$FreeBSD: src/lib/libkvm/kvm_arm.c,v 1.5 2008/11/06 16:20:27 raj Exp $"); #include <sys/param.h> #include <sys/elf32.h> @@ -52,10 +52,13 @@ #include <limits.h> #include <kvm.h> #include <stdlib.h> +#include <unistd.h> #include "kvm_private.h" +/* minidump must be the first item! */ struct vmstate { + int minidump; /* 1 = minidump mode */ pd_entry_t *l1pt; void *mmapbase; size_t mmapsize; @@ -107,6 +110,8 @@ _kvm_freevtop(kvm_t *kd) { if (kd->vmst != 0) { + if (kd->vmst->minidump) + return (_kvm_minidump_freevtop(kd)); if (kd->vmst->mmapbase != NULL) munmap(kd->vmst->mmapbase, kd->vmst->mmapsize); free(kd->vmst); @@ -117,13 +122,25 @@ int _kvm_initvtop(kvm_t *kd) { - struct vmstate *vm = _kvm_malloc(kd, sizeof(*vm)); + struct vmstate *vm; struct nlist nlist[2]; u_long kernbase, physaddr, pa; pd_entry_t *l1pt; Elf32_Ehdr *ehdr; size_t hdrsz; - + char minihdr[8]; + + if (!kd->rawdump) { + if (pread(kd->pmfd, &minihdr, 8, 0) == 8) { + if (memcmp(&minihdr, "minidump", 8) == 0) + return (_kvm_minidump_initvtop(kd)); + } else { + _kvm_err(kd, kd->program, "cannot read header"); + return (-1); + } + } + + vm = _kvm_malloc(kd, sizeof(*vm)); if (vm == 0) { _kvm_err(kd, kd->program, "cannot allocate vm"); return (-1); @@ -193,6 +210,9 @@ pt_entry_t pte; u_long pte_pa; + if (kd->vmst->minidump) + return (_kvm_minidump_kvatop(kd, va, pa)); + if (vm->l1pt == NULL) return (_kvm_pa2off(kd, va, pa, PAGE_SIZE)); pd = vm->l1pt[L1_IDX(va)]; ==== //depot/projects/mpsafetty/lib/libkvm/kvm_private.h#2 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)kvm_private.h 8.1 (Berkeley) 6/4/93 - * $FreeBSD: src/lib/libkvm/kvm_private.h,v 1.12 2007/06/15 11:35:11 simokawa Exp $ + * $FreeBSD: src/lib/libkvm/kvm_private.h,v 1.13 2008/11/06 16:20:27 raj Exp $ */ struct __kvm { @@ -79,7 +79,7 @@ __printflike(3, 4); int _kvm_uvatop(kvm_t *, const struct proc *, u_long, u_long *); -#if defined(__amd64__) || defined(__i386__) +#if defined(__amd64__) || defined(__i386__) || defined(__arm__) void _kvm_minidump_freevtop(kvm_t *); int _kvm_minidump_initvtop(kvm_t *); int _kvm_minidump_kvatop(kvm_t *, u_long, off_t *); ==== //depot/projects/mpsafetty/lib/libproc/libproc.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libproc/libproc.h,v 1.1 2008/05/22 02:09:21 jb Exp $ + * $FreeBSD: src/lib/libproc/libproc.h,v 1.2 2008/11/05 19:35:43 rodrigc Exp $ */ #ifndef _LIBPROC_H_ @@ -33,6 +33,8 @@ struct proc_handle; +typedef void (*proc_child_func)(void *); + /* Values returned by proc_state(). */ #define PS_IDLE 1 #define PS_STOP 2 @@ -55,7 +57,8 @@ int proc_attach(pid_t pid, int flags, struct proc_handle **pphdl); int proc_continue(struct proc_handle *); int proc_clearflags(struct proc_handle *, int); -int proc_create(const char *, char * const *, struct proc_handle **); +int proc_create(const char *, char * const *, proc_child_func *, void *, + struct proc_handle **); int proc_detach(struct proc_handle *); int proc_getflags(struct proc_handle *); int proc_name2sym(struct proc_handle *, const char *, const char *, GElf_Sym *); ==== //depot/projects/mpsafetty/lib/libproc/proc_create.c#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libproc/proc_create.c,v 1.1 2008/05/22 02:09:21 jb Exp $ + * $FreeBSD: src/lib/libproc/proc_create.c,v 1.2 2008/11/05 19:35:43 rodrigc Exp $ */ #include "_libproc.h" @@ -90,7 +90,8 @@ } int -proc_create(const char *file, char * const *argv, struct proc_handle **pphdl) +proc_create(const char *file, char * const *argv, proc_child_func *pcf, + void *child_arg, struct proc_handle **pphdl) { struct proc_handle *phdl; struct kevent kev; @@ -106,13 +107,16 @@ return (ENOMEM); /* Fork a new process. */ - if ((pid = fork()) == -1) + if ((pid = vfork()) == -1) error = errno; else if (pid == 0) { /* The child expects to be traced. */ if (ptrace(PT_TRACE_ME, 0, 0, 0) != 0) _exit(1); + if (pcf != NULL) + (*pcf)(child_arg); + /* Execute the specified file: */ execvp(file, argv); ==== //depot/projects/mpsafetty/lib/libstand/stand.h#3 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libstand/stand.h,v 1.43 2008/09/04 10:05:44 raj Exp $ + * $FreeBSD: src/lib/libstand/stand.h,v 1.44 2008/11/06 16:30:32 raj Exp $ * From $NetBSD: stand.h,v 1.22 1997/06/26 19:17:40 drochner Exp $ */ @@ -236,10 +236,6 @@ extern void *reallocf(void *ptr, size_t size); extern void mallocstats(void); -/* disklabel support (undocumented, may be junk) */ -struct disklabel; -extern char *getdisklabel(const char *, struct disklabel *); - extern int printf(const char *fmt, ...) __printflike(1, 2); extern void vprintf(const char *fmt, __va_list); extern int sprintf(char *buf, const char *cfmt, ...) __printflike(2, 3); ==== //depot/projects/mpsafetty/lib/libutil/gr_util.c#2 (text+ko) ==== @@ -25,32 +25,30 @@ */ #include <sys/cdefs.h> -__FBSDID("$FreeBSD: src/lib/libutil/gr_util.c,v 1.1 2008/04/23 00:49:12 scf Exp $"); +__FBSDID("$FreeBSD: src/lib/libutil/gr_util.c,v 1.2 2008/11/11 00:32:55 scf Exp $"); #include <sys/param.h> + #include <grp.h> #include <inttypes.h> +#include <libutil.h> #include <stdbool.h> #include <stdio.h> #include <stdlib.h> #include <string.h> -#include <libutil.h> - - static const char GroupLineFormat[] = "%s:%s:%ju:"; - /* * Compares two struct group's. */ int gr_equal(const struct group *gr1, const struct group *gr2) { - bool found; - bool equal; int gr1Ndx; int gr2Ndx; + bool equal; + bool found; /* Check that the non-member information is the same. */ equal = strcmp(gr1->gr_name, gr2->gr_name) == 0 && @@ -81,7 +79,6 @@ return (equal); } - /* * Make a group line out of a struct group. */ @@ -89,8 +86,8 @@ gr_make(const struct group *gr) { char *line; + size_t lineSize; int ndx; - size_t lineSize; /* Calculate the length of the group line. */ lineSize = snprintf(NULL, 0, GroupLineFormat, gr->gr_name, @@ -114,17 +111,16 @@ return (line); } - /* * Duplicate a struct group. */ struct group * gr_dup(const struct group *gr) { + size_t len; + struct group *ngr; int ndx; int numMem; - size_t len; - struct group *ngr; /* Calculate size of group. */ len = sizeof(*gr) + @@ -134,7 +130,7 @@ if (gr->gr_mem != NULL) { for (; gr->gr_mem[numMem] != NULL; numMem++) len += strlen(gr->gr_mem[numMem]) + 1; - len += (numMem + 1) * sizeof(*(gr->gr_mem)); + len += (numMem + 1) * sizeof(*gr->gr_mem); } /* Create new group and copy old group into it. */ @@ -152,7 +148,7 @@ } if (gr->gr_mem != NULL) { ngr->gr_mem = (char **)((char *)ngr + len); - len += (numMem + 1) * sizeof(*(ngr->gr_mem)); + len += (numMem + 1) * sizeof(*ngr->gr_mem); for (ndx = 0; gr->gr_mem[ndx] != NULL; ndx++) { ngr->gr_mem[ndx] = (char *)ngr + len; len += sprintf(ngr->gr_mem[ndx], "%s", @@ -164,7 +160,6 @@ return (ngr); } - /* * Scan a line and place it into a group structure. */ @@ -180,14 +175,14 @@ return (false); *loc = '\0'; >>> TRUNCATED FOR MAIL (1000 lines) <<<
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200811120913.mAC9D9KQ075959>