From owner-p4-projects@FreeBSD.ORG Sat Aug 26 17:52:07 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4372616A4E0; Sat, 26 Aug 2006 17:52:07 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1C62916A4DE for ; Sat, 26 Aug 2006 17:52:07 +0000 (UTC) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BBBEB43DAE for ; Sat, 26 Aug 2006 17:51:58 +0000 (GMT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.6/8.13.6) with ESMTP id k7QHpwaM093977 for ; Sat, 26 Aug 2006 17:51:58 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.6/8.13.4/Submit) id k7QHptvP093974 for perforce@freebsd.org; Sat, 26 Aug 2006 17:51:55 GMT (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 26 Aug 2006 17:51:55 GMT Message-Id: <200608261751.k7QHptvP093974@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to bb+lists.freebsd.perforce@cyrus.watson.org using -f From: Robert Watson To: Perforce Change Reviews Cc: Subject: PERFORCE change 105118 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 26 Aug 2006 17:52:07 -0000 http://perforce.freebsd.org/chv.cgi?CH=105118 Change 105118 by rwatson@rwatson_zoo on 2006/08/26 17:51:40 Integrate TrustedBSD audit3 branch from TrustedBSD base branch, primarily to loop back the recent OpenBSM update in CVS. See @105117 for a detailed list of changes. Affected files ... .. //depot/projects/trustedbsd/audit3/bin/cp/cp.1#4 integrate .. //depot/projects/trustedbsd/audit3/bin/cp/cp.c#5 integrate .. //depot/projects/trustedbsd/audit3/bin/cp/extern.h#3 integrate .. //depot/projects/trustedbsd/audit3/bin/cp/utils.c#5 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/FREEBSD-upgrade#7 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#11 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/README#16 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/VERSION#12 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditd/auditd.c#12 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.c#5 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.h#5 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#4 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit.h#15 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_filter.h#5 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_internal.h#10 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_kevents.h#25 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#15 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/libbsm.h#16 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/config/config.h#4 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/config/config.h.in#6 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/configure#10 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#11 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/etc/audit_event#15 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/au_token.3#8 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_audit.c#14 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_event.c#11 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_io.c#18 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#21 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/man/audit.log.5#10 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#4 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/test/bsm/generate.c#6 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/tools/Makefile.am#4 integrate .. //depot/projects/trustedbsd/audit3/contrib/openbsm/tools/Makefile.in#4 integrate .. //depot/projects/trustedbsd/audit3/etc/defaults/periodic.conf#8 integrate .. //depot/projects/trustedbsd/audit3/etc/etc.alpha/ttys#2 delete .. //depot/projects/trustedbsd/audit3/etc/periodic/security/410.logincheck#1 branch .. //depot/projects/trustedbsd/audit3/etc/periodic/security/Makefile#4 integrate .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/Makefile#3 integrate .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/kgdb/kthr.c#4 integrate .. //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/kgdb/trgt_powerpc.c#1 branch .. //depot/projects/trustedbsd/audit3/lib/libc/sys/kqueue.2#4 integrate .. //depot/projects/trustedbsd/audit3/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#17 integrate .. //depot/projects/trustedbsd/audit3/sbin/restore/tape.c#4 integrate .. //depot/projects/trustedbsd/audit3/share/man/man9/VFS_ROOT.9#3 integrate .. //depot/projects/trustedbsd/audit3/share/man/man9/ithread.9#3 integrate .. //depot/projects/trustedbsd/audit3/share/mk/bsd.lib.mk#8 integrate .. //depot/projects/trustedbsd/audit3/sys/amd64/linux32/linux32_machdep.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/arm/busdma_machdep.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/arm/cpufunc.c#4 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/arm/elf_trampoline.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/arm/identcpu.c#5 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/at91/if_ate.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/conf/EP80219#1 branch .. //depot/projects/trustedbsd/audit3/sys/arm/include/armreg.h#4 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/include/cpuconf.h#4 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/include/cpufunc.h#5 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/include/elf.h#4 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/include/vmparam.h#5 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/xscale/i80321/ep80219_machdep.c#1 branch .. //depot/projects/trustedbsd/audit3/sys/arm/xscale/i80321/files.ep80219#1 branch .. //depot/projects/trustedbsd/audit3/sys/arm/xscale/i80321/files.i80219#1 branch .. //depot/projects/trustedbsd/audit3/sys/arm/xscale/i80321/i80321_intr.h#3 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/xscale/i80321/i80321_pci.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/xscale/i80321/i80321reg.h#3 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/xscale/i80321/i80321var.h#4 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/xscale/i80321/iq31244_machdep.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/xscale/i80321/iq80321.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/xscale/i80321/iq80321reg.h#3 integrate .. //depot/projects/trustedbsd/audit3/sys/arm/xscale/i80321/std.ep80219#1 branch .. //depot/projects/trustedbsd/audit3/sys/arm/xscale/i80321/std.i80219#1 branch .. //depot/projects/trustedbsd/audit3/sys/bsm/audit.h#32 integrate .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_internal.h#12 integrate .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_kevents.h#27 integrate .. //depot/projects/trustedbsd/audit3/sys/bsm/audit_record.h#20 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/linux/linux_futex.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/compat/linux/linux_misc.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/conf/files.powerpc#9 integrate .. //depot/projects/trustedbsd/audit3/sys/conf/options.arm#9 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/ata/ata-raid.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/dev/fb/creator.c#6 integrate .. //depot/projects/trustedbsd/audit3/sys/i386/linux/linux_machdep.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/ia64/include/vmparam.h#4 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/init_main.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/kern_thr.c#11 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/kern_umtx.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/sched_4bsd.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/sched_core.c#3 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/sched_ule.c#9 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/subr_witness.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/kern/vfs_mount.c#19 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if_bridge.c#10 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if_ethersubr.c#9 integrate .. //depot/projects/trustedbsd/audit3/sys/net/if_vlan.c#14 integrate .. //depot/projects/trustedbsd/audit3/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c#7 integrate .. //depot/projects/trustedbsd/audit3/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#8 integrate .. //depot/projects/trustedbsd/audit3/sys/powerpc/include/gdb_machdep.h#1 branch .. //depot/projects/trustedbsd/audit3/sys/powerpc/include/vmparam.h#2 integrate .. //depot/projects/trustedbsd/audit3/sys/powerpc/powerpc/gdb_machdep.c#1 branch .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm.c#21 integrate .. //depot/projects/trustedbsd/audit3/sys/security/audit/audit_bsm_token.c#24 integrate .. //depot/projects/trustedbsd/audit3/sys/sys/kobj.h#3 integrate .. //depot/projects/trustedbsd/audit3/sys/sys/proc.h#16 integrate .. //depot/projects/trustedbsd/audit3/sys/sys/sched.h#5 integrate .. //depot/projects/trustedbsd/audit3/sys/sys/umtx.h#6 integrate .. //depot/projects/trustedbsd/audit3/sys/vm/vm_contig.c#10 integrate .. //depot/projects/trustedbsd/audit3/sys/vm/vm_page.h#8 integrate .. //depot/projects/trustedbsd/audit3/sys/vm/vm_pageq.c#10 integrate Differences ... ==== //depot/projects/trustedbsd/audit3/bin/cp/cp.1#4 (text+ko) ==== @@ -30,9 +30,9 @@ .\" SUCH DAMAGE. .\" .\" @(#)cp.1 8.3 (Berkeley) 4/18/94 -.\" $FreeBSD: src/bin/cp/cp.1,v 1.33 2005/02/25 00:40:46 trhodes Exp $ +.\" $FreeBSD: src/bin/cp/cp.1,v 1.35 2006/08/25 09:58:13 ru Exp $ .\" -.Dd February 23, 2005 +.Dd August 24, 2006 .Dt CP 1 .Os .Sh NAME @@ -45,7 +45,7 @@ .Op Fl H | Fl L | Fl P .Oc .Op Fl f | i | n -.Op Fl pv +.Op Fl lpv .Ar source_file target_file .Nm .Oo @@ -53,7 +53,7 @@ .Op Fl H | Fl L | Fl P .Oc .Op Fl f | i | n -.Op Fl pv +.Op Fl lpv .Ar source_file ... target_directory .Sh DESCRIPTION In the first synopsis form, the @@ -144,6 +144,8 @@ or .Fl n options.) +.It Fl l +Create hard links to regular files in a hierarchy instead of copying. .It Fl n Do not overwrite an existing file. (The ==== //depot/projects/trustedbsd/audit3/bin/cp/cp.c#5 (text+ko) ==== @@ -42,7 +42,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.53 2006/07/04 20:52:36 maxim Exp $"); +__FBSDID("$FreeBSD: src/bin/cp/cp.c,v 1.54 2006/08/24 20:45:38 julian Exp $"); /* * Cp copies source files to target files. @@ -83,7 +83,7 @@ PATH_T to = { to.p_path, emptystring, "" }; -int fflag, iflag, nflag, pflag, vflag; +int fflag, iflag, lflag, nflag, pflag, vflag; static int Rflag, rflag; volatile sig_atomic_t info; @@ -102,7 +102,7 @@ char *target; Hflag = Lflag = Pflag = 0; - while ((ch = getopt(argc, argv, "HLPRfinprv")) != -1) + while ((ch = getopt(argc, argv, "HLPRfinprvl")) != -1) switch (ch) { case 'H': Hflag = 1; @@ -140,6 +140,9 @@ case 'v': vflag = 1; break; + case 'l': + lflag = 1; + break; default: usage(); break; @@ -457,6 +460,9 @@ badcp = rval = 1; } break; + case S_IFSOCK: + warnx("%s is a socket (not copied).", + curr->fts_path); case S_IFIFO: if (Rflag) { if (copy_fifo(curr->fts_statp, !dne)) ==== //depot/projects/trustedbsd/audit3/bin/cp/extern.h#3 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * @(#)extern.h 8.2 (Berkeley) 4/1/94 - * $FreeBSD: src/bin/cp/extern.h,v 1.20 2005/09/05 04:36:08 csjp Exp $ + * $FreeBSD: src/bin/cp/extern.h,v 1.21 2006/08/24 20:45:38 julian Exp $ */ typedef struct { @@ -37,7 +37,7 @@ } PATH_T; extern PATH_T to; -extern int fflag, iflag, nflag, pflag, vflag; +extern int fflag, iflag, lflag, nflag, pflag, vflag; extern volatile sig_atomic_t info; __BEGIN_DECLS ==== //depot/projects/trustedbsd/audit3/bin/cp/utils.c#5 (text+ko) ==== @@ -33,7 +33,7 @@ #endif #endif /* not lint */ #include -__FBSDID("$FreeBSD: src/bin/cp/utils.c,v 1.46 2005/09/05 04:36:08 csjp Exp $"); +__FBSDID("$FreeBSD: src/bin/cp/utils.c,v 1.49 2006/08/25 09:58:13 ru Exp $"); #include #include @@ -61,7 +61,7 @@ { static char buf[MAXBSIZE]; struct stat *fs; - int ch, checkch, from_fd, rcount, rval, to_fd; + int ch, checkch, from_fd = 0, rcount, rval, to_fd = 0; ssize_t wcount; size_t wresid; size_t wtotal; @@ -109,15 +109,20 @@ /* remove existing destination file name, * create a new file */ (void)unlink(to.p_path); - to_fd = open(to.p_path, O_WRONLY | O_TRUNC | O_CREAT, - fs->st_mode & ~(S_ISUID | S_ISGID)); - } else - /* overwrite existing destination file name */ - to_fd = open(to.p_path, O_WRONLY | O_TRUNC, 0); - } else - to_fd = open(to.p_path, O_WRONLY | O_TRUNC | O_CREAT, - fs->st_mode & ~(S_ISUID | S_ISGID)); - + if (!lflag) + to_fd = open(to.p_path, O_WRONLY | O_TRUNC | O_CREAT, + fs->st_mode & ~(S_ISUID | S_ISGID)); + } else { + if (!lflag) + /* overwrite existing destination file name */ + to_fd = open(to.p_path, O_WRONLY | O_TRUNC, 0); + } + } else { + if (!lflag) + to_fd = open(to.p_path, O_WRONLY | O_TRUNC | O_CREAT, + fs->st_mode & ~(S_ISUID | S_ISGID)); + } + if (to_fd == -1) { warn("%s", to.p_path); (void)close(from_fd); @@ -126,77 +131,85 @@ rval = 0; - /* - * Mmap and write if less than 8M (the limit is so we don't totally - * trash memory on big files. This is really a minor hack, but it - * wins some CPU back. - */ + if (!lflag) { + /* + * Mmap and write if less than 8M (the limit is so we don't totally + * trash memory on big files. This is really a minor hack, but it + * wins some CPU back. + */ #ifdef VM_AND_BUFFER_CACHE_SYNCHRONIZED - if (S_ISREG(fs->st_mode) && fs->st_size > 0 && - fs->st_size <= 8 * 1048576) { - if ((p = mmap(NULL, (size_t)fs->st_size, PROT_READ, - MAP_SHARED, from_fd, (off_t)0)) == MAP_FAILED) { - warn("%s", entp->fts_path); - rval = 1; - } else { - wtotal = 0; - for (bufp = p, wresid = fs->st_size; ; - bufp += wcount, wresid -= (size_t)wcount) { - wcount = write(to_fd, bufp, wresid); - wtotal += wcount; - if (info) { - info = 0; - (void)fprintf(stderr, - "%s -> %s %3d%%\n", - entp->fts_path, to.p_path, - cp_pct(wtotal, fs->st_size)); - - } - if (wcount >= (ssize_t)wresid || wcount <= 0) - break; - } - if (wcount != (ssize_t)wresid) { - warn("%s", to.p_path); - rval = 1; - } - /* Some systems don't unmap on close(2). */ - if (munmap(p, fs->st_size) < 0) { + if (S_ISREG(fs->st_mode) && fs->st_size > 0 && + fs->st_size <= 8 * 1048576) { + if ((p = mmap(NULL, (size_t)fs->st_size, PROT_READ, + MAP_SHARED, from_fd, (off_t)0)) == MAP_FAILED) { warn("%s", entp->fts_path); rval = 1; + } else { + wtotal = 0; + for (bufp = p, wresid = fs->st_size; ; + bufp += wcount, wresid -= (size_t)wcount) { + wcount = write(to_fd, bufp, wresid); + wtotal += wcount; + if (info) { + info = 0; + (void)fprintf(stderr, + "%s -> %s %3d%%\n", + entp->fts_path, to.p_path, + cp_pct(wtotal, fs->st_size)); + + } + if (wcount >= (ssize_t)wresid || wcount <= 0) + break; + } + if (wcount != (ssize_t)wresid) { + warn("%s", to.p_path); + rval = 1; + } + /* Some systems don't unmap on close(2). */ + if (munmap(p, fs->st_size) < 0) { + warn("%s", entp->fts_path); + rval = 1; + } } - } - } else + } else #endif - { - wtotal = 0; - while ((rcount = read(from_fd, buf, MAXBSIZE)) > 0) { - for (bufp = buf, wresid = rcount; ; - bufp += wcount, wresid -= wcount) { - wcount = write(to_fd, bufp, wresid); - wtotal += wcount; - if (info) { - info = 0; - (void)fprintf(stderr, - "%s -> %s %3d%%\n", - entp->fts_path, to.p_path, - cp_pct(wtotal, fs->st_size)); - + { + wtotal = 0; + while ((rcount = read(from_fd, buf, MAXBSIZE)) > 0) { + for (bufp = buf, wresid = rcount; ; + bufp += wcount, wresid -= wcount) { + wcount = write(to_fd, bufp, wresid); + wtotal += wcount; + if (info) { + info = 0; + (void)fprintf(stderr, + "%s -> %s %3d%%\n", + entp->fts_path, to.p_path, + cp_pct(wtotal, fs->st_size)); + + } + if (wcount >= (ssize_t)wresid || wcount <= 0) + break; } - if (wcount >= (ssize_t)wresid || wcount <= 0) + if (wcount != (ssize_t)wresid) { + warn("%s", to.p_path); + rval = 1; break; + } } - if (wcount != (ssize_t)wresid) { - warn("%s", to.p_path); + if (rcount < 0) { + warn("%s", entp->fts_path); rval = 1; - break; } } - if (rcount < 0) { - warn("%s", entp->fts_path); + } else { + if (link(entp->fts_path, to.p_path)) { + warn("%s", to.p_path); rval = 1; } } - + (void)close(from_fd); + /* * Don't remove the target even after an error. The target might * not be a regular file, or its attributes might be important, @@ -204,14 +217,16 @@ * to remove it if we created it and its length is 0. */ - if (pflag && setfile(fs, to_fd)) - rval = 1; - if (pflag && preserve_fd_acls(from_fd, to_fd) != 0) - rval = 1; - (void)close(from_fd); - if (close(to_fd)) { - warn("%s", to.p_path); - rval = 1; + if (!lflag) { + if (pflag && setfile(fs, to_fd)) + rval = 1; + if (pflag && preserve_fd_acls(from_fd, to_fd) != 0) + rval = 1; + (void)close(from_fd); + if (close(to_fd)) { + warn("%s", to.p_path); + rval = 1; + } } return (rval); } @@ -411,8 +426,8 @@ { (void)fprintf(stderr, "%s\n%s\n", -"usage: cp [-R [-H | -L | -P]] [-f | -i | -n] [-pv] source_file target_file", -" cp [-R [-H | -L | -P]] [-f | -i | -n] [-pv] source_file ... " +"usage: cp [-R [-H | -L | -P]] [-f | -i | -n] [-lpv] source_file target_file", +" cp [-R [-H | -L | -P]] [-f | -i | -n] [-lpv] source_file ... " "target_directory"); exit(EX_USAGE); } ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/FREEBSD-upgrade#7 (text) ==== @@ -23,7 +23,7 @@ - Run configure, commit src/contrib/openbsm/config/config.h. - Replication of src/contrib/openbsm/bsm changes into src/sys/bsm. - Possible updates to src/sys/security/audit, especially relating to - bsm_token.c. + audit_bsm_token.c. - Update any library, tool, or etc BSD Makefiles to add new files, defines, or other generally useful or necessary things. @@ -39,6 +39,10 @@ Propagation of changes to src/sys/{bsm,security/audit} is something that requires careful coordination and attention to detail. These files are not on CVS vendor branches, but do have the same local vs. vendor merge -issues. +issues. Remember that contrib/openbsm (and the rest of the system) will +be built with the version of the bsm/ include files in src/sys/bsm, not +the version in contrib/openbsm/bsm, so buildworld tests before committing +are necessary, and the commits to various parts of the system must be +made in close succession. -$FreeBSD: src/contrib/openbsm/FREEBSD-upgrade,v 1.5 2006/06/27 17:55:38 rwatson Exp $ +$FreeBSD: src/contrib/openbsm/FREEBSD-upgrade,v 1.6 2006/08/26 10:35:54 rwatson Exp $ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#11 (text+ko) ==== @@ -203,4 +203,4 @@ to support reloading of kernel event table. - Allow comments in /etc/security configuration files. -$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#10 $ +$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/HISTORY#11 $ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/README#16 (text+ko) ==== @@ -97,4 +97,4 @@ http://www.TrustedBSD.org/ -$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/README#15 $ +$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/README#16 $ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/VERSION#12 (text+ko) ==== ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditd/auditd.c#12 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditd/auditd.c#11 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditd/auditd.c#12 $ */ #include ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.c#4 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.c#5 $ */ /* ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.h#5 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.h#4 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd.h#5 $ */ #define AUDITFILTERD_CONFFILE "/etc/security/audit_filter" ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#3 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bin/auditfilterd/auditfilterd_conf.c#4 $ */ /* ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit.h#15 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit.h#14 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit.h#15 $ */ #ifndef _BSM_AUDIT_H ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_filter.h#5 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_filter.h#4 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_filter.h#5 $ */ #ifndef _BSM_AUDIT_FILTER_H_ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_internal.h#10 (text+ko) ==== @@ -34,7 +34,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_internal.h#9 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_internal.h#10 $ */ #ifndef _AUDIT_INTERNAL_H ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_kevents.h#25 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_kevents.h#24 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_kevents.h#25 $ */ #ifndef _BSM_AUDIT_KEVENTS_H_ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#15 (text+ko) ==== @@ -30,7 +30,7 @@ * * @APPLE_BSD_LICENSE_HEADER_END@ * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#14 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/audit_record.h#15 $ */ #ifndef _BSM_AUDIT_RECORD_H_ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/libbsm.h#16 (text+ko) ==== @@ -26,7 +26,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/libbsm.h#15 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/bsm/libbsm.h#16 $ */ #ifndef _LIBBSM_H_ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/config/config.h#4 (text+ko) ==== @@ -1,6 +1,6 @@ /* config/config.h. Generated by configure. */ /* config/config.h.in. Generated from configure.ac by autoheader. */ -/* $FreeBSD: src/contrib/openbsm/config/config.h,v 1.2 2006/06/05 11:06:32 rwatson Exp $ +/* $FreeBSD: src/contrib/openbsm/config/config.h,v 1.3 2006/08/26 08:12:17 rwatson Exp $ /* Define to 1 if you have the `alarm' function. */ #define HAVE_ALARM 1 @@ -14,6 +14,9 @@ /* Define to 1 if your system has a working `chown' function. */ #define HAVE_CHOWN 1 +/* Define to 1 if you have the `clock_gettime' function. */ +#define HAVE_CLOCK_GETTIME 1 + /* Define to 1 if you have the header file. */ #define HAVE_DLFCN_H 1 @@ -144,13 +147,13 @@ #define PACKAGE_NAME "OpenBSM" /* Define to the full name and version of this package. */ -#define PACKAGE_STRING "OpenBSM 1.0a6" +#define PACKAGE_STRING "OpenBSM 1.0a9" /* Define to the one symbol short name of this package. */ #define PACKAGE_TARNAME "openbsm" /* Define to the version of this package. */ -#define PACKAGE_VERSION "1.0a6" +#define PACKAGE_VERSION "1.0a9" /* Define as the return type of signal handlers (`int' or `void'). */ #define RETSIGTYPE void @@ -165,7 +168,7 @@ /* #undef TM_IN_SYS_TIME */ /* Version number of package */ -#define VERSION "1.0a6" +#define VERSION "1.0a9" /* Define to empty if `const' does not conform to ANSI C. */ /* #undef const */ ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/config/config.h.in#6 (text+ko) ==== ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/configure#10 (xtext) ==== ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#11 (text+ko) ==== @@ -3,7 +3,7 @@ AC_PREREQ(2.59) AC_INIT([OpenBSM], [1.0a9], [trustedbsd-audit@TrustesdBSD.org],[openbsm]) -AC_REVISION([$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#10 $]) +AC_REVISION([$P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/configure.ac#11 $]) AC_CONFIG_SRCDIR([bin/auditreduce/auditreduce.c]) AC_CONFIG_AUX_DIR(config) AC_CONFIG_HEADER([config/config.h]) ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/etc/audit_event#15 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/etc/audit_event#14 $ +# $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/etc/audit_event#15 $ # $FreeBSD: src/contrib/openbsm/etc/audit_event,v 1.3 2006/06/27 18:09:54 rwatson Exp $ # 0:AUE_NULL:indir system call:no ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/au_token.3#8 (text+ko) ==== @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/au_token.3#7 $ +.\" $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/au_token.3#8 $ .\" .Dd April 19, 2005 .Dt AU_TOKEN 3 ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_audit.c#14 (text+ko) ==== @@ -30,7 +30,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_audit.c#13 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_audit.c#14 $ */ #include ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_event.c#11 (text+ko) ==== @@ -27,7 +27,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_event.c#10 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_event.c#11 $ */ #include ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_io.c#18 (text+ko) ==== @@ -31,7 +31,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_io.c#17 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_io.c#18 $ */ #include ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#21 (text+ko) ==== @@ -30,7 +30,7 @@ * IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#20 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/libbsm/bsm_token.c#21 $ */ #include ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/man/audit.log.5#10 (text+ko) ==== @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/man/audit.log.5#9 $ +.\" $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/man/audit.log.5#10 $ .\" .Dd May 1, 2005 .Dt AUDIT.LOG 5 ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#3 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/modules/auditfilter_noop/auditfilter_noop.c#4 $ */ /* ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/test/bsm/generate.c#6 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/test/bsm/generate.c#5 $ + * $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/test/bsm/generate.c#6 $ */ /* ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/tools/Makefile.am#4 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/tools/Makefile.am#3 $ +# $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/tools/Makefile.am#4 $ # INCLUDES = -I$(top_srcdir) ==== //depot/projects/trustedbsd/audit3/contrib/openbsm/tools/Makefile.in#4 (text+ko) ==== @@ -15,7 +15,7 @@ @SET_MAKE@ # -# $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/tools/Makefile.in#3 $ +# $P4: //depot/projects/trustedbsd/audit3/contrib/openbsm/tools/Makefile.in#4 $ # srcdir = @srcdir@ ==== //depot/projects/trustedbsd/audit3/etc/defaults/periodic.conf#8 (text+ko) ==== @@ -13,7 +13,7 @@ # For a more detailed explanation of all the periodic.conf variables, please # refer to the periodic.conf(5) manual page. # -# $FreeBSD: src/etc/defaults/periodic.conf,v 1.38 2006/05/12 19:17:33 mlaier Exp $ +# $FreeBSD: src/etc/defaults/periodic.conf,v 1.39 2006/08/25 07:34:36 trhodes Exp $ # # What files override these defaults ? @@ -159,6 +159,9 @@ # 400.passwdless daily_status_security_passwdless_enable="YES" +# 410.logincheck +daily_status_security_logincheck_enable="YES" + # 500.ipfwdenied daily_status_security_ipfwdenied_enable="YES" ==== //depot/projects/trustedbsd/audit3/etc/periodic/security/Makefile#4 (text+ko) ==== @@ -1,9 +1,10 @@ -# $FreeBSD: src/etc/periodic/security/Makefile,v 1.5 2006/05/12 19:17:34 mlaier Exp $ +# $FreeBSD: src/etc/periodic/security/Makefile,v 1.6 2006/08/25 07:34:36 trhodes Exp $ FILES= 100.chksetuid \ 200.chkmounts \ 300.chkuid0 \ 400.passwdless \ + 410.logincheck \ 500.ipfwdenied \ 510.ipfdenied \ 520.pfdenied \ ==== //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/Makefile#3 (text+ko) ==== @@ -1,9 +1,5 @@ -# $FreeBSD: src/gnu/usr.bin/gdb/Makefile,v 1.10 2006/08/24 02:44:58 marcel Exp $ +# $FreeBSD: src/gnu/usr.bin/gdb/Makefile,v 1.11 2006/08/24 21:53:49 marcel Exp $ -SUBDIR= doc libgdb gdb gdbtui - -.if ${MACHINE_ARCH} != "powerpc" -SUBDIR+= kgdb -.endif +SUBDIR= doc libgdb gdb gdbtui kgdb .include ==== //depot/projects/trustedbsd/audit3/gnu/usr.bin/gdb/kgdb/kthr.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/gnu/usr.bin/gdb/kgdb/kthr.c,v 1.3 2005/09/10 18:25:53 marcel Exp $"); +__FBSDID("$FreeBSD: src/gnu/usr.bin/gdb/kgdb/kthr.c,v 1.4 2006/08/25 16:20:17 jhb Exp $"); #include #include @@ -41,10 +41,14 @@ #include #include "kgdb.h" +#include static uintptr_t dumppcb; static int dumptid; +static uintptr_t stoppcbs; +static __cpumask_t stopped_cpus; + static struct kthr *first; struct kthr *curkthr; @@ -91,6 +95,14 @@ else dumptid = -1; + addr = lookup("_stopped_cpus"); + if (addr != 0) + kvm_read(kvm, addr, &stopped_cpus, sizeof(stopped_cpus)); + else + stopped_cpus = 0; + + stoppcbs = lookup("_stoppcbs"); + while (paddr != 0) { if (kvm_read(kvm, paddr, &p, sizeof(p)) != sizeof(p)) warnx("kvm_read: %s", kvm_geterr(kvm)); @@ -101,8 +113,13 @@ kt = malloc(sizeof(*kt)); kt->next = first; kt->kaddr = addr; - kt->pcb = (td.td_tid == dumptid) ? dumppcb : - (uintptr_t)td.td_pcb; + if (td.td_tid == dumptid) + kt->pcb = dumppcb; + else if (td.td_state == TDS_RUNNING && ((1 << td.td_oncpu) & stopped_cpus) + && stoppcbs != 0) + kt->pcb = (uintptr_t) stoppcbs + sizeof(struct pcb) * td.td_oncpu; + else + kt->pcb = (uintptr_t)td.td_pcb; kt->kstack = td.td_kstack; kt->tid = td.td_tid; kt->pid = p.p_pid; ==== //depot/projects/trustedbsd/audit3/lib/libc/sys/kqueue.2#4 (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/libc/sys/kqueue.2,v 1.42 2005/06/04 19:44:09 alc Exp $ +.\" $FreeBSD: src/lib/libc/sys/kqueue.2,v 1.43 2006/08/25 15:19:47 ceri Exp $ .\" .Dd June 4, 2005 .Dt KQUEUE 2 @@ -418,6 +418,10 @@ contains the number of times the timeout has expired since the last call to .Fn kevent . This filter automatically sets the EV_CLEAR flag internally. +There is a system wide limit on the number of timers +which is controlled by the +.Va kern.kq_calloutmax +sysctl. .It Dv EVFILT_NETDEV Takes a descriptor to a network interface as the identifier, and the events to watch for in .Va fflags . @@ -504,7 +508,12 @@ .It Bq Er ENOENT The event could not be found to be modified or deleted. .It Bq Er ENOMEM -No memory was available to register the event. +No memory was available to register the event +or, in the special case of a timer, the maximum number of +timers has been exceeded. +This maximum is configurable via the +.Va kern.kq_calloutmax +sysctl. .It Bq Er ESRCH The specified process to attach to does not exist. .El ==== //depot/projects/trustedbsd/audit3/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#17 (text+ko) ==== @@ -3,7 +3,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.964 2006/08/24 14:45:56 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml,v 1.965 2006/08/26 14:00:42 bmah Exp $ 2000 @@ -387,6 +387,9 @@ Hardware Support + The &man.amdsmb.4; driver has been added. It provides + support for the AMD-8111 SMBus 2.0 controller. &merged; + The &man.cardbus.4;, &man.pccard.4;, &man.pccbb.4;, and &man.exca.4; drivers are now buildable as kernel modules. @@ -454,6 +457,9 @@ since this fixes USB keyboard probing problems. &merged; + The &man.nfsmb.4; driver, which supports the NVIDIA nForce + 2/3/4 SMBus 2.0 controller, has been added. &merged; + The loader tunable debug.mpsafevfs is set to 1 by default. @@ -581,7 +587,7 @@ The &man.em.4; driver has been updated to version 6.1.4 from Intel. Among other changes, it now supports >>> TRUNCATED FOR MAIL (1000 lines) <<<