From owner-p4-projects@FreeBSD.ORG Tue Sep 30 17:33:34 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D404716A4C1; Tue, 30 Sep 2003 17:33:33 -0700 (PDT) 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 AE4A816A4B3 for ; Tue, 30 Sep 2003 17:33:33 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6896844014 for ; Tue, 30 Sep 2003 17:33:27 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h910XRXJ041415 for ; Tue, 30 Sep 2003 17:33:27 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h910XQSU041412 for perforce@freebsd.org; Tue, 30 Sep 2003 17:33:26 -0700 (PDT) (envelope-from peter@freebsd.org) Message-Id: <200310010033.h910XQSU041412@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 38934 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Date: Wed, 01 Oct 2003 00:33:34 -0000 X-Original-Date: Tue, 30 Sep 2003 17:33:26 -0700 (PDT) X-List-Received-Date: Wed, 01 Oct 2003 00:33:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=38934 Change 38934 by peter@peter_hammer on 2003/09/30 17:33:20 cleanups. use pcpu[] and common_tss[] instead of the evil vile horrid ugly overcomplicated obsolete *unnecessary* code to do it via page table tricks etc. move some initialization code from init_secondary() to start_ap() and friends. let the AP cpus start up with their state as complete as possible. Affected files ... .. //depot/projects/hammer/sys/amd64/amd64/machdep.c#56 edit .. //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#12 edit .. //depot/projects/hammer/sys/amd64/include/md_var.h#16 edit .. //depot/projects/hammer/sys/amd64/include/tss.h#6 edit Differences ... ==== //depot/projects/hammer/sys/amd64/amd64/machdep.c#56 (text+ko) ==== @@ -147,7 +147,8 @@ struct kva_md_info kmi; static struct trapframe proc0_tf; -static struct pcpu __pcpu; /* BSP pcpu data space */ + +struct pcpu __pcpu[MAXCPU]; struct mtx icu_lock; @@ -588,7 +589,7 @@ static char dblfault_stack[PAGE_SIZE] __aligned(16); -struct amd64tss common_tss; +struct amd64tss common_tss[MAXCPU]; /* software prototypes -- in more palatable form */ struct soft_segment_descriptor gdt_segs[] = { @@ -1145,7 +1146,7 @@ /* * make gdt memory segments */ - gdt_segs[GPROC0_SEL].ssd_base = (uintptr_t)&common_tss; + gdt_segs[GPROC0_SEL].ssd_base = (uintptr_t)&common_tss[0]; for (x = 0; x < NGDT; x++) { if (x != GPROC0_SEL && x != (GPROC0_SEL + 1)) @@ -1156,7 +1157,7 @@ r_gdt.rd_limit = NGDT * sizeof(gdt[0]) - 1; r_gdt.rd_base = (long) gdt; lgdt(&r_gdt); - pc = &__pcpu; + pc = &__pcpu[0]; wrmsr(MSR_FSBASE, 0); /* User value */ wrmsr(MSR_GSBASE, (u_int64_t)pc); @@ -1224,12 +1225,13 @@ initializecpu(); /* Initialize CPU registers */ /* make an initial tss so cpu can get interrupt stack on syscall! */ - common_tss.tss_rsp0 = thread0.td_kstack + KSTACK_PAGES * PAGE_SIZE - sizeof(struct pcb); + common_tss[0].tss_rsp0 = thread0.td_kstack + \ + KSTACK_PAGES * PAGE_SIZE - sizeof(struct pcb); /* Ensure the stack is aligned to 16 bytes */ - common_tss.tss_rsp0 &= ~0xF; + common_tss[0].tss_rsp0 &= ~0xF; /* doublefault stack space, runs on ist1 */ - common_tss.tss_ist1 = (long)&dblfault_stack[sizeof(dblfault_stack)]; + common_tss[0].tss_ist1 = (long)&dblfault_stack[sizeof(dblfault_stack)]; gsel_tss = GSEL(GPROC0_SEL, SEL_KPL); ltr(gsel_tss); ==== //depot/projects/hammer/sys/amd64/amd64/mp_machdep.c#12 (text+ko) ==== @@ -65,6 +65,7 @@ #include #include #include +#include #define WARMBOOT_TARGET 0 #define WARMBOOT_OFF (KERNBASE + 0x0467) @@ -322,38 +323,25 @@ void init_secondary(void) { -#ifdef SMP_ME_HARDER int gsel_tss; - int x, myid = bootAP; - u_int cr0; - u_int32 value; + int myid = bootAP; + u_int64_t cr0; + struct pcpu *pc; - gdt_segs[GPRIV_SEL].ssd_base = (long) &SMP_prvspace[myid]; - gdt_segs[GPROC0_SEL].ssd_base = - (long) &SMP_prvspace[myid].pcpu.pc_common_tss; - SMP_prvspace[myid].pcpu.pc_prvspace = - &SMP_prvspace[myid].pcpu; + lgdt(&r_gdt); /* does magic intra-segment return */ - for (x = 0; x < NGDT; x++) { - ssdtosd(&gdt_segs[x], &gdt[myid * NGDT + x].sd); - } + pc = &__pcpu[myid]; - r_gdt.rd_limit = NGDT * sizeof(gdt[0]) - 1; - r_gdt.rd_base = (long) &gdt[myid * NGDT]; - lgdt(&r_gdt); /* does magic intra-segment return */ + wrmsr(MSR_FSBASE, 0); /* User value */ + wrmsr(MSR_GSBASE, (u_int64_t)pc); + wrmsr(MSR_KGSBASE, 0); /* User value while we're in the kernel */ lidt(&r_idt); - lldt(_default_ldt); - PCPU_SET(currentldt, _default_ldt); + common_tss[myid] = common_tss[0]; + common_tss[myid].tss_rsp0 = 0; /* not used until after switch */ gsel_tss = GSEL(GPROC0_SEL, SEL_KPL); - gdt[myid * NGDT + GPROC0_SEL].sd.sd_type = SDT_SYSTSS; - PCPU_SET(common_tss.tss_esp0, 0); /* not used until after switch */ - PCPU_SET(common_tss.tss_ss0, GSEL(GDATA_SEL, SEL_KPL)); - PCPU_SET(common_tss.tss_ioopt, (sizeof (struct i386tss)) << 16); - PCPU_SET(tss_gdt, &gdt[myid * NGDT + GPROC0_SEL].sd); - PCPU_SET(common_tssd, *PCPU_GET(tss_gdt)); ltr(gsel_tss); /* @@ -366,14 +354,11 @@ load_cr0(cr0); /* Disable local apic just to be sure. */ - value = lapic->svr; - value &= ~(APIC_SVR_SWEN); - lapic->svr = value; + lapic_disable(); mp_naps++; ap_init(); /* kick things off, this does not return */ -#endif } /******************************************************************* @@ -442,12 +427,24 @@ continue; cpu++; - /* allocate a new private data page */ - pc = (struct pcpu *)kmem_alloc(kernel_map, PAGE_SIZE); + /* Get per-cpu data */ + pc = &__pcpu[myid]; /* allocate and set up an idle stack data page */ stack = (char *)kmem_alloc(kernel_map, KSTACK_PAGES * PAGE_SIZE); + gdt_segs[GPROC0_SEL].ssd_base = + (long) &SMP_prvspace[myid].pcpu.pc_common_tss; + pc->pc_prvspace = pc; + + for (x = 0; x < NGDT; x++) + if (x != GPROC0_SEL && x != (GPROC0_SEL + 1)) + ssdtosd(&gdt_segs[x], &gdt[myid * NGDT + x].sd); + ssdtosyssd(&gdt_segs[GPROC0_SEL], (struct system_segment_descriptor *)&gdt[GPROC0_SEL]); + + r_gdt.rd_limit = NGDT * sizeof(gdt[0]) - 1; + r_gdt.rd_base = (long) &gdt[myid * NGDT]; + /* prime data page for it to use */ pcpu_init(pc, cpu, sizeof(struct pcpu)); pc->pc_apic_id = apic_id; ==== //depot/projects/hammer/sys/amd64/include/md_var.h#16 (text+ko) ==== @@ -52,6 +52,8 @@ extern char sigcode[]; extern int szsigcode; +extern struct pcpu __pcpu[]; + typedef void alias_for_inthand_t(u_int cs, u_int ef, u_int esp, u_int ss); struct thread; struct reg; ==== //depot/projects/hammer/sys/amd64/include/tss.h#6 (text+ko) ==== @@ -69,7 +69,7 @@ }; #ifdef _KERNEL -extern struct amd64tss common_tss; +extern struct amd64tss common_tss[]; #endif #endif /* _MACHINE_TSS_H_ */ From owner-p4-projects@FreeBSD.ORG Tue Sep 30 20:34:16 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D345316A4C0; Tue, 30 Sep 2003 20:34:15 -0700 (PDT) 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 ACF8316A4B3 for ; Tue, 30 Sep 2003 20:34:15 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 38CC743FF9 for ; Tue, 30 Sep 2003 20:34:15 -0700 (PDT) (envelope-from imp@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h913YFXJ051110 for ; Tue, 30 Sep 2003 20:34:15 -0700 (PDT) (envelope-from imp@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h913YEnh051107 for perforce@freebsd.org; Tue, 30 Sep 2003 20:34:14 -0700 (PDT) (envelope-from imp@freebsd.org) Message-Id: <200310010334.h913YEnh051107@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to imp@freebsd.org using -f From: Warner Losh To: Perforce Change Reviews Subject: PERFORCE change 38944 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Date: Wed, 01 Oct 2003 03:34:16 -0000 X-Original-Date: Tue, 30 Sep 2003 20:34:14 -0700 (PDT) X-List-Received-Date: Wed, 01 Oct 2003 03:34:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=38944 Change 38944 by imp@imp_koguchi on 2003/09/30 20:34:04 cv_wait usually loops, per rwatson. Affected files ... .. //depot/doc/strawman-driver.c#6 edit Differences ... ==== //depot/doc/strawman-driver.c#6 (text+ko) ==== @@ -23,17 +23,24 @@ return EGONE; if (sc->dead) /* RACE #1, a */ return EGONE; -... + switch (cmd) + { case FOO_GERBIL: /* * Wait for a weird GERBIL event in the device and return it */ mtx_lock(&sc->mtx); - cv_wait(&sc->cv, &sc->mtx); + sc->sc_gerbil = 0; + while (!sc->sc_gerbil) { + if (sc->dead) /* Race #1, b */ + return EGONE; + cv_wait(&sc->cv, &sc->mtx); + } mtx_unlock(&sc->mtx); - if (sc->dead) /* Race #1, b */ - return EGONE; - ... + return (0); + default: + return (ENOTTY); + } } static void From owner-p4-projects@FreeBSD.ORG Fri Oct 3 13:34:40 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 14D4A16A4C0; Fri, 3 Oct 2003 13:34:40 -0700 (PDT) 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 CB9E416A4B3 for ; Fri, 3 Oct 2003 13:34:39 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4F25E43FCB for ; Fri, 3 Oct 2003 13:34:39 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h93KYdXJ009129 for ; Fri, 3 Oct 2003 13:34:39 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h93KYc9m009126 for perforce@freebsd.org; Fri, 3 Oct 2003 13:34:38 -0700 (PDT) (envelope-from jhb@freebsd.org) Message-Id: <200310032034.h93KYc9m009126@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 39109 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Date: Fri, 03 Oct 2003 20:34:40 -0000 X-Original-Date: Fri, 3 Oct 2003 13:34:38 -0700 (PDT) X-List-Received-Date: Fri, 03 Oct 2003 20:34:40 -0000 http://perforce.freebsd.org/chv.cgi?CH=39109 Change 39109 by jhb@jhb_laptop on 2003/10/03 13:34:00 Add some more notes about hooking up the glue to let the kernel power devices down and then let userland ask the kernel to do so. Affected files ... .. //depot/projects/power/notes#5 edit Differences ... ==== //depot/projects/power/notes#5 (text+ko) ==== @@ -20,6 +20,22 @@ - XXX: need to handle _PRx and _SxD !! - We should be able to hook the power resource stuff up once we have our power shadow tree in the acpi_SetPowerState() function. +- define a bus method for powering up/down devices + - bus_set_powerstate(parent, child, state) where state is on or off +- define either a device or syscall for asking new-bus to dispatch + commands to a given device + - The power command would be sent to the parent device using + device_get_parent() for the simple case (power off fdc0) +- define a bus method to locate a child of a specific device by name + using a 'parent:child' syntax where the format of the "child" string + is defined by the parent driver. Thus, 'pci0::' might be + for PCI, 'eisa0:' for EISA, 'pccard0:' for a PCMCIA device in + slot 0, etc. + - Convert device_power() to use this method to look up the child device + if the name contains a colon instead of treating the name as a pure + name of the child device +- Perhaps rename device_power() to device_command() to allow for other + commands like eject, etc. - convert to a model of suspending the device via device_suspend()/resume() rather than detach()/attach() - This may require fixes to drivers so that they continue to function From owner-p4-projects@FreeBSD.ORG Mon Oct 6 17:34:36 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8792816A4C0; Mon, 6 Oct 2003 17:34:36 -0700 (PDT) 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 29CBC16A4B3 for ; Mon, 6 Oct 2003 17:34:36 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 718FD43FF2 for ; Mon, 6 Oct 2003 17:34:35 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h970YZXJ084435 for ; Mon, 6 Oct 2003 17:34:35 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h970YYWq084432 for perforce@freebsd.org; Mon, 6 Oct 2003 17:34:34 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Date: Mon, 6 Oct 2003 17:34:34 -0700 (PDT) Message-Id: <200310070034.h970YYWq084432@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to Hrishikesh_Dandekar@NAI.com using -f From: Hrishikesh Dandekar To: Perforce Change Reviews Subject: PERFORCE change 39279 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 07 Oct 2003 00:34:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=39279 Change 39279 by hdandeka@hdandeka_yash on 2003/10/06 17:33:41 Integrate the mac_create_ipc_msgmsg related changes from the mac branch. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/kern/kern_mac.c#11 integrate .. //depot/projects/trustedbsd/sebsd/sys/kern/sysv_msg.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/mac_biba/mac_biba.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/mac_lomac/mac_lomac.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/mac_mls/mac_mls.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/mac_stub/mac_stub.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/mac_test/mac_test.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/sys/mac.h#8 integrate .. //depot/projects/trustedbsd/sebsd/sys/sys/mac_policy.h#8 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/kern/kern_mac.c#11 (text+ko) ==== @@ -40,7 +40,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.97 2003/08/21 18:21:22 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); #include "opt_mac.h" #include "opt_devfs.h" @@ -1350,7 +1350,8 @@ mac_check_structmac_consistent(struct mac *mac) { - if (mac->m_buflen > MAC_MAX_LABEL_BUF_LEN) + if (mac->m_buflen < 0 || + mac->m_buflen > MAC_MAX_LABEL_BUF_LEN) return (EINVAL); return (0); @@ -2521,10 +2522,12 @@ } void -mac_create_ipc_msgmsg(struct ucred *cred, struct msg *msgptr) +mac_create_ipc_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, + struct msg *msgptr) { - MAC_PERFORM(create_ipc_msgmsg, cred, msgptr, &msgptr->label); + MAC_PERFORM(create_ipc_msgmsg, cred, msqkptr, &msqkptr->label, + msgptr, &msgptr->label); } void ==== //depot/projects/trustedbsd/sebsd/sys/kern/sysv_msg.c#6 (text+ko) ==== @@ -18,7 +18,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/sysv_msg.c,v 1.49 2003/06/11 00:56:57 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sysv_msg.c,v 1.50 2003/08/07 16:42:27 nectar Exp $"); #include "opt_sysvipc.h" #include "opt_mac.h" @@ -349,7 +349,7 @@ struct thread *td; /* XXX actually varargs. */ struct msgsys_args /* { - u_int which; + int which; int a2; int a3; int a4; @@ -361,7 +361,8 @@ if (!jail_sysvipc_allowed && jailed(td->td_ucred)) return (ENOSYS); - if (uap->which >= sizeof(msgcalls)/sizeof(msgcalls[0])) + if (uap->which < 0 || + uap->which >= sizeof(msgcalls)/sizeof(msgcalls[0])) return (EINVAL); error = (*msgcalls[uap->which])(td, &uap->a2); return (error); @@ -890,7 +891,7 @@ msghdr->msg_spot = -1; msghdr->msg_ts = msgsz; #ifdef MAC - mac_create_ipc_msgmsg(td->td_ucred,msghdr); + mac_create_ipc_msgmsg(td->td_ucred, msqkptr, msghdr); /* * XXX: Should the mac_check_ipc_msgmsq check follow here immediately ? * Or, should it be checked just before the msg is enqueued in the msgq ==== //depot/projects/trustedbsd/sebsd/sys/security/mac_biba/mac_biba.c#6 (text+ko) ==== @@ -1172,11 +1172,12 @@ */ static void -mac_biba_create_ipc_msgmsg(struct ucred *cred, struct msg *msgptr, - struct label *msglabel) +mac_biba_create_ipc_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, + struct label *msqlabel, struct msg *msgptr, struct label *msglabel) { struct mac_biba *source, *dest; + /* Ignore the msgq label */ source = SLOT(&cred->cr_label); dest = SLOT(msglabel); ==== //depot/projects/trustedbsd/sebsd/sys/security/mac_lomac/mac_lomac.c#6 (text+ko) ==== @@ -1244,11 +1244,12 @@ * Labeling event operations: System V IPC objects. */ static void -mac_lomac_create_ipc_msgmsg(struct ucred *cred, struct msg *msgptr, - struct label *msglabel) +mac_lomac_create_ipc_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, + struct label *msqlabel, struct msg *msgptr, struct label *msglabel) { struct mac_lomac *source, *dest; + /* Ignore the msgq label */ source = SLOT(&cred->cr_label); dest = SLOT(msglabel); ==== //depot/projects/trustedbsd/sebsd/sys/security/mac_mls/mac_mls.c#6 (text+ko) ==== @@ -1140,11 +1140,12 @@ */ static void -mac_mls_create_ipc_msgmsg(struct ucred *cred, struct msg *msgptr, - struct label *msglabel) +mac_mls_create_ipc_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, + struct label *msqlabel, struct msg *msgptr, struct label *msglabel) { struct mac_mls *source, *dest; + /* Ignore the msgq label */ source = SLOT(&cred->cr_label); dest = SLOT(msglabel); ==== //depot/projects/trustedbsd/sebsd/sys/security/mac_stub/mac_stub.c#5 (text+ko) ==== @@ -344,8 +344,8 @@ } static void -stub_create_ipc_msgmsg(struct ucred *cred, struct msg *msgptr, - struct label *msglabel) +stub_create_ipc_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, + struct label *msqlabel, struct msg *msgptr, struct label *msglabel) { } ==== //depot/projects/trustedbsd/sebsd/sys/security/mac_test/mac_test.c#6 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/security/mac_test/mac_test.c,v 1.30 2003/08/21 17:28:45 rwatson Exp $ + * $FreeBSD: src/sys/security/mac_test/mac_test.c,v 1.31 2003/08/22 12:32:07 rwatson Exp $ */ /* @@ -988,11 +988,12 @@ } static void -mac_test_create_ipc_msgmsg(struct ucred *cred, struct msg *msgptr, - struct label *msglabel) +mac_test_create_ipc_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, + struct label *msqlabel, struct msg *msgptr, struct label *msglabel) { ASSERT_SYSVIPCMSG_LABEL(msglabel); + ASSERT_SYSVIPCMSQ_LABEL(msqlabel); } static void @@ -2270,7 +2271,7 @@ .mpo_create_mbuf_netlayer = mac_test_create_mbuf_netlayer, .mpo_fragment_match = mac_test_fragment_match, .mpo_reflect_mbuf_icmp = mac_test_reflect_mbuf_icmp, - .mpo_reflect_mbuf_icmp = mac_test_reflect_mbuf_tcp, + .mpo_reflect_mbuf_tcp = mac_test_reflect_mbuf_tcp, .mpo_relabel_ifnet = mac_test_relabel_ifnet, .mpo_update_ipq = mac_test_update_ipq, .mpo_update_mbuf_from_cipso = mac_test_update_mbuf_from_cipso, ==== //depot/projects/trustedbsd/sebsd/sys/sys/mac.h#8 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/sys/mac.h,v 1.42 2003/08/21 18:21:22 rwatson Exp $ + * $FreeBSD: src/sys/sys/mac.h,v 1.45 2003/08/29 02:43:57 rwatson Exp $ */ /* * Userland/kernel interface for Mandatory Access Control. @@ -86,7 +86,7 @@ int mac_get_pid(pid_t _pid, mac_t _label); int mac_get_proc(mac_t _label); int mac_is_present(const char *_policyname); -int mac_prepare(mac_t *_label, char *_elements); +int mac_prepare(mac_t *_label, const char *_elements); int mac_prepare_file_label(mac_t *_label); int mac_prepare_ifnet_label(mac_t *_label); int mac_prepare_process_label(mac_t *_label); @@ -219,7 +219,8 @@ /* * Labeling event operations: System V IPC primitives */ -void mac_create_ipc_msgmsg(struct ucred *cred, struct msg *msgptr); +void mac_create_ipc_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, + struct msg *msgptr); void mac_create_ipc_msgqueue(struct ucred *cred, struct msqid_kernel *msqkptr); void mac_create_ipc_sema(struct ucred *cred, ==== //depot/projects/trustedbsd/sebsd/sys/sys/mac_policy.h#8 (text+ko) ==== @@ -226,7 +226,10 @@ /* * Labeling event operations: System V IPC primitives */ - void (*mpo_create_ipc_msgmsg)(struct ucred *cred, struct msg *msgptr, + void (*mpo_create_ipc_msgmsg)(struct ucred *cred, + struct msqid_kernel *msqkptr, + struct label *msqlabel, + struct msg *msgptr, struct label *msglabel); void (*mpo_create_ipc_msgqueue)(struct ucred *cred, struct msqid_kernel *msqkptr, struct label *msqlabel); From owner-p4-projects@FreeBSD.ORG Sun Oct 12 18:35:02 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 02AAF16A4C0; Sun, 12 Oct 2003 18:35:02 -0700 (PDT) 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 D121616A4B3 for ; Sun, 12 Oct 2003 18:35:01 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4569243F3F for ; Sun, 12 Oct 2003 18:35:01 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9D1Z1XJ077675 for ; Sun, 12 Oct 2003 18:35:01 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9D1Z018077662 for perforce@freebsd.org; Sun, 12 Oct 2003 18:35:00 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Sun, 12 Oct 2003 18:35:00 -0700 (PDT) Message-Id: <200310130135.h9D1Z018077662@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 39613 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 13 Oct 2003 01:35:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=39613 Change 39613 by sam@sam_ebb on 2003/10/12 18:34:52 Must reset the pointer to the 802.11 header after prepending for WEP in case the prepend requires adding a new mbuf. This fixes basic 40-bit WEP. Affected files ... .. //depot/projects/netperf/sys/dev/ath/if_ath.c#17 edit Differences ... ==== //depot/projects/netperf/sys/dev/ath/if_ath.c#17 (text+ko) ==== @@ -1725,6 +1725,7 @@ return ENOMEM; } ivp = hdrbuf + hdrlen; + wh = mtod(m0, struct ieee80211_frame *); /* * XXX * IV must not duplicate during the lifetime of the key. From owner-p4-projects@FreeBSD.ORG Mon Oct 20 11:22:32 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BFE5E16A4C0; Mon, 20 Oct 2003 11:22:31 -0700 (PDT) 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 97C6616A4B3 for ; Mon, 20 Oct 2003 11:22:31 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F234143F3F for ; Mon, 20 Oct 2003 11:22:29 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KIMTXJ074902 for ; Mon, 20 Oct 2003 11:22:29 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KIMSKS074899 for perforce@freebsd.org; Mon, 20 Oct 2003 11:22:28 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Mon, 20 Oct 2003 11:22:28 -0700 (PDT) Message-Id: <200310201822.h9KIMSKS074899@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40013 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 18:22:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=40013 Change 40013 by sam@sam_ebb on 2003/10/20 11:22:16 IFC @ 40008 Affected files ... .. //depot/projects/netperf/sys/alpha/alpha/machdep.c#6 integrate .. //depot/projects/netperf/sys/amd64/amd64/machdep.c#6 integrate .. //depot/projects/netperf/sys/cam/cam_periph.c#4 integrate .. //depot/projects/netperf/sys/cam/scsi/scsi_cd.c#9 integrate .. //depot/projects/netperf/sys/compat/linprocfs/linprocfs.c#9 integrate .. //depot/projects/netperf/sys/compat/linux/linux_ioctl.c#2 integrate .. //depot/projects/netperf/sys/compat/svr4/svr4_filio.c#2 integrate .. //depot/projects/netperf/sys/compat/svr4/svr4_misc.c#3 integrate .. //depot/projects/netperf/sys/compat/svr4/svr4_signal.c#2 integrate .. //depot/projects/netperf/sys/compat/svr4/svr4_stream.c#2 integrate .. //depot/projects/netperf/sys/compat/svr4/svr4_sysvec.c#3 integrate .. //depot/projects/netperf/sys/compat/svr4/svr4_util.h#2 integrate .. //depot/projects/netperf/sys/conf/files#14 integrate .. //depot/projects/netperf/sys/crypto/rijndael/Makefile#1 branch .. //depot/projects/netperf/sys/crypto/rijndael/rijndael-alg-fst.c#3 integrate .. //depot/projects/netperf/sys/crypto/rijndael/rijndael-alg-fst.h#3 integrate .. //depot/projects/netperf/sys/crypto/rijndael/rijndael-api-fst.c#5 integrate .. //depot/projects/netperf/sys/crypto/rijndael/rijndael-api-fst.h#3 integrate .. //depot/projects/netperf/sys/crypto/rijndael/test00.c#1 branch .. //depot/projects/netperf/sys/dev/acpica/acpi.c#10 integrate .. //depot/projects/netperf/sys/dev/ata/ata-lowlevel.c#9 integrate .. //depot/projects/netperf/sys/dev/ata/ata-pci.c#5 integrate .. //depot/projects/netperf/sys/dev/ata/ata-queue.c#7 integrate .. //depot/projects/netperf/sys/dev/ata/atapi-cd.c#9 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep.c#5 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep_eisa.c#3 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep_isa.c#4 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep_mca.c#3 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep_pccard.c#4 integrate .. //depot/projects/netperf/sys/dev/ep/if_epreg.h#2 integrate .. //depot/projects/netperf/sys/dev/ep/if_epvar.h#2 integrate .. //depot/projects/netperf/sys/dev/firewire/sbp.c#8 integrate .. //depot/projects/netperf/sys/dev/firewire/sbp_targ.c#1 branch .. //depot/projects/netperf/sys/dev/ips/ips_commands.c#3 integrate .. //depot/projects/netperf/sys/dev/matcd/matcd.c#3 integrate .. //depot/projects/netperf/sys/dev/mcd/mcd.c#3 integrate .. //depot/projects/netperf/sys/dev/md/md.c#6 integrate .. //depot/projects/netperf/sys/dev/null/null.c#4 integrate .. //depot/projects/netperf/sys/dev/ofw/ofw_disk.c#3 integrate .. //depot/projects/netperf/sys/dev/raidframe/rf_freebsdkintf.c#4 integrate .. //depot/projects/netperf/sys/dev/scd/scd.c#3 integrate .. //depot/projects/netperf/sys/dev/streams/streams.c#3 integrate .. //depot/projects/netperf/sys/dev/vinum/vinumrequest.c#3 integrate .. //depot/projects/netperf/sys/fs/devfs/devfs_vnops.c#2 integrate .. //depot/projects/netperf/sys/fs/hpfs/hpfs_vnops.c#3 integrate .. //depot/projects/netperf/sys/fs/msdosfs/msdosfs_vnops.c#4 integrate .. //depot/projects/netperf/sys/fs/nwfs/nwfs_vnops.c#2 integrate .. //depot/projects/netperf/sys/fs/procfs/procfs_map.c#4 integrate .. //depot/projects/netperf/sys/fs/smbfs/smbfs_vnops.c#4 integrate .. //depot/projects/netperf/sys/fs/specfs/spec_vnops.c#7 integrate .. //depot/projects/netperf/sys/fs/udf/udf_vnops.c#3 integrate .. //depot/projects/netperf/sys/geom/geom_dev.c#7 integrate .. //depot/projects/netperf/sys/geom/geom_disk.c#5 integrate .. //depot/projects/netperf/sys/geom/geom_io.c#6 integrate .. //depot/projects/netperf/sys/gnu/ext2fs/ext2_bmap.c#2 integrate .. //depot/projects/netperf/sys/gnu/ext2fs/ext2_inode.c#3 integrate .. //depot/projects/netperf/sys/gnu/ext2fs/ext2_vnops.c#2 integrate .. //depot/projects/netperf/sys/i386/i386/machdep.c#8 integrate .. //depot/projects/netperf/sys/i386/i386/vm_machdep.c#4 integrate .. //depot/projects/netperf/sys/ia64/ia64/machdep.c#12 integrate .. //depot/projects/netperf/sys/ia64/include/vmparam.h#3 integrate .. //depot/projects/netperf/sys/isa/fd.c#5 integrate .. //depot/projects/netperf/sys/isofs/cd9660/cd9660_vnops.c#3 integrate .. //depot/projects/netperf/sys/kern/init_sysent.c#3 integrate .. //depot/projects/netperf/sys/kern/kern_descrip.c#6 integrate .. //depot/projects/netperf/sys/kern/kern_event.c#2 integrate .. //depot/projects/netperf/sys/kern/kern_exec.c#6 integrate .. //depot/projects/netperf/sys/kern/kern_idle.c#3 integrate .. //depot/projects/netperf/sys/kern/kern_physio.c#3 integrate .. //depot/projects/netperf/sys/kern/subr_disk.c#3 integrate .. //depot/projects/netperf/sys/kern/sys_pipe.c#7 integrate .. //depot/projects/netperf/sys/kern/syscalls.c#3 integrate .. //depot/projects/netperf/sys/kern/syscalls.master#3 integrate .. //depot/projects/netperf/sys/kern/tty_cons.c#6 integrate .. //depot/projects/netperf/sys/kern/uipc_syscalls.c#6 integrate .. //depot/projects/netperf/sys/kern/vfs_bio.c#10 integrate .. //depot/projects/netperf/sys/kern/vfs_cluster.c#3 integrate .. //depot/projects/netperf/sys/kern/vfs_syscalls.c#7 integrate .. //depot/projects/netperf/sys/modules/firewire/Makefile#2 integrate .. //depot/projects/netperf/sys/modules/firewire/sbp_targ/Makefile#1 branch .. //depot/projects/netperf/sys/net/bpf.h#2 integrate .. //depot/projects/netperf/sys/netinet/tcp_input.c#4 edit .. //depot/projects/netperf/sys/netinet6/ah_core.c#5 integrate .. //depot/projects/netperf/sys/netinet6/esp_core.c#6 integrate .. //depot/projects/netperf/sys/netinet6/in6.c#9 integrate .. //depot/projects/netperf/sys/netinet6/in6_rmx.c#8 integrate .. //depot/projects/netperf/sys/netinet6/ip6_forward.c#8 integrate .. //depot/projects/netperf/sys/netinet6/ip6_mroute.c#4 integrate .. //depot/projects/netperf/sys/netinet6/ip6_output.c#15 integrate .. //depot/projects/netperf/sys/netinet6/nd6.c#12 integrate .. //depot/projects/netperf/sys/netinet6/nd6.h#5 integrate .. //depot/projects/netperf/sys/netinet6/nd6_rtr.c#8 integrate .. //depot/projects/netperf/sys/nfsclient/nfs_bio.c#4 integrate .. //depot/projects/netperf/sys/nfsclient/nfs_vnops.c#6 integrate .. //depot/projects/netperf/sys/opencrypto/cryptodev.c#3 integrate .. //depot/projects/netperf/sys/pc98/i386/machdep.c#6 integrate .. //depot/projects/netperf/sys/pc98/pc98/fd.c#4 integrate .. //depot/projects/netperf/sys/pc98/pc98/wd.c#2 integrate .. //depot/projects/netperf/sys/pc98/pc98/wd_cd.c#2 integrate .. //depot/projects/netperf/sys/pci/if_dc.c#8 integrate .. //depot/projects/netperf/sys/pci/if_sis.c#11 integrate .. //depot/projects/netperf/sys/powerpc/powerpc/machdep.c#3 integrate .. //depot/projects/netperf/sys/sparc64/sparc64/machdep.c#5 integrate .. //depot/projects/netperf/sys/sys/bio.h#2 integrate .. //depot/projects/netperf/sys/sys/buf.h#4 integrate .. //depot/projects/netperf/sys/sys/cdio.h#2 integrate .. //depot/projects/netperf/sys/sys/conf.h#4 integrate .. //depot/projects/netperf/sys/sys/mbuf.h#4 integrate .. //depot/projects/netperf/sys/sys/proc.h#6 integrate .. //depot/projects/netperf/sys/sys/syscall.h#3 integrate .. //depot/projects/netperf/sys/sys/syscall.mk#3 integrate .. //depot/projects/netperf/sys/sys/sysproto.h#3 integrate .. //depot/projects/netperf/sys/ufs/ffs/ffs_inode.c#3 integrate .. //depot/projects/netperf/sys/ufs/ufs/ufs_bmap.c#2 integrate .. //depot/projects/netperf/sys/ufs/ufs/ufs_vnops.c#4 integrate .. //depot/projects/netperf/sys/vm/swap_pager.c#6 integrate .. //depot/projects/netperf/sys/vm/vm_contig.c#4 integrate .. //depot/projects/netperf/sys/vm/vm_map.c#9 integrate .. //depot/projects/netperf/sys/vm/vm_object.c#7 integrate .. //depot/projects/netperf/sys/vm/vm_pageout.c#8 integrate .. //depot/projects/netperf/sys/vm/vm_pageout.h#3 integrate .. //depot/projects/netperf/sys/vm/vm_pager.c#3 integrate .. //depot/projects/netperf/sys/vm/vnode_pager.c#8 integrate Differences ... ==== //depot/projects/netperf/sys/alpha/alpha/machdep.c#6 (text+ko) ==== @@ -88,7 +88,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/machdep.c,v 1.212 2003/08/25 03:43:07 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/machdep.c,v 1.213 2003/10/19 02:36:06 peter Exp $"); #include "opt_compat.h" #include "opt_ddb.h" @@ -1731,6 +1731,12 @@ prom_halt(1); } +void +cpu_idle(void) +{ + /* Insert code to halt (until next interrupt) for the idle loop */ +} + /* * Clear registers on exec */ ==== //depot/projects/netperf/sys/amd64/amd64/machdep.c#6 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.593 2003/09/23 00:45:55 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/machdep.c,v 1.594 2003/10/18 22:25:07 njl Exp $"); #include "opt_atalk.h" #include "opt_compat.h" @@ -455,6 +455,17 @@ SYSCTL_INT(_machdep, OID_AUTO, cpu_idle_hlt, CTLFLAG_RW, &cpu_idle_hlt, 0, "Idle loop HLT enable"); +static void +cpu_idle_default(void) +{ + /* + * we must absolutely guarentee that hlt is the + * absolute next instruction after sti or we + * introduce a timing window. + */ + __asm __volatile("sti; hlt"); +} + /* * Note that we have to be careful here to avoid a race between checking * sched_runnable() and actually halting. If we don't do this, we may waste @@ -467,19 +478,16 @@ if (cpu_idle_hlt) { disable_intr(); - if (sched_runnable()) { + if (sched_runnable()) enable_intr(); - } else { - /* - * we must absolutely guarentee that hlt is the - * absolute next instruction after sti or we - * introduce a timing window. - */ - __asm __volatile("sti; hlt"); - } + else + (*cpu_idle_hook)(); } } +/* Other subsystems (e.g., ACPI) can hook this later. */ +void (*cpu_idle_hook)(void) = cpu_idle_default; + /* * Clear registers on exec */ ==== //depot/projects/netperf/sys/cam/cam_periph.c#4 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/cam/cam_periph.c,v 1.53 2003/09/21 08:42:32 thomas Exp $"); +__FBSDID("$FreeBSD: src/sys/cam/cam_periph.c,v 1.54 2003/10/18 11:01:11 phk Exp $"); #include #include @@ -638,9 +638,6 @@ /* set the transfer length, we know it's < DFLTPHYS */ mapinfo->bp[i]->b_bufsize = lengths[i]; - /* set the flags */ - mapinfo->bp[i]->b_flags = B_PHYS; - /* set the direction */ mapinfo->bp[i]->b_iocmd = flags[i]; @@ -656,10 +653,8 @@ for (j = 0; j < i; ++j) { *data_ptrs[j] = mapinfo->bp[j]->b_saveaddr; vunmapbuf(mapinfo->bp[j]); - mapinfo->bp[j]->b_flags &= ~B_PHYS; relpbuf(mapinfo->bp[j], NULL); } - mapinfo->bp[i]->b_flags &= ~B_PHYS; relpbuf(mapinfo->bp[i], NULL); PRELE(curproc); return(EACCES); @@ -720,9 +715,6 @@ /* unmap the buffer */ vunmapbuf(mapinfo->bp[i]); - /* clear the flags we set above */ - mapinfo->bp[i]->b_flags &= ~B_PHYS; - /* release the buffer */ relpbuf(mapinfo->bp[i], NULL); } ==== //depot/projects/netperf/sys/cam/scsi/scsi_cd.c#9 (text+ko) ==== @@ -46,7 +46,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_cd.c,v 1.86 2003/10/07 14:46:59 thomas Exp $"); +__FBSDID("$FreeBSD: src/sys/cam/scsi/scsi_cd.c,v 1.87 2003/10/18 17:24:05 phk Exp $"); #include "opt_cd.h" @@ -1518,8 +1518,8 @@ /* read */bp->bio_cmd == BIO_READ, /* byte2 */ 0, /* minimum_cmd_size */ 10, - /* lba */ bp->bio_blkno / - (softc->params.blksize / DEV_BSIZE), + /* lba */ bp->bio_offset / + softc->params.blksize, bp->bio_bcount / softc->params.blksize, /* data_ptr */ bp->bio_data, /* dxfer_len */ bp->bio_bcount, ==== //depot/projects/netperf/sys/compat/linprocfs/linprocfs.c#9 (text+ko) ==== @@ -40,7 +40,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linprocfs/linprocfs.c,v 1.76 2003/10/08 18:05:59 gallatin Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linprocfs/linprocfs.c,v 1.78 2003/10/20 04:10:20 cognet Exp $"); #include #include @@ -822,11 +822,98 @@ static int linprocfs_doprocmaps(PFS_FILL_ARGS) { - sbuf_printf(sb, "doprocmaps\n%c", '\0'); - - return (0); -} - + char mebuffer[512]; + vm_map_t map = &p->p_vmspace->vm_map; + vm_map_entry_t entry; + vm_object_t obj, tobj, lobj; + vm_ooffset_t off = 0; + char *name = "", *freename = NULL; + size_t len; + ino_t ino; + int ref_count, shadow_count, flags; + int error; + + PROC_LOCK(p); + error = p_candebug(td, p); + PROC_UNLOCK(p); + if (error) + return (error); + + if (uio->uio_rw != UIO_READ) + return (EOPNOTSUPP); + + if (uio->uio_offset != 0) + return (0); + + error = 0; + if (map != &curthread->td_proc->p_vmspace->vm_map) + vm_map_lock_read(map); + for (entry = map->header.next; + ((uio->uio_resid > 0) && (entry != &map->header)); + entry = entry->next) { + name = ""; + freename = NULL; + if (entry->eflags & MAP_ENTRY_IS_SUB_MAP) + continue; + obj = entry->object.vm_object; + for (lobj = tobj = obj; tobj; tobj = tobj->backing_object) + lobj = tobj; + ino = 0; + if (lobj) { + VM_OBJECT_LOCK(lobj); + off = IDX_TO_OFF(lobj->size); + if (lobj->type == OBJT_VNODE && lobj->handle) { + vn_fullpath(td, (struct vnode *)lobj->handle, + &name, &freename); + ino = ((struct vnode *) + lobj->handle)->v_cachedid; + } + flags = obj->flags; + ref_count = obj->ref_count; + shadow_count = obj->shadow_count; + VM_OBJECT_UNLOCK(lobj); + } else { + flags = 0; + ref_count = 0; + shadow_count = 0; + } + + /* + * format: + * start, end, access, offset, major, minor, inode, name. + */ + snprintf(mebuffer, sizeof mebuffer, + "%08lx-%08lx %s%s%s%s %08lx %02x:%02x %lu%s%s\n", + (u_long)entry->start, (u_long)entry->end, + (entry->protection & VM_PROT_READ)?"r":"-", + (entry->protection & VM_PROT_WRITE)?"w":"-", + (entry->protection & VM_PROT_EXECUTE)?"x":"-", + "p", + (u_long)off, + 0, + 0, + (u_long)ino, + *name ? " " : "", + name + ); + if (freename) + free(freename, M_TEMP); + len = strlen(mebuffer); + if (len > uio->uio_resid) + len = uio->uio_resid; /* + * XXX We should probably return + * EFBIG here, as in procfs. + */ + error = uiomove(mebuffer, len, uio); + if (error) + break; + } + if (map != &curthread->td_proc->p_vmspace->vm_map) + vm_map_unlock_read(map); + + return (error); +} + /* * Filler function for proc/net/dev */ ==== //depot/projects/netperf/sys/compat/linux/linux_ioctl.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ioctl.c,v 1.109 2003/06/28 19:32:07 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ioctl.c,v 1.110 2003/10/20 09:51:00 sos Exp $"); #include #include @@ -1408,24 +1408,7 @@ /* LINUX_CDROMREADMODE2 */ /* LINUX_CDROMREADMODE1 */ - - case LINUX_CDROMREADAUDIO: { - struct l_cdrom_read_audio lra; - struct ioc_read_audio bra; - - error = copyin((void *)args->arg, &lra, sizeof(lra)); - if (error) - break; - bra.address_format = lra.addr_format; - linux_to_bsd_msf_lba(bra.address_format, &lra.addr, - &bra.address); - bra.nframes = lra.nframes; - bra.buffer = lra.buf; - error = fo_ioctl(fp, CDIOCREADAUDIO, (caddr_t)&bra, - td->td_ucred, td); - break; - } - + /* LINUX_CDROMREADAUDIO */ /* LINUX_CDROMEJECT_SW */ /* LINUX_CDROMMULTISESSION */ /* LINUX_CDROM_GET_UPC */ ==== //depot/projects/netperf/sys/compat/svr4/svr4_filio.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_filio.c,v 1.29 2003/06/10 21:35:15 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_filio.c,v 1.30 2003/10/20 10:38:48 tjr Exp $"); #include #include @@ -40,6 +40,8 @@ #include #include #include +#include +#include #include @@ -64,6 +66,11 @@ int idx = 0, cerr; u_long siz; + mtx_assert(&Giant, MA_OWNED); + if (uap->nfds > td->td_proc->p_rlimit[RLIMIT_NOFILE].rlim_cur && + uap->nfds > FD_SETSIZE) + return (EINVAL); + pa.fds = uap->fds; pa.nfds = uap->nfds; pa.timeout = uap->timeout; ==== //depot/projects/netperf/sys/compat/svr4/svr4_misc.c#3 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_misc.c,v 1.66 2003/08/06 18:40:49 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_misc.c,v 1.67 2003/10/20 10:38:48 tjr Exp $"); #include "opt_mac.h" @@ -444,6 +444,9 @@ u_long *cookiebuf = NULL, *cookie; int ncookies = 0, *retval = td->td_retval; + if (uap->nbytes < 0) + return (EINVAL); + if ((error = getvnode(td->td_proc->p_fd, uap->fd, &fp)) != 0) return (error); @@ -1734,6 +1737,7 @@ { struct nameidata nd; int error, *retval = td->td_retval; + unsigned int ncopy; NDINIT(&nd, LOOKUP, NOFOLLOW | SAVENAME, UIO_USERSPACE, uap->path, td); @@ -1741,12 +1745,11 @@ if ((error = namei(&nd)) != 0) return error; - if ((error = copyout(nd.ni_cnd.cn_pnbuf, uap->buf, - uap->bufsiz)) != 0) + ncopy = min(uap->bufsiz, strlen(nd.ni_cnd.cn_pnbuf) + 1); + if ((error = copyout(nd.ni_cnd.cn_pnbuf, uap->buf, ncopy)) != 0) goto bad; - *retval = strlen(nd.ni_cnd.cn_pnbuf) < uap->bufsiz ? - strlen(nd.ni_cnd.cn_pnbuf) + 1 : uap->bufsiz; + *retval = ncopy; bad: NDFREE(&nd, NDF_ONLY_PNBUF); vput(nd.ni_vp); ==== //depot/projects/netperf/sys/compat/svr4/svr4_signal.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_signal.c,v 1.28 2003/06/10 21:35:15 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_signal.c,v 1.29 2003/10/20 10:38:48 tjr Exp $"); #include #include @@ -269,6 +269,9 @@ struct sigaction *nbsap; int error; + if (uap->signum < 0 || uap->signum >= SVR4_NSIG) + return (EINVAL); + DPRINTF(("@@@ svr4_sys_sigaction(%d, %d, %d)\n", td->td_proc->p_pid, uap->signum, SVR4_SVR42BSD_SIG(uap->signum))); @@ -337,9 +340,14 @@ p = td->td_proc; DPRINTF(("@@@ svr4_sys_signal(%d)\n", p->p_pid)); - signum = SVR4_SVR42BSD_SIG(SVR4_SIGNO(uap->signum)); - if (signum <= 0 || signum > SVR4_NSIG) + signum = SVR4_SIGNO(uap->signum); + if (signum < 0 || signum >= SVR4_NSIG) { + if (SVR4_SIGCALL(uap->signum) == SVR4_SIGNAL_MASK || + SVR4_SIGCALL(uap->signum) == SVR4_SIGDEFER_MASK) + td->td_retval[0] = (int)SVR4_SIG_ERR; return (EINVAL); + } + signum = SVR4_SVR42BSD_SIG(signum); switch (SVR4_SIGCALL(uap->signum)) { case SVR4_SIGDEFER_MASK: @@ -509,6 +517,8 @@ { struct kill_args ka; + if (uap->signum < 0 || uap->signum >= SVR4_NSIG) + return (EINVAL); ka.pid = uap->pid; ka.signum = SVR4_SVR42BSD_SIG(uap->signum); return kill(td, &ka); ==== //depot/projects/netperf/sys/compat/svr4/svr4_stream.c#2 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stream.c,v 1.45 2003/06/10 21:35:15 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stream.c,v 1.46 2003/10/20 10:38:48 tjr Exp $"); #define COMPAT_43 1 @@ -406,22 +406,32 @@ const char *str; struct svr4_strioctl *ioc; { - u_char *ptr = (u_char *) malloc(ioc->len, M_TEMP, M_WAITOK); + u_char *ptr = NULL; + int len; int error; + len = ioc->len; + if (len > 1024) + len = 1024; + + if (len > 0) { + ptr = (u_char *) malloc(len, M_TEMP, M_WAITOK); + if ((error = copyin(ioc->buf, ptr, len)) != 0) { + free((char *) ptr, M_TEMP); + return error; + } + } + uprintf("%s cmd = %ld, timeout = %d, len = %d, buf = %p { ", str, ioc->cmd, ioc->timeout, ioc->len, ioc->buf); - if ((error = copyin(ioc->buf, ptr, ioc->len)) != 0) { - free((char *) ptr, M_TEMP); - return error; - } - - bufprint(ptr, ioc->len); + if (ptr != NULL) + bufprint(ptr, len); uprintf("}\n"); - free((char *) ptr, M_TEMP); + if (ptr != NULL) + free((char *) ptr, M_TEMP); return 0; } @@ -435,6 +445,9 @@ int maxlen = str->maxlen; int len = str->len; + if (maxlen > 8192) + maxlen = 8192; + if (maxlen < 0) maxlen = 0; @@ -521,7 +534,8 @@ size_t l = strlen(path) + 1; void *tpath; - tpath = stackgap_alloc(&sg, l); + if ((tpath = stackgap_alloc(&sg, l)) == NULL) + return ENAMETOOLONG; la.ub = stackgap_alloc(&sg, sizeof(struct stat)); if ((error = copyout(path, tpath, l)) != 0) @@ -760,6 +774,9 @@ if (st == NULL) return EINVAL; + if (ioc->len < 0 || ioc->len > sizeof(lst)) + return EINVAL; + if ((error = copyin(ioc->buf, &lst, ioc->len)) != 0) return error; @@ -961,6 +978,9 @@ memset(&info, 0, sizeof(info)); + if (ioc->len < 0 || ioc->len > sizeof(info)) + return EINVAL; + if ((error = copyin(ioc->buf, &info, ioc->len)) != 0) return error; @@ -1009,6 +1029,9 @@ return EINVAL; } + if (ioc->len < 0 || ioc->len > sizeof(bnd)) + return EINVAL; + if ((error = copyin(ioc->buf, &bnd, ioc->len)) != 0) return error; @@ -1137,7 +1160,7 @@ struct sockaddr_in sain; struct sockaddr_un saun; struct svr4_strmcmd sc; - int sasize; + int sasize, oldsasize; caddr_t sg; int *lenp; @@ -1225,11 +1248,16 @@ return error; } + oldsasize = sasize; + if ((error = copyin(lenp, &sasize, sizeof(*lenp))) != 0) { DPRINTF(("ti_ioctl: error copying in socket size\n")); return error; } + if (sasize < 0 || sasize > oldsasize) + return EINVAL; + switch (st->s_family) { case AF_INET: sockaddr_to_netaddr_in(&sc, &sain); @@ -1794,7 +1822,7 @@ return EINVAL; } - if (ctl.len > sizeof(sc)) { + if (ctl.len < 0 || ctl.len > sizeof(sc)) { DPRINTF(("putmsg: Bad control size %d != %d\n", ctl.len, sizeof(struct svr4_strmcmd))); return EINVAL; @@ -1962,6 +1990,8 @@ if (uap->ctl != NULL) { if ((error = copyin(uap->ctl, &ctl, sizeof(ctl))) != 0) return error; + if (ctl.len < 0) + return EINVAL; } else { ctl.len = -1; @@ -2147,6 +2177,9 @@ if (ctl.maxlen > 36 && ctl.len < 36) ctl.len = 36; + if (ctl.len > sizeof(sc)) + ctl.len = sizeof(sc); + if ((error = copyin(ctl.buf, &sc, ctl.len)) != 0) return error; ==== //depot/projects/netperf/sys/compat/svr4/svr4_sysvec.c#3 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_sysvec.c,v 1.34 2003/09/25 01:10:23 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_sysvec.c,v 1.35 2003/10/20 10:38:48 tjr Exp $"); /* XXX we use functions that might not exist. */ #include "opt_compat.h" @@ -364,8 +364,10 @@ *pbuf = buf; else { sz = &ptr[len] - buf; - *pbuf = stackgap_alloc(sgp, sz + 1); - error = copyout(buf, *pbuf, sz); + if ((*pbuf = stackgap_alloc(sgp, sz + 1)) != NULL) + error = copyout(buf, *pbuf, sz); + else + error = ENAMETOOLONG; free(buf, M_TEMP); } ==== //depot/projects/netperf/sys/compat/svr4/svr4_util.h#2 (text+ko) ==== @@ -25,7 +25,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/sys/compat/svr4/svr4_util.h,v 1.6 2002/03/20 05:41:38 alfred Exp $ + * $FreeBSD: src/sys/compat/svr4/svr4_util.h,v 1.7 2003/10/20 10:38:48 tjr Exp $ */ #ifndef _SVR4_UTIL_H_ @@ -63,7 +63,10 @@ size_t sz; { void *p = (void *) *sgp; - *sgp += ALIGN(sz); + sz = ALIGN(sz); + if (*sgp + sz > (caddr_t)(PS_STRINGS - szsigcode)) + return NULL; + *sgp += sz; return p; } ==== //depot/projects/netperf/sys/conf/files#14 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.834 2003/10/15 08:53:04 phk Exp $ +# $FreeBSD: src/sys/conf/files,v 1.836 2003/10/19 21:28:33 ume Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -416,6 +416,7 @@ dev/firewire/fwohci_pci.c optional firewire pci dev/firewire/if_fwe.c optional fwe dev/firewire/sbp.c optional sbp +dev/firewire/sbp_targ.c optional sbp_targ dev/fxp/if_fxp.c optional fxp dev/gem/if_gem.c optional gem dev/gem/if_gem_pci.c optional gem pci @@ -1438,12 +1439,12 @@ netinet/tcp_timer.c optional inet netinet/tcp_usrreq.c optional inet netinet/udp_usrreq.c optional inet -netinet6/ah_aesxcbcmac.c optional ipsec +#netinet6/ah_aesxcbcmac.c optional ipsec netinet6/ah_core.c optional ipsec netinet6/ah_input.c optional ipsec netinet6/ah_output.c optional ipsec netinet6/dest6.c optional inet6 -netinet6/esp_aesctr.c optional ipsec ipsec_esp +#netinet6/esp_aesctr.c optional ipsec ipsec_esp netinet6/esp_core.c optional ipsec ipsec_esp netinet6/esp_input.c optional ipsec ipsec_esp netinet6/esp_output.c optional ipsec ipsec_esp ==== //depot/projects/netperf/sys/crypto/rijndael/rijndael-alg-fst.c#3 (text+ko) ==== @@ -1,31 +1,19 @@ -/* $KAME: rijndael-alg-fst.c,v 1.10 2003/07/15 10:47:16 itojun Exp $ */ -/** - * rijndael-alg-fst.c +/* $KAME: rijndael-alg-fst.c,v 1.7 2001/05/27 00:23:23 itojun Exp $ */ + +/* + * rijndael-alg-fst.c v2.3 April '2000 * - * @version 3.0 (December 2000) + * Optimised ANSI C code * - * Optimised ANSI C code for the Rijndael cipher (now AES) + * authors: v1.0: Antoon Bosselaers + * v2.0: Vincent Rijmen + * v2.3: Paulo Barreto * - * @author Vincent Rijmen - * @author Antoon Bosselaers - * @author Paulo Barreto - * - * This code is hereby placed in the public domain. - * - * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ''AS IS'' AND ANY EXPRESS - * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED - * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE - * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE - * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR - * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, - * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE - * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, - * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + * This code is placed in the public domain. */ + #include -__FBSDID("$FreeBSD: src/sys/crypto/rijndael/rijndael-alg-fst.c,v 1.5 2003/10/12 21:05:05 ume Exp $"); +__FBSDID("$FreeBSD: src/sys/crypto/rijndael/rijndael-alg-fst.c,v 1.6 2003/10/19 21:28:33 ume Exp $"); #include #include @@ -34,1191 +22,1426 @@ #else #include #endif - #include #include -/* -Te0[x] = S [x].[02, 01, 01, 03]; -Te1[x] = S [x].[03, 02, 01, 01]; -Te2[x] = S [x].[01, 03, 02, 01]; -Te3[x] = S [x].[01, 01, 03, 02]; -Te4[x] = S [x].[01, 01, 01, 01]; +const u8 S[256] = { + 99, 124, 119, 123, 242, 107, 111, 197, 48, 1, 103, 43, 254, 215, 171, 118, +202, 130, 201, 125, 250, 89, 71, 240, 173, 212, 162, 175, 156, 164, 114, 192, +183, 253, 147, 38, 54, 63, 247, 204, 52, 165, 229, 241, 113, 216, 49, 21, + 4, 199, 35, 195, 24, 150, 5, 154, 7, 18, 128, 226, 235, 39, 178, 117, + 9, 131, 44, 26, 27, 110, 90, 160, 82, 59, 214, 179, 41, 227, 47, 132, + 83, 209, 0, 237, 32, 252, 177, 91, 106, 203, 190, 57, 74, 76, 88, 207, +208, 239, 170, 251, 67, 77, 51, 133, 69, 249, 2, 127, 80, 60, 159, 168, + 81, 163, 64, 143, 146, 157, 56, 245, 188, 182, 218, 33, 16, 255, 243, 210, +205, 12, 19, 236, 95, 151, 68, 23, 196, 167, 126, 61, 100, 93, 25, 115, + 96, 129, 79, 220, 34, 42, 144, 136, 70, 238, 184, 20, 222, 94, 11, 219, +224, 50, 58, 10, 73, 6, 36, 92, 194, 211, 172, 98, 145, 149, 228, 121, +231, 200, 55, 109, 141, 213, 78, 169, 108, 86, 244, 234, 101, 122, 174, 8, +186, 120, 37, 46, 28, 166, 180, 198, 232, 221, 116, 31, 75, 189, 139, 138, +112, 62, 181, 102, 72, 3, 246, 14, 97, 53, 87, 185, 134, 193, 29, 158, +225, 248, 152, 17, 105, 217, 142, 148, 155, 30, 135, 233, 206, 85, 40, 223, +140, 161, 137, 13, 191, 230, 66, 104, 65, 153, 45, 15, 176, 84, 187, 22 +}; + +#ifdef INTERMEDIATE_VALUE_KAT +static const u8 Si[256] = { + 82, 9, 106, 213, 48, 54, 165, 56, 191, 64, 163, 158, 129, 243, 215, 251, +124, 227, 57, 130, 155, 47, 255, 135, 52, 142, 67, 68, 196, 222, 233, 203, + 84, 123, 148, 50, 166, 194, 35, 61, 238, 76, 149, 11, 66, 250, 195, 78, + 8, 46, 161, 102, 40, 217, 36, 178, 118, 91, 162, 73, 109, 139, 209, 37, +114, 248, 246, 100, 134, 104, 152, 22, 212, 164, 92, 204, 93, 101, 182, 146, +108, 112, 72, 80, 253, 237, 185, 218, 94, 21, 70, 87, 167, 141, 157, 132, +144, 216, 171, 0, 140, 188, 211, 10, 247, 228, 88, 5, 184, 179, 69, 6, +208, 44, 30, 143, 202, 63, 15, 2, 193, 175, 189, 3, 1, 19, 138, 107, + 58, 145, 17, 65, 79, 103, 220, 234, 151, 242, 207, 206, 240, 180, 230, 115, +150, 172, 116, 34, 231, 173, 53, 133, 226, 249, 55, 232, 28, 117, 223, 110, + 71, 241, 26, 113, 29, 41, 197, 137, 111, 183, 98, 14, 170, 24, 190, 27, +252, 86, 62, 75, 198, 210, 121, 32, 154, 219, 192, 254, 120, 205, 90, 244, + 31, 221, 168, 51, 136, 7, 199, 49, 177, 18, 16, 89, 39, 128, 236, 95, + 96, 81, 127, 169, 25, 181, 74, 13, 45, 229, 122, 159, 147, 201, 156, 239, +160, 224, 59, 77, 174, 42, 245, 176, 200, 235, 187, 60, 131, 83, 153, 97, + 23, 43, 4, 126, 186, 119, 214, 38, 225, 105, 20, 99, 85, 33, 12, 125 +}; +#endif /* INTERMEDIATE_VALUE_KAT */ + +union xtab { + u32 xt32[256]; + u8 xt8[256][4]; +}; + +static const union xtab xT1 = { + .xt8 = { +{0xc6,0x63,0x63,0xa5}, {0xf8,0x7c,0x7c,0x84}, {0xee,0x77,0x77,0x99}, {0xf6,0x7b,0x7b,0x8d}, +{0xff,0xf2,0xf2,0x0d}, {0xd6,0x6b,0x6b,0xbd}, {0xde,0x6f,0x6f,0xb1}, {0x91,0xc5,0xc5,0x54}, +{0x60,0x30,0x30,0x50}, {0x02,0x01,0x01,0x03}, {0xce,0x67,0x67,0xa9}, {0x56,0x2b,0x2b,0x7d}, +{0xe7,0xfe,0xfe,0x19}, {0xb5,0xd7,0xd7,0x62}, {0x4d,0xab,0xab,0xe6}, {0xec,0x76,0x76,0x9a}, +{0x8f,0xca,0xca,0x45}, {0x1f,0x82,0x82,0x9d}, {0x89,0xc9,0xc9,0x40}, {0xfa,0x7d,0x7d,0x87}, +{0xef,0xfa,0xfa,0x15}, {0xb2,0x59,0x59,0xeb}, {0x8e,0x47,0x47,0xc9}, {0xfb,0xf0,0xf0,0x0b}, +{0x41,0xad,0xad,0xec}, {0xb3,0xd4,0xd4,0x67}, {0x5f,0xa2,0xa2,0xfd}, {0x45,0xaf,0xaf,0xea}, +{0x23,0x9c,0x9c,0xbf}, {0x53,0xa4,0xa4,0xf7}, {0xe4,0x72,0x72,0x96}, {0x9b,0xc0,0xc0,0x5b}, +{0x75,0xb7,0xb7,0xc2}, {0xe1,0xfd,0xfd,0x1c}, {0x3d,0x93,0x93,0xae}, {0x4c,0x26,0x26,0x6a}, +{0x6c,0x36,0x36,0x5a}, {0x7e,0x3f,0x3f,0x41}, {0xf5,0xf7,0xf7,0x02}, {0x83,0xcc,0xcc,0x4f}, +{0x68,0x34,0x34,0x5c}, {0x51,0xa5,0xa5,0xf4}, {0xd1,0xe5,0xe5,0x34}, {0xf9,0xf1,0xf1,0x08}, +{0xe2,0x71,0x71,0x93}, {0xab,0xd8,0xd8,0x73}, {0x62,0x31,0x31,0x53}, {0x2a,0x15,0x15,0x3f}, +{0x08,0x04,0x04,0x0c}, {0x95,0xc7,0xc7,0x52}, {0x46,0x23,0x23,0x65}, {0x9d,0xc3,0xc3,0x5e}, +{0x30,0x18,0x18,0x28}, {0x37,0x96,0x96,0xa1}, {0x0a,0x05,0x05,0x0f}, {0x2f,0x9a,0x9a,0xb5}, +{0x0e,0x07,0x07,0x09}, {0x24,0x12,0x12,0x36}, {0x1b,0x80,0x80,0x9b}, {0xdf,0xe2,0xe2,0x3d}, +{0xcd,0xeb,0xeb,0x26}, {0x4e,0x27,0x27,0x69}, {0x7f,0xb2,0xb2,0xcd}, {0xea,0x75,0x75,0x9f}, +{0x12,0x09,0x09,0x1b}, {0x1d,0x83,0x83,0x9e}, {0x58,0x2c,0x2c,0x74}, {0x34,0x1a,0x1a,0x2e}, +{0x36,0x1b,0x1b,0x2d}, {0xdc,0x6e,0x6e,0xb2}, {0xb4,0x5a,0x5a,0xee}, {0x5b,0xa0,0xa0,0xfb}, +{0xa4,0x52,0x52,0xf6}, {0x76,0x3b,0x3b,0x4d}, {0xb7,0xd6,0xd6,0x61}, {0x7d,0xb3,0xb3,0xce}, +{0x52,0x29,0x29,0x7b}, {0xdd,0xe3,0xe3,0x3e}, {0x5e,0x2f,0x2f,0x71}, {0x13,0x84,0x84,0x97}, +{0xa6,0x53,0x53,0xf5}, {0xb9,0xd1,0xd1,0x68}, {0x00,0x00,0x00,0x00}, {0xc1,0xed,0xed,0x2c}, +{0x40,0x20,0x20,0x60}, {0xe3,0xfc,0xfc,0x1f}, {0x79,0xb1,0xb1,0xc8}, {0xb6,0x5b,0x5b,0xed}, +{0xd4,0x6a,0x6a,0xbe}, {0x8d,0xcb,0xcb,0x46}, {0x67,0xbe,0xbe,0xd9}, {0x72,0x39,0x39,0x4b}, +{0x94,0x4a,0x4a,0xde}, {0x98,0x4c,0x4c,0xd4}, {0xb0,0x58,0x58,0xe8}, {0x85,0xcf,0xcf,0x4a}, +{0xbb,0xd0,0xd0,0x6b}, {0xc5,0xef,0xef,0x2a}, {0x4f,0xaa,0xaa,0xe5}, {0xed,0xfb,0xfb,0x16}, +{0x86,0x43,0x43,0xc5}, {0x9a,0x4d,0x4d,0xd7}, {0x66,0x33,0x33,0x55}, {0x11,0x85,0x85,0x94}, +{0x8a,0x45,0x45,0xcf}, {0xe9,0xf9,0xf9,0x10}, {0x04,0x02,0x02,0x06}, {0xfe,0x7f,0x7f,0x81}, +{0xa0,0x50,0x50,0xf0}, {0x78,0x3c,0x3c,0x44}, {0x25,0x9f,0x9f,0xba}, {0x4b,0xa8,0xa8,0xe3}, +{0xa2,0x51,0x51,0xf3}, {0x5d,0xa3,0xa3,0xfe}, {0x80,0x40,0x40,0xc0}, {0x05,0x8f,0x8f,0x8a}, +{0x3f,0x92,0x92,0xad}, {0x21,0x9d,0x9d,0xbc}, {0x70,0x38,0x38,0x48}, {0xf1,0xf5,0xf5,0x04}, +{0x63,0xbc,0xbc,0xdf}, {0x77,0xb6,0xb6,0xc1}, {0xaf,0xda,0xda,0x75}, {0x42,0x21,0x21,0x63}, +{0x20,0x10,0x10,0x30}, {0xe5,0xff,0xff,0x1a}, {0xfd,0xf3,0xf3,0x0e}, {0xbf,0xd2,0xd2,0x6d}, +{0x81,0xcd,0xcd,0x4c}, {0x18,0x0c,0x0c,0x14}, {0x26,0x13,0x13,0x35}, {0xc3,0xec,0xec,0x2f}, +{0xbe,0x5f,0x5f,0xe1}, {0x35,0x97,0x97,0xa2}, {0x88,0x44,0x44,0xcc}, {0x2e,0x17,0x17,0x39}, +{0x93,0xc4,0xc4,0x57}, {0x55,0xa7,0xa7,0xf2}, {0xfc,0x7e,0x7e,0x82}, {0x7a,0x3d,0x3d,0x47}, +{0xc8,0x64,0x64,0xac}, {0xba,0x5d,0x5d,0xe7}, {0x32,0x19,0x19,0x2b}, {0xe6,0x73,0x73,0x95}, +{0xc0,0x60,0x60,0xa0}, {0x19,0x81,0x81,0x98}, {0x9e,0x4f,0x4f,0xd1}, {0xa3,0xdc,0xdc,0x7f}, +{0x44,0x22,0x22,0x66}, {0x54,0x2a,0x2a,0x7e}, {0x3b,0x90,0x90,0xab}, {0x0b,0x88,0x88,0x83}, +{0x8c,0x46,0x46,0xca}, {0xc7,0xee,0xee,0x29}, {0x6b,0xb8,0xb8,0xd3}, {0x28,0x14,0x14,0x3c}, +{0xa7,0xde,0xde,0x79}, {0xbc,0x5e,0x5e,0xe2}, {0x16,0x0b,0x0b,0x1d}, {0xad,0xdb,0xdb,0x76}, +{0xdb,0xe0,0xe0,0x3b}, {0x64,0x32,0x32,0x56}, {0x74,0x3a,0x3a,0x4e}, {0x14,0x0a,0x0a,0x1e}, +{0x92,0x49,0x49,0xdb}, {0x0c,0x06,0x06,0x0a}, {0x48,0x24,0x24,0x6c}, {0xb8,0x5c,0x5c,0xe4}, +{0x9f,0xc2,0xc2,0x5d}, {0xbd,0xd3,0xd3,0x6e}, {0x43,0xac,0xac,0xef}, {0xc4,0x62,0x62,0xa6}, +{0x39,0x91,0x91,0xa8}, {0x31,0x95,0x95,0xa4}, {0xd3,0xe4,0xe4,0x37}, {0xf2,0x79,0x79,0x8b}, +{0xd5,0xe7,0xe7,0x32}, {0x8b,0xc8,0xc8,0x43}, {0x6e,0x37,0x37,0x59}, {0xda,0x6d,0x6d,0xb7}, +{0x01,0x8d,0x8d,0x8c}, {0xb1,0xd5,0xd5,0x64}, {0x9c,0x4e,0x4e,0xd2}, {0x49,0xa9,0xa9,0xe0}, +{0xd8,0x6c,0x6c,0xb4}, {0xac,0x56,0x56,0xfa}, {0xf3,0xf4,0xf4,0x07}, {0xcf,0xea,0xea,0x25}, +{0xca,0x65,0x65,0xaf}, {0xf4,0x7a,0x7a,0x8e}, {0x47,0xae,0xae,0xe9}, {0x10,0x08,0x08,0x18}, +{0x6f,0xba,0xba,0xd5}, {0xf0,0x78,0x78,0x88}, {0x4a,0x25,0x25,0x6f}, {0x5c,0x2e,0x2e,0x72}, +{0x38,0x1c,0x1c,0x24}, {0x57,0xa6,0xa6,0xf1}, {0x73,0xb4,0xb4,0xc7}, {0x97,0xc6,0xc6,0x51}, +{0xcb,0xe8,0xe8,0x23}, {0xa1,0xdd,0xdd,0x7c}, {0xe8,0x74,0x74,0x9c}, {0x3e,0x1f,0x1f,0x21}, +{0x96,0x4b,0x4b,0xdd}, {0x61,0xbd,0xbd,0xdc}, {0x0d,0x8b,0x8b,0x86}, {0x0f,0x8a,0x8a,0x85}, +{0xe0,0x70,0x70,0x90}, {0x7c,0x3e,0x3e,0x42}, {0x71,0xb5,0xb5,0xc4}, {0xcc,0x66,0x66,0xaa}, +{0x90,0x48,0x48,0xd8}, {0x06,0x03,0x03,0x05}, {0xf7,0xf6,0xf6,0x01}, {0x1c,0x0e,0x0e,0x12}, +{0xc2,0x61,0x61,0xa3}, {0x6a,0x35,0x35,0x5f}, {0xae,0x57,0x57,0xf9}, {0x69,0xb9,0xb9,0xd0}, +{0x17,0x86,0x86,0x91}, {0x99,0xc1,0xc1,0x58}, {0x3a,0x1d,0x1d,0x27}, {0x27,0x9e,0x9e,0xb9}, +{0xd9,0xe1,0xe1,0x38}, {0xeb,0xf8,0xf8,0x13}, {0x2b,0x98,0x98,0xb3}, {0x22,0x11,0x11,0x33}, +{0xd2,0x69,0x69,0xbb}, {0xa9,0xd9,0xd9,0x70}, {0x07,0x8e,0x8e,0x89}, {0x33,0x94,0x94,0xa7}, +{0x2d,0x9b,0x9b,0xb6}, {0x3c,0x1e,0x1e,0x22}, {0x15,0x87,0x87,0x92}, {0xc9,0xe9,0xe9,0x20}, +{0x87,0xce,0xce,0x49}, {0xaa,0x55,0x55,0xff}, {0x50,0x28,0x28,0x78}, {0xa5,0xdf,0xdf,0x7a}, +{0x03,0x8c,0x8c,0x8f}, {0x59,0xa1,0xa1,0xf8}, {0x09,0x89,0x89,0x80}, {0x1a,0x0d,0x0d,0x17}, +{0x65,0xbf,0xbf,0xda}, {0xd7,0xe6,0xe6,0x31}, {0x84,0x42,0x42,0xc6}, {0xd0,0x68,0x68,0xb8}, +{0x82,0x41,0x41,0xc3}, {0x29,0x99,0x99,0xb0}, {0x5a,0x2d,0x2d,0x77}, {0x1e,0x0f,0x0f,0x11}, +{0x7b,0xb0,0xb0,0xcb}, {0xa8,0x54,0x54,0xfc}, {0x6d,0xbb,0xbb,0xd6}, {0x2c,0x16,0x16,0x3a} + } +}; +#define T1 xT1.xt8 -Td0[x] = Si[x].[0e, 09, 0d, 0b]; -Td1[x] = Si[x].[0b, 0e, 09, 0d]; -Td2[x] = Si[x].[0d, 0b, 0e, 09]; -Td3[x] = Si[x].[09, 0d, 0b, 0e]; -Td4[x] = Si[x].[01, 01, 01, 01]; -*/ +static const union xtab xT2 = { + .xt8 = { +{0xa5,0xc6,0x63,0x63}, {0x84,0xf8,0x7c,0x7c}, {0x99,0xee,0x77,0x77}, {0x8d,0xf6,0x7b,0x7b}, +{0x0d,0xff,0xf2,0xf2}, {0xbd,0xd6,0x6b,0x6b}, {0xb1,0xde,0x6f,0x6f}, {0x54,0x91,0xc5,0xc5}, +{0x50,0x60,0x30,0x30}, {0x03,0x02,0x01,0x01}, {0xa9,0xce,0x67,0x67}, {0x7d,0x56,0x2b,0x2b}, +{0x19,0xe7,0xfe,0xfe}, {0x62,0xb5,0xd7,0xd7}, {0xe6,0x4d,0xab,0xab}, {0x9a,0xec,0x76,0x76}, +{0x45,0x8f,0xca,0xca}, {0x9d,0x1f,0x82,0x82}, {0x40,0x89,0xc9,0xc9}, {0x87,0xfa,0x7d,0x7d}, +{0x15,0xef,0xfa,0xfa}, {0xeb,0xb2,0x59,0x59}, {0xc9,0x8e,0x47,0x47}, {0x0b,0xfb,0xf0,0xf0}, +{0xec,0x41,0xad,0xad}, {0x67,0xb3,0xd4,0xd4}, {0xfd,0x5f,0xa2,0xa2}, {0xea,0x45,0xaf,0xaf}, +{0xbf,0x23,0x9c,0x9c}, {0xf7,0x53,0xa4,0xa4}, {0x96,0xe4,0x72,0x72}, {0x5b,0x9b,0xc0,0xc0}, +{0xc2,0x75,0xb7,0xb7}, {0x1c,0xe1,0xfd,0xfd}, {0xae,0x3d,0x93,0x93}, {0x6a,0x4c,0x26,0x26}, +{0x5a,0x6c,0x36,0x36}, {0x41,0x7e,0x3f,0x3f}, {0x02,0xf5,0xf7,0xf7}, {0x4f,0x83,0xcc,0xcc}, +{0x5c,0x68,0x34,0x34}, {0xf4,0x51,0xa5,0xa5}, {0x34,0xd1,0xe5,0xe5}, {0x08,0xf9,0xf1,0xf1}, +{0x93,0xe2,0x71,0x71}, {0x73,0xab,0xd8,0xd8}, {0x53,0x62,0x31,0x31}, {0x3f,0x2a,0x15,0x15}, +{0x0c,0x08,0x04,0x04}, {0x52,0x95,0xc7,0xc7}, {0x65,0x46,0x23,0x23}, {0x5e,0x9d,0xc3,0xc3}, +{0x28,0x30,0x18,0x18}, {0xa1,0x37,0x96,0x96}, {0x0f,0x0a,0x05,0x05}, {0xb5,0x2f,0x9a,0x9a}, +{0x09,0x0e,0x07,0x07}, {0x36,0x24,0x12,0x12}, {0x9b,0x1b,0x80,0x80}, {0x3d,0xdf,0xe2,0xe2}, +{0x26,0xcd,0xeb,0xeb}, {0x69,0x4e,0x27,0x27}, {0xcd,0x7f,0xb2,0xb2}, {0x9f,0xea,0x75,0x75}, +{0x1b,0x12,0x09,0x09}, {0x9e,0x1d,0x83,0x83}, {0x74,0x58,0x2c,0x2c}, {0x2e,0x34,0x1a,0x1a}, +{0x2d,0x36,0x1b,0x1b}, {0xb2,0xdc,0x6e,0x6e}, {0xee,0xb4,0x5a,0x5a}, {0xfb,0x5b,0xa0,0xa0}, +{0xf6,0xa4,0x52,0x52}, {0x4d,0x76,0x3b,0x3b}, {0x61,0xb7,0xd6,0xd6}, {0xce,0x7d,0xb3,0xb3}, +{0x7b,0x52,0x29,0x29}, {0x3e,0xdd,0xe3,0xe3}, {0x71,0x5e,0x2f,0x2f}, {0x97,0x13,0x84,0x84}, >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Oct 20 13:43:25 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4D94116A4C0; Mon, 20 Oct 2003 13:43:25 -0700 (PDT) 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 27B9416A4B3 for ; Mon, 20 Oct 2003 13:43:25 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A517743FAF for ; Mon, 20 Oct 2003 13:43:24 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KKhOXJ087916 for ; Mon, 20 Oct 2003 13:43:24 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KKhOgQ087913 for perforce@freebsd.org; Mon, 20 Oct 2003 13:43:24 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Mon, 20 Oct 2003 13:43:24 -0700 (PDT) Message-Id: <200310202043.h9KKhOgQ087913@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40019 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 20:43:25 -0000 http://perforce.freebsd.org/chv.cgi?CH=40019 Change 40019 by sam@sam_ebb on 2003/10/20 13:43:04 IFC linux build fix Affected files ... .. //depot/projects/netperf/sys/compat/linux/linux_ioctl.c#3 integrate Differences ... ==== //depot/projects/netperf/sys/compat/linux/linux_ioctl.c#3 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ioctl.c,v 1.110 2003/10/20 09:51:00 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_ioctl.c,v 1.111 2003/10/20 17:56:10 sam Exp $"); #include #include @@ -1092,18 +1092,6 @@ } static void -linux_to_bsd_msf_lba(u_char af, union linux_cdrom_addr *lp, union msf_lba *bp) -{ - if (af == CD_LBA_FORMAT) - bp->lba = lp->lba; - else { - bp->msf.minute = lp->msf.minute; - bp->msf.second = lp->msf.second; - bp->msf.frame = lp->msf.frame; - } -} - -static void set_linux_cdrom_addr(union linux_cdrom_addr *addr, int format, int lba) { if (format == LINUX_CDROM_MSF) { From owner-p4-projects@FreeBSD.ORG Mon Oct 20 14:07:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1DEE916A4C0; Mon, 20 Oct 2003 14:07:56 -0700 (PDT) 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 EB34A16A4B3 for ; Mon, 20 Oct 2003 14:07:55 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5419643FA3 for ; Mon, 20 Oct 2003 14:07:55 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KL7tXJ089771 for ; Mon, 20 Oct 2003 14:07:55 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KL7sK6089768 for perforce@freebsd.org; Mon, 20 Oct 2003 14:07:54 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 14:07:54 -0700 (PDT) Message-Id: <200310202107.h9KL7sK6089768@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 Subject: PERFORCE change 40020 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 21:07:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=40020 Change 40020 by rwatson@rwatson_tislabs on 2003/10/20 14:06:57 Integ mac_internal.h and mac_pipe.c from ../../kern/kern_mac.c to prepare to break up MAC Framework into separate files in the MAC branch. Attempt to do this in a minimally disruptive way, in as much as that is possible. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#1 branch .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Mon Oct 20 14:19:11 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 956F816A4C0; Mon, 20 Oct 2003 14:19:11 -0700 (PDT) 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 5658016A4B3 for ; Mon, 20 Oct 2003 14:19:11 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1F8AE43FA3 for ; Mon, 20 Oct 2003 14:19:10 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KLJAXJ090542 for ; Mon, 20 Oct 2003 14:19:10 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KLJ96I090539 for perforce@freebsd.org; Mon, 20 Oct 2003 14:19:09 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 14:19:09 -0700 (PDT) Message-Id: <200310202119.h9KLJ96I090539@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 Subject: PERFORCE change 40022 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 21:19:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=40022 Change 40022 by rwatson@rwatson_tislabs on 2003/10/20 14:19:04 Trim mac_internal.h down to what is currently believed to be the bare necessities. No doubt this will change. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#2 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#2 (text+ko) ==== @@ -35,372 +35,53 @@ */ /* - * Framework for extensible kernel access control. Kernel and userland - * interface to the framework, policy registration and composition. - */ - -#include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); - -#include "opt_mac.h" -#include "opt_devfs.h" -#include "opt_posix.h" - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include -#include -#include -#include - -#include - -#include - -#include -#include -#include - -#include -#include - -#ifdef MAC - -/* - * Declare that the kernel provides MAC support, version 1. This permits - * modules to refuse to be loaded if the necessary support isn't present, - * even if it's pre-boot. + * MAC Framework sysctl namespace. */ -MODULE_VERSION(kernel_mac_support, 1); - SYSCTL_DECL(_security); - -SYSCTL_NODE(_security, OID_AUTO, mac, CTLFLAG_RW, 0, - "TrustedBSD MAC policy controls"); - -#if MAC_MAX_SLOTS > 32 -#error "MAC_MAX_SLOTS too large" +SYSCTL_DECL(_security_mac); +#ifdef MAC_DEBUG +SYSCTL_DECL(_security_mac_debug); +SYSCTL_DECL(_security_mac_debug_counters); #endif -static unsigned int mac_max_slots = MAC_MAX_SLOTS; -static unsigned int mac_slot_offsets_free = (1 << MAC_MAX_SLOTS) - 1; -SYSCTL_UINT(_security_mac, OID_AUTO, max_slots, CTLFLAG_RD, - &mac_max_slots, 0, ""); - /* - * Has the kernel started generating labeled objects yet? All read/write - * access to this variable is serialized during the boot process. Following - * the end of serialization, we don't update this flag; no locking. + * MAC Framework global types and constants. */ -static int mac_late = 0; +MALLOC_DECL(M_MACTEMP); /* - * Warn about EA transactions only the first time they happen. - * Weak coherency, no locking. - */ -static int ea_warn_once = 0; - -/* - * Flag to indicate whether or not we should allocate label storage for - * new mbufs. Since most dynamic policies we currently work with don't - * rely on mbuf labeling, try to avoid paying the cost of mtag allocation - * unless specifically notified of interest. One result of this is - * that if a dynamically loaded policy requests mbuf labels, it must - * be able to deal with a NULL label being returned on any mbufs that - * were already in flight when the policy was loaded. Since the policy - * already has to deal with uninitialized labels, this probably won't - * be a problem. Note: currently no locking. Will this be a problem? + * MAC Framework object/access counter primitives, conditionally + * compiled. */ -#ifndef MAC_ALWAYS_LABEL_MBUF -static int mac_labelmbufs = 0; -#endif - -static int mac_enforce_fs = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_fs, CTLFLAG_RW, - &mac_enforce_fs, 0, "Enforce MAC policy on file system objects"); -TUNABLE_INT("security.mac.enforce_fs", &mac_enforce_fs); - -static int mac_enforce_kld = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_kld, CTLFLAG_RW, - &mac_enforce_kld, 0, "Enforce MAC policy on kld operations"); -TUNABLE_INT("security.mac.enforce_kld", &mac_enforce_kld); - -static int mac_enforce_network = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_network, CTLFLAG_RW, - &mac_enforce_network, 0, "Enforce MAC policy on network packets"); -TUNABLE_INT("security.mac.enforce_network", &mac_enforce_network); - -static int mac_enforce_pipe = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_pipe, CTLFLAG_RW, - &mac_enforce_pipe, 0, "Enforce MAC policy on pipe operations"); -TUNABLE_INT("security.mac.enforce_pipe", &mac_enforce_pipe); - -static int mac_enforce_posix_sem = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_posix_sem, CTLFLAG_RW, - &mac_enforce_posix_sem, 0, "Enforce MAC policy on global POSIX semaphores"); -TUNABLE_INT("security.mac.enforce_posix_sem", &mac_enforce_posix_sem); - -static int mac_enforce_process = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_process, CTLFLAG_RW, - &mac_enforce_process, 0, "Enforce MAC policy on inter-process operations"); -TUNABLE_INT("security.mac.enforce_process", &mac_enforce_process); - -static int mac_enforce_socket = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_socket, CTLFLAG_RW, - &mac_enforce_socket, 0, "Enforce MAC policy on socket operations"); -TUNABLE_INT("security.mac.enforce_socket", &mac_enforce_socket); - -static int mac_enforce_system = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_system, CTLFLAG_RW, - &mac_enforce_system, 0, "Enforce MAC policy on system operations"); -TUNABLE_INT("security.mac.enforce_system", &mac_enforce_system); - -static int mac_enforce_sysv = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_sysv, CTLFLAG_RW, - &mac_enforce_sysv, 0, "Enforce MAC policy on System V IPC objects"); -TUNABLE_INT("security.mac.enforce_sysv", &mac_enforce_sysv); - -static int mac_enforce_vm = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, - &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); -TUNABLE_INT("security.mac.enforce_vm", &mac_enforce_vm); - -static int mac_mmap_revocation = 0; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation, CTLFLAG_RW, - &mac_mmap_revocation, 0, "Revoke mmap access to files on subject " - "relabel"); - -static int mac_mmap_revocation_via_cow = 1; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation_via_cow, CTLFLAG_RW, - &mac_mmap_revocation_via_cow, 0, "Revoke mmap access to files via " - "copy-on-write semantics, or by removing all write access"); - #ifdef MAC_DEBUG -SYSCTL_NODE(_security_mac, OID_AUTO, debug, CTLFLAG_RW, 0, - "TrustedBSD MAC debug info"); - -static int mac_debug_label_fallback = 0; -SYSCTL_INT(_security_mac_debug, OID_AUTO, label_fallback, CTLFLAG_RW, - &mac_debug_label_fallback, 0, "Filesystems should fall back to fs label" - "when label is corrupted."); -TUNABLE_INT("security.mac.debug_label_fallback", - &mac_debug_label_fallback); - -SYSCTL_NODE(_security_mac_debug, OID_AUTO, counters, CTLFLAG_RW, 0, - "TrustedBSD MAC object counters"); - -static unsigned int nmacmbufs, nmaccreds, nmacifnets, nmacbpfdescs, - nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, - nmacipqs, nmacpipes, nmacprocs, nmacipcmsgs, nmacipcmsqs, - nmacipcsemas, nmacipcshms, nmacposixksems; - #define MAC_DEBUG_COUNTER_INC(x) atomic_add_int(x, 1); #define MAC_DEBUG_COUNTER_DEC(x) atomic_subtract_int(x, 1); - -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mbufs, CTLFLAG_RD, - &nmacmbufs, 0, "number of mbufs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, - &nmaccreds, 0, "number of ucreds in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ifnets, CTLFLAG_RD, - &nmacifnets, 0, "number of ifnets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipqs, CTLFLAG_RD, - &nmacipqs, 0, "number of ipqs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, bpfdescs, CTLFLAG_RD, - &nmacbpfdescs, 0, "number of bpfdescs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, sockets, CTLFLAG_RD, - &nmacsockets, 0, "number of sockets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, pipes, CTLFLAG_RD, - &nmacpipes, 0, "number of pipes in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, procs, CTLFLAG_RD, - &nmacprocs, 0, "number of procs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mounts, CTLFLAG_RD, - &nmacmounts, 0, "number of mounts in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, temp, CTLFLAG_RD, - &nmactemp, 0, "number of temporary labels in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, vnodes, CTLFLAG_RD, - &nmacvnodes, 0, "number of vnodes in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, devfsdirents, CTLFLAG_RD, - &nmacdevfsdirents, 0, "number of devfs dirents inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msgs, CTLFLAG_RD, - &nmacipcmsgs, 0, "number of sysv ipc messages inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msqs, CTLFLAG_RD, - &nmacipcmsqs, 0, "number of sysv ipc message queue identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_semas, CTLFLAG_RD, - &nmacipcsemas, 0, "number of sysv ipc semaphore identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_shms, CTLFLAG_RD, - &nmacipcshms, 0, "number of sysv ipc shm identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, posix_ksems, CTLFLAG_RD, - &nmacposixksems, 0, "number of posix global semaphores inuse"); #else #define MAC_DEBUG_COUNTER_INC(x) #define MAC_DEBUG_COUNTER_DEC(x) #endif -static int error_select(int error1, int error2); -static int mac_policy_register(struct mac_policy_conf *mpc); -static int mac_policy_unregister(struct mac_policy_conf *mpc); - -static void mac_check_vnode_mmap_downgrade(struct ucred *cred, - struct vnode *vp, int *prot); -static void mac_cred_mmapped_drop_perms_recurse(struct thread *td, - struct ucred *cred, struct vm_map *map); - -static void mac_destroy_socket_label(struct label *label); - -static int mac_setlabel_vnode_extattr(struct ucred *cred, - struct vnode *vp, struct label *intlabel); - -MALLOC_DEFINE(M_MACPIPELABEL, "macpipelabel", "MAC labels for pipes"); -MALLOC_DEFINE(M_MACTEMP, "mactemp", "MAC temporary label storage"); - /* - * mac_static_policy_list holds a list of policy modules that are not - * loaded while the system is "live", and cannot be unloaded. These - * policies can be invoked without holding the busy count. - * - * mac_policy_list stores the list of dynamic policies. A busy count is - * maintained for the list, stored in mac_policy_busy. The busy count - * is protected by mac_policy_mtx; the list may be modified only - * while the busy count is 0, requiring that the lock be held to - * prevent new references to the list from being acquired. For almost - * all operations, incrementing the busy count is sufficient to - * guarantee consistency, as the list cannot be modified while the - * busy count is elevated. For a few special operations involving a - * change to the list of active policies, the mtx itself must be held. - * A condition variable, mac_policy_cv, is used to signal potential - * exclusive consumers that they should try to acquire the lock if a - * first attempt at exclusive access fails. + * MAC Framework infrastructure functions. */ -#ifndef MAC_STATIC -static struct mtx mac_policy_mtx; -static struct cv mac_policy_cv; -static int mac_policy_count; -#endif -static LIST_HEAD(, mac_policy_conf) mac_policy_list; -static LIST_HEAD(, mac_policy_conf) mac_static_policy_list; +int mac_error_select(int error1, int error2); -/* - * We manually invoke WITNESS_WARN() to allow Witness to generate - * warnings even if we don't end up ever triggering the wait at - * run-time. The consumer of the exclusive interface must not hold - * any locks (other than potentially Giant) since we may sleep for - * long (potentially indefinite) periods of time waiting for the - * framework to become quiescent so that a policy list change may - * be made. - */ -static __inline void -mac_policy_grab_exclusive(void) -{ +void mac_policy_grab_exclusive(void); +void mac_policy_assert_exclusive(void); +void mac_policy_release_exclusive(void); +void mac_policy_list_busy(void); +int mac_policy_list_conditional_busy(void); +void mac_policy_list_unbusy(void); -#ifndef MAC_STATIC - WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, - "mac_policy_grab_exclusive() at %s:%d", __FILE__, __LINE__); - mtx_lock(&mac_policy_mtx); - while (mac_policy_count != 0) - cv_wait(&mac_policy_cv, &mac_policy_mtx); -#endif -} - -static __inline void -mac_policy_assert_exclusive(void) -{ - -#ifndef MAC_STATIC - mtx_assert(&mac_policy_mtx, MA_OWNED); - KASSERT(mac_policy_count == 0, - ("mac_policy_assert_exclusive(): not exclusive")); -#endif -} - -static __inline void -mac_policy_release_exclusive(void) -{ - -#ifndef MAC_STATIC - KASSERT(mac_policy_count == 0, - ("mac_policy_release_exclusive(): not exclusive")); - mtx_unlock(&mac_policy_mtx); - cv_signal(&mac_policy_cv); -#endif -} - -static __inline void -mac_policy_list_busy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count++; - mtx_unlock(&mac_policy_mtx); -#endif -} - -static __inline int -mac_policy_list_conditional_busy(void) -{ -#ifndef MAC_STATIC - int ret; - - mtx_lock(&mac_policy_mtx); - if (!LIST_EMPTY(&mac_policy_list)) { - mac_policy_count++; - ret = 1; - } else - ret = 0; - mtx_unlock(&mac_policy_mtx); - return (ret); -#else - return (0); -#endif -} - -static __inline void -mac_policy_list_unbusy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count--; - KASSERT(mac_policy_count >= 0, ("MAC_POLICY_LIST_LOCK")); - if (mac_policy_count == 0) - cv_signal(&mac_policy_cv); - mtx_unlock(&mac_policy_mtx); -#endif -} +void mac_init_label(struct label *label); +void mac_destroy_label(struct label *label); +int mac_check_structmac_consistent(struct mac *mac); +int mac_allocate_slot(void); /* - * MAC_CHECK performs the designated check by walking the policy - * module list and checking with each as to how it feels about the - * request. Note that it returns its value via 'error' in the scope - * of the caller. + * MAC_CHECK performs the designated check by walking the policy module + * list and checking with each as to how it feels about the request. + * Note that it returns its value via 'error' in the scope of the caller. */ #define MAC_CHECK(check, args...) do { \ struct mac_policy_conf *mpc; \ @@ -541,3970 +222,3 @@ mac_policy_list_unbusy(); \ } \ } while (0) - -/* - * Initialize the MAC subsystem, including appropriate SMP locks. - */ -static void -mac_init(void) -{ - - LIST_INIT(&mac_static_policy_list); - LIST_INIT(&mac_policy_list); - -#ifndef MAC_STATIC - mtx_init(&mac_policy_mtx, "mac_policy_mtx", NULL, MTX_DEF); - cv_init(&mac_policy_cv, "mac_policy_cv"); -#endif -} - -/* - * For the purposes of modules that want to know if they were loaded - * "early", set the mac_late flag once we've processed modules either - * linked into the kernel, or loaded before the kernel startup. - */ -static void -mac_late_init(void) -{ - - mac_late = 1; -} - -/* - * After the policy list has changed, walk the list to update any global - * flags. Currently, we support only one flag, and it's conditionally - * defined; as a result, the entire function is conditional. Eventually, - * the #else case might also iterate across the policies. - */ -static void -mac_policy_updateflags(void) -{ -#ifndef MAC_ALWAYS_LABEL_MBUF - struct mac_policy_conf *tmpc; - int labelmbufs; - - mac_policy_assert_exclusive(); - - labelmbufs = 0; - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - mac_labelmbufs = (labelmbufs != 0); -#endif -} - -/* - * Allow MAC policy modules to register during boot, etc. - */ -int -mac_policy_modevent(module_t mod, int type, void *data) -{ - struct mac_policy_conf *mpc; - int error; - - error = 0; - mpc = (struct mac_policy_conf *) data; - -#ifdef MAC_STATIC - if (mac_late) { - printf("mac_policy_modevent: MAC_STATIC and late\n"); - return (EBUSY); - } -#endif - - switch (type) { - case MOD_LOAD: - if (mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_NOTLATE && - mac_late) { - printf("mac_policy_modevent: can't load %s policy " - "after booting\n", mpc->mpc_name); - error = EBUSY; - break; - } - error = mac_policy_register(mpc); - break; - case MOD_UNLOAD: - /* Don't unregister the module if it was never registered. */ - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) - != 0) - error = mac_policy_unregister(mpc); - else - error = 0; - break; - default: - break; - } - - return (error); -} - -static int -mac_policy_register(struct mac_policy_conf *mpc) -{ - struct mac_policy_conf *tmpc; - int error, slot, static_entry; - - error = 0; - - /* - * We don't technically need exclusive access while !mac_late, - * but hold it for assertion consistency. - */ - mac_policy_grab_exclusive(); - - /* - * If the module can potentially be unloaded, or we're loading - * late, we have to stick it in the non-static list and pay - * an extra performance overhead. Otherwise, we can pay a - * light locking cost and stick it in the static list. - */ - static_entry = (!mac_late && - !(mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_UNLOADOK)); - - if (static_entry) { - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } else { - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } - if (mpc->mpc_field_off != NULL) { - slot = ffs(mac_slot_offsets_free); - if (slot == 0) { - error = ENOMEM; - goto out; - } - slot--; - mac_slot_offsets_free &= ~(1 << slot); - *mpc->mpc_field_off = slot; - } - mpc->mpc_runtime_flags |= MPC_RUNTIME_FLAG_REGISTERED; - - /* - * If we're loading a MAC module after the framework has - * initialized, it has to go into the dynamic list. If - * we're loading it before we've finished initializing, - * it can go into the static list with weaker locker - * requirements. - */ - if (static_entry) - LIST_INSERT_HEAD(&mac_static_policy_list, mpc, mpc_list); - else - LIST_INSERT_HEAD(&mac_policy_list, mpc, mpc_list); - - /* Per-policy initialization. */ - if (mpc->mpc_ops->mpo_init != NULL) - (*(mpc->mpc_ops->mpo_init))(mpc); - mac_policy_updateflags(); - - printf("Security policy loaded: %s (%s)\n", mpc->mpc_fullname, - mpc->mpc_name); - -out: - mac_policy_release_exclusive(); - return (error); -} - -static int -mac_policy_unregister(struct mac_policy_conf *mpc) -{ - - /* - * If we fail the load, we may get a request to unload. Check - * to see if we did the run-time registration, and if not, - * silently succeed. - */ - mac_policy_grab_exclusive(); - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) == 0) { - mac_policy_release_exclusive(); - return (0); - } -#if 0 - /* - * Don't allow unloading modules with private data. - */ - if (mpc->mpc_field_off != NULL) { - MAC_POLICY_LIST_UNLOCK(); - return (EBUSY); - } -#endif - /* - * Only allow the unload to proceed if the module is unloadable - * by its own definition. - */ - if ((mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_UNLOADOK) == 0) { - mac_policy_release_exclusive(); - return (EBUSY); - } - if (mpc->mpc_ops->mpo_destroy != NULL) - (*(mpc->mpc_ops->mpo_destroy))(mpc); - - LIST_REMOVE(mpc, mpc_list); - mpc->mpc_runtime_flags &= ~MPC_RUNTIME_FLAG_REGISTERED; - mac_policy_updateflags(); - - mac_policy_release_exclusive(); - - printf("Security policy unload: %s (%s)\n", mpc->mpc_fullname, - mpc->mpc_name); - - return (0); -} - -/* - * Define an error value precedence, and given two arguments, selects the - * value with the higher precedence. - */ -static int -error_select(int error1, int error2) -{ - - /* Certain decision-making errors take top priority. */ - if (error1 == EDEADLK || error2 == EDEADLK) - return (EDEADLK); - - /* Invalid arguments should be reported where possible. */ - if (error1 == EINVAL || error2 == EINVAL) - return (EINVAL); - - /* Precedence goes to "visibility", with both process and file. */ - if (error1 == ESRCH || error2 == ESRCH) - return (ESRCH); - - if (error1 == ENOENT || error2 == ENOENT) - return (ENOENT); - - /* Precedence goes to DAC/MAC protections. */ - if (error1 == EACCES || error2 == EACCES) - return (EACCES); - - /* Precedence goes to privilege. */ - if (error1 == EPERM || error2 == EPERM) - return (EPERM); - - /* Precedence goes to error over success; otherwise, arbitrary. */ - if (error1 != 0) - return (error1); - return (error2); -} - -static struct label * -mbuf_to_label(struct mbuf *mbuf) -{ - struct m_tag *tag; - struct label *label; - - tag = m_tag_find(mbuf, PACKET_TAG_MACLABEL, NULL); - label = (struct label *)(tag+1); - - return (label); -} - -static void -mac_init_label(struct label *label) -{ - - bzero(label, sizeof(*label)); - label->l_flags = MAC_FLAG_INITIALIZED; -} - -static void -mac_destroy_label(struct label *label) -{ - - KASSERT(label->l_flags & MAC_FLAG_INITIALIZED, - ("destroying uninitialized label")); - - bzero(label, sizeof(*label)); - /* implicit: label->l_flags &= ~MAC_FLAG_INITIALIZED; */ -} - -void -mac_init_bpfdesc(struct bpf_d *bpf_d) -{ - - mac_init_label(&bpf_d->bd_label); - MAC_PERFORM(init_bpfdesc_label, &bpf_d->bd_label); - MAC_DEBUG_COUNTER_INC(&nmacbpfdescs); -} - -static void -mac_init_cred_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_cred_label, label); - MAC_DEBUG_COUNTER_INC(&nmaccreds); -} - -void -mac_init_cred(struct ucred *cred) -{ - - mac_init_cred_label(&cred->cr_label); -} - -void -mac_init_devfsdirent(struct devfs_dirent *de) -{ - - mac_init_label(&de->de_label); - MAC_PERFORM(init_devfsdirent_label, &de->de_label); - MAC_DEBUG_COUNTER_INC(&nmacdevfsdirents); -} - -static void -mac_init_ifnet_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_ifnet_label, label); - MAC_DEBUG_COUNTER_INC(&nmacifnets); -} - -void -mac_init_ifnet(struct ifnet *ifp) -{ - - mac_init_ifnet_label(&ifp->if_label); -} - -void -mac_init_ipc_msgmsg(struct msg *msgptr) -{ - - mac_init_label(&msgptr->label); - MAC_PERFORM(init_ipc_msgmsg_label, &msgptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsgs); -} - -void -mac_init_ipc_msgqueue(struct msqid_kernel *msqkptr) -{ - - mac_init_label(&msqkptr->label); - MAC_PERFORM(init_ipc_msgqueue_label, &msqkptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsqs); -} - -void -mac_init_ipc_sema(struct semid_kernel *semakptr) -{ - - mac_init_label(&semakptr->label); - MAC_PERFORM(init_ipc_sema_label, &semakptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcsemas); -} - -void -mac_init_ipc_shm(struct shmid_kernel *shmsegptr) -{ - - mac_init_label(&shmsegptr->label); - MAC_PERFORM(init_ipc_shm_label, &shmsegptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcshms); -} - -int -mac_init_ipq(struct ipq *ipq, int flag) -{ - int error; - - mac_init_label(&ipq->ipq_label); - - MAC_CHECK(init_ipq_label, &ipq->ipq_label, flag); - if (error) { - MAC_PERFORM(destroy_ipq_label, &ipq->ipq_label); - mac_destroy_label(&ipq->ipq_label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacipqs); - } - return (error); -} - -int -mac_init_mbuf_tag(struct m_tag *tag, int flag) -{ - struct label *label; - int error; - - label = (struct label *) (tag + 1); - mac_init_label(label); - - MAC_CHECK(init_mbuf_label, label, flag); - if (error) { - MAC_PERFORM(destroy_mbuf_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacmbufs); - } - return (error); -} - -int -mac_init_mbuf(struct mbuf *m, int flag) -{ - struct m_tag *tag; - int error; - - M_ASSERTPKTHDR(m); - -#ifndef MAC_ALWAYS_LABEL_MBUF - /* - * If conditionally allocating mbuf labels, don't allocate unless - * they are required. - */ - if (!mac_labelmbufs) - return (0); -#endif - tag = m_tag_get(PACKET_TAG_MACLABEL, sizeof(struct label), - flag); - if (tag == NULL) - return (ENOMEM); - error = mac_init_mbuf_tag(tag, flag); - if (error) { - m_tag_free(tag); - return (error); - } - m_tag_prepend(m, tag); - return (0); -} - -void -mac_init_mount(struct mount *mp) -{ - - mac_init_label(&mp->mnt_mntlabel); - mac_init_label(&mp->mnt_fslabel); - MAC_PERFORM(init_mount_label, &mp->mnt_mntlabel); - MAC_PERFORM(init_mount_fs_label, &mp->mnt_fslabel); - MAC_DEBUG_COUNTER_INC(&nmacmounts); -} - -static void -mac_init_pipe_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_pipe_label, label); - MAC_DEBUG_COUNTER_INC(&nmacpipes); -} - -void -mac_init_pipe(struct pipe *pipe) -{ - struct label *label; - - label = malloc(sizeof(struct label), M_MACPIPELABEL, M_ZERO|M_WAITOK); - pipe->pipe_label = label; - pipe->pipe_peer->pipe_label = label; - mac_init_pipe_label(label); -} - -void -mac_init_posix_ksem(struct ksem *ksemptr) -{ - - mac_init_label(&ksemptr->ks_label); - MAC_PERFORM(init_posix_ksem_label, &ksemptr->ks_label); - MAC_DEBUG_COUNTER_INC(&nmacposixksems); -} - -void -mac_init_proc(struct proc *p) -{ - - mac_init_label(&p->p_label); - MAC_PERFORM(init_proc_label, &p->p_label); - MAC_DEBUG_COUNTER_INC(&nmacprocs); -} - -static int -mac_init_socket_label(struct label *label, int flag) -{ - int error; - - mac_init_label(label); - - MAC_CHECK(init_socket_label, label, flag); - if (error) { - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacsockets); - } - - return (error); -} - -static int -mac_init_socket_peer_label(struct label *label, int flag) -{ - int error; - - mac_init_label(label); - - MAC_CHECK(init_socket_peer_label, label, flag); - if (error) { - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - } - - return (error); -} - -int -mac_init_socket(struct socket *socket, int flag) -{ - int error; - - error = mac_init_socket_label(&socket->so_label, flag); - if (error) - return (error); - - error = mac_init_socket_peer_label(&socket->so_peerlabel, flag); - if (error) - mac_destroy_socket_label(&socket->so_label); - - return (error); -} - -void -mac_init_vnode_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_vnode_label, label); - MAC_DEBUG_COUNTER_INC(&nmacvnodes); -} - -void -mac_init_vnode(struct vnode *vp) -{ - - mac_init_vnode_label(&vp->v_label); -} - -void -mac_destroy_bpfdesc(struct bpf_d *bpf_d) -{ - - MAC_PERFORM(destroy_bpfdesc_label, &bpf_d->bd_label); - mac_destroy_label(&bpf_d->bd_label); - MAC_DEBUG_COUNTER_DEC(&nmacbpfdescs); -} - -static void -mac_destroy_cred_label(struct label *label) -{ - - MAC_PERFORM(destroy_cred_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmaccreds); -} - -void -mac_destroy_cred(struct ucred *cred) -{ - - mac_destroy_cred_label(&cred->cr_label); -} - -void -mac_destroy_devfsdirent(struct devfs_dirent *de) -{ - >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Oct 20 14:30:26 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BD4C916A4C1; Mon, 20 Oct 2003 14:30:25 -0700 (PDT) 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 971C516A4B3 for ; Mon, 20 Oct 2003 14:30:25 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id C7D7243FBD for ; Mon, 20 Oct 2003 14:30:24 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KLUOXJ091211 for ; Mon, 20 Oct 2003 14:30:24 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KLUORe091206 for perforce@freebsd.org; Mon, 20 Oct 2003 14:30:24 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Mon, 20 Oct 2003 14:30:24 -0700 (PDT) Message-Id: <200310202130.h9KLUORe091206@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40024 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 21:30:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=40024 Change 40024 by sam@sam_ebb on 2003/10/20 14:30:12 IFC Affected files ... .. //depot/projects/netperf/sys/kern/vfs_cluster.c#4 integrate .. //depot/projects/netperf/sys/kern/vfs_subr.c#8 integrate Differences ... ==== //depot/projects/netperf/sys/kern/vfs_cluster.c#4 (text+ko) ==== @@ -36,7 +36,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/vfs_cluster.c,v 1.146 2003/10/20 05:57:55 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/vfs_cluster.c,v 1.147 2003/10/20 18:24:38 alc Exp $"); #include "opt_debug_cluster.h" @@ -373,7 +373,6 @@ bp->b_offset = tbp->b_offset; KASSERT(bp->b_offset != NOOFFSET, ("cluster_rbuild: no buffer offset")); pbgetvp(vp, bp); - bp->b_object = tbp->b_object; TAILQ_INIT(&bp->b_cluster.cluster_head); ==== //depot/projects/netperf/sys/kern/vfs_subr.c#8 (text+ko) ==== @@ -43,7 +43,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/vfs_subr.c,v 1.468 2003/10/17 11:56:48 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/vfs_subr.c,v 1.469 2003/10/20 18:24:38 alc Exp $"); #include "opt_ddb.h" #include "opt_mac.h" @@ -1840,6 +1840,7 @@ KASSERT(bp->b_vp == NULL, ("pbgetvp: not free")); bp->b_vp = vp; + bp->b_object = vp->v_object; bp->b_flags |= B_PAGING; bp->b_dev = vn_todev(vp); } @@ -1865,6 +1866,7 @@ } VI_UNLOCK(bp->b_vp); bp->b_vp = (struct vnode *) 0; + bp->b_object = NULL; bp->b_flags &= ~B_PAGING; } From owner-p4-projects@FreeBSD.ORG Mon Oct 20 15:05:09 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DCFD516A4C1; Mon, 20 Oct 2003 15:05:08 -0700 (PDT) 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 B249516A4BF for ; Mon, 20 Oct 2003 15:05:08 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0E36043FA3 for ; Mon, 20 Oct 2003 15:05:08 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KM57XJ093453 for ; Mon, 20 Oct 2003 15:05:07 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KM57jK093450 for perforce@freebsd.org; Mon, 20 Oct 2003 15:05:07 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 15:05:07 -0700 (PDT) Message-Id: <200310202205.h9KM57jK093450@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 Subject: PERFORCE change 40026 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 22:05:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=40026 Change 40026 by rwatson@rwatson_tislabs on 2003/10/20 15:04:35 Declare mac_policy_list_head as a type so that it can be used with extern'd globals. Declare mac_policy_list and mac_static_policy_list as extern so that they can be used by the composition macros outside of kern_mac.c. Fix declaration of M_MACTEMP malloc type. Declare various pipe functions as global so they can be invoked from the system call code in kern_mac.c. Not sure what the long-term answer is here. Move to mac_error_select() in macros in mac_internal.h to clean up namespacing. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#3 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#3 (text+ko) ==== @@ -45,9 +45,20 @@ #endif /* + * MAC Framework global types and typedefs. + */ +LIST_HEAD(mac_policy_list_head, mac_policy_conf); + +/* + * MAC Framework global variables. + */ +extern struct mac_policy_list_head mac_policy_list; +extern struct mac_policy_list_head mac_static_policy_list; +extern int mac_late; +/* * MAC Framework global types and constants. */ -MALLOC_DECL(M_MACTEMP); +MALLOC_DECLARE(M_MACTEMP); /* * MAC Framework object/access counter primitives, conditionally @@ -78,6 +89,18 @@ int mac_check_structmac_consistent(struct mac *mac); int mac_allocate_slot(void); +/* + * MAC Framework per-object type functions. It's not yet clear how + * the namespaces, etc, should work for these, so for now, sort by + * object type. + */ +void mac_copy_pipe_label(struct label *src, struct label *dest); +void mac_destroy_pipe_label(struct label *label); +int mac_externalize_pipe_label(struct label *label, char *elements, + char *outbuf, size_t outbuflen, int flags); +void mac_init_pipe_label(struct label *label); +int mac_internalize_pipe_label(struct label *label, char *string); + /* * MAC_CHECK performs the designated check by walking the policy module * list and checking with each as to how it feels about the request. @@ -90,14 +113,14 @@ error = 0; \ LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ if (mpc->mpc_ops->mpo_ ## check != NULL) \ - error = error_select( \ + error = mac_error_select( \ mpc->mpc_ops->mpo_ ## check (args), \ error); \ } \ if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ if (mpc->mpc_ops->mpo_ ## check != NULL) \ - error = error_select( \ + error = mac_error_select( \ mpc->mpc_ops->mpo_ ## check (args), \ error); \ } \ From owner-p4-projects@FreeBSD.ORG Mon Oct 20 15:06:12 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1CD7216A4C0; Mon, 20 Oct 2003 15:06:12 -0700 (PDT) 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 D2DFC16A4B3 for ; Mon, 20 Oct 2003 15:06:11 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 08E0343F3F for ; Mon, 20 Oct 2003 15:06:10 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KM69XJ093563 for ; Mon, 20 Oct 2003 15:06:09 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KM6900093560 for perforce@freebsd.org; Mon, 20 Oct 2003 15:06:09 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 15:06:09 -0700 (PDT) Message-Id: <200310202206.h9KM6900093560@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 Subject: PERFORCE change 40027 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 22:06:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=40027 Change 40027 by rwatson@rwatson_tislabs on 2003/10/20 15:05:45 Remove not-pipe stuff. Do export many of the pipe functions globally so they may be used by kern_mac.c (for now). Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#2 (text+ko) ==== @@ -1,12 +1,7 @@ /*- - * Copyright (c) 1999, 2000, 2001, 2002 Robert N. M. Watson - * Copyright (c) 2001 Ilmar S. Habibulin - * Copyright (c) 2001, 2002, 2003 Networks Associates Technology, Inc. + * Copyright (c) 2002, 2003 Networks Associates Technology, Inc. * All rights reserved. * - * This software was developed by Robert Watson and Ilmar Habibulin for the - * TrustedBSD Project. - * * This software was developed for the FreeBSD Project in part by Network * Associates Laboratories, the Security Research Division of Network * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), @@ -34,17 +29,10 @@ * SUCH DAMAGE. */ -/* - * Framework for extensible kernel access control. Kernel and userland - * interface to the framework, policy registration and composition. - */ - #include __FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); #include "opt_mac.h" -#include "opt_devfs.h" -#include "opt_posix.h" #include #include @@ -92,909 +80,22 @@ #include #include -#ifdef MAC - -/* - * Declare that the kernel provides MAC support, version 1. This permits - * modules to refuse to be loaded if the necessary support isn't present, - * even if it's pre-boot. - */ -MODULE_VERSION(kernel_mac_support, 1); - -SYSCTL_DECL(_security); +#include -SYSCTL_NODE(_security, OID_AUTO, mac, CTLFLAG_RW, 0, - "TrustedBSD MAC policy controls"); - -#if MAC_MAX_SLOTS > 32 -#error "MAC_MAX_SLOTS too large" -#endif - -static unsigned int mac_max_slots = MAC_MAX_SLOTS; -static unsigned int mac_slot_offsets_free = (1 << MAC_MAX_SLOTS) - 1; -SYSCTL_UINT(_security_mac, OID_AUTO, max_slots, CTLFLAG_RD, - &mac_max_slots, 0, ""); - -/* - * Has the kernel started generating labeled objects yet? All read/write - * access to this variable is serialized during the boot process. Following - * the end of serialization, we don't update this flag; no locking. - */ -static int mac_late = 0; - -/* - * Warn about EA transactions only the first time they happen. - * Weak coherency, no locking. - */ -static int ea_warn_once = 0; - -/* - * Flag to indicate whether or not we should allocate label storage for - * new mbufs. Since most dynamic policies we currently work with don't - * rely on mbuf labeling, try to avoid paying the cost of mtag allocation - * unless specifically notified of interest. One result of this is - * that if a dynamically loaded policy requests mbuf labels, it must - * be able to deal with a NULL label being returned on any mbufs that - * were already in flight when the policy was loaded. Since the policy - * already has to deal with uninitialized labels, this probably won't - * be a problem. Note: currently no locking. Will this be a problem? - */ -#ifndef MAC_ALWAYS_LABEL_MBUF -static int mac_labelmbufs = 0; -#endif - -static int mac_enforce_fs = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_fs, CTLFLAG_RW, - &mac_enforce_fs, 0, "Enforce MAC policy on file system objects"); -TUNABLE_INT("security.mac.enforce_fs", &mac_enforce_fs); - -static int mac_enforce_kld = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_kld, CTLFLAG_RW, - &mac_enforce_kld, 0, "Enforce MAC policy on kld operations"); -TUNABLE_INT("security.mac.enforce_kld", &mac_enforce_kld); - -static int mac_enforce_network = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_network, CTLFLAG_RW, - &mac_enforce_network, 0, "Enforce MAC policy on network packets"); -TUNABLE_INT("security.mac.enforce_network", &mac_enforce_network); - static int mac_enforce_pipe = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_pipe, CTLFLAG_RW, &mac_enforce_pipe, 0, "Enforce MAC policy on pipe operations"); TUNABLE_INT("security.mac.enforce_pipe", &mac_enforce_pipe); -static int mac_enforce_posix_sem = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_posix_sem, CTLFLAG_RW, - &mac_enforce_posix_sem, 0, "Enforce MAC policy on global POSIX semaphores"); -TUNABLE_INT("security.mac.enforce_posix_sem", &mac_enforce_posix_sem); - -static int mac_enforce_process = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_process, CTLFLAG_RW, - &mac_enforce_process, 0, "Enforce MAC policy on inter-process operations"); -TUNABLE_INT("security.mac.enforce_process", &mac_enforce_process); - -static int mac_enforce_socket = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_socket, CTLFLAG_RW, - &mac_enforce_socket, 0, "Enforce MAC policy on socket operations"); -TUNABLE_INT("security.mac.enforce_socket", &mac_enforce_socket); - -static int mac_enforce_system = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_system, CTLFLAG_RW, - &mac_enforce_system, 0, "Enforce MAC policy on system operations"); -TUNABLE_INT("security.mac.enforce_system", &mac_enforce_system); - -static int mac_enforce_sysv = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_sysv, CTLFLAG_RW, - &mac_enforce_sysv, 0, "Enforce MAC policy on System V IPC objects"); -TUNABLE_INT("security.mac.enforce_sysv", &mac_enforce_sysv); - -static int mac_enforce_vm = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, - &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); -TUNABLE_INT("security.mac.enforce_vm", &mac_enforce_vm); - -static int mac_mmap_revocation = 0; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation, CTLFLAG_RW, - &mac_mmap_revocation, 0, "Revoke mmap access to files on subject " - "relabel"); - -static int mac_mmap_revocation_via_cow = 1; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation_via_cow, CTLFLAG_RW, - &mac_mmap_revocation_via_cow, 0, "Revoke mmap access to files via " - "copy-on-write semantics, or by removing all write access"); - #ifdef MAC_DEBUG -SYSCTL_NODE(_security_mac, OID_AUTO, debug, CTLFLAG_RW, 0, - "TrustedBSD MAC debug info"); - -static int mac_debug_label_fallback = 0; -SYSCTL_INT(_security_mac_debug, OID_AUTO, label_fallback, CTLFLAG_RW, - &mac_debug_label_fallback, 0, "Filesystems should fall back to fs label" - "when label is corrupted."); -TUNABLE_INT("security.mac.debug_label_fallback", - &mac_debug_label_fallback); - -SYSCTL_NODE(_security_mac_debug, OID_AUTO, counters, CTLFLAG_RW, 0, - "TrustedBSD MAC object counters"); - -static unsigned int nmacmbufs, nmaccreds, nmacifnets, nmacbpfdescs, - nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, - nmacipqs, nmacpipes, nmacprocs, nmacipcmsgs, nmacipcmsqs, - nmacipcsemas, nmacipcshms, nmacposixksems; - -#define MAC_DEBUG_COUNTER_INC(x) atomic_add_int(x, 1); -#define MAC_DEBUG_COUNTER_DEC(x) atomic_subtract_int(x, 1); - -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mbufs, CTLFLAG_RD, - &nmacmbufs, 0, "number of mbufs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, - &nmaccreds, 0, "number of ucreds in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ifnets, CTLFLAG_RD, - &nmacifnets, 0, "number of ifnets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipqs, CTLFLAG_RD, - &nmacipqs, 0, "number of ipqs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, bpfdescs, CTLFLAG_RD, - &nmacbpfdescs, 0, "number of bpfdescs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, sockets, CTLFLAG_RD, - &nmacsockets, 0, "number of sockets in use"); +static unsigned int nmacpipes; SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, pipes, CTLFLAG_RD, &nmacpipes, 0, "number of pipes in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, procs, CTLFLAG_RD, - &nmacprocs, 0, "number of procs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mounts, CTLFLAG_RD, - &nmacmounts, 0, "number of mounts in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, temp, CTLFLAG_RD, - &nmactemp, 0, "number of temporary labels in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, vnodes, CTLFLAG_RD, - &nmacvnodes, 0, "number of vnodes in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, devfsdirents, CTLFLAG_RD, - &nmacdevfsdirents, 0, "number of devfs dirents inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msgs, CTLFLAG_RD, - &nmacipcmsgs, 0, "number of sysv ipc messages inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msqs, CTLFLAG_RD, - &nmacipcmsqs, 0, "number of sysv ipc message queue identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_semas, CTLFLAG_RD, - &nmacipcsemas, 0, "number of sysv ipc semaphore identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_shms, CTLFLAG_RD, - &nmacipcshms, 0, "number of sysv ipc shm identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, posix_ksems, CTLFLAG_RD, - &nmacposixksems, 0, "number of posix global semaphores inuse"); -#else -#define MAC_DEBUG_COUNTER_INC(x) -#define MAC_DEBUG_COUNTER_DEC(x) #endif -static int error_select(int error1, int error2); -static int mac_policy_register(struct mac_policy_conf *mpc); -static int mac_policy_unregister(struct mac_policy_conf *mpc); - -static void mac_check_vnode_mmap_downgrade(struct ucred *cred, - struct vnode *vp, int *prot); -static void mac_cred_mmapped_drop_perms_recurse(struct thread *td, - struct ucred *cred, struct vm_map *map); - -static void mac_destroy_socket_label(struct label *label); - -static int mac_setlabel_vnode_extattr(struct ucred *cred, - struct vnode *vp, struct label *intlabel); - MALLOC_DEFINE(M_MACPIPELABEL, "macpipelabel", "MAC labels for pipes"); -MALLOC_DEFINE(M_MACTEMP, "mactemp", "MAC temporary label storage"); - -/* - * mac_static_policy_list holds a list of policy modules that are not - * loaded while the system is "live", and cannot be unloaded. These - * policies can be invoked without holding the busy count. - * - * mac_policy_list stores the list of dynamic policies. A busy count is - * maintained for the list, stored in mac_policy_busy. The busy count - * is protected by mac_policy_mtx; the list may be modified only - * while the busy count is 0, requiring that the lock be held to - * prevent new references to the list from being acquired. For almost - * all operations, incrementing the busy count is sufficient to - * guarantee consistency, as the list cannot be modified while the - * busy count is elevated. For a few special operations involving a - * change to the list of active policies, the mtx itself must be held. - * A condition variable, mac_policy_cv, is used to signal potential - * exclusive consumers that they should try to acquire the lock if a - * first attempt at exclusive access fails. - */ -#ifndef MAC_STATIC -static struct mtx mac_policy_mtx; -static struct cv mac_policy_cv; -static int mac_policy_count; -#endif -static LIST_HEAD(, mac_policy_conf) mac_policy_list; -static LIST_HEAD(, mac_policy_conf) mac_static_policy_list; - -/* - * We manually invoke WITNESS_WARN() to allow Witness to generate - * warnings even if we don't end up ever triggering the wait at - * run-time. The consumer of the exclusive interface must not hold - * any locks (other than potentially Giant) since we may sleep for - * long (potentially indefinite) periods of time waiting for the - * framework to become quiescent so that a policy list change may - * be made. - */ -static __inline void -mac_policy_grab_exclusive(void) -{ - -#ifndef MAC_STATIC - WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, - "mac_policy_grab_exclusive() at %s:%d", __FILE__, __LINE__); - mtx_lock(&mac_policy_mtx); - while (mac_policy_count != 0) - cv_wait(&mac_policy_cv, &mac_policy_mtx); -#endif -} - -static __inline void -mac_policy_assert_exclusive(void) -{ - -#ifndef MAC_STATIC - mtx_assert(&mac_policy_mtx, MA_OWNED); - KASSERT(mac_policy_count == 0, - ("mac_policy_assert_exclusive(): not exclusive")); -#endif -} - -static __inline void -mac_policy_release_exclusive(void) -{ - -#ifndef MAC_STATIC - KASSERT(mac_policy_count == 0, - ("mac_policy_release_exclusive(): not exclusive")); - mtx_unlock(&mac_policy_mtx); - cv_signal(&mac_policy_cv); -#endif -} - -static __inline void -mac_policy_list_busy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count++; - mtx_unlock(&mac_policy_mtx); -#endif -} - -static __inline int -mac_policy_list_conditional_busy(void) -{ -#ifndef MAC_STATIC - int ret; - - mtx_lock(&mac_policy_mtx); - if (!LIST_EMPTY(&mac_policy_list)) { - mac_policy_count++; - ret = 1; - } else - ret = 0; - mtx_unlock(&mac_policy_mtx); - return (ret); -#else - return (0); -#endif -} - -static __inline void -mac_policy_list_unbusy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count--; - KASSERT(mac_policy_count >= 0, ("MAC_POLICY_LIST_LOCK")); - if (mac_policy_count == 0) - cv_signal(&mac_policy_cv); - mtx_unlock(&mac_policy_mtx); -#endif -} - -/* - * MAC_CHECK performs the designated check by walking the policy - * module list and checking with each as to how it feels about the - * request. Note that it returns its value via 'error' in the scope - * of the caller. - */ -#define MAC_CHECK(check, args...) do { \ - struct mac_policy_conf *mpc; \ - int entrycount; \ - \ - error = 0; \ - LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## check != NULL) \ - error = error_select( \ - mpc->mpc_ops->mpo_ ## check (args), \ - error); \ - } \ - if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## check != NULL) \ - error = error_select( \ - mpc->mpc_ops->mpo_ ## check (args), \ - error); \ - } \ - mac_policy_list_unbusy(); \ - } \ -} while (0) - -/* - * MAC_BOOLEAN performs the designated boolean composition by walking - * the module list, invoking each instance of the operation, and - * combining the results using the passed C operator. Note that it - * returns its value via 'result' in the scope of the caller, which - * should be initialized by the caller in a meaningful way to get - * a meaningful result. - */ -#define MAC_BOOLEAN(operation, composition, args...) do { \ - struct mac_policy_conf *mpc; \ - int entrycount; \ - \ - LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - result = result composition \ - mpc->mpc_ops->mpo_ ## operation (args); \ - } \ - if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - result = result composition \ - mpc->mpc_ops->mpo_ ## operation \ - (args); \ - } \ - mac_policy_list_unbusy(); \ - } \ -} while (0) - -#define MAC_EXTERNALIZE(type, label, elementlist, outbuf, \ - outbuflen) do { \ - int claimed, first, ignorenotfound, savedlen; \ - char *element_name, *element_temp; \ - struct sbuf sb; \ - \ - error = 0; \ - first = 1; \ - sbuf_new(&sb, outbuf, outbuflen, SBUF_FIXEDLEN); \ - element_temp = elementlist; \ - while ((element_name = strsep(&element_temp, ",")) != NULL) { \ - if (element_name[0] == '?') { \ - element_name++; \ - ignorenotfound = 1; \ - } else \ - ignorenotfound = 0; \ - savedlen = sbuf_len(&sb); \ - if (first) \ - error = sbuf_printf(&sb, "%s/", element_name); \ - else \ - error = sbuf_printf(&sb, ",%s/", element_name); \ - if (error == -1) { \ - error = EINVAL; /* XXX: E2BIG? */ \ - break; \ - } \ - claimed = 0; \ - MAC_CHECK(externalize_ ## type, label, element_name, \ - &sb, &claimed); \ - if (error) \ - break; \ - if (claimed == 0 && ignorenotfound) { \ - /* Revert last label name. */ \ - sbuf_setpos(&sb, savedlen); \ - } else if (claimed != 1) { \ - error = EINVAL; /* XXX: ENOLABEL? */ \ - break; \ - } else { \ - first = 0; \ - } \ - } \ - sbuf_finish(&sb); \ -} while (0) - -#define MAC_INTERNALIZE(type, label, instring) do { \ - char *element, *element_name, *element_data; \ - int claimed; \ - \ - error = 0; \ - element = instring; \ - while ((element_name = strsep(&element, ",")) != NULL) { \ - element_data = element_name; \ - element_name = strsep(&element_data, "/"); \ - if (element_data == NULL) { \ - error = EINVAL; \ - break; \ - } \ - claimed = 0; \ - MAC_CHECK(internalize_ ## type, label, element_name, \ - element_data, &claimed); \ - if (error) \ - break; \ - if (claimed != 1) { \ - /* XXXMAC: Another error here? */ \ - error = EINVAL; \ - break; \ - } \ - } \ -} while (0) - -/* - * MAC_PERFORM performs the designated operation by walking the policy - * module list and invoking that operation for each policy. - */ -#define MAC_PERFORM(operation, args...) do { \ - struct mac_policy_conf *mpc; \ - int entrycount; \ - \ - LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - mpc->mpc_ops->mpo_ ## operation (args); \ - } \ - if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - mpc->mpc_ops->mpo_ ## operation (args); \ - } \ - mac_policy_list_unbusy(); \ - } \ -} while (0) - -/* - * Initialize the MAC subsystem, including appropriate SMP locks. - */ -static void -mac_init(void) -{ - - LIST_INIT(&mac_static_policy_list); - LIST_INIT(&mac_policy_list); - -#ifndef MAC_STATIC - mtx_init(&mac_policy_mtx, "mac_policy_mtx", NULL, MTX_DEF); - cv_init(&mac_policy_cv, "mac_policy_cv"); -#endif -} - -/* - * For the purposes of modules that want to know if they were loaded - * "early", set the mac_late flag once we've processed modules either - * linked into the kernel, or loaded before the kernel startup. - */ -static void -mac_late_init(void) -{ - - mac_late = 1; -} - -/* - * After the policy list has changed, walk the list to update any global - * flags. Currently, we support only one flag, and it's conditionally - * defined; as a result, the entire function is conditional. Eventually, - * the #else case might also iterate across the policies. - */ -static void -mac_policy_updateflags(void) -{ -#ifndef MAC_ALWAYS_LABEL_MBUF - struct mac_policy_conf *tmpc; - int labelmbufs; - - mac_policy_assert_exclusive(); - - labelmbufs = 0; - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - mac_labelmbufs = (labelmbufs != 0); -#endif -} - -/* - * Allow MAC policy modules to register during boot, etc. - */ -int -mac_policy_modevent(module_t mod, int type, void *data) -{ - struct mac_policy_conf *mpc; - int error; - - error = 0; - mpc = (struct mac_policy_conf *) data; - -#ifdef MAC_STATIC - if (mac_late) { - printf("mac_policy_modevent: MAC_STATIC and late\n"); - return (EBUSY); - } -#endif - - switch (type) { - case MOD_LOAD: - if (mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_NOTLATE && - mac_late) { - printf("mac_policy_modevent: can't load %s policy " - "after booting\n", mpc->mpc_name); - error = EBUSY; - break; - } - error = mac_policy_register(mpc); - break; - case MOD_UNLOAD: - /* Don't unregister the module if it was never registered. */ - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) - != 0) - error = mac_policy_unregister(mpc); - else - error = 0; - break; - default: - break; - } - - return (error); -} - -static int -mac_policy_register(struct mac_policy_conf *mpc) -{ - struct mac_policy_conf *tmpc; - int error, slot, static_entry; - - error = 0; - - /* - * We don't technically need exclusive access while !mac_late, - * but hold it for assertion consistency. - */ - mac_policy_grab_exclusive(); - - /* - * If the module can potentially be unloaded, or we're loading - * late, we have to stick it in the non-static list and pay - * an extra performance overhead. Otherwise, we can pay a - * light locking cost and stick it in the static list. - */ - static_entry = (!mac_late && - !(mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_UNLOADOK)); - - if (static_entry) { - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } else { - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } - if (mpc->mpc_field_off != NULL) { - slot = ffs(mac_slot_offsets_free); - if (slot == 0) { - error = ENOMEM; - goto out; - } - slot--; - mac_slot_offsets_free &= ~(1 << slot); - *mpc->mpc_field_off = slot; - } - mpc->mpc_runtime_flags |= MPC_RUNTIME_FLAG_REGISTERED; - - /* - * If we're loading a MAC module after the framework has - * initialized, it has to go into the dynamic list. If - * we're loading it before we've finished initializing, - * it can go into the static list with weaker locker - * requirements. - */ - if (static_entry) - LIST_INSERT_HEAD(&mac_static_policy_list, mpc, mpc_list); - else - LIST_INSERT_HEAD(&mac_policy_list, mpc, mpc_list); - - /* Per-policy initialization. */ - if (mpc->mpc_ops->mpo_init != NULL) - (*(mpc->mpc_ops->mpo_init))(mpc); - mac_policy_updateflags(); - - printf("Security policy loaded: %s (%s)\n", mpc->mpc_fullname, - mpc->mpc_name); - -out: - mac_policy_release_exclusive(); - return (error); -} - -static int -mac_policy_unregister(struct mac_policy_conf *mpc) -{ - - /* - * If we fail the load, we may get a request to unload. Check - * to see if we did the run-time registration, and if not, - * silently succeed. - */ - mac_policy_grab_exclusive(); - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) == 0) { - mac_policy_release_exclusive(); - return (0); - } -#if 0 - /* - * Don't allow unloading modules with private data. - */ - if (mpc->mpc_field_off != NULL) { - MAC_POLICY_LIST_UNLOCK(); - return (EBUSY); - } -#endif - /* - * Only allow the unload to proceed if the module is unloadable - * by its own definition. - */ - if ((mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_UNLOADOK) == 0) { - mac_policy_release_exclusive(); - return (EBUSY); - } - if (mpc->mpc_ops->mpo_destroy != NULL) - (*(mpc->mpc_ops->mpo_destroy))(mpc); - - LIST_REMOVE(mpc, mpc_list); - mpc->mpc_runtime_flags &= ~MPC_RUNTIME_FLAG_REGISTERED; - mac_policy_updateflags(); - - mac_policy_release_exclusive(); - - printf("Security policy unload: %s (%s)\n", mpc->mpc_fullname, - mpc->mpc_name); - - return (0); -} - -/* - * Define an error value precedence, and given two arguments, selects the - * value with the higher precedence. - */ -static int -error_select(int error1, int error2) -{ - - /* Certain decision-making errors take top priority. */ - if (error1 == EDEADLK || error2 == EDEADLK) - return (EDEADLK); - - /* Invalid arguments should be reported where possible. */ - if (error1 == EINVAL || error2 == EINVAL) - return (EINVAL); - - /* Precedence goes to "visibility", with both process and file. */ - if (error1 == ESRCH || error2 == ESRCH) - return (ESRCH); - - if (error1 == ENOENT || error2 == ENOENT) - return (ENOENT); - - /* Precedence goes to DAC/MAC protections. */ - if (error1 == EACCES || error2 == EACCES) - return (EACCES); - - /* Precedence goes to privilege. */ - if (error1 == EPERM || error2 == EPERM) - return (EPERM); - - /* Precedence goes to error over success; otherwise, arbitrary. */ - if (error1 != 0) - return (error1); - return (error2); -} - -static struct label * -mbuf_to_label(struct mbuf *mbuf) -{ - struct m_tag *tag; - struct label *label; - - tag = m_tag_find(mbuf, PACKET_TAG_MACLABEL, NULL); - label = (struct label *)(tag+1); - - return (label); -} - -static void -mac_init_label(struct label *label) -{ - - bzero(label, sizeof(*label)); - label->l_flags = MAC_FLAG_INITIALIZED; -} - -static void -mac_destroy_label(struct label *label) -{ - - KASSERT(label->l_flags & MAC_FLAG_INITIALIZED, - ("destroying uninitialized label")); - - bzero(label, sizeof(*label)); - /* implicit: label->l_flags &= ~MAC_FLAG_INITIALIZED; */ -} - -void -mac_init_bpfdesc(struct bpf_d *bpf_d) -{ - - mac_init_label(&bpf_d->bd_label); - MAC_PERFORM(init_bpfdesc_label, &bpf_d->bd_label); - MAC_DEBUG_COUNTER_INC(&nmacbpfdescs); -} - -static void -mac_init_cred_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_cred_label, label); - MAC_DEBUG_COUNTER_INC(&nmaccreds); -} - -void -mac_init_cred(struct ucred *cred) -{ - - mac_init_cred_label(&cred->cr_label); -} - -void -mac_init_devfsdirent(struct devfs_dirent *de) -{ - - mac_init_label(&de->de_label); - MAC_PERFORM(init_devfsdirent_label, &de->de_label); - MAC_DEBUG_COUNTER_INC(&nmacdevfsdirents); -} - -static void -mac_init_ifnet_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_ifnet_label, label); - MAC_DEBUG_COUNTER_INC(&nmacifnets); -} - -void -mac_init_ifnet(struct ifnet *ifp) -{ - - mac_init_ifnet_label(&ifp->if_label); -} - -void -mac_init_ipc_msgmsg(struct msg *msgptr) -{ - - mac_init_label(&msgptr->label); - MAC_PERFORM(init_ipc_msgmsg_label, &msgptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsgs); -} - -void -mac_init_ipc_msgqueue(struct msqid_kernel *msqkptr) -{ - - mac_init_label(&msqkptr->label); - MAC_PERFORM(init_ipc_msgqueue_label, &msqkptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsqs); -} - -void -mac_init_ipc_sema(struct semid_kernel *semakptr) -{ - mac_init_label(&semakptr->label); - MAC_PERFORM(init_ipc_sema_label, &semakptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcsemas); -} - void -mac_init_ipc_shm(struct shmid_kernel *shmsegptr) -{ - - mac_init_label(&shmsegptr->label); - MAC_PERFORM(init_ipc_shm_label, &shmsegptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcshms); -} - -int -mac_init_ipq(struct ipq *ipq, int flag) -{ - int error; - - mac_init_label(&ipq->ipq_label); - - MAC_CHECK(init_ipq_label, &ipq->ipq_label, flag); - if (error) { - MAC_PERFORM(destroy_ipq_label, &ipq->ipq_label); - mac_destroy_label(&ipq->ipq_label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacipqs); - } - return (error); -} - -int -mac_init_mbuf_tag(struct m_tag *tag, int flag) -{ - struct label *label; - int error; - - label = (struct label *) (tag + 1); - mac_init_label(label); - - MAC_CHECK(init_mbuf_label, label, flag); - if (error) { - MAC_PERFORM(destroy_mbuf_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacmbufs); - } - return (error); -} - -int -mac_init_mbuf(struct mbuf *m, int flag) -{ - struct m_tag *tag; - int error; - - M_ASSERTPKTHDR(m); - -#ifndef MAC_ALWAYS_LABEL_MBUF - /* - * If conditionally allocating mbuf labels, don't allocate unless - * they are required. - */ - if (!mac_labelmbufs) - return (0); -#endif - tag = m_tag_get(PACKET_TAG_MACLABEL, sizeof(struct label), - flag); - if (tag == NULL) - return (ENOMEM); - error = mac_init_mbuf_tag(tag, flag); - if (error) { - m_tag_free(tag); - return (error); - } - m_tag_prepend(m, tag); - return (0); -} - -void -mac_init_mount(struct mount *mp) -{ - - mac_init_label(&mp->mnt_mntlabel); - mac_init_label(&mp->mnt_fslabel); - MAC_PERFORM(init_mount_label, &mp->mnt_mntlabel); - MAC_PERFORM(init_mount_fs_label, &mp->mnt_fslabel); - MAC_DEBUG_COUNTER_INC(&nmacmounts); -} - -static void mac_init_pipe_label(struct label *label) { @@ -1014,209 +115,7 @@ mac_init_pipe_label(label); } -void -mac_init_posix_ksem(struct ksem *ksemptr) -{ - - mac_init_label(&ksemptr->ks_label); - MAC_PERFORM(init_posix_ksem_label, &ksemptr->ks_label); - MAC_DEBUG_COUNTER_INC(&nmacposixksems); -} - void -mac_init_proc(struct proc *p) -{ - - mac_init_label(&p->p_label); - MAC_PERFORM(init_proc_label, &p->p_label); - MAC_DEBUG_COUNTER_INC(&nmacprocs); -} - -static int -mac_init_socket_label(struct label *label, int flag) -{ - int error; - - mac_init_label(label); - - MAC_CHECK(init_socket_label, label, flag); - if (error) { - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacsockets); - } - - return (error); -} - -static int -mac_init_socket_peer_label(struct label *label, int flag) -{ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Oct 20 15:17:26 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4F7C516A4C1; Mon, 20 Oct 2003 15:17:26 -0700 (PDT) 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 2518916A4BF for ; Mon, 20 Oct 2003 15:17:26 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1B76A43FCB for ; Mon, 20 Oct 2003 15:17:25 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KMHPXJ094066 for ; Mon, 20 Oct 2003 15:17:25 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KMHOdq094063 for perforce@freebsd.org; Mon, 20 Oct 2003 15:17:24 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 15:17:24 -0700 (PDT) Message-Id: <200310202217.h9KMHOdq094063@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 Subject: PERFORCE change 40029 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 22:17:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=40029 Change 40029 by rwatson@rwatson_tislabs on 2003/10/20 15:17:11 Include security/mac/mac_internal.h for global MAC Framework definitions. Don't SYSCTL_DECL() security, it's done in mac_internal.h. Export mac_late globally, will be needed when bits of the Framework are pulled out. Don't define debug counter macros, it's in mac_internal.h. Remove error_select() prototype, it's now mac_error_select(), and prototyped in mac_internal.h. Pull out pipe code, moved to mac_internal.h. Globalize and re-type mac_policy_list and mac_static_policy_list. Unstaticize/inline various policy list lock functions, since they are now used from outside kern_mac.c. Remove composition macros, now in mac_internal.h. Unstaticize basic label functions (init, destroy, consistency) required from per-object implementations. Hook up mac_pipe.c for MAC implementation for pipes. A similar model will be used to break out other objects from kern_mac.c. Affected files ... .. //depot/projects/trustedbsd/mac/sys/conf/files#85 edit .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#412 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/conf/files#85 (text+ko) ==== @@ -1588,6 +1588,7 @@ posix4/p1003_1b.c standard posix4/posix4_mib.c standard kern/uipc_sem.c optional p1003_1b_semaphores +security/mac/mac_pipe.c optional mac security/mac_biba/mac_biba.c optional mac_biba security/mac_bsdextended/mac_bsdextended.c optional mac_bsdextended security/mac_ifoff/mac_ifoff.c optional mac_ifoff ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#412 (text+ko) ==== @@ -92,6 +92,8 @@ #include #include +#include + #ifdef MAC /* @@ -101,8 +103,6 @@ */ MODULE_VERSION(kernel_mac_support, 1); -SYSCTL_DECL(_security); - SYSCTL_NODE(_security, OID_AUTO, mac, CTLFLAG_RW, 0, "TrustedBSD MAC policy controls"); @@ -120,7 +120,7 @@ * access to this variable is serialized during the boot process. Following * the end of serialization, we don't update this flag; no locking. */ -static int mac_late = 0; +int mac_late = 0; /* * Warn about EA transactions only the first time they happen. @@ -158,11 +158,6 @@ &mac_enforce_network, 0, "Enforce MAC policy on network packets"); TUNABLE_INT("security.mac.enforce_network", &mac_enforce_network); -static int mac_enforce_pipe = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_pipe, CTLFLAG_RW, - &mac_enforce_pipe, 0, "Enforce MAC policy on pipe operations"); -TUNABLE_INT("security.mac.enforce_pipe", &mac_enforce_pipe); - static int mac_enforce_posix_sem = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_posix_sem, CTLFLAG_RW, &mac_enforce_posix_sem, 0, "Enforce MAC policy on global POSIX semaphores"); @@ -219,12 +214,9 @@ static unsigned int nmacmbufs, nmaccreds, nmacifnets, nmacbpfdescs, nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, - nmacipqs, nmacpipes, nmacprocs, nmacipcmsgs, nmacipcmsqs, + nmacipqs, nmacprocs, nmacipcmsgs, nmacipcmsqs, nmacipcsemas, nmacipcshms, nmacposixksems; -#define MAC_DEBUG_COUNTER_INC(x) atomic_add_int(x, 1); -#define MAC_DEBUG_COUNTER_DEC(x) atomic_subtract_int(x, 1); - SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mbufs, CTLFLAG_RD, &nmacmbufs, 0, "number of mbufs in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, @@ -237,8 +229,6 @@ &nmacbpfdescs, 0, "number of bpfdescs in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, sockets, CTLFLAG_RD, &nmacsockets, 0, "number of sockets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, pipes, CTLFLAG_RD, - &nmacpipes, 0, "number of pipes in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, procs, CTLFLAG_RD, &nmacprocs, 0, "number of procs in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mounts, CTLFLAG_RD, @@ -259,12 +249,8 @@ &nmacipcshms, 0, "number of sysv ipc shm identifiers inuse"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, posix_ksems, CTLFLAG_RD, &nmacposixksems, 0, "number of posix global semaphores inuse"); -#else -#define MAC_DEBUG_COUNTER_INC(x) -#define MAC_DEBUG_COUNTER_DEC(x) #endif -static int error_select(int error1, int error2); static int mac_policy_register(struct mac_policy_conf *mpc); static int mac_policy_unregister(struct mac_policy_conf *mpc); @@ -278,7 +264,6 @@ static int mac_setlabel_vnode_extattr(struct ucred *cred, struct vnode *vp, struct label *intlabel); -MALLOC_DEFINE(M_MACPIPELABEL, "macpipelabel", "MAC labels for pipes"); MALLOC_DEFINE(M_MACTEMP, "mactemp", "MAC temporary label storage"); /* @@ -304,8 +289,8 @@ static struct cv mac_policy_cv; static int mac_policy_count; #endif -static LIST_HEAD(, mac_policy_conf) mac_policy_list; -static LIST_HEAD(, mac_policy_conf) mac_static_policy_list; +struct mac_policy_list_head mac_policy_list; +struct mac_policy_list_head mac_static_policy_list; /* * We manually invoke WITNESS_WARN() to allow Witness to generate @@ -316,7 +301,7 @@ * framework to become quiescent so that a policy list change may * be made. */ -static __inline void +void mac_policy_grab_exclusive(void) { @@ -329,7 +314,7 @@ #endif } -static __inline void +void mac_policy_assert_exclusive(void) { @@ -340,7 +325,7 @@ #endif } -static __inline void +void mac_policy_release_exclusive(void) { @@ -352,7 +337,7 @@ #endif } -static __inline void +void mac_policy_list_busy(void) { @@ -363,7 +348,7 @@ #endif } -static __inline int +int mac_policy_list_conditional_busy(void) { #ifndef MAC_STATIC @@ -382,7 +367,7 @@ #endif } -static __inline void +void mac_policy_list_unbusy(void) { @@ -397,152 +382,6 @@ } /* - * MAC_CHECK performs the designated check by walking the policy - * module list and checking with each as to how it feels about the - * request. Note that it returns its value via 'error' in the scope - * of the caller. - */ -#define MAC_CHECK(check, args...) do { \ - struct mac_policy_conf *mpc; \ - int entrycount; \ - \ - error = 0; \ - LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## check != NULL) \ - error = error_select( \ - mpc->mpc_ops->mpo_ ## check (args), \ - error); \ - } \ - if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## check != NULL) \ - error = error_select( \ - mpc->mpc_ops->mpo_ ## check (args), \ - error); \ - } \ - mac_policy_list_unbusy(); \ - } \ -} while (0) - -/* - * MAC_BOOLEAN performs the designated boolean composition by walking - * the module list, invoking each instance of the operation, and - * combining the results using the passed C operator. Note that it - * returns its value via 'result' in the scope of the caller, which - * should be initialized by the caller in a meaningful way to get - * a meaningful result. - */ -#define MAC_BOOLEAN(operation, composition, args...) do { \ - struct mac_policy_conf *mpc; \ - int entrycount; \ - \ - LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - result = result composition \ - mpc->mpc_ops->mpo_ ## operation (args); \ - } \ - if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - result = result composition \ - mpc->mpc_ops->mpo_ ## operation \ - (args); \ - } \ - mac_policy_list_unbusy(); \ - } \ -} while (0) - -#define MAC_EXTERNALIZE(type, label, elementlist, outbuf, \ - outbuflen) do { \ - int claimed, first, ignorenotfound, savedlen; \ - char *element_name, *element_temp; \ - struct sbuf sb; \ - \ - error = 0; \ - first = 1; \ - sbuf_new(&sb, outbuf, outbuflen, SBUF_FIXEDLEN); \ - element_temp = elementlist; \ - while ((element_name = strsep(&element_temp, ",")) != NULL) { \ - if (element_name[0] == '?') { \ - element_name++; \ - ignorenotfound = 1; \ - } else \ - ignorenotfound = 0; \ - savedlen = sbuf_len(&sb); \ - if (first) \ - error = sbuf_printf(&sb, "%s/", element_name); \ - else \ - error = sbuf_printf(&sb, ",%s/", element_name); \ - if (error == -1) { \ - error = EINVAL; /* XXX: E2BIG? */ \ - break; \ - } \ - claimed = 0; \ - MAC_CHECK(externalize_ ## type, label, element_name, \ - &sb, &claimed); \ - if (error) \ - break; \ - if (claimed == 0 && ignorenotfound) { \ - /* Revert last label name. */ \ - sbuf_setpos(&sb, savedlen); \ - } else if (claimed != 1) { \ - error = EINVAL; /* XXX: ENOLABEL? */ \ - break; \ - } else { \ - first = 0; \ - } \ - } \ - sbuf_finish(&sb); \ -} while (0) - -#define MAC_INTERNALIZE(type, label, instring) do { \ - char *element, *element_name, *element_data; \ - int claimed; \ - \ - error = 0; \ - element = instring; \ - while ((element_name = strsep(&element, ",")) != NULL) { \ - element_data = element_name; \ - element_name = strsep(&element_data, "/"); \ - if (element_data == NULL) { \ - error = EINVAL; \ - break; \ - } \ - claimed = 0; \ - MAC_CHECK(internalize_ ## type, label, element_name, \ - element_data, &claimed); \ - if (error) \ - break; \ - if (claimed != 1) { \ - /* XXXMAC: Another error here? */ \ - error = EINVAL; \ - break; \ - } \ - } \ -} while (0) - -/* - * MAC_PERFORM performs the designated operation by walking the policy - * module list and invoking that operation for each policy. - */ -#define MAC_PERFORM(operation, args...) do { \ - struct mac_policy_conf *mpc; \ - int entrycount; \ - \ - LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - mpc->mpc_ops->mpo_ ## operation (args); \ - } \ - if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - mpc->mpc_ops->mpo_ ## operation (args); \ - } \ - mac_policy_list_unbusy(); \ - } \ -} while (0) - -/* * Initialize the MAC subsystem, including appropriate SMP locks. */ static void @@ -768,8 +607,8 @@ * Define an error value precedence, and given two arguments, selects the * value with the higher precedence. */ -static int -error_select(int error1, int error2) +int +mac_error_select(int error1, int error2) { /* Certain decision-making errors take top priority. */ @@ -813,7 +652,7 @@ return (label); } -static void +void mac_init_label(struct label *label) { @@ -821,7 +660,7 @@ label->l_flags = MAC_FLAG_INITIALIZED; } -static void +void mac_destroy_label(struct label *label) { @@ -994,26 +833,6 @@ MAC_DEBUG_COUNTER_INC(&nmacmounts); } -static void -mac_init_pipe_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_pipe_label, label); - MAC_DEBUG_COUNTER_INC(&nmacpipes); -} - -void -mac_init_pipe(struct pipe *pipe) -{ - struct label *label; - - label = malloc(sizeof(struct label), M_MACPIPELABEL, M_ZERO|M_WAITOK); - pipe->pipe_label = label; - pipe->pipe_peer->pipe_label = label; - mac_init_pipe_label(label); -} - void mac_init_posix_ksem(struct ksem *ksemptr) { @@ -1216,23 +1035,6 @@ MAC_DEBUG_COUNTER_DEC(&nmacmounts); } -static void -mac_destroy_pipe_label(struct label *label) -{ - - MAC_PERFORM(destroy_pipe_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacpipes); -} - -void -mac_destroy_pipe(struct pipe *pipe) -{ - - mac_destroy_pipe_label(pipe->pipe_label); - free(pipe->pipe_label, M_MACPIPELABEL); -} - void mac_destroy_posix_ksem(struct ksem *ksemptr) { @@ -1307,13 +1109,6 @@ MAC_PERFORM(copy_mbuf_label, src_label, dest_label); } -static void -mac_copy_pipe_label(struct label *src, struct label *dest) -{ - - MAC_PERFORM(copy_pipe_label, src, dest); -} - void mac_copy_vnode_label(struct label *src, struct label *dest) { @@ -1321,7 +1116,7 @@ MAC_PERFORM(copy_vnode_label, src, dest); } -static int +int mac_check_structmac_consistent(struct mac *mac) { @@ -1355,17 +1150,6 @@ } static int -mac_externalize_pipe_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) -{ - int error; - - MAC_EXTERNALIZE(pipe_label, label, elements, outbuf, outbuflen); - - return (error); -} - -static int mac_externalize_socket_label(struct label *label, char *elements, char *outbuf, size_t outbuflen, int flags) { @@ -1419,16 +1203,6 @@ } static int -mac_internalize_pipe_label(struct label *label, char *string) -{ - int error; - - MAC_INTERNALIZE(pipe_label, label, string); - - return (error); -} - -static int mac_internalize_socket_label(struct label *label, char *string) { int error; @@ -2416,13 +2190,6 @@ } void -mac_create_pipe(struct ucred *cred, struct pipe *pipe) -{ - - MAC_PERFORM(create_pipe, cred, pipe, pipe->pipe_label); -} - -void mac_create_socket_from_socket(struct socket *oldsocket, struct socket *newsocket) { @@ -2439,13 +2206,6 @@ MAC_PERFORM(relabel_socket, cred, socket, &socket->so_label, newlabel); } -static void -mac_relabel_pipe(struct ucred *cred, struct pipe *pipe, struct label *newlabel) -{ - - MAC_PERFORM(relabel_pipe, cred, pipe, pipe->pipe_label, newlabel); -} - void mac_set_socket_peer_from_mbuf(struct mbuf *mbuf, struct socket *socket) { @@ -3053,98 +2813,6 @@ } int -mac_check_pipe_ioctl(struct ucred *cred, struct pipe *pipe, unsigned long cmd, - void *data) -{ - int error; - - PIPE_LOCK_ASSERT(pipe, MA_OWNED); - - if (!mac_enforce_pipe) - return (0); - - MAC_CHECK(check_pipe_ioctl, cred, pipe, pipe->pipe_label, cmd, data); - - return (error); -} - -int -mac_check_pipe_poll(struct ucred *cred, struct pipe *pipe) -{ - int error; - - PIPE_LOCK_ASSERT(pipe, MA_OWNED); - - if (!mac_enforce_pipe) - return (0); - - MAC_CHECK(check_pipe_poll, cred, pipe, pipe->pipe_label); - - return (error); -} - -int -mac_check_pipe_read(struct ucred *cred, struct pipe *pipe) -{ - int error; - - PIPE_LOCK_ASSERT(pipe, MA_OWNED); - - if (!mac_enforce_pipe) - return (0); - - MAC_CHECK(check_pipe_read, cred, pipe, pipe->pipe_label); - - return (error); -} - -static int -mac_check_pipe_relabel(struct ucred *cred, struct pipe *pipe, - struct label *newlabel) -{ - int error; - - PIPE_LOCK_ASSERT(pipe, MA_OWNED); - - if (!mac_enforce_pipe) - return (0); - - MAC_CHECK(check_pipe_relabel, cred, pipe, pipe->pipe_label, newlabel); - - return (error); -} - -int -mac_check_pipe_stat(struct ucred *cred, struct pipe *pipe) -{ - int error; - - PIPE_LOCK_ASSERT(pipe, MA_OWNED); - - if (!mac_enforce_pipe) - return (0); - - MAC_CHECK(check_pipe_stat, cred, pipe, pipe->pipe_label); - - return (error); -} - -int -mac_check_pipe_write(struct ucred *cred, struct pipe *pipe) -{ - int error; - - PIPE_LOCK_ASSERT(pipe, MA_OWNED); - - if (!mac_enforce_pipe) - return (0); - - MAC_CHECK(check_pipe_write, cred, pipe, pipe->pipe_label); - - return (error); -} - -int mac_check_posix_sem_close(struct ucred *cred, struct ksem *ksemptr) { int error; @@ -3687,22 +3355,6 @@ } int -mac_pipe_label_set(struct ucred *cred, struct pipe *pipe, struct label *label) -{ - int error; - - PIPE_LOCK_ASSERT(pipe, MA_OWNED); - - error = mac_check_pipe_relabel(cred, pipe, label); - if (error) - return (error); - - mac_relabel_pipe(cred, pipe, label); - - return (0); -} - -int mac_getsockopt_label_get(struct ucred *cred, struct socket *so, struct mac *mac) { From owner-p4-projects@FreeBSD.ORG Mon Oct 20 16:21:59 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 04EB316A4C0; Mon, 20 Oct 2003 16:21:59 -0700 (PDT) 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 D101B16A4B3 for ; Mon, 20 Oct 2003 16:21:58 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4B6FB43FAF for ; Mon, 20 Oct 2003 16:21:58 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KNLwXJ098755 for ; Mon, 20 Oct 2003 16:21:58 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KNLv02098752 for perforce@freebsd.org; Mon, 20 Oct 2003 16:21:57 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 16:21:57 -0700 (PDT) Message-Id: <200310202321.h9KNLv02098752@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 Subject: PERFORCE change 40032 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 23:21:59 -0000 http://perforce.freebsd.org/chv.cgi?CH=40032 Change 40032 by rwatson@rwatson_tislabs on 2003/10/20 16:21:08 Trim includes. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#3 (text+ko) ==== @@ -35,51 +35,19 @@ #include "opt_mac.h" #include -#include -#include -#include #include #include #include #include #include -#include -#include #include #include -#include -#include #include -#include -#include -#include -#include #include -#include #include -#include -#include -#include -#include -#include - -#include -#include -#include -#include - #include -#include - -#include -#include -#include - -#include -#include - #include static int mac_enforce_pipe = 1; From owner-p4-projects@FreeBSD.ORG Mon Oct 20 16:24:02 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3830916A4C1; Mon, 20 Oct 2003 16:24:02 -0700 (PDT) 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 1056716A4BF for ; Mon, 20 Oct 2003 16:24:02 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6F56843F93 for ; Mon, 20 Oct 2003 16:24:01 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KNO1XJ098869 for ; Mon, 20 Oct 2003 16:24:01 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KNO04n098862 for perforce@freebsd.org; Mon, 20 Oct 2003 16:24:00 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 16:24:00 -0700 (PDT) Message-Id: <200310202324.h9KNO04n098862@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 Subject: PERFORCE change 40033 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 23:24:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=40033 Change 40033 by rwatson@rwatson_tislabs on 2003/10/20 16:23:15 Integ a file to hold the POSIX semaphore-related MAC code. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_posix_sem.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Mon Oct 20 16:28:09 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E89EE16A4C1; Mon, 20 Oct 2003 16:28:08 -0700 (PDT) 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 8DE9216A4BF for ; Mon, 20 Oct 2003 16:28:08 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B945943FAF for ; Mon, 20 Oct 2003 16:28:07 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KNS7XJ099077 for ; Mon, 20 Oct 2003 16:28:07 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KNS75u099074 for perforce@freebsd.org; Mon, 20 Oct 2003 16:28:07 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Mon, 20 Oct 2003 16:28:07 -0700 (PDT) Message-Id: <200310202328.h9KNS75u099074@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40035 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 23:28:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=40035 Change 40035 by sam@sam_ebb on 2003/10/20 16:27:57 jason thorpe's tail optimizations for stream sockets, as passed on by ps/jayanth and fixed by me add global SOCKBUF_DEBUG option to control debugging code Affected files ... .. //depot/projects/netperf/sys/conf/NOTES#12 edit .. //depot/projects/netperf/sys/conf/options#11 edit .. //depot/projects/netperf/sys/kern/uipc_socket.c#3 edit .. //depot/projects/netperf/sys/kern/uipc_socket2.c#3 edit .. //depot/projects/netperf/sys/netinet/tcp_input.c#5 edit .. //depot/projects/netperf/sys/netinet/tcp_usrreq.c#2 edit .. //depot/projects/netperf/sys/sys/socketvar.h#3 edit Differences ... ==== //depot/projects/netperf/sys/conf/NOTES#12 (text+ko) ==== @@ -2282,6 +2282,7 @@ # Debug options options BUS_DEBUG # enable newbus debugging options DEBUG_VFS_LOCKS # enable vfs lock debugging +options SOCKBUF_DEBUG # enable sockbuf last record/mb tail checking ##################################################################### # SYSV IPC KERNEL PARAMETERS ==== //depot/projects/netperf/sys/conf/options#11 (text+ko) ==== @@ -618,6 +618,8 @@ # XXX bogusly global. DEVICE_POLLING opt_global.h +SOCKBUF_DEBUG opt_global.h + # options for ubsec driver UBSEC_DEBUG opt_ubsec.h UBSEC_RNDTEST opt_ubsec.h ==== //depot/projects/netperf/sys/kern/uipc_socket.c#3 (text+ko) ==== @@ -887,6 +887,8 @@ error = EWOULDBLOCK; goto release; } + SBLASTRECORDCHK(&so->so_rcv); + SBLASTMBUFCHK(&so->so_rcv); sbunlock(&so->so_rcv); error = sbwait(&so->so_rcv); splx(s); @@ -897,6 +899,8 @@ dontblock: if (uio->uio_td) uio->uio_td->td_proc->p_stats->p_ru.ru_msgrcv++; + SBLASTRECORDCHK(&so->so_rcv); + SBLASTMBUFCHK(&so->so_rcv); nextrecord = m->m_nextpkt; if (pr->pr_flags & PR_ADDR) { KASSERT(m->m_type == MT_SONAME, @@ -938,12 +942,32 @@ } } if (m) { - if ((flags & MSG_PEEK) == 0) + if ((flags & MSG_PEEK) == 0) { m->m_nextpkt = nextrecord; + /* + * If nextrecord == NULL (this is a single chain), + * then sb_lastrecord may not be valid here if m + * was changed earlier. + */ + if (nextrecord == NULL) { + KASSERT(so->so_rcv.sb_mb == m, + ("receive tailq 1")); + so->so_rcv.sb_lastrecord = m; + } + } type = m->m_type; if (type == MT_OOBDATA) flags |= MSG_OOB; + } else { + if ((flags & MSG_PEEK) == 0) { + KASSERT(so->so_rcv.sb_mb == m,("receive tailq 2")); + so->so_rcv.sb_mb = nextrecord; + SB_EMPTY_FIXUP(&so->so_rcv); + } } + SBLASTRECORDCHK(&so->so_rcv); + SBLASTMBUFCHK(&so->so_rcv); + moff = 0; offset = 0; while (m && uio->uio_resid > 0 && error == 0) { @@ -970,6 +994,8 @@ * block interrupts again. */ if (mp == 0) { + SBLASTRECORDCHK(&so->so_rcv); + SBLASTMBUFCHK(&so->so_rcv); splx(s); #ifdef ZERO_COPY_SOCKETS if (so_zero_copy_receive) { @@ -1017,8 +1043,16 @@ so->so_rcv.sb_mb = m_free(m); m = so->so_rcv.sb_mb; } - if (m) + if (m) { m->m_nextpkt = nextrecord; + if (nextrecord == NULL) + so->so_rcv.sb_lastrecord = m; + } else { + so->so_rcv.sb_mb = nextrecord; + SB_EMPTY_FIXUP(&so->so_rcv); + } + SBLASTRECORDCHK(&so->so_rcv); + SBLASTMBUFCHK(&so->so_rcv); } } else { if (flags & MSG_PEEK) @@ -1063,6 +1097,8 @@ */ if (pr->pr_flags & PR_WANTRCVD && so->so_pcb) (*pr->pr_usrreqs->pru_rcvd)(so, flags); + SBLASTRECORDCHK(&so->so_rcv); + SBLASTMBUFCHK(&so->so_rcv); error = sbwait(&so->so_rcv); if (error) { sbunlock(&so->so_rcv); @@ -1081,8 +1117,21 @@ (void) sbdroprecord(&so->so_rcv); } if ((flags & MSG_PEEK) == 0) { - if (m == 0) + if (m == 0) { + /* + * First part is an inline SB_EMPTY_FIXUP(). Second + * part makes sure sb_lastrecord is up-to-date if + * there is still data in the socket buffer. + */ so->so_rcv.sb_mb = nextrecord; + if (so->so_rcv.sb_mb == NULL) { + so->so_rcv.sb_mbtail = NULL; + so->so_rcv.sb_lastrecord = NULL; + } else if (nextrecord->m_nextpkt == NULL) + so->so_rcv.sb_lastrecord = nextrecord; + } + SBLASTRECORDCHK(&so->so_rcv); + SBLASTMBUFCHK(&so->so_rcv); if (pr->pr_flags & PR_WANTRCVD && so->so_pcb) (*pr->pr_usrreqs->pru_rcvd)(so, flags); } ==== //depot/projects/netperf/sys/kern/uipc_socket2.c#3 (text+ko) ==== @@ -468,6 +468,60 @@ * or sbdroprecord() when the data is acknowledged by the peer. */ +#ifdef SOCKBUF_DEBUG +void +sblastrecordchk(struct sockbuf *sb, const char *file, int line) +{ + struct mbuf *m = sb->sb_mb; + + while (m && m->m_nextpkt) + m = m->m_nextpkt; + + if (m != sb->sb_lastrecord) { + printf("%s: sb_mb %p sb_lastrecord %p last %p\n", + __func__, sb->sb_mb, sb->sb_lastrecord, m); + printf("packet chain:\n"); + for (m = sb->sb_mb; m != NULL; m = m->m_nextpkt) + printf("\t%p\n", m); + panic("%s from %s:%u", __func__, file, line); + } +} + +void +sblastmbufchk(struct sockbuf *sb, const char *file, int line) +{ + struct mbuf *m = sb->sb_mb; + struct mbuf *n; + + while (m && m->m_nextpkt) + m = m->m_nextpkt; + + while (m && m->m_next) + m = m->m_next; + + if (m != sb->sb_mbtail) { + printf("%s: sb_mb %p sb_mbtail %p last %p\n", + __func__, sb->sb_mb, sb->sb_mbtail, m); + printf("packet tree:\n"); + for (m = sb->sb_mb; m != NULL; m = m->m_nextpkt) { + printf("\t"); + for (n = m; n != NULL; n = n->m_next) + printf("%p ", n); + printf("\n"); + } + panic("%s from %s:%u", __func__, file, line); + } +} +#endif /* SOCKBUF_DEBUG */ + +#define SBLINKRECORD(sb, m0) do { \ + if ((sb)->sb_lastrecord != NULL) \ + (sb)->sb_lastrecord->m_nextpkt = (m0); \ + else \ + (sb)->sb_mb = (m0); \ + (sb)->sb_lastrecord = (m0); \ +} while (/*CONSTCOND*/0) + /* * Append mbuf chain m to the last record in the * socket buffer sb. The additional space associated @@ -483,6 +537,7 @@ if (m == 0) return; + SBLASTRECORDCHK(sb); n = sb->sb_mb; if (n) { while (n->m_nextpkt) @@ -493,8 +548,53 @@ return; } } while (n->m_next && (n = n->m_next)); + } else { + /* + * XXX Would like to simply use sb_mbtail here, but + * XXX I need to verify that I won't miss an EOR that + * XXX way. + */ + if ((n = sb->sb_lastrecord) != NULL) { + do { + if (n->m_flags & M_EOR) { + sbappendrecord(sb, m); /* XXXXXX!!!! */ + return; + } + } while (n->m_next && (n = n->m_next)); + } else { + /* + * If this is the first record in the socket buffer, + * it's also the last record. + */ + sb->sb_lastrecord = m; + } } sbcompress(sb, m, n); + SBLASTRECORDCHK(sb); +} + +/* + * This version of sbappend() should only be used when the caller + * absolutely knows that there will never be more than one record + * in the socket buffer, that is, a stream protocol (such as TCP). + */ +void +sbappendstream(struct sockbuf *sb, struct mbuf *m) +{ + + KASSERT(m->m_nextpkt == NULL,("sbappendstream 0")); + KASSERT(sb->sb_mb == sb->sb_lastrecord,("sbappendstream 1")); + + SBLASTMBUFCHK(sb); + +#ifdef MBUFTRACE + m_claim(m, sb->sb_mowner); +#endif + + sbcompress(sb, m, sb->sb_mbtail); + + sb->sb_lastrecord = sb->sb_mb; + SBLASTRECORDCHK(sb); } #ifdef SOCKBUF_DEBUG @@ -516,7 +616,7 @@ } } if (len != sb->sb_cc || mbcnt != sb->sb_mbcnt) { - printf("cc %ld != %ld || mbcnt %ld != %ld\n", len, sb->sb_cc, + printf("cc %ld != %u || mbcnt %ld != %u\n", len, sb->sb_cc, mbcnt, sb->sb_mbcnt); panic("sbcheck"); } @@ -545,6 +645,8 @@ * Note this permits zero length records. */ sballoc(sb, m0); + SBLASTRECORDCHK(sb); + SBLINKRECORD(sb, m0); if (m) m->m_nextpkt = m0; else @@ -616,7 +718,7 @@ struct sockaddr *asa; struct mbuf *m0, *control; { - struct mbuf *m, *n; + struct mbuf *m, *n, *nlast; int space = asa->sa_len; if (m0 && (m0->m_flags & M_PKTHDR) == 0) @@ -640,15 +742,16 @@ else control = m0; m->m_next = control; - for (n = m; n; n = n->m_next) + for (n = m; n->m_next != NULL; n = n->m_next) sballoc(sb, n); - n = sb->sb_mb; - if (n) { - while (n->m_nextpkt) - n = n->m_nextpkt; - n->m_nextpkt = m; - } else - sb->sb_mb = m; + sballoc(sb, n); + nlast = n; + SBLINKRECORD(sb, m); + + sb->sb_mbtail = nlast; + SBLASTMBUFCHK(sb); + + SBLASTRECORDCHK(sb); return (1); } @@ -657,7 +760,7 @@ struct sockbuf *sb; struct mbuf *control, *m0; { - struct mbuf *m, *n; + struct mbuf *m, *n, *mlast; int space; if (control == 0) @@ -666,15 +769,19 @@ if (space > sbspace(sb)) return (0); n->m_next = m0; /* concatenate data to control */ - for (m = control; m; m = m->m_next) + + SBLASTRECORDCHK(sb); + + for (m = control; m->m_next; m = m->m_next) sballoc(sb, m); - n = sb->sb_mb; - if (n) { - while (n->m_nextpkt) - n = n->m_nextpkt; - n->m_nextpkt = control; - } else - sb->sb_mb = control; + sballoc(sb, m); + mlast = m; + SBLINKRECORD(sb, control); + + sb->sb_mbtail = mlast; + SBLASTMBUFCHK(sb); + + SBLASTRECORDCHK(sb); return (1); } @@ -697,6 +804,8 @@ (eor == 0 || (((o = m->m_next) || (o = n)) && o->m_type == m->m_type))) { + if (sb->sb_lastrecord == m) + sb->sb_lastrecord = m->m_next; m = m_free(m); continue; } @@ -720,6 +829,7 @@ n->m_next = m; else sb->sb_mb = m; + sb->sb_mbtail = m; sballoc(sb, m); n = m; m->m_flags &= ~M_EOR; @@ -732,6 +842,7 @@ else printf("semi-panic: sbcompress\n"); } + SBLASTMBUFCHK(sb); } /* @@ -800,6 +911,18 @@ m->m_nextpkt = next; } else sb->sb_mb = next; + /* + * First part is an inline SB_EMPTY_FIXUP(). Second part + * makes sure sb_lastrecord is up-to-date if we dropped + * part of the last record. + */ + m = sb->sb_mb; + if (m == NULL) { + sb->sb_mbtail = NULL; + sb->sb_lastrecord = NULL; + } else if (m->m_nextpkt == NULL) { + sb->sb_lastrecord = m; + } } /* @@ -820,6 +943,7 @@ m = m_free(m); } while (m); } + SB_EMPTY_FIXUP(sb); } /* ==== //depot/projects/netperf/sys/netinet/tcp_input.c#5 (text+ko) ==== @@ -296,7 +296,7 @@ if (so->so_state & SS_CANTRCVMORE) m_freem(q->tqe_m); else - sbappend(&so->so_rcv, q->tqe_m); + sbappendstream(&so->so_rcv, q->tqe_m); FREE(q, M_TSEGQ); q = nq; } while (q && q->tqe_th->th_seq == tp->rcv_nxt); @@ -1124,7 +1124,7 @@ m_freem(m); } else { m_adj(m, drop_hdrlen); /* delayed header drop */ - sbappend(&so->so_rcv, m); + sbappendstream(&so->so_rcv, m); } sorwakeup(so); if (DELAY_ACK(tp)) { @@ -2178,7 +2178,7 @@ if (so->so_state & SS_CANTRCVMORE) m_freem(m); else - sbappend(&so->so_rcv, m); + sbappendstream(&so->so_rcv, m); sorwakeup(so); } else { thflags = tcp_reass(tp, th, &tlen, m); ==== //depot/projects/netperf/sys/netinet/tcp_usrreq.c#2 (text+ko) ==== @@ -685,7 +685,7 @@ m_freem(control); /* empty control, just free it */ } if (!(flags & PRUS_OOB)) { - sbappend(&so->so_snd, m); + sbappendstream(&so->so_snd, m); if (nam && tp->t_state < TCPS_SYN_SENT) { /* * Do implied connect if not yet connected, @@ -734,7 +734,7 @@ * of data past the urgent section. * Otherwise, snd_up should be one lower. */ - sbappend(&so->so_snd, m); + sbappendstream(&so->so_snd, m); if (nam && tp->t_state < TCPS_SYN_SENT) { /* * Do implied connect if not yet connected, ==== //depot/projects/netperf/sys/sys/socketvar.h#3 (text+ko) ==== @@ -102,6 +102,9 @@ struct selinfo sb_sel; /* process selecting read/write */ #define sb_startzero sb_mb struct mbuf *sb_mb; /* the mbuf chain */ + struct mbuf *sb_mbtail; /* the last mbuf in the chain */ + struct mbuf *sb_lastrecord; /* first mbuf of last record in + * socket buffer */ u_int sb_cc; /* actual chars in buffer */ u_int sb_hiwat; /* max actual char count */ u_int sb_mbcnt; /* chars of mbufs used */ @@ -137,6 +140,13 @@ } *so_accf; }; +#define SB_EMPTY_FIXUP(sb) do { \ + if ((sb)->sb_mb == NULL) { \ + (sb)->sb_mbtail = NULL; \ + (sb)->sb_lastrecord = NULL; \ + } \ +} while (/*CONSTCOND*/0) + /* * Socket state bits. */ @@ -353,6 +363,7 @@ int sockargs(struct mbuf **mp, caddr_t buf, int buflen, int type); int getsockaddr(struct sockaddr **namp, caddr_t uaddr, size_t len); void sbappend(struct sockbuf *sb, struct mbuf *m); +void sbappendstream(struct sockbuf *sb, struct mbuf *m); int sbappendaddr(struct sockbuf *sb, struct sockaddr *asa, struct mbuf *m0, struct mbuf *control); int sbappendcontrol(struct sockbuf *sb, struct mbuf *m0, @@ -422,6 +433,17 @@ void sotoxsocket(struct socket *so, struct xsocket *xso); void sowakeup(struct socket *so, struct sockbuf *sb); +#ifdef SOCKBUF_DEBUG +void sblastrecordchk(struct sockbuf *, const char *, int); +#define SBLASTRECORDCHK(sb) sblastrecordchk((sb), __FILE__, __LINE__) + +void sblastmbufchk(struct sockbuf *, const char *, int); +#define SBLASTMBUFCHK(sb) sblastmbufchk((sb), __FILE__, __LINE__) +#else +#define SBLASTRECORDCHK(sb) /* nothing */ +#define SBLASTMBUFCHK(sb) /* nothing */ +#endif /* SOCKBUF_DEBUG */ + /* * Accept filter functions (duh). */ From owner-p4-projects@FreeBSD.ORG Mon Oct 20 16:29:11 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0D87316A4C0; Mon, 20 Oct 2003 16:29:11 -0700 (PDT) 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 DAFFB16A4B3 for ; Mon, 20 Oct 2003 16:29:10 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AAF0D43F3F for ; Mon, 20 Oct 2003 16:29:09 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KNT9XJ099167 for ; Mon, 20 Oct 2003 16:29:09 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KNT9m9099164 for perforce@freebsd.org; Mon, 20 Oct 2003 16:29:09 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 16:29:09 -0700 (PDT) Message-Id: <200310202329.h9KNT9m9099164@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 Subject: PERFORCE change 40036 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 23:29:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=40036 Change 40036 by rwatson@rwatson_tislabs on 2003/10/20 16:28:51 Remove !posix_sem-related things. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_posix_sem.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_posix_sem.c#2 (text+ko) ==== @@ -1,12 +1,7 @@ /*- - * Copyright (c) 1999, 2000, 2001, 2002 Robert N. M. Watson - * Copyright (c) 2001 Ilmar S. Habibulin - * Copyright (c) 2001, 2002, 2003 Networks Associates Technology, Inc. + * Copyright (c) 2003 Networks Associates Technology, Inc. * All rights reserved. * - * This software was developed by Robert Watson and Ilmar Habibulin for the - * TrustedBSD Project. - * * This software was developed for the FreeBSD Project in part by Network * Associates Laboratories, the Security Research Division of Network * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), @@ -34,805 +29,37 @@ * SUCH DAMAGE. */ -/* - * Framework for extensible kernel access control. Kernel and userland - * interface to the framework, policy registration and composition. - */ - #include __FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); #include "opt_mac.h" -#include "opt_devfs.h" -#include "opt_posix.h" #include -#include -#include -#include #include -#include #include -#include #include -#include -#include #include #include -#include -#include #include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include #include -#include -#include -#include -#include - #include -#include - -#include -#include -#include - -#include -#include - #include -#ifdef MAC - -/* - * Declare that the kernel provides MAC support, version 1. This permits - * modules to refuse to be loaded if the necessary support isn't present, - * even if it's pre-boot. - */ -MODULE_VERSION(kernel_mac_support, 1); - -SYSCTL_NODE(_security, OID_AUTO, mac, CTLFLAG_RW, 0, - "TrustedBSD MAC policy controls"); - -#if MAC_MAX_SLOTS > 32 -#error "MAC_MAX_SLOTS too large" -#endif - -static unsigned int mac_max_slots = MAC_MAX_SLOTS; -static unsigned int mac_slot_offsets_free = (1 << MAC_MAX_SLOTS) - 1; -SYSCTL_UINT(_security_mac, OID_AUTO, max_slots, CTLFLAG_RD, - &mac_max_slots, 0, ""); - -/* - * Has the kernel started generating labeled objects yet? All read/write - * access to this variable is serialized during the boot process. Following - * the end of serialization, we don't update this flag; no locking. - */ -int mac_late = 0; - -/* - * Warn about EA transactions only the first time they happen. - * Weak coherency, no locking. - */ -static int ea_warn_once = 0; - -/* - * Flag to indicate whether or not we should allocate label storage for - * new mbufs. Since most dynamic policies we currently work with don't - * rely on mbuf labeling, try to avoid paying the cost of mtag allocation - * unless specifically notified of interest. One result of this is - * that if a dynamically loaded policy requests mbuf labels, it must - * be able to deal with a NULL label being returned on any mbufs that - * were already in flight when the policy was loaded. Since the policy - * already has to deal with uninitialized labels, this probably won't - * be a problem. Note: currently no locking. Will this be a problem? - */ -#ifndef MAC_ALWAYS_LABEL_MBUF -static int mac_labelmbufs = 0; -#endif - -static int mac_enforce_fs = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_fs, CTLFLAG_RW, - &mac_enforce_fs, 0, "Enforce MAC policy on file system objects"); -TUNABLE_INT("security.mac.enforce_fs", &mac_enforce_fs); - -static int mac_enforce_kld = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_kld, CTLFLAG_RW, - &mac_enforce_kld, 0, "Enforce MAC policy on kld operations"); -TUNABLE_INT("security.mac.enforce_kld", &mac_enforce_kld); - -static int mac_enforce_network = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_network, CTLFLAG_RW, - &mac_enforce_network, 0, "Enforce MAC policy on network packets"); -TUNABLE_INT("security.mac.enforce_network", &mac_enforce_network); - static int mac_enforce_posix_sem = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_posix_sem, CTLFLAG_RW, &mac_enforce_posix_sem, 0, "Enforce MAC policy on global POSIX semaphores"); TUNABLE_INT("security.mac.enforce_posix_sem", &mac_enforce_posix_sem); -static int mac_enforce_process = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_process, CTLFLAG_RW, - &mac_enforce_process, 0, "Enforce MAC policy on inter-process operations"); -TUNABLE_INT("security.mac.enforce_process", &mac_enforce_process); - -static int mac_enforce_socket = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_socket, CTLFLAG_RW, - &mac_enforce_socket, 0, "Enforce MAC policy on socket operations"); -TUNABLE_INT("security.mac.enforce_socket", &mac_enforce_socket); - -static int mac_enforce_system = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_system, CTLFLAG_RW, - &mac_enforce_system, 0, "Enforce MAC policy on system operations"); -TUNABLE_INT("security.mac.enforce_system", &mac_enforce_system); - -static int mac_enforce_sysv = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_sysv, CTLFLAG_RW, - &mac_enforce_sysv, 0, "Enforce MAC policy on System V IPC objects"); -TUNABLE_INT("security.mac.enforce_sysv", &mac_enforce_sysv); - -static int mac_enforce_vm = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, - &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); -TUNABLE_INT("security.mac.enforce_vm", &mac_enforce_vm); - -static int mac_mmap_revocation = 0; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation, CTLFLAG_RW, - &mac_mmap_revocation, 0, "Revoke mmap access to files on subject " - "relabel"); - -static int mac_mmap_revocation_via_cow = 1; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation_via_cow, CTLFLAG_RW, - &mac_mmap_revocation_via_cow, 0, "Revoke mmap access to files via " - "copy-on-write semantics, or by removing all write access"); - #ifdef MAC_DEBUG -SYSCTL_NODE(_security_mac, OID_AUTO, debug, CTLFLAG_RW, 0, - "TrustedBSD MAC debug info"); - -static int mac_debug_label_fallback = 0; -SYSCTL_INT(_security_mac_debug, OID_AUTO, label_fallback, CTLFLAG_RW, - &mac_debug_label_fallback, 0, "Filesystems should fall back to fs label" - "when label is corrupted."); -TUNABLE_INT("security.mac.debug_label_fallback", - &mac_debug_label_fallback); - -SYSCTL_NODE(_security_mac_debug, OID_AUTO, counters, CTLFLAG_RW, 0, - "TrustedBSD MAC object counters"); - -static unsigned int nmacmbufs, nmaccreds, nmacifnets, nmacbpfdescs, - nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, - nmacipqs, nmacprocs, nmacipcmsgs, nmacipcmsqs, - nmacipcsemas, nmacipcshms, nmacposixksems; - -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mbufs, CTLFLAG_RD, - &nmacmbufs, 0, "number of mbufs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, - &nmaccreds, 0, "number of ucreds in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ifnets, CTLFLAG_RD, - &nmacifnets, 0, "number of ifnets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipqs, CTLFLAG_RD, - &nmacipqs, 0, "number of ipqs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, bpfdescs, CTLFLAG_RD, - &nmacbpfdescs, 0, "number of bpfdescs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, sockets, CTLFLAG_RD, - &nmacsockets, 0, "number of sockets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, procs, CTLFLAG_RD, - &nmacprocs, 0, "number of procs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mounts, CTLFLAG_RD, - &nmacmounts, 0, "number of mounts in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, temp, CTLFLAG_RD, - &nmactemp, 0, "number of temporary labels in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, vnodes, CTLFLAG_RD, - &nmacvnodes, 0, "number of vnodes in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, devfsdirents, CTLFLAG_RD, - &nmacdevfsdirents, 0, "number of devfs dirents inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msgs, CTLFLAG_RD, - &nmacipcmsgs, 0, "number of sysv ipc messages inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msqs, CTLFLAG_RD, - &nmacipcmsqs, 0, "number of sysv ipc message queue identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_semas, CTLFLAG_RD, - &nmacipcsemas, 0, "number of sysv ipc semaphore identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_shms, CTLFLAG_RD, - &nmacipcshms, 0, "number of sysv ipc shm identifiers inuse"); +static unsigned int nmacposixksems; SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, posix_ksems, CTLFLAG_RD, &nmacposixksems, 0, "number of posix global semaphores inuse"); #endif -static int mac_policy_register(struct mac_policy_conf *mpc); -static int mac_policy_unregister(struct mac_policy_conf *mpc); - -static void mac_check_vnode_mmap_downgrade(struct ucred *cred, - struct vnode *vp, int *prot); -static void mac_cred_mmapped_drop_perms_recurse(struct thread *td, - struct ucred *cred, struct vm_map *map); - -static void mac_destroy_socket_label(struct label *label); - -static int mac_setlabel_vnode_extattr(struct ucred *cred, - struct vnode *vp, struct label *intlabel); - -MALLOC_DEFINE(M_MACTEMP, "mactemp", "MAC temporary label storage"); - -/* - * mac_static_policy_list holds a list of policy modules that are not - * loaded while the system is "live", and cannot be unloaded. These - * policies can be invoked without holding the busy count. - * - * mac_policy_list stores the list of dynamic policies. A busy count is - * maintained for the list, stored in mac_policy_busy. The busy count - * is protected by mac_policy_mtx; the list may be modified only - * while the busy count is 0, requiring that the lock be held to - * prevent new references to the list from being acquired. For almost - * all operations, incrementing the busy count is sufficient to - * guarantee consistency, as the list cannot be modified while the - * busy count is elevated. For a few special operations involving a - * change to the list of active policies, the mtx itself must be held. - * A condition variable, mac_policy_cv, is used to signal potential - * exclusive consumers that they should try to acquire the lock if a - * first attempt at exclusive access fails. - */ -#ifndef MAC_STATIC -static struct mtx mac_policy_mtx; -static struct cv mac_policy_cv; -static int mac_policy_count; -#endif -struct mac_policy_list_head mac_policy_list; -struct mac_policy_list_head mac_static_policy_list; - -/* - * We manually invoke WITNESS_WARN() to allow Witness to generate - * warnings even if we don't end up ever triggering the wait at - * run-time. The consumer of the exclusive interface must not hold - * any locks (other than potentially Giant) since we may sleep for - * long (potentially indefinite) periods of time waiting for the - * framework to become quiescent so that a policy list change may - * be made. - */ -void -mac_policy_grab_exclusive(void) -{ - -#ifndef MAC_STATIC - WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, - "mac_policy_grab_exclusive() at %s:%d", __FILE__, __LINE__); - mtx_lock(&mac_policy_mtx); - while (mac_policy_count != 0) - cv_wait(&mac_policy_cv, &mac_policy_mtx); -#endif -} - -void -mac_policy_assert_exclusive(void) -{ - -#ifndef MAC_STATIC - mtx_assert(&mac_policy_mtx, MA_OWNED); - KASSERT(mac_policy_count == 0, - ("mac_policy_assert_exclusive(): not exclusive")); -#endif -} - -void -mac_policy_release_exclusive(void) -{ - -#ifndef MAC_STATIC - KASSERT(mac_policy_count == 0, - ("mac_policy_release_exclusive(): not exclusive")); - mtx_unlock(&mac_policy_mtx); - cv_signal(&mac_policy_cv); -#endif -} - -void -mac_policy_list_busy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count++; - mtx_unlock(&mac_policy_mtx); -#endif -} - -int -mac_policy_list_conditional_busy(void) -{ -#ifndef MAC_STATIC - int ret; - - mtx_lock(&mac_policy_mtx); - if (!LIST_EMPTY(&mac_policy_list)) { - mac_policy_count++; - ret = 1; - } else - ret = 0; - mtx_unlock(&mac_policy_mtx); - return (ret); -#else - return (0); -#endif -} - -void -mac_policy_list_unbusy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count--; - KASSERT(mac_policy_count >= 0, ("MAC_POLICY_LIST_LOCK")); - if (mac_policy_count == 0) - cv_signal(&mac_policy_cv); - mtx_unlock(&mac_policy_mtx); -#endif -} - -/* - * Initialize the MAC subsystem, including appropriate SMP locks. - */ -static void -mac_init(void) -{ - - LIST_INIT(&mac_static_policy_list); - LIST_INIT(&mac_policy_list); - -#ifndef MAC_STATIC - mtx_init(&mac_policy_mtx, "mac_policy_mtx", NULL, MTX_DEF); - cv_init(&mac_policy_cv, "mac_policy_cv"); -#endif -} - -/* - * For the purposes of modules that want to know if they were loaded - * "early", set the mac_late flag once we've processed modules either - * linked into the kernel, or loaded before the kernel startup. - */ -static void -mac_late_init(void) -{ - - mac_late = 1; -} - -/* - * After the policy list has changed, walk the list to update any global - * flags. Currently, we support only one flag, and it's conditionally - * defined; as a result, the entire function is conditional. Eventually, - * the #else case might also iterate across the policies. - */ -static void -mac_policy_updateflags(void) -{ -#ifndef MAC_ALWAYS_LABEL_MBUF - struct mac_policy_conf *tmpc; - int labelmbufs; - - mac_policy_assert_exclusive(); - - labelmbufs = 0; - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - mac_labelmbufs = (labelmbufs != 0); -#endif -} - -/* - * Allow MAC policy modules to register during boot, etc. - */ -int -mac_policy_modevent(module_t mod, int type, void *data) -{ - struct mac_policy_conf *mpc; - int error; - - error = 0; - mpc = (struct mac_policy_conf *) data; - -#ifdef MAC_STATIC - if (mac_late) { - printf("mac_policy_modevent: MAC_STATIC and late\n"); - return (EBUSY); - } -#endif - - switch (type) { - case MOD_LOAD: - if (mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_NOTLATE && - mac_late) { - printf("mac_policy_modevent: can't load %s policy " - "after booting\n", mpc->mpc_name); - error = EBUSY; - break; - } - error = mac_policy_register(mpc); - break; - case MOD_UNLOAD: - /* Don't unregister the module if it was never registered. */ - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) - != 0) - error = mac_policy_unregister(mpc); - else - error = 0; - break; - default: - break; - } - - return (error); -} - -static int -mac_policy_register(struct mac_policy_conf *mpc) -{ - struct mac_policy_conf *tmpc; - int error, slot, static_entry; - - error = 0; - - /* - * We don't technically need exclusive access while !mac_late, - * but hold it for assertion consistency. - */ - mac_policy_grab_exclusive(); - - /* - * If the module can potentially be unloaded, or we're loading - * late, we have to stick it in the non-static list and pay - * an extra performance overhead. Otherwise, we can pay a - * light locking cost and stick it in the static list. - */ - static_entry = (!mac_late && - !(mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_UNLOADOK)); - - if (static_entry) { - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } else { - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } - if (mpc->mpc_field_off != NULL) { - slot = ffs(mac_slot_offsets_free); - if (slot == 0) { - error = ENOMEM; - goto out; - } - slot--; - mac_slot_offsets_free &= ~(1 << slot); - *mpc->mpc_field_off = slot; - } - mpc->mpc_runtime_flags |= MPC_RUNTIME_FLAG_REGISTERED; - - /* - * If we're loading a MAC module after the framework has - * initialized, it has to go into the dynamic list. If - * we're loading it before we've finished initializing, - * it can go into the static list with weaker locker - * requirements. - */ - if (static_entry) - LIST_INSERT_HEAD(&mac_static_policy_list, mpc, mpc_list); - else - LIST_INSERT_HEAD(&mac_policy_list, mpc, mpc_list); - - /* Per-policy initialization. */ - if (mpc->mpc_ops->mpo_init != NULL) - (*(mpc->mpc_ops->mpo_init))(mpc); - mac_policy_updateflags(); - - printf("Security policy loaded: %s (%s)\n", mpc->mpc_fullname, - mpc->mpc_name); - -out: - mac_policy_release_exclusive(); - return (error); -} - -static int -mac_policy_unregister(struct mac_policy_conf *mpc) -{ - - /* - * If we fail the load, we may get a request to unload. Check - * to see if we did the run-time registration, and if not, - * silently succeed. - */ - mac_policy_grab_exclusive(); - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) == 0) { - mac_policy_release_exclusive(); - return (0); - } -#if 0 - /* - * Don't allow unloading modules with private data. - */ - if (mpc->mpc_field_off != NULL) { - MAC_POLICY_LIST_UNLOCK(); - return (EBUSY); - } -#endif - /* - * Only allow the unload to proceed if the module is unloadable - * by its own definition. - */ - if ((mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_UNLOADOK) == 0) { - mac_policy_release_exclusive(); - return (EBUSY); - } - if (mpc->mpc_ops->mpo_destroy != NULL) - (*(mpc->mpc_ops->mpo_destroy))(mpc); - - LIST_REMOVE(mpc, mpc_list); - mpc->mpc_runtime_flags &= ~MPC_RUNTIME_FLAG_REGISTERED; - mac_policy_updateflags(); - - mac_policy_release_exclusive(); - - printf("Security policy unload: %s (%s)\n", mpc->mpc_fullname, - mpc->mpc_name); - - return (0); -} - -/* - * Define an error value precedence, and given two arguments, selects the - * value with the higher precedence. - */ -int -mac_error_select(int error1, int error2) -{ - - /* Certain decision-making errors take top priority. */ - if (error1 == EDEADLK || error2 == EDEADLK) - return (EDEADLK); - - /* Invalid arguments should be reported where possible. */ - if (error1 == EINVAL || error2 == EINVAL) - return (EINVAL); - - /* Precedence goes to "visibility", with both process and file. */ - if (error1 == ESRCH || error2 == ESRCH) - return (ESRCH); - - if (error1 == ENOENT || error2 == ENOENT) - return (ENOENT); - - /* Precedence goes to DAC/MAC protections. */ - if (error1 == EACCES || error2 == EACCES) - return (EACCES); - - /* Precedence goes to privilege. */ - if (error1 == EPERM || error2 == EPERM) - return (EPERM); - - /* Precedence goes to error over success; otherwise, arbitrary. */ - if (error1 != 0) - return (error1); - return (error2); -} - -static struct label * -mbuf_to_label(struct mbuf *mbuf) -{ - struct m_tag *tag; - struct label *label; - - tag = m_tag_find(mbuf, PACKET_TAG_MACLABEL, NULL); - label = (struct label *)(tag+1); - - return (label); -} - -void -mac_init_label(struct label *label) -{ - - bzero(label, sizeof(*label)); - label->l_flags = MAC_FLAG_INITIALIZED; -} - -void -mac_destroy_label(struct label *label) -{ - - KASSERT(label->l_flags & MAC_FLAG_INITIALIZED, - ("destroying uninitialized label")); - - bzero(label, sizeof(*label)); - /* implicit: label->l_flags &= ~MAC_FLAG_INITIALIZED; */ -} - -void -mac_init_bpfdesc(struct bpf_d *bpf_d) -{ - - mac_init_label(&bpf_d->bd_label); - MAC_PERFORM(init_bpfdesc_label, &bpf_d->bd_label); - MAC_DEBUG_COUNTER_INC(&nmacbpfdescs); -} - -static void -mac_init_cred_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_cred_label, label); - MAC_DEBUG_COUNTER_INC(&nmaccreds); -} - -void -mac_init_cred(struct ucred *cred) -{ - - mac_init_cred_label(&cred->cr_label); -} - -void -mac_init_devfsdirent(struct devfs_dirent *de) -{ - - mac_init_label(&de->de_label); - MAC_PERFORM(init_devfsdirent_label, &de->de_label); - MAC_DEBUG_COUNTER_INC(&nmacdevfsdirents); -} - -static void -mac_init_ifnet_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_ifnet_label, label); - MAC_DEBUG_COUNTER_INC(&nmacifnets); -} - -void -mac_init_ifnet(struct ifnet *ifp) -{ - - mac_init_ifnet_label(&ifp->if_label); -} - -void -mac_init_ipc_msgmsg(struct msg *msgptr) -{ - - mac_init_label(&msgptr->label); - MAC_PERFORM(init_ipc_msgmsg_label, &msgptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsgs); -} - -void -mac_init_ipc_msgqueue(struct msqid_kernel *msqkptr) -{ - - mac_init_label(&msqkptr->label); - MAC_PERFORM(init_ipc_msgqueue_label, &msqkptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsqs); -} - -void -mac_init_ipc_sema(struct semid_kernel *semakptr) -{ - - mac_init_label(&semakptr->label); - MAC_PERFORM(init_ipc_sema_label, &semakptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcsemas); -} - -void -mac_init_ipc_shm(struct shmid_kernel *shmsegptr) -{ - - mac_init_label(&shmsegptr->label); - MAC_PERFORM(init_ipc_shm_label, &shmsegptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcshms); -} - -int -mac_init_ipq(struct ipq *ipq, int flag) -{ - int error; - - mac_init_label(&ipq->ipq_label); - - MAC_CHECK(init_ipq_label, &ipq->ipq_label, flag); - if (error) { - MAC_PERFORM(destroy_ipq_label, &ipq->ipq_label); - mac_destroy_label(&ipq->ipq_label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacipqs); - } - return (error); -} - -int -mac_init_mbuf_tag(struct m_tag *tag, int flag) -{ - struct label *label; - int error; - - label = (struct label *) (tag + 1); - mac_init_label(label); - - MAC_CHECK(init_mbuf_label, label, flag); - if (error) { - MAC_PERFORM(destroy_mbuf_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacmbufs); - } - return (error); -} - -int -mac_init_mbuf(struct mbuf *m, int flag) -{ - struct m_tag *tag; - int error; - - M_ASSERTPKTHDR(m); - -#ifndef MAC_ALWAYS_LABEL_MBUF - /* - * If conditionally allocating mbuf labels, don't allocate unless - * they are required. - */ - if (!mac_labelmbufs) - return (0); -#endif - tag = m_tag_get(PACKET_TAG_MACLABEL, sizeof(struct label), - flag); - if (tag == NULL) - return (ENOMEM); - error = mac_init_mbuf_tag(tag, flag); - if (error) { - m_tag_free(tag); - return (error); - } - m_tag_prepend(m, tag); - return (0); -} - -void -mac_init_mount(struct mount *mp) -{ - - mac_init_label(&mp->mnt_mntlabel); - mac_init_label(&mp->mnt_fslabel); - MAC_PERFORM(init_mount_label, &mp->mnt_mntlabel); - MAC_PERFORM(init_mount_fs_label, &mp->mnt_fslabel); - MAC_DEBUG_COUNTER_INC(&nmacmounts); -} - void mac_init_posix_ksem(struct ksem *ksemptr) { @@ -843,199 +70,6 @@ } void -mac_init_proc(struct proc *p) -{ - - mac_init_label(&p->p_label); - MAC_PERFORM(init_proc_label, &p->p_label); - MAC_DEBUG_COUNTER_INC(&nmacprocs); -} - -static int -mac_init_socket_label(struct label *label, int flag) -{ - int error; - - mac_init_label(label); - - MAC_CHECK(init_socket_label, label, flag); - if (error) { - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacsockets); - } - - return (error); -} - -static int -mac_init_socket_peer_label(struct label *label, int flag) -{ - int error; - - mac_init_label(label); - - MAC_CHECK(init_socket_peer_label, label, flag); - if (error) { - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - } - - return (error); -} - -int -mac_init_socket(struct socket *socket, int flag) -{ - int error; - - error = mac_init_socket_label(&socket->so_label, flag); - if (error) - return (error); - - error = mac_init_socket_peer_label(&socket->so_peerlabel, flag); - if (error) - mac_destroy_socket_label(&socket->so_label); - - return (error); -} - -void -mac_init_vnode_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_vnode_label, label); - MAC_DEBUG_COUNTER_INC(&nmacvnodes); -} - -void -mac_init_vnode(struct vnode *vp) -{ - - mac_init_vnode_label(&vp->v_label); -} - -void -mac_destroy_bpfdesc(struct bpf_d *bpf_d) -{ - - MAC_PERFORM(destroy_bpfdesc_label, &bpf_d->bd_label); - mac_destroy_label(&bpf_d->bd_label); - MAC_DEBUG_COUNTER_DEC(&nmacbpfdescs); -} - -static void -mac_destroy_cred_label(struct label *label) -{ - - MAC_PERFORM(destroy_cred_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmaccreds); -} - -void -mac_destroy_cred(struct ucred *cred) -{ - - mac_destroy_cred_label(&cred->cr_label); -} - -void -mac_destroy_devfsdirent(struct devfs_dirent *de) -{ - - MAC_PERFORM(destroy_devfsdirent_label, &de->de_label); - mac_destroy_label(&de->de_label); - MAC_DEBUG_COUNTER_DEC(&nmacdevfsdirents); -} - -static void -mac_destroy_ifnet_label(struct label *label) -{ - - MAC_PERFORM(destroy_ifnet_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacifnets); -} - -void -mac_destroy_ifnet(struct ifnet *ifp) -{ - - mac_destroy_ifnet_label(&ifp->if_label); -} - -void -mac_destroy_ipc_msgmsg(struct msg *msgptr) -{ - - MAC_PERFORM(destroy_ipc_msgmsg_label, &msgptr->label); - mac_destroy_label(&msgptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcmsgs); -} - -void -mac_destroy_ipc_msgqueue(struct msqid_kernel *msqkptr) -{ - - MAC_PERFORM(destroy_ipc_msgqueue_label, &msqkptr->label); - mac_destroy_label(&msqkptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcmsqs); -} - -void -mac_destroy_ipc_sema(struct semid_kernel *semakptr) -{ - - MAC_PERFORM(destroy_ipc_sema_label, &semakptr->label); - mac_destroy_label(&semakptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcsemas); -} - -void -mac_destroy_ipc_shm(struct shmid_kernel *shmsegptr) -{ - - MAC_PERFORM(destroy_ipc_shm_label, &shmsegptr->label); - mac_destroy_label(&shmsegptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcshms); -} - -void -mac_destroy_ipq(struct ipq *ipq) -{ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Oct 20 16:30:12 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 616EF16A4C0; Mon, 20 Oct 2003 16:30:12 -0700 (PDT) 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 3BBDA16A4B3 for ; Mon, 20 Oct 2003 16:30:12 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9A3F343F3F for ; Mon, 20 Oct 2003 16:30:11 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KNUBXJ099196 for ; Mon, 20 Oct 2003 16:30:11 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KNUBe6099193 for perforce@freebsd.org; Mon, 20 Oct 2003 16:30:11 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 16:30:11 -0700 (PDT) Message-Id: <200310202330.h9KNUBe6099193@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 Subject: PERFORCE change 40037 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 23:30:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=40037 Change 40037 by rwatson@rwatson_tislabs on 2003/10/20 16:29:31 More trimmage. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_posix_sem.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_posix_sem.c#3 (text+ko) ==== @@ -38,9 +38,7 @@ #include #include #include -#include #include -#include #include #include From owner-p4-projects@FreeBSD.ORG Mon Oct 20 16:32:19 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 227D516A4C1; Mon, 20 Oct 2003 16:32:19 -0700 (PDT) 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 EF06016A4BF for ; Mon, 20 Oct 2003 16:32:18 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id EF35643F3F for ; Mon, 20 Oct 2003 16:32:16 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KNWGXJ099405 for ; Mon, 20 Oct 2003 16:32:16 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KNWGB7099402 for perforce@freebsd.org; Mon, 20 Oct 2003 16:32:16 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Date: Mon, 20 Oct 2003 16:32:16 -0700 (PDT) Message-Id: <200310202332.h9KNWGB7099402@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to Hrishikesh_Dandekar@NAI.com using -f From: Hrishikesh Dandekar To: Perforce Change Reviews Subject: PERFORCE change 40040 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 23:32:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=40040 Change 40040 by hdandeka@hdandeka_yash on 2003/10/20 16:31:49 Reverse Integrate the Sys V IPC and Posix sem related changes to the SEBSD module from the rishi_sebsd branch to the sebsd parent branch. Affected files ... .. //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/domains/test/test_ipc.te#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/domains/test/test_task_create.te#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/domains/test/test_task_setpgid.te#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/flask/access_vectors#3 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/flask/security_classes#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/macros/global_macros.te#3 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/mls#2 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/conf/MAC#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/sebsd/avc/av_perm_to_string.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/sebsd/avc/av_permissions.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/sebsd/avc/class_to_string.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/sebsd/flask.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/sebsd/flask/access_vectors#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/sebsd/flask/security_classes#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/sebsd/sebsd.c#23 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/sebsd/sebsd_labels.h#6 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/domains/test/test_ipc.te#2 (text+ko) ==== @@ -27,6 +27,7 @@ allow test_ipc_read_t test_ipc_base_t:msgq r_msgq_perms; allow test_ipc_read_t test_ipc_base_t:shm r_shm_perms; allow test_ipc_read_t test_ipc_base_t:msg {receive}; +allow test_ipc_read_t test_ipc_base_t:posix_sem r_posix_sem_perms; # Ok, not strictly a read-only domain, it needs unix_write (course # grain permission) in order to test some finer grained permissions allow test_ipc_read_t test_ipc_base_t:msgq {unix_write}; @@ -38,6 +39,7 @@ allow test_ipc_base_t test_ipc_read_t:sem rw_sem_perms; allow test_ipc_base_t test_ipc_read_t:msgq rw_msgq_perms; allow test_ipc_base_t test_ipc_read_t:shm rw_shm_perms; +allow test_ipc_base_t test_ipc_read_t:posix_sem rw_posix_sem_perms; allow test_ipc_base_t kernel_t:system { ipc_info }; # allow the associate domain to only associate with @@ -45,6 +47,7 @@ allow test_ipc_associate_t test_ipc_base_t:sem {unix_read unix_write associate}; allow test_ipc_associate_t test_ipc_base_t:shm {unix_read unix_write associate}; allow test_ipc_associate_t test_ipc_base_t:msgq {unix_read unix_write associate}; +allow test_ipc_associate_t test_ipc_base_t:posix_sem {associate}; # allow to lock down an IPC region created by self ==== //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/domains/test/test_task_create.te#2 (text+ko) ==== @@ -30,9 +30,10 @@ allow test_create_no_t self:unix_stream_socket connectto; # Access System V IPC objects created by processes in the same domain. allow test_create_no_t self:sem rw_sem_perms; -allow test_create_no_t self:msg { send receive }; +allow test_create_no_t self:msg { send receive destroy }; allow test_create_no_t self:msgq rw_msgq_perms; allow test_create_no_t self:shm rw_shm_perms; +allow test_create_no_t self:posix_sem rw_posix_sem_perms; # Send SIGCHLD to init. allow test_create_no_t init_t:process sigchld; # Use descriptors created by login, sshd, or newrole. ==== //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/domains/test/test_task_setpgid.te#2 (text+ko) ==== @@ -29,9 +29,10 @@ allow test_setpgid_no_t self:unix_stream_socket connectto; # Access System V IPC objects created by processes in the same domain. allow test_setpgid_no_t self:sem rw_sem_perms; -allow test_setpgid_no_t self:msg { send receive }; +allow test_setpgid_no_t self:msg { send receive destroy }; allow test_setpgid_no_t self:msgq rw_msgq_perms; allow test_setpgid_no_t self:shm rw_shm_perms; +allow test_setpgid_no_t self:posix_sem rw_posix_sem_perms; # Send SIGCHLD to init. allow test_setpgid_no_t init_t:process sigchld; # Use descriptors created by login, sshd, or newrole. ==== //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/flask/access_vectors#3 (text+ko) ==== @@ -256,12 +256,19 @@ { send receive + destroy } class shm inherits ipc + +class posix_sem { - lock + associate + disassociate + destroy + write + read } ==== //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/flask/security_classes#2 (text+ko) ==== @@ -40,4 +40,7 @@ class shm class ipc +#Posix.1b-related classes +class posix_sem + # FLASK ==== //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/macros/global_macros.te#3 (text+ko) ==== @@ -165,7 +165,9 @@ define(`r_msgq_perms', `{ associate getattr read unix_read }') define(`rw_msgq_perms', `{ associate getattr setattr create destroy read write enqueue unix_read unix_write }') define(`r_shm_perms', `{ associate getattr read unix_read }') -define(`rw_shm_perms', `{ associate getattr setattr create destroy read write lock unix_read unix_write }') +define(`rw_shm_perms', `{ associate getattr setattr create destroy read write unix_read unix_write }') +define(`r_posix_sem_perms', `{ associate disassociate read }') +define(`rw_posix_sem_perms', `{ associate disassociate destroy write read }') # # Mimic the dac_override capability from linux @@ -598,9 +600,10 @@ # Access System V IPC objects created by processes in the same domain. allow $1 self:sem rw_sem_perms; -allow $1 self:msg { send receive }; +allow $1 self:msg { send receive destroy }; allow $1 self:msgq rw_msgq_perms; allow $1 self:shm rw_shm_perms; +allow $1 self:posix_sem rw_posix_sem_perms; # Use descriptors created by login, sshd, or newrole. allow $1 local_login_t:fd use; ==== //depot/projects/trustedbsd/sebsd/contrib/sebsd/policy/mls#2 (text+ko) ==== @@ -212,11 +212,18 @@ { send : write receive : read + destroy : write } class shm + +class posix_sem { - lock : write + associate : none + disassociate : none + destroy : write + write : write + read : read } class security ==== //depot/projects/trustedbsd/sebsd/sys/i386/conf/MAC#5 (text+ko) ==== @@ -57,6 +57,7 @@ options SYSVMSG #SYSV-style message queues options SYSVSEM #SYSV-style semaphores options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions +options P1003_1B_SEMAPHORES #POSIX P1003_1B semaphores options KBD_INSTALL_CDEV # install a CDEV entry in /dev options AHC_REG_PRETTY_PRINT # Print register bitfields in debug # output. Adds ~128k to driver. ==== //depot/projects/trustedbsd/sebsd/sys/security/sebsd/avc/av_perm_to_string.h#4 (text+ko) ==== @@ -67,7 +67,12 @@ { SECCLASS_MSGQ, MSGQ__ENQUEUE, "enqueue" }, { SECCLASS_MSG, MSG__SEND, "send" }, { SECCLASS_MSG, MSG__RECEIVE, "receive" }, - { SECCLASS_SHM, SHM__LOCK, "lock" }, + { SECCLASS_MSG, MSG__DESTROY, "destroy" }, + { SECCLASS_POSIX_SEM, POSIX_SEM__ASSOCIATE, "associate" }, + { SECCLASS_POSIX_SEM, POSIX_SEM__DISASSOCIATE, "disassociate" }, + { SECCLASS_POSIX_SEM, POSIX_SEM__DESTROY, "destroy" }, + { SECCLASS_POSIX_SEM, POSIX_SEM__WRITE, "write" }, + { SECCLASS_POSIX_SEM, POSIX_SEM__READ, "read" }, { SECCLASS_SECURITY, SECURITY__COMPUTE_AV, "compute_av" }, { SECCLASS_SECURITY, SECURITY__NOTIFY_PERM, "notify_perm" }, { SECCLASS_SECURITY, SECURITY__TRANSITION_SID, "transition_sid" }, ==== //depot/projects/trustedbsd/sebsd/sys/security/sebsd/avc/av_permissions.h#5 (text+ko) ==== @@ -527,6 +527,7 @@ #define MSG__SEND 0x0000000000000001UL #define MSG__RECEIVE 0x0000000000000002UL +#define MSG__DESTROY 0x0000000000000004UL #define SHM__WRITE 0x0000000000000020UL #define SHM__UNIX_WRITE 0x0000000000000100UL @@ -538,7 +539,11 @@ #define SHM__DESTROY 0x0000000000000002UL #define SHM__GETATTR 0x0000000000000004UL -#define SHM__LOCK 0x0000000000000200UL +#define POSIX_SEM__ASSOCIATE 0x0000000000000001UL +#define POSIX_SEM__DISASSOCIATE 0x0000000000000002UL +#define POSIX_SEM__DESTROY 0x0000000000000004UL +#define POSIX_SEM__WRITE 0x0000000000000008UL +#define POSIX_SEM__READ 0x0000000000000010UL #define SECURITY__COMPUTE_AV 0x0000000000000001UL #define SECURITY__NOTIFY_PERM 0x0000000000000002UL ==== //depot/projects/trustedbsd/sebsd/sys/security/sebsd/avc/class_to_string.h#4 (text+ko) ==== @@ -34,5 +34,6 @@ "msgq", "shm", "ipc", + "posix_sem", }; ==== //depot/projects/trustedbsd/sebsd/sys/security/sebsd/flask.h#3 (text+ko) ==== @@ -36,6 +36,7 @@ #define SECCLASS_MSGQ 27 #define SECCLASS_SHM 28 #define SECCLASS_IPC 29 +#define SECCLASS_POSIX_SEM 30 /* * Security identifier indices for initial entities ==== //depot/projects/trustedbsd/sebsd/sys/security/sebsd/flask/access_vectors#4 (text+ko) ==== @@ -256,12 +256,19 @@ { send receive + destroy } class shm inherits ipc + +class posix_sem { - lock + associate + disassociate + destroy + write + read } ==== //depot/projects/trustedbsd/sebsd/sys/security/sebsd/flask/security_classes#3 (text+ko) ==== @@ -40,4 +40,7 @@ class shm class ipc +#Posix.1b-related classes +class posix_sem + # FLASK ==== //depot/projects/trustedbsd/sebsd/sys/security/sebsd/sebsd.c#23 (text+ko) ==== @@ -52,7 +52,13 @@ #include #include #include +#include +#include +#include +#include +#include + #include #include @@ -378,6 +384,16 @@ } static void +sebsd_init_ipc_label(struct label *label) +{ + struct ipc_security_struct *new; + + new = malloc(sizeof(*new), M_SEBSD, M_ZERO | M_WAITOK); + new->sid = SECINITSID_UNLABELED; + SLOT(label) = new; +} + +static void sebsd_destroy_label(struct label *label) { @@ -393,6 +409,16 @@ } static void +sebsd_cleanup_ipc_label(struct label *label) +{ + struct ipc_security_struct *ipcsec; + + ipcsec = SLOT(label); + bzero(ipcsec, sizeof(struct ipc_security_struct)); + ipcsec->sid = SECINITSID_UNLABELED; +} + +static void sebsd_associate_vnode_devfs(struct mount *mp, struct label *fslabel, struct devfs_dirent *de, struct label *delabel, struct vnode *vp, struct label *vlabel) @@ -521,6 +547,90 @@ } static void +sebsd_create_ipc_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, + struct label *msqlabel, struct msg *msgptr, struct label *msglabel) +{ + struct task_security_struct *tsec; + struct ipc_security_struct *msqsec; + struct ipc_security_struct *msgsec; + + tsec = SLOT(&cred->cr_label); + msqsec = SLOT(msqlabel); + msgsec = SLOT(msglabel); + + bzero(msgsec, sizeof(*msgsec)); + msgsec->sclass = SECCLASS_MSG; + + /* XXX should we return an error if security_transition_sid, + * Or, should we assign the msg object the thread sid? + */ + if(security_transition_sid(tsec->sid, msqsec->sid, + SECCLASS_MSG, &msgsec->sid) < 0) { + printf("Warning: security_transition_sid failed on + create_ipc_msgmsg\n"); + printf("Assigning the requesting thread's sid to the msg\n"); + msgsec->sid = tsec->sid; + } +} + +static void +sebsd_create_ipc_msgqueue(struct ucred *cred, struct msqid_kernel *msqkptr, + struct label *msqlabel) +{ + struct task_security_struct *tsec; + struct ipc_security_struct *ipcsec; + + tsec = SLOT(&cred->cr_label); + ipcsec = SLOT(msqlabel); + + ipcsec->sid = tsec->sid; + ipcsec->sclass = SECCLASS_MSGQ; +} + +static void +sebsd_create_ipc_sema(struct ucred *cred, struct semid_kernel *semakptr, + struct label *semalabel) +{ + struct task_security_struct *tsec; + struct ipc_security_struct *ipcsec; + + tsec = SLOT(&cred->cr_label); + ipcsec = SLOT(semalabel); + + ipcsec->sid = tsec->sid; + ipcsec->sclass = SECCLASS_SEM; +} + +static void +sebsd_create_ipc_shm(struct ucred *cred, struct shmid_kernel *shmsegptr, + struct label *shmlabel) +{ + struct task_security_struct *tsec; + struct ipc_security_struct *ipcsec; + + tsec = SLOT(&cred->cr_label); + ipcsec = SLOT(shmlabel); + + ipcsec->sid = tsec->sid; + ipcsec->sclass = SECCLASS_SHM; +} + +static void +sebsd_create_posix_ksem(struct ucred *cred, struct ksem *ksemptr, + struct label *ks_label) +{ + struct task_security_struct *tsec; + struct ipc_security_struct *ipcsec; + + tsec = SLOT(&cred->cr_label); + ipcsec = SLOT(ks_label); + + ipcsec->sid = tsec->sid; + ipcsec->sclass = SECCLASS_POSIX_SEM; + +} + +static void sebsd_create_devfs_device(struct ucred *cr, struct mount *mp, dev_t dev, struct devfs_dirent *devfs_dirent, struct label *label, const char *fullpath) @@ -1976,6 +2086,270 @@ FD__USE, NULL)); } +static int +ipc_has_perm(struct ucred *cred, struct label *label, access_vector_t perm) +{ + struct task_security_struct *task; + struct ipc_security_struct *ipcsec; + + task = SLOT(&cred->cr_label); + ipcsec = SLOT(label); + + /* + * TBD: No audit information yet + */ + + return(avc_has_perm_ref(task->sid, ipcsec->sid, ipcsec->sclass, + perm, &ipcsec->avcr)); +} + +static int +sebsd_check_ipc_msgrcv(struct ucred *cred, struct msg *msgptr) +{ + + return(ipc_has_perm(cred, &msgptr->label, MSG__RECEIVE)); +} + +static int +sebsd_check_ipc_msgrmid(struct ucred *cred, struct msg *msgptr) +{ + + return(ipc_has_perm(cred, &msgptr->label, MSG__DESTROY)); +} + +static int +sebsd_check_ipc_msqget(struct ucred *cred, struct msqid_kernel *msqkptr) +{ + + return(ipc_has_perm(cred, &msqkptr->label, MSGQ__ASSOCIATE)); +} + +static int +sebsd_check_ipc_msqsnd(struct ucred *cred, struct msqid_kernel *msqkptr) +{ + + /* Can this process write to the queue? */ + return(ipc_has_perm(cred, &msqkptr->label, MSGQ__WRITE)); +} + +static int +sebsd_check_ipc_msgmsq(struct ucred *cred, struct msg *msgptr, + struct msqid_kernel *msqkptr) +{ + int rc; + struct task_security_struct *task; + struct ipc_security_struct *msgsec; + struct ipc_security_struct *msqsec; + + task = SLOT(&cred->cr_label); + msgsec = SLOT(&msgptr->label); + msqsec = SLOT(&msqkptr->label); + + /* + * TBD: No audit information yet + */ + + /* Can this process send the message */ + rc = avc_has_perm_ref(task->sid, msgsec->sid, msgsec->sclass, + MSG__SEND, &msgsec->avcr); + if (rc) + return (rc); + + /* Can the message be put in the message queue? */ + return(avc_has_perm_ref(msgsec->sid, msqsec->sid, msqsec->sclass, + MSGQ__ENQUEUE, &msqsec->avcr)); +} + +static int +sebsd_check_ipc_msqrcv(struct ucred *cred, struct msqid_kernel *msqkptr) +{ + + return(ipc_has_perm(cred, &msqkptr->label, MSGQ__READ)); +} + +static int +sebsd_check_ipc_msqctl(struct ucred *cred, struct msqid_kernel *msqkptr, + int cmd) +{ + access_vector_t perm; + + switch(cmd) { + case IPC_RMID: + perm = MSGQ__DESTROY; + break; + case IPC_SET: + perm = MSGQ__SETATTR; + break; + case IPC_STAT: + perm = MSGQ__GETATTR | MSGQ__ASSOCIATE; + break; + default: + return (EACCES); + } + + /* + * TBD: No audit information yet + */ + return(ipc_has_perm(cred, &msqkptr->label, perm)); +} + +static int +sebsd_check_ipc_semctl(struct ucred *cred, struct semid_kernel *semakptr, + int cmd) +{ + access_vector_t perm; + + switch(cmd) { + case GETPID: + case GETNCNT: + case GETZCNT: + perm = SEM__GETATTR; + break; + case GETVAL: + case GETALL: + perm = SEM__READ; + break; + case SETVAL: + case SETALL: + perm = SEM__WRITE; + break; + case IPC_RMID: + perm = SEM__DESTROY; + break; + case IPC_SET: + perm = SEM__SETATTR; + break; + case IPC_STAT: + perm = SEM__GETATTR | SEM__ASSOCIATE; + break; + default: + return (EACCES); + } + + /* + * TBD: No audit information yet + */ + return(ipc_has_perm(cred, &semakptr->label, perm)); +} + +static int +sebsd_check_ipc_semget(struct ucred *cred, struct semid_kernel *semakptr) +{ + + return(ipc_has_perm(cred, &semakptr->label, SEM__ASSOCIATE)); +} + +static int +sebsd_check_ipc_semop(struct ucred *cred, struct semid_kernel *semakptr, + size_t accesstype) +{ + access_vector_t perm; + perm = 0UL; + + if( accesstype & SEM_R ) + perm = SEM__READ; + if( accesstype & SEM_A ) + perm = SEM__READ | SEM__WRITE; + + return(ipc_has_perm(cred, &semakptr->label, perm)); +} + +static int +sebsd_check_ipc_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, + int shmflg) +{ + access_vector_t perm; + + if (shmflg & SHM_RDONLY) + perm = SHM__READ; + else + perm = SHM__READ | SHM__WRITE; + + return(ipc_has_perm(cred, &shmsegptr->label, perm)); +} + +static int +sebsd_check_ipc_shmctl(struct ucred *cred, struct shmid_kernel *shmsegptr, + int cmd) +{ + access_vector_t perm; + + switch(cmd) { + case IPC_RMID: + perm = SHM__DESTROY; + break; + case IPC_SET: + perm = SHM__SETATTR; + break; + case IPC_STAT: + case SHM_STAT: + perm = SHM__GETATTR | SHM__ASSOCIATE; + break; + default: + return (EACCES); + } + + return(ipc_has_perm(cred, &shmsegptr->label, perm)); + +} + +static int +sebsd_check_ipc_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, + int shmflg) +{ + + return(ipc_has_perm(cred, &shmsegptr->label, SHM__ASSOCIATE)); +} + +static int +sebsd_check_posix_sem_close(struct ucred *cred, struct ksem *ksemptr) +{ + + return(ipc_has_perm(cred, &ksemptr->ks_label, POSIX_SEM__DISASSOCIATE)); +} + +static int +sebsd_check_posix_sem_destroy(struct ucred *cred, struct ksem *ksemptr) +{ + + return(ipc_has_perm(cred, &ksemptr->ks_label, POSIX_SEM__DESTROY)); +} + +static int +sebsd_check_posix_sem_getvalue(struct ucred *cred, struct ksem *ksemptr) +{ + + return(ipc_has_perm(cred, &ksemptr->ks_label, POSIX_SEM__READ)); +} + +static int +sebsd_check_posix_sem_openexisting(struct ucred *cred, struct ksem *ksemptr) +{ + + return(ipc_has_perm(cred, &ksemptr->ks_label, POSIX_SEM__ASSOCIATE)); +} + +static int +sebsd_check_posix_sem_post(struct ucred *cred, struct ksem *ksemptr) +{ + + return(ipc_has_perm(cred, &ksemptr->ks_label, POSIX_SEM__WRITE)); +} + +static int +sebsd_check_posix_sem_unlink(struct ucred *cred, struct ksem *ksemptr) +{ + + return(ipc_has_perm(cred, &ksemptr->ks_label, POSIX_SEM__DESTROY)); +} + +static int +sebsd_check_posix_sem_wait(struct ucred *cred, struct ksem *ksemptr) +{ + + return(ipc_has_perm(cred, &ksemptr->ks_label, POSIX_SEM__WRITE)); +} + static struct mac_policy_ops sebsd_ops = { /* Init Labels */ .mpo_init = sebsd_init, @@ -1984,11 +2358,16 @@ .mpo_init_devfsdirent_label = sebsd_init_vnode_label, .mpo_init_file_label = sebsd_init_file_label, .mpo_init_ifnet_label = sebsd_init_network_label, + .mpo_init_ipc_msgmsg_label = sebsd_init_ipc_label, + .mpo_init_ipc_msgqueue_label = sebsd_init_ipc_label, + .mpo_init_ipc_sema_label = sebsd_init_ipc_label, + .mpo_init_ipc_shm_label = sebsd_init_ipc_label, .mpo_init_ipq_label = sebsd_init_network_label_waitcheck, .mpo_init_mbuf_label = sebsd_init_network_label_waitcheck, .mpo_init_mount_label = sebsd_init_mount_label, .mpo_init_mount_fs_label = sebsd_init_mount_fs_label, .mpo_init_pipe_label = sebsd_init_vnode_label, + .mpo_init_posix_ksem_label = sebsd_init_ipc_label, .mpo_init_socket_label = sebsd_init_network_label_waitcheck, .mpo_init_socket_peer_label = sebsd_init_network_label_waitcheck, .mpo_init_vnode_label = sebsd_init_vnode_label, @@ -1999,12 +2378,17 @@ .mpo_destroy_cred_label = sebsd_destroy_label, .mpo_destroy_devfsdirent_label = sebsd_destroy_label, .mpo_destroy_ifnet_label = sebsd_destroy_label, + .mpo_destroy_ipc_msgmsg_label = sebsd_destroy_label, + .mpo_destroy_ipc_msgqueue_label = sebsd_destroy_label, + .mpo_destroy_ipc_sema_label = sebsd_destroy_label, + .mpo_destroy_ipc_shm_label = sebsd_destroy_label, .mpo_destroy_ipq_label = sebsd_destroy_label, .mpo_destroy_mbuf_label = sebsd_destroy_label, .mpo_destroy_file_label = sebsd_destroy_label, .mpo_destroy_mount_label = sebsd_destroy_label, .mpo_destroy_mount_fs_label = sebsd_destroy_label, .mpo_destroy_pipe_label = sebsd_destroy_label, + .mpo_destroy_posix_ksem_label = sebsd_destroy_label, .mpo_destroy_socket_label = sebsd_destroy_label, .mpo_destroy_socket_peer_label = sebsd_destroy_label, .mpo_destroy_vnode_label = sebsd_destroy_label, @@ -2054,9 +2438,14 @@ .mpo_create_devfs_directory = sebsd_create_devfs_directory, .mpo_create_devfs_symlink = sebsd_create_devfs_symlink, .mpo_create_file = sebsd_create_file, + .mpo_create_ipc_msgmsg = sebsd_create_ipc_msgmsg, + .mpo_create_ipc_msgqueue = sebsd_create_ipc_msgqueue, + .mpo_create_ipc_sema = sebsd_create_ipc_sema, + .mpo_create_ipc_shm = sebsd_create_ipc_shm, /* .mpo_create_mbuf_from_socket = sebsd_create_mbuf_from_socket, */ .mpo_create_mount = sebsd_create_mount, .mpo_create_pipe = sebsd_create_pipe, + .mpo_create_posix_ksem = sebsd_create_posix_ksem, .mpo_create_proc0 = sebsd_create_proc0, .mpo_create_proc1 = sebsd_create_proc1, .mpo_create_root_mount = sebsd_create_root_mount, @@ -2086,6 +2475,20 @@ .mpo_check_mount = sebsd_check_mount, .mpo_check_umount = sebsd_check_umount, .mpo_check_remount = sebsd_check_remount, + .mpo_check_ipc_msgrcv = sebsd_check_ipc_msgrcv, + .mpo_check_ipc_msgrmid = sebsd_check_ipc_msgrmid, + .mpo_check_ipc_msqget = sebsd_check_ipc_msqget, + .mpo_check_ipc_msqsnd = sebsd_check_ipc_msqsnd, + .mpo_check_ipc_msgmsq = sebsd_check_ipc_msgmsq, + .mpo_check_ipc_msqrcv = sebsd_check_ipc_msqrcv, + .mpo_check_ipc_msqctl = sebsd_check_ipc_msqctl, + .mpo_check_ipc_semctl = sebsd_check_ipc_semctl, + .mpo_check_ipc_semget = sebsd_check_ipc_semget, + .mpo_check_ipc_semop = sebsd_check_ipc_semop, + .mpo_check_ipc_shmat = sebsd_check_ipc_shmat, + .mpo_check_ipc_shmctl = sebsd_check_ipc_shmctl, + /* .mpo_check_ipc_shmdt = sebsd_check_ipc_shmdt, */ + .mpo_check_ipc_shmget = sebsd_check_ipc_shmget, .mpo_check_mount_stat = sebsd_check_mount_stat, .mpo_check_pipe_ioctl = sebsd_check_pipe_ioctl, @@ -2095,6 +2498,14 @@ .mpo_check_pipe_stat = sebsd_check_pipe_stat, .mpo_check_pipe_write = sebsd_check_pipe_write, + .mpo_check_posix_sem_close = sebsd_check_posix_sem_close, + .mpo_check_posix_sem_destroy = sebsd_check_posix_sem_destroy, + .mpo_check_posix_sem_getvalue = sebsd_check_posix_sem_getvalue, + .mpo_check_posix_sem_openexisting = sebsd_check_posix_sem_openexisting, + .mpo_check_posix_sem_post = sebsd_check_posix_sem_post, + .mpo_check_posix_sem_unlink = sebsd_check_posix_sem_unlink, + .mpo_check_posix_sem_wait = sebsd_check_posix_sem_wait, + .mpo_check_proc_debug = sebsd_check_proc_debug, .mpo_check_proc_sched = sebsd_check_proc_sched, .mpo_check_proc_signal = sebsd_check_proc_signal, @@ -2143,7 +2554,10 @@ .mpo_setlabel_vnode_extattr = sebsd_setlabel_vnode_extattr, /*.mpo_set_socket_peer_from_mbuf = sebsd_set_socket_peer_from_mbuf,*/ /*.mpo_set_socket_peer_from_socket = sebsd_set_socket_peer_from_socket,*/ - + .mpo_cleanup_ipc_msgmsg = sebsd_cleanup_ipc_label, + .mpo_cleanup_ipc_msgqueue = sebsd_cleanup_ipc_label, + .mpo_cleanup_ipc_sema = sebsd_cleanup_ipc_label, + .mpo_cleanup_ipc_shm = sebsd_cleanup_ipc_label, .mpo_syscall = sebsd_syscall, }; ==== //depot/projects/trustedbsd/sebsd/sys/security/sebsd/sebsd_labels.h#6 (text+ko) ==== @@ -65,6 +65,12 @@ struct avc_entry_ref avcr; }; +struct ipc_security_struct { + security_id_t sid; + security_class_t sclass; + struct avc_entry_ref avcr; +}; + struct mount_security_struct { security_id_t sid; /* SID of file system */ #ifndef __FreeBSD__ From owner-p4-projects@FreeBSD.ORG Mon Oct 20 16:35:22 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A6BB016A4C0; Mon, 20 Oct 2003 16:35:22 -0700 (PDT) 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 81A0D16A4B3 for ; Mon, 20 Oct 2003 16:35:22 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 716FD43F85 for ; Mon, 20 Oct 2003 16:35:21 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KNZLXJ099795 for ; Mon, 20 Oct 2003 16:35:21 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KNZKL4099783 for perforce@freebsd.org; Mon, 20 Oct 2003 16:35:20 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 16:35:20 -0700 (PDT) Message-Id: <200310202335.h9KNZKL4099783@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 Subject: PERFORCE change 40041 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 23:35:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=40041 Change 40041 by rwatson@rwatson_tislabs on 2003/10/20 16:34:54 Remove POSIX sem code from kern_mac.c now that it's in mac_posix_sem.c. Hook up mac_posix_sem.c to the build. Affected files ... .. //depot/projects/trustedbsd/mac/sys/conf/files#86 edit .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#413 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/conf/files#86 (text+ko) ==== @@ -1589,6 +1589,7 @@ posix4/posix4_mib.c standard kern/uipc_sem.c optional p1003_1b_semaphores security/mac/mac_pipe.c optional mac +security/mac/mac_posix_sem.c optional mac security/mac_biba/mac_biba.c optional mac_biba security/mac_bsdextended/mac_bsdextended.c optional mac_bsdextended security/mac_ifoff/mac_ifoff.c optional mac_ifoff ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#413 (text+ko) ==== @@ -44,7 +44,6 @@ #include "opt_mac.h" #include "opt_devfs.h" -#include "opt_posix.h" #include #include @@ -74,8 +73,6 @@ #include #include -#include - #include #include #include @@ -158,11 +155,6 @@ &mac_enforce_network, 0, "Enforce MAC policy on network packets"); TUNABLE_INT("security.mac.enforce_network", &mac_enforce_network); -static int mac_enforce_posix_sem = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_posix_sem, CTLFLAG_RW, - &mac_enforce_posix_sem, 0, "Enforce MAC policy on global POSIX semaphores"); -TUNABLE_INT("security.mac.enforce_posix_sem", &mac_enforce_posix_sem); - static int mac_enforce_process = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_process, CTLFLAG_RW, &mac_enforce_process, 0, "Enforce MAC policy on inter-process operations"); @@ -215,7 +207,7 @@ static unsigned int nmacmbufs, nmaccreds, nmacifnets, nmacbpfdescs, nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, nmacipqs, nmacprocs, nmacipcmsgs, nmacipcmsqs, - nmacipcsemas, nmacipcshms, nmacposixksems; + nmacipcsemas, nmacipcshms; SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mbufs, CTLFLAG_RD, &nmacmbufs, 0, "number of mbufs in use"); @@ -247,8 +239,6 @@ &nmacipcsemas, 0, "number of sysv ipc semaphore identifiers inuse"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_shms, CTLFLAG_RD, &nmacipcshms, 0, "number of sysv ipc shm identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, posix_ksems, CTLFLAG_RD, - &nmacposixksems, 0, "number of posix global semaphores inuse"); #endif static int mac_policy_register(struct mac_policy_conf *mpc); @@ -833,15 +823,6 @@ MAC_DEBUG_COUNTER_INC(&nmacmounts); } -void -mac_init_posix_ksem(struct ksem *ksemptr) -{ - - mac_init_label(&ksemptr->ks_label); - MAC_PERFORM(init_posix_ksem_label, &ksemptr->ks_label); - MAC_DEBUG_COUNTER_INC(&nmacposixksems); -} - void mac_init_proc(struct proc *p) { @@ -1036,15 +1017,6 @@ } void -mac_destroy_posix_ksem(struct ksem *ksemptr) -{ - - MAC_PERFORM(destroy_posix_ksem_label, &ksemptr->ks_label); - mac_destroy_label(&ksemptr->ks_label); - MAC_DEBUG_COUNTER_DEC(&nmacposixksems); -} - -void mac_destroy_proc(struct proc *p) { @@ -2175,13 +2147,6 @@ MAC_PERFORM(create_ipc_shm, cred, shmsegptr, &shmsegptr->label); } -void -mac_create_posix_ksem(struct ucred *cred, struct ksem *ksemptr) -{ - - MAC_PERFORM(create_posix_ksem, cred, ksemptr, &ksemptr->ks_label); -} - void mac_create_socket(struct ucred *cred, struct socket *socket) { @@ -2813,105 +2778,6 @@ } int -mac_check_posix_sem_close(struct ucred *cred, struct ksem *ksemptr) -{ - int error; - - if (!mac_enforce_posix_sem) - return (0); - - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_close, cred, ksemptr); - - return(error); -} - -int -mac_check_posix_sem_destroy(struct ucred *cred, struct ksem *ksemptr) -{ - int error; - - if (!mac_enforce_posix_sem) - return (0); - - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_destroy, cred, ksemptr); - - return(error); -} - -int -mac_check_posix_sem_openexisting(struct ucred *cred, struct ksem *ksemptr) -{ - int error; - - if (!mac_enforce_posix_sem) - return (0); - - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_openexisting, cred, ksemptr); - - return(error); -} - -int -mac_check_posix_sem_getvalue(struct ucred *cred, struct ksem *ksemptr) -{ - int error; - - if (!mac_enforce_posix_sem) - return (0); - - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_getvalue, cred, ksemptr); - - return(error); -} - -int -mac_check_posix_sem_post(struct ucred *cred, struct ksem *ksemptr) -{ - int error; - - if (!mac_enforce_posix_sem) - return (0); - - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_post, cred, ksemptr); - - return(error); -} - -int -mac_check_posix_sem_unlink(struct ucred *cred, struct ksem *ksemptr) -{ - int error; - - if (!mac_enforce_posix_sem) - return (0); - - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_unlink, cred, ksemptr); - - return(error); -} - -int -mac_check_posix_sem_wait(struct ucred *cred, struct ksem *ksemptr) -{ - int error; - - if (!mac_enforce_posix_sem) - return (0); - - //XXX: Should we also pass &ksemptr->ks_label ?? - MAC_CHECK(check_posix_sem_wait, cred, ksemptr); - - return(error); -} - - -int mac_check_proc_debug(struct ucred *cred, struct proc *proc) { int error; From owner-p4-projects@FreeBSD.ORG Mon Oct 20 16:37:27 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 267FB16A4C0; Mon, 20 Oct 2003 16:37:27 -0700 (PDT) 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 C77EB16A4BF for ; Mon, 20 Oct 2003 16:37:26 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CB21243F85 for ; Mon, 20 Oct 2003 16:37:24 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KNbOXJ099916 for ; Mon, 20 Oct 2003 16:37:24 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KNbOU1099913 for perforce@freebsd.org; Mon, 20 Oct 2003 16:37:24 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 16:37:24 -0700 (PDT) Message-Id: <200310202337.h9KNbOU1099913@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 Subject: PERFORCE change 40042 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 23:37:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=40042 Change 40042 by rwatson@rwatson_tislabs on 2003/10/20 16:36:58 Integ kern_mac.c to mac_system.c to hold system privilege related checks. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_system.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Mon Oct 20 16:44:35 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 84B3116A4C0; Mon, 20 Oct 2003 16:44:35 -0700 (PDT) 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 5EC4D16A4B3 for ; Mon, 20 Oct 2003 16:44:35 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AA7B843FBD for ; Mon, 20 Oct 2003 16:44:34 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KNiYXJ000465 for ; Mon, 20 Oct 2003 16:44:34 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KNiY5c000462 for perforce@freebsd.org; Mon, 20 Oct 2003 16:44:34 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 16:44:34 -0700 (PDT) Message-Id: <200310202344.h9KNiY5c000462@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 Subject: PERFORCE change 40044 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 23:44:35 -0000 X-List-Received-Date: Mon, 20 Oct 2003 23:44:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=40044 Change 40044 by rwatson@rwatson_tislabs on 2003/10/20 16:44:14 Hook up mac_system.c. Affected files ... .. //depot/projects/trustedbsd/mac/sys/conf/files#87 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/conf/files#87 (text+ko) ==== @@ -1590,6 +1590,7 @@ kern/uipc_sem.c optional p1003_1b_semaphores security/mac/mac_pipe.c optional mac security/mac/mac_posix_sem.c optional mac +security/mac/mac_system.c optional mac security/mac_biba/mac_biba.c optional mac_biba security/mac_bsdextended/mac_bsdextended.c optional mac_bsdextended security/mac_ifoff/mac_ifoff.c optional mac_ifoff From owner-p4-projects@FreeBSD.ORG Mon Oct 20 16:44:36 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2852B16A4D7; Mon, 20 Oct 2003 16:44:36 -0700 (PDT) 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 0116116A4C0 for ; Mon, 20 Oct 2003 16:44:36 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3353043FAF for ; Mon, 20 Oct 2003 16:44:34 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KNiYXJ000459 for ; Mon, 20 Oct 2003 16:44:34 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KNiXoS000456 for perforce@freebsd.org; Mon, 20 Oct 2003 16:44:33 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 16:44:33 -0700 (PDT) Message-Id: <200310202344.h9KNiXoS000456@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 Subject: PERFORCE change 40043 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 23:44:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=40043 Change 40043 by rwatson@rwatson_tislabs on 2003/10/20 16:43:37 Trim !system privileges. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_system.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_system.c#2 (text+ko) ==== @@ -1,12 +1,7 @@ /*- - * Copyright (c) 1999, 2000, 2001, 2002 Robert N. M. Watson - * Copyright (c) 2001 Ilmar S. Habibulin - * Copyright (c) 2001, 2002, 2003 Networks Associates Technology, Inc. + * Copyright (c) 2002, 2003 Networks Associates Technology, Inc. * All rights reserved. * - * This software was developed by Robert Watson and Ilmar Habibulin for the - * TrustedBSD Project. - * * This software was developed for the FreeBSD Project in part by Network * Associates Laboratories, the Security Research Division of Network * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), @@ -34,2644 +29,36 @@ * SUCH DAMAGE. */ -/* - * Framework for extensible kernel access control. Kernel and userland - * interface to the framework, policy registration and composition. - */ - #include __FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); #include "opt_mac.h" -#include "opt_devfs.h" #include -#include -#include -#include #include #include #include #include #include -#include -#include -#include #include -#include -#include #include -#include -#include -#include -#include -#include -#include #include -#include -#include -#include -#include - -#include -#include -#include -#include #include -#include - -#include -#include -#include - -#include -#include - #include -#ifdef MAC - -/* - * Declare that the kernel provides MAC support, version 1. This permits - * modules to refuse to be loaded if the necessary support isn't present, - * even if it's pre-boot. - */ -MODULE_VERSION(kernel_mac_support, 1); - -SYSCTL_NODE(_security, OID_AUTO, mac, CTLFLAG_RW, 0, - "TrustedBSD MAC policy controls"); - -#if MAC_MAX_SLOTS > 32 -#error "MAC_MAX_SLOTS too large" -#endif - -static unsigned int mac_max_slots = MAC_MAX_SLOTS; -static unsigned int mac_slot_offsets_free = (1 << MAC_MAX_SLOTS) - 1; -SYSCTL_UINT(_security_mac, OID_AUTO, max_slots, CTLFLAG_RD, - &mac_max_slots, 0, ""); - -/* - * Has the kernel started generating labeled objects yet? All read/write - * access to this variable is serialized during the boot process. Following - * the end of serialization, we don't update this flag; no locking. - */ -int mac_late = 0; - -/* - * Warn about EA transactions only the first time they happen. - * Weak coherency, no locking. - */ -static int ea_warn_once = 0; - -/* - * Flag to indicate whether or not we should allocate label storage for - * new mbufs. Since most dynamic policies we currently work with don't - * rely on mbuf labeling, try to avoid paying the cost of mtag allocation - * unless specifically notified of interest. One result of this is - * that if a dynamically loaded policy requests mbuf labels, it must - * be able to deal with a NULL label being returned on any mbufs that - * were already in flight when the policy was loaded. Since the policy - * already has to deal with uninitialized labels, this probably won't - * be a problem. Note: currently no locking. Will this be a problem? - */ -#ifndef MAC_ALWAYS_LABEL_MBUF -static int mac_labelmbufs = 0; -#endif - -static int mac_enforce_fs = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_fs, CTLFLAG_RW, - &mac_enforce_fs, 0, "Enforce MAC policy on file system objects"); -TUNABLE_INT("security.mac.enforce_fs", &mac_enforce_fs); - static int mac_enforce_kld = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_kld, CTLFLAG_RW, &mac_enforce_kld, 0, "Enforce MAC policy on kld operations"); TUNABLE_INT("security.mac.enforce_kld", &mac_enforce_kld); -static int mac_enforce_network = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_network, CTLFLAG_RW, - &mac_enforce_network, 0, "Enforce MAC policy on network packets"); -TUNABLE_INT("security.mac.enforce_network", &mac_enforce_network); - -static int mac_enforce_process = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_process, CTLFLAG_RW, - &mac_enforce_process, 0, "Enforce MAC policy on inter-process operations"); -TUNABLE_INT("security.mac.enforce_process", &mac_enforce_process); - -static int mac_enforce_socket = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_socket, CTLFLAG_RW, - &mac_enforce_socket, 0, "Enforce MAC policy on socket operations"); -TUNABLE_INT("security.mac.enforce_socket", &mac_enforce_socket); - static int mac_enforce_system = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_system, CTLFLAG_RW, &mac_enforce_system, 0, "Enforce MAC policy on system operations"); TUNABLE_INT("security.mac.enforce_system", &mac_enforce_system); -static int mac_enforce_sysv = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_sysv, CTLFLAG_RW, - &mac_enforce_sysv, 0, "Enforce MAC policy on System V IPC objects"); -TUNABLE_INT("security.mac.enforce_sysv", &mac_enforce_sysv); - -static int mac_enforce_vm = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, - &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); -TUNABLE_INT("security.mac.enforce_vm", &mac_enforce_vm); - -static int mac_mmap_revocation = 0; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation, CTLFLAG_RW, - &mac_mmap_revocation, 0, "Revoke mmap access to files on subject " - "relabel"); - -static int mac_mmap_revocation_via_cow = 1; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation_via_cow, CTLFLAG_RW, - &mac_mmap_revocation_via_cow, 0, "Revoke mmap access to files via " - "copy-on-write semantics, or by removing all write access"); - -#ifdef MAC_DEBUG -SYSCTL_NODE(_security_mac, OID_AUTO, debug, CTLFLAG_RW, 0, - "TrustedBSD MAC debug info"); - -static int mac_debug_label_fallback = 0; -SYSCTL_INT(_security_mac_debug, OID_AUTO, label_fallback, CTLFLAG_RW, - &mac_debug_label_fallback, 0, "Filesystems should fall back to fs label" - "when label is corrupted."); -TUNABLE_INT("security.mac.debug_label_fallback", - &mac_debug_label_fallback); - -SYSCTL_NODE(_security_mac_debug, OID_AUTO, counters, CTLFLAG_RW, 0, - "TrustedBSD MAC object counters"); - -static unsigned int nmacmbufs, nmaccreds, nmacifnets, nmacbpfdescs, - nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, - nmacipqs, nmacprocs, nmacipcmsgs, nmacipcmsqs, - nmacipcsemas, nmacipcshms; - -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mbufs, CTLFLAG_RD, - &nmacmbufs, 0, "number of mbufs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, - &nmaccreds, 0, "number of ucreds in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ifnets, CTLFLAG_RD, - &nmacifnets, 0, "number of ifnets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipqs, CTLFLAG_RD, - &nmacipqs, 0, "number of ipqs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, bpfdescs, CTLFLAG_RD, - &nmacbpfdescs, 0, "number of bpfdescs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, sockets, CTLFLAG_RD, - &nmacsockets, 0, "number of sockets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, procs, CTLFLAG_RD, - &nmacprocs, 0, "number of procs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mounts, CTLFLAG_RD, - &nmacmounts, 0, "number of mounts in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, temp, CTLFLAG_RD, - &nmactemp, 0, "number of temporary labels in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, vnodes, CTLFLAG_RD, - &nmacvnodes, 0, "number of vnodes in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, devfsdirents, CTLFLAG_RD, - &nmacdevfsdirents, 0, "number of devfs dirents inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msgs, CTLFLAG_RD, - &nmacipcmsgs, 0, "number of sysv ipc messages inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msqs, CTLFLAG_RD, - &nmacipcmsqs, 0, "number of sysv ipc message queue identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_semas, CTLFLAG_RD, - &nmacipcsemas, 0, "number of sysv ipc semaphore identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_shms, CTLFLAG_RD, - &nmacipcshms, 0, "number of sysv ipc shm identifiers inuse"); -#endif - -static int mac_policy_register(struct mac_policy_conf *mpc); -static int mac_policy_unregister(struct mac_policy_conf *mpc); - -static void mac_check_vnode_mmap_downgrade(struct ucred *cred, - struct vnode *vp, int *prot); -static void mac_cred_mmapped_drop_perms_recurse(struct thread *td, - struct ucred *cred, struct vm_map *map); - -static void mac_destroy_socket_label(struct label *label); - -static int mac_setlabel_vnode_extattr(struct ucred *cred, - struct vnode *vp, struct label *intlabel); - -MALLOC_DEFINE(M_MACTEMP, "mactemp", "MAC temporary label storage"); - -/* - * mac_static_policy_list holds a list of policy modules that are not - * loaded while the system is "live", and cannot be unloaded. These - * policies can be invoked without holding the busy count. - * - * mac_policy_list stores the list of dynamic policies. A busy count is - * maintained for the list, stored in mac_policy_busy. The busy count - * is protected by mac_policy_mtx; the list may be modified only - * while the busy count is 0, requiring that the lock be held to - * prevent new references to the list from being acquired. For almost - * all operations, incrementing the busy count is sufficient to - * guarantee consistency, as the list cannot be modified while the - * busy count is elevated. For a few special operations involving a - * change to the list of active policies, the mtx itself must be held. - * A condition variable, mac_policy_cv, is used to signal potential - * exclusive consumers that they should try to acquire the lock if a - * first attempt at exclusive access fails. - */ -#ifndef MAC_STATIC -static struct mtx mac_policy_mtx; -static struct cv mac_policy_cv; -static int mac_policy_count; -#endif -struct mac_policy_list_head mac_policy_list; -struct mac_policy_list_head mac_static_policy_list; - -/* - * We manually invoke WITNESS_WARN() to allow Witness to generate - * warnings even if we don't end up ever triggering the wait at - * run-time. The consumer of the exclusive interface must not hold - * any locks (other than potentially Giant) since we may sleep for - * long (potentially indefinite) periods of time waiting for the - * framework to become quiescent so that a policy list change may - * be made. - */ -void -mac_policy_grab_exclusive(void) -{ - -#ifndef MAC_STATIC - WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, - "mac_policy_grab_exclusive() at %s:%d", __FILE__, __LINE__); - mtx_lock(&mac_policy_mtx); - while (mac_policy_count != 0) - cv_wait(&mac_policy_cv, &mac_policy_mtx); -#endif -} - -void -mac_policy_assert_exclusive(void) -{ - -#ifndef MAC_STATIC - mtx_assert(&mac_policy_mtx, MA_OWNED); - KASSERT(mac_policy_count == 0, - ("mac_policy_assert_exclusive(): not exclusive")); -#endif -} - -void -mac_policy_release_exclusive(void) -{ - -#ifndef MAC_STATIC - KASSERT(mac_policy_count == 0, - ("mac_policy_release_exclusive(): not exclusive")); - mtx_unlock(&mac_policy_mtx); - cv_signal(&mac_policy_cv); -#endif -} - -void -mac_policy_list_busy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count++; - mtx_unlock(&mac_policy_mtx); -#endif -} - -int -mac_policy_list_conditional_busy(void) -{ -#ifndef MAC_STATIC - int ret; - - mtx_lock(&mac_policy_mtx); - if (!LIST_EMPTY(&mac_policy_list)) { - mac_policy_count++; - ret = 1; - } else - ret = 0; - mtx_unlock(&mac_policy_mtx); - return (ret); -#else - return (0); -#endif -} - -void -mac_policy_list_unbusy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count--; - KASSERT(mac_policy_count >= 0, ("MAC_POLICY_LIST_LOCK")); - if (mac_policy_count == 0) - cv_signal(&mac_policy_cv); - mtx_unlock(&mac_policy_mtx); -#endif -} - -/* - * Initialize the MAC subsystem, including appropriate SMP locks. - */ -static void -mac_init(void) -{ - - LIST_INIT(&mac_static_policy_list); - LIST_INIT(&mac_policy_list); - -#ifndef MAC_STATIC - mtx_init(&mac_policy_mtx, "mac_policy_mtx", NULL, MTX_DEF); - cv_init(&mac_policy_cv, "mac_policy_cv"); -#endif -} - -/* - * For the purposes of modules that want to know if they were loaded - * "early", set the mac_late flag once we've processed modules either - * linked into the kernel, or loaded before the kernel startup. - */ -static void -mac_late_init(void) -{ - - mac_late = 1; -} - -/* - * After the policy list has changed, walk the list to update any global - * flags. Currently, we support only one flag, and it's conditionally - * defined; as a result, the entire function is conditional. Eventually, - * the #else case might also iterate across the policies. - */ -static void -mac_policy_updateflags(void) -{ -#ifndef MAC_ALWAYS_LABEL_MBUF - struct mac_policy_conf *tmpc; - int labelmbufs; - - mac_policy_assert_exclusive(); - - labelmbufs = 0; - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - mac_labelmbufs = (labelmbufs != 0); -#endif -} - -/* - * Allow MAC policy modules to register during boot, etc. - */ -int -mac_policy_modevent(module_t mod, int type, void *data) -{ - struct mac_policy_conf *mpc; - int error; - - error = 0; - mpc = (struct mac_policy_conf *) data; - -#ifdef MAC_STATIC - if (mac_late) { - printf("mac_policy_modevent: MAC_STATIC and late\n"); - return (EBUSY); - } -#endif - - switch (type) { - case MOD_LOAD: - if (mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_NOTLATE && - mac_late) { - printf("mac_policy_modevent: can't load %s policy " - "after booting\n", mpc->mpc_name); - error = EBUSY; - break; - } - error = mac_policy_register(mpc); - break; - case MOD_UNLOAD: - /* Don't unregister the module if it was never registered. */ - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) - != 0) - error = mac_policy_unregister(mpc); - else - error = 0; - break; - default: - break; - } - - return (error); -} - -static int -mac_policy_register(struct mac_policy_conf *mpc) -{ - struct mac_policy_conf *tmpc; - int error, slot, static_entry; - - error = 0; - - /* - * We don't technically need exclusive access while !mac_late, - * but hold it for assertion consistency. - */ - mac_policy_grab_exclusive(); - - /* - * If the module can potentially be unloaded, or we're loading - * late, we have to stick it in the non-static list and pay - * an extra performance overhead. Otherwise, we can pay a - * light locking cost and stick it in the static list. - */ - static_entry = (!mac_late && - !(mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_UNLOADOK)); - - if (static_entry) { - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } else { - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } - if (mpc->mpc_field_off != NULL) { - slot = ffs(mac_slot_offsets_free); - if (slot == 0) { - error = ENOMEM; - goto out; - } - slot--; - mac_slot_offsets_free &= ~(1 << slot); - *mpc->mpc_field_off = slot; - } - mpc->mpc_runtime_flags |= MPC_RUNTIME_FLAG_REGISTERED; - - /* - * If we're loading a MAC module after the framework has - * initialized, it has to go into the dynamic list. If - * we're loading it before we've finished initializing, - * it can go into the static list with weaker locker - * requirements. - */ - if (static_entry) - LIST_INSERT_HEAD(&mac_static_policy_list, mpc, mpc_list); - else - LIST_INSERT_HEAD(&mac_policy_list, mpc, mpc_list); - - /* Per-policy initialization. */ - if (mpc->mpc_ops->mpo_init != NULL) - (*(mpc->mpc_ops->mpo_init))(mpc); - mac_policy_updateflags(); - - printf("Security policy loaded: %s (%s)\n", mpc->mpc_fullname, - mpc->mpc_name); - -out: - mac_policy_release_exclusive(); - return (error); -} - -static int -mac_policy_unregister(struct mac_policy_conf *mpc) -{ - - /* - * If we fail the load, we may get a request to unload. Check - * to see if we did the run-time registration, and if not, - * silently succeed. - */ - mac_policy_grab_exclusive(); - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) == 0) { - mac_policy_release_exclusive(); - return (0); - } -#if 0 - /* - * Don't allow unloading modules with private data. - */ - if (mpc->mpc_field_off != NULL) { - MAC_POLICY_LIST_UNLOCK(); - return (EBUSY); - } -#endif - /* - * Only allow the unload to proceed if the module is unloadable - * by its own definition. - */ - if ((mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_UNLOADOK) == 0) { - mac_policy_release_exclusive(); - return (EBUSY); - } - if (mpc->mpc_ops->mpo_destroy != NULL) - (*(mpc->mpc_ops->mpo_destroy))(mpc); - - LIST_REMOVE(mpc, mpc_list); - mpc->mpc_runtime_flags &= ~MPC_RUNTIME_FLAG_REGISTERED; - mac_policy_updateflags(); - - mac_policy_release_exclusive(); - - printf("Security policy unload: %s (%s)\n", mpc->mpc_fullname, - mpc->mpc_name); - - return (0); -} - -/* - * Define an error value precedence, and given two arguments, selects the - * value with the higher precedence. - */ -int -mac_error_select(int error1, int error2) -{ - - /* Certain decision-making errors take top priority. */ - if (error1 == EDEADLK || error2 == EDEADLK) - return (EDEADLK); - - /* Invalid arguments should be reported where possible. */ - if (error1 == EINVAL || error2 == EINVAL) - return (EINVAL); - - /* Precedence goes to "visibility", with both process and file. */ - if (error1 == ESRCH || error2 == ESRCH) - return (ESRCH); - - if (error1 == ENOENT || error2 == ENOENT) - return (ENOENT); - - /* Precedence goes to DAC/MAC protections. */ - if (error1 == EACCES || error2 == EACCES) - return (EACCES); - - /* Precedence goes to privilege. */ - if (error1 == EPERM || error2 == EPERM) - return (EPERM); - - /* Precedence goes to error over success; otherwise, arbitrary. */ - if (error1 != 0) - return (error1); - return (error2); -} - -static struct label * -mbuf_to_label(struct mbuf *mbuf) -{ - struct m_tag *tag; - struct label *label; - - tag = m_tag_find(mbuf, PACKET_TAG_MACLABEL, NULL); - label = (struct label *)(tag+1); - - return (label); -} - -void -mac_init_label(struct label *label) -{ - - bzero(label, sizeof(*label)); - label->l_flags = MAC_FLAG_INITIALIZED; -} - -void -mac_destroy_label(struct label *label) -{ - - KASSERT(label->l_flags & MAC_FLAG_INITIALIZED, - ("destroying uninitialized label")); - - bzero(label, sizeof(*label)); - /* implicit: label->l_flags &= ~MAC_FLAG_INITIALIZED; */ -} - -void -mac_init_bpfdesc(struct bpf_d *bpf_d) -{ - - mac_init_label(&bpf_d->bd_label); - MAC_PERFORM(init_bpfdesc_label, &bpf_d->bd_label); - MAC_DEBUG_COUNTER_INC(&nmacbpfdescs); -} - -static void -mac_init_cred_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_cred_label, label); - MAC_DEBUG_COUNTER_INC(&nmaccreds); -} - -void -mac_init_cred(struct ucred *cred) -{ - - mac_init_cred_label(&cred->cr_label); -} - -void -mac_init_devfsdirent(struct devfs_dirent *de) -{ - - mac_init_label(&de->de_label); - MAC_PERFORM(init_devfsdirent_label, &de->de_label); - MAC_DEBUG_COUNTER_INC(&nmacdevfsdirents); -} - -static void -mac_init_ifnet_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_ifnet_label, label); - MAC_DEBUG_COUNTER_INC(&nmacifnets); -} - -void -mac_init_ifnet(struct ifnet *ifp) -{ - - mac_init_ifnet_label(&ifp->if_label); -} - -void -mac_init_ipc_msgmsg(struct msg *msgptr) -{ - - mac_init_label(&msgptr->label); - MAC_PERFORM(init_ipc_msgmsg_label, &msgptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsgs); -} - -void -mac_init_ipc_msgqueue(struct msqid_kernel *msqkptr) -{ - - mac_init_label(&msqkptr->label); - MAC_PERFORM(init_ipc_msgqueue_label, &msqkptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsqs); -} - -void -mac_init_ipc_sema(struct semid_kernel *semakptr) -{ - - mac_init_label(&semakptr->label); - MAC_PERFORM(init_ipc_sema_label, &semakptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcsemas); -} - -void -mac_init_ipc_shm(struct shmid_kernel *shmsegptr) -{ - - mac_init_label(&shmsegptr->label); - MAC_PERFORM(init_ipc_shm_label, &shmsegptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcshms); -} - -int -mac_init_ipq(struct ipq *ipq, int flag) -{ - int error; - - mac_init_label(&ipq->ipq_label); - - MAC_CHECK(init_ipq_label, &ipq->ipq_label, flag); - if (error) { - MAC_PERFORM(destroy_ipq_label, &ipq->ipq_label); - mac_destroy_label(&ipq->ipq_label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacipqs); - } - return (error); -} - -int -mac_init_mbuf_tag(struct m_tag *tag, int flag) -{ - struct label *label; - int error; - - label = (struct label *) (tag + 1); - mac_init_label(label); - - MAC_CHECK(init_mbuf_label, label, flag); - if (error) { - MAC_PERFORM(destroy_mbuf_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacmbufs); - } - return (error); -} - -int -mac_init_mbuf(struct mbuf *m, int flag) -{ - struct m_tag *tag; - int error; - - M_ASSERTPKTHDR(m); - -#ifndef MAC_ALWAYS_LABEL_MBUF - /* - * If conditionally allocating mbuf labels, don't allocate unless - * they are required. - */ - if (!mac_labelmbufs) - return (0); -#endif - tag = m_tag_get(PACKET_TAG_MACLABEL, sizeof(struct label), - flag); - if (tag == NULL) - return (ENOMEM); - error = mac_init_mbuf_tag(tag, flag); - if (error) { - m_tag_free(tag); - return (error); - } - m_tag_prepend(m, tag); - return (0); -} - -void -mac_init_mount(struct mount *mp) -{ - - mac_init_label(&mp->mnt_mntlabel); - mac_init_label(&mp->mnt_fslabel); - MAC_PERFORM(init_mount_label, &mp->mnt_mntlabel); - MAC_PERFORM(init_mount_fs_label, &mp->mnt_fslabel); - MAC_DEBUG_COUNTER_INC(&nmacmounts); -} - -void -mac_init_proc(struct proc *p) -{ - - mac_init_label(&p->p_label); - MAC_PERFORM(init_proc_label, &p->p_label); - MAC_DEBUG_COUNTER_INC(&nmacprocs); -} - -static int -mac_init_socket_label(struct label *label, int flag) -{ - int error; - - mac_init_label(label); - - MAC_CHECK(init_socket_label, label, flag); - if (error) { - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacsockets); - } - - return (error); -} - -static int -mac_init_socket_peer_label(struct label *label, int flag) -{ - int error; - - mac_init_label(label); - - MAC_CHECK(init_socket_peer_label, label, flag); - if (error) { - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - } - - return (error); -} - -int -mac_init_socket(struct socket *socket, int flag) -{ - int error; - - error = mac_init_socket_label(&socket->so_label, flag); - if (error) - return (error); - - error = mac_init_socket_peer_label(&socket->so_peerlabel, flag); - if (error) - mac_destroy_socket_label(&socket->so_label); - - return (error); -} - -void -mac_init_vnode_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_vnode_label, label); - MAC_DEBUG_COUNTER_INC(&nmacvnodes); -} - -void -mac_init_vnode(struct vnode *vp) -{ - - mac_init_vnode_label(&vp->v_label); -} - -void -mac_destroy_bpfdesc(struct bpf_d *bpf_d) -{ - - MAC_PERFORM(destroy_bpfdesc_label, &bpf_d->bd_label); - mac_destroy_label(&bpf_d->bd_label); - MAC_DEBUG_COUNTER_DEC(&nmacbpfdescs); -} - -static void -mac_destroy_cred_label(struct label *label) -{ - - MAC_PERFORM(destroy_cred_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmaccreds); -} - -void -mac_destroy_cred(struct ucred *cred) -{ - - mac_destroy_cred_label(&cred->cr_label); -} - -void -mac_destroy_devfsdirent(struct devfs_dirent *de) -{ - - MAC_PERFORM(destroy_devfsdirent_label, &de->de_label); - mac_destroy_label(&de->de_label); - MAC_DEBUG_COUNTER_DEC(&nmacdevfsdirents); -} - -static void -mac_destroy_ifnet_label(struct label *label) -{ - - MAC_PERFORM(destroy_ifnet_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacifnets); -} - -void -mac_destroy_ifnet(struct ifnet *ifp) -{ - - mac_destroy_ifnet_label(&ifp->if_label); -} - -void -mac_destroy_ipc_msgmsg(struct msg *msgptr) -{ - - MAC_PERFORM(destroy_ipc_msgmsg_label, &msgptr->label); - mac_destroy_label(&msgptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcmsgs); -} - -void -mac_destroy_ipc_msgqueue(struct msqid_kernel *msqkptr) -{ - - MAC_PERFORM(destroy_ipc_msgqueue_label, &msqkptr->label); - mac_destroy_label(&msqkptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcmsqs); -} - -void -mac_destroy_ipc_sema(struct semid_kernel *semakptr) -{ - - MAC_PERFORM(destroy_ipc_sema_label, &semakptr->label); - mac_destroy_label(&semakptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcsemas); -} - -void -mac_destroy_ipc_shm(struct shmid_kernel *shmsegptr) -{ - - MAC_PERFORM(destroy_ipc_shm_label, &shmsegptr->label); - mac_destroy_label(&shmsegptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcshms); -} - -void -mac_destroy_ipq(struct ipq *ipq) -{ - - MAC_PERFORM(destroy_ipq_label, &ipq->ipq_label); - mac_destroy_label(&ipq->ipq_label); - MAC_DEBUG_COUNTER_DEC(&nmacipqs); -} - -void -mac_destroy_mbuf_tag(struct m_tag *tag) -{ - struct label *label; - - label = (struct label *)(tag+1); - - MAC_PERFORM(destroy_mbuf_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacmbufs); -} >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Oct 20 16:46:39 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BBDB516A4C0; Mon, 20 Oct 2003 16:46:38 -0700 (PDT) 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 92CE516A4B3 for ; Mon, 20 Oct 2003 16:46:38 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E8C2443FCB for ; Mon, 20 Oct 2003 16:46:37 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KNkbXJ000648 for ; Mon, 20 Oct 2003 16:46:37 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KNkbS3000645 for perforce@freebsd.org; Mon, 20 Oct 2003 16:46:37 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 16:46:37 -0700 (PDT) Message-Id: <200310202346.h9KNkbS3000645@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 Subject: PERFORCE change 40045 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 23:46:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=40045 Change 40045 by rwatson@rwatson_tislabs on 2003/10/20 16:46:01 Trim system privilege checks from kern_mac.c since they now live in mac_system.c. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#414 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#414 (text+ko) ==== @@ -145,11 +145,6 @@ &mac_enforce_fs, 0, "Enforce MAC policy on file system objects"); TUNABLE_INT("security.mac.enforce_fs", &mac_enforce_fs); -static int mac_enforce_kld = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_kld, CTLFLAG_RW, - &mac_enforce_kld, 0, "Enforce MAC policy on kld operations"); -TUNABLE_INT("security.mac.enforce_kld", &mac_enforce_kld); - static int mac_enforce_network = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_network, CTLFLAG_RW, &mac_enforce_network, 0, "Enforce MAC policy on network packets"); @@ -165,11 +160,6 @@ &mac_enforce_socket, 0, "Enforce MAC policy on socket operations"); TUNABLE_INT("security.mac.enforce_socket", &mac_enforce_socket); -static int mac_enforce_system = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_system, CTLFLAG_RW, - &mac_enforce_system, 0, "Enforce MAC policy on system operations"); -TUNABLE_INT("security.mac.enforce_system", &mac_enforce_system); - static int mac_enforce_sysv = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_sysv, CTLFLAG_RW, &mac_enforce_sysv, 0, "Enforce MAC policy on System V IPC objects"); @@ -2672,99 +2662,6 @@ } int -mac_check_kenv_dump(struct ucred *cred) -{ - int error; - - if (!mac_enforce_system) - return (0); - - MAC_CHECK(check_kenv_dump, cred); - - return (error); -} - -int -mac_check_kenv_get(struct ucred *cred, char *name) -{ - int error; - - if (!mac_enforce_system) - return (0); - - MAC_CHECK(check_kenv_get, cred, name); - - return (error); -} - -int -mac_check_kenv_set(struct ucred *cred, char *name, char *value) -{ - int error; - - if (!mac_enforce_system) - return (0); - - MAC_CHECK(check_kenv_set, cred, name, value); - - return (error); -} - -int -mac_check_kenv_unset(struct ucred *cred, char *name) -{ - int error; - - if (!mac_enforce_system) - return (0); - - MAC_CHECK(check_kenv_unset, cred, name); - - return (error); -} - -int -mac_check_kld_load(struct ucred *cred, struct vnode *vp) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_kld_load"); - - if (!mac_enforce_kld) - return (0); - - MAC_CHECK(check_kld_load, cred, vp, &vp->v_label); - - return (error); -} - -int -mac_check_kld_stat(struct ucred *cred) -{ - int error; - - if (!mac_enforce_kld) - return (0); - - MAC_CHECK(check_kld_stat, cred); - - return (error); -} - -int -mac_check_kld_unload(struct ucred *cred) -{ - int error; - - if (!mac_enforce_kld) - return (0); - - MAC_CHECK(check_kld_unload, cred); - - return (error); -} - -int mac_check_mount_stat(struct ucred *cred, struct mount *mount) { int error; @@ -2948,122 +2845,6 @@ } int -mac_check_sysarch_ioperm(struct ucred *cred) -{ - int error; - - if (!mac_enforce_system) - return (0); - - MAC_CHECK(check_sysarch_ioperm, cred); - return (error); -} - -int -mac_check_system_acct(struct ucred *cred, struct vnode *vp) -{ - int error; - - if (vp != NULL) { - ASSERT_VOP_LOCKED(vp, "mac_check_system_acct"); - } - - if (!mac_enforce_system) - return (0); - - MAC_CHECK(check_system_acct, cred, vp, - vp != NULL ? &vp->v_label : NULL); - - return (error); -} - -int -mac_check_system_nfsd(struct ucred *cred) -{ - int error; - - if (!mac_enforce_system) - return (0); - - MAC_CHECK(check_system_nfsd, cred); - - return (error); -} - -int -mac_check_system_reboot(struct ucred *cred, int howto) -{ - int error; - - if (!mac_enforce_system) - return (0); - - MAC_CHECK(check_system_reboot, cred, howto); - - return (error); -} - -int -mac_check_system_settime(struct ucred *cred) -{ - int error; - - if (!mac_enforce_system) - return (0); - - MAC_CHECK(check_system_settime, cred); - - return (error); -} - -int -mac_check_system_swapon(struct ucred *cred, struct vnode *vp) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_system_swapon"); - - if (!mac_enforce_system) - return (0); - - MAC_CHECK(check_system_swapon, cred, vp, &vp->v_label); - return (error); -} - -int -mac_check_system_swapoff(struct ucred *cred, struct vnode *vp) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_system_swapoff"); - - if (!mac_enforce_system) - return (0); - - MAC_CHECK(check_system_swapoff, cred, vp, &vp->v_label); - return (error); -} - -int -mac_check_system_sysctl(struct ucred *cred, int *name, u_int namelen, - void *old, size_t *oldlenp, int inkernel, void *new, size_t newlen) -{ - int error; - - /* - * XXXMAC: We're very much like to assert the SYSCTL_LOCK here, - * but since it's not exported from kern_sysctl.c, we can't. - */ - if (!mac_enforce_system) - return (0); - - MAC_CHECK(check_system_sysctl, cred, name, namelen, old, oldlenp, - inkernel, new, newlen); - - return (error); -} - -int mac_ioctl_ifnet_get(struct ucred *cred, struct ifreq *ifr, struct ifnet *ifnet) { From owner-p4-projects@FreeBSD.ORG Mon Oct 20 16:55:50 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 69F9F16A4C1; Mon, 20 Oct 2003 16:55:50 -0700 (PDT) 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 4534516A4BF for ; Mon, 20 Oct 2003 16:55:50 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A34C643FBD for ; Mon, 20 Oct 2003 16:55:49 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9KNtnXJ006698 for ; Mon, 20 Oct 2003 16:55:49 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9KNtnk4006695 for perforce@freebsd.org; Mon, 20 Oct 2003 16:55:49 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 16:55:49 -0700 (PDT) Message-Id: <200310202355.h9KNtnk4006695@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 Subject: PERFORCE change 40046 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 20 Oct 2003 23:55:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=40046 Change 40046 by rwatson@rwatson_tislabs on 2003/10/20 16:54:53 Integ kern_mac.c to various files to different bits of system v ipc. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_msg.c#1 branch .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_sem.c#1 branch .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_shm.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Mon Oct 20 17:09:10 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C70B516A4C0; Mon, 20 Oct 2003 17:09:09 -0700 (PDT) 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 A177916A4B3 for ; Mon, 20 Oct 2003 17:09:09 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 05D3543FBF for ; Mon, 20 Oct 2003 17:09:09 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L098XJ008143 for ; Mon, 20 Oct 2003 17:09:08 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L098RO008140 for perforce@freebsd.org; Mon, 20 Oct 2003 17:09:08 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Date: Mon, 20 Oct 2003 17:09:08 -0700 (PDT) Message-Id: <200310210009.h9L098RO008140@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to Hrishikesh_Dandekar@NAI.com using -f From: Hrishikesh Dandekar To: Perforce Change Reviews Subject: PERFORCE change 40048 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 00:09:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=40048 Change 40048 by hdandeka@hdandeka_yash on 2003/10/20 17:08:47 Fix related to resolving undefined references to __mac_get_fs. Stub for __mac_get_fs when MAC not enabled. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/kern/kern_mac.c#13 edit .. //depot/projects/trustedbsd/sebsd/sys/kern/syscalls.c#5 edit .. //depot/projects/trustedbsd/sebsd/sys/sys/syscall.h#5 edit .. //depot/projects/trustedbsd/sebsd/sys/sys/syscall.mk#5 edit .. //depot/projects/trustedbsd/sebsd/sys/sys/sysproto.h#5 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/kern/kern_mac.c#13 (text+ko) ==== @@ -4841,6 +4841,13 @@ } int +__mac_get_fs(struct thread *td, struct __mac_get_fs_args *uap) +{ + + return (ENOSYS); +} + +int __mac_set_fd(struct thread *td, struct __mac_set_fd_args *uap) { ==== //depot/projects/trustedbsd/sebsd/sys/kern/syscalls.c#5 (text+ko) ==== @@ -2,8 +2,8 @@ * System call names. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/kern/syscalls.c,v 1.141 2003/07/17 22:45:33 davidxu Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.151 2003/06/28 08:29:05 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.152 2003/07/17 22:45:33 davidxu Exp */ const char *syscallnames[] = { @@ -402,8 +402,8 @@ "uuidgen", /* 392 = uuidgen */ "sendfile", /* 393 = sendfile */ "mac_syscall", /* 394 = mac_syscall */ - "#395", /* 395 = nosys */ - "#396", /* 396 = nosys */ + "__mac_get_fs", /* 395 = __mac_get_fs */ + "lmount", /* 396 = lmount */ "#397", /* 397 = nosys */ "#398", /* 398 = nosys */ "#399", /* 399 = nosys */ ==== //depot/projects/trustedbsd/sebsd/sys/sys/syscall.h#5 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/sys/syscall.h,v 1.139 2003/07/17 22:45:33 davidxu Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.151 2003/06/28 08:29:05 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.152 2003/07/17 22:45:33 davidxu Exp */ #define SYS_syscall 0 @@ -310,6 +310,8 @@ #define SYS_uuidgen 392 #define SYS_sendfile 393 #define SYS_mac_syscall 394 +#define SYS___mac_get_fs 395 +#define SYS_lmount 396 #define SYS_ksem_close 400 #define SYS_ksem_post 401 #define SYS_ksem_wait 402 ==== //depot/projects/trustedbsd/sebsd/sys/sys/syscall.mk#5 (text+ko) ==== @@ -1,7 +1,7 @@ # FreeBSD system call names. # DO NOT EDIT-- this file is automatically generated. -# $FreeBSD: src/sys/sys/syscall.mk,v 1.94 2003/07/17 22:45:33 davidxu Exp $ -# created from FreeBSD: src/sys/kern/syscalls.master,v 1.151 2003/06/28 08:29:05 davidxu Exp +# $FreeBSD$ +# created from FreeBSD: src/sys/kern/syscalls.master,v 1.152 2003/07/17 22:45:33 davidxu Exp MIASM = \ syscall.o \ exit.o \ @@ -256,6 +256,8 @@ uuidgen.o \ sendfile.o \ mac_syscall.o \ + __mac_get_fs.o \ + lmount.o \ ksem_close.o \ ksem_post.o \ ksem_wait.o \ ==== //depot/projects/trustedbsd/sebsd/sys/sys/sysproto.h#5 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/sys/sysproto.h,v 1.135 2003/07/17 22:45:33 davidxu Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.151 2003/06/28 08:29:05 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.152 2003/07/17 22:45:33 davidxu Exp */ #ifndef _SYS_SYSPROTO_H_ @@ -980,7 +980,6 @@ char filename_l_[PADL_(const char *)]; const char * filename; char filename_r_[PADR_(const char *)]; char attrnamespace_l_[PADL_(int)]; int attrnamespace; char attrnamespace_r_[PADR_(int)]; char attrname_l_[PADL_(const char *)]; const char * attrname; char attrname_r_[PADR_(const char *)]; - char extended_l_[PADL_(void *)]; void * extended; char extended_r_[PADR_(void *)]; }; struct extattr_set_file_args { char path_l_[PADL_(const char *)]; const char * path; char path_r_[PADR_(const char *)]; @@ -1129,6 +1128,17 @@ char call_l_[PADL_(int)]; int call; char call_r_[PADR_(int)]; char arg_l_[PADL_(void *)]; void * arg; char arg_r_[PADR_(void *)]; }; +struct __mac_get_fs_args { + char path_p_l_[PADL_(const char *)]; const char * path_p; char path_p_r_[PADR_(const char *)]; + char mac_p_l_[PADL_(struct mac *)]; struct mac * mac_p; char mac_p_r_[PADR_(struct mac *)]; +}; +struct lmount_args { + char type_l_[PADL_(char *)]; char * type; char type_r_[PADR_(char *)]; + char path_l_[PADL_(char *)]; char * path; char path_r_[PADR_(char *)]; + char flags_l_[PADL_(int)]; int flags; char flags_r_[PADR_(int)]; + char data_l_[PADL_(caddr_t)]; caddr_t data; char data_r_[PADR_(caddr_t)]; + char mac_p_l_[PADL_(struct mac *)]; struct mac * mac_p; char mac_p_r_[PADR_(struct mac *)]; +}; struct ksem_close_args { char id_l_[PADL_(semid_t)]; semid_t id; char id_r_[PADR_(semid_t)]; }; @@ -1537,6 +1547,8 @@ int uuidgen(struct thread *, struct uuidgen_args *); int sendfile(struct thread *, struct sendfile_args *); int mac_syscall(struct thread *, struct mac_syscall_args *); +int __mac_get_fs(struct thread *, struct __mac_get_fs_args *); +int lmount(struct thread *, struct lmount_args *); int ksem_close(struct thread *, struct ksem_close_args *); int ksem_post(struct thread *, struct ksem_post_args *); int ksem_wait(struct thread *, struct ksem_wait_args *); From owner-p4-projects@FreeBSD.ORG Mon Oct 20 17:43:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 00DF316A4C0; Mon, 20 Oct 2003 17:43:52 -0700 (PDT) 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 CF54D16A4B3 for ; Mon, 20 Oct 2003 17:43:52 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9198943F85 for ; Mon, 20 Oct 2003 17:43:51 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L0hpXJ009522 for ; Mon, 20 Oct 2003 17:43:51 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L0ho5d009519 for perforce@freebsd.org; Mon, 20 Oct 2003 17:43:50 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 17:43:50 -0700 (PDT) Message-Id: <200310210043.h9L0ho5d009519@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 Subject: PERFORCE change 40049 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 00:43:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=40049 Change 40049 by rwatson@rwatson_tislabs on 2003/10/20 17:43:36 Break System V IPC primitive MAC Framework pieces into their own files. mac_sysvipc_enforce is visible outside of the files because it is shared between them. Might want to make each type have its own local enforcement variable. Affected files ... .. //depot/projects/trustedbsd/mac/sys/conf/files#88 edit .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#415 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#4 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_msg.c#2 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_sem.c#2 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_shm.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/conf/files#88 (text+ko) ==== @@ -1591,6 +1591,9 @@ security/mac/mac_pipe.c optional mac security/mac/mac_posix_sem.c optional mac security/mac/mac_system.c optional mac +security/mac/mac_sysv_msg.c optional mac +security/mac/mac_sysv_sem.c optional mac +security/mac/mac_sysv_shm.c optional mac security/mac_biba/mac_biba.c optional mac_biba security/mac_bsdextended/mac_bsdextended.c optional mac_bsdextended security/mac_ifoff/mac_ifoff.c optional mac_ifoff ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#415 (text+ko) ==== @@ -68,10 +68,6 @@ #include #include #include -#include -#include -#include -#include #include #include @@ -160,11 +156,6 @@ &mac_enforce_socket, 0, "Enforce MAC policy on socket operations"); TUNABLE_INT("security.mac.enforce_socket", &mac_enforce_socket); -static int mac_enforce_sysv = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_sysv, CTLFLAG_RW, - &mac_enforce_sysv, 0, "Enforce MAC policy on System V IPC objects"); -TUNABLE_INT("security.mac.enforce_sysv", &mac_enforce_sysv); - static int mac_enforce_vm = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); @@ -196,8 +187,7 @@ static unsigned int nmacmbufs, nmaccreds, nmacifnets, nmacbpfdescs, nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, - nmacipqs, nmacprocs, nmacipcmsgs, nmacipcmsqs, - nmacipcsemas, nmacipcshms; + nmacipqs, nmacprocs; SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mbufs, CTLFLAG_RD, &nmacmbufs, 0, "number of mbufs in use"); @@ -221,14 +211,6 @@ &nmacvnodes, 0, "number of vnodes in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, devfsdirents, CTLFLAG_RD, &nmacdevfsdirents, 0, "number of devfs dirents inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msgs, CTLFLAG_RD, - &nmacipcmsgs, 0, "number of sysv ipc messages inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msqs, CTLFLAG_RD, - &nmacipcmsqs, 0, "number of sysv ipc message queue identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_semas, CTLFLAG_RD, - &nmacipcsemas, 0, "number of sysv ipc semaphore identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_shms, CTLFLAG_RD, - &nmacipcshms, 0, "number of sysv ipc shm identifiers inuse"); #endif static int mac_policy_register(struct mac_policy_conf *mpc); @@ -701,42 +683,6 @@ mac_init_ifnet_label(&ifp->if_label); } -void -mac_init_ipc_msgmsg(struct msg *msgptr) -{ - - mac_init_label(&msgptr->label); - MAC_PERFORM(init_ipc_msgmsg_label, &msgptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsgs); -} - -void -mac_init_ipc_msgqueue(struct msqid_kernel *msqkptr) -{ - - mac_init_label(&msqkptr->label); - MAC_PERFORM(init_ipc_msgqueue_label, &msqkptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsqs); -} - -void -mac_init_ipc_sema(struct semid_kernel *semakptr) -{ - - mac_init_label(&semakptr->label); - MAC_PERFORM(init_ipc_sema_label, &semakptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcsemas); -} - -void -mac_init_ipc_shm(struct shmid_kernel *shmsegptr) -{ - - mac_init_label(&shmsegptr->label); - MAC_PERFORM(init_ipc_shm_label, &shmsegptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcshms); -} - int mac_init_ipq(struct ipq *ipq, int flag) { @@ -939,42 +885,6 @@ } void -mac_destroy_ipc_msgmsg(struct msg *msgptr) -{ - - MAC_PERFORM(destroy_ipc_msgmsg_label, &msgptr->label); - mac_destroy_label(&msgptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcmsgs); -} - -void -mac_destroy_ipc_msgqueue(struct msqid_kernel *msqkptr) -{ - - MAC_PERFORM(destroy_ipc_msgqueue_label, &msqkptr->label); - mac_destroy_label(&msqkptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcmsqs); -} - -void -mac_destroy_ipc_sema(struct semid_kernel *semakptr) -{ - - MAC_PERFORM(destroy_ipc_sema_label, &semakptr->label); - mac_destroy_label(&semakptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcsemas); -} - -void -mac_destroy_ipc_shm(struct shmid_kernel *shmsegptr) -{ - - MAC_PERFORM(destroy_ipc_shm_label, &shmsegptr->label); - mac_destroy_label(&shmsegptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcshms); -} - -void mac_destroy_ipq(struct ipq *ipq) { @@ -2108,36 +2018,6 @@ } void -mac_create_ipc_msgmsg(struct ucred *cred, struct msqid_kernel *msqkptr, - struct msg *msgptr) -{ - - MAC_PERFORM(create_ipc_msgmsg, cred, msqkptr, &msqkptr->label, - msgptr, &msgptr->label); -} - -void -mac_create_ipc_msgqueue(struct ucred *cred, struct msqid_kernel *msqkptr) -{ - - MAC_PERFORM(create_ipc_msgqueue, cred, msqkptr, &msqkptr->label); -} - -void -mac_create_ipc_sema(struct ucred *cred, struct semid_kernel *semakptr) -{ - - MAC_PERFORM(create_ipc_sema, cred, semakptr, &semakptr->label); -} - -void -mac_create_ipc_shm(struct ucred *cred, struct shmid_kernel *shmsegptr) -{ - - MAC_PERFORM(create_ipc_shm, cred, shmsegptr, &shmsegptr->label); -} - -void mac_create_socket(struct ucred *cred, struct socket *socket) { @@ -2374,34 +2254,6 @@ &mp->mnt_fslabel); } -void -mac_cleanup_ipc_msgmsg(struct msg *msgptr) -{ - - MAC_PERFORM(cleanup_ipc_msgmsg, &msgptr->label); -} - -void -mac_cleanup_ipc_msgqueue(struct msqid_kernel *msqkptr) -{ - - MAC_PERFORM(cleanup_ipc_msgqueue, &msqkptr->label); -} - -void -mac_cleanup_ipc_sema(struct semid_kernel *semakptr) -{ - - MAC_PERFORM(cleanup_ipc_sema, &semakptr->label); -} - -void -mac_cleanup_ipc_shm(struct shmid_kernel *shmsegptr) -{ - - MAC_PERFORM(cleanup_ipc_shm, &shmsegptr->label); -} - int mac_check_bpfdesc_receive(struct bpf_d *bpf_d, struct ifnet *ifnet) { @@ -2459,209 +2311,6 @@ } int -mac_check_ipc_msgmsq(struct ucred *cred, struct msg *msgptr, - struct msqid_kernel *msqkptr) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &msqkptr->label ?? - MAC_CHECK(check_ipc_msgmsq, cred, msgptr, msqkptr); - - return(error); -} - -int -mac_check_ipc_msgrcv(struct ucred *cred, struct msg *msgptr) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &msqkptr->label ?? - MAC_CHECK(check_ipc_msgrcv, cred, msgptr); - - return(error); -} - -int -mac_check_ipc_msgrmid(struct ucred *cred, struct msg *msgptr) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &msqkptr->label ?? - MAC_CHECK(check_ipc_msgrmid, cred, msgptr); - - return(error); -} - -int -mac_check_ipc_msqget(struct ucred *cred, struct msqid_kernel *msqkptr) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &msqkptr->label ?? - MAC_CHECK(check_ipc_msqget, cred, msqkptr); - - return(error); -} - -int -mac_check_ipc_msqsnd(struct ucred *cred, struct msqid_kernel *msqkptr) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &msqkptr->label ?? - MAC_CHECK(check_ipc_msqsnd, cred, msqkptr); - - return(error); -} - -int -mac_check_ipc_msqrcv(struct ucred *cred, struct msqid_kernel *msqkptr) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &msqkptr->label ?? - MAC_CHECK(check_ipc_msqrcv, cred, msqkptr); - - return(error); -} - -int -mac_check_ipc_msqctl(struct ucred *cred, struct msqid_kernel *msqkptr, - int cmd) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &msqkptr->label ?? - MAC_CHECK(check_ipc_msqctl, cred, msqkptr, cmd); - - return(error); -} - -int -mac_check_ipc_semctl(struct ucred *cred, struct semid_kernel *semakptr, - int cmd) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &semakptr->label ?? - MAC_CHECK(check_ipc_semctl, cred, semakptr, cmd); - - return(error); -} - -int -mac_check_ipc_semget(struct ucred *cred, struct semid_kernel *semakptr) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &semakptr->label ?? - MAC_CHECK(check_ipc_semget, cred, semakptr); - - return(error); -} - -int -mac_check_ipc_semop(struct ucred *cred, struct semid_kernel *semakptr, - size_t accesstype) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &semakptr->label ?? - MAC_CHECK(check_ipc_semop, cred, semakptr, accesstype); - - return(error); -} - -int -mac_check_ipc_shmat(struct ucred *cred, struct shmid_kernel *shmsegptr, - int shmflg) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &shmsegptr->label ?? - MAC_CHECK(check_ipc_shmat, cred, shmsegptr, shmflg); - - return(error); -} - -int -mac_check_ipc_shmctl(struct ucred *cred, struct shmid_kernel *shmsegptr, - int cmd) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &shmsegptr->label ?? - MAC_CHECK(check_ipc_shmctl, cred, shmsegptr, cmd); - - return(error); -} - -int -mac_check_ipc_shmdt(struct ucred *cred, struct shmid_kernel *shmsegptr) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &shmsegptr->label ?? - MAC_CHECK(check_ipc_shmdt, cred, shmsegptr); - - return(error); -} - -int -mac_check_ipc_shmget(struct ucred *cred, struct shmid_kernel *shmsegptr, - int shmflg) -{ - int error; - - if (!mac_enforce_sysv) - return (0); - - //XXX: Should we also pass &shmsegptr->label ?? - MAC_CHECK(check_ipc_shmget, cred, shmsegptr, shmflg); - - return(error); -} - -int mac_check_mount_stat(struct ucred *cred, struct mount *mount) { int error; ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#4 (text+ko) ==== @@ -55,6 +55,8 @@ extern struct mac_policy_list_head mac_policy_list; extern struct mac_policy_list_head mac_static_policy_list; extern int mac_late; +extern int mac_enforce_sysv; + /* * MAC Framework global types and constants. */ ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_msg.c#2 (text+ko) ==== @@ -1,12 +1,7 @@ /*- - * Copyright (c) 1999, 2000, 2001, 2002 Robert N. M. Watson - * Copyright (c) 2001 Ilmar S. Habibulin - * Copyright (c) 2001, 2002, 2003 Networks Associates Technology, Inc. + * Copyright (c) 2003 Networks Associates Technology, Inc. * All rights reserved. * - * This software was developed by Robert Watson and Ilmar Habibulin for the - * TrustedBSD Project. - * * This software was developed for the FreeBSD Project in part by Network * Associates Laboratories, the Security Research Division of Network * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), @@ -34,673 +29,44 @@ * SUCH DAMAGE. */ -/* - * Framework for extensible kernel access control. Kernel and userland - * interface to the framework, policy registration and composition. - */ - #include __FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); #include "opt_mac.h" -#include "opt_devfs.h" #include -#include -#include -#include #include #include #include #include #include -#include -#include #include #include -#include -#include #include #include #include #include -#include -#include -#include #include #include #include -#include -#include - -#include -#include -#include -#include #include -#include - -#include -#include -#include - -#include -#include - #include -#ifdef MAC - -/* - * Declare that the kernel provides MAC support, version 1. This permits - * modules to refuse to be loaded if the necessary support isn't present, - * even if it's pre-boot. - */ -MODULE_VERSION(kernel_mac_support, 1); - -SYSCTL_NODE(_security, OID_AUTO, mac, CTLFLAG_RW, 0, - "TrustedBSD MAC policy controls"); - -#if MAC_MAX_SLOTS > 32 -#error "MAC_MAX_SLOTS too large" -#endif - -static unsigned int mac_max_slots = MAC_MAX_SLOTS; -static unsigned int mac_slot_offsets_free = (1 << MAC_MAX_SLOTS) - 1; -SYSCTL_UINT(_security_mac, OID_AUTO, max_slots, CTLFLAG_RD, - &mac_max_slots, 0, ""); - -/* - * Has the kernel started generating labeled objects yet? All read/write - * access to this variable is serialized during the boot process. Following - * the end of serialization, we don't update this flag; no locking. - */ -int mac_late = 0; - -/* - * Warn about EA transactions only the first time they happen. - * Weak coherency, no locking. - */ -static int ea_warn_once = 0; - -/* - * Flag to indicate whether or not we should allocate label storage for - * new mbufs. Since most dynamic policies we currently work with don't - * rely on mbuf labeling, try to avoid paying the cost of mtag allocation - * unless specifically notified of interest. One result of this is - * that if a dynamically loaded policy requests mbuf labels, it must - * be able to deal with a NULL label being returned on any mbufs that - * were already in flight when the policy was loaded. Since the policy - * already has to deal with uninitialized labels, this probably won't - * be a problem. Note: currently no locking. Will this be a problem? - */ -#ifndef MAC_ALWAYS_LABEL_MBUF -static int mac_labelmbufs = 0; -#endif - -static int mac_enforce_fs = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_fs, CTLFLAG_RW, - &mac_enforce_fs, 0, "Enforce MAC policy on file system objects"); -TUNABLE_INT("security.mac.enforce_fs", &mac_enforce_fs); - -static int mac_enforce_network = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_network, CTLFLAG_RW, - &mac_enforce_network, 0, "Enforce MAC policy on network packets"); -TUNABLE_INT("security.mac.enforce_network", &mac_enforce_network); - -static int mac_enforce_process = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_process, CTLFLAG_RW, - &mac_enforce_process, 0, "Enforce MAC policy on inter-process operations"); -TUNABLE_INT("security.mac.enforce_process", &mac_enforce_process); - -static int mac_enforce_socket = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_socket, CTLFLAG_RW, - &mac_enforce_socket, 0, "Enforce MAC policy on socket operations"); -TUNABLE_INT("security.mac.enforce_socket", &mac_enforce_socket); - -static int mac_enforce_sysv = 1; +int mac_enforce_sysv = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_sysv, CTLFLAG_RW, &mac_enforce_sysv, 0, "Enforce MAC policy on System V IPC objects"); TUNABLE_INT("security.mac.enforce_sysv", &mac_enforce_sysv); -static int mac_enforce_vm = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, - &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); -TUNABLE_INT("security.mac.enforce_vm", &mac_enforce_vm); - -static int mac_mmap_revocation = 0; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation, CTLFLAG_RW, - &mac_mmap_revocation, 0, "Revoke mmap access to files on subject " - "relabel"); - -static int mac_mmap_revocation_via_cow = 1; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation_via_cow, CTLFLAG_RW, - &mac_mmap_revocation_via_cow, 0, "Revoke mmap access to files via " - "copy-on-write semantics, or by removing all write access"); - #ifdef MAC_DEBUG -SYSCTL_NODE(_security_mac, OID_AUTO, debug, CTLFLAG_RW, 0, - "TrustedBSD MAC debug info"); - -static int mac_debug_label_fallback = 0; -SYSCTL_INT(_security_mac_debug, OID_AUTO, label_fallback, CTLFLAG_RW, - &mac_debug_label_fallback, 0, "Filesystems should fall back to fs label" - "when label is corrupted."); -TUNABLE_INT("security.mac.debug_label_fallback", - &mac_debug_label_fallback); - -SYSCTL_NODE(_security_mac_debug, OID_AUTO, counters, CTLFLAG_RW, 0, - "TrustedBSD MAC object counters"); - -static unsigned int nmacmbufs, nmaccreds, nmacifnets, nmacbpfdescs, - nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, - nmacipqs, nmacprocs, nmacipcmsgs, nmacipcmsqs, - nmacipcsemas, nmacipcshms; - -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mbufs, CTLFLAG_RD, - &nmacmbufs, 0, "number of mbufs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, - &nmaccreds, 0, "number of ucreds in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ifnets, CTLFLAG_RD, - &nmacifnets, 0, "number of ifnets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipqs, CTLFLAG_RD, - &nmacipqs, 0, "number of ipqs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, bpfdescs, CTLFLAG_RD, - &nmacbpfdescs, 0, "number of bpfdescs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, sockets, CTLFLAG_RD, - &nmacsockets, 0, "number of sockets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, procs, CTLFLAG_RD, - &nmacprocs, 0, "number of procs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mounts, CTLFLAG_RD, - &nmacmounts, 0, "number of mounts in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, temp, CTLFLAG_RD, - &nmactemp, 0, "number of temporary labels in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, vnodes, CTLFLAG_RD, - &nmacvnodes, 0, "number of vnodes in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, devfsdirents, CTLFLAG_RD, - &nmacdevfsdirents, 0, "number of devfs dirents inuse"); +static unsigned int nmacipcmsgs, nmacipcmsqs; SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msgs, CTLFLAG_RD, &nmacipcmsgs, 0, "number of sysv ipc messages inuse"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msqs, CTLFLAG_RD, &nmacipcmsqs, 0, "number of sysv ipc message queue identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_semas, CTLFLAG_RD, - &nmacipcsemas, 0, "number of sysv ipc semaphore identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_shms, CTLFLAG_RD, - &nmacipcshms, 0, "number of sysv ipc shm identifiers inuse"); -#endif - -static int mac_policy_register(struct mac_policy_conf *mpc); -static int mac_policy_unregister(struct mac_policy_conf *mpc); - -static void mac_check_vnode_mmap_downgrade(struct ucred *cred, - struct vnode *vp, int *prot); -static void mac_cred_mmapped_drop_perms_recurse(struct thread *td, - struct ucred *cred, struct vm_map *map); - -static void mac_destroy_socket_label(struct label *label); - -static int mac_setlabel_vnode_extattr(struct ucred *cred, - struct vnode *vp, struct label *intlabel); - -MALLOC_DEFINE(M_MACTEMP, "mactemp", "MAC temporary label storage"); - -/* - * mac_static_policy_list holds a list of policy modules that are not - * loaded while the system is "live", and cannot be unloaded. These - * policies can be invoked without holding the busy count. - * - * mac_policy_list stores the list of dynamic policies. A busy count is - * maintained for the list, stored in mac_policy_busy. The busy count - * is protected by mac_policy_mtx; the list may be modified only - * while the busy count is 0, requiring that the lock be held to - * prevent new references to the list from being acquired. For almost - * all operations, incrementing the busy count is sufficient to - * guarantee consistency, as the list cannot be modified while the - * busy count is elevated. For a few special operations involving a - * change to the list of active policies, the mtx itself must be held. - * A condition variable, mac_policy_cv, is used to signal potential - * exclusive consumers that they should try to acquire the lock if a - * first attempt at exclusive access fails. - */ -#ifndef MAC_STATIC -static struct mtx mac_policy_mtx; -static struct cv mac_policy_cv; -static int mac_policy_count; -#endif -struct mac_policy_list_head mac_policy_list; -struct mac_policy_list_head mac_static_policy_list; - -/* - * We manually invoke WITNESS_WARN() to allow Witness to generate - * warnings even if we don't end up ever triggering the wait at - * run-time. The consumer of the exclusive interface must not hold - * any locks (other than potentially Giant) since we may sleep for - * long (potentially indefinite) periods of time waiting for the - * framework to become quiescent so that a policy list change may - * be made. - */ -void -mac_policy_grab_exclusive(void) -{ - -#ifndef MAC_STATIC - WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, - "mac_policy_grab_exclusive() at %s:%d", __FILE__, __LINE__); - mtx_lock(&mac_policy_mtx); - while (mac_policy_count != 0) - cv_wait(&mac_policy_cv, &mac_policy_mtx); -#endif -} - -void -mac_policy_assert_exclusive(void) -{ - -#ifndef MAC_STATIC - mtx_assert(&mac_policy_mtx, MA_OWNED); - KASSERT(mac_policy_count == 0, - ("mac_policy_assert_exclusive(): not exclusive")); -#endif -} - -void -mac_policy_release_exclusive(void) -{ - -#ifndef MAC_STATIC - KASSERT(mac_policy_count == 0, - ("mac_policy_release_exclusive(): not exclusive")); - mtx_unlock(&mac_policy_mtx); - cv_signal(&mac_policy_cv); -#endif -} - -void -mac_policy_list_busy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count++; - mtx_unlock(&mac_policy_mtx); -#endif -} - -int -mac_policy_list_conditional_busy(void) -{ -#ifndef MAC_STATIC - int ret; - - mtx_lock(&mac_policy_mtx); - if (!LIST_EMPTY(&mac_policy_list)) { - mac_policy_count++; - ret = 1; - } else - ret = 0; - mtx_unlock(&mac_policy_mtx); - return (ret); -#else - return (0); -#endif -} - -void -mac_policy_list_unbusy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count--; - KASSERT(mac_policy_count >= 0, ("MAC_POLICY_LIST_LOCK")); - if (mac_policy_count == 0) - cv_signal(&mac_policy_cv); - mtx_unlock(&mac_policy_mtx); -#endif -} - -/* - * Initialize the MAC subsystem, including appropriate SMP locks. - */ -static void -mac_init(void) -{ - - LIST_INIT(&mac_static_policy_list); - LIST_INIT(&mac_policy_list); - -#ifndef MAC_STATIC - mtx_init(&mac_policy_mtx, "mac_policy_mtx", NULL, MTX_DEF); - cv_init(&mac_policy_cv, "mac_policy_cv"); -#endif -} - -/* - * For the purposes of modules that want to know if they were loaded - * "early", set the mac_late flag once we've processed modules either - * linked into the kernel, or loaded before the kernel startup. - */ -static void -mac_late_init(void) -{ - - mac_late = 1; -} - -/* - * After the policy list has changed, walk the list to update any global - * flags. Currently, we support only one flag, and it's conditionally - * defined; as a result, the entire function is conditional. Eventually, - * the #else case might also iterate across the policies. - */ -static void -mac_policy_updateflags(void) -{ -#ifndef MAC_ALWAYS_LABEL_MBUF - struct mac_policy_conf *tmpc; - int labelmbufs; - - mac_policy_assert_exclusive(); - - labelmbufs = 0; - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - mac_labelmbufs = (labelmbufs != 0); -#endif -} - -/* - * Allow MAC policy modules to register during boot, etc. - */ -int -mac_policy_modevent(module_t mod, int type, void *data) -{ - struct mac_policy_conf *mpc; - int error; - - error = 0; - mpc = (struct mac_policy_conf *) data; - -#ifdef MAC_STATIC - if (mac_late) { - printf("mac_policy_modevent: MAC_STATIC and late\n"); - return (EBUSY); - } -#endif - - switch (type) { - case MOD_LOAD: - if (mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_NOTLATE && - mac_late) { - printf("mac_policy_modevent: can't load %s policy " - "after booting\n", mpc->mpc_name); - error = EBUSY; - break; - } - error = mac_policy_register(mpc); - break; - case MOD_UNLOAD: - /* Don't unregister the module if it was never registered. */ - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) - != 0) - error = mac_policy_unregister(mpc); - else - error = 0; - break; - default: - break; - } - - return (error); -} - -static int -mac_policy_register(struct mac_policy_conf *mpc) -{ - struct mac_policy_conf *tmpc; - int error, slot, static_entry; - - error = 0; - - /* - * We don't technically need exclusive access while !mac_late, - * but hold it for assertion consistency. - */ - mac_policy_grab_exclusive(); - - /* - * If the module can potentially be unloaded, or we're loading - * late, we have to stick it in the non-static list and pay - * an extra performance overhead. Otherwise, we can pay a - * light locking cost and stick it in the static list. - */ - static_entry = (!mac_late && - !(mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_UNLOADOK)); - - if (static_entry) { - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } else { - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } - if (mpc->mpc_field_off != NULL) { - slot = ffs(mac_slot_offsets_free); - if (slot == 0) { - error = ENOMEM; - goto out; - } - slot--; - mac_slot_offsets_free &= ~(1 << slot); - *mpc->mpc_field_off = slot; - } - mpc->mpc_runtime_flags |= MPC_RUNTIME_FLAG_REGISTERED; - - /* - * If we're loading a MAC module after the framework has - * initialized, it has to go into the dynamic list. If - * we're loading it before we've finished initializing, - * it can go into the static list with weaker locker - * requirements. - */ - if (static_entry) - LIST_INSERT_HEAD(&mac_static_policy_list, mpc, mpc_list); - else - LIST_INSERT_HEAD(&mac_policy_list, mpc, mpc_list); - - /* Per-policy initialization. */ - if (mpc->mpc_ops->mpo_init != NULL) - (*(mpc->mpc_ops->mpo_init))(mpc); - mac_policy_updateflags(); - - printf("Security policy loaded: %s (%s)\n", mpc->mpc_fullname, - mpc->mpc_name); - -out: - mac_policy_release_exclusive(); - return (error); -} - -static int -mac_policy_unregister(struct mac_policy_conf *mpc) -{ - - /* - * If we fail the load, we may get a request to unload. Check - * to see if we did the run-time registration, and if not, - * silently succeed. - */ - mac_policy_grab_exclusive(); - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) == 0) { - mac_policy_release_exclusive(); - return (0); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Oct 20 17:50:00 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6490816A4C0; Mon, 20 Oct 2003 17:50:00 -0700 (PDT) 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 3E81816A4B3 for ; Mon, 20 Oct 2003 17:50:00 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9FAEF43FCB for ; Mon, 20 Oct 2003 17:49:59 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L0nxXJ009743 for ; Mon, 20 Oct 2003 17:49:59 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L0nx2c009740 for perforce@freebsd.org; Mon, 20 Oct 2003 17:49:59 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 17:49:59 -0700 (PDT) Message-Id: <200310210049.h9L0nx2c009740@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 Subject: PERFORCE change 40050 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 00:50:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=40050 Change 40050 by rwatson@rwatson_tislabs on 2003/10/20 17:49:45 Integ kern_mac.c to mac_net.c, to hold network-related pieces. Might want to make it more fine-grained at some point, but this is a first-cut. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_net.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Mon Oct 20 17:54:06 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 665D516A4C1; Mon, 20 Oct 2003 17:54:06 -0700 (PDT) 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 3FE9A16A4B3 for ; Mon, 20 Oct 2003 17:54:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 437AE43FA3 for ; Mon, 20 Oct 2003 17:54:05 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L0s5XJ009987 for ; Mon, 20 Oct 2003 17:54:05 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L0s4Hv009984 for perforce@freebsd.org; Mon, 20 Oct 2003 17:54:04 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 17:54:04 -0700 (PDT) Message-Id: <200310210054.h9L0s4Hv009984@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 Subject: PERFORCE change 40051 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 00:54:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=40051 Change 40051 by rwatson@rwatson_tislabs on 2003/10/20 17:53:52 Export mac_labelmbufs globally from kern_mac.c: it probably belongs in mac_net.c, but flag ownership isn't figured out yet. Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#416 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#5 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#416 (text+ko) ==== @@ -133,7 +133,7 @@ * be a problem. Note: currently no locking. Will this be a problem? */ #ifndef MAC_ALWAYS_LABEL_MBUF -static int mac_labelmbufs = 0; +int mac_labelmbufs = 0; #endif static int mac_enforce_fs = 1; ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#5 (text+ko) ==== @@ -56,6 +56,9 @@ extern struct mac_policy_list_head mac_static_policy_list; extern int mac_late; extern int mac_enforce_sysv; +#ifndef MAC_ALWAYS_LABEL_MBUF +extern int mac_labelmbufs; +#endif /* * MAC Framework global types and constants. From owner-p4-projects@FreeBSD.ORG Mon Oct 20 18:15:33 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A9F7416A4C0; Mon, 20 Oct 2003 18:15:33 -0700 (PDT) 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 82FC716A4B3 for ; Mon, 20 Oct 2003 18:15:33 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E18B243F85 for ; Mon, 20 Oct 2003 18:15:31 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L1FVXJ011883 for ; Mon, 20 Oct 2003 18:15:31 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L1FVpL011880 for perforce@freebsd.org; Mon, 20 Oct 2003 18:15:31 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 18:15:31 -0700 (PDT) Message-Id: <200310210115.h9L1FVpL011880@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 Subject: PERFORCE change 40052 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 01:15:34 -0000 http://perforce.freebsd.org/chv.cgi?CH=40052 Change 40052 by rwatson@rwatson_tislabs on 2003/10/20 18:14:42 Move network-related MAC entry points and utility routines from kern_mac.c to mac_net.c. This includes mbufs, bpfs, ifnets, sockets, ipqs. Ideally, I'd like more granularity in the breakdown, but this is a first pass. Affected files ... .. //depot/projects/trustedbsd/mac/sys/conf/files#89 edit .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#417 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_net.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/conf/files#89 (text+ko) ==== @@ -1588,6 +1588,7 @@ posix4/p1003_1b.c standard posix4/posix4_mib.c standard kern/uipc_sem.c optional p1003_1b_semaphores +security/mac/mac_net.c optional mac security/mac/mac_pipe.c optional mac security/mac/mac_posix_sem.c optional mac security/mac/mac_system.c optional mac ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#417 (text+ko) ==== @@ -141,21 +141,11 @@ &mac_enforce_fs, 0, "Enforce MAC policy on file system objects"); TUNABLE_INT("security.mac.enforce_fs", &mac_enforce_fs); -static int mac_enforce_network = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_network, CTLFLAG_RW, - &mac_enforce_network, 0, "Enforce MAC policy on network packets"); -TUNABLE_INT("security.mac.enforce_network", &mac_enforce_network); - static int mac_enforce_process = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_process, CTLFLAG_RW, &mac_enforce_process, 0, "Enforce MAC policy on inter-process operations"); TUNABLE_INT("security.mac.enforce_process", &mac_enforce_process); -static int mac_enforce_socket = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_socket, CTLFLAG_RW, - &mac_enforce_socket, 0, "Enforce MAC policy on socket operations"); -TUNABLE_INT("security.mac.enforce_socket", &mac_enforce_socket); - static int mac_enforce_vm = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); @@ -185,22 +175,11 @@ SYSCTL_NODE(_security_mac_debug, OID_AUTO, counters, CTLFLAG_RW, 0, "TrustedBSD MAC object counters"); -static unsigned int nmacmbufs, nmaccreds, nmacifnets, nmacbpfdescs, - nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, - nmacipqs, nmacprocs; +static unsigned int nmaccreds, nmacmounts, nmactemp, nmacvnodes, + nmacdevfsdirents, nmacprocs; -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mbufs, CTLFLAG_RD, - &nmacmbufs, 0, "number of mbufs in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, &nmaccreds, 0, "number of ucreds in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ifnets, CTLFLAG_RD, - &nmacifnets, 0, "number of ifnets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipqs, CTLFLAG_RD, - &nmacipqs, 0, "number of ipqs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, bpfdescs, CTLFLAG_RD, - &nmacbpfdescs, 0, "number of bpfdescs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, sockets, CTLFLAG_RD, - &nmacsockets, 0, "number of sockets in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, procs, CTLFLAG_RD, &nmacprocs, 0, "number of procs in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mounts, CTLFLAG_RD, @@ -221,8 +200,6 @@ static void mac_cred_mmapped_drop_perms_recurse(struct thread *td, struct ucred *cred, struct vm_map *map); -static void mac_destroy_socket_label(struct label *label); - static int mac_setlabel_vnode_extattr(struct ucred *cred, struct vnode *vp, struct label *intlabel); @@ -602,18 +579,6 @@ return (error2); } -static struct label * -mbuf_to_label(struct mbuf *mbuf) -{ - struct m_tag *tag; - struct label *label; - - tag = m_tag_find(mbuf, PACKET_TAG_MACLABEL, NULL); - label = (struct label *)(tag+1); - - return (label); -} - void mac_init_label(struct label *label) { @@ -633,15 +598,6 @@ /* implicit: label->l_flags &= ~MAC_FLAG_INITIALIZED; */ } -void -mac_init_bpfdesc(struct bpf_d *bpf_d) -{ - - mac_init_label(&bpf_d->bd_label); - MAC_PERFORM(init_bpfdesc_label, &bpf_d->bd_label); - MAC_DEBUG_COUNTER_INC(&nmacbpfdescs); -} - static void mac_init_cred_label(struct label *label) { @@ -667,87 +623,6 @@ MAC_DEBUG_COUNTER_INC(&nmacdevfsdirents); } -static void -mac_init_ifnet_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_ifnet_label, label); - MAC_DEBUG_COUNTER_INC(&nmacifnets); -} - -void -mac_init_ifnet(struct ifnet *ifp) -{ - - mac_init_ifnet_label(&ifp->if_label); -} - -int -mac_init_ipq(struct ipq *ipq, int flag) -{ - int error; - - mac_init_label(&ipq->ipq_label); - - MAC_CHECK(init_ipq_label, &ipq->ipq_label, flag); - if (error) { - MAC_PERFORM(destroy_ipq_label, &ipq->ipq_label); - mac_destroy_label(&ipq->ipq_label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacipqs); - } - return (error); -} - -int -mac_init_mbuf_tag(struct m_tag *tag, int flag) -{ - struct label *label; - int error; - - label = (struct label *) (tag + 1); - mac_init_label(label); - - MAC_CHECK(init_mbuf_label, label, flag); - if (error) { - MAC_PERFORM(destroy_mbuf_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacmbufs); - } - return (error); -} - -int -mac_init_mbuf(struct mbuf *m, int flag) -{ - struct m_tag *tag; - int error; - - M_ASSERTPKTHDR(m); - -#ifndef MAC_ALWAYS_LABEL_MBUF - /* - * If conditionally allocating mbuf labels, don't allocate unless - * they are required. - */ - if (!mac_labelmbufs) - return (0); -#endif - tag = m_tag_get(PACKET_TAG_MACLABEL, sizeof(struct label), - flag); - if (tag == NULL) - return (ENOMEM); - error = mac_init_mbuf_tag(tag, flag); - if (error) { - m_tag_free(tag); - return (error); - } - m_tag_prepend(m, tag); - return (0); -} - void mac_init_mount(struct mount *mp) { @@ -768,56 +643,6 @@ MAC_DEBUG_COUNTER_INC(&nmacprocs); } -static int -mac_init_socket_label(struct label *label, int flag) -{ - int error; - - mac_init_label(label); - - MAC_CHECK(init_socket_label, label, flag); - if (error) { - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacsockets); - } - - return (error); -} - -static int -mac_init_socket_peer_label(struct label *label, int flag) -{ - int error; - - mac_init_label(label); - - MAC_CHECK(init_socket_peer_label, label, flag); - if (error) { - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - } - - return (error); -} - -int -mac_init_socket(struct socket *socket, int flag) -{ - int error; - - error = mac_init_socket_label(&socket->so_label, flag); - if (error) - return (error); - - error = mac_init_socket_peer_label(&socket->so_peerlabel, flag); - if (error) - mac_destroy_socket_label(&socket->so_label); - - return (error); -} - void mac_init_vnode_label(struct label *label) { @@ -834,15 +659,6 @@ mac_init_vnode_label(&vp->v_label); } -void -mac_destroy_bpfdesc(struct bpf_d *bpf_d) -{ - - MAC_PERFORM(destroy_bpfdesc_label, &bpf_d->bd_label); - mac_destroy_label(&bpf_d->bd_label); - MAC_DEBUG_COUNTER_DEC(&nmacbpfdescs); -} - static void mac_destroy_cred_label(struct label *label) { @@ -868,44 +684,7 @@ MAC_DEBUG_COUNTER_DEC(&nmacdevfsdirents); } -static void -mac_destroy_ifnet_label(struct label *label) -{ - - MAC_PERFORM(destroy_ifnet_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacifnets); -} - -void -mac_destroy_ifnet(struct ifnet *ifp) -{ - - mac_destroy_ifnet_label(&ifp->if_label); -} - void -mac_destroy_ipq(struct ipq *ipq) -{ - - MAC_PERFORM(destroy_ipq_label, &ipq->ipq_label); - mac_destroy_label(&ipq->ipq_label); - MAC_DEBUG_COUNTER_DEC(&nmacipqs); -} - -void -mac_destroy_mbuf_tag(struct m_tag *tag) -{ - struct label *label; - - label = (struct label *)(tag+1); - - MAC_PERFORM(destroy_mbuf_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacmbufs); -} - -void mac_destroy_mount(struct mount *mp) { @@ -925,31 +704,6 @@ MAC_DEBUG_COUNTER_DEC(&nmacprocs); } -static void -mac_destroy_socket_label(struct label *label) -{ - - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacsockets); -} - -static void -mac_destroy_socket_peer_label(struct label *label) -{ - - MAC_PERFORM(destroy_socket_peer_label, label); - mac_destroy_label(label); -} - -void -mac_destroy_socket(struct socket *socket) -{ - - mac_destroy_socket_label(&socket->so_label); - mac_destroy_socket_peer_label(&socket->so_peerlabel); -} - void mac_destroy_vnode_label(struct label *label) { @@ -967,21 +721,6 @@ } void -mac_copy_mbuf_tag(struct m_tag *src, struct m_tag *dest) -{ - struct label *src_label, *dest_label; - - src_label = (struct label *)(src+1); - dest_label = (struct label *)(dest+1); - - /* - * mac_init_mbuf_tag() is called on the target tag in - * m_tag_copy(), so we don't need to call it here. - */ - MAC_PERFORM(copy_mbuf_label, src_label, dest_label); -} - -void mac_copy_vnode_label(struct label *src, struct label *dest) { @@ -1011,39 +750,6 @@ } static int -mac_externalize_ifnet_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) -{ - int error; - - MAC_EXTERNALIZE(ifnet_label, label, elements, outbuf, outbuflen); - - return (error); -} - -static int -mac_externalize_socket_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) -{ - int error; - - MAC_EXTERNALIZE(socket_label, label, elements, outbuf, outbuflen); - - return (error); -} - -static int -mac_externalize_socket_peer_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) -{ - int error; - - MAC_EXTERNALIZE(socket_peer_label, label, elements, outbuf, outbuflen); - - return (error); -} - -static int mac_externalize_vnode_label(struct label *label, char *elements, char *outbuf, size_t outbuflen, int flags) { @@ -1065,26 +771,6 @@ } static int -mac_internalize_ifnet_label(struct label *label, char *string) -{ - int error; - - MAC_INTERNALIZE(ifnet_label, label, string); - - return (error); -} - -static int -mac_internalize_socket_label(struct label *label, char *string) -{ - int error; - - MAC_INTERNALIZE(socket_label, label, string); - - return (error); -} - -static int mac_internalize_vnode_label(struct label *label, char *string) { int error; @@ -2004,241 +1690,6 @@ } void -mac_create_ifnet(struct ifnet *ifnet) -{ - - MAC_PERFORM(create_ifnet, ifnet, &ifnet->if_label); -} - -void -mac_create_bpfdesc(struct ucred *cred, struct bpf_d *bpf_d) -{ - - MAC_PERFORM(create_bpfdesc, cred, bpf_d, &bpf_d->bd_label); -} - -void -mac_create_socket(struct ucred *cred, struct socket *socket) -{ - - MAC_PERFORM(create_socket, cred, socket, &socket->so_label); -} - -void -mac_create_socket_from_socket(struct socket *oldsocket, - struct socket *newsocket) -{ - - MAC_PERFORM(create_socket_from_socket, oldsocket, &oldsocket->so_label, - newsocket, &newsocket->so_label); -} - -static void -mac_relabel_socket(struct ucred *cred, struct socket *socket, - struct label *newlabel) -{ - - MAC_PERFORM(relabel_socket, cred, socket, &socket->so_label, newlabel); -} - -void -mac_set_socket_peer_from_mbuf(struct mbuf *mbuf, struct socket *socket) -{ - struct label *label; - - label = mbuf_to_label(mbuf); - - MAC_PERFORM(set_socket_peer_from_mbuf, mbuf, label, socket, - &socket->so_peerlabel); -} - -void -mac_set_socket_peer_from_socket(struct socket *oldsocket, - struct socket *newsocket) -{ - - MAC_PERFORM(set_socket_peer_from_socket, oldsocket, - &oldsocket->so_label, newsocket, &newsocket->so_peerlabel); -} - -void -mac_create_datagram_from_ipq(struct ipq *ipq, struct mbuf *datagram) -{ - struct label *label; - - label = mbuf_to_label(datagram); - - MAC_PERFORM(create_datagram_from_ipq, ipq, &ipq->ipq_label, - datagram, label); -} - -void -mac_create_fragment(struct mbuf *datagram, struct mbuf *fragment) -{ - struct label *datagramlabel, *fragmentlabel; - - datagramlabel = mbuf_to_label(datagram); - fragmentlabel = mbuf_to_label(fragment); - - MAC_PERFORM(create_fragment, datagram, datagramlabel, fragment, - fragmentlabel); -} - -void -mac_create_ipq(struct mbuf *fragment, struct ipq *ipq) -{ - struct label *label; - - label = mbuf_to_label(fragment); - - MAC_PERFORM(create_ipq, fragment, label, ipq, &ipq->ipq_label); -} - -void -mac_create_mbuf_from_mbuf(struct mbuf *oldmbuf, struct mbuf *newmbuf) -{ - struct label *oldmbuflabel, *newmbuflabel; - - oldmbuflabel = mbuf_to_label(oldmbuf); - newmbuflabel = mbuf_to_label(newmbuf); - - MAC_PERFORM(create_mbuf_from_mbuf, oldmbuf, oldmbuflabel, newmbuf, - newmbuflabel); -} - -void -mac_create_mbuf_from_bpfdesc(struct bpf_d *bpf_d, struct mbuf *mbuf) -{ - struct label *label; - - label = mbuf_to_label(mbuf); - - MAC_PERFORM(create_mbuf_from_bpfdesc, bpf_d, &bpf_d->bd_label, mbuf, - label); -} - -void -mac_create_mbuf_linklayer(struct ifnet *ifnet, struct mbuf *mbuf) -{ - struct label *label; - - label = mbuf_to_label(mbuf); - - MAC_PERFORM(create_mbuf_linklayer, ifnet, &ifnet->if_label, mbuf, - label); -} - -void -mac_create_mbuf_from_ifnet(struct ifnet *ifnet, struct mbuf *mbuf) -{ - struct label *label; - - label = mbuf_to_label(mbuf); - - MAC_PERFORM(create_mbuf_from_ifnet, ifnet, &ifnet->if_label, mbuf, - label); -} - -void -mac_create_mbuf_multicast_encap(struct mbuf *oldmbuf, struct ifnet *ifnet, - struct mbuf *newmbuf) -{ - struct label *oldmbuflabel, *newmbuflabel; - - oldmbuflabel = mbuf_to_label(oldmbuf); - newmbuflabel = mbuf_to_label(newmbuf); - - MAC_PERFORM(create_mbuf_multicast_encap, oldmbuf, oldmbuflabel, - ifnet, &ifnet->if_label, newmbuf, newmbuflabel); -} - -void -mac_create_mbuf_netlayer(struct mbuf *oldmbuf, struct mbuf *newmbuf) -{ - struct label *oldmbuflabel, *newmbuflabel; - - oldmbuflabel = mbuf_to_label(oldmbuf); - newmbuflabel = mbuf_to_label(newmbuf); - - MAC_PERFORM(create_mbuf_netlayer, oldmbuf, oldmbuflabel, newmbuf, - newmbuflabel); -} - -int -mac_fragment_match(struct mbuf *fragment, struct ipq *ipq) -{ - struct label *label; - int result; - - label = mbuf_to_label(fragment); - - result = 1; - MAC_BOOLEAN(fragment_match, &&, fragment, label, ipq, - &ipq->ipq_label); - - return (result); -} - -void -mac_reflect_mbuf_icmp(struct mbuf *m) -{ - struct label *label; - - label = mbuf_to_label(m); - - MAC_PERFORM(reflect_mbuf_icmp, m, label); -} -void -mac_reflect_mbuf_tcp(struct mbuf *m) -{ - struct label *label; - - label = mbuf_to_label(m); - - MAC_PERFORM(reflect_mbuf_tcp, m, label); -} - -void -mac_update_ipq(struct mbuf *fragment, struct ipq *ipq) -{ - struct label *label; - - label = mbuf_to_label(fragment); - - MAC_PERFORM(update_ipq, fragment, label, ipq, &ipq->ipq_label); -} - -int -mac_update_mbuf_from_cipso(struct mbuf *m, char *cp, int *code) -{ - struct label *label, *ifnetlabel; - int error; - - label = mbuf_to_label(m); - - if (m->m_pkthdr.rcvif != NULL) - ifnetlabel = &m->m_pkthdr.rcvif->if_label; - else - ifnetlabel = NULL; - - MAC_CHECK(update_mbuf_from_cipso, m, label, m->m_pkthdr.rcvif, - ifnetlabel, cp, code); - - return (error); -} - -void -mac_create_mbuf_from_socket(struct socket *socket, struct mbuf *mbuf) -{ - struct label *label; - - label = mbuf_to_label(mbuf); - - MAC_PERFORM(create_mbuf_from_socket, socket, &socket->so_label, mbuf, - label); -} - -void mac_create_mount(struct ucred *cred, struct mount *mp) { @@ -2254,20 +1705,6 @@ &mp->mnt_fslabel); } -int -mac_check_bpfdesc_receive(struct bpf_d *bpf_d, struct ifnet *ifnet) -{ - int error; - - if (!mac_enforce_network) - return (0); - - MAC_CHECK(check_bpfdesc_receive, bpf_d, &bpf_d->bd_label, ifnet, - &ifnet->if_label); - - return (error); -} - static int mac_check_cred_relabel(struct ucred *cred, struct label *newlabel) { @@ -2292,25 +1729,6 @@ } int -mac_check_ifnet_transmit(struct ifnet *ifnet, struct mbuf *mbuf) -{ - struct label *label; - int error; - - M_ASSERTPKTHDR(mbuf); - - if (!mac_enforce_network) - return (0); - - label = mbuf_to_label(mbuf); - - MAC_CHECK(check_ifnet_transmit, ifnet, &ifnet->if_label, mbuf, - label); - - return (error); -} - -int mac_check_mount_stat(struct ucred *cred, struct mount *mount) { int error; @@ -2383,207 +1801,6 @@ return (error); } -int -mac_check_socket_bind(struct ucred *ucred, struct socket *socket, - struct sockaddr *sockaddr) -{ - int error; - - if (!mac_enforce_socket) - return (0); - - MAC_CHECK(check_socket_bind, ucred, socket, &socket->so_label, - sockaddr); - - return (error); -} - -int -mac_check_socket_connect(struct ucred *cred, struct socket *socket, - struct sockaddr *sockaddr) -{ - int error; - - if (!mac_enforce_socket) - return (0); - - MAC_CHECK(check_socket_connect, cred, socket, &socket->so_label, - sockaddr); - - return (error); -} - -int -mac_check_socket_deliver(struct socket *socket, struct mbuf *mbuf) -{ - struct label *label; - int error; - - if (!mac_enforce_socket) - return (0); - - label = mbuf_to_label(mbuf); - - MAC_CHECK(check_socket_deliver, socket, &socket->so_label, mbuf, - label); - - return (error); -} - -int -mac_check_socket_listen(struct ucred *cred, struct socket *socket) -{ - int error; - - if (!mac_enforce_socket) - return (0); - - MAC_CHECK(check_socket_listen, cred, socket, &socket->so_label); - return (error); -} - -int -mac_check_socket_receive(struct ucred *cred, struct socket *so) -{ - int error; - - if (!mac_enforce_socket) - return (0); - - MAC_CHECK(check_socket_receive, cred, so, &so->so_label); - - return (error); -} - -static int -mac_check_socket_relabel(struct ucred *cred, struct socket *socket, - struct label *newlabel) -{ - int error; - - MAC_CHECK(check_socket_relabel, cred, socket, &socket->so_label, - newlabel); - - return (error); -} - -int -mac_check_socket_send(struct ucred *cred, struct socket *so) -{ - int error; - - if (!mac_enforce_socket) - return (0); - - MAC_CHECK(check_socket_send, cred, so, &so->so_label); - - return (error); -} - -int -mac_check_socket_visible(struct ucred *cred, struct socket *socket) -{ - int error; - - if (!mac_enforce_socket) - return (0); - - MAC_CHECK(check_socket_visible, cred, socket, &socket->so_label); - - return (error); -} - -int -mac_ioctl_ifnet_get(struct ucred *cred, struct ifreq *ifr, - struct ifnet *ifnet) -{ - char *elements, *buffer; - struct mac mac; - int error; - - error = copyin(ifr->ifr_ifru.ifru_data, &mac, sizeof(mac)); - if (error) - return (error); - - error = mac_check_structmac_consistent(&mac); - if (error) - return (error); - - elements = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK); - error = copyinstr(mac.m_string, elements, mac.m_buflen, NULL); - if (error) { - free(elements, M_MACTEMP); - return (error); - } - - buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); - error = mac_externalize_ifnet_label(&ifnet->if_label, elements, - buffer, mac.m_buflen, M_WAITOK); - if (error == 0) - error = copyout(buffer, mac.m_string, strlen(buffer)+1); - - free(buffer, M_MACTEMP); - free(elements, M_MACTEMP); - - return (error); -} - -int -mac_ioctl_ifnet_set(struct ucred *cred, struct ifreq *ifr, - struct ifnet *ifnet) -{ - struct label intlabel; - struct mac mac; - char *buffer; - int error; - - error = copyin(ifr->ifr_ifru.ifru_data, &mac, sizeof(mac)); - if (error) - return (error); - - error = mac_check_structmac_consistent(&mac); - if (error) - return (error); - - buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK); - error = copyinstr(mac.m_string, buffer, mac.m_buflen, NULL); - if (error) { - free(buffer, M_MACTEMP); - return (error); - } - - mac_init_ifnet_label(&intlabel); - error = mac_internalize_ifnet_label(&intlabel, buffer); - free(buffer, M_MACTEMP); - if (error) { - mac_destroy_ifnet_label(&intlabel); - return (error); - } - - /* - * XXX: Note that this is a redundant privilege check, since - * policies impose this check themselves if required by the - * policy. Eventually, this should go away. - */ - error = suser_cred(cred, 0); - if (error) { - mac_destroy_ifnet_label(&intlabel); - return (error); - } - - MAC_CHECK(check_ifnet_relabel, cred, ifnet, &ifnet->if_label, - &intlabel); - if (error) { - mac_destroy_ifnet_label(&intlabel); - return (error); - } - - MAC_PERFORM(relabel_ifnet, cred, ifnet, &ifnet->if_label, &intlabel); - - mac_destroy_ifnet_label(&intlabel); - return (0); -} - void mac_create_devfs_device(struct mount *mp, dev_t dev, struct devfs_dirent *de, const char *fullpath) @@ -2611,105 +1828,6 @@ &de->de_label, fullpath); } -int -mac_setsockopt_label_set(struct ucred *cred, struct socket *so, - struct mac *mac) -{ - struct label intlabel; - char *buffer; - int error; - - error = mac_check_structmac_consistent(mac); - if (error) - return (error); - - buffer = malloc(mac->m_buflen, M_MACTEMP, M_WAITOK); - error = copyinstr(mac->m_string, buffer, mac->m_buflen, NULL); - if (error) { - free(buffer, M_MACTEMP); - return (error); - } - - mac_init_socket_label(&intlabel, M_WAITOK); - error = mac_internalize_socket_label(&intlabel, buffer); - free(buffer, M_MACTEMP); - if (error) { - mac_destroy_socket_label(&intlabel); - return (error); - } - - mac_check_socket_relabel(cred, so, &intlabel); - if (error) { - mac_destroy_socket_label(&intlabel); - return (error); - } - - mac_relabel_socket(cred, so, &intlabel); - - mac_destroy_socket_label(&intlabel); - return (0); -} - -int -mac_getsockopt_label_get(struct ucred *cred, struct socket *so, - struct mac *mac) -{ - char *buffer, *elements; - int error; - - error = mac_check_structmac_consistent(mac); - if (error) - return (error); - - elements = malloc(mac->m_buflen, M_MACTEMP, M_WAITOK); - error = copyinstr(mac->m_string, elements, mac->m_buflen, NULL); - if (error) { >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Oct 20 18:16:35 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0EC3816A4C0; Mon, 20 Oct 2003 18:16:35 -0700 (PDT) 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 DCF2316A4B3 for ; Mon, 20 Oct 2003 18:16:34 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 48C6143F85 for ; Mon, 20 Oct 2003 18:16:34 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L1GYXJ011981 for ; Mon, 20 Oct 2003 18:16:34 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L1GXWG011978 for perforce@freebsd.org; Mon, 20 Oct 2003 18:16:33 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 18:16:33 -0700 (PDT) Message-Id: <200310210116.h9L1GXWG011978@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 Subject: PERFORCE change 40054 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 01:16:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=40054 Change 40054 by rwatson@rwatson_tislabs on 2003/10/20 18:16:30 Integ kern_mac.c to mac_fs.c to hold file system-related MAC entry points and infrastructure. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_fs.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Mon Oct 20 18:38:02 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3212916A4C0; Mon, 20 Oct 2003 18:38:02 -0700 (PDT) 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 0788116A4B3 for ; Mon, 20 Oct 2003 18:38:02 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D3A9743FB1 for ; Mon, 20 Oct 2003 18:38:00 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L1c0XJ012775 for ; Mon, 20 Oct 2003 18:38:00 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L1c00J012768 for perforce@freebsd.org; Mon, 20 Oct 2003 18:38:00 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 18:38:00 -0700 (PDT) Message-Id: <200310210138.h9L1c00J012768@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 Subject: PERFORCE change 40055 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 01:38:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=40055 Change 40055 by rwatson@rwatson_tislabs on 2003/10/20 18:37:44 Move file system related MAC entry point and infrastructure code from kern_mac.c to mac_fs.c. The split of exec and VM functionality will probably require some refinement. Affected files ... .. //depot/projects/trustedbsd/mac/sys/conf/files#90 edit .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#418 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_fs.c#2 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#6 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/conf/files#90 (text+ko) ==== @@ -1588,6 +1588,7 @@ posix4/p1003_1b.c standard posix4/posix4_mib.c standard kern/uipc_sem.c optional p1003_1b_semaphores +security/mac/mac_fs.c optional mac security/mac/mac_net.c optional mac security/mac/mac_pipe.c optional mac security/mac/mac_posix_sem.c optional mac ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#418 (text+ko) ==== @@ -116,12 +116,6 @@ int mac_late = 0; /* - * Warn about EA transactions only the first time they happen. - * Weak coherency, no locking. - */ -static int ea_warn_once = 0; - -/* * Flag to indicate whether or not we should allocate label storage for * new mbufs. Since most dynamic policies we currently work with don't * rely on mbuf labeling, try to avoid paying the cost of mtag allocation @@ -136,12 +130,7 @@ int mac_labelmbufs = 0; #endif -static int mac_enforce_fs = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_fs, CTLFLAG_RW, - &mac_enforce_fs, 0, "Enforce MAC policy on file system objects"); -TUNABLE_INT("security.mac.enforce_fs", &mac_enforce_fs); - -static int mac_enforce_process = 1; +int mac_enforce_process = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_process, CTLFLAG_RW, &mac_enforce_process, 0, "Enforce MAC policy on inter-process operations"); TUNABLE_INT("security.mac.enforce_process", &mac_enforce_process); @@ -175,34 +164,22 @@ SYSCTL_NODE(_security_mac_debug, OID_AUTO, counters, CTLFLAG_RW, 0, "TrustedBSD MAC object counters"); -static unsigned int nmaccreds, nmacmounts, nmactemp, nmacvnodes, - nmacdevfsdirents, nmacprocs; +static unsigned int nmaccreds, nmactemp, nmacprocs; SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, &nmaccreds, 0, "number of ucreds in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, procs, CTLFLAG_RD, &nmacprocs, 0, "number of procs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mounts, CTLFLAG_RD, - &nmacmounts, 0, "number of mounts in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, temp, CTLFLAG_RD, &nmactemp, 0, "number of temporary labels in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, vnodes, CTLFLAG_RD, - &nmacvnodes, 0, "number of vnodes in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, devfsdirents, CTLFLAG_RD, - &nmacdevfsdirents, 0, "number of devfs dirents inuse"); #endif static int mac_policy_register(struct mac_policy_conf *mpc); static int mac_policy_unregister(struct mac_policy_conf *mpc); -static void mac_check_vnode_mmap_downgrade(struct ucred *cred, - struct vnode *vp, int *prot); static void mac_cred_mmapped_drop_perms_recurse(struct thread *td, struct ucred *cred, struct vm_map *map); -static int mac_setlabel_vnode_extattr(struct ucred *cred, - struct vnode *vp, struct label *intlabel); - MALLOC_DEFINE(M_MACTEMP, "mactemp", "MAC temporary label storage"); /* @@ -615,26 +592,6 @@ } void -mac_init_devfsdirent(struct devfs_dirent *de) -{ - - mac_init_label(&de->de_label); - MAC_PERFORM(init_devfsdirent_label, &de->de_label); - MAC_DEBUG_COUNTER_INC(&nmacdevfsdirents); -} - -void -mac_init_mount(struct mount *mp) -{ - - mac_init_label(&mp->mnt_mntlabel); - mac_init_label(&mp->mnt_fslabel); - MAC_PERFORM(init_mount_label, &mp->mnt_mntlabel); - MAC_PERFORM(init_mount_fs_label, &mp->mnt_fslabel); - MAC_DEBUG_COUNTER_INC(&nmacmounts); -} - -void mac_init_proc(struct proc *p) { @@ -643,22 +600,6 @@ MAC_DEBUG_COUNTER_INC(&nmacprocs); } -void -mac_init_vnode_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_vnode_label, label); - MAC_DEBUG_COUNTER_INC(&nmacvnodes); -} - -void -mac_init_vnode(struct vnode *vp) -{ - - mac_init_vnode_label(&vp->v_label); -} - static void mac_destroy_cred_label(struct label *label) { @@ -676,26 +617,6 @@ } void -mac_destroy_devfsdirent(struct devfs_dirent *de) -{ - - MAC_PERFORM(destroy_devfsdirent_label, &de->de_label); - mac_destroy_label(&de->de_label); - MAC_DEBUG_COUNTER_DEC(&nmacdevfsdirents); -} - -void -mac_destroy_mount(struct mount *mp) -{ - - MAC_PERFORM(destroy_mount_label, &mp->mnt_mntlabel); - MAC_PERFORM(destroy_mount_fs_label, &mp->mnt_fslabel); - mac_destroy_label(&mp->mnt_fslabel); - mac_destroy_label(&mp->mnt_mntlabel); - MAC_DEBUG_COUNTER_DEC(&nmacmounts); -} - -void mac_destroy_proc(struct proc *p) { @@ -704,29 +625,6 @@ MAC_DEBUG_COUNTER_DEC(&nmacprocs); } -void -mac_destroy_vnode_label(struct label *label) -{ - - MAC_PERFORM(destroy_vnode_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacvnodes); -} - -void -mac_destroy_vnode(struct vnode *vp) -{ - - mac_destroy_vnode_label(&vp->v_label); -} - -void -mac_copy_vnode_label(struct label *src, struct label *dest) -{ - - MAC_PERFORM(copy_vnode_label, src, dest); -} - int mac_check_structmac_consistent(struct mac *mac) { @@ -750,17 +648,6 @@ } static int -mac_externalize_vnode_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) -{ - int error; - - MAC_EXTERNALIZE(vnode_label, label, elements, outbuf, outbuflen); - - return (error); -} - -static int mac_internalize_cred_label(struct label *label, char *string) { int error; @@ -770,16 +657,6 @@ return (error); } -static int -mac_internalize_vnode_label(struct label *label, char *string) -{ - int error; - - MAC_INTERNALIZE(vnode_label, label, string); - - return (error); -} - /* * Initialize MAC label for the first kernel process, from which other * kernel processes and threads are spawned. @@ -821,115 +698,6 @@ MAC_PERFORM(create_cred, parent_cred, child_cred); } -void -mac_update_devfsdirent(struct mount *mp, struct devfs_dirent *de, - struct vnode *vp) -{ - - MAC_PERFORM(update_devfsdirent, mp, de, &de->de_label, vp, - &vp->v_label); -} - -void -mac_associate_vnode_devfs(struct mount *mp, struct devfs_dirent *de, - struct vnode *vp) -{ - - MAC_PERFORM(associate_vnode_devfs, mp, &mp->mnt_fslabel, de, - &de->de_label, vp, &vp->v_label); -} - -int -mac_associate_vnode_extattr(struct mount *mp, struct vnode *vp) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_associate_vnode_extattr"); - - MAC_CHECK(associate_vnode_extattr, mp, &mp->mnt_fslabel, vp, - &vp->v_label); - - return (error); -} - -void -mac_associate_vnode_singlelabel(struct mount *mp, struct vnode *vp) -{ - - MAC_PERFORM(associate_vnode_singlelabel, mp, &mp->mnt_fslabel, vp, - &vp->v_label); -} - -int -mac_create_vnode_extattr(struct ucred *cred, struct mount *mp, - struct vnode *dvp, struct vnode *vp, struct componentname *cnp) -{ - int error; - - ASSERT_VOP_LOCKED(dvp, "mac_create_vnode_extattr"); - ASSERT_VOP_LOCKED(vp, "mac_create_vnode_extattr"); - - error = VOP_OPENEXTATTR(vp, cred, curthread); - if (error == EOPNOTSUPP) { - /* XXX: Optionally abort if transactions not supported. */ - if (ea_warn_once == 0) { - printf("Warning: transactions not supported " - "in EA write.\n"); - ea_warn_once = 1; - } - } else if (error) - return (error); - - MAC_CHECK(create_vnode_extattr, cred, mp, &mp->mnt_fslabel, - dvp, &dvp->v_label, vp, &vp->v_label, cnp); - - if (error) { - VOP_CLOSEEXTATTR(vp, 0, NOCRED, curthread); - return (error); - } - - error = VOP_CLOSEEXTATTR(vp, 1, NOCRED, curthread); - - if (error == EOPNOTSUPP) - error = 0; /* XXX */ - - return (error); -} - -static int -mac_setlabel_vnode_extattr(struct ucred *cred, struct vnode *vp, - struct label *intlabel) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_setlabel_vnode_extattr"); - - error = VOP_OPENEXTATTR(vp, cred, curthread); - if (error == EOPNOTSUPP) { - /* XXX: Optionally abort if transactions not supported. */ - if (ea_warn_once == 0) { - printf("Warning: transactions not supported " - "in EA write.\n"); - ea_warn_once = 1; - } - } else if (error) - return (error); - - MAC_CHECK(setlabel_vnode_extattr, cred, vp, &vp->v_label, intlabel); - - if (error) { - VOP_CLOSEEXTATTR(vp, 0, NOCRED, curthread); - return (error); - } - - error = VOP_CLOSEEXTATTR(vp, 1, NOCRED, curthread); - - if (error == EOPNOTSUPP) - error = 0; /* XXX */ - - return (error); -} - int mac_execve_enter(struct image_params *imgp, struct mac *mac_p, struct label *execlabelstorage) @@ -974,542 +742,6 @@ mac_destroy_cred_label(imgp->execlabel); } -void -mac_execve_transition(struct ucred *old, struct ucred *new, struct vnode *vp, - struct label *interpvnodelabel, struct image_params *imgp) -{ - - ASSERT_VOP_LOCKED(vp, "mac_execve_transition"); - - if (!mac_enforce_process && !mac_enforce_fs) - return; - - MAC_PERFORM(execve_transition, old, new, vp, &vp->v_label, - interpvnodelabel, imgp, imgp->execlabel); -} - -int -mac_execve_will_transition(struct ucred *old, struct vnode *vp, - struct label *interpvnodelabel, struct image_params *imgp) -{ - int result; - - ASSERT_VOP_LOCKED(vp, "mac_execve_will_transition"); - - if (!mac_enforce_process && !mac_enforce_fs) - return (0); - - result = 0; - MAC_BOOLEAN(execve_will_transition, ||, old, vp, &vp->v_label, - interpvnodelabel, imgp, imgp->execlabel); - - return (result); -} - -int -mac_check_vnode_access(struct ucred *cred, struct vnode *vp, int acc_mode) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_access"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_access, cred, vp, &vp->v_label, acc_mode); - return (error); -} - -int -mac_check_vnode_chdir(struct ucred *cred, struct vnode *dvp) -{ - int error; - - ASSERT_VOP_LOCKED(dvp, "mac_check_vnode_chdir"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_chdir, cred, dvp, &dvp->v_label); - return (error); -} - -int -mac_check_vnode_chroot(struct ucred *cred, struct vnode *dvp) -{ - int error; - - ASSERT_VOP_LOCKED(dvp, "mac_check_vnode_chroot"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_chroot, cred, dvp, &dvp->v_label); - return (error); -} - -int -mac_check_vnode_create(struct ucred *cred, struct vnode *dvp, - struct componentname *cnp, struct vattr *vap) -{ - int error; - - ASSERT_VOP_LOCKED(dvp, "mac_check_vnode_create"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_create, cred, dvp, &dvp->v_label, cnp, vap); - return (error); -} - -int -mac_check_vnode_delete(struct ucred *cred, struct vnode *dvp, struct vnode *vp, - struct componentname *cnp) -{ - int error; - - ASSERT_VOP_LOCKED(dvp, "mac_check_vnode_delete"); - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_delete"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_delete, cred, dvp, &dvp->v_label, vp, - &vp->v_label, cnp); - return (error); -} - -int -mac_check_vnode_deleteacl(struct ucred *cred, struct vnode *vp, - acl_type_t type) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_deleteacl"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_deleteacl, cred, vp, &vp->v_label, type); - return (error); -} - -int -mac_check_vnode_deleteextattr(struct ucred *cred, struct vnode *vp, - int attrnamespace, const char *name) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_deleteextattr"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_deleteextattr, cred, vp, &vp->v_label, - attrnamespace, name); - return (error); -} - -int -mac_check_vnode_exec(struct ucred *cred, struct vnode *vp, - struct image_params *imgp) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_exec"); - - if (!mac_enforce_process && !mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_exec, cred, vp, &vp->v_label, imgp, - imgp->execlabel); - - return (error); -} - -int -mac_check_vnode_getacl(struct ucred *cred, struct vnode *vp, acl_type_t type) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_getacl"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_getacl, cred, vp, &vp->v_label, type); - return (error); -} - -int -mac_check_vnode_getextattr(struct ucred *cred, struct vnode *vp, - int attrnamespace, const char *name, struct uio *uio) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_getextattr"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_getextattr, cred, vp, &vp->v_label, - attrnamespace, name, uio); - return (error); -} - -int -mac_check_vnode_link(struct ucred *cred, struct vnode *dvp, - struct vnode *vp, struct componentname *cnp) -{ - int error; - - ASSERT_VOP_LOCKED(dvp, "mac_check_vnode_link"); - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_link"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_link, cred, dvp, &dvp->v_label, vp, - &vp->v_label, cnp); - return (error); -} - -int -mac_check_vnode_listextattr(struct ucred *cred, struct vnode *vp, - int attrnamespace) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_listextattr"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_listextattr, cred, vp, &vp->v_label, - attrnamespace); - return (error); -} - -int -mac_check_vnode_lookup(struct ucred *cred, struct vnode *dvp, - struct componentname *cnp) -{ - int error; - - ASSERT_VOP_LOCKED(dvp, "mac_check_vnode_lookup"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_lookup, cred, dvp, &dvp->v_label, cnp); - return (error); -} - -int -mac_check_vnode_mmap(struct ucred *cred, struct vnode *vp, int prot) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_mmap"); - - if (!mac_enforce_fs || !mac_enforce_vm) - return (0); - - MAC_CHECK(check_vnode_mmap, cred, vp, &vp->v_label, prot); - return (error); -} - -void -mac_check_vnode_mmap_downgrade(struct ucred *cred, struct vnode *vp, int *prot) -{ - int result = *prot; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_mmap_downgrade"); - - if (!mac_enforce_fs || !mac_enforce_vm) - return; - - MAC_PERFORM(check_vnode_mmap_downgrade, cred, vp, &vp->v_label, - &result); - - *prot = result; -} - -int -mac_check_vnode_mprotect(struct ucred *cred, struct vnode *vp, int prot) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_mprotect"); - - if (!mac_enforce_fs || !mac_enforce_vm) - return (0); - - MAC_CHECK(check_vnode_mprotect, cred, vp, &vp->v_label, prot); - return (error); -} - -int -mac_check_vnode_open(struct ucred *cred, struct vnode *vp, int acc_mode) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_open"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_open, cred, vp, &vp->v_label, acc_mode); - return (error); -} - -int -mac_check_vnode_poll(struct ucred *active_cred, struct ucred *file_cred, - struct vnode *vp) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_poll"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_poll, active_cred, file_cred, vp, - &vp->v_label); - - return (error); -} - -int -mac_check_vnode_read(struct ucred *active_cred, struct ucred *file_cred, - struct vnode *vp) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_read"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_read, active_cred, file_cred, vp, - &vp->v_label); - - return (error); -} - -int -mac_check_vnode_readdir(struct ucred *cred, struct vnode *dvp) -{ - int error; - - ASSERT_VOP_LOCKED(dvp, "mac_check_vnode_readdir"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_readdir, cred, dvp, &dvp->v_label); - return (error); -} - -int -mac_check_vnode_readlink(struct ucred *cred, struct vnode *vp) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_readlink"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_readlink, cred, vp, &vp->v_label); - return (error); -} - -static int -mac_check_vnode_relabel(struct ucred *cred, struct vnode *vp, - struct label *newlabel) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_relabel"); - - MAC_CHECK(check_vnode_relabel, cred, vp, &vp->v_label, newlabel); - - return (error); -} - -int -mac_check_vnode_rename_from(struct ucred *cred, struct vnode *dvp, - struct vnode *vp, struct componentname *cnp) -{ - int error; - - ASSERT_VOP_LOCKED(dvp, "mac_check_vnode_rename_from"); - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_rename_from"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_rename_from, cred, dvp, &dvp->v_label, vp, - &vp->v_label, cnp); - return (error); -} - -int -mac_check_vnode_rename_to(struct ucred *cred, struct vnode *dvp, - struct vnode *vp, int samedir, struct componentname *cnp) -{ - int error; - - ASSERT_VOP_LOCKED(dvp, "mac_check_vnode_rename_to"); - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_rename_to"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_rename_to, cred, dvp, &dvp->v_label, vp, - vp != NULL ? &vp->v_label : NULL, samedir, cnp); - return (error); -} - -int -mac_check_vnode_revoke(struct ucred *cred, struct vnode *vp) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_revoke"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_revoke, cred, vp, &vp->v_label); - return (error); -} - -int -mac_check_vnode_setacl(struct ucred *cred, struct vnode *vp, acl_type_t type, - struct acl *acl) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_setacl"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_setacl, cred, vp, &vp->v_label, type, acl); - return (error); -} - -int -mac_check_vnode_setextattr(struct ucred *cred, struct vnode *vp, - int attrnamespace, const char *name, struct uio *uio) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_setextattr"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_setextattr, cred, vp, &vp->v_label, - attrnamespace, name, uio); - return (error); -} - -int -mac_check_vnode_setflags(struct ucred *cred, struct vnode *vp, u_long flags) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_setflags"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_setflags, cred, vp, &vp->v_label, flags); - return (error); -} - -int -mac_check_vnode_setmode(struct ucred *cred, struct vnode *vp, mode_t mode) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_setmode"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_setmode, cred, vp, &vp->v_label, mode); - return (error); -} - -int -mac_check_vnode_setowner(struct ucred *cred, struct vnode *vp, uid_t uid, - gid_t gid) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_setowner"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_setowner, cred, vp, &vp->v_label, uid, gid); - return (error); -} - -int -mac_check_vnode_setutimes(struct ucred *cred, struct vnode *vp, - struct timespec atime, struct timespec mtime) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_setutimes"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_setutimes, cred, vp, &vp->v_label, atime, - mtime); - return (error); -} - -int -mac_check_vnode_stat(struct ucred *active_cred, struct ucred *file_cred, - struct vnode *vp) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_stat"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_stat, active_cred, file_cred, vp, - &vp->v_label); - return (error); -} - -int -mac_check_vnode_write(struct ucred *active_cred, struct ucred *file_cred, - struct vnode *vp) -{ - int error; - - ASSERT_VOP_LOCKED(vp, "mac_check_vnode_write"); - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_vnode_write, active_cred, file_cred, vp, - &vp->v_label); - - return (error); -} - /* * When relabeling a process, call out to the policies for the maximum * permission allowed for each object type we know about in its @@ -1682,29 +914,6 @@ MAC_PERFORM(relabel_cred, cred, newlabel); } -void -mac_relabel_vnode(struct ucred *cred, struct vnode *vp, struct label *newlabel) -{ - - MAC_PERFORM(relabel_vnode, cred, vp, &vp->v_label, newlabel); -} - -void -mac_create_mount(struct ucred *cred, struct mount *mp) -{ - - MAC_PERFORM(create_mount, cred, mp, &mp->mnt_mntlabel, - &mp->mnt_fslabel); -} - -void -mac_create_root_mount(struct ucred *cred, struct mount *mp) -{ - - MAC_PERFORM(create_root_mount, cred, mp, &mp->mnt_mntlabel, - &mp->mnt_fslabel); -} - static int mac_check_cred_relabel(struct ucred *cred, struct label *newlabel) { @@ -1729,19 +938,6 @@ } int -mac_check_mount_stat(struct ucred *cred, struct mount *mount) -{ - int error; - - if (!mac_enforce_fs) - return (0); - - MAC_CHECK(check_mount_stat, cred, mount, &mount->mnt_mntlabel); - - return (error); -} - -int mac_check_proc_debug(struct ucred *cred, struct proc *proc) { int error; @@ -1801,102 +997,6 @@ return (error); } -void -mac_create_devfs_device(struct mount *mp, dev_t dev, struct devfs_dirent *de, - const char *fullpath) -{ - - MAC_PERFORM(create_devfs_device, mp, dev, de, &de->de_label, - fullpath); -} - -void -mac_create_devfs_symlink(struct ucred *cred, struct mount *mp, - struct devfs_dirent *dd, struct devfs_dirent *de, const char *fullpath) -{ - - MAC_PERFORM(create_devfs_symlink, cred, mp, dd, &dd->de_label, de, - &de->de_label, fullpath); -} - -void -mac_create_devfs_directory(struct mount *mp, char *dirname, int dirnamelen, - struct devfs_dirent *de, const char *fullpath) -{ - - MAC_PERFORM(create_devfs_directory, mp, dirname, dirnamelen, de, - &de->de_label, fullpath); -} - -/* - * Implementation of VOP_SETLABEL() that relies on extended attributes - * to store label data. Can be referenced by filesystems supporting - * extended attributes. - */ -int -vop_stdsetlabel_ea(struct vop_setlabel_args *ap) -{ - struct vnode *vp = ap->a_vp; - struct label *intlabel = ap->a_label; - int error; - - ASSERT_VOP_LOCKED(vp, "vop_stdsetlabel_ea"); - - if ((vp->v_mount->mnt_flag & MNT_MULTILABEL) == 0) - return (EOPNOTSUPP); - - error = mac_setlabel_vnode_extattr(ap->a_cred, vp, intlabel); - if (error) - return (error); - - mac_relabel_vnode(ap->a_cred, vp, intlabel); - - return (0); -} - -static int >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Oct 20 18:52:20 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E3EFF16A4C0; Mon, 20 Oct 2003 18:52:19 -0700 (PDT) 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 B935B16A4B3 for ; Mon, 20 Oct 2003 18:52:19 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2725543F85 for ; Mon, 20 Oct 2003 18:52:19 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L1qIXJ013434 for ; Mon, 20 Oct 2003 18:52:18 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L1qIbh013431 for perforce@freebsd.org; Mon, 20 Oct 2003 18:52:18 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 18:52:18 -0700 (PDT) Message-Id: <200310210152.h9L1qIbh013431@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 Subject: PERFORCE change 40056 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 01:52:20 -0000 http://perforce.freebsd.org/chv.cgi?CH=40056 Change 40056 by rwatson@rwatson_tislabs on 2003/10/20 18:52:12 Integrate kern_mac.c to mac_process.c, to hold process-related MAC entry points and infrastructure. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_process.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Mon Oct 20 19:05:37 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 78A4816A4C0; Mon, 20 Oct 2003 19:05:37 -0700 (PDT) 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 4094C16A4B3 for ; Mon, 20 Oct 2003 19:05:37 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0931C43F85 for ; Mon, 20 Oct 2003 19:05:36 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L25ZXJ014876 for ; Mon, 20 Oct 2003 19:05:35 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L25ZXe014873 for perforce@freebsd.org; Mon, 20 Oct 2003 19:05:35 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 19:05:35 -0700 (PDT) Message-Id: <200310210205.h9L25ZXe014873@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 Subject: PERFORCE change 40057 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 02:05:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=40057 Change 40057 by rwatson@rwatson_tislabs on 2003/10/20 19:05:22 Move credential/process/vm-related MAC entry points and infrastructure from kern_mac.c to mac_process.c. Split of functionality also still not perfect: had to export mac_enforce_vm since kern_mac relies on it during credential changes due to system calls. Affected files ... .. //depot/projects/trustedbsd/mac/sys/conf/files#91 edit .. //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#419 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#7 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_process.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/conf/files#91 (text+ko) ==== @@ -1592,6 +1592,7 @@ security/mac/mac_net.c optional mac security/mac/mac_pipe.c optional mac security/mac/mac_posix_sem.c optional mac +security/mac/mac_process.c optional mac security/mac/mac_system.c optional mac security/mac/mac_sysv_msg.c optional mac security/mac/mac_sysv_sem.c optional mac ==== //depot/projects/trustedbsd/mac/sys/kern/kern_mac.c#419 (text+ko) ==== @@ -130,46 +130,13 @@ int mac_labelmbufs = 0; #endif -int mac_enforce_process = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_process, CTLFLAG_RW, - &mac_enforce_process, 0, "Enforce MAC policy on inter-process operations"); -TUNABLE_INT("security.mac.enforce_process", &mac_enforce_process); - -static int mac_enforce_vm = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, - &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); -TUNABLE_INT("security.mac.enforce_vm", &mac_enforce_vm); - -static int mac_mmap_revocation = 0; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation, CTLFLAG_RW, - &mac_mmap_revocation, 0, "Revoke mmap access to files on subject " - "relabel"); - -static int mac_mmap_revocation_via_cow = 1; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation_via_cow, CTLFLAG_RW, - &mac_mmap_revocation_via_cow, 0, "Revoke mmap access to files via " - "copy-on-write semantics, or by removing all write access"); - #ifdef MAC_DEBUG SYSCTL_NODE(_security_mac, OID_AUTO, debug, CTLFLAG_RW, 0, "TrustedBSD MAC debug info"); - -static int mac_debug_label_fallback = 0; -SYSCTL_INT(_security_mac_debug, OID_AUTO, label_fallback, CTLFLAG_RW, - &mac_debug_label_fallback, 0, "Filesystems should fall back to fs label" - "when label is corrupted."); -TUNABLE_INT("security.mac.debug_label_fallback", - &mac_debug_label_fallback); - SYSCTL_NODE(_security_mac_debug, OID_AUTO, counters, CTLFLAG_RW, 0, "TrustedBSD MAC object counters"); -static unsigned int nmaccreds, nmactemp, nmacprocs; - -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, - &nmaccreds, 0, "number of ucreds in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, procs, CTLFLAG_RD, - &nmacprocs, 0, "number of procs in use"); +static unsigned int nmactemp; SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, temp, CTLFLAG_RD, &nmactemp, 0, "number of temporary labels in use"); #endif @@ -177,9 +144,6 @@ static int mac_policy_register(struct mac_policy_conf *mpc); static int mac_policy_unregister(struct mac_policy_conf *mpc); -static void mac_cred_mmapped_drop_perms_recurse(struct thread *td, - struct ucred *cred, struct vm_map *map); - MALLOC_DEFINE(M_MACTEMP, "mactemp", "MAC temporary label storage"); /* @@ -575,56 +539,6 @@ /* implicit: label->l_flags &= ~MAC_FLAG_INITIALIZED; */ } -static void -mac_init_cred_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_cred_label, label); - MAC_DEBUG_COUNTER_INC(&nmaccreds); -} - -void -mac_init_cred(struct ucred *cred) -{ - - mac_init_cred_label(&cred->cr_label); -} - -void -mac_init_proc(struct proc *p) -{ - - mac_init_label(&p->p_label); - MAC_PERFORM(init_proc_label, &p->p_label); - MAC_DEBUG_COUNTER_INC(&nmacprocs); -} - -static void -mac_destroy_cred_label(struct label *label) -{ - - MAC_PERFORM(destroy_cred_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmaccreds); -} - -void -mac_destroy_cred(struct ucred *cred) -{ - - mac_destroy_cred_label(&cred->cr_label); -} - -void -mac_destroy_proc(struct proc *p) -{ - - MAC_PERFORM(destroy_proc_label, &p->p_label); - mac_destroy_label(&p->p_label); - MAC_DEBUG_COUNTER_DEC(&nmacprocs); -} - int mac_check_structmac_consistent(struct mac *mac) { @@ -636,367 +550,6 @@ return (0); } -static int -mac_externalize_cred_label(struct label *label, char *elements, - char *outbuf, size_t outbuflen, int flags) -{ - int error; - - MAC_EXTERNALIZE(cred_label, label, elements, outbuf, outbuflen); - - return (error); -} - -static int -mac_internalize_cred_label(struct label *label, char *string) -{ - int error; - - MAC_INTERNALIZE(cred_label, label, string); - - return (error); -} - -/* - * Initialize MAC label for the first kernel process, from which other - * kernel processes and threads are spawned. - */ -void -mac_create_proc0(struct ucred *cred) -{ - - MAC_PERFORM(create_proc0, cred); -} - -/* - * Initialize MAC label for the first userland process, from which other - * userland processes and threads are spawned. - */ -void -mac_create_proc1(struct ucred *cred) -{ - - MAC_PERFORM(create_proc1, cred); -} - -void -mac_thread_userret(struct thread *td) -{ - - MAC_PERFORM(thread_userret, td); -} - -/* - * When a new process is created, its label must be initialized. Generally, - * this involves inheritence from the parent process, modulo possible - * deltas. This function allows that processing to take place. - */ -void -mac_create_cred(struct ucred *parent_cred, struct ucred *child_cred) -{ - - MAC_PERFORM(create_cred, parent_cred, child_cred); -} - -int -mac_execve_enter(struct image_params *imgp, struct mac *mac_p, - struct label *execlabelstorage) -{ - struct mac mac; - char *buffer; - int error; - - if (mac_p == NULL) - return (0); - - error = copyin(mac_p, &mac, sizeof(mac)); - if (error) - return (error); - - error = mac_check_structmac_consistent(&mac); - if (error) - return (error); - - buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK); - error = copyinstr(mac.m_string, buffer, mac.m_buflen, NULL); - if (error) { - free(buffer, M_MACTEMP); - return (error); - } - - mac_init_cred_label(execlabelstorage); - error = mac_internalize_cred_label(execlabelstorage, buffer); - free(buffer, M_MACTEMP); - if (error) { - mac_destroy_cred_label(execlabelstorage); - return (error); - } - imgp->execlabel = execlabelstorage; - return (0); -} - -void -mac_execve_exit(struct image_params *imgp) -{ - if (imgp->execlabel != NULL) - mac_destroy_cred_label(imgp->execlabel); -} - -/* - * When relabeling a process, call out to the policies for the maximum - * permission allowed for each object type we know about in its - * memory space, and revoke access (in the least surprising ways we - * know) when necessary. The process lock is not held here. - */ -void -mac_cred_mmapped_drop_perms(struct thread *td, struct ucred *cred) -{ - - /* XXX freeze all other threads */ - mac_cred_mmapped_drop_perms_recurse(td, cred, - &td->td_proc->p_vmspace->vm_map); - /* XXX allow other threads to continue */ -} - -static __inline const char * -prot2str(vm_prot_t prot) -{ - - switch (prot & VM_PROT_ALL) { - case VM_PROT_READ: - return ("r--"); - case VM_PROT_READ | VM_PROT_WRITE: - return ("rw-"); - case VM_PROT_READ | VM_PROT_EXECUTE: - return ("r-x"); - case VM_PROT_READ | VM_PROT_WRITE | VM_PROT_EXECUTE: - return ("rwx"); - case VM_PROT_WRITE: - return ("-w-"); - case VM_PROT_EXECUTE: - return ("--x"); - case VM_PROT_WRITE | VM_PROT_EXECUTE: - return ("-wx"); - default: - return ("---"); - } -} - -static void -mac_cred_mmapped_drop_perms_recurse(struct thread *td, struct ucred *cred, - struct vm_map *map) -{ - struct vm_map_entry *vme; - int result; - vm_prot_t revokeperms; - vm_object_t object; - vm_ooffset_t offset; - struct vnode *vp; - - if (!mac_mmap_revocation) - return; - - vm_map_lock_read(map); - for (vme = map->header.next; vme != &map->header; vme = vme->next) { - if (vme->eflags & MAP_ENTRY_IS_SUB_MAP) { - mac_cred_mmapped_drop_perms_recurse(td, cred, - vme->object.sub_map); - continue; - } - /* - * Skip over entries that obviously are not shared. - */ - if (vme->eflags & (MAP_ENTRY_COW | MAP_ENTRY_NOSYNC) || - !vme->max_protection) - continue; - /* - * Drill down to the deepest backing object. - */ - offset = vme->offset; - object = vme->object.vm_object; - if (object == NULL) - continue; - while (object->backing_object != NULL) { - object = object->backing_object; - offset += object->backing_object_offset; - } - /* - * At the moment, vm_maps and objects aren't considered - * by the MAC system, so only things with backing by a - * normal object (read: vnodes) are checked. - */ - if (object->type != OBJT_VNODE) - continue; - vp = (struct vnode *)object->handle; - vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); - result = vme->max_protection; - mac_check_vnode_mmap_downgrade(cred, vp, &result); - VOP_UNLOCK(vp, 0, td); - /* - * Find out what maximum protection we may be allowing - * now but a policy needs to get removed. - */ - revokeperms = vme->max_protection & ~result; - if (!revokeperms) - continue; - printf("pid %ld: revoking %s perms from %#lx:%ld " - "(max %s/cur %s)\n", (long)td->td_proc->p_pid, - prot2str(revokeperms), (u_long)vme->start, - (long)(vme->end - vme->start), - prot2str(vme->max_protection), prot2str(vme->protection)); - vm_map_lock_upgrade(map); - /* - * This is the really simple case: if a map has more - * max_protection than is allowed, but it's not being - * actually used (that is, the current protection is - * still allowed), we can just wipe it out and do - * nothing more. - */ - if ((vme->protection & revokeperms) == 0) { - vme->max_protection -= revokeperms; - } else { - if (revokeperms & VM_PROT_WRITE) { - /* - * In the more complicated case, flush out all - * pending changes to the object then turn it - * copy-on-write. - */ - vm_object_reference(object); - vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); - VM_OBJECT_LOCK(object); - vm_object_page_clean(object, - OFF_TO_IDX(offset), - OFF_TO_IDX(offset + vme->end - vme->start + - PAGE_MASK), - OBJPC_SYNC); - VM_OBJECT_UNLOCK(object); - VOP_UNLOCK(vp, 0, td); - vm_object_deallocate(object); - /* - * Why bother if there's no read permissions - * anymore? For the rest, we need to leave - * the write permissions on for COW, or - * remove them entirely if configured to. - */ - if (!mac_mmap_revocation_via_cow) { - vme->max_protection &= ~VM_PROT_WRITE; - vme->protection &= ~VM_PROT_WRITE; - } if ((revokeperms & VM_PROT_READ) == 0) - vme->eflags |= MAP_ENTRY_COW | - MAP_ENTRY_NEEDS_COPY; - } - if (revokeperms & VM_PROT_EXECUTE) { - vme->max_protection &= ~VM_PROT_EXECUTE; - vme->protection &= ~VM_PROT_EXECUTE; - } - if (revokeperms & VM_PROT_READ) { - vme->max_protection = 0; - vme->protection = 0; - } - pmap_protect(map->pmap, vme->start, vme->end, - vme->protection & ~revokeperms); - vm_map_simplify_entry(map, vme); - } - vm_map_lock_downgrade(map); - } - vm_map_unlock_read(map); -} - -/* - * When the subject's label changes, it may require revocation of privilege - * to mapped objects. This can't be done on-the-fly later with a unified - * buffer cache. - */ -static void -mac_relabel_cred(struct ucred *cred, struct label *newlabel) -{ - - MAC_PERFORM(relabel_cred, cred, newlabel); -} - -static int -mac_check_cred_relabel(struct ucred *cred, struct label *newlabel) -{ - int error; - - MAC_CHECK(check_cred_relabel, cred, newlabel); - - return (error); -} - -int -mac_check_cred_visible(struct ucred *u1, struct ucred *u2) -{ - int error; - - if (!mac_enforce_process) - return (0); - - MAC_CHECK(check_cred_visible, u1, u2); - - return (error); -} - -int -mac_check_proc_debug(struct ucred *cred, struct proc *proc) -{ - int error; - - PROC_LOCK_ASSERT(proc, MA_OWNED); - - if (!mac_enforce_process) - return (0); - - MAC_CHECK(check_proc_debug, cred, proc); - - return (error); -} - -int -mac_check_proc_sched(struct ucred *cred, struct proc *proc) -{ - int error; - - PROC_LOCK_ASSERT(proc, MA_OWNED); - - if (!mac_enforce_process) - return (0); - - MAC_CHECK(check_proc_sched, cred, proc); - - return (error); -} - -int -mac_check_proc_signal(struct ucred *cred, struct proc *proc, int signum) -{ - int error; - - PROC_LOCK_ASSERT(proc, MA_OWNED); - - if (!mac_enforce_process) - return (0); - - MAC_CHECK(check_proc_signal, cred, proc, signum); - - return (error); -} - -int -mac_check_proc_wait(struct ucred *cred, struct proc *proc) -{ - int error; - - PROC_LOCK_ASSERT(proc, MA_OWNED); - - if (!mac_enforce_process) - return (0); - - MAC_CHECK(check_proc_wait, cred, proc); - - return (error); -} - int __mac_get_pid(struct thread *td, struct __mac_get_pid_args *uap) { ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_internal.h#7 (text+ko) ==== @@ -57,6 +57,7 @@ extern int mac_late; extern int mac_enforce_process; extern int mac_enforce_sysv; +extern int mac_enforce_vm; #ifndef MAC_ALWAYS_LABEL_MBUF extern int mac_labelmbufs; #endif @@ -100,6 +101,15 @@ * the namespaces, etc, should work for these, so for now, sort by * object type. */ +int mac_check_cred_relabel(struct ucred *cred, struct label *newlabel); +void mac_destroy_cred_label(struct label *label); +int mac_externalize_cred_label(struct label *label, char *elements, + char *outbuf, size_t outbuflen, int flags); +void mac_init_cred_label(struct label *label); +int mac_internalize_cred_label(struct label *label, char *string); +void mac_relabel_cred(struct ucred *cred, struct label *newlabel); + + void mac_copy_pipe_label(struct label *src, struct label *dest); void mac_destroy_pipe_label(struct label *label); int mac_externalize_pipe_label(struct label *label, char *elements, ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_process.c#2 (text+ko) ==== @@ -34,39 +34,26 @@ * SUCH DAMAGE. */ -/* - * Framework for extensible kernel access control. Kernel and userland - * interface to the framework, policy registration and composition. - */ - #include __FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); #include "opt_mac.h" -#include "opt_devfs.h" #include #include -#include #include #include #include #include #include #include -#include #include #include #include -#include -#include #include #include #include #include -#include -#include -#include #include #include @@ -76,66 +63,14 @@ #include -#include - -#include -#include -#include - -#include -#include - #include -#ifdef MAC - -/* - * Declare that the kernel provides MAC support, version 1. This permits - * modules to refuse to be loaded if the necessary support isn't present, - * even if it's pre-boot. - */ -MODULE_VERSION(kernel_mac_support, 1); - -SYSCTL_NODE(_security, OID_AUTO, mac, CTLFLAG_RW, 0, - "TrustedBSD MAC policy controls"); - -#if MAC_MAX_SLOTS > 32 -#error "MAC_MAX_SLOTS too large" -#endif - -static unsigned int mac_max_slots = MAC_MAX_SLOTS; -static unsigned int mac_slot_offsets_free = (1 << MAC_MAX_SLOTS) - 1; -SYSCTL_UINT(_security_mac, OID_AUTO, max_slots, CTLFLAG_RD, - &mac_max_slots, 0, ""); - -/* - * Has the kernel started generating labeled objects yet? All read/write - * access to this variable is serialized during the boot process. Following - * the end of serialization, we don't update this flag; no locking. - */ -int mac_late = 0; - -/* - * Flag to indicate whether or not we should allocate label storage for - * new mbufs. Since most dynamic policies we currently work with don't - * rely on mbuf labeling, try to avoid paying the cost of mtag allocation - * unless specifically notified of interest. One result of this is - * that if a dynamically loaded policy requests mbuf labels, it must - * be able to deal with a NULL label being returned on any mbufs that - * were already in flight when the policy was loaded. Since the policy - * already has to deal with uninitialized labels, this probably won't - * be a problem. Note: currently no locking. Will this be a problem? - */ -#ifndef MAC_ALWAYS_LABEL_MBUF -int mac_labelmbufs = 0; -#endif - int mac_enforce_process = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_process, CTLFLAG_RW, &mac_enforce_process, 0, "Enforce MAC policy on inter-process operations"); TUNABLE_INT("security.mac.enforce_process", &mac_enforce_process); -static int mac_enforce_vm = 1; +int mac_enforce_vm = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); TUNABLE_INT("security.mac.enforce_vm", &mac_enforce_vm); @@ -151,431 +86,17 @@ "copy-on-write semantics, or by removing all write access"); #ifdef MAC_DEBUG -SYSCTL_NODE(_security_mac, OID_AUTO, debug, CTLFLAG_RW, 0, - "TrustedBSD MAC debug info"); - -static int mac_debug_label_fallback = 0; -SYSCTL_INT(_security_mac_debug, OID_AUTO, label_fallback, CTLFLAG_RW, - &mac_debug_label_fallback, 0, "Filesystems should fall back to fs label" - "when label is corrupted."); -TUNABLE_INT("security.mac.debug_label_fallback", - &mac_debug_label_fallback); - -SYSCTL_NODE(_security_mac_debug, OID_AUTO, counters, CTLFLAG_RW, 0, - "TrustedBSD MAC object counters"); - -static unsigned int nmaccreds, nmactemp, nmacprocs; - +static unsigned int nmaccreds, nmacprocs; SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, &nmaccreds, 0, "number of ucreds in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, procs, CTLFLAG_RD, &nmacprocs, 0, "number of procs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, temp, CTLFLAG_RD, - &nmactemp, 0, "number of temporary labels in use"); #endif -static int mac_policy_register(struct mac_policy_conf *mpc); -static int mac_policy_unregister(struct mac_policy_conf *mpc); - static void mac_cred_mmapped_drop_perms_recurse(struct thread *td, struct ucred *cred, struct vm_map *map); -MALLOC_DEFINE(M_MACTEMP, "mactemp", "MAC temporary label storage"); - -/* - * mac_static_policy_list holds a list of policy modules that are not - * loaded while the system is "live", and cannot be unloaded. These - * policies can be invoked without holding the busy count. - * - * mac_policy_list stores the list of dynamic policies. A busy count is - * maintained for the list, stored in mac_policy_busy. The busy count - * is protected by mac_policy_mtx; the list may be modified only - * while the busy count is 0, requiring that the lock be held to - * prevent new references to the list from being acquired. For almost - * all operations, incrementing the busy count is sufficient to - * guarantee consistency, as the list cannot be modified while the - * busy count is elevated. For a few special operations involving a - * change to the list of active policies, the mtx itself must be held. - * A condition variable, mac_policy_cv, is used to signal potential - * exclusive consumers that they should try to acquire the lock if a - * first attempt at exclusive access fails. - */ -#ifndef MAC_STATIC -static struct mtx mac_policy_mtx; -static struct cv mac_policy_cv; -static int mac_policy_count; -#endif -struct mac_policy_list_head mac_policy_list; -struct mac_policy_list_head mac_static_policy_list; - -/* - * We manually invoke WITNESS_WARN() to allow Witness to generate - * warnings even if we don't end up ever triggering the wait at - * run-time. The consumer of the exclusive interface must not hold - * any locks (other than potentially Giant) since we may sleep for - * long (potentially indefinite) periods of time waiting for the - * framework to become quiescent so that a policy list change may - * be made. - */ -void -mac_policy_grab_exclusive(void) -{ - -#ifndef MAC_STATIC - WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, - "mac_policy_grab_exclusive() at %s:%d", __FILE__, __LINE__); - mtx_lock(&mac_policy_mtx); - while (mac_policy_count != 0) - cv_wait(&mac_policy_cv, &mac_policy_mtx); -#endif -} - -void -mac_policy_assert_exclusive(void) -{ - -#ifndef MAC_STATIC - mtx_assert(&mac_policy_mtx, MA_OWNED); - KASSERT(mac_policy_count == 0, - ("mac_policy_assert_exclusive(): not exclusive")); -#endif -} - -void -mac_policy_release_exclusive(void) -{ - -#ifndef MAC_STATIC - KASSERT(mac_policy_count == 0, - ("mac_policy_release_exclusive(): not exclusive")); - mtx_unlock(&mac_policy_mtx); - cv_signal(&mac_policy_cv); -#endif -} - -void -mac_policy_list_busy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count++; - mtx_unlock(&mac_policy_mtx); -#endif -} - -int -mac_policy_list_conditional_busy(void) -{ -#ifndef MAC_STATIC - int ret; - - mtx_lock(&mac_policy_mtx); - if (!LIST_EMPTY(&mac_policy_list)) { - mac_policy_count++; - ret = 1; - } else - ret = 0; - mtx_unlock(&mac_policy_mtx); - return (ret); -#else - return (0); -#endif -} - -void -mac_policy_list_unbusy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count--; - KASSERT(mac_policy_count >= 0, ("MAC_POLICY_LIST_LOCK")); - if (mac_policy_count == 0) - cv_signal(&mac_policy_cv); - mtx_unlock(&mac_policy_mtx); -#endif -} - -/* - * Initialize the MAC subsystem, including appropriate SMP locks. - */ -static void -mac_init(void) -{ - - LIST_INIT(&mac_static_policy_list); - LIST_INIT(&mac_policy_list); - -#ifndef MAC_STATIC - mtx_init(&mac_policy_mtx, "mac_policy_mtx", NULL, MTX_DEF); - cv_init(&mac_policy_cv, "mac_policy_cv"); -#endif -} - -/* - * For the purposes of modules that want to know if they were loaded - * "early", set the mac_late flag once we've processed modules either - * linked into the kernel, or loaded before the kernel startup. - */ -static void -mac_late_init(void) -{ - - mac_late = 1; -} - -/* - * After the policy list has changed, walk the list to update any global - * flags. Currently, we support only one flag, and it's conditionally - * defined; as a result, the entire function is conditional. Eventually, - * the #else case might also iterate across the policies. - */ -static void -mac_policy_updateflags(void) -{ -#ifndef MAC_ALWAYS_LABEL_MBUF - struct mac_policy_conf *tmpc; - int labelmbufs; - - mac_policy_assert_exclusive(); - - labelmbufs = 0; - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - mac_labelmbufs = (labelmbufs != 0); -#endif -} - -/* - * Allow MAC policy modules to register during boot, etc. - */ -int -mac_policy_modevent(module_t mod, int type, void *data) -{ - struct mac_policy_conf *mpc; - int error; - - error = 0; - mpc = (struct mac_policy_conf *) data; - -#ifdef MAC_STATIC - if (mac_late) { - printf("mac_policy_modevent: MAC_STATIC and late\n"); - return (EBUSY); - } -#endif - - switch (type) { - case MOD_LOAD: - if (mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_NOTLATE && - mac_late) { - printf("mac_policy_modevent: can't load %s policy " - "after booting\n", mpc->mpc_name); - error = EBUSY; - break; - } - error = mac_policy_register(mpc); - break; - case MOD_UNLOAD: - /* Don't unregister the module if it was never registered. */ - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) - != 0) - error = mac_policy_unregister(mpc); - else - error = 0; - break; - default: - break; - } - - return (error); -} - -static int -mac_policy_register(struct mac_policy_conf *mpc) -{ - struct mac_policy_conf *tmpc; - int error, slot, static_entry; - - error = 0; - - /* - * We don't technically need exclusive access while !mac_late, - * but hold it for assertion consistency. - */ - mac_policy_grab_exclusive(); - - /* - * If the module can potentially be unloaded, or we're loading - * late, we have to stick it in the non-static list and pay - * an extra performance overhead. Otherwise, we can pay a - * light locking cost and stick it in the static list. - */ - static_entry = (!mac_late && - !(mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_UNLOADOK)); - - if (static_entry) { - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } else { - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } - if (mpc->mpc_field_off != NULL) { - slot = ffs(mac_slot_offsets_free); - if (slot == 0) { - error = ENOMEM; - goto out; - } - slot--; - mac_slot_offsets_free &= ~(1 << slot); - *mpc->mpc_field_off = slot; - } - mpc->mpc_runtime_flags |= MPC_RUNTIME_FLAG_REGISTERED; - - /* - * If we're loading a MAC module after the framework has - * initialized, it has to go into the dynamic list. If - * we're loading it before we've finished initializing, - * it can go into the static list with weaker locker - * requirements. - */ - if (static_entry) - LIST_INSERT_HEAD(&mac_static_policy_list, mpc, mpc_list); - else - LIST_INSERT_HEAD(&mac_policy_list, mpc, mpc_list); - - /* Per-policy initialization. */ - if (mpc->mpc_ops->mpo_init != NULL) - (*(mpc->mpc_ops->mpo_init))(mpc); - mac_policy_updateflags(); - - printf("Security policy loaded: %s (%s)\n", mpc->mpc_fullname, - mpc->mpc_name); - -out: - mac_policy_release_exclusive(); - return (error); -} - -static int -mac_policy_unregister(struct mac_policy_conf *mpc) -{ - - /* - * If we fail the load, we may get a request to unload. Check - * to see if we did the run-time registration, and if not, - * silently succeed. - */ - mac_policy_grab_exclusive(); - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) == 0) { - mac_policy_release_exclusive(); - return (0); - } -#if 0 - /* - * Don't allow unloading modules with private data. - */ - if (mpc->mpc_field_off != NULL) { - MAC_POLICY_LIST_UNLOCK(); - return (EBUSY); - } >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Mon Oct 20 19:08:41 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7461916A4C0; Mon, 20 Oct 2003 19:08:41 -0700 (PDT) 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 39AC316A4B3 for ; Mon, 20 Oct 2003 19:08:41 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9A82243F75 for ; Mon, 20 Oct 2003 19:08:40 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L28eXJ015062 for ; Mon, 20 Oct 2003 19:08:40 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L28e8n015059 for perforce@freebsd.org; Mon, 20 Oct 2003 19:08:40 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 19:08:40 -0700 (PDT) Message-Id: <200310210208.h9L28e8n015059@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 Subject: PERFORCE change 40058 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 02:08:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=40058 Change 40058 by rwatson@rwatson_tislabs on 2003/10/20 19:07:45 Clean up $FreeBSD$. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_fs.c#3 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_net.c#3 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#4 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_posix_sem.c#5 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_process.c#3 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_system.c#3 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_msg.c#3 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_sem.c#3 edit .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_shm.c#3 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_fs.c#3 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); +__FBSDID("$FreeBSD"); #include "opt_mac.h" #include "opt_devfs.h" ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_net.c#3 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); +__FBSDID("$FreeBSD"); #include "opt_mac.h" ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_pipe.c#4 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); +__FBSDID("$FreeBSD"); #include "opt_mac.h" ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_posix_sem.c#5 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); +__FBSDID("$FreeBSD"); #include "opt_mac.h" #include "opt_posix.h" ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_process.c#3 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); +__FBSDID("$FreeBSD"); #include "opt_mac.h" ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_system.c#3 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); +__FBSDID("$FreeBSD"); #include "opt_mac.h" ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_msg.c#3 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); +__FBSDID("$FreeBSD"); #include "opt_mac.h" ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_sem.c#3 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); +__FBSDID("$FreeBSD"); #include "opt_mac.h" ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_sysv_shm.c#3 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); +__FBSDID("$FreeBSD"); #include "opt_mac.h" From owner-p4-projects@FreeBSD.ORG Mon Oct 20 19:24:00 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8CCEE16A4C0; Mon, 20 Oct 2003 19:24:00 -0700 (PDT) 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 6847E16A4B3 for ; Mon, 20 Oct 2003 19:24:00 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A8AFF43F75 for ; Mon, 20 Oct 2003 19:23:59 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L2NxXJ015590 for ; Mon, 20 Oct 2003 19:23:59 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L2NxOT015587 for perforce@freebsd.org; Mon, 20 Oct 2003 19:23:59 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 19:23:59 -0700 (PDT) Message-Id: <200310210223.h9L2NxOT015587@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 Subject: PERFORCE change 40059 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 02:24:01 -0000 X-List-Received-Date: Tue, 21 Oct 2003 02:24:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=40059 Change 40059 by rwatson@rwatson_tislabs on 2003/10/20 19:23:11 Rename mac_fs.c to mac_vfs.c. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_vfs.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Mon Oct 20 19:24:01 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1595E16A4D6; Mon, 20 Oct 2003 19:24:01 -0700 (PDT) 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 C2ACA16A4F2 for ; Mon, 20 Oct 2003 19:24:00 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2A0BC43FD7 for ; Mon, 20 Oct 2003 19:24:00 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L2NxXJ015596 for ; Mon, 20 Oct 2003 19:24:00 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L2NxRk015593 for perforce@freebsd.org; Mon, 20 Oct 2003 19:23:59 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 19:23:59 -0700 (PDT) Message-Id: <200310210223.h9L2NxRk015593@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 Subject: PERFORCE change 40060 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 02:24:01 -0000 http://perforce.freebsd.org/chv.cgi?CH=40060 Change 40060 by rwatson@rwatson_tislabs on 2003/10/20 19:23:23 Remove old name. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_fs.c#4 delete Differences ... From owner-p4-projects@FreeBSD.ORG Mon Oct 20 19:52:36 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A76E316A4C0; Mon, 20 Oct 2003 19:52:36 -0700 (PDT) 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 7F02716A4B3 for ; Mon, 20 Oct 2003 19:52:36 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5579F43FB1 for ; Mon, 20 Oct 2003 19:52:35 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L2qZXJ016777 for ; Mon, 20 Oct 2003 19:52:35 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L2qY27016774 for perforce@freebsd.org; Mon, 20 Oct 2003 19:52:34 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Mon, 20 Oct 2003 19:52:34 -0700 (PDT) Message-Id: <200310210252.h9L2qY27016774@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 Subject: PERFORCE change 40061 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 02:52:37 -0000 http://perforce.freebsd.org/chv.cgi?CH=40061 Change 40061 by rwatson@rwatson_tislabs on 2003/10/20 19:51:39 Rename mac_fs.c to mac_vfs.c Affected files ... .. //depot/projects/trustedbsd/mac/sys/conf/files#92 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/conf/files#92 (text+ko) ==== @@ -1588,7 +1588,7 @@ posix4/p1003_1b.c standard posix4/posix4_mib.c standard kern/uipc_sem.c optional p1003_1b_semaphores -security/mac/mac_fs.c optional mac +security/mac/mac_vfs.c optional mac security/mac/mac_net.c optional mac security/mac/mac_pipe.c optional mac security/mac/mac_posix_sem.c optional mac From owner-p4-projects@FreeBSD.ORG Mon Oct 20 21:54:06 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3201416A4C0; Mon, 20 Oct 2003 21:54:06 -0700 (PDT) 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 0D12216A4B3 for ; Mon, 20 Oct 2003 21:54:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2301143FBF for ; Mon, 20 Oct 2003 21:54:05 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9L4s4XJ028646 for ; Mon, 20 Oct 2003 21:54:04 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9L4s48n028643 for perforce@freebsd.org; Mon, 20 Oct 2003 21:54:04 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Mon, 20 Oct 2003 21:54:04 -0700 (PDT) Message-Id: <200310210454.h9L4s48n028643@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40066 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 04:54:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=40066 Change 40066 by sam@sam_ebb on 2003/10/20 21:53:29 fix merge botch Affected files ... .. //depot/projects/netperf/sys/net80211/ieee80211_input.c#13 edit Differences ... ==== //depot/projects/netperf/sys/net80211/ieee80211_input.c#13 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $NetBSD: ieee80211_input.c,v 1.8 2003/10/18 03:33:51 onoe Exp $ */ +/*- * Copyright (c) 2001 Atsushi Onoe * Copyright (c) 2002, 2003 Sam Leffler, Errno Consulting * All rights reserved. From owner-p4-projects@FreeBSD.ORG Tue Oct 21 07:06:29 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3876616A4C1; Tue, 21 Oct 2003 07:06:29 -0700 (PDT) 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 E683816A4BF for ; Tue, 21 Oct 2003 07:06:28 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6865543F93 for ; Tue, 21 Oct 2003 07:06:28 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9LE6SXJ072974 for ; Tue, 21 Oct 2003 07:06:28 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9LE6RH1072971 for perforce@freebsd.org; Tue, 21 Oct 2003 07:06:27 -0700 (PDT) (envelope-from cvance@nailabs.com) Date: Tue, 21 Oct 2003 07:06:27 -0700 (PDT) Message-Id: <200310211406.h9LE6RH1072971@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 40088 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 14:06:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=40088 Change 40088 by cvance@cvance_osx_laptop on 2003/10/21 07:06:25 Add MAC entrypoints to cdcopy and crdup Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_prot.c#4 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_prot.c#4 (text+ko) ==== @@ -705,6 +705,9 @@ *newcr = *cr; crfree(cr); newcr->cr_ref = 1; +#ifdef MAC + mac_create_cred(cr, newcr); +#endif return (newcr); } @@ -724,6 +727,9 @@ newcr = crget(); *newcr = *cr; newcr->cr_ref = 1; +#ifdef MAC + mac_create_cred(cr, newcr); +#endif return (newcr); } From owner-p4-projects@FreeBSD.ORG Tue Oct 21 08:15:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C98D916A4C0; Tue, 21 Oct 2003 08:15:30 -0700 (PDT) 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 A30F716A4B3 for ; Tue, 21 Oct 2003 08:15:30 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CA82043FB1 for ; Tue, 21 Oct 2003 08:15:29 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9LFFTXJ076839 for ; Tue, 21 Oct 2003 08:15:29 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9LFFT5J076836 for perforce@freebsd.org; Tue, 21 Oct 2003 08:15:29 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Tue, 21 Oct 2003 08:15:29 -0700 (PDT) Message-Id: <200310211515.h9LFFT5J076836@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 Subject: PERFORCE change 40092 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 15:15:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=40092 Change 40092 by rwatson@rwatson_tislabs on 2003/10/21 08:14:55 Integrate C++ism from the FreeBSD main tree to the TrustedBSD base tree to bring the framework components into sync for the merge of the MAC Framework breakout to the main tree. Affected files ... .. //depot/projects/trustedbsd/base/sys/sys/mac.h#33 integrate Differences ... ==== //depot/projects/trustedbsd/base/sys/sys/mac.h#33 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/sys/mac.h,v 1.45 2003/08/29 02:43:57 rwatson Exp $ + * $FreeBSD: src/sys/sys/mac.h,v 1.46 2003/10/02 03:07:51 rwatson Exp $ */ /* * Userland/kernel interface for Mandatory Access Control. @@ -76,6 +76,7 @@ * Extended non-POSIX.1e interfaces that offer additional services * available from the userland and kernel MAC frameworks. */ +__BEGIN_DECLS int mac_execve(char *fname, char **argv, char **envv, mac_t _label); int mac_free(mac_t _label); int mac_from_text(mac_t *_label, const char *_text); @@ -96,6 +97,7 @@ int mac_set_proc(const mac_t _label); int mac_syscall(const char *_policyname, int _call, void *_arg); int mac_to_text(mac_t mac, char **_text); +__END_DECLS #else /* _KERNEL */ From owner-p4-projects@FreeBSD.ORG Tue Oct 21 08:16:32 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7066516A4C0; Tue, 21 Oct 2003 08:16:32 -0700 (PDT) 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 4AAC216A4B3 for ; Tue, 21 Oct 2003 08:16:32 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id BEE7243FBD for ; Tue, 21 Oct 2003 08:16:31 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9LFGVXJ076887 for ; Tue, 21 Oct 2003 08:16:31 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9LFGV26076884 for perforce@freebsd.org; Tue, 21 Oct 2003 08:16:31 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Tue, 21 Oct 2003 08:16:31 -0700 (PDT) Message-Id: <200310211516.h9LFGV26076884@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 Subject: PERFORCE change 40093 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 15:16:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=40093 Change 40093 by rwatson@rwatson_tislabs on 2003/10/21 08:15:44 Integrate C++ism. Affected files ... .. //depot/projects/trustedbsd/mac/sys/sys/mac.h#248 integrate Differences ... ==== //depot/projects/trustedbsd/mac/sys/sys/mac.h#248 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/sys/mac.h,v 1.45 2003/08/29 02:43:57 rwatson Exp $ + * $FreeBSD: src/sys/sys/mac.h,v 1.46 2003/10/02 03:07:51 rwatson Exp $ */ /* * Userland/kernel interface for Mandatory Access Control. @@ -77,6 +77,7 @@ * Extended non-POSIX.1e interfaces that offer additional services * available from the userland and kernel MAC frameworks. */ +__BEGIN_DECLS int mac_execve(char *fname, char **argv, char **envv, mac_t _label); int mac_free(mac_t _label); int mac_from_text(mac_t *_label, const char *_text); @@ -97,6 +98,7 @@ int mac_set_proc(const mac_t _label); int mac_syscall(const char *_policyname, int _call, void *_arg); int mac_to_text(mac_t mac, char **_text); +__END_DECLS #else /* _KERNEL */ From owner-p4-projects@FreeBSD.ORG Tue Oct 21 09:29:04 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BF72516A4C0; Tue, 21 Oct 2003 09:29:03 -0700 (PDT) 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 8180216A4B3 for ; Tue, 21 Oct 2003 09:29:03 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 0802143FAF for ; Tue, 21 Oct 2003 09:29:03 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9LGT2XJ086337 for ; Tue, 21 Oct 2003 09:29:02 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9LGT2BF086334 for perforce@freebsd.org; Tue, 21 Oct 2003 09:29:02 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Tue, 21 Oct 2003 09:29:02 -0700 (PDT) Message-Id: <200310211629.h9LGT2BF086334@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40099 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 16:29:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=40099 Change 40099 by sam@sam_ebb on 2003/10/21 09:28:45 terminate the rx descriptor list with a self-linked entry so high phy error rates don't cause rx overruns Affected files ... .. //depot/projects/netperf/sys/dev/ath/if_ath.c#27 edit Differences ... ==== //depot/projects/netperf/sys/dev/ath/if_ath.c#27 (text+ko) ==== @@ -1544,9 +1544,23 @@ } bus_dmamap_sync(sc->sc_dmat, bf->bf_dmamap, BUS_DMASYNC_PREREAD); - /* setup descriptors */ + /* + * Setup descriptors. For receive we always terminate + * the descriptor list with a self-linked entry so we'll + * not get overrun under high load (as can happen with a + * 5212 when ANI processing enables PHY errors). + * + * To insure the last descriptor is self-linked we create + * each descriptor as self-linked and add it to the end. As + * each additional descriptor is added the previous self-linked + * entry is ``fixed'' naturally. This should be safe even + * if DMA is happening. When processing RX interrupts we + * never remove/process the last, self-linked, entry on the + * descriptor list. This insures the hardware always has + * someplace to write a new frame. + */ ds = bf->bf_desc; - ds->ds_link = 0; + ds->ds_link = bf->bf_daddr; /* link to self */ ds->ds_data = bf->bf_segs[0].ds_addr; ath_hal_setuprxdesc(ah, ds , m->m_len /* buffer size */ @@ -1584,12 +1598,16 @@ if_printf(ifp, "ath_rx_proc: no buffer!\n"); break; } + ds = bf->bf_desc; + if (ds->ds_link == bf->bf_daddr) { + /* NB: never process the self-linked entry at the end */ + break; + } m = bf->bf_m; if (m == NULL) { /* NB: shouldn't happen */ if_printf(ifp, "ath_rx_proc: no mbuf!\n"); continue; } - ds = bf->bf_desc; status = ath_hal_rxprocdesc(ah, ds); #ifdef AR_DEBUG if (ath_debug > 1) From owner-p4-projects@FreeBSD.ORG Tue Oct 21 09:30:06 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4FE5D16A4C0; Tue, 21 Oct 2003 09:30:06 -0700 (PDT) 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 EF78E16A4B3 for ; Tue, 21 Oct 2003 09:30:05 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 28ABB43FBD for ; Tue, 21 Oct 2003 09:30:05 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9LGU4XJ086382 for ; Tue, 21 Oct 2003 09:30:04 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9LGU4cM086379 for perforce@freebsd.org; Tue, 21 Oct 2003 09:30:04 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Tue, 21 Oct 2003 09:30:04 -0700 (PDT) Message-Id: <200310211630.h9LGU4cM086379@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40100 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 16:30:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=40100 Change 40100 by areisse@areisse_ibook on 2003/10/21 09:29:40 some maclabel system calls Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/init_sysent.c#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_mac.c#20 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac.h#4 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/init_sysent.c#2 (text+ko) ==== @@ -311,6 +311,15 @@ int pthread_sigmask(); int __disable_threadsignal(); +#ifdef MAC +int __mac_get_file(); +int __mac_set_file(); +int __mac_get_link(); +int __mac_set_link(); +int __mac_get_proc(); +int __mac_set_proc(); +#endif + /* * System call switch table. */ @@ -715,10 +724,17 @@ syss(utrace,2), /* 335 = utrace */ syss(nosys,0), /* 336 */ syss(nosys,0), /* 337 */ +#ifdef MAC + syss(__mac_get_file,2), /* 338 */ + syss(__mac_get_link,2), /* 339 */ + syss(__mac_get_proc,1), /* 340 */ + syss(__mac_set_proc,1), /* 341 */ +#else syss(nosys,0), /* 338 */ syss(nosys,0), /* 339 */ syss(nosys,0), /* 340 */ syss(nosys,0), /* 341 */ +#endif syss(nosys,0), /* 342 */ syss(nosys,0), /* 343 */ syss(nosys,0), /* 344 */ ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_mac.c#20 (text+ko) ==== @@ -93,6 +93,9 @@ #define PROC_LOCK_ASSERT(x, y) #define M_ASSERTPKTHDR(x) +#define PROC_LOCK(p) +#define PROC_UNLOCK(p) + #if 0 #define ASSERT_VOP_LOCKED(vp,msg) \ if (vp && !VOP_ISLOCKED(vp)) \ @@ -447,7 +450,7 @@ } else \ error = sbuf_printf(&sb, ",%s/", element_name); \ if (error == -1) { \ - error = EINVAL; /* XXX: E2BIG? */ \ + error = ENOMEM; /* XXX: E2BIG? */ \ break; \ } \ claimed = 0; \ @@ -459,7 +462,7 @@ /* Revert last label name. */ \ sbuf_setpos(&sb, savedlen); \ } else if (claimed != 1) { \ - error = EINVAL; /* XXX: ENOLABEL? */ \ + error = ENOENT; /* XXX: ENOLABEL? */ \ break; \ } \ } \ @@ -709,6 +712,7 @@ LIST_INSERT_HEAD(&mac_policy_list, mpc, mpc_list); /* Per-policy initialization. */ + printf ("calling mpo_init for %s\n", mpc->mpc_name); if (mpc->mpc_ops->mpo_init != NULL) (*(mpc->mpc_ops->mpo_init))(mpc); mac_policy_updateflags(); @@ -851,9 +855,11 @@ static void mac_init_cred_label(struct label *label) { - + printf ("mac_init_cred_label %d\n", label); mac_init_label(label); + printf ("mpo_init_cred_label %d\n", label); MAC_PERFORM(init_cred_label, label); + printf ("mac_init_cred_label done %d\n", label); MAC_DEBUG_COUNTER_INC(&nmaccreds); } @@ -1436,8 +1442,9 @@ void mac_create_cred(struct ucred *parent_cred, struct ucred *child_cred) { - + printf ("mpo_create_cred %d %d %d\n", parent_cred, child_cred, 0); MAC_PERFORM(create_cred, parent_cred, child_cred); + printf ("mpo_create_cred done\n"); } #if 0 @@ -3433,9 +3440,16 @@ return (0); } +#endif + +struct __mac_get_pid_args +{ + pid_t pid; + struct mac *mac_p; +}; int -__mac_get_pid(struct thread *td, struct __mac_get_pid_args *uap) +__mac_get_pid(struct proc *td, struct __mac_get_pid_args *uap, register_t *ret) { char *elements, *buffer; struct mac mac; @@ -3456,9 +3470,11 @@ return (ESRCH); tcred = NULL; /* Satisfy gcc. */ - error = p_cansee(td, tproc); - if (error == 0) - tcred = crhold(tproc->p_ucred); + error = 0;/*p_cansee(td, tproc);*/ + if (error == 0) { + tcred = tproc->p_ucred; + crhold(tcred); + } PROC_UNLOCK(tproc); if (error) return (error); @@ -3486,12 +3502,18 @@ /* * MPSAFE */ +struct __mac_get_proc_args +{ + struct mac *mac_p; +}; + int -__mac_get_proc(struct thread *td, struct __mac_get_proc_args *uap) +__mac_get_proc(struct proc *td, struct __mac_get_proc_args *uap, register_t *ret) { char *elements, *buffer; struct mac mac; - int error; + struct ucred *cr; + int error, ulen; error = copyin(uap->mac_p, &mac, sizeof(mac)); if (error) @@ -3502,32 +3524,42 @@ return (error); MALLOC(elements, char *, mac.m_buflen, M_MACTEMP, M_WAITOK); - error = copyinstr(mac.m_string, elements, mac.m_buflen, NULL); + error = copyinstr(mac.m_string, elements, mac.m_buflen, &ulen); if (error) { FREE(elements, M_MACTEMP); return (error); } + PROC_LOCK(td); + cr = td->p_ucred; + crhold(cr); + PROC_UNLOCK(td); + MALLOC(buffer, char *, mac.m_buflen, M_MACTEMP, M_WAITOK | M_ZERO); - error = mac_externalize_cred_label(&td->td_ucred->cr_label, + error = mac_externalize_cred_label(&cr->cr_label, elements, buffer, mac.m_buflen, M_WAITOK); if (error == 0) error = copyout(buffer, mac.m_string, strlen(buffer)+1); FREE(buffer, M_MACTEMP); FREE(elements, M_MACTEMP); + crfree (cr); return (error); } /* * MPSAFE */ +struct __mac_set_proc_args +{ + struct mac *mac_p; +}; + int -__mac_set_proc(struct thread *td, struct __mac_set_proc_args *uap) +__mac_set_proc(struct proc *p, struct __mac_set_proc_args *uap, register_t *ret) { struct ucred *newcred, *oldcred; struct label intlabel; - struct proc *p; struct mac mac; char *buffer; int error; @@ -3555,21 +3587,17 @@ return (error); } - newcred = crget(); - - p = td->td_proc; PROC_LOCK(p); oldcred = p->p_ucred; error = mac_check_cred_relabel(oldcred, &intlabel); if (error) { PROC_UNLOCK(p); - crfree(newcred); goto out; } - setsugid(p); - crcopy(newcred, oldcred); + /*setsugid(p);*/ + newcred = crdup(oldcred); mac_relabel_cred(newcred, &intlabel); p->p_ucred = newcred; @@ -3596,9 +3624,16 @@ return (error); } +#if 0 /* * MPSAFE */ +struct __mac_get_fd_args +{ + int fd; + struct mac *mac_p; +}; + int __mac_get_fd(struct thread *td, struct __mac_get_fd_args *uap) { @@ -3611,7 +3646,7 @@ struct pipe *pipe; #endif short label_type; - int error; + int error, ulen; error = copyin(uap->mac_p, &mac, sizeof(mac)); if (error) @@ -3622,7 +3657,7 @@ return (error); MALLOC(elements, char *, mac.m_buflen, M_MACTEMP, M_WAITOK); - error = copyinstr(mac.m_string, elements, mac.m_buflen, NULL); + error = copyinstr(mac.m_string, elements, mac.m_buflen, &ulen); if (error) { FREE(elements, M_MACTEMP); return (error); @@ -3702,18 +3737,25 @@ return (error); } +#endif /* * MPSAFE */ +struct __mac_get_file_args +{ + char *path_p; + struct mac *mac_p; +}; + int -__mac_get_file(struct thread *td, struct __mac_get_file_args *uap) +__mac_get_file(struct proc *td, struct __mac_get_file_args *uap, register_t *ret) { char *elements, *buffer; struct nameidata nd; struct label intlabel; struct mac mac; - int error; + int error, ulen; error = copyin(uap->mac_p, &mac, sizeof(mac)); if (error) @@ -3724,7 +3766,7 @@ return (error); MALLOC(elements, char *, mac.m_buflen, M_MACTEMP, M_WAITOK); - error = copyinstr(mac.m_string, elements, mac.m_buflen, NULL); + error = copyinstr(mac.m_string, elements, mac.m_buflen, &ulen); if (error) { FREE(elements, M_MACTEMP); return (error); @@ -3745,7 +3787,9 @@ error = mac_externalize_vnode_label(&intlabel, elements, buffer, mac.m_buflen, M_WAITOK); - NDFREE(&nd, 0); + /*NDFREE(&nd, 0);*/ + FREE_ZONE(nd.ni_cnd.cn_pnbuf, nd.ni_cnd.cn_pnlen, M_NAMEI); + mac_destroy_vnode_label(&intlabel); if (error == 0) @@ -3765,6 +3809,12 @@ /* * MPSAFE */ +struct __mac_get_link_args +{ + char *path_p; + struct mac *mac_p; +}; + int __mac_get_link(struct thread *td, struct __mac_get_link_args *uap) { @@ -3772,7 +3822,7 @@ struct nameidata nd; struct label intlabel; struct mac mac; - int error; + int error, ulen; error = copyin(uap->mac_p, &mac, sizeof(mac)); if (error) @@ -3783,7 +3833,7 @@ return (error); MALLOC(elements, char *, mac.m_buflen, M_MACTEMP, M_WAITOK); - error = copyinstr(mac.m_string, elements, mac.m_buflen, NULL); + error = copyinstr(mac.m_string, elements, mac.m_buflen, &ulen); if (error) { FREE(elements, M_MACTEMP); return (error); @@ -3803,7 +3853,8 @@ mac_copy_vnode_label(&nd.ni_vp->v_label, &intlabel); error = mac_externalize_vnode_label(&intlabel, elements, buffer, mac.m_buflen, M_WAITOK); - NDFREE(&nd, 0); + /*NDFREE(&nd, 0);*/ + FREE_ZONE(nd.ni_cnd.cn_pnbuf, nd.ni_cnd.cn_pnlen, M_NAMEI); mac_destroy_vnode_label(&intlabel); if (error == 0) @@ -3820,6 +3871,7 @@ return (error); } +#if 0 /* * MPSAFE */ @@ -3880,7 +3932,7 @@ } vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, td); - error = vn_setlabel(vp, &intlabel, td->td_ucred); + error = vn_setlabel(vp, &intlabel, td->p_ucred); VOP_UNLOCK(vp, 0, td); vn_finished_write(mp); @@ -3921,8 +3973,14 @@ /* * MPSAFE */ +struct __mac_set_file_args +{ + char *path_p; + struct mac *mac_p; +}; + int -__mac_set_file(struct thread *td, struct __mac_set_file_args *uap) +__mac_set_file(struct proc *td, struct __mac_set_file_args *uap, register_t *ret) { struct label intlabel; struct nameidata nd; @@ -3965,7 +4023,7 @@ error = vn_start_write(nd.ni_vp, &mp, V_WAIT | PCATCH); if (error == 0) error = vn_setlabel(nd.ni_vp, &intlabel, - td->td_ucred); + td->p_ucred); vn_finished_write(mp); } @@ -4038,11 +4096,20 @@ return (error); } +#endif + /* * MPSAFE */ +struct mac_syscall_args +{ + char *policy; + int call; + void *arg; +}; + int -mac_syscall(struct thread *td, struct mac_syscall_args *uap) +mac_syscall(struct proc *td, struct mac_syscall_args *uap, register_t *retv) { struct mac_policy_conf *mpc; char target[MAC_MAX_POLICY_NAME]; @@ -4076,14 +4143,12 @@ out: return (error); } -#endif /* !0 TBD/CDV*/ SYSINIT(mac, SI_SUB_MAC, SI_ORDER_FIRST, mac_init, NULL); SYSINIT(mac_late, SI_SUB_MAC_LATE, SI_ORDER_FIRST, mac_late_init, NULL); #else /* !MAC */ -#if 0 /* TBD/CDV*/ int __mac_get_pid(struct thread *td, struct __mac_get_pid_args *uap) { @@ -4153,6 +4218,5 @@ return (ENOSYS); } -#endif /* !0 TBD/CDV*/ #endif /* !MAC */ ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac.h#4 (text+ko) ==== @@ -63,7 +63,7 @@ typedef struct mac *mac_t; -#ifndef _KERNEL +#ifndef KERNEL /* * Location of the userland MAC framework configuration file. mac.conf @@ -86,7 +86,7 @@ int mac_get_pid(pid_t _pid, mac_t _label); int mac_get_proc(mac_t _label); int mac_is_present(const char *_policyname); -int mac_prepare(mac_t *_label, char *_elements); +int mac_prepare(mac_t *_label, const char *_elements); int mac_prepare_file_label(mac_t *_label); int mac_prepare_ifnet_label(mac_t *_label); int mac_prepare_process_label(mac_t *_label); @@ -123,7 +123,9 @@ struct vattr; struct vnode; +#if 0 #include /* XXX acl_type_t */ +#endif struct vop_setlabel_args; @@ -284,12 +286,16 @@ struct componentname *cnp, struct vattr *vap); int mac_check_vnode_delete(struct ucred *cred, struct vnode *dvp, struct vnode *vp, struct componentname *cnp); +#if 0 int mac_check_vnode_deleteacl(struct ucred *cred, struct vnode *vp, acl_type_t type); +#endif int mac_check_vnode_exec(struct ucred *cred, struct vnode *vp, struct image_params *imgp); +#if 0 int mac_check_vnode_getacl(struct ucred *cred, struct vnode *vp, acl_type_t type); +#endif int mac_check_vnode_getextattr(struct ucred *cred, struct vnode *vp, int attrnamespace, const char *name, struct uio *uio); int mac_check_vnode_link(struct ucred *cred, struct vnode *dvp, @@ -313,8 +319,10 @@ int mac_check_vnode_rename_to(struct ucred *cred, struct vnode *dvp, struct vnode *vp, int samedir, struct componentname *cnp); int mac_check_vnode_revoke(struct ucred *cred, struct vnode *vp); +#if 0 int mac_check_vnode_setacl(struct ucred *cred, struct vnode *vp, acl_type_t type, struct acl *acl); +#endif int mac_check_vnode_setextattr(struct ucred *cred, struct vnode *vp, int attrnamespace, const char *name, struct uio *uio); int mac_check_vnode_setflags(struct ucred *cred, struct vnode *vp, From owner-p4-projects@FreeBSD.ORG Tue Oct 21 09:31:09 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 93E4A16A4C0; Tue, 21 Oct 2003 09:31:09 -0700 (PDT) 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 6D8E816A4B3 for ; Tue, 21 Oct 2003 09:31:09 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E603743F93 for ; Tue, 21 Oct 2003 09:31:08 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9LGV8XJ086504 for ; Tue, 21 Oct 2003 09:31:08 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9LGV6ot086500 for perforce@freebsd.org; Tue, 21 Oct 2003 09:31:06 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Tue, 21 Oct 2003 09:31:06 -0700 (PDT) Message-Id: <200310211631.h9LGV6ot086500@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40101 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 16:31:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=40101 Change 40101 by areisse@areisse_ibook on 2003/10/21 09:30:43 libmac library for darwin Affected files ... .. //depot/projects/trustedbsd/sedarwin/libmac/Makefile#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/libmac.a#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac.3#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac.c#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac.conf.5#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac_constant.c#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac_exec.c#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac_free.3#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac_get.3#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac_get.c#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac_is_present_np.3#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac_prepare.3#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac_set.3#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac_set.c#1 add .. //depot/projects/trustedbsd/sedarwin/libmac/mac_text.3#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Tue Oct 21 09:31:10 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 30B1B16A50E; Tue, 21 Oct 2003 09:31:10 -0700 (PDT) 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 F3F2516A504 for ; Tue, 21 Oct 2003 09:31:09 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6759643FBD for ; Tue, 21 Oct 2003 09:31:09 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9LGV9XJ086510 for ; Tue, 21 Oct 2003 09:31:09 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9LGV8s8086507 for perforce@freebsd.org; Tue, 21 Oct 2003 09:31:08 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Tue, 21 Oct 2003 09:31:08 -0700 (PDT) Message-Id: <200310211631.h9LGV8s8086507@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40102 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 16:31:10 -0000 http://perforce.freebsd.org/chv.cgi?CH=40102 Change 40102 by areisse@areisse_ibook on 2003/10/21 09:31:05 getpmac tool for darwin Affected files ... .. //depot/projects/trustedbsd/sedarwin/mac_cmds/getpmac/Makefile#1 add .. //depot/projects/trustedbsd/sedarwin/mac_cmds/getpmac/getpmac#1 add .. //depot/projects/trustedbsd/sedarwin/mac_cmds/getpmac/getpmac.8#1 add .. //depot/projects/trustedbsd/sedarwin/mac_cmds/getpmac/getpmac.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Tue Oct 21 10:28:24 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 76B0216A4C0; Tue, 21 Oct 2003 10:28:24 -0700 (PDT) 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 51C9016A4B3 for ; Tue, 21 Oct 2003 10:28:24 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id CA49243FBD for ; Tue, 21 Oct 2003 10:28:23 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9LHSNXJ090413 for ; Tue, 21 Oct 2003 10:28:23 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9LHSNNJ090407 for perforce@freebsd.org; Tue, 21 Oct 2003 10:28:23 -0700 (PDT) (envelope-from Hrishikesh_Dandekar@NAI.com) Date: Tue, 21 Oct 2003 10:28:23 -0700 (PDT) Message-Id: <200310211728.h9LHSNNJ090407@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to Hrishikesh_Dandekar@NAI.com using -f From: Hrishikesh Dandekar To: Perforce Change Reviews Subject: PERFORCE change 40106 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 17:28:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=40106 Change 40106 by hdandeka@hdandeka_yash on 2003/10/21 10:27:23 fix. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/security/sebsd/sebsd.c#24 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/security/sebsd/sebsd.c#24 (text+ko) ==== @@ -566,8 +566,8 @@ */ if(security_transition_sid(tsec->sid, msqsec->sid, SECCLASS_MSG, &msgsec->sid) < 0) { - printf("Warning: security_transition_sid failed on - create_ipc_msgmsg\n"); + printf("Warning: security_transition_sid failed on" + "create_ipc_msgmsg\n"); printf("Assigning the requesting thread's sid to the msg\n"); msgsec->sid = tsec->sid; } From owner-p4-projects@FreeBSD.ORG Tue Oct 21 12:13:35 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 050D116A4C0; Tue, 21 Oct 2003 12:13:35 -0700 (PDT) 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 D0C4916A4B3 for ; Tue, 21 Oct 2003 12:13:34 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 214FF43F3F for ; Tue, 21 Oct 2003 12:13:34 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9LJDXXJ096622 for ; Tue, 21 Oct 2003 12:13:33 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9LJDXAJ096619 for perforce@freebsd.org; Tue, 21 Oct 2003 12:13:33 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Tue, 21 Oct 2003 12:13:33 -0700 (PDT) Message-Id: <200310211913.h9LJDXAJ096619@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40111 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 19:13:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=40111 Change 40111 by sam@sam_ebb on 2003/10/21 12:12:41 replace 3/5's of the netgraph hook functions with pfil hooks; this is the first step to removing all the global pointer crap from the ethernet processing paths for now keep things under PFIL_HOOKS but if this stuff gets committed then we'll need PFIL_HOOKS in the base system or at least GENERIC Affected files ... .. //depot/projects/netperf/sys/net/ethernet.h#2 edit .. //depot/projects/netperf/sys/net/if_ethersubr.c#6 edit .. //depot/projects/netperf/sys/net/pfil.h#5 edit .. //depot/projects/netperf/sys/netgraph/ng_ether.c#2 edit Differences ... ==== //depot/projects/netperf/sys/net/ethernet.h#2 (text+ko) ==== @@ -359,6 +359,10 @@ extern int ether_output_frame(struct ifnet *, struct mbuf *); extern char *ether_sprintf(const u_int8_t *); +#ifdef PFIL_HOOKS +extern pfil_head ether_pfil_hook; +#endif + #else /* _KERNEL */ #include ==== //depot/projects/netperf/sys/net/if_ethersubr.c#6 (text+ko) ==== @@ -96,9 +96,6 @@ #endif /* NETATALK */ /* netgraph node hooks for ng_ether(4) */ -void (*ng_ether_input_p)(struct ifnet *ifp, struct mbuf **mp); -void (*ng_ether_input_orphan_p)(struct ifnet *ifp, struct mbuf *m); -int (*ng_ether_output_p)(struct ifnet *ifp, struct mbuf **mp); void (*ng_ether_attach_p)(struct ifnet *ifp); void (*ng_ether_detach_p)(struct ifnet *ifp); @@ -111,6 +108,10 @@ bdgtakeifaces_t *bdgtakeifaces_ptr; struct bdg_softc *ifp2sc; +#ifdef PFIL_HOOKS +struct pfil_head ether_pfil_hook; +#endif + static u_char etherbroadcastaddr[ETHER_ADDR_LEN] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff }; @@ -300,20 +301,20 @@ return (0); /* XXX */ } } - - /* Handle ng_ether(4) processing, if any */ - if (ng_ether_output_p != NULL) { - if ((error = (*ng_ether_output_p)(ifp, &m)) != 0) { -bad: if (m != NULL) - m_freem(m); - return (error); - } - if (m == NULL) - return (0); - } - +#ifdef PFIL_HOOKS + /* + * Run through list of hooks for output packets. + */ + error = pfil_run_hooks(ðer_pfil_hook, &m, ifp, PFIL_OUT); + if (error != 0 || m == NULL) + goto bad; +#endif /* Continue with link-layer output */ return ether_output_frame(ifp, m); +bad: + if (m != NULL) + m_freem(m); + return (error); } /* @@ -540,14 +541,15 @@ } ifp->if_ibytes += m->m_pkthdr.len; - - /* Handle ng_ether(4) processing, if any */ - if (ng_ether_input_p != NULL) { - (*ng_ether_input_p)(ifp, &m); - if (m == NULL) - return; - } - +#ifdef PFIL_HOOKS + /* + * Run through list of hooks for input packets. + */ + if (pfil_run_hooks(&inet_pfil_hook, &m, ifp, PFIL_IN) != 0) + return; + if (m == NULL) /* consumed by filter */ + return; +#endif /* Check for bridging mode */ if (BDG_ACTIVE(ifp) ) { struct ifnet *bif; @@ -787,20 +789,20 @@ discard: /* - * Packet is to be discarded. If netgraph is present, - * hand the packet to it for last chance processing; - * otherwise dispose of it. + * Packet is to be discarded. If let hooks have a + * last go at it before we reclaim storage. + */ +#ifdef PFIL_HOOKS + /* + * Put back the ethernet header so hooks have a + * consistent view of inbound packets. */ - if (ng_ether_input_orphan_p != NULL) { - /* - * Put back the ethernet header so netgraph has a - * consistent view of inbound packets. - */ - M_PREPEND(m, ETHER_HDR_LEN, M_DONTWAIT); - (*ng_ether_input_orphan_p)(ifp, m); - return; - } - m_freem(m); + M_PREPEND(m, ETHER_HDR_LEN, M_DONTWAIT); + if (pfil_run_hooks(ðer_pfil_hook, &m, ifp, PFIL_IN_DISCARD) != 0) + m = NULL; /* hook consumed packet, don't free */ +#endif + if (m != NULL) + m_freem(m); } /* @@ -1038,11 +1040,53 @@ } } +static int +ether_modinit(void) +{ +#ifdef PFIL_HOOKS + int error; + + ether_pfil_hook.ph_type = PFIL_TYPE_AF; + ether_pfil_hook.ph_af = AF_LINK; /* XXX */ + error = pfil_head_register(ðer_pfil_hook); + if (error != 0) + printf("%s: Unable to register hook, error %d\n", + __func__, error); + return error; +#else + return 0; +#endif +} + +static int +ether_moddestroy(void) +{ +#ifdef PFIL_HOOKS + (void) pfil_head_unregister(ðer_pfil_hook); +#endif + return 0; +} + +/* + * Module glue. + */ +static int +ether_modevent(module_t mod, int type, void *unused) +{ + switch (type) { + case MOD_LOAD: + return ether_modinit(); + case MOD_UNLOAD: + return ether_moddestroy(); + } + return EINVAL; +} + static moduledata_t ether_mod = { "ether", - NULL, + ether_modevent, 0 }; -DECLARE_MODULE(ether, ether_mod, SI_SUB_PSEUDO, SI_ORDER_ANY); +DECLARE_MODULE(ether, ether_mod, SI_SUB_PSEUDO, SI_ORDER_FIRST); MODULE_VERSION(ether, 1); ==== //depot/projects/netperf/sys/net/pfil.h#5 (text+ko) ==== @@ -54,7 +54,8 @@ #define PFIL_IN 0x00000001 #define PFIL_OUT 0x00000002 -#define PFIL_WAITOK 0x00000004 +#define PFIL_IN_DISCARD 0x00000004 +#define PFIL_WAITOK 0x00000008 #define PFIL_ALL (PFIL_IN|PFIL_OUT) typedef TAILQ_HEAD(pfil_list, packet_filter_hook) pfil_list_t; ==== //depot/projects/netperf/sys/netgraph/ng_ether.c#2 (text+ko) ==== @@ -57,6 +57,7 @@ #include #include #include +#include #include #include @@ -81,16 +82,11 @@ typedef struct private *priv_p; /* Hook pointers used by if_ethersubr.c to callback to netgraph */ -extern void (*ng_ether_input_p)(struct ifnet *ifp, struct mbuf **mp); -extern void (*ng_ether_input_orphan_p)(struct ifnet *ifp, struct mbuf *m); -extern int (*ng_ether_output_p)(struct ifnet *ifp, struct mbuf **mp); extern void (*ng_ether_attach_p)(struct ifnet *ifp); extern void (*ng_ether_detach_p)(struct ifnet *ifp); /* Functional hooks called from if_ethersubr.c */ -static void ng_ether_input(struct ifnet *ifp, struct mbuf **mp); -static void ng_ether_input_orphan(struct ifnet *ifp, struct mbuf *m); -static int ng_ether_output(struct ifnet *ifp, struct mbuf **mp); +static int ng_ether_pfil(void *, struct mbuf **, struct ifnet *, int); static void ng_ether_attach(struct ifnet *ifp); static void ng_ether_detach(struct ifnet *ifp); @@ -205,43 +201,34 @@ ******************************************************************/ /* - * Handle a packet that has come in on an interface. We get to + * Handle a packet through an interface. We get to * look at it here before any upper layer protocols do. - * - * NOTE: this function will get called at splimp() */ static void -ng_ether_input(struct ifnet *ifp, struct mbuf **mp) +ng_ether_pfil(void *arg, struct mbuf **mp, struct ifnet *ifp, int dir) { const node_p node = IFP2NG(ifp); const priv_p priv = NG_NODE_PRIVATE(node); + int error = 0; - /* If "lower" hook not connected, let packet continue */ - if (priv->lower == NULL || priv->lowerOrphan) - return; - ng_ether_input2(node, mp); -} - -/* - * Handle a packet that has come in on an interface, and which - * does not match any of our known protocols (an ``orphan''). - * - * NOTE: this function will get called at splimp() - */ -static void -ng_ether_input_orphan(struct ifnet *ifp, struct mbuf *m) -{ - const node_p node = IFP2NG(ifp); - const priv_p priv = NG_NODE_PRIVATE(node); - - /* If "orphan" hook not connected, let packet continue */ - if (priv->lower == NULL || !priv->lowerOrphan) { - m_freem(m); - return; + switch (dir) { + case PFIL_IN: /* inbound packet */ + /* If "lower" hook not connected, let packet continue */ + if (priv->lower != NULL && !priv->lowerOrphan) + ng_ether_input2(node, mp); + break; + case PFIL_OUT: /* outbound packet */ + /* If "upper" hook not connected, let packet continue */ + if (priv->upper != NULL) + NG_SEND_DATA_ONLY(error, priv->upper, *mp); + break; + case PFIL_IN_DISCARD: /* inbound discard */ + /* If "orphan" hook not connected, let packet continue */ + if (priv->lower != NULL && priv->lowerOrphan) { + ng_ether_input2(node, &m); + break; } - ng_ether_input2(node, &m); - if (m != NULL) - m_freem(m); + return (error); } /* @@ -263,26 +250,6 @@ } /* - * Handle a packet that is going out on an interface. - * The Ethernet header is already attached to the mbuf. - */ -static int -ng_ether_output(struct ifnet *ifp, struct mbuf **mp) -{ - const node_p node = IFP2NG(ifp); - const priv_p priv = NG_NODE_PRIVATE(node); - int error = 0; - - /* If "upper" hook not connected, let packet continue */ - if (priv->upper == NULL) - return (0); - - /* Send it out "upper" hook */ - NG_SEND_DATA_ONLY(error, priv->upper, *mp); - return (error); -} - -/* * A new Ethernet interface has been attached. * Create a new node for it, etc. */ @@ -721,11 +688,12 @@ error = EEXIST; break; } + error = pfil_add_hook(ng_ether_pfil, 0, + PFIL_ALL | PFIL_IN_DISCARD, ðer_pfil_head); + if (error) + break; ng_ether_attach_p = ng_ether_attach; ng_ether_detach_p = ng_ether_detach; - ng_ether_output_p = ng_ether_output; - ng_ether_input_p = ng_ether_input; - ng_ether_input_orphan_p = ng_ether_input_orphan; /* Create nodes for any already-existing Ethernet interfaces */ IFNET_RLOCK(); @@ -748,11 +716,10 @@ */ /* Unregister function hooks */ + (void) pfil_remove_hook(ng_ether_pfil, 0, + PFIL_ALL | PFIL_IN_DISCARD, ðer_pfil_head); ng_ether_attach_p = NULL; ng_ether_detach_p = NULL; - ng_ether_output_p = NULL; - ng_ether_input_p = NULL; - ng_ether_input_orphan_p = NULL; break; default: From owner-p4-projects@FreeBSD.ORG Tue Oct 21 15:19:29 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 8FC8D16A4C0; Tue, 21 Oct 2003 15:19:29 -0700 (PDT) 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 6A01F16A4B3 for ; Tue, 21 Oct 2003 15:19:29 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ACB4E43F3F for ; Tue, 21 Oct 2003 15:19:28 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9LMJSXJ013168 for ; Tue, 21 Oct 2003 15:19:28 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9LMJSW9013165 for perforce@freebsd.org; Tue, 21 Oct 2003 15:19:28 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Tue, 21 Oct 2003 15:19:28 -0700 (PDT) Message-Id: <200310212219.h9LMJSW9013165@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40125 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Oct 2003 22:19:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=40125 Change 40125 by sam@sam_ebb on 2003/10/21 15:19:09 apply bandaid to locking problem in divert sockets Affected files ... .. //depot/projects/netperf/sys/netinet/ip_divert.c#6 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_divert.c#6 (text+ko) ==== @@ -219,6 +219,20 @@ m->m_pkthdr.rcvif->if_unit); } + /* + * XXX sbappendaddr must be protected by Giant until + * we have locking at the socket layer. When entered + * from below we come in w/o Giant and must take it + * here. Unfortunately we cannot tell whether we're + * entering from above (already holding Giant), + * below (potentially without Giant), or otherwise + * (e.g. from tcp_syncache through a timeout) so we + * have to grab it regardless. This causes a LOR with + * the tcp lock, at least, and possibly others. For + * the moment we're ignoring this. Once sockets are + * locked this cruft can be removed. + */ + mtx_lock(&Giant); /* XXX */ /* Put packet on socket queue, if any */ sa = NULL; nport = htons((u_int16_t)port); @@ -240,6 +254,7 @@ INP_UNLOCK(inp); } INP_INFO_RUNLOCK(&divcbinfo); + mtx_unlock(&Giant); /* XXX */ if (sa == NULL) { m_freem(m); ipstat.ips_noproto++; From owner-p4-projects@FreeBSD.ORG Wed Oct 22 07:39:38 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7952F16A4C0; Wed, 22 Oct 2003 07:39:38 -0700 (PDT) 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 3DD8416A4B3 for ; Wed, 22 Oct 2003 07:39:38 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6D1FD43FA3 for ; Wed, 22 Oct 2003 07:39:37 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9MEdaXJ090519 for ; Wed, 22 Oct 2003 07:39:36 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9MEdZIb090516 for perforce@freebsd.org; Wed, 22 Oct 2003 07:39:35 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Wed, 22 Oct 2003 07:39:35 -0700 (PDT) Message-Id: <200310221439.h9MEdZIb090516@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40156 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Oct 2003 14:39:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=40156 Change 40156 by areisse@areisse_ibook on 2003/10/22 07:38:40 branch checkpolicy for sedarwin Affected files ... .. //depot/projects/trustedbsd/sedarwin/sebsd_cmds/checkpolicy/checkpolicy.c#1 branch .. //depot/projects/trustedbsd/sedarwin/sebsd_cmds/checkpolicy/checkpolicy.h#1 branch .. //depot/projects/trustedbsd/sedarwin/sebsd_cmds/checkpolicy/policy_parse.y#1 branch .. //depot/projects/trustedbsd/sedarwin/sebsd_cmds/checkpolicy/policy_scan.l#1 branch .. //depot/projects/trustedbsd/sedarwin/sebsd_cmds/checkpolicy/write.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Wed Oct 22 08:34:06 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3F84416A4C1; Wed, 22 Oct 2003 08:34:06 -0700 (PDT) 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 0B77016A4B3 for ; Wed, 22 Oct 2003 08:34:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7C26F43F3F for ; Wed, 22 Oct 2003 08:34:04 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9MFY4XJ094131 for ; Wed, 22 Oct 2003 08:34:04 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9MFY3nl094128 for perforce@freebsd.org; Wed, 22 Oct 2003 08:34:03 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Wed, 22 Oct 2003 08:34:03 -0700 (PDT) Message-Id: <200310221534.h9MFY3nl094128@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40164 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Oct 2003 15:34:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=40164 Change 40164 by areisse@areisse_ibook on 2003/10/22 08:33:50 branch libsebsd for sedarwin Affected files ... .. //depot/projects/trustedbsd/sedarwin/libsebsd/Makefile#1 add .. //depot/projects/trustedbsd/sedarwin/libsebsd/context.c#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/get_default_type.c#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/get_ordered_context_list.c#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/getseccontext.c#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/query_user_context.c#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/sebsd.h#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/sebsd_context.h#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/sebsd_fs.h#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/sebsd_proc.h#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/sebsd_ss.h#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/security_change_context.c#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/security_compute_av.c#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/security_get_user_contexts.c#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/string_to_security_class.c#1 branch .. //depot/projects/trustedbsd/sedarwin/libsebsd/system.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Wed Oct 22 09:05:48 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BC68B16A4C0; Wed, 22 Oct 2003 09:05:47 -0700 (PDT) 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 907A616A4B3 for ; Wed, 22 Oct 2003 09:05:47 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B0F8C43FD7 for ; Wed, 22 Oct 2003 09:05:45 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9MG5jXJ002014 for ; Wed, 22 Oct 2003 09:05:45 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9MG5ifv002011 for perforce@freebsd.org; Wed, 22 Oct 2003 09:05:44 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Wed, 22 Oct 2003 09:05:44 -0700 (PDT) Message-Id: <200310221605.h9MG5ifv002011@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40167 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Oct 2003 16:05:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=40167 Change 40167 by sam@sam_ebb on 2003/10/22 09:05:25 IFC @ 40166 Affected files ... .. //depot/projects/netperf/sys/amd64/amd64/amd64_mem.c#3 integrate .. //depot/projects/netperf/sys/amd64/amd64/tsc.c#4 integrate .. //depot/projects/netperf/sys/compat/linux/linux_misc.c#5 integrate .. //depot/projects/netperf/sys/compat/linux/linux_uid16.c#2 integrate .. //depot/projects/netperf/sys/contrib/ngatm/FREEBSD-upgrade#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/misc/unimsg_common.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/saal/saal_sscfu.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/saal/saal_sscop.c#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/saal/sscfu.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/saal/sscfudef.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/saal/sscfupriv.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/saal/sscop.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/saal/sscopdef.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/saal/sscoppriv.h#1 branch .. //depot/projects/netperf/sys/contrib/ngatm/netnatm/unimsg.h#1 branch .. //depot/projects/netperf/sys/dev/aac/aac_disk.c#4 integrate .. //depot/projects/netperf/sys/dev/ata/ata-all.h#4 integrate .. //depot/projects/netperf/sys/dev/ata/ata-chipset.c#6 integrate .. //depot/projects/netperf/sys/dev/ata/ata-disk.c#5 integrate .. //depot/projects/netperf/sys/dev/ata/ata-dma.c#8 integrate .. //depot/projects/netperf/sys/dev/ata/ata-lowlevel.c#10 integrate .. //depot/projects/netperf/sys/dev/ata/ata-pci.c#6 integrate .. //depot/projects/netperf/sys/dev/ath/if_ath.c#28 integrate .. //depot/projects/netperf/sys/dev/isp/isp_freebsd.h#3 integrate .. //depot/projects/netperf/sys/dev/pci/pci_pci.c#4 integrate .. //depot/projects/netperf/sys/geom/geom_io.c#7 integrate .. //depot/projects/netperf/sys/i386/i386/i686_mem.c#4 integrate .. //depot/projects/netperf/sys/i386/i386/tsc.c#5 integrate .. //depot/projects/netperf/sys/i386/pci/pci_cfgreg.c#4 integrate .. //depot/projects/netperf/sys/ia64/ia64/machdep.c#13 integrate .. //depot/projects/netperf/sys/ia64/include/proc.h#2 integrate .. //depot/projects/netperf/sys/kern/init_sysent.c#4 integrate .. //depot/projects/netperf/sys/kern/kern_exec.c#7 integrate .. //depot/projects/netperf/sys/kern/kern_mib.c#3 integrate .. //depot/projects/netperf/sys/kern/kern_poll.c#6 integrate .. //depot/projects/netperf/sys/kern/sched_ule.c#11 integrate .. //depot/projects/netperf/sys/kern/subr_mbuf.c#7 integrate .. //depot/projects/netperf/sys/kern/subr_smp.c#2 integrate .. //depot/projects/netperf/sys/kern/subr_witness.c#4 integrate .. //depot/projects/netperf/sys/kern/sys_pipe.c#8 integrate .. //depot/projects/netperf/sys/kern/syscalls.c#4 integrate .. //depot/projects/netperf/sys/kern/syscalls.master#4 integrate .. //depot/projects/netperf/sys/kern/sysv_msg.c#3 integrate .. //depot/projects/netperf/sys/kern/sysv_sem.c#3 integrate .. //depot/projects/netperf/sys/kern/sysv_shm.c#3 integrate .. //depot/projects/netperf/sys/kern/uipc_socket.c#4 integrate .. //depot/projects/netperf/sys/kern/uipc_socket2.c#4 integrate .. //depot/projects/netperf/sys/kern/vfs_aio.c#3 integrate .. //depot/projects/netperf/sys/kern/vfs_bio.c#11 integrate .. //depot/projects/netperf/sys/kern/vfs_init.c#2 integrate .. //depot/projects/netperf/sys/net/if.c#8 integrate .. //depot/projects/netperf/sys/netgraph/ng_base.c#2 integrate .. //depot/projects/netperf/sys/netgraph/ng_message.h#2 integrate .. //depot/projects/netperf/sys/netinet/tcp_subr.c#4 integrate .. //depot/projects/netperf/sys/netinet/tcp_syncache.c#5 integrate .. //depot/projects/netperf/sys/netinet6/ah_core.c#6 integrate .. //depot/projects/netperf/sys/netinet6/esp_input.c#3 integrate .. //depot/projects/netperf/sys/netinet6/frag6.c#5 integrate .. //depot/projects/netperf/sys/netinet6/icmp6.c#8 integrate .. //depot/projects/netperf/sys/netinet6/in6.c#10 integrate .. //depot/projects/netperf/sys/netinet6/in6.h#3 integrate .. //depot/projects/netperf/sys/netinet6/in6_proto.c#6 integrate .. //depot/projects/netperf/sys/netinet6/in6_src.c#7 integrate .. //depot/projects/netperf/sys/netinet6/in6_var.h#4 integrate .. //depot/projects/netperf/sys/netinet6/ip6_forward.c#9 integrate .. //depot/projects/netperf/sys/netinet6/ip6_input.c#11 integrate .. //depot/projects/netperf/sys/netinet6/ip6_mroute.c#5 integrate .. //depot/projects/netperf/sys/netinet6/ip6_output.c#16 integrate .. //depot/projects/netperf/sys/netinet6/ip6_var.h#6 integrate .. //depot/projects/netperf/sys/netinet6/ipsec.c#5 integrate .. //depot/projects/netperf/sys/netinet6/mld6.c#3 integrate .. //depot/projects/netperf/sys/netinet6/nd6_nbr.c#5 integrate .. //depot/projects/netperf/sys/netinet6/scope6.c#5 integrate .. //depot/projects/netperf/sys/pccard/pcic.c#3 integrate .. //depot/projects/netperf/sys/pccard/pcic_pci.c#3 integrate .. //depot/projects/netperf/sys/security/mac_lomac/mac_lomac.c#3 integrate .. //depot/projects/netperf/sys/sys/buf.h#5 integrate .. //depot/projects/netperf/sys/sys/syscall.h#4 integrate .. //depot/projects/netperf/sys/sys/syscall.mk#4 integrate .. //depot/projects/netperf/sys/sys/sysctl.h#4 integrate .. //depot/projects/netperf/sys/sys/sysproto.h#4 integrate .. //depot/projects/netperf/sys/vm/vm_page.c#9 integrate .. //depot/projects/netperf/sys/vm/vm_page.h#5 integrate .. //depot/projects/netperf/sys/vm/vm_pageout.c#9 integrate Differences ... ==== //depot/projects/netperf/sys/amd64/amd64/amd64_mem.c#3 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/amd64_mem.c,v 1.21 2003/08/23 00:27:58 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/amd64_mem.c,v 1.22 2003/10/21 18:28:33 silby Exp $"); #include #include @@ -65,7 +65,7 @@ static int mtrrs_disabled; TUNABLE_INT("machdep.disable_mtrrs", &mtrrs_disabled); -SYSCTL_INT(_machdep, OID_AUTO, disable_mtrrs, CTLFLAG_RD, +SYSCTL_INT(_machdep, OID_AUTO, disable_mtrrs, CTLFLAG_RDTUN, &mtrrs_disabled, 0, "Disable amd64 MTRRs."); static void amd64_mrinit(struct mem_range_softc *sc); ==== //depot/projects/netperf/sys/amd64/amd64/tsc.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/tsc.c,v 1.203 2003/09/23 00:18:45 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/tsc.c,v 1.204 2003/10/21 18:28:33 silby Exp $"); #include "opt_clock.h" @@ -46,7 +46,7 @@ #ifdef SMP static int smp_tsc; -SYSCTL_INT(_kern_timecounter, OID_AUTO, smp_tsc, CTLFLAG_RD, &smp_tsc, 0, +SYSCTL_INT(_kern_timecounter, OID_AUTO, smp_tsc, CTLFLAG_RDTUN, &smp_tsc, 0, "Indicates whether the TSC is safe to use in SMP mode"); TUNABLE_INT("kern.timecounter.smp_tsc", &smp_tsc); #endif ==== //depot/projects/netperf/sys/compat/linux/linux_misc.c#5 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_misc.c,v 1.148 2003/09/07 13:03:13 bde Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_misc.c,v 1.149 2003/10/21 11:00:33 tjr Exp $"); #include "opt_mac.h" @@ -989,7 +989,7 @@ struct proc *p; ngrp = args->gidsetsize; - if (ngrp >= NGROUPS) + if (ngrp < 0 || ngrp >= NGROUPS) return (EINVAL); error = copyin(args->grouplist, linux_gidset, ngrp * sizeof(l_gid_t)); if (error) ==== //depot/projects/netperf/sys/compat/linux/linux_uid16.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_uid16.c,v 1.11 2003/06/10 21:27:40 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_uid16.c,v 1.12 2003/10/21 11:00:33 tjr Exp $"); #include #include @@ -100,7 +100,7 @@ #endif ngrp = args->gidsetsize; - if (ngrp >= NGROUPS) + if (ngrp < 0 || ngrp >= NGROUPS) return (EINVAL); error = copyin(args->gidset, linux_gidset, ngrp * sizeof(l_gid16_t)); if (error) ==== //depot/projects/netperf/sys/dev/aac/aac_disk.c#4 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/aac/aac_disk.c,v 1.35 2003/08/24 17:48:01 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/aac/aac_disk.c,v 1.36 2003/10/21 18:28:33 silby Exp $"); #include "opt_aac.h" @@ -91,7 +91,7 @@ TUNABLE_INT("hw.aac.iosize_max", &aac_iosize_max); SYSCTL_DECL(_hw_aac); -SYSCTL_UINT(_hw_aac, OID_AUTO, iosize_max, CTLFLAG_RD, &aac_iosize_max, 0, +SYSCTL_UINT(_hw_aac, OID_AUTO, iosize_max, CTLFLAG_RDTUN, &aac_iosize_max, 0, "Max I/O size per transfer to an array"); /* ==== //depot/projects/netperf/sys/dev/ata/ata-all.h#4 (text+ko) ==== @@ -25,7 +25,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/sys/dev/ata/ata-all.h,v 1.65 2003/08/25 11:13:04 sos Exp $ + * $FreeBSD: src/sys/dev/ata/ata-all.h,v 1.66 2003/10/21 19:20:36 sos Exp $ */ /* ATA register defines */ @@ -247,14 +247,16 @@ bus_addr_t mdmatab; /* bus address of dmatab */ u_int32_t alignment; /* DMA engine alignment */ u_int32_t max_iosize; /* DMA engine max IO size */ + u_int32_t cur_iosize; /* DMA engine current IO size */ int flags; #define ATA_DMA_ACTIVE 0x01 /* DMA transfer in progress */ #define ATA_DMA_READ 0x02 /* transaction is a read */ void (*alloc)(struct ata_channel *ch); void (*free)(struct ata_channel *ch); - int (*setup)(struct ata_device *atadev, caddr_t data, int32_t count); - int (*start)(struct ata_channel *ch, caddr_t data, int32_t count, int dir); + int (*load)(struct ata_device *atadev, caddr_t data, int32_t count,int dir); + int (*unload)(struct ata_channel *ch); + int (*start)(struct ata_channel *ch); int (*stop)(struct ata_channel *ch); }; ==== //depot/projects/netperf/sys/dev/ata/ata-chipset.c#6 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.39 2003/09/08 13:55:05 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.41 2003/10/21 19:20:36 sos Exp $"); #include "opt_ata.h" #include @@ -90,10 +90,10 @@ static void ata_promise_mio_intr(void *); static void ata_promise_setmode(struct ata_device *, int); static void ata_promise_new_dmainit(struct ata_channel *); -static int ata_promise_new_dmastart(struct ata_channel *, caddr_t, int32_t,int); +static int ata_promise_new_dmastart(struct ata_channel *); static int ata_promise_new_dmastop(struct ata_channel *); static void ata_promise_mio_dmainit(struct ata_channel *); -static int ata_promise_mio_dmastart(struct ata_channel *, caddr_t, int32_t,int); +static int ata_promise_mio_dmastart(struct ata_channel *); static int ata_promise_mio_dmastop(struct ata_channel *); static int ata_serverworks_chipinit(device_t); static void ata_serverworks_setmode(struct ata_device *, int); @@ -508,8 +508,10 @@ u_int32_t udmatiming[] = { 0x00921250, 0x00911140, 0x00911030 }; int error; + atadev->channel->dma->alignment = 16; + atadev->channel->dma->max_iosize = 63 * 1024; + mode = ata_limit_mode(atadev, mode, ATA_UDMA2); - atadev->channel->dma->alignment = 16; error = ata_controlcmd(atadev, ATA_SETFEATURES, ATA_SF_SETXFER, 0, mode); @@ -955,7 +957,7 @@ u_int32_t udmatiming[] = { 0x80921250, 0x80911140, 0x80911030 }; int error; - atadev->channel->dma->alignment = 4; + atadev->channel->dma->alignment = 16; atadev->channel->dma->max_iosize = 63 * 1024; mode = ata_limit_mode(atadev, mode, ATA_UDMA2); @@ -1358,27 +1360,25 @@ } static int -ata_promise_new_dmastart(struct ata_channel *ch, - caddr_t data, int32_t count, int dir) +ata_promise_new_dmastart(struct ata_channel *ch) { struct ata_pci_controller *ctlr = device_get_softc(device_get_parent(ch->dev)); - int error; - if ((error = ata_dmastart(ch, data, count, dir))) - return error; if (ch->flags & ATA_48BIT_ACTIVE) { ATA_OUTB(ctlr->r_io1, 0x11, ATA_INB(ctlr->r_io1, 0x11) | (ch->unit ? 0x08 : 0x02)); ATA_OUTL(ctlr->r_io1, 0x20, - (dir ? 0x05000000 : 0x06000000) | (count >> 1)); + ((ch->dma->flags & ATA_DMA_READ) ? 0x05000000 : 0x06000000) | + (ch->dma->cur_iosize >> 1)); } ATA_IDX_OUTB(ch, ATA_BMSTAT_PORT, (ATA_IDX_INB(ch, ATA_BMSTAT_PORT) | (ATA_BMSTAT_INTERRUPT | ATA_BMSTAT_ERROR))); ATA_IDX_OUTL(ch, ATA_BMDTP_PORT, ch->dma->mdmatab); ATA_IDX_OUTB(ch, ATA_BMCMD_PORT, - (dir ? ATA_BMCMD_WRITE_READ : 0) | ATA_BMCMD_START_STOP); - return error; + ((ch->dma->flags & ATA_DMA_READ) ? ATA_BMCMD_WRITE_READ : 0) | + ATA_BMCMD_START_STOP); + return 0; } static int @@ -1397,7 +1397,6 @@ ATA_IDX_OUTB(ch, ATA_BMCMD_PORT, ATA_IDX_INB(ch, ATA_BMCMD_PORT) & ~ATA_BMCMD_START_STOP); ATA_IDX_OUTB(ch, ATA_BMSTAT_PORT, ATA_BMSTAT_INTERRUPT | ATA_BMSTAT_ERROR); - ata_dmastop(ch); return error; } @@ -1412,19 +1411,13 @@ } static int -ata_promise_mio_dmastart(struct ata_channel *ch, - caddr_t data, int32_t count, int dir) +ata_promise_mio_dmastart(struct ata_channel *ch) { - int error; - - if ((error = ata_dmastart(ch, data, count, dir))) - return error; - ATA_IDX_OUTL(ch, ATA_BMDTP_PORT, ch->dma->mdmatab); ATA_IDX_OUTL(ch, ATA_BMCTL_PORT, (ATA_IDX_INL(ch, ATA_BMCTL_PORT) & ~0x000000c0) | - ((dir) ? 0x00000080 : 0x000000c0)); - return error; + ((ch->dma->flags & ATA_DMA_READ) ? 0x00000080 : 0x000000c0)); + return 0; } static int @@ -1432,7 +1425,7 @@ { ATA_IDX_OUTL(ch, ATA_BMCTL_PORT, ATA_IDX_INL(ch, ATA_BMCTL_PORT) & ~0x00000080); - return ata_dmastop(ch); + return 0; } /* ==== //depot/projects/netperf/sys/dev/ata/ata-disk.c#5 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-disk.c,v 1.160 2003/10/12 12:35:44 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-disk.c,v 1.161 2003/10/21 18:28:34 silby Exp $"); #include "opt_ata.h" #include @@ -69,9 +69,9 @@ /* sysctl vars */ SYSCTL_DECL(_hw_ata); -SYSCTL_INT(_hw_ata, OID_AUTO, ata_dma, CTLFLAG_RD, &ata_dma, 0, +SYSCTL_INT(_hw_ata, OID_AUTO, ata_dma, CTLFLAG_RDTUN, &ata_dma, 0, "ATA disk DMA mode control"); -SYSCTL_INT(_hw_ata, OID_AUTO, wc, CTLFLAG_RD, &ata_wc, 0, +SYSCTL_INT(_hw_ata, OID_AUTO, wc, CTLFLAG_RDTUN, &ata_wc, 0, "ATA disk write caching"); void ==== //depot/projects/netperf/sys/dev/ata/ata-dma.c#8 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-dma.c,v 1.121 2003/10/07 13:48:55 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-dma.c,v 1.122 2003/10/21 19:20:37 sos Exp $"); #include #include @@ -49,7 +49,8 @@ static void ata_dmaalloc(struct ata_channel *); static void ata_dmafree(struct ata_channel *); static void ata_dmasetupd_cb(void *, bus_dma_segment_t *, int, int); -static int ata_dmasetup(struct ata_device *, caddr_t, int32_t); +static int ata_dmaload(struct ata_device *, caddr_t, int32_t, int); +static int ata_dmaunload(struct ata_channel *); /* local vars */ static MALLOC_DEFINE(M_ATADMA, "ATA DMA", "ATA driver DMA"); @@ -70,9 +71,8 @@ if ((ch->dma = malloc(sizeof(struct ata_dma), M_ATADMA, M_NOWAIT|M_ZERO))) { ch->dma->alloc = ata_dmaalloc; ch->dma->free = ata_dmafree; - ch->dma->setup = ata_dmasetup; - ch->dma->start = ata_dmastart; - ch->dma->stop = ata_dmastop; + ch->dma->load = ata_dmaload; + ch->dma->unload = ata_dmaunload; ch->dma->alignment = 2; ch->dma->max_iosize = 64*1024; } @@ -194,38 +194,35 @@ } static int -ata_dmasetup(struct ata_device *atadev, caddr_t data, int32_t count) +ata_dmaload(struct ata_device *atadev, caddr_t data, int32_t count, int dir) { struct ata_channel *ch = atadev->channel; + struct ata_dmasetup_data_cb_args cba; - if (((uintptr_t)data & (ch->dma->alignment - 1)) || - (count & (ch->dma->alignment - 1))) { - ata_prtdev(atadev, "FAILURE - non aligned DMA transfer attempted\n"); + if (ch->dma->flags & ATA_DMA_ACTIVE) { + ata_prtdev(atadev, "FAILURE - already active DMA on this device\n"); return -1; } if (!count) { ata_prtdev(atadev, "FAILURE - zero length DMA transfer attempted\n"); return -1; } + if (((uintptr_t)data & (ch->dma->alignment - 1)) || + (count & (ch->dma->alignment - 1))) { + ata_prtdev(atadev, "FAILURE - non aligned DMA transfer attempted\n"); + return -1; + } if (count > ch->dma->max_iosize) { ata_prtdev(atadev, "FAILURE - oversized DMA transfer attempted %d > %d\n", count, ch->dma->max_iosize); return -1; } - return 0; -} -int -ata_dmastart(struct ata_channel *ch, caddr_t data, int32_t count, int dir) -{ - struct ata_dmasetup_data_cb_args cba; + cba.dmatab = ch->dma->dmatab; - if (ch->dma->flags & ATA_DMA_ACTIVE) - panic("ata_dmasetup: transfer active on this device!"); + bus_dmamap_sync(ch->dma->cdmatag, ch->dma->cdmamap, BUS_DMASYNC_PREWRITE); - cba.dmatab = ch->dma->dmatab; - bus_dmamap_sync(ch->dma->cdmatag, ch->dma->cdmamap, BUS_DMASYNC_PREWRITE); if (bus_dmamap_load(ch->dma->ddmatag, ch->dma->ddmamap, data, count, ata_dmasetupd_cb, &cba, 0) || cba.error) return -1; @@ -233,12 +230,14 @@ bus_dmamap_sync(ch->dma->ddmatag, ch->dma->ddmamap, dir ? BUS_DMASYNC_PREREAD : BUS_DMASYNC_PREWRITE); + ch->dma->cur_iosize = count; ch->dma->flags = dir ? (ATA_DMA_ACTIVE | ATA_DMA_READ) : ATA_DMA_ACTIVE; + return 0; } int -ata_dmastop(struct ata_channel *ch) +ata_dmaunload(struct ata_channel *ch) { bus_dmamap_sync(ch->dma->cdmatag, ch->dma->cdmamap, BUS_DMASYNC_POSTWRITE); @@ -247,6 +246,8 @@ BUS_DMASYNC_POSTREAD : BUS_DMASYNC_POSTWRITE); bus_dmamap_unload(ch->dma->ddmatag, ch->dma->ddmamap); + ch->dma->cur_iosize = 0; ch->dma->flags = 0; + return 0; } ==== //depot/projects/netperf/sys/dev/ata/ata-lowlevel.c#10 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.20 2003/10/20 13:44:33 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-lowlevel.c,v 1.22 2003/10/21 19:25:20 sos Exp $"); #include "opt_ata.h" #include @@ -111,10 +111,11 @@ /* ATA DMA data transfer commands */ case ATA_R_DMA: - /* check sanity and setup DMA engine */ - if (request->device->channel->dma->setup(request->device, - request->data, - request->bytecount)) { + /* check sanity, setup SG list and DMA engine */ + if (request->device->channel->dma->load(request->device, + request->data, + request->bytecount, + request->flags & ATA_R_READ)) { ata_prtdev(request->device, "setting up DMA failed\n"); request->result = EIO; break; @@ -130,10 +131,7 @@ } /* start DMA engine */ - if (request->device->channel->dma->start(request->device->channel, - request->data, - request->bytecount, - request->flags & ATA_R_READ)) { + if (request->device->channel->dma->start(request->device->channel)) { ata_prtdev(request->device, "error starting DMA\n"); request->result = EIO; break; @@ -208,10 +206,11 @@ break; } - /* check sanity and setup DMA engine */ - if (request->device->channel->dma->setup(request->device, - request->data, - request->bytecount)) { + /* check sanity, setup SG list and DMA engine */ + if (request->device->channel->dma->load(request->device, + request->data, + request->bytecount, + request->flags & ATA_R_READ)) { ata_prtdev(request->device, "setting up DMA failed\n"); request->result = EIO; break; @@ -253,10 +252,7 @@ ATA_PROTO_ATAPI_12 ? 6 : 8); /* start DMA engine */ - if (request->device->channel->dma->start(request->device->channel, - request->data, - request->bytecount, - request->flags & ATA_R_READ)) { + if (request->device->channel->dma->start(request->device->channel)) { request->result = EIO; break; } @@ -266,6 +262,8 @@ } /* request finish here */ + if (request->device->channel->dma->flags & ATA_DMA_ACTIVE) + request->device->channel->dma->unload(request->device->channel); request->device->channel->running = NULL; return ATA_OP_FINISHED; } @@ -373,6 +371,9 @@ else request->donecount = request->bytecount; + /* release SG list etc */ + ch->dma->unload(ch); + /* done with HW */ break; @@ -458,6 +459,7 @@ ata_prtdev(request->device, "unknown transfer phase\n"); request->status = ATA_S_ERROR; } + /* done with HW */ break; @@ -474,6 +476,9 @@ request->status |= ATA_S_ERROR; else request->donecount = request->bytecount; + + /* release SG list etc */ + ch->dma->unload(ch); /* done with HW */ break; @@ -481,7 +486,7 @@ ata_finish(request); - /* unlock the ATA HW for new work */ + /* unlock the ATA channel for new work */ ch->running = NULL; ATA_UNLOCK_CH(ch); ch->locking(ch, ATA_LF_UNLOCK); ==== //depot/projects/netperf/sys/dev/ata/ata-pci.c#6 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ata/ata-pci.c,v 1.69 2003/10/20 13:45:11 sos Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ata/ata-pci.c,v 1.70 2003/10/21 19:20:37 sos Exp $"); #include "opt_ata.h" #include @@ -411,17 +411,14 @@ } static int -ata_pci_dmastart(struct ata_channel *ch, caddr_t data, int32_t count, int dir) +ata_pci_dmastart(struct ata_channel *ch) { - int error; - - if ((error = ata_dmastart(ch, data, count, dir))) - return error; ATA_IDX_OUTB(ch, ATA_BMSTAT_PORT, (ATA_IDX_INB(ch, ATA_BMSTAT_PORT) | (ATA_BMSTAT_INTERRUPT | ATA_BMSTAT_ERROR))); ATA_IDX_OUTL(ch, ATA_BMDTP_PORT, ch->dma->mdmatab); ATA_IDX_OUTB(ch, ATA_BMCMD_PORT, - (dir ? ATA_BMCMD_WRITE_READ : 0) | ATA_BMCMD_START_STOP); + ((ch->dma->flags & ATA_DMA_READ) ? ATA_BMCMD_WRITE_READ : 0) | + ATA_BMCMD_START_STOP); return 0; } @@ -434,7 +431,6 @@ ATA_IDX_OUTB(ch, ATA_BMCMD_PORT, ATA_IDX_INB(ch, ATA_BMCMD_PORT) & ~ATA_BMCMD_START_STOP); ATA_IDX_OUTB(ch, ATA_BMSTAT_PORT, ATA_BMSTAT_INTERRUPT | ATA_BMSTAT_ERROR); - ata_dmastop(ch); return error; } ==== //depot/projects/netperf/sys/dev/ath/if_ath.c#28 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.28 2003/10/17 21:58:39 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.29 2003/10/22 04:37:34 sam Exp $"); /* * Driver for the Atheros Wireless LAN controller. ==== //depot/projects/netperf/sys/dev/isp/isp_freebsd.h#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/dev/isp/isp_freebsd.h,v 1.72 2003/09/13 01:56:45 mjacob Exp $ */ +/* $FreeBSD: src/sys/dev/isp/isp_freebsd.h,v 1.73 2003/10/21 21:52:23 mjacob Exp $ */ /* * Qlogic ISP SCSI Host Adapter FreeBSD Wrapper Definitions * Copyright (c) 1997, 1998, 1999, 2000, 2001, 2002 by Matthew Jacob @@ -76,7 +76,7 @@ #endif #define HANDLE_LOOPSTATE_IN_OUTER_LAYERS 1 -#define ISP_SMPLOCK 1 +/* #define ISP_SMPLOCK 1 */ #ifdef ISP_SMPLOCK #define ISP_IFLAGS INTR_TYPE_CAM | INTR_ENTROPY | INTR_MPSAFE ==== //depot/projects/netperf/sys/dev/pci/pci_pci.c#4 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/pci/pci_pci.c,v 1.27 2003/08/24 17:54:15 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/pci/pci_pci.c,v 1.28 2003/10/21 18:28:34 silby Exp $"); /* * PCI:PCI bridge support. @@ -98,7 +98,7 @@ TUNABLE_INT("hw.pci.allow_unsupported_io_range", (int *)&pci_allow_unsupported_io_range); SYSCTL_DECL(_hw_pci); -SYSCTL_INT(_hw_pci, OID_AUTO, allow_unsupported_io_range, CTLFLAG_RD, +SYSCTL_INT(_hw_pci, OID_AUTO, allow_unsupported_io_range, CTLFLAG_RDTUN, &pci_allow_unsupported_io_range, 0, "Allows the PCI Bridge to pass through an unsupported memory range " "assigned by the BIOS."); ==== //depot/projects/netperf/sys/geom/geom_io.c#7 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/geom/geom_io.c,v 1.49 2003/10/19 19:06:54 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/geom/geom_io.c,v 1.50 2003/10/22 06:32:20 phk Exp $"); #include #include @@ -209,12 +209,9 @@ case BIO_READ: case BIO_WRITE: case BIO_DELETE: - /* Noisily reject zero size sectors */ - if (pp->sectorsize == 0) { - printf("GEOM provider %s has zero sectorsize\n", - pp->name); - return (EDOOFUS); - } + /* Zero sectorsize is a probably lack of media */ + if (pp->sectorsize == 0) + return (ENXIO); /* Reject I/O not on sector boundary */ if (bp->bio_offset % pp->sectorsize) return (EINVAL); ==== //depot/projects/netperf/sys/i386/i386/i686_mem.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/i386/i686_mem.c,v 1.22 2003/08/25 09:48:46 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/i386/i686_mem.c,v 1.23 2003/10/21 18:28:34 silby Exp $"); #include #include @@ -64,7 +64,7 @@ static int mtrrs_disabled; TUNABLE_INT("machdep.disable_mtrrs", &mtrrs_disabled); -SYSCTL_INT(_machdep, OID_AUTO, disable_mtrrs, CTLFLAG_RD, +SYSCTL_INT(_machdep, OID_AUTO, disable_mtrrs, CTLFLAG_RDTUN, &mtrrs_disabled, 0, "Disable i686 MTRRs."); static void i686_mrinit(struct mem_range_softc *sc); ==== //depot/projects/netperf/sys/i386/i386/tsc.c#5 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/i386/tsc.c,v 1.203 2003/08/25 09:48:47 obrien Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/i386/tsc.c,v 1.204 2003/10/21 18:28:34 silby Exp $"); #include "opt_clock.h" @@ -47,7 +47,7 @@ #ifdef SMP static int smp_tsc; -SYSCTL_INT(_kern_timecounter, OID_AUTO, smp_tsc, CTLFLAG_RD, &smp_tsc, 0, +SYSCTL_INT(_kern_timecounter, OID_AUTO, smp_tsc, CTLFLAG_RDTUN, &smp_tsc, 0, "Indicates whether the TSC is safe to use in SMP mode"); TUNABLE_INT("kern.timecounter.smp_tsc", &smp_tsc); #endif ==== //depot/projects/netperf/sys/i386/pci/pci_cfgreg.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/i386/pci/pci_cfgreg.c,v 1.105 2003/09/10 06:00:53 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/i386/pci/pci_cfgreg.c,v 1.106 2003/10/21 18:28:34 silby Exp $"); #include /* XXX trim includes */ #include @@ -90,7 +90,7 @@ static uint32_t pci_irq_override_mask = PCI_IRQ_OVERRIDE_MASK; TUNABLE_INT("hw.pci.irq_override_mask", &pci_irq_override_mask); -SYSCTL_INT(_hw_pci, OID_AUTO, irq_override_mask, CTLFLAG_RD, +SYSCTL_INT(_hw_pci, OID_AUTO, irq_override_mask, CTLFLAG_RDTUN, &pci_irq_override_mask, PCI_IRQ_OVERRIDE_MASK, "Mask of allowed irqs to try to route when it has no good clue about\n" "which irqs it should use."); ==== //depot/projects/netperf/sys/ia64/ia64/machdep.c#13 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/ia64/ia64/machdep.c,v 1.159 2003/10/18 22:25:07 njl Exp $ + * $FreeBSD: src/sys/ia64/ia64/machdep.c,v 1.160 2003/10/21 01:13:49 marcel Exp $ */ #include "opt_compat.h" @@ -1217,7 +1217,7 @@ bzero(&tf->tf_scratch, sizeof(tf->tf_scratch)); bzero(&tf->tf_scratch_fp, sizeof(tf->tf_scratch_fp)); tf->tf_special.cfm = (1UL<<63) | (3UL<<7) | 3UL; - tf->tf_special.bspstore = td->td_md.md_bspstore; + tf->tf_special.bspstore = IA64_BACKINGSTORE; /* * Copy the arguments onto the kernel register stack so that * they get loaded by the loadrs instruction. Skip over the @@ -1236,7 +1236,7 @@ tf->tf_special.ndirty = (ksttop - kst) << 3; } else { /* epc syscalls (default). */ tf->tf_special.cfm = (3UL<<62) | (3UL<<7) | 3UL; - tf->tf_special.bspstore = td->td_md.md_bspstore + 24; + tf->tf_special.bspstore = IA64_BACKINGSTORE + 24; /* * Write values for out0, out1 and out2 to the user's backing * store and arrange for them to be restored into the user's ==== //depot/projects/netperf/sys/ia64/include/proc.h#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/ia64/include/proc.h,v 1.10 2003/05/16 21:26:41 marcel Exp $ */ +/* $FreeBSD: src/sys/ia64/include/proc.h,v 1.11 2003/10/21 01:13:49 marcel Exp $ */ /* From: NetBSD: proc.h,v 1.3 1997/04/06 08:47:36 cgd Exp */ /* @@ -37,7 +37,6 @@ struct mdthread { u_long md_flags; - vm_offset_t md_bspstore; /* initial ar.bspstore */ register_t md_savecrit; }; ==== //depot/projects/netperf/sys/kern/init_sysent.c#4 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/kern/init_sysent.c,v 1.157 2003/10/20 16:16:03 dwmalone Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.153 2003/09/07 05:42:06 alc Exp + * $FreeBSD: src/sys/kern/init_sysent.c,v 1.158 2003/10/21 07:03:27 scottl Exp $ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.154 2003/10/20 16:16:03 dwmalone Exp */ #include "opt_compat.h" @@ -70,7 +70,7 @@ { SYF_MPSAFE | 0, (sy_call_t *)getppid }, /* 39 = getppid */ { compat(AS(olstat_args),lstat) }, /* 40 = old lstat */ { SYF_MPSAFE | AS(dup_args), (sy_call_t *)dup }, /* 41 = dup */ - { 0, (sy_call_t *)pipe }, /* 42 = pipe */ + { SYF_MPSAFE | 0, (sy_call_t *)pipe }, /* 42 = pipe */ { SYF_MPSAFE | 0, (sy_call_t *)getegid }, /* 43 = getegid */ { SYF_MPSAFE | AS(profil_args), (sy_call_t *)profil }, /* 44 = profil */ { AS(ktrace_args), (sy_call_t *)ktrace }, /* 45 = ktrace */ ==== //depot/projects/netperf/sys/kern/kern_exec.c#7 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_exec.c,v 1.230 2003/10/20 05:34:10 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_exec.c,v 1.231 2003/10/21 01:13:49 marcel Exp $"); #include "opt_ktrace.h" #include "opt_mac.h" @@ -873,7 +873,6 @@ sv->sv_stackprot, VM_PROT_ALL, MAP_STACK_GROWS_UP); if (error) return (error); - FIRST_THREAD_IN_PROC(p)->td_md.md_bspstore = stack_addr; #endif /* vm_ssize and vm_maxsaddr are somewhat antiquated concepts in the ==== //depot/projects/netperf/sys/kern/kern_mib.c#3 (text+ko) ==== @@ -40,7 +40,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mib.c,v 1.69 2003/08/21 14:47:08 eivind Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_mib.c,v 1.70 2003/10/21 18:28:34 silby Exp $"); #include "opt_posix.h" @@ -110,13 +110,13 @@ SYSCTL_INT(_kern, KERN_OSRELDATE, osreldate, CTLFLAG_RD, &osreldate, 0, "Kernel release date"); -SYSCTL_INT(_kern, KERN_MAXPROC, maxproc, CTLFLAG_RD, +SYSCTL_INT(_kern, KERN_MAXPROC, maxproc, CTLFLAG_RDTUN, &maxproc, 0, "Maximum number of processes"); SYSCTL_INT(_kern, KERN_MAXPROCPERUID, maxprocperuid, CTLFLAG_RW, &maxprocperuid, 0, "Maximum processes allowed per userid"); -SYSCTL_INT(_kern, OID_AUTO, maxusers, CTLFLAG_RD, +SYSCTL_INT(_kern, OID_AUTO, maxusers, CTLFLAG_RDTUN, &maxusers, 0, "Hint for kernel tuning"); SYSCTL_INT(_kern, KERN_ARGMAX, argmax, CTLFLAG_RD, ==== //depot/projects/netperf/sys/kern/kern_poll.c#6 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/kern_poll.c,v 1.13 2003/10/14 18:39:36 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/kern_poll.c,v 1.14 2003/10/20 21:14:24 sam Exp $"); #include #include @@ -118,7 +118,7 @@ SYSCTL_UINT(_kern_polling, OID_AUTO, burst_max, CTLFLAG_RW, &poll_burst_max, 0, "Max Polling burst size"); -static u_int32_t poll_in_idle_loop=1; /* do we poll in idle loop ? */ +static u_int32_t poll_in_idle_loop=0; /* do we poll in idle loop ? */ SYSCTL_UINT(_kern_polling, OID_AUTO, idle_poll, CTLFLAG_RW, &poll_in_idle_loop, 0, "Enable device polling in idle loop"); ==== //depot/projects/netperf/sys/kern/sched_ule.c#11 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/sched_ule.c,v 1.65 2003/10/16 20:32:57 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/sched_ule.c,v 1.66 2003/10/20 19:55:21 jeff Exp $"); #include #include @@ -1311,6 +1311,8 @@ pctcpu = 0; ke = td->td_kse; + if (ke == NULL) + return (0); mtx_lock_spin(&sched_lock); if (ke->ke_ticks) { ==== //depot/projects/netperf/sys/kern/subr_mbuf.c#7 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/subr_mbuf.c,v 1.55 2003/08/16 19:48:52 bmilekic Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/subr_mbuf.c,v 1.56 2003/10/21 18:28:34 silby Exp $"); #include "opt_mac.h" #include "opt_param.h" @@ -310,13 +310,13 @@ * Objects exported by sysctl(8). */ SYSCTL_DECL(_kern_ipc); -SYSCTL_INT(_kern_ipc, OID_AUTO, nmbclusters, CTLFLAG_RD, &nmbclusters, 0, +SYSCTL_INT(_kern_ipc, OID_AUTO, nmbclusters, CTLFLAG_RDTUN, &nmbclusters, 0, "Maximum number of mbuf clusters available"); -SYSCTL_INT(_kern_ipc, OID_AUTO, nmbufs, CTLFLAG_RD, &nmbufs, 0, +SYSCTL_INT(_kern_ipc, OID_AUTO, nmbufs, CTLFLAG_RDTUN, &nmbufs, 0, "Maximum number of mbufs available"); -SYSCTL_INT(_kern_ipc, OID_AUTO, nmbcnt, CTLFLAG_RD, &nmbcnt, 0, +SYSCTL_INT(_kern_ipc, OID_AUTO, nmbcnt, CTLFLAG_RDTUN, &nmbcnt, 0, "Number used to scale kmem_map to ensure sufficient space for counters"); -SYSCTL_INT(_kern_ipc, OID_AUTO, nsfbufs, CTLFLAG_RD, &nsfbufs, 0, +SYSCTL_INT(_kern_ipc, OID_AUTO, nsfbufs, CTLFLAG_RDTUN, &nsfbufs, 0, "Maximum number of sendfile(2) sf_bufs available"); SYSCTL_INT(_kern_ipc, OID_AUTO, mbuf_wait, CTLFLAG_RW, &mbuf_wait, 0, "Sleep time of mbuf subsystem wait allocations during exhaustion"); ==== //depot/projects/netperf/sys/kern/subr_smp.c#2 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/subr_smp.c,v 1.176 2003/06/12 19:46:51 des Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/subr_smp.c,v 1.177 2003/10/21 18:28:34 silby Exp $"); #include #include @@ -65,7 +65,7 @@ "Number of Auxillary Processors (APs) that were successfully started"); int smp_disabled = 0; /* has smp been disabled? */ -SYSCTL_INT(_kern_smp, OID_AUTO, disabled, CTLFLAG_RD, &smp_disabled, 0, +SYSCTL_INT(_kern_smp, OID_AUTO, disabled, CTLFLAG_RDTUN, &smp_disabled, 0, "SMP has been disabled from the loader"); TUNABLE_INT("kern.smp.disabled", &smp_disabled); ==== //depot/projects/netperf/sys/kern/subr_witness.c#4 (text+ko) ==== @@ -82,7 +82,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/subr_witness.c,v 1.159 2003/09/06 21:06:08 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/subr_witness.c,v 1.160 2003/10/21 18:28:34 silby Exp $"); #include "opt_ddb.h" >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 10:25:26 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5077716A4C1; Wed, 22 Oct 2003 10:25:26 -0700 (PDT) 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 24FE216A4BF for ; Wed, 22 Oct 2003 10:25:26 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D1F3543FA3 for ; Wed, 22 Oct 2003 10:25:24 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9MHPOXJ006227 for ; Wed, 22 Oct 2003 10:25:24 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9MHPOcJ006224 for perforce@freebsd.org; Wed, 22 Oct 2003 10:25:24 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Wed, 22 Oct 2003 10:25:24 -0700 (PDT) Message-Id: <200310221725.h9MHPOcJ006224@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40171 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Oct 2003 17:25:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=40171 Change 40171 by areisse@areisse_ibook on 2003/10/22 10:24:32 fixes for apple compilation Affected files ... .. //depot/projects/trustedbsd/sedarwin/sebsd_cmds/checkpolicy/Makefile#1 add .. //depot/projects/trustedbsd/sedarwin/sebsd_cmds/checkpolicy/checkpolicy.c#2 edit .. //depot/projects/trustedbsd/sedarwin/sebsd_cmds/checkpolicy/policy_parse.y#2 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/sebsd_cmds/checkpolicy/checkpolicy.c#2 (text+ko) ==== @@ -29,7 +29,6 @@ * the loaded policy configuration. */ -#ifdef __FreeBSD__ #include #include #include @@ -40,10 +39,7 @@ #include #include #include -#include "linux-compat.h" -#else /* __FreeBSD__ */ -#include -#endif /* __FreeBSD__ */ +#include #include "global.h" #include "policydb.h" ==== //depot/projects/trustedbsd/sedarwin/sebsd_cmds/checkpolicy/policy_parse.y#2 (text+ko) ==== @@ -6,18 +6,16 @@ /* FLASK */ %{ -#ifdef __FreeBSD__ #include #include #include #include -#include "linux-compat.h" -#endif /* __FreeBSD__ */ +#include #include "policydb.h" #include "services.h" #include "queue.h" #include "checkpolicy.h" -#include "flask.h" +#include #include "security.h" #define TRUE 1 From owner-p4-projects@FreeBSD.ORG Wed Oct 22 10:44:51 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2675216A4C0; Wed, 22 Oct 2003 10:44:51 -0700 (PDT) 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 DEA2316A4B3 for ; Wed, 22 Oct 2003 10:44:50 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 542C943FCB for ; Wed, 22 Oct 2003 10:44:50 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9MHioXJ007024 for ; Wed, 22 Oct 2003 10:44:50 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9MHinY3007021 for perforce@freebsd.org; Wed, 22 Oct 2003 10:44:49 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Wed, 22 Oct 2003 10:44:49 -0700 (PDT) Message-Id: <200310221744.h9MHinY3007021@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40174 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Oct 2003 17:44:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=40174 Change 40174 by areisse@areisse_ibook on 2003/10/22 10:44:40 branch setfsmac for sedarwin Affected files ... .. //depot/projects/trustedbsd/sedarwin/mac_cmds/setfsmac/setfmac.8#1 branch .. //depot/projects/trustedbsd/sedarwin/mac_cmds/setfsmac/setfsmac.8#1 branch .. //depot/projects/trustedbsd/sedarwin/mac_cmds/setfsmac/setfsmac.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Wed Oct 22 12:16:50 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4D7DC16A4C0; Wed, 22 Oct 2003 12:16:50 -0700 (PDT) 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 133B116A4B3 for ; Wed, 22 Oct 2003 12:16:50 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8C79143F75 for ; Wed, 22 Oct 2003 12:16:49 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9MJGnXJ013170 for ; Wed, 22 Oct 2003 12:16:49 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9MJGm19013167 for perforce@freebsd.org; Wed, 22 Oct 2003 12:16:48 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Wed, 22 Oct 2003 12:16:48 -0700 (PDT) Message-Id: <200310221916.h9MJGm19013167@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40184 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Oct 2003 19:16:50 -0000 http://perforce.freebsd.org/chv.cgi?CH=40184 Change 40184 by areisse@areisse_ibook on 2003/10/22 12:16:39 currently unimplemented functions return ENOSYS Affected files ... .. //depot/projects/trustedbsd/sedarwin/libmac/mac_set.c#2 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/libmac/mac_set.c#2 (text+ko) ==== @@ -33,6 +33,7 @@ #include #include +#include extern int __mac_set_fd(int fd, struct mac *mac_p); extern int __mac_set_file(const char *path_p, struct mac *mac_p); @@ -42,27 +43,23 @@ int mac_set_fd(int fd, struct mac *label) { - - return (__mac_set_fd(fd, label)); + return ENOSYS; } int mac_set_file(const char *path, struct mac *label) { - - return (__mac_set_file(path, label)); + return ENOSYS; } int mac_set_link(const char *path, struct mac *label) { - - return (__mac_set_link(path, label)); + return ENOSYS; } int mac_set_proc(struct mac *label) { - - return (__mac_set_proc(label)); + return ENOSYS; } From owner-p4-projects@FreeBSD.ORG Wed Oct 22 12:17:52 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 2C44C16A4C0; Wed, 22 Oct 2003 12:17:52 -0700 (PDT) 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 076A316A4B3 for ; Wed, 22 Oct 2003 12:17:52 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 82B0A43FA3 for ; Wed, 22 Oct 2003 12:17:51 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9MJHpXJ013192 for ; Wed, 22 Oct 2003 12:17:51 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9MJHp7Y013189 for perforce@freebsd.org; Wed, 22 Oct 2003 12:17:51 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Wed, 22 Oct 2003 12:17:51 -0700 (PDT) Message-Id: <200310221917.h9MJHp7Y013189@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40185 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Oct 2003 19:17:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=40185 Change 40185 by areisse@areisse_ibook on 2003/10/22 12:17:00 remove things that need pam Affected files ... .. //depot/projects/trustedbsd/sedarwin/libsebsd/query_user_context.c#2 edit .. //depot/projects/trustedbsd/sedarwin/libsebsd/sebsd.h#2 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/libsebsd/query_user_context.c#2 (text+ko) ==== @@ -34,6 +34,8 @@ * $FreeBSD$ */ +#ifdef USE_PAM + #include #include #include @@ -100,3 +102,5 @@ free(pam_response); return (context_menu(pamh, ordered_context_list, length, retcontext)); } + +#endif ==== //depot/projects/trustedbsd/sedarwin/libsebsd/sebsd.h#2 (text+ko) ==== @@ -38,7 +38,10 @@ #define _SEBSD_H #include + +#ifdef USE_PAM #include +#endif #include "flask_types.h" #include "sebsd_syscalls.h" @@ -54,8 +57,11 @@ char ***ordered_list, size_t *length); int get_default_context(const char *username, const char *from_context, char **default_context); +#ifdef USE_PAM int query_user_context(pam_handle_t *pamh, char **ordered_context_list, size_t length, char **retcontext); +#endif + security_class_t string_to_security_class(const char *s); int sebsd_avc_toggle(void); From owner-p4-projects@FreeBSD.ORG Wed Oct 22 12:18:54 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7939516A4C0; Wed, 22 Oct 2003 12:18:54 -0700 (PDT) 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 554E416A4B3 for ; Wed, 22 Oct 2003 12:18:54 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 769EB43FCB for ; Wed, 22 Oct 2003 12:18:53 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9MJIrXJ013317 for ; Wed, 22 Oct 2003 12:18:53 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9MJIq4Y013314 for perforce@freebsd.org; Wed, 22 Oct 2003 12:18:52 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Wed, 22 Oct 2003 12:18:52 -0700 (PDT) Message-Id: <200310221918.h9MJIq4Y013314@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40186 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Oct 2003 19:18:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=40186 Change 40186 by areisse@areisse_ibook on 2003/10/22 12:18:16 fixes for apple compilation. Uses the sys/queue.h from FreeBSD. Affected files ... .. //depot/projects/trustedbsd/sedarwin/mac_cmds/setfsmac/Makefile#1 add .. //depot/projects/trustedbsd/sedarwin/mac_cmds/setfsmac/setfsmac.c#2 edit .. //depot/projects/trustedbsd/sedarwin/mac_cmds/setfsmac/sysqueue.h#1 add Differences ... ==== //depot/projects/trustedbsd/sedarwin/mac_cmds/setfsmac/setfsmac.c#2 (text+ko) ==== @@ -34,7 +34,6 @@ #include #include #include -#include #include #include @@ -48,6 +47,7 @@ #include #include #include +#include "sysqueue.h" struct label_spec { struct label_spec_entry { @@ -69,7 +69,7 @@ STAILQ_HEAD(label_specs_head, label_spec) head; }; -void usage(int) __dead2; +void usage(int); struct label_specs *new_specs(void); void add_specs(struct label_specs *, const char *, int); void add_setfmac_specs(struct label_specs *, char *); From owner-p4-projects@FreeBSD.ORG Wed Oct 22 13:12:08 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BE1BA16A4C1; Wed, 22 Oct 2003 13:12:07 -0700 (PDT) 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 9669216A4C0 for ; Wed, 22 Oct 2003 13:12:07 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 577C143FA3 for ; Wed, 22 Oct 2003 13:12:06 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9MKC6XJ022359 for ; Wed, 22 Oct 2003 13:12:06 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9MKC3em022355 for perforce@freebsd.org; Wed, 22 Oct 2003 13:12:03 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 13:12:03 -0700 (PDT) Message-Id: <200310222012.h9MKC3em022355@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 Subject: PERFORCE change 40194 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 22 Oct 2003 20:12:08 -0000 http://perforce.freebsd.org/chv.cgi?CH=40194 Change 40194 by rwatson@rwatson_paprika on 2003/10/22 13:11:47 Remove accidentally retained duplicate vm enforcement toggle, vm revocation toggles. These are also in mac_process.c. Affected files ... .. //depot/projects/trustedbsd/mac/sys/security/mac/mac_vfs.c#2 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/security/mac/mac_vfs.c#2 (text+ko) ==== @@ -80,21 +80,6 @@ &mac_enforce_fs, 0, "Enforce MAC policy on file system objects"); TUNABLE_INT("security.mac.enforce_fs", &mac_enforce_fs); -static int mac_enforce_vm = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, - &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); -TUNABLE_INT("security.mac.enforce_vm", &mac_enforce_vm); - -static int mac_mmap_revocation = 0; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation, CTLFLAG_RW, - &mac_mmap_revocation, 0, "Revoke mmap access to files on subject " - "relabel"); - -static int mac_mmap_revocation_via_cow = 1; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation_via_cow, CTLFLAG_RW, - &mac_mmap_revocation_via_cow, 0, "Revoke mmap access to files via " - "copy-on-write semantics, or by removing all write access"); - #ifdef MAC_DEBUG static int mac_debug_label_fallback = 0; SYSCTL_INT(_security_mac_debug, OID_AUTO, label_fallback, CTLFLAG_RW, From owner-p4-projects@FreeBSD.ORG Wed Oct 22 17:21:39 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 53DC316A4C0; Wed, 22 Oct 2003 17:21:39 -0700 (PDT) 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 E7A1616A4B3 for ; Wed, 22 Oct 2003 17:21:38 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7E93643F75 for ; Wed, 22 Oct 2003 17:21:36 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N0LaXJ042799 for ; Wed, 22 Oct 2003 17:21:36 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N0LPZm042782 for perforce@freebsd.org; Wed, 22 Oct 2003 17:21:25 -0700 (PDT) (envelope-from jhb@freebsd.org) Date: Wed, 22 Oct 2003 17:21:25 -0700 (PDT) Message-Id: <200310230021.h9N0LPZm042782@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 40218 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 00:21:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=40218 Change 40218 by jhb@jhb_laptop on 2003/10/22 17:20:58 IFC @40211. Affected files ... .. //depot/projects/smpng/sys/alpha/alpha/elf_machdep.c#11 integrate .. //depot/projects/smpng/sys/alpha/alpha/machdep.c#62 integrate .. //depot/projects/smpng/sys/alpha/alpha/pmap.c#53 integrate .. //depot/projects/smpng/sys/alpha/alpha/promcons.c#15 integrate .. //depot/projects/smpng/sys/alpha/alpha/trap.c#51 integrate .. //depot/projects/smpng/sys/alpha/conf/GENERIC#32 integrate .. //depot/projects/smpng/sys/alpha/include/bus.h#13 integrate .. //depot/projects/smpng/sys/alpha/include/elf.h#5 integrate .. //depot/projects/smpng/sys/alpha/include/pmap.h#16 integrate .. //depot/projects/smpng/sys/alpha/linux/linux_sysvec.c#16 integrate .. //depot/projects/smpng/sys/alpha/osf1/osf1_sysvec.c#7 integrate .. //depot/projects/smpng/sys/alpha/tlsb/zs_tlsb.c#13 integrate .. //depot/projects/smpng/sys/amd64/acpica/acpi_machdep.c#4 integrate .. //depot/projects/smpng/sys/amd64/amd64/amd64_mem.c#3 integrate .. //depot/projects/smpng/sys/amd64/amd64/busdma_machdep.c#7 integrate .. //depot/projects/smpng/sys/amd64/amd64/elf_machdep.c#5 integrate .. //depot/projects/smpng/sys/amd64/amd64/exception.S#6 integrate .. //depot/projects/smpng/sys/amd64/amd64/genassym.c#7 integrate .. //depot/projects/smpng/sys/amd64/amd64/machdep.c#13 integrate .. //depot/projects/smpng/sys/amd64/amd64/pmap.c#13 integrate .. //depot/projects/smpng/sys/amd64/amd64/support.S#5 integrate .. //depot/projects/smpng/sys/amd64/amd64/trap.c#9 integrate .. //depot/projects/smpng/sys/amd64/amd64/tsc.c#3 integrate .. //depot/projects/smpng/sys/amd64/amd64/uma_machdep.c#1 branch .. //depot/projects/smpng/sys/amd64/conf/GENERIC#8 integrate .. //depot/projects/smpng/sys/amd64/ia32/ia32_syscall.c#5 integrate .. //depot/projects/smpng/sys/amd64/include/acpica_machdep.h#2 integrate .. //depot/projects/smpng/sys/amd64/include/bus_amd64.h#3 integrate .. //depot/projects/smpng/sys/amd64/include/clock.h#2 integrate .. //depot/projects/smpng/sys/amd64/include/cpu.h#3 integrate .. //depot/projects/smpng/sys/amd64/include/elf.h#3 integrate .. //depot/projects/smpng/sys/amd64/include/endian.h#2 integrate .. //depot/projects/smpng/sys/amd64/include/frame.h#3 integrate .. //depot/projects/smpng/sys/amd64/include/legacyvar.h#2 integrate .. //depot/projects/smpng/sys/amd64/include/md_var.h#5 integrate .. //depot/projects/smpng/sys/amd64/include/pci_cfgreg.h#2 integrate .. //depot/projects/smpng/sys/amd64/include/pmap.h#6 integrate .. //depot/projects/smpng/sys/amd64/include/segments.h#3 integrate .. //depot/projects/smpng/sys/amd64/include/signal.h#3 integrate .. //depot/projects/smpng/sys/amd64/include/specialreg.h#2 integrate .. //depot/projects/smpng/sys/amd64/include/ucontext.h#4 integrate .. //depot/projects/smpng/sys/amd64/include/vmparam.h#4 integrate .. //depot/projects/smpng/sys/amd64/isa/clock.c#3 integrate .. //depot/projects/smpng/sys/amd64/pci/pci_bus.c#5 integrate .. //depot/projects/smpng/sys/arm/include/elf.h#3 integrate .. //depot/projects/smpng/sys/cam/cam_periph.c#13 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_all.c#18 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_cd.c#20 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_da.c#46 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_targ_bh.c#7 integrate .. //depot/projects/smpng/sys/cam/scsi/scsi_target.c#11 integrate .. //depot/projects/smpng/sys/coda/coda_subr.c#10 integrate .. //depot/projects/smpng/sys/compat/ia32/ia32_sysvec.c#2 integrate .. //depot/projects/smpng/sys/compat/ia32/ia32_util.h#2 integrate .. //depot/projects/smpng/sys/compat/linprocfs/linprocfs.c#33 integrate .. //depot/projects/smpng/sys/compat/linux/linux_ioctl.c#29 integrate .. //depot/projects/smpng/sys/compat/linux/linux_misc.c#42 integrate .. //depot/projects/smpng/sys/compat/linux/linux_socket.c#12 integrate .. //depot/projects/smpng/sys/compat/linux/linux_uid16.c#16 integrate .. //depot/projects/smpng/sys/compat/pecoff/imgact_pecoff.c#19 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_filio.c#13 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_misc.c#27 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_signal.c#12 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#15 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_sysvec.c#14 integrate .. //depot/projects/smpng/sys/compat/svr4/svr4_util.h#4 integrate .. //depot/projects/smpng/sys/conf/Makefile.amd64#5 integrate .. //depot/projects/smpng/sys/conf/NOTES#55 integrate .. //depot/projects/smpng/sys/conf/files#87 integrate .. //depot/projects/smpng/sys/conf/files.amd64#8 integrate .. //depot/projects/smpng/sys/conf/files.ia64#34 integrate .. //depot/projects/smpng/sys/conf/kmod.mk#23 integrate .. //depot/projects/smpng/sys/conf/ldscript.i386#5 integrate .. //depot/projects/smpng/sys/conf/majors#28 integrate .. //depot/projects/smpng/sys/conf/options#62 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/exfldio.c#13 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/rsaddr.c#8 integrate .. //depot/projects/smpng/sys/contrib/dev/acpica/rsirq.c#9 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/Makefile#3 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx.h#2 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_context.c#2 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_env.h#2 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#2 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_self.c#2 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_step.c#2 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_step.h#1 branch .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_trace.c#3 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_trace.h#3 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#2 integrate .. //depot/projects/smpng/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#3 integrate .. //depot/projects/smpng/sys/contrib/ipfilter/netinet/ip_fil.c#11 integrate .. //depot/projects/smpng/sys/contrib/ngatm/FREEBSD-upgrade#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/misc/unimsg_common.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/saal/saal_sscfu.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/saal/saal_sscop.c#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/saal/sscfu.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/saal/sscfudef.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/saal/sscfupriv.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/saal/sscop.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/saal/sscopdef.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/saal/sscoppriv.h#1 branch .. //depot/projects/smpng/sys/contrib/ngatm/netnatm/unimsg.h#1 branch .. //depot/projects/smpng/sys/crypto/blowfish/bf_ecb.c#1 branch .. //depot/projects/smpng/sys/crypto/blowfish/blowfish.h#4 integrate .. //depot/projects/smpng/sys/crypto/cast128/cast128.c#4 integrate .. //depot/projects/smpng/sys/crypto/cast128/cast128.h#4 integrate .. //depot/projects/smpng/sys/crypto/cast128/cast128_subkey.h#2 delete .. //depot/projects/smpng/sys/crypto/cast128/cast128sb.h#1 branch .. //depot/projects/smpng/sys/crypto/rijndael/Makefile#1 branch .. //depot/projects/smpng/sys/crypto/rijndael/boxes-fst.dat#2 delete .. //depot/projects/smpng/sys/crypto/rijndael/rijndael-alg-fst.c#3 integrate .. //depot/projects/smpng/sys/crypto/rijndael/rijndael-alg-fst.h#2 integrate .. //depot/projects/smpng/sys/crypto/rijndael/rijndael-api-fst.c#6 integrate .. //depot/projects/smpng/sys/crypto/rijndael/rijndael-api-fst.h#3 integrate .. //depot/projects/smpng/sys/crypto/rijndael/rijndael_local.h#2 integrate .. //depot/projects/smpng/sys/crypto/rijndael/test00.c#1 branch .. //depot/projects/smpng/sys/ddb/db_elf.c#5 integrate .. //depot/projects/smpng/sys/dev/aac/aac.c#31 integrate .. //depot/projects/smpng/sys/dev/aac/aac_disk.c#17 integrate .. //depot/projects/smpng/sys/dev/aac/aacreg.h#12 integrate .. //depot/projects/smpng/sys/dev/acpica/Osd/OsdSchedule.c#19 integrate .. //depot/projects/smpng/sys/dev/acpica/Osd/OsdSynch.c#12 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi.c#49 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_acad.c#12 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_button.c#10 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_cmbat.c#15 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_ec.c#22 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_resource.c#14 integrate .. //depot/projects/smpng/sys/dev/acpica/acpi_thermal.c#18 integrate .. //depot/projects/smpng/sys/dev/adlink/adlink.c#5 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic79xx_pci.c#14 integrate .. //depot/projects/smpng/sys/dev/aic7xxx/aic7xxx_pci.c#14 integrate .. //depot/projects/smpng/sys/dev/amr/amr.c#17 integrate .. //depot/projects/smpng/sys/dev/amr/amr_disk.c#11 integrate .. //depot/projects/smpng/sys/dev/amr/amrvar.h#11 integrate .. //depot/projects/smpng/sys/dev/an/if_an_pccard.c#11 integrate .. //depot/projects/smpng/sys/dev/asr/asr.c#21 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.c#40 integrate .. //depot/projects/smpng/sys/dev/ata/ata-all.h#18 integrate .. //depot/projects/smpng/sys/dev/ata/ata-card.c#14 integrate .. //depot/projects/smpng/sys/dev/ata/ata-chipset.c#19 integrate .. //depot/projects/smpng/sys/dev/ata/ata-disk.c#32 integrate .. //depot/projects/smpng/sys/dev/ata/ata-dma.c#32 integrate .. //depot/projects/smpng/sys/dev/ata/ata-lowlevel.c#3 integrate .. //depot/projects/smpng/sys/dev/ata/ata-pci.c#35 integrate .. //depot/projects/smpng/sys/dev/ata/ata-queue.c#3 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cam.c#13 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cd.c#37 integrate .. //depot/projects/smpng/sys/dev/ata/atapi-cd.h#12 integrate .. //depot/projects/smpng/sys/dev/ath/if_ath.c#9 integrate .. //depot/projects/smpng/sys/dev/ath/if_ath_pci.c#4 integrate .. //depot/projects/smpng/sys/dev/ath/if_athvar.h#6 integrate .. //depot/projects/smpng/sys/dev/bge/if_bge.c#34 integrate .. //depot/projects/smpng/sys/dev/cardbus/cardbus.c#17 integrate .. //depot/projects/smpng/sys/dev/cardbus/cardbus_cis.c#18 integrate .. //depot/projects/smpng/sys/dev/cardbus/cardbus_cis.h#5 integrate .. //depot/projects/smpng/sys/dev/ciss/ciss.c#22 integrate .. //depot/projects/smpng/sys/dev/digi/digi.c#19 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed.c#14 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed_cbus.c#8 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed_isa.c#6 integrate .. //depot/projects/smpng/sys/dev/ed/if_ed_pccard.c#18 integrate .. //depot/projects/smpng/sys/dev/ed/if_edreg.h#3 integrate .. //depot/projects/smpng/sys/dev/ed/if_edvar.h#4 integrate .. //depot/projects/smpng/sys/dev/em/if_em.c#26 integrate .. //depot/projects/smpng/sys/dev/em/if_em.h#19 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep.c#11 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep_eisa.c#6 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep_isa.c#7 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep_mca.c#5 integrate .. //depot/projects/smpng/sys/dev/ep/if_ep_pccard.c#11 integrate .. //depot/projects/smpng/sys/dev/ep/if_epreg.h#3 integrate .. //depot/projects/smpng/sys/dev/ep/if_epvar.h#4 integrate .. //depot/projects/smpng/sys/dev/exca/exca.c#11 integrate .. //depot/projects/smpng/sys/dev/fb/fb.c#9 integrate .. //depot/projects/smpng/sys/dev/fb/fbreg.h#11 integrate .. //depot/projects/smpng/sys/dev/firewire/firewire.c#25 integrate .. //depot/projects/smpng/sys/dev/firewire/firewire.h#10 integrate .. //depot/projects/smpng/sys/dev/firewire/firewirereg.h#13 integrate .. //depot/projects/smpng/sys/dev/firewire/fwcrom.c#7 integrate .. //depot/projects/smpng/sys/dev/firewire/fwdev.c#11 integrate .. //depot/projects/smpng/sys/dev/firewire/fwmem.c#12 integrate .. //depot/projects/smpng/sys/dev/firewire/fwmem.h#5 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohci.c#24 integrate .. //depot/projects/smpng/sys/dev/firewire/fwohcireg.h#10 integrate .. //depot/projects/smpng/sys/dev/firewire/fwphyreg.h#1 branch .. //depot/projects/smpng/sys/dev/firewire/if_fwe.c#15 integrate .. //depot/projects/smpng/sys/dev/firewire/sbp.c#26 integrate .. //depot/projects/smpng/sys/dev/firewire/sbp.h#1 branch .. //depot/projects/smpng/sys/dev/firewire/sbp_targ.c#1 branch .. //depot/projects/smpng/sys/dev/gfb/gfb_pci.c#8 integrate .. //depot/projects/smpng/sys/dev/hifn/hifn7751.c#12 integrate .. //depot/projects/smpng/sys/dev/hifn/hifn7751reg.h#3 integrate .. //depot/projects/smpng/sys/dev/hifn/hifn7751var.h#4 integrate .. //depot/projects/smpng/sys/dev/iir/iir.c#9 integrate .. //depot/projects/smpng/sys/dev/iir/iir.h#5 integrate .. //depot/projects/smpng/sys/dev/iir/iir_ctrl.c#8 integrate .. //depot/projects/smpng/sys/dev/iir/iir_pci.c#10 integrate .. //depot/projects/smpng/sys/dev/ips/ips_commands.c#5 integrate .. //depot/projects/smpng/sys/dev/ips/ips_disk.c#4 integrate .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.c#25 integrate .. //depot/projects/smpng/sys/dev/isp/isp_freebsd.h#20 integrate .. //depot/projects/smpng/sys/dev/kbd/atkbd.c#11 integrate .. //depot/projects/smpng/sys/dev/kbd/kbd.c#9 integrate .. //depot/projects/smpng/sys/dev/kbd/kbdreg.h#3 integrate .. //depot/projects/smpng/sys/dev/matcd/matcd.c#3 integrate .. //depot/projects/smpng/sys/dev/mcd/mcd.c#7 integrate .. //depot/projects/smpng/sys/dev/md/md.c#41 integrate .. //depot/projects/smpng/sys/dev/mii/brgphy.c#18 integrate .. //depot/projects/smpng/sys/dev/mii/e1000phy.c#8 integrate .. //depot/projects/smpng/sys/dev/mii/e1000phyreg.h#2 integrate .. //depot/projects/smpng/sys/dev/mii/miidevs#12 integrate .. //depot/projects/smpng/sys/dev/nmdm/nmdm.c#15 integrate .. //depot/projects/smpng/sys/dev/null/null.c#13 integrate .. //depot/projects/smpng/sys/dev/ofw/ofw_console.c#14 integrate .. //depot/projects/smpng/sys/dev/ofw/ofw_disk.c#7 integrate .. //depot/projects/smpng/sys/dev/ofw/openfirmio.c#6 integrate .. //depot/projects/smpng/sys/dev/owi/if_owi.c#2 integrate .. //depot/projects/smpng/sys/dev/pccard/card_if.m#9 integrate .. //depot/projects/smpng/sys/dev/pccard/pccard.c#24 integrate .. //depot/projects/smpng/sys/dev/pccard/pccard_cis.c#13 integrate .. //depot/projects/smpng/sys/dev/pccard/pccard_cis.h#1 branch .. //depot/projects/smpng/sys/dev/pccard/pccard_cis_quirks.c#5 integrate .. //depot/projects/smpng/sys/dev/pccard/pccarddevs#31 integrate .. //depot/projects/smpng/sys/dev/pccard/pccarddevs.h#31 integrate .. //depot/projects/smpng/sys/dev/pccard/pccardreg.h#2 integrate .. //depot/projects/smpng/sys/dev/pccard/pccardvar.h#15 integrate .. //depot/projects/smpng/sys/dev/pci/pci_pci.c#17 integrate .. //depot/projects/smpng/sys/dev/pci/pci_user.c#10 integrate .. //depot/projects/smpng/sys/dev/puc/puc.c#16 integrate .. //depot/projects/smpng/sys/dev/puc/pucdata.c#19 integrate .. //depot/projects/smpng/sys/dev/puc/pucvar.h#10 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_decluster.c#3 integrate .. //depot/projects/smpng/sys/dev/raidframe/rf_freebsdkintf.c#10 integrate .. //depot/projects/smpng/sys/dev/re/if_re.c#2 integrate .. //depot/projects/smpng/sys/dev/sab/sab.c#12 integrate .. //depot/projects/smpng/sys/dev/scd/scd.c#6 integrate .. //depot/projects/smpng/sys/dev/sio/sio.c#35 integrate .. //depot/projects/smpng/sys/dev/sio/sio_pccard.c#8 integrate .. //depot/projects/smpng/sys/dev/sound/pci/au88x0.c#5 integrate .. //depot/projects/smpng/sys/dev/sound/pci/au88x0.h#2 integrate .. //depot/projects/smpng/sys/dev/sound/pcm/ac97.c#20 integrate .. //depot/projects/smpng/sys/dev/streams/streams.c#16 integrate .. //depot/projects/smpng/sys/dev/syscons/syscons.c#31 integrate .. //depot/projects/smpng/sys/dev/uart/uart.h#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_bus.h#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_bus_acpi.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_bus_ebus.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_bus_isa.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_bus_pccard.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_bus_pci.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_bus_puc.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_core.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_cpu.h#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_cpu_alpha.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_cpu_amd64.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_cpu_i386.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_cpu_ia64.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_cpu_pc98.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_cpu_sparc64.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_dev_sab82532.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_dev_z8530.c#2 integrate .. //depot/projects/smpng/sys/dev/uart/uart_tty.c#2 integrate .. //depot/projects/smpng/sys/dev/usb/if_aue.c#25 integrate .. //depot/projects/smpng/sys/dev/usb/if_auereg.h#6 integrate .. //depot/projects/smpng/sys/dev/usb/if_cue.c#17 integrate .. //depot/projects/smpng/sys/dev/usb/if_cuereg.h#4 integrate .. //depot/projects/smpng/sys/dev/usb/if_kue.c#16 integrate .. //depot/projects/smpng/sys/dev/usb/if_kuereg.h#5 integrate .. //depot/projects/smpng/sys/dev/usb/if_rue.c#4 integrate .. //depot/projects/smpng/sys/dev/usb/if_ruereg.h#2 integrate .. //depot/projects/smpng/sys/dev/usb/ubsa.c#7 integrate .. //depot/projects/smpng/sys/dev/usb/ufm.c#8 integrate .. //depot/projects/smpng/sys/dev/usb/ugen.c#19 integrate .. //depot/projects/smpng/sys/dev/usb/uhid.c#17 integrate .. //depot/projects/smpng/sys/dev/usb/ukbd.c#12 integrate .. //depot/projects/smpng/sys/dev/usb/ulpt.c#15 integrate .. //depot/projects/smpng/sys/dev/usb/umass.c#30 integrate .. //depot/projects/smpng/sys/dev/usb/ums.c#13 integrate .. //depot/projects/smpng/sys/dev/usb/usb.c#22 integrate .. //depot/projects/smpng/sys/dev/usb/usb_mem.c#3 integrate .. //depot/projects/smpng/sys/dev/usb/usb_port.h#17 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs#39 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs.h#39 integrate .. //depot/projects/smpng/sys/dev/usb/usbdevs_data.h#39 integrate .. //depot/projects/smpng/sys/dev/usb/uscanner.c#15 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumconfig.c#16 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumrequest.c#13 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumrevive.c#9 integrate .. //depot/projects/smpng/sys/dev/vinum/vinumvar.h#6 integrate .. //depot/projects/smpng/sys/dev/wi/if_wi_pccard.c#25 integrate .. //depot/projects/smpng/sys/dev/xe/if_xe.c#10 integrate .. //depot/projects/smpng/sys/dev/xe/if_xe_pccard.c#8 integrate .. //depot/projects/smpng/sys/dev/xe/if_xereg.h#2 integrate .. //depot/projects/smpng/sys/dev/xe/if_xevar.h#3 integrate .. //depot/projects/smpng/sys/dev/zs/zs.c#9 integrate .. //depot/projects/smpng/sys/fs/devfs/devfs_vnops.c#29 integrate .. //depot/projects/smpng/sys/fs/fdescfs/fdesc_vnops.c#14 integrate .. //depot/projects/smpng/sys/fs/hpfs/hpfs_vnops.c#19 integrate .. //depot/projects/smpng/sys/fs/msdosfs/direntry.h#3 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_conv.c#5 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_denode.c#13 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_iconv.c#1 branch .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_lookup.c#5 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_vfsops.c#22 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfs_vnops.c#21 integrate .. //depot/projects/smpng/sys/fs/msdosfs/msdosfsmount.h#6 integrate .. //depot/projects/smpng/sys/fs/ntfs/ntfs.h#5 integrate .. //depot/projects/smpng/sys/fs/ntfs/ntfs_iconv.c#1 branch .. //depot/projects/smpng/sys/fs/ntfs/ntfs_subr.c#15 integrate .. //depot/projects/smpng/sys/fs/ntfs/ntfs_subr.h#4 integrate .. //depot/projects/smpng/sys/fs/ntfs/ntfs_vfsops.c#19 integrate .. //depot/projects/smpng/sys/fs/ntfs/ntfs_vnops.c#14 integrate .. //depot/projects/smpng/sys/fs/ntfs/ntfsmount.h#3 integrate .. //depot/projects/smpng/sys/fs/nwfs/nwfs_io.c#10 integrate .. //depot/projects/smpng/sys/fs/nwfs/nwfs_node.c#10 integrate .. //depot/projects/smpng/sys/fs/nwfs/nwfs_vnops.c#8 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_dbregs.c#12 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_fpregs.c#12 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_map.c#5 integrate .. //depot/projects/smpng/sys/fs/procfs/procfs_regs.c#12 integrate .. //depot/projects/smpng/sys/fs/pseudofs/pseudofs_vncache.c#16 integrate .. //depot/projects/smpng/sys/fs/pseudofs/pseudofs_vnops.c#28 integrate .. //depot/projects/smpng/sys/fs/smbfs/smbfs_io.c#14 integrate .. //depot/projects/smpng/sys/fs/smbfs/smbfs_node.c#12 integrate .. //depot/projects/smpng/sys/fs/smbfs/smbfs_vfsops.c#20 integrate .. //depot/projects/smpng/sys/fs/smbfs/smbfs_vnops.c#21 integrate .. //depot/projects/smpng/sys/fs/specfs/spec_vnops.c#27 integrate .. //depot/projects/smpng/sys/fs/udf/udf_vnops.c#13 integrate .. //depot/projects/smpng/sys/geom/bde/g_bde.h#4 integrate .. //depot/projects/smpng/sys/geom/bde/g_bde_lock.c#9 integrate .. //depot/projects/smpng/sys/geom/geom.h#32 integrate .. //depot/projects/smpng/sys/geom/geom_ctl.c#17 integrate .. //depot/projects/smpng/sys/geom/geom_dev.c#31 integrate .. //depot/projects/smpng/sys/geom/geom_disk.c#30 integrate .. //depot/projects/smpng/sys/geom/geom_event.c#20 integrate .. //depot/projects/smpng/sys/geom/geom_fox.c#2 integrate .. //depot/projects/smpng/sys/geom/geom_io.c#24 integrate .. //depot/projects/smpng/sys/geom/geom_subr.c#32 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_bmap.c#5 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_inode.c#11 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_vfsops.c#25 integrate .. //depot/projects/smpng/sys/gnu/ext2fs/ext2_vnops.c#18 integrate .. //depot/projects/smpng/sys/i386/acpica/acpi_wakeup.c#21 integrate .. //depot/projects/smpng/sys/i386/bios/smapi.c#4 integrate .. //depot/projects/smpng/sys/i386/conf/GENERIC#42 integrate .. //depot/projects/smpng/sys/i386/conf/NOTES#64 integrate .. //depot/projects/smpng/sys/i386/i386/bios.c#18 integrate .. //depot/projects/smpng/sys/i386/i386/elan-mmcr.c#10 integrate .. //depot/projects/smpng/sys/i386/i386/elf_machdep.c#9 integrate .. //depot/projects/smpng/sys/i386/i386/genassym.c#25 integrate .. //depot/projects/smpng/sys/i386/i386/i686_mem.c#9 integrate .. //depot/projects/smpng/sys/i386/i386/locore.s#19 integrate .. //depot/projects/smpng/sys/i386/i386/machdep.c#65 integrate .. //depot/projects/smpng/sys/i386/i386/mp_machdep.c#53 integrate .. //depot/projects/smpng/sys/i386/i386/mpboot.s#3 integrate .. //depot/projects/smpng/sys/i386/i386/pmap.c#48 integrate .. //depot/projects/smpng/sys/i386/i386/support.s#12 integrate .. //depot/projects/smpng/sys/i386/i386/swtch.s#20 integrate .. //depot/projects/smpng/sys/i386/i386/trap.c#63 integrate .. //depot/projects/smpng/sys/i386/i386/tsc.c#8 integrate .. //depot/projects/smpng/sys/i386/i386/vm_machdep.c#43 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_misc.c#12 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_signal.c#11 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_socksys.c#10 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_sysvec.c#5 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_util.c#7 integrate .. //depot/projects/smpng/sys/i386/ibcs2/ibcs2_util.h#5 integrate .. //depot/projects/smpng/sys/i386/ibcs2/imgact_coff.c#16 integrate .. //depot/projects/smpng/sys/i386/include/bus_at386.h#9 integrate .. //depot/projects/smpng/sys/i386/include/bus_pc98.h#8 integrate .. //depot/projects/smpng/sys/i386/include/clock.h#6 integrate .. //depot/projects/smpng/sys/i386/include/elf.h#6 integrate .. //depot/projects/smpng/sys/i386/include/endian.h#12 integrate .. //depot/projects/smpng/sys/i386/include/md_var.h#22 integrate .. //depot/projects/smpng/sys/i386/include/pcb.h#10 integrate .. //depot/projects/smpng/sys/i386/include/pmap.h#17 integrate .. //depot/projects/smpng/sys/i386/include/vmparam.h#5 integrate .. //depot/projects/smpng/sys/i386/isa/apic_vector.s#18 integrate .. //depot/projects/smpng/sys/i386/isa/clock.c#29 integrate .. //depot/projects/smpng/sys/i386/isa/cy.c#19 integrate .. //depot/projects/smpng/sys/i386/isa/isa_compat.c#4 integrate .. //depot/projects/smpng/sys/i386/isa/pcvt/pcvt_drv.c#11 integrate .. //depot/projects/smpng/sys/i386/linux/linux_sysvec.c#35 integrate .. //depot/projects/smpng/sys/i386/pci/pci_cfgreg.c#21 integrate .. //depot/projects/smpng/sys/ia64/ia32/ia32_sysvec.c#5 integrate .. //depot/projects/smpng/sys/ia64/ia64/elf_machdep.c#11 integrate .. //depot/projects/smpng/sys/ia64/ia64/genassym.c#23 integrate .. //depot/projects/smpng/sys/ia64/ia64/machdep.c#66 integrate .. //depot/projects/smpng/sys/ia64/ia64/pmap.c#53 integrate .. //depot/projects/smpng/sys/ia64/ia64/ssc.c#11 integrate .. //depot/projects/smpng/sys/ia64/ia64/syscall.S#4 integrate .. //depot/projects/smpng/sys/ia64/ia64/trap.c#56 integrate .. //depot/projects/smpng/sys/ia64/ia64/uma_machdep.c#1 branch .. //depot/projects/smpng/sys/ia64/ia64/unwind.c#10 integrate .. //depot/projects/smpng/sys/ia64/ia64/vm_machdep.c#33 integrate .. //depot/projects/smpng/sys/ia64/include/bus.h#13 integrate .. //depot/projects/smpng/sys/ia64/include/cpu.h#19 integrate .. //depot/projects/smpng/sys/ia64/include/elf.h#9 integrate .. //depot/projects/smpng/sys/ia64/include/pmap.h#14 integrate .. //depot/projects/smpng/sys/ia64/include/proc.h#7 integrate .. //depot/projects/smpng/sys/ia64/include/varargs.h#5 integrate .. //depot/projects/smpng/sys/ia64/include/vmparam.h#7 integrate .. //depot/projects/smpng/sys/isa/fd.c#25 integrate .. //depot/projects/smpng/sys/isa/vga_isa.c#9 integrate .. //depot/projects/smpng/sys/isofs/cd9660/cd9660_iconv.c#1 branch .. //depot/projects/smpng/sys/isofs/cd9660/cd9660_lookup.c#9 integrate .. //depot/projects/smpng/sys/isofs/cd9660/cd9660_mount.h#2 integrate .. //depot/projects/smpng/sys/isofs/cd9660/cd9660_node.c#10 integrate .. //depot/projects/smpng/sys/isofs/cd9660/cd9660_rrip.c#6 integrate .. //depot/projects/smpng/sys/isofs/cd9660/cd9660_util.c#4 integrate .. //depot/projects/smpng/sys/isofs/cd9660/cd9660_vfsops.c#23 integrate .. //depot/projects/smpng/sys/isofs/cd9660/cd9660_vnops.c#12 integrate .. //depot/projects/smpng/sys/isofs/cd9660/iso.h#5 integrate .. //depot/projects/smpng/sys/kern/imgact_aout.c#20 integrate .. //depot/projects/smpng/sys/kern/imgact_elf.c#29 integrate .. //depot/projects/smpng/sys/kern/init_main.c#39 integrate .. //depot/projects/smpng/sys/kern/init_sysent.c#33 integrate .. //depot/projects/smpng/sys/kern/kern_clock.c#29 integrate .. //depot/projects/smpng/sys/kern/kern_conf.c#22 integrate .. //depot/projects/smpng/sys/kern/kern_descrip.c#52 integrate .. //depot/projects/smpng/sys/kern/kern_event.c#20 integrate .. //depot/projects/smpng/sys/kern/kern_exec.c#62 integrate .. //depot/projects/smpng/sys/kern/kern_idle.c#16 integrate .. //depot/projects/smpng/sys/kern/kern_linker.c#32 integrate .. //depot/projects/smpng/sys/kern/kern_mac.c#29 integrate .. //depot/projects/smpng/sys/kern/kern_malloc.c#25 integrate .. //depot/projects/smpng/sys/kern/kern_mib.c#23 integrate .. //depot/projects/smpng/sys/kern/kern_physio.c#11 integrate .. //depot/projects/smpng/sys/kern/kern_poll.c#10 integrate .. //depot/projects/smpng/sys/kern/kern_proc.c#57 integrate .. //depot/projects/smpng/sys/kern/kern_sig.c#76 integrate .. //depot/projects/smpng/sys/kern/kern_subr.c#26 integrate .. //depot/projects/smpng/sys/kern/kern_switch.c#32 integrate .. //depot/projects/smpng/sys/kern/kern_synch.c#58 integrate .. //depot/projects/smpng/sys/kern/kern_sysctl.c#33 integrate .. //depot/projects/smpng/sys/kern/linker_if.m#3 integrate .. //depot/projects/smpng/sys/kern/sched_4bsd.c#14 integrate .. //depot/projects/smpng/sys/kern/sched_ule.c#16 integrate .. //depot/projects/smpng/sys/kern/subr_bus.c#26 integrate .. //depot/projects/smpng/sys/kern/subr_devstat.c#12 integrate .. //depot/projects/smpng/sys/kern/subr_disk.c#21 integrate .. //depot/projects/smpng/sys/kern/subr_kobj.c#5 integrate .. //depot/projects/smpng/sys/kern/subr_mbuf.c#38 integrate .. //depot/projects/smpng/sys/kern/subr_smp.c#20 integrate .. //depot/projects/smpng/sys/kern/subr_witness.c#105 integrate .. //depot/projects/smpng/sys/kern/subr_xxx.c#9 delete .. //depot/projects/smpng/sys/kern/sys_generic.c#27 integrate .. //depot/projects/smpng/sys/kern/sys_pipe.c#34 integrate .. //depot/projects/smpng/sys/kern/sys_process.c#32 integrate .. //depot/projects/smpng/sys/kern/syscalls.c#33 integrate .. //depot/projects/smpng/sys/kern/syscalls.master#32 integrate .. //depot/projects/smpng/sys/kern/sysv_msg.c#20 integrate .. //depot/projects/smpng/sys/kern/sysv_sem.c#21 integrate .. //depot/projects/smpng/sys/kern/sysv_shm.c#19 integrate .. //depot/projects/smpng/sys/kern/tty_cons.c#22 integrate .. //depot/projects/smpng/sys/kern/tty_pty.c#25 integrate .. //depot/projects/smpng/sys/kern/tty_tty.c#11 integrate .. //depot/projects/smpng/sys/kern/uipc_socket.c#41 integrate .. //depot/projects/smpng/sys/kern/uipc_socket2.c#26 integrate .. //depot/projects/smpng/sys/kern/uipc_syscalls.c#39 integrate .. //depot/projects/smpng/sys/kern/vfs_aio.c#42 integrate .. //depot/projects/smpng/sys/kern/vfs_bio.c#50 integrate .. //depot/projects/smpng/sys/kern/vfs_cache.c#20 integrate .. //depot/projects/smpng/sys/kern/vfs_cluster.c#29 integrate .. //depot/projects/smpng/sys/kern/vfs_default.c#22 integrate .. //depot/projects/smpng/sys/kern/vfs_init.c#10 integrate .. //depot/projects/smpng/sys/kern/vfs_mount.c#18 integrate .. //depot/projects/smpng/sys/kern/vfs_subr.c#59 integrate .. //depot/projects/smpng/sys/kern/vfs_syscalls.c#63 integrate .. //depot/projects/smpng/sys/kern/vfs_vnops.c#41 integrate .. //depot/projects/smpng/sys/libkern/iconv.c#6 integrate .. //depot/projects/smpng/sys/libkern/iconv_converter_if.m#2 integrate .. //depot/projects/smpng/sys/libkern/iconv_xlat.c#4 integrate .. //depot/projects/smpng/sys/libkern/iconv_xlat16.c#1 branch .. //depot/projects/smpng/sys/modules/Makefile#62 integrate .. //depot/projects/smpng/sys/modules/bridge/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/cd9660/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/cd9660_iconv/Makefile#1 branch .. //depot/projects/smpng/sys/modules/firewire/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/firewire/sbp/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/firewire/sbp_targ/Makefile#1 branch .. //depot/projects/smpng/sys/modules/ipfilter/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/libiconv/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/msdosfs/Makefile#4 integrate .. //depot/projects/smpng/sys/modules/msdosfs_iconv/Makefile#1 branch .. //depot/projects/smpng/sys/modules/netgraph/bluetooth/bluetooth/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/netgraph/bluetooth/bt3c/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/netgraph/bluetooth/h4/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/netgraph/bluetooth/hci/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/netgraph/bluetooth/l2cap/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/netgraph/bluetooth/socket/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/netgraph/bluetooth/ubt/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/netgraph/bluetooth/ubtbcmfw/Makefile#2 integrate .. //depot/projects/smpng/sys/modules/ntfs/Makefile#3 integrate .. //depot/projects/smpng/sys/modules/ntfs_iconv/Makefile#1 branch .. //depot/projects/smpng/sys/net/bpf.c#27 integrate .. //depot/projects/smpng/sys/net/bpf.h#7 integrate .. //depot/projects/smpng/sys/net/bridge.c#20 integrate .. //depot/projects/smpng/sys/net/if.c#36 integrate .. //depot/projects/smpng/sys/net/if.h#14 integrate .. //depot/projects/smpng/sys/net/if_disc.c#8 integrate .. //depot/projects/smpng/sys/net/if_ethersubr.c#37 integrate .. //depot/projects/smpng/sys/net/if_faith.c#15 integrate .. //depot/projects/smpng/sys/net/if_loop.c#20 integrate .. //depot/projects/smpng/sys/net/if_stf.c#20 integrate .. //depot/projects/smpng/sys/net/if_tun.c#24 integrate .. //depot/projects/smpng/sys/net/if_tunvar.h#2 integrate .. //depot/projects/smpng/sys/net/if_var.h#16 integrate .. //depot/projects/smpng/sys/net/net_osdep.c#4 integrate .. //depot/projects/smpng/sys/net/net_osdep.h#8 integrate .. //depot/projects/smpng/sys/net/netisr.c#4 integrate .. //depot/projects/smpng/sys/net/pfil.c#4 integrate .. //depot/projects/smpng/sys/net/pfil.h#5 integrate .. //depot/projects/smpng/sys/net/pfkeyv2.h#4 integrate .. //depot/projects/smpng/sys/net/radix.c#8 integrate .. //depot/projects/smpng/sys/net/route.c#12 integrate .. //depot/projects/smpng/sys/net/route.h#12 integrate .. //depot/projects/smpng/sys/net/rtsock.c#26 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_crypto.c#2 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_input.c#6 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_ioctl.c#5 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_ioctl.h#2 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_node.c#7 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_node.h#5 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_output.c#5 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_proto.c#3 integrate .. //depot/projects/smpng/sys/net80211/ieee80211_var.h#5 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#7 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/drivers/ubtbcmfw/ubtbcmfw.c#2 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/hci/ng_hci_cmds.c#4 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/hci/ng_hci_evnt.c#4 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/hci/ng_hci_misc.c#4 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/hci/ng_hci_misc.h#3 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/hci/ng_hci_ulpi.c#4 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/l2cap/ng_l2cap_cmds.c#3 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/l2cap/ng_l2cap_evnt.c#4 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/l2cap/ng_l2cap_llpi.c#4 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/l2cap/ng_l2cap_misc.c#4 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/l2cap/ng_l2cap_misc.h#3 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket.c#4 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c#8 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c#7 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c#6 integrate .. //depot/projects/smpng/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#3 integrate .. //depot/projects/smpng/sys/netgraph/ng_base.c#16 integrate .. //depot/projects/smpng/sys/netgraph/ng_message.h#4 integrate .. //depot/projects/smpng/sys/netinet/icmp6.h#6 integrate .. //depot/projects/smpng/sys/netinet/if_atm.c#5 integrate .. //depot/projects/smpng/sys/netinet/if_ether.c#18 integrate .. //depot/projects/smpng/sys/netinet/in_gif.c#8 integrate .. //depot/projects/smpng/sys/netinet/in_gif.h#6 integrate .. //depot/projects/smpng/sys/netinet/in_pcb.c#34 integrate .. //depot/projects/smpng/sys/netinet/in_proto.c#10 integrate .. //depot/projects/smpng/sys/netinet/in_rmx.c#6 integrate .. //depot/projects/smpng/sys/netinet/ip6.h#3 integrate .. //depot/projects/smpng/sys/netinet/ip_dummynet.c#21 integrate .. //depot/projects/smpng/sys/netinet/ip_dummynet.h#11 integrate .. //depot/projects/smpng/sys/netinet/ip_flow.c#4 integrate .. //depot/projects/smpng/sys/netinet/ip_fw2.c#19 integrate .. //depot/projects/smpng/sys/netinet/ip_icmp.c#19 integrate .. //depot/projects/smpng/sys/netinet/ip_input.c#39 integrate .. //depot/projects/smpng/sys/netinet/ip_output.c#43 integrate .. //depot/projects/smpng/sys/netinet/ip_var.h#15 integrate .. //depot/projects/smpng/sys/netinet/tcp_input.c#37 integrate .. //depot/projects/smpng/sys/netinet/tcp_subr.c#34 integrate .. //depot/projects/smpng/sys/netinet/tcp_syncache.c#21 integrate .. //depot/projects/smpng/sys/netinet6/ah.h#4 integrate .. //depot/projects/smpng/sys/netinet6/ah6.h#2 integrate .. //depot/projects/smpng/sys/netinet6/ah_aesxcbcmac.c#1 branch .. //depot/projects/smpng/sys/netinet6/ah_aesxcbcmac.h#1 branch .. //depot/projects/smpng/sys/netinet6/ah_core.c#4 integrate .. //depot/projects/smpng/sys/netinet6/ah_input.c#9 integrate .. //depot/projects/smpng/sys/netinet6/ah_output.c#5 integrate .. //depot/projects/smpng/sys/netinet6/dest6.c#3 integrate .. //depot/projects/smpng/sys/netinet6/esp.h#4 integrate .. //depot/projects/smpng/sys/netinet6/esp_aesctr.c#1 branch .. //depot/projects/smpng/sys/netinet6/esp_aesctr.h#1 branch .. //depot/projects/smpng/sys/netinet6/esp_core.c#7 integrate .. //depot/projects/smpng/sys/netinet6/esp_input.c#13 integrate .. //depot/projects/smpng/sys/netinet6/esp_output.c#5 integrate .. //depot/projects/smpng/sys/netinet6/esp_rijndael.c#3 integrate .. //depot/projects/smpng/sys/netinet6/esp_rijndael.h#2 integrate .. //depot/projects/smpng/sys/netinet6/frag6.c#4 integrate .. //depot/projects/smpng/sys/netinet6/icmp6.c#16 integrate .. //depot/projects/smpng/sys/netinet6/in6.c#13 integrate .. //depot/projects/smpng/sys/netinet6/in6.h#10 integrate .. //depot/projects/smpng/sys/netinet6/in6_cksum.c#5 integrate .. //depot/projects/smpng/sys/netinet6/in6_gif.c#5 integrate .. //depot/projects/smpng/sys/netinet6/in6_gif.h#3 integrate .. //depot/projects/smpng/sys/netinet6/in6_ifattach.c#7 integrate .. //depot/projects/smpng/sys/netinet6/in6_pcb.c#22 integrate .. //depot/projects/smpng/sys/netinet6/in6_prefix.c#3 integrate .. //depot/projects/smpng/sys/netinet6/in6_proto.c#5 integrate .. //depot/projects/smpng/sys/netinet6/in6_rmx.c#4 integrate .. //depot/projects/smpng/sys/netinet6/in6_src.c#10 integrate .. //depot/projects/smpng/sys/netinet6/in6_var.h#6 integrate .. //depot/projects/smpng/sys/netinet6/ip6_forward.c#7 integrate .. //depot/projects/smpng/sys/netinet6/ip6_fw.c#12 integrate .. //depot/projects/smpng/sys/netinet6/ip6_fw.h#3 integrate .. //depot/projects/smpng/sys/netinet6/ip6_id.c#1 branch .. //depot/projects/smpng/sys/netinet6/ip6_input.c#23 integrate .. //depot/projects/smpng/sys/netinet6/ip6_mroute.c#13 integrate .. //depot/projects/smpng/sys/netinet6/ip6_output.c#18 integrate .. //depot/projects/smpng/sys/netinet6/ip6_var.h#7 integrate .. //depot/projects/smpng/sys/netinet6/ip6protosw.h#5 integrate .. //depot/projects/smpng/sys/netinet6/ipcomp_core.c#6 integrate .. //depot/projects/smpng/sys/netinet6/ipcomp_input.c#5 integrate .. //depot/projects/smpng/sys/netinet6/ipsec.c#10 integrate .. //depot/projects/smpng/sys/netinet6/ipsec.h#5 integrate .. //depot/projects/smpng/sys/netinet6/mld6.c#5 integrate .. //depot/projects/smpng/sys/netinet6/mld6_var.h#2 integrate .. //depot/projects/smpng/sys/netinet6/nd6.c#13 integrate .. //depot/projects/smpng/sys/netinet6/nd6.h#6 integrate .. //depot/projects/smpng/sys/netinet6/nd6_nbr.c#8 integrate .. //depot/projects/smpng/sys/netinet6/nd6_rtr.c#8 integrate .. //depot/projects/smpng/sys/netinet6/raw_ip6.c#16 integrate .. //depot/projects/smpng/sys/netinet6/route6.c#4 integrate .. //depot/projects/smpng/sys/netinet6/scope6.c#4 integrate .. //depot/projects/smpng/sys/netinet6/scope6_var.h#2 integrate .. //depot/projects/smpng/sys/netinet6/udp6_output.c#11 integrate .. //depot/projects/smpng/sys/netinet6/udp6_usrreq.c#21 integrate .. //depot/projects/smpng/sys/netipsec/ipsec.c#7 integrate .. //depot/projects/smpng/sys/netipsec/ipsec.h#4 integrate .. //depot/projects/smpng/sys/netipsec/ipsec_input.c#7 integrate .. //depot/projects/smpng/sys/netipsec/ipsec_mbuf.c#7 integrate .. //depot/projects/smpng/sys/netipsec/ipsec_osdep.h#1 branch .. //depot/projects/smpng/sys/netipsec/ipsec_output.c#8 integrate .. //depot/projects/smpng/sys/netipsec/key.c#6 integrate .. //depot/projects/smpng/sys/netipsec/key_debug.c#2 integrate .. //depot/projects/smpng/sys/netipsec/keydb.h#3 integrate .. //depot/projects/smpng/sys/netipsec/keysock.c#5 integrate .. //depot/projects/smpng/sys/netipsec/xform_ah.c#5 integrate .. //depot/projects/smpng/sys/netipsec/xform_esp.c#5 integrate .. //depot/projects/smpng/sys/netipsec/xform_ipcomp.c#5 integrate .. //depot/projects/smpng/sys/netipsec/xform_ipip.c#5 integrate .. //depot/projects/smpng/sys/netkey/key.c#17 integrate .. //depot/projects/smpng/sys/netkey/key_debug.c#7 integrate .. //depot/projects/smpng/sys/netkey/key_debug.h#4 integrate .. //depot/projects/smpng/sys/netkey/key_var.h#4 integrate .. //depot/projects/smpng/sys/netkey/keysock.c#16 integrate .. //depot/projects/smpng/sys/netncp/ncp_mod.c#5 integrate .. //depot/projects/smpng/sys/netsmb/smb_dev.c#12 integrate .. //depot/projects/smpng/sys/nfsclient/bootp_subr.c#20 integrate .. //depot/projects/smpng/sys/nfsclient/krpc_subr.c#8 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_bio.c#21 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_node.c#12 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_socket.c#19 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_subs.c#12 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vfsops.c#26 integrate .. //depot/projects/smpng/sys/nfsclient/nfs_vnops.c#33 integrate .. //depot/projects/smpng/sys/nfsserver/nfs_syscalls.c#20 integrate .. //depot/projects/smpng/sys/opencrypto/cryptodev.c#9 integrate .. //depot/projects/smpng/sys/pc98/i386/busiosubr.c#3 integrate .. //depot/projects/smpng/sys/pc98/i386/machdep.c#59 integrate .. //depot/projects/smpng/sys/pc98/pc98/clock.c#21 integrate .. //depot/projects/smpng/sys/pc98/pc98/fd.c#26 integrate .. //depot/projects/smpng/sys/pc98/pc98/pc98gdc.c#9 integrate .. //depot/projects/smpng/sys/pc98/pc98/sio.c#32 integrate .. //depot/projects/smpng/sys/pc98/pc98/wd.c#13 integrate .. //depot/projects/smpng/sys/pc98/pc98/wd_cd.c#14 integrate .. //depot/projects/smpng/sys/pccard/pcic.c#23 integrate .. //depot/projects/smpng/sys/pccard/pcic_pci.c#30 integrate .. //depot/projects/smpng/sys/pci/agp_i810.c#11 integrate .. //depot/projects/smpng/sys/pci/if_dc.c#45 integrate .. //depot/projects/smpng/sys/pci/if_dcreg.h#18 integrate .. //depot/projects/smpng/sys/pci/if_rlreg.h#14 integrate .. //depot/projects/smpng/sys/pci/if_sis.c#32 integrate .. //depot/projects/smpng/sys/pci/if_sk.c#21 integrate .. //depot/projects/smpng/sys/pci/if_skreg.h#2 integrate .. //depot/projects/smpng/sys/pci/if_ti.c#31 integrate .. //depot/projects/smpng/sys/pci/if_xl.c#35 integrate .. //depot/projects/smpng/sys/pci/yukonreg.h#1 branch .. //depot/projects/smpng/sys/powerpc/include/cpu.h#15 integrate .. //depot/projects/smpng/sys/powerpc/include/elf.h#5 integrate .. //depot/projects/smpng/sys/powerpc/include/param.h#9 integrate .. //depot/projects/smpng/sys/powerpc/include/pmap.h#10 integrate .. //depot/projects/smpng/sys/powerpc/powermac/ata_macio.c#5 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/clock.c#11 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/cpu.c#2 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/elf_machdep.c#8 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/machdep.c#43 integrate .. //depot/projects/smpng/sys/powerpc/powerpc/pmap.c#32 integrate .. //depot/projects/smpng/sys/powerpc/psim/ata_iobus.c#4 integrate .. //depot/projects/smpng/sys/security/mac/mac_internal.h#1 branch .. //depot/projects/smpng/sys/security/mac/mac_net.c#1 branch .. //depot/projects/smpng/sys/security/mac/mac_pipe.c#1 branch .. //depot/projects/smpng/sys/security/mac/mac_process.c#1 branch .. //depot/projects/smpng/sys/security/mac/mac_system.c#1 branch .. //depot/projects/smpng/sys/security/mac/mac_vfs.c#1 branch .. //depot/projects/smpng/sys/security/mac_lomac/mac_lomac.c#12 integrate .. //depot/projects/smpng/sys/sparc64/include/bus.h#20 integrate .. //depot/projects/smpng/sys/sparc64/include/elf.h#10 integrate .. //depot/projects/smpng/sys/sparc64/include/endian.h#12 integrate .. //depot/projects/smpng/sys/sparc64/include/param.h#14 integrate .. //depot/projects/smpng/sys/sparc64/include/pmap.h#24 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/elf_machdep.c#13 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/machdep.c#57 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/pmap.c#44 integrate .. //depot/projects/smpng/sys/sparc64/sparc64/trap.c#54 integrate .. //depot/projects/smpng/sys/sys/bio.h#16 integrate .. //depot/projects/smpng/sys/sys/buf.h#24 integrate .. //depot/projects/smpng/sys/sys/bus.h#12 integrate .. //depot/projects/smpng/sys/sys/cdefs.h#21 integrate .. //depot/projects/smpng/sys/sys/cdio.h#5 integrate .. //depot/projects/smpng/sys/sys/conf.h#23 integrate .. //depot/projects/smpng/sys/sys/cons.h#6 integrate .. //depot/projects/smpng/sys/sys/domain.h#5 integrate .. //depot/projects/smpng/sys/sys/endian.h#3 integrate .. //depot/projects/smpng/sys/sys/iconv.h#5 integrate .. //depot/projects/smpng/sys/sys/kernel.h#21 integrate .. //depot/projects/smpng/sys/sys/kobj.h#3 integrate .. //depot/projects/smpng/sys/sys/lock.h#28 integrate .. //depot/projects/smpng/sys/sys/mac.h#19 integrate .. //depot/projects/smpng/sys/sys/mbuf.h#26 integrate .. //depot/projects/smpng/sys/sys/mutex.h#38 integrate .. //depot/projects/smpng/sys/sys/param.h#49 integrate .. //depot/projects/smpng/sys/sys/proc.h#100 integrate .. //depot/projects/smpng/sys/sys/protosw.h#9 integrate .. //depot/projects/smpng/sys/sys/ptrace.h#10 integrate .. //depot/projects/smpng/sys/sys/sched.h#4 integrate .. //depot/projects/smpng/sys/sys/signalvar.h#19 integrate .. //depot/projects/smpng/sys/sys/syscall.h#33 integrate .. //depot/projects/smpng/sys/sys/syscall.mk#33 integrate .. //depot/projects/smpng/sys/sys/sysctl.h#22 integrate .. //depot/projects/smpng/sys/sys/sysent.h#10 integrate .. //depot/projects/smpng/sys/sys/sysproto.h#35 integrate .. //depot/projects/smpng/sys/sys/systm.h#44 integrate .. //depot/projects/smpng/sys/sys/uio.h#12 integrate .. //depot/projects/smpng/sys/sys/vnode.h#36 integrate .. //depot/projects/smpng/sys/tools/makeobjops.awk#3 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_inode.c#15 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_rawread.c#7 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_snapshot.c#30 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_softdep.c#28 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_vfsops.c#45 integrate .. //depot/projects/smpng/sys/ufs/ffs/ffs_vnops.c#23 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_bmap.c#10 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_ihash.c#10 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_inode.c#15 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_quota.c#21 integrate .. //depot/projects/smpng/sys/ufs/ufs/ufs_vnops.c#32 integrate .. //depot/projects/smpng/sys/vm/device_pager.c#12 integrate .. //depot/projects/smpng/sys/vm/pmap.h#22 integrate .. //depot/projects/smpng/sys/vm/swap_pager.c#33 integrate .. //depot/projects/smpng/sys/vm/uma.h#10 integrate .. //depot/projects/smpng/sys/vm/uma_core.c#37 integrate .. //depot/projects/smpng/sys/vm/uma_dbg.c#7 integrate .. //depot/projects/smpng/sys/vm/uma_int.h#17 integrate .. //depot/projects/smpng/sys/vm/vm_contig.c#18 integrate .. //depot/projects/smpng/sys/vm/vm_extern.h#17 integrate .. //depot/projects/smpng/sys/vm/vm_fault.c#29 integrate .. //depot/projects/smpng/sys/vm/vm_glue.c#34 integrate .. //depot/projects/smpng/sys/vm/vm_kern.c#20 integrate .. //depot/projects/smpng/sys/vm/vm_map.c#44 integrate .. //depot/projects/smpng/sys/vm/vm_map.h#22 integrate .. //depot/projects/smpng/sys/vm/vm_mmap.c#33 integrate .. //depot/projects/smpng/sys/vm/vm_object.c#44 integrate .. //depot/projects/smpng/sys/vm/vm_page.c#42 integrate .. //depot/projects/smpng/sys/vm/vm_page.h#20 integrate .. //depot/projects/smpng/sys/vm/vm_pageout.c#38 integrate .. //depot/projects/smpng/sys/vm/vm_pageout.h#12 integrate .. //depot/projects/smpng/sys/vm/vm_pager.c#16 integrate .. //depot/projects/smpng/sys/vm/vnode_pager.c#35 integrate Differences ... ==== //depot/projects/smpng/sys/alpha/alpha/elf_machdep.c#11 (text+ko) ==== @@ -24,7 +24,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/elf_machdep.c,v 1.15 2003/08/17 08:08:38 gordon Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/elf_machdep.c,v 1.16 2003/09/25 01:10:22 peter Exp $"); #include #include @@ -73,7 +73,8 @@ PS_STRINGS, VM_PROT_ALL, exec_copyout_strings, - exec_setregs + exec_setregs, + NULL }; static Elf64_Brandinfo freebsd_brand_info = { ==== //depot/projects/smpng/sys/alpha/alpha/machdep.c#62 (text+ko) ==== @@ -88,7 +88,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/machdep.c,v 1.212 2003/08/25 03:43:07 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/machdep.c,v 1.213 2003/10/19 02:36:06 peter Exp $"); #include "opt_compat.h" #include "opt_ddb.h" @@ -1731,6 +1731,12 @@ prom_halt(1); } +void +cpu_idle(void) +{ + /* Insert code to halt (until next interrupt) for the idle loop */ +} + /* * Clear registers on exec */ ==== //depot/projects/smpng/sys/alpha/alpha/pmap.c#53 (text+ko) ==== @@ -148,7 +148,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.138 2003/09/12 07:07:47 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.139 2003/10/03 22:46:52 alc Exp $"); #include #include @@ -2093,105 +2093,6 @@ } /* - * pmap_prefault provides a quick way of clustering - * pagefaults into a processes address space. It is a "cousin" - * of pmap_object_init_pt, except it runs at page fault time instead - * of mmap time. - */ -#define PFBAK 4 -#define PFFOR 4 -#define PAGEORDER_SIZE (PFBAK+PFFOR) - -static int pmap_prefault_pageorder[] = { - -1 * PAGE_SIZE, 1 * PAGE_SIZE, - -2 * PAGE_SIZE, 2 * PAGE_SIZE, - -3 * PAGE_SIZE, 3 * PAGE_SIZE, - -4 * PAGE_SIZE, 4 * PAGE_SIZE -}; - -void -pmap_prefault(pmap, addra, entry) - pmap_t pmap; - vm_offset_t addra; - vm_map_entry_t entry; -{ - int i; - vm_offset_t starta; - vm_offset_t addr; - vm_pindex_t pindex; - vm_page_t m, mpte; - vm_object_t object; - - if (!curthread || (pmap != vmspace_pmap(curthread->td_proc->p_vmspace))) - return; - - object = entry->object.vm_object; - - starta = addra - PFBAK * PAGE_SIZE; - if (starta < entry->start) { - starta = entry->start; - } else if (starta > addra) { - starta = 0; - } - - mpte = NULL; - for (i = 0; i < PAGEORDER_SIZE; i++) { - vm_object_t backing_object, lobject; - pt_entry_t *pte; - - addr = addra + pmap_prefault_pageorder[i]; - if (addr > addra + (PFFOR * PAGE_SIZE)) - addr = 0; - - if (addr < starta || addr >= entry->end) - continue; - - if (!pmap_pte_v(pmap_lev1pte(pmap, addr)) - || !pmap_pte_v(pmap_lev2pte(pmap, addr))) - continue; - - pte = vtopte(addr); - if (*pte) - continue; - - pindex = ((addr - entry->start) + entry->offset) >> PAGE_SHIFT; - lobject = object; - VM_OBJECT_LOCK(lobject); - while ((m = vm_page_lookup(lobject, pindex)) == NULL && - lobject->type == OBJT_DEFAULT && - (backing_object = lobject->backing_object) != NULL) { - if (lobject->backing_object_offset & PAGE_MASK) - break; - pindex += lobject->backing_object_offset >> PAGE_SHIFT; - VM_OBJECT_LOCK(backing_object); - VM_OBJECT_UNLOCK(lobject); - lobject = backing_object; - } - VM_OBJECT_UNLOCK(lobject); - /* - * give-up when a page is not in memory - */ - if (m == NULL) - break; - vm_page_lock_queues(); - if (((m->valid & VM_PAGE_BITS_ALL) == VM_PAGE_BITS_ALL) && - (m->busy == 0) && - (m->flags & (PG_BUSY | PG_FICTITIOUS)) == 0) { - - if ((m->queue - m->pc) == PQ_CACHE) { - vm_page_deactivate(m); - } - vm_page_busy(m); - vm_page_unlock_queues(); - mpte = pmap_enter_quick(pmap, addr, m, mpte); - vm_page_lock_queues(); - vm_page_wakeup(m); - } - vm_page_unlock_queues(); - } -} - -/* * Routine: pmap_change_wiring * Function: Change the wiring attribute for a map/virtual-address * pair. @@ -2557,6 +2458,26 @@ } /* + * pmap_is_prefaultable: + * + * Return whether or not the specified virtual address is elgible + * for prefault. + */ +boolean_t +pmap_is_prefaultable(pmap_t pmap, vm_offset_t addr) +{ + pt_entry_t *pte; + + if (!pmap_pte_v(pmap_lev1pte(pmap, addr)) || + !pmap_pte_v(pmap_lev2pte(pmap, addr))) + return (FALSE); + pte = vtopte(addr); + if (*pte) + return (FALSE); + return (TRUE); +} + +/* * Clear the modify bits on the specified physical page. */ void ==== //depot/projects/smpng/sys/alpha/alpha/promcons.c#15 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/promcons.c,v 1.30 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/promcons.c,v 1.31 2003/09/26 10:52:16 phk Exp $"); #include #include @@ -250,7 +250,7 @@ promcnattach(int alpha_console) { prom_consdev.cn_pri = CN_NORMAL; - prom_consdev.cn_dev = makedev(CDEV_MAJOR, 0); + sprintf(prom_consdev.cn_name, "promcons"); make_dev(&prom_cdevsw, 0, UID_ROOT, GID_WHEEL, 0600, "promcons"); cnadd(&prom_consdev); promcn_attached = 1; ==== //depot/projects/smpng/sys/alpha/alpha/trap.c#51 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/trap.c,v 1.116 2003/08/22 07:20:25 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/trap.c,v 1.117 2003/10/09 10:17:15 robert Exp $"); /* #include "opt_fix_unaligned_vax_fp.h" */ #include "opt_ddb.h" @@ -45,6 +45,7 @@ #include #include >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 17:41:09 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0CCA416A4C0; Wed, 22 Oct 2003 17:41:09 -0700 (PDT) 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 D3E0F16A4B3 for ; Wed, 22 Oct 2003 17:41:08 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B5CF843FAF for ; Wed, 22 Oct 2003 17:41:06 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N0f6XJ043565 for ; Wed, 22 Oct 2003 17:41:06 -0700 (PDT) (envelope-from jhb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N0f1db043559 for perforce@freebsd.org; Wed, 22 Oct 2003 17:41:01 -0700 (PDT) (envelope-from jhb@freebsd.org) Date: Wed, 22 Oct 2003 17:41:01 -0700 (PDT) Message-Id: <200310230041.h9N0f1db043559@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jhb@freebsd.org using -f From: John Baldwin To: Perforce Change Reviews Subject: PERFORCE change 40222 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 00:41:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=40222 Change 40222 by jhb@jhb_laptop on 2003/10/22 17:40:24 IFC @40211. Warner, you may want to sanity check my merges in pci.c, but I think they are correct. Affected files ... .. //depot/projects/power/sys/alpha/alpha/elf_machdep.c#2 integrate .. //depot/projects/power/sys/alpha/alpha/machdep.c#2 integrate .. //depot/projects/power/sys/alpha/alpha/pmap.c#2 integrate .. //depot/projects/power/sys/alpha/alpha/promcons.c#2 integrate .. //depot/projects/power/sys/alpha/alpha/trap.c#2 integrate .. //depot/projects/power/sys/alpha/conf/GENERIC#2 integrate .. //depot/projects/power/sys/alpha/include/bus.h#2 integrate .. //depot/projects/power/sys/alpha/include/elf.h#2 integrate .. //depot/projects/power/sys/alpha/include/pmap.h#2 integrate .. //depot/projects/power/sys/alpha/linux/linux_sysvec.c#2 integrate .. //depot/projects/power/sys/alpha/osf1/osf1_sysvec.c#2 integrate .. //depot/projects/power/sys/alpha/tlsb/zs_tlsb.c#2 integrate .. //depot/projects/power/sys/amd64/acpica/acpi_machdep.c#2 integrate .. //depot/projects/power/sys/amd64/amd64/amd64_mem.c#2 integrate .. //depot/projects/power/sys/amd64/amd64/busdma_machdep.c#2 integrate .. //depot/projects/power/sys/amd64/amd64/elf_machdep.c#2 integrate .. //depot/projects/power/sys/amd64/amd64/exception.S#2 integrate .. //depot/projects/power/sys/amd64/amd64/genassym.c#2 integrate .. //depot/projects/power/sys/amd64/amd64/machdep.c#2 integrate .. //depot/projects/power/sys/amd64/amd64/pmap.c#2 integrate .. //depot/projects/power/sys/amd64/amd64/support.S#2 integrate .. //depot/projects/power/sys/amd64/amd64/trap.c#2 integrate .. //depot/projects/power/sys/amd64/amd64/tsc.c#2 integrate .. //depot/projects/power/sys/amd64/amd64/uma_machdep.c#1 branch .. //depot/projects/power/sys/amd64/conf/GENERIC#2 integrate .. //depot/projects/power/sys/amd64/ia32/ia32_syscall.c#2 integrate .. //depot/projects/power/sys/amd64/include/acpica_machdep.h#2 integrate .. //depot/projects/power/sys/amd64/include/bus_amd64.h#2 integrate .. //depot/projects/power/sys/amd64/include/clock.h#2 integrate .. //depot/projects/power/sys/amd64/include/cpu.h#2 integrate .. //depot/projects/power/sys/amd64/include/elf.h#2 integrate .. //depot/projects/power/sys/amd64/include/endian.h#2 integrate .. //depot/projects/power/sys/amd64/include/frame.h#2 integrate .. //depot/projects/power/sys/amd64/include/legacyvar.h#2 integrate .. //depot/projects/power/sys/amd64/include/md_var.h#2 integrate .. //depot/projects/power/sys/amd64/include/pci_cfgreg.h#2 integrate .. //depot/projects/power/sys/amd64/include/pmap.h#2 integrate .. //depot/projects/power/sys/amd64/include/segments.h#2 integrate .. //depot/projects/power/sys/amd64/include/signal.h#2 integrate .. //depot/projects/power/sys/amd64/include/specialreg.h#2 integrate .. //depot/projects/power/sys/amd64/include/ucontext.h#2 integrate .. //depot/projects/power/sys/amd64/include/vmparam.h#2 integrate .. //depot/projects/power/sys/amd64/isa/clock.c#2 integrate .. //depot/projects/power/sys/amd64/pci/pci_bus.c#2 integrate .. //depot/projects/power/sys/arm/include/elf.h#2 integrate .. //depot/projects/power/sys/boot/forth/beastie.4th#2 integrate .. //depot/projects/power/sys/boot/i386/libi386/comconsole.c#2 integrate .. //depot/projects/power/sys/boot/pc98/libpc98/comconsole.c#2 integrate .. //depot/projects/power/sys/cam/cam_periph.c#2 integrate .. //depot/projects/power/sys/cam/scsi/scsi_all.c#2 integrate .. //depot/projects/power/sys/cam/scsi/scsi_cd.c#2 integrate .. //depot/projects/power/sys/cam/scsi/scsi_da.c#2 integrate .. //depot/projects/power/sys/cam/scsi/scsi_sa.c#2 integrate .. //depot/projects/power/sys/cam/scsi/scsi_targ_bh.c#2 integrate .. //depot/projects/power/sys/cam/scsi/scsi_target.c#2 integrate .. //depot/projects/power/sys/coda/coda_subr.c#2 integrate .. //depot/projects/power/sys/coda/coda_vfsops.c#2 integrate .. //depot/projects/power/sys/compat/ia32/ia32_sysvec.c#2 integrate .. //depot/projects/power/sys/compat/ia32/ia32_util.h#2 integrate .. //depot/projects/power/sys/compat/linprocfs/linprocfs.c#2 integrate .. //depot/projects/power/sys/compat/linux/linux_ioctl.c#2 integrate .. //depot/projects/power/sys/compat/linux/linux_misc.c#2 integrate .. //depot/projects/power/sys/compat/linux/linux_socket.c#2 integrate .. //depot/projects/power/sys/compat/linux/linux_uid16.c#2 integrate .. //depot/projects/power/sys/compat/pecoff/imgact_pecoff.c#2 integrate .. //depot/projects/power/sys/compat/svr4/svr4_filio.c#2 integrate .. //depot/projects/power/sys/compat/svr4/svr4_misc.c#2 integrate .. //depot/projects/power/sys/compat/svr4/svr4_signal.c#2 integrate .. //depot/projects/power/sys/compat/svr4/svr4_stream.c#2 integrate .. //depot/projects/power/sys/compat/svr4/svr4_sysvec.c#2 integrate .. //depot/projects/power/sys/compat/svr4/svr4_util.h#2 integrate .. //depot/projects/power/sys/conf/Makefile.amd64#2 integrate .. //depot/projects/power/sys/conf/NOTES#2 integrate .. //depot/projects/power/sys/conf/files#2 integrate .. //depot/projects/power/sys/conf/files.amd64#2 integrate .. //depot/projects/power/sys/conf/files.ia64#2 integrate .. //depot/projects/power/sys/conf/kmod.mk#2 integrate .. //depot/projects/power/sys/conf/ldscript.i386#2 integrate .. //depot/projects/power/sys/conf/majors#2 integrate .. //depot/projects/power/sys/conf/options#2 integrate .. //depot/projects/power/sys/contrib/dev/acpica/exfldio.c#2 integrate .. //depot/projects/power/sys/contrib/dev/acpica/rsaddr.c#2 integrate .. //depot/projects/power/sys/contrib/dev/acpica/rsirq.c#2 integrate .. //depot/projects/power/sys/contrib/ia64/libuwx/src/Makefile#2 integrate .. //depot/projects/power/sys/contrib/ia64/libuwx/src/uwx.h#2 integrate .. //depot/projects/power/sys/contrib/ia64/libuwx/src/uwx_context.c#2 integrate .. //depot/projects/power/sys/contrib/ia64/libuwx/src/uwx_env.h#2 integrate .. //depot/projects/power/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#2 integrate .. //depot/projects/power/sys/contrib/ia64/libuwx/src/uwx_self.c#2 integrate .. //depot/projects/power/sys/contrib/ia64/libuwx/src/uwx_step.c#2 integrate .. //depot/projects/power/sys/contrib/ia64/libuwx/src/uwx_step.h#1 branch .. //depot/projects/power/sys/contrib/ia64/libuwx/src/uwx_trace.c#2 integrate .. //depot/projects/power/sys/contrib/ia64/libuwx/src/uwx_trace.h#2 integrate .. //depot/projects/power/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#2 integrate .. //depot/projects/power/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#2 integrate .. //depot/projects/power/sys/contrib/ipfilter/netinet/ip_fil.c#2 integrate .. //depot/projects/power/sys/contrib/ngatm/FREEBSD-upgrade#1 branch .. //depot/projects/power/sys/contrib/ngatm/netnatm/misc/unimsg_common.c#1 branch .. //depot/projects/power/sys/contrib/ngatm/netnatm/saal/saal_sscfu.c#1 branch .. //depot/projects/power/sys/contrib/ngatm/netnatm/saal/saal_sscop.c#1 branch .. //depot/projects/power/sys/contrib/ngatm/netnatm/saal/sscfu.h#1 branch .. //depot/projects/power/sys/contrib/ngatm/netnatm/saal/sscfudef.h#1 branch .. //depot/projects/power/sys/contrib/ngatm/netnatm/saal/sscfupriv.h#1 branch .. //depot/projects/power/sys/contrib/ngatm/netnatm/saal/sscop.h#1 branch .. //depot/projects/power/sys/contrib/ngatm/netnatm/saal/sscopdef.h#1 branch .. //depot/projects/power/sys/contrib/ngatm/netnatm/saal/sscoppriv.h#1 branch .. //depot/projects/power/sys/contrib/ngatm/netnatm/unimsg.h#1 branch .. //depot/projects/power/sys/crypto/blowfish/bf_ecb.c#1 branch .. //depot/projects/power/sys/crypto/blowfish/blowfish.h#2 integrate .. //depot/projects/power/sys/crypto/cast128/cast128.c#2 integrate .. //depot/projects/power/sys/crypto/cast128/cast128.h#2 integrate .. //depot/projects/power/sys/crypto/cast128/cast128_subkey.h#2 delete .. //depot/projects/power/sys/crypto/cast128/cast128sb.h#1 branch .. //depot/projects/power/sys/crypto/rijndael/Makefile#1 branch .. //depot/projects/power/sys/crypto/rijndael/boxes-fst.dat#2 delete .. //depot/projects/power/sys/crypto/rijndael/rijndael-alg-fst.c#2 integrate .. //depot/projects/power/sys/crypto/rijndael/rijndael-alg-fst.h#2 integrate .. //depot/projects/power/sys/crypto/rijndael/rijndael-api-fst.c#2 integrate .. //depot/projects/power/sys/crypto/rijndael/rijndael-api-fst.h#2 integrate .. //depot/projects/power/sys/crypto/rijndael/rijndael_local.h#2 integrate .. //depot/projects/power/sys/crypto/rijndael/test00.c#1 branch .. //depot/projects/power/sys/ddb/db_elf.c#2 integrate .. //depot/projects/power/sys/dev/aac/aac.c#2 integrate .. //depot/projects/power/sys/dev/aac/aac_disk.c#2 integrate .. //depot/projects/power/sys/dev/aac/aacreg.h#2 integrate .. //depot/projects/power/sys/dev/acpica/Osd/OsdSchedule.c#2 integrate .. //depot/projects/power/sys/dev/acpica/Osd/OsdSynch.c#2 integrate .. //depot/projects/power/sys/dev/acpica/acpi.c#3 integrate .. //depot/projects/power/sys/dev/acpica/acpi_acad.c#2 integrate .. //depot/projects/power/sys/dev/acpica/acpi_button.c#2 integrate .. //depot/projects/power/sys/dev/acpica/acpi_cmbat.c#2 integrate .. //depot/projects/power/sys/dev/acpica/acpi_ec.c#2 integrate .. //depot/projects/power/sys/dev/acpica/acpi_pci.c#3 integrate .. //depot/projects/power/sys/dev/acpica/acpi_resource.c#2 integrate .. //depot/projects/power/sys/dev/acpica/acpi_thermal.c#2 integrate .. //depot/projects/power/sys/dev/acpica/acpiio.h#2 integrate .. //depot/projects/power/sys/dev/adlink/adlink.c#2 integrate .. //depot/projects/power/sys/dev/aic7xxx/aic79xx_pci.c#2 integrate .. //depot/projects/power/sys/dev/aic7xxx/aic7xxx_pci.c#2 integrate .. //depot/projects/power/sys/dev/amr/amr.c#2 integrate .. //depot/projects/power/sys/dev/amr/amr_disk.c#2 integrate .. //depot/projects/power/sys/dev/amr/amrvar.h#2 integrate .. //depot/projects/power/sys/dev/an/if_an_pccard.c#2 integrate .. //depot/projects/power/sys/dev/asr/asr.c#2 integrate .. //depot/projects/power/sys/dev/ata/ata-all.c#2 integrate .. //depot/projects/power/sys/dev/ata/ata-all.h#2 integrate .. //depot/projects/power/sys/dev/ata/ata-card.c#2 integrate .. //depot/projects/power/sys/dev/ata/ata-chipset.c#2 integrate .. //depot/projects/power/sys/dev/ata/ata-disk.c#2 integrate .. //depot/projects/power/sys/dev/ata/ata-dma.c#2 integrate .. //depot/projects/power/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/power/sys/dev/ata/ata-pci.c#2 integrate .. //depot/projects/power/sys/dev/ata/ata-queue.c#2 integrate .. //depot/projects/power/sys/dev/ata/atapi-cam.c#2 integrate .. //depot/projects/power/sys/dev/ata/atapi-cd.c#2 integrate .. //depot/projects/power/sys/dev/ata/atapi-cd.h#2 integrate .. //depot/projects/power/sys/dev/ath/if_ath.c#2 integrate .. //depot/projects/power/sys/dev/ath/if_ath_pci.c#2 integrate .. //depot/projects/power/sys/dev/ath/if_athvar.h#2 integrate .. //depot/projects/power/sys/dev/bge/if_bge.c#2 integrate .. //depot/projects/power/sys/dev/cardbus/cardbus.c#2 integrate .. //depot/projects/power/sys/dev/cardbus/cardbus_cis.c#2 integrate .. //depot/projects/power/sys/dev/cardbus/cardbus_cis.h#2 integrate .. //depot/projects/power/sys/dev/ciss/ciss.c#2 integrate .. //depot/projects/power/sys/dev/digi/digi.c#2 integrate .. //depot/projects/power/sys/dev/ed/if_ed.c#2 integrate .. //depot/projects/power/sys/dev/ed/if_ed_cbus.c#2 integrate .. //depot/projects/power/sys/dev/ed/if_ed_isa.c#2 integrate .. //depot/projects/power/sys/dev/ed/if_ed_pccard.c#2 integrate .. //depot/projects/power/sys/dev/ed/if_edreg.h#2 integrate .. //depot/projects/power/sys/dev/ed/if_edvar.h#2 integrate .. //depot/projects/power/sys/dev/em/if_em.c#2 integrate .. //depot/projects/power/sys/dev/em/if_em.h#2 integrate .. //depot/projects/power/sys/dev/ep/if_ep.c#2 integrate .. //depot/projects/power/sys/dev/ep/if_ep_eisa.c#2 integrate .. //depot/projects/power/sys/dev/ep/if_ep_isa.c#2 integrate .. //depot/projects/power/sys/dev/ep/if_ep_mca.c#2 integrate .. //depot/projects/power/sys/dev/ep/if_ep_pccard.c#2 integrate .. //depot/projects/power/sys/dev/ep/if_epreg.h#2 integrate .. //depot/projects/power/sys/dev/ep/if_epvar.h#2 integrate .. //depot/projects/power/sys/dev/exca/exca.c#2 integrate .. //depot/projects/power/sys/dev/fb/fb.c#2 integrate .. //depot/projects/power/sys/dev/fb/fbreg.h#2 integrate .. //depot/projects/power/sys/dev/firewire/firewire.c#2 integrate .. //depot/projects/power/sys/dev/firewire/firewire.h#2 integrate .. //depot/projects/power/sys/dev/firewire/firewirereg.h#2 integrate .. //depot/projects/power/sys/dev/firewire/fwcrom.c#2 integrate .. //depot/projects/power/sys/dev/firewire/fwdev.c#2 integrate .. //depot/projects/power/sys/dev/firewire/fwmem.c#2 integrate .. //depot/projects/power/sys/dev/firewire/fwmem.h#2 integrate .. //depot/projects/power/sys/dev/firewire/fwohci.c#2 integrate .. //depot/projects/power/sys/dev/firewire/fwohcireg.h#2 integrate .. //depot/projects/power/sys/dev/firewire/fwphyreg.h#1 branch .. //depot/projects/power/sys/dev/firewire/if_fwe.c#2 integrate .. //depot/projects/power/sys/dev/firewire/sbp.c#2 integrate .. //depot/projects/power/sys/dev/firewire/sbp.h#1 branch .. //depot/projects/power/sys/dev/firewire/sbp_targ.c#1 branch .. //depot/projects/power/sys/dev/gfb/gfb_pci.c#2 integrate .. //depot/projects/power/sys/dev/hifn/hifn7751.c#2 integrate .. //depot/projects/power/sys/dev/hifn/hifn7751reg.h#2 integrate .. //depot/projects/power/sys/dev/hifn/hifn7751var.h#2 integrate .. //depot/projects/power/sys/dev/ic/ns16550.h#2 integrate .. //depot/projects/power/sys/dev/iir/iir.c#2 integrate .. //depot/projects/power/sys/dev/iir/iir.h#2 integrate .. //depot/projects/power/sys/dev/iir/iir_ctrl.c#2 integrate .. //depot/projects/power/sys/dev/iir/iir_pci.c#2 integrate .. //depot/projects/power/sys/dev/ips/ips_commands.c#2 integrate .. //depot/projects/power/sys/dev/ips/ips_disk.c#2 integrate .. //depot/projects/power/sys/dev/isp/isp.c#2 integrate .. //depot/projects/power/sys/dev/isp/isp_freebsd.c#2 integrate .. //depot/projects/power/sys/dev/isp/isp_freebsd.h#2 integrate .. //depot/projects/power/sys/dev/isp/isp_inline.h#2 integrate .. //depot/projects/power/sys/dev/isp/isp_target.c#2 integrate .. //depot/projects/power/sys/dev/isp/isp_target.h#2 integrate .. //depot/projects/power/sys/dev/isp/isp_tpublic.h#2 integrate .. //depot/projects/power/sys/dev/isp/ispvar.h#2 integrate .. //depot/projects/power/sys/dev/kbd/atkbd.c#2 integrate .. //depot/projects/power/sys/dev/kbd/kbd.c#2 integrate .. //depot/projects/power/sys/dev/kbd/kbdreg.h#2 integrate .. //depot/projects/power/sys/dev/matcd/matcd.c#2 integrate .. //depot/projects/power/sys/dev/mcd/mcd.c#2 integrate .. //depot/projects/power/sys/dev/md/md.c#2 integrate .. //depot/projects/power/sys/dev/mii/brgphy.c#2 integrate .. //depot/projects/power/sys/dev/mii/e1000phy.c#2 integrate .. //depot/projects/power/sys/dev/mii/e1000phyreg.h#2 integrate .. //depot/projects/power/sys/dev/mii/miidevs#2 integrate .. //depot/projects/power/sys/dev/nmdm/nmdm.c#2 integrate .. //depot/projects/power/sys/dev/null/null.c#2 integrate .. //depot/projects/power/sys/dev/ofw/ofw_console.c#2 integrate .. //depot/projects/power/sys/dev/ofw/ofw_disk.c#2 integrate .. //depot/projects/power/sys/dev/ofw/openfirmio.c#2 integrate .. //depot/projects/power/sys/dev/owi/if_owi.c#2 integrate .. //depot/projects/power/sys/dev/pccard/card_if.m#2 integrate .. //depot/projects/power/sys/dev/pccard/pccard.c#2 integrate .. //depot/projects/power/sys/dev/pccard/pccard_cis.c#2 integrate .. //depot/projects/power/sys/dev/pccard/pccard_cis.h#1 branch .. //depot/projects/power/sys/dev/pccard/pccard_cis_quirks.c#2 integrate .. //depot/projects/power/sys/dev/pccard/pccarddevs#2 integrate .. //depot/projects/power/sys/dev/pccard/pccarddevs.h#2 integrate .. //depot/projects/power/sys/dev/pccard/pccardreg.h#2 integrate .. //depot/projects/power/sys/dev/pccard/pccardvar.h#2 integrate .. //depot/projects/power/sys/dev/pci/pci.c#3 integrate .. //depot/projects/power/sys/dev/pci/pci_pci.c#3 integrate .. //depot/projects/power/sys/dev/pci/pci_private.h#3 integrate .. //depot/projects/power/sys/dev/pci/pci_user.c#3 integrate .. //depot/projects/power/sys/dev/pci/pcireg.h#3 integrate .. //depot/projects/power/sys/dev/pci/pcivar.h#3 integrate .. //depot/projects/power/sys/dev/puc/puc.c#2 integrate .. //depot/projects/power/sys/dev/puc/pucdata.c#2 integrate .. //depot/projects/power/sys/dev/puc/pucvar.h#2 integrate .. //depot/projects/power/sys/dev/raidframe/rf_decluster.c#2 integrate .. //depot/projects/power/sys/dev/raidframe/rf_freebsdkintf.c#2 integrate .. //depot/projects/power/sys/dev/re/if_re.c#2 integrate .. //depot/projects/power/sys/dev/sab/sab.c#2 integrate .. //depot/projects/power/sys/dev/scd/scd.c#2 integrate .. //depot/projects/power/sys/dev/sio/sio.c#2 integrate .. //depot/projects/power/sys/dev/sio/sio_pccard.c#2 integrate .. //depot/projects/power/sys/dev/sio/sioreg.h#2 integrate .. //depot/projects/power/sys/dev/sound/isa/mpu.c#2 integrate .. //depot/projects/power/sys/dev/sound/isa/uartsio.c#2 integrate .. //depot/projects/power/sys/dev/sound/pci/au88x0.c#2 integrate .. //depot/projects/power/sys/dev/sound/pci/au88x0.h#2 integrate .. //depot/projects/power/sys/dev/sound/pci/ich.c#2 integrate .. //depot/projects/power/sys/dev/sound/pcm/ac97.c#2 integrate .. //depot/projects/power/sys/dev/streams/streams.c#2 integrate .. //depot/projects/power/sys/dev/syscons/syscons.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart.h#2 integrate .. //depot/projects/power/sys/dev/uart/uart_bus.h#2 integrate .. //depot/projects/power/sys/dev/uart/uart_bus_acpi.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_bus_ebus.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_bus_isa.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_bus_pccard.c#1 branch .. //depot/projects/power/sys/dev/uart/uart_bus_pci.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_bus_puc.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_core.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_cpu.h#2 integrate .. //depot/projects/power/sys/dev/uart/uart_cpu_alpha.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_cpu_amd64.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_cpu_i386.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_cpu_ia64.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_cpu_pc98.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_cpu_sparc64.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_dev_i8251.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_dev_ns8250.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_dev_sab82532.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_dev_z8530.c#2 integrate .. //depot/projects/power/sys/dev/uart/uart_if.m#2 integrate .. //depot/projects/power/sys/dev/uart/uart_tty.c#2 integrate .. //depot/projects/power/sys/dev/usb/if_aue.c#2 integrate .. //depot/projects/power/sys/dev/usb/if_auereg.h#2 integrate .. //depot/projects/power/sys/dev/usb/if_cue.c#2 integrate .. //depot/projects/power/sys/dev/usb/if_cuereg.h#2 integrate .. //depot/projects/power/sys/dev/usb/if_kue.c#2 integrate .. //depot/projects/power/sys/dev/usb/if_kuereg.h#2 integrate .. //depot/projects/power/sys/dev/usb/if_rue.c#2 integrate .. //depot/projects/power/sys/dev/usb/if_ruereg.h#2 integrate .. //depot/projects/power/sys/dev/usb/ubsa.c#2 integrate .. //depot/projects/power/sys/dev/usb/ufm.c#2 integrate .. //depot/projects/power/sys/dev/usb/ugen.c#2 integrate .. //depot/projects/power/sys/dev/usb/uhid.c#2 integrate .. //depot/projects/power/sys/dev/usb/ukbd.c#2 integrate .. //depot/projects/power/sys/dev/usb/ulpt.c#2 integrate .. //depot/projects/power/sys/dev/usb/umass.c#2 integrate .. //depot/projects/power/sys/dev/usb/ums.c#2 integrate .. //depot/projects/power/sys/dev/usb/usb.c#2 integrate .. //depot/projects/power/sys/dev/usb/usb_mem.c#2 integrate .. //depot/projects/power/sys/dev/usb/usb_port.h#2 integrate .. //depot/projects/power/sys/dev/usb/usbdevs#2 integrate .. //depot/projects/power/sys/dev/usb/usbdevs.h#2 integrate .. //depot/projects/power/sys/dev/usb/usbdevs_data.h#2 integrate .. //depot/projects/power/sys/dev/usb/uscanner.c#2 integrate .. //depot/projects/power/sys/dev/vinum/vinumconfig.c#2 integrate .. //depot/projects/power/sys/dev/vinum/vinumrequest.c#2 integrate .. //depot/projects/power/sys/dev/vinum/vinumrevive.c#2 integrate .. //depot/projects/power/sys/dev/vinum/vinumvar.h#2 integrate .. //depot/projects/power/sys/dev/wi/if_wi_pccard.c#2 integrate .. //depot/projects/power/sys/dev/xe/if_xe.c#2 integrate .. //depot/projects/power/sys/dev/xe/if_xe_pccard.c#2 integrate .. //depot/projects/power/sys/dev/xe/if_xereg.h#2 integrate .. //depot/projects/power/sys/dev/xe/if_xevar.h#2 integrate .. //depot/projects/power/sys/dev/zs/zs.c#2 integrate .. //depot/projects/power/sys/fs/devfs/devfs_vnops.c#2 integrate .. //depot/projects/power/sys/fs/fdescfs/fdesc_vnops.c#2 integrate .. //depot/projects/power/sys/fs/hpfs/hpfs_vnops.c#2 integrate .. //depot/projects/power/sys/fs/msdosfs/direntry.h#2 integrate .. //depot/projects/power/sys/fs/msdosfs/msdosfs_conv.c#2 integrate .. //depot/projects/power/sys/fs/msdosfs/msdosfs_denode.c#2 integrate .. //depot/projects/power/sys/fs/msdosfs/msdosfs_iconv.c#1 branch .. //depot/projects/power/sys/fs/msdosfs/msdosfs_lookup.c#2 integrate .. //depot/projects/power/sys/fs/msdosfs/msdosfs_vfsops.c#2 integrate .. //depot/projects/power/sys/fs/msdosfs/msdosfs_vnops.c#2 integrate .. //depot/projects/power/sys/fs/msdosfs/msdosfsmount.h#2 integrate .. //depot/projects/power/sys/fs/ntfs/ntfs.h#2 integrate .. //depot/projects/power/sys/fs/ntfs/ntfs_iconv.c#1 branch .. //depot/projects/power/sys/fs/ntfs/ntfs_subr.c#2 integrate .. //depot/projects/power/sys/fs/ntfs/ntfs_subr.h#2 integrate .. //depot/projects/power/sys/fs/ntfs/ntfs_vfsops.c#2 integrate .. //depot/projects/power/sys/fs/ntfs/ntfs_vnops.c#2 integrate .. //depot/projects/power/sys/fs/ntfs/ntfsmount.h#2 integrate .. //depot/projects/power/sys/fs/nwfs/nwfs_io.c#2 integrate .. //depot/projects/power/sys/fs/nwfs/nwfs_node.c#2 integrate .. //depot/projects/power/sys/fs/nwfs/nwfs_vnops.c#2 integrate .. //depot/projects/power/sys/fs/procfs/procfs_dbregs.c#2 integrate .. //depot/projects/power/sys/fs/procfs/procfs_fpregs.c#2 integrate .. //depot/projects/power/sys/fs/procfs/procfs_map.c#2 integrate .. //depot/projects/power/sys/fs/procfs/procfs_regs.c#2 integrate .. //depot/projects/power/sys/fs/pseudofs/pseudofs_vncache.c#2 integrate .. //depot/projects/power/sys/fs/pseudofs/pseudofs_vnops.c#2 integrate .. //depot/projects/power/sys/fs/smbfs/smbfs_io.c#2 integrate .. //depot/projects/power/sys/fs/smbfs/smbfs_node.c#2 integrate .. //depot/projects/power/sys/fs/smbfs/smbfs_vfsops.c#2 integrate .. //depot/projects/power/sys/fs/smbfs/smbfs_vnops.c#2 integrate .. //depot/projects/power/sys/fs/specfs/spec_vnops.c#2 integrate .. //depot/projects/power/sys/fs/udf/udf_vnops.c#2 integrate .. //depot/projects/power/sys/geom/bde/g_bde.h#2 integrate .. //depot/projects/power/sys/geom/bde/g_bde_lock.c#2 integrate .. //depot/projects/power/sys/geom/geom.h#2 integrate .. //depot/projects/power/sys/geom/geom_ctl.c#2 integrate .. //depot/projects/power/sys/geom/geom_dev.c#2 integrate .. //depot/projects/power/sys/geom/geom_disk.c#2 integrate .. //depot/projects/power/sys/geom/geom_event.c#2 integrate .. //depot/projects/power/sys/geom/geom_fox.c#2 integrate .. //depot/projects/power/sys/geom/geom_io.c#2 integrate .. //depot/projects/power/sys/geom/geom_subr.c#2 integrate .. //depot/projects/power/sys/gnu/ext2fs/ext2_bmap.c#2 integrate .. //depot/projects/power/sys/gnu/ext2fs/ext2_inode.c#2 integrate .. //depot/projects/power/sys/gnu/ext2fs/ext2_vfsops.c#2 integrate .. //depot/projects/power/sys/gnu/ext2fs/ext2_vnops.c#2 integrate .. //depot/projects/power/sys/i386/acpica/acpi_machdep.c#2 integrate .. //depot/projects/power/sys/i386/acpica/acpi_wakeup.c#2 integrate .. //depot/projects/power/sys/i386/bios/smapi.c#2 integrate .. //depot/projects/power/sys/i386/conf/GENERIC#2 integrate .. //depot/projects/power/sys/i386/conf/NOTES#2 integrate .. //depot/projects/power/sys/i386/i386/bios.c#2 integrate .. //depot/projects/power/sys/i386/i386/elan-mmcr.c#2 integrate .. //depot/projects/power/sys/i386/i386/elf_machdep.c#2 integrate .. //depot/projects/power/sys/i386/i386/genassym.c#2 integrate .. //depot/projects/power/sys/i386/i386/i686_mem.c#2 integrate .. //depot/projects/power/sys/i386/i386/locore.s#2 integrate .. //depot/projects/power/sys/i386/i386/machdep.c#2 integrate .. //depot/projects/power/sys/i386/i386/mp_machdep.c#2 integrate .. //depot/projects/power/sys/i386/i386/mpboot.s#2 integrate .. //depot/projects/power/sys/i386/i386/pmap.c#2 integrate .. //depot/projects/power/sys/i386/i386/support.s#2 integrate .. //depot/projects/power/sys/i386/i386/swtch.s#2 integrate .. //depot/projects/power/sys/i386/i386/trap.c#2 integrate .. //depot/projects/power/sys/i386/i386/tsc.c#2 integrate .. //depot/projects/power/sys/i386/i386/vm_machdep.c#2 integrate .. //depot/projects/power/sys/i386/ibcs2/ibcs2_misc.c#2 integrate .. //depot/projects/power/sys/i386/ibcs2/ibcs2_signal.c#2 integrate .. //depot/projects/power/sys/i386/ibcs2/ibcs2_socksys.c#2 integrate .. //depot/projects/power/sys/i386/ibcs2/ibcs2_sysvec.c#2 integrate .. //depot/projects/power/sys/i386/ibcs2/ibcs2_util.c#2 integrate .. //depot/projects/power/sys/i386/ibcs2/ibcs2_util.h#2 integrate .. //depot/projects/power/sys/i386/ibcs2/imgact_coff.c#2 integrate .. //depot/projects/power/sys/i386/include/bus_at386.h#2 integrate .. //depot/projects/power/sys/i386/include/bus_pc98.h#2 integrate .. //depot/projects/power/sys/i386/include/clock.h#2 integrate .. //depot/projects/power/sys/i386/include/elf.h#2 integrate .. //depot/projects/power/sys/i386/include/endian.h#2 integrate .. //depot/projects/power/sys/i386/include/md_var.h#2 integrate .. //depot/projects/power/sys/i386/include/pcb.h#2 integrate .. //depot/projects/power/sys/i386/include/pci_cfgreg.h#2 integrate .. //depot/projects/power/sys/i386/include/pmap.h#2 integrate .. //depot/projects/power/sys/i386/include/vmparam.h#2 integrate .. //depot/projects/power/sys/i386/isa/apic_vector.s#2 integrate .. //depot/projects/power/sys/i386/isa/clock.c#2 integrate .. //depot/projects/power/sys/i386/isa/cy.c#2 integrate .. //depot/projects/power/sys/i386/isa/isa_compat.c#2 integrate .. //depot/projects/power/sys/i386/isa/pcvt/pcvt_drv.c#2 integrate .. //depot/projects/power/sys/i386/linux/linux_sysvec.c#2 integrate .. //depot/projects/power/sys/i386/pci/pci_cfgreg.c#2 integrate .. //depot/projects/power/sys/ia64/ia32/ia32_sysvec.c#2 integrate .. //depot/projects/power/sys/ia64/ia64/elf_machdep.c#2 integrate .. //depot/projects/power/sys/ia64/ia64/genassym.c#2 integrate .. //depot/projects/power/sys/ia64/ia64/machdep.c#2 integrate .. //depot/projects/power/sys/ia64/ia64/pmap.c#2 integrate .. //depot/projects/power/sys/ia64/ia64/ssc.c#2 integrate .. //depot/projects/power/sys/ia64/ia64/syscall.S#2 integrate .. //depot/projects/power/sys/ia64/ia64/trap.c#2 integrate .. //depot/projects/power/sys/ia64/ia64/uma_machdep.c#1 branch .. //depot/projects/power/sys/ia64/ia64/unwind.c#2 integrate .. //depot/projects/power/sys/ia64/ia64/vm_machdep.c#2 integrate .. //depot/projects/power/sys/ia64/include/bus.h#2 integrate .. //depot/projects/power/sys/ia64/include/cpu.h#2 integrate .. //depot/projects/power/sys/ia64/include/elf.h#2 integrate .. //depot/projects/power/sys/ia64/include/pmap.h#2 integrate .. //depot/projects/power/sys/ia64/include/proc.h#2 integrate .. //depot/projects/power/sys/ia64/include/varargs.h#2 integrate .. //depot/projects/power/sys/ia64/include/vmparam.h#2 integrate .. //depot/projects/power/sys/isa/fd.c#2 integrate .. //depot/projects/power/sys/isa/vga_isa.c#2 integrate .. //depot/projects/power/sys/isofs/cd9660/cd9660_iconv.c#1 branch .. //depot/projects/power/sys/isofs/cd9660/cd9660_lookup.c#2 integrate .. //depot/projects/power/sys/isofs/cd9660/cd9660_mount.h#2 integrate .. //depot/projects/power/sys/isofs/cd9660/cd9660_node.c#2 integrate .. //depot/projects/power/sys/isofs/cd9660/cd9660_rrip.c#2 integrate .. //depot/projects/power/sys/isofs/cd9660/cd9660_util.c#2 integrate .. //depot/projects/power/sys/isofs/cd9660/cd9660_vfsops.c#2 integrate .. //depot/projects/power/sys/isofs/cd9660/cd9660_vnops.c#2 integrate .. //depot/projects/power/sys/isofs/cd9660/iso.h#2 integrate .. //depot/projects/power/sys/kern/imgact_aout.c#2 integrate .. //depot/projects/power/sys/kern/imgact_elf.c#2 integrate .. //depot/projects/power/sys/kern/init_main.c#2 integrate .. //depot/projects/power/sys/kern/init_sysent.c#2 integrate .. //depot/projects/power/sys/kern/kern_clock.c#2 integrate .. //depot/projects/power/sys/kern/kern_conf.c#2 integrate .. //depot/projects/power/sys/kern/kern_descrip.c#2 integrate .. //depot/projects/power/sys/kern/kern_event.c#2 integrate .. //depot/projects/power/sys/kern/kern_exec.c#2 integrate .. //depot/projects/power/sys/kern/kern_idle.c#2 integrate .. //depot/projects/power/sys/kern/kern_linker.c#2 integrate .. //depot/projects/power/sys/kern/kern_mac.c#2 integrate .. //depot/projects/power/sys/kern/kern_malloc.c#2 integrate .. //depot/projects/power/sys/kern/kern_mib.c#2 integrate .. //depot/projects/power/sys/kern/kern_physio.c#2 integrate .. //depot/projects/power/sys/kern/kern_poll.c#2 integrate .. //depot/projects/power/sys/kern/kern_proc.c#2 integrate .. //depot/projects/power/sys/kern/kern_prot.c#2 integrate .. //depot/projects/power/sys/kern/kern_sig.c#2 integrate .. //depot/projects/power/sys/kern/kern_subr.c#2 integrate .. //depot/projects/power/sys/kern/kern_switch.c#2 integrate .. //depot/projects/power/sys/kern/kern_synch.c#2 integrate .. //depot/projects/power/sys/kern/kern_sysctl.c#2 integrate .. //depot/projects/power/sys/kern/kern_xxx.c#2 integrate .. //depot/projects/power/sys/kern/linker_if.m#2 integrate .. //depot/projects/power/sys/kern/sched_4bsd.c#2 integrate .. //depot/projects/power/sys/kern/sched_ule.c#2 integrate .. //depot/projects/power/sys/kern/subr_bus.c#2 integrate .. //depot/projects/power/sys/kern/subr_devstat.c#2 integrate .. //depot/projects/power/sys/kern/subr_disk.c#2 integrate .. //depot/projects/power/sys/kern/subr_kobj.c#2 integrate .. //depot/projects/power/sys/kern/subr_mbuf.c#2 integrate .. //depot/projects/power/sys/kern/subr_smp.c#2 integrate .. //depot/projects/power/sys/kern/subr_witness.c#2 integrate .. //depot/projects/power/sys/kern/subr_xxx.c#2 delete .. //depot/projects/power/sys/kern/sys_generic.c#2 integrate .. //depot/projects/power/sys/kern/sys_pipe.c#2 integrate .. //depot/projects/power/sys/kern/sys_process.c#2 integrate .. //depot/projects/power/sys/kern/syscalls.c#2 integrate .. //depot/projects/power/sys/kern/syscalls.master#2 integrate .. //depot/projects/power/sys/kern/sysv_msg.c#2 integrate .. //depot/projects/power/sys/kern/sysv_sem.c#2 integrate .. //depot/projects/power/sys/kern/sysv_shm.c#2 integrate .. //depot/projects/power/sys/kern/tty_cons.c#2 integrate .. //depot/projects/power/sys/kern/tty_pty.c#2 integrate .. //depot/projects/power/sys/kern/tty_tty.c#2 integrate .. //depot/projects/power/sys/kern/uipc_socket.c#2 integrate .. //depot/projects/power/sys/kern/uipc_socket2.c#2 integrate .. //depot/projects/power/sys/kern/uipc_syscalls.c#2 integrate .. //depot/projects/power/sys/kern/vfs_aio.c#2 integrate .. //depot/projects/power/sys/kern/vfs_bio.c#2 integrate .. //depot/projects/power/sys/kern/vfs_cache.c#2 integrate .. //depot/projects/power/sys/kern/vfs_cluster.c#2 integrate .. //depot/projects/power/sys/kern/vfs_default.c#2 integrate .. //depot/projects/power/sys/kern/vfs_init.c#2 integrate .. //depot/projects/power/sys/kern/vfs_mount.c#2 integrate .. //depot/projects/power/sys/kern/vfs_subr.c#2 integrate .. //depot/projects/power/sys/kern/vfs_syscalls.c#2 integrate .. //depot/projects/power/sys/kern/vfs_vnops.c#2 integrate .. //depot/projects/power/sys/libkern/iconv.c#2 integrate .. //depot/projects/power/sys/libkern/iconv_converter_if.m#2 integrate .. //depot/projects/power/sys/libkern/iconv_xlat.c#2 integrate .. //depot/projects/power/sys/libkern/iconv_xlat16.c#1 branch .. //depot/projects/power/sys/modules/Makefile#2 integrate .. //depot/projects/power/sys/modules/bridge/Makefile#2 integrate .. //depot/projects/power/sys/modules/cd9660/Makefile#2 integrate .. //depot/projects/power/sys/modules/cd9660_iconv/Makefile#1 branch .. //depot/projects/power/sys/modules/firewire/Makefile#2 integrate .. //depot/projects/power/sys/modules/firewire/sbp/Makefile#2 integrate .. //depot/projects/power/sys/modules/firewire/sbp_targ/Makefile#1 branch .. //depot/projects/power/sys/modules/ipfilter/Makefile#2 integrate .. //depot/projects/power/sys/modules/libiconv/Makefile#2 integrate .. //depot/projects/power/sys/modules/msdosfs/Makefile#2 integrate .. //depot/projects/power/sys/modules/msdosfs_iconv/Makefile#1 branch .. //depot/projects/power/sys/modules/netgraph/bluetooth/bluetooth/Makefile#2 integrate .. //depot/projects/power/sys/modules/netgraph/bluetooth/bt3c/Makefile#2 integrate .. //depot/projects/power/sys/modules/netgraph/bluetooth/h4/Makefile#2 integrate .. //depot/projects/power/sys/modules/netgraph/bluetooth/hci/Makefile#2 integrate .. //depot/projects/power/sys/modules/netgraph/bluetooth/l2cap/Makefile#2 integrate .. //depot/projects/power/sys/modules/netgraph/bluetooth/socket/Makefile#2 integrate .. //depot/projects/power/sys/modules/netgraph/bluetooth/ubt/Makefile#2 integrate .. //depot/projects/power/sys/modules/netgraph/bluetooth/ubtbcmfw/Makefile#2 integrate .. //depot/projects/power/sys/modules/ntfs/Makefile#2 integrate .. //depot/projects/power/sys/modules/ntfs_iconv/Makefile#1 branch .. //depot/projects/power/sys/modules/uart/Makefile#2 integrate .. //depot/projects/power/sys/net/bpf.c#2 integrate .. //depot/projects/power/sys/net/bpf.h#2 integrate .. //depot/projects/power/sys/net/bridge.c#2 integrate .. //depot/projects/power/sys/net/if.c#2 integrate .. //depot/projects/power/sys/net/if.h#2 integrate .. //depot/projects/power/sys/net/if_disc.c#2 integrate .. //depot/projects/power/sys/net/if_ethersubr.c#2 integrate .. //depot/projects/power/sys/net/if_faith.c#2 integrate .. //depot/projects/power/sys/net/if_iso88025subr.c#2 integrate .. //depot/projects/power/sys/net/if_loop.c#2 integrate .. //depot/projects/power/sys/net/if_stf.c#2 integrate .. //depot/projects/power/sys/net/if_tun.c#2 integrate .. //depot/projects/power/sys/net/if_tunvar.h#2 integrate .. //depot/projects/power/sys/net/if_var.h#2 integrate .. //depot/projects/power/sys/net/net_osdep.c#2 integrate .. //depot/projects/power/sys/net/net_osdep.h#2 integrate .. //depot/projects/power/sys/net/netisr.c#2 integrate .. //depot/projects/power/sys/net/pfil.c#2 integrate .. //depot/projects/power/sys/net/pfil.h#2 integrate .. //depot/projects/power/sys/net/pfkeyv2.h#2 integrate .. //depot/projects/power/sys/net/radix.c#2 integrate .. //depot/projects/power/sys/net/route.c#2 integrate .. //depot/projects/power/sys/net/route.h#2 integrate .. //depot/projects/power/sys/net/rtsock.c#2 integrate .. //depot/projects/power/sys/net80211/ieee80211.c#2 integrate .. //depot/projects/power/sys/net80211/ieee80211.h#2 integrate .. //depot/projects/power/sys/net80211/ieee80211_crypto.c#2 integrate .. //depot/projects/power/sys/net80211/ieee80211_input.c#2 integrate .. //depot/projects/power/sys/net80211/ieee80211_ioctl.c#2 integrate .. //depot/projects/power/sys/net80211/ieee80211_ioctl.h#2 integrate .. //depot/projects/power/sys/net80211/ieee80211_node.c#2 integrate .. //depot/projects/power/sys/net80211/ieee80211_node.h#2 integrate .. //depot/projects/power/sys/net80211/ieee80211_output.c#2 integrate .. //depot/projects/power/sys/net80211/ieee80211_proto.c#2 integrate .. //depot/projects/power/sys/net80211/ieee80211_var.h#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/drivers/ubt/ng_ubt.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/drivers/ubtbcmfw/ubtbcmfw.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/hci/ng_hci_cmds.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/hci/ng_hci_evnt.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/hci/ng_hci_misc.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/hci/ng_hci_misc.h#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/hci/ng_hci_ulpi.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/l2cap/ng_l2cap_cmds.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/l2cap/ng_l2cap_evnt.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/l2cap/ng_l2cap_llpi.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/l2cap/ng_l2cap_misc.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/l2cap/ng_l2cap_misc.h#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/socket/ng_btsocket.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/socket/ng_btsocket_hci_raw.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/socket/ng_btsocket_l2cap_raw.c#2 integrate .. //depot/projects/power/sys/netgraph/bluetooth/socket/ng_btsocket_rfcomm.c#2 integrate .. //depot/projects/power/sys/netgraph/ng_base.c#2 integrate .. //depot/projects/power/sys/netgraph/ng_message.h#2 integrate .. //depot/projects/power/sys/netinet/icmp6.h#2 integrate .. //depot/projects/power/sys/netinet/if_atm.c#2 integrate .. //depot/projects/power/sys/netinet/if_ether.c#2 integrate .. //depot/projects/power/sys/netinet/in_gif.c#2 integrate .. //depot/projects/power/sys/netinet/in_gif.h#2 integrate .. //depot/projects/power/sys/netinet/in_pcb.c#2 integrate .. //depot/projects/power/sys/netinet/in_proto.c#2 integrate .. //depot/projects/power/sys/netinet/in_rmx.c#2 integrate .. //depot/projects/power/sys/netinet/ip6.h#2 integrate .. //depot/projects/power/sys/netinet/ip_dummynet.c#2 integrate .. //depot/projects/power/sys/netinet/ip_dummynet.h#2 integrate .. //depot/projects/power/sys/netinet/ip_flow.c#2 integrate .. //depot/projects/power/sys/netinet/ip_fw2.c#2 integrate .. //depot/projects/power/sys/netinet/ip_icmp.c#2 integrate .. //depot/projects/power/sys/netinet/ip_input.c#2 integrate .. //depot/projects/power/sys/netinet/ip_output.c#2 integrate .. //depot/projects/power/sys/netinet/ip_var.h#2 integrate .. //depot/projects/power/sys/netinet/raw_ip.c#2 integrate .. //depot/projects/power/sys/netinet/tcp_input.c#2 integrate .. //depot/projects/power/sys/netinet/tcp_subr.c#2 integrate .. //depot/projects/power/sys/netinet/tcp_syncache.c#2 integrate .. //depot/projects/power/sys/netinet6/ah.h#2 integrate .. //depot/projects/power/sys/netinet6/ah6.h#2 integrate .. //depot/projects/power/sys/netinet6/ah_aesxcbcmac.c#1 branch .. //depot/projects/power/sys/netinet6/ah_aesxcbcmac.h#1 branch .. //depot/projects/power/sys/netinet6/ah_core.c#2 integrate .. //depot/projects/power/sys/netinet6/ah_input.c#2 integrate .. //depot/projects/power/sys/netinet6/ah_output.c#2 integrate .. //depot/projects/power/sys/netinet6/dest6.c#2 integrate .. //depot/projects/power/sys/netinet6/esp.h#2 integrate .. //depot/projects/power/sys/netinet6/esp_aesctr.c#1 branch .. //depot/projects/power/sys/netinet6/esp_aesctr.h#1 branch .. //depot/projects/power/sys/netinet6/esp_core.c#2 integrate .. //depot/projects/power/sys/netinet6/esp_input.c#2 integrate .. //depot/projects/power/sys/netinet6/esp_output.c#2 integrate .. //depot/projects/power/sys/netinet6/esp_rijndael.c#2 integrate .. //depot/projects/power/sys/netinet6/esp_rijndael.h#2 integrate .. //depot/projects/power/sys/netinet6/frag6.c#2 integrate .. //depot/projects/power/sys/netinet6/icmp6.c#2 integrate .. //depot/projects/power/sys/netinet6/in6.c#2 integrate .. //depot/projects/power/sys/netinet6/in6.h#2 integrate .. //depot/projects/power/sys/netinet6/in6_cksum.c#2 integrate .. //depot/projects/power/sys/netinet6/in6_gif.c#2 integrate .. //depot/projects/power/sys/netinet6/in6_gif.h#2 integrate .. //depot/projects/power/sys/netinet6/in6_ifattach.c#2 integrate .. //depot/projects/power/sys/netinet6/in6_pcb.c#2 integrate .. //depot/projects/power/sys/netinet6/in6_prefix.c#2 integrate .. //depot/projects/power/sys/netinet6/in6_proto.c#2 integrate .. //depot/projects/power/sys/netinet6/in6_rmx.c#2 integrate .. //depot/projects/power/sys/netinet6/in6_src.c#2 integrate .. //depot/projects/power/sys/netinet6/in6_var.h#2 integrate .. //depot/projects/power/sys/netinet6/ip6_forward.c#2 integrate .. //depot/projects/power/sys/netinet6/ip6_fw.c#2 integrate .. //depot/projects/power/sys/netinet6/ip6_fw.h#2 integrate .. //depot/projects/power/sys/netinet6/ip6_id.c#1 branch .. //depot/projects/power/sys/netinet6/ip6_input.c#2 integrate .. //depot/projects/power/sys/netinet6/ip6_mroute.c#2 integrate .. //depot/projects/power/sys/netinet6/ip6_output.c#2 integrate .. //depot/projects/power/sys/netinet6/ip6_var.h#2 integrate .. //depot/projects/power/sys/netinet6/ip6protosw.h#2 integrate .. //depot/projects/power/sys/netinet6/ipcomp_core.c#2 integrate .. //depot/projects/power/sys/netinet6/ipcomp_input.c#2 integrate .. //depot/projects/power/sys/netinet6/ipsec.c#2 integrate .. //depot/projects/power/sys/netinet6/ipsec.h#2 integrate .. //depot/projects/power/sys/netinet6/mld6.c#2 integrate .. //depot/projects/power/sys/netinet6/mld6_var.h#2 integrate .. //depot/projects/power/sys/netinet6/nd6.c#2 integrate .. //depot/projects/power/sys/netinet6/nd6.h#2 integrate .. //depot/projects/power/sys/netinet6/nd6_nbr.c#2 integrate .. //depot/projects/power/sys/netinet6/nd6_rtr.c#2 integrate .. //depot/projects/power/sys/netinet6/raw_ip6.c#2 integrate .. //depot/projects/power/sys/netinet6/route6.c#2 integrate .. //depot/projects/power/sys/netinet6/scope6.c#2 integrate .. //depot/projects/power/sys/netinet6/scope6_var.h#2 integrate .. //depot/projects/power/sys/netinet6/udp6_output.c#2 integrate .. //depot/projects/power/sys/netinet6/udp6_usrreq.c#2 integrate .. //depot/projects/power/sys/netipsec/ipsec.c#2 integrate .. //depot/projects/power/sys/netipsec/ipsec.h#2 integrate .. //depot/projects/power/sys/netipsec/ipsec_input.c#2 integrate .. //depot/projects/power/sys/netipsec/ipsec_mbuf.c#2 integrate .. //depot/projects/power/sys/netipsec/ipsec_osdep.h#1 branch .. //depot/projects/power/sys/netipsec/ipsec_output.c#2 integrate .. //depot/projects/power/sys/netipsec/key.c#2 integrate .. //depot/projects/power/sys/netipsec/key_debug.c#2 integrate .. //depot/projects/power/sys/netipsec/keydb.h#2 integrate .. //depot/projects/power/sys/netipsec/keysock.c#2 integrate .. //depot/projects/power/sys/netipsec/xform_ah.c#2 integrate .. //depot/projects/power/sys/netipsec/xform_esp.c#2 integrate .. //depot/projects/power/sys/netipsec/xform_ipcomp.c#2 integrate .. //depot/projects/power/sys/netipsec/xform_ipip.c#2 integrate .. //depot/projects/power/sys/netkey/key.c#2 integrate .. //depot/projects/power/sys/netkey/key_debug.c#2 integrate .. //depot/projects/power/sys/netkey/key_debug.h#2 integrate .. //depot/projects/power/sys/netkey/key_var.h#2 integrate .. //depot/projects/power/sys/netkey/keysock.c#2 integrate .. //depot/projects/power/sys/netncp/ncp_mod.c#2 integrate .. //depot/projects/power/sys/netsmb/smb_dev.c#2 integrate .. //depot/projects/power/sys/nfsclient/bootp_subr.c#2 integrate .. //depot/projects/power/sys/nfsclient/krpc_subr.c#2 integrate .. //depot/projects/power/sys/nfsclient/nfs_bio.c#2 integrate .. //depot/projects/power/sys/nfsclient/nfs_node.c#2 integrate .. //depot/projects/power/sys/nfsclient/nfs_socket.c#2 integrate .. //depot/projects/power/sys/nfsclient/nfs_subs.c#2 integrate .. //depot/projects/power/sys/nfsclient/nfs_vfsops.c#2 integrate .. //depot/projects/power/sys/nfsclient/nfs_vnops.c#2 integrate .. //depot/projects/power/sys/nfsserver/nfs_syscalls.c#2 integrate .. //depot/projects/power/sys/opencrypto/cryptodev.c#2 integrate .. //depot/projects/power/sys/pc98/i386/busiosubr.c#2 integrate .. //depot/projects/power/sys/pc98/i386/machdep.c#2 integrate .. //depot/projects/power/sys/pc98/pc98/clock.c#2 integrate .. //depot/projects/power/sys/pc98/pc98/fd.c#2 integrate .. //depot/projects/power/sys/pc98/pc98/pc98gdc.c#2 integrate .. //depot/projects/power/sys/pc98/pc98/sio.c#2 integrate .. //depot/projects/power/sys/pc98/pc98/wd.c#2 integrate .. //depot/projects/power/sys/pc98/pc98/wd_cd.c#2 integrate .. //depot/projects/power/sys/pccard/pcic.c#2 integrate .. //depot/projects/power/sys/pccard/pcic_pci.c#2 integrate .. //depot/projects/power/sys/pci/agp_i810.c#2 integrate .. //depot/projects/power/sys/pci/agp_intel.c#2 integrate .. //depot/projects/power/sys/pci/if_dc.c#2 integrate .. //depot/projects/power/sys/pci/if_dcreg.h#2 integrate .. //depot/projects/power/sys/pci/if_rlreg.h#2 integrate .. //depot/projects/power/sys/pci/if_sis.c#2 integrate .. //depot/projects/power/sys/pci/if_sk.c#2 integrate .. //depot/projects/power/sys/pci/if_skreg.h#2 integrate .. //depot/projects/power/sys/pci/if_ti.c#2 integrate .. //depot/projects/power/sys/pci/if_xl.c#2 integrate .. //depot/projects/power/sys/pci/if_xlreg.h#2 integrate .. //depot/projects/power/sys/pci/yukonreg.h#1 branch .. //depot/projects/power/sys/posix4/ksched.c#2 integrate .. //depot/projects/power/sys/powerpc/include/cpu.h#2 integrate .. //depot/projects/power/sys/powerpc/include/elf.h#2 integrate .. //depot/projects/power/sys/powerpc/include/param.h#2 integrate .. //depot/projects/power/sys/powerpc/include/pmap.h#2 integrate .. //depot/projects/power/sys/powerpc/powermac/ata_macio.c#2 integrate .. //depot/projects/power/sys/powerpc/powerpc/clock.c#2 integrate .. //depot/projects/power/sys/powerpc/powerpc/cpu.c#2 integrate .. //depot/projects/power/sys/powerpc/powerpc/elf_machdep.c#2 integrate .. //depot/projects/power/sys/powerpc/powerpc/machdep.c#2 integrate .. //depot/projects/power/sys/powerpc/powerpc/pmap.c#2 integrate .. //depot/projects/power/sys/powerpc/psim/ata_iobus.c#2 integrate .. //depot/projects/power/sys/security/mac/mac_internal.h#1 branch .. //depot/projects/power/sys/security/mac/mac_net.c#1 branch .. //depot/projects/power/sys/security/mac/mac_pipe.c#1 branch .. //depot/projects/power/sys/security/mac/mac_process.c#1 branch .. //depot/projects/power/sys/security/mac/mac_system.c#1 branch .. //depot/projects/power/sys/security/mac/mac_vfs.c#1 branch .. //depot/projects/power/sys/security/mac_lomac/mac_lomac.c#2 integrate .. //depot/projects/power/sys/sparc64/include/bus.h#2 integrate .. //depot/projects/power/sys/sparc64/include/elf.h#2 integrate .. //depot/projects/power/sys/sparc64/include/endian.h#2 integrate .. //depot/projects/power/sys/sparc64/include/param.h#2 integrate .. //depot/projects/power/sys/sparc64/include/pmap.h#2 integrate .. //depot/projects/power/sys/sparc64/sparc64/elf_machdep.c#2 integrate .. //depot/projects/power/sys/sparc64/sparc64/machdep.c#2 integrate .. //depot/projects/power/sys/sparc64/sparc64/ofw_machdep.c#2 integrate .. //depot/projects/power/sys/sparc64/sparc64/pmap.c#2 integrate .. //depot/projects/power/sys/sparc64/sparc64/trap.c#2 integrate .. //depot/projects/power/sys/sys/bio.h#2 integrate .. //depot/projects/power/sys/sys/buf.h#2 integrate .. //depot/projects/power/sys/sys/bus.h#2 integrate .. //depot/projects/power/sys/sys/cdefs.h#2 integrate .. //depot/projects/power/sys/sys/cdio.h#2 integrate .. //depot/projects/power/sys/sys/conf.h#2 integrate .. //depot/projects/power/sys/sys/cons.h#2 integrate .. //depot/projects/power/sys/sys/domain.h#2 integrate .. //depot/projects/power/sys/sys/endian.h#2 integrate .. //depot/projects/power/sys/sys/iconv.h#2 integrate .. //depot/projects/power/sys/sys/kernel.h#2 integrate .. //depot/projects/power/sys/sys/kobj.h#2 integrate .. //depot/projects/power/sys/sys/lock.h#2 integrate .. //depot/projects/power/sys/sys/mac.h#2 integrate .. //depot/projects/power/sys/sys/mbuf.h#2 integrate .. //depot/projects/power/sys/sys/mutex.h#2 integrate .. //depot/projects/power/sys/sys/param.h#2 integrate .. //depot/projects/power/sys/sys/proc.h#2 integrate .. //depot/projects/power/sys/sys/protosw.h#2 integrate .. //depot/projects/power/sys/sys/ptrace.h#2 integrate .. //depot/projects/power/sys/sys/sched.h#2 integrate .. //depot/projects/power/sys/sys/signalvar.h#2 integrate .. //depot/projects/power/sys/sys/syscall.h#2 integrate .. //depot/projects/power/sys/sys/syscall.mk#2 integrate .. //depot/projects/power/sys/sys/sysctl.h#2 integrate .. //depot/projects/power/sys/sys/sysent.h#2 integrate .. //depot/projects/power/sys/sys/sysproto.h#2 integrate .. //depot/projects/power/sys/sys/systm.h#2 integrate .. //depot/projects/power/sys/sys/uio.h#2 integrate .. //depot/projects/power/sys/sys/vnode.h#2 integrate .. //depot/projects/power/sys/tools/makeobjops.awk#2 integrate .. //depot/projects/power/sys/ufs/ffs/ffs_inode.c#2 integrate .. //depot/projects/power/sys/ufs/ffs/ffs_rawread.c#2 integrate .. //depot/projects/power/sys/ufs/ffs/ffs_snapshot.c#2 integrate .. //depot/projects/power/sys/ufs/ffs/ffs_softdep.c#2 integrate .. //depot/projects/power/sys/ufs/ffs/ffs_vfsops.c#2 integrate .. //depot/projects/power/sys/ufs/ffs/ffs_vnops.c#2 integrate .. //depot/projects/power/sys/ufs/ufs/ufs_bmap.c#2 integrate .. //depot/projects/power/sys/ufs/ufs/ufs_ihash.c#2 integrate .. //depot/projects/power/sys/ufs/ufs/ufs_inode.c#2 integrate .. //depot/projects/power/sys/ufs/ufs/ufs_quota.c#2 integrate .. //depot/projects/power/sys/ufs/ufs/ufs_vnops.c#2 integrate .. //depot/projects/power/sys/vm/device_pager.c#2 integrate .. //depot/projects/power/sys/vm/pmap.h#2 integrate .. //depot/projects/power/sys/vm/swap_pager.c#2 integrate .. //depot/projects/power/sys/vm/uma.h#2 integrate .. //depot/projects/power/sys/vm/uma_core.c#2 integrate .. //depot/projects/power/sys/vm/uma_dbg.c#2 integrate .. //depot/projects/power/sys/vm/uma_int.h#2 integrate .. //depot/projects/power/sys/vm/vm_contig.c#2 integrate .. //depot/projects/power/sys/vm/vm_extern.h#2 integrate .. //depot/projects/power/sys/vm/vm_fault.c#2 integrate .. //depot/projects/power/sys/vm/vm_glue.c#2 integrate .. //depot/projects/power/sys/vm/vm_kern.c#2 integrate .. //depot/projects/power/sys/vm/vm_map.c#2 integrate .. //depot/projects/power/sys/vm/vm_map.h#2 integrate .. //depot/projects/power/sys/vm/vm_mmap.c#2 integrate .. //depot/projects/power/sys/vm/vm_object.c#2 integrate .. //depot/projects/power/sys/vm/vm_page.c#2 integrate .. //depot/projects/power/sys/vm/vm_page.h#2 integrate .. //depot/projects/power/sys/vm/vm_pageout.c#2 integrate .. //depot/projects/power/sys/vm/vm_pageout.h#2 integrate .. //depot/projects/power/sys/vm/vm_pager.c#2 integrate .. //depot/projects/power/sys/vm/vnode_pager.c#2 integrate Differences ... ==== //depot/projects/power/sys/alpha/alpha/elf_machdep.c#2 (text+ko) ==== @@ -24,7 +24,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/elf_machdep.c,v 1.15 2003/08/17 08:08:38 gordon Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/elf_machdep.c,v 1.16 2003/09/25 01:10:22 peter Exp $"); #include #include @@ -73,7 +73,8 @@ PS_STRINGS, VM_PROT_ALL, exec_copyout_strings, - exec_setregs + exec_setregs, + NULL }; static Elf64_Brandinfo freebsd_brand_info = { ==== //depot/projects/power/sys/alpha/alpha/machdep.c#2 (text+ko) ==== @@ -88,7 +88,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/machdep.c,v 1.212 2003/08/25 03:43:07 marcel Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/machdep.c,v 1.213 2003/10/19 02:36:06 peter Exp $"); #include "opt_compat.h" #include "opt_ddb.h" @@ -1731,6 +1731,12 @@ prom_halt(1); } +void +cpu_idle(void) +{ + /* Insert code to halt (until next interrupt) for the idle loop */ +} + /* * Clear registers on exec */ ==== //depot/projects/power/sys/alpha/alpha/pmap.c#2 (text+ko) ==== @@ -148,7 +148,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.138 2003/09/12 07:07:47 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/alpha/alpha/pmap.c,v 1.139 2003/10/03 22:46:52 alc Exp $"); #include #include @@ -2093,105 +2093,6 @@ } /* - * pmap_prefault provides a quick way of clustering - * pagefaults into a processes address space. It is a "cousin" - * of pmap_object_init_pt, except it runs at page fault time instead - * of mmap time. - */ -#define PFBAK 4 -#define PFFOR 4 -#define PAGEORDER_SIZE (PFBAK+PFFOR) - -static int pmap_prefault_pageorder[] = { - -1 * PAGE_SIZE, 1 * PAGE_SIZE, - -2 * PAGE_SIZE, 2 * PAGE_SIZE, - -3 * PAGE_SIZE, 3 * PAGE_SIZE, - -4 * PAGE_SIZE, 4 * PAGE_SIZE -}; - -void -pmap_prefault(pmap, addra, entry) - pmap_t pmap; - vm_offset_t addra; - vm_map_entry_t entry; -{ - int i; - vm_offset_t starta; - vm_offset_t addr; - vm_pindex_t pindex; - vm_page_t m, mpte; - vm_object_t object; - - if (!curthread || (pmap != vmspace_pmap(curthread->td_proc->p_vmspace))) - return; - - object = entry->object.vm_object; - - starta = addra - PFBAK * PAGE_SIZE; - if (starta < entry->start) { - starta = entry->start; - } else if (starta > addra) { - starta = 0; - } - - mpte = NULL; - for (i = 0; i < PAGEORDER_SIZE; i++) { - vm_object_t backing_object, lobject; - pt_entry_t *pte; - - addr = addra + pmap_prefault_pageorder[i]; - if (addr > addra + (PFFOR * PAGE_SIZE)) - addr = 0; - - if (addr < starta || addr >= entry->end) - continue; - - if (!pmap_pte_v(pmap_lev1pte(pmap, addr)) - || !pmap_pte_v(pmap_lev2pte(pmap, addr))) - continue; - - pte = vtopte(addr); - if (*pte) - continue; - - pindex = ((addr - entry->start) + entry->offset) >> PAGE_SHIFT; - lobject = object; - VM_OBJECT_LOCK(lobject); - while ((m = vm_page_lookup(lobject, pindex)) == NULL && - lobject->type == OBJT_DEFAULT && - (backing_object = lobject->backing_object) != NULL) { - if (lobject->backing_object_offset & PAGE_MASK) - break; - pindex += lobject->backing_object_offset >> PAGE_SHIFT; - VM_OBJECT_LOCK(backing_object); - VM_OBJECT_UNLOCK(lobject); - lobject = backing_object; - } - VM_OBJECT_UNLOCK(lobject); - /* - * give-up when a page is not in memory - */ - if (m == NULL) - break; - vm_page_lock_queues(); - if (((m->valid & VM_PAGE_BITS_ALL) == VM_PAGE_BITS_ALL) && - (m->busy == 0) && - (m->flags & (PG_BUSY | PG_FICTITIOUS)) == 0) { - - if ((m->queue - m->pc) == PQ_CACHE) { - vm_page_deactivate(m); - } - vm_page_busy(m); - vm_page_unlock_queues(); - mpte = pmap_enter_quick(pmap, addr, m, mpte); - vm_page_lock_queues(); - vm_page_wakeup(m); - } - vm_page_unlock_queues(); - } -} - -/* * Routine: pmap_change_wiring * Function: Change the wiring attribute for a map/virtual-address * pair. @@ -2557,6 +2458,26 @@ } /* + * pmap_is_prefaultable: + * + * Return whether or not the specified virtual address is elgible + * for prefault. + */ +boolean_t +pmap_is_prefaultable(pmap_t pmap, vm_offset_t addr) +{ + pt_entry_t *pte; + + if (!pmap_pte_v(pmap_lev1pte(pmap, addr)) || + !pmap_pte_v(pmap_lev2pte(pmap, addr))) + return (FALSE); + pte = vtopte(addr); + if (*pte) + return (FALSE); + return (TRUE); +} + >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 17:50:21 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D93A716A4C1; Wed, 22 Oct 2003 17:50:20 -0700 (PDT) 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 9C67316A4B3 for ; Wed, 22 Oct 2003 17:50:20 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D44E243F93 for ; Wed, 22 Oct 2003 17:50:19 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N0oJXJ044005 for ; Wed, 22 Oct 2003 17:50:19 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N0oJeD044001 for perforce@freebsd.org; Wed, 22 Oct 2003 17:50:19 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 17:50:19 -0700 (PDT) Message-Id: <200310230050.h9N0oJeD044001@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 Subject: PERFORCE change 40225 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 00:50:21 -0000 http://perforce.freebsd.org/chv.cgi?CH=40225 Change 40225 by rwatson@rwatson_paprika on 2003/10/22 17:49:28 Integ sys/security/mac into the trustedbsd_sebsd branch. Not hooked up in any form, as it will take a bit to make sure everything is properly and carefully merged. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_internal.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_net.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_pipe.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_posix_sem.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_process.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_system.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_sysv_msg.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_sysv_sem.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_sysv_shm.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_vfs.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Wed Oct 22 18:33:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EB37F16A4C0; Wed, 22 Oct 2003 18:33:12 -0700 (PDT) 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 BA8D016A4B3 for ; Wed, 22 Oct 2003 18:33:12 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1AE9B43FBF for ; Wed, 22 Oct 2003 18:33:12 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N1XBXJ046588 for ; Wed, 22 Oct 2003 18:33:11 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N1XBDA046585 for perforce@freebsd.org; Wed, 22 Oct 2003 18:33:11 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 18:33:11 -0700 (PDT) Message-Id: <200310230133.h9N1XBDA046585@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 Subject: PERFORCE change 40226 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 01:33:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=40226 Change 40226 by rwatson@rwatson_paprika on 2003/10/22 18:32:46 Fix capability-related syntax, reformat to match original layout. Re-spell capability.h. This now builds. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/gnu/ext2fs/ext2_vfsops.c#5 edit .. //depot/projects/trustedbsd/sebsd/sys/gnu/ext2fs/ext2_vnops.c#5 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/gnu/ext2fs/ext2_vfsops.c#5 (text+ko) ==== @@ -54,7 +54,7 @@ #include #include #include -#include +#include #include #include @@ -234,7 +234,7 @@ * If upgrade to read-write by non-root, then verify * that user has necessary permissions on the device. */ - if (cap_check(td, CAP_MKNOD)) { + if (cap_check(td, CAP_MKNOD) != 0) { vn_lock(devvp, LK_EXCLUSIVE | LK_RETRY, td); if ((error = VOP_ACCESS(devvp, VREAD | VWRITE, td->td_ucred, td)) != 0) { @@ -291,7 +291,7 @@ * If mount by non-root, then verify that user has necessary * permissions on the device. */ - if (cap_check(td, CAP_MKNOD)) { + if (cap_check(td, CAP_MKNOD) != 0) { accessmode = VREAD; if ((mp->mnt_flag & MNT_RDONLY) == 0) accessmode |= VWRITE; ==== //depot/projects/trustedbsd/sebsd/sys/gnu/ext2fs/ext2_vnops.c#5 (text+ko) ==== @@ -66,7 +66,7 @@ #include #include #include -#include +#include #include #include @@ -485,7 +485,8 @@ * Privileged non-jail processes may not modify system flags * if securelevel > 0 and any existing system flags are set. */ - if (!cap_check_cred(cred, NULL, CAP_SYS_SETFFLAG, PRISON_ROOT)) { + if (cap_check_cred(cred, NULL, CAP_SYS_SETFFLAG, PRISON_ROOT) + == 0) { if (ip->i_flags & (SF_NOUNLINK | SF_IMMUTABLE | SF_APPEND)) { error = securelevel_gt(cred, 0); @@ -599,15 +600,22 @@ */ if ((error = VOP_ACCESS(vp, VADMIN, cred, td))) return (error); - /* Privileged processes may set the sticky bit on non-directories */ - if (vp->v_type != VDIR && (mode & S_ISTXT) && cap_check_cred(cred, NULL, CAP_SYS_RAWIO, 0)) - return (EFTYPE); + /* + * Privileged processes may set the sticky bit on non-directories. + */ + if (vp->v_type != VDIR && (mode & S_ISTXT)) { + if (cap_check_cred(cred, NULL, CAP_SYS_RAWIO, 0) != 0) + return (EFTYPE); + } - /* CAP_FSETID is required to set suid or sgid on non-owned files */ - if (((!groupmember(ip->i_gid, cred) && (mode & ISGID)) || - ((mode & ISUID) && ip->i_uid != cred->cr_uid)) - && cap_check_cred (cred, NULL, CAP_FSETID, PRISON_ROOT)) - return (EPERM); + /* + * CAP_FSETID is required to set suid or sgid on non-owned files. + */ + if (((mode & ISGID) && !groupmember(ip->i_gid, cred)) || + ((mode & ISUID) && ip->i_uid != cred->cr_uid)) { + if (cap_check_cred (cred, NULL, CAP_FSETID, PRISON_ROOT) != 0) + return (EPERM); + } ip->i_mode &= ~ALLPERMS; ip->i_mode |= (mode & ALLPERMS); @@ -648,19 +656,25 @@ * have privilege. */ if ((uid != ip->i_uid || - (gid != ip->i_gid && !groupmember(gid, cred))) && - (error = cap_check_cred(cred, NULL, CAP_FOWNER, PRISON_ROOT))) - return (error); + (gid != ip->i_gid && !groupmember(gid, cred)))) { + error = cap_check_cred(cred, NULL, CAP_FOWNER, PRISON_ROOT); + if (error) + return (error); + } ogid = ip->i_gid; ouid = ip->i_uid; ip->i_gid = gid; ip->i_uid = uid; ip->i_flag |= IN_CHANGE; - /* Processes without CAP_FSETID clear suid and sgid when owner/groups change */ - if ((ouid != uid || ogid != gid) && (ip->i_mode & (ISUID | ISGID)) && - cap_check_cred (cred, NULL, CAP_FSETID, PRISON_ROOT)) - ip->i_mode &= ~(ISUID | ISGID); + /* + * Processes without CAP_FSETID clear suid and sgid when owner/groups + * change. + */ + if ((ouid != uid || ogid != gid) && (ip->i_mode & (ISUID | ISGID))) { + if (cap_check_cred (cred, NULL, CAP_FSETID, PRISON_ROOT) != 0) + ip->i_mode &= ~(ISUID | ISGID); + } return (0); } @@ -1832,9 +1846,11 @@ ip->i_mode = mode; tvp->v_type = IFTOVT(mode); /* Rest init'd in getnewvnode(). */ ip->i_nlink = 1; - if ((ip->i_mode & ISGID) && !groupmember(ip->i_gid, cnp->cn_cred) && - cap_check_cred(cnp->cn_cred, NULL, CAP_FSETOD, PRISON_ROOT)) - ip->i_mode &= ~ISGID; + if ((ip->i_mode & ISGID) && !groupmember(ip->i_gid, cnp->cn_cred)) { + if (cap_check_cred(cnp->cn_cred, NULL, CAP_FSETID, + PRISON_ROOT) != 0) + ip->i_mode &= ~ISGID; + } if (cnp->cn_flags & ISWHITEOUT) ip->i_flags |= UF_OPAQUE; From owner-p4-projects@FreeBSD.ORG Wed Oct 22 18:41:24 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6C0F316A4C0; Wed, 22 Oct 2003 18:41:24 -0700 (PDT) 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 2F5C516A4B3 for ; Wed, 22 Oct 2003 18:41:24 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7CC5643FA3 for ; Wed, 22 Oct 2003 18:41:23 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N1fNXJ047009 for ; Wed, 22 Oct 2003 18:41:23 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N1fMqD047006 for perforce@freebsd.org; Wed, 22 Oct 2003 18:41:22 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 18:41:22 -0700 (PDT) Message-Id: <200310230141.h9N1fMqD047006@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 Subject: PERFORCE change 40228 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 01:41:24 -0000 http://perforce.freebsd.org/chv.cgi?CH=40228 Change 40228 by rwatson@rwatson_paprika on 2003/10/22 18:41:15 Intregrate trustedbsd_sebsd forward ever so slightly to trustedbsd_mac/...@36694, sans deletions. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/kern/vfs_syscalls.c#7 integrate .. //depot/projects/trustedbsd/sebsd/sys/netinet/ip_icmp.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/netinet/tcp_subr.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/mac_bsdextended/mac_bsdextended.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/security/mac_none/mac_none.c#4 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/kern/vfs_syscalls.c#7 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/kern/vfs_syscalls.c,v 1.329 2003/08/05 00:26:51 iedowse Exp $"); +__FBSDID("$FreeBSD: src/sys/kern/vfs_syscalls.c,v 1.331 2003/08/21 13:53:01 rwatson Exp $"); /* For 4.3 integer FS ID compatibility */ #include "opt_compat.h" @@ -680,7 +680,7 @@ fp = nfp; cmode = ((mode &~ fdp->fd_cmask) & ALLPERMS) &~ S_ISTXT; NDINIT(&nd, LOOKUP, FOLLOW, pathseg, path, td); - td->td_dupfd = -indx - 1; /* XXX check for fdopen */ + td->td_dupfd = -1; /* XXX check for fdopen */ /* * Bump the ref count to prevent another process from closing * the descriptor while we are blocked in vn_open() ==== //depot/projects/trustedbsd/sebsd/sys/netinet/ip_icmp.c#5 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)ip_icmp.c 8.2 (Berkeley) 1/4/94 - * $FreeBSD: src/sys/netinet/ip_icmp.c,v 1.78 2003/03/21 15:43:06 mdodd Exp $ + * $FreeBSD: src/sys/netinet/ip_icmp.c,v 1.79 2003/08/21 18:39:15 rwatson Exp $ */ #include "opt_ipsec.h" ==== //depot/projects/trustedbsd/sebsd/sys/netinet/tcp_subr.c#5 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)tcp_subr.c 8.2 (Berkeley) 5/24/95 - * $FreeBSD: src/sys/netinet/tcp_subr.c,v 1.160 2003/05/07 05:26:27 rwatson Exp $ + * $FreeBSD: src/sys/netinet/tcp_subr.c,v 1.161 2003/08/21 18:39:16 rwatson Exp $ */ #include "opt_compat.h" ==== //depot/projects/trustedbsd/sebsd/sys/security/mac_bsdextended/mac_bsdextended.c#5 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/security/mac_bsdextended/mac_bsdextended.c,v 1.15 2003/07/05 01:24:36 rwatson Exp $ + * $FreeBSD: src/sys/security/mac_bsdextended/mac_bsdextended.c,v 1.16 2003/08/21 14:34:54 rwatson Exp $ */ /* * Developed by the TrustedBSD Project. ==== //depot/projects/trustedbsd/sebsd/sys/security/mac_none/mac_none.c#4 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/security/mac_none/mac_none.c,v 1.29 2003/06/23 01:26:34 rwatson Exp $ + * $FreeBSD: src/sys/security/mac_none/mac_none.c,v 1.30 2003/08/21 16:19:17 rwatson Exp $ */ /* From owner-p4-projects@FreeBSD.ORG Wed Oct 22 18:45:30 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0A23116A4C0; Wed, 22 Oct 2003 18:45:30 -0700 (PDT) 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 D92E816A4B3 for ; Wed, 22 Oct 2003 18:45:29 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 33B6F43F75 for ; Wed, 22 Oct 2003 18:45:29 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N1jTXJ047281 for ; Wed, 22 Oct 2003 18:45:29 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N1jSUk047278 for perforce@freebsd.org; Wed, 22 Oct 2003 18:45:28 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 18:45:28 -0700 (PDT) Message-Id: <200310230145.h9N1jSUk047278@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 Subject: PERFORCE change 40229 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 01:45:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=40229 Change 40229 by rwatson@rwatson_paprika on 2003/10/22 18:45:17 Slide slightly further forward to trustedbsd_mac@37200. Also bring in pending deletes of vm_swap.c and old 802.11 code, some files from libpthread. Mostly, this just brings in the MAC Framework compile-time options for features such as MAC_STATIC. Affected files ... .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/amd64/include/ksd.h#2 delete .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/i386/i386/ksd.c#2 delete .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/i386/include/ksd.h#2 delete .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/ia64/include/ksd.h#2 delete .. //depot/projects/trustedbsd/sebsd/release/ia64/doFS.sh#3 delete .. //depot/projects/trustedbsd/sebsd/sys/conf/options#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/conf/MAC#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/kern/init_sysent.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/kern/syscalls.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/net/if_ieee80211subr.c#2 delete .. //depot/projects/trustedbsd/sebsd/sys/sys/syscall.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/sys/syscall.mk#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/sys/sysproto.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/vm/vm_swap.c#4 delete Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/conf/options#5 (text+ko) ==== @@ -115,6 +115,7 @@ MAC_PARTITION opt_dontuse.h MAC_PORTACL opt_dontuse.h MAC_SEEOTHERUIDS opt_dontuse.h +MAC_STATIC opt_mac.h MAC_STUB opt_dontuse.h MAC_TEST opt_dontuse.h MD_ROOT opt_md.h ==== //depot/projects/trustedbsd/sebsd/sys/i386/conf/MAC#6 (text+ko) ==== @@ -31,7 +31,9 @@ makeoptions DEBUG=-g #Build kernel with gdb(1) debug symbols options MAC -options MAC_DEBUG +#options MAC_ALWAYS_LABEL_MBUF +#options MAC_DEBUG +#options MAC_STATIC options UFS_EXTATTR options UFS_EXTATTR_AUTOSTART ==== //depot/projects/trustedbsd/sebsd/sys/kern/init_sysent.c#5 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/kern/init_sysent.c,v 1.155 2003/07/17 22:45:33 davidxu Exp $ - * created from FreeBSD: src/sys/kern/syscalls.master,v 1.151 2003/06/28 08:29:05 davidxu Exp + * $FreeBSD$ + * created from FreeBSD: src/sys/kern/syscalls.master,v 1.152 2003/07/17 22:45:33 davidxu Exp */ #include "opt_compat.h" ==== //depot/projects/trustedbsd/sebsd/sys/kern/syscalls.c#6 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/sys/sys/syscall.h#6 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/sys/sys/syscall.mk#6 (text+ko) ==== ==== //depot/projects/trustedbsd/sebsd/sys/sys/sysproto.h#6 (text+ko) ==== From owner-p4-projects@FreeBSD.ORG Wed Oct 22 18:51:38 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 50F6316A4C0; Wed, 22 Oct 2003 18:51:38 -0700 (PDT) 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 2C91716A4B3 for ; Wed, 22 Oct 2003 18:51:38 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9F2A143F93 for ; Wed, 22 Oct 2003 18:51:37 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N1pbXJ047727 for ; Wed, 22 Oct 2003 18:51:37 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N1parG047724 for perforce@freebsd.org; Wed, 22 Oct 2003 18:51:36 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 18:51:36 -0700 (PDT) Message-Id: <200310230151.h9N1parG047724@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 Subject: PERFORCE change 40230 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 01:51:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=40230 Change 40230 by rwatson@rwatson_paprika on 2003/10/22 18:50:52 Integrate up to trustedbsd_mac@39000. Remove POSIX semaphores from MAC kernel. Note that this is the last submission to the MAC branch before the very large integ of that branch at 39070, which brings in most of the post-5.1 work and will be exciting (at best) to integrate. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/i386/conf/MAC#7 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/i386/conf/MAC#7 (text+ko) ==== @@ -59,7 +59,7 @@ options SYSVMSG #SYSV-style message queues options SYSVSEM #SYSV-style semaphores options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions -options P1003_1B_SEMAPHORES #POSIX P1003_1B semaphores +#options P1003_1B_SEMAPHORES #POSIX P1003_1B semaphores options KBD_INSTALL_CDEV # install a CDEV entry in /dev options AHC_REG_PRETTY_PRINT # Print register bitfields in debug # output. Adds ~128k to driver. From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:15:08 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9746616A4C0; Wed, 22 Oct 2003 19:15:08 -0700 (PDT) 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 6F90E16A4B3 for ; Wed, 22 Oct 2003 19:15:08 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3DAD243FD7 for ; Wed, 22 Oct 2003 19:15:07 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2F7XJ049751 for ; Wed, 22 Oct 2003 19:15:07 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2F6JF049748 for perforce@freebsd.org; Wed, 22 Oct 2003 19:15:06 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:15:06 -0700 (PDT) Message-Id: <200310230215.h9N2F6JF049748@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 Subject: PERFORCE change 40232 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:15:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=40232 Change 40232 by rwatson@rwatson_paprika on 2003/10/22 19:14:30 Integrate trustedbsd_sebsd bin tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. The bin directory includes only relatively few changes, such as sh grammer improvements. Affected files ... .. //depot/projects/trustedbsd/sebsd/bin/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/df/df.c#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/ls/ls.1#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/ls/util.c#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/ps/extern.h#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/ps/keyword.c#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/ps/print.c#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/ps/ps.1#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/setfacl/setfacl.1#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/setfacl/setfacl.c#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/sh/arith.h#2 integrate .. //depot/projects/trustedbsd/sebsd/bin/sh/arith.y#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/sh/arith_lex.l#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/sh/mkbuiltins#2 integrate .. //depot/projects/trustedbsd/sebsd/bin/sh/sh.1#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/sh/shell.h#2 integrate .. //depot/projects/trustedbsd/sebsd/bin/test/Makefile#2 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/bin/Makefile.inc#4 (text+ko) ==== @@ -1,6 +1,9 @@ # @(#)Makefile.inc 8.1 (Berkeley) 5/31/93 -# $FreeBSD: src/bin/Makefile.inc,v 1.16 2003/06/13 07:04:01 markm Exp $ +# $FreeBSD: src/bin/Makefile.inc,v 1.17 2003/08/17 08:37:47 gordon Exp $ BINDIR?= /bin +WARNS?= 6 + +.if !defined (WITH_DYNAMICROOT) NOSHARED?= YES -WARNS?= 6 +.endif ==== //depot/projects/trustedbsd/sebsd/bin/df/df.c#4 (text+ko) ==== @@ -48,7 +48,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.50 2003/06/03 11:54:42 bde Exp $"); +__FBSDID("$FreeBSD: src/bin/df/df.c,v 1.51 2003/09/13 20:46:58 obrien Exp $"); #include #include @@ -122,10 +122,10 @@ static char *getmntpt(const char *); static size_t longwidth(long); static char *makenetvfslist(void); -static void prthuman(const struct statfs *, long); +static void prthuman(const struct statfs *, size_t); static void prthumanval(double); static void prtstat(struct statfs *, struct maxwidths *); -static long regetmntinfo(struct statfs **, long, const char **); +static size_t regetmntinfo(struct statfs **, long, const char **); static unit_t unit_adjust(double *); static void update_maxwidths(struct maxwidths *, const struct statfs *); static void usage(void); @@ -148,8 +148,8 @@ const char *fstype; char *mntpath, *mntpt; const char **vfslist; - long mntsize; - int ch, i, rv; + size_t i, mntsize; + int ch, rv; fstype = "ufs"; @@ -305,7 +305,7 @@ static char * getmntpt(const char *name) { - long mntsize, i; + size_t mntsize, i; struct statfs *mntbuf; mntsize = getmntinfo(&mntbuf, MNT_NOWAIT); @@ -321,7 +321,7 @@ * file system types not in vfslist and possibly re-stating to get * current (not cached) info. Returns the new count of valid statfs bufs. */ -static long +static size_t regetmntinfo(struct statfs **mntbufp, long mntsize, const char **vfslist) { int i, j; @@ -371,7 +371,7 @@ } static void -prthuman(const struct statfs *sfsp, long used) +prthuman(const struct statfs *sfsp, size_t used) { prthumanval((double)sfsp->f_blocks * (double)sfsp->f_bsize); @@ -411,7 +411,7 @@ static long blocksize; static int headerlen, timesthrough = 0; static const char *header; - long used, availblks, inodes; + size_t used, availblks, inodes; if (++timesthrough == 1) { mwp->mntfrom = max(mwp->mntfrom, strlen("Filesystem")); @@ -456,8 +456,8 @@ if (iflag) { inodes = sfsp->f_files; used = inodes - sfsp->f_ffree; - (void)printf(" %*ld %*ld %4.0f%% ", - (u_int)mwp->iused, used, + (void)printf(" %*lu %*lu %4.0f%% ", + (u_int)mwp->iused, (u_long)used, (u_int)mwp->ifree, sfsp->f_ffree, inodes == 0 ? 100.0 : (double)used / (double)inodes * 100.0); } else ==== //depot/projects/trustedbsd/sebsd/bin/ls/ls.1#4 (text+ko) ==== @@ -33,7 +33,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)ls.1 8.7 (Berkeley) 7/29/94 -.\" $FreeBSD: src/bin/ls/ls.1,v 1.75 2003/07/10 20:53:56 brueffer Exp $ +.\" $FreeBSD: src/bin/ls/ls.1,v 1.76 2003/08/08 17:04:17 schweikh Exp $ .\" .Dd May 19, 2002 .Dt LS 1 @@ -645,7 +645,12 @@ .Xr getfmac 8 , .Xr sticky 8 .Sh STANDARDS -The +With the exception of options +.Fl g , +.Fl n +and +.Fl o , +the .Nm utility conforms to .St -p1003.1-2001 . ==== //depot/projects/trustedbsd/sebsd/bin/ls/util.c#4 (text+ko) ==== @@ -40,7 +40,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/ls/util.c,v 1.31 2003/05/03 16:39:33 markm Exp $"); +__FBSDID("$FreeBSD: src/bin/ls/util.c,v 1.32 2003/09/09 12:02:52 tjr Exp $"); #include #include @@ -156,9 +156,9 @@ { (void)fprintf(stderr, #ifdef COLORLS - "usage: ls [-ABCFGHLPRTWZabcdfghiklnoqrstu1]" + "usage: ls [-ABCFGHLPRTWZabcdfghiklmnoqrstuwx1]" #else - "usage: ls [-ABCFHLPRTWZabcdfghiklnoqrstu1]" + "usage: ls [-ABCFHLPRTWZabcdfghiklmnoqrstuwx1]" #endif " [file ...]\n"); exit(1); ==== //depot/projects/trustedbsd/sebsd/bin/ps/extern.h#4 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)extern.h 8.3 (Berkeley) 4/2/94 - * $FreeBSD: src/bin/ps/extern.h,v 1.30 2003/01/19 00:22:34 jmallett Exp $ + * $FreeBSD: src/bin/ps/extern.h,v 1.31 2003/08/13 07:35:07 harti Exp $ */ struct kinfo; @@ -63,6 +63,7 @@ void maxrss(KINFO *, VARENT *); void lockname(KINFO *, VARENT *); void mwchan(KINFO *, VARENT *); +void nwchan(KINFO *, VARENT *); void pagein(KINFO *, VARENT *); void parsefmt(const char *, int); void pcpu(KINFO *, VARENT *); ==== //depot/projects/trustedbsd/sebsd/bin/ps/keyword.c#4 (text+ko) ==== @@ -37,7 +37,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/bin/ps/keyword.c,v 1.63 2003/04/12 10:39:56 tjr Exp $"); +__FBSDID("$FreeBSD: src/bin/ps/keyword.c,v 1.64 2003/08/13 07:35:07 harti Exp $"); #include #include @@ -127,6 +127,7 @@ LONG, "ld", 0}, {"nvcsw", "NVCSW", NULL, USER, rvar, NULL, 5, ROFF(ru_nvcsw), LONG, "ld", 0}, + {"nwchan", "NWCHAN", NULL, LJUST, nwchan, NULL, 8, 0, CHAR, NULL, 0}, {"oublk", "OUBLK", NULL, USER, rvar, NULL, 4, ROFF(ru_oublock), LONG, "ld", 0}, {"oublock", "", "oublk", 0, NULL, NULL, 0, 0, CHAR, NULL, 0}, ==== //depot/projects/trustedbsd/sebsd/bin/ps/print.c#4 (text+ko) ==== @@ -38,7 +38,7 @@ #endif #include -__FBSDID("$FreeBSD: src/bin/ps/print.c,v 1.82 2003/04/15 18:49:20 charnier Exp $"); +__FBSDID("$FreeBSD: src/bin/ps/print.c,v 1.83 2003/08/13 07:35:07 harti Exp $"); #include #include @@ -457,6 +457,19 @@ } void +nwchan(KINFO *k, VARENT *ve) +{ + VAR *v; + + v = ve->var; + if (k->ki_p->ki_wchan) { + (void)printf("%0*lx", v->width, + (long)k->ki_p->ki_wchan); + } else + (void)printf("%-*s", v->width, "-"); +} + +void mwchan(KINFO *k, VARENT *ve) { VAR *v; ==== //depot/projects/trustedbsd/sebsd/bin/ps/ps.1#4 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)ps.1 8.3 (Berkeley) 4/18/94 -.\" $FreeBSD: src/bin/ps/ps.1,v 1.64 2003/08/05 10:31:28 brueffer Exp $ +.\" $FreeBSD: src/bin/ps/ps.1,v 1.65 2003/09/08 19:57:13 ru Exp $ .\" .Dd April 18, 1994 .Dt PS 1 @@ -210,7 +210,7 @@ .It flags The flags associated with the process as in the include file -.Aq Pa sys/proc.h : +.In sys/proc.h : .Bl -column P_NOCLDSTOP P_NOCLDSTOP .It Dv "P_ADVLOCK" Ta No "0x00001 Process may hold a POSIX advisory lock" .It Dv "P_CONTROLT" Ta No "0x00002 Has a controlling terminal" ==== //depot/projects/trustedbsd/sebsd/bin/setfacl/setfacl.1#4 (text+ko) ==== @@ -23,7 +23,7 @@ .\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE .\" POSSIBILITY OF SUCH DAMAGE. .\" -.\" $FreeBSD: src/bin/setfacl/setfacl.1,v 1.8 2002/12/30 15:36:29 rwatson Exp $ +.\" $FreeBSD: src/bin/setfacl/setfacl.1,v 1.9 2003/08/07 14:52:17 rwatson Exp $ .\" .Dd January 7, 2001 .Dt SETFACL 1 @@ -185,6 +185,24 @@ .Dq Li group ACL entries in the resulting ACL. .Pp +Traditional POSIX interfaces acting on file system object modes have +modified semantics in the presence of POSIX.1e extended ACLs. +When a mask entry is present on the access ACL of an object, the mask +entry is substituted for the group bits; this occurs in programs such +as +.Xr stat 1 +or +.Xr ls 1 . +When the mode is modified on an object that has a mask entry, the +changes applied to the group bits will actually be applied to the +mask entry. +These semantics provide for greater application compatibility: +applications modifying the mode instead of the ACL will see +conservative behavior, limiting the effective rights granted by all +of the additional user and group entries; this occurs in programs +such as +.Xr chmod 1 . +.Pp ACL entries applied from a file using the .Fl M or ==== //depot/projects/trustedbsd/sebsd/bin/setfacl/setfacl.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/bin/setfacl/setfacl.c,v 1.8 2003/07/18 16:00:26 rwatson Exp $"); +__FBSDID("$FreeBSD: src/bin/setfacl/setfacl.c,v 1.9 2003/08/07 14:43:43 rwatson Exp $"); #include #include @@ -96,7 +96,7 @@ usage(void) { - fprintf(stderr, "usage: setfacl [-bdhknv] [-m entries] [-M file1] " + fprintf(stderr, "usage: setfacl [-bdhkn] [-m entries] [-M file1] " "[-x entries] [-X file2] [file ...]\n"); exit(1); } ==== //depot/projects/trustedbsd/sebsd/bin/sh/arith.h#2 (text+ko) ==== @@ -31,8 +31,9 @@ * SUCH DAMAGE. * * @(#)arith.h 1.1 (Berkeley) 5/4/95 - * $FreeBSD: src/bin/sh/arith.h,v 1.6 2002/02/02 06:50:45 imp Exp $ + * $FreeBSD: src/bin/sh/arith.h,v 1.8 2003/09/04 18:28:42 schweikh Exp $ */ int arith(char *); -int expcmd(int , char **); +int arith_assign(char *, arith_t); +int expcmd(int, char **); ==== //depot/projects/trustedbsd/sebsd/bin/sh/arith.y#4 (text+ko) ==== @@ -1,58 +1,4 @@ -%token ARITH_NUM ARITH_LPAREN ARITH_RPAREN - -%left ARITH_OR -%left ARITH_AND -%left ARITH_BOR -%left ARITH_BXOR -%left ARITH_BAND -%left ARITH_EQ ARITH_NE -%left ARITH_LT ARITH_GT ARITH_GE ARITH_LE -%left ARITH_LSHIFT ARITH_RSHIFT -%left ARITH_ADD ARITH_SUB -%left ARITH_MUL ARITH_DIV ARITH_REM -%left ARITH_UNARYMINUS ARITH_UNARYPLUS ARITH_NOT ARITH_BNOT -%% - -exp: expr = { - return ($1); - } - ; - - -expr: ARITH_LPAREN expr ARITH_RPAREN = { $$ = $2; } - | expr ARITH_OR expr = { $$ = $1 ? $1 : $3 ? $3 : 0; } - | expr ARITH_AND expr = { $$ = $1 ? ( $3 ? $3 : 0 ) : 0; } - | expr ARITH_BOR expr = { $$ = $1 | $3; } - | expr ARITH_BXOR expr = { $$ = $1 ^ $3; } - | expr ARITH_BAND expr = { $$ = $1 & $3; } - | expr ARITH_EQ expr = { $$ = $1 == $3; } - | expr ARITH_GT expr = { $$ = $1 > $3; } - | expr ARITH_GE expr = { $$ = $1 >= $3; } - | expr ARITH_LT expr = { $$ = $1 < $3; } - | expr ARITH_LE expr = { $$ = $1 <= $3; } - | expr ARITH_NE expr = { $$ = $1 != $3; } - | expr ARITH_LSHIFT expr = { $$ = $1 << $3; } - | expr ARITH_RSHIFT expr = { $$ = $1 >> $3; } - | expr ARITH_ADD expr = { $$ = $1 + $3; } - | expr ARITH_SUB expr = { $$ = $1 - $3; } - | expr ARITH_MUL expr = { $$ = $1 * $3; } - | expr ARITH_DIV expr = { - if ($3 == 0) - yyerror("division by zero"); - $$ = $1 / $3; - } - | expr ARITH_REM expr = { - if ($3 == 0) - yyerror("division by zero"); - $$ = $1 % $3; - } - | ARITH_NOT expr = { $$ = !($2); } - | ARITH_BNOT expr = { $$ = ~($2); } - | ARITH_SUB expr %prec ARITH_UNARYMINUS = { $$ = -($2); } - | ARITH_ADD expr %prec ARITH_UNARYPLUS = { $$ = $2; } - | ARITH_NUM - ; -%% +%{ /*- * Copyright (c) 1993 * The Regents of the University of California. All rights reserved. @@ -89,19 +35,233 @@ * SUCH DAMAGE. */ +#if 0 #ifndef lint -#if 0 static char sccsid[] = "@(#)arith.y 8.3 (Berkeley) 5/4/95"; #endif #endif /* not lint */ + #include -__FBSDID("$FreeBSD: src/bin/sh/arith.y,v 1.14 2003/05/01 16:58:56 obrien Exp $"); +__FBSDID("$FreeBSD: src/bin/sh/arith.y,v 1.17 2003/09/07 10:14:56 schweikh Exp $"); +#include #include "shell.h" +#include "var.h" +%} +%union { + arith_t l_value; + char* s_value; +} +%token ARITH_NUM ARITH_LPAREN ARITH_RPAREN +%token ARITH_VAR + +%type expr +%right ARITH_ASSIGN +%right ARITH_ADDASSIGN ARITH_SUBASSIGN +%right ARITH_MULASSIGN ARITH_DIVASSIGN ARITH_REMASSIGN +%right ARITH_RSHASSIGN ARITH_LSHASSIGN +%right ARITH_BANDASSIGN ARITH_BXORASSIGN ARITH_BORASSIGN +%left ARITH_OR +%left ARITH_AND +%left ARITH_BOR +%left ARITH_BXOR +%left ARITH_BAND +%left ARITH_EQ ARITH_NE +%left ARITH_LT ARITH_GT ARITH_GE ARITH_LE +%left ARITH_LSHIFT ARITH_RSHIFT +%left ARITH_ADD ARITH_SUB +%left ARITH_MUL ARITH_DIV ARITH_REM +%left ARITH_UNARYMINUS ARITH_UNARYPLUS ARITH_NOT ARITH_BNOT +%% + +exp: + expr + { return ($1); } + ; + +expr: + ARITH_LPAREN expr ARITH_RPAREN + { $$ = $2; } | + expr ARITH_OR expr + { $$ = $1 ? $1 : $3 ? $3 : 0; } | + expr ARITH_AND expr + { $$ = $1 ? ( $3 ? $3 : 0 ) : 0; } | + expr ARITH_BOR expr + { $$ = $1 | $3; } | + expr ARITH_BXOR expr + { $$ = $1 ^ $3; } | + expr ARITH_BAND expr + { $$ = $1 & $3; } | + expr ARITH_EQ expr + { $$ = $1 == $3; } | + expr ARITH_GT expr + { $$ = $1 > $3; } | + expr ARITH_GE expr + { $$ = $1 >= $3; } | + expr ARITH_LT expr + { $$ = $1 < $3; } | + expr ARITH_LE expr + { $$ = $1 <= $3; } | + expr ARITH_NE expr + { $$ = $1 != $3; } | + expr ARITH_LSHIFT expr + { $$ = $1 << $3; } | + expr ARITH_RSHIFT expr + { $$ = $1 >> $3; } | + expr ARITH_ADD expr + { $$ = $1 + $3; } | + expr ARITH_SUB expr + { $$ = $1 - $3; } | + expr ARITH_MUL expr + { $$ = $1 * $3; } | + expr ARITH_DIV expr + { + if ($3 == 0) + yyerror("division by zero"); + $$ = $1 / $3; + } | + expr ARITH_REM expr + { + if ($3 == 0) + yyerror("division by zero"); + $$ = $1 % $3; + } | + ARITH_NOT expr + { $$ = !($2); } | + ARITH_BNOT expr + { $$ = ~($2); } | + ARITH_SUB expr %prec ARITH_UNARYMINUS + { $$ = -($2); } | + ARITH_ADD expr %prec ARITH_UNARYPLUS + { $$ = $2; } | + ARITH_NUM | + ARITH_VAR + { + char *p; + arith_t arith_val; + char *str_val; + + if (lookupvar($1) == NULL) + setvarsafe($1, "0", 0); + str_val = lookupvar($1); + arith_val = strtoarith_t(str_val, &p, 0); + /* + * Conversion is successful only in case + * we've converted _all_ characters. + */ + if (*p != '\0') + yyerror("variable conversion error"); + $$ = arith_val; + } | + ARITH_VAR ARITH_ASSIGN expr + { + if (arith_assign($1, $3) != 0) + yyerror("variable assignment error"); + $$ = $3; + } | + ARITH_VAR ARITH_ADDASSIGN expr + { + arith_t value; + + value = atoarith_t(lookupvar($1)) + $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } | + ARITH_VAR ARITH_SUBASSIGN expr + { + arith_t value; + + value = atoarith_t(lookupvar($1)) - $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } | + ARITH_VAR ARITH_MULASSIGN expr + { + arith_t value; + + value = atoarith_t(lookupvar($1)) * $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } | + ARITH_VAR ARITH_DIVASSIGN expr + { + arith_t value; + + if ($3 == 0) + yyerror("division by zero"); + + value = atoarith_t(lookupvar($1)) / $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } | + ARITH_VAR ARITH_REMASSIGN expr + { + arith_t value; + + if ($3 == 0) + yyerror("division by zero"); + + value = atoarith_t(lookupvar($1)) % $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } | + ARITH_VAR ARITH_RSHASSIGN expr + { + arith_t value; + + value = atoarith_t(lookupvar($1)) >> $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } | + ARITH_VAR ARITH_LSHASSIGN expr + { + arith_t value; + + value = atoarith_t(lookupvar($1)) << $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } | + ARITH_VAR ARITH_BANDASSIGN expr + { + arith_t value; + + value = atoarith_t(lookupvar($1)) & $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } | + ARITH_VAR ARITH_BXORASSIGN expr + { + arith_t value; + + value = atoarith_t(lookupvar($1)) ^ $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } | + ARITH_VAR ARITH_BORASSIGN expr + { + arith_t value; + + value = atoarith_t(lookupvar($1)) | $3; + if (arith_assign($1, value) != 0) + yyerror("variable assignment error"); + $$ = value; + } ; +%% #include "error.h" #include "output.h" #include "memalloc.h" +#define lstrlen(var) (3 + (2 + CHAR_BIT * sizeof((var))) / 3) + char *arith_buf, *arith_startbuf; extern void arith_lex_reset(); @@ -109,6 +269,19 @@ int yyparse(void); int +arith_assign(char *name, arith_t value) +{ + char *str; + int ret; + + str = (char *)ckmalloc(lstrlen(value)); + sprintf(str, ARITH_FORMAT_STR, value); + ret = setvarsafe(name, str, 0); + free(str); + return ret; +} + +int arith(char *s) { long result; @@ -117,10 +290,10 @@ INTOFF; result = yyparse(); - arith_lex_reset(); /* reprime lex */ + arith_lex_reset(); /* Reprime lex. */ INTON; - return (result); + return result; } void @@ -129,7 +302,7 @@ yyerrok; yyclearin; - arith_lex_reset(); /* reprime lex */ + arith_lex_reset(); /* Reprime lex. */ error("arithmetic expression: %s: \"%s\"", s, arith_startbuf); } @@ -148,7 +321,7 @@ p = argv[1]; if (argc > 2) { /* - * concatenate arguments + * Concatenate arguments. */ STARTSTACKSTR(concat); ap = argv + 2; @@ -168,7 +341,7 @@ i = arith(p); out1fmt("%ld\n", i); - return (! i); + return !i; } /*************************/ ==== //depot/projects/trustedbsd/sebsd/bin/sh/arith_lex.l#4 (text+ko) ==== @@ -35,18 +35,23 @@ * SUCH DAMAGE. */ +#if 0 #ifndef lint -#if 0 static char sccsid[] = "@(#)arith_lex.l 8.3 (Berkeley) 5/4/95"; #endif #endif /* not lint */ + #include -__FBSDID("$FreeBSD: src/bin/sh/arith_lex.l,v 1.18 2003/05/01 16:58:56 obrien Exp $"); +__FBSDID("$FreeBSD: src/bin/sh/arith_lex.l,v 1.21 2003/09/06 16:33:55 tjr Exp $"); + +#include +#include "shell.h" #include "y.tab.h" #include "error.h" +#include "memalloc.h" +#include "var.h" -extern int yylval; extern char *arith_buf, *arith_startbuf; #undef YY_INPUT #define YY_INPUT(buf,result,max) \ @@ -56,34 +61,76 @@ %% [ \t\n] { ; } -[0-9]+ { yylval = atol(yytext); return(ARITH_NUM); } -"(" { return(ARITH_LPAREN); } -")" { return(ARITH_RPAREN); } -"||" { return(ARITH_OR); } -"&&" { return(ARITH_AND); } -"|" { return(ARITH_BOR); } -"^" { return(ARITH_BXOR); } -"&" { return(ARITH_BAND); } -"==" { return(ARITH_EQ); } -"!=" { return(ARITH_NE); } -">" { return(ARITH_GT); } -">=" { return(ARITH_GE); } -"<" { return(ARITH_LT); } -"<=" { return(ARITH_LE); } -"<<" { return(ARITH_LSHIFT); } -">>" { return(ARITH_RSHIFT); } -"*" { return(ARITH_MUL); } -"/" { return(ARITH_DIV); } -"%" { return(ARITH_REM); } -"+" { return(ARITH_ADD); } -"-" { return(ARITH_SUB); } -"~" { return(ARITH_BNOT); } -"!" { return(ARITH_NOT); } -. { error("arith: syntax error: \"%s\"\n", arith_startbuf); } + +0x[a-fA-F0-9]+ { + yylval.l_value = strtoarith_t(yytext, NULL, 16); + return ARITH_NUM; + } + +0[0-7]+ { + yylval.l_value = strtoarith_t(yytext, NULL, 8); + return ARITH_NUM; + } + +[0-9]+ { + yylval.l_value = strtoarith_t(yytext, NULL, 10); + return ARITH_NUM; + } + +[A-Za-z][A-Za-z0-9_]* { + /* + * If variable doesn't exist, we should initialize + * it to zero. + */ + char *temp; + if (lookupvar(yytext) == NULL) + setvarsafe(yytext, "0", 0); + temp = (char *)ckmalloc(strlen(yytext) + 1); + yylval.s_value = strcpy(temp, yytext); + + return ARITH_VAR; + } + +"(" { return ARITH_LPAREN; } +")" { return ARITH_RPAREN; } +"||" { return ARITH_OR; } +"&&" { return ARITH_AND; } +"|" { return ARITH_BOR; } +"^" { return ARITH_BXOR; } +"&" { return ARITH_BAND; } +"==" { return ARITH_EQ; } +"!=" { return ARITH_NE; } +">" { return ARITH_GT; } +">=" { return ARITH_GE; } +"<" { return ARITH_LT; } +"<=" { return ARITH_LE; } +"<<" { return ARITH_LSHIFT; } +">>" { return ARITH_RSHIFT; } +"*" { return ARITH_MUL; } +"/" { return ARITH_DIV; } +"%" { return ARITH_REM; } +"+" { return ARITH_ADD; } +"-" { return ARITH_SUB; } +"~" { return ARITH_BNOT; } +"!" { return ARITH_NOT; } +"=" { return ARITH_ASSIGN; } +"+=" { return ARITH_ADDASSIGN; } +"-=" { return ARITH_SUBASSIGN; } +"*=" { return ARITH_MULASSIGN; } +"/=" { return ARITH_DIVASSIGN; } +"%=" { return ARITH_REMASSIGN; } +">>=" { return ARITH_RSHASSIGN; } +"<<=" { return ARITH_LSHASSIGN; } +"&=" { return ARITH_BANDASSIGN; } +"^=" { return ARITH_BXORASSIGN; } +"|=" { return ARITH_BORASSIGN; } +. { + error("arith: syntax error: \"%s\"\n", arith_startbuf); + } %% void -arith_lex_reset() +arith_lex_reset(void) { YY_NEW_FILE; } ==== //depot/projects/trustedbsd/sebsd/bin/sh/mkbuiltins#2 (text+ko) ==== @@ -35,11 +35,11 @@ # SUCH DAMAGE. # # @(#)mkbuiltins 8.2 (Berkeley) 5/4/95 -# $FreeBSD: src/bin/sh/mkbuiltins,v 1.11 2002/10/18 10:33:32 tjr Exp $ +# $FreeBSD: src/bin/sh/mkbuiltins,v 1.12 2003/09/13 06:59:22 schweikh Exp $ temp=`/usr/bin/mktemp -t ka` havejobs=0 -if grep '^#define JOBS[ ]*1' shell.h > /dev/null +if grep '^#define[ ]*JOBS[ ]*1' shell.h > /dev/null then havejobs=1 fi havehist=1 ==== //depot/projects/trustedbsd/sebsd/bin/sh/sh.1#4 (text+ko) ==== @@ -33,7 +33,7 @@ .\" SUCH DAMAGE. .\" .\" from: @(#)sh.1 8.6 (Berkeley) 5/4/95 -.\" $FreeBSD: src/bin/sh/sh.1,v 1.87 2003/05/16 21:19:32 ru Exp $ +.\" $FreeBSD: src/bin/sh/sh.1,v 1.88 2003/09/08 19:57:13 ru Exp $ .\" .Dd April 12, 2003 .Dt SH 1 @@ -583,7 +583,7 @@ .Pp If a command is terminated by a signal, its exit status is 128 plus the signal number. Signal numbers are defined in the header file -.Aq Pa sys/signal.h . +.In sys/signal.h . .Ss Complex Commands Complex commands are combinations of simple commands with control operators or reserved words, together creating a larger complex ==== //depot/projects/trustedbsd/sebsd/bin/sh/shell.h#2 (text+ko) ==== @@ -34,7 +34,7 @@ * SUCH DAMAGE. * * @(#)shell.h 8.2 (Berkeley) 5/4/95 - * $FreeBSD: src/bin/sh/shell.h,v 1.14 2002/07/19 08:09:04 tjr Exp $ + * $FreeBSD: src/bin/sh/shell.h,v 1.16 2003/09/04 18:28:42 schweikh Exp $ */ /* @@ -48,20 +48,27 @@ */ -#define JOBS 1 +#define JOBS 1 /* #define DEBUG 1 */ +/* + * Type of used arithmetics. SUSv3 requires us to have at least signed long. + */ +typedef long arith_t; +#define ARITH_FORMAT_STR "%ld" +#define atoarith_t(arg) strtol(arg, NULL, 0) +#define strtoarith_t(nptr, endptr, base) strtol(nptr, endptr, base) + typedef void *pointer; #define STATIC static -#define MKINIT /* empty */ +#define MKINIT /* empty */ #include extern char nullstr[1]; /* null string */ - #ifdef DEBUG -#define TRACE(param) sh_trace param +#define TRACE(param) sh_trace param #else #define TRACE(param) #endif ==== //depot/projects/trustedbsd/sebsd/bin/test/Makefile#2 (text+ko) ==== @@ -1,8 +1,8 @@ # @(#)Makefile 8.1 (Berkeley) 5/31/93 -# $FreeBSD: src/bin/test/Makefile,v 1.9 2001/12/04 01:57:47 obrien Exp $ +# $FreeBSD: src/bin/test/Makefile,v 1.10 2003/09/07 12:52:17 ru Exp $ PROG= test LINKS= ${BINDIR}/test ${BINDIR}/[ -MLINKS= test.1 '[.1' +MLINKS= test.1 [.1 .include From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:17:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 15BF416A4C0; Wed, 22 Oct 2003 19:17:13 -0700 (PDT) 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 DD63716A4B3 for ; Wed, 22 Oct 2003 19:17:12 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 012CA43F75 for ; Wed, 22 Oct 2003 19:17:11 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2HAXJ050050 for ; Wed, 22 Oct 2003 19:17:10 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2H9Zf050047 for perforce@freebsd.org; Wed, 22 Oct 2003 19:17:09 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:17:09 -0700 (PDT) Message-Id: <200310230217.h9N2H9Zf050047@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 Subject: PERFORCE change 40233 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:17:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=40233 Change 40233 by rwatson@rwatson_paprika on 2003/10/22 19:16:17 Integrate trustedbsd_sebsd crypto tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. The crypto tree includes OpenSSH and OpenSSL updates with various security fixes, et al. This make break parts of the SEBSD build until the remainder of the integration is done. Affected files ... .. //depot/projects/trustedbsd/sebsd/crypto/openssh/FREEBSD-tricks#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/auth-chall.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/auth2-pam-freebsd.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/buffer.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/channels.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/deattack.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/misc.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/session.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/ssh-agent.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/ssh_config#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/ssh_config.5#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/sshd_config#5 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/sshd_config.5#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/version.h#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/CHANGES#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/Configure#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/FAQ#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/FREEBSD-Xlist#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/LICENSE#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/Makefile.org#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/Makefile.ssl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/NEWS#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/PROBLEMS#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/README#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/CA.pl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/Makefile.ssl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/apps.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/ca.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/crl.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/der_chop#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/engine.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/ocsp.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/openssl.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/pkcs8.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/s_apps.h#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/s_client.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/s_server.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/smime.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/apps/x509.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/bugs/SSLv3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/config#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/aes/aes.h#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/aes/aes_cbc.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/aes/aes_ctr.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/asn1/a_mbstr.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/asn1/a_strex.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/asn1/a_strnid.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/asn1/asn1.h#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/asn1/asn1_lib.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/asn1/tasn_dec.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/bio/b_print.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/bio/bf_buff.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/bio/bss_bio.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/bio/bss_file.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/bn/Makefile.ssl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/bn/bn.h#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/bn/bn_mul.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/bn/bntest.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/bn/exptest.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/des/cfb_enc.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/des/destest.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/dh/Makefile.ssl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/dh/dh_key.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/dh/dhtest.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/dsa/Makefile.ssl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/dsa/dsa_ossl.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/dsa/dsa_sign.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/dsa/dsa_vrf.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/dsa/dsatest.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/dso/dso_dlfcn.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/ec/ec_mult.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/engine/eng_fat.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/engine/engine.h#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/engine/hw_ubsec.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/err/err.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/err/err.h#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/evp/Makefile.ssl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/evp/bio_b64.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/evp/bio_enc.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/evp/c_all.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/evp/digest.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/evp/evp_acnf.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/md2/md2test.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/md5/Makefile.ssl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/md5/asm/md5-586.pl#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/md5/asm/md5-sparcv9.S#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/o_time.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/ocsp/ocsp_ht.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/opensslconf.h#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/opensslv.h#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/perlasm/x86ms.pl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/perlasm/x86nasm.pl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/perlasm/x86unix.pl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/pkcs12/p12_npas.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/pkcs7/pk7_doit.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/pkcs7/pk7_mime.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/pkcs7/pk7_smime.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/pkcs7/pkcs7.h#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/rand/rand_win.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/rsa/Makefile.ssl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/rsa/rsa.h#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/rsa/rsa_eay.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/rsa/rsa_lib.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/rsa/rsa_sign.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/rsa/rsa_test.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/threads/mttest.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/threads/solaris.sh#2 delete .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/x509/by_file.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/x509/x509_trs.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/x509/x509_vfy.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/x509/x509type.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/x509v3/v3_conf.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/x509v3/v3_cpols.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/x509v3/v3_lib.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/crypto/x509v3/v3_prn.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/demos/engines/zencod/hw_zencod.h#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/HOWTO/certificates.txt#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/HOWTO/keys.txt#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/apps/ca.pod#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/apps/ocsp.pod#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/apps/s_client.pod#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/apps/s_server.pod#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/crypto/BIO_f_base64.pod#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/crypto/BIO_f_cipher.pod#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/openssl-shared.txt#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/ssl/SSL_CTX_free.pod#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/ssl/SSL_CTX_sess_set_get_cb.pod#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/ssl/SSL_CTX_set_options.pod#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/ssl/SSL_CTX_set_verify.pod#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/ssl/SSL_CTX_use_certificate.pod#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/ssl/SSL_accept.pod#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/doc/ssl/SSL_connect.pod#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/e_os.h#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/openssl.spec#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/ssl/kssl.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/ssl/kssl.h#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/ssl/s3_clnt.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/ssl/s3_srvr.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/ssl/ssl_ciph.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/ssl/ssl_lib.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/ssl/ssl_rsa.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/ssl/ssl_sess.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/ssl/ssltest.c#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/test/Makefile.ssl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/test/evptests.txt#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/openssl/tools/c_rehash#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/util/extract-names.pl#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/util/libeay.num#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/util/mk1mf.pl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/util/mkdef.pl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/util/mkerr.pl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/util/pl/Mingw32.pl#4 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssl/util/pl/Mingw32f.pl#2 delete .. //depot/projects/trustedbsd/sebsd/crypto/openssl/util/point.sh#4 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/FREEBSD-tricks#4 (text+ko) ==== @@ -1,8 +1,8 @@ -# $FreeBSD: src/crypto/openssh/FREEBSD-tricks,v 1.3 2003/04/23 17:21:55 des Exp $ +# $FreeBSD: src/crypto/openssh/FREEBSD-tricks,v 1.4 2003/09/19 11:29:51 des Exp $ # Shell code to remove FreeBSD tags before merging grep -rl '\$Fre.BSD:' . >tags -while read f < tags ; do +cat tags | while read f ; do sed -i.orig -e '/\$Fre.BSD:/d' $f done @@ -11,7 +11,7 @@ xargs perl -n -i.orig -e 'print; s/\$(Id|OpenBSD): [^\$]*\$/\$FreeBSD\$/ && print' # Shell code to reexpand FreeBSD tags -while read f < tags ; do +cat tags | while read f ; do id=$(cvs diff $f | grep '\$Fre.BSD:' | sed 's/.*\(\$Fre.BSD:.*\$\).*/\1/') ; if [ -n "$id" ] ; then sed -i.orig -e "s@\\\$Fre.BSD\\\$@$id@" $f ; ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/auth-chall.c#4 (text+ko) ==== @@ -24,7 +24,7 @@ #include "includes.h" RCSID("$OpenBSD: auth-chall.c,v 1.8 2001/05/18 14:13:28 markus Exp $"); -RCSID("$FreeBSD: src/crypto/openssh/auth-chall.c,v 1.6 2003/03/31 13:45:36 des Exp $"); +RCSID("$FreeBSD: src/crypto/openssh/auth-chall.c,v 1.7 2003/09/24 18:24:27 des Exp $"); #include "auth.h" #include "log.h" @@ -93,7 +93,7 @@ xfree(info); } /* if we received more prompts, we're screwed */ - res = (numprompts != 0); + res = (res == 0 && numprompts == 0) ? 0 : -1; } device->free_ctx(authctxt->kbdintctxt); authctxt->kbdintctxt = NULL; ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/auth2-pam-freebsd.c#4 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include "includes.h" -RCSID("$FreeBSD: src/crypto/openssh/auth2-pam-freebsd.c,v 1.11 2003/03/31 13:48:18 des Exp $"); +RCSID("$FreeBSD: src/crypto/openssh/auth2-pam-freebsd.c,v 1.13 2003/09/24 19:11:52 des Exp $"); #ifdef USE_PAM #include @@ -134,8 +134,8 @@ *resp = xmalloc(n * sizeof **resp); buffer_init(&buffer); for (i = 0; i < n; ++i) { - resp[i]->resp_retcode = 0; - resp[i]->resp = NULL; + (*resp)[i].resp_retcode = 0; + (*resp)[i].resp = NULL; switch (msg[i]->msg_style) { case PAM_PROMPT_ECHO_OFF: buffer_put_cstring(&buffer, msg[i]->msg); @@ -143,7 +143,7 @@ ssh_msg_recv(ctxt->pam_csock, &buffer); if (buffer_get_char(&buffer) != PAM_AUTHTOK) goto fail; - resp[i]->resp = buffer_get_string(&buffer, NULL); + (*resp)[i].resp = buffer_get_string(&buffer, NULL); break; case PAM_PROMPT_ECHO_ON: buffer_put_cstring(&buffer, msg[i]->msg); @@ -151,7 +151,7 @@ ssh_msg_recv(ctxt->pam_csock, &buffer); if (buffer_get_char(&buffer) != PAM_AUTHTOK) goto fail; - resp[i]->resp = buffer_get_string(&buffer, NULL); + (*resp)[i].resp = buffer_get_string(&buffer, NULL); break; case PAM_ERROR_MSG: buffer_put_cstring(&buffer, msg[i]->msg); @@ -169,8 +169,6 @@ buffer_free(&buffer); return (PAM_SUCCESS); fail: - while (i) - xfree(resp[--i]); xfree(*resp); *resp = NULL; buffer_free(&buffer); @@ -550,20 +548,20 @@ for (i = 0; i < n; ++i) { switch (msg[i]->msg_style) { case PAM_PROMPT_ECHO_OFF: - resp[i]->resp = + (*resp)[i].resp = read_passphrase(msg[i]->msg, RP_ALLOW_STDIN); - resp[i]->resp_retcode = PAM_SUCCESS; + (*resp)[i].resp_retcode = PAM_SUCCESS; break; case PAM_PROMPT_ECHO_ON: fputs(msg[i]->msg, stderr); fgets(input, sizeof input, stdin); - resp[i]->resp = xstrdup(input); - resp[i]->resp_retcode = PAM_SUCCESS; + (*resp)[i].resp = xstrdup(input); + (*resp)[i].resp_retcode = PAM_SUCCESS; break; case PAM_ERROR_MSG: case PAM_TEXT_INFO: fputs(msg[i]->msg, stderr); - resp[i]->resp_retcode = PAM_SUCCESS; + (*resp)[i].resp_retcode = PAM_SUCCESS; break; default: goto fail; @@ -571,8 +569,6 @@ } return (PAM_SUCCESS); fail: - while (i) - xfree(resp[--i]); xfree(*resp); *resp = NULL; return (PAM_CONV_ERR); ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/buffer.c#2 (text+ko) ==== @@ -12,7 +12,7 @@ */ #include "includes.h" -RCSID("$OpenBSD: buffer.c,v 1.16 2002/06/26 08:54:18 markus Exp $"); +RCSID("$OpenBSD: buffer.c,v 1.17 2003/09/16 03:03:47 deraadt Exp $"); #include "xmalloc.h" #include "buffer.h" @@ -23,8 +23,11 @@ void buffer_init(Buffer *buffer) { - buffer->alloc = 4096; - buffer->buf = xmalloc(buffer->alloc); + const u_int len = 4096; + + buffer->alloc = 0; + buffer->buf = xmalloc(len); + buffer->alloc = len; buffer->offset = 0; buffer->end = 0; } @@ -34,8 +37,10 @@ void buffer_free(Buffer *buffer) { - memset(buffer->buf, 0, buffer->alloc); - xfree(buffer->buf); + if (buffer->alloc > 0) { + memset(buffer->buf, 0, buffer->alloc); + xfree(buffer->buf); + } } /* @@ -69,6 +74,7 @@ void * buffer_append_space(Buffer *buffer, u_int len) { + u_int newlen; void *p; if (len > 0x100000) @@ -98,11 +104,13 @@ goto restart; } /* Increase the size of the buffer and retry. */ - buffer->alloc += len + 32768; - if (buffer->alloc > 0xa00000) + + newlen = buffer->alloc + len + 32768; + if (newlen > 0xa00000) fatal("buffer_append_space: alloc %u not supported", - buffer->alloc); - buffer->buf = xrealloc(buffer->buf, buffer->alloc); + newlen); + buffer->buf = xrealloc(buffer->buf, newlen); + buffer->alloc = newlen; goto restart; /* NOTREACHED */ } ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/channels.c#4 (text+ko) ==== @@ -229,12 +229,13 @@ if (found == -1) { /* There are no free slots. Take last+1 slot and expand the array. */ found = channels_alloc; - channels_alloc += 10; if (channels_alloc > 10000) fatal("channel_new: internal error: channels_alloc %d " "too big.", channels_alloc); + channels = xrealloc(channels, + (channels_alloc + 10) * sizeof(Channel *)); + channels_alloc += 10; debug2("channel: expanding %d", channels_alloc); - channels = xrealloc(channels, channels_alloc * sizeof(Channel *)); for (i = found; i < channels_alloc; i++) channels[i] = NULL; } ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/deattack.c#2 (text+ko) ==== @@ -100,12 +100,12 @@ if (h == NULL) { debug("Installing crc compensation attack detector."); + h = (u_int16_t *) xmalloc(l * HASH_ENTRYSIZE); n = l; - h = (u_int16_t *) xmalloc(n * HASH_ENTRYSIZE); } else { if (l > n) { + h = (u_int16_t *) xrealloc(h, l * HASH_ENTRYSIZE); n = l; - h = (u_int16_t *) xrealloc(h, n * HASH_ENTRYSIZE); } } ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/misc.c#4 (text+ko) ==== @@ -308,18 +308,21 @@ { va_list ap; char buf[1024]; + int nalloc; va_start(ap, fmt); vsnprintf(buf, sizeof(buf), fmt, ap); va_end(ap); + nalloc = args->nalloc; if (args->list == NULL) { - args->nalloc = 32; + nalloc = 32; args->num = 0; - } else if (args->num+2 >= args->nalloc) - args->nalloc *= 2; + } else if (args->num+2 >= nalloc) + nalloc *= 2; - args->list = xrealloc(args->list, args->nalloc * sizeof(char *)); + args->list = xrealloc(args->list, nalloc * sizeof(char *)); + args->nalloc = nalloc; args->list[args->num++] = xstrdup(buf); args->list[args->num] = NULL; } ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/session.c#4 (text+ko) ==== @@ -34,7 +34,7 @@ #include "includes.h" RCSID("$OpenBSD: session.c,v 1.154 2003/03/05 22:33:43 markus Exp $"); -RCSID("$FreeBSD: src/crypto/openssh/session.c,v 1.40 2003/04/23 17:10:53 des Exp $"); +RCSID("$FreeBSD: src/crypto/openssh/session.c,v 1.41 2003/09/17 14:36:14 nectar Exp $"); #include "ssh.h" #include "ssh1.h" @@ -863,8 +863,9 @@ child_set_env(char ***envp, u_int *envsizep, const char *name, const char *value) { + char **env; + u_int envsize; u_int i, namelen; - char **env; /* * Find the slot where the value should be stored. If the variable @@ -881,12 +882,13 @@ xfree(env[i]); } else { /* New variable. Expand if necessary. */ - if (i >= (*envsizep) - 1) { - if (*envsizep >= 1000) - fatal("child_set_env: too many env vars," - " skipping: %.100s", name); - (*envsizep) += 50; - env = (*envp) = xrealloc(env, (*envsizep) * sizeof(char *)); + envsize = *envsizep; + if (i >= envsize - 1) { + if (envsize >= 1000) + fatal("child_set_env: too many env vars"); + envsize += 50; + env = (*envp) = xrealloc(env, envsize * sizeof(char *)); + *envsizep = envsize; } /* Need to set the NULL pointer at end of array beyond the new slot. */ env[i + 1] = NULL; ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/ssh-agent.c#4 (text+ko) ==== @@ -36,7 +36,7 @@ #include "includes.h" #include "openbsd-compat/sys-queue.h" RCSID("$OpenBSD: ssh-agent.c,v 1.108 2003/03/13 11:44:50 markus Exp $"); -RCSID("$FreeBSD: src/crypto/openssh/ssh-agent.c,v 1.18 2003/04/23 17:10:53 des Exp $"); +RCSID("$FreeBSD: src/crypto/openssh/ssh-agent.c,v 1.19 2003/09/17 14:36:14 nectar Exp $"); #include #include @@ -768,7 +768,7 @@ static void new_socket(sock_type type, int fd) { - u_int i, old_alloc; + u_int i, old_alloc, new_alloc; if (fcntl(fd, F_SETFL, O_NONBLOCK) < 0) error("fcntl O_NONBLOCK: %s", strerror(errno)); @@ -779,25 +779,26 @@ for (i = 0; i < sockets_alloc; i++) if (sockets[i].type == AUTH_UNUSED) { sockets[i].fd = fd; - sockets[i].type = type; buffer_init(&sockets[i].input); buffer_init(&sockets[i].output); buffer_init(&sockets[i].request); + sockets[i].type = type; return; } old_alloc = sockets_alloc; - sockets_alloc += 10; + new_alloc = sockets_alloc + 10; if (sockets) - sockets = xrealloc(sockets, sockets_alloc * sizeof(sockets[0])); + sockets = xrealloc(sockets, new_alloc * sizeof(sockets[0])); else - sockets = xmalloc(sockets_alloc * sizeof(sockets[0])); - for (i = old_alloc; i < sockets_alloc; i++) + sockets = xmalloc(new_alloc * sizeof(sockets[0])); + for (i = old_alloc; i < new_alloc; i++) sockets[i].type = AUTH_UNUSED; - sockets[old_alloc].type = type; + sockets_alloc = new_alloc; sockets[old_alloc].fd = fd; buffer_init(&sockets[old_alloc].input); buffer_init(&sockets[old_alloc].output); buffer_init(&sockets[old_alloc].request); + sockets[old_alloc].type = type; } static int ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/ssh_config#4 (text+ko) ==== @@ -1,5 +1,5 @@ # $OpenBSD: ssh_config,v 1.16 2002/07/03 14:21:05 markus Exp $ -# $FreeBSD: src/crypto/openssh/ssh_config,v 1.21 2003/04/23 17:10:53 des Exp $ +# $FreeBSD: src/crypto/openssh/ssh_config,v 1.22 2003/09/24 19:20:23 des Exp $ # This is the ssh client system-wide configuration file. See # ssh_config(5) for more information. This file provides defaults for @@ -35,4 +35,4 @@ # Cipher 3des # Ciphers aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc # EscapeChar ~ -# VersionAddendum FreeBSD-20030423 +# VersionAddendum FreeBSD-20030924 ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/ssh_config.5#4 (text+ko) ==== @@ -35,7 +35,7 @@ .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" .\" $OpenBSD: ssh_config.5,v 1.7 2003/03/28 10:11:43 jmc Exp $ -.\" $FreeBSD: src/crypto/openssh/ssh_config.5,v 1.9 2003/04/23 17:10:53 des Exp $ +.\" $FreeBSD: src/crypto/openssh/ssh_config.5,v 1.10 2003/09/24 19:20:23 des Exp $ .Dd September 25, 1999 .Dt SSH_CONFIG 5 .Os @@ -623,7 +623,7 @@ Specifies a string to append to the regular version string to identify OS- or site-specific modifications. The default is -.Dq FreeBSD-20030423 . +.Dq FreeBSD-20030924 . .It Cm XAuthLocation Specifies the full pathname of the .Xr xauth 1 ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/sshd_config#5 (text+ko) ==== @@ -1,5 +1,5 @@ # $OpenBSD: sshd_config,v 1.59 2002/09/25 11:17:16 markus Exp $ -# $FreeBSD: src/crypto/openssh/sshd_config,v 1.32 2003/04/23 17:10:53 des Exp $ +# $FreeBSD: src/crypto/openssh/sshd_config,v 1.33 2003/09/24 19:20:23 des Exp $ # This is the sshd server system-wide configuration file. See # sshd_config(5) for more information. @@ -14,7 +14,7 @@ # Note that some of FreeBSD's defaults differ from OpenBSD's, and # FreeBSD has a few additional options. -#VersionAddendum FreeBSD-20030423 +#VersionAddendum FreeBSD-20030924 #Port 22 #Protocol 2,1 ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/sshd_config.5#4 (text+ko) ==== @@ -35,7 +35,7 @@ .\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. .\" .\" $OpenBSD: sshd_config.5,v 1.15 2003/03/28 10:11:43 jmc Exp $ -.\" $FreeBSD: src/crypto/openssh/sshd_config.5,v 1.11 2003/04/23 17:10:53 des Exp $ +.\" $FreeBSD: src/crypto/openssh/sshd_config.5,v 1.12 2003/09/24 19:20:23 des Exp $ .Dd September 25, 1999 .Dt SSHD_CONFIG 5 .Os @@ -650,7 +650,7 @@ Specifies a string to append to the regular version string to identify OS- or site-specific modifications. The default is -.Dq FreeBSD-20030423 . +.Dq FreeBSD-20030924 . .It Cm X11DisplayOffset Specifies the first display number available for .Nm sshd Ns 's ==== //depot/projects/trustedbsd/sebsd/crypto/openssh/version.h#4 (text+ko) ==== @@ -1,11 +1,11 @@ /* $OpenBSD: version.h,v 1.37 2003/04/01 10:56:46 markus Exp $ */ -/* $FreeBSD: src/crypto/openssh/version.h,v 1.20 2003/04/23 17:10:53 des Exp $ */ +/* $FreeBSD: src/crypto/openssh/version.h,v 1.23 2003/09/24 19:20:23 des Exp $ */ #ifndef SSH_VERSION #define SSH_VERSION (ssh_version_get()) #define SSH_VERSION_BASE "OpenSSH_3.6.1p1" -#define SSH_VERSION_ADDENDUM "FreeBSD-20030423" +#define SSH_VERSION_ADDENDUM "FreeBSD-20030924" const char *ssh_version_get(void); void ssh_version_set_addendum(const char *add); ==== //depot/projects/trustedbsd/sebsd/crypto/openssl/CHANGES#4 (text+ko) ==== @@ -2,6 +2,92 @@ OpenSSL CHANGES _______________ + Changes between 0.9.7b and 0.9.7c [30 Sep 2003] + + *) Fix various bugs revealed by running the NISCC test suite: + + Stop out of bounds reads in the ASN1 code when presented with + invalid tags (CAN-2003-0543 and CAN-2003-0544). + + Free up ASN1_TYPE correctly if ANY type is invalid (CAN-2003-0545). + + If verify callback ignores invalid public key errors don't try to check + certificate signature with the NULL public key. + + [Steve Henson] + + *) New -ignore_err option in ocsp application to stop the server + exiting on the first error in a request. + [Steve Henson] + + *) In ssl3_accept() (ssl/s3_srvr.c) only accept a client certificate + if the server requested one: as stated in TLS 1.0 and SSL 3.0 + specifications. + [Steve Henson] + + *) In ssl3_get_client_hello() (ssl/s3_srvr.c), tolerate additional + extra data after the compression methods not only for TLS 1.0 + but also for SSL 3.0 (as required by the specification). + [Bodo Moeller; problem pointed out by Matthias Loepfe] + + *) Change X509_certificate_type() to mark the key as exported/exportable + when it's 512 *bits* long, not 512 bytes. + [Richard Levitte] + + *) Change AES_cbc_encrypt() so it outputs exact multiple of + blocks during encryption. + [Richard Levitte] + + *) Various fixes to base64 BIO and non blocking I/O. On write + flushes were not handled properly if the BIO retried. On read + data was not being buffered properly and had various logic bugs. + This also affects blocking I/O when the data being decoded is a + certain size. + [Steve Henson] + + *) Various S/MIME bugfixes and compatibility changes: + output correct application/pkcs7 MIME type if + PKCS7_NOOLDMIMETYPE is set. Tolerate some broken signatures. + Output CR+LF for EOL if PKCS7_CRLFEOL is set (this makes opening + of files as .eml work). Correctly handle very long lines in MIME + parser. + [Steve Henson] + + Changes between 0.9.7a and 0.9.7b [10 Apr 2003] + + *) Countermeasure against the Klima-Pokorny-Rosa extension of + Bleichbacher's attack on PKCS #1 v1.5 padding: treat + a protocol version number mismatch like a decryption error + in ssl3_get_client_key_exchange (ssl/s3_srvr.c). + [Bodo Moeller] + + *) Turn on RSA blinding by default in the default implementation + to avoid a timing attack. Applications that don't want it can call + RSA_blinding_off() or use the new flag RSA_FLAG_NO_BLINDING. + They would be ill-advised to do so in most cases. + [Ben Laurie, Steve Henson, Geoff Thorpe, Bodo Moeller] + + *) Change RSA blinding code so that it works when the PRNG is not + seeded (in this case, the secret RSA exponent is abused as + an unpredictable seed -- if it is not unpredictable, there + is no point in blinding anyway). Make RSA blinding thread-safe + by remembering the creator's thread ID in rsa->blinding and + having all other threads use local one-time blinding factors + (this requires more computation than sharing rsa->blinding, but + avoids excessive locking; and if an RSA object is not shared + between threads, blinding will still be very fast). + [Bodo Moeller] + + *) Fixed a typo bug that would cause ENGINE_set_default() to set an + ENGINE as defaults for all supported algorithms irrespective of + the 'flags' parameter. 'flags' is now honoured, so applications + should make sure they are passing it correctly. + [Geoff Thorpe] + + *) Target "mingw" now allows native Windows code to be generated in + the Cygwin environment as well as with the MinGW compiler. + [Ulf Moeller] + Changes between 0.9.7 and 0.9.7a [19 Feb 2003] *) In ssl3_get_record (ssl/s3_pkt.c), minimize information leaked @@ -85,6 +171,9 @@ Changes between 0.9.6h and 0.9.7 [31 Dec 2002] + [NB: OpenSSL 0.9.6i and later 0.9.6 patch levels were released after + OpenSSL 0.9.7.] + *) Fix session ID handling in SSLv2 client code: the SERVER FINISHED code (06) was taken as the first octet of the session ID and the last octet was ignored consequently. As a result SSLv2 client side session @@ -1903,6 +1992,57 @@ *) Clean old EAY MD5 hack from e_os.h. [Richard Levitte] + Changes between 0.9.6j and 0.9.6k [30 Sep 2003] + + *) Fix various bugs revealed by running the NISCC test suite: + + Stop out of bounds reads in the ASN1 code when presented with + invalid tags (CAN-2003-0543 and CAN-2003-0544). + + If verify callback ignores invalid public key errors don't try to check + certificate signature with the NULL public key. + + [Steve Henson] + + *) In ssl3_accept() (ssl/s3_srvr.c) only accept a client certificate + if the server requested one: as stated in TLS 1.0 and SSL 3.0 + specifications. + [Steve Henson] + + *) In ssl3_get_client_hello() (ssl/s3_srvr.c), tolerate additional + extra data after the compression methods not only for TLS 1.0 + but also for SSL 3.0 (as required by the specification). + [Bodo Moeller; problem pointed out by Matthias Loepfe] + + *) Change X509_certificate_type() to mark the key as exported/exportable + when it's 512 *bits* long, not 512 bytes. + [Richard Levitte] + + Changes between 0.9.6i and 0.9.6j [10 Apr 2003] + + *) Countermeasure against the Klima-Pokorny-Rosa extension of + Bleichbacher's attack on PKCS #1 v1.5 padding: treat + a protocol version number mismatch like a decryption error + in ssl3_get_client_key_exchange (ssl/s3_srvr.c). + [Bodo Moeller] + + *) Turn on RSA blinding by default in the default implementation + to avoid a timing attack. Applications that don't want it can call + RSA_blinding_off() or use the new flag RSA_FLAG_NO_BLINDING. + They would be ill-advised to do so in most cases. + [Ben Laurie, Steve Henson, Geoff Thorpe, Bodo Moeller] + + *) Change RSA blinding code so that it works when the PRNG is not + seeded (in this case, the secret RSA exponent is abused as + an unpredictable seed -- if it is not unpredictable, there + is no point in blinding anyway). Make RSA blinding thread-safe + by remembering the creator's thread ID in rsa->blinding and + having all other threads use local one-time blinding factors + (this requires more computation than sharing rsa->blinding, but + avoids excessive locking; and if an RSA object is not shared + between threads, blinding will still be very fast). + [Bodo Moeller] + Changes between 0.9.6h and 0.9.6i [19 Feb 2003] *) In ssl3_get_record (ssl/s3_pkt.c), minimize information leaked ==== //depot/projects/trustedbsd/sebsd/crypto/openssl/Configure#4 (text+ko) ==== @@ -219,7 +219,7 @@ # './Configure irix-[g]cc' manually. # -mips4 flag is added by ./config when appropriate. "irix-mips3-gcc","gcc:-mabi=n32 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::MD2_CHAR RC4_INDEX RC4_CHAR RC4_CHUNK_LL DES_UNROLL DES_RISC2 DES_PTR BF_PTR SIXTY_FOUR_BIT:${mips3_irix_asm}:dlfcn:irix-shared:::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", -"irix-mips3-cc", "cc:-n32 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::DES_PTR RC4_CHAR RC4_CHUNK_LL DES_RISC2 DES_UNROLL BF_PTR SIXTY_FOUR_BIT:${mips3_irix_asm}:dlfcn:irix-shared:::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"irix-mips3-cc", "cc:-n32 -mips3 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::DES_PTR RC4_CHAR RC4_CHUNK_LL DES_RISC2 DES_UNROLL BF_PTR SIXTY_FOUR_BIT:${mips3_irix_asm}:dlfcn:irix-shared:::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", # N64 ABI builds. "irix64-mips4-gcc","gcc:-mabi=64 -mips4 -mmips-as -O3 -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:${mips3_irix_asm}:dlfcn:irix-shared:::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", "irix64-mips4-cc", "cc:-64 -mips4 -O2 -use_readonly_const -DTERMIOS -DB_ENDIAN -DBN_DIV3W::-D_SGI_MP_SOURCE:::RC4_CHAR RC4_CHUNK DES_RISC2 DES_UNROLL SIXTY_FOUR_BIT_LONG:${mips3_irix_asm}:dlfcn:irix-shared:::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", @@ -390,6 +390,7 @@ "linux-s390", "gcc:-DB_ENDIAN -DTERMIO -DNO_ASM -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", "linux-s390x", "gcc:-DB_ENDIAN -DTERMIO -DNO_ASM -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG::::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", "linux-ia64", "gcc:-DL_ENDIAN -DTERMIO -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK RC4_CHAR:asm/ia64.o:::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", +"linux-ia64-ecc", "ecc:-DL_ENDIAN -DTERMIO -O2 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK RC4_CHAR:asm/ia64.o:::::::::dlfcn:linux-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", "linux-x86_64", "gcc:-m64 -DL_ENDIAN -DTERMIO -O3 -Wall -DMD32_REG_T=int::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK RC4_CHAR BF_PTR2 DES_INT DES_UNROLL:asm/x86_64-gcc.o:::::::::dlfcn:linux-shared:-fPIC:-m64:.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", "NetBSD-sparc", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -mv8 -Wall -DB_ENDIAN::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", "NetBSD-m68", "gcc:-DTERMIOS -O3 -fomit-frame-pointer -Wall -DB_ENDIAN::(unknown):::BN_LLONG MD2_CHAR RC4_INDEX DES_UNROLL::::::::::dlfcn:bsd-gcc-shared:-fPIC::.so.\$(SHLIB_MAJOR).\$(SHLIB_MINOR)", @@ -506,10 +507,8 @@ "BC-32","bcc32::::WIN32::BN_LLONG DES_PTR RC4_INDEX EXPORT_VAR_AS_FN::::::::::win32", "BC-16","bcc:::(unknown):WIN16::BN_LLONG DES_PTR RC4_INDEX SIXTEEN_BIT:::", -# Mingw32 -# (Note: the real CFLAGS for Windows builds are defined by util/mk1mf.pl -# and its library files in util/pl/*) -"Mingw32", "gcc:-DL_ENDIAN -fomit-frame-pointer -O3 -m486 -Wall:::::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::win32", +# MinGW +"mingw", "gcc:-DL_ENDIAN -fomit-frame-pointer -O3 -march=i486 -mno-cygwin -Wall:::MINGW32:-mno-cygwin -lwsock32 -lgdi32:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_out_asm}:win32::::.dll", # UWIN "UWIN", "cc:-DTERMIOS -DL_ENDIAN -O -Wall:::UWIN::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}::::::::::win32", @@ -561,6 +560,8 @@ "vxworks-ppc405","ccppc:-g -msoft-float -mlongcall -DCPU=PPC405 -I\$(WIND_BASE)/target/h:::VXWORKS:-r:::::", "vxworks-ppc750","ccppc:-ansi -nostdinc -DPPC750 -D_REENTRANT -fvolatile -fno-builtin -fno-for-scope -fsigned-char -Wall -msoft-float -mlongcall -DCPU=PPC604 -I\$(WIND_BASE)/target/h \$(DEBUG_FLAG):::VXWORKS:-r:::::", "vxworks-ppc750-debug","ccppc:-ansi -nostdinc -DPPC750 -D_REENTRANT -fvolatile -fno-builtin -fno-for-scope -fsigned-char -Wall -msoft-float -mlongcall -DCPU=PPC604 -I\$(WIND_BASE)/target/h -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DBN_CTX_DEBUG -DCRYPTO_MDEBUG -DPEDANTIC -DDEBUG_SAFESTACK -DDEBUG -g:::VXWORKS:-r:::::", +"vxworks-ppc860","ccppc:-nostdinc -msoft-float -DCPU=PPC860 -DNO_STRINGS_H -I\$(WIND_BASE)/target/h:::VXWORKS:-r:::::", +"vxworks-mipsle","ccmips:-B\$(WIND_BASE)/host/\$(WIND_HOST_TYPE)/lib/gcc-lib/ -DL_ENDIAN -EL -Wl,-EL -mips2 -mno-branch-likely -G 0 -fno-builtin -msoft-float -DCPU=MIPS32 -DMIPSEL -DNO_STRINGS_H -I\$(WIND_BASE)/target/h:::VXWORKS:-r::::::::::::::::ranlibmips:", ##### Compaq Non-Stop Kernel (Tandem) "tandem-c89","c89:-Ww -D__TANDEM -D_XOPEN_SOURCE -D_XOPEN_SOURCE_EXTENDED=1 -D_TANDEM_SOURCE -DB_ENDIAN::(unknown):::THIRTY_TWO_BIT:::", ==== //depot/projects/trustedbsd/sebsd/crypto/openssl/FAQ#4 (text+ko) ==== @@ -68,7 +68,7 @@ * Which is the current version of OpenSSL? The current version is available from . -OpenSSL 0.9.7a was released on February 19, 2003. +OpenSSL 0.9.7c was released on September 30, 2003. In addition to the current stable release, you can also access daily snapshots of the OpenSSL development version at allobjs ; \ OBJS= ; export OBJS ; \ for obj in `ar t lib$$i.a` ; do \ - OBJS="$${OBJS} `grep $$obj allobjs`" ; \ + OBJS="$${OBJS} `grep /$$obj allobjs`" ; \ done ; \ - set -x; ${CC} -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \ + set -x; ${CC} ${SHARED_LDFLAGS} \ + -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \ -h lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \ $${OBJS} $$libs ${EX_LIBS} ) || exit 1; \ libs="-l$$i $$libs"; \ @@ -429,13 +431,16 @@ libs="$(LIBKRB5) $$libs"; \ fi; \ ( PATH=/usr/ccs/bin:$$PATH ; export PATH; \ + SHARE_FLAG='-G'; \ + (${CC} -v 2>&1 | grep gcc) > /dev/null && SHARE_FLAG='-shared'; \ find . -name "*.o" -print > allobjs ; \ OBJS= ; export OBJS ; \ for obj in `ar t lib$$i.a` ; do \ - OBJS="$${OBJS} `grep $$obj allobjs`" ; \ + OBJS="$${OBJS} `grep /$$obj allobjs`" ; \ done ; \ - set -x; ${CC} ${SHARED_LDFLAGS} \ - -G -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \ + set -x; LD_LIBRARY_PATH=.:$$LD_LIBRARY_PATH \ + ${CC} ${SHARED_LDFLAGS} \ + $${SHARE_FLAG} -o lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \ -h lib$$i.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \ $${OBJS} $$libs ${EX_LIBS} ) || exit 1; \ libs="-l$$i $$libs"; \ @@ -589,10 +594,10 @@ @false libclean: - rm -f *.a */lib */*/lib + rm -f *.map *.so *.so.* engines/*.so *.a */lib */*/lib -clean: - rm -f shlib/*.o *.o core a.out fluff *.map rehash.time testlog make.log cctest cctest.c +clean: libclean + rm -f shlib/*.o *.o core a.out fluff rehash.time testlog make.log cctest cctest.c @for i in $(DIRS) ;\ do \ if [ -d "$$i" ]; then \ @@ -602,7 +607,7 @@ fi; \ done; rm -f openssl.pc - rm -f *.a *.o speed.* *.map *.so .pure core + rm -f speed.* .pure rm -f $(TARFILE) @for i in $(ONEDIRS) ;\ do \ @@ -652,7 +657,10 @@ rehash.time: certs @(OPENSSL="`pwd`/apps/openssl"; OPENSSL_DEBUG_MEMORY=on; \ export OPENSSL OPENSSL_DEBUG_MEMORY; \ - LD_LIBRARY_PATH="`pwd`"; DYLD_LIBRARY_PATH="`pwd`"; SHLIB_PATH="`pwd`"; LIBPATH="`pwd`"; \ + LD_LIBRARY_PATH="`pwd`:$$LD_LIBRARY_PATH"; \ + DYLD_LIBRARY_PATH="`pwd`:$$DYLD_LIBRARY_PATH"; \ + SHLIB_PATH="`pwd`:$$SHLIB_PATH"; \ + LIBPATH="`pwd`:$$LIBPATH"; \ if [ "$(PLATFORM)" = "Cygwin" ]; then PATH="`pwd`:$$PATH"; fi; \ export LD_LIBRARY_PATH DYLD_LIBRARY_PATH SHLIB_PATH LIBPATH PATH; \ $(PERL) tools/c_rehash certs) @@ -663,10 +671,13 @@ tests: rehash @(cd test && echo "testing..." && \ $(MAKE) CC='${CC}' PLATFORM='${PLATFORM}' CFLAG='${CFLAG}' SDIRS='$(SDIRS)' INSTALLTOP='${INSTALLTOP}' PEX_LIBS='${PEX_LIBS}' EX_LIBS='${EX_LIBS}' BN_ASM='${BN_ASM}' DES_ENC='${DES_ENC}' BF_ENC='${BF_ENC}' CAST_ENC='${CAST_ENC}' RC4_ENC='${RC4_ENC}' RC5_ENC='${RC5_ENC}' SHA1_ASM_OBJ='${SHA1_ASM_OBJ}' MD5_ASM_OBJ='${MD5_ASM_OBJ}' RMD160_ASM_OBJ='${RMD160_ASM_OBJ}' AR='${AR}' PROCESSOR='${PROCESSOR}' PERL='${PERL}' RANLIB='${RANLIB}' TESTS='${TESTS}' KRB5_INCLUDES='${KRB5_INCLUDES}' LIBKRB5='${LIBKRB5}' EXE_EXT='${EXE_EXT}' SHARED_LIBS='${SHARED_LIBS}' SHLIB_EXT='${SHLIB_EXT}' SHLIB_TARGET='${SHLIB_TARGET}' TESTS='${TESTS}' OPENSSL_DEBUG_MEMORY=on tests ); - @LD_LIBRARY_PATH="`pwd`"; DYLD_LIBRARY_PATH="`pwd`"; SHLIB_PATH="`pwd`"; LIBPATH="`pwd`"; \ - if [ "$(PLATFORM)" = "Cygwin" ]; then PATH="`pwd`:$$PATH"; fi; \ - export LD_LIBRARY_PATH DYLD_LIBRARY_PATH SHLIB_PATH LIBPATH PATH; \ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:19:15 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1787C16A4C0; Wed, 22 Oct 2003 19:19:15 -0700 (PDT) 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 E627816A4B3 for ; Wed, 22 Oct 2003 19:19:14 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4ABFD43F75 for ; Wed, 22 Oct 2003 19:19:14 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2JEXJ050921 for ; Wed, 22 Oct 2003 19:19:14 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2JDSR050916 for perforce@freebsd.org; Wed, 22 Oct 2003 19:19:13 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:19:13 -0700 (PDT) Message-Id: <200310230219.h9N2JDSR050916@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 Subject: PERFORCE change 40234 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:19:15 -0000 http://perforce.freebsd.org/chv.cgi?CH=40234 Change 40234 by rwatson@rwatson_paprika on 2003/10/22 19:18:18 Integrate trustedbsd_sebsd secure tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. This includes the other half of the crypto update: build changes for OpenSSH and OpenSSL upgrades. Affected files ... .. //depot/projects/trustedbsd/sebsd/secure/lib/libcrypto/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/secure/libexec/sftp-server/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/secure/usr.bin/scp/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/secure/usr.bin/sftp/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/secure/usr.bin/ssh-add/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/secure/usr.bin/ssh-agent/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/secure/usr.bin/ssh-keygen/Makefile#2 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/secure/lib/libcrypto/Makefile#4 (text+ko) ==== @@ -1,6 +1,7 @@ -# $FreeBSD: src/secure/lib/libcrypto/Makefile,v 1.64 2003/06/01 23:39:16 obrien Exp $ +# $FreeBSD: src/secure/lib/libcrypto/Makefile,v 1.65 2003/08/17 08:28:46 gordon Exp $ LIB= crypto +SHLIBDIR?= /lib SHLIB_MAJOR= 3 NOLINT= true ==== //depot/projects/trustedbsd/sebsd/secure/libexec/sftp-server/Makefile#4 (text+ko) ==== @@ -1,12 +1,12 @@ -# $FreeBSD: src/secure/libexec/sftp-server/Makefile,v 1.7 2003/04/23 17:25:47 des Exp $ +# $FreeBSD: src/secure/libexec/sftp-server/Makefile,v 1.8 2003/08/19 07:45:02 gordon Exp $ PROG= sftp-server SRCS= sftp-common.c sftp-server.c MAN= sftp-server.8 CFLAGS+=-I${SSHDIR} -DPADD+= ${LIBSSH} ${LIBCRYPTO} -LDADD+= -lssh -lcrypto +DPADD+= ${LIBSSH} ${LIBCRYPTO} ${LIBZ} +LDADD+= -lssh -lcrypto -lz .include ==== //depot/projects/trustedbsd/sebsd/secure/usr.bin/scp/Makefile#2 (text+ko) ==== @@ -1,10 +1,10 @@ -# $FreeBSD: src/secure/usr.bin/scp/Makefile,v 1.10 2002/06/25 19:10:08 des Exp $ +# $FreeBSD: src/secure/usr.bin/scp/Makefile,v 1.11 2003/08/19 07:45:03 gordon Exp $ PROG= scp CFLAGS+=-I${SSHDIR} -DPADD= ${LIBSSH} -LDADD= -lssh +DPADD= ${LIBSSH} ${LIBCRYPTO} ${LIBZ} +LDADD= -lssh -lcrypto -lz .include ==== //depot/projects/trustedbsd/sebsd/secure/usr.bin/sftp/Makefile#2 (text+ko) ==== @@ -1,11 +1,11 @@ -# $FreeBSD: src/secure/usr.bin/sftp/Makefile,v 1.6 2002/06/25 19:10:08 des Exp $ +# $FreeBSD: src/secure/usr.bin/sftp/Makefile,v 1.7 2003/08/19 07:45:03 gordon Exp $ PROG= sftp SRCS= sftp.c sftp-client.c sftp-int.c sftp-common.c sftp-glob.c CFLAGS+=-I${SSHDIR} -DPADD= ${LIBSSH} ${LIBCRYPTO} -LDADD= -lssh -lcrypto +DPADD= ${LIBSSH} ${LIBCRYPTO} ${LIBZ} +LDADD= -lssh -lcrypto -lz .include ==== //depot/projects/trustedbsd/sebsd/secure/usr.bin/ssh-add/Makefile#2 (text+ko) ==== @@ -1,10 +1,10 @@ -# $FreeBSD: src/secure/usr.bin/ssh-add/Makefile,v 1.10 2002/06/25 19:10:08 des Exp $ +# $FreeBSD: src/secure/usr.bin/ssh-add/Makefile,v 1.11 2003/08/19 07:45:03 gordon Exp $ PROG= ssh-add CFLAGS+=-I${SSHDIR} -DPADD= ${LIBSSH} ${LIBCRYPTO} -LDADD= -lssh -lcrypto +DPADD= ${LIBSSH} ${LIBCRYPTO} ${LIBZ} +LDADD= -lssh -lcrypto -lz .include ==== //depot/projects/trustedbsd/sebsd/secure/usr.bin/ssh-agent/Makefile#2 (text+ko) ==== @@ -1,10 +1,10 @@ -# $FreeBSD: src/secure/usr.bin/ssh-agent/Makefile,v 1.10 2002/06/25 19:10:08 des Exp $ +# $FreeBSD: src/secure/usr.bin/ssh-agent/Makefile,v 1.11 2003/08/19 07:45:03 gordon Exp $ PROG= ssh-agent CFLAGS+=-I${SSHDIR} -DPADD= ${LIBSSH} ${LIBCRYPTO} -LDADD= -lssh -lcrypto +DPADD= ${LIBSSH} ${LIBCRYPTO} ${LIBZ} +LDADD= -lssh -lcrypto -lz .include ==== //depot/projects/trustedbsd/sebsd/secure/usr.bin/ssh-keygen/Makefile#2 (text+ko) ==== @@ -1,10 +1,10 @@ -# $FreeBSD: src/secure/usr.bin/ssh-keygen/Makefile,v 1.11 2002/06/25 19:10:08 des Exp $ +# $FreeBSD: src/secure/usr.bin/ssh-keygen/Makefile,v 1.12 2003/08/19 07:45:03 gordon Exp $ PROG= ssh-keygen CFLAGS+=-I${SSHDIR} -DPADD= ${LIBSSH} ${LIBCRYPTO} -LDADD= -lssh -lcrypto +DPADD= ${LIBSSH} ${LIBCRYPTO} ${LIBZ} +LDADD= -lssh -lcrypto -lz .include From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:20:17 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7369916A4C0; Wed, 22 Oct 2003 19:20:17 -0700 (PDT) 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 4C24916A4B3 for ; Wed, 22 Oct 2003 19:20:17 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A263343FB1 for ; Wed, 22 Oct 2003 19:20:16 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2KGXJ051373 for ; Wed, 22 Oct 2003 19:20:16 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2KFPB051370 for perforce@freebsd.org; Wed, 22 Oct 2003 19:20:15 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:20:15 -0700 (PDT) Message-Id: <200310230220.h9N2KFPB051370@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 Subject: PERFORCE change 40235 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:20:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=40235 Change 40235 by rwatson@rwatson_paprika on 2003/10/22 19:19:20 Integrate trustedbsd_sebsd games tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. Minor quote changes :-). Affected files ... .. //depot/projects/trustedbsd/sebsd/games/fortune/datfiles/fortunes-o.real#4 integrate .. //depot/projects/trustedbsd/sebsd/games/fortune/datfiles/fortunes2#4 integrate .. //depot/projects/trustedbsd/sebsd/games/fortune/datfiles/startrek#4 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/games/fortune/datfiles/fortunes-o.real#4 (text+ko) ==== @@ -1,4 +1,4 @@ -%% $FreeBSD: src/games/fortune/datfiles/fortunes-o.real,v 1.16 2003/03/19 18:14:47 eivind Exp $ +%% $FreeBSD: src/games/fortune/datfiles/fortunes-o.real,v 1.17 2003/09/13 15:46:35 eivind Exp $ My Favorite Drugs [Sung to My Favorite Things] Reefers and roach clips and papers and rollers Cocaine and procaine for twenty year molars @@ -770,8 +770,8 @@ Haggis is a kind of stuff black pudding eaten by the Scots and considered by them to be not only a delicacy but fit for human consumption. The minced heart, liver and lungs of a sheep, calf or -other animal's inner organs are mixed with oatmeal, sealed and boiled -in maw in the sheep's intestinal stomach-bag and ... Excuse me a minute.... +other animal are mixed with oatmeal, sealed and boiled in maw in the sheep's +intestinal stomach-bag and ... Excuse me a minute.... % Hardly a pure science, history is closer to animal husbandry than it is to mathematics, in that it involves selective breeding. The principal @@ -1350,9 +1350,6 @@ do with the other. -- Jules Feiffer % -Republicans consume three-fourths of the rutabaga produced in this -country. The remainder is thrown out. -% Republicans raise dahlias, Dalmatians and eyebrows. Democrats raise Airedales, kids and taxes. @@ -1663,7 +1660,7 @@ the Catholic Church, and the National Rifle Association % -Sure eating yogurt will improve your sex life. People know that if +Sure eating yoghurt will improve your sex life. People know that if you'll eat that stuff, you'll eat anything. % Sure, Reagan has promised to take senility tests. But what if he ==== //depot/projects/trustedbsd/sebsd/games/fortune/datfiles/fortunes2#4 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/fortunes2,v 1.57 2003/03/10 19:58:37 fanf Exp $ +$FreeBSD: src/games/fortune/datfiles/fortunes2,v 1.58 2003/08/31 23:05:39 dougb Exp $ % ======================================================================= || || @@ -52105,7 +52105,7 @@ "But what kind of chauffeur was it?" Having been told by his aides not that he had been shot but that he had been struck by a taxi, the President spent the last conscious moments of his life wondering how - how an automobile got into the charity book sale at the Maison + an automobile got into the charity book sale at the Maison Rothschild, where his assassination occurred. % When properly administered, vacations do not diminish productivity: for @@ -52113,7 +52113,7 @@ is away and you get twice as much done. -- Daniel B. Luten % -When smashing monuments, save the pedstals -- they always come in handy. +When smashing monuments, save the pedestals -- they always come in handy. -- Stanislaw J. Lem, "Unkempt Thoughts" % When some people decide it's time for everyone to make ==== //depot/projects/trustedbsd/sebsd/games/fortune/datfiles/startrek#4 (text+ko) ==== @@ -1,4 +1,4 @@ -%% $FreeBSD: src/games/fortune/datfiles/startrek,v 1.4 2003/07/13 03:49:43 kris Exp $ +%% $FreeBSD: src/games/fortune/datfiles/startrek,v 1.5 2003/08/25 20:08:16 ceri Exp $ A father doesn't destroy his children. -- Lt. Carolyn Palamas, "Who Mourns for Adonais?", stardate 3468.1. @@ -490,7 +490,7 @@ deeply -- life in every form from fetus to developed being. -- Hodin of Gideon, "The Mark of Gideon", stardate 5423.4 % -... The prejudices people feel about each other disappear when then get +... The prejudices people feel about each other disappear when they get to know each other. -- Kirk, "Elaan of Troyius", stardate 4372.5 % From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:22:29 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D874F16A4C0; Wed, 22 Oct 2003 19:22:28 -0700 (PDT) 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 90FB216A4B3 for ; Wed, 22 Oct 2003 19:22:28 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3F7D143F75 for ; Wed, 22 Oct 2003 19:22:26 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2MQXJ052442 for ; Wed, 22 Oct 2003 19:22:26 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2MJdb052292 for perforce@freebsd.org; Wed, 22 Oct 2003 19:22:19 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:22:19 -0700 (PDT) Message-Id: <200310230222.h9N2MJdb052292@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 Subject: PERFORCE change 40236 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:22:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=40236 Change 40236 by rwatson@rwatson_paprika on 2003/10/22 19:21:26 Integrate trustedbsd_sebsd contrib tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. In this submit: amd upgrade. gcc upgrade. sort upgrade. groff upgrade. isc-dhcp upgrade. readline upgrade. libstdc++ upgrade. sendmail upgrades. Affected files ... .. //depot/projects/trustedbsd/sebsd/contrib/amd/AUTHORS#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/BUGS#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/COPYING#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/FREEBSD-upgrade#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/INSTALL#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/MIRRORS#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/NEWS#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/README#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/README.ldap#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/am_ops.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amd.8#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amd.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_auto.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_direct.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_error.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_host.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_inherit.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_link.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_linkx.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_nfsl.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_nfsx.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_program.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_root.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_toplvl.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amfs_union.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amq_subr.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/amq_svc.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/autil.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/clock.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/conf.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/conf_parse.y#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/conf_tok.l#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/get_args.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/info_file.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/info_hesiod.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/info_ldap.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/info_ndbm.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/info_nis.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/info_nisplus.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/info_passwd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/info_union.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/map.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/mapc.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/mntfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/nfs_prot_svc.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/nfs_start.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/nfs_subr.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_TEMPLATE.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_autofs.c#2 delete .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_cachefs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_cdfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_efs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_lofs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_mfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_nfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_nfs3.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_nullfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_pcfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_tfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_tmpfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_ufs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_umapfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_unionfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/ops_xfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/opts.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/restart.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/rpc_fwd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/sched.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/srvr_amfs_auto.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amd/srvr_nfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amq/amq.8#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amq/amq.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amq/amq.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amq/amq_clnt.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amq/amq_xdr.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amq/pawd.1#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/amq/pawd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/aux_conf.h.in#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/bootstrap#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/commit#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/conf/checkmount/checkmount_bsd44.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/conf/mount/mount_default.c#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/conf/mtab/mtab_bsd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/conf/nfs_prot/nfs_prot_aix5_1.h#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/conf/nfs_prot/nfs_prot_darwin.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/conf/nfs_prot/nfs_prot_freebsd2.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/conf/nfs_prot/nfs_prot_freebsd3.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/conf/nfs_prot/nfs_prot_osf5.h#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/conf/nfs_prot/nfs_prot_sunos5_8.h#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/conf/transp/transp_sockets.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/conf/umount/umount_bsd44.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/config.guess#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/config.guess.long#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/config.sub#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/configure.in#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/cvs-server.txt#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/depcomp#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/doc/am-utils.texi#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/doc/mdate-sh#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/doc/stamp-vti#2 delete .. //depot/projects/trustedbsd/sebsd/contrib/amd/doc/texinfo.tex#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/doc/version.texi#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fixmount/fixmount.8#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fixmount/fixmount.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/fsi_analyze.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/fsi_data.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/fsi_dict.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/fsi_gram.y#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/fsi_lex.l#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/fsi_util.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/fsinfo.8#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/fsinfo.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/fsinfo.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/wr_atab.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/wr_bparam.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/wr_dumpset.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/wr_exportfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/fsinfo/wr_fstab.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/hlfsd/hlfsd.8#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/hlfsd/hlfsd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/hlfsd/hlfsd.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/hlfsd/homedir.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/hlfsd/nfs_prot_svc.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/hlfsd/stubs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/include/am_compat.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/include/am_defs.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/include/am_utils.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/include/am_xdr_func.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/include/amq_defs.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/include/mount_headers1.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/install-sh#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/libamu/amu.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/libamu/hasmntopt.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/libamu/misc_rpc.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/libamu/mount_fs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/libamu/mtab.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/libamu/nfs_prot_xdr.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/libamu/strerror.c#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/libamu/util.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/libamu/wire.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/libamu/xdr_func.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/libamu/xutil.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/ltmain.sh#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/GNUmakefile#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/amdgrep#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/amindent#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/autopat#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/chop-aclocal.pl#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/copy-if-newbig#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/HEADER#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/TRAILER#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/c_void_p.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/cache_check_dynamic.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_amu_fs.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_checkmount_style.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_extern.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_fhandle.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_field.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_fs_headers.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_fs_mntent.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_gnu_getopt.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_hide_mount_type.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_lib2.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_map_funcs.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mnt2_cdfs_opt.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mnt2_gen_opt.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mnt2_nfs_opt.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mnttab_file_name.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mnttab_location.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mnttab_opt.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mnttab_style.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mnttab_type.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mount_style.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mount_trap.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mount_type.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mtype_printf_type.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_mtype_type.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_network_transport_type.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_nfs_fh_dref.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_nfs_hn_dref.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_nfs_prot_headers.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_nfs_sa_dref.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_nfs_socket_connection.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_os_libs.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_restartable_signal_handler.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_umount_style.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_unmount_args.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/check_unmount_call.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/expand_cpp_hex.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/expand_cpp_int.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/expand_cpp_string.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/expand_run_string.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/extern_optarg.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/extern_sys_errlist.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/field_mntent_t_mnt_time_string.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/func_bad_memcmp.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/func_bad_yp_all.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/header_templates.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/host_macros.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/linux_headers.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/localconfig.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/mount_headers.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/name_package.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/name_version.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/opt_amu_cflags.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/opt_cppflags.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/opt_debug.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/opt_ldflags.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/opt_libs.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/os_cflags.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/os_cppflags.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/os_ldflags.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/package_bugreport.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/package_name.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/package_version.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/save_state.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/struct_field_nfs_fh.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/struct_mntent.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/struct_mnttab.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/struct_nfs_args.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/struct_nfs_fh.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/struct_nfs_fh3.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/struct_nfs_gfs_mount.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/try_compile_anyfs.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/try_compile_nfs.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/try_compile_rpc.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_auth_create_gidlist.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_cachefs_args.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_cdfs_args.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_efs_args.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_lofs_args.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_mfs_args.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_pcfs_args.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_recvfrom_fromlen.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_rfs_args.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_svc_in_arg.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_time_t.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_tmpfs_args.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_ufs_args.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_xdrproc_t.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_xfs_args.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/type_yp_order_outorder.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/macros/with_addon.m4#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/mk-aclocal#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/mkconf#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/rmtspc#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/m4/update_build_version#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/missing#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/mk-amd-map/mk-amd-map.8#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/mk-amd-map/mk-amd-map.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/mkinstalldirs#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/scripts/amd.conf-sample#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/scripts/amd.conf.5#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/scripts/automount2amd.8#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/scripts/ctl-amd.in#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/scripts/ctl-hlfsd.in#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/scripts/expn.1#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/scripts/expn.in#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/scripts/lostaltmail.in#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/scripts/redhat-ctl-amd.in#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/amd/tasks#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/wire-test/wire-test.8#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/amd/wire-test/wire-test.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/ChangeLog#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/Makefile.in#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/c-decl.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/c-lex.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/c-pragma.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/c-typeck.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/calls.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/config/alpha/freebsd.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/config/darwin.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/config/freebsd-spec.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/config/i386/freebsd.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/config/i386/freebsd64.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/config/i386/gthr-win32.c#3 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/config/i386/winnt.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/config/ia64/ia64.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/config/ia64/ia64.md#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/config/rs6000/rs6000.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/config/sparc/freebsd.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/config/sparc/sparc.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/cp/ChangeLog#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/cp/call.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/cp/class.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/cp/cp-tree.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/cp/decl.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/cp/init.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/cp/method.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/cp/parse.y#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/cp/pt.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/cp/search.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/cppexp.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/cppinit.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/dbxout.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/c-tree.texi#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/collect2.texi#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/cpp.texi#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/cppopts.texi#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/extend.texi#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/fragments.texi#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/headerdirs.texi#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/include/texinfo.tex#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/invoke.texi#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/md.texi#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/portability.texi#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/rtl.texi#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/sourcebuild.texi#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/doc/trouble.texi#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/dwarf2out.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/expr.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/f/ChangeLog#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/flow.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/gcse.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/integrate.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/libgcc-std.ver#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/loop.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/optabs.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/sched-deps.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/sched-ebb.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/sched-int.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/sched-rgn.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/toplev.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/tree-inline.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/unroll.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/unwind-c.c#3 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/varasm.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gcc/version.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/ABOUT-NLS#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/FREEBSD-upgrade#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/NEWS#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/README#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/README-alpha#2 delete .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/THANKS#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/lib/getopt.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/lib/getopt.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/lib/getopt1.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/lib/gettext.h#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/lib/hard-locale.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/lib/xmalloc.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/man/sort.1#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/src/sort.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/src/sys2.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/gnu-sort/src/system.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/groff/src/devices/grotty/grotty.man#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/groff/tmac/doc-common#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/groff/tmac/doc-syms#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/groff/tmac/doc.tmac#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/groff/tmac/eqnrc#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/groff/tmac/groff_mdoc.man#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/groff/tmac/troffrc#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/groff/tmac/tty-char.tmac#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/groff/tmac/tty.tmac#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/FREEBSD-upgrade#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/README#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/RELNOTES#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/client/clparse.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/client/dhclient.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/client/dhclient.conf.5#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/client/scripts/freebsd#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/common/dhcp-options.5#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/common/discover.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/common/dispatch.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/common/options.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/common/parse.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/common/print.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/common/tables.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/includes/dhcpd.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/includes/version.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/minires/res_mkupdate.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/isc-dhcp/omapip/result.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libf2c/ChangeLog#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libobjc/ChangeLog#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/CHANGELOG#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/CHANGES#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/FREEBSD-upgrade#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/INSTALL#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/MANIFEST#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/README#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/aclocal.m4#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/ansi_stdlib.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/bind.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/callback.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/chardefs.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/compat.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/complete.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/config.h.in#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/configure#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/configure.in#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/display.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/doc/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/doc/hist.texinfo#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/doc/history.3#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/doc/hstech.texinfo#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/doc/hsuser.texinfo#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/doc/manvers.texinfo#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/doc/readline.3#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/doc/rlman.texinfo#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/doc/rltech.texinfo#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/doc/rluser.texinfo#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/doc/rluserman.texinfo#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/emacs_keymap.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/examples/Inputrc#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/examples/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/examples/fileman.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/examples/histexamp.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/examples/manexamp.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/examples/readlinebuf.h#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/examples/rl.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/examples/rlcat.c#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/examples/rltest.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/examples/rlversion.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/funmap.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/histexpand.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/histfile.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/histlib.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/history.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/history.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/histsearch.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/input.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/isearch.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/keymaps.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/kill.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/macro.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/mbutil.c#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/misc.c#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/nls.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/parens.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/posixdir.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/readline.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/readline.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/rlconf.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/rldefs.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/rlmbutil.h#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/rlprivate.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/rlshell.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/rlstdc.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/rltty.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/rltypedefs.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/search.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/shell.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/shlib/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/signals.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/support/config.guess#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/support/config.sub#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/support/install.sh#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/support/mkdirs#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/support/mkdist#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/support/shlib-install#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/support/shobj-conf#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/support/wcwidth.c#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/terminal.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/text.c#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/tilde.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/tilde.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/undo.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/util.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/vi_keymap.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/vi_mode.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/xmalloc.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libreadline/xmalloc.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libstdc++/ChangeLog#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libstdc++/config/abi/hppa-linux-gnu/baseline_symbols.txt#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/libstdc++/config/abi/mips-linux-gnu/baseline_symbols.txt#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/libstdc++/config/abi/sparc-linux-gnu/baseline_symbols.txt#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/libstdc++/config/abi/x86_64-linux-gnu/baseline_symbols.txt#3 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libstdc++/configure#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libstdc++/configure.in#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libstdc++/include/bits/c++config#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/libstdc++/include/bits/locale_facets.tcc#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/FREEBSD-upgrade#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/LICENSE#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/RELEASE_NOTES#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/cf/README#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/cf/cf/submit.cf#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/cf/cf/submit.mc#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/cf/m4/cfhead.m4#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/cf/m4/proto.m4#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/cf/m4/version.m4#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/contrib/domainmap.m4#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/contrib/doublebounce.pl#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/contrib/expn.pl#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/doc/op/op.me#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/include/sm/conf.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/include/sm/errstring.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/include/sm/io.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/include/sm/os/sm_os_aix.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/include/sm/shm.h#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libmilter/README#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libmilter/docs/sample.html#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libmilter/docs/smfi_chgheader.html#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libmilter/docs/smfi_register.html#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libmilter/docs/smfi_setconn.html#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libmilter/docs/smfi_setreply.html#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libmilter/engine.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libmilter/libmilter.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libmilter/listener.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libmilter/signal.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libsm/clock.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libsm/errstring.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libsm/flags.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libsm/ldap.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libsm/shm.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libsm/smstdio.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libsm/stdio.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libsm/vasprintf.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/libsmdb/smdb2.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/mail.local/mail.local.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/smrsh/README#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/smrsh/smrsh.8#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/README#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/TRACEFLAGS#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/alias.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/bf.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/collect.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/conf.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/control.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/daemon.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/deliver.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/domain.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/headers.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/main.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/map.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/mci.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/milter.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/mime.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/parseaddr.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/queue.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/readcf.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/recipient.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/sendmail.8#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/sendmail.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/sfsasl.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/srvrsmtp.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/stab.c#2 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/udb.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/usersmtp.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/util.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/src/version.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/smbfs/smbutil/common.h#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/telnet/telnetd/telnetd.c#3 integrate .. //depot/projects/trustedbsd/sebsd/contrib/top/top.X#2 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/contrib/amd/AUTHORS#2 (text+ko) ==== @@ -1,4 +1,3 @@ -# -*- text -*- PRIMARY AUTHORS AND MAJOR CONTRIBUTORS TO AM_UTILS: Original authors of amd were the Berkeley team and especially Jan-Simon Pendry. Since then many people have contributed patches. @@ -168,6 +167,9 @@ server is down or does not support a portmapper call, then mark it down as version 2, and try again later. +April 12, 2003: support new "unmount" option, useful to timeout removable +local media mounts. + * Bill Paul November 5, 1997: NFS v.3 support for AIX 4.2.1, which does *not* include @@ -268,6 +270,7 @@ * Peter Breitenlohner July 24, 1999: patch for linux 2.2.x to work with older libc5 systems, and nis_isup mis-logic fixes. +December 13, 2001: report typos in scripts/amd.conf.5. * Dale Talcott July 26, 1999: added NFS3 support for AIX mounting. @@ -311,3 +314,28 @@ * Ahmon Dancy February 9, 2001: Apple Rhapsody/Darwin/OS X port + +* Sebastien Bahloul +July 3, 2001: LDAP fixes and updates to support new APIs + +March 27, 2002: LDAP bug and port to HPUX-11. + +* Philippe Troin +July 12, 2001: Proper handling of GNU getopt, support for optionally +disabling LDAP/Hesiod, fixes for the dev/nodev option on Linux + +November 28, 2001: Bug fix. Support "nolock" as an NFS option, not a +generic mount option. + +July 17, 2003: Debian fixes. Null am_pref free. + +* Trond Myklebust +January 10, 2002: Proper initialization of the timeo parameter on Linux, TCP +_must_ have a timeout 2 orders of magnitude larger than UDP + +* Sean Fagan +March 14, 2003: detect and use the MNT2_GEN_OPT_AUTOMNTFS mount flag +on OS X / Darwin. + +* Hendrik Scholz +June 9, 2003: mk-amd-map should open temp db file using O_EXCL. ==== //depot/projects/trustedbsd/sebsd/contrib/amd/BUGS#2 (text+ko) ==== @@ -1,5 +1,3 @@ -# -*- text -*- - LIST OF KNOWN BUGS IN AM-UTILS OR OPERATING SYSTEMS @@ -20,10 +18,20 @@ (I have some reports that older version of hpux-9, with older libc, also leak file descriptors.) +[1C] SGI's MIPSpro C compiler on IRIX 6 has the unfortunate habit of +creating code specificially for the machine it runs on. The ABI and ISA +used depend very much on the OS version and compiler release used. This +means that the resulting amd binary won't run on machines different from +the build host, particularly older ones. Older versions of am-utils +enforced the O32 ABI when compiling with cc to work around this, but this +ABI is deprecated in favor of the N32 ABI now, so we use -n32 -mips3 to +ensure that the binaries run on every host capable of running IRIX 6 at +all. If this is not appropriate for you, configure with something like +CC='cc -64' instead to get the desired ABI and ISA. (2) alpha-unknown-linux-gnu (RedHat Linux 4.2) -hasmntopt(mnt, opt) can goes into an infinite loop if opt is any substring +hasmntopt(mnt, opt) can go into an infinite loop if opt is any substring of mnt->mnt_opts. Redhat 5.0 does not have this libc bug. Here is an example program: @@ -99,7 +107,7 @@ in strlen inside strdup inside svc_register(). -(5) *-linux-gnu (RedHat Linux 5.1) +(5) *-linux-rh51 (RedHat Linux 5.1) There's a UDP file descriptor leak in libnsl in RedHat Linux 5.1. This library part of glibc2. Am-utils currently declares redhat 5.1 systems as @@ -129,19 +137,19 @@ you do nothing). -(8) *-linux-gnu (systems using glibc 2.1, such as RedHat-6.1) +(8) *-linux (systems using glibc 2.1, such as RedHat-6.x) -There's a UDP file descriptor leak in the nis routines in glibc, especially +There's a UDP file descriptor leak in the NIS routines in glibc, especially those that do yp_bind. Until this is bug fixed, do not set nis_domain in amd.conf, but let the system pick up the default domain name as set by your system. That would avoid using the buggy yp_bind routines in libc. -(9) *-linux-gnu (SuSE systems using unfsd) +(9) *-linux (SuSE systems using unfsd) -The user-level nfsd (2.2beta44) on SuSE Linux systems (and possibly others) -dies with a SEGV when amd tries to contact it for access to a volume that -does not exist, or one for which there is no permission to mount. +The user-level nfsd (2.2beta44) on older SuSE Linux systems (and possibly +others) dies with a SEGV when amd tries to contact it for access to a volume +that does not exist, or one for which there is no permission to mount. (10) *-*-hpux11 @@ -150,13 +158,49 @@ PHNE_20371. If you don't, and you try to use amd with NFSv3 over TCP, your kernel will panic. + (11) *-linux* (any system using a 2.2.18+ kernel) The Linux kernels don't support Amd's direct mounts very well, leading to erratic behavior: shares that don't get remounted after the first timeout, inability to restart Amd because its mount points cannot be unmounted, etc. There are some kernel patches on the am-utils Web site, which solve -these problems. +these problems. See http://www.am-utils.org/patches/. + +UPDATE: kernels 2.4.10 and later completely disallow the direct mount hack, +so direct mounts are simply not possible on those Linux kernels. + +(12) *-aix5.1.0.0 and *-hpux9* + +/bin/sh is broken and fails to run the configure script properly. You need +to use /bin/ksh instead. The buildall script will do it for you; if for some +reason you need to run configure directly, run it using 'ksh configure' +instead of just 'configure'. + +[12A] *-aix5.1.* + +Apparently there is an NFS client side bug in vmount() which causes amd to +hang when it starts (and tries to NFS-mount itself). According to IBM +engineers, this has to do with partial support code for IPv6: the NFS kernel +code doesn't appear to recognize the sin_family of the amd vmount(), +although amd does the right thing. The bug appears to have been fixed in +AIX 5.2. No known fix/patch is available for AIX 5.1 as of now (1/25/2003). + +(13) *-linux and *-darwin6.0 + +Certain linux kernels (2.4.18+ are fine, 2.4.10- are probably bad, those in +between have not been tested) have a bug which causes them to reconnect +broken NFS/TCP connections using unprivileged ports (greater than 1024), +unlike the initial connections which do originate from privileged +ports. This can upset quite a few NFS servers and causes accesses to the +mounted shares to fail with "Operation not permitted" (EPERM). + +The darwin (MacOS X) kernel defaults to using unprivileged ports, but that +can be changed by setting the resvport mount flag (which amd sets by +default). Nonetheless, if a TCP connection breaks, under certain unclear +circumstances the kernel might "forget" about that flag and start using +unprivileged ports, causing the same EPERM error above. + +Erez & Ion. -Erez. ==== //depot/projects/trustedbsd/sebsd/contrib/amd/COPYING#2 (text+ko) ==== @@ -1,4 +1,4 @@ -Copyright (c) 1997-2001 Erez Zadok +Copyright (c) 1997-2003 Erez Zadok Copyright (c) 1989 Jan-Simon Pendry Copyright (c) 1989 Imperial College of Science, Technology & Medicine Copyright (c) 1989 The Regents of the University of California. ==== //depot/projects/trustedbsd/sebsd/contrib/amd/ChangeLog#2 (text+ko) ==== @@ -1,3 +1,660 @@ +2003-08-27 Ion Badulescu + + * conf/nfs_prot/nfs_prot_freebsd3.h (na_uid): freebsd4.5 uses nfs + atttributes field named "uid". So #define na_uid to it. [backport + of Erez's 6.1 change from 2002-02-26] + +2003-08-22 Nick Williams + + * amd/info_ldap.c (amu_ldap_init): don't try to pass a null + pointer as a string to plog, Solaris (and other OS's) don't like + it and will dump core. + +2003-07-17 Erez Zadok + + * fsinfo/*.[hc]: rename fsinfo function log() to fsi_log(), to + avoid conflict with builtin function in gcc-3.3. + +2003-07-17 Philippe Troin + + * amd/amfs_auto.c (amfs_auto_mount): When pref:=NULL set am_pref + to strdup("") instead of NULL since this value will be + freed. Contributed by Matt Chapman . + +2003-06-09 Erez Zadok + + * mk-amd-map/mk-amd-map.c (main): open temp db file using O_EXCL, + next best thing to using mkstemp(). Patch from Hendrik Scholz + . + +2003-05-08 Ion Badulescu + + * libamu/mount_fs.c (compute_automounter_mount_flags): use + MNT2_GEN_OPT_AUTOMNTFS if available; minor cleanup, removed + redundant code for MNT2_GEN_OPT_OVERLAY + + * m4/macros/header_templates.m4: added template for + MNT2_GEN_OPT_AUTOMOUNTED + +2003-04-23 Erez Zadok + + * conf/transp/transp_sockets.c (create_amq_service): minor cpp + directive indentation and commenting. + +2003-04-22 Ion Badulescu + + * conf/transp/transp_sockets.c (create_amq_service): Ugly *BSD fix for + an RPC library DoS issue (original patch from Martin Blapp, + massaged into something more digestable by me) + +2003-04-13 Erez Zadok + + * doc/Makefile.am (DVIPS): use proper options for dvips. + + * doc/am-utils.texi (opts Option): document new 'unmount' option, + and better explain the 'nounmount' option. Also some misc options + for better generation of html manual. + + * doc/Makefile.am (install-html): support newer text2html 4.0 + options, as older options were renamed or changed behavior. + + * amd/autil.c (am_mounted): support new 'unmount' option, to allow + all file system mounts to timeout and thus expire. This option is + useful for removable local media such as CD-ROMs, USB drives, + etc. so they can expire when not in use, and get unmounted (such + drives can get work out when they keep spinning). Patch from + Christos Zoulas (originally from Koji + Imada). + +2003-04-10 Erez Zadok + + * configure.in: use AM_MAINTAINER_MODE, so maintainer-only rules + do not get added to Makefiles by default (they are confusing to + users who don't have autotools installed). + +2003-04-04 Erez Zadok + + * libamu/xutil.c (switch_to_logfile): don't try to print logfile + if it is null (strlen core dump on solaris). Bug report from John + P. Rouillard . + +2003-03-31 Erez Zadok + + * fsinfo/fsinfo.8: typo co-ordinate -> coordinate. Typo report + from Perry E. Metzger" . + +2003-03-20 Erez Zadok + + * minor new port: sparc64-unknown-linux-suse7.3. + +2003-03-20 Erez Zadok + + * minor new port: i386-unknown-freebsd5.0. + + * configure.in: detect nfsclient/nfsargs.h. + + * conf/nfs_prot/nfs_prot_freebsd3.h: include + , needed in FreeBSD 5.0. + +2003-03-15 Erez Zadok + + * amd/amd.8, amd/amd.8, fixmount/fixmount.8, hlfsd/hlfsd.8, + scripts/amd.conf.5, scripts/expn.1: minor spell checking and + extraneous space elimination. + +2003-01-25 Erez Zadok + + * BUGS (Note): document AIX-5.1 NFS-client side bug (hangs in + vmount). + +2003-01-25 Ion Badulescu + + ******************************************************************* + *** Released am-utils-6.0.9 *** + ******************************************************************* + +2003-01-23 Ion Badulescu + + * NEWS: updated for Darwin changes + + * .cvsignore: added A.i386-apple-darwin6.0 and + A.sparc-sun-solaris2.9 + + * m4/macros/check_nfs_fh_dref.m4: darwin/rhapsody is another + freebsd22 derivative + +2002-12-28 Ion Badulescu + + * amd/srvr_nfs.c (start_nfs_pings): don't set FSF_PINGING if + pings are disabled + + * libamu/misc_rpc.c (make_rpc_packet): fix make_rpc_packet() on + 64-bit big-endian platforms, bug report from Bill Fenner + + + * configure.in: increase library patchlevel + + * libamu/xutil.c (amu_release_controlling_tty): close and reopen + file descriptors 0,1,2 before calling setsid() + +2002-12-27 Erez Zadok + + * updated copyright year to 2003 on all files + +2002-12-11 Ion Badulescu + + Solaris9 build fixes: + + * amd/info_ldap.c (amu_ldap_rebind): call ldap_enable_cache() only + if configure detected it + + * configure.in: check for ldap_enable_cache() + +2002-12-10 Erez Zadok + + * rename "aux/" subdir into "m4/" so as to avoid problems with + MS-DOS systems (where "AUX" is a reserved name). This required + fixing numerous files. + +2002-11-21 Erez Zadok + + * config.guess.long: updated script so it will properly find the + version number of the new Itanium 2 machines running "Red Hat + Linux Advanced Workstation release 2.1AW (Derry)". The script now + will report ia64-unknown-linux-rh2.1AW. + +2002-11-11 Ion Badulescu + + * doc/am-utils.texi (Keep-alives): removed outdated info about not + maintaining the state of TCP NFS servers + +2002-10-01 Ion Badulescu + + * hlfsd/hlfsd.h: removed sys_nerr declaration + + * amq/amq.c, hlfsd/hlfsd.c, libamu/xutil.c: always use strerror() + + * libamu/strerror.c: new file, strerror() implementation for + systems that don't have it + + * libamu/Makefile.am: added strerror.c + + * include/am_utils.h: debug code improvements ported from 6.1 + + * conf/mount/mount_aix.c: compile fix for --disable-debug + +2002-09-09 Ion Badulescu + + ******************************************************************* + *** Released am-utils-6.0.8 *** + ******************************************************************* + +2002-09-09 Ion Badulescu + + * amd/srvr_nfs.c (nfs_timed_out): add #ifdef DEBUG around dlog + +2002-09-04 Ion Badulescu + + * amd/mntfs.c (free_mntfs): sanity check for mf_refc [patch from + George Ross ported from 6.1] + + * amd/srvr_nfs.c (nfs_timed_out): allocate a new XID on server + timeout to avoid problems with late ping replies [patch from + George Ross ported from 6.1] + +2002-07-11 Erez Zadok + + * scripts/expn.{1,in}: fixed typos as reported by Thomas Klausner + . + +2002-06-26 + + * doc/Makefile.am (install-html): don't use locally hacked + texi2html features. + + * doc/am-utils.texi: don't use ':' in @cindex entries. + +2002-06-24 Ion Badulescu + + * doc/am-utils.texi (automount2amd): minor rewording + + * aux/macros/struct_nfs_args.m4: added test for aix51_nfs_args + + * conf/nfs_prot/nfs_prot_aix5_1.h: rename aix42_nfs_args to + aix51_nfs_args, rename unknown fields to u + +2002-06-24 Ion Badulescu + + * buildall: use ksh for configure on aix5.1; pass the extra + arguments after "--" to configure, not to make; fix 'buildall -b' + on hpux9 and aix5.1 + +2002-06-22 Ion Badulescu + + * hlfsd/homedir.c (homedir): use setgid() instead of setegid() + + * buildall: use ksh for configure on aix5.1 + +2002-06-21 Ion Badulescu + + * Makefile.am: added nfs_prot_aix4_3.h to EXTRA_DIST_CONF + + * conf/mount/mount_aix.c (mount_aix3): if the NFSv3 mount fails + with EINVAL and we have MOUNT_TYPE_NFS3_BIS defined, retry the + mount with the alternative nfs3_args structure + + * conf/nfs_prot/nfs_prot_aix4_3.h: added alternative nfs3_args + structure, similar to that in aix5.1, for a hack that tries to >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:24:32 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id DA0E216A4C0; Wed, 22 Oct 2003 19:24:31 -0700 (PDT) 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 AC8ED16A4B3 for ; Wed, 22 Oct 2003 19:24:31 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D548943F3F for ; Wed, 22 Oct 2003 19:24:29 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2OTXJ054275 for ; Wed, 22 Oct 2003 19:24:29 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2OSQI054257 for perforce@freebsd.org; Wed, 22 Oct 2003 19:24:28 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:24:28 -0700 (PDT) Message-Id: <200310230224.h9N2OSQI054257@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 Subject: PERFORCE change 40237 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:24:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=40237 Change 40237 by rwatson@rwatson_paprika on 2003/10/22 19:23:31 Integrate trustedbsd_sebsd contrib tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. Lots of documentation updates. Makefile updates (WITH_DYNAMICROOT, et al). Affected files ... .. //depot/projects/trustedbsd/sebsd/share/colldef/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/share/doc/papers/timecounter/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/share/doc/papers/timecounter/timecounter.ms#3 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/cvsup/cvs-supfile#4 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/cvsup/doc-supfile#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/cvsup/gnats-supfile#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/cvsup/ports-supfile#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/cvsup/refuse#4 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/cvsup/refuse.README#4 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/cvsup/stable-supfile#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/cvsup/standard-supfile#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/cvsup/www-supfile#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/etc/README.examples#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/etc/make.conf#4 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/ipfw/change_rules.sh#4 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/mdoc/example.3#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/netgraph/ngctl#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/netgraph/udp.tunnel#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/ppi/ppilcd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/scsi_target/scsi_cmds.c#4 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/scsi_target/scsi_target.c#4 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/ses/getencstat/getencstat.0#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/ses/sesd/sesd.0#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man3/queue.3#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man3/stdarg.3#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man3/sysexits.3#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man3/timeradd.3#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/acpi.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/agp.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/aha.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/amr.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/an.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/asr.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ath.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ath_hal.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/aue.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/awi.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/bfe.4#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man4/bge.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/bpf.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/bridge.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ccd.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/cd.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ch.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/cue.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/da.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/dpt.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/exca.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/fdc.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/icmp6.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ieee80211.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ifmib.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/iir.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/inet.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/inet6.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ip.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/isp.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ktr.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/kue.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/lomac.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/mac_mls.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/mac_none.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/mac_stub.4#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man4/man4.i386/apm.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/man4.i386/ep.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/man4.i386/fe.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/man4.i386/mcd.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/man4.i386/mse.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/man4.i386/perfmon.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/man4.i386/spkr.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/man4.i386/svr4.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/man4.i386/vx.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/mem.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/mlx.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/mtio.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/my.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/natm.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/natmip.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ng_atm.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ng_atmpif.4#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man4/ng_bt3c.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ng_source.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ng_vjc.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/oldcard.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/pccard.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/pci.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/pcic.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/pcm.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ppi.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/psm.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/pt.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/puc.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/re.4#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man4/rl.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/sab.4#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man4/ses.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/sk.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/stg.4#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man4/syscons.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/sysmouse.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/tap.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/targ.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/tcp.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/termios.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ti.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/tl.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/tty.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/tun.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/uart.4#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man4/ugen.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ulpt.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/unix.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/usb.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/vr.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/wi.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/wlan.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/worm.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/a.out.5#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/core.5#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/device.hints.5#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/dir.5#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/elf.5#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/fs.5#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/group.5#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/libmap.conf.5#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/link.5#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/make.conf.5#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/nsmb.conf.5#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man5/procfs.5#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/rc.conf.5#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/stab.5#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/style.Makefile.5#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/utmp.5#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man7/development.7#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man7/hier.7#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man7/ports.7#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man7/release.7#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man7/stdint.7#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man7/tuning.7#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man8/sticky.8#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/BUS_CONFIG_INTR.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/BUS_SETUP_INTR.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/DECLARE_MODULE.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/SYSCALL_MODULE.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_GETEXTATTR.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_GETPAGES.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_SETEXTATTR.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/cd.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/devstat.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/disk.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/ifnet.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/ithread.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/ktr.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/lock.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/make_dev.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/malloc.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/mbuf.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/mtx_pool.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/pbuf.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/pfil.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/physio.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_activate.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_addr_hint.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_change_wiring.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_clear_modify.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_copy.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_enter.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_extract.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_growkernel.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_init.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_is_modified.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_map.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_mincore.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_object_init_pt.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_page_exists_quick.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_page_protect.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_pinit.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_prefault.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_qenter.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_release.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_remove.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_zero_page.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/rtentry.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/sbuf.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/signal.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/style.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/swi.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/sx.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/sysctl_add_oid.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/taskqueue.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/timeout.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_check_protection.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_clean.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_create.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_delete.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_find.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_findspace.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_inherit.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_init.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_insert.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_lock.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_lookup.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_madvise.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_max.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_protect.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_remove.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_simplify_entry.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_stack.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_submap.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_wire.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_set_page_size.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/misc/bsd-family-tree#4 integrate .. //depot/projects/trustedbsd/sebsd/share/misc/iso3166#4 integrate .. //depot/projects/trustedbsd/sebsd/share/mk/bsd.lib.mk#4 integrate .. //depot/projects/trustedbsd/sebsd/share/mk/bsd.libnames.mk#5 integrate .. //depot/projects/trustedbsd/sebsd/share/mk/bsd.man.mk#2 integrate .. //depot/projects/trustedbsd/sebsd/share/mk/bsd.own.mk#4 integrate .. //depot/projects/trustedbsd/sebsd/share/mk/bsd.prog.mk#4 integrate .. //depot/projects/trustedbsd/sebsd/share/mk/sys.mk#4 integrate .. //depot/projects/trustedbsd/sebsd/share/mklocale/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/share/mklocale/ko_KR.CP949.src#1 branch .. //depot/projects/trustedbsd/sebsd/share/mklocale/zh_CN.GB18030.src#3 integrate .. //depot/projects/trustedbsd/sebsd/share/monetdef/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/share/msgdef/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/share/numericdef/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/share/skel/dot.mail_aliases#2 integrate .. //depot/projects/trustedbsd/sebsd/share/timedef/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/share/timedef/am_ET.UTF-8.src#2 integrate .. //depot/projects/trustedbsd/sebsd/share/timedef/zh_CN.GB18030.src#3 integrate .. //depot/projects/trustedbsd/sebsd/share/timedef/zh_CN.eucCN.src#2 integrate .. //depot/projects/trustedbsd/sebsd/share/zoneinfo/zone.tab#4 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/share/colldef/Makefile#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/colldef/Makefile,v 1.58 2003/08/05 05:42:07 mtm Exp $ +# $FreeBSD: src/share/colldef/Makefile,v 1.59 2003/08/08 13:43:49 ache Exp $ # NOMAN=YES @@ -39,8 +39,9 @@ LOCALEDIR= ${DESTDIR}/usr/share/locale ASCIILINKS= am_ET.UTF-8 en_AU.US-ASCII en_CA.US-ASCII en_GB.US-ASCII \ - en_NZ.US-ASCII en_US.US-ASCII ko_KR.eucKR ja_JP.eucJP \ - ja_JP.SJIS tr_TR.ISO8859-9 zh_CN.eucCN zh_CN.GB18030 zh_CN.GBK + en_NZ.US-ASCII en_US.US-ASCII ko_KR.CP949 ko_KR.eucKR \ + ja_JP.eucJP ja_JP.SJIS tr_TR.ISO8859-9 zh_CN.eucCN \ + zh_CN.GB18030 zh_CN.GBK DELINKS= de_AT de_CH ZHLINKS= zh_TW.Big5 ==== //depot/projects/trustedbsd/sebsd/share/doc/papers/timecounter/Makefile#3 (text+ko) ==== @@ -1,13 +1,20 @@ -# $FreeBSD: src/share/doc/papers/timecounter/Makefile,v 1.1 2003/06/15 18:49:46 phk Exp $ +# $FreeBSD: src/share/doc/papers/timecounter/Makefile,v 1.2 2003/09/05 09:38:54 jkoshy Exp $ # You really want: # PRINTERDEVICE=ps # or you will not get the illustration. VOLUME= papers DOC= timecounter -SRCS= tmac.usenix timecounter.ms +SRCS= tmac.usenix timecounter.ms-patched +EXTRA= fig1.eps fig2.eps fig3.eps fig4.eps fig5.eps gps.ps intr.ps +MACROS= -ms +CLEANFILES= timecounter.ms-patched USE_PIC=1 USE_EQN=1 USE_TBL=1 +timecounter.ms-patched: timecounter.ms + sed -E -e 's;(gps|intr).ps;${.CURDIR}/&;' -e 's;fig[0-9].eps;${.CURDIR}/&;' \ + ${.ALLSRC} > ${.TARGET} + .include ==== //depot/projects/trustedbsd/sebsd/share/doc/papers/timecounter/timecounter.ms#3 (text+ko) ==== @@ -9,7 +9,7 @@ .\" this stuff is worth it, you can buy me a beer in return. Poul-Henning Kamp .\" ---------------------------------------------------------------------------- .\" -.\" $FreeBSD: src/share/doc/papers/timecounter/timecounter.ms,v 1.1 2003/06/15 18:49:46 phk Exp $ +.\" $FreeBSD: src/share/doc/papers/timecounter/timecounter.ms,v 1.2 2003/09/05 09:40:10 jkoshy Exp $ .\" .if n .ND .TI @@ -99,7 +99,7 @@ We can therefore with good fidelity define ``a clock'' to be the combination of an oscillator and a counting mechanism: .LP -.PSPIC fig3.eps +.if t .PSPIC fig3.eps .LP The standard second is currently defined as .QP @@ -110,7 +110,7 @@ with an error less than ø2 cdot 10 sup{-15}ø [DMK2001] with commercially available products doing better than ø1 cdot 10 sup{-14}ø [AG2002]. .LP -Unlike other physical units with a conventionally defined origo, +Unlike other physical units with a conventionally defined origin, longitude for instance, the ephemeral nature of time prevents us from putting a stake in the ground, so to speak, and measure from there. For measuring time we have to rely on ``dead reckoning'', @@ -251,7 +251,7 @@ using a graphic illustration of the difference between the two concepts: .LP -.PSPIC fig1.eps +.if t .PSPIC fig1.eps .LP In the top row we have instability, the bullet holes are spread over a large fraction of the target area. @@ -272,7 +272,7 @@ Transposing these four targets to actual clocks, the situation could look like the following plots: .LP -.PSPIC fig2.eps +.if t .PSPIC fig2.eps .LP On the x-axis we have time and on the y-axis how wrong the clock was at a given point in time. @@ -712,7 +712,7 @@ can continue unaware of this afterwards and not suffer corruption or miscalculation even though it holds no locks on the shared meta-data. -.PSPIC fig4.eps +.if t .PSPIC fig4.eps .LP This scheme has an inherent risk that a process may be de-scheduled for so long time that it will not manage to complete the timestamping @@ -901,7 +901,7 @@ [VCC2002] containing a FPGA chip on a PCI form factor card, a 26 bit timecounter running at 100MHz was successfully implemented. .LP -.PSPIC fig5.eps +.if t .PSPIC fig5.eps .LP .LP In order to show that timestamping does not necessarily have to @@ -925,7 +925,7 @@ sawtooth correction''. .FE .LP -.PSPIC gps.ps +.if t .PSPIC gps.ps .LP It shold be noted that the author is no hardware wizard and a number of issues in the implementation results in less than @@ -943,7 +943,7 @@ totally obscure the curves due to their temperature coefficient. .FE .LP -.PSPIC intr.ps +.if t .PSPIC intr.ps .LP It is painfully obvious that the interrupt latency is the dominant noise factor in PPS timestamping in the second case. @@ -1065,7 +1065,7 @@ Time" Penguin USA (Paper); ISBN: 0140258795. .LP [SAGE] -This ``gee-wiz'' kind of article in Dr. Jobbs Journal is a goot place to +This ``gee-wiz'' kind of article in Dr. Jobbs Journal is a good place to start: .br http://www.ddj.com/documents/s=1493/ddj0001hc/0085a.htm ==== //depot/projects/trustedbsd/sebsd/share/examples/cvsup/cvs-supfile#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/examples/cvsup/cvs-supfile,v 1.36 2003/03/04 19:02:27 peter Exp $ +# $FreeBSD: src/share/examples/cvsup/cvs-supfile,v 1.38 2003/09/18 08:19:39 eivind Exp $ # # This file contains all of the "CVSup collections" that make up the # CVS development tree of the FreeBSD system. @@ -55,7 +55,9 @@ *default release=cvs *default delete use-rel-suffix -# If your network link is a T1 or faster, comment out the following line. +# If you seem to be limited by CPU rather than network or disk bandwidth, try +# commenting out the following line. (Normally, today's CPUs are fast enough +# that you want to run compression.) *default compress ## Main Source Tree. @@ -118,6 +120,7 @@ #ports-databases #ports-deskutils #ports-devel +#ports-dns #ports-editors #ports-emulators #ports-finance @@ -142,6 +145,7 @@ #ports-news #ports-palm #ports-picobsd +#ports-polish #ports-portuguese #ports-print #ports-russian ==== //depot/projects/trustedbsd/sebsd/share/examples/cvsup/doc-supfile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/examples/cvsup/doc-supfile,v 1.7 2002/07/30 14:08:16 blackend Exp $ +# $FreeBSD: src/share/examples/cvsup/doc-supfile,v 1.8 2003/09/18 08:19:39 eivind Exp $ # # This file contains all of the "CVSup collections" that make up the # source of the FreeBSD doc tree @@ -59,7 +59,9 @@ *default release=cvs tag=. *default delete use-rel-suffix -# If your network link is a T1 or faster, comment out the following line. +# If you seem to be limited by CPU rather than network or disk bandwidth, try +# commenting out the following line. (Normally, today's CPUs are fast enough +# that you want to run compression.) *default compress # This will retrieve the entire doc branch of the FreeBSD repository. ==== //depot/projects/trustedbsd/sebsd/share/examples/cvsup/gnats-supfile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/examples/cvsup/gnats-supfile,v 1.4 2002/07/30 14:08:16 blackend Exp $ +# $FreeBSD: src/share/examples/cvsup/gnats-supfile,v 1.6 2003/09/18 08:19:39 eivind Exp $ # # This file contains all of the "CVSup collections" that make up the # FreeBSD GNATS bug report database. @@ -41,7 +41,7 @@ # prefix=/usr # This specifies where to place the requested files. A # setting of "/usr" will place all of the files requested -# in "/usr/ports" (e.g., "/usr/ports/devel", "/usr/ports/lang"). +# in "/usr/gnats". # The prefix directory must exist in order to run CVSup. # Defaults that apply to all the collections @@ -54,7 +54,9 @@ *default release=current *default delete use-rel-suffix -# If your network link is a T1 or faster, comment out the following line. +# If you seem to be limited by CPU rather than network or disk bandwidth, try +# commenting out the following line. (Normally, today's CPUs are fast enough +# that you want to run compression.) *default compress ## GNATS database ==== //depot/projects/trustedbsd/sebsd/share/examples/cvsup/ports-supfile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/examples/cvsup/ports-supfile,v 1.26 2002/12/09 01:02:42 lioux Exp $ +# $FreeBSD: src/share/examples/cvsup/ports-supfile,v 1.28 2003/09/18 08:19:39 eivind Exp $ # # This file contains all of the "CVSup collections" that make up the # FreeBSD-current ports collection. @@ -54,7 +54,9 @@ *default release=cvs tag=. *default delete use-rel-suffix -# If your network link is a T1 or faster, comment out the following line. +# If you seem to be limited by CPU rather than network or disk bandwidth, try +# commenting out the following line. (Normally, today's CPUs are fast enough +# that you want to run compression.) *default compress ## Ports Collection. @@ -84,6 +86,7 @@ #ports-databases #ports-deskutils #ports-devel +#ports-dns #ports-editors #ports-emulators #ports-finance @@ -108,6 +111,7 @@ #ports-news #ports-palm #ports-picobsd +#ports-polish #ports-portuguese #ports-print #ports-russian ==== //depot/projects/trustedbsd/sebsd/share/examples/cvsup/refuse#4 (text+ko) ==== @@ -21,6 +21,7 @@ ports/japanese ports/korean ports/portuguese +ports/polish ports/russian ports/ukrainian ports/vietnamese ==== //depot/projects/trustedbsd/sebsd/share/examples/cvsup/refuse.README#4 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/share/examples/cvsup/refuse.README,v 1.8 2003/03/26 01:25:39 keramida Exp $ +$FreeBSD: src/share/examples/cvsup/refuse.README,v 1.9 2003/09/12 09:09:49 ceri Exp $ This describes the "refuse" file found in this directory. The explanation cannot be put inside the file itself because: @@ -46,6 +46,7 @@ ports/hungarian ports/japanese ports/korean + ports/polish ports/portuguese ports/russian ports/ukrainian ==== //depot/projects/trustedbsd/sebsd/share/examples/cvsup/stable-supfile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/examples/cvsup/stable-supfile,v 1.26 2002/07/30 14:08:16 blackend Exp $ +# $FreeBSD: src/share/examples/cvsup/stable-supfile,v 1.27 2003/09/18 08:19:39 eivind Exp $ # # This file contains all of the "CVSup collections" that make up the # FreeBSD-stable source tree. @@ -73,7 +73,9 @@ *default release=cvs tag=RELENG_4 *default delete use-rel-suffix -# If your network link is a T1 or faster, comment out the following line. +# If you seem to be limited by CPU rather than network or disk bandwidth, try +# commenting out the following line. (Normally, today's CPUs are fast enough +# that you want to run compression.) *default compress ## Main Source Tree. ==== //depot/projects/trustedbsd/sebsd/share/examples/cvsup/standard-supfile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/examples/cvsup/standard-supfile,v 1.21 2002/07/30 14:08:16 blackend Exp $ +# $FreeBSD: src/share/examples/cvsup/standard-supfile,v 1.22 2003/09/18 08:19:39 eivind Exp $ # # This file contains all of the "CVSup collections" that make up the # FreeBSD-current source tree. @@ -54,7 +54,9 @@ *default release=cvs tag=. *default delete use-rel-suffix -# If your network link is a T1 or faster, comment out the following line. +# If you seem to be limited by CPU rather than network or disk bandwidth, try +# commenting out the following line. (Normally, today's CPUs are fast enough +# that you want to run compression.) *default compress ## Main Source Tree. ==== //depot/projects/trustedbsd/sebsd/share/examples/cvsup/www-supfile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/examples/cvsup/www-supfile,v 1.4 2002/07/30 14:08:16 blackend Exp $ +# $FreeBSD: src/share/examples/cvsup/www-supfile,v 1.5 2003/09/18 08:19:39 eivind Exp $ # # This file contains all of the "CVSup collections" that make up the # source of the FreeBSD www tree @@ -54,7 +54,9 @@ *default release=cvs tag=. *default delete use-rel-suffix -# If your network link is a T1 or faster, comment out the following line. +# If you seem to be limited by CPU rather than network or disk bandwidth, try +# commenting out the following line. (Normally, today's CPUs are fast enough +# that you want to run compression.) *default compress # This collection retrieves the www/ tree of the FreeBSD repository ==== //depot/projects/trustedbsd/sebsd/share/examples/etc/README.examples#2 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/share/examples/etc/README.examples,v 1.11 2002/11/27 16:45:10 ru Exp $ +$FreeBSD: src/share/examples/etc/README.examples,v 1.12 2003/09/15 16:42:52 nectar Exp $ The /usr/share/examples/etc directory contains the original distribution versions of the files which are shipped in /etc. This is @@ -34,7 +34,6 @@ netstart - network startup script run from /etc/rc networks - see networks(5) newsyslog.conf - configuration for system log file rotator newsyslog(8) -nsswitch.conf - name-service switch config file (see nsswitch.conf(5)) pam.conf - configuration file for pam(8) pccard_ether - confiuration script for ethernet pccards (see pccardd(8)) phones - phone number database for tip(1) ==== //depot/projects/trustedbsd/sebsd/share/examples/etc/make.conf#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/examples/etc/make.conf,v 1.217 2003/07/06 19:01:41 gshapiro Exp $ +# $FreeBSD: src/share/examples/etc/make.conf,v 1.218 2003/09/24 04:19:26 gshapiro Exp $ # # NOTE: Please would any committer updating this file also update the # make.conf(5) manual page, if necessary, which is located in @@ -263,6 +263,11 @@ # #SENDMAIL_ADDITIONAL_MC=/etc/mail/foo.mc /etc/mail/bar.mc # +# The following overrides the default location for the m4 configuration +# files used to build a .cf file from a .mc file. +# +#SENDMAIL_CF_DIR=/usr/local/share/sendmail/cf +# # Setting the following variable modifies the flags passed to m4 when # building a .cf file from a .mc file. It can be used to enable # features disabled by default. ==== //depot/projects/trustedbsd/sebsd/share/examples/ipfw/change_rules.sh#4 (text+ko) ==== @@ -24,7 +24,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/share/examples/ipfw/change_rules.sh,v 1.5 2003/02/13 12:02:51 brueffer Exp $ +# $FreeBSD: src/share/examples/ipfw/change_rules.sh,v 1.6 2003/09/07 07:52:56 jmg Exp $ # Change ipfw(8) rules with safety guarantees for remote operation # @@ -82,7 +82,7 @@ } restore_rules() { - nohup sh ${firewall_script} >/dev/null 2>&1 + nohup sh ${firewall_script} /dev/null 2>&1 rm ${TMPFILE} exit 1 } @@ -129,10 +129,10 @@ if [ ${rules_edit} = yes ]; then nohup sh ${firewall_script} ${firewall_type}.new \ - > ${TMPFILE} 2>&1 + < /dev/null > ${TMPFILE} 2>&1 else nohup sh ${firewall_script}.new \ - > ${TMPFILE} 2>&1 + < /dev/null > ${TMPFILE} 2>&1 fi sleep 2; get_yes_no "Would you like to see the resulting new rules" ==== //depot/projects/trustedbsd/sebsd/share/examples/mdoc/example.3#2 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/share/examples/mdoc/example.3,v 1.22 2001/07/18 10:04:34 ru Exp $ +.\" $FreeBSD: src/share/examples/mdoc/example.3,v 1.23 2003/09/08 19:57:19 ru Exp $ .\" .\" Note: The date here should be updated whenever a non-trivial .\" change is made to the manual page. @@ -65,7 +65,7 @@ .El .Pp The above values are defined in -.Aq Pa example.h +.In example.h as follows: .Bd -literal #define EXAMPLE_ONE 1 ==== //depot/projects/trustedbsd/sebsd/share/examples/netgraph/ngctl#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/examples/netgraph/ngctl,v 1.1 1999/11/30 02:45:08 archie Exp $ +# $FreeBSD: src/share/examples/netgraph/ngctl,v 1.2 2003/09/30 22:39:22 julian Exp $ # # This is an example that shows how to send ASCII formatted control @@ -31,7 +31,7 @@ quit Exit program + -# Now let's create a ng_ksocket(8) node, in the family PF_INET, +# Now let's create a ng_ksocket(4) node, in the family PF_INET, # of type SOCK_RAW, and protocol IPPROTO_DIVERT: + mkpeer ksocket foo inet/raw/divert ==== //depot/projects/trustedbsd/sebsd/share/examples/netgraph/udp.tunnel#2 (text+ko) ==== @@ -1,5 +1,5 @@ #!/bin/sh -# $FreeBSD: src/share/examples/netgraph/udp.tunnel,v 1.1 2000/01/28 00:44:30 archie Exp $ +# $FreeBSD: src/share/examples/netgraph/udp.tunnel,v 1.2 2003/09/30 22:39:22 julian Exp $ # This script sets up a virtual point-to-point WAN link between # two subnets, using UDP packets as the ``WAN connection.'' @@ -31,7 +31,7 @@ fi # Attach a UDP socket to the ``inet'' hook of the interface node -# using the ng_ksocket(8) node type. +# using the ng_ksocket(4) node type. # ngctl mkpeer ng0: ksocket inet inet/dgram/udp ==== //depot/projects/trustedbsd/sebsd/share/examples/ppi/ppilcd.c#2 (text+ko) ==== @@ -2,7 +2,7 @@ * Control LCD module hung off parallel port using the * ppi 'geek port' interface. * - * $FreeBSD: src/share/examples/ppi/ppilcd.c,v 1.4 2001/05/18 13:58:08 ru Exp $ + * $FreeBSD: src/share/examples/ppi/ppilcd.c,v 1.5 2003/08/07 04:40:54 imp Exp $ */ #include @@ -107,7 +107,7 @@ drivertype = getenv("LCD_TYPE"); - while ((ch = getopt(argc, argv, "Dd:f:o:v")) != EOF) { + while ((ch = getopt(argc, argv, "Dd:f:o:v")) != -1) { switch(ch) { case 'D': debuglevel++; ==== //depot/projects/trustedbsd/sebsd/share/examples/scsi_target/scsi_cmds.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/share/examples/scsi_target/scsi_cmds.c,v 1.2 2003/01/16 00:24:29 njl Exp $ + * $FreeBSD: src/share/examples/scsi_target/scsi_cmds.c,v 1.3 2003/09/25 05:43:26 simokawa Exp $ */ #include @@ -246,10 +246,8 @@ /* Fill out the supplied CTIO */ if (ctio != NULL) { - /* No autosense yet bcopy(sense, &ctio->sense_data, sizeof(*sense)); - ctio->sense_len = sizeof(*sense); XXX - */ + ctio->sense_len = sizeof(*sense); /* XXX */ ctio->ccb_h.flags &= ~CAM_DIR_MASK; ctio->ccb_h.flags |= CAM_DIR_NONE | /* CAM_SEND_SENSE | */ CAM_SEND_STATUS; @@ -331,7 +329,11 @@ inq = &inq_data; bzero(inq, sizeof(*inq)); inq->device = T_DIRECT | (SID_QUAL_LU_CONNECTED << 5); +#ifdef SCSI_REV_SPC inq->version = SCSI_REV_SPC; /* was 2 */ +#else + inq->version = SCSI_REV_3; /* was 2 */ +#endif /* * XXX cpi.hba_inquiry doesn't support Addr16 so we give the ==== //depot/projects/trustedbsd/sebsd/share/examples/scsi_target/scsi_target.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/share/examples/scsi_target/scsi_target.c,v 1.14 2003/01/16 00:24:29 njl Exp $ + * $FreeBSD: src/share/examples/scsi_target/scsi_target.c,v 1.15 2003/09/25 05:43:26 simokawa Exp $ */ #include @@ -45,6 +45,7 @@ #include #include #include +#include #include #include #include @@ -199,7 +200,18 @@ if (fstat(file_fd, &st) < 0) err(1, "fstat file"); - volume_size = st.st_size / sector_size; +#if __FreeBSD_version >= 500000 + if ((st.st_mode & S_IFCHR) != 0) { + /* raw device */ + off_t mediasize; + if (ioctl(file_fd, DIOCGMEDIASIZE, &mediasize) < 0) + err(1, "DIOCGMEDIASIZE"); + + /* XXX get sector size by ioctl()?? */ + volume_size = mediasize / sector_size; + } else +#endif + volume_size = st.st_size / sector_size; } else { volume_size = user_size / sector_size; } @@ -582,6 +594,8 @@ c_descr->offset = a_descr->base_off + a_descr->targ_req; else if ((a_descr->flags & CAM_DIR_MASK) == CAM_DIR_OUT) c_descr->offset = a_descr->base_off + a_descr->init_req; + else + c_descr->offset = a_descr->base_off; /* * Return a check condition if there was an error while @@ -684,6 +698,14 @@ ctio = (struct ccb_scsiio *)ccb_h; c_descr = (struct ctio_descr *)ctio->ccb_h.targ_descr; + if (ctio->ccb_h.status == CAM_REQ_ABORTED) { + TAILQ_REMOVE(&a_descr->cmplt_io, ccb_h, + periph_links.tqe); + free_ccb((union ccb *)ctio); + send_ccb((union ccb *)atio, /*priority*/1); + continue; + } + /* If completed item is in range, call handler */ if ((c_descr->event == AIO_DONE && c_descr->offset == a_descr->base_off + a_descr->targ_ack) ==== //depot/projects/trustedbsd/sebsd/share/examples/ses/getencstat/getencstat.0#2 (text+ko) ==== @@ -1,4 +1,4 @@ -.\" $FreeBSD: src/share/examples/ses/getencstat/getencstat.0,v 1.1 2000/02/29 05:44:12 mjacob Exp $ +.\" $FreeBSD: src/share/examples/ses/getencstat/getencstat.0,v 1.2 2003/09/14 13:41:58 ru Exp $ .\" .\" Copyright (c) 2000 Matthew Jacob .\" All rights reserved. @@ -45,7 +45,7 @@ .Nm gets summary and detailed SCSI Environmental Services (or SAF-TE) device enclosure status. The overall status is printed out. If the overall status -is considered okay, nothing else is printed out (unless the the +is considered okay, nothing else is printed out (unless the .Fl v option is used). .Pp ==== //depot/projects/trustedbsd/sebsd/share/examples/ses/sesd/sesd.0#2 (text+ko) ==== @@ -1,4 +1,4 @@ -.\" $FreeBSD: src/share/examples/ses/sesd/sesd.0,v 1.2 2001/07/06 16:46:32 ru Exp $ +.\" $FreeBSD: src/share/examples/ses/sesd/sesd.0,v 1.3 2003/09/14 13:41:58 ru Exp $ .\" .\" Copyright (c) 2000 Matthew Jacob .\" All rights reserved. @@ -45,7 +45,7 @@ .Sh DESCRIPTION .Nm monitors SCSI Environmental Services (or SAF-TE) devices for changes -in state and logs such changes changes to the system error logger +in state and logs such changes to the system error logger (see .Xr syslogd 8 ) . At least one device must be specified. ==== //depot/projects/trustedbsd/sebsd/share/man/Makefile#4 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.2 (Berkeley) 4/16/94 -# $FreeBSD: src/share/man/Makefile,v 1.16 2003/04/16 11:28:44 ru Exp $ +# $FreeBSD: src/share/man/Makefile,v 1.17 2003/09/04 21:24:18 ru Exp $ # XXX MISSING: man3f SUBDIR= man1 man3 man4 man5 man6 man7 man8 man9 @@ -8,7 +8,9 @@ makedb: ${MAKEWHATIS} ${DESTDIR}${BINDIR}/man +.if !defined(NOCRYPT) && !defined(NO_OPENSSL) ${MAKEWHATIS} ${DESTDIR}${BINDIR}/openssl/man +.endif .include "${.CURDIR}/../Makefile.inc" .include ==== //depot/projects/trustedbsd/sebsd/share/man/man3/queue.3#2 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)queue.3 8.2 (Berkeley) 1/24/94 -.\" $FreeBSD: src/share/man/man3/queue.3,v 1.30 2002/04/17 13:48:14 tmm Exp $ +.\" $FreeBSD: src/share/man/man3/queue.3,v 1.32 2003/08/14 14:49:26 kan Exp $ .\" .Dd January 24, 1994 .Dt QUEUE 3 @@ -40,6 +40,7 @@ .Nm SLIST_ENTRY , .Nm SLIST_FIRST , .Nm SLIST_FOREACH , +.Nm SLIST_FOREACH_SAFE , .Nm SLIST_HEAD , .Nm SLIST_HEAD_INITIALIZER , .Nm SLIST_INIT , @@ -53,6 +54,7 @@ .Nm STAILQ_ENTRY , .Nm STAILQ_FIRST , .Nm STAILQ_FOREACH , +.Nm STAILQ_FOREACH_SAFE , .Nm STAILQ_HEAD , .Nm STAILQ_HEAD_INITIALIZER , .Nm STAILQ_INIT , @@ -67,6 +69,7 @@ .Nm LIST_ENTRY , .Nm LIST_FIRST , .Nm LIST_FOREACH , +.Nm LIST_FOREACH_SAFE , .Nm LIST_HEAD , .Nm LIST_HEAD_INITIALIZER , .Nm LIST_INIT , @@ -80,7 +83,9 @@ .Nm TAILQ_ENTRY , .Nm TAILQ_FIRST , .Nm TAILQ_FOREACH , +.Nm TAILQ_FOREACH_SAFE , .Nm TAILQ_FOREACH_REVERSE , +.Nm TAILQ_FOREACH_REVERSE_SAFE , .Nm TAILQ_HEAD , .Nm TAILQ_HEAD_INITIALIZER , .Nm TAILQ_INIT , @@ -101,6 +106,7 @@ .Fn SLIST_ENTRY "TYPE" .Fn SLIST_FIRST "SLIST_HEAD *head" .Fn SLIST_FOREACH "TYPE *var" "SLIST_HEAD *head" "SLIST_ENTRY NAME" +.Fn SLIST_FOREACH_SAFE "TYPE *var" "SLIST_HEAD *head" "SLIST_ENTRY NAME" "TYPE *temp_var" .Fn SLIST_HEAD "HEADNAME" "TYPE" .Fn SLIST_HEAD_INITIALIZER "SLIST_HEAD head" .Fn SLIST_INIT "SLIST_HEAD *head" @@ -115,6 +121,7 @@ .Fn STAILQ_ENTRY "TYPE" .Fn STAILQ_FIRST "STAILQ_HEAD *head" .Fn STAILQ_FOREACH "TYPE *var" "STAILQ_HEAD *head" "STAILQ_ENTRY NAME" +.Fn STAILQ_FOREACH_SAFE "TYPE *var" "STAILQ_HEAD *head" "STAILQ_ENTRY NAME" "TYPE *temp_var" .Fn STAILQ_HEAD "HEADNAME" "TYPE" .Fn STAILQ_HEAD_INITIALIZER "STAILQ_HEAD head" .Fn STAILQ_INIT "STAILQ_HEAD *head" @@ -130,6 +137,7 @@ .Fn LIST_ENTRY "TYPE" .Fn LIST_FIRST "LIST_HEAD *head" .Fn LIST_FOREACH "TYPE *var" "LIST_HEAD *head" "LIST_ENTRY NAME" +.Fn LIST_FOREACH_SAFE "TYPE *var" "LIST_HEAD *head" "LIST_ENTRY NAME" "TYPE *temp_var" .Fn LIST_HEAD "HEADNAME" "TYPE" .Fn LIST_HEAD_INITIALIZER "LIST_HEAD head" .Fn LIST_INIT "LIST_HEAD *head" @@ -144,7 +152,9 @@ .Fn TAILQ_ENTRY "TYPE" .Fn TAILQ_FIRST "TAILQ_HEAD *head" .Fn TAILQ_FOREACH "TYPE *var" "TAILQ_HEAD *head" "TAILQ_ENTRY NAME" +.Fn TAILQ_FOREACH_SAFE "TYPE *var" "TAILQ_HEAD *head" "TAILQ_ENTRY NAME" "TYPE *temp_var" .Fn TAILQ_FOREACH_REVERSE "TYPE *var" "TAILQ_HEAD *head" "HEADNAME" "TAILQ_ENTRY NAME" +.Fn TAILQ_FOREACH_REVERSE_SAFE "TYPE *var" "TAILQ_HEAD *head" "HEADNAME" "TAILQ_ENTRY NAME" "TYPE *temp_var" .Fn TAILQ_HEAD "HEADNAME" "TYPE" .Fn TAILQ_HEAD_INITIALIZER "TAILQ_HEAD head" .Fn TAILQ_INIT "TAILQ_HEAD *head" @@ -324,6 +334,20 @@ .Fa var . .Pp The macro +.Nm SLIST_FOREACH_SAFE +traverses the list referenced by +.Fa head +in the forward direction, assigning each element in +turn to +.Fa var . +However, unlike +.Fn SLIST_FOREACH >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:25:33 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4D60516A4C1; Wed, 22 Oct 2003 19:25:33 -0700 (PDT) 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 267FB16A4BF for ; Wed, 22 Oct 2003 19:25:33 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D115843F3F for ; Wed, 22 Oct 2003 19:25:31 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2PVXJ054880 for ; Wed, 22 Oct 2003 19:25:31 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2PVok054877 for perforce@freebsd.org; Wed, 22 Oct 2003 19:25:31 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:25:31 -0700 (PDT) Message-Id: <200310230225.h9N2PVok054877@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 Subject: PERFORCE change 40238 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:25:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=40238 Change 40238 by rwatson@rwatson_paprika on 2003/10/22 19:25:00 Integrate trustedbsd_sebsd gnu tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. Lots of documentation updates. Makefile updates (WITH_DYNAMICROOT, et al). More to the gnu update: readline upgrade. binutils upgrade. groff upgrade. sort upgrade. Affected files ... .. //depot/projects/trustedbsd/sebsd/gnu/lib/libreadline/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/lib/libreadline/config.h#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/lib/libreadline/readline/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/as/amd64-freebsd/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/as/i386-freebsd/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/gdb/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/ld/Makefile.alpha#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/ld/Makefile.amd64#3 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/ld/Makefile.i386#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/ld/Makefile.ia64#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/ld/Makefile.powerpc#4 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/ld/Makefile.sparc64#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/cvs/cvsbug/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/cvs/lib/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/groff/font/devkoi8-r/R.proto#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/groff/tmac/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/groff/tmac/fr.ISO8859-1#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/groff/tmac/koi8-r.tmac#1 branch .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/groff/tmac/mdoc.local#4 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/groff/tmac/ru.KOI8-R#3 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/man/manpath/manpath.config#4 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/send-pr/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/send-pr/send-pr.sh#4 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/sort/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/sort/config.h#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/sort/libintl.h#2 delete .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/tar/config.h#2 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/gnu/lib/libreadline/Makefile.inc#2 (text+ko) ==== @@ -1,14 +1,14 @@ -# $FreeBSD: src/gnu/lib/libreadline/Makefile.inc,v 1.8 2002/09/28 00:25:27 peter Exp $ +# $FreeBSD: src/gnu/lib/libreadline/Makefile.inc,v 1.9 2003/08/31 19:15:34 ache Exp $ -SHLIB_MAJOR= 4 -RL_LIBRARY_VERSION= 4.2 +SHLIB_MAJOR=4 +RL_LIBRARY_VERSION=4.3 SRCDIR= ${.CURDIR}/../../../../contrib/libreadline .PATH: ${SRCDIR} ${.CURDIR}/.. LOCAL_CFLAGS= -DRL_LIBRARY_VERSION='"$(RL_LIBRARY_VERSION)"' -CFLAGS+= -I${.CURDIR}/.. -I${SRCDIR} -DHAVE_CONFIG_H ${LOCAL_CFLAGS} +CFLAGS+=-I${.CURDIR}/.. -I${SRCDIR} -DHAVE_CONFIG_H ${LOCAL_CFLAGS} -HISTSRC= history.c histexpand.c histfile.c histsearch.c shell.c +HISTSRC=history.c histexpand.c histfile.c histsearch.c shell.c mbutil.c .include "../Makefile.inc" ==== //depot/projects/trustedbsd/sebsd/gnu/lib/libreadline/config.h#2 (text+ko) ==== @@ -1,6 +1,6 @@ -/* $FreeBSD: src/gnu/lib/libreadline/config.h,v 1.5 2000/03/19 22:26:49 ache Exp $ */ +/* $FreeBSD: src/gnu/lib/libreadline/config.h,v 1.6 2003/08/31 19:15:34 ache Exp $ */ /* config.h. Generated automatically by configure. */ -/* config.h.in. Generated automatically from configure.in by autoheader. */ +/* config.h.in. Maintained by hand. */ /* Define if on MINIX. */ /* #undef _MINIX */ @@ -8,14 +8,34 @@ /* Define as the return type of signal handlers (int or void). */ #define RETSIGTYPE void +/* Characteristics of the compiler. */ +/* #undef const */ + +/* #undef size_t */ + +/* #undef ssize_t */ + +#define PROTOTYPES 1 + +/* #undef __CHAR_UNSIGNED__ */ + /* Define if the `S_IS*' macros in do not work properly. */ /* #undef STAT_MACROS_BROKEN */ #define VOID_SIGHANDLER 1 +/* Define if you have the isascii function. */ +#define HAVE_ISASCII 1 + +/* Define if you have the isxdigit function. */ +#define HAVE_ISXDIGIT 1 + /* Define if you have the lstat function. */ #define HAVE_LSTAT 1 +/* Define if you have the mbsrtowcs function. */ +#define HAVE_MBSRTOWCS 1 + /* Define if you have the memmove function. */ #define HAVE_MEMMOVE 1 @@ -28,32 +48,59 @@ /* Define if you have the setenv function. */ #define HAVE_SETENV 1 +/* Define if you have the setlocale function. */ +#define HAVE_SETLOCALE 1 + /* Define if you have the strcasecmp function. */ #define HAVE_STRCASECMP 1 -/* Define if you have the setlocale function. */ -#define HAVE_SETLOCALE 1 +/* Define if you have the strcoll function. */ +#define HAVE_STRCOLL 1 + +/* #undef STRCOLL_BROKEN */ + +/* Define if you have the strpbrk function. */ +#define HAVE_STRPBRK 1 /* Define if you have the tcgetattr function. */ #define HAVE_TCGETATTR 1 -/* Define if you have the strcoll function. */ -#define HAVE_STRCOLL 1 +/* Define if you have the vsnprintf function. */ +#define HAVE_VSNPRINTF 1 -/* #undef STRCOLL_BROKEN */ +/* Define if you have the wcwidth function. */ +#define HAVE_WCWIDTH 1 /* Define if you have the header file. */ #define HAVE_DIRENT_H 1 +/* Define if you have the header file. */ +#define HAVE_LANGINFO_H 1 + +/* Define if you have the header file. */ +#define HAVE_LIMITS_H 1 + +/* Define if you have the header file. */ +#define HAVE_LOCALE_H 1 + +/* Define if you have the header file. */ +#define HAVE_MEMORY_H 1 + /* Define if you have the header file. */ /* #undef HAVE_NDIR_H */ +/* Define if you have the header file. */ +#define HAVE_STDARG_H 1 + /* Define if you have the header file. */ #define HAVE_STDLIB_H 1 /* Define if you have the header file. */ #define HAVE_STRING_H 1 +/* Define if you have the header file. */ +#define HAVE_STRINGS_H 1 + /* Define if you have the header file. */ /* #undef HAVE_SYS_DIR_H */ @@ -90,15 +137,21 @@ /* Define if you have the header file. */ #define HAVE_VARARGS_H 1 -/* Define if you have the header file. */ -#define HAVE_STDARG_H 1 +/* Define if you have the header file. */ +#define HAVE_WCHAR_H 1 + +/* Define if you have the header file. */ +#define HAVE_WCTYPE_H 1 + +#define HAVE_MBSTATE_T 1 -#define HAVE_LOCALE_H 1 +/* Define if you have and nl_langinfo(CODESET). */ +#define HAVE_LANGINFO_CODESET 1 /* Definitions pulled in from aclocal.m4. */ #define VOID_SIGHANDLER 1 -#define GWINSZ_IN_SYS_IOCTL 1 +/* #undef GWINSZ_IN_SYS_IOCTL */ #define STRUCT_WINSIZE_IN_SYS_IOCTL 1 @@ -126,7 +179,6 @@ #define HAVE_POSIX_SIGSETJMP 1 -/* config.h.bot */ /* modify settings or make new ones based on what autoconf tells us. */ /* Ultrix botches type-ahead when switching from canonical to ==== //depot/projects/trustedbsd/sebsd/gnu/lib/libreadline/readline/Makefile#2 (text+ko) ==== @@ -1,15 +1,16 @@ -# $FreeBSD: src/gnu/lib/libreadline/readline/Makefile,v 1.10 2002/05/12 16:00:47 ru Exp $ +# $FreeBSD: src/gnu/lib/libreadline/readline/Makefile,v 1.12 2003/08/31 19:15:35 ache Exp $ SUBDIR= doc LIB= readline MAN= doc/readline.3 +SHLIBDIR?= /lib TILDESRC= tilde.c SRCS= readline.c vi_mode.c funmap.c keymaps.c parens.c search.c \ rltty.c complete.c bind.c isearch.c display.c signals.c \ util.c kill.c undo.c macro.c input.c callback.c terminal.c \ - nls.c compat.c xmalloc.c $(HISTSRC) $(TILDESRC) + text.c nls.c misc.c compat.c xmalloc.c $(HISTSRC) $(TILDESRC) INSTALLED_HEADERS= readline.h chardefs.h keymaps.h history.h tilde.h \ rlstdc.h rlconf.h rltypedefs.h ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/Makefile#4 (text+ko) ==== @@ -1,8 +1,13 @@ -# $FreeBSD: src/gnu/usr.bin/Makefile,v 1.75 2003/04/27 20:14:05 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/Makefile,v 1.76 2003/08/29 10:35:00 phk Exp $ -SUBDIR= bc binutils cc cpio dc dialog diff diff3 \ +SUBDIR= bc ${_binutils} ${_cc} cpio dc dialog diff diff3 \ ${_gperf} grep gzip man patch rcs sdiff send-pr sort tar texinfo +.if !defined(NO_TOOLCHAIN) +_cc=cc +_binutils=binutils +.endif + .if !defined(NO_CXX) .if ${MACHINE_ARCH} != "powerpc" _gperf=gperf ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/as/amd64-freebsd/Makefile#3 (text+ko) ==== @@ -1,8 +1,7 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/as/amd64-freebsd/Makefile,v 1.1 2003/04/26 03:28:20 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/as/amd64-freebsd/Makefile,v 1.2 2003/08/14 14:43:28 ru Exp $ .include "${.CURDIR}/../Makefile.inc0" -NOMAN= true SRCS+= obj-elf.c tc-i386.c .include ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/as/i386-freebsd/Makefile#2 (text+ko) ==== @@ -1,9 +1,9 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/as/i386-freebsd/Makefile,v 1.9 2001/10/15 01:43:22 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/as/i386-freebsd/Makefile,v 1.10 2003/08/14 14:43:29 ru Exp $ .include "${.CURDIR}/../Makefile.inc0" +.if ${TARGET_ARCH} != "i386" NOMAN= true -.if ${TARGET_ARCH} != "i386" BINDIR= /usr/libexec/cross/i386-freebsd .endif SRCS+= obj-elf.c tc-i386.c ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/gdb/Makefile#4 (text+ko) ==== @@ -1,12 +1,14 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/gdb/Makefile,v 1.65 2003/03/21 00:30:53 iedowse Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/gdb/Makefile,v 1.68 2003/09/07 20:38:23 obrien Exp $ .include "../Makefile.inc0" -.PATH: ${SRCDIR}/binutils +GDBDIR= ${.CURDIR}/../../../../contrib/gdb +.PATH: ${GDBDIR}/gdb ${GDBDIR}/gdb/cli ${GDBDIR}/gdb/mi +.PATH: ${SRCDIR}/opcodes ${SRCDIR}/binutils .if ${TARGET_ARCH} == "sparc64" GDB_CPU= sparc -.elif ${TARGET_ARCH} == "x86-64" +.elif ${TARGET_ARCH} == "amd64" GDB_CPU= i386 .else GDB_CPU= ${TARGET_ARCH} @@ -25,10 +27,12 @@ remote-utils.c signals.c source.c stabsread.c stack.c symfile.c \ symmisc.c symtab.c target.c thread.c top.c tracepoint.c \ typeprint.c ui-file.c ui-out.c utils.c valarith.c valops.c \ - valprint.c values.c wrapper.c \ + varobj.c valprint.c values.c wrapper.c \ cli-cmds.c cli-cmds.h cli-decode.c cli-decode.h cli-out.c \ cli-script.c cli-script.h cli-setshow.c cli-setshow.h \ cli-utils.c cli-utils.h \ + mi-cmd-break.c mi-cmd-disas.c mi-cmd-stack.c mi-cmd-var.c \ + mi-cmds.c mi-console.c mi-getopt.c mi-main.c mi-out.c mi-parse.c\ serial.c ser-unix.c ser-tcp.c \ c-exp.y c-lang.c c-typeprint.c c-valprint.c \ ch-exp.c ch-lang.c ch-typeprint.c ch-valprint.c \ @@ -42,9 +46,7 @@ XSRCS+= freebsd-uthread.c kvm-fbsd.c solib-fbsd-kld.c SRCS= init.c ${XSRCS} nm.h tm.h xm.h gdbversion.c xregex.h -.if exists(${.CURDIR}/Makefile.${TARGET_ARCH}) .include "${.CURDIR}/Makefile.${TARGET_ARCH}" -.endif WARNS= 0 .if ${TARGET_ARCH} != ${MACHINE_ARCH} @@ -52,34 +54,23 @@ .endif CFLAGS+= -DDEFAULT_BFD_ARCH=bfd_${GDB_CPU}_arch CFLAGS+= -I${.CURDIR}/${TARGET_ARCH} -CFLAGS+= -I${SRCDIR}/binutils -CFLAGS+= -I${SRCDIR}/bfd -CFLAGS+= -I${GDBDIR}/gdb -CFLAGS+= -I${GDBDIR}/gdb/config -DPADD= ${LIBKVM} -DPADD+= ${LIBM} -DPADD+= ${RELTOP}/libbfd/libbfd.a -DPADD+= ${RELTOP}/libopcodes/libopcodes.a +CFLAGS+= -I${SRCDIR}/binutils -I${SRCDIR}/bfd +CFLAGS+= -I${GDBDIR}/gdb -I${GDBDIR}/gdb/config +CFLAGS+= -I$(.CURDIR) -I${DESTDIR}/usr/include/readline + +YFLAGS= + +DPADD= ${LIBKVM} ${LIBM} +DPADD+= ${RELTOP}/libbfd/libbfd.a ${RELTOP}/libopcodes/libopcodes.a DPADD+= ${LIBGNUREGEX} DPADD+= ${RELTOP}/libiberty/libiberty.a -DPADD+= ${LIBREADLINE} -DPADD+= ${LIBTERMCAP} -LDADD= -lkvm -LDADD+= -lm -LDADD+= ${RELTOP}/libbfd/libbfd.a -LDADD+= ${RELTOP}/libopcodes/libopcodes.a +DPADD+= ${LIBREADLINE} ${LIBTERMCAP} +LDADD= -lkvm -lm +LDADD+= ${RELTOP}/libbfd/libbfd.a ${RELTOP}/libopcodes/libopcodes.a LDADD+= -lgnuregex LDADD+= ${RELTOP}/libiberty/libiberty.a -LDADD+= -lreadline -LDADD+= -ltermcap +LDADD+= -lreadline -ltermcap -GDBDIR= ${.CURDIR}/../../../../contrib/gdb -.PATH: ${GDBDIR}/gdb ${GDBDIR}/gdb/cli -.PATH: ${SRCDIR}/opcodes - -CFLAGS+= -I$(.CURDIR) -I${DESTDIR}/usr/include/readline -YFLAGS= - CLEANFILES= init.c init.c-tmp nm.h tm.h xm.h gdbversion.c xregex.h # We do this by grepping through sources. If that turns out to be too slow, @@ -140,9 +131,9 @@ GDB_VERSION= "5.2.1 (FreeBSD)" gdbversion.c: @echo '#include "version.h"' > ${.TARGET} - @echo 'const char version[] = ${GDB_VERSION};' >>${.TARGET} - @echo 'const char host_name[] = "${MACHINE_ARCH}-undermydesk-freebsd";' >>${.TARGET} - @echo 'const char target_name[] = "${TARGET_ARCH}-undermydesk-freebsd";' >>${.TARGET} + @echo 'const char version[] = ${GDB_VERSION};' >>${.TARGET} + @echo 'const char host_name[] = "${MACHINE_ARCH}-undermydesk-freebsd";' >>${.TARGET} + @echo 'const char target_name[] = "${TARGET_ARCH}-undermydesk-freebsd";' >>${.TARGET} xregex.h: @echo '#include ' >${.TARGET} ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/ld/Makefile.alpha#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/ld/Makefile.alpha,v 1.18 2002/12/02 09:43:57 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/ld/Makefile.alpha,v 1.20 2003/08/19 17:30:46 obrien Exp $ TARGET_TUPLE?= alpha-unknown-freebsd @@ -7,7 +7,7 @@ HOST= ${TARGET_TUPLE} CFLAGS+= -DDEFAULT_EMULATION=\"${NATIVE_EMULATION}\" CFLAGS+= -DTARGET=\"${TARGET_TUPLE}\" -_alpha_path= \"${TOOLS_PREFIX}/usr/lib\" +_alpha_path= \"${TOOLS_PREFIX}/lib\":\"${TOOLS_PREFIX}/usr/lib\" .else _alpha_path= \"/usr/cross/alpha-freebsd/usr/lib\" .endif ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/ld/Makefile.amd64#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/ld/Makefile.amd64,v 1.2 2003/07/01 17:12:55 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/ld/Makefile.amd64,v 1.5 2003/08/19 17:30:46 obrien Exp $ TARGET_TUPLE?= x86_64-obrien-freebsd @@ -6,7 +6,7 @@ HOST= ${TARGET_TUPLE} CFLAGS+= -DDEFAULT_EMULATION=\"${NATIVE_EMULATION}\" CFLAGS+= -DTARGET=\"${TARGET_TUPLE}\" -_x86_64_path= \"${TOOLS_PREFIX}/usr/lib\" +_amd64_path= \"${TOOLS_PREFIX}/lib\":\"${TOOLS_PREFIX}/usr/lib\" EMS+= ${NATIVE_EMULATION} LDSCRIPTS+= ${NATIVE_EMULATION}.x ${NATIVE_EMULATION}.xbn ${NATIVE_EMULATION}.xn ${NATIVE_EMULATION}.xr \ ${NATIVE_EMULATION}.xs ${NATIVE_EMULATION}.xu ${NATIVE_EMULATION}.xc ${NATIVE_EMULATION}.xsc @@ -15,7 +15,7 @@ e${NATIVE_EMULATION}.c: emulparams/${NATIVE_EMULATION}.sh emultempl/elf32.em scripttempl/elf.sc \ genscripts.sh stringify.sed - sh ${.CURDIR}/genscripts.sh ${SRCDIR}/ld ${_x86_64_path} \ + sh ${.CURDIR}/genscripts.sh ${SRCDIR}/ld ${_amd64_path} \ ${HOST} ${TARGET_TUPLE} ${TARGET_TUPLE} \ "${NATIVE_EMULATION}" "" ${NATIVE_EMULATION} "${TARGET_TUPLE}" ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/ld/Makefile.i386#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/ld/Makefile.i386,v 1.18 2002/10/11 09:31:55 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/ld/Makefile.i386,v 1.20 2003/08/19 17:30:46 obrien Exp $ TARGET_TUPLE?= i386-unknown-freebsd @@ -7,7 +7,7 @@ HOST= ${TARGET_TUPLE} CFLAGS+= -DDEFAULT_EMULATION=\"${NATIVE_EMULATION}\" CFLAGS+= -DTARGET=\"${TARGET_TUPLE}\" -_i386_path= \"${TOOLS_PREFIX}/usr/lib\" +_i386_path= \"${TOOLS_PREFIX}/lib\":\"${TOOLS_PREFIX}/usr/lib\" .else _i386_path= \"/usr/cross/i386-freebsd/usr/lib\" .endif ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/ld/Makefile.ia64#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/ld/Makefile.ia64,v 1.5 2002/12/05 18:23:08 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/ld/Makefile.ia64,v 1.7 2003/08/19 17:30:46 obrien Exp $ TARGET_TUPLE?= ia64-unknown-freebsd @@ -7,7 +7,7 @@ HOST= ${TARGET_TUPLE} CFLAGS+= -DDEFAULT_EMULATION=\"${NATIVE_EMULATION}\" CFLAGS+= -DTARGET=\"${TARGET_TUPLE}\" -_ia64_path= \"${TOOLS_PREFIX}/usr/lib\" +_ia64_path= \"${TOOLS_PREFIX}/lib\":\"${TOOLS_PREFIX}/usr/lib\" .else _ia64_path= \"/usr/cross/ia64-freebsd/usr/lib\" .endif ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/ld/Makefile.powerpc#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/ld/Makefile.powerpc,v 1.12 2003/01/21 06:12:56 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/ld/Makefile.powerpc,v 1.14 2003/08/19 17:30:46 obrien Exp $ TARGET_TUPLE?= powerpc-unknown-freebsd @@ -7,7 +7,7 @@ HOST= ${TARGET_TUPLE} CFLAGS+= -DDEFAULT_EMULATION=\"${NATIVE_EMULATION}\" CFLAGS+= -DTARGET=\"${TARGET_TUPLE}\" -_powerpc_path= \"${TOOLS_PREFIX}/usr/lib\" +_powerpc_path= \"${TOOLS_PREFIX}/lib\":\"${TOOLS_PREFIX}/usr/lib\" .else _powerpc_path= \"/usr/cross/powerpc-freebsd/usr/lib\" .endif ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/binutils/ld/Makefile.sparc64#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/binutils/ld/Makefile.sparc64,v 1.12 2002/12/05 18:25:09 obrien Exp $ +# $FreeBSD: src/gnu/usr.bin/binutils/ld/Makefile.sparc64,v 1.14 2003/08/19 17:30:46 obrien Exp $ TARGET_TUPLE?= sparc64-unknown-freebsd @@ -7,7 +7,7 @@ HOST= ${TARGET_TUPLE} CFLAGS+= -DDEFAULT_EMULATION=\"${NATIVE_EMULATION}\" CFLAGS+= -DTARGET=\"${TARGET_TUPLE}\" -_sparc_path= \"${TOOLS_PREFIX}/usr/lib\" +_sparc_path= \"${TOOLS_PREFIX}/lib\":\"${TOOLS_PREFIX}/usr/lib\" .else _sparc_path= \"/usr/cross/sparc-freebsd/usr/lib\" .endif ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/cvs/cvsbug/Makefile#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/cvs/cvsbug/Makefile,v 1.18 2003/01/21 23:00:36 peter Exp $ +# $FreeBSD: src/gnu/usr.bin/cvs/cvsbug/Makefile,v 1.19 2003/09/07 13:17:31 ru Exp $ MAINTAINER= peter@FreeBSD.org @@ -12,10 +12,10 @@ MAN= cvsbug.8 CLEANFILES+= cvsbug -VERSION!= sed < ${CVSDIR}/configure \ - -e '/^[ ]*VERSION=/!d' -e 's/.*=\(.*\)/\1/' -e q cvsbug: cvsbug.in - sed -e "s,@VERSION@,${VERSION}-FreeBSD,g" ${.ALLSRC} > ${.TARGET} + version=`sed < ${CVSDIR}/configure \ + -e '/^[ ]*VERSION=/!d' -e 's/.*=\(.*\)/\1/' -e q`; \ + sed -e "s,@VERSION@,$${version}-FreeBSD,g" ${.ALLSRC} > ${.TARGET} .include ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/cvs/lib/Makefile#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/cvs/lib/Makefile,v 1.22 2003/01/21 23:00:36 peter Exp $ +# $FreeBSD: src/gnu/usr.bin/cvs/lib/Makefile,v 1.23 2003/09/07 13:09:47 ru Exp $ MAINTAINER= peter@FreeBSD.org @@ -16,9 +16,6 @@ YFLAGS= CLEANFILES+= config.h -VERSION!= sed < ${CVSDIR}/configure \ - -e '/^[ ]*VERSION=/!d' -e 's/.*=\(.*\)/\1/' -e q - CVS_UMASK_DFLT?= 002 CVS_ADMIN_GROUP?= cvsadmin CVS_TMPDIR_DFLT?= /tmp @@ -29,7 +26,9 @@ xgetwd.c yesno.c config.h: config.h.proto - sed -e "s,@VERSION@,${VERSION}-FreeBSD,g" \ + version=`sed < ${CVSDIR}/configure \ + -e '/^[ ]*VERSION=/!d' -e 's/.*=\(.*\)/\1/' -e q`; \ + sed -e "s,@VERSION@,$${version}-FreeBSD,g" \ -e "s,@UMASK_DFLT@,${CVS_UMASK_DFLT},g" \ -e "s,@TMPDIR_DFLT@,${CVS_TMPDIR_DFLT},g" \ -e "s,@CVS_ADMIN_GROUP@,${CVS_ADMIN_GROUP},g" \ ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/groff/font/devkoi8-r/R.proto#2 (text+ko) ==== @@ -1,8 +1,40 @@ -# $FreeBSD: src/gnu/usr.bin/groff/font/devkoi8-r/R.proto,v 1.5 2001/05/28 07:17:58 ru Exp $ +# $FreeBSD: src/gnu/usr.bin/groff/font/devkoi8-r/R.proto,v 1.6 2003/09/08 17:46:33 ru Exp $ name R internalname 0 spacewidth 24 charset +--- 24 0 0000 +--- 24 0 0001 +--- 24 0 0002 +--- 24 0 0003 +--- 24 0 0004 +--- 24 0 0005 +--- 24 0 0006 +--- 24 0 0007 +--- 24 0 0010 +--- 24 0 0011 +--- 24 0 0012 +--- 24 0 0013 +--- 24 0 0014 +--- 24 0 0015 +--- 24 0 0016 +--- 24 0 0017 +--- 24 0 0020 +--- 24 0 0021 +--- 24 0 0022 +--- 24 0 0023 +--- 24 0 0024 +--- 24 0 0025 +--- 24 0 0026 +--- 24 0 0027 +--- 24 0 0030 +--- 24 0 0031 +--- 24 0 0032 +--- 24 0 0033 +--- 24 0 0034 +--- 24 0 0035 +--- 24 0 0036 +--- 24 0 0037 ! 24 0 0041 " 24 0 0042 dq " @@ -123,7 +155,6 @@ g 24 0 0147 h 24 0 0150 i 24 0 0151 -.i " j 24 0 0152 k 24 0 0153 l 24 0 0154 @@ -141,6 +172,7 @@ w 24 0 0167 x 24 0 0170 mu " +tmu " y 24 0 0171 z 24 0 0172 lC 24 0 0173 @@ -150,165 +182,151 @@ bv " br " | " -lb " -lc " -lf " -lk " -lt " -rb " -rc " -rf " -rk " -rt " rC 24 0 0175 } " a~ 24 0 0176 ~ " ap " ti " -char128 24 0 0200 -char129 24 0 0201 -char130 24 0 0202 -char131 24 0 0203 -char132 24 0 0204 -char133 24 0 0205 -char134 24 0 0206 -char135 24 0 0207 -char136 24 0 0210 -char137 24 0 0211 -char138 24 0 0212 -char139 24 0 0213 -char140 24 0 0214 -char141 24 0 0215 -char142 24 0 0216 -char143 24 0 0217 -char144 24 0 0220 -char145 24 0 0221 -char146 24 0 0222 -char147 24 0 0223 -char148 24 0 0224 -bu 24 0 0225 -char149 " -sr 24 0 0226 -char150 " -~~ 24 0 0227 +--- 24 0 0177 +u2500 24 0 0200 +u2502 24 0 0201 +br " +u250C 24 0 0202 +u2510 24 0 0203 +u2514 24 0 0204 +u2518 24 0 0205 +u251C 24 0 0206 +u2524 24 0 0207 +u252C 24 0 0210 +u2534 24 0 0211 +u253C 24 0 0212 +u2580 24 0 0213 +u2584 24 0 0214 +u2588 24 0 0215 +u258C 24 0 0216 +u2590 24 0 0217 +u2591 24 0 0220 +u2592 24 0 0221 +u2593 24 0 0222 +u2320 24 0 0223 +u25A0 24 0 0224 +u2219 24 0 0225 +u221A 24 0 0226 +sr " +sqrt " +u2248 24 0 0227 +~~ " ~= " -char151 " -<= 24 0 0230 -char152 " ->= 24 0 0231 -char153 " -char154 24 0 0232 -char155 24 0 0233 -de 24 0 0234 -char156 " -S2 24 0 0235 -char157 " -pc 24 0 0236 -char158 " -di 24 0 0237 -char159 " -char160 24 0 0240 -char161 24 0 0241 -char162 24 0 0242 -:e 24 0 0243 -char163 " -char164 24 0 0244 -char165 24 0 0245 -char166 24 0 0246 -char167 24 0 0247 -char168 24 0 0250 -char169 24 0 0251 -char170 24 0 0252 -char171 24 0 0253 -char172 24 0 0254 -char173 24 0 0255 -char174 24 0 0256 -char175 24 0 0257 -char176 24 0 0260 -char177 24 0 0261 -char178 24 0 0262 -:E 24 0 0263 -char179 " -char180 24 0 0264 -char181 24 0 0265 -char182 24 0 0266 -char183 24 0 0267 -char184 24 0 0270 -char185 24 0 0271 -char186 24 0 0272 -char187 24 0 0273 -char188 24 0 0274 -char189 24 0 0275 -char190 24 0 0276 -co 24 0 0277 -char191 " -char192 24 0 0300 -char193 24 0 0301 -char194 24 0 0302 -char195 24 0 0303 -char196 24 0 0304 -char197 24 0 0305 -*f 24 0 0306 -char198 " -char199 24 0 0307 -char200 24 0 0310 -char201 24 0 0311 -char202 24 0 0312 -char203 24 0 0313 -char204 24 0 0314 -char205 24 0 0315 -char206 24 0 0316 -char207 24 0 0317 -*p 24 0 0320 -char208 " -char209 24 0 0321 -char210 24 0 0322 -char211 24 0 0323 -char212 24 0 0324 -char213 24 0 0325 -char214 24 0 0326 -char215 24 0 0327 -char216 24 0 0330 -char217 24 0 0331 -char218 24 0 0332 -char219 24 0 0333 -char220 24 0 0334 -char221 24 0 0335 -char222 24 0 0336 -char223 24 0 0337 -char224 24 0 0340 -char225 24 0 0341 -char226 24 0 0342 -char227 24 0 0343 -char228 24 0 0344 -char229 24 0 0345 -*F 24 0 0346 -char230 " -*G 24 0 0347 -char231 " -char232 24 0 0350 -char233 24 0 0351 -char234 24 0 0352 -char235 24 0 0353 -char236 24 0 0354 -char237 24 0 0355 -char238 24 0 0356 -char239 24 0 0357 -*P 24 0 0360 -char240 " -char241 24 0 0361 -char242 24 0 0362 -char243 24 0 0363 -char244 24 0 0364 -char245 24 0 0365 -char246 24 0 0366 -char247 24 0 0367 -char248 24 0 0370 -char249 24 0 0371 -char250 24 0 0372 -char251 24 0 0373 -char252 24 0 0374 -char253 24 0 0375 -char254 24 0 0376 -char255 24 0 0377 +u2264 24 0 0230 +<= " +u2265 24 0 0231 +>= " +u00A0 24 0 0232 +u2321 24 0 0233 +u00B0 24 0 0234 +de " +u00B2 24 0 0235 +S2 " +u00B7 24 0 0236 +pc " +u00F7 24 0 0237 +di " +tdi " +u2550 24 0 0240 +u2551 24 0 0241 +u2552 24 0 0242 +u0435_0308 24 0 0243 +u2553 24 0 0244 +u2554 24 0 0245 +u2555 24 0 0246 +u2556 24 0 0247 +u2557 24 0 0250 +u2558 24 0 0251 +u2559 24 0 0252 +u255A 24 0 0253 +u255B 24 0 0254 +u255C 24 0 0255 +u255D 24 0 0256 +u255E 24 0 0257 +u255F 24 0 0260 +u2560 24 0 0261 +u2561 24 0 0262 +u0415_0308 24 0 0263 +u2562 24 0 0264 +u2563 24 0 0265 +u2564 24 0 0266 +u2565 24 0 0267 +u2566 24 0 0270 +u2567 24 0 0271 +u2568 24 0 0272 +u2569 24 0 0273 +u256A 24 0 0274 +u256B 24 0 0275 +u256C 24 0 0276 +u00A9 24 0 0277 +co " +u044E 24 0 0300 +u0430 24 0 0301 +u0431 24 0 0302 +u0446 24 0 0303 +u0434 24 0 0304 +u0435 24 0 0305 +u0444 24 0 0306 +u0433 24 0 0307 +u0445 24 0 0310 +u0438 24 0 0311 +u0438_0306 24 0 0312 +u043A 24 0 0313 +u043B 24 0 0314 +u043C 24 0 0315 +u043D 24 0 0316 +u043E 24 0 0317 +u043F 24 0 0320 +u044F 24 0 0321 +u0440 24 0 0322 +u0441 24 0 0323 +u0442 24 0 0324 +u0443 24 0 0325 +u0436 24 0 0326 +u0432 24 0 0327 +u044C 24 0 0330 +u044B 24 0 0331 +u0437 24 0 0332 +u0448 24 0 0333 +u044D 24 0 0334 +u0449 24 0 0335 +u0447 24 0 0336 +u044A 24 0 0337 +u042E 24 0 0340 +u0410 24 0 0341 +u0411 24 0 0342 +u0426 24 0 0343 +u0414 24 0 0344 +u0415 24 0 0345 +u0424 24 0 0346 +u0413 24 0 0347 +u0425 24 0 0350 +u0418 24 0 0351 +u0418_0306 24 0 0352 +u041A 24 0 0353 +u041B 24 0 0354 +u041C 24 0 0355 +u041D 24 0 0356 +u041E 24 0 0357 +u041F 24 0 0360 +u042F 24 0 0361 +u0420 24 0 0362 +u0421 24 0 0363 +u0422 24 0 0364 +u0423 24 0 0365 +u0416 24 0 0366 +u0412 24 0 0367 +u042C 24 0 0370 +u042B 24 0 0371 +u0417 24 0 0372 +u0428 24 0 0373 +u042D 24 0 0374 +u0429 24 0 0375 +u0427 24 0 0376 +u042A 24 0 0377 ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/groff/tmac/Makefile#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/gnu/usr.bin/groff/tmac/Makefile,v 1.41 2003/05/01 13:22:21 ru Exp $ +# $FreeBSD: src/gnu/usr.bin/groff/tmac/Makefile,v 1.42 2003/09/08 17:46:33 ru Exp $ TMACOWN?= ${BINOWN} TMACGRP?= ${BINGRP} @@ -63,7 +63,7 @@ ${NORMALFILES} ${DESTDIR}${TMACDIR} cd ${.CURDIR}; \ ${INSTALL} -o ${TMACOWN} -g ${TMACGRP} -m ${TMACMODE} \ - hyphen.ru ${DESTDIR}${TMACDIR} + koi8-r.tmac hyphen.ru ${DESTDIR}${TMACDIR} cd ${.OBJDIR} .for f in ${STRIPFILES} ${SPECIALFILES} ${INSTALL} -o ${TMACOWN} -g ${TMACGRP} -m ${TMACMODE} \ ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/groff/tmac/fr.ISO8859-1#2 (text+ko) ==== @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/gnu/usr.bin/groff/tmac/fr.ISO8859-1,v 1.2 2002/10/09 08:51:52 ru Exp $ +.\" $FreeBSD: src/gnu/usr.bin/groff/tmac/fr.ISO8859-1,v 1.4 2003/09/20 21:23:53 ru Exp $ .\" .\" %beginstrip% . @@ -62,6 +62,7 @@ .\" .Sh localization .ds doc-section-name NOM .ds doc-section-synopsis SYNOPSIS +.ds doc-section-library BIBLIOTHÈQUE .ds doc-section-description DESCRIPTION .ds doc-section-see-also VOIR .ds doc-section-files FICHIERS @@ -82,6 +83,7 @@ .ds doc-str-Lb-libdisk Bibliothèque d'accès à l'interface des labels de partitions (libdisk, \-ldisk) .ds doc-str-Lb-libedit Bibliothèque de l'éditeur de ligne de commande (libedit, \-ledit) .ds doc-str-Lb-libfetch Bibliothèque de transfert de fichier (libfetch, \-lfetch) +.\" XXX ds doc-str-Lb-libgeom Userland API Library for kernel GEOM subsystem (libgeom, \-lgeom) .ds doc-str-Lb-libi386 Bibliothèque de l'architecture i386 (libi386, \-li386) .ds doc-str-Lb-libipsec Bibliothèque de contrôle de politique IPsec (libipsec, \-lipsec) .ds doc-str-Lb-libipx Bibliothèque de support des conversions des adresses IPX (libipx, \-lipx) @@ -95,8 +97,9 @@ .ds doc-str-Lb-libposix Bibliothèque de compatibilité \*[Px] (libposix, \-lposix) .ds doc-str-Lb-libresolv Bibliothèque du résolveur DNS (libresolv, \-lresolv) .ds doc-str-Lb-librpcsvc Bibliothèque des services RPC (librpcsvc, \-lrpcsvc) -.ds doc-str-Lb-libskey Bibliothèque d'accès aux tables de controle des mots de passe S/Key (libskey, \-lskey) .ds doc-str-Lb-libtermcap Bibliothèque d'accès aux terminaux (libtermcap, \-ltermcap) +.\" XXX ds doc-str-Lb-libufs UFS File System Access Library (libufs, \-lufs) +.\" XXX ds doc-str-Lb-libugidfw File System Firewall Interface Library (libugidfw, \-lugidfw) .ds doc-str-Lb-libusbhid Bibliothèque d'accès aux routines USB HID (libusbhid, \-lusbhid) .ds doc-str-Lb-libutil Bibliothèque des utilitaires système (libutil, \-lutil) .ds doc-str-Lb-libvgl Bibliothèque graphique vidéo (libvgl, \-lvgl) ==== //depot/projects/trustedbsd/sebsd/gnu/usr.bin/groff/tmac/mdoc.local#4 (text+ko) ==== @@ -1,4 +1,4 @@ -.\" Copyright (c) 2001 Ruslan Ermilov . +.\" Copyright (c) 2001-2003 Ruslan Ermilov . .\" All rights reserved. .\" .\" Redistribution and use in source and binary forms, with or without @@ -22,7 +22,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:26:34 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id A4EA216A4C0; Wed, 22 Oct 2003 19:26:34 -0700 (PDT) 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 7C4F216A4B3 for ; Wed, 22 Oct 2003 19:26:34 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D0A7143FBF for ; Wed, 22 Oct 2003 19:26:33 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2QXXJ054922 for ; Wed, 22 Oct 2003 19:26:33 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2QXiH054919 for perforce@freebsd.org; Wed, 22 Oct 2003 19:26:33 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:26:33 -0700 (PDT) Message-Id: <200310230226.h9N2QXiH054919@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 Subject: PERFORCE change 40239 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:26:35 -0000 http://perforce.freebsd.org/chv.cgi?CH=40239 Change 40239 by rwatson@rwatson_paprika on 2003/10/22 19:25:57 Integrate trustedbsd_sebsd include tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. Affected files ... .. //depot/projects/trustedbsd/sebsd/include/Makefile#7 integrate .. //depot/projects/trustedbsd/sebsd/include/pthread.h#4 integrate .. //depot/projects/trustedbsd/sebsd/include/unistd.h#4 integrate .. //depot/projects/trustedbsd/sebsd/include/varargs.h#1 branch Differences ... ==== //depot/projects/trustedbsd/sebsd/include/Makefile#7 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.2 (Berkeley) 1/4/94 -# $FreeBSD: src/include/Makefile,v 1.204 2003/07/04 19:54:06 ru Exp $ +# $FreeBSD: src/include/Makefile,v 1.205 2003/09/01 03:28:25 kan Exp $ # # Doing a "make install" builds /usr/include. @@ -16,10 +16,10 @@ resolv.h rune.h runetype.h search.h setjmp.h sgtty.h signal.h stab.h \ stdbool.h stddef.h stdio.h stdlib.h strhash.h string.h stringlist.h \ strings.h sysexits.h tar.h time.h timeconv.h timers.h ttyent.h \ - ulimit.h unistd.h utime.h utmp.h uuid.h vis.h wchar.h wctype.h \ - wordexp.h + ulimit.h unistd.h utime.h utmp.h uuid.h varargs.h vis.h wchar.h \ + wctype.h wordexp.h -MHDRS= float.h floatingpoint.h stdarg.h varargs.h +MHDRS= float.h floatingpoint.h stdarg.h # posix4/mqueue.h is useless without an implementation and isn't installed: PHDRS= sched.h semaphore.h _semaphore.h ksem.h# mqueue.h ==== //depot/projects/trustedbsd/sebsd/include/pthread.h#4 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/include/pthread.h,v 1.28 2003/04/20 01:53:12 jdp Exp $ + * $FreeBSD: src/include/pthread.h,v 1.31 2003/09/09 06:57:51 davidxu Exp $ */ #ifndef _PTHREAD_H_ #define _PTHREAD_H_ @@ -52,6 +52,7 @@ #define PTHREAD_KEYS_MAX 256 #define PTHREAD_STACK_MIN 1024 #define PTHREAD_THREADS_MAX ULONG_MAX +#define PTHREAD_BARRIER_SERIAL_THREAD -1 /* * Flags for threads and thread attributes. @@ -95,6 +96,9 @@ struct pthread_once; struct pthread_rwlock; struct pthread_rwlockattr; +struct pthread_barrier; +struct pthread_barrier_attr; +struct pthread_spinlock; /* * Primitive system data type definitions required by P1003.1c. @@ -113,6 +117,9 @@ typedef struct pthread_once pthread_once_t; typedef struct pthread_rwlock *pthread_rwlock_t; typedef struct pthread_rwlockattr *pthread_rwlockattr_t; +typedef struct pthread_barrier *pthread_barrier_t; +typedef struct pthread_barrierattr *pthread_barrierattr_t; +typedef struct pthread_spinlock *pthread_spinlock_t; /* * Additional type definitions: @@ -203,6 +210,15 @@ int pthread_attr_setstack(pthread_attr_t *, void *, size_t); int pthread_attr_setstackaddr(pthread_attr_t *, void *); int pthread_attr_setdetachstate(pthread_attr_t *, int); +int pthread_barrier_destroy(pthread_barrier_t *); +int pthread_barrier_init(pthread_barrier_t *, + const pthread_barrierattr_t *, unsigned); +int pthread_barrier_wait(pthread_barrier_t *); +int pthread_barrierattr_destroy(pthread_barrierattr_t *); +int pthread_barrierattr_getpshared(const pthread_barrierattr_t *, + int *); +int pthread_barrierattr_init(pthread_barrierattr_t *); +int pthread_barrierattr_setpshared(pthread_barrierattr_t *, int); void pthread_cleanup_pop(int); void pthread_cleanup_push(void (*) (void *), void *routine_arg); int pthread_condattr_destroy(pthread_condattr_t *); @@ -236,12 +252,18 @@ const pthread_mutexattr_t *); int pthread_mutex_lock(pthread_mutex_t *); int pthread_mutex_trylock(pthread_mutex_t *); +int pthread_mutex_timedlock(pthread_mutex_t *, + const struct timespec *); int pthread_mutex_unlock(pthread_mutex_t *); int pthread_once(pthread_once_t *, void (*) (void)); int pthread_rwlock_destroy(pthread_rwlock_t *); int pthread_rwlock_init(pthread_rwlock_t *, const pthread_rwlockattr_t *); int pthread_rwlock_rdlock(pthread_rwlock_t *); +int pthread_rwlock_timedrdlock(pthread_rwlock_t *, + const struct timespec *); +int pthread_rwlock_timedrwlock(pthread_rwlock_t *, + const struct timespec *); int pthread_rwlock_tryrdlock(pthread_rwlock_t *); int pthread_rwlock_trywrlock(pthread_rwlock_t *); int pthread_rwlock_unlock(pthread_rwlock_t *); @@ -255,6 +277,11 @@ int pthread_setspecific(pthread_key_t, const void *); int pthread_sigmask(int, const sigset_t *, sigset_t *); +int pthread_spin_init(pthread_spinlock_t *, int); +int pthread_spin_destroy(pthread_spinlock_t *); +int pthread_spin_lock(pthread_spinlock_t *); +int pthread_spin_trylock(pthread_spinlock_t *); +int pthread_spin_unlock(pthread_spinlock_t *); int pthread_cancel(pthread_t); int pthread_setcancelstate(int, int *); int pthread_setcanceltype(int, int *); ==== //depot/projects/trustedbsd/sebsd/include/unistd.h#4 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)unistd.h 8.12 (Berkeley) 4/27/95 - * $FreeBSD: src/include/unistd.h,v 1.68 2003/07/01 12:09:06 bde Exp $ + * $FreeBSD: src/include/unistd.h,v 1.69 2003/08/19 20:39:49 wollman Exp $ */ #ifndef _UNISTD_H_ @@ -404,7 +404,7 @@ int readlink(const char *, char *, int); #endif #if __POSIX_VISIBLE >= 200112 -int gethostname(char *, int /* socklen_t */); +int gethostname(char *, size_t); int setegid(gid_t); int seteuid(uid_t); #endif From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:27:38 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4DB1516A4C0; Wed, 22 Oct 2003 19:27:38 -0700 (PDT) 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 2047D16A4B3 for ; Wed, 22 Oct 2003 19:27:38 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4C2BA43FAF for ; Wed, 22 Oct 2003 19:27:36 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2RaXJ055445 for ; Wed, 22 Oct 2003 19:27:36 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2RZEV055433 for perforce@freebsd.org; Wed, 22 Oct 2003 19:27:35 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:27:35 -0700 (PDT) Message-Id: <200310230227.h9N2RZEV055433@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 Subject: PERFORCE change 40240 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:27:38 -0000 http://perforce.freebsd.org/chv.cgi?CH=40240 Change 40240 by rwatson@rwatson_paprika on 2003/10/22 19:27:33 Integrate trustedbsd_sebsd lib tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. library tree updates include substantial libalias improvements, lots of threading fixes, and a fair amount more. Affected files ... .. //depot/projects/trustedbsd/sebsd/lib/Makefile#5 integrate .. //depot/projects/trustedbsd/sebsd/lib/libalias/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libalias/alias.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libalias/alias.h#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libalias/alias_db.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libalias/alias_local.h#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libalias/alias_skinny.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libalias/libalias.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libatm/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/alpha/gen/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/alpha/gen/signalcontext.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/alpha/sys/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/alpha/sys/Ovfork.S#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/alpha/sys/fork.S#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/alpha/sys/pipe.S#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/alpha/sys/setlogin.S#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/amd64/gen/fabs.S#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/amd64/sys/Makefile.inc#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/amd64/sys/getcontext.S#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/amd64/sys/vfork.S#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/compat-43/sigvec.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/db/man/btree.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/db/man/dbm.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/db/man/dbopen.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/db/man/hash.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/db/man/recno.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/confstr.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/ctermid.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/devname.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/dlinfo.3#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/exec.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/fnmatch.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/fts.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/getcwd.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/getdomainname.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/getfsent.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/getgrent.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/gethostname.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/gethostname.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/getpwent.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/glob.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/msgctl.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/pmadvise.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/signal.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/sysconf.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/sysctl.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/tcsetattr.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/uname.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/gen/wordexp.3#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/i386/sys/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/i386/sys/getcontext.S#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/i386/sys/i386_get_ldt.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/ia64/gen/fpgetmask.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/ia64/gen/fpsetmask.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/ia64/sys/Makefile.inc#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/big5.5#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/btowc.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/ctype.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/gb18030.5#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/gbk.5#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/mblen.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/mbstowcs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/mbtowc.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/mskanji.5#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/multibyte.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/nl_langinfo.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/rune.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/table.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/wcstombs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/wctob.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/locale/wctomb.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/addr2ascii.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/ethers.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/getaddrinfo.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/getifaddrs.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/getnameinfo.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/if_indextoname.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/inet6_option_space.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/inet6_rthdr_space.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/inet_net_pton.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/resolver.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/posix1e/mac.c#5 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/posix1e/mac_free.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/posix1e/mac_get.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/posix1e/mac_is_present_np.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/posix1e/mac_prepare.3#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/posix1e/mac_set.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/posix1e/mac_text.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/powerpc/sys/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/regex/regex.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/rpc/publickey.5#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/rpc/rpc.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/rpc/rpc_clnt_create.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/rpc/rpc_svc_calls.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/rpc/rpc_svc_create.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sparc64/gen/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sparc64/gen/signalcontext.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/sparc64/sys/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdio/funopen.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdio/tmpnam.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdlib/abort.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdlib/exit.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdlib/getopt.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdlib/grantpt.3#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdlib/hcreate.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdlib/malloc.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdlib/qsort.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdlib/rand.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdlib/random.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdtime/ctime.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/string/bcmp.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/string/bcopy.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/string/bzero.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/string/ffs.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/string/index.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/string/strcasecmp.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/string/strchr.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/accept.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/acct.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/chmod.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/clock_gettime.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/getitimer.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/getlogin.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/getsockopt.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/gettimeofday.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/intro.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/ioctl.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/kqueue.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/ktrace.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/madvise.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/mincore.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/mlockall.2#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/mount.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/ntp_gettime.2#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/open.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/poll.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/ptrace.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/quotactl.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/read.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/reboot.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/recv.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/select.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/send.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/setgroups.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/sigaction.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/sigprocmask.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/socket.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/stat.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/sysarch.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/syscall.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/uuid/uuid.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/uuid/uuid_compare.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/uuid/uuid_create.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/uuid/uuid_create_nil.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/uuid/uuid_equal.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/uuid/uuid_from_string.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/uuid/uuid_hash.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/uuid/uuid_is_nil.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/uuid/uuid_to_string.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc_r/man/pthread_condattr.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc_r/man/pthread_once.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc_r/uthread/uthread_write.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libcalendar/calendar.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libcam/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libcam/cam_cdbparse.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libcompat/4.1/ftime.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libcompat/4.4/cuserid.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libcrypt/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libdevinfo/devinfo.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libdevstat/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libdevstat/devstat.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libdevstat/devstat.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libdisk/disk.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libdisk/libdisk.h#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libedit/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libedit/editline.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libexpat/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libfetch/fetch.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libfetch/ftp.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libgeom/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libipsec/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libipsec/ipsec_strerror.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libipx/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libkiconv/Makefile#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libkiconv/kiconv.3#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libkiconv/quirks.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libkiconv/quirks.h#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libkiconv/xlat16_iconv.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libkiconv/xlat16_sysctl.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libkvm/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libkvm/kvm_getprocs.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libkvm/kvm_proc.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libmd/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libmp/libmp.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libncurses/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpam/modules/pam_ssh/pam_ssh.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/alpha/Makefile.inc#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/alpha/alpha/context.S#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/alpha/alpha/enter_uts.S#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/alpha/alpha/pthread_md.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/alpha/include/atomic_ops.h#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/alpha/include/pthread_md.h#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/amd64/amd64/context.S#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/amd64/amd64/pthread_md.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/amd64/include/atomic_ops.h#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/amd64/include/pthread_md.h#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/i386/i386/thr_getcontext.S#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/i386/include/atomic_ops.h#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/i386/include/pthread_md.h#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/ia64/ia64/context.S#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/ia64/include/pthread_md.h#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/man/pthread_condattr.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/man/pthread_once.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/pthread.map#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/support/Makefile.inc#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/sys/lock.c#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/sys/lock.h#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/test/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_attr_setcreatesuspend_np.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_attr_setguardsize.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_attr_setinheritsched.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_attr_setscope.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_barrier.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_barrierattr.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_cancel.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_concurrency.c#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_cond.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_creat.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_create.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_exit.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_fork.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_info.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_init.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_kern.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_mutex.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_nanosleep.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_once.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_pause.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_printf.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_private.h#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_pspinlock.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_rtld.c#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_rwlock.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_sig.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_sigaction.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_sigmask.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_sigpending.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_sigprocmask.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_sigsuspend.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_sigwait.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_sleep.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_spec.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_stack.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_system.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_tcdrain.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_wait.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_wait4.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_waitpid.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_yield.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libradius/libradius.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libsbuf/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libstand/libstand.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libtacplus/libtacplus.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libthr/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libufs/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libusbhid/usbhid.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/realhostname.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/realhostname_sa.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libz/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/msun/Makefile#4 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/lib/Makefile#5 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.1 (Berkeley) 6/4/93 -# $FreeBSD: src/lib/Makefile,v 1.166 2003/07/24 18:30:24 markm Exp $ +# $FreeBSD: src/lib/Makefile,v 1.172 2003/09/26 20:26:20 fjoe Exp $ # To satisfy shared library or ELF linkage when only the libraries being # built are visible: @@ -23,13 +23,13 @@ SUBDIR= ${_csu} libcom_err libcrypt libkvm msun libmd \ libncurses libradius librpcsvc libsbuf libtacplus libutil libypclnt \ - ${_compat} libalias libatm ${_libbind} libbz2 libc ${_libc_r} \ + ${_compat} libalias ${_libatm} ${_libbind} libbz2 libc ${_libc_r} \ libcalendar libcam libcompat libdevinfo libdevstat ${_libdisk} \ libedit libexpat libfetch libform libftpio libgeom ${_libio} libipsec \ - libipx libisc libmenu ${_libmilter} ${_libmp} ${_libncp} \ + libipx libisc libkiconv libmenu ${_libmilter} ${_libmp} ${_libncp} \ libnetgraph libopie libpam libpanel libpcap ${_libpthread} \ libsebsd ${_libsm} ${_libsmb} ${_libsmdb} ${_libsmutil} \ - libstand libtelnet ${_libthr} libufs libugidfw libusbhid \ + libstand libtelnet ${_libthr} libufs libugidfw ${_libusbhid} \ ${_libvgl} libwrap libxpg4 liby libz .if exists(${.CURDIR}/csu/${MACHINE_ARCH}-elf) @@ -41,12 +41,16 @@ .endif # libc_r is obsolete on ia64. -.if ${MACHINE_ARCH} != "ia64" +.if ${MACHINE_ARCH} != "ia64" && ${MACHINE_ARCH} != "powerpc" .if !defined(NOLIBC_R) _libc_r= libc_r .endif .endif +.if !defined(NOATM) +_libatm= libatm +.endif + .if !defined(NO_BIND) _libbind= libbind .endif @@ -58,20 +62,15 @@ _libsmutil= libsmutil .endif +.if !defined(NO_USB) +_libusbhid= libusbhid +.endif + .if ${MACHINE_ARCH} == "i386" _compat= compat _libncp= libncp _libsmb= libsmb _libvgl= libvgl -.if !defined(NOLIBPTHREAD) -_libpthread= libpthread -.endif -.endif - -.if ${MACHINE_ARCH} == "ia64" -.if !defined(NOLIBPTHREAD) -_libpthread= libpthread -.endif .endif .if ${MACHINE_ARCH} == "alpha" @@ -84,6 +83,12 @@ _libsmb= libsmb .endif +.if ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "sparc64" +.if !defined(NOLIBPTHREAD) +_libpthread= libpthread +.endif +.endif + .if ${MACHINE_ARCH} != "amd64" && ${MACHINE_ARCH} != "powerpc" .if !defined(NOLIBTHR) _libthr= libthr ==== //depot/projects/trustedbsd/sebsd/lib/libalias/Makefile#4 (text+ko) ==== @@ -1,10 +1,11 @@ -# $FreeBSD: src/lib/libalias/Makefile,v 1.20 2003/04/20 18:38:59 obrien Exp $ +# $FreeBSD: src/lib/libalias/Makefile,v 1.23 2003/09/23 07:41:53 marcus Exp $ LIB= alias +SHLIBDIR?= /lib SHLIB_MAJOR= 4 MAN= libalias.3 SRCS= alias.c alias_cuseeme.c alias_db.c alias_ftp.c alias_irc.c \ - alias_nbt.c alias_pptp.c alias_proxy.c alias_smedia.c \ + alias_nbt.c alias_pptp.c alias_proxy.c alias_skinny.c alias_smedia.c \ alias_util.c INCS= alias.h ==== //depot/projects/trustedbsd/sebsd/lib/libalias/alias.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libalias/alias.c,v 1.37 2003/06/13 21:54:01 ru Exp $"); +__FBSDID("$FreeBSD: src/lib/libalias/alias.c,v 1.38 2003/09/23 07:41:53 marcus Exp $"); /* Alias.c provides supervisory control for the functions of the @@ -917,6 +917,9 @@ if (ntohs(tc->th_dport) == PPTP_CONTROL_PORT_NUMBER || ntohs(tc->th_sport) == PPTP_CONTROL_PORT_NUMBER) AliasHandlePptpIn(pip, link); + else if (skinnyPort != 0 && (ntohs(tc->th_dport) == skinnyPort + || ntohs(tc->th_sport) == skinnyPort)) + AliasHandleSkinny(pip, link); alias_address = GetAliasAddress(link); original_address = GetOriginalAddress(link); @@ -1098,6 +1101,9 @@ else if (ntohs(tc->th_dport) == PPTP_CONTROL_PORT_NUMBER || ntohs(tc->th_sport) == PPTP_CONTROL_PORT_NUMBER) AliasHandlePptpOut(pip, link); + else if (skinnyPort != 0 && (ntohs(tc->th_sport) == skinnyPort + || ntohs(tc->th_dport) == skinnyPort)) + AliasHandleSkinny(pip, link); /* Adjust TCP checksum since source port is being aliased */ /* and source address is being altered */ ==== //depot/projects/trustedbsd/sebsd/lib/libalias/alias.h#4 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libalias/alias.h,v 1.24 2003/06/01 23:15:00 ru Exp $ + * $FreeBSD: src/lib/libalias/alias.h,v 1.25 2003/09/23 07:41:53 marcus Exp $ */ /*- @@ -45,6 +45,7 @@ void PacketAliasInit(void); void PacketAliasSetAddress(struct in_addr _addr); void PacketAliasSetFWBase(unsigned int _base, unsigned int _num); +void PacketAliasSetSkinnyPort(unsigned int _port); unsigned int PacketAliasSetMode(unsigned int _flags, unsigned int _mask); void PacketAliasUninit(void); ==== //depot/projects/trustedbsd/sebsd/lib/libalias/alias_db.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libalias/alias_db.c,v 1.53 2003/06/01 23:15:00 ru Exp $"); +__FBSDID("$FreeBSD: src/lib/libalias/alias_db.c,v 1.55 2003/09/23 07:41:53 marcus Exp $"); /* Alias_db.c encapsulates all data structures used for storing @@ -398,6 +398,9 @@ /* flag. */ #endif +unsigned int skinnyPort = 0; /* TCP port used by the Skinny */ + /* protocol. */ + @@ -2732,7 +2735,7 @@ rule->cmd_len = (u_int32_t *)cmd - (u_int32_t *)rule->cmd; - return ((void *)cmd - buf); + return ((char *)cmd - (char *)buf); } #endif /* IPFW2 */ @@ -2948,3 +2951,8 @@ fireWallNumNums = num; #endif } + +void +PacketAliasSetSkinnyPort(unsigned int port) { + skinnyPort = port; +} ==== //depot/projects/trustedbsd/sebsd/lib/libalias/alias_local.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/libalias/alias_local.h,v 1.23 2002/07/01 11:19:40 brian Exp $ + * $FreeBSD: src/lib/libalias/alias_local.h,v 1.24 2003/09/23 07:41:53 marcus Exp $ */ /* @@ -74,6 +74,7 @@ /* Globals */ extern int packetAliasMode; +extern unsigned int skinnyPort; /* Prototypes */ @@ -212,6 +213,9 @@ void AliasHandleCUSeeMeOut(struct ip *_pip, struct alias_link *_link); void AliasHandleCUSeeMeIn(struct ip *_pip, struct in_addr _original_addr); +/* Skinny routines */ +void AliasHandleSkinny(struct ip *_pip, struct alias_link *_link); + /* Transparent proxy routines */ int ProxyCheck(struct ip *_pip, struct in_addr *_proxy_server_addr, u_short *_proxy_server_port); ==== //depot/projects/trustedbsd/sebsd/lib/libalias/libalias.3#4 (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/libalias/libalias.3,v 1.47 2003/06/13 21:39:22 ru Exp $ +.\" $FreeBSD: src/lib/libalias/libalias.3,v 1.49 2003/09/23 07:41:53 marcus Exp $ .\" .Dd April 13, 2000 .Dt LIBALIAS 3 @@ -162,7 +162,7 @@ .Fa mask are affected. The following mode bits are defined in -.Aq Pa alias.h : +.In alias.h : .Bl -tag -width indent .It Dv PKT_ALIAS_LOG Enables logging into @@ -265,6 +265,16 @@ flag). The range will be cleared for all rules on initialization. .Ed +.Pp +.Ft void +.Fn PacketAliasSkinnyPort "unsigned int port" +.Bd -ragged -offset indent +Set the TCP port used by the Skinny Station protocol. +Skinny is used by Cisco IP phones to communicate with +Cisco Call Managers to set up voice over IP calls. +If this is not set, Skinny aliasing will not be done. +The typical port used by Skinny is 2000. +.Ed .Sh PACKET HANDLING The packet handling functions are used to modify incoming (remote to local) and outgoing (local to remote) packets. @@ -378,7 +388,7 @@ or .Dv IPPROTO_UDP , as defined in -.Aq Pa netinet/in.h . +.In netinet/in.h . .Pp If .Fa local_addr ==== //depot/projects/trustedbsd/sebsd/lib/libatm/Makefile#4 (text+ko) ==== @@ -1,10 +1,7 @@ -# -# # =================================== # HARP | Host ATM Research Platform # =================================== # -# # This Host ATM Research Platform ("HARP") file (the "Software") is # made available by Network Computing Services, Inc. ("NetworkCS") # "AS IS". NetworkCS does not provide maintenance, improvements or @@ -23,11 +20,11 @@ # Copies of this Software may be made, however, the above copyright # notice must be reproduced on all copies. # -# @(#) $FreeBSD: src/lib/libatm/Makefile,v 1.7 2003/07/25 08:22:08 harti Exp $ -# -# +# @(#) $Id: Makefile,v 1.5 1998/07/10 16:01:58 jpt Exp $ +# $FreeBSD: src/lib/libatm/Makefile,v 1.9 2003/08/18 15:25:38 obrien Exp $ LIB= atm +SHLIBDIR?= /lib SRCS= atm_addr.c cache_key.c ioctl_subr.c ip_addr.c ip_checksum.c timer.c INCS= libatm.h ==== //depot/projects/trustedbsd/sebsd/lib/libc/Makefile#4 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.2 (Berkeley) 2/3/94 -# $FreeBSD: src/lib/libc/Makefile,v 1.41 2003/07/01 15:07:01 ru Exp $ +# $FreeBSD: src/lib/libc/Makefile,v 1.44 2003/08/19 23:01:46 wollman Exp $ # # All library objects contain FreeBSD revision strings by default; they may be # excluded as a space-saving measure. To produce a library that does @@ -9,7 +9,9 @@ # (for system call stubs) to CFLAGS below. -DSYSLIBC_SCCS affects just the # system call stubs. LIB=c +# If you bump SHLIB_MAJOR, remove kluge from gen/gethostname.c. SHLIB_MAJOR= 5 +SHLIBDIR?= /lib CFLAGS+=-I${.CURDIR}/include -I${.CURDIR}/../../include CFLAGS+=-I${.CURDIR}/${MACHINE_ARCH} CLEANFILES+=tags ==== //depot/projects/trustedbsd/sebsd/lib/libc/alpha/gen/Makefile.inc#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/lib/libc/alpha/gen/Makefile.inc,v 1.11 2002/11/18 09:50:54 ru Exp $ +# $FreeBSD: src/lib/libc/alpha/gen/Makefile.inc,v 1.12 2003/08/09 05:37:54 deischen Exp $ SRCS+= _setjmp.S fabs.S frexp.c infinity.c isinf.c ldexp.c modf.c setjmp.S SRCS+= flt_rounds.c fpgetmask.c fpgetround.c fpgetsticky.c fpsetmask.c \ @@ -8,7 +8,7 @@ SRCS+= __divqu.S __divq.S __divlu.S __divl.S SRCS+= __remqu.S __remq.S __remlu.S __reml.S SRCS+= rfork_thread.S -SRCS+= _ctx_start.S makecontext.c +SRCS+= _ctx_start.S makecontext.c signalcontext.c CLEANFILES+= __divqu.S __divq.S __divlu.S __divl.S CLEANFILES+= __remqu.S __remq.S __remlu.S __reml.S ==== //depot/projects/trustedbsd/sebsd/lib/libc/alpha/sys/Makefile.inc#2 (text+ko) ==== @@ -1,11 +1,11 @@ -# $FreeBSD: src/lib/libc/alpha/sys/Makefile.inc,v 1.11 2002/05/23 23:51:56 jake Exp $ +# $FreeBSD: src/lib/libc/alpha/sys/Makefile.inc,v 1.12 2003/08/11 07:14:06 bms Exp $ MDASM+= Ovfork.S brk.S cerror.S exect.S fork.S pipe.S ptrace.S \ sbrk.S setlogin.S sigreturn.S # Don't generate default code for these syscalls: NOASM= break.o exit.o ftruncate.o getdomainname.o getlogin.o \ - lseek.o mlockall.o mmap.o munlockall.o openbsd_poll.o pread.o \ + lseek.o mmap.o openbsd_poll.o pread.o \ pwrite.o setdomainname.o sstk.o truncate.o uname.o vfork.o yield.o PSEUDO= _getlogin.o _exit.o ==== //depot/projects/trustedbsd/sebsd/lib/libc/alpha/sys/Ovfork.S#4 (text+ko) ==== @@ -28,11 +28,11 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/Ovfork.S,v 1.4 2003/01/19 00:17:03 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/Ovfork.S,v 1.5 2003/08/16 18:59:08 marcel Exp $"); #include "SYS.h" SYSCALL(vfork) cmovne a4, zero, v0 /* a4 (rv[1]) != 0, child */ RET -END(vfork) +END(__sys_vfork) ==== //depot/projects/trustedbsd/sebsd/lib/libc/alpha/sys/fork.S#4 (text+ko) ==== @@ -28,11 +28,11 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/fork.S,v 1.4 2003/01/19 00:17:03 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/fork.S,v 1.5 2003/08/16 18:59:08 marcel Exp $"); #include "SYS.h" SYSCALL(fork) cmovne a4, zero, v0 /* a4 (rv[1]) != 0, child */ RET -END(fork) +END(__sys_fork) ==== //depot/projects/trustedbsd/sebsd/lib/libc/alpha/sys/pipe.S#4 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/pipe.S,v 1.4 2003/01/19 00:17:03 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/pipe.S,v 1.5 2003/08/16 18:59:08 marcel Exp $"); #include "SYS.h" @@ -37,4 +37,4 @@ stl a4, 4(a0) mov zero, v0 RET -END(pipe) +END(__sys_pipe) ==== //depot/projects/trustedbsd/sebsd/lib/libc/alpha/sys/setlogin.S#4 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/setlogin.S,v 1.3 2003/01/19 00:17:03 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/alpha/sys/setlogin.S,v 1.4 2003/08/16 18:59:08 marcel Exp $"); #include "SYS.h" @@ -37,4 +37,4 @@ SYSCALL(setlogin) stl zero, _logname_valid /* clear it */ RET -END(setlogin) +END(__sys_setlogin) ==== //depot/projects/trustedbsd/sebsd/lib/libc/amd64/gen/fabs.S#3 (text+ko) ==== @@ -2,7 +2,7 @@ #if defined(LIBC_SCCS) RCSID("$NetBSD: fabs.S,v 1.4 1997/07/16 14:37:16 christos Exp $") #endif -__FBSDID("$FreeBSD: src/lib/libc/amd64/gen/fabs.S,v 1.1 2003/04/30 16:21:03 obrien Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/amd64/gen/fabs.S,v 1.2 2003/09/26 01:49:48 peter Exp $"); /* * Ok, this sucks. Is there really no way to push an xmm register onto @@ -13,6 +13,6 @@ movsd %xmm0, -8(%rsp) fldl -8(%rsp) fabs - fstp -8(%rsp) + fstpl -8(%rsp) movsd -8(%rsp),%xmm0 ret ==== //depot/projects/trustedbsd/sebsd/lib/libc/amd64/sys/Makefile.inc#3 (text+ko) ==== @@ -1,12 +1,12 @@ # from: Makefile.inc,v 1.1 1993/09/03 19:04:23 jtc Exp -# $FreeBSD: src/lib/libc/amd64/sys/Makefile.inc,v 1.26 2003/04/30 18:17:07 peter Exp $ +# $FreeBSD: src/lib/libc/amd64/sys/Makefile.inc,v 1.28 2003/09/04 00:29:12 peter Exp $ -MDASM= vfork.S brk.S cerror.S exect.S pipe.S ptrace.S reboot.S sbrk.S \ - setlogin.S sigreturn.S +MDASM= vfork.S brk.S cerror.S exect.S getcontext.S pipe.S ptrace.S \ + reboot.S sbrk.S setlogin.S sigreturn.S # Don't generate default code for these syscalls: NOASM= break.o exit.o ftruncate.o getdomainname.o getlogin.o \ - lseek.o mlockall.o mmap.o munlockall.o openbsd_poll.o pread.o \ + lseek.o mmap.o openbsd_poll.o pread.o \ pwrite.o setdomainname.o sstk.o truncate.o uname.o vfork.o yield.o PSEUDO= _getlogin.o _exit.o ==== //depot/projects/trustedbsd/sebsd/lib/libc/amd64/sys/vfork.S#3 (text+ko) ==== @@ -38,7 +38,7 @@ .asciz "@(#)Ovfork.s 5.1 (Berkeley) 4/23/90" #endif /* SYSLIBC_SCCS and not lint */ #include -__FBSDID("$FreeBSD: src/lib/libc/amd64/sys/vfork.S,v 1.21 2003/05/24 17:35:23 peter Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/amd64/sys/vfork.S,v 1.22 2003/09/04 00:26:40 peter Exp $"); #include "SYS.h" @@ -58,5 +58,5 @@ movq PIC_GOT(HIDENAME(cerror)),%rdx jmp *%rdx #else - jmp HIDENAME(cerror) + jmp HIDENAME(cerror) #endif ==== //depot/projects/trustedbsd/sebsd/lib/libc/compat-43/sigvec.2#4 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)sigvec.2 8.2 (Berkeley) 4/19/94 -.\" $FreeBSD: src/lib/libc/compat-43/sigvec.2,v 1.22 2003/02/06 11:04:46 charnier Exp $ +.\" $FreeBSD: src/lib/libc/compat-43/sigvec.2,v 1.23 2003/09/08 19:57:13 ru Exp $ .\" .Dd April 19, 1994 .Dt SIGVEC 2 @@ -139,7 +139,7 @@ .Pp The following is a list of all signals with names as in the include file -.Aq Pa signal.h : +.In signal.h : .Bl -column SIGVTALARMXX "create core imagexxx" .It Sy "NAME Default Action Description" .It Dv SIGHUP No " terminate process" " terminal line hangup" @@ -332,7 +332,7 @@ is a pointer to the .Fa sigcontext structure (defined in -.Aq Pa signal.h ) , +.In signal.h ) , used to restore the context from before the signal. .Sh BUGS This manual page is still confusing. ==== //depot/projects/trustedbsd/sebsd/lib/libc/db/man/btree.3#4 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)btree.3 8.4 (Berkeley) 8/18/94 -.\" $FreeBSD: src/lib/libc/db/man/btree.3,v 1.6 2002/12/19 09:40:21 ru Exp $ +.\" $FreeBSD: src/lib/libc/db/man/btree.3,v 1.7 2003/09/08 19:57:13 ru Exp $ .\" .Dd August 18, 1994 .Dt BTREE 3 @@ -64,7 +64,7 @@ access method specific data structure provided to .Fn dbopen is defined in the -.Aq Pa db.h +.In db.h include file as follows: .Bd -literal typedef struct { ==== //depot/projects/trustedbsd/sebsd/lib/libc/db/man/dbm.3#4 (text+ko) ==== @@ -13,7 +13,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/lib/libc/db/man/dbm.3,v 1.7 2002/12/19 09:40:21 ru Exp $ +.\" $FreeBSD: src/lib/libc/db/man/dbm.3,v 1.8 2003/09/08 19:57:13 ru Exp $ .\" .\" Note: The date here should be updated whenever a non-trivial .\" change is made to the manual page. @@ -65,7 +65,7 @@ .Pp .Vt datum is declared in -.Aq Pa ndbm.h : +.In ndbm.h : .Bd -literal typedef struct { char *dptr; ==== //depot/projects/trustedbsd/sebsd/lib/libc/db/man/dbopen.3#4 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)dbopen.3 8.5 (Berkeley) 1/2/94 -.\" $FreeBSD: src/lib/libc/db/man/dbopen.3,v 1.8 2002/12/19 09:40:21 ru Exp $ +.\" $FreeBSD: src/lib/libc/db/man/dbopen.3,v 1.9 2003/09/08 19:57:13 ru Exp $ .\" .Dd January 2, 1994 .Dt DBOPEN 3 @@ -119,7 +119,7 @@ argument is of type .Ft DBTYPE (as defined in the -.Aq Pa db.h +.In db.h include file) and may be set to .Dv DB_BTREE , DB_HASH @@ -148,7 +148,7 @@ The .Ft DB structure is defined in the -.Aq Pa db.h +.In db.h include file, and contains at least the following fields: .Bd -literal ==== //depot/projects/trustedbsd/sebsd/lib/libc/db/man/hash.3#4 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)hash.3 8.6 (Berkeley) 8/18/94 -.\" $FreeBSD: src/lib/libc/db/man/hash.3,v 1.7 2002/12/19 09:40:21 ru Exp $ +.\" $FreeBSD: src/lib/libc/db/man/hash.3,v 1.8 2003/09/08 19:57:13 ru Exp $ .\" .Dd August 18, 1994 .Dt HASH 3 @@ -61,7 +61,7 @@ The access method specific data structure provided to .Fn dbopen is defined in the -.Aq Pa db.h +.In db.h include file as follows: .Bd -literal typedef struct { ==== //depot/projects/trustedbsd/sebsd/lib/libc/db/man/recno.3#2 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)recno.3 8.5 (Berkeley) 8/18/94 -.\" $FreeBSD: src/lib/libc/db/man/recno.3,v 1.6 2001/10/01 16:08:50 ru Exp $ +.\" $FreeBSD: src/lib/libc/db/man/recno.3,v 1.7 2003/09/08 19:57:13 ru Exp $ .\" .Dd August 18, 1994 .Dt RECNO 3 @@ -66,7 +66,7 @@ access method specific data structure provided to .Fn dbopen is defined in the -.Aq Pa db.h +.In db.h include file as follows: .Bd -literal typedef struct { @@ -179,7 +179,7 @@ field of the key should be a pointer to a memory location of type .Ft recno_t , as defined in the -.Aq Pa db.h +.In db.h include file. This type is normally the largest unsigned integral type available to the implementation. ==== //depot/projects/trustedbsd/sebsd/lib/libc/gen/Makefile.inc#4 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile.inc 8.6 (Berkeley) 5/4/95 -# $FreeBSD: src/lib/libc/gen/Makefile.inc,v 1.106 2003/04/17 14:14:22 nectar Exp $ +# $FreeBSD: src/lib/libc/gen/Makefile.inc,v 1.107 2003/08/09 03:23:24 bms Exp $ # machine-independent gen sources .PATH: ${.CURDIR}/${MACHINE_ARCH}/gen ${.CURDIR}/gen @@ -19,7 +19,8 @@ initgroups.c isatty.c jrand48.c lcong48.c \ lockf.c lrand48.c mrand48.c nice.c \ nlist.c nrand48.c ntp_gettime.c opendir.c \ - pause.c popen.c posixshm.c pselect.c psignal.c pw_scan.c pwcache.c \ + pause.c pmadvise.c popen.c posixshm.c pselect.c \ + psignal.c pw_scan.c pwcache.c \ raise.c readdir.c readpassphrase.c rewinddir.c \ scandir.c seed48.c seekdir.c semctl.c \ setdomainname.c sethostname.c setjmperr.c setmode.c \ ==== //depot/projects/trustedbsd/sebsd/lib/libc/gen/confstr.3#2 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)confstr.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/gen/confstr.3,v 1.12 2001/12/08 19:06:23 ru Exp $ +.\" $FreeBSD: src/lib/libc/gen/confstr.3,v 1.13 2003/09/08 19:57:14 ru Exp $ .\" .Dd June 18, 2001 .Dt CONFSTR 3 @@ -62,7 +62,7 @@ .Fa name argument specifies the system variable to be queried. Symbolic constants for each name value are found in the include file -.Aq Pa unistd.h . +.In unistd.h . The .Fa len argument specifies the size of the buffer referenced by the ==== //depot/projects/trustedbsd/sebsd/lib/libc/gen/ctermid.3#4 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)ctermid.3 8.1 (Berkeley) 6/4/93 -.\" $FreeBSD: src/lib/libc/gen/ctermid.3,v 1.10 2002/12/18 13:33:02 ru Exp $ +.\" $FreeBSD: src/lib/libc/gen/ctermid.3,v 1.11 2003/09/08 19:57:14 ru Exp $ .\" .Dd June 4, 1993 .Dt CTERMID 3 @@ -65,7 +65,7 @@ .Dv L_ctermid (as defined in the include file -.Aq Pa stdio.h ) +.In stdio.h ) bytes long. .Pp The ==== //depot/projects/trustedbsd/sebsd/lib/libc/gen/devname.3#4 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)devname.3 8.2 (Berkeley) 4/29/95 -.\" $FreeBSD: src/lib/libc/gen/devname.3,v 1.16 2003/06/20 09:52:27 phk Exp $ +.\" $FreeBSD: src/lib/libc/gen/devname.3,v 1.17 2003/09/12 21:54:10 ru Exp $ .\" .Dd July 18, 1999 >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:29:40 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AEB1216A4C0; Wed, 22 Oct 2003 19:29:40 -0700 (PDT) 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 88FDF16A4B3 for ; Wed, 22 Oct 2003 19:29:40 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 76D4D43FCB for ; Wed, 22 Oct 2003 19:29:39 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2TdXJ056654 for ; Wed, 22 Oct 2003 19:29:39 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2Tcwi056651 for perforce@freebsd.org; Wed, 22 Oct 2003 19:29:38 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:29:38 -0700 (PDT) Message-Id: <200310230229.h9N2Tcwi056651@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 Subject: PERFORCE change 40241 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:29:41 -0000 http://perforce.freebsd.org/chv.cgi?CH=40241 Change 40241 by rwatson@rwatson_paprika on 2003/10/22 19:29:24 libexec updates to 39070 from trustedbsd_mac. Includes libmap support to run-time plug libraries (such as threading libraries). Affected files ... .. //depot/projects/trustedbsd/sebsd/libexec/ftpd/ftpd.8#4 integrate .. //depot/projects/trustedbsd/sebsd/libexec/ftpd/ftpd.c#4 integrate .. //depot/projects/trustedbsd/sebsd/libexec/ftpd/popen.c#2 integrate .. //depot/projects/trustedbsd/sebsd/libexec/lukemftpd/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/libexec/lukemftpd/nbsd2fbsd.h#3 integrate .. //depot/projects/trustedbsd/sebsd/libexec/rpc.rquotad/rquotad.c#2 integrate .. //depot/projects/trustedbsd/sebsd/libexec/rtld-elf/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/libexec/rtld-elf/libmap.c#3 integrate .. //depot/projects/trustedbsd/sebsd/libexec/rtld-elf/libmap.h#3 integrate .. //depot/projects/trustedbsd/sebsd/libexec/rtld-elf/malloc.c#4 integrate .. //depot/projects/trustedbsd/sebsd/libexec/rtld-elf/rtld.c#4 integrate .. //depot/projects/trustedbsd/sebsd/libexec/rtld-elf/rtld.h#4 integrate .. //depot/projects/trustedbsd/sebsd/libexec/talkd/talkd.8#2 integrate .. //depot/projects/trustedbsd/sebsd/libexec/talkd/talkd.c#4 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/libexec/ftpd/ftpd.8#4 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)ftpd.8 8.2 (Berkeley) 4/19/94 -.\" $FreeBSD: src/libexec/ftpd/ftpd.8,v 1.64 2003/06/08 12:39:17 charnier Exp $ +.\" $FreeBSD: src/libexec/ftpd/ftpd.8,v 1.66 2003/09/14 16:42:46 ume Exp $ .\" .Dd January 27, 2000 .Dt FTPD 8 @@ -68,16 +68,8 @@ .It Fl 4 When .Fl D -is specified, accept IPv4 connections. -When -.Fl 6 -is also specified, accept IPv4 connection via -.Dv AF_INET6 -socket. -When -.Fl 6 -is not specified, accept IPv4 connection via -.Dv AF_INET +is specified, accept connections via +.Dv AF_INET4 socket. .It Fl 6 When @@ -204,6 +196,8 @@ Refer to .Xr umask 2 for details. +This option may be overridden by +.Xr login.conf 5 . .It Fl v A synonym for .Fl d . ==== //depot/projects/trustedbsd/sebsd/libexec/ftpd/ftpd.c#4 (text+ko) ==== @@ -44,7 +44,7 @@ static char sccsid[] = "@(#)ftpd.c 8.4 (Berkeley) 4/16/94"; #endif static const char rcsid[] = - "$FreeBSD: src/libexec/ftpd/ftpd.c,v 1.145 2003/07/09 12:46:24 yar Exp $"; + "$FreeBSD: src/libexec/ftpd/ftpd.c,v 1.146 2003/09/14 16:42:46 ume Exp $"; #endif /* not lint */ /* @@ -106,7 +106,6 @@ extern off_t restart_point; extern char cbuf[]; -union sockunion server_addr; union sockunion ctrl_addr; union sockunion data_source; union sockunion data_dest; @@ -258,6 +257,7 @@ static void reapchild(int); static void logxfer(char *, off_t, time_t); static char *doublequote(char *); +static int *socksetup(int, char *, const char *); static char * curdir(void) @@ -282,7 +282,6 @@ char *bindname = NULL; const char *bindport = "ftp"; int family = AF_UNSPEC; - int enable_v4 = 0; struct sigaction sa; tzset(); /* in case no timezone database in ~ftp */ @@ -304,13 +303,11 @@ "46a:AdDEhlmMoOp:P:rRSt:T:u:UvW")) != -1) { switch (ch) { case '4': - enable_v4 = 1; - if (family == AF_UNSPEC) - family = AF_INET; + family = (family == AF_INET6) ? AF_UNSPEC : AF_INET; break; case '6': - family = AF_INET6; + family = (family == AF_INET) ? AF_UNSPEC : AF_INET6; break; case 'a': @@ -430,8 +427,9 @@ openlog("ftpd", LOG_PID | LOG_NDELAY, LOG_FTP); if (daemon_mode) { - int ctl_sock, fd; - struct addrinfo hints, *res; + int *ctl_sock, fd, maxfd = -1, nfds, i; + fd_set defreadfds, readfds; + pid_t pid; /* * Detach from parent. @@ -442,61 +440,26 @@ } sa.sa_handler = reapchild; (void)sigaction(SIGCHLD, &sa, NULL); - /* init bind_sa */ - memset(&hints, 0, sizeof(hints)); - hints.ai_family = family == AF_UNSPEC ? AF_INET : family; - hints.ai_socktype = SOCK_STREAM; - hints.ai_protocol = 0; - hints.ai_flags = AI_PASSIVE; - error = getaddrinfo(bindname, bindport, &hints, &res); - if (error) { - if (family == AF_UNSPEC) { - hints.ai_family = AF_UNSPEC; - error = getaddrinfo(bindname, bindport, &hints, - &res); - } - } - if (error) { - syslog(LOG_ERR, "%s", gai_strerror(error)); - if (error == EAI_SYSTEM) - syslog(LOG_ERR, "%s", strerror(errno)); - exit(1); - } - if (res->ai_addr == NULL) { - syslog(LOG_ERR, "-a %s: getaddrinfo failed", hostname); - exit(1); - } else - family = res->ai_addr->sa_family; /* * Open a socket, bind it to the FTP port, and start * listening. */ - ctl_sock = socket(family, SOCK_STREAM, 0); - if (ctl_sock < 0) { - syslog(LOG_ERR, "control socket: %m"); + ctl_sock = socksetup(family, bindname, bindport); + if (ctl_sock == NULL) exit(1); + + FD_ZERO(&defreadfds); + for (i = 1; i <= *ctl_sock; i++) { + FD_SET(ctl_sock[i], &defreadfds); + if (listen(ctl_sock[i], 32) < 0) { + syslog(LOG_ERR, "control listen: %m"); + exit(1); + } + if (maxfd < ctl_sock[i]) + maxfd = ctl_sock[i]; } - if (setsockopt(ctl_sock, SOL_SOCKET, SO_REUSEADDR, - &on, sizeof(on)) < 0) - syslog(LOG_WARNING, - "control setsockopt (SO_REUSEADDR): %m"); - if (family == AF_INET6 && enable_v4 == 0) { - if (setsockopt(ctl_sock, IPPROTO_IPV6, IPV6_V6ONLY, - &on, sizeof (on)) < 0) - syslog(LOG_WARNING, - "control setsockopt (IPV6_V6ONLY): %m"); - } - memcpy(&server_addr, res->ai_addr, res->ai_addr->sa_len); - if (bind(ctl_sock, (struct sockaddr *)&server_addr, - server_addr.su_len) < 0) { - syslog(LOG_ERR, "control bind: %m"); - exit(1); - } - if (listen(ctl_sock, 32) < 0) { - syslog(LOG_ERR, "control listen: %m"); - exit(1); - } + /* * Atomically write process ID */ @@ -524,16 +487,31 @@ * children to handle them. */ while (1) { - addrlen = server_addr.su_len; - fd = accept(ctl_sock, (struct sockaddr *)&his_addr, &addrlen); - if (fork() == 0) { - /* child */ - (void) dup2(fd, 0); - (void) dup2(fd, 1); - close(ctl_sock); + FD_COPY(&defreadfds, &readfds); + nfds = select(maxfd + 1, &readfds, NULL, NULL, 0); + if (nfds <= 0) { + if (nfds < 0 && errno != EINTR) + syslog(LOG_WARNING, "select: %m"); + continue; + } + + pid = -1; + for (i = 1; i <= *ctl_sock; i++) + if (FD_ISSET(ctl_sock[i], &readfds)) { + addrlen = sizeof(his_addr); + fd = accept(ctl_sock[i], + (struct sockaddr *)&his_addr, + &addrlen); + if ((pid = fork()) == 0) { + /* child */ + (void) dup2(fd, 0); + (void) dup2(fd, 1); + close(ctl_sock[i]); + } else + close(fd); + } + if (pid == 0) break; - } - close(fd); } } else { addrlen = sizeof(his_addr); @@ -3162,3 +3140,73 @@ return (s2); } + +/* setup server socket for specified address family */ +/* if af is PF_UNSPEC more than one socket may be returned */ +/* the returned list is dynamically allocated, so caller needs to free it */ +static int * +socksetup(int af, char *bindname, const char *bindport) +{ + struct addrinfo hints, *res, *r; + int error, maxs, *s, *socks; + const int on = 1; + + memset(&hints, 0, sizeof(hints)); + hints.ai_flags = AI_PASSIVE; + hints.ai_family = af; + hints.ai_socktype = SOCK_STREAM; + error = getaddrinfo(bindname, bindport, &hints, &res); + if (error) { + syslog(LOG_ERR, "%s", gai_strerror(error)); + if (error == EAI_SYSTEM) + syslog(LOG_ERR, "%s", strerror(errno)); + return NULL; + } + + /* Count max number of sockets we may open */ + for (maxs = 0, r = res; r; r = r->ai_next, maxs++) + ; + socks = malloc((maxs + 1) * sizeof(int)); + if (!socks) { + freeaddrinfo(res); + syslog(LOG_ERR, "couldn't allocate memory for sockets"); + return NULL; + } + + *socks = 0; /* num of sockets counter at start of array */ + s = socks + 1; + for (r = res; r; r = r->ai_next) { + *s = socket(r->ai_family, r->ai_socktype, r->ai_protocol); + if (*s < 0) { + syslog(LOG_DEBUG, "control socket: %m"); + continue; + } + if (setsockopt(*s, SOL_SOCKET, SO_REUSEADDR, + &on, sizeof(on)) < 0) + syslog(LOG_WARNING, + "control setsockopt (SO_REUSEADDR): %m"); + if (r->ai_family == AF_INET6) { + if (setsockopt(*s, IPPROTO_IPV6, IPV6_V6ONLY, + &on, sizeof(on)) < 0) + syslog(LOG_WARNING, + "control setsockopt (IPV6_V6ONLY): %m"); + } + if (bind(*s, r->ai_addr, r->ai_addrlen) < 0) { + syslog(LOG_DEBUG, "control bind: %m"); + close(*s); + continue; + } + (*socks)++; + s++; + } + + if (res) + freeaddrinfo(res); + + if (*socks == 0) { + syslog(LOG_ERR, "control socket: Couldn't bind to any socket"); + free(socks); + return NULL; + } + return(socks); +} ==== //depot/projects/trustedbsd/sebsd/libexec/ftpd/popen.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ static char sccsid[] = "@(#)popen.c 8.3 (Berkeley) 4/6/94"; #endif static const char rcsid[] = - "$FreeBSD: src/libexec/ftpd/popen.c,v 1.23 2002/07/17 05:47:49 mikeh Exp $"; + "$FreeBSD: src/libexec/ftpd/popen.c,v 1.24 2003/09/01 04:12:18 kan Exp $"; #endif /* not lint */ #include @@ -58,7 +58,6 @@ #include "pathnames.h" #include #include -#include #define MAXUSRARGS 100 #define MAXGLOBARGS 1000 ==== //depot/projects/trustedbsd/sebsd/libexec/lukemftpd/Makefile#4 (text+ko) ==== @@ -1,5 +1,5 @@ # @(#)Makefile 8.2 (Berkeley) 4/4/94 -# $FreeBSD: src/libexec/lukemftpd/Makefile,v 1.11 2003/06/14 19:32:51 obrien Exp $ +# $FreeBSD: src/libexec/lukemftpd/Makefile,v 1.13 2003/09/10 19:03:48 obrien Exp $ LUKEMFTPD= ${.CURDIR}/../../contrib/lukemftpd .PATH: ${LUKEMFTPD}/src ${LUKEMFTPD}/libnetbsd @@ -13,7 +13,7 @@ WFORMAT= 0 CFLAGS+= -include nbsd2fbsd.h CFLAGS+= -I${.CURDIR} -I${LUKEMFTPD} -I${LUKEMFTPD}/src -CFLAGS+= -I${.CURDIR}/../..//lib/libc/stdtime +CFLAGS+= -I${.CURDIR}/../../lib/libc/stdtime YFLAGS= LDADD= -lcrypt -lutil @@ -43,3 +43,5 @@ CLEANFILES+= lukemftpd.8 .include + +${OBJS}: ${.CURDIR}/nbsd2fbsd.h ==== //depot/projects/trustedbsd/sebsd/libexec/lukemftpd/nbsd2fbsd.h#3 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/libexec/lukemftpd/nbsd2fbsd.h,v 1.3 2003/01/06 04:42:20 obrien Exp $ */ +/* $FreeBSD: src/libexec/lukemftpd/nbsd2fbsd.h,v 1.4 2003/09/11 03:28:21 obrien Exp $ */ /* XXX: Depend on our system headers protecting against multiple includes. */ #include @@ -15,3 +15,10 @@ #endif long long strsuftollx(const char *, const char *, long long, long long, char *, size_t); + +/* + * IEEE Std 1003.1c-95, adopted in X/Open CAE Specification Issue 5 Version 2 + */ +#if __POSIX_VISIBLE >= 199506 || __XSI_VISIBLE >= 500 +#define LOGIN_NAME_MAX MAXLOGNAME /* max login name length (incl. NUL) */ +#endif ==== //depot/projects/trustedbsd/sebsd/libexec/rpc.rquotad/rquotad.c#2 (text+ko) ==== @@ -6,7 +6,7 @@ #ifndef lint static const char rcsid[] = - "$FreeBSD: src/libexec/rpc.rquotad/rquotad.c,v 1.7 2002/07/15 18:51:57 alfred Exp $"; + "$FreeBSD: src/libexec/rpc.rquotad/rquotad.c,v 1.8 2003/09/01 04:12:18 kan Exp $"; #endif /* not lint */ #include @@ -28,7 +28,6 @@ #include #include -#include #include #include ==== //depot/projects/trustedbsd/sebsd/libexec/rtld-elf/Makefile#4 (text+ko) ==== @@ -1,26 +1,19 @@ -# $FreeBSD: src/libexec/rtld-elf/Makefile,v 1.20 2003/06/04 05:42:04 obrien Exp $ +# $FreeBSD: src/libexec/rtld-elf/Makefile,v 1.25 2003/09/13 21:50:35 mdodd Exp $ PROG= ld-elf.so.1 SRCS= rtld_start.S rtld.c rtld_lock.c map_object.c malloc.c \ - xmalloc.c debug.c reloc.c + xmalloc.c debug.c reloc.c libmap.c MAN= rtld.1 CSTD?= gnu99 CFLAGS+= -Wall -DFREEBSD_ELF -DIN_RTLD CFLAGS+= -I${.CURDIR}/${MACHINE_ARCH} -I${.CURDIR} LDFLAGS+= -nostdlib -e .rtld_start INSTALLFLAGS= -fschg -C -b +BINDIR= /libexec +SYMLINKS= ${BINDIR}/${PROG} /usr/libexec/${PROG} MLINKS= rtld.1 ld-elf.so.1.1 \ rtld.1 ld.so.1 -# -# To enable the libmap.conf functionality please -# add 'WITH_LIBMAP=yes' to /etc/make.conf, recompile -# and reinstall rtld-elf. -.ifdef WITH_LIBMAP -CFLAGS+= -DWITH_LIBMAP -SRCS+= libmap.c -.endif - .if exists(${.CURDIR}/${MACHINE_ARCH}/Makefile.inc) .include "${.CURDIR}/${MACHINE_ARCH}/Makefile.inc" .endif @@ -50,6 +43,11 @@ dyn_hack.so: ${CC} -shared -nostdlib -o dyn_hack.so -x c /dev/null +# Since moving rtld-elf to /libexec, we need to create a symlink. +# Fixup the existing binary that's there so we can symlink over it. +beforeinstall: + -chflags noschg ${DESTDIR}/usr/libexec/${PROG} + .PATH: ${.CURDIR}/${MACHINE_ARCH} .include ==== //depot/projects/trustedbsd/sebsd/libexec/rtld-elf/libmap.c#3 (text+ko) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/libexec/rtld-elf/libmap.c,v 1.8 2003/06/18 05:31:08 mdodd Exp $ + * $FreeBSD: src/libexec/rtld-elf/libmap.c,v 1.9 2003/09/13 21:43:08 mdodd Exp $ */ #include @@ -41,7 +41,7 @@ #define iseol(c) (((c) == '#') || ((c) == '\0') || \ ((c) == '\n') || ((c) == '\r')) -void +int lm_init (void) { FILE *fp; @@ -55,7 +55,7 @@ TAILQ_INIT(&lmp_head); if ((fp = fopen(_PATH_LIBMAP_CONF, "r")) == NULL) - return; + return (1); p = NULL; while ((cp = fgets(line, MAXPATHLEN + 1, fp)) != NULL) { @@ -128,7 +128,7 @@ lm_add(p, f, t); } fclose(fp); - return; + return (0); } static void ==== //depot/projects/trustedbsd/sebsd/libexec/rtld-elf/libmap.h#3 (text+ko) ==== @@ -1,7 +1,7 @@ /* - * $FreeBSD: src/libexec/rtld-elf/libmap.h,v 1.1 2003/04/07 16:21:25 mdodd Exp $ + * $FreeBSD: src/libexec/rtld-elf/libmap.h,v 1.2 2003/09/13 21:43:08 mdodd Exp $ */ -void lm_init (void); +int lm_init (void); void lm_fini (void); char * lm_find (const char *, const char *); ==== //depot/projects/trustedbsd/sebsd/libexec/rtld-elf/malloc.c#4 (text+ko) ==== @@ -33,7 +33,7 @@ #if defined(LIBC_SCCS) && !defined(lint) /*static char *sccsid = "from: @(#)malloc.c 5.11 (Berkeley) 2/23/91";*/ -static char *rcsid = "$FreeBSD: src/libexec/rtld-elf/malloc.c,v 1.9 2003/05/04 00:56:00 obrien Exp $"; +static char *rcsid = "$FreeBSD: src/libexec/rtld-elf/malloc.c,v 1.10 2003/08/22 02:22:59 imp Exp $"; #endif /* LIBC_SCCS and not lint */ /* @@ -51,10 +51,10 @@ #include #include #include +#include #include #include #include -#include #include #include #include ==== //depot/projects/trustedbsd/sebsd/libexec/rtld-elf/rtld.c#4 (text+ko) ==== @@ -23,7 +23,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/libexec/rtld-elf/rtld.c,v 1.85 2003/06/19 03:55:38 mdodd Exp $ + * $FreeBSD: src/libexec/rtld-elf/rtld.c,v 1.89 2003/09/13 21:50:36 mdodd Exp $ */ /* @@ -52,12 +52,10 @@ #include "debug.h" #include "rtld.h" -#ifdef WITH_LIBMAP #include "libmap.h" -#endif #define END_SYM "_end" -#define PATH_RTLD "/usr/libexec/ld-elf.so.1" +#define PATH_RTLD "/libexec/ld-elf.so.1" /* Types. */ typedef void (*func_ptr_type)(); @@ -340,10 +338,8 @@ sym_zero.st_info = ELF_ST_INFO(STB_GLOBAL, STT_NOTYPE); sym_zero.st_shndx = SHN_UNDEF; -#ifdef WITH_LIBMAP if (!libmap_disable) - lm_init(); -#endif + libmap_disable = (bool)lm_init(); dbg("loading LD_PRELOAD libraries"); if (load_preload_objects() == -1) @@ -807,7 +803,7 @@ * rpath in the referencing file * LD_LIBRARY_PATH * ldconfig hints - * /usr/lib + * /lib:/usr/lib */ static char * find_library(const char *xname, const Obj_Entry *refobj) @@ -824,10 +820,8 @@ return xstrdup(xname); } -#ifdef WITH_LIBMAP if (libmap_disable || (refobj == NULL) || (name = lm_find(refobj->path, xname)) == NULL) -#endif name = (char *)xname; dbg(" Searching for \"%s\"", name); @@ -1464,10 +1458,8 @@ obj->refcount = 0; objlist_call_fini(&list_fini); /* No need to remove the items from the list, since we are exiting. */ -#ifdef WITH_LIBMAP if (!libmap_disable) lm_fini(); -#endif } static void * ==== //depot/projects/trustedbsd/sebsd/libexec/rtld-elf/rtld.h#4 (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/libexec/rtld-elf/rtld.h,v 1.31 2003/06/19 03:55:38 mdodd Exp $ + * $FreeBSD: src/libexec/rtld-elf/rtld.h,v 1.32 2003/08/17 07:55:17 gordon Exp $ */ #ifndef RTLD_H /* { */ @@ -40,7 +40,7 @@ #include "rtld_machdep.h" #ifndef STANDARD_LIBRARY_PATH -#define STANDARD_LIBRARY_PATH "/usr/lib" +#define STANDARD_LIBRARY_PATH "/lib:/usr/lib" #endif #define NEW(type) ((type *) xmalloc(sizeof(type))) ==== //depot/projects/trustedbsd/sebsd/libexec/talkd/talkd.8#2 (text+ko) ==== @@ -30,7 +30,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)talkd.8 8.2 (Berkeley) 12/11/93 -.\" $FreeBSD: src/libexec/talkd/talkd.8,v 1.6 2002/07/06 19:19:39 charnier Exp $ +.\" $FreeBSD: src/libexec/talkd/talkd.8,v 1.7 2003/09/08 19:57:18 ru Exp $ .\" .Dd December 11, 1993 .Dt TALKD 8 @@ -55,7 +55,7 @@ type .Tn LOOK_UP (see -.Aq Pa protocols/talkd.h ) . +.In protocols/talkd.h ) . This causes the server to search its invitation tables to check if an invitation currently exists for the caller (to speak to the callee specified in the message). ==== //depot/projects/trustedbsd/sebsd/libexec/talkd/talkd.c#4 (text+ko) ==== @@ -42,7 +42,7 @@ static char sccsid[] = "@(#)talkd.c 8.1 (Berkeley) 6/4/93"; #endif static const char rcsid[] = - "$FreeBSD: src/libexec/talkd/talkd.c,v 1.14 2003/04/03 05:13:27 jmallett Exp $"; + "$FreeBSD: src/libexec/talkd/talkd.c,v 1.15 2003/09/28 09:16:09 tjr Exp $"; #endif /* not lint */ /* @@ -86,6 +86,7 @@ { register CTL_MSG *mp = &request; int cc; + struct sockaddr ctl_addr; #ifdef NOTDEF /* @@ -116,12 +117,13 @@ continue; } lastmsgtime = time(0); + (void)memcpy(&ctl_addr, &mp->ctl_addr, sizeof(ctl_addr)); + ctl_addr.sa_family = ntohs(mp->ctl_addr.sa_family); + ctl_addr.sa_len = sizeof(ctl_addr); process_request(mp, &response); /* can block here, is this what I want? */ - mp->ctl_addr.sa_family = htons(mp->ctl_addr.sa_family); - cc = sendto(sockt, (char *)&response, - sizeof (response), 0, (struct sockaddr *)&mp->ctl_addr, - sizeof (mp->ctl_addr)); + cc = sendto(sockt, (char *)&response, sizeof (response), 0, + &ctl_addr, sizeof (ctl_addr)); if (cc != sizeof (response)) syslog(LOG_WARNING, "sendto: %m"); } From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:30:43 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4CB3916A4C0; Wed, 22 Oct 2003 19:30:43 -0700 (PDT) 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 23D4616A4B3 for ; Wed, 22 Oct 2003 19:30:43 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8906343FD7 for ; Wed, 22 Oct 2003 19:30:41 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2UfXJ056813 for ; Wed, 22 Oct 2003 19:30:41 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2UejC056810 for perforce@freebsd.org; Wed, 22 Oct 2003 19:30:40 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:30:40 -0700 (PDT) Message-Id: <200310230230.h9N2UejC056810@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 Subject: PERFORCE change 40242 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:30:43 -0000 http://perforce.freebsd.org/chv.cgi?CH=40242 Change 40242 by rwatson@rwatson_paprika on 2003/10/22 19:30:31 Integrate trustedbsd_sebsd release tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. On the whole, release-related changes were makefile infrastructure and documentation. Affected files ... .. //depot/projects/trustedbsd/sebsd/release/Makefile#6 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/early-adopter/article.sgml#4 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/errata/article.sgml#4 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/hardware/alpha/proc-alpha.sgml#4 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#4 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/readme/article.sgml#4 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/relnotes/alpha/article.sgml#2 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/relnotes/amd64/article.sgml#3 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#4 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/relnotes/i386/article.sgml#2 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/relnotes/ia64/article.sgml#2 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/relnotes/pc98/article.sgml#2 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/relnotes/sparc64/article.sgml#2 integrate .. //depot/projects/trustedbsd/sebsd/release/i386/drivers.conf#4 integrate .. //depot/projects/trustedbsd/sebsd/release/i386/fixit_crunch.conf#4 integrate .. //depot/projects/trustedbsd/sebsd/release/ia64/boot_crunch.conf#4 integrate .. //depot/projects/trustedbsd/sebsd/release/pc98/fixit-small_crunch.conf#4 integrate .. //depot/projects/trustedbsd/sebsd/release/pc98/fixit_crunch.conf#4 integrate .. //depot/projects/trustedbsd/sebsd/release/scripts/doFS.sh#5 integrate .. //depot/projects/trustedbsd/sebsd/release/scripts/print-cdrom-packages.sh#4 integrate .. //depot/projects/trustedbsd/sebsd/release/sparc64/mkisoimages.sh#4 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/release/Makefile#6 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/release/Makefile,v 1.814 2003/08/06 08:09:40 ru Exp $ +# $FreeBSD: src/release/Makefile,v 1.820 2003/09/21 06:33:14 ru Exp $ # # make release [BUILDNAME=somename] CHROOTDIR=/some/dir CVSROOT=/cvs/dir \ # [RELEASETAG=tag] @@ -202,12 +202,11 @@ NO_FLOPPIES= .elif ${TARGET_ARCH} == "sparc64" DISKLABEL= sunlabel -BIGBOOTSIZE= 4096 MFSSIZE= 4096 -BOOTINODE= 8192 MFSINODE= 8192 -BIGBOOTLABEL= auto MFSLABEL= auto +MINIROOT= +NO_FLOPPIES= .elif ${TARGET_ARCH} == "ia64" MFSINODE= 8192 MFSLABEL= auto @@ -246,11 +245,12 @@ .endif CD_DISC1= ${CD}/disc1 CD_DISC2= ${CD}/disc2 +_MK?= ${CHROOTDIR}/mk # Where the bootstrap ports (see DOCPORTS) get installed. LOCALDIR= /usr/local/bin -.if ${TARGET} != ${MACHINE} +.if ${TARGET} != ${MACHINE} && ${DISKLABEL} == "bsdlabel" DOFS_SH= ${.CURDIR}/scripts/doFS.sh ${DISKLABEL} ${TARGET} .else DOFS_SH= ${.CURDIR}/scripts/doFS.sh ${DISKLABEL} "" @@ -346,8 +346,13 @@ cd ${CHROOTDIR}/usr && \ ${CVSPREFIX} cvs -R ${CVSARGS} -d ${CVSROOT} co ${CVSCMDARGS} ${CVS_SRCARGS} ${RELEASESRCMODULE} .endif -.if defined(LOCAL_PATCHES) && exists(${LOCAL_PATCHES}) - cd ${CHROOTDIR}/usr/src && patch ${PATCH_FLAGS} < ${LOCAL_PATCHES} +.if defined(LOCAL_PATCHES) && !empty(LOCAL_PATCHES) + cd ${CHROOTDIR}/usr/${RELEASESRCMODULE} +.for p in ${LOCAL_PATCHES} +.if exists(${p}) + patch ${PATCH_FLAGS} < ${p} +.endif +.endfor .endif .if defined(LOCAL_SCRIPT) && exists(${LOCAL_SCRIPT}) cd ${CHROOTDIR} && env CHROOTDIR=${CHROOTDIR} BUILDNAME=${BUILDNAME} RELEASETAG=${RELEASETAG} ${LOCAL_SCRIPT} @@ -402,10 +407,10 @@ rm foo; \ fi -test -f install.cfg && cp install.cfg ${CHROOTDIR}/usr/src/release - echo "#!/bin/sh" > ${CHROOTDIR}/mk - echo "set -ex" >> ${CHROOTDIR}/mk - echo "trap 'umount /dev || true' 0" >> ${CHROOTDIR}/mk - echo "_RELTARGET=\$${1:-doRELEASE}" >> ${CHROOTDIR}/mk + echo "#!/bin/sh" > ${_MK} + echo "set -ex" >> ${_MK} + echo "trap 'umount /dev || true' 0" >> ${_MK} + echo "_RELTARGET=\$${1:-doRELEASE}" >> ${_MK} .for var in \ AUTO_KEYBOARD_DETECT \ BOOT_CONFIG \ @@ -437,40 +442,39 @@ TARGET_ARCH \ WORLD_FLAGS .if defined(${var}) - echo "export ${var}=\"${${var}}\"" >> ${CHROOTDIR}/mk + echo "export ${var}=\"${${var}}\"" >> ${_MK} .endif .endfor # Don't remove this, or the build will fall over! - echo "export RELEASEDIR=${_R}" >> ${CHROOTDIR}/mk - echo "export PATH=/bin:/usr/bin:/sbin:/usr/sbin:${LOCALDIR}" >> ${CHROOTDIR}/mk - echo "export MANBUILDCAT=YES" >> ${CHROOTDIR}/mk + echo "export RELEASEDIR=${_R}" >> ${_MK} + echo "export PATH=/bin:/usr/bin:/sbin:/usr/sbin:${LOCALDIR}" >> ${_MK} + echo "export MANBUILDCAT=YES" >> ${_MK} # NB: these may fail if the host is running w/o devfs - echo "umount /dev >/dev/null 2>&1 || true" >> ${CHROOTDIR}/mk - echo "mount -t devfs devfs /dev >/dev/null 2>&1 || true" \ - >> ${CHROOTDIR}/mk - echo "if [ ! -f /tmp/.world_done ]; then" >> ${CHROOTDIR}/mk - echo " cd /usr/src" >> ${CHROOTDIR}/mk - echo " ${CROSSMAKE} ${WORLD_FLAGS} -DNOCLEAN buildworld && \\" >> ${CHROOTDIR}/mk - echo " touch /tmp/.world_done" >> ${CHROOTDIR}/mk - echo "fi" >> ${CHROOTDIR}/mk - echo "if [ ! -f /tmp/.skip_ports ]; then" >> ${CHROOTDIR}/mk - echo " echo \">>> make readmes started on \`LC_ALL=C TZ=GMT date\`\"" >> ${CHROOTDIR}/mk - echo " cd /usr/ports" >> ${CHROOTDIR}/mk - echo " make ${PORTREADMES_FLAGS} readmes" >> ${CHROOTDIR}/mk - echo " touch /tmp/.skip_ports" >> ${CHROOTDIR}/mk - echo " echo \">>> make readmes finished on \`LC_ALL=C TZ=GMT date\`\"" >> ${CHROOTDIR}/mk - echo "fi" >> ${CHROOTDIR}/mk - echo "cd /usr/src/release" >> ${CHROOTDIR}/mk - echo "make obj" >> ${CHROOTDIR}/mk - echo "make \$${_RELTARGET}" >> ${CHROOTDIR}/mk - echo "echo \">>> make ${.TARGET} for ${TARGET} finished on \`LC_ALL=C TZ=GMT date\`\"" >> ${CHROOTDIR}/mk - chmod 755 ${CHROOTDIR}/mk + echo "umount /dev >/dev/null 2>&1 || true" >> ${_MK} + echo "mount -t devfs devfs /dev >/dev/null 2>&1 || true" >> ${_MK} + echo "if [ ! -f /tmp/.world_done ]; then" >> ${_MK} + echo " cd /usr/src" >> ${_MK} + echo " ${CROSSMAKE} ${WORLD_FLAGS} -DNOCLEAN buildworld && \\" >> ${_MK} + echo " touch /tmp/.world_done" >> ${_MK} + echo "fi" >> ${_MK} + echo "if [ ! -f /tmp/.skip_ports ]; then" >> ${_MK} + echo " echo \">>> make readmes started on \`LC_ALL=C TZ=GMT date\`\"" >> ${_MK} + echo " cd /usr/ports" >> ${_MK} + echo " make ${PORTREADMES_FLAGS} readmes" >> ${_MK} + echo " touch /tmp/.skip_ports" >> ${_MK} + echo " echo \">>> make readmes finished on \`LC_ALL=C TZ=GMT date\`\"" >> ${_MK} + echo "fi" >> ${_MK} + echo "cd /usr/src/release" >> ${_MK} + echo "make obj" >> ${_MK} + echo "make \$${_RELTARGET}" >> ${_MK} + echo "echo \">>> make ${.TARGET} for ${TARGET} finished on \`LC_ALL=C TZ=GMT date\`\"" >> ${_MK} + chmod 755 ${_MK} .if defined(NOPORTS) || defined(NOPORTREADMES) touch ${CHROOTDIR}/tmp/.skip_ports .endif # Ensure md.ko is loaded if md(4) is not statically compiled into the kernel -mdconfig 2>/dev/null - env -i /usr/sbin/chroot ${CHROOTDIR} /mk + env -i /usr/sbin/chroot `dirname ${_MK}` /`basename ${_MK}` clean: rm -rf ${CRUNCH_TARGETS:S/$/_crunch/} release.[0-9] release.10 \ @@ -496,7 +500,7 @@ .endif mkdir ${RD}/trees mkdir ${RD}/kernels - for i in ${DISTRIBUTIONS} ; do \ + for i in ${DISTRIBUTIONS} special; do \ mkdir ${RD}/trees/$$i && \ mtree -deU -f ${MTREEFILES}/BSD.root.dist \ -p ${RD}/trees/$$i > /dev/null && \ @@ -663,6 +667,11 @@ # release.9: +.if exists(${.CURDIR}/../sys/boot/${TARGET}/loader) + cd ${.CURDIR}/../sys/boot/${TARGET}/loader; \ + ${WMAKE} clean cleandepend; \ + ${WMAKE} -DNOMAN -DNOFORTH all install DESTDIR=${RD}/trees/special +.endif cp ${RD}/trees/base/etc/disktab /etc rm -rf ${RD}/mfsfd mkdir ${RD}/mfsfd @@ -718,9 +727,9 @@ ${.CURDIR}/${TARGET}/drivers-small.conf \ ${RD}/trees/base/boot/kernel ${RD}/mfsfd/modules .endif - sh -e ${DOFS_SH} mfsroot-small ${RD} ${MNT} \ + sh -e ${DOFS_SH} ${RD}/mfsroot-small/mfsroot ${RD} ${MNT} \ ${MFSSIZE} ${RD}/mfsfd ${MFSINODE} ${MFSLABEL} - @gzip -9cnv mfsroot-small > ${RD}/mfsroot-small/mfsroot.gz + @gzip -9nv ${RD}/mfsroot-small/mfsroot @rm -rf ${RD}/mfsfd/modules .endif .if exists(${.CURDIR}/${TARGET}/drivers.conf) @@ -730,10 +739,9 @@ ${RD}/trees/base/boot/kernel ${RD}/mfsfd/modules .endif @mkdir -p ${RD}/mfsroot - sh -e ${DOFS_SH} mfsroot ${RD} ${MNT} \ + sh -e ${DOFS_SH} ${RD}/mfsroot/mfsroot ${RD} ${MNT} \ ${MFSSIZE} ${RD}/mfsfd ${MFSINODE} ${MFSLABEL} - @gzip -9cnv mfsroot > ${RD}/mfsroot/mfsroot.gz - @rm -f mfsroot mfsroot-small + @gzip -9nv ${RD}/mfsroot/mfsroot touch ${.TARGET} release.10: @@ -886,6 +894,12 @@ @echo 'mfsroot_name="/boot/mfsroot"' >> ${CD_DISC2}/boot/loader.conf .if defined(CD_BOOT) @cp -Rp ${CD_DISC2}/boot ${CD_BOOT} +.if defined(MINIROOT) + @mkdir -p ${FD}/miniroot + @sh -e ${DOFS_SH} ${FD}/miniroot/miniroot.ufs \ + ${RD} ${MNT} 0 ${CD_BOOT} 8192 auto + @gzip -9v ${FD}/miniroot/miniroot.ufs +.endif .endif @cp -Rp ${CD_DISC2}/boot ${CD_DISC1} .if ${TARGET} == "i386" && defined(EMUL_BOOT) && !defined(NO_FLOPPIES) @@ -988,9 +1002,8 @@ md5 * > CHECKSUM.MD5) \ ) -doRELEASE: release.1 release.2 release.3 ${DOCREL} release.4 release.5 \ - release.6 release.7 release.8 release.9 release.10 - @cd ${.CURDIR} && ${MAKE} ${EXTRAS} +doRELEASE: release.1 release.2 release.3 ${DOCREL} release.4 release.5 \ + release.6 release.7 release.8 release.9 release.10 ${EXTRAS} @echo "Release done" floppies: @@ -1067,9 +1080,9 @@ @mkdir -p ${RD}/image.${FSIMAGE}/boot .if ${TARGET} == "i386" @${WMAKEENV} kgzip -v -l ${RD}/trees/base/usr/lib/kgzldr.o \ - -o ${RD}/image.${FSIMAGE}/boot/loader ${RD}/trees/base/boot/loader + -o ${RD}/image.${FSIMAGE}/boot/loader ${RD}/trees/special/boot/loader .else - @cp ${RD}/trees/base/boot/loader ${RD}/image.${FSIMAGE}/boot + @cp ${RD}/trees/special/boot/loader ${RD}/image.${FSIMAGE}/boot .endif @[ -r ${RD}/kernels/BOOTMFS.${FSIMAGE}.hints ] && \ sed -e '/^hint/s/^/set /' -e '/^#/d' \ ==== //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/early-adopter/article.sgml#4 (text+ko) ==== @@ -14,6 +14,9 @@ %mailing-lists; + +%trademarks; + %release; @@ -30,7 +33,7 @@ The &os; Release Engineering Team - $FreeBSD: src/release/doc/en_US.ISO8859-1/early-adopter/article.sgml,v 1.15 2003/05/03 22:14:55 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/early-adopter/article.sgml,v 1.16 2003/09/08 14:53:01 simon Exp $ 2002 @@ -39,6 +42,14 @@ Engineering Team + + &tm-attrib.freebsd; + &tm-attrib.intel; + &tm-attrib.microsoft; + &tm-attrib.sparc; + &tm-attrib.general; + + This article describes the status of &os; &release.current;, from the standpoint of users who may be new @@ -186,8 +197,8 @@ - New architectures: Support for the sparc64 and ia64 - architectures, in addition to the i386, pc98, and + New architectures: Support for the &sparc64; and ia64 + architectures, in addition to the &i386;, pc98, and alpha. @@ -390,7 +401,7 @@ &release.4x; but not in &release.5x;. These obsolete files may create some problems. - On the i386 and pc98 platforms, a UserConfig utility + On the &i386; and pc98 platforms, a UserConfig utility exists on 4-STABLE to allow boot-time configuration of ISA devices when booting from installation media. Under &os; 5.0, this functionality has been replaced in part by the @@ -404,11 +415,11 @@ the usual kern.flp and mfsroot.flp floppy images. - CDROM-based installations on the i386 architecture now use + CDROM-based installations on the &i386; architecture now use a no-emulation boot loader. This allows, among other things, the use of a GENERIC kernel, rather than the stripped-down kernel on the floppy images. In - theory, any system capable of booting the Microsoft Windows NT + theory, any system capable of booting the µsoft; &windowsnt; 4 installation CDROMs should be able to cope with the &os; &release.5x; CDROMs. ==== //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/errata/article.sgml#4 (text+ko) ==== @@ -17,6 +17,8 @@ %authors; %mlists; + +%trademarks; %release; ]> @@ -36,7 +38,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/errata/article.sgml,v 1.46 2003/08/04 15:23:20 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/errata/article.sgml,v 1.50 2003/09/20 00:17:52 bmah Exp $ 2000 @@ -45,6 +47,13 @@ 2003 The FreeBSD Documentation Project + + + &tm-attrib.freebsd; + &tm-attrib.intel; + &tm-attrib.sparc; + &tm-attrib.general; + @@ -116,14 +125,47 @@ ]]> The implementation of the &man.realpath.3; function contains - a single-byte buffer overflow bug. This may have various + The implementation of the &man.realpath.3; function contained + a single-byte buffer overflow bug. This had various impacts, depending on the application using &man.realpath.3; and other factors. This bug was fixed on the &release.branch; development branch before &release.prev;; &os; &release.prev; is therefore not affected. However, this change was not noted in the release documentation. For more information, see security advisory FreeBSD-SA-03:08. + + The kernel contains a bug that could allow it to attempt + delivery of invalid signals, leading to a kernel panic or, under + some circumstances, unauthorized modification of kernel memory. + This bug has been fixed on the &release.branch; development + branch and the &release.prev; security fix branch. For more + information, see security advisory + FreeBSD-SA-03:09. + + A bug in the iBCS2 emulation module could result in + disclosing the contents of kernel memory. (Note that this + module is not enabled in &os; by default.) This bug has been + fixed on the &release.branch; development branch and the + &release.prev; security fix branch. More information can be + found in security advisory + FreeBSD-SA-03:10. + + OpenSSH contains a bug in its + buffer management code that could potentially cause it to crash. + This bug has been fixed via a vendor-supplied patch on the + &release.branch; development branch and the &release.prev; + security fix branch. For more details, refer to security + advisory + FreeBSD-SA-03:12. + + sendmail contains a + remotely-exploitable buffer overflow. This bug has been fixed + via a new version import on the &release.branch; development + branch and via a vendor-supplied patch on the &release.prev; + security fix branch. More details can be found in security + advisory + FreeBSD-SA-03:13. + ]]> @@ -139,7 +181,7 @@ The RAIDframe disk driver described in &man.raid.4; is non-functional for this release. - ACPI seems to make some i386 machines unstable. Turning off + ACPI seems to make some &i386; machines unstable. Turning off ACPI support may help solve some of these problems; see an item in . @@ -169,11 +211,11 @@ &man.ipfw.4; should work correctly on strict-alignment - 64-bit architectures such as alpha and sparc64. + 64-bit architectures such as alpha and &sparc64;. The release notes should have stated that the libthr library is built by default for the - i386 platform. + &i386; platform. &os; &release.prev; includes some new boot loader scripts designed to make booting &os; with different options easier. @@ -181,7 +223,7 @@ build on the existing Forth-based boot loader scripts (thus, /boot/loader.conf and other existing loader configuration files still apply). They are only installed by - default for new binary installs on i386 machines. The new + default for new binary installs on &i386; machines. The new scripts present a boot-time menu that controls how &os; is booted, and include options to turn off ACPI, a safe mode boot, single-user booting, and verbose booting. @@ -195,7 +237,7 @@ hw.ata.wc=0 # disable IDE disk write cache hw.eisa_slots=0 # disable probing for EISA devices - For new installs on i386 architecture machines, + For new installs on &i386; architecture machines, &man.sysinstall.8; will try to determine if ACPI was disabled via the new boot loader scripts mentioned above, and if so, ask if this change should be made permanent. ==== //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/hardware/alpha/proc-alpha.sgml#4 (text+ko) ==== @@ -1,4 +1,4 @@ - + @@ -1964,12 +1964,12 @@ AlphaPC 264DP / UP2000 - UP2000 is built by Alpha Processor Inc. + UP2000 was built by Alpha Processor Inc. Features: - 21264 EV6 CPU at 670 MHz + 21264 EV6 CPU at 670 or 750 MHz dual CPU capable @@ -1988,7 +1988,7 @@ 21272 core logic chip set (Tsunami) - embedded Adaptec AIC7890/91 Wide Ultra SCSI + 2 embedded Adaptec AIC7890/91 Wide Ultra2 SCSI chips 2 embedded IDE based on Cypress 82C693 chips @@ -2015,11 +2015,11 @@ Currently a maximum of 2GB memory is supported by &os;. - The on-board Adaptec is not bootable but works with &os; - 4.0 and later as a datadisk-only SCSI bus. + The on-board Adaptec SCSI HBAs are bootable on UP2000. Busmaster DMA is supported on the first IDE interface - only. + only. The system can boot from it's IDE hard drives and cdrom + drives. The kernel config file must contain: options DEC_ST6600 ==== //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#4 (text+ko) ==== @@ -8,10 +8,8 @@ (i.e. Ethernet interfaces), list broad groups of devices alphabetically as paragraphs sorted alphabetically (frequently these groups will be arranged by manufacturer, i.e. 3Com - Ethernet interfaces). In cases where a group of devices - consists of multiple models (such as the 3C501, 3C503, etc.), - list each specific model or set of closely-related models as - a separate item in an itemized list, sorted alphabetically. + Ethernet interfaces). + Where applicable, a "Miscellaneous" section may follow all other named sections. @@ -31,7 +29,7 @@ - $FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml,v 1.163 2003/06/29 01:12:57 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml,v 1.183 2003/09/25 21:15:55 wilko Exp $ Supported Devices @@ -43,7 +41,18 @@ Where possible, the drivers applicable to each device or class of devices is listed. If the driver in question has a manual page - in the &os; base distribution (most should), it is referenced here. + in the &os; base distribution (most should), it is referenced here. + Information on specific models of supported devices, controllers, + etc. can be found in the manual pages. + + + Lists of specific, supported devices are gradually being + removed from this document in order to reduce the amount of + duplicated (and potentially out-of-date) information contained + within. When this process is complete, the manual page for each + driver should be consulted for the authoritative list of devices + supported that particular driver. + Disk Controllers @@ -127,20 +136,16 @@ + + Adaptec 1510, 152X, 1535, and 154X-series ISA + SCSI controllers and compatibles (&man.aha.4; driver) + + Adaptec 164X-series MCA SCSI controllers + (&man.aha.4; driver) + Adaptec SCSI Controllers - - Adaptec 1535 ISA SCSI controllers - - Adaptec 154x series ISA SCSI controllers - (&man.aha.4; driver) - - - Adaptec 164x series MCA SCSI controllers (&man.aha.4; - driver) - - Adaptec 174x series EISA SCSI controller in standard and enhanced mode (&man.aha.4; and &man.ahb.4; driver) @@ -166,14 +171,6 @@ SCSI controllers (&man.ahc.4; driver) - Adaptec 1510 series ISA SCSI controllers (not for - bootable devices) - - - Adaptec 152x series ISA SCSI controllers (&man.aha.4; - driver) - - Adaptec AIC-6260 and AIC-6360 based boards, which includes the AHA-152x and SoundBlaster SCSI cards (&man.aic.4; driver) @@ -203,53 +200,8 @@ - Adaptec 21x0S/32x0S/34x0S SCSI RAID - controllers (&man.asr.4; driver) - - Adaptec 2000S/2005S Zero-Channel RAID controllers - (&man.asr.4; driver) + Adaptec FSA family RAID controllers (&man.aac.4; driver) - Adaptec 2400A ATA-100 RAID controller - (&man.asr.4; driver) - - Adaptec FSA family RAID controllers (&man.aac.4; driver) - - - Adaptec AAC-2622 - - - Adaptec AAC-364 - - - Adaptec SCSI RAID 2120S - - - Adaptec SCSI RAID 2200S - - - Adaptec SCSI RAID 5400S - - - Dell PERC 2/QC - - - Dell PERC 2/Si - - - Dell PERC 3/Di - - - Dell PERC 3/QC - - - Dell PERC 3/Si - - - HP NetRAID-4M - - - - NEC PC-9801-55, 92 and their compatible C-Bus SCSI interfaces (ct driver) @@ -363,206 +315,45 @@ - BusLogic MultiMaster W Series Host Adapters - (&man.bt.4; driver): - - - BT-948 - - - BT-958 - - - BT-958D - - - + BusLogic MultiMaster W, + C, S, and A Series + Host Adapters (&man.bt.4; driver) - BusLogic MultiMaster C Series Host Adapters - (&man.bt.4; driver): - - - BT-946C - - - BT-956C - - - BT-956CD - - - BT-445C - - - BT-747C - - - BT-757C - - - BT-757CD - - - BT-545C - - - BT-540CF - - - + + BusLogic/Mylex Flashpoint adapters are not yet + supported. + - BusLogic MultiMaster S Series Host Adapters - (&man.bt.4; driver): - - - BT-445S - - - BT-747S - - - BT-747D - - - BT-757S - - - BT-757D - - - BT-545S - - - BT-542D - - - BT-742A - - - BT-542B - - - - - BusLogic MultiMaster A Series Host Adapters - (&man.bt.4; driver): - - - BT-742A - - - BT-542B - - - + + AMI FastDisk controllers that are true BusLogic + MultiMaster clones are also supported. + + + + The Buslogic/Bustek BT-640 and Storage Dimensions + SDC3211B and SDC3211F Microchannel (MCA) bus adapters are + also supported. + - - BusLogic/Mylex Flashpoint adapters are not yet - supported. - - - AMI FastDisk controllers that are true BusLogic - MultiMaster clones are also supported. - - - - The Buslogic/Bustek BT-640 and Storage Dimensions SDC3211B - and SDC3211F Microchannel (MCA) bus adapters are also - supported. - + DPT SmartCACHE Plus, SmartCACHE III, SmartRAID III, SmartCACHE IV and SmartRAID IV SCSI/RAID controllers (&man.dpt.4; driver) + Adaptec 21x0S/32x0S/34x0S SCSI RAID + controllers (&man.asr.4; driver) + + Adaptec 2000S/2005S Zero-Channel RAID controllers + (&man.asr.4; driver) + + Adaptec 2400A ATA-100 RAID controller + (&man.asr.4; driver) + DPT SmartRAID V and VI SCSI RAID controllers - (&man.asr.4; driver) - - - PM1554 - - - PM2554 - - - PM2654 - - - PM2865 - - - PM2754 - - - PM3755 - - - PM3757 - - - + (&man.asr.4; driver) AMI MegaRAID Express and Enterprise family RAID controllers (&man.amr.4; driver) - - - MegaRAID Series 418 - - - MegaRAID Enterprise 1200 (Series 428) - - - MegaRAID Enterprise 1300 (Series 434) - - - MegaRAID Enterprise 1400 (Series 438) - - - MegaRAID Enterprise 1500 (Series 467) - - - MegaRAID Enterprise 1600 (Series 471) - - - MegaRAID Elite 1500 (Series 467) - - - MegaRAID Elite 1600 (Series 493) - - - MegaRAID Express 100 (Series 466WS) - - - MegaRAID Express 200 (Series 466) - - - MegaRAID Express 300 (Series 490) - - - MegaRAID Express 500 (Series 475) - - - Dell PERC - - - Dell PERC 2/SC - - - Dell PERC 2/DC - - - Dell PERC 3/DCL - - - HP NetRaid-1si - - - HP NetRaid-3si - - - HP Embedded NetRaid - - - Booting from these controllers is supported. EISA adapters are not supported. @@ -574,44 +365,17 @@ Mylex DAC960 and DAC1100 RAID controllers with 2.x, 3.x, 4.x and 5.x firmware (&man.mlx.4; driver) - - - DAC960P - - - DAC960PD - - - DAC960PDU - - - DAC960PL - - - DAC960PJ - - - DAC960PG - - - AcceleRAID 150 - - - AcceleRAID 250 - - - eXtremeRAID 1100 - - Booting from these controllers is supported. EISA adapters are not supported. Booting from these controllers is not - supported due to SRM limitations. This list includes - controllers sold by Digital/Compaq in Alpha systems in the - StorageWorks family, e.g. KZPSC or KZPAC. + supported due to SRM limitations. + DAC960 controllers sold by Digital/Compaq for Alpha systems as part + of the StorageWorks family, e.g. KZPSC or KZPAC are bootable from SRM. + Note that these cards used 2.x firmware. SRM bootability of newer + firmware is unknown. @@ -642,19 +406,6 @@ 3ware Escalade ATA RAID controllers (&man.twe.4; driver) - - - 5000 series - - - - 6000 series - - - - 7000 series - - LSI/SymBios (formerly NCR) 53C810, 53C810a, 53C815, 53C825, @@ -728,73 +479,10 @@ TMC 18C30, 18C50 and 36C70 (AIC-6820) based ISA/PC-Card SCSI host - adapters (stg driver) - - - Adaptec 2920/A - - - Future Domain SCSI2GO - - - Future Domain TMC-18XX/3260 - - - IBM SCSI PCMCIA Card - - - ICM PSC-2401 SCSI - - - MELCO IFC-SC - - - RATOC REX-5536, REX-5536AM, REX-5536M, - REX-9836A - - + adapters (&man.stg.4; driver) Qlogic controllers and variants (&man.isp.4; driver) - - - Qlogic 1020, 1040 SCSI and Ultra SCSI host - adapters - - - Qlogic 1240 dual Ultra SCSI controllers - - - Qlogic 1080 Ultra2 LVD and 1280 Dual Ultra2 LVD - controllers - - - Qlogic 12160 Ultra3 LVD controllers - - - Qlogic 2100 and Qlogic 2200 Fibre Channel SCSI - controllers - - - Qlogic 2300 and Qlogic 2312 2-Gigabit Fibre Channel SCSI >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:33:48 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 791FA16A4C0; Wed, 22 Oct 2003 19:33:48 -0700 (PDT) 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 52BBF16A4B3 for ; Wed, 22 Oct 2003 19:33:48 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 03C6C43FA3 for ; Wed, 22 Oct 2003 19:33:46 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2XjXJ059424 for ; Wed, 22 Oct 2003 19:33:45 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2XjPV059416 for perforce@freebsd.org; Wed, 22 Oct 2003 19:33:45 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:33:45 -0700 (PDT) Message-Id: <200310230233.h9N2XjPV059416@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 Subject: PERFORCE change 40243 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:33:48 -0000 http://perforce.freebsd.org/chv.cgi?CH=40243 Change 40243 by rwatson@rwatson_paprika on 2003/10/22 19:32:48 Integrate trustedbsd_sebsd sbin tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. Conditionalize building of ATM+IPv6+Vinum bits. Ffsinfo, growfs fixed. DYNAMIC_ROOT support. ATAng. Affected files ... .. //depot/projects/trustedbsd/sebsd/sbin/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/atacontrol/atacontrol.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/atm/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/sbin/atm/Makefile.inc#3 integrate .. //depot/projects/trustedbsd/sebsd/sbin/atm/atm/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/atm/atm/atm.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/atm/atmconfig/Makefile#1 branch .. //depot/projects/trustedbsd/sebsd/sbin/atm/atmconfig/atmconfig.8#1 branch .. //depot/projects/trustedbsd/sebsd/sbin/atm/atmconfig/atmconfig.h#1 branch .. //depot/projects/trustedbsd/sebsd/sbin/atm/atmconfig/atmconfig.help#1 branch .. //depot/projects/trustedbsd/sebsd/sbin/atm/atmconfig/diag.c#1 branch .. //depot/projects/trustedbsd/sebsd/sbin/atm/atmconfig/diag.h#1 branch .. //depot/projects/trustedbsd/sebsd/sbin/atm/atmconfig/main.c#1 branch .. //depot/projects/trustedbsd/sebsd/sbin/atm/atmconfig/natm.c#1 branch .. //depot/projects/trustedbsd/sebsd/sbin/atm/atmconfig/private.h#1 branch .. //depot/projects/trustedbsd/sebsd/sbin/atm/fore_dnld/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/atm/ilmid/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/bsdlabel/bsdlabel.5#3 integrate .. //depot/projects/trustedbsd/sebsd/sbin/bsdlabel/bsdlabel.8#3 integrate .. //depot/projects/trustedbsd/sebsd/sbin/bsdlabel/bsdlabel.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sbin/camcontrol/modeedit.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ccdconfig/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ccdconfig/ccdconfig.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/comcontrol/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/comcontrol/comcontrol.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/devd/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/devd/devd.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/devfs/devfs.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/dhclient/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/disklabel/disklabel.5#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/disklabel/disklabel.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/dump/optr.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ffsinfo/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ffsinfo/ffsinfo.8#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ffsinfo/ffsinfo.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/fsdb/fsdb.8#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/growfs/debug.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/growfs/debug.h#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ifconfig/ifconfig.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ifconfig/ifconfig.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ifconfig/ifieee80211.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ip6fw/ip6fw.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ip6fw/ip6fw.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ipfw/ipfw.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ipfw/ipfw2.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mdconfig/mdconfig.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mksnap_ffs/mksnap_ffs.8#3 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount/mount.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_cd9660/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_cd9660/mount_cd9660.8#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_cd9660/mount_cd9660.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_hpfs/mount_hpfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_msdosfs/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_msdosfs/iso22dos#2 delete .. //depot/projects/trustedbsd/sebsd/sbin/mount_msdosfs/iso72dos#2 delete .. //depot/projects/trustedbsd/sebsd/sbin/mount_msdosfs/koi2dos#2 delete .. //depot/projects/trustedbsd/sebsd/sbin/mount_msdosfs/koi8u2dos#2 delete .. //depot/projects/trustedbsd/sebsd/sbin/mount_msdosfs/mount_msdosfs.8#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_msdosfs/mount_msdosfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_nfs/mount_nfs.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_ntfs/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_ntfs/mount_ntfs.8#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_ntfs/mount_ntfs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/natd/natd.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/natd/natd.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/newfs/newfs.8#5 integrate .. //depot/projects/trustedbsd/sebsd/sbin/nfsiod/nfsiod.8#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ping/ping.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/quotacheck/quotacheck.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/raidctl/raidctl.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/rcorder/rcorder.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/route/route.8#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/routed/defs.h#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/routed/trace.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/rtsol/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/savecore/savecore.8#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/savecore/savecore.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/sysctl/sysctl.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/vinum/vinum.8#4 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/sbin/Makefile#4 (text+ko) ==== @@ -1,11 +1,10 @@ # @(#)Makefile 8.5 (Berkeley) 3/31/94 -# $FreeBSD: src/sbin/Makefile,v 1.124 2003/07/24 01:42:49 peter Exp $ +# $FreeBSD: src/sbin/Makefile,v 1.127 2003/08/29 10:35:00 phk Exp $ # XXX MISSING: icheck ncheck SUBDIR= adjkerntz \ atacontrol \ - atm \ badsect \ bsdlabel \ camcontrol \ @@ -19,6 +18,7 @@ dump \ dumpfs \ dumpon \ + ffsinfo \ fsck \ fsck_ffs \ fsck_msdosfs \ @@ -28,7 +28,6 @@ growfs \ ifconfig \ init \ - ip6fw \ ipfw \ kldconfig \ kldload \ @@ -58,7 +57,6 @@ nologin \ nos-tun \ ping \ - ping6 \ quotacheck \ raidctl \ rcorder \ @@ -79,8 +77,11 @@ swapon \ sysctl \ tunefs \ - umount \ - vinum + umount + +.if !defined(NOATM) +SUBDIR+=atm +.endif .if !defined(NO_CXX) SUBDIR+=devd @@ -94,6 +95,15 @@ ipnat .endif +.if !defined(NOINET6) +SUBDIR+=ip6fw \ + ping6 +.endif + +.if !defined(NO_VINUM) +SUBDIR+=vinum +.endif + .if ${MACHINE_ARCH} == "i386" SUBDIR+=cxconfig .if ${MACHINE} == "pc98" ==== //depot/projects/trustedbsd/sebsd/sbin/Makefile.inc#2 (text+ko) ==== @@ -1,6 +1,9 @@ # @(#)Makefile.inc 8.1 (Berkeley) 6/8/93 -# $FreeBSD: src/sbin/Makefile.inc,v 1.8 2001/12/04 02:19:43 obrien Exp $ +# $FreeBSD: src/sbin/Makefile.inc,v 1.9 2003/08/17 08:37:47 gordon Exp $ BINDIR?= /sbin +WARNS?= 2 + +.if !defined (WITH_DYNAMICROOT) NOSHARED?= YES -WARNS?= 2 +.endif ==== //depot/projects/trustedbsd/sebsd/sbin/atacontrol/atacontrol.c#4 (text+ko) ==== @@ -25,7 +25,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/sbin/atacontrol/atacontrol.c,v 1.25 2003/05/05 10:28:37 sos Exp $ + * $FreeBSD: src/sbin/atacontrol/atacontrol.c,v 1.26 2003/08/24 09:23:54 sos Exp $ */ #include @@ -55,6 +55,7 @@ case ATA_UDMA4: return "UDMA66"; case ATA_UDMA5: return "UDMA100"; case ATA_UDMA6: return "UDMA133"; + case ATA_SA150: return "SATA150"; case ATA_DMA: return "BIOSDMA"; default: return "???"; } @@ -130,66 +131,71 @@ printf("heads %d\n", parm->heads); printf("sectors/track %d\n", parm->sectors); - printf("lba%ssupported ", parm->support_lba ? " " : " not "); + printf("lba%ssupported ", + parm->capabilities1 & ATA_SUPPORT_LBA ? " " : " not "); if (lbasize) printf("%d sectors\n", lbasize); else printf("\n"); printf("lba48%ssupported ", - parm->support.address48 ? " " : " not "); + parm->support.command2 & ATA_SUPPORT_ADDRESS48 ? " " : " not "); if (lbasize48) printf("%ju sectors\n", (uintmax_t)lbasize48); else printf("\n"); - printf("dma%ssupported\n", parm->support_dma ? " " : " not"); + printf("dma%ssupported\n", + parm->capabilities1 & ATA_SUPPORT_DMA ? " " : " not"); - printf("overlap%ssupported\n", parm->support_queueing ? " " : " not "); + printf("overlap%ssupported\n", + parm->capabilities1 & ATA_SUPPORT_OVERLAP ? " " : " not "); printf("\nFeature " "Support Enable Value Vendor\n"); printf("write cache %s %s\n", - parm->support.write_cache ? "yes" : "no", - parm->enabled.write_cache ? "yes" : "no"); + parm->support.command1 & ATA_SUPPORT_WRITECACHE ? "yes" : "no", + parm->enabled.command1 & ATA_SUPPORT_WRITECACHE ? "yes" : "no"); printf("read ahead %s %s\n", - parm->support.look_ahead ? "yes" : "no", - parm->enabled.look_ahead ? "yes" : "no"); + parm->support.command1 & ATA_SUPPORT_LOOKAHEAD ? "yes" : "no", + parm->enabled.command1 & ATA_SUPPORT_LOOKAHEAD ? "yes" : "no"); - printf("dma queued %s %s %d/%02X\n", - parm->support.queued ? "yes" : "no", - parm->enabled.queued ? "yes" : "no", - parm->queuelen, parm->queuelen); + printf("dma queued %s %s %d/0x%02X\n", + parm->support.command2 & ATA_SUPPORT_QUEUED ? "yes" : "no", + parm->enabled.command2 & ATA_SUPPORT_QUEUED ? "yes" : "no", + ATA_QUEUE_LEN(parm->queue), ATA_QUEUE_LEN(parm->queue)); printf("SMART %s %s\n", - parm->support.smart ? "yes" : "no", - parm->enabled.smart ? "yes" : "no"); + parm->support.command1 & ATA_SUPPORT_SMART ? "yes" : "no", + parm->enabled.command1 & ATA_SUPPORT_SMART ? "yes" : "no"); printf("microcode download %s %s\n", - parm->support.microcode ? "yes" : "no", - parm->enabled.microcode ? "yes" : "no"); + parm->support.command2 & ATA_SUPPORT_MICROCODE ? "yes" : "no", + parm->enabled.command2 & ATA_SUPPORT_MICROCODE ? "yes" : "no"); printf("security %s %s\n", - parm->support.security ? "yes" : "no", - parm->enabled.security ? "yes" : "no"); + parm->support.command1 & ATA_SUPPORT_SECURITY ? "yes" : "no", + parm->enabled.command1 & ATA_SUPPORT_SECURITY ? "yes" : "no"); printf("power management %s %s\n", - parm->support.power_mngt ? "yes" : "no", - parm->enabled.power_mngt ? "yes" : "no"); + parm->support.command1 & ATA_SUPPORT_POWERMGT ? "yes" : "no", + parm->enabled.command1 & ATA_SUPPORT_POWERMGT ? "yes" : "no"); - printf("advanced power management %s %s %d/%02X\n", - parm->support.apm ? "yes" : "no", - parm->enabled.apm ? "yes" : "no", + printf("advanced power management %s %s %d/0x%02X\n", + parm->support.command2 & ATA_SUPPORT_APM ? "yes" : "no", + parm->enabled.command2 & ATA_SUPPORT_APM ? "yes" : "no", parm->apm_value, parm->apm_value); printf("automatic acoustic management %s %s " - "%d/%02X %d/%02X\n", - parm->support.auto_acoustic ? "yes" : "no", - parm->enabled.auto_acoustic ? "yes" : "no", - parm->current_acoustic, parm->current_acoustic, - parm->vendor_acoustic, parm->vendor_acoustic); + "%d/0x%02X %d/0x%02X\n", + parm->support.command2 & ATA_SUPPORT_AUTOACOUSTIC ? "yes" :"no", + parm->enabled.command2 & ATA_SUPPORT_AUTOACOUSTIC ? "yes" :"no", + ATA_ACOUSTIC_CURRENT(parm->acoustic), + ATA_ACOUSTIC_CURRENT(parm->acoustic), + ATA_ACOUSTIC_VENDOR(parm->acoustic), + ATA_ACOUSTIC_VENDOR(parm->acoustic)); } int @@ -203,7 +209,7 @@ bzero(&iocmd, sizeof(struct ata_cmd)); iocmd.channel = channel; - iocmd.device = -1; + iocmd.device = device; iocmd.cmd = ATAGPARM; if (ioctl(fd, IOCATA, &iocmd) < 0) ==== //depot/projects/trustedbsd/sebsd/sbin/atm/Makefile#3 (text+ko) ==== @@ -20,9 +20,11 @@ # Copies of this Software may be made, however, the above copyright # notice must be reproduced on all copies. # -# @(#) $FreeBSD: src/sbin/atm/Makefile,v 1.3 2003/08/03 15:17:27 obrien Exp $ +# @(#) $Id: Makefile,v 1.5 1998/07/10 16:01:58 jpt Exp $ +# $FreeBSD: src/sbin/atm/Makefile,v 1.5 2003/08/18 15:32:16 obrien Exp $ SUBDIR= atm \ + atmconfig \ fore_dnld \ ilmid ==== //depot/projects/trustedbsd/sebsd/sbin/atm/Makefile.inc#3 (text+ko) ==== @@ -20,7 +20,7 @@ # Copies of this Software may be made, however, the above copyright # notice must be reproduced on all copies. # -# @(#) $FreeBSD: src/sbin/atm/Makefile.inc,v 1.4 2003/08/03 15:17:27 obrien Exp $ -# +# @(#) $Id: Makefile.inc,v 1.5 1998/07/10 16:01:58 jpt Exp $ +# $FreeBSD: src/sbin/atm/Makefile.inc,v 1.5 2003/08/18 15:32:16 obrien Exp $ .include "../Makefile.inc" ==== //depot/projects/trustedbsd/sebsd/sbin/atm/atm/Makefile#4 (text+ko) ==== @@ -20,8 +20,8 @@ # Copies of this Software may be made, however, the above copyright # notice must be reproduced on all copies. # -# @(#) $FreeBSD: src/sbin/atm/atm/Makefile,v 1.9 2003/08/03 15:17:28 obrien Exp $ -# +# @(#) $Id: Makefile,v 1.5 1998/07/10 16:01:58 jpt Exp $ +# $FreeBSD: src/sbin/atm/atm/Makefile,v 1.10 2003/08/18 15:32:16 obrien Exp $ PROG= atm SRCS= atm.c atm_fore200.c atm_eni.c atm_inet.c atm_print.c \ ==== //depot/projects/trustedbsd/sebsd/sbin/atm/atm/atm.c#4 (text+ko) ==== @@ -23,7 +23,7 @@ * Copies of this Software may be made, however, the above copyright * notice must be reproduced on all copies. * - * @(#) $FreeBSD: src/sbin/atm/atm/atm.c,v 1.8 2003/07/29 13:37:04 harti Exp $ + * @(#) $FreeBSD: src/sbin/atm/atm/atm.c,v 1.9 2003/08/11 07:14:10 harti Exp $ * */ @@ -60,7 +60,7 @@ #include "atm.h" #ifndef lint -__RCSID("@(#) $FreeBSD: src/sbin/atm/atm/atm.c,v 1.8 2003/07/29 13:37:04 harti Exp $"); +__RCSID("@(#) $FreeBSD: src/sbin/atm/atm/atm.c,v 1.9 2003/08/11 07:14:10 harti Exp $"); #endif @@ -81,6 +81,7 @@ \n\ VC management subcommands:\n\ add pvc ...\n\ + [UBR | CBR | VBR ]\n\ delete pvc \n\ delete svc \n\ show stats vcc [ [vpi [vci]]]\n\ @@ -536,7 +537,8 @@ * * Command format: * atm add PVC - * [ubr | cbr | vbr ] + * ...owner info... + * [ubr | cbr | vbr ] * * Arguments: * argc number of arguments to command ==== //depot/projects/trustedbsd/sebsd/sbin/atm/fore_dnld/Makefile#4 (text+ko) ==== @@ -20,8 +20,8 @@ # Copies of this Software may be made, however, the above copyright # notice must be reproduced on all copies. # -# @(#) $FreeBSD: src/sbin/atm/fore_dnld/Makefile,v 1.10 2003/08/03 15:17:28 obrien Exp $ -# +# @(#) $Id: Makefile,v 1.5 1998/07/10 16:01:58 jpt Exp $ +# $FreeBSD: src/sbin/atm/fore_dnld/Makefile,v 1.11 2003/08/18 15:32:16 obrien Exp $ PROG= fore_dnld MAN= fore_dnld.8 ==== //depot/projects/trustedbsd/sebsd/sbin/atm/ilmid/Makefile#4 (text+ko) ==== @@ -20,8 +20,8 @@ # Copies of this Software may be made, however, the above copyright # notice must be reproduced on all copies. # -# @(#) $FreeBSD: src/sbin/atm/ilmid/Makefile,v 1.10 2003/08/03 15:17:28 obrien Exp $ -# +# @(#) $Id: Makefile,v 1.5 1998/07/10 16:01:58 jpt Exp $ +# $FreeBSD: src/sbin/atm/ilmid/Makefile,v 1.11 2003/08/18 15:32:16 obrien Exp $ PROG= ilmid MAN= ilmid.8 ==== //depot/projects/trustedbsd/sebsd/sbin/bsdlabel/bsdlabel.5#3 (text+ko) ==== @@ -33,7 +33,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)disklabel.5.5 8.1 (Berkeley) 6/5/93 -.\" $FreeBSD: src/sbin/bsdlabel/bsdlabel.5,v 1.15 2002/12/12 17:25:54 ru Exp $ +.\" $FreeBSD: src/sbin/bsdlabel/bsdlabel.5,v 1.16 2003/09/10 19:24:34 ru Exp $ .\" .Dd June 5, 1993 .Dt DISKLABEL 5 @@ -103,7 +103,7 @@ .Xr disklabel 8 . .Pp The format of the disk label, as specified in -.Pa , +.In sys/disklabel.h , is .Bd -literal #ifndef _SYS_DISKLABEL_H_ ==== //depot/projects/trustedbsd/sebsd/sbin/bsdlabel/bsdlabel.8#3 (text+ko) ==== @@ -33,7 +33,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)disklabel.8 8.2 (Berkeley) 4/19/94 -.\" $FreeBSD: src/sbin/bsdlabel/bsdlabel.8,v 1.54 2003/05/24 19:53:08 ru Exp $ +.\" $FreeBSD: src/sbin/bsdlabel/bsdlabel.8,v 1.55 2003/09/08 19:57:18 ru Exp $ .\" .Dd March 15, 2003 .Dt BSDLABEL 8 @@ -314,7 +314,7 @@ (See the definitions starting with .Dv FS_UNUSED in -.Aq Pa sys/disklabel.h +.In sys/disklabel.h for more details.) .It Ar fsize For ==== //depot/projects/trustedbsd/sebsd/sbin/bsdlabel/bsdlabel.c#3 (text+ko) ==== @@ -53,7 +53,7 @@ #endif /* not lint */ #endif #include -__FBSDID("$FreeBSD: src/sbin/bsdlabel/bsdlabel.c,v 1.100 2003/06/07 22:02:01 phk Exp $"); +__FBSDID("$FreeBSD: src/sbin/bsdlabel/bsdlabel.c,v 1.101 2003/08/27 22:34:57 phk Exp $"); #include #include @@ -1377,6 +1377,10 @@ strncpy(loclab.d_typename, "amnesiac", sizeof(loclab.d_typename)); + dp = &loclab.d_partitions[0]; + dp->p_offset = BBSIZE / secsize; + dp->p_size = loclab.d_secperunit - dp->p_offset; + dp = &loclab.d_partitions[RAW_PART]; dp->p_size = loclab.d_secperunit; loclab.d_checksum = dkcksum(&loclab); ==== //depot/projects/trustedbsd/sebsd/sbin/camcontrol/modeedit.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sbin/camcontrol/modeedit.c,v 1.15 2003/08/05 09:19:07 johan Exp $"); +__FBSDID("$FreeBSD: src/sbin/camcontrol/modeedit.c,v 1.16 2003/08/22 01:56:17 imp Exp $"); #include #include @@ -133,7 +133,7 @@ #define RTRIM(string) do { \ - int _length; \ + int _length; \ while (isspace(string[_length = strlen(string) - 1])) \ string[_length] = '\0'; \ } while (0) ==== //depot/projects/trustedbsd/sebsd/sbin/ccdconfig/Makefile#4 (text+ko) ==== @@ -1,7 +1,7 @@ -# $FreeBSD: src/sbin/ccdconfig/Makefile,v 1.9 2003/06/02 20:50:59 phk Exp $ +# $FreeBSD: src/sbin/ccdconfig/Makefile,v 1.10 2003/08/07 19:10:35 johan Exp $ PROG= ccdconfig -WARNS?= 3 +WARNS?= 6 MAN= ccdconfig.8 DPADD= ${LIBGEOM} ==== //depot/projects/trustedbsd/sebsd/sbin/ccdconfig/ccdconfig.c#4 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sbin/ccdconfig/ccdconfig.c,v 1.33 2003/06/09 21:50:41 phk Exp $"); +__FBSDID("$FreeBSD: src/sbin/ccdconfig/ccdconfig.c,v 1.34 2003/08/07 19:10:35 johan Exp $"); #include #include @@ -380,16 +380,16 @@ static int dump_ccd(int argc, char **argv) { - int i, err; + int i, error; if (argc == 0) { - err = dumpout(-1); + error = dumpout(-1); } else { - err = 0; - for (i = 0; err == 0 && i < argc; i++) - err = dumpout(resolve_ccdname(argv[i])); + error = 0; + for (i = 0; error == 0 && i < argc; i++) + error = dumpout(resolve_ccdname(argv[i])); } - return (err); + return (error); } static int ==== //depot/projects/trustedbsd/sebsd/sbin/comcontrol/Makefile#4 (text+ko) ==== @@ -1,7 +1,8 @@ # @(#)Makefile 5.4 (Berkeley) 6/5/91 -# $FreeBSD: src/sbin/comcontrol/Makefile,v 1.6 2003/02/23 13:25:02 johan Exp $ +# $FreeBSD: src/sbin/comcontrol/Makefile,v 1.7 2003/08/08 19:51:01 johan Exp $ PROG= comcontrol MAN= comcontrol.8 +WARNS?= 6 .include ==== //depot/projects/trustedbsd/sebsd/sbin/comcontrol/comcontrol.c#4 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sbin/comcontrol/comcontrol.c,v 1.13 2003/05/03 18:41:56 obrien Exp $"); +__FBSDID("$FreeBSD: src/sbin/comcontrol/comcontrol.c,v 1.14 2003/08/08 19:51:01 johan Exp $"); #include #include @@ -40,6 +40,8 @@ #include #include +static void usage(void); + static void usage() { ==== //depot/projects/trustedbsd/sebsd/sbin/devd/Makefile#4 (text+ko) ==== @@ -1,10 +1,12 @@ -# $FreeBSD: src/sbin/devd/Makefile,v 1.4 2003/04/01 11:11:38 ru Exp $ +# $FreeBSD: src/sbin/devd/Makefile,v 1.5 2003/08/17 08:40:49 gordon Exp $ PROG_CXX=devd SRCS= devd.cc token.l parse.y y.tab.h MAN= devd.8 devd.conf.5 WARNS?= 1 +NOSHARED?=YES + DPADD= ${LIBL} LDADD= -ll ==== //depot/projects/trustedbsd/sebsd/sbin/devd/devd.8#4 (text+ko) ==== @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/sbin/devd/devd.8,v 1.9 2003/05/17 22:21:27 ru Exp $ +.\" $FreeBSD: src/sbin/devd/devd.8,v 1.10 2003/09/26 12:24:16 rse Exp $ .\" .Dd October 17, 2002 .Dt DEVD 8 @@ -48,7 +48,7 @@ Run in the foreground instead of becoming a daemon. .It Fl n Do not process all pending events before becoming a daemon. -Instaed, call daemon right away. +Instead, call daemon right away. .El .Sh IMPLEMENTATION NOTES The ==== //depot/projects/trustedbsd/sebsd/sbin/devfs/devfs.8#4 (text+ko) ==== @@ -23,7 +23,7 @@ .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF .\" SUCH DAMAGE. .\" -.\" $FreeBSD: src/sbin/devfs/devfs.8,v 1.7 2003/07/26 12:41:44 simon Exp $ +.\" $FreeBSD: src/sbin/devfs/devfs.8,v 1.8 2003/09/14 13:41:57 ru Exp $ .\" .Dd July 1, 2002 .Dt DEVFS 8 @@ -278,7 +278,7 @@ .Pa /dev/speaker was created, this command will cause its file mode to be changed to 666, -as rule rule prescribes. +as rule prescribes. .Pp .Dl devfs rule add path "snp*" mode 660 group snoopers .Pp ==== //depot/projects/trustedbsd/sebsd/sbin/dhclient/Makefile.inc#4 (text+ko) ==== @@ -1,9 +1,9 @@ -# $FreeBSD: src/sbin/dhclient/Makefile.inc,v 1.5 2003/07/28 08:30:11 mbr Exp $ +# $FreeBSD: src/sbin/dhclient/Makefile.inc,v 1.6 2003/08/09 20:36:06 mbr Exp $ MAINTAINER= murray WARNS= 0 -CFLAGS+= -I${DIST_DIR}/includes -DENABLE_POLLING_MODE +CFLAGS+= -I${DIST_DIR}/includes -DENABLE_POLLING_MODE -DNOMINUM CLIENTBINDIR= /sbin RUNDIR= /var/run ==== //depot/projects/trustedbsd/sebsd/sbin/disklabel/disklabel.5#4 (text+ko) ==== @@ -33,7 +33,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)disklabel.5.5 8.1 (Berkeley) 6/5/93 -.\" $FreeBSD: src/sbin/disklabel/disklabel.5,v 1.15 2002/12/12 17:25:54 ru Exp $ +.\" $FreeBSD: src/sbin/disklabel/disklabel.5,v 1.16 2003/09/10 19:24:34 ru Exp $ .\" .Dd June 5, 1993 .Dt DISKLABEL 5 @@ -103,7 +103,7 @@ .Xr disklabel 8 . .Pp The format of the disk label, as specified in -.Pa , +.In sys/disklabel.h , is .Bd -literal #ifndef _SYS_DISKLABEL_H_ ==== //depot/projects/trustedbsd/sebsd/sbin/disklabel/disklabel.8#4 (text+ko) ==== @@ -33,7 +33,7 @@ .\" SUCH DAMAGE. .\" .\" @(#)disklabel.8 8.2 (Berkeley) 4/19/94 -.\" $FreeBSD: src/sbin/disklabel/disklabel.8,v 1.52 2003/05/19 19:52:29 ru Exp $ +.\" $FreeBSD: src/sbin/disklabel/disklabel.8,v 1.53 2003/09/08 19:57:18 ru Exp $ .\" .Dd March 15, 2003 .Dt DISKLABEL 8 @@ -695,7 +695,7 @@ (See the definitions starting with .Dv FS_UNUSED in -.Aq Pa sys/disklabel.h +.In sys/disklabel.h for more details.) .It Ar fsize For ==== //depot/projects/trustedbsd/sebsd/sbin/dump/optr.c#4 (text+ko) ==== @@ -36,7 +36,7 @@ static char sccsid[] = "@(#)optr.c 8.2 (Berkeley) 1/6/94"; #endif static const char rcsid[] = - "$FreeBSD: src/sbin/dump/optr.c,v 1.25 2003/04/07 11:34:12 mdodd Exp $"; + "$FreeBSD: src/sbin/dump/optr.c,v 1.27 2003/09/21 22:14:49 ps Exp $"; #endif /* not lint */ #include @@ -227,17 +227,20 @@ msg(const char *fmt, ...) { va_list ap; + va_list ap2; (void) fprintf(stderr," DUMP: "); #ifdef TDEBUG (void) fprintf(stderr, "pid=%d ", getpid()); #endif va_start(ap, fmt); + va_copy(ap2, ap); (void) vfprintf(stderr, fmt, ap); (void) fflush(stdout); (void) fflush(stderr); - (void) vsnprintf(lastmsg, sizeof(lastmsg), fmt, ap); + (void) vsnprintf(lastmsg, sizeof(lastmsg), fmt, ap2); va_end(ap); + va_end(ap2); } void ==== //depot/projects/trustedbsd/sebsd/sbin/ffsinfo/Makefile#4 (text+ko) ==== @@ -1,7 +1,7 @@ # @(#)Makefile 8.8 (Berkeley) 6/21/2000 # # $TSHeader: src/sbin/ffsinfo/Makefile,v 1.3 2000/12/05 19:45:10 tomsoft Exp $ -# $FreeBSD: src/sbin/ffsinfo/Makefile,v 1.5 2003/06/11 23:24:31 obrien Exp $ +# $FreeBSD: src/sbin/ffsinfo/Makefile,v 1.6 2003/08/14 18:55:31 rwatson Exp $ # MAINTAINER= tomsoft@FreeBSD.ORG, chm@FreeBSD.ORG @@ -15,5 +15,7 @@ WARNS?= 0 CFLAGS+=-DFS_DEBUG -I${GROWFS} +DPADD= ${LIBUFS} +LDADD= -lufs .include ==== //depot/projects/trustedbsd/sebsd/sbin/ffsinfo/ffsinfo.8#2 (text+ko) ==== @@ -35,7 +35,7 @@ .\" SUCH DAMAGE. .\" .\" $TSHeader: src/sbin/ffsinfo/ffsinfo.8,v 1.3 2000/12/12 19:30:55 tomsoft Exp $ -.\" $FreeBSD: src/sbin/ffsinfo/ffsinfo.8,v 1.12 2002/08/21 18:10:14 trhodes Exp $ +.\" $FreeBSD: src/sbin/ffsinfo/ffsinfo.8,v 1.13 2003/08/14 18:55:31 rwatson Exp $ .\" .Dd September 8, 2000 .Dt FSINFO 8 @@ -45,7 +45,6 @@ .Nd "dump all meta information of an existing ufs file system" .Sh SYNOPSIS .Nm -.Op Fl L .Op Fl g Ar cylinder_group .Op Fl i Ar inode .Op Fl l Ar level @@ -65,9 +64,6 @@ .Pp The following options are available: .Bl -tag -width indent -.It Fl L -Specifying this option skips the tests of the disklabel. -This is done automatically, if the specified filename to dump is a plain file. .It Fl g Ar cylinder_group This restricts the dump to information about this cylinder group only. Here @@ -104,8 +100,6 @@ fragment allocation bitmap .It Ar 0x040 cluster maps and summary -.It Ar 0x080 -rotational layout tables .It Ar 0x100 inode information .It Ar 0x200 @@ -126,13 +120,7 @@ .Pa /dev/vinum/testvol with all available information. .Sh BUGS -Currently -.Nm -can only dump unmounted file systems. -Do not try dumping a mounted file system, your system may panic and you will -not be able to use the file system any longer. -.Pp -Also snapshots are handled like plain files. +Snapshots are handled like plain files. They should get their own level to provide for independent control of the amount of what gets dumped. It probably also makes sense to some extend to dump the snapshot as a ==== //depot/projects/trustedbsd/sebsd/sbin/ffsinfo/ffsinfo.c#2 (text+ko) ==== @@ -48,19 +48,25 @@ #ifndef lint static const char rcsid[] = - "$FreeBSD: src/sbin/ffsinfo/ffsinfo.c,v 1.5 2002/08/21 18:10:14 trhodes Exp $"; + "$FreeBSD: src/sbin/ffsinfo/ffsinfo.c,v 1.6 2003/08/14 18:55:31 rwatson Exp $"; #endif /* not lint */ /* ********************************************************** INCLUDES ***** */ #include #include +#include #include -#include -#include +#include +#include +#include + #include #include #include +#include +#include +#include #include #include #include @@ -72,20 +78,18 @@ int _dbg_lvl_ = (DL_INFO); /* DL_TRC */ #endif /* FS_DEBUG */ +struct uufsd disk; + +#define sblock disk.d_fs +#define acg disk.d_cg + static union { - struct fs fs; - char pad[SBSIZE]; -} fsun1, fsun2; -#define sblock fsun1.fs -#define osblock fsun2.fs + struct fs fs; + char pad[SBLOCKSIZE]; +} fsun; -static union { - struct cg cg; - char pad[MAXBSIZE]; -} cgun1; -#define acg cgun1.cg +#define osblock fsun.fs -static char ablk[MAXBSIZE]; static char i1blk[MAXBSIZE]; static char i2blk[MAXBSIZE]; static char i3blk[MAXBSIZE]; @@ -93,36 +97,14 @@ static struct csum *fscs; /* ******************************************************** PROTOTYPES ***** */ -static void rdfs(daddr_t, size_t, void *, int); static void usage(void); -static struct disklabel *get_disklabel(int); -static struct dinode *ginode(ino_t, int); -static void dump_whole_inode(ino_t, int, int); +static void dump_whole_ufs1_inode(ino_t, int); +static void dump_whole_ufs2_inode(ino_t, int); -/* ************************************************************** rdfs ***** */ -/* - * Here we read some block(s) from disk. - */ -void -rdfs(daddr_t bno, size_t size, void *bf, int fsi) -{ - DBG_FUNC("rdfs") - ssize_t n; - - DBG_ENTER; - - if (lseek(fsi, (off_t)bno * DEV_BSIZE, 0) < 0) { - err(33, "rdfs: seek error: %ld", (long)bno); - } - n = read(fsi, bf, size); - if (n != (ssize_t)size) { - err(34, "rdfs: read error: %ld", (long)bno); - } +#define DUMP_WHOLE_INODE(A,B) \ + ( disk.d_ufs == 1 \ + ? dump_whole_ufs1_inode((A),(B)) : dump_whole_ufs2_inode((A),(B)) ) - DBG_LEAVE; - return; -} - /* ************************************************************** main ***** */ /* * ffsinfo(8) is a tool to dump all metadata of a file system. It helps to find @@ -140,13 +122,10 @@ main(int argc, char **argv) { DBG_FUNC("main") - char *device, *special, *cp; + char *device, *special; char ch; size_t len; struct stat st; - struct disklabel *lp; - struct partition *pp; - int fsi; struct csum *dbg_csp; int dbg_csc; char dbg_line[80]; @@ -155,7 +134,6 @@ int cg_start, cg_stop; ino_t in; char *out_file; - int Lflag=0; DBG_ENTER; @@ -167,11 +145,8 @@ errx(1, "strdup failed"); } - while ((ch=getopt(argc, argv, "Lg:i:l:o:")) != -1) { + while ((ch=getopt(argc, argv, "g:i:l:o:")) != -1) { switch(ch) { - case 'L': - Lflag=1; - break; case 'g': cfg_cg=atol(optarg); if(cfg_cg < -1) { @@ -248,58 +223,9 @@ device = special; } - /* - * Open our device for reading. - */ - fsi = open(device, O_RDONLY); - if (fsi < 0) { - err(1, "%s", device); - } - - stat(device, &st); - - if(S_ISREG(st.st_mode)) { /* label check not supported for files */ - Lflag=1; - } - - if(!Lflag) { - /* - * Try to read a label and gess the slice if not specified. - * This code should guess the right thing and avaid to bother - * the user user with the task of specifying the option -v on - * vinum volumes. - */ - cp=device+strlen(device)-1; - lp = get_disklabel(fsi); - if(lp->d_type == DTYPE_VINUM) { - pp = &lp->d_partitions[0]; - } else if (isdigit(*cp)) { - pp = &lp->d_partitions[2]; - } else if (*cp>='a' && *cp<='h') { - pp = &lp->d_partitions[*cp - 'a']; - } else { - errx(1, "unknown device"); - } - - /* - * Check if that partition looks suited for dumping. - */ - if (pp->p_size < 1) { - errx(1, "partition is unavailable"); - } - if (pp->p_fstype != FS_BSDFFS) { - errx(1, "partition not 4.2BSD"); - } - } + if (ufs_disk_fillout(&disk, device) == -1) + err(1, "ufs_disk_fillout(%s) failed: %s", device, disk.d_error); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:35:51 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1129316A4C0; Wed, 22 Oct 2003 19:35:51 -0700 (PDT) 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 B963416A4B3 for ; Wed, 22 Oct 2003 19:35:50 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 26F1043FE1 for ; Wed, 22 Oct 2003 19:35:50 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2ZnXJ059876 for ; Wed, 22 Oct 2003 19:35:49 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2Zn5O059873 for perforce@freebsd.org; Wed, 22 Oct 2003 19:35:49 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:35:49 -0700 (PDT) Message-Id: <200310230235.h9N2Zn5O059873@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 Subject: PERFORCE change 40245 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:35:51 -0000 http://perforce.freebsd.org/chv.cgi?CH=40245 Change 40245 by rwatson@rwatson_paprika on 2003/10/22 19:35:38 Integrate trustedbsd_sebsd rescue tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. Affected files ... .. //depot/projects/trustedbsd/sebsd/rescue/rescue/Makefile#3 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/rescue/rescue/Makefile#3 (text+ko) ==== @@ -1,4 +1,4 @@ -#$FreeBSD: src/rescue/rescue/Makefile,v 1.15 2003/08/01 09:04:32 gordon Exp $ +#$FreeBSD: src/rescue/rescue/Makefile,v 1.19 2003/09/27 17:27:02 markm Exp $ # @(#)Makefile 8.1 (Berkeley) 6/2/93 PROG= rescue @@ -68,7 +68,7 @@ ed expr getfacl hostname kenv kill ln ls mkdir mv pax ps pwd \ realpath rm rmdir setfacl sh stty sync test CRUNCH_LIBS+= -lcrypt -ledit -lkvm -ll -lm -ltermcap -lutil -.if exists(${.CURDIR}/../../crypto) && !defined(NOCRYPT) && !defined(NO_OPENSSL) +.if !defined(NOCRYPT) && !defined(NO_OPENSSL) CRUNCH_LIBS+= -lcrypto .endif @@ -102,17 +102,30 @@ # headers in addition to the standard 'paths.h' header. # CRUNCH_SRCDIRS+= sbin -CRUNCH_PROGS_sbin= atm atacontrol badsect bsdlabel camcontrol \ - ccdconfig clri devfs dmesg dump \ +CRUNCH_PROGS_sbin= atacontrol badsect bsdlabel \ + camcontrol ccdconfig clri devfs dmesg dump \ dumpfs dumpon fore_dnld fsck fsck_ffs fsck_msdosfs fsdb \ - fsirand gbde ifconfig ilmid init \ + fsirand gbde ifconfig init \ kldconfig kldload kldstat kldunload ldconfig \ md5 mdconfig mdmfs mknod mount mount_cd9660 mount_ext2fs \ mount_msdosfs mount_nfs mount_ntfs mount_nullfs \ mount_std mount_udf mount_umapfs mount_unionfs newfs \ - newfs_msdos nos-tun ping ping6 raidctl reboot \ + newfs_msdos nos-tun ping raidctl reboot \ restore rcorder route routed rtquery rtsol savecore \ - slattach spppcontrol startslip swapon sysctl tunefs umount vinum + slattach spppcontrol startslip swapon sysctl tunefs umount + +.if !defined(NOATM) +CRUNCH_PROGS_sbin+= atm atmconfig ilmid +CRUNCH_LIBS+= -latm +.endif + +.if !defined(NOINET6) +CRUNCH_PROGS_sbin+= ping6 +.endif + +.if !defined(NO_VINUM) +CRUNCH_PROGS_sbin+= vinum +.endif .if !defined(NO_IPFILTER) CRUNCH_PROGS_sbin+= ipf ipfs ipfstat ipmon ipnat @@ -121,8 +134,8 @@ # crunchgen does not like C++ programs; this should be fixed someday # CRUNCH_PROGS+= devd -CRUNCH_LIBS+= -lalias -latm -lbsdxml -lcam -lcurses -ldevstat -lipsec -lipx \ - -lgeom -lmd -lreadline -lsbuf -lufs -lz +CRUNCH_LIBS+= -lalias -lbsdxml -lcam -lcurses -ldevstat -lipsec -lipx \ + -lgeom -lkiconv -lmd -lreadline -lsbuf -lufs -lz .if ${MACHINE_ARCH} == "i386" CRUNCH_PROGS_sbin+= cxconfig fdisk @@ -153,6 +166,7 @@ .endif CRUNCH_SRCDIR_atm= $(.CURDIR)/../../sbin/atm/atm +CRUNCH_SRCDIR_atmconfig= $(.CURDIR)/../../sbin/atm/atmconfig CRUNCH_SRCDIR_fore_dnld= $(.CURDIR)/../../sbin/atm/fore_dnld CRUNCH_SRCDIR_ilmid= $(.CURDIR)/../../sbin/atm/ilmid CRUNCH_SRCDIR_rtquery= $(.CURDIR)/../../sbin/routed/rtquery From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:38:57 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3975216A4C0; Wed, 22 Oct 2003 19:38:57 -0700 (PDT) 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 0DD3B16A4B3 for ; Wed, 22 Oct 2003 19:38:57 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AF0C543FA3 for ; Wed, 22 Oct 2003 19:38:54 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2csXJ061084 for ; Wed, 22 Oct 2003 19:38:54 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2csI3061068 for perforce@freebsd.org; Wed, 22 Oct 2003 19:38:54 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:38:54 -0700 (PDT) Message-Id: <200310230238.h9N2csI3061068@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 Subject: PERFORCE change 40246 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:38:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=40246 Change 40246 by rwatson@rwatson_paprika on 2003/10/22 19:38:15 Integrate trustedbsd_sebsd usr.bin tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. Affected files ... .. //depot/projects/trustedbsd/sebsd/usr.bin/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/calendar/calendars/calendar.australia#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/calendar/calendars/calendar.birthday#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/calendar/calendars/calendar.freebsd#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/calendar/calendars/calendar.holiday#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/calendar/calendars/calendar.music#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/chat/chat.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/colldef/colldef.1#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/doscmd/doscmd.1#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/elfdump/elfdump.c#3 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/fetch/fetch.1#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/file/file.1#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/fstat/msdosfs.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/getconf/confstr.gperf#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/getconf/fake-gperf.awk#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/getconf/getconf.1#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/getconf/getconf.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/getconf/limits.gperf#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/getconf/pathconf.gperf#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/getconf/progenv.gperf#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/getconf/sysconf.gperf#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/killall/killall.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/last/last.1#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/last/last.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/lock/lock.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/make/cond.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/make/dir.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/make/dir.h#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/make/for.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/make/main.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/make/make.1#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/make/var.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/mklocale/lex.l#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/mklocale/mklocale.1#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/mkstr/mkstr.1#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/mt/mt.1#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/netstat/inet.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/netstat/main.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/netstat/mroute.c#3 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/netstat/netstat.1#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/netstat/netstat.h#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/nl/nl.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/ranlib/Makefile#2 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/ranlib/build.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/ranlib/extern.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/ranlib/misc.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/ranlib/pathnames.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/ranlib/ranlib.1#2 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/ranlib/ranlib.1aout#2 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/ranlib/ranlib.5#2 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/ranlib/ranlib.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/ranlib/touch.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/rlogin/rlogin.1#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/rlogin/rlogin.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/rpcinfo/rpcinfo.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/rsh/rsh.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/script/script.1#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/su/su.1#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/symorder/Makefile#2 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/symorder/symorder.1#4 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/symorder/symorder.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.bin/tail/forward.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/talk/ctl.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/talk/io.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/talk/look_up.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/tcopy/tcopy.1#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/tftp/main.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/tftp/tftp.1#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/tip/tip/tip.1#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/truss/main.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/truss/setup.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/tsort/tsort.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/w/w.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.bin/window/main.c#2 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/usr.bin/Makefile#4 (text+ko) ==== @@ -1,5 +1,5 @@ # From: @(#)Makefile 8.3 (Berkeley) 1/7/94 -# $FreeBSD: src/usr.bin/Makefile,v 1.245 2003/07/24 18:30:24 markm Exp $ +# $FreeBSD: src/usr.bin/Makefile,v 1.250 2003/09/24 00:43:48 marcel Exp $ # XXX MISSING: deroff diction graph learn plot # spell spline struct xsend @@ -8,14 +8,25 @@ # .if ${MACHINE_ARCH} != "ia64" +.if !defined(NO_TOOLCHAIN) _xlint= xlint .endif +.endif .if ${MACHINE_ARCH} != "powerpc" && ${MACHINE_ARCH} != "amd64" +.if !defined(NO_TOOLCHAIN) _gprof= gprof +.endif _truss= truss .endif +.if !defined(NO_TOOLCHAIN) +_c89= c89 +_c99= c99 +_lex= lex +_yacc= yacc +.endif + SUBDIR= alias \ apply \ asa \ @@ -27,8 +38,8 @@ brandelf \ bzip2 \ bzip2recover \ - c89 \ - c99 \ + ${_c89} \ + ${_c99} \ calendar \ cap_mkdb \ catman \ @@ -96,7 +107,7 @@ less \ lessecho \ lesskey \ - lex \ + ${_lex} \ limits \ locale \ locate \ @@ -160,7 +171,6 @@ split \ stat \ su \ - symorder \ systat \ tabs \ tail \ @@ -188,8 +198,6 @@ uniq \ units \ unvis \ - usbhidaction \ - usbhidctl \ users \ uudecode \ uuencode \ @@ -212,7 +220,7 @@ xinstall \ ${_xlint} \ xstr \ - yacc \ + ${_yacc} \ yes \ ypcat \ ypmatch \ @@ -229,6 +237,11 @@ SUBDIR+=vacation .endif +.if !defined(NO_USB) +SUBDIR+=usbhidaction \ + usbhidctl +.endif + .if ${MACHINE_ARCH} == "i386" # Things that don't compile on alpha or are aout specific: SUBDIR+=doscmd \ ==== //depot/projects/trustedbsd/sebsd/usr.bin/calendar/calendars/calendar.australia#4 (text+ko) ==== @@ -1,15 +1,16 @@ /* * Australian holidays * - * $FreeBSD: src/usr.bin/calendar/calendars/calendar.australia,v 1.3 2002/12/25 23:15:36 grog Exp $ + * $FreeBSD: src/usr.bin/calendar/calendars/calendar.australia,v 1.4 2003/10/01 00:58:35 grog Exp $ */ #ifndef _calendar_australia_ #define _calendar_australia_ /* Australia */ -Jan 28 Australia Day Holiday (Australia, except NSW, Vic) -Jun 10 Queen's Birthday Holiday (Australia, except WA) +Jan 26 Australia Day +Apr 25 Anzac Day +Jun/MonSecond Queen's Birthday Holiday (Australia, except WA) /* ACT, NSW, common */ Mar 18 Canberra Day (ACT) @@ -29,7 +30,7 @@ Nov 04 Recreation Day (N Tas) /* South Australia */ -May 20 Adelaide Cup (SA) +May/MonThird Adelaide Cup (SA) Dec 26 Proclamation Day holiday (SA) /* Western Australia */ ==== //depot/projects/trustedbsd/sebsd/usr.bin/calendar/calendars/calendar.birthday#4 (text+ko) ==== @@ -1,7 +1,7 @@ /* * Birthday * - * $FreeBSD: src/usr.bin/calendar/calendars/calendar.birthday,v 1.24 2003/08/06 03:38:12 grog Exp $ + * $FreeBSD: src/usr.bin/calendar/calendars/calendar.birthday,v 1.25 2003/08/13 19:21:11 murray Exp $ */ #ifndef _calendar_birthday_ @@ -179,6 +179,7 @@ 08/06 Jonathan B. Postel is born in Altadena, California, 1943 08/08 Dustin Hoffman born in Los Angeles, 1937 08/12 Thomas Mann's Death, 1955 +08/13 Alfred Hitchcock born, 1899 08/13 Annie Oakley born, 1860 08/13 Fidel Castro born, 1927 08/17 Mae West born, 1892 ==== //depot/projects/trustedbsd/sebsd/usr.bin/calendar/calendars/calendar.freebsd#4 (text+ko) ==== @@ -1,7 +1,7 @@ /* * FreeBSD * - * $FreeBSD: src/usr.bin/calendar/calendars/calendar.freebsd,v 1.104 2003/07/21 10:43:37 krion Exp $ + * $FreeBSD: src/usr.bin/calendar/calendars/calendar.freebsd,v 1.106 2003/08/15 12:02:31 mat Exp $ */ #ifndef _calendar_freebsd_ @@ -38,6 +38,7 @@ 02/21 Alexey Zelkin born in Simferopol, Ukraine, 1978 02/22 Brooks Davis born in Longview, Washington, United States, 1976 02/22 Jake Burkholder born in Maynooth, Ontario, Canada, 1979 +02/23 Mathieu Arnold born in Champigny sur Marne, Val de Marne, France, 1978 02/23 Peter Wemm born in Perth, Western Australia, Australia, 1971 02/24 Johan Karlsson born in Mariannelund, Sweden, 1974 02/28 Daichi GOTO born in Shimizu Suntou, Shizuoka, Japan, 1980 @@ -119,6 +120,7 @@ 07/22 James Housley born in Chicago, Illinois, United States, 1965 07/22 Jens Schweikhardt born in Waiblingen, Baden-Wuerttemberg, Germany, 1967 07/23 Sergey A. Osokin born in Krasnogorsky, Stepnogorsk, Akmolinskaya region, Kazakhstan, 1972 +07/24 Alexander Nedotsukov born in Ulyanovsk, Russian Federation, 1974 07/28 Jim Mock born in Bethlehem, Pennsylvania, United States, 1974 07/28 Tom Hukins born in Manchester, United Kingdom, 1976 07/29 Dirk Meyer born in Kassel, Hessen, Germany, 1965 ==== //depot/projects/trustedbsd/sebsd/usr.bin/calendar/calendars/calendar.holiday#2 (text+ko) ==== @@ -1,7 +1,7 @@ /* * Holiday * - * $FreeBSD: src/usr.bin/calendar/calendars/calendar.holiday,v 1.23 2002/11/19 00:29:36 grog Exp $ + * $FreeBSD: src/usr.bin/calendar/calendars/calendar.holiday,v 1.27 2003/10/01 00:57:49 grog Exp $ */ #ifndef _calendar_holiday_ @@ -36,7 +36,6 @@ 01/23 Feast of St. Ildefonsus 01/23 US National Handwriting Day 01/24 Economic Liberation Day in Togo -01/26 Australia Day in Australia 01/26 Republic Day in India 01/MonSecond Adults Day in Japan 01/MonThird Lee-Jackson Day in Virginia (3rd Monday) @@ -400,15 +399,14 @@ 09/26 Revolution Anniversary Day in Yemen 09/27 Feast of Finding the True Cross in Ethiopia 09/28 Confucius' Day in Taiwan +09/29 Michaelmas 09/29 Battle of Boqueron in Paraguay 09/30 Botswana Day in Botswana -09/MonSecond Respect for the Aged Day in Japan +09/MonThird Respect for the Aged Day in Japan 10/01 Armed Forces Day in South Korea 10/01 Independence Day in Nigeria -10/01 Labour Day in Australia (ACT, NSW and SA only) 10/01 National Liberation Day (2 days) in China 10/01 Public Holiday in Botswana -10/01 Queen's Birthday in Western Australia 10/02 Anniversary of Guinean Independence in Guinea 10/03 Chung Yeung Festival in Hong Kong 10/03 Francisco Morazan's Birthday in Honduras @@ -453,6 +451,7 @@ 10/24 Independence Day in Zambia 10/24 United Nations Day 10/25 Taiwan Restoration Day in Taiwan +10/25 St. Crispin's day, patron saint of shoemakers 10/26 Agam Day in Nauru 10/26 Armed Forces Day in Benin and Rwanda 10/26 National Day in Austria ==== //depot/projects/trustedbsd/sebsd/usr.bin/calendar/calendars/calendar.music#2 (text+ko) ==== @@ -1,7 +1,7 @@ /* * Music * - * $FreeBSD: src/usr.bin/calendar/calendars/calendar.music,v 1.11 2002/07/28 00:42:02 grog Exp $ + * $FreeBSD: src/usr.bin/calendar/calendars/calendar.music,v 1.12 2003/10/01 00:59:13 grog Exp $ */ #ifndef _calendar_music_ @@ -116,8 +116,7 @@ 07/28 Antonio Vivaldi dies in Vienna, 1741 07/28 The Watkins Glen "Summer Jam" opens, 1973 08/01 The Concert for Bangla Desh takes place at Madison Square Garden, 1971 -08/04 John Lennon points out that "the Beatles are more popular than Jesus", - 1966 +08/04 John Lennon points out that "the Beatles are more popular than Jesus", 1966 08/10 Ian Anderson (Jethro Tull) is born in Edinburgh, Scotland, 1947 08/13 Dan Fogelberg is born in Peoria, Illinois, 1951 08/15 Beatles replace drummer Pete Best with Richard Starkey ==== //depot/projects/trustedbsd/sebsd/usr.bin/chat/chat.c#2 (text+ko) ==== @@ -77,35 +77,23 @@ * */ -#ifndef lint -static const char rcsid[] = - "$FreeBSD: src/usr.bin/chat/chat.c,v 1.19 2002/08/25 13:22:33 charnier Exp $"; -#endif +#include +__FBSDID("$FreeBSD: src/usr.bin/chat/chat.c,v 1.20 2003/08/22 17:47:40 markm Exp $"); -#include +#include +#include #include -#include +#include #include #include -#include +#include +#include +#include #include -#include -#include -#include -#include #include - -#ifndef TERMIO -#undef TERMIOS -#define TERMIOS -#endif - -#ifdef TERMIO -#include -#endif -#ifdef TERMIOS #include -#endif +#include +#include #define STR_LEN 1024 @@ -113,27 +101,16 @@ #define SIGTYPE void #endif -#include - #ifndef O_NONBLOCK #define O_NONBLOCK O_NDELAY #endif -#ifdef SUNOS -extern int sys_nerr; -extern char *sys_errlist[]; -#define memmove(to, from, n) bcopy(from, to, n) -#define strerror(n) ((unsigned)(n) < sys_nerr? sys_errlist[(n)] :\ - "unknown error") -#endif - /*************** Micro getopt() *********************************************/ #define OPTION(c,v) (_O&2&&**v?*(*v)++:!c||_O&4?0:(!(_O&1)&& \ (--c,++v),_O=4,c&&**v=='-'&&v[0][1]?*++*v=='-'\ &&!v[0][1]?(--c,++v,0):(_O=2,*(*v)++):0)) #define OPTARG(c,v) (_O&2?**v||(++v,--c)?(_O=1,--c,*v++): \ (_O=4,(char*)0):(char*)0) -#define OPTONLYARG(c,v) (_O&2&&**v?(_O=1,--c,*v++):(char*)0) #define ARG(c,v) (c?(--c,*v++):(char*)0) static int _O = 0; /* Internal state */ @@ -149,7 +126,6 @@ int to_stderr = 0; int Verbose = 0; int quiet = 0; -int report = 0; int exit_code = 0; FILE* report_fp = (FILE *) 0; char *report_file = (char *) 0; @@ -158,21 +134,14 @@ char *phone_num2 = (char *) 0; int timeout = DEFAULT_CHAT_TIMEOUT; +static char blank[] = ""; + int have_tty_parameters = 0; -#ifdef TERMIO -#define term_parms struct termio -#define get_term_param(param) ioctl(0, TCGETA, param) -#define set_term_param(param) ioctl(0, TCSETA, param) -struct termio saved_tty_parameters; -#endif - -#ifdef TERMIOS #define term_parms struct termios #define get_term_param(param) tcgetattr(0, param) #define set_term_param(param) tcsetattr(0, TCSANOW, param) struct termios saved_tty_parameters; -#endif char *abort_string[MAX_ABORTS], *fail_reason = (char *)0, fail_buffer[50]; @@ -195,31 +164,27 @@ SIGTYPE sigint(int signo); SIGTYPE sigterm(int signo); SIGTYPE sighup(int signo); -void unalarm(void); void init(void); void set_tty_parameters(void); void echo_stderr(int); void break_sequence(void); void terminate(int status); -void do_file(char *chat_file); -int get_string(register char *string); -int put_string(register char *s); +void do_file(char *chatfile); +int get_string(char *string); +int put_string(char *s); int write_char(int c); int put_char(int c); int get_char(void); -void chat_send(register char *s); +void chat_send(char *s); char *character(int c); -void chat_expect(register char *s); -char *clean(register char *s, int sending); -void break_sequence(void); -void terminate(int status); +void chat_expect(char *s); +char *clean(char *s, int sending); void pack_array(char **array, int end); -char *expect_strtok(char *, char *); +char *expect_strtok(char *, const char *); int vfmtmsg(char *, int, const char *, va_list); /* vsprintf++ */ -void *dup_mem(b, c) -void *b; -size_t c; +void * +dup_mem(void *b, size_t c) { void *ans = malloc (c); if (!ans) @@ -229,8 +194,8 @@ return ans; } -void *copy_of (s) -char *s; +void * +copy_of(char *s) { return dup_mem (s, strlen (s) + 1); } @@ -243,9 +208,7 @@ * Perform a UUCP-dialer-like chat script on stdin and stdout. */ int -main(argc, argv) - int argc; - char **argv; +main(int argc, char *argv[]) { int option; char *arg; @@ -299,7 +262,6 @@ if (verbose) fprintf (report_fp, "Opening \"%s\"...\n", report_file); - report = 1; } } break; @@ -330,16 +292,12 @@ report_fp = stderr; if (to_log) { -#ifdef ultrix - openlog("chat", LOG_PID); -#else openlog("chat", LOG_PID | LOG_NDELAY, LOG_LOCAL2); if (verbose) setlogmask(LOG_UPTO(LOG_INFO)); else setlogmask(LOG_UPTO(LOG_WARNING)); -#endif } init(); @@ -367,17 +325,17 @@ * Process a chat script when read from a file. */ -void do_file (chat_file) -char *chat_file; +void +do_file(char *chatfile) { int linect, sendflg; char *sp, *arg, quote; char buf [STR_LEN]; FILE *cfp; - cfp = fopen (chat_file, "r"); + cfp = fopen (chatfile, "r"); if (cfp == NULL) - fatal(1, "%s -- open failed: %m", chat_file); + fatal(1, "%s -- open failed: %m", chatfile); linect = 0; sendflg = 0; @@ -437,7 +395,7 @@ * We got an error parsing the command line. */ static void -usage() +usage(void) { fprintf(stderr, "\ Usage: chat [-e] [-v] [-V] [-t timeout] [-r report-file] [-T phone-number]\n\ @@ -450,7 +408,8 @@ /* * Send a message to syslog and/or stderr. */ -void logf(const char *fmt, ...) +void +logf(const char *fmt, ...) { va_list args; @@ -466,7 +425,8 @@ * Print an error message and terminate. */ -void fatal(int code, const char *fmt, ...) +void +fatal(int code, const char *fmt, ...) { va_list args; @@ -481,8 +441,7 @@ int alarmed = 0; -SIGTYPE sigalrm(signo) -int signo; +SIGTYPE sigalrm(int signo __unused) { int flags; @@ -500,36 +459,22 @@ logf("alarm"); } -void unalarm() -{ - int flags; - - if ((flags = fcntl(0, F_GETFL, 0)) == -1) - fatal(2, "Can't get file mode flags on stdin: %m"); - - if (fcntl(0, F_SETFL, flags & ~O_NONBLOCK) == -1) - fatal(2, "Can't set file mode flags on stdin: %m"); -} - -SIGTYPE sigint(signo) -int signo; +SIGTYPE sigint(int signo __unused) { fatal(2, "SIGINT"); } -SIGTYPE sigterm(signo) -int signo; +SIGTYPE sigterm(int signo __unused) { fatal(2, "SIGTERM"); } -SIGTYPE sighup(signo) -int signo; +SIGTYPE sighup(int signo __unused) { fatal(2, "SIGHUP"); } -void init() +void init(void) { signal(SIGINT, sigint); signal(SIGTERM, sigterm); @@ -541,7 +486,7 @@ alarmed = 0; } -void set_tty_parameters() +void set_tty_parameters(void) { #if defined(get_term_param) term_parms t; @@ -565,15 +510,12 @@ #endif } -void break_sequence() +void break_sequence(void) { -#ifdef TERMIOS tcsendbreak (0, 0); -#endif } -void terminate(status) -int status; +void terminate(int status) { echo_stderr(-1); if (report_file != (char *) 0 && report_fp != (FILE *) NULL) { @@ -581,7 +523,8 @@ * Allow the last of the report string to be gathered before we terminate. */ if (report_gathering) { - int c, rep_len; + int c; + size_t rep_len; rep_len = strlen(report_buffer); while (rep_len + 1 <= sizeof(report_buffer)) { @@ -615,18 +558,17 @@ /* * 'Clean up' this string. */ -char *clean(s, sending) -register char *s; -int sending; /* set to 1 when sending (putting) this string. */ +char * +clean(char *s, int sending) { char temp[STR_LEN], cur_chr; - register char *s1, *phchar; + char *s1, *phchar; int add_return = sending; #define isoctal(chr) (((chr) >= '0') && ((chr) <= '7')) s1 = temp; /* Don't overflow buffer, leave room for chars we append later */ - while (*s && s1 - temp < sizeof(temp) - 2 - add_return) { + while (*s && s1 - temp < (off_t)(sizeof(temp) - 2 - add_return)) { cur_chr = *s++; if (cur_chr == '^') { cur_chr = *s++; @@ -767,10 +709,10 @@ * A modified version of 'strtok'. This version skips \ sequences. */ -char *expect_strtok (s, term) - char *s, *term; +char * +expect_strtok (char *s, const char *term) { - static char *str = ""; + static char *str = blank; int escape_flag = 0; char *result; @@ -822,8 +764,8 @@ * Process the expect string */ -void chat_expect (s) -char *s; +void +chat_expect(char *s) { char *expect; char *reply; @@ -911,11 +853,11 @@ * the data. */ -char *character(c) -int c; +char * +character(int c) { static char string[10]; - char *meta; + const char *meta; meta = (c & 0x80) ? "M-" : ""; c &= 0x7F; @@ -933,8 +875,8 @@ /* * process the reply string */ -void chat_send (s) -register char *s; +void +chat_send(char *s) { if (say_next) { say_next = 0; @@ -1075,15 +1017,16 @@ } if (strcmp(s, "EOT") == 0) - s = "^D\\c"; + s = strdup("^D\\c"); else if (strcmp(s, "BREAK") == 0) - s = "\\K\\c"; + s = strdup("\\K\\c"); if (!put_string(s)) fatal(1, "Failed"); } -int get_char() +int +get_char(void) { int status; char c; @@ -1108,8 +1051,7 @@ } } -int put_char(c) -int c; +int put_char(int c) { int status; char ch = c; @@ -1136,8 +1078,8 @@ } } -int write_char (c) -int c; +int +write_char(int c) { if (alarmed || put_char(c) < 0) { alarm(0); @@ -1154,23 +1096,19 @@ return (1); } -int put_string (s) -register char *s; +int +put_string(char *s) { quiet = 0; s = clean(s, 1); - if (verbose) { - if (quiet) - logf("send (??????)"); - else - logf("send (%v)", s); - } + if (verbose) + logf("send (%v)", quiet ? "??????" : s); alarm(timeout); alarmed = 0; while (*s) { - register char c = *s++; + char c = *s++; if (c != '\\') { if (!write_char (c)) @@ -1209,8 +1147,8 @@ * When called with -1, a '\n' character is generated when * the cursor is not at the beginning of a line. */ -void echo_stderr(n) -int n; +void +echo_stderr(int n) { static int need_lf; char *s; @@ -1237,12 +1175,13 @@ /* * 'Wait for' this string to appear on this file descriptor. */ -int get_string(string) -register char *string; +int +get_string(char *string) { char temp[STR_LEN]; - int c, printed = 0, len, minlen; - register char *s = temp, *end = s + STR_LEN; + int c, printed = 0; + size_t len, minlen; + char *s = temp, *end = s + STR_LEN; char *logged = temp; fail_reason = (char *)0; @@ -1325,7 +1264,7 @@ } } - if (s - temp >= len && + if ((size_t)(s - temp) >= len && c == string[len - 1] && strncmp(s - len, string, len) == 0) { if (verbose) { @@ -1385,47 +1324,8 @@ return (0); } -/* - * Gross kludge to handle Solaris versions >= 2.6 having usleep. - */ -#ifdef SOL2 -#include -#if MAXUID > 65536 /* then this is Solaris 2.6 or later */ -#undef NO_USLEEP -#endif -#endif /* SOL2 */ - -#ifdef NO_USLEEP -#include -#include - -/* - usleep -- support routine for 4.2BSD system call emulations - last edit: 29-Oct-1984 D A Gwyn - */ - -extern int select(); - -int -usleep( usec ) /* returns 0 if ok, else -1 */ - long usec; /* delay in microseconds */ -{ - static struct { /* `timeval' */ - long tv_sec; /* seconds */ - long tv_usec; /* microsecs */ - } delay; /* _select() timeout */ - - delay.tv_sec = usec / 1000000L; - delay.tv_usec = usec % 1000000L; - - return select(0, (long *)0, (long *)0, (long *)0, &delay); -} -#endif - void -pack_array (array, end) - char **array; /* The address of the array of string pointers */ - int end; /* The index of the next free entry before CLR_ */ +pack_array(char **array, int end) { int i, j; @@ -1451,11 +1351,7 @@ #define OUTCHAR(c) (buflen > 0? (--buflen, *buf++ = (c)): 0) int -vfmtmsg(buf, buflen, fmt, args) - char *buf; - int buflen; - const char *fmt; - va_list args; +vfmtmsg(char *buf, int buflen, const char *fmt, va_list args) { int c, i, n; int width, prec, fillch; ==== //depot/projects/trustedbsd/sebsd/usr.bin/colldef/colldef.1#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/usr.bin/colldef/colldef.1,v 1.18 2002/11/26 17:33:34 ru Exp $ +.\" $FreeBSD: src/usr.bin/colldef/colldef.1,v 1.20 2003/09/14 13:41:57 ru Exp $ .\" .Dd January 27, 1995 .Dt COLLDEF 1 @@ -47,8 +47,9 @@ functions. It is used to define the many ways in which strings can be ordered and collated. +The .Fn strxfrm -transforms +function transforms its first argument and places the result in its second argument. The transformed string is such that it can be @@ -57,8 +58,9 @@ .Fn strncmp , or .Fn memcmp . +The .Fn strcoll -transforms its arguments and does a +function transforms its arguments and does a comparison. .Pp The @@ -69,14 +71,14 @@ database with collating sequence information in a form usable by system commands and routines. .Pp -Options list: -.Bl -tag -width 4n +The following options are available: +.Bl -tag -width indent .It Fl I Ar map_dir -This option set directory name where +Set directory name where .Ar charmap files can be found, current directory by default. .It Fl o Ar out_file -This option set output file name, +Set output file name, .Ar LC_COLLATE by default. .El @@ -104,15 +106,17 @@ statements after the order statement are ignored. .Pp Lines in the specification file beginning with a -.Ar # +.Em # are treated as comments and are ignored. Blank lines are also ignored. .Pp -.Ar charmap charmapfile +.Bd -literal -offset indent +charmap charmapfile +.Ed .Pp -.Ar charmap +.Ar Charmap defines where a mapping of the character and collating element symbols to the actual character encoding can be found. @@ -122,23 +126,27 @@ is shown below. Symbol names are separated from their values by TAB or -SPACE characters. symbol-value can be specified in +SPACE characters. Symbol-value can be specified in a hexadecimal (\ex\fI??\fR) or octal (\e\fI???\fR) representation, and can be only one character in length. -.Bd -literal -.Ar symbol-name1 symbol-value1 -.Ar symbol-name2 symbol-value2 -.Ar ... +.Pp +.Bd -literal -offset indent +symbol-name1 symbol-value1 +symbol-name2 symbol-value2 +\&... .Ed >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:42:02 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 086B216A4C0; Wed, 22 Oct 2003 19:42:02 -0700 (PDT) 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 D4DB516A4B3 for ; Wed, 22 Oct 2003 19:42:01 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 60E1843FAF for ; Wed, 22 Oct 2003 19:42:00 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2g0XJ062397 for ; Wed, 22 Oct 2003 19:42:00 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2fxRx062376 for perforce@freebsd.org; Wed, 22 Oct 2003 19:41:59 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:41:59 -0700 (PDT) Message-Id: <200310230241.h9N2fxRx062376@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 Subject: PERFORCE change 40248 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:42:02 -0000 http://perforce.freebsd.org/chv.cgi?CH=40248 Change 40248 by rwatson@rwatson_paprika on 2003/10/22 19:41:21 Integrate trustedbsd_sebsd usr.sbin tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. ACPI upgrade. IPv6 upgrades. Affected files ... .. //depot/projects/trustedbsd/sebsd/usr.sbin/Makefile#6 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpiconf/acpiconf.8#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpiconf/acpiconf.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidb/Makefile#1 branch .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidb/acpidb.8#1 branch .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidb/acpidb.c#1 branch .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidump/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidump/acpi.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidump/acpi_user.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidump/acpidump.8#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidump/acpidump.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidump/acpidump.h#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidump/aml_dump.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidump/asl_dump.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/Makefile#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_amlmem.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_amlmem.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_common.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_common.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_env.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_evalobj.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_evalobj.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_memman.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_memman.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_name.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_name.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_obj.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_obj.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_parse.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_parse.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_region.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_region.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_status.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_store.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/aml/aml_store.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/amldb.8#4 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/amldb.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/debug.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/debug.h#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/amldb/region.c#2 delete .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/iasl/Makefile#1 branch .. //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/iasl/iasl.8#1 branch .. //depot/projects/trustedbsd/sebsd/usr.sbin/adduser/adduser.8#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/amd/include/config.h#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/ancontrol/ancontrol.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/asf/asf.8#3 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/asf/asf.c#3 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/boot0cfg/boot0cfg.8#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/cdcontrol/cdcontrol.1#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/cdcontrol/cdcontrol.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/chown/chown.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/config/config.8#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/crunch/crunchide/exec_elf32.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/ctm/mkCTM/mkctm.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/edquota/edquota.8#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/fwcontrol/fwcontrol.8#3 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/fwcontrol/fwcontrol.c#3 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/i4b/isdnd/isdnd.rc.5#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/i4b/isdndebug/isdndebug.8#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/lpr/lpd/lpd.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/lpr/lpd/printjob.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/lpr/lpd/recvjob.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/mptable/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/mptable/mptable.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/mrouted/mrouted.8#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/mtree/mtree.8#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/newsyslog/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/newsyslog/extern.h#1 branch .. //depot/projects/trustedbsd/sebsd/usr.sbin/newsyslog/newsyslog.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/newsyslog/ptimes.c#1 branch .. //depot/projects/trustedbsd/sebsd/usr.sbin/nghook/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/nghook/main.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/nghook/nghook.8#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/pkg_install/create/pkg_create.1#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/ppp/command.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/ppp/nat_cmd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/ppp/nat_cmd.h#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/ppp/ppp.8.m4#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/pw/pw.conf.5#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rarpd/rarpd.8#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rarpd/rarpd.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rmt/rmt.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/route6d/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/route6d/route6d.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/route6d/route6d.h#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/advcap.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/advcap.h#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/config.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/config.h#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/dump.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/if.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/if.h#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/rrenum.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/rtadvd.8#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/rtadvd.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/rtadvd.conf#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/rtadvd.conf.5#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/rtadvd.h#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/timer.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtadvd/timer.h#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtsold/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtsold/dump.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtsold/if.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtsold/probe.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtsold/rtsock.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtsold/rtsol.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtsold/rtsold.8#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtsold/rtsold.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/rtsold/rtsold.h#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/config.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/devices.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/disks.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/dispatch.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/dist.c#5 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/dist.h#5 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/dmenu.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/install.c#6 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/main.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/menus.c#6 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/modules.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/options.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/pccard.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/sysinstall/sysinstall.h#5 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/syslogd/syslogd.8#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/vidcontrol/vidcontrol.c#2 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/wicontrol/wicontrol.8#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/wicontrol/wicontrol.c#4 integrate .. //depot/projects/trustedbsd/sebsd/usr.sbin/zzz/zzz.8#3 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/usr.sbin/Makefile#6 (text+ko) ==== @@ -1,5 +1,5 @@ # From: @(#)Makefile 5.20 (Berkeley) 6/12/93 -# $FreeBSD: src/usr.sbin/Makefile,v 1.266 2003/07/25 18:22:53 peter Exp $ +# $FreeBSD: src/usr.sbin/Makefile,v 1.273 2003/09/30 04:19:01 peter Exp $ .if ${MACHINE_ARCH} != "powerpc" _sysinstall=sysinstall @@ -13,7 +13,6 @@ amd \ ancontrol \ arp \ - atm \ bootparamd \ burncd \ cdcontrol \ @@ -57,7 +56,6 @@ memcontrol \ mergemaster \ mixer \ - mld6query \ mlxcontrol \ mount_portalfs \ mountd \ @@ -86,9 +84,7 @@ rarpd \ raycontrol \ repquota \ - rip6query \ rmt \ - route6d \ rpcbind \ rpc.lockd \ rpc.statd \ @@ -116,12 +112,9 @@ tcpdump \ timed \ traceroute \ - traceroute6 \ trpt \ tzsetup \ ugidfw \ - usbd \ - usbdevs \ vidcontrol \ vipw \ vnconfig \ @@ -136,6 +129,17 @@ ypset \ zic +.if !defined(NOATM) +SUBDIR+=atm +.endif + +.if !defined(NOINET6) +SUBDIR+=mld6query \ + rip6query \ + route6d \ + traceroute6 +.endif + .if !defined(NO_IPFILTER) SUBDIR+=ipftest \ ipresend \ @@ -143,7 +147,11 @@ iptest .endif -.if !defined(NOLIBC_R) +.if !defined(NO_USB) +SUBDIR+=usbd \ + usbdevs +.endif +.if !defined(NOLIBC_R) && ${MACHINE_ARCH} != "powerpc" SUBDIR+=pppctl .endif @@ -174,9 +182,9 @@ .endif .if ${MACHINE_ARCH} == "i386" -SUBDIR+=acpi \ - apm \ +SUBDIR+=apm \ apmd \ + asf \ btxld \ kgmon \ kgzip \ @@ -193,9 +201,19 @@ stallion \ wlconfig \ zzz + +.if !defined(NO_ACPI) +SUBDIR+=acpi +.endif + .if !defined(NO_I4B) SUBDIR+=i4b .endif + +.endif + +.if ${MACHINE_ARCH} == "ia64" +SUBDIR+=acpi .endif # kgmon: builds, but no kernel profiling @@ -204,11 +222,13 @@ # pnpinfo: crashes (not really useful anyway) .if ${MACHINE_ARCH} == "amd64" SUBDIR+=acpi \ + asf \ boot0cfg \ btxld \ lptcontrol \ mount_nwfs \ mount_smbfs \ + mptable \ sicontrol \ spkrtest \ zzz ==== //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/Makefile#2 (text+ko) ==== @@ -1,7 +1,7 @@ # Makefile for acpi tools # $Id: Makefile,v 1.1 2000/07/14 18:16:22 iwasaki Exp $ -# $FreeBSD: src/usr.sbin/acpi/Makefile,v 1.2 2001/07/20 06:20:31 obrien Exp $ +# $FreeBSD: src/usr.sbin/acpi/Makefile,v 1.3 2003/08/08 03:20:59 njl Exp $ -SUBDIR= acpiconf acpidump amldb +SUBDIR= acpiconf acpidb acpidump iasl .include ==== //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/Makefile.inc#2 (text+ko) ==== @@ -1,8 +1,11 @@ # $Id: Makefile.inc,v 1.1 2000/07/14 18:16:22 iwasaki Exp $ -# $FreeBSD: src/usr.sbin/acpi/Makefile.inc,v 1.7 2002/09/17 14:56:23 jhb Exp $ +# $FreeBSD: src/usr.sbin/acpi/Makefile.inc,v 1.8 2003/08/07 16:51:50 njl Exp $ -CFLAGS+= -I${.CURDIR}/../../../sys +ACPICA_DIR= ${.CURDIR}/../../../sys/contrib/dev/acpica +CFLAGS+= -I${.CURDIR}/../../../sys -I${ACPICA_DIR} -I${ACPICA_DIR}/compiler .if exists(${.CURDIR}/../../Makefile.inc) .include "${.CURDIR}/../../Makefile.inc" .endif + +.PATH: ${ACPICA_DIR} ${ACPICA_DIR}/compiler ${ACPICA_DIR}/common ==== //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpiconf/acpiconf.8#4 (text+ko) ==== @@ -25,7 +25,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/usr.sbin/acpi/acpiconf/acpiconf.8,v 1.9 2003/07/28 16:22:45 njl Exp $ +.\" $FreeBSD: src/usr.sbin/acpi/acpiconf/acpiconf.8,v 1.10 2003/09/13 20:13:01 njl Exp $ .\" .Dd January 12, 2001 .Dt ACPICONF 8 @@ -36,6 +36,7 @@ .Sh SYNOPSIS .Nm .Op Fl deh +.Op Fl i Ar batt .Op Fl s Ar type .Sh DESCRIPTION The @@ -50,6 +51,8 @@ Enables ACPI power management. .It Fl h Displays a summary of available options. +.It Fl i Ar batt +Get design information about the specified battery. .It Fl s Ar type Enters the specified sleep mode. Recognized types are ==== //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpiconf/acpiconf.c#4 (text+ko) ==== @@ -24,7 +24,7 @@ * SUCH DAMAGE. * * $Id: acpiconf.c,v 1.5 2000/08/08 14:12:19 iwasaki Exp $ - * $FreeBSD: src/usr.sbin/acpi/acpiconf/acpiconf.c,v 1.10 2003/07/28 16:22:45 njl Exp $ + * $FreeBSD: src/usr.sbin/acpi/acpiconf/acpiconf.c,v 1.11 2003/09/13 20:13:01 njl Exp $ */ #include @@ -42,22 +42,25 @@ #define ACPIDEV "/dev/acpi" +static int acpifd; + static int +acpi_init() +{ + acpifd = open(ACPIDEV, O_RDWR); + if (acpifd == -1) + err(EX_OSFILE, ACPIDEV); +} + +static int acpi_enable_disable(int enable) { - int fd; - - fd = open(ACPIDEV, O_RDWR); - if (fd == -1) { - err(EX_OSFILE, ACPIDEV); - } - if (ioctl(fd, enable, NULL) == -1) { + if (ioctl(acpifd, enable, NULL) == -1) { if (enable == ACPIIO_ENABLE) err(EX_IOERR, "enable failed"); else err(EX_IOERR, "disable failed"); } - close(fd); return (0); } @@ -65,16 +68,43 @@ static int acpi_sleep(int sleep_type) { - int fd; + if (ioctl(acpifd, ACPIIO_SETSLPSTATE, &sleep_type) == -1) + err(EX_IOERR, "sleep type (%d) failed", sleep_type); + + return (0); +} + +static int +acpi_battinfo(int num) +{ + union acpi_battery_ioctl_arg battio; + const char *pwr_units; + + if (num < 0 || num > 64) + err(EX_USAGE, "invalid battery %d", num); + + battio.unit = num; + if (ioctl(acpifd, ACPIIO_CMBAT_GET_BIF, &battio) == -1) + err(EX_IOERR, "get battery info (%d) failed", num); + printf("Battery %d information\n", num); + if (battio.bif.units == 0) + pwr_units = "mWh"; + else + pwr_units = "mAh"; - fd = open(ACPIDEV, O_RDWR); - if (fd == -1) { - err(EX_OSFILE, ACPIDEV); - } - if (ioctl(fd, ACPIIO_SETSLPSTATE, &sleep_type) == -1) { - err(EX_IOERR, "sleep type (%d) failed", sleep_type); - } - close(fd); + printf("Design capacity:\t%d %s\n", battio.bif.dcap, pwr_units); + printf("Last full capacity:\t%d %s\n", battio.bif.lfcap, pwr_units); + printf("Technology:\t\t%s\n", battio.bif.btech == 0 ? + "primary (non-rechargeable)" : "secondary (rechargeable)"); + printf("Design voltage:\t\t%d mV\n", battio.bif.dvol); + printf("Capacity (warn):\t%d %s\n", battio.bif.wcap, pwr_units); + printf("Capacity (low):\t\t%d %s\n", battio.bif.lcap, pwr_units); + printf("Low/warn granularity:\t%d %s\n", battio.bif.gra1, pwr_units); + printf("Warn/full granularity:\t%d %s\n", battio.bif.gra2, pwr_units); + printf("Model number:\t\t%s\n", battio.bif.model); + printf("Serial number:\t\t%s\n", battio.bif.serial); + printf("Type:\t\t\t%s\n", battio.bif.type); + printf("OEM info:\t\t%s\n", battio.bif.oeminfo); return (0); } @@ -82,7 +112,7 @@ static void usage(const char* prog) { - printf("usage: %s [-deh] [-s [1|2|3|4|4b|5]]\n", prog); + printf("usage: %s [-deh] [-i batt] [-s 1-5]\n", prog); exit(0); } @@ -93,21 +123,23 @@ int sleep_type; prog = argv[0]; + if (argc < 2) + usage(prog); + /* NOTREACHED */ + sleep_type = -1; - while ((c = getopt(argc, argv, "dehs:")) != -1) { + acpi_init(); + while ((c = getopt(argc, argv, "dehi:s:")) != -1) { switch (c) { + case 'i': + acpi_battinfo(atoi(optarg)); + break; case 'd': acpi_enable_disable(ACPIIO_DISABLE); break; - case 'e': acpi_enable_disable(ACPIIO_ENABLE); break; - - case 'h': - usage(prog); - break; - case 's': if (optarg[0] == 'S') sleep_type = optarg[1] - '0'; @@ -115,17 +147,22 @@ sleep_type = optarg[0] - '0'; if (sleep_type < 0 || sleep_type > 5) errx(EX_USAGE, "invalid sleep type (%d)", - sleep_type); + sleep_type); break; + case 'h': default: - argc -= optind; - argv += optind; + usage(prog); + /* NOTREACHED */ } } + argc -= optind; + argv += optind; if (sleep_type != -1) { sleep(1); /* wait 1 sec. for key-release event */ acpi_sleep(sleep_type); } - return (0); + + close(acpifd); + exit (0); } ==== //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidump/Makefile#2 (text+ko) ==== @@ -1,13 +1,8 @@ -# $Id: Makefile,v 1.2 2000/07/14 18:16:29 iwasaki Exp $ -# $FreeBSD: src/usr.sbin/acpi/acpidump/Makefile,v 1.6 2001/10/22 17:25:25 iwasaki Exp $ +# $FreeBSD: src/usr.sbin/acpi/acpidump/Makefile,v 1.7 2003/08/28 03:33:07 njl Exp $ PROG= acpidump MAN= acpidump.8 -SRCS= acpi.c acpi_user.c asl_dump.c aml_dump.c acpidump.c -SRCS+= aml_parse.c aml_name.c aml_amlmem.c aml_memman.c aml_store.c \ - aml_obj.c aml_evalobj.c aml_common.c +SRCS= acpi.c acpi_user.c acpidump.c +WARNS?= 6 -CFLAGS+= -I${.CURDIR}/../amldb - .include -.PATH: ${.CURDIR}/../amldb/aml ==== //depot/projects/trustedbsd/sebsd/usr.sbin/acpi/acpidump/acpi.c#4 (text+ko) ==== @@ -24,62 +24,48 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: acpi.c,v 1.4 2000/08/09 14:47:52 iwasaki Exp $ - * $FreeBSD: src/usr.sbin/acpi/acpidump/acpi.c,v 1.9 2003/08/02 01:58:33 peter Exp $ + * $FreeBSD: src/usr.sbin/acpi/acpidump/acpi.c,v 1.20 2003/09/21 03:51:48 njl Exp $ */ #include +#include #include - +#include #include #include #include #include +#include #include #include "acpidump.h" -#include "aml/aml_env.h" -#include "aml/aml_common.h" - #define BEGIN_COMMENT "/*\n" #define END_COMMENT " */\n" -struct ACPIsdt dsdt_header = { - "DSDT", 0, 1, 0, "OEMID", "OEMTBLID", 0x12345678, "CRTR", 0x12345678 -}; +static void acpi_print_string(char *s, size_t length); +static void acpi_print_gas(struct ACPIgas *gas); +static void acpi_handle_fadt(struct FADTbody *fadt); +static void acpi_print_cpu(u_char cpu_id); +static void acpi_print_local_apic(u_char cpu_id, u_char apic_id, + u_int32_t flags); +static void acpi_print_io_apic(u_char apic_id, u_int32_t int_base, + u_int64_t apic_addr); +static void acpi_print_mps_flags(u_int16_t flags); +static void acpi_print_intr(u_int32_t intr, u_int16_t mps_flags); +static void acpi_print_apic(struct MADT_APIC *mp); +static void acpi_handle_apic(struct ACPIsdt *sdp); +static void acpi_handle_hpet(struct ACPIsdt *sdp); +static void acpi_print_sdt(struct ACPIsdt *sdp); +static void acpi_print_fadt(struct FADTbody *fadt); +static void acpi_print_facs(struct FACSbody *facs); +static void acpi_print_dsdt(struct ACPIsdt *dsdp); +static struct ACPIsdt *acpi_map_sdt(vm_offset_t pa); +static void acpi_print_rsd_ptr(struct ACPIrsdp *rp); +static void acpi_handle_rsdt(struct ACPIsdt *rsdp); -static void -acpi_trim_string(char *s, size_t length) -{ - - /* Trim trailing spaces and NULLs */ - while (length > 0 && (s[length - 1] == ' ' || s[length - 1] == '\0')) - s[length-- - 1] = '\0'; -} - -static void -acpi_print_dsdt_definition(void) -{ - char oemid[6 + 1]; - char oemtblid[8 + 1]; - - acpi_trim_string(dsdt_header.oemid, 6); - acpi_trim_string(dsdt_header.oemtblid, 8); - strncpy(oemid, dsdt_header.oemid, 6); - oemid[6] = '\0'; - strncpy(oemtblid, dsdt_header.oemtblid, 8); - oemtblid[8] = '\0'; - - printf("DefinitionBlock (\n" - " \"acpi_dsdt.aml\", //Output filename\n" - " \"DSDT\", //Signature\n" - " 0x%x, //DSDT Revision\n" - " \"%s\", //OEMID\n" - " \"%s\", //TABLE ID\n" - " 0x%x //OEM Revision\n)\n", - dsdt_header.rev, oemid, oemtblid, dsdt_header.oemrev); -} +/* Size of an address. 32-bit for ACPI 1.0, 64-bit for ACPI 2.0 and up. */ +static int addr_size; static void acpi_print_string(char *s, size_t length) @@ -97,29 +83,70 @@ } static void -acpi_handle_dsdt(struct ACPIsdt *dsdp) +acpi_print_gas(struct ACPIgas *gas) { - u_int8_t *dp; - u_int8_t *end; - - acpi_print_dsdt(dsdp); - dp = (u_int8_t *)dsdp->body; - end = (u_int8_t *)dsdp + dsdp->len; - - acpi_dump_dsdt(dp, end); + switch(gas->address_space_id) { + case ACPI_GAS_MEMORY: + printf("0x%08lx:%u[%u] (Memory)", (u_long)gas->address, + gas->bit_offset, gas->bit_width); + break; + case ACPI_GAS_IO: + printf("0x%02lx:%u[%u] (IO)", (u_long)gas->address, + gas->bit_offset, gas->bit_width); + break; + case ACPI_GAS_PCI: + printf("%x:%x+0x%x (PCI)", (uint16_t)(gas->address >> 32), + (uint16_t)((gas->address >> 16) & 0xffff), + (uint16_t)gas->address); + break; + /* XXX How to handle these below? */ + case ACPI_GAS_EMBEDDED: + printf("0x%x:%u[%u] (EC)", (uint16_t)gas->address, + gas->bit_offset, gas->bit_width); + break; + case ACPI_GAS_SMBUS: + printf("0x%x:%u[%u] (SMBus)", (uint16_t)gas->address, + gas->bit_offset, gas->bit_width); + break; + case ACPI_GAS_FIXED: + default: + printf("0x%08lx (?)", (u_long)gas->address); + break; + } } static void -acpi_handle_facp(struct FACPbody *facp) +acpi_handle_fadt(struct FADTbody *fadt) { - struct ACPIsdt *dsdp; + struct ACPIsdt *dsdp; + struct FACSbody *facs; + + acpi_print_fadt(fadt); + + /* + * My T23 is revision 2 but the 64 bit addresses are invalid. + * If revision 2 and the 32 bit address is non-zero but the 32 + * and 64 bit versions don't match, prefer the 32 bit version. + */ + if (addr_size == 4 || + (addr_size == 8 && fadt->facs_ptr != 0 && + (fadt->x_facs_ptr & 0xffffffff) != fadt->facs_ptr)) + facs = (struct FACSbody *)acpi_map_sdt(fadt->facs_ptr); + else + facs = (struct FACSbody *)acpi_map_sdt(fadt->x_facs_ptr); + if (memcmp(facs->signature, "FACS", 4) != 0 || facs->len < 64) + errx(1, "FACS is corrupt"); + acpi_print_facs(facs); - acpi_print_facp(facp); - dsdp = (struct ACPIsdt *) acpi_map_sdt(facp->dsdt_ptr); + if (addr_size == 4 || + (addr_size == 8 && fadt->dsdt_ptr != 0 && + (fadt->x_dsdt_ptr & 0xffffffff) != fadt->dsdt_ptr)) + dsdp = (struct ACPIsdt *)acpi_map_sdt(fadt->dsdt_ptr); + else + dsdp = (struct ACPIsdt *)acpi_map_sdt(fadt->x_dsdt_ptr); if (acpi_checksum(dsdp, dsdp->len)) - errx(1, "DSDT is corrupt\n"); - acpi_handle_dsdt(dsdp); - aml_dump(dsdp); + errx(1, "DSDT is corrupt"); + acpi_print_dsdt(dsdp); } static void @@ -149,17 +176,9 @@ static void acpi_print_io_apic(u_char apic_id, u_int32_t int_base, u_int64_t apic_addr) { - u_int addr_hi; - printf("\tAPIC ID=%d\n", (u_int)apic_id); printf("\tINT BASE=%d\n", int_base); - printf("\tADDR=0x"); - addr_hi = apic_addr >> 32; - if (addr_hi != 0) { - printf("%08x", addr_hi); - apic_addr &= 0xffffffff; - } - printf("%08x\n", (u_int)apic_addr); + printf("\tADDR=0x%016jx\n", apic_addr); } static void @@ -242,9 +261,8 @@ acpi_print_mps_flags(mp->body.local_nmi.mps_flags); break; case ACPI_MADT_APIC_TYPE_LOCAL_OVERRIDE: - printf("\tLocal APIC ADDR=0x%08x%08x\n", - (u_int)(mp->body.local_apic_override.apic_addr >> 32), - (u_int)(mp->body.local_apic_override.apic_addr & 0xffffffff)); + printf("\tLocal APIC ADDR=0x%016jx\n", + mp->body.local_apic_override.apic_addr); break; case ACPI_MADT_APIC_TYPE_IO_SAPIC: acpi_print_io_apic(mp->body.io_sapic.apic_id, @@ -268,6 +286,7 @@ break; default: printf("\tUnknown type %d\n", (u_int)mp->type); + break; } } @@ -277,15 +296,15 @@ struct MADTbody *madtp; struct MADT_APIC *madt_apicp; + printf(BEGIN_COMMENT); acpi_print_sdt(sdp); madtp = (struct MADTbody *) sdp->body; - printf(BEGIN_COMMENT); printf("\tLocal APIC ADDR=0x%08x\n", madtp->lapic_addr); printf("\tFlags={"); if (madtp->flags & ACPI_APIC_FLAG_PCAT_COMPAT) printf("PC-AT"); printf("}\n"); - madt_apicp = (struct MADT_APIC *) madtp->body; + madt_apicp = (struct MADT_APIC *)madtp->body; while (((uintptr_t)madt_apicp) - ((uintptr_t)sdp) < sdp->len) { printf("\n"); acpi_print_apic(madt_apicp); @@ -300,9 +319,9 @@ { struct HPETbody *hpetp; + printf(BEGIN_COMMENT); acpi_print_sdt(sdp); hpetp = (struct HPETbody *) sdp->body; - printf(BEGIN_COMMENT); printf("\tHPET Number=%d\n", hpetp->hpet_number); printf("\tADDR=0x%08x\n", hpetp->base_addr); printf("\tHW Rev=0x%x\n", hpetp->block_hwrev); @@ -319,58 +338,27 @@ } static void -init_namespace() +acpi_handle_ecdt(struct ACPIsdt *sdp) { - struct aml_environ env; - struct aml_name *newname; + struct ECDTbody *ecdt; - aml_new_name_group(AML_NAME_GROUP_OS_DEFINED); - env.curname = aml_get_rootname(); - newname = aml_create_name(&env, "\\_OS_"); - newname->property = aml_alloc_object(aml_t_string, NULL); - newname->property->str.needfree = 0; - newname->property->str.string = "Microsoft Windows NT"; + printf(BEGIN_COMMENT); + acpi_print_sdt(sdp); + ecdt = (struct ECDTbody *) sdp->body; + printf("\tEC_CONTROL="); + acpi_print_gas(&ecdt->ec_control); + printf("\n\tEC_DATA="); + acpi_print_gas(&ecdt->ec_data); + printf("\n\tUID=%#x, ", ecdt->uid); + printf("GPE_BIT=%#x\n", ecdt->gpe_bit); + printf("\tEC_ID=%s\n", ecdt->ec_id); + printf(END_COMMENT); } -/* - * Public interfaces - */ - -void -acpi_dump_dsdt(u_int8_t *dp, u_int8_t *end) -{ - extern struct aml_environ asl_env; - - acpi_print_dsdt_definition(); - - /* 1st stage: parse only w/o printing */ - init_namespace(); - aml_new_name_group((int)dp); - bzero(&asl_env, sizeof(asl_env)); - - asl_env.dp = dp; - asl_env.end = end; - asl_env.curname = aml_get_rootname(); - - aml_local_stack_push(aml_local_stack_create()); - aml_parse_objectlist(&asl_env, 0); - aml_local_stack_delete(aml_local_stack_pop()); - - assert(asl_env.dp == asl_env.end); - asl_env.dp = dp; - - /* 2nd stage: dump whole object list */ - printf("\n{\n"); - asl_dump_objectlist(&dp, end, 0); - printf("\n}\n"); - assert(dp == end); -} - -void +static void acpi_print_sdt(struct ACPIsdt *sdp) { - - printf(BEGIN_COMMENT); + printf(" "); acpi_print_string(sdp->signature, 4); printf(": Length=%d, Revision=%d, Checksum=%d,\n", sdp->len, sdp->rev, sdp->check); @@ -382,115 +370,216 @@ printf("\tCreator ID="); acpi_print_string(sdp->creator, 4); printf(", Creator Revision=0x%x\n", sdp->crerev); - printf(END_COMMENT); - if (!memcmp(sdp->signature, "DSDT", 4)) { - memcpy(&dsdt_header, sdp, sizeof(dsdt_header)); - } } -void +static void acpi_print_rsdt(struct ACPIsdt *rsdp) { int i, entries; + u_long addr; + printf(BEGIN_COMMENT); acpi_print_sdt(rsdp); - entries = (rsdp->len - SIZEOF_SDT_HDR) / sizeof(u_int32_t); - printf(BEGIN_COMMENT); + entries = (rsdp->len - SIZEOF_SDT_HDR) / addr_size; printf("\tEntries={ "); for (i = 0; i < entries; i++) { if (i > 0) printf(", "); - printf("0x%08x", rsdp->body[i]); + switch (addr_size) { + case 4: + addr = le32dec((char*)rsdp->body + i * addr_size); + break; + case 8: + addr = le64dec((char*)rsdp->body + i * addr_size); + break; + default: + addr = 0; + } + assert(addr != 0); + printf("0x%08lx", addr); } printf(" }\n"); printf(END_COMMENT); } -void -acpi_print_facp(struct FACPbody *facp) +static const char *acpi_pm_profiles[] = { + "Unspecified", "Desktop", "Mobile", "Workstation", + "Enterprise Server", "SOHO Server", "Appliance PC" +}; + +static void +acpi_print_fadt(struct FADTbody *fadt) { - char sep; + const char *pm; + char sep; printf(BEGIN_COMMENT); - printf("\tDSDT=0x%x\n", facp->dsdt_ptr); - printf("\tINT_MODEL=%s\n", facp->int_model ? "APIC" : "PIC"); - printf("\tSCI_INT=%d\n", facp->sci_int); - printf("\tSMI_CMD=0x%x, ", facp->smi_cmd); - printf("ACPI_ENABLE=0x%x, ", facp->acpi_enable); - printf("ACPI_DISABLE=0x%x, ", facp->acpi_disable); - printf("S4BIOS_REQ=0x%x\n", facp->s4biosreq); - if (facp->pm1a_evt_blk) - printf("\tPM1a_EVT_BLK=0x%x-0x%x\n", - facp->pm1a_evt_blk, - facp->pm1a_evt_blk + facp->pm1_evt_len - 1); - if (facp->pm1b_evt_blk) + printf(" FADT:\tFACS=0x%x, DSDT=0x%x\n", fadt->facs_ptr, + fadt->dsdt_ptr); + printf("\tINT_MODEL=%s\n", fadt->int_model ? "APIC" : "PIC"); + if (fadt->pm_profile >= sizeof(acpi_pm_profiles) / sizeof(char *)) + pm = "Reserved"; + else + pm = acpi_pm_profiles[fadt->pm_profile]; + printf("\tPreferred_PM_Profile=%s (%d)\n", pm, fadt->pm_profile); + printf("\tSCI_INT=%d\n", fadt->sci_int); + printf("\tSMI_CMD=0x%x, ", fadt->smi_cmd); + printf("ACPI_ENABLE=0x%x, ", fadt->acpi_enable); + printf("ACPI_DISABLE=0x%x, ", fadt->acpi_disable); + printf("S4BIOS_REQ=0x%x\n", fadt->s4biosreq); + printf("\tPSTATE_CNT=0x%x\n", fadt->pstate_cnt); + printf("\tPM1a_EVT_BLK=0x%x-0x%x\n", + fadt->pm1a_evt_blk, + fadt->pm1a_evt_blk + fadt->pm1_evt_len - 1); + if (fadt->pm1b_evt_blk != 0) printf("\tPM1b_EVT_BLK=0x%x-0x%x\n", - facp->pm1b_evt_blk, - facp->pm1b_evt_blk + facp->pm1_evt_len - 1); - if (facp->pm1a_cnt_blk) - printf("\tPM1a_CNT_BLK=0x%x-0x%x\n", - facp->pm1a_cnt_blk, - facp->pm1a_cnt_blk + facp->pm1_cnt_len - 1); - if (facp->pm1b_cnt_blk) + fadt->pm1b_evt_blk, + fadt->pm1b_evt_blk + fadt->pm1_evt_len - 1); + printf("\tPM1a_CNT_BLK=0x%x-0x%x\n", + fadt->pm1a_cnt_blk, + fadt->pm1a_cnt_blk + fadt->pm1_cnt_len - 1); + if (fadt->pm1b_cnt_blk != 0) printf("\tPM1b_CNT_BLK=0x%x-0x%x\n", - facp->pm1b_cnt_blk, - facp->pm1b_cnt_blk + facp->pm1_cnt_len - 1); - if (facp->pm2_cnt_blk) + fadt->pm1b_cnt_blk, + fadt->pm1b_cnt_blk + fadt->pm1_cnt_len - 1); + if (fadt->pm2_cnt_blk != 0) printf("\tPM2_CNT_BLK=0x%x-0x%x\n", - facp->pm2_cnt_blk, - facp->pm2_cnt_blk + facp->pm2_cnt_len - 1); - if (facp->pm_tmr_blk) - printf("\tPM2_TMR_BLK=0x%x-0x%x\n", - facp->pm_tmr_blk, - facp->pm_tmr_blk + facp->pm_tmr_len - 1); - if (facp->gpe0_blk) - printf("\tPM2_GPE0_BLK=0x%x-0x%x\n", - facp->gpe0_blk, - facp->gpe0_blk + facp->gpe0_len - 1); - if (facp->gpe1_blk) - printf("\tPM2_GPE1_BLK=0x%x-0x%x, GPE1_BASE=%d\n", - facp->gpe1_blk, - facp->gpe1_blk + facp->gpe1_len - 1, - facp->gpe1_base); - printf("\tP_LVL2_LAT=%dms, P_LVL3_LAT=%dms\n", - facp->p_lvl2_lat, facp->p_lvl3_lat); + fadt->pm2_cnt_blk, + fadt->pm2_cnt_blk + fadt->pm2_cnt_len - 1); + printf("\tPM_TMR_BLK=0x%x-0x%x\n", + fadt->pm_tmr_blk, + fadt->pm_tmr_blk + fadt->pm_tmr_len - 1); + if (fadt->gpe0_blk != 0) + printf("\tGPE0_BLK=0x%x-0x%x\n", + fadt->gpe0_blk, + fadt->gpe0_blk + fadt->gpe0_len - 1); + if (fadt->gpe1_blk != 0) + printf("\tGPE1_BLK=0x%x-0x%x, GPE1_BASE=%d\n", + fadt->gpe1_blk, + fadt->gpe1_blk + fadt->gpe1_len - 1, + fadt->gpe1_base); + if (fadt->cst_cnt != 0) + printf("\tCST_CNT=0x%x\n", fadt->cst_cnt); + printf("\tP_LVL2_LAT=%d us, P_LVL3_LAT=%d us\n", + fadt->p_lvl2_lat, fadt->p_lvl3_lat); printf("\tFLUSH_SIZE=%d, FLUSH_STRIDE=%d\n", - facp->flush_size, facp->flush_stride); + fadt->flush_size, fadt->flush_stride); printf("\tDUTY_OFFSET=%d, DUTY_WIDTH=%d\n", - facp->duty_off, facp->duty_width); + fadt->duty_off, fadt->duty_width); printf("\tDAY_ALRM=%d, MON_ALRM=%d, CENTURY=%d\n", - facp->day_alrm, facp->mon_alrm, facp->century); + fadt->day_alrm, fadt->mon_alrm, fadt->century); + +#define PRINTFLAG(var, flag) do { \ + if ((var) & FADT_FLAG_## flag) { \ + printf("%c%s", sep, #flag); sep = ','; \ + } \ +} while (0) + >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:44:05 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4C17E16A4C0; Wed, 22 Oct 2003 19:44:05 -0700 (PDT) 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 0D4BE16A4B3 for ; Wed, 22 Oct 2003 19:44:05 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8AA5643F75 for ; Wed, 22 Oct 2003 19:44:03 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2i3XJ062816 for ; Wed, 22 Oct 2003 19:44:03 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2i37H062813 for perforce@freebsd.org; Wed, 22 Oct 2003 19:44:03 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:44:03 -0700 (PDT) Message-Id: <200310230244.h9N2i37H062813@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 Subject: PERFORCE change 40249 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:44:05 -0000 http://perforce.freebsd.org/chv.cgi?CH=40249 Change 40249 by rwatson@rwatson_paprika on 2003/10/22 19:43:41 Integrate trustedbsd_sebsd etc tree forward to 39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. Affected files ... .. //depot/projects/trustedbsd/sebsd/etc/Makefile#5 integrate .. //depot/projects/trustedbsd/sebsd/etc/defaults/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/etc/defaults/devfs.rules#1 branch .. //depot/projects/trustedbsd/sebsd/etc/defaults/pccard.conf#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/defaults/rc.conf#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/devd.conf#3 integrate .. //depot/projects/trustedbsd/sebsd/etc/etc.ia64/ttys#2 integrate .. //depot/projects/trustedbsd/sebsd/etc/etc.sparc64/ttys#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/gettytab#2 integrate .. //depot/projects/trustedbsd/sebsd/etc/isdn/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.local.dist#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.root.dist#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.usr.dist#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/network.subr#3 integrate .. //depot/projects/trustedbsd/sebsd/etc/newsyslog.conf#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/pccard_ether#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/devfs#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/dhclient#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/initdiskless#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/ipfilter#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/jail#3 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/ldconfig#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/localdaemons#4 delete .. //depot/projects/trustedbsd/sebsd/etc/rc.d/network1#4 delete .. //depot/projects/trustedbsd/sebsd/etc/rc.d/network2#4 delete .. //depot/projects/trustedbsd/sebsd/etc/rc.d/network3#4 delete .. //depot/projects/trustedbsd/sebsd/etc/rc.d/routing#3 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.subr#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/sendmail/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/services#4 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/etc/Makefile#5 (text+ko) ==== @@ -1,5 +1,5 @@ # from: @(#)Makefile 5.11 (Berkeley) 5/21/91 -# $FreeBSD: src/etc/Makefile,v 1.315 2003/07/06 19:23:31 gshapiro Exp $ +# $FreeBSD: src/etc/Makefile,v 1.319 2003/09/27 17:33:03 markm Exp $ .if !defined(NO_SENDMAIL) SUBDIR= sendmail @@ -11,7 +11,7 @@ hosts hosts.allow hosts.equiv hosts.lpd \ inetd.conf login.access login.conf \ mac.conf motd netconfig network.subr networks newsyslog.conf \ - phones printcap profile protocols \ + phones profile protocols \ rc.firewall rc.firewall6 rc.sendmail \ rc.subr remote rpc services \ shells sysctl.conf syslog.conf usbd.conf \ @@ -20,7 +20,7 @@ ${.CURDIR}/../usr.bin/mail/misc/mail.rc \ ${.CURDIR}/../usr.bin/locate/locate/locate.rc -.if exists(${.CURDIR}/../crypto) && !defined(NO_OPENSSL) +.if !defined(NO_OPENSSL) .if !defined(NO_OPENSSH) SSH= ${.CURDIR}/../crypto/openssh/ssh_config \ ${.CURDIR}/../crypto/openssh/sshd_config \ @@ -32,8 +32,6 @@ # -rwxr-xr-x root:wheel, for the new cron root:wheel BIN2= netstart pccard_ether rc.suspend rc.resume rc rc.shutdown -DEFAULTS= rc.conf pccard.conf periodic.conf - MTREE= BSD.include.dist BSD.local.dist BSD.root.dist BSD.usr.dist \ BSD.var.dist BSD.x11.dist BSD.x11-4.dist .if !defined(NO_SENDMAIL) @@ -71,8 +69,7 @@ ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 600 \ master.passwd nsmb.conf opieaccess ${DESTDIR}/etc; \ pwd_mkdb -p -d ${DESTDIR}/etc ${DESTDIR}/etc/master.passwd - cd ${.CURDIR}/defaults; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ - ${DEFAULTS} ${DESTDIR}/etc/defaults + cd ${.CURDIR}/defaults; ${MAKE} install cd ${.CURDIR}/periodic; ${MAKE} install cd ${.CURDIR}/rc.d; ${MAKE} install cd ${.CURDIR}/../gnu/usr.bin/send-pr; ${MAKE} etc-gnats-freefall @@ -82,10 +79,15 @@ .if !defined(NO_I4B) cd ${.CURDIR}/isdn; ${MAKE} install .endif +.if !defined(NO_LPR) + cd ${.CURDIR}; \ + ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ + printcap ${DESTDIR}/etc +.endif .if !defined(NO_SENDMAIL) cd ${.CURDIR}/sendmail; ${MAKE} distribution .endif -.if exists(${.CURDIR}/../crypto) && !defined(NO_OPENSSL) +.if !defined(NO_OPENSSL) .if !defined(NO_OPENSSH) cd ${.CURDIR}; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ ${SSH} ${DESTDIR}/etc/ssh @@ -113,7 +115,7 @@ ${MTREE} ${DESTDIR}/etc/mtree cd ${.CURDIR}/namedb; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ ${NAMEDB} ${DESTDIR}/etc/namedb - cd ${.CURDIR}/ppp; ${INSTALL} -o root -g ${BINGRP} -m 600 \ + cd ${.CURDIR}/ppp; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 600 \ ${PPPCNF} ${DESTDIR}/etc/ppp cd ${.CURDIR}/mail; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 644 \ ${ETCMAIL} ${DESTDIR}/etc/mail @@ -201,7 +203,7 @@ cd ${.CURDIR}; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \ ${BIN1} ${BIN2} nsmb.conf opieaccess \ ${DESTDIR}/usr/share/examples/etc - cd ${.CURDIR}/defaults; ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 444 \ - ${DEFAULTS} ${DESTDIR}/usr/share/examples/etc/defaults + cd ${.CURDIR}/defaults; ${MAKE} install \ + DESTDIR=${DESTDIR}/usr/share/examples .include ==== //depot/projects/trustedbsd/sebsd/etc/defaults/Makefile#2 (text+ko) ==== @@ -1,8 +1,8 @@ -# $FreeBSD: src/etc/defaults/Makefile,v 1.1 2002/01/30 09:27:03 bde Exp $ +# $FreeBSD: src/etc/defaults/Makefile,v 1.3 2003/08/24 03:24:54 mtm Exp $ -FILES= pccard.conf periodic.conf rc.conf +FILES= devfs.rules pccard.conf periodic.conf rc.conf NOOBJ= noobj FILESDIR= /etc/defaults -FILESMODE= 644 +FILESMODE= 444 .include ==== //depot/projects/trustedbsd/sebsd/etc/defaults/pccard.conf#4 (text+ko) ==== @@ -1,7 +1,7 @@ # # Default PCCARD configuration file # -# $FreeBSD: src/etc/defaults/pccard.conf,v 1.262 2003/07/22 21:23:01 dds Exp $ +# $FreeBSD: src/etc/defaults/pccard.conf,v 1.265 2003/09/20 05:21:58 imp Exp $ # # Please send new entries for this file to imp@freebsd.org. He likes to # review them before they are committed to make sure they are correct for @@ -205,6 +205,10 @@ card "KODAK Picture Card" "KODAK" config default "ata" ? +# Panasonic KXL-CB10AN (CD-R/RW/DVD) +card "KME" "KXLC006" + config auto "ata" ? + # TOSHIBA Portable 24X Speed CD-ROM Drive PA2673UJ card "LOOKMEET" "/CBIDE2 */" config default "ata" ? @@ -691,6 +695,12 @@ insert /etc/pccard_ether $device start remove /etc/pccard_ether $device stop +# I/O DATA PCET10-CL +card "IO DATA" "PCET10CL" + config auto "ed0" any 0x10 + insert /etc/pccard_ether $device + remove /etc/pccard_ether_remove $device + # I-O DATA PCET/100-CL card "IO DATA" "PCET100CL" config auto "ed" ? 0x80000 @@ -1874,6 +1884,12 @@ insert /etc/pccard_ether $device start remove /etc/pccard_ether $device stop +# Benq AWL100 wireless 11 Mbps pcmcia card +card "BENQ" "AWL100 PCMCIA ADAPTER" + config auto "wi" ? + insert /etc/pccard_ether $device start + remove /etc/pccard_ether $device stop + # BreezeNET card "BreezeNET" "PC-DS.11" config auto "wi" ? @@ -1989,6 +2005,12 @@ insert /etc/pccard_ether $device start remove /etc/pccard_ether $device stop +# ELSA Vianect +card "ELSA" "Vianect WLAN MC-11" + config auto "wi" ? + insert /etc/pccard_ether $device start + remove /etc/pccard_ether $device stop + # PLANEX GeoWave/GW-NS11S card "Geowave" "GW-NS11S" config auto "wi" ? @@ -2088,6 +2110,12 @@ insert /etc/pccard_ether $device start remove /etc/pccard_ether $device stop +# Netgear MA701 +card "NETGEAR" "MA701 Wireless CF Card" + config auto "wi" ? + insert /etc/pccard_ether $device start + remove /etc/pccard_ether $device stop + # Nortel eMobility card "Nortel Networks" "emobility 802.11 Wireless LAN PC Card" config auto "wi" ? @@ -2125,6 +2153,12 @@ insert /etc/pccard_ether $device start remove /etc/pccard_ether $device stop +# Proxim Harmony OEM card +card "PROXIM" "LAN PC CARD HARMONY 80211B" + config 0x1 "wi" ? + insert /etc/pccard_ether $device start + remove /etc/pccard_ether $device stop + # Proxim RangeLAN-DS (OEM of Zcommax - Prism2 card) card "PROXIM" "RangeLAN-DS/LAN PC CARD" config auto "wi" ? ==== //depot/projects/trustedbsd/sebsd/etc/defaults/rc.conf#4 (text+ko) ==== @@ -13,14 +13,14 @@ # # All arguments must be in double or single quotes. # -# $FreeBSD: src/etc/defaults/rc.conf,v 1.182 2003/07/28 13:09:00 mbr Exp $ +# $FreeBSD: src/etc/defaults/rc.conf,v 1.189 2003/09/18 09:59:37 dougb Exp $ ############################################################## ### Important initial Boot-time options #################### ############################################################## rc_debug="NO" # Set to YES to enable debugging output from rc.d -rc_info="YES" # Enables display of informational messages at boot. +rc_info="NO" # Enables display of informational messages at boot. rcshutdown_timeout="30" # Seconds to wait before terminating rc.shutdown swapfile="NO" # Set to name of swapfile if aux swapfile desired. apm_enable="NO" # Set to YES to enable APM BIOS functions (or NO). @@ -41,6 +41,11 @@ local_startup="/usr/local/etc/rc.d /usr/X11R6/etc/rc.d" # startup script dirs. script_name_sep=" " # Change if your startup scripts' names contain spaces rc_conf_files="/etc/rc.conf /etc/rc.conf.local" + +# Experimental - test before enabling +gbde_autoattach_all="NO" # YES automatically mounts gbde devices from fstab +gbde_devices="NO" # Devices to automatically attach (list, or AUTO) + fsck_y_enable="NO" # Set to YES to do fsck -y if the initial preen fails. background_fsck="YES" # Attempt to run fsck in the background where possible. background_fsck_delay="60" # Time to wait (seconds) before starting the fsck. @@ -130,7 +135,7 @@ #syslogd_flags="-ss" # Syslogd flags to not bind an inet socket inetd_enable="NO" # Run the network daemon dispatcher (YES/NO). inetd_program="/usr/sbin/inetd" # path to inetd, if you want a different one. -inetd_flags="-wW" # Optional flags to inetd +inetd_flags="-wW -C 60" # Optional flags to inetd # # named. It may be possible to run named in a sandbox, man security for # details. @@ -219,6 +224,7 @@ ### Network routing options: ### defaultrouter="NO" # Set to default gateway (or NO). static_routes="" # Set to static route list (or leave empty). +natm_static_routes="" # Set to static route list for NATM (or leave empty). gateway_enable="NO" # Set to YES if this host will be a gateway. router_enable="NO" # Set to YES to enable a routing daemon. router="/sbin/routed" # Name of routing daemon to use if enabled. @@ -282,6 +288,7 @@ ipv6_default_interface="NO" # Default output interface for scoped addrs. # Now this works only for IPv6 link local # multicast addrs. +rtsol_flags="" # Flags to IPv6 router solicitation. rtadvd_enable="NO" # Set to YES to enable an IPv6 router # advertisement daemon. If set to YES, # this router becomes a possible candidate @@ -426,12 +433,35 @@ harvest_ethernet="YES" # Entropy device harvests ethernet randomness harvest_p_to_p="YES" # Entropy device harvests point-to-point randomness dmesg_enable="YES" # Save dmesg(8) to /var/run/dmesg.boot +watchdogd_enable="NO" # Start the software watchdog daemon +devfs_rulesets="/etc/defaults/devfs.rules /etc/devfs.rules" # Files containing + # devfs(8) rules. +devfs_system_ruleset="" # The name of a ruleset to apply to /dev + +############################################################## +### Jail Configuration ####################################### +############################################################## jail_enable="NO" # Set to NO to disable starting of any jails jail_list="" # Space separated list of names of jails jail_set_hostname_allow="YES" # Allow root user in a jail to change its hostname jail_socket_unixiproute_only="YES" # Route only TCP/IP within a jail -jail_sysvipc_allow="NO" # Allow SystemV IPC use from within a jail -watchdogd_enable="NO" # Start the software watchdog daemon +jail_sysvipc_allow="NO" # Allow SystemV IPC use from within a jail +jail_stop_jailer="NO" # Only stop jailer. Requires jail_*_exec be set + # to use sysutils/jailer port to start the jail. + +# +# To use rc's built-in jail infrastructure create entries for +# each jail, specified in jail_list, with the following variables. +# NOTE: replace 'example' with the jail's name. +# +#jail_example_rootdir="/usr/jail/default" # Jail's root directory +#jail_example_hostname="default.domain.com" # Jail's hostname +#jail_example_ip="192.168.0.10" # Jail's IP number +#jail_example_exec="/bin/sh /etc/rc" # command to execute in jail +#jail_example_devfs_enable="NO" # mount devfs in the jail +#jail_example_fdescfs_enable="NO" # mount fdescfs in the jail +#jail_example_procfs_enable="NO" # mount procfs in jail +#jail_example_devfs_ruleset="123" # devfs ruleset to apply to jail ############################################################## ### Define source_rc_confs, the mechanism used by /etc/rc.* ## ==== //depot/projects/trustedbsd/sebsd/etc/devd.conf#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/devd.conf,v 1.5 2003/05/09 05:58:22 imp Exp $ +# $FreeBSD: src/etc/devd.conf,v 1.8 2003/09/09 18:17:23 wpaul Exp $ # # Refer to devd.conf(5) and devd(8) man pages for the details on how to # run and configure devd. @@ -18,8 +18,8 @@ # Setup some shorthand for regex that we use later in the file. set ethernet-nic-regex - "(an|ar|ath|aue|awi|bge|cm|cnw|cs|cue|dc|de|ed|el|em|ep|ex|\ - fe|fxp|gem|gx|hme|ie|kue|lge|lnc|my|nge|pcn|ray|rl|rue|\ + "(an|ar|ath|aue|awi|bfe|bge|cm|cnw|cs|cue|dc|de|ed|el|em|ep|\ + ex|fe|fxp|gem|gx|hme|ie|kue|lge|lnc|my|nge|pcn|ray|re|rl|rue|\ sf|sis|sk|sn|snc|ste|ti|tl|tx|txp|vr|vx|wb|wi|xe|xl)[0-9]+"; set scsi-controller-regex "(adv|advw|aic|aha|ahb|ahc|ahd|bt|ct|iir|isp|mly|mpt|ncv|nsp|\ @@ -66,9 +66,9 @@ # Don't even try to second guess what to do about drivers that don't # match here. Instead, pass it off to syslog. Commented out for the # moment, as pnpinfo isn't set in devd yet -#nomatch 0 { +nomatch 0 { # action "logger Unknown device: $pnpinfo $location $bus"; -#}; +}; /* EXAMPLES TO END OF FILE ==== //depot/projects/trustedbsd/sebsd/etc/etc.ia64/ttys#2 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/etc/etc.ia64/ttys,v 1.2 2002/04/17 10:42:41 gerald Exp $ +# $FreeBSD: src/etc/etc.ia64/ttys,v 1.3 2003/09/07 06:02:36 marcel Exp $ # @(#)ttys 5.1 (Berkeley) 4/17/89 # # This file specifies various information about terminals on the system. @@ -33,7 +33,7 @@ console none unknown off secure # ttyv0 "/usr/libexec/getty Pc" cons25 on secure -# Virtual terminals +# Virtual terminals. ttyv1 "/usr/libexec/getty Pc" cons25 on secure ttyv2 "/usr/libexec/getty Pc" cons25 on secure ttyv3 "/usr/libexec/getty Pc" cons25 on secure @@ -42,13 +42,13 @@ ttyv6 "/usr/libexec/getty Pc" cons25 on secure ttyv7 "/usr/libexec/getty Pc" cons25 on secure ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure -# Serial terminals -# The 'dialup' keyword identifies dialin lines to login, fingerd etc. -ttyd0 "/usr/libexec/getty std.9600" vt100 on secure -ttyd1 "/usr/libexec/getty std.9600" dialup off secure -ttyd2 "/usr/libexec/getty std.9600" dialup off secure -ttyd3 "/usr/libexec/getty std.9600" dialup off secure -# Pseudo terminals +# Serial terminals. The 'dialup' keyword identifies dialin lines to login, +# fingerd etc. +ttyu0 "/usr/libexec/getty std.9600" vt100 on secure +ttyu1 "/usr/libexec/getty std.9600" dialup off secure +ttyu2 "/usr/libexec/getty std.9600" dialup off secure +ttyu3 "/usr/libexec/getty std.9600" dialup off secure +# Pseudo terminals. ttyp0 none network ttyp1 none network ttyp2 none network ==== //depot/projects/trustedbsd/sebsd/etc/etc.sparc64/ttys#4 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/etc/etc.sparc64/ttys,v 1.4 2003/01/27 04:42:16 jake Exp $ +# $FreeBSD: src/etc/etc.sparc64/ttys,v 1.5 2003/09/11 00:14:17 jake Exp $ # @(#)ttys 5.1 (Berkeley) 4/17/89 # # This file specifies various information about terminals on the system. @@ -48,10 +48,10 @@ #ttyv8 "/usr/X11R6/bin/xdm -nodaemon" xterm off secure # Serial terminals # The 'dialup' keyword identifies dialin lines to login, fingerd etc. -ttyd0 "/usr/libexec/getty std.9600" dialup off secure -ttyd1 "/usr/libexec/getty std.9600" dialup off secure -ttyd2 "/usr/libexec/getty std.9600" dialup off secure -ttyd3 "/usr/libexec/getty std.9600" dialup off secure +ttyu0 "/usr/libexec/getty std.9600" vt100 on secure +ttyu1 "/usr/libexec/getty std.9600" vt100 on secure +ttyu2 "/usr/libexec/getty std.9600" vt100 off secure +ttyu3 "/usr/libexec/getty std.9600" vt100 off secure # Pseudo terminals ttyp0 none network ttyp1 none network ==== //depot/projects/trustedbsd/sebsd/etc/gettytab#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/gettytab,v 1.20 2001/08/31 22:18:50 murray Exp $ +# $FreeBSD: src/etc/gettytab,v 1.21 2003/09/09 15:37:19 yar Exp $ # from: @(#)gettytab 5.14 (Berkeley) 3/27/91 # # Most of the table entries here are just copies of the old getty table, @@ -19,11 +19,11 @@ # # Parity defaults to even, but the Pc entry and all the `std' entries # specify no parity. The different parities are: -# (none): same as even except -inpck instead of inpck for login. +# (none): same as ep for getty. login will use terminal as is. # ep: getty will use raw mode (cs8 -parenb) (unless rw is set) and # fake parity. login will use even parity (cs7 parenb -parodd). # op: same as ep except odd parity (cs7 parenb parodd) for login. -# op overrides ep. +# getty will fake odd parity as well. # ap: same as ep except -inpck instead of inpck for login. # ap overrides op and ep. # np: 1. don't fake parity in getty. The fake parity garbles @@ -32,10 +32,8 @@ # try to fake parity. It could just use cbreak mode so as # not to force cs8 and let the hardware handle the parity. # login has to be rely on the hardware anyway. -# 2. set PASS8, giving cs8 -parenb -istrip -inpck. -# np:ep: same as np except inpck. -# np:op: same as np:ep except for parodd (but parodd is overridden). -# np:ap: same as np except istrip. +# 2. set cs8 -parenb -istrip -inpck. +# ep:op: same as ap. # default:\ :cb:ce:ck:lc:fd#1000:im=\r\n%s/%m (%h) (%t)\r\n\r\n:sp#1200:\ ==== //depot/projects/trustedbsd/sebsd/etc/isdn/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/isdn/Makefile,v 1.9 2002/08/07 16:01:06 ru Exp $ +# $FreeBSD: src/etc/isdn/Makefile,v 1.11 2003/08/18 15:33:08 obrien Exp $ I4BETCPROG= answer \ isdntel.sh \ @@ -18,8 +18,12 @@ install: for i in ${I4BETCPROG} ; do \ - ${INSTALL} -o root -g wheel -m 700 $$i ${DESTDIR}/etc/isdn ; \ + ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 700 $$i \ + ${DESTDIR}/etc/isdn ; \ done ; \ for i in ${I4BETCFILE} ; do \ - ${INSTALL} -o root -g wheel -m 600 $$i ${DESTDIR}/etc/isdn ; \ + ${INSTALL} -o ${BINOWN} -g ${BINGRP} -m 600 $$i \ + ${DESTDIR}/etc/isdn ; \ done + +.include ==== //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.local.dist#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/mtree/BSD.local.dist,v 1.100 2003/08/05 05:42:07 mtm Exp $ +# $FreeBSD: src/etc/mtree/BSD.local.dist,v 1.101 2003/08/08 13:43:48 ache Exp $ # # Please see the file src/etc/mtree/README before making changes to this file. # @@ -383,6 +383,8 @@ .. ja_JP.eucJP .. + ko_KR.CP949 + .. ko_KR.eucKR .. la_LN.ISO8859-1 ==== //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.root.dist#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/mtree/BSD.root.dist,v 1.63 2003/06/29 18:35:36 gordon Exp $ +# $FreeBSD: src/etc/mtree/BSD.root.dist,v 1.64 2003/08/17 07:48:09 gordon Exp $ # # Please see the file src/etc/mtree/README before making changes to this file. # @@ -65,6 +65,10 @@ ssl .. .. + lib + .. + libexec + .. mnt .. proc mode=0555 ==== //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.usr.dist#4 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/etc/mtree/BSD.usr.dist,v 1.278 2003/08/05 05:42:07 mtm Exp $ +# $FreeBSD: src/etc/mtree/BSD.usr.dist,v 1.280 2003/08/12 14:26:57 harti Exp $ # # Please see the file src/etc/mtree/README before making changes to this file. # @@ -67,6 +67,8 @@ doc IPv6 .. + atm + .. bind html .. @@ -445,6 +447,8 @@ .. ja_JP.eucJP .. + ko_KR.CP949 + .. ko_KR.eucKR .. la_LN.ISO8859-1 @@ -775,6 +779,8 @@ .. ja_JP.eucJP .. + ko_KR.CP949 + .. ko_KR.eucKR .. la_LN.ISO8859-1 ==== //depot/projects/trustedbsd/sebsd/etc/network.subr#3 (text+ko) ==== @@ -22,7 +22,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/etc/network.subr,v 1.151 2003/06/24 03:55:21 kuriyama Exp $ +# $FreeBSD: src/etc/network.subr,v 1.153 2003/08/11 20:32:00 mbr Exp $ # # @@ -299,6 +299,24 @@ esac done + case ${pccard_ifconfig} in + [Dd][Hh][Cc][Pp]) + for _if in ${removable_interfaces} ; do + _test_if=`ifconfig ${_if} 2>&1` + case "$_test_if" in + "ifconfig: interface $_if does not exist") + ;; + *) + _dhcplist="${_dhcplist}${_aprefix}${_if}" + [ -z "$_aprefix" ] && _aprefix=' ' + ;; + esac + done + ;; + *) + ;; + esac + case "$type" in nodhcp) echo $_nodhcplist @@ -407,7 +425,7 @@ sysctl net.inet6.ip6.accept_rtadv=1 set ${rtsol_interfaces} ifconfig $1 up - rtsol $1 + rtsol ${rtsol_flags} $1 fi for i in $interfaces; do ==== //depot/projects/trustedbsd/sebsd/etc/newsyslog.conf#4 (text+ko) ==== @@ -1,10 +1,10 @@ # configuration file for newsyslog -# $FreeBSD: src/etc/newsyslog.conf,v 1.46 2003/05/05 19:08:33 gad Exp $ +# $FreeBSD: src/etc/newsyslog.conf,v 1.47 2003/08/07 21:04:40 fjoe Exp $ # # Entries which do not specify the '/pid_file' field will cause the # syslogd process to be signalled when that log file is rotated. This # action is only appropriate for log files which are written to by the -# syslogd process (ie, files listed in /etc/syslogd.conf). If there +# syslogd process (ie, files listed in /etc/syslog.conf). If there # is no process which needs to be signalled when a given log file is # rotated, then the entry for that file should include the 'N' flag. # ==== //depot/projects/trustedbsd/sebsd/etc/pccard_ether#4 (text+ko) ==== @@ -1,22 +1,83 @@ #!/bin/sh - # -# $FreeBSD: src/etc/pccard_ether,v 1.32 2003/06/16 09:11:29 maxim Exp $ +# $FreeBSD: src/etc/pccard_ether,v 1.38 2003/09/15 18:27:38 mbr Exp $ # # pccard_ether interfacename [start|stop] [ifconfig option] # # example: pccard_ether fxp0 start link0 # +. /etc/network.subr + stop_dhcp() { - if [ -s /var/run/dhclient.${interface}.pid ]; then - pidfile="/var/run/dhclient.${interface}.pid" - elif [ -s /var/run/dhcpc.${interface}.pid ]; then - pidfile="/var/run/dhcpc.${interface}.pid" + # If dhclient is already running, record + # its interfaces. + if [ -x /usr/bin/grep ]; then + eval _active_list=\"`/bin/ps -axwww | \ + /usr/bin/grep dhclient | \ + /usr/bin/grep -v grep | \ + /usr/bin/sed -e 's|^.*dhclient||' | \ + /usr/bin/awk '{for (i=1;i<=NF;i++) \ + { if ($i~/[a-zA-Z].[0-9]$/) \ + { printf(" %s",$i) } }}'` \ + \" + fi + + # Get the rc.conf list of dhcp configured interfaces + static_dhcp_list="`list_net_interfaces dhcp`" + + # Get the current ifconfig list of interfaces + _aprefix= + _nlist= + for _if in ${_active_list} ; do + _test_if=`ifconfig ${_if} 2>&1` + case "$_test_if" in + "ifconfig: interface $_if does not exist") + ;; + ${interface}) + # Don't record the same device twice. + ;; + *) + # + # Catch devices which were specified before, + # but have not been part of the rc. We need + # them again for the restart. + # + for _cif in ${static_dhcp_list} ; do + case "$_cif" in + ${_if}) + # Nothing to add + ;; + *) + # Found interface beside rc.conf + _nlist="${_nlist}${_aprefix}${_if}" + ;; + esac + done + _dhcplist="${_dhcplist}${_aprefix}${_if}" + [ -z "$_aprefix" ] && _aprefix=' ' + ;; + esac + done + + if [ -s /var/run/dhclient.pid ]; then + pidfile="/var/run/dhclient.pid" else return fi - kill `cat ${pidfile}` + /sbin/dhclient -r ${interface} rm -f ${pidfile} + case ${startstop} in + [Ss][Tt][Oo][Pp]) + if [ -z "${_nlist}" ]; then + sh `/etc/rc.d/dhclient start` + else + start_dhcp_keep_current + fi + ;; + *) + ;; + esac } start_dhcp() { @@ -31,11 +92,20 @@ [ -n "$dhcp_program" ] && dhclient_program="$dhcp_program" [ -n "$dhcp_flags" ] && dhclient_flags="$dhcp_flags" if [ -x "${dhclient_program}" ]; then - if [ `basename ${dhclient_program}` = "dhclient" ]; then - pidfile="/var/run/dhclient.${interface}.pid" - dhclient_flags="${dhclient_flags} -pf ${pidfile}" - fi - ${dhclient_program} ${dhclient_flags} ${interface} + ${dhclient_program} ${dhclient_flags} $_dhcplist ${interface} + else + echo "${dhclient_program}: DHCP client software not available" + fi +} + +# Called after detaching a card, if dhclient has been +# used for more than one interface. +start_dhcp_keep_current() { + [ -n "$dhcp_program" ] && dhclient_program="$dhcp_program" + [ -n "$dhcp_flags" ] && dhclient_flags="$dhcp_flags" + if [ -x "${dhclient_program}" ]; then + ${dhclient_program} ${dhclient_flags} \ + ${_dhcplist} else echo "${dhclient_program}: DHCP client software not available" fi @@ -67,9 +137,11 @@ case ${startstop} in [Ss][Tt][Aa][Rr][Tt] | '') - if ifconfig ${interface} | grep -s UP, > /dev/null 2>&1; then - # Interface is already up, so ignore it. - exit 0 + if [ -x /usr/bin/grep ]; then + if ifconfig ${interface} | grep -s UP, > /dev/null 2>&1; then + # Interface is already up, so ignore it. + exit 0 + fi fi if [ -r /etc/start_if.${interface} ]; then ==== //depot/projects/trustedbsd/sebsd/etc/rc.d/Makefile#4 (text+ko) ==== @@ -1,5 +1,5 @@ # $NetBSD: Makefile,v 1.16 2001/01/14 15:37:22 minoura Exp $ -# $FreeBSD: src/etc/rc.d/Makefile,v 1.24 2003/08/06 00:35:13 mtm Exp $ +# $FreeBSD: src/etc/rc.d/Makefile,v 1.25 2003/08/29 13:25:08 mtm Exp $ .include @@ -19,11 +19,10 @@ ipnat ipsec ipxrouted isdnd \ jail \ kadmind kerberos keyserv kldxref kpasswdd \ - ldconfig local localdaemons localpkg lomac lpd \ + ldconfig local localpkg lomac lpd \ motd mountcritlocal mountcritremote \ mountd moused mroute6d mrouted msgs \ named netif netoptions \ - network1 network2 network3 \ network_ipv6 nfsclient nfsd \ nfslocking nfsserver nisdomain ntpd ntpdate \ othermta \ ==== //depot/projects/trustedbsd/sebsd/etc/rc.d/devfs#4 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh # -# $FreeBSD: src/etc/rc.d/devfs,v 1.5 2003/05/06 01:10:33 dougb Exp $ +# $FreeBSD: src/etc/rc.d/devfs,v 1.6 2003/08/20 06:15:18 mtm Exp $ # # PROVIDE: devfs @@ -11,9 +11,19 @@ . /etc/rc.subr name="devfs" -start_cmd='read_devfs_conf' +start_cmd='devfs_start' stop_cmd=':' +devfs_start() +{ + if [ -n "$devfs_system_ruleset" ]; then + devfs_init_rulesets + devfs_set_ruleset $devfs_system_ruleset /dev + devfs_apply_ruleset $devfs_system_ruleset /dev + fi + read_devfs_conf +} + read_devfs_conf() { if [ -r /etc/devfs.conf ]; then ==== //depot/projects/trustedbsd/sebsd/etc/rc.d/dhclient#4 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: dhclient,v 1.8 2002/03/22 04:33:58 thorpej Exp $ -# $FreeBSD: src/etc/rc.d/dhclient,v 1.9 2003/07/28 08:15:52 mbr Exp $ +# $FreeBSD: src/etc/rc.d/dhclient,v 1.10 2003/09/16 02:56:13 mbr Exp $ # # PROVIDE: dhclient @@ -53,8 +53,9 @@ dhclient_prestart() { - dhclient_common || return 1 - + if [ $dhclient_common_error -eq 1 ]; then + return 1 + fi for ifn in ${_cooked_list}; do ifscript_up ${ifn} done @@ -78,8 +79,9 @@ dhclient_prestop() { - dhclient_common || return 1 - + if [ $dhclient_common_error -eq 1 ]; then + return 1 + fi for ifn in ${_cooked_list}; do ipx_down ${ifn} ifalias_down ${ifn} @@ -110,4 +112,11 @@ fi load_rc_config $name +dhclient_common_error=0 +dhclient_common || dhclient_common_error=1; +if [ -n "$_cooked_list" ]; then + if [ -s $pidfile ]; then + stop_cmd=":" + fi +fi run_rc_command "$1" ==== //depot/projects/trustedbsd/sebsd/etc/rc.d/initdiskless#4 (text+ko) ==== @@ -1,6 +1,6 @@ #!/bin/sh # -# Copyright (c) 1999 Matt Dillion +# Copyright (c) 1999 Matt Dillon # All rights reserved. # # Redistribution and use in source and binary forms, with or without @@ -24,7 +24,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/etc/rc.d/initdiskless,v 1.24 2003/06/30 21:47:06 brooks Exp $ +# $FreeBSD: src/etc/rc.d/initdiskless,v 1.25 2003/08/07 21:06:32 fjoe Exp $ # # PROVIDE: initdiskless # KEYWORD: FreeBSD ==== //depot/projects/trustedbsd/sebsd/etc/rc.d/ipfilter#4 (text+ko) ==== @@ -1,7 +1,7 @@ #!/bin/sh # # $NetBSD: ipfilter,v 1.10 2001/02/28 17:03:50 lukem Exp $ -# $FreeBSD: src/etc/rc.d/ipfilter,v 1.11 2003/07/30 18:53:59 mtm Exp $ +# $FreeBSD: src/etc/rc.d/ipfilter,v 1.12 2003/09/27 13:50:47 mux Exp $ # # PROVIDE: ipfilter @@ -40,7 +40,7 @@ case ${OSTYPE} in FreeBSD) # load ipfilter kernel module if needed - if ! sysctl net.inet.ipf.fr_pass > /dev/null 2>&1; then + if ! kldstat -v | grep "IP Filter" > /dev/null 2>&1; then if kldload ipl; then info 'IP-filter module loaded.' else @@ -79,12 +79,15 @@ echo "Enabling ipfilter." case ${OSTYPE} in FreeBSD) - ${ipfilter_program:-/sbin/ipf} -EFa + if [ `sysctl -n net.inet.ipf.fr_running` -eq 0 ]; then + ${ipfilter_program:-/sbin/ipf} -E + fi + ${ipfilter_program:-/sbin/ipf} -Fa if [ -r "${ipfilter_rules}" ]; then ${ipfilter_program:-/sbin/ipf} \ -f "${ipfilter_rules}" ${ipfilter_flags} fi - ${ipfilter_program:-/sbin/ipf} -6 -EFa + ${ipfilter_program:-/sbin/ipf} -6 -Fa if [ -r "${ipv6_ipfilter_rules}" ]; then ${ipfilter_program:-/sbin/ipf} -6 \ -f "${ipv6_ipfilter_rules}" ${ipfilter_flags} @@ -104,17 +107,21 @@ ipfilter_stop() { - case ${OSTYPE} in - FreeBSD) - echo "Saving firewall state tables" - ${ipfs_program:-/sbin/ipfs} -W ${ipfs_flags} - ;; - NetBSD) - ;; - esac - # XXX - The following command is not effective for 'lkm's - echo "Disabling ipfilter." - /sbin/ipf -D + # XXX - The ipf -D command is not effective for 'lkm's + if [ `sysctl -n net.inet.ipf.fr_running` -eq 1 ]; then + case ${OSTYPE} in + FreeBSD) + echo "Saving firewall state tables" + ${ipfs_program:-/sbin/ipfs} -W ${ipfs_flags} + echo "Disabling ipfilter." + ${ipfilter_program:-/sbin/ipf} -D + ;; + NetBSD) + echo "Disabling ipfilter." + /sbin/ipf -D + ;; + esac + fi } ipfilter_reload() @@ -157,7 +164,7 @@ case ${OSTYPE} in FreeBSD) # Don't resync if ipfilter is not loaded - [ sysctl net.inet.ipf.fr_pass > /dev/null 2>&1 ] && return + [ kldstat -v | grep "IP Filter" > /dev/null 2>&1 ] && return ;; esac ${ipfilter_program:-/sbin/ipf} -y ${ipfilter_flags} ==== //depot/projects/trustedbsd/sebsd/etc/rc.d/jail#3 (text+ko) ==== @@ -1,12 +1,12 @@ #!/bin/sh # -# $FreeBSD: src/etc/rc.d/jail,v 1.4 2003/05/05 15:38:41 mtm Exp $ +# $FreeBSD: src/etc/rc.d/jail,v 1.6 2003/08/24 06:29:32 mtm Exp $ # # PROVIDE: jail # REQUIRE: LOGIN # BEFORE: securelevel -# KEYWORD: FreeBSD +# KEYWORD: FreeBSD shutdown . /etc/rc.subr @@ -15,6 +15,50 @@ start_cmd="jail_start" stop_cmd="jail_stop" +# init_variables _j +# Initialize the various jail variables for jail _j. +# +init_variables() +{ + _j="$1" + + if [ -z "$_j" ]; then + warn "init_variables: you must specify a jail" + return + fi + + eval jail_rootdir=\"\$jail_${_j}_rootdir\" + jail_devdir="${jail_rootdir}/dev" + jail_fdescdir="${jail_devdir}/fd" + jail_procdir="${jail_rootdir}/proc" + eval jail_hostname=\"\$jail_${_j}_hostname\" + eval jail_ip=\"\$jail_${_j}_ip\" + eval jail_exec=\"\$jail_${_j}_exec\" + [ -z "${jail_exec}" ] && jail_exec="/bin/sh /etc/rc" + + # The default jail ruleset will be used by rc.subr if none is specified. + eval jail_ruleset=\"\$jail_${_j}_devfs_ruleset\" >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 19:45:06 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 828DE16A4C0; Wed, 22 Oct 2003 19:45:06 -0700 (PDT) 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 5D99416A4B3 for ; Wed, 22 Oct 2003 19:45:06 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8C07543F93 for ; Wed, 22 Oct 2003 19:45:05 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N2j5XJ063089 for ; Wed, 22 Oct 2003 19:45:05 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N2j5en063086 for perforce@freebsd.org; Wed, 22 Oct 2003 19:45:05 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 19:45:05 -0700 (PDT) Message-Id: <200310230245.h9N2j5en063086@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 Subject: PERFORCE change 40250 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 02:45:06 -0000 http://perforce.freebsd.org/chv.cgi?CH=40250 Change 40250 by rwatson@rwatson_paprika on 2003/10/22 19:44:14 Update top level bits for trustedbsd_mac@39070: largely dynamic root and make bits. Affected files ... .. //depot/projects/trustedbsd/sebsd/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/Makefile.inc1#4 integrate .. //depot/projects/trustedbsd/sebsd/UPDATING#4 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/Makefile#4 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile,v 1.287 2003/08/06 11:06:38 ru Exp $ +# $FreeBSD: src/Makefile,v 1.289 2003/08/30 13:33:41 ru Exp $ # # The user-driven targets are: # @@ -69,6 +69,7 @@ BITGTS= files includes BITGTS:=${BITGTS} ${BITGTS:S/^/build/} ${BITGTS:S/^/install/} +TGTS+= ${BITGTS} .ORDER: buildworld installworld .ORDER: buildworld distributeworld @@ -87,9 +88,22 @@ _MAKE= PATH=${PATH} ${BINMAKE} -f Makefile.inc1 # +# Make sure we have an up-to-date make(1). Only world and buildworld +# should do this as those are the initial targets used for upgrades. +# The user can define ALWAYS_CHECK_MAKE to have this check performed +# for all targets. +# +.if defined(ALWAYS_CHECK_MAKE) +${TGTS}: upgrade_checks +.else +buildworld: upgrade_checks +.endif + +# # Handle the user-driven targets, using the source relative mk files. # -${TGTS} ${BITGTS}: upgrade_checks + +${TGTS}: @cd ${.CURDIR}; \ ${_MAKE} ${.TARGET} ==== //depot/projects/trustedbsd/sebsd/Makefile.inc1#4 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/Makefile.inc1,v 1.382 2003/07/24 18:14:29 markm Exp $ +# $FreeBSD: src/Makefile.inc1,v 1.392 2003/09/16 12:53:18 ru Exp $ # # Make command line options: # -DNO_KERBEROS Do not build Heimdal (Kerberos 5) @@ -51,6 +51,17 @@ SUBDIR+= lib .endif +# When upgrading to a dynamically linked root, install the runtime +# linker early into its new location before make(1) has a chance +# to run the dynamically linked /bin/sh. +.if defined(WITH_DYNAMICROOT) && !defined(NOPIC) && \ + (!defined(TARGET_ARCH) || ${TARGET_ARCH} == ${MACHINE_ARCH}) && \ + !defined(DISTDIR) && \ + (!defined(DESTDIR) || empty(DESTDIR) || ${DESTDIR} == "/") && \ + !exists(/libexec/ld-elf.so.1) +SUBDIR+= libexec/rtld-elf +.endif + .if exists(${.CURDIR}/bin) SUBDIR+= bin .endif @@ -123,9 +134,13 @@ MAKEOBJDIRPREFIX?= /usr/obj .if !defined(OSRELDATE) +.if exists(/usr/include/osreldate.h) OSRELDATE!= awk '/^\#define[[:space:]]*__FreeBSD_version/ { print $$3 }' \ /usr/include/osreldate.h +.else +OSRELDATE= 0 .endif +.endif TARGET_ARCH?= ${MACHINE_ARCH} .if ${TARGET_ARCH} == ${MACHINE_ARCH} TARGET?= ${MACHINE} @@ -223,6 +238,7 @@ # world stage WMAKEENV= ${CROSSENV} \ DESTDIR=${WORLDTMP} \ + _SHLIBDIRPREFIX=${WORLDTMP} \ INSTALL="sh ${.CURDIR}/tools/install.sh" \ PATH=${TMPPATH} WMAKE= ${WMAKEENV} ${MAKE} -f Makefile.inc1 @@ -283,7 +299,7 @@ mkdir -p ${WORLDTMP}/legacy/${_dir} .endfor .for _dir in \ - usr/bin usr/include usr/lib/compat/aout usr/libdata/ldscripts \ + lib usr/bin usr/include usr/lib/compat/aout usr/libdata/ldscripts \ usr/libexec usr/share/misc mkdir -p ${WORLDTMP}/${_dir} .endfor @@ -293,33 +309,33 @@ _legacy: @echo @echo "--------------------------------------------------------------" - @echo ">>> stage 1: legacy release compatibility shims" + @echo ">>> stage 1.1: legacy release compatibility shims" @echo "--------------------------------------------------------------" cd ${.CURDIR}; ${BMAKE} legacy _bootstrap-tools: @echo @echo "--------------------------------------------------------------" - @echo ">>> stage 1: bootstrap tools" + @echo ">>> stage 1.2: bootstrap tools" @echo "--------------------------------------------------------------" cd ${.CURDIR}; ${BMAKE} bootstrap-tools _cleanobj: .if !defined(NOCLEAN) @echo @echo "--------------------------------------------------------------" - @echo ">>> stage 2: cleaning up the object tree" + @echo ">>> stage 2.1: cleaning up the object tree" @echo "--------------------------------------------------------------" cd ${.CURDIR}; ${WMAKE} ${CLEANDIR:S/^/par-/} .endif _obj: @echo @echo "--------------------------------------------------------------" - @echo ">>> stage 2: rebuilding the object tree" + @echo ">>> stage 2.2: rebuilding the object tree" @echo "--------------------------------------------------------------" cd ${.CURDIR}; ${WMAKE} par-obj _build-tools: @echo @echo "--------------------------------------------------------------" - @echo ">>> stage 2: build tools" + @echo ">>> stage 2.3: build tools" @echo "--------------------------------------------------------------" cd ${.CURDIR}; ${TMAKE} build-tools _cross-tools: @@ -331,26 +347,26 @@ _includes: @echo @echo "--------------------------------------------------------------" - @echo ">>> stage 4: populating ${WORLDTMP}/usr/include" + @echo ">>> stage 4.1: populating ${WORLDTMP}/usr/include" @echo "--------------------------------------------------------------" cd ${.CURDIR}; ${WMAKE} SHARED=symlinks par-includes _libraries: @echo @echo "--------------------------------------------------------------" - @echo ">>> stage 4: building libraries" + @echo ">>> stage 4.2: building libraries" @echo "--------------------------------------------------------------" cd ${.CURDIR}; ${WMAKE} -DNOHTML -DNOINFO -DNOMAN -DNOFSCHG -DNOLINT \ libraries _depend: @echo @echo "--------------------------------------------------------------" - @echo ">>> stage 4: make dependencies" + @echo ">>> stage 4.3: make dependencies" @echo "--------------------------------------------------------------" cd ${.CURDIR}; ${WMAKE} par-depend everything: @echo @echo "--------------------------------------------------------------" - @echo ">>> stage 4: building everything.." + @echo ">>> stage 4.4: building everything.." @echo "--------------------------------------------------------------" cd ${.CURDIR}; ${WMAKE} par-all @@ -384,13 +400,6 @@ false; \ fi .endif -.if ${TARGET_ARCH} == ${MACHINE_ARCH} && !defined(DISTDIR) && \ - (!defined(DESTDIR) || empty(DESTDIR) || ${DESTDIR} == "/") - @echo "Checking to see if your booted kernel is fresh enough.." - ${.OBJDIR}/bin/sh/sh -c \ - 'echo "Testing installed kernel for new sigaction(2) syscall"' - @echo "Seems ok.." -.endif # # distributeworld @@ -761,7 +770,7 @@ .if (!defined(NO_RESCUE) || \ defined(RELEASEDIR)) && \ - ( ${TARGET_ARCH} != ${MACHINE_ARCH} || ${BOOTSTRAPPING} < 501101 ) + (${TARGET_ARCH} != ${MACHINE_ARCH} || ${BOOTSTRAPPING} < 501101) _crunchide= usr.sbin/crunch/crunchide .endif @@ -816,8 +825,6 @@ # gnu/lib/csu, gnu/lib/libgcc and lib/csu must be built before all # shared libraries for ELF. # -# lib/libc (libc_pic.a) must be built before lib/libpthread. -# _startup_libs= gnu/lib/csu gnu/lib/libgcc .if exists(${.CURDIR}/lib/csu/${MACHINE_ARCH}-elf) _startup_libs+= lib/csu/${MACHINE_ARCH}-elf @@ -826,6 +833,7 @@ .endif _prebuild_libs= + _generic_libs= gnu/lib .if exists(${.CURDIR}/kerberos5) && exists(${.CURDIR}/crypto) && \ @@ -837,9 +845,6 @@ _generic_libs+= kerberos5/lib .endif -.if !defined(NOLIBPTHREAD) -_prebuild_libs+= lib/libc -.endif _prebuild_libs+= lib/libcom_err lib/libcrypt lib/libexpat \ lib/libkvm lib/libmd \ lib/libncurses lib/libopie lib/libpam lib/libradius \ ==== //depot/projects/trustedbsd/sebsd/UPDATING#4 (text+ko) ==== @@ -17,6 +17,57 @@ developers choose to disable these features on build machines to maximize performance. +20030928: + Changes to the cdevsw default functions have been made to remove + the need to specify nullopen() and nullclose() explicitly. + __FreeBSD_version bumpted to 501110. + +20030926: + kiconv(3) has been added. mount_msdosfs(8), mount_ntfs(8) and + mount_cd9660(8) need to be in sync with kernel. + +20030925: + Configuring a system to use IPFILTER now requires that PFIL_HOOKS + also be explicitly configured. Previously this dependency was + magically handled through some cruft in net/pfil.h; but that has + been removed. Building a kernel with IPFILTER but not PFIL_HOOKS + will fail with obtuse errors in ip_fil.c. + +20030923: + Fix a bug in arplookup(), whereby a hostile party on a locally + attached network could exhaust kernel memory, and cause a system + panic, by sending a flood of spoofed ARP requests. See + FreeBSD-SA-03:14.arp. + +20030915: + A change to /etc/defaults/rc.conf now causes inetd to be started + with `-C 60' if it is not overridden in /etc/rc.conf. This + causes inetd to stop accepting connections from an IP address + that exceeds the rate of 60 connections per minute. + +20030829: + The following rc.d scripts have been removed and should be + deleted from your installation: atm2.sh atm3.sh devdb + localdaemons network1 network2 network3. Depending on when + you last updated world and used mergemaster(8) you may or + may not have problems during the rc boot sequence. The simplest + solution is an 'rm -rf /etc/rc.d/*' and then 'mergemaster -i'. + The atm2.sh atm3.sh and devdb scripts were removed some time + ago, so depending on when you installed -CURRENT these scripts + may or may not exist on your system. + +20030824: + ATAng has been committed. You need to build world as sys/ata.h + has changed, and userland atacontrol depends on it. + If you use ATA SW raids you need "device ataraid" in your + kernel config file, as it is no longer pulled in automatically. + +20030819: + The OFW_NEWPCI option has been turned on in the Sparc64 GENERIC kernel. + Among other things, this changes the device enumeration to be + closer to Solaris. Be aware that, this can even cause the machine + to not boot without manual intervention before the fstab is adjusted. + 20030728: All current USB and Firewire quirks in da(4) have been deprecated and will be removed for 5.2. If this causes failure for your @@ -1333,4 +1384,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.260 2003/07/29 04:40:33 njl Exp $ +$FreeBSD: src/UPDATING,v 1.270 2003/09/28 16:25:35 phk Exp $ From owner-p4-projects@FreeBSD.ORG Wed Oct 22 20:04:45 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BB50916A4C0; Wed, 22 Oct 2003 20:04:44 -0700 (PDT) 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 8BE0916A4B3 for ; Wed, 22 Oct 2003 20:04:44 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 326E243F93 for ; Wed, 22 Oct 2003 20:04:41 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N34fXJ064753 for ; Wed, 22 Oct 2003 20:04:41 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N34T5g064721 for perforce@freebsd.org; Wed, 22 Oct 2003 20:04:29 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 20:04:29 -0700 (PDT) Message-Id: <200310230304.h9N34T5g064721@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 Subject: PERFORCE change 40251 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 03:04:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=40251 Change 40251 by rwatson@rwatson_paprika on 2003/10/22 20:03:45 Integrate the SEBSD kernel tree forward to trustedbsd_mac@39070, the last major integration of the trustedbsd_mac branch, which brings in many of the major changes in the last four months to the main FreeBSD tree. This includes substantial lock pushdown, threading bug fixes, compiler upgrades, et al. It's very likely this includes functionality regressions in SEBSD as a result of merge problems. Once this is submitted, I'll start builds and tests, but it may take a day or two to stabilize. Hopefully, this will improve the performance and stability of the SEBSD branch in the same way it helped with the MAC branch. Surprisingly few conflicts... Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/alpha-gdbstub.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/api_up1000.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/autoconf.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/busspace.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/clock.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/cpuconf.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/critical.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/db_disasm.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/db_interface.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/db_trace.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_1000a.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_2100_a50.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_2100_a500.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_3000_300.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_3000_500.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_axppci_33.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_eb164.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_eb64plus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_kn20aa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_kn300.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_kn8ae.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_st550.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dec_st6600.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/dump_machdep.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/elf_machdep.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/fp_emulate.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/genassym.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/ieee_float.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/in_cksum.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/interrupt.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/machdep.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/mem.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/mp_machdep.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/pmap.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/prom.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/promcons.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/sgmap.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/swtch.s#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/sys_machdep.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/trap.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/vm_machdep.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/conf/GENERIC#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/conf/NOTES#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/include/bus.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/include/cpu.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/include/critical.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/include/db_machdep.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/include/elf.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/include/md_var.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/include/pcb.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/include/varargs.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/isa/isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/isa/isa_dma.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/isa/mcclock_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/linux/linux_dummy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/linux/linux_genassym.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/linux/linux_machdep.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/linux/linux_sysvec.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/mcbus/mcbus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/mcbus/mcmem.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/mcbus/mcpcia.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/osf1/imgact_osf1.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/osf1/osf1_ioctl.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/osf1/osf1_misc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/osf1/osf1_mount.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/osf1/osf1_signal.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/osf1/osf1_sysvec.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/apecs.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/apecs_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/bwx.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/cia.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/cia_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/irongate.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/irongate_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/lca.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/lca_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/pcibus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/swiz.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/t2.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/t2_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/tsunami.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/pci/tsunami_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/tlsb/dwlpx.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/tlsb/gbus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/tlsb/kftxx.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/tlsb/mcclock_tlsb.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/tlsb/tlsb.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/tlsb/tlsbcpu.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/tlsb/tlsbmem.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/tlsb/zs_tlsb.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/acpica/OsdEnvironment.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/acpica/acpi_machdep.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/acpica/acpi_wakeup.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/amd64_mem.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/busdma_machdep.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/critical.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/elf_machdep.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/exception.S#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/genassym.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/machdep.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/pmap.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/trap.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/tsc.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/vm_machdep.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/conf/GENERIC#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32_signal.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32_syscall.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/acpica_machdep.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/bus_amd64.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/clock.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/cpu.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/critical.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/elf.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/endian.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/legacyvar.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/md_var.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/pci_cfgreg.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/pmap.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/segments.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/signal.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/specialreg.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/ucontext.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/varargs.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/vmparam.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/isa/clock.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/pci/pci_bus.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/arm/include/elf.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/Makefile#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/bcache.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/boot.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/commands.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/console.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/dev_net.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/devopen.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/interp.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/interp_backslash.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/interp_forth.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/interp_parse.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/isapnp.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/load.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/load_elf.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/load_elf32.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/load_elf64.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/ls.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/misc.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/module.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/panic.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/pnp.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/common/ufsread.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/forth/beastie.4th#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/boot2/boot1.s#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/boot2/boot2.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/kgzldr/boot.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/kgzldr/lib.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/biosacpi.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/bioscd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/biosdisk.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/biosmem.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/biospci.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/biospnp.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/biossmap.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/bootinfo.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/bootinfo32.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/bootinfo64.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/comconsole.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/devicename.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/elf32_freebsd.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/elf64_freebsd.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/gatea20.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/i386_copy.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/i386_module.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/nullconsole.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/pread.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/pxe.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/time.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/libi386/vidconsole.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/loader/conf.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/loader/main.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/pxeldr/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/i386/pxeldr/pxeldr.s#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/ia64/libski/acpi_stub.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/ia64/libski/bootinfo.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/ia64/libski/devicename.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/ia64/libski/efi_stub.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/ia64/libski/elf_freebsd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/ia64/libski/module.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/ia64/libski/sal_stub.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/ia64/libski/skifs.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/ia64/libski/ssc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/ia64/libski/time.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/boot2/boot.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/boot2/disk.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/boot2/io.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/boot2/probe_keyboard.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/boot2/sys.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/boot2/table.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/libpc98/biosdisk.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/libpc98/biosmem.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/libpc98/comconsole.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/libpc98/gatea20.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/libpc98/i386_module.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/libpc98/time.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/libpc98/vidconsole.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/loader/conf.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/pc98/loader/main.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/boot/powerpc/loader/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/cam/cam_periph.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/cam/scsi/scsi_all.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/cam/scsi/scsi_cd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/cam/scsi/scsi_da.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/cam/scsi/scsi_sa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/cam/scsi/scsi_targ_bh.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/cam/scsi/scsi_target.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/cnode.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/coda.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/coda_namecache.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/coda_namecache.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/coda_psdev.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/coda_subr.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/coda_subr.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/coda_venus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/coda_venus.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/coda_vfsops.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/coda_vfsops.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/coda_vnops.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/freebsd32/Makefile#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/freebsd32/freebsd32.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/freebsd32/freebsd32_misc.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/freebsd32/freebsd32_proto.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/freebsd32/freebsd32_syscall.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/freebsd32/freebsd32_syscalls.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/freebsd32/freebsd32_sysent.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/freebsd32/freebsd32_util.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/freebsd32/syscalls.conf#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/freebsd32/syscalls.master#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/ia32/ia32_genassym.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/ia32/ia32_signal.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/ia32/ia32_sigtramp.S#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/ia32/ia32_sysvec.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/ia32/ia32_util.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/compat/linprocfs/linprocfs.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/linux/linux_misc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/pecoff/imgact_pecoff.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/svr4/svr4_misc.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/svr4/svr4_sysvec.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/Makefile.amd64#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/NOTES#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/files#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/files.alpha#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/files.amd64#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/files.i386#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/files.ia64#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/files.pc98#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/files.sparc64#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/kern.post.mk#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/kern.pre.mk#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/kmod.mk#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/ldscript.i386#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/ldscript.ia64#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/majors#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/options#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/options.alpha#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/options.i386#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/options.ia64#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/options.sparc64#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/acfreebsd.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/common/adisasm.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/common/getopt.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslanalyze.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslcodegen.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslcompile.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslcompiler.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslcompiler.l#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslcompiler.y#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslerror.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslfiles.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslfold.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslglobal.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/asllength.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/asllisting.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslload.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/asllookup.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslmain.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslmap.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslopcodes.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/asloperands.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslopt.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslresource.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslrestype1.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslrestype2.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslstubs.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/asltransform.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/asltree.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/asltypes.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/compiler/aslutils.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/osunixxf.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/rsaddr.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/rsirq.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/oltr/if_oltr.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ipfilter/netinet/ip_fil.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/crypto/rijndael/rijndael-api-fst.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/crypto/sha2/sha2.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/ddb/db_access.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/ddb/db_command.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/ddb/db_elf.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/ddb/db_ps.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aac/aac.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aac/aac_cam.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aac/aac_debug.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aac/aac_disk.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aac/aac_linux.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aac/aac_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aac/aacvar.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/Osd/OsdHardware.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/Osd/OsdSchedule.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/Osd/OsdSynch.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_acad.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_battery.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_button.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_cmbat.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_cpu.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_ec.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_isab.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_lid.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_pci_link.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_pcib.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_pcib_acpi.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_pcib_pci.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_powerres.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_resource.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_thermal.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_timer.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpiio.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpivar.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/madt.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/adlink/adlink.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/advansys/adv_eisa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/advansys/adv_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/advansys/adv_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/advansys/advansys.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/advansys/advlib.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/advansys/advmcode.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/advansys/adw_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/advansys/adwcam.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/advansys/adwlib.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/advansys/adwmcode.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aha/aha.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aha/aha_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aha/aha_mca.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic/aic.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic/aic_cbus.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic/aic_isa.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic/aic_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/ahc_eisa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/ahc_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/ahd_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/aic7770.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/aic79xx.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/aic79xx.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/aic79xx_osm.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/aic79xx_osm.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/aic79xx_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/aic7xxx.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/aic7xxx_93cx6.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/aic7xxx_osm.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/aic7xxx_osm.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/aic7xxx_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/amd/amd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/amr/amr.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/amr/amr_cam.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/amr/amr_disk.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/amr/amr_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/an/if_aironet_ieee.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/an/if_an.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/an/if_an_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/an/if_an_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/an/if_an_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/an/if_anreg.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ar/if_ar.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ar/if_ar_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ar/if_ar_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/asr/asr.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-all.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-all.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-card.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-cbus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-chipset.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-commands.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-disk.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-disk.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-dma.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-lowlevel.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-pci.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-queue.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-raid.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-raid.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/atapi-cam.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/atapi-cd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/atapi-cd.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/atapi-fd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/atapi-fd.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/atapi-tape.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/atapi-tape.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ath/if_ath.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ath/if_ath_pci.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ath/if_athioctl.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ath/if_athvar.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/awi/am79c930.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/awi/awi.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/awi/awi_wep.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/awi/awi_wicfg.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/awi/if_awi_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/bfe/if_bfe.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/bfe/if_bfereg.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/bge/if_bge.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/bge/if_bgereg.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/bktr/bktr_audio.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/bktr/bktr_audio.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/bktr/bktr_card.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/bktr/bktr_core.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/bktr/bktr_i2c.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/bktr/bktr_mem.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/bktr/bktr_os.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/bktr/bktr_reg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/bktr/bktr_tuner.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/bktr/msp34xx.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/buslogic/bt.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/buslogic/bt_eisa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/buslogic/bt_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/buslogic/bt_mca.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/buslogic/bt_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/cardbus/cardbus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/cardbus/cardbus_cis.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ciss/ciss.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/cm/if_cm_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/cm/smc90cx6.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/cnw/if_cnw.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/cs/if_cs.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/cs/if_cs_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/cs/if_cs_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ct/bshw_machdep.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ct/ct.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ct/ct_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/dec/mcclock.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/dgb/dgb.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/dgb/dgreg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/digi/CX.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/digi/CX_PCI.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/digi/EPCX.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/digi/EPCX_PCI.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/digi/Xe.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/digi/Xem.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/digi/Xr.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/digi/digi.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/digi/digi.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/digi/digi_isa.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/digi/digi_pci.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/digi/digireg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/dpt/dpt_eisa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/dpt/dpt_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/dpt/dpt_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/dpt/dpt_scsi.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/ati_pcigart.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drmP.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_agpsupport.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_auth.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_bufs.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_context.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_dma.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_drawable.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_drv.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_fops.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_ioctl.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_lock.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_memory.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_memory_debug.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_os_freebsd.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_pci.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_sarea.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_scatter.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_sysctl.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_vm.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/mga.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/mga_dma.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/mga_drv.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/mga_drv.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/mga_irq.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/mga_state.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/mga_warp.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128_cce.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128_drm.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128_drv.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128_drv.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128_irq.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128_state.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/radeon.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/radeon_cp.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/radeon_drm.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/radeon_drv.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/radeon_drv.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/radeon_irq.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/radeon_mem.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/radeon_state.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/sis.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/sis_drm.h#3 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/sis_drv.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/sis_drv.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/sis_ds.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/sis_ds.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/sis_mm.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/tdfx.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/tdfx_drv.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ed/if_ed.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ed/if_ed_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ed/if_ed_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ed/if_ed_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/eisa/eisaconf.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/em/README#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/em/if_em.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/em/if_em.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/em/if_em_hw.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/em/if_em_hw.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/em/if_em_osdep.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/en/if_en_pci.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/en/midwayvar.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ep/if_ep.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ep/if_ep_eisa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ep/if_ep_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ep/if_ep_mca.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ep/if_ep_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ex/if_ex.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ex/if_ex_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ex/if_ex_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/exca/exca.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fatm/if_fatm.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fatm/if_fatmvar.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fb/boot_font.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fb/creator.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/fb/fb.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fb/fbreg.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fb/gallant12x22.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/fb/gfb.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fb/s3_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fb/splash.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fb/tga.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fb/vga.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fe/if_fe.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fe/if_fe_cbus.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fe/if_fe_isa.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fe/if_fe_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/firewire.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/firewire.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwcrom.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwdev.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwdma.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwmem.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwohci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwohci_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwohcireg.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwphyreg.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/if_fwe.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/sbp.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fxp/if_fxp.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/fxp/if_fxpvar.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/gem/if_gem.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/gem/if_gem_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/gfb/gfb_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/gx/if_gx.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/harp/if_harp.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hatm/if_hatm.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hatm/if_hatm_intr.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hatm/if_hatm_ioctl.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hatm/if_hatm_rx.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hatm/if_hatm_tx.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hatm/if_hatmvar.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hea/eni.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hea/eni.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hea/eni_buffer.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hea/eni_globals.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hea/eni_init.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hea/eni_intr.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hea/eni_receive.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hea/eni_transmit.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hea/eni_vcm.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hea/hea_freebsd.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hea/hea_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_buffer.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_command.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_globals.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_if.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_init.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_intr.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_load.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_output.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_receive.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_stats.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_timer.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_transmit.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/fore_vcm.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/hfa_eisa.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/hfa_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hfa/hfa_sbus.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hifn/hifn7751.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hifn/hifn7751reg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hme/if_hme.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hme/if_hme_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hme/if_hme_sbus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ic/ns16550.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ichsmb/ichsmb.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ichsmb/ichsmb_pci.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ida/ida.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ida/ida_disk.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ida/ida_eisa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ida/ida_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/idt/idt.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/idt/idt_harp.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/idt/idt_pci.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ie/if_ie.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ie/if_ie_isa.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/iicbus/if_ic.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/iicbus/iic.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/iicbus/iicbb.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/iicbus/iicbus.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/iicbus/iiconf.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/iicbus/iicsmb.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/iir/iir.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/iir/iir.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/iir/iir_ctrl.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/iir/iir_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ips/ips.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ips/ips.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ips/ips_commands.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ips/ips_disk.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ips/ips_disk.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ips/ips_ioctl.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ips/ips_pci.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/isp/isp.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/isp/isp_freebsd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/isp/isp_freebsd.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/isp/isp_inline.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/isp/isp_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/isp/isp_sbus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/isp/isp_target.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/isp/isp_target.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/isp/isp_tpublic.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/isp/ispvar.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ispfw/ispfw.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/joy/joy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/joy/joy_isa.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/joy/joy_pccard.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/kbd/atkbd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/kbd/atkbdc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/kbd/kbd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/kbd/kbdreg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/lge/if_lge.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/lmc/if_lmc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/lmc/if_lmc_common.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/lmc/if_lmc_fbsd3.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/lmc/if_lmc_media.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/lnc/if_lnc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/lnc/if_lnc_cbus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/lnc/if_lnc_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/lnc/if_lnc_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/matcd/matcd.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/matcd/matcd_isa.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mca/mca_bus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mcd/mcd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mcd/mcd_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/md/md.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/acphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/amphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/bmtphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/brgphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/dcphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/e1000phy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/e1000phyreg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/exphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/inphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/lxtphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/mii.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/mii_physubr.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/miidevs#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/mlphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/nsgphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/nsphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/pnaphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/pnphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/qsphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/rgephy.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/rgephyreg.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/rlphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/ruephy.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/tdkphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/tlphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/ukphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/ukphy_subr.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mii/xmphy.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mk48txx/mk48txx.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mlx/mlx.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mlx/mlx_disk.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mlx/mlx_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mlx/mlxvar.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mly/mly.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mpt/mpt.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mpt/mpt_debug.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mpt/mpt_freebsd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mpt/mpt_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/musycc/musycc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/my/if_my.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ncv/ncr53c500.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ncv/ncr53c500_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/nge/if_nge.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/nmdm/nmdm.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/nsp/nsp.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/nsp/nsp_pccard.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/null/null.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ofw/ofw_console.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ofw/ofw_disk.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ofw/openfirm.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ofw/openfirmio.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ofw/openpromio.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/owi/if_ieee80211.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/owi/if_owi.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/owi/if_owi_pccard.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/owi/if_wireg.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/owi/if_wivar.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/patm/if_patm.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/patm/if_patm_attach.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/patm/if_patm_intr.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/patm/if_patm_ioctl.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/patm/if_patm_rtables.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/patm/if_patm_rx.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/patm/if_patm_tx.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/patm/if_patmvar.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccard_cis.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccard_cis_quirks.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccarddevs#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccarddevs.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccardvar.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccbb/pccbb.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccbb/pccbbdevid.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccbb/pccbbreg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/eisa_pci.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/fixup_pci.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/ignore_pci.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/isa_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/pci_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/pci_private.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/pci_user.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/pcib_private.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/pcireg.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/pcivar.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pcic/i82365.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pcic/i82365_isa.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pdq/if_fpa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pdq/pdq.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pdq/pdq_ifsubr.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/if_plip.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/immio.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/lpbb.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/lpt.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/pcfclock.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/ppb_1284.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/ppb_base.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/ppb_msq.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/ppbconf.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/ppbconf.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/ppi.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/pps.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/vpo.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ppbus/vpoio.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pst/pst-iop.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pst/pst-pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pst/pst-raid.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/puc/puc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/puc/puc_ebus.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/puc/puc_pccard.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/puc/puc_pci.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/puc/puc_sbus.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/puc/pucdata.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/puc/pucvar.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_acctrace.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_alloclist.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_aselect.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_callback.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_chaindecluster.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_copyback.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_cvscan.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_dagdegrd.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_dagdegwr.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_dagffrd.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_dagffwr.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_dagfuncs.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_dagutils.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_debugMem.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_debugprint.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_decluster.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_declusterPQ.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_diskqueue.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_disks.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_driver.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_engine.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_evenodd.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_evenodd_dagfuncs.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_evenodd_dags.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_fifo.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_freebsdkintf.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_geniq.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_interdecluster.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_invertq.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_layout.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_map.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_mcpair.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_memchunk.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_nwayxor.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_options.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_paritylog.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_paritylogDiskMgr.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_paritylogging.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_parityloggingdags.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_parityscan.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_pq.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_pqdeg.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_pqdegdags.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_psstatus.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_raid0.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_raid1.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_raid4.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_raid5.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_raid5_rotatedspare.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_reconbuffer.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_reconmap.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_reconstruct.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_reconutil.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_revent.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_shutdown.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_sstf.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_states.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_stripelocks.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_strutils.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_threadstuff.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_utils.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/random/harvest.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/random/hash.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/random/randomdev.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/random/yarrow.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ray/if_ray.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/rc/rc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/re/if_re.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/rndtest/rndtest.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/rp/rp.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/rp/rp_isa.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/rp/rp_pci.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sab/sab.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/safe/safe.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sbni/if_sbni.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sbni/if_sbni_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sbni/if_sbni_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sbsh/if_sbsh.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/scd/scd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/scd/scd_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/si/si.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/si/si2_z280.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/si/si3_t225.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/si/si_eisa.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/si/si_isa.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/si/si_pci.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sio/sio.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sio/sio_ebus.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sio/sio_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sio/sio_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sio/sio_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sio/sio_puc.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sio/sioreg.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/smbus/smb.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/smbus/smbconf.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/smbus/smbus.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sn/if_sn.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sn/if_sn_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sn/if_sn_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/snc/dp83932.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/snc/dp83932subr.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/snc/if_snc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/snc/if_snc_cbus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/snc/if_snc_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/snp/snp.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/isa/ad1816.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/isa/ess.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/isa/mpu.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/isa/mss.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/isa/sb16.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/isa/sb8.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/isa/sndbuf_dma.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/isa/uartsio.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/als4000.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/au88x0.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/aureal.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/aureal.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/cmi.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/cs4281.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/csa.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/csamidi.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/csapcm.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/ds1.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/emu10k1.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/es137x.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/fm801.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/ich.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/ich.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/maestro.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/maestro3.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/neomagic-coeff.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/neomagic.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/neomagic.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/solo.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/t4dwave.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/t4dwave.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/via8233.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/via82c686.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/vibes.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/ac97.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/ac97.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/ac97_patch.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/ac97_patch.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/buffer.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/buffer.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/channel.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/channel.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/dsp.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/dsp.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/fake.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/feeder.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/feeder.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/feeder_fmt.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/mixer.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/mixer.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/sndstat.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/sound.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/sound.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/vchan.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/vchan.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sr/if_sr.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sr/if_sr_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sr/if_sr_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/stg/tmc18c30.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/stg/tmc18c30_isa.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/stg/tmc18c30_pccard.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/stg/tmc18c30_pci.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/stg/tmc18c30_subr.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/streams/streams.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sym/sym_hipd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/scgfbrndr.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/schistory.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/scmouse.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/scterm-dumb.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/scterm-sc.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/scterm.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/scvesactl.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/scvgarndr.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/scvidctl.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/scvtb.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/syscons.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/syscons.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/syscons/sysmouse.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/tdfx/tdfx_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/tga/tga_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/trm/trm.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/twe/twe.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/twe/twe_compat.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/twe/twe_freebsd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/twe/twevar.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/tx/if_tx.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/tx/if_txreg.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/txp/if_txp.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/uart/uart.h#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Wed Oct 22 20:12:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D4E8516A4C0; Wed, 22 Oct 2003 20:12:52 -0700 (PDT) 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 87C3316A4B3 for ; Wed, 22 Oct 2003 20:12:52 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id AA68D43FA3 for ; Wed, 22 Oct 2003 20:12:51 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9N3CpXJ072656 for ; Wed, 22 Oct 2003 20:12:51 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9N3Cpui072653 for perforce@freebsd.org; Wed, 22 Oct 2003 20:12:51 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Wed, 22 Oct 2003 20:12:51 -0700 (PDT) Message-Id: <200310230312.h9N3Cpui072653@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 Subject: PERFORCE change 40252 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 03:12:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=40252 Change 40252 by rwatson@rwatson_paprika on 2003/10/22 20:12:31 Resolve gcc assignment in conditional with too few parenthesis warning. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/kern/kern_xxx.c#6 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/kern/kern_xxx.c#6 (text+ko) ==== @@ -142,7 +142,8 @@ { int error; - if (error = cap_check(td,CAP_SYS_ADMIN)) + error = cap_check(td,CAP_SYS_ADMIN); + if (error) return (error); mtx_lock(&Giant); hostid = uap->hostid; From owner-p4-projects@FreeBSD.ORG Thu Oct 23 05:28:17 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 52FE916A4C0; Thu, 23 Oct 2003 05:28:17 -0700 (PDT) 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 2B07C16A4B3 for ; Thu, 23 Oct 2003 05:28:17 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8440543F93 for ; Thu, 23 Oct 2003 05:28:16 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9NCSGXJ045399 for ; Thu, 23 Oct 2003 05:28:16 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9NCSGUJ045396 for perforce@freebsd.org; Thu, 23 Oct 2003 05:28:16 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Thu, 23 Oct 2003 05:28:16 -0700 (PDT) Message-Id: <200310231228.h9NCSGUJ045396@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40290 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 12:28:17 -0000 http://perforce.freebsd.org/chv.cgi?CH=40290 Change 40290 by areisse@areisse_ibook on 2003/10/23 05:28:08 add -t option to list labels instead of changing them Affected files ... .. //depot/projects/trustedbsd/sedarwin/mac_cmds/setfsmac/setfsmac.c#3 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/mac_cmds/setfsmac/setfsmac.c#3 (text+ko) ==== @@ -74,7 +74,7 @@ void add_specs(struct label_specs *, const char *, int); void add_setfmac_specs(struct label_specs *, char *); void add_spec_line(const char *, int, struct label_spec_entry *, char *); -int apply_specs(struct label_specs *, FTSENT *, int, int); +int apply_specs(struct label_specs *, FTSENT *, int, int, int); int specs_empty(struct label_specs *); int @@ -86,6 +86,7 @@ int eflag = 0, xflag = 0, vflag = 0, Rflag = 0, hflag; int ch, is_setfmac; char *bn; + int test = 0; bn = basename(argv[0]); if (bn == NULL) @@ -93,7 +94,7 @@ is_setfmac = strcmp(bn, "setfmac") == 0; hflag = is_setfmac ? FTS_LOGICAL : FTS_PHYSICAL; specs = new_specs(); - while ((ch = getopt(argc, argv, is_setfmac ? "Rh" : "ef:s:vx")) != -1) { + while ((ch = getopt(argc, argv, is_setfmac ? "Rh" : "ef:s:vxt")) != -1) { switch (ch) { case 'R': Rflag = 1; @@ -116,6 +117,9 @@ case 'x': xflag = FTS_XDEV; break; + case 't': + test = 1; + break; default: usage(is_setfmac); } @@ -149,7 +153,7 @@ case FTS_F: /* do regular */ case FTS_SL: /* do symlink */ case FTS_W: /* do whiteout */ - if (apply_specs(specs, ftsent, hflag, vflag)) { + if (apply_specs(specs, ftsent, hflag, vflag, test)) { if (eflag) { errx(1, "labeling not supported in " "%.*s", ftsent->fts_pathlen, @@ -383,7 +387,8 @@ } int -apply_specs(struct label_specs *specs, FTSENT *ftsent, int hflag, int vflag) +apply_specs(struct label_specs *specs, FTSENT *ftsent, int hflag, int vflag, + int listonly) { regmatch_t pmatch; struct label_spec *ls; @@ -465,6 +470,15 @@ strcat(macstr, ls->match->mactext); } } + if (listonly) { + if (!strncmp ("sebsd/", macstr, 6)) + printf ("%-43s %s\n", ftsent->fts_path, macstr+6); + else + printf ("%-43s %s\n", ftsent->fts_path, macstr); + free (macstr); + return; + } + if (mac_from_text(&mac, macstr)) err(1, "mac_from_text(%s)", macstr); if ((hflag == FTS_PHYSICAL ? mac_set_link(ftsent->fts_accpath, mac) : From owner-p4-projects@FreeBSD.ORG Thu Oct 23 08:42:49 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1687216A4C0; Thu, 23 Oct 2003 08:42:49 -0700 (PDT) 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 E54AE16A4B3 for ; Thu, 23 Oct 2003 08:42:48 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5D1EC43F93 for ; Thu, 23 Oct 2003 08:42:48 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9NFgmXJ056302 for ; Thu, 23 Oct 2003 08:42:48 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9NFglI2056299 for perforce@freebsd.org; Thu, 23 Oct 2003 08:42:47 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 23 Oct 2003 08:42:47 -0700 (PDT) Message-Id: <200310231542.h9NFglI2056299@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 Subject: PERFORCE change 40305 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 15:42:49 -0000 http://perforce.freebsd.org/chv.cgi?CH=40305 Change 40305 by rwatson@rwatson_paprika on 2003/10/23 08:42:27 Integrate deletion of a number of files from trustedbsd_mac. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/Makefile#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32.h#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32_genassym.c#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32_misc.c#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32_proto.h#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32_signal.h#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32_sigtramp.S#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32_syscall.h#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32_syscalls.c#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32_sysent.c#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32_sysvec.c#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/ia32_util.h#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/syscalls.conf#4 delete .. //depot/projects/trustedbsd/sebsd/sys/amd64/ia32/syscalls.master#4 delete .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpica_support.c#3 delete .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpica_support.h#3 delete .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/atapi-all.c#5 delete .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/atapi-all.h#5 delete .. //depot/projects/trustedbsd/sebsd/sys/i386/isa/pcaudio.c#5 delete .. //depot/projects/trustedbsd/sebsd/sys/kern/subr_xxx.c#5 delete .. //depot/projects/trustedbsd/sebsd/sys/pc98/pc98/pcaudio.c#5 delete .. //depot/projects/trustedbsd/sebsd/sys/pc98/pc98/syscons.c#5 delete Differences ... From owner-p4-projects@FreeBSD.ORG Thu Oct 23 09:00:11 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5146F16A4C1; Thu, 23 Oct 2003 09:00:11 -0700 (PDT) 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 2494316A4B3 for ; Thu, 23 Oct 2003 09:00:11 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ECA9943FDF for ; Thu, 23 Oct 2003 09:00:09 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9NG09XJ062736 for ; Thu, 23 Oct 2003 09:00:09 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9NG093j062733 for perforce@freebsd.org; Thu, 23 Oct 2003 09:00:09 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 23 Oct 2003 09:00:09 -0700 (PDT) Message-Id: <200310231600.h9NG093j062733@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 Subject: PERFORCE change 40306 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 16:00:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=40306 Change 40306 by rwatson@rwatson_paprika on 2003/10/23 08:59:15 Integrate kern_mac.c to mac_file.c: echoing break-out of kern_mac.c in the main FreeBSD and MAC branches, need a place to put file descriptor labeling and access control. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_file.c#1 branch Differences ... From owner-p4-projects@FreeBSD.ORG Thu Oct 23 09:08:23 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BE05916A4C0; Thu, 23 Oct 2003 09:08:22 -0700 (PDT) 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 975E716A4B3 for ; Thu, 23 Oct 2003 09:08:22 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4F7A143F3F for ; Thu, 23 Oct 2003 09:08:21 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9NG8LXJ064007 for ; Thu, 23 Oct 2003 09:08:21 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9NG8KLq064004 for perforce@freebsd.org; Thu, 23 Oct 2003 09:08:20 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Thu, 23 Oct 2003 09:08:20 -0700 (PDT) Message-Id: <200310231608.h9NG8KLq064004@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 Subject: PERFORCE change 40308 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 16:08:23 -0000 http://perforce.freebsd.org/chv.cgi?CH=40308 Change 40308 by rwatson@rwatson_paprika on 2003/10/23 09:08:00 First pass at reducing mac_file.c down to just file descriptor related components. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_file.c#2 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_file.c#2 (text+ko) ==== @@ -1,12 +1,7 @@ /*- - * Copyright (c) 1999, 2000, 2001, 2002 Robert N. M. Watson - * Copyright (c) 2001 Ilmar S. Habibulin - * Copyright (c) 2001, 2002, 2003 Networks Associates Technology, Inc. + * Copyright (c) 2002, 2003 Networks Associates Technology, Inc. * All rights reserved. * - * This software was developed by Robert Watson and Ilmar Habibulin for the - * TrustedBSD Project. - * * This software was developed for the FreeBSD Project in part by Network * Associates Laboratories, the Security Research Division of Network * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), @@ -34,846 +29,43 @@ * SUCH DAMAGE. */ -/* - * Framework for extensible kernel access control. Kernel and userland - * interface to the framework, policy registration and composition. - */ - #include -__FBSDID("$FreeBSD: src/sys/kern/kern_mac.c,v 1.99 2003/09/29 18:35:17 rwatson Exp $"); +__FBSDID("$FreeBSD$"); #include "opt_mac.h" -#include "opt_devfs.h" -#include "opt_posix.h" #include -#include -#include -#include #include #include #include #include #include -#include #include #include #include -#include -#include #include #include #include #include -#include -#include -#include #include -#include -#include -#include -#include - -#include -#include -#include -#include -#include - #include -#include - -#include -#include -#include - -#include -#include - -#ifdef MAC - -/* - * Declare that the kernel provides MAC support, version 1. This permits - * modules to refuse to be loaded if the necessary support isn't present, - * even if it's pre-boot. - */ -MODULE_VERSION(kernel_mac_support, 1); - -SYSCTL_DECL(_security); +#include -SYSCTL_NODE(_security, OID_AUTO, mac, CTLFLAG_RW, 0, - "TrustedBSD MAC policy controls"); - -#if MAC_MAX_SLOTS > 32 -#error "MAC_MAX_SLOTS too large" -#endif - -static unsigned int mac_max_slots = MAC_MAX_SLOTS; -static unsigned int mac_slot_offsets_free = (1 << MAC_MAX_SLOTS) - 1; -SYSCTL_UINT(_security_mac, OID_AUTO, max_slots, CTLFLAG_RD, - &mac_max_slots, 0, ""); - -/* - * Has the kernel started generating labeled objects yet? All read/write - * access to this variable is serialized during the boot process. Following - * the end of serialization, we don't update this flag; no locking. - */ -static int mac_late = 0; - -/* - * Warn about EA transactions only the first time they happen. - * Weak coherency, no locking. - */ -static int ea_warn_once = 0; - -/* - * Flag to indicate whether or not we should allocate label storage for - * new mbufs. Since most dynamic policies we currently work with don't - * rely on mbuf labeling, try to avoid paying the cost of mtag allocation - * unless specifically notified of interest. One result of this is - * that if a dynamically loaded policy requests mbuf labels, it must - * be able to deal with a NULL label being returned on any mbufs that - * were already in flight when the policy was loaded. Since the policy - * already has to deal with uninitialized labels, this probably won't - * be a problem. Note: currently no locking. Will this be a problem? - */ -#ifndef MAC_ALWAYS_LABEL_MBUF -static int mac_labelmbufs = 0; -#endif - -static int mac_enforce_fs = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_fs, CTLFLAG_RW, - &mac_enforce_fs, 0, "Enforce MAC policy on file system objects"); -TUNABLE_INT("security.mac.enforce_fs", &mac_enforce_fs); - static int mac_enforce_file = 1; SYSCTL_INT(_security_mac, OID_AUTO, enforce_file, CTLFLAG_RW, &mac_enforce_file, 0, "Enforce MAC policy on file descriptors"); TUNABLE_INT("security.mac.enforce_file", &mac_enforce_file); -static int mac_enforce_kld = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_kld, CTLFLAG_RW, - &mac_enforce_kld, 0, "Enforce MAC policy on kld operations"); -TUNABLE_INT("security.mac.enforce_kld", &mac_enforce_kld); - -static int mac_enforce_network = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_network, CTLFLAG_RW, - &mac_enforce_network, 0, "Enforce MAC policy on network packets"); -TUNABLE_INT("security.mac.enforce_network", &mac_enforce_network); - -static int mac_enforce_pipe = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_pipe, CTLFLAG_RW, - &mac_enforce_pipe, 0, "Enforce MAC policy on pipe operations"); -TUNABLE_INT("security.mac.enforce_pipe", &mac_enforce_pipe); - -static int mac_enforce_posix_sem = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_posix_sem, CTLFLAG_RW, - &mac_enforce_posix_sem, 0, "Enforce MAC policy on global POSIX semaphores"); -TUNABLE_INT("security.mac.enforce_posix_sem", &mac_enforce_posix_sem); - -static int mac_enforce_process = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_process, CTLFLAG_RW, - &mac_enforce_process, 0, "Enforce MAC policy on inter-process operations"); -TUNABLE_INT("security.mac.enforce_process", &mac_enforce_process); - -static int mac_enforce_socket = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_socket, CTLFLAG_RW, - &mac_enforce_socket, 0, "Enforce MAC policy on socket operations"); -TUNABLE_INT("security.mac.enforce_socket", &mac_enforce_socket); - -static int mac_enforce_system = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_system, CTLFLAG_RW, - &mac_enforce_system, 0, "Enforce MAC policy on system operations"); -TUNABLE_INT("security.mac.enforce_system", &mac_enforce_system); - -static int mac_enforce_sysv = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_sysv, CTLFLAG_RW, - &mac_enforce_sysv, 0, "Enforce MAC policy on System V IPC objects"); -TUNABLE_INT("security.mac.enforce_sysv", &mac_enforce_sysv); - -static int mac_enforce_vm = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, - &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); -TUNABLE_INT("security.mac.enforce_vm", &mac_enforce_vm); - -static int mac_mmap_revocation = 0; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation, CTLFLAG_RW, - &mac_mmap_revocation, 0, "Revoke mmap access to files on subject " - "relabel"); - -static int mac_mmap_revocation_via_cow = 1; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation_via_cow, CTLFLAG_RW, - &mac_mmap_revocation_via_cow, 0, "Revoke mmap access to files via " - "copy-on-write semantics, or by removing all write access"); - #ifdef MAC_DEBUG -SYSCTL_NODE(_security_mac, OID_AUTO, debug, CTLFLAG_RW, 0, - "TrustedBSD MAC debug info"); - -static int mac_debug_label_fallback = 0; -SYSCTL_INT(_security_mac_debug, OID_AUTO, label_fallback, CTLFLAG_RW, - &mac_debug_label_fallback, 0, "Filesystems should fall back to fs label" - "when label is corrupted."); -TUNABLE_INT("security.mac.debug_label_fallback", - &mac_debug_label_fallback); +static unsigned int nmacfiles; -SYSCTL_NODE(_security_mac_debug, OID_AUTO, counters, CTLFLAG_RW, 0, - "TrustedBSD MAC object counters"); - -static unsigned int nmacmbufs, nmaccreds, nmacfiles, nmacifnets, nmacbpfdescs, - nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, - nmacipqs, nmacpipes, nmacprocs, nmacipcmsgs, nmacipcmsqs, - nmacipcsemas, nmacipcshms, nmacposixksems; - -#define MAC_DEBUG_COUNTER_INC(x) atomic_add_int(x, 1); -#define MAC_DEBUG_COUNTER_DEC(x) atomic_subtract_int(x, 1); - -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mbufs, CTLFLAG_RD, - &nmacmbufs, 0, "number of mbufs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, - &nmaccreds, 0, "number of ucreds in use"); SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, files, CTLFLAG_RD, &nmacfiles, 0, "number of files in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ifnets, CTLFLAG_RD, - &nmacifnets, 0, "number of ifnets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipqs, CTLFLAG_RD, - &nmacipqs, 0, "number of ipqs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, bpfdescs, CTLFLAG_RD, - &nmacbpfdescs, 0, "number of bpfdescs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, sockets, CTLFLAG_RD, - &nmacsockets, 0, "number of sockets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, pipes, CTLFLAG_RD, - &nmacpipes, 0, "number of pipes in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, procs, CTLFLAG_RD, - &nmacprocs, 0, "number of procs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mounts, CTLFLAG_RD, - &nmacmounts, 0, "number of mounts in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, temp, CTLFLAG_RD, - &nmactemp, 0, "number of temporary labels in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, vnodes, CTLFLAG_RD, - &nmacvnodes, 0, "number of vnodes in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, devfsdirents, CTLFLAG_RD, - &nmacdevfsdirents, 0, "number of devfs dirents inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msgs, CTLFLAG_RD, - &nmacipcmsgs, 0, "number of sysv ipc messages inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msqs, CTLFLAG_RD, - &nmacipcmsqs, 0, "number of sysv ipc message queue identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_semas, CTLFLAG_RD, - &nmacipcsemas, 0, "number of sysv ipc semaphore identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_shms, CTLFLAG_RD, - &nmacipcshms, 0, "number of sysv ipc shm identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, posix_ksems, CTLFLAG_RD, - &nmacposixksems, 0, "number of posix global semaphores inuse"); -#else -#define MAC_DEBUG_COUNTER_INC(x) -#define MAC_DEBUG_COUNTER_DEC(x) -#endif - -static int error_select(int error1, int error2); -static int mac_policy_register(struct mac_policy_conf *mpc); -static int mac_policy_unregister(struct mac_policy_conf *mpc); - -static void mac_check_vnode_mmap_downgrade(struct ucred *cred, - struct vnode *vp, int *prot); -static void mac_cred_mmapped_drop_perms_recurse(struct thread *td, - struct ucred *cred, struct vm_map *map); - -static void mac_destroy_socket_label(struct label *label); - -static int mac_setlabel_vnode_extattr(struct ucred *cred, - struct vnode *vp, struct label *intlabel); - -MALLOC_DEFINE(M_MACPIPELABEL, "macpipelabel", "MAC labels for pipes"); -MALLOC_DEFINE(M_MACTEMP, "mactemp", "MAC temporary label storage"); - -/* - * mac_static_policy_list holds a list of policy modules that are not - * loaded while the system is "live", and cannot be unloaded. These - * policies can be invoked without holding the busy count. - * - * mac_policy_list stores the list of dynamic policies. A busy count is - * maintained for the list, stored in mac_policy_busy. The busy count - * is protected by mac_policy_mtx; the list may be modified only - * while the busy count is 0, requiring that the lock be held to - * prevent new references to the list from being acquired. For almost - * all operations, incrementing the busy count is sufficient to - * guarantee consistency, as the list cannot be modified while the - * busy count is elevated. For a few special operations involving a - * change to the list of active policies, the mtx itself must be held. - * A condition variable, mac_policy_cv, is used to signal potential - * exclusive consumers that they should try to acquire the lock if a - * first attempt at exclusive access fails. - */ -#ifndef MAC_STATIC -static struct mtx mac_policy_mtx; -static struct cv mac_policy_cv; -static int mac_policy_count; -#endif -static LIST_HEAD(, mac_policy_conf) mac_policy_list; -static LIST_HEAD(, mac_policy_conf) mac_static_policy_list; - -/* - * We manually invoke WITNESS_WARN() to allow Witness to generate - * warnings even if we don't end up ever triggering the wait at - * run-time. The consumer of the exclusive interface must not hold - * any locks (other than potentially Giant) since we may sleep for - * long (potentially indefinite) periods of time waiting for the - * framework to become quiescent so that a policy list change may - * be made. - */ -static __inline void -mac_policy_grab_exclusive(void) -{ - -#ifndef MAC_STATIC - WITNESS_WARN(WARN_GIANTOK | WARN_SLEEPOK, NULL, - "mac_policy_grab_exclusive() at %s:%d", __FILE__, __LINE__); - mtx_lock(&mac_policy_mtx); - while (mac_policy_count != 0) - cv_wait(&mac_policy_cv, &mac_policy_mtx); -#endif -} - -static __inline void -mac_policy_assert_exclusive(void) -{ - -#ifndef MAC_STATIC - mtx_assert(&mac_policy_mtx, MA_OWNED); - KASSERT(mac_policy_count == 0, - ("mac_policy_assert_exclusive(): not exclusive")); -#endif -} - -static __inline void -mac_policy_release_exclusive(void) -{ - -#ifndef MAC_STATIC - KASSERT(mac_policy_count == 0, - ("mac_policy_release_exclusive(): not exclusive")); - mtx_unlock(&mac_policy_mtx); - cv_signal(&mac_policy_cv); -#endif -} - -static __inline void -mac_policy_list_busy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count++; - mtx_unlock(&mac_policy_mtx); -#endif -} - -static __inline int -mac_policy_list_conditional_busy(void) -{ -#ifndef MAC_STATIC - int ret; - - mtx_lock(&mac_policy_mtx); - if (!LIST_EMPTY(&mac_policy_list)) { - mac_policy_count++; - ret = 1; - } else - ret = 0; - mtx_unlock(&mac_policy_mtx); - return (ret); -#else - return (0); -#endif -} - -static __inline void -mac_policy_list_unbusy(void) -{ - -#ifndef MAC_STATIC - mtx_lock(&mac_policy_mtx); - mac_policy_count--; - KASSERT(mac_policy_count >= 0, ("MAC_POLICY_LIST_LOCK")); - if (mac_policy_count == 0) - cv_signal(&mac_policy_cv); - mtx_unlock(&mac_policy_mtx); -#endif -} - -/* - * MAC_CHECK performs the designated check by walking the policy - * module list and checking with each as to how it feels about the - * request. Note that it returns its value via 'error' in the scope - * of the caller. - */ -#define MAC_CHECK(check, args...) do { \ - struct mac_policy_conf *mpc; \ - int entrycount; \ - \ - error = 0; \ - LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## check != NULL) \ - error = error_select( \ - mpc->mpc_ops->mpo_ ## check (args), \ - error); \ - } \ - if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## check != NULL) \ - error = error_select( \ - mpc->mpc_ops->mpo_ ## check (args), \ - error); \ - } \ - mac_policy_list_unbusy(); \ - } \ -} while (0) - -/* - * MAC_BOOLEAN performs the designated boolean composition by walking - * the module list, invoking each instance of the operation, and - * combining the results using the passed C operator. Note that it - * returns its value via 'result' in the scope of the caller, which - * should be initialized by the caller in a meaningful way to get - * a meaningful result. - */ -#define MAC_BOOLEAN(operation, composition, args...) do { \ - struct mac_policy_conf *mpc; \ - int entrycount; \ - \ - LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - result = result composition \ - mpc->mpc_ops->mpo_ ## operation (args); \ - } \ - if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - result = result composition \ - mpc->mpc_ops->mpo_ ## operation \ - (args); \ - } \ - mac_policy_list_unbusy(); \ - } \ -} while (0) - -#define MAC_EXTERNALIZE(type, label, elementlist, outbuf, \ - outbuflen) do { \ - int claimed, first, ignorenotfound, savedlen; \ - char *element_name, *element_temp; \ - struct sbuf sb; \ - \ - error = 0; \ - first = 1; \ - sbuf_new(&sb, outbuf, outbuflen, SBUF_FIXEDLEN); \ - element_temp = elementlist; \ - while ((element_name = strsep(&element_temp, ",")) != NULL) { \ - if (element_name[0] == '?') { \ - element_name++; \ - ignorenotfound = 1; \ - } else \ - ignorenotfound = 0; \ - savedlen = sbuf_len(&sb); \ - if (first == 1) \ - error = sbuf_printf(&sb, "%s/", element_name); \ - else \ - error = sbuf_printf(&sb, ",%s/", element_name); \ - if (error == -1) { \ - error = EINVAL; /* XXX: E2BIG? */ \ - break; \ - } \ - claimed = 0; \ - MAC_CHECK(externalize_ ## type, label, element_name, \ - &sb, &claimed); \ - if (error) \ - break; \ - if (claimed == 0 && ignorenotfound) { \ - /* Revert last label name. */ \ - sbuf_setpos(&sb, savedlen); \ - } else if (claimed != 1) { \ - error = EINVAL; /* XXX: ENOLABEL? */ \ - break; \ - } else { \ - first = 0; \ - } \ - } \ - sbuf_finish(&sb); \ -} while (0) - -#define MAC_INTERNALIZE(type, label, instring) do { \ - char *element, *element_name, *element_data; \ - int claimed; \ - \ - error = 0; \ - element = instring; \ - while ((element_name = strsep(&element, ",")) != NULL) { \ - element_data = element_name; \ - element_name = strsep(&element_data, "/"); \ - if (element_data == NULL) { \ - error = EINVAL; \ - break; \ - } \ - claimed = 0; \ - MAC_CHECK(internalize_ ## type, label, element_name, \ - element_data, &claimed); \ - if (error) \ - break; \ - if (claimed != 1) { \ - /* XXXMAC: Another error here? */ \ - error = EINVAL; \ - break; \ - } \ - } \ -} while (0) - -/* - * MAC_PERFORM performs the designated operation by walking the policy - * module list and invoking that operation for each policy. - */ -#define MAC_PERFORM(operation, args...) do { \ - struct mac_policy_conf *mpc; \ - int entrycount; \ - \ - LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - mpc->mpc_ops->mpo_ ## operation (args); \ - } \ - if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - mpc->mpc_ops->mpo_ ## operation (args); \ - } \ - mac_policy_list_unbusy(); \ - } \ -} while (0) - -/* - * Initialize the MAC subsystem, including appropriate SMP locks. - */ -static void -mac_init(void) -{ - - LIST_INIT(&mac_static_policy_list); - LIST_INIT(&mac_policy_list); - -#ifndef MAC_STATIC - mtx_init(&mac_policy_mtx, "mac_policy_mtx", NULL, MTX_DEF); - cv_init(&mac_policy_cv, "mac_policy_cv"); -#endif -} - -/* - * For the purposes of modules that want to know if they were loaded - * "early", set the mac_late flag once we've processed modules either - * linked into the kernel, or loaded before the kernel startup. - */ -static void -mac_late_init(void) -{ - - mac_late = 1; -} - -/* - * After the policy list has changed, walk the list to update any global - * flags. Currently, we support only one flag, and it's conditionally - * defined; as a result, the entire function is conditional. Eventually, - * the #else case might also iterate across the policies. - */ -static void -mac_policy_updateflags(void) -{ -#ifndef MAC_ALWAYS_LABEL_MBUF - struct mac_policy_conf *tmpc; - int labelmbufs; - - mac_policy_assert_exclusive(); - - labelmbufs = 0; - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (tmpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_LABELMBUFS) - labelmbufs++; - } - mac_labelmbufs = (labelmbufs != 0); -#endif -} - -/* - * Allow MAC policy modules to register during boot, etc. - */ -int -mac_policy_modevent(module_t mod, int type, void *data) -{ - struct mac_policy_conf *mpc; - int error; - - error = 0; - mpc = (struct mac_policy_conf *) data; - -#ifdef MAC_STATIC - if (mac_late) { - printf("mac_policy_modevent: MAC_STATIC and late\n"); - return (EBUSY); - } -#endif - - switch (type) { - case MOD_LOAD: - if (mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_NOTLATE && - mac_late) { - printf("mac_policy_modevent: can't load %s policy " - "after booting\n", mpc->mpc_name); - error = EBUSY; - break; - } - error = mac_policy_register(mpc); - break; - case MOD_UNLOAD: - /* Don't unregister the module if it was never registered. */ - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) - != 0) - error = mac_policy_unregister(mpc); - else - error = 0; - break; - default: - break; - } - - return (error); -} - -static int -mac_policy_register(struct mac_policy_conf *mpc) -{ - struct mac_policy_conf *tmpc; - int error, slot, static_entry; - - error = 0; - - /* - * We don't technically need exclusive access while !mac_late, - * but hold it for assertion consistency. - */ - mac_policy_grab_exclusive(); - - /* - * If the module can potentially be unloaded, or we're loading - * late, we have to stick it in the non-static list and pay - * an extra performance overhead. Otherwise, we can pay a - * light locking cost and stick it in the static list. - */ - static_entry = (!mac_late && - !(mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_UNLOADOK)); - - if (static_entry) { - LIST_FOREACH(tmpc, &mac_static_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } else { - LIST_FOREACH(tmpc, &mac_policy_list, mpc_list) { - if (strcmp(tmpc->mpc_name, mpc->mpc_name) == 0) { - error = EEXIST; - goto out; - } - } - } - if (mpc->mpc_field_off != NULL) { - slot = ffs(mac_slot_offsets_free); - if (slot == 0) { - error = ENOMEM; - goto out; - } - slot--; - mac_slot_offsets_free &= ~(1 << slot); - *mpc->mpc_field_off = slot; - } - mpc->mpc_runtime_flags |= MPC_RUNTIME_FLAG_REGISTERED; - - /* - * If we're loading a MAC module after the framework has - * initialized, it has to go into the dynamic list. If - * we're loading it before we've finished initializing, - * it can go into the static list with weaker locker - * requirements. - */ - if (static_entry) - LIST_INSERT_HEAD(&mac_static_policy_list, mpc, mpc_list); - else - LIST_INSERT_HEAD(&mac_policy_list, mpc, mpc_list); - - /* Per-policy initialization. */ - if (mpc->mpc_ops->mpo_init != NULL) - (*(mpc->mpc_ops->mpo_init))(mpc); - mac_policy_updateflags(); - - printf("Security policy loaded: %s (%s)\n", mpc->mpc_fullname, - mpc->mpc_name); - -out: - mac_policy_release_exclusive(); - return (error); -} - -static int -mac_policy_unregister(struct mac_policy_conf *mpc) -{ - - /* - * If we fail the load, we may get a request to unload. Check - * to see if we did the run-time registration, and if not, - * silently succeed. - */ - mac_policy_grab_exclusive(); - if ((mpc->mpc_runtime_flags & MPC_RUNTIME_FLAG_REGISTERED) == 0) { - mac_policy_release_exclusive(); - return (0); - } -#if 0 - /* - * Don't allow unloading modules with private data. - */ - if (mpc->mpc_field_off != NULL) { - MAC_POLICY_LIST_UNLOCK(); - return (EBUSY); - } #endif - /* - * Only allow the unload to proceed if the module is unloadable - * by its own definition. - */ - if ((mpc->mpc_loadtime_flags & MPC_LOADTIME_FLAG_UNLOADOK) == 0) { - mac_policy_release_exclusive(); - return (EBUSY); - } - if (mpc->mpc_ops->mpo_destroy != NULL) - (*(mpc->mpc_ops->mpo_destroy))(mpc); - - LIST_REMOVE(mpc, mpc_list); - mpc->mpc_runtime_flags &= ~MPC_RUNTIME_FLAG_REGISTERED; - mac_policy_updateflags(); - - mac_policy_release_exclusive(); - - printf("Security policy unload: %s (%s)\n", mpc->mpc_fullname, - mpc->mpc_name); - - return (0); -} -/* - * Define an error value precedence, and given two arguments, selects the - * value with the higher precedence. - */ -static int -error_select(int error1, int error2) -{ - - /* Certain decision-making errors take top priority. */ - if (error1 == EDEADLK || error2 == EDEADLK) - return (EDEADLK); - - /* Invalid arguments should be reported where possible. */ - if (error1 == EINVAL || error2 == EINVAL) - return (EINVAL); - - /* Precedence goes to "visibility", with both process and file. */ - if (error1 == ESRCH || error2 == ESRCH) - return (ESRCH); - - if (error1 == ENOENT || error2 == ENOENT) - return (ENOENT); - - /* Precedence goes to DAC/MAC protections. */ - if (error1 == EACCES || error2 == EACCES) - return (EACCES); - - /* Precedence goes to privilege. */ - if (error1 == EPERM || error2 == EPERM) - return (EPERM); - - /* Precedence goes to error over success; otherwise, arbitrary. */ - if (error1 != 0) - return (error1); - return (error2); -} - -static struct label * -mbuf_to_label(struct mbuf *mbuf) -{ - struct m_tag *tag; - struct label *label; - - tag = m_tag_find(mbuf, PACKET_TAG_MACLABEL, NULL); - label = (struct label *)(tag+1); - - return (label); -} - -static void -mac_init_label(struct label *label) -{ - - bzero(label, sizeof(*label)); - label->l_flags = MAC_FLAG_INITIALIZED; -} - -static void -mac_destroy_label(struct label *label) -{ - - KASSERT(label->l_flags & MAC_FLAG_INITIALIZED, - ("destroying uninitialized label")); - - bzero(label, sizeof(*label)); - /* implicit: label->l_flags &= ~MAC_FLAG_INITIALIZED; */ -} - -void -mac_init_bpfdesc(struct bpf_d *bpf_d) -{ - - mac_init_label(&bpf_d->bd_label); - MAC_PERFORM(init_bpfdesc_label, &bpf_d->bd_label); - MAC_DEBUG_COUNTER_INC(&nmacbpfdescs); -} - -static void -mac_init_cred_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_cred_label, label); - MAC_DEBUG_COUNTER_INC(&nmaccreds); -} - -void -mac_init_cred(struct ucred *cred) -{ - - mac_init_cred_label(&cred->cr_label); -} - void -mac_init_devfsdirent(struct devfs_dirent *de) -{ - - mac_init_label(&de->de_label); - MAC_PERFORM(init_devfsdirent_label, &de->de_label); - MAC_DEBUG_COUNTER_INC(&nmacdevfsdirents); -} - -void mac_init_file(struct file *fp) { @@ -882,281 +74,7 @@ MAC_DEBUG_COUNTER_INC(&nmacfiles); } -static void -mac_init_ifnet_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_ifnet_label, label); - MAC_DEBUG_COUNTER_INC(&nmacifnets); -} - -void -mac_init_ifnet(struct ifnet *ifp) -{ - - mac_init_ifnet_label(&ifp->if_label); -} - -void -mac_init_ipc_msgmsg(struct msg *msgptr) -{ - - mac_init_label(&msgptr->label); - MAC_PERFORM(init_ipc_msgmsg_label, &msgptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsgs); -} - void -mac_init_ipc_msgqueue(struct msqid_kernel *msqkptr) -{ - - mac_init_label(&msqkptr->label); - MAC_PERFORM(init_ipc_msgqueue_label, &msqkptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsqs); -} - -void -mac_init_ipc_sema(struct semid_kernel *semakptr) -{ - - mac_init_label(&semakptr->label); - MAC_PERFORM(init_ipc_sema_label, &semakptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcsemas); -} - -void -mac_init_ipc_shm(struct shmid_kernel *shmsegptr) -{ - - mac_init_label(&shmsegptr->label); - MAC_PERFORM(init_ipc_shm_label, &shmsegptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcshms); -} - -int -mac_init_ipq(struct ipq *ipq, int flag) -{ - int error; - - mac_init_label(&ipq->ipq_label); - - MAC_CHECK(init_ipq_label, &ipq->ipq_label, flag); - if (error) { - MAC_PERFORM(destroy_ipq_label, &ipq->ipq_label); - mac_destroy_label(&ipq->ipq_label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacipqs); - } - return (error); -} - -int -mac_init_mbuf_tag(struct m_tag *tag, int flag) -{ - struct label *label; - int error; - - label = (struct label *) (tag + 1); - mac_init_label(label); - - MAC_CHECK(init_mbuf_label, label, flag); - if (error) { - MAC_PERFORM(destroy_mbuf_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacmbufs); - } - return (error); -} - -int -mac_init_mbuf(struct mbuf *m, int flag) -{ - struct m_tag *tag; - int error; - - M_ASSERTPKTHDR(m); - -#ifndef MAC_ALWAYS_LABEL_MBUF - /* - * If conditionally allocating mbuf labels, don't allocate unless - * they are required. - */ - if (!mac_labelmbufs) - return (0); -#endif - tag = m_tag_get(PACKET_TAG_MACLABEL, sizeof(struct label), - flag); - if (tag == NULL) - return (ENOMEM); - error = mac_init_mbuf_tag(tag, flag); - if (error) { - m_tag_free(tag); - return (error); - } - m_tag_prepend(m, tag); - return (0); -} - -void -mac_init_mount(struct mount *mp) >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Oct 23 10:21:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0F4F116A4C1; Thu, 23 Oct 2003 10:21:56 -0700 (PDT) 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 DF12116A4BF for ; Thu, 23 Oct 2003 10:21:55 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 49AC343FA3 for ; Thu, 23 Oct 2003 10:21:55 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9NHLtXJ068096 for ; Thu, 23 Oct 2003 10:21:55 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9NHLslE068093 for perforce@freebsd.org; Thu, 23 Oct 2003 10:21:54 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Thu, 23 Oct 2003 10:21:54 -0700 (PDT) Message-Id: <200310231721.h9NHLslE068093@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40315 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 17:21:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=40315 Change 40315 by areisse@areisse_ibook on 2003/10/23 10:21:52 checkpolicy reports errors using the original file and line number Affected files ... .. //depot/projects/trustedbsd/sedarwin/sebsd_cmds/checkpolicy/policy_scan.l#2 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/sebsd_cmds/checkpolicy/policy_scan.l#2 (text+ko) ==== @@ -11,9 +11,34 @@ static char linebuf[2][255]; static unsigned int lno = 0; +static char policydb_curfile[1024] = ""; unsigned long policydb_lineno = 1; unsigned int policydb_errors = 0; + +static void set_file (const char *in) +{ + policydb_lineno = 0; + const char *p = in; + p += 5; + while (*p == ' ' || (*p >= '0' && *p <= '9') || *p == '"') + { + if (*p >= '0' && *p <= '9') + policydb_lineno = (*p - '0') + policydb_lineno * 10; + p++; + } + char *pp = policydb_curfile; + + while (*p != '"' && *p != '\n' && *p) + { + *pp = *p; + pp++; + *pp = 0; + p++; + } + policydb_lineno--; +} + %} %array letter [A-Za-z] @@ -130,6 +155,7 @@ {letter}({letter}|{digit}|_)* { return(IDENTIFIER); } {letter}({letter}|{digit}|_|"."|"-")* { return(USER_IDENTIFIER); } {digit}{digit}* { return(NUMBER); } +#line[ ]{digit}{digit}*[^\n]* { set_file (yytext); } #[^\n]* { /* delete comments */ } [ \t\f]+ { /* delete whitespace */ } "==" { return(EQUALS); } @@ -154,9 +180,10 @@ %% int yyerror(char *msg) { - fprintf(stderr, "ERROR '%s' at token '%s' on line %ld:\n%s\n%s\n", + fprintf(stderr, "ERROR '%s' at token '%s' on line %s:%ld:\n%s\n%s\n", msg, yytext, + policydb_curfile, policydb_lineno, linebuf[0], linebuf[1]); policydb_errors++; @@ -165,9 +192,10 @@ int yywarn(char *msg) { - fprintf(stderr, "WARNING '%s' at token '%s' on line %ld:\n%s\n%s\n", + fprintf(stderr, "WARNING '%s' at token '%s' on line %s:%ld:\n%s\n%s\n", msg, yytext, + policydb_curfile, policydb_lineno, linebuf[0], linebuf[1]); return 0; From owner-p4-projects@FreeBSD.ORG Thu Oct 23 12:22:36 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0BC1316A4C0; Thu, 23 Oct 2003 12:22:36 -0700 (PDT) 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 BCD2916A4B3 for ; Thu, 23 Oct 2003 12:22:35 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6643E43FCB for ; Thu, 23 Oct 2003 12:22:34 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9NJMYXJ076318 for ; Thu, 23 Oct 2003 12:22:34 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9NJMX05076315 for perforce@freebsd.org; Thu, 23 Oct 2003 12:22:33 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 12:22:33 -0700 (PDT) Message-Id: <200310231922.h9NJMX05076315@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40331 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 19:22:36 -0000 http://perforce.freebsd.org/chv.cgi?CH=40331 Change 40331 by sam@sam_ebb on 2003/10/23 12:22:27 integration of tcp hostcache snapshot from andre Affected files ... .. //depot/projects/netperf/sys/conf/files#15 edit .. //depot/projects/netperf/sys/net/if_arcsubr.c#2 edit .. //depot/projects/netperf/sys/net/if_ef.c#2 edit .. //depot/projects/netperf/sys/net/if_ethersubr.c#7 edit .. //depot/projects/netperf/sys/net/if_faith.c#5 edit .. //depot/projects/netperf/sys/net/if_fddisubr.c#2 edit .. //depot/projects/netperf/sys/net/if_iso88025subr.c#3 edit .. //depot/projects/netperf/sys/net/if_loop.c#8 edit .. //depot/projects/netperf/sys/net/if_ppp.c#3 edit .. //depot/projects/netperf/sys/net/route.c#17 edit .. //depot/projects/netperf/sys/net/route.h#7 edit .. //depot/projects/netperf/sys/net/rtsock.c#6 edit .. //depot/projects/netperf/sys/netatalk/ddp_output.c#3 edit .. //depot/projects/netperf/sys/netinet/icmp_var.h#2 edit .. //depot/projects/netperf/sys/netinet/in_pcb.c#6 edit .. //depot/projects/netperf/sys/netinet/in_pcb.h#7 edit .. //depot/projects/netperf/sys/netinet/in_rmx.c#8 edit .. //depot/projects/netperf/sys/netinet/in_var.h#3 edit .. //depot/projects/netperf/sys/netinet/ip_divert.c#7 edit .. //depot/projects/netperf/sys/netinet/ip_fastforward.c#1 add .. //depot/projects/netperf/sys/netinet/ip_flow.c#5 delete .. //depot/projects/netperf/sys/netinet/ip_flow.h#4 delete .. //depot/projects/netperf/sys/netinet/ip_fw.h#2 edit .. //depot/projects/netperf/sys/netinet/ip_fw2.c#11 edit .. //depot/projects/netperf/sys/netinet/ip_icmp.c#6 edit .. //depot/projects/netperf/sys/netinet/ip_input.c#14 edit .. //depot/projects/netperf/sys/netinet/ip_output.c#10 edit .. //depot/projects/netperf/sys/netinet/ip_var.h#8 edit .. //depot/projects/netperf/sys/netinet/raw_ip.c#7 edit .. //depot/projects/netperf/sys/netinet/tcp.h#2 edit .. //depot/projects/netperf/sys/netinet/tcp_hostcache.c#1 add .. //depot/projects/netperf/sys/netinet/tcp_input.c#6 edit .. //depot/projects/netperf/sys/netinet/tcp_output.c#3 edit .. //depot/projects/netperf/sys/netinet/tcp_subr.c#5 edit .. //depot/projects/netperf/sys/netinet/tcp_syncache.c#6 edit .. //depot/projects/netperf/sys/netinet/tcp_timer.c#2 edit .. //depot/projects/netperf/sys/netinet/tcp_usrreq.c#3 edit .. //depot/projects/netperf/sys/netinet/tcp_var.h#2 edit .. //depot/projects/netperf/sys/netinet/udp_usrreq.c#6 edit .. //depot/projects/netperf/sys/netinet6/icmp6.c#9 edit .. //depot/projects/netperf/sys/netinet6/in6_pcb.c#9 edit .. //depot/projects/netperf/sys/netinet6/in6_rmx.c#9 edit .. //depot/projects/netperf/sys/netinet6/in6_src.c#8 edit .. //depot/projects/netperf/sys/netinet6/ip6_forward.c#10 edit .. //depot/projects/netperf/sys/netinet6/ip6_input.c#12 edit .. //depot/projects/netperf/sys/netinet6/ip6_output.c#17 edit .. //depot/projects/netperf/sys/netinet6/raw_ip6.c#4 edit .. //depot/projects/netperf/sys/netinet6/udp6_output.c#3 edit .. //depot/projects/netperf/sys/netipx/ipx_input.c#4 edit .. //depot/projects/netperf/sys/netipx/ipx_outputfl.c#2 edit .. //depot/projects/netperf/sys/sys/mbuf.h#5 edit Differences ... ==== //depot/projects/netperf/sys/conf/files#15 (text+ko) ==== @@ -1424,7 +1424,7 @@ netinet/ip_ecn.c optional inet6 netinet/ip_encap.c optional inet netinet/ip_encap.c optional inet6 -netinet/ip_flow.c optional inet +netinet/ip_fastforward.c optional inet netinet/ip_fw2.c optional ipfirewall netinet/ip_icmp.c optional inet netinet/ip_input.c optional inet @@ -1432,6 +1432,7 @@ netinet/ip_output.c optional inet netinet/raw_ip.c optional inet netinet/tcp_debug.c optional tcpdebug +netinet/tcp_hostcache.c optional inet netinet/tcp_input.c optional inet netinet/tcp_output.c optional inet netinet/tcp_subr.c optional inet ==== //depot/projects/netperf/sys/net/if_arcsubr.c#2 (text+ko) ==== @@ -543,14 +543,14 @@ #ifdef INET case ARCTYPE_IP: m_adj(m, ARC_HDRNEWLEN); - if (ipflow_fastforward(m)) + if (ip_fastforward(m)) return; isr = NETISR_IP; break; case ARCTYPE_IP_OLD: m_adj(m, ARC_HDRLEN); - if (ipflow_fastforward(m)) + if (ip_fastforward(m)) return; isr = NETISR_IP; break; ==== //depot/projects/netperf/sys/net/if_ef.c#2 (text+ko) ==== @@ -252,8 +252,8 @@ #endif #ifdef INET case ETHERTYPE_IP: - if (ipflow_fastforward(m)) - return (0); + if (ip_fastforward(m)) + return; isr = NETISR_IP; break; ==== //depot/projects/netperf/sys/net/if_ethersubr.c#7 (text+ko) ==== @@ -720,7 +720,7 @@ switch (ether_type) { #ifdef INET case ETHERTYPE_IP: - if (ipflow_fastforward(m)) + if (ip_fastforward(m)) return; isr = NETISR_IP; break; ==== //depot/projects/netperf/sys/net/if_faith.c#5 (text+ko) ==== @@ -271,17 +271,8 @@ struct rt_addrinfo *info; { RT_LOCK_ASSERT(rt); - - if (rt) { - rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; /* for ISO */ - /* - * For optimal performance, the send and receive buffers - * should be at least twice the MTU plus a little more for - * overhead. - */ - rt->rt_rmx.rmx_recvpipe = - rt->rt_rmx.rmx_sendpipe = 3 * FAITHMTU; - } + if (rt) + rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; } /* ==== //depot/projects/netperf/sys/net/if_fddisubr.c#2 (text+ko) ==== @@ -471,7 +471,7 @@ switch (type) { #ifdef INET case ETHERTYPE_IP: - if (ipflow_fastforward(m)) + if (ip_fastforward(m)) return; isr = NETISR_IP; break; ==== //depot/projects/netperf/sys/net/if_iso88025subr.c#3 (text+ko) ==== @@ -556,7 +556,7 @@ #ifdef INET case ETHERTYPE_IP: th->iso88025_shost[0] &= ~(TR_RII); - if (ipflow_fastforward(m)) + if (ip_fastforward(m)) return; isr = NETISR_IP; break; ==== //depot/projects/netperf/sys/net/if_loop.c#8 (text+ko) ==== @@ -357,17 +357,8 @@ struct rt_addrinfo *info; { RT_LOCK_ASSERT(rt); - - if (rt) { - rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; /* for ISO */ - /* - * For optimal performance, the send and receive buffers - * should be at least twice the MTU plus a little more for - * overhead. - */ - rt->rt_rmx.rmx_recvpipe = - rt->rt_rmx.rmx_sendpipe = 3 * LOMTU; - } + if (rt) + rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; } /* ==== //depot/projects/netperf/sys/net/if_ppp.c#3 (text+ko) ==== @@ -1538,8 +1538,8 @@ m->m_pkthdr.len -= PPP_HDRLEN; m->m_data += PPP_HDRLEN; m->m_len -= PPP_HDRLEN; - if (ipflow_fastforward(m)) - return; + if (ip_fastforward(m)) + return; isr = NETISR_IP; break; #endif ==== //depot/projects/netperf/sys/net/route.c#17 (text+ko) ==== @@ -139,7 +139,7 @@ */ newrt = rt = (struct rtentry *)rn; nflags = rt->rt_flags & ~ignflags; - if (report && (nflags & (RTF_CLONING | RTF_PRCLONING))) { + if (report && (nflags & RTF_CLONING)) { /* * We are apparently adding (report = 0 in delete). * If it requires that it be cloned, do so. @@ -548,7 +548,7 @@ */ if (flags & RTF_HOST) { netmask = 0; - flags &= ~(RTF_CLONING | RTF_PRCLONING); + flags &= ~RTF_CLONING; } switch (req) { case RTM_DELETE: @@ -570,7 +570,7 @@ * Now search what's left of the subtree for any cloned * routes which might have been formed from this node. */ - if ((rt->rt_flags & (RTF_CLONING | RTF_PRCLONING)) && + if ((rt->rt_flags & RTF_CLONING) && rt_mask(rt)) { rnh->rnh_walktree_from(rnh, dst, rt_mask(rt), rt_fixdelete, rt); @@ -617,7 +617,7 @@ ifa = rt->rt_ifa; /* XXX locking? */ flags = rt->rt_flags & - ~(RTF_CLONING | RTF_PRCLONING | RTF_STATIC); + ~(RTF_CLONING | RTF_STATIC); flags |= RTF_WASCLONED; gateway = rt->rt_gateway; if ((netmask = rt->rt_genmask) == 0) @@ -678,11 +678,11 @@ /* * Uh-oh, we already have one of these in the tree. * We do a special hack: if the route that's already - * there was generated by the protocol-cloning - * mechanism, then we just blow it away and retry - * the insertion of the new one. + * there was generated by the cloning mechanism + * then we just blow it away and retry the insertion + * of the new one. */ - rt2 = rtalloc1(dst, 0, RTF_PRCLONING); + rt2 = rtalloc1(dst, 0, 0); if (rt2 && rt2->rt_parent) { rtrequest(RTM_DELETE, rt_key(rt2), @@ -724,7 +724,7 @@ ("no route to clone from")); rt->rt_rmx = (*ret_nrt)->rt_rmx; /* copy metrics */ rt->rt_rmx.rmx_pksent = 0; /* reset packet counter */ - if ((*ret_nrt)->rt_flags & (RTF_CLONING | RTF_PRCLONING)) { + if ((*ret_nrt)->rt_flags & RTF_CLONING) { /* * NB: We do not bump the refcnt on the parent * entry under the assumption that it will @@ -800,7 +800,7 @@ struct rtentry *rt0 = vp; if (rt->rt_parent == rt0 && - !(rt->rt_flags & (RTF_PINNED | RTF_CLONING | RTF_PRCLONING))) { + !(rt->rt_flags & (RTF_PINNED | RTF_CLONING))) { return rtrequest(RTM_DELETE, rt_key(rt), (struct sockaddr *)0, rt_mask(rt), rt->rt_flags, (struct rtentry **)0); @@ -841,7 +841,7 @@ #endif if (!rt->rt_parent || - (rt->rt_flags & (RTF_PINNED | RTF_CLONING | RTF_PRCLONING))) { + (rt->rt_flags & (RTF_PINNED | RTF_CLONING))) { #ifdef DEBUG if(rtfcdebug) printf("no parent, pinned or cloning\n"); #endif @@ -992,9 +992,10 @@ * correct choice anyway), and avoid the resulting reference loops * by disallowing any route to run through itself as a gateway. * This is obviously mandatory when we get rt->rt_output(). + * XXX: After removal of PRCLONING this probably not needed anymore. */ if (rt->rt_flags & RTF_GATEWAY) { - rt->rt_gwroute = rtalloc1(gate, 1, RTF_PRCLONING); + rt->rt_gwroute = rtalloc1(gate, 1, 0); if (rt->rt_gwroute == rt) { RTFREE_LOCKED(rt->rt_gwroute); rt->rt_gwroute = 0; ==== //depot/projects/netperf/sys/net/route.h#7 (text+ko) ==== @@ -58,6 +58,12 @@ * These numbers are used by reliable protocols for determining * retransmission behavior and are included in the routing structure. */ +struct rt_metrics_lite { + u_long rmx_mtu; /* MTU for this path */ + u_long rmx_expire; /* lifetime for route, e.g. redirect */ + u_long rmx_pksent; /* packets sent using this route */ +}; + struct rt_metrics { u_long rmx_locks; /* Kernel must leave these values alone */ u_long rmx_mtu; /* MTU for this path */ @@ -104,10 +110,10 @@ long rt_refcnt; /* # held references */ u_long rt_flags; /* up/down?, host/net */ struct ifnet *rt_ifp; /* the answer: interface to use */ - struct ifaddr *rt_ifa; /* the answer: interface to use */ + struct ifaddr *rt_ifa; /* the answer: interface address to use */ struct sockaddr *rt_genmask; /* for generation of cloned routes */ caddr_t rt_llinfo; /* pointer to link level info cache */ - struct rt_metrics rt_rmx; /* metrics used by rx'ing protocols */ + struct rt_metrics_lite rt_rmx; /* metrics used by rx'ing protocols */ struct rtentry *rt_gwroute; /* implied entry for gatewayed routes */ int (*rt_output)(struct ifnet *, struct mbuf *, struct sockaddr *, struct rtentry *); @@ -151,7 +157,7 @@ #define RTF_PROTO2 0x4000 /* protocol specific routing flag */ #define RTF_PROTO1 0x8000 /* protocol specific routing flag */ -#define RTF_PRCLONING 0x10000 /* protocol requires cloning */ +/* 0x10000 unused */ #define RTF_WASCLONED 0x20000 /* route generated through cloning */ #define RTF_PROTO3 0x40000 /* protocol specific routing flag */ /* 0x80000 unused */ ==== //depot/projects/netperf/sys/net/rtsock.c#6 (text+ko) ==== @@ -86,7 +86,8 @@ static int sysctl_dumpentry(struct radix_node *rn, void *vw); static int sysctl_iflist(int af, struct walkarg *w); static int route_output(struct mbuf *, struct socket *); -static void rt_setmetrics(u_long, struct rt_metrics *, struct rt_metrics *); +static void rt_setmetrics(u_long, struct rt_metrics *, struct rt_metrics_lite *); +static void rt_getmetrics(struct rt_metrics_lite *, struct rt_metrics *); static void rt_dispatch(struct mbuf *, struct sockaddr *); /* @@ -354,9 +355,6 @@ RT_LOCK(saved_nrt); rt_setmetrics(rtm->rtm_inits, &rtm->rtm_rmx, &saved_nrt->rt_rmx); - saved_nrt->rt_rmx.rmx_locks &= ~(rtm->rtm_inits); - saved_nrt->rt_rmx.rmx_locks |= - (rtm->rtm_inits & rtm->rtm_rmx.rmx_locks); saved_nrt->rt_refcnt--; saved_nrt->rt_genmask = info.rti_info[RTAX_GENMASK]; RT_UNLOCK(saved_nrt); @@ -427,7 +425,7 @@ (void)rt_msg2(rtm->rtm_type, &info, (caddr_t)rtm, (struct walkarg *)0); rtm->rtm_flags = rt->rt_flags; - rtm->rtm_rmx = rt->rt_rmx; + rt_getmetrics(&rt->rt_rmx, &rtm->rtm_rmx); rtm->rtm_addrs = info.rti_addrs; break; @@ -477,9 +475,7 @@ rt->rt_genmask = info.rti_info[RTAX_GENMASK]; /* FALLTHROUGH */ case RTM_LOCK: - rt->rt_rmx.rmx_locks &= ~(rtm->rtm_inits); - rt->rt_rmx.rmx_locks |= - (rtm->rtm_inits & rtm->rtm_rmx.rmx_locks); + /* We don't support locks anymore */ break; } RT_UNLOCK(rt); @@ -541,20 +537,28 @@ } static void -rt_setmetrics(u_long which, struct rt_metrics *in, struct rt_metrics *out) +rt_setmetrics(u_long which, struct rt_metrics *in, struct rt_metrics_lite *out) { #define metric(f, e) if (which & (f)) out->e = in->e; - metric(RTV_RPIPE, rmx_recvpipe); - metric(RTV_SPIPE, rmx_sendpipe); - metric(RTV_SSTHRESH, rmx_ssthresh); - metric(RTV_RTT, rmx_rtt); - metric(RTV_RTTVAR, rmx_rttvar); - metric(RTV_HOPCOUNT, rmx_hopcount); + /* + * Only these are stored in the routing entry since introduction + * of tcp hostcache. The rest is ignored. + */ metric(RTV_MTU, rmx_mtu); metric(RTV_EXPIRE, rmx_expire); #undef metric } +static void +rt_getmetrics(struct rt_metrics_lite *in, struct rt_metrics *out) +{ +#define metric(e) out->e = in->e; + bzero(out, sizeof(*out)); + metric(rmx_mtu); + metric(rmx_expire); +#undef metric +} + #define ROUNDUP(a) \ ((a) > 0 ? (1 + (((a) - 1) | (sizeof(long) - 1))) : sizeof(long)) @@ -944,8 +948,8 @@ struct rt_msghdr *rtm = (struct rt_msghdr *)w->w_tmem; rtm->rtm_flags = rt->rt_flags; - rtm->rtm_use = rt->rt_use; - rtm->rtm_rmx = rt->rt_rmx; + rtm->rtm_use = rt->rt_rmx.rmx_pksent; + rt_getmetrics(&rt->rt_rmx, &rtm->rtm_rmx); rtm->rtm_index = rt->rt_ifp->if_index; rtm->rtm_errno = rtm->rtm_pid = rtm->rtm_seq = 0; rtm->rtm_addrs = info.rti_addrs; ==== //depot/projects/netperf/sys/netatalk/ddp_output.c#3 (text+ko) ==== @@ -217,7 +217,7 @@ elh->el_type = ELAP_DDPEXTEND; elh->el_dnode = gate.sat_addr.s_node; } - ro->ro_rt->rt_use++; + ro->ro_rt->rt_rmx.rmx_pksent++; #ifdef NETATALK_DEBUG printf ("ddp_route: from %d.%d to %d.%d, via %d.%d (%s%d)\n", ==== //depot/projects/netperf/sys/netinet/icmp_var.h#2 (text+ko) ==== @@ -81,11 +81,12 @@ extern int badport_bandlim(int); #define BANDLIM_UNLIMITED -1 #define BANDLIM_ICMP_UNREACH 0 -#define BANDLIM_ICMP_ECHO 1 -#define BANDLIM_ICMP_TSTAMP 2 -#define BANDLIM_RST_CLOSEDPORT 3 /* No connection, and no listeners */ -#define BANDLIM_RST_OPENPORT 4 /* No connection, listener */ -#define BANDLIM_MAX 4 +#define BANDLIM_ICMP_UNREACH_HOST 1 +#define BANDLIM_ICMP_ECHO 2 +#define BANDLIM_ICMP_TSTAMP 3 +#define BANDLIM_RST_CLOSEDPORT 4 /* No connection, and no listeners */ +#define BANDLIM_RST_OPENPORT 5 /* No connection, listener */ +#define BANDLIM_MAX 5 #endif #endif ==== //depot/projects/netperf/sys/netinet/in_pcb.c#6 (text+ko) ==== @@ -536,7 +536,6 @@ if (error) return (error); } - if (!TAILQ_EMPTY(&in_ifaddrhead)) { /* * If the destination address is INADDR_ANY, @@ -554,7 +553,8 @@ &in_ifaddrhead)->ia_broadaddr)->sin_addr; } if (laddr.s_addr == INADDR_ANY) { - register struct route *ro; + struct route *ro; + struct route sro; ia = (struct in_ifaddr *)0; /* @@ -563,19 +563,10 @@ * Note that we should check the address family of the cached * destination, in case of sharing the cache with IPv6. */ - ro = &inp->inp_route; - if (ro->ro_rt && - (ro->ro_dst.sa_family != AF_INET || - satosin(&ro->ro_dst)->sin_addr.s_addr != faddr.s_addr || - inp->inp_socket->so_options & SO_DONTROUTE)) { - RTFREE(ro->ro_rt); - ro->ro_rt = (struct rtentry *)0; - } - if ((inp->inp_socket->so_options & SO_DONTROUTE) == 0 && /*XXX*/ - (ro->ro_rt == (struct rtentry *)0 || - ro->ro_rt->rt_ifp == (struct ifnet *)0)) { - /* No route yet, so try to acquire one */ - bzero(&ro->ro_dst, sizeof(struct sockaddr_in)); + ro = &sro; + bzero(ro, sizeof(*ro)); + if ((inp->inp_socket->so_options & SO_DONTROUTE) == 0) { + /* Find out route to destination */ ro->ro_dst.sa_family = AF_INET; ro->ro_dst.sa_len = sizeof(struct sockaddr_in); ((struct sockaddr_in *)&ro->ro_dst)->sin_addr = faddr; @@ -589,6 +580,8 @@ */ if (ro->ro_rt && !(ro->ro_rt->rt_ifp->if_flags & IFF_LOOPBACK)) ia = ifatoia(ro->ro_rt->rt_ifa); + if (ro->ro_rt) + RTFREE(ro->ro_rt); if (ia == 0) { bzero(&sa, sizeof(sa)); sa.sin_addr = faddr; @@ -675,8 +668,6 @@ } if (inp->inp_options) (void)m_free(inp->inp_options); - if (inp->inp_route.ro_rt) - RTFREE(inp->inp_route.ro_rt); ip_freemoptions(inp->inp_moptions); inp->inp_vflag = 0; INP_LOCK_DESTROY(inp); @@ -850,60 +841,6 @@ } /* - * Check for alternatives when higher level complains - * about service problems. For now, invalidate cached - * routing information. If the route was created dynamically - * (by a redirect), time to try a default gateway again. - */ -void -in_losing(inp) - struct inpcb *inp; -{ - register struct rtentry *rt; - struct rt_addrinfo info; - - if ((rt = inp->inp_route.ro_rt)) { - RT_LOCK(rt); - inp->inp_route.ro_rt = NULL; - bzero((caddr_t)&info, sizeof(info)); - info.rti_flags = rt->rt_flags; - info.rti_info[RTAX_DST] = rt_key(rt); - info.rti_info[RTAX_GATEWAY] = rt->rt_gateway; - info.rti_info[RTAX_NETMASK] = rt_mask(rt); - rt_missmsg(RTM_LOSING, &info, rt->rt_flags, 0); - if (rt->rt_flags & RTF_DYNAMIC) { - RT_UNLOCK(rt); /* XXX refcnt? */ - (void) rtrequest1(RTM_DELETE, &info, NULL); - } else - rtfree(rt); - /* - * A new route can be allocated - * the next time output is attempted. - */ - } -} - -/* - * After a routing change, flush old routing - * and allocate a (hopefully) better one. - */ -struct inpcb * -in_rtchange(inp, errno) - register struct inpcb *inp; - int errno; -{ - if (inp->inp_route.ro_rt) { - RTFREE(inp->inp_route.ro_rt); - inp->inp_route.ro_rt = 0; - /* - * A new route can be allocated the next time - * output is attempted. - */ - } - return inp; -} - -/* * Lookup a PCB based on the local address and port. */ struct inpcb * ==== //depot/projects/netperf/sys/netinet/in_pcb.h#7 (text+ko) ==== @@ -94,31 +94,22 @@ /* * XXX - * At some point struct route should possibly change to: - * struct rtentry *rt - * struct in_endpoints *ie; + * the defines for inc_* are hacks and should be changed to direct references */ struct in_conninfo { u_int8_t inc_flags; u_int8_t inc_len; u_int16_t inc_pad; /* XXX alignment for in_endpoints */ - /* protocol dependent part; cached route */ + /* protocol dependent part */ struct in_endpoints inc_ie; - union { - /* placeholder for routing entry */ - struct route inc4_route; - struct route_in6 inc6_route; - } inc_dependroute; }; #define inc_isipv6 inc_flags /* temp compatability */ #define inc_fport inc_ie.ie_fport #define inc_lport inc_ie.ie_lport #define inc_faddr inc_ie.ie_faddr #define inc_laddr inc_ie.ie_laddr -#define inc_route inc_dependroute.inc4_route #define inc6_faddr inc_ie.ie6_faddr #define inc6_laddr inc_ie.ie6_laddr -#define inc6_route inc_dependroute.inc6_route struct icmp6_filter; @@ -156,7 +147,6 @@ #define inp_lport inp_inc.inc_lport #define inp_faddr inp_inc.inc_faddr #define inp_laddr inp_inc.inc_laddr -#define inp_route inp_inc.inc_route #define inp_ip_tos inp_depend4.inp4_ip_tos #define inp_options inp_depend4.inp4_options #define inp_moptions inp_depend4.inp4_moptions @@ -182,7 +172,6 @@ #define in6p_faddr inp_inc.inc6_faddr #define in6p_laddr inp_inc.inc6_laddr -#define in6p_route inp_inc.inc6_route #define in6p_ip6_hlim inp_depend6.inp6_hlim #define in6p_hops inp_depend6.inp6_hops /* default hop limit */ #define in6p_ip6_nxt inp_ip_p @@ -327,9 +316,6 @@ extern int ipport_hilastauto; void in_pcbpurgeif0(struct inpcbinfo *, struct ifnet *); -void in_losing(struct inpcb *); -struct inpcb * - in_rtchange(struct inpcb *, int); int in_pcballoc(struct socket *, struct inpcbinfo *, struct thread *); int in_pcbbind(struct inpcb *, struct sockaddr *, struct thread *); int in_pcbbind_setup(struct inpcb *, struct sockaddr *, in_addr_t *, ==== //depot/projects/netperf/sys/netinet/in_rmx.c#8 (text+ko) ==== @@ -73,15 +73,6 @@ struct radix_node *ret; /* - * For IP, all unicast non-host routes are automatically cloning. - */ - if (IN_MULTICAST(ntohl(sin->sin_addr.s_addr))) - rt->rt_flags |= RTF_MULTICAST; - - if (!(rt->rt_flags & (RTF_HOST | RTF_CLONING | RTF_MULTICAST))) - rt->rt_flags |= RTF_PRCLONING; - - /* * A little bit of help for both IP output and input: * For host routes, we make sure that RTF_BROADCAST * is set for anything that looks like a broadcast address. @@ -94,8 +85,7 @@ * * We also mark routes to multicast addresses as such, because * it's easy to do and might be useful (but this is much more - * dubious since it's so easy to inspect the address). (This - * is done above.) + * dubious since it's so easy to inspect the address). */ if (rt->rt_flags & RTF_HOST) { if (in_broadcast(sin->sin_addr, rt->rt_ifp)) { @@ -105,9 +95,10 @@ rt->rt_flags |= RTF_LOCAL; } } + if (IN_MULTICAST(ntohl(sin->sin_addr.s_addr))) + rt->rt_flags |= RTF_MULTICAST; - if (!rt->rt_rmx.rmx_mtu && !(rt->rt_rmx.rmx_locks & RTV_MTU) && - rt->rt_ifp) + if (!rt->rt_rmx.rmx_mtu && rt->rt_ifp) rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; ret = rn_addroute(v_arg, n_arg, head, treenodes); @@ -118,8 +109,7 @@ * Find out if it is because of an * ARP entry and delete it if so. */ - rt2 = rtalloc1((struct sockaddr *)sin, 0, - RTF_CLONING | RTF_PRCLONING); + rt2 = rtalloc1((struct sockaddr *)sin, 0, RTF_CLONING); if (rt2) { if (rt2->rt_flags & RTF_LLINFO && rt2->rt_flags & RTF_HOST && @@ -138,14 +128,6 @@ RTFREE_LOCKED(rt2); } } - - /* - * If the new route created successfully, and we are forwarding, - * flush any cached routes to avoid using a stale value. - */ - if (ret != NULL && ipforwarding) - ip_forward_cacheinval(); - return ret; } @@ -398,7 +380,7 @@ * so that behavior is not needed there. */ RT_LOCK(rt); - rt->rt_flags &= ~(RTF_CLONING | RTF_PRCLONING); + rt->rt_flags &= ~RTF_CLONING; RT_UNLOCK(rt); err = rtrequest(RTM_DELETE, (struct sockaddr *)rt_key(rt), rt->rt_gateway, rt_mask(rt), rt->rt_flags, 0); ==== //depot/projects/netperf/sys/netinet/in_var.h#3 (text+ko) ==== @@ -230,9 +230,7 @@ void ip_input(struct mbuf *); int in_ifadown(struct ifaddr *ifa, int); void in_ifscrub(struct ifnet *, struct in_ifaddr *); -int ipflow_fastforward(struct mbuf *); -void ipflow_create(const struct route *, struct mbuf *); -void ipflow_slowtimo(void); +int ip_fastforward(struct mbuf *); #endif /* _KERNEL */ ==== //depot/projects/netperf/sys/netinet/ip_divert.c#7 (text+ko) ==== @@ -333,7 +333,7 @@ /* Send packet to output processing */ ipstat.ips_rawout++; /* XXX */ error = ip_output((struct mbuf *)&divert_tag, - inp->inp_options, &inp->inp_route, + inp->inp_options, NULL, (so->so_options & SO_DONTROUTE) | IP_ALLOWBROADCAST | IP_RAWOUTPUT, inp->inp_moptions, NULL); ==== //depot/projects/netperf/sys/netinet/ip_fw.h#2 (text+ko) ==== @@ -28,6 +28,7 @@ #ifndef _IPFW2_H #define _IPFW2_H #define IPFW2 1 + /* * The kernel representation of ipfw rules is made of a list of * 'instructions' (for all practical purposes equivalent to BPF ==== //depot/projects/netperf/sys/netinet/ip_fw2.c#11 (text+ko) ==== @@ -461,13 +461,16 @@ dst->sin_len = sizeof(*dst); dst->sin_addr = src; - rtalloc_ign(&ro, RTF_CLONING|RTF_PRCLONING); + rtalloc_ign(&ro, RTF_CLONING); } - if ((ro.ro_rt == NULL) || (ifp == NULL) || - (ro.ro_rt->rt_ifp->if_index != ifp->if_index)) + if (ro.ro_rt == NULL) + return 0; + if ((ifp == NULL) || (ro.ro_rt->rt_ifp->if_index != ifp->if_index)) { + RTFREE(ro.ro_rt); return 0; - + } + RTFREE(ro.ro_rt); return 1; } @@ -1159,7 +1162,6 @@ struct mbuf *m; struct ip *ip; struct tcphdr *tcp; - struct route sro; /* fake route */ MGETHDR(m, M_DONTWAIT, MT_HEADER); if (m == 0) @@ -1225,12 +1227,8 @@ */ ip->ip_ttl = ip_defttl; ip->ip_len = m->m_pkthdr.len; - bzero (&sro, sizeof (sro)); - ip_rtaddr(ip->ip_dst, &sro); m->m_flags |= M_SKIP_FIREWALL; - ip_output(m, NULL, &sro, 0, NULL, NULL); - if (sro.ro_rt) - RTFREE(sro.ro_rt); + ip_output(m, NULL, NULL, 0, NULL, NULL); } /* ==== //depot/projects/netperf/sys/netinet/ip_icmp.c#6 (text+ko) ==== @@ -52,11 +52,15 @@ #include #include +#include #include #include #include #include #include +#include +#include +#include #include #ifdef IPSEC @@ -120,7 +124,7 @@ #endif static void icmp_reflect(struct mbuf *); -static void icmp_send(struct mbuf *, struct mbuf *, struct route *); +static void icmp_send(struct mbuf *, struct mbuf *); static int ip_next_mtu(int, int); extern struct protosw inetsw[]; @@ -165,6 +169,18 @@ if (n->m_flags & (M_BCAST|M_MCAST)) goto freeit; /* + * Limit sending of ICMP host unreachable messages. + * If we are acting as a router and someone is doing a sweep + * scan (eg. nmap and/or numerous windows worms) for destinations + * we are the gateway for but are not reachable (ie. a /24 on a + * interface and only a couple of hosts on the ethernet) we would + * generate a storm of ICMP host unreachable messages. + */ + if (type == ICMP_UNREACH && code == ICMP_UNREACH_HOST) { + if (badport_bandlim(BANDLIM_ICMP_UNREACH_HOST) < 0) + goto freeit; + } + /* * First, formulate icmp message */ m = m_gethdr(M_DONTWAIT, MT_HEADER); @@ -233,27 +249,34 @@ m_freem(n); } -static struct sockaddr_in icmpsrc = { sizeof (struct sockaddr_in), AF_INET }; -static struct sockaddr_in icmpdst = { sizeof (struct sockaddr_in), AF_INET }; -static struct sockaddr_in icmpgw = { sizeof (struct sockaddr_in), AF_INET }; - /* * Process a received ICMP message. */ void icmp_input(m, off) - register struct mbuf *m; + struct mbuf *m; int off; { int hlen = off; - register struct icmp *icp; - register struct ip *ip = mtod(m, struct ip *); + struct icmp *icp; + struct in_ifaddr *ia; + struct ip *ip = mtod(m, struct ip *); int icmplen = ip->ip_len; - register int i; - struct in_ifaddr *ia; + int i, code; void (*ctlfunc)(int, struct sockaddr *, void *); - int code; + struct sockaddr_in icmpsrc, icmpdst, icmpgw; + /* Initialize */ + bzero(&icmpsrc, sizeof(icmpsrc)); + icmpsrc.sin_len = sizeof(struct sockaddr_in); + icmpsrc.sin_family = AF_INET; + bzero(&icmpdst, sizeof(icmpdst)); + icmpdst.sin_len = sizeof(struct sockaddr_in); + icmpdst.sin_family = AF_INET; + bzero(&icmpgw, sizeof(icmpgw)); + icmpgw.sin_len = sizeof(struct sockaddr_in); + icmpgw.sin_family = AF_INET; + /* * Locate icmp structure in mbuf, and check * that not corrupted and of at least minimum length. @@ -387,7 +410,7 @@ printf("deliver to protocol %d\n", icp->icmp_ip.ip_p); #endif icmpsrc.sin_addr = icp->icmp_ip.ip_dst; -#if 1 + /* * MTU discovery: * If we got a needfrag and there is a host route to the @@ -397,40 +420,38 @@ * notice that the MTU has changed and adapt accordingly. * If no new MTU was suggested, then we guess a new one * less than the current value. If the new MTU is - * unreasonably small (arbitrarily set at 296), then - * we reset the MTU to the interface value and enable the - * lock bit, indicating that we are no longer doing MTU - * discovery. + * unreasonably small (defined by sysctl tcp_minmss), then + * we don't update the MTU value. + * + * XXX: All this should be done in tcp_mtudisc() because + * the way we do it now, everyone can send us bogus ICMP + * MSGSIZE packets for any destination. By doing this far + * higher in the chain we have a matching tcp connection. + * Thus spoofing is much harder. However there is no easy + * non-hackish way to pass the new MTU up to tcp_mtudisc(). + * Also see next XXX regarding IPv4 AH TCP. */ if (code == PRC_MSGSIZE) { - struct rtentry *rt; int mtu; + struct in_conninfo inc; + + bzero(&inc, sizeof(inc)); + inc.inc_flags = 0; /* IPv4 */ + inc.inc_faddr = icmpsrc.sin_addr; + + mtu = ntohs(icp->icmp_nextmtu); + if (!mtu) + mtu = ip_next_mtu(mtu, 1); - rt = rtalloc1((struct sockaddr *)&icmpsrc, 0, - RTF_CLONING | RTF_PRCLONING); - if (rt && (rt->rt_flags & RTF_HOST) - && !(rt->rt_rmx.rmx_locks & RTV_MTU)) { - mtu = ntohs(icp->icmp_nextmtu); - if (!mtu) - mtu = ip_next_mtu(rt->rt_rmx.rmx_mtu, - 1); + if (mtu >= max(296, (tcp_minmss + sizeof(struct tcpiphdr)))) + tcp_hc_updatemtu(&inc, mtu); + #ifdef DEBUG_MTUDISC - printf("MTU for %s reduced to %d\n", - inet_ntoa(icmpsrc.sin_addr), mtu); + printf("MTU for %s reduced to %d\n", + inet_ntoa(icmpsrc.sin_addr), mtu); #endif - if (mtu < 296) { - /* rt->rt_rmx.rmx_mtu = - rt->rt_ifp->if_mtu; */ - rt->rt_rmx.rmx_locks |= RTV_MTU; - } else if (rt->rt_rmx.rmx_mtu > mtu) { - rt->rt_rmx.rmx_mtu = mtu; - } - } - if (rt) - rtfree(rt); } -#endif /* * XXX if the packet contains [IPv4 AH TCP], we can't make a * notification to TCP layer. @@ -607,7 +628,6 @@ struct in_addr t; struct mbuf *opts = 0; int optlen = (ip->ip_hl << 2) - sizeof(struct ip); - struct route *ro = NULL, rt; if (!in_canforward(ip->ip_src) && ((ntohl(ip->ip_src.s_addr) & IN_CLASSA_NET) != @@ -618,8 +638,6 @@ } t = ip->ip_dst; ip->ip_dst = ip->ip_src; - ro = &rt; - bzero(ro, sizeof(*ro)); /* * If the incoming packet was addressed directly to us, * use dst as the src for the reply. Otherwise (broadcast @@ -640,7 +658,7 @@ goto match; } } - ia = ip_rtaddr(ip->ip_dst, ro); + ia = ip_rtaddr(ip->ip_dst); /* We need a route to do anything useful. */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Oct 23 12:52:14 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 056ED16A4C0; Thu, 23 Oct 2003 12:52:14 -0700 (PDT) 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 B160B16A4B3 for ; Thu, 23 Oct 2003 12:52:13 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7A31A43FA3 for ; Thu, 23 Oct 2003 12:52:11 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9NJqBXJ083068 for ; Thu, 23 Oct 2003 12:52:11 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9NJqAkW083064 for perforce@freebsd.org; Thu, 23 Oct 2003 12:52:10 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 12:52:10 -0700 (PDT) Message-Id: <200310231952.h9NJqAkW083064@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40332 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 19:52:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=40332 Change 40332 by sam@sam_ebb on 2003/10/23 12:51:31 IFC @ 40331 Affected files ... .. //depot/projects/netperf/sys/amd64/include/sysarch.h#2 integrate .. //depot/projects/netperf/sys/conf/NOTES#13 integrate .. //depot/projects/netperf/sys/conf/files#16 integrate .. //depot/projects/netperf/sys/conf/files.ia64#7 integrate .. //depot/projects/netperf/sys/conf/options#12 integrate .. //depot/projects/netperf/sys/contrib/dev/acpica/exfldio.c#2 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/ahc_pci.c#4 integrate .. //depot/projects/netperf/sys/dev/aic7xxx/ahd_pci.c#4 integrate .. //depot/projects/netperf/sys/dev/ep/if_ep.c#6 integrate .. //depot/projects/netperf/sys/dev/firewire/fwmem.c#4 integrate .. //depot/projects/netperf/sys/dev/usb/if_cue.c#4 integrate .. //depot/projects/netperf/sys/dev/vx/if_vxreg.h#2 integrate .. //depot/projects/netperf/sys/geom/geom_fox.c#2 integrate .. //depot/projects/netperf/sys/i386/conf/NOTES#5 integrate .. //depot/projects/netperf/sys/ia64/disasm/disasm.h#1 branch .. //depot/projects/netperf/sys/ia64/disasm/disasm_decode.c#1 branch .. //depot/projects/netperf/sys/ia64/disasm/disasm_extract.c#1 branch .. //depot/projects/netperf/sys/ia64/disasm/disasm_format.c#1 branch .. //depot/projects/netperf/sys/ia64/disasm/disasm_int.h#1 branch .. //depot/projects/netperf/sys/ia64/ia64/db_trace.c#2 integrate .. //depot/projects/netperf/sys/ia64/ia64/support.S#3 integrate .. //depot/projects/netperf/sys/ia64/ia64/trap.c#7 integrate .. //depot/projects/netperf/sys/ia64/ia64/unaligned.c#2 integrate .. //depot/projects/netperf/sys/ia64/include/md_var.h#4 integrate .. //depot/projects/netperf/sys/ia64/include/proc.h#3 integrate .. //depot/projects/netperf/sys/isa/fd.c#6 integrate .. //depot/projects/netperf/sys/kern/kern_mac.c#6 integrate .. //depot/projects/netperf/sys/kern/vfs_subr.c#9 integrate .. //depot/projects/netperf/sys/net/if.c#9 integrate .. //depot/projects/netperf/sys/net/if_ethersubr.c#8 integrate .. //depot/projects/netperf/sys/net/if_fddisubr.c#3 integrate .. //depot/projects/netperf/sys/net/if_tun.c#3 integrate .. //depot/projects/netperf/sys/net/net_osdep.h#2 integrate .. //depot/projects/netperf/sys/netatalk/aarp.c#4 integrate .. //depot/projects/netperf/sys/netinet6/frag6.c#6 integrate .. //depot/projects/netperf/sys/netinet6/icmp6.c#10 integrate .. //depot/projects/netperf/sys/netinet6/in6_src.c#9 edit .. //depot/projects/netperf/sys/netkey/key.c#4 integrate .. //depot/projects/netperf/sys/pci/agp.c#3 integrate .. //depot/projects/netperf/sys/pci/agp_i810.c#4 integrate .. //depot/projects/netperf/sys/pci/if_dc.c#9 integrate .. //depot/projects/netperf/sys/security/mac/mac_internal.h#1 branch .. //depot/projects/netperf/sys/security/mac/mac_net.c#1 branch .. //depot/projects/netperf/sys/security/mac/mac_pipe.c#1 branch .. //depot/projects/netperf/sys/security/mac/mac_process.c#1 branch .. //depot/projects/netperf/sys/security/mac/mac_system.c#1 branch .. //depot/projects/netperf/sys/security/mac/mac_vfs.c#1 branch .. //depot/projects/netperf/sys/sys/agpio.h#2 integrate .. //depot/projects/netperf/sys/sys/vnode.h#4 integrate .. //depot/projects/netperf/sys/ufs/ffs/ffs_rawread.c#3 integrate .. //depot/projects/netperf/sys/vm/vm_page.c#10 integrate .. //depot/projects/netperf/sys/vm/vm_page.h#6 integrate .. //depot/projects/netperf/sys/vm/vm_pageout.c#10 integrate Differences ... ==== //depot/projects/netperf/sys/amd64/include/sysarch.h#2 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/sysarch.h,v 1.19 2003/05/12 02:37:29 peter Exp $ + * $FreeBSD: src/sys/amd64/include/sysarch.h,v 1.21 2003/10/23 06:06:14 peter Exp $ */ /* @@ -39,22 +39,21 @@ #ifndef _MACHINE_SYSARCH_H_ #define _MACHINE_SYSARCH_H_ -#define AMD64_GET_FSBASE 0 -#define AMD64_SET_FSBASE 1 -#define AMD64_GET_GSBASE 2 -#define AMD64_SET_GSBASE 3 +/* Leave space for 0-127 for to avoid translating syscalls */ +#define AMD64_GET_FSBASE 128 +#define AMD64_SET_FSBASE 129 +#define AMD64_GET_GSBASE 130 +#define AMD64_SET_GSBASE 131 -#if 0 /* these wrappers need to be implemented in libc first */ #ifndef _KERNEL #include __BEGIN_DECLS -unsigned long amd64_get_fsbase(void); -unsigned long amd64_set_fsbase(unsigned long); -unsigned long amd64_get_gsbase(void); -unsigned long amd64_set_gsbase(unsigned long); +int amd64_get_fsbase(void **); +int amd64_set_fsbase(void *); +int amd64_get_gsbase(void **); +int amd64_set_gsbase(void *); __END_DECLS #endif -#endif #endif /* !_MACHINE_SYSARCH_H_ */ ==== //depot/projects/netperf/sys/conf/NOTES#13 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1178 2003/09/26 20:26:22 fjoe Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1179 2003/10/22 22:27:49 njl Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -2394,8 +2394,6 @@ # Yet more undocumented options for linting. options AAC_DEBUG -options ACPI_MAX_THREADS=1 -#!options ACPI_NO_SEMAPHORES # Broken: ##options ASR_MEASURE_PERFORMANCE # BKTR_ALLOC_PAGES has no effect except to cause warnings, and ==== //depot/projects/netperf/sys/conf/files#16 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.836 2003/10/19 21:28:33 ume Exp $ +# $FreeBSD: src/sys/conf/files,v 1.837 2003/10/22 20:39:33 rwatson Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -1595,6 +1595,11 @@ posix4/p1003_1b.c standard posix4/posix4_mib.c standard kern/uipc_sem.c optional p1003_1b_semaphores +security/mac/mac_net.c optional mac +security/mac/mac_pipe.c optional mac +security/mac/mac_process.c optional mac +security/mac/mac_system.c optional mac +security/mac/mac_vfs.c optional mac security/mac_biba/mac_biba.c optional mac_biba security/mac_bsdextended/mac_bsdextended.c optional mac_bsdextended security/mac_ifoff/mac_ifoff.c optional mac_ifoff ==== //depot/projects/netperf/sys/conf/files.ia64#7 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.ia64,v 1.59 2003/09/20 19:27:48 marcel Exp $ +# $FreeBSD: src/sys/conf/files.ia64,v 1.60 2003/10/23 06:11:37 marcel Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -80,6 +80,9 @@ ia64/acpica/acpi_machdep.c optional acpi ia64/acpica/acpi_wakeup.c optional acpi ia64/acpica/madt.c optional acpi +ia64/disasm/disasm_decode.c standard +ia64/disasm/disasm_extract.c standard +ia64/disasm/disasm_format.c standard ia64/ia32/ia32_misc.c optional ia32 ia64/ia32/ia32_sysent.c optional ia32 ia64/ia32/ia32_sysvec.c optional ia32 ==== //depot/projects/netperf/sys/conf/options#12 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.415 2003/09/26 20:26:22 fjoe Exp $ +# $FreeBSD: src/sys/conf/options,v 1.416 2003/10/22 22:27:49 njl Exp $ # # On the handling of kernel options # @@ -594,8 +594,9 @@ # options for ACPI support ACPI_DEBUG opt_acpi.h +ACPI_MAX_THREADS opt_acpi.h ACPI_NO_SEMAPHORES opt_acpi.h -ACPI_MAX_THREADS opt_acpi.h +ACPICA_PEDANTIC opt_acpi.h # options for DEVFS, see sys/fs/devfs/devfs.h NDEVFSINO opt_devfs.h ==== //depot/projects/netperf/sys/contrib/dev/acpica/exfldio.c#2 (text+ko) ==== @@ -220,6 +220,25 @@ FieldDatumByteOffset, ObjDesc->CommonField.AccessByteWidth, RgnDesc->Region.Node->Name.Ascii, RgnDesc->Region.Length)); +#ifndef ACPICA_PEDANTIC + { + /* + * Allow access to the field if it is within the region size + * rounded up to a multiple of the access byte width. This + * overcomes "off-by-one" programming errors in the AML often + * found in Toshiba laptops. These errors were allowed by + * the Microsoft ASL compiler. + */ + UINT32 rounded_length = ACPI_ROUND_UP(RgnDesc->Region.Length, + ObjDesc->CommonField.AccessByteWidth); + + if (rounded_length >= (ObjDesc->CommonField.BaseByteOffset + + FieldDatumByteOffset + + ObjDesc->CommonField.AccessByteWidth)) { + return_ACPI_STATUS (AE_OK); + } + } +#endif return_ACPI_STATUS (AE_AML_REGION_LIMIT); } ==== //depot/projects/netperf/sys/dev/aic7xxx/ahc_pci.c#4 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/ahc_pci.c,v 1.56 2003/09/02 17:30:34 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/ahc_pci.c,v 1.57 2003/10/23 13:42:03 des Exp $"); #include @@ -113,7 +113,7 @@ error = bus_dma_tag_create(/*parent*/NULL, /*alignment*/1, /*boundary*/0, (ahc->flags & AHC_39BIT_ADDRESSING) - ? 0x7FFFFFFFFF + ? 0x7FFFFFFFFFLL : BUS_SPACE_MAXADDR_32BIT, /*highaddr*/BUS_SPACE_MAXADDR, /*filter*/NULL, /*filterarg*/NULL, ==== //depot/projects/netperf/sys/dev/aic7xxx/ahd_pci.c#4 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/ahd_pci.c,v 1.11 2003/09/02 17:30:34 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/aic7xxx/ahd_pci.c,v 1.12 2003/10/23 13:42:03 des Exp $"); #include @@ -116,7 +116,7 @@ error = bus_dma_tag_create(/*parent*/NULL, /*alignment*/1, /*boundary*/0, (ahd->flags & AHD_39BIT_ADDRESSING) - ? 0x7FFFFFFFFF + ? 0x7FFFFFFFFFLL : BUS_SPACE_MAXADDR_32BIT, /*highaddr*/BUS_SPACE_MAXADDR, /*filter*/NULL, /*filterarg*/NULL, ==== //depot/projects/netperf/sys/dev/ep/if_ep.c#6 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ep/if_ep.c,v 1.122 2003/10/18 15:22:43 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ep/if_ep.c,v 1.124 2003/10/23 05:33:53 imp Exp $"); /* * Modified from the FreeBSD 1.1.5.1 version by: @@ -61,7 +61,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ep/if_ep.c,v 1.122 2003/10/18 15:22:43 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ep/if_ep.c,v 1.124 2003/10/23 05:33:53 imp Exp $"); #include #include @@ -758,7 +758,7 @@ if (EP_FTST(sc, F_ACCESS_32_BITS)) { /* default for EISA configured cards */ EP_READ_MULTI_4(sc, EP_W1_RX_PIO_RD_1, - mtod(m, uint32_t *)+m->m_len, + (uint32_t *)(mtod(m, caddr_t)+m->m_len), lenthisone / 4); m->m_len += (lenthisone & ~3); if (lenthisone & 3) @@ -767,7 +767,8 @@ m->m_len += (lenthisone & 3); } else { EP_READ_MULTI_2(sc, EP_W1_RX_PIO_RD_1, - mtod(m, uint16_t *)+m->m_len, lenthisone / 2); + (uint16_t *)(mtod(m, caddr_t)+m->m_len), + lenthisone / 2); m->m_len += lenthisone; if (lenthisone & 1) *(mtod(m, caddr_t)+m->m_len - 1) = ==== //depot/projects/netperf/sys/dev/firewire/fwmem.c#4 (text+ko) ==== @@ -34,7 +34,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/firewire/fwmem.c,v 1.23 2003/10/02 14:33:30 simokawa Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/firewire/fwmem.c,v 1.24 2003/10/23 01:55:03 simokawa Exp $"); #include #include @@ -295,7 +295,8 @@ bp->bio_error = xfer->resp; if (bp->bio_error != 0) { - printf("%s: err=%d\n", __FUNCTION__, bp->bio_error); + if (fwmem_debug) + printf("%s: err=%d\n", __FUNCTION__, bp->bio_error); bp->bio_flags |= BIO_ERROR; bp->bio_resid = bp->bio_bcount; } @@ -362,7 +363,8 @@ error: splx(s); if (err != 0) { - printf("%s: err=%d\n", __FUNCTION__, err); + if (fwmem_debug) + printf("%s: err=%d\n", __FUNCTION__, err); bp->bio_error = err; bp->bio_flags |= BIO_ERROR; bp->bio_resid = bp->bio_bcount; ==== //depot/projects/netperf/sys/dev/usb/if_cue.c#4 (text+ko) ==== @@ -31,7 +31,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/usb/if_cue.c,v 1.39 2003/10/04 21:41:01 joe Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/if_cue.c,v 1.40 2003/10/23 16:55:27 imp Exp $"); /* * CATC USB-EL1210A USB to ethernet driver. Used in the CATC Netmate @@ -52,7 +52,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/usb/if_cue.c,v 1.39 2003/10/04 21:41:01 joe Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/usb/if_cue.c,v 1.40 2003/10/23 16:55:27 imp Exp $"); #include #include @@ -116,7 +116,7 @@ Static void cue_shutdown(device_ptr_t); Static void cue_setmulti(struct cue_softc *); -Static u_int32_t cue_crc(caddr_t); +Static u_int32_t cue_crc(const uint8_t *); Static void cue_reset(struct cue_softc *); Static int cue_csr_read_1(struct cue_softc *, int); @@ -331,9 +331,9 @@ #define CUE_BITS 9 Static u_int32_t -cue_crc(caddr_t addr) +cue_crc(const uint8_t *addr) { - u_int32_t idx, bit, data, crc; + uint32_t idx, bit, data, crc; /* Compute CRC for the address value. */ crc = 0xFFFFFFFF; /* initial value */ ==== //depot/projects/netperf/sys/dev/vx/if_vxreg.h#2 (text+ko) ==== @@ -19,7 +19,7 @@ * 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/sys/dev/vx/if_vxreg.h,v 1.8 2002/03/20 02:07:47 alfred Exp $ + * $FreeBSD: src/sys/dev/vx/if_vxreg.h,v 1.10 2003/10/23 04:53:33 imp Exp $ * October 2, 1994 @@ -103,11 +103,6 @@ #define VX_ID_PORT 0x100 /* - * some macros to acces long named fields - */ -#define BASE (sc->vx_io_addr) - -/* * Commands to read/write EEPROM trough EEPROM command register (Window 0, * Offset 0xa) */ @@ -466,9 +461,7 @@ #define VX_CONNECTORS 8 -extern struct vx_softc *vx_softc[]; extern u_long vx_count; -extern struct vx_softc *vxalloc(int); extern void vxfree(struct vx_softc *); extern int vxattach(struct vx_softc *); extern void vxstop(struct vx_softc *); ==== //depot/projects/netperf/sys/geom/geom_fox.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/geom/geom_fox.c,v 1.1 2003/06/18 09:29:27 phk Exp $ + * $FreeBSD: src/sys/geom/geom_fox.c,v 1.2 2003/10/22 20:28:46 phk Exp $ * * This is a GEOM module for handling path selection for multi-path * storage devices. It is named "fox" because it, like they, prefer @@ -190,8 +190,8 @@ } mtx_destroy(&sc->lock); + g_free(gp->softc); gp->softc = NULL; - g_free(gp->softc); g_wither_geom(gp, ENXIO); } ==== //depot/projects/netperf/sys/i386/conf/NOTES#5 (text+ko) ==== @@ -4,7 +4,7 @@ # This file contains machine dependent kernel configuration notes. For # machine independent notes, look in /sys/conf/NOTES. # -# $FreeBSD: src/sys/i386/conf/NOTES,v 1.1094 2003/09/19 01:42:24 sam Exp $ +# $FreeBSD: src/sys/i386/conf/NOTES,v 1.1095 2003/10/22 22:27:49 njl Exp $ # # @@ -410,11 +410,22 @@ # Intel ACPICA code. (Note that the Intel code must also have USE_DEBUGGER # defined when it is built). # +# ACPI_MAX_THREADS sets the number of task threads started. +# +# ACPI_NO_SEMAPHORES makes the AcpiOs*Semaphore routines a no-op. +# +# ACPICA_PEDANTIC enables strict checking of AML. Our default is to +# relax these checks to allow code generated by the Microsoft compiler +# to still execute. +# # Note that building ACPI into the kernel is deprecated; the module is # normally loaded automatically by the loader. # device acpi options ACPI_DEBUG +options ACPI_MAX_THREADS=1 +#options ACPI_NO_SEMAPHORES +#options ACPICA_PEDANTIC # DRM options: # mgadrm: AGP Matrox G200, G400, G450, G550 ==== //depot/projects/netperf/sys/ia64/ia64/db_trace.c#2 (text+ko) ==== @@ -23,12 +23,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/ia64/ia64/db_trace.c,v 1.17 2003/07/12 04:35:09 marcel Exp $ + * $FreeBSD: src/sys/ia64/ia64/db_trace.c,v 1.18 2003/10/23 06:23:55 marcel Exp $ */ #include #include -#include #include #include #include ==== //depot/projects/netperf/sys/ia64/ia64/support.S#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/sys/ia64/ia64/support.S,v 1.20 2003/08/12 03:51:53 marcel Exp $ + * $FreeBSD: src/sys/ia64/ia64/support.S,v 1.21 2003/10/23 06:19:06 marcel Exp $ */ /* * Copyright (c) 1994, 1995, 1996 Carnegie-Mellon University. @@ -890,3 +890,13 @@ mov ret0=EFAULT // return EFAULT br.ret.sptk.few rp END(copyerr) + +/* + * Support functions for handling of unaligned memory accesses. + */ +ENTRY(spillfd, 2) + ldfd f6 = [r32] + ;; + stf.spill [r33] = f6 + br.ret.sptk rp +END(spillfd) ==== //depot/projects/netperf/sys/ia64/ia64/trap.c#7 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/ia64/ia64/trap.c,v 1.91 2003/10/09 10:17:16 robert Exp $"); +__FBSDID("$FreeBSD: src/sys/ia64/ia64/trap.c,v 1.92 2003/10/23 06:21:44 marcel Exp $"); #include "opt_ddb.h" #include "opt_ktrace.h" @@ -81,9 +81,7 @@ static int print_usertrap = 0; SYSCTL_INT(_machdep, OID_AUTO, print_usertrap, - CTLFLAG_RW, &print_usertrap, 0, ""); - -extern int unaligned_fixup(struct trapframe *framep, struct thread *td); + CTLFLAG_RW, &print_usertrap, 0, ""); static void break_syscall(struct trapframe *tf); static void ia32_syscall(struct trapframe *framep); ==== //depot/projects/netperf/sys/ia64/ia64/unaligned.c#2 (text+ko) ==== @@ -1,4 +1,5 @@ /*- + * Copyright (c) 2003 Marcel Moolenaar * Copyright (c) 2001 Doug Rabson * All rights reserved. * @@ -23,7 +24,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/ia64/ia64/unaligned.c,v 1.4 2003/05/29 06:30:36 marcel Exp $ + * $FreeBSD: src/sys/ia64/ia64/unaligned.c,v 1.5 2003/10/23 06:32:34 marcel Exp $ */ #include @@ -34,627 +35,180 @@ #include #include #include -#include +#include +#include -#define sign_extend(imm, w) (((int64_t)(imm) << (64 - (w))) >> (64 - (w))) +static int ia64_unaligned_print = 1; /* warn about unaligned accesses. */ +static int ia64_unaligned_sigbus = 0; /* SIGBUS on all unaligned accesses. */ -static int ia64_unaligned_print = 1; /* warn about unaligned accesses */ -static int ia64_unaligned_fix = 1; /* fix up unaligned accesses */ -static int ia64_unaligned_sigbus = 0; /* don't SIGBUS on fixed-up accesses */ - SYSCTL_INT(_machdep, OID_AUTO, unaligned_print, CTLFLAG_RW, &ia64_unaligned_print, 0, "warn about unaligned accesses"); -SYSCTL_INT(_machdep, OID_AUTO, unaligned_fix, CTLFLAG_RW, - &ia64_unaligned_fix, 0, "fix up unaligned accesses (if possible)"); - SYSCTL_INT(_machdep, OID_AUTO, unaligned_sigbus, CTLFLAG_RW, &ia64_unaligned_sigbus, 0, "do not SIGBUS on fixed-up accesses"); -int unaligned_fixup(struct trapframe *framep, struct thread *td); - -enum type { - LD_SA, - LD_S, - LD_A, - LD_C_CLR, - LD_C_NC, - LD -}; - -struct decoding { - int isload; /* non-zero if load */ - enum type type; /* type of load or store */ - int basereg; /* address to load or store */ - int reg; /* register number to load or store */ - int width; /* number of bytes */ - int update; /* update value for basereg */ - int updateisreg; /* non-zero if update is a register */ - int fence; /* non-zero if fence needed */ -}; - -static int -unaligned_decode_M1(union ia64_instruction ins, struct decoding *d) +static void * +fpreg_ptr(mcontext_t *mc, int fr) { - static enum type types[] = { - LD, LD_S, LD_A, LD_SA, LD, - LD, LD, LD_C_CLR, LD_C_NC, LD_C_CLR - }; - d->isload = 1; - d->type = types[ins.M1.x6 >> 2]; - d->basereg = ins.M1.r3; - d->reg = ins.M1.r1; - d->width = (1 << (ins.M1.x6 & 3)); - if ((ins.M1.x6 >= 0x14 && ins.M1.x6 <= 0x17) - || (ins.M1.x6 >= 0x28 && ins.M1.x6 <= 0x2b)) - d->fence = 1; - return 1; -} + union _ia64_fpreg *p; -static int -unaligned_decode_M2(union ia64_instruction ins, struct decoding *d) -{ - static enum type types[] = { - LD, LD_S, LD_A, LD_SA, LD, - LD, LD, LD_C_CLR, LD_C_NC, LD_C_CLR - }; - d->isload = 1; - d->type = types[ins.M1.x6 >> 2]; - d->basereg = ins.M2.r3; - d->reg = ins.M2.r1; - d->width = (1 << (ins.M2.x6 & 3)); - d->update = ins.M2.r2; - d->updateisreg = 1; - if ((ins.M2.x6 >= 0x14 && ins.M2.x6 <= 0x17) - || (ins.M2.x6 >= 0x28 && ins.M2.x6 <= 0x2b)) - d->fence = 1; - return 1; + if (fr <= 1 || fr >= 128) + return (NULL); + if (fr >= 32) { + p = &mc->mc_high_fp.fr32; + fr -= 32; + } else if (fr >= 16) { + p = &mc->mc_preserved_fp.fr16; + fr -= 16; + } else if (fr >= 6) { + p = &mc->mc_scratch_fp.fr6; + fr -= 6; + } else { + p = &mc->mc_preserved_fp.fr2; + fr -= 2; + } + return ((void*)(p + fr)); } -static int -unaligned_decode_M3(union ia64_instruction ins, struct decoding *d) +static void * +greg_ptr(mcontext_t *mc, int gr) { - static enum type types[] = { - LD, LD_S, LD_A, LD_SA, LD, - LD, LD, LD_C_CLR, LD_C_NC, LD_C_CLR - }; - d->isload = 1; - d->type = types[ins.M1.x6 >> 2]; - d->basereg = ins.M3.r3; - d->reg = ins.M3.r1; - d->width = (1 << (ins.M3.x6 & 3)); - d->update = sign_extend((ins.M3.s << 8) - | (ins.M3.i << 7) - | ins.M3.imm7b, 9); - if ((ins.M3.x6 >= 0x14 && ins.M3.x6 <= 0x17) - || (ins.M3.x6 >= 0x28 && ins.M3.x6 <= 0x2b)) - d->fence = 1; - return 1; -} + uint64_t *p; -static int -unaligned_decode_M4(union ia64_instruction ins, struct decoding *d) -{ - d->isload = 0; - d->basereg = ins.M4.r3; - d->reg = ins.M4.r2; - d->width = (1 << (ins.M4.x6 & 3)); - if (ins.M4.x6 >= 0x34 && ins.M4.x6 <= 0x37) - d->fence = 1; - return 1; + if (gr <= 0 || gr >= 32 + (mc->mc_special.cfm & 0x7f)) + return (NULL); + if (gr >= 32) { + p = (void*)mc->mc_special.bspstore; + p += gr - 32; + gr = 0; + } else if (gr >= 14) { + p = &mc->mc_scratch.gr14; + gr -= 14; + } else if (gr == 13) { + p = &mc->mc_special.tp; + gr = 0; + } else if (gr == 12) { + p = &mc->mc_special.sp; + gr = 0; + } else if (gr >= 8) { + p = &mc->mc_scratch.gr8; + gr -= 8; + } else if (gr >= 4) { + p = &mc->mc_preserved.gr4; + gr -= 4; + } else if (gr >= 2) { + p = &mc->mc_scratch.gr2; + gr -= 2; + } else { + p = &mc->mc_special.gp; + gr = 0; + } + return ((void*)(p + gr)); } static int -unaligned_decode_M5(union ia64_instruction ins, struct decoding *d) +fixup(struct asm_inst *i, mcontext_t *mc, uint64_t va) { - d->isload = 0; - d->basereg = ins.M5.r3; - d->reg = ins.M5.r2; - d->width = (1 << (ins.M5.x6 & 3)); - d->update = sign_extend((ins.M5.s << 8) - | (ins.M5.i << 7) - | ins.M5.imm7a, 9); - if (ins.M5.x6 >= 0x34 && ins.M5.x6 <= 0x37) - d->fence = 1; - return 1; -} + union { + double d; + uint64_t i; + } buf; + void *reg; + uint64_t postinc; -static int -read_register(struct trapframe *framep, struct thread *td, - int reg, u_int64_t *valuep) -{ - - if (reg < 32) { - switch (reg) { - case 0: *valuep = 0; break; - case 1: *valuep = framep->tf_special.gp; break; - case 2: *valuep = framep->tf_scratch.gr2; break; - case 3: *valuep = framep->tf_scratch.gr3; break; - case 8: *valuep = framep->tf_scratch.gr8; break; - case 9: *valuep = framep->tf_scratch.gr9; break; - case 10: *valuep = framep->tf_scratch.gr10; break; - case 11: *valuep = framep->tf_scratch.gr11; break; - case 12: *valuep = framep->tf_special.sp; break; - case 13: *valuep = framep->tf_special.tp; break; - case 14: *valuep = framep->tf_scratch.gr14; break; - case 15: *valuep = framep->tf_scratch.gr15; break; - case 16: *valuep = framep->tf_scratch.gr16; break; - case 17: *valuep = framep->tf_scratch.gr17; break; - case 18: *valuep = framep->tf_scratch.gr18; break; - case 19: *valuep = framep->tf_scratch.gr19; break; - case 20: *valuep = framep->tf_scratch.gr20; break; - case 21: *valuep = framep->tf_scratch.gr21; break; - case 22: *valuep = framep->tf_scratch.gr22; break; - case 23: *valuep = framep->tf_scratch.gr23; break; - case 24: *valuep = framep->tf_scratch.gr24; break; - case 25: *valuep = framep->tf_scratch.gr25; break; - case 26: *valuep = framep->tf_scratch.gr26; break; - case 27: *valuep = framep->tf_scratch.gr27; break; - case 28: *valuep = framep->tf_scratch.gr28; break; - case 29: *valuep = framep->tf_scratch.gr29; break; - case 30: *valuep = framep->tf_scratch.gr30; break; - case 31: *valuep = framep->tf_scratch.gr31; break; - default: + switch (i->i_op) { + case ASM_OP_LD8: + copyin((void*)va, (void*)&buf.i, 8); + reg = greg_ptr(mc, (int)i->i_oper[1].o_value); + if (reg == NULL) + return (EINVAL); + suword(reg, buf.i); + break; + case ASM_OP_LDFD: + copyin((void*)va, (void*)&buf.d, 8); + reg = fpreg_ptr(mc, (int)i->i_oper[1].o_value); + if (reg == NULL) return (EINVAL); - } - } else { -#if 0 - u_int64_t cfm = framep->tf_special.cfm; - u_int64_t *bsp = (u_int64_t *)(td->td_kstack + - framep->tf_ndirty); - int sof = cfm & 0x7f; - int sor = 8*((cfm >> 14) & 15); - int rrb_gr = (cfm >> 18) & 0x7f; - - /* - * Skip back to the start of the interrupted frame. - */ - bsp = ia64_rse_previous_frame(bsp, sof); - - if (reg - 32 > sof) - return EINVAL; - if (reg - 32 < sor) { - if (reg - 32 + rrb_gr >= sor) - reg = reg + rrb_gr - sor; - else - reg = reg + rrb_gr; - } - - *valuep = *ia64_rse_register_address(bsp, reg); - return (0); -#else - return (EINVAL); -#endif + spillfd((void*)&buf.d, reg); + break; + default: + return (ENOENT); } - return (0); -} -static int -write_register(struct trapframe *framep, struct thread *td, - int reg, u_int64_t value) -{ - - if (reg < 32) { - switch (reg) { - case 1: framep->tf_special.gp = value; break; - case 2: framep->tf_scratch.gr2 = value; break; - case 3: framep->tf_scratch.gr3 = value; break; - case 8: framep->tf_scratch.gr8 = value; break; - case 9: framep->tf_scratch.gr9 = value; break; - case 10: framep->tf_scratch.gr10 = value; break; - case 11: framep->tf_scratch.gr11 = value; break; - case 12: framep->tf_special.sp = value; break; - case 13: framep->tf_special.tp = value; break; - case 14: framep->tf_scratch.gr14 = value; break; - case 15: framep->tf_scratch.gr15 = value; break; - case 16: framep->tf_scratch.gr16 = value; break; - case 17: framep->tf_scratch.gr17 = value; break; - case 18: framep->tf_scratch.gr18 = value; break; - case 19: framep->tf_scratch.gr19 = value; break; - case 20: framep->tf_scratch.gr20 = value; break; - case 21: framep->tf_scratch.gr21 = value; break; - case 22: framep->tf_scratch.gr22 = value; break; - case 23: framep->tf_scratch.gr23 = value; break; - case 24: framep->tf_scratch.gr24 = value; break; - case 25: framep->tf_scratch.gr25 = value; break; - case 26: framep->tf_scratch.gr26 = value; break; - case 27: framep->tf_scratch.gr27 = value; break; - case 28: framep->tf_scratch.gr28 = value; break; - case 29: framep->tf_scratch.gr29 = value; break; - case 30: framep->tf_scratch.gr30 = value; break; - case 31: framep->tf_scratch.gr31 = value; break; - default: + /* Handle post-increment. */ + if (i->i_oper[3].o_type == ASM_OPER_GREG) { + reg = greg_ptr(mc, (int)i->i_oper[3].o_value); + if (reg == NULL) + return (EINVAL); + postinc = fuword(reg); + } else + postinc = (i->i_oper[3].o_type == ASM_OPER_IMM) + ? i->i_oper[3].o_value : 0; + if (postinc != 0) { + reg = greg_ptr(mc, (int)i->i_oper[3].o_value); + if (reg == NULL) return (EINVAL); - } - } else { -#if 0 - u_int64_t cfm = framep->tf_special.cfm; - u_int64_t *bsp = (u_int64_t *) (td->td_kstack - + framep->tf_ndirty); - int sof = cfm & 0x7f; - int sor = 8*((cfm >> 14) & 15); - int rrb_gr = (cfm >> 18) & 0x7f; - - /* - * Skip back to the start of the interrupted frame. - */ - bsp = ia64_rse_previous_frame(bsp, sof); - - if (reg - 32 > sof) - return EINVAL; - if (reg - 32 < sor) { - if (reg - 32 + rrb_gr >= sor) - reg = reg + rrb_gr - sor; - else - reg = reg + rrb_gr; - } - - *ia64_rse_register_address(bsp, reg) = value; - return 0; -#else - return (EINVAL); -#endif + postinc += fuword(reg); + suword(reg, postinc); } return (0); } -/* - * Messy. - */ -static void -invala_e(int reg) -{ - switch (reg) { - case 0: __asm __volatile("invala.e r0"); break; - case 1: __asm __volatile("invala.e r1"); break; - case 2: __asm __volatile("invala.e r2"); break; - case 3: __asm __volatile("invala.e r3"); break; - case 4: __asm __volatile("invala.e r4"); break; - case 5: __asm __volatile("invala.e r5"); break; - case 6: __asm __volatile("invala.e r6"); break; - case 7: __asm __volatile("invala.e r7"); break; - case 8: __asm __volatile("invala.e r8"); break; - case 9: __asm __volatile("invala.e r9"); break; - case 10: __asm __volatile("invala.e r10"); break; - case 11: __asm __volatile("invala.e r11"); break; - case 12: __asm __volatile("invala.e r12"); break; - case 13: __asm __volatile("invala.e r13"); break; - case 14: __asm __volatile("invala.e r14"); break; - case 15: __asm __volatile("invala.e r15"); break; - case 16: __asm __volatile("invala.e r16"); break; - case 17: __asm __volatile("invala.e r17"); break; - case 18: __asm __volatile("invala.e r18"); break; - case 19: __asm __volatile("invala.e r19"); break; - case 20: __asm __volatile("invala.e r20"); break; - case 21: __asm __volatile("invala.e r21"); break; - case 22: __asm __volatile("invala.e r22"); break; - case 23: __asm __volatile("invala.e r23"); break; - case 24: __asm __volatile("invala.e r24"); break; - case 25: __asm __volatile("invala.e r25"); break; - case 26: __asm __volatile("invala.e r26"); break; - case 27: __asm __volatile("invala.e r27"); break; - case 28: __asm __volatile("invala.e r28"); break; - case 29: __asm __volatile("invala.e r29"); break; - case 30: __asm __volatile("invala.e r30"); break; - case 31: __asm __volatile("invala.e r31"); break; - case 32: __asm __volatile("invala.e r32"); break; - case 33: __asm __volatile("invala.e r33"); break; - case 34: __asm __volatile("invala.e r34"); break; - case 35: __asm __volatile("invala.e r35"); break; - case 36: __asm __volatile("invala.e r36"); break; - case 37: __asm __volatile("invala.e r37"); break; - case 38: __asm __volatile("invala.e r38"); break; - case 39: __asm __volatile("invala.e r39"); break; - case 40: __asm __volatile("invala.e r40"); break; - case 41: __asm __volatile("invala.e r41"); break; - case 42: __asm __volatile("invala.e r42"); break; - case 43: __asm __volatile("invala.e r43"); break; - case 44: __asm __volatile("invala.e r44"); break; - case 45: __asm __volatile("invala.e r45"); break; - case 46: __asm __volatile("invala.e r46"); break; - case 47: __asm __volatile("invala.e r47"); break; - case 48: __asm __volatile("invala.e r48"); break; - case 49: __asm __volatile("invala.e r49"); break; - case 50: __asm __volatile("invala.e r50"); break; - case 51: __asm __volatile("invala.e r51"); break; - case 52: __asm __volatile("invala.e r52"); break; - case 53: __asm __volatile("invala.e r53"); break; - case 54: __asm __volatile("invala.e r54"); break; - case 55: __asm __volatile("invala.e r55"); break; - case 56: __asm __volatile("invala.e r56"); break; - case 57: __asm __volatile("invala.e r57"); break; - case 58: __asm __volatile("invala.e r58"); break; - case 59: __asm __volatile("invala.e r59"); break; - case 60: __asm __volatile("invala.e r60"); break; - case 61: __asm __volatile("invala.e r61"); break; - case 62: __asm __volatile("invala.e r62"); break; - case 63: __asm __volatile("invala.e r63"); break; - case 64: __asm __volatile("invala.e r64"); break; - case 65: __asm __volatile("invala.e r65"); break; - case 66: __asm __volatile("invala.e r66"); break; - case 67: __asm __volatile("invala.e r67"); break; - case 68: __asm __volatile("invala.e r68"); break; - case 69: __asm __volatile("invala.e r69"); break; - case 70: __asm __volatile("invala.e r70"); break; - case 71: __asm __volatile("invala.e r71"); break; - case 72: __asm __volatile("invala.e r72"); break; - case 73: __asm __volatile("invala.e r73"); break; - case 74: __asm __volatile("invala.e r74"); break; - case 75: __asm __volatile("invala.e r75"); break; - case 76: __asm __volatile("invala.e r76"); break; - case 77: __asm __volatile("invala.e r77"); break; - case 78: __asm __volatile("invala.e r78"); break; - case 79: __asm __volatile("invala.e r79"); break; - case 80: __asm __volatile("invala.e r80"); break; - case 81: __asm __volatile("invala.e r81"); break; - case 82: __asm __volatile("invala.e r82"); break; - case 83: __asm __volatile("invala.e r83"); break; - case 84: __asm __volatile("invala.e r84"); break; - case 85: __asm __volatile("invala.e r85"); break; - case 86: __asm __volatile("invala.e r86"); break; >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Oct 23 13:14:42 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 58E3B16A4C0; Thu, 23 Oct 2003 13:14:42 -0700 (PDT) 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 32C3C16A4B3 for ; Thu, 23 Oct 2003 13:14:42 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 9BDB543FCB for ; Thu, 23 Oct 2003 13:14:41 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9NKEfXJ084957 for ; Thu, 23 Oct 2003 13:14:41 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9NKEfoM084954 for perforce@freebsd.org; Thu, 23 Oct 2003 13:14:41 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 13:14:41 -0700 (PDT) Message-Id: <200310232014.h9NKEfoM084954@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40336 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 20:14:42 -0000 http://perforce.freebsd.org/chv.cgi?CH=40336 Change 40336 by sam@sam_ebb on 2003/10/23 13:14:14 remove buggered code from andre until he explains and/or fixes it Affected files ... .. //depot/projects/netperf/sys/netinet6/in6_src.c#10 edit Differences ... ==== //depot/projects/netperf/sys/netinet6/in6_src.c#10 (text+ko) ==== @@ -279,8 +279,6 @@ if (ia6 == 0) /* xxx scope error ?*/ ia6 = ifatoia6(ro->ro_rt->rt_ifa); } - if (sro.ro_rt) - RTFREE(sro.ro_rt); if (ia6 == 0) { *errorp = EHOSTUNREACH; /* no route */ return (0); From owner-p4-projects@FreeBSD.ORG Thu Oct 23 13:15:44 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 48B8816A4C0; Thu, 23 Oct 2003 13:15:44 -0700 (PDT) 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 22D2F16A4B3 for ; Thu, 23 Oct 2003 13:15:44 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8A74543F93 for ; Thu, 23 Oct 2003 13:15:43 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9NKFhXJ085041 for ; Thu, 23 Oct 2003 13:15:43 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9NKFhoK085038 for perforce@freebsd.org; Thu, 23 Oct 2003 13:15:43 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 13:15:43 -0700 (PDT) Message-Id: <200310232015.h9NKFhoK085038@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40337 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 20:15:44 -0000 http://perforce.freebsd.org/chv.cgi?CH=40337 Change 40337 by sam@sam_ebb on 2003/10/23 13:14:48 rtalloc1 can return a null pointer; check before unlocking Affected files ... .. //depot/projects/netperf/sys/netinet6/in6_src.c#11 edit Differences ... ==== //depot/projects/netperf/sys/netinet6/in6_src.c#11 (text+ko) ==== @@ -261,7 +261,8 @@ if (IN6_IS_ADDR_MULTICAST(dst)) { ro->ro_rt = rtalloc1(&((struct route *)ro) ->ro_dst, 0, 0UL); - RT_UNLOCK(ro->ro_rt); + if (ro->ro_rt) + RT_UNLOCK(ro->ro_rt); } else { rtalloc((struct route *)ro); } From owner-p4-projects@FreeBSD.ORG Thu Oct 23 14:11:16 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5C66F16A4C0; Thu, 23 Oct 2003 14:11:16 -0700 (PDT) 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 342A716A4B3 for ; Thu, 23 Oct 2003 14:11:16 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8D95B43FE9 for ; Thu, 23 Oct 2003 14:11:15 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9NLBFXJ088800 for ; Thu, 23 Oct 2003 14:11:15 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9NLBECP088797 for perforce@freebsd.org; Thu, 23 Oct 2003 14:11:14 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 14:11:14 -0700 (PDT) Message-Id: <200310232111.h9NLBECP088797@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40343 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 21:11:16 -0000 http://perforce.freebsd.org/chv.cgi?CH=40343 Change 40343 by sam@sam_ebb on 2003/10/23 14:10:32 correctly fix bogus RTFREE in andre's patch Affected files ... .. //depot/projects/netperf/sys/netinet6/in6_src.c#12 edit Differences ... ==== //depot/projects/netperf/sys/netinet6/in6_src.c#12 (text+ko) ==== @@ -280,6 +280,11 @@ if (ia6 == 0) /* xxx scope error ?*/ ia6 = ifatoia6(ro->ro_rt->rt_ifa); } + /* + * Reclaim route allocated only for local use. + */ + if (ro == &sro && ro->ro_rt) + RTFREE(ro->ro_rt); if (ia6 == 0) { *errorp = EHOSTUNREACH; /* no route */ return (0); From owner-p4-projects@FreeBSD.ORG Thu Oct 23 16:45:26 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4AF5F16A4C0; Thu, 23 Oct 2003 16:45:26 -0700 (PDT) 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 2729716A4B3 for ; Thu, 23 Oct 2003 16:45:26 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A43DA43F75 for ; Thu, 23 Oct 2003 16:45:25 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9NNjPXJ096461 for ; Thu, 23 Oct 2003 16:45:25 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9NNjPka096458 for perforce@freebsd.org; Thu, 23 Oct 2003 16:45:25 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 16:45:25 -0700 (PDT) Message-Id: <200310232345.h9NNjPka096458@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40350 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 23 Oct 2003 23:45:26 -0000 http://perforce.freebsd.org/chv.cgi?CH=40350 Change 40350 by sam@sam_ebb on 2003/10/23 16:44:27 socket_send may be entered from a callout and so not have Giant; must grab Giant to protect sbappendaddr until sockets are locked Affected files ... .. //depot/projects/netperf/sys/netinet/ip_mroute.c#15 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_mroute.c#15 (text+ko) ==== @@ -1287,10 +1287,13 @@ socket_send(struct socket *s, struct mbuf *mm, struct sockaddr_in *src) { if (s) { + mtx_lock(&Giant); /* XXX no socket locking */ if (sbappendaddr(&s->so_rcv, (struct sockaddr *)src, mm, NULL) != 0) { sorwakeup(s); + mtx_unlock(&Giant); /* XXX */ return 0; } + mtx_unlock(&Giant); /* XXX */ } m_freem(mm); return -1; From owner-p4-projects@FreeBSD.ORG Thu Oct 23 18:11:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id B0C7E16A4C0; Thu, 23 Oct 2003 18:11:12 -0700 (PDT) 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 6F67B16A4B3 for ; Thu, 23 Oct 2003 18:11:12 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D442943F3F for ; Thu, 23 Oct 2003 18:11:11 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9O1BBXJ007378 for ; Thu, 23 Oct 2003 18:11:11 -0700 (PDT) (envelope-from cvance@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9O1BB6a007374 for perforce@freebsd.org; Thu, 23 Oct 2003 18:11:11 -0700 (PDT) (envelope-from cvance@nailabs.com) Date: Thu, 23 Oct 2003 18:11:11 -0700 (PDT) Message-Id: <200310240111.h9O1BB6a007374@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to cvance@nailabs.com using -f From: Chris Vance To: Perforce Change Reviews Subject: PERFORCE change 40354 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 01:11:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=40354 Change 40354 by cvance@cvance_osx_laptop on 2003/10/23 18:10:19 Add vnode read,write, and stat entry points Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_ktrace.c#3 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_syscalls.c#4 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_vnops.c#4 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_ktrace.c#3 (text+ko) ==== @@ -562,6 +562,10 @@ if (error) goto bad; (void)VOP_LEASE(vp, p, p->p_ucred, LEASE_WRITE); +#ifdef MAC + error = mac_check_vnode_write(p->p_ucred, NOCRED, vp); + if (error == 0) +#endif error = VOP_WRITE(vp, &auio, IO_UNIT | IO_APPEND, p->p_ucred); if (error == 0 && uio != NULL) { (void)VOP_LEASE(vp, p, p->p_ucred, LEASE_WRITE); ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_syscalls.c#4 (text+ko) ==== @@ -1061,6 +1061,12 @@ type = F_FLOCK; if ((flags & FNONBLOCK) == 0) type |= F_WAIT; +#ifdef MAC_XXX + error = mac_check_file_change_flags(p->p_ucred, fp, + fp->f_flag, fp->f_flag | FHASLOCK); + if (error) + return (error); +#endif VOP_UNLOCK(vp, 0, p); if (error = VOP_ADVLOCK(vp, (caddr_t)fp, F_SETLK, &lf, type)) { (void) vn_close(vp, fp->f_flag, fp->f_cred, p); @@ -2260,6 +2266,10 @@ vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, p); if (vp->v_type == VDIR) error = EISDIR; +#ifdef MAC + else if ((error = mac_check_vnode_write(p->p_ucred, NOCRED, vp))) { + } +#endif else if ((error = vn_writechk(vp)) == 0 && (error = VOP_ACCESS(vp, VWRITE, p->p_ucred, p)) == 0) { VATTR_NULL(&vattr); @@ -2311,6 +2321,10 @@ vn_lock(vp, LK_EXCLUSIVE | LK_RETRY, p); if (vp->v_type == VDIR) error = EISDIR; +#ifdef MAC + else if ((error = mac_check_vnode_write(p->p_ucred, fp->f_cred, vp))) { + } +#endif else if ((error = vn_writechk(vp)) == 0) { VATTR_NULL(&vattr); vattr.va_size = uap->length; ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/vfs/vfs_vnops.c#4 (text+ko) ==== @@ -162,6 +162,12 @@ goto bad; } +#ifdef MAC + error = mac_check_vnode_open(cred, vp, fmode); + if (error) + goto bad; +#endif + #if DIAGNOSTIC if (UBCINFOMISSING(vp)) panic("vn_open: ubc_info_init"); @@ -298,7 +304,14 @@ auio.uio_rw = rw; auio.uio_procp = p; +#ifdef MAC + /* passed cred is fp->f_cred */ if (rw == UIO_READ) + error = mac_check_vnode_read(p->p_ucred, cred, vp); + else + error = mac_check_vnode_write(p->p_ucred, cred, vp); +#endif +if (rw == UIO_READ) error = VOP_READ(vp, &auio, ioflg, cred); else error = VOP_WRITE(vp, &auio, ioflg, cred); @@ -387,6 +400,10 @@ goto done; } } +#ifdef MAC + error = mac_check_vnode_read(p->p_ucred, cred, vp); + if (error == 0) +#endif error = VOP_READ(vp, uio, ioflag, cred); if ((flags & FOF_OFFSET) == 0) fp->f_offset += count - uio->uio_resid; @@ -478,6 +495,10 @@ goto done; } } +#ifdef MAC + error = mac_check_vnode_write(p->p_ucred, cred, vp); + if (error == 0) +#endif error = VOP_WRITE(vp, uio, ioflag, cred); if ((flags & FOF_OFFSET) == 0) { @@ -513,6 +534,12 @@ int error; u_short mode; +#ifdef MAC + error = mac_check_vnode_stat(p->p_ucred, NOCRED, vp); + if (error) + return (error); +#endif + vap = &vattr; error = VOP_GETATTR(vp, vap, p->p_ucred, p); if (error) From owner-p4-projects@FreeBSD.ORG Thu Oct 23 19:52:19 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5752016A4C0; Thu, 23 Oct 2003 19:52:19 -0700 (PDT) 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 1C97116A4B3 for ; Thu, 23 Oct 2003 19:52:19 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id D0C5E43FBF for ; Thu, 23 Oct 2003 19:52:16 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9O2qGXJ012944 for ; Thu, 23 Oct 2003 19:52:16 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9O2qF2g012941 for perforce@freebsd.org; Thu, 23 Oct 2003 19:52:15 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 19:52:15 -0700 (PDT) Message-Id: <200310240252.h9O2qF2g012941@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40358 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 02:52:19 -0000 http://perforce.freebsd.org/chv.cgi?CH=40358 Change 40358 by sam@sam_ebb on 2003/10/23 19:51:36 revert tcp hostcache changes so they can be incorporated on a separate branch Affected files ... .. //depot/projects/netperf/sys/conf/files#17 edit .. //depot/projects/netperf/sys/net/if_arcsubr.c#3 edit .. //depot/projects/netperf/sys/net/if_ef.c#3 edit .. //depot/projects/netperf/sys/net/if_ethersubr.c#9 edit .. //depot/projects/netperf/sys/net/if_faith.c#6 edit .. //depot/projects/netperf/sys/net/if_fddisubr.c#4 edit .. //depot/projects/netperf/sys/net/if_iso88025subr.c#4 edit .. //depot/projects/netperf/sys/net/if_loop.c#9 edit .. //depot/projects/netperf/sys/net/if_ppp.c#4 edit .. //depot/projects/netperf/sys/net/route.c#18 edit .. //depot/projects/netperf/sys/net/route.h#8 edit .. //depot/projects/netperf/sys/net/rtsock.c#7 edit .. //depot/projects/netperf/sys/netatalk/ddp_output.c#4 edit .. //depot/projects/netperf/sys/netinet/icmp_var.h#3 edit .. //depot/projects/netperf/sys/netinet/in_pcb.c#7 edit .. //depot/projects/netperf/sys/netinet/in_pcb.h#8 edit .. //depot/projects/netperf/sys/netinet/in_rmx.c#9 edit .. //depot/projects/netperf/sys/netinet/in_var.h#4 edit .. //depot/projects/netperf/sys/netinet/ip_divert.c#8 edit .. //depot/projects/netperf/sys/netinet/ip_flow.c#6 add .. //depot/projects/netperf/sys/netinet/ip_flow.h#5 add .. //depot/projects/netperf/sys/netinet/ip_fw.h#3 edit .. //depot/projects/netperf/sys/netinet/ip_fw2.c#12 edit .. //depot/projects/netperf/sys/netinet/ip_icmp.c#7 edit .. //depot/projects/netperf/sys/netinet/ip_input.c#15 edit .. //depot/projects/netperf/sys/netinet/ip_output.c#11 edit .. //depot/projects/netperf/sys/netinet/ip_var.h#9 edit .. //depot/projects/netperf/sys/netinet/raw_ip.c#8 edit .. //depot/projects/netperf/sys/netinet/tcp.h#3 edit .. //depot/projects/netperf/sys/netinet/tcp_input.c#7 edit .. //depot/projects/netperf/sys/netinet/tcp_output.c#4 edit .. //depot/projects/netperf/sys/netinet/tcp_subr.c#6 edit .. //depot/projects/netperf/sys/netinet/tcp_syncache.c#7 edit .. //depot/projects/netperf/sys/netinet/tcp_timer.c#3 edit .. //depot/projects/netperf/sys/netinet/tcp_usrreq.c#4 edit .. //depot/projects/netperf/sys/netinet/tcp_var.h#3 edit .. //depot/projects/netperf/sys/netinet/udp_usrreq.c#7 edit .. //depot/projects/netperf/sys/netinet6/icmp6.c#11 edit .. //depot/projects/netperf/sys/netinet6/in6_pcb.c#10 edit .. //depot/projects/netperf/sys/netinet6/in6_rmx.c#10 edit .. //depot/projects/netperf/sys/netinet6/in6_src.c#13 edit .. //depot/projects/netperf/sys/netinet6/ip6_forward.c#11 edit .. //depot/projects/netperf/sys/netinet6/ip6_input.c#13 edit .. //depot/projects/netperf/sys/netinet6/ip6_output.c#18 edit .. //depot/projects/netperf/sys/netinet6/raw_ip6.c#5 edit .. //depot/projects/netperf/sys/netinet6/udp6_output.c#4 edit .. //depot/projects/netperf/sys/netipx/ipx_input.c#5 edit .. //depot/projects/netperf/sys/netipx/ipx_outputfl.c#3 edit Differences ... ==== //depot/projects/netperf/sys/conf/files#17 (text+ko) ==== @@ -1424,7 +1424,7 @@ netinet/ip_ecn.c optional inet6 netinet/ip_encap.c optional inet netinet/ip_encap.c optional inet6 -netinet/ip_fastforward.c optional inet +netinet/ip_flow.c optional inet netinet/ip_fw2.c optional ipfirewall netinet/ip_icmp.c optional inet netinet/ip_input.c optional inet @@ -1432,7 +1432,6 @@ netinet/ip_output.c optional inet netinet/raw_ip.c optional inet netinet/tcp_debug.c optional tcpdebug -netinet/tcp_hostcache.c optional inet netinet/tcp_input.c optional inet netinet/tcp_output.c optional inet netinet/tcp_subr.c optional inet ==== //depot/projects/netperf/sys/net/if_arcsubr.c#3 (text+ko) ==== @@ -543,14 +543,14 @@ #ifdef INET case ARCTYPE_IP: m_adj(m, ARC_HDRNEWLEN); - if (ip_fastforward(m)) + if (ipflow_fastforward(m)) return; isr = NETISR_IP; break; case ARCTYPE_IP_OLD: m_adj(m, ARC_HDRLEN); - if (ip_fastforward(m)) + if (ipflow_fastforward(m)) return; isr = NETISR_IP; break; ==== //depot/projects/netperf/sys/net/if_ef.c#3 (text+ko) ==== @@ -252,8 +252,8 @@ #endif #ifdef INET case ETHERTYPE_IP: - if (ip_fastforward(m)) - return; + if (ipflow_fastforward(m)) + return (0); isr = NETISR_IP; break; ==== //depot/projects/netperf/sys/net/if_ethersubr.c#9 (text+ko) ==== @@ -717,7 +717,7 @@ switch (ether_type) { #ifdef INET case ETHERTYPE_IP: - if (ip_fastforward(m)) + if (ipflow_fastforward(m)) return; isr = NETISR_IP; break; ==== //depot/projects/netperf/sys/net/if_faith.c#6 (text+ko) ==== @@ -271,8 +271,17 @@ struct rt_addrinfo *info; { RT_LOCK_ASSERT(rt); - if (rt) - rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; + + if (rt) { + rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; /* for ISO */ + /* + * For optimal performance, the send and receive buffers + * should be at least twice the MTU plus a little more for + * overhead. + */ + rt->rt_rmx.rmx_recvpipe = + rt->rt_rmx.rmx_sendpipe = 3 * FAITHMTU; + } } /* ==== //depot/projects/netperf/sys/net/if_fddisubr.c#4 (text+ko) ==== @@ -471,7 +471,7 @@ switch (type) { #ifdef INET case ETHERTYPE_IP: - if (ip_fastforward(m)) + if (ipflow_fastforward(m)) return; isr = NETISR_IP; break; ==== //depot/projects/netperf/sys/net/if_iso88025subr.c#4 (text+ko) ==== @@ -556,7 +556,7 @@ #ifdef INET case ETHERTYPE_IP: th->iso88025_shost[0] &= ~(TR_RII); - if (ip_fastforward(m)) + if (ipflow_fastforward(m)) return; isr = NETISR_IP; break; ==== //depot/projects/netperf/sys/net/if_loop.c#9 (text+ko) ==== @@ -357,8 +357,17 @@ struct rt_addrinfo *info; { RT_LOCK_ASSERT(rt); - if (rt) - rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; + + if (rt) { + rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; /* for ISO */ + /* + * For optimal performance, the send and receive buffers + * should be at least twice the MTU plus a little more for + * overhead. + */ + rt->rt_rmx.rmx_recvpipe = + rt->rt_rmx.rmx_sendpipe = 3 * LOMTU; + } } /* ==== //depot/projects/netperf/sys/net/if_ppp.c#4 (text+ko) ==== @@ -1538,8 +1538,8 @@ m->m_pkthdr.len -= PPP_HDRLEN; m->m_data += PPP_HDRLEN; m->m_len -= PPP_HDRLEN; - if (ip_fastforward(m)) - return; + if (ipflow_fastforward(m)) + return; isr = NETISR_IP; break; #endif ==== //depot/projects/netperf/sys/net/route.c#18 (text+ko) ==== @@ -139,7 +139,7 @@ */ newrt = rt = (struct rtentry *)rn; nflags = rt->rt_flags & ~ignflags; - if (report && (nflags & RTF_CLONING)) { + if (report && (nflags & (RTF_CLONING | RTF_PRCLONING))) { /* * We are apparently adding (report = 0 in delete). * If it requires that it be cloned, do so. @@ -548,7 +548,7 @@ */ if (flags & RTF_HOST) { netmask = 0; - flags &= ~RTF_CLONING; + flags &= ~(RTF_CLONING | RTF_PRCLONING); } switch (req) { case RTM_DELETE: @@ -570,7 +570,7 @@ * Now search what's left of the subtree for any cloned * routes which might have been formed from this node. */ - if ((rt->rt_flags & RTF_CLONING) && + if ((rt->rt_flags & (RTF_CLONING | RTF_PRCLONING)) && rt_mask(rt)) { rnh->rnh_walktree_from(rnh, dst, rt_mask(rt), rt_fixdelete, rt); @@ -617,7 +617,7 @@ ifa = rt->rt_ifa; /* XXX locking? */ flags = rt->rt_flags & - ~(RTF_CLONING | RTF_STATIC); + ~(RTF_CLONING | RTF_PRCLONING | RTF_STATIC); flags |= RTF_WASCLONED; gateway = rt->rt_gateway; if ((netmask = rt->rt_genmask) == 0) @@ -678,11 +678,11 @@ /* * Uh-oh, we already have one of these in the tree. * We do a special hack: if the route that's already - * there was generated by the cloning mechanism - * then we just blow it away and retry the insertion - * of the new one. + * there was generated by the protocol-cloning + * mechanism, then we just blow it away and retry + * the insertion of the new one. */ - rt2 = rtalloc1(dst, 0, 0); + rt2 = rtalloc1(dst, 0, RTF_PRCLONING); if (rt2 && rt2->rt_parent) { rtrequest(RTM_DELETE, rt_key(rt2), @@ -724,7 +724,7 @@ ("no route to clone from")); rt->rt_rmx = (*ret_nrt)->rt_rmx; /* copy metrics */ rt->rt_rmx.rmx_pksent = 0; /* reset packet counter */ - if ((*ret_nrt)->rt_flags & RTF_CLONING) { + if ((*ret_nrt)->rt_flags & (RTF_CLONING | RTF_PRCLONING)) { /* * NB: We do not bump the refcnt on the parent * entry under the assumption that it will @@ -800,7 +800,7 @@ struct rtentry *rt0 = vp; if (rt->rt_parent == rt0 && - !(rt->rt_flags & (RTF_PINNED | RTF_CLONING))) { + !(rt->rt_flags & (RTF_PINNED | RTF_CLONING | RTF_PRCLONING))) { return rtrequest(RTM_DELETE, rt_key(rt), (struct sockaddr *)0, rt_mask(rt), rt->rt_flags, (struct rtentry **)0); @@ -841,7 +841,7 @@ #endif if (!rt->rt_parent || - (rt->rt_flags & (RTF_PINNED | RTF_CLONING))) { + (rt->rt_flags & (RTF_PINNED | RTF_CLONING | RTF_PRCLONING))) { #ifdef DEBUG if(rtfcdebug) printf("no parent, pinned or cloning\n"); #endif @@ -992,10 +992,9 @@ * correct choice anyway), and avoid the resulting reference loops * by disallowing any route to run through itself as a gateway. * This is obviously mandatory when we get rt->rt_output(). - * XXX: After removal of PRCLONING this probably not needed anymore. */ if (rt->rt_flags & RTF_GATEWAY) { - rt->rt_gwroute = rtalloc1(gate, 1, 0); + rt->rt_gwroute = rtalloc1(gate, 1, RTF_PRCLONING); if (rt->rt_gwroute == rt) { RTFREE_LOCKED(rt->rt_gwroute); rt->rt_gwroute = 0; ==== //depot/projects/netperf/sys/net/route.h#8 (text+ko) ==== @@ -58,12 +58,6 @@ * These numbers are used by reliable protocols for determining * retransmission behavior and are included in the routing structure. */ -struct rt_metrics_lite { - u_long rmx_mtu; /* MTU for this path */ - u_long rmx_expire; /* lifetime for route, e.g. redirect */ - u_long rmx_pksent; /* packets sent using this route */ -}; - struct rt_metrics { u_long rmx_locks; /* Kernel must leave these values alone */ u_long rmx_mtu; /* MTU for this path */ @@ -110,10 +104,10 @@ long rt_refcnt; /* # held references */ u_long rt_flags; /* up/down?, host/net */ struct ifnet *rt_ifp; /* the answer: interface to use */ - struct ifaddr *rt_ifa; /* the answer: interface address to use */ + struct ifaddr *rt_ifa; /* the answer: interface to use */ struct sockaddr *rt_genmask; /* for generation of cloned routes */ caddr_t rt_llinfo; /* pointer to link level info cache */ - struct rt_metrics_lite rt_rmx; /* metrics used by rx'ing protocols */ + struct rt_metrics rt_rmx; /* metrics used by rx'ing protocols */ struct rtentry *rt_gwroute; /* implied entry for gatewayed routes */ int (*rt_output)(struct ifnet *, struct mbuf *, struct sockaddr *, struct rtentry *); @@ -157,7 +151,7 @@ #define RTF_PROTO2 0x4000 /* protocol specific routing flag */ #define RTF_PROTO1 0x8000 /* protocol specific routing flag */ -/* 0x10000 unused */ +#define RTF_PRCLONING 0x10000 /* protocol requires cloning */ #define RTF_WASCLONED 0x20000 /* route generated through cloning */ #define RTF_PROTO3 0x40000 /* protocol specific routing flag */ /* 0x80000 unused */ ==== //depot/projects/netperf/sys/net/rtsock.c#7 (text+ko) ==== @@ -86,8 +86,7 @@ static int sysctl_dumpentry(struct radix_node *rn, void *vw); static int sysctl_iflist(int af, struct walkarg *w); static int route_output(struct mbuf *, struct socket *); -static void rt_setmetrics(u_long, struct rt_metrics *, struct rt_metrics_lite *); -static void rt_getmetrics(struct rt_metrics_lite *, struct rt_metrics *); +static void rt_setmetrics(u_long, struct rt_metrics *, struct rt_metrics *); static void rt_dispatch(struct mbuf *, struct sockaddr *); /* @@ -355,6 +354,9 @@ RT_LOCK(saved_nrt); rt_setmetrics(rtm->rtm_inits, &rtm->rtm_rmx, &saved_nrt->rt_rmx); + saved_nrt->rt_rmx.rmx_locks &= ~(rtm->rtm_inits); + saved_nrt->rt_rmx.rmx_locks |= + (rtm->rtm_inits & rtm->rtm_rmx.rmx_locks); saved_nrt->rt_refcnt--; saved_nrt->rt_genmask = info.rti_info[RTAX_GENMASK]; RT_UNLOCK(saved_nrt); @@ -425,7 +427,7 @@ (void)rt_msg2(rtm->rtm_type, &info, (caddr_t)rtm, (struct walkarg *)0); rtm->rtm_flags = rt->rt_flags; - rt_getmetrics(&rt->rt_rmx, &rtm->rtm_rmx); + rtm->rtm_rmx = rt->rt_rmx; rtm->rtm_addrs = info.rti_addrs; break; @@ -475,7 +477,9 @@ rt->rt_genmask = info.rti_info[RTAX_GENMASK]; /* FALLTHROUGH */ case RTM_LOCK: - /* We don't support locks anymore */ + rt->rt_rmx.rmx_locks &= ~(rtm->rtm_inits); + rt->rt_rmx.rmx_locks |= + (rtm->rtm_inits & rtm->rtm_rmx.rmx_locks); break; } RT_UNLOCK(rt); @@ -537,28 +541,20 @@ } static void -rt_setmetrics(u_long which, struct rt_metrics *in, struct rt_metrics_lite *out) +rt_setmetrics(u_long which, struct rt_metrics *in, struct rt_metrics *out) { #define metric(f, e) if (which & (f)) out->e = in->e; - /* - * Only these are stored in the routing entry since introduction - * of tcp hostcache. The rest is ignored. - */ + metric(RTV_RPIPE, rmx_recvpipe); + metric(RTV_SPIPE, rmx_sendpipe); + metric(RTV_SSTHRESH, rmx_ssthresh); + metric(RTV_RTT, rmx_rtt); + metric(RTV_RTTVAR, rmx_rttvar); + metric(RTV_HOPCOUNT, rmx_hopcount); metric(RTV_MTU, rmx_mtu); metric(RTV_EXPIRE, rmx_expire); #undef metric } -static void -rt_getmetrics(struct rt_metrics_lite *in, struct rt_metrics *out) -{ -#define metric(e) out->e = in->e; - bzero(out, sizeof(*out)); - metric(rmx_mtu); - metric(rmx_expire); -#undef metric -} - #define ROUNDUP(a) \ ((a) > 0 ? (1 + (((a) - 1) | (sizeof(long) - 1))) : sizeof(long)) @@ -948,8 +944,8 @@ struct rt_msghdr *rtm = (struct rt_msghdr *)w->w_tmem; rtm->rtm_flags = rt->rt_flags; - rtm->rtm_use = rt->rt_rmx.rmx_pksent; - rt_getmetrics(&rt->rt_rmx, &rtm->rtm_rmx); + rtm->rtm_use = rt->rt_use; + rtm->rtm_rmx = rt->rt_rmx; rtm->rtm_index = rt->rt_ifp->if_index; rtm->rtm_errno = rtm->rtm_pid = rtm->rtm_seq = 0; rtm->rtm_addrs = info.rti_addrs; ==== //depot/projects/netperf/sys/netatalk/ddp_output.c#4 (text+ko) ==== @@ -217,7 +217,7 @@ elh->el_type = ELAP_DDPEXTEND; elh->el_dnode = gate.sat_addr.s_node; } - ro->ro_rt->rt_rmx.rmx_pksent++; + ro->ro_rt->rt_use++; #ifdef NETATALK_DEBUG printf ("ddp_route: from %d.%d to %d.%d, via %d.%d (%s%d)\n", ==== //depot/projects/netperf/sys/netinet/icmp_var.h#3 (text+ko) ==== @@ -81,12 +81,11 @@ extern int badport_bandlim(int); #define BANDLIM_UNLIMITED -1 #define BANDLIM_ICMP_UNREACH 0 -#define BANDLIM_ICMP_UNREACH_HOST 1 -#define BANDLIM_ICMP_ECHO 2 -#define BANDLIM_ICMP_TSTAMP 3 -#define BANDLIM_RST_CLOSEDPORT 4 /* No connection, and no listeners */ -#define BANDLIM_RST_OPENPORT 5 /* No connection, listener */ -#define BANDLIM_MAX 5 +#define BANDLIM_ICMP_ECHO 1 +#define BANDLIM_ICMP_TSTAMP 2 +#define BANDLIM_RST_CLOSEDPORT 3 /* No connection, and no listeners */ +#define BANDLIM_RST_OPENPORT 4 /* No connection, listener */ +#define BANDLIM_MAX 4 #endif #endif ==== //depot/projects/netperf/sys/netinet/in_pcb.c#7 (text+ko) ==== @@ -536,6 +536,7 @@ if (error) return (error); } + if (!TAILQ_EMPTY(&in_ifaddrhead)) { /* * If the destination address is INADDR_ANY, @@ -553,8 +554,7 @@ &in_ifaddrhead)->ia_broadaddr)->sin_addr; } if (laddr.s_addr == INADDR_ANY) { - struct route *ro; - struct route sro; + register struct route *ro; ia = (struct in_ifaddr *)0; /* @@ -563,10 +563,19 @@ * Note that we should check the address family of the cached * destination, in case of sharing the cache with IPv6. */ - ro = &sro; - bzero(ro, sizeof(*ro)); - if ((inp->inp_socket->so_options & SO_DONTROUTE) == 0) { - /* Find out route to destination */ + ro = &inp->inp_route; + if (ro->ro_rt && + (ro->ro_dst.sa_family != AF_INET || + satosin(&ro->ro_dst)->sin_addr.s_addr != faddr.s_addr || + inp->inp_socket->so_options & SO_DONTROUTE)) { + RTFREE(ro->ro_rt); + ro->ro_rt = (struct rtentry *)0; + } + if ((inp->inp_socket->so_options & SO_DONTROUTE) == 0 && /*XXX*/ + (ro->ro_rt == (struct rtentry *)0 || + ro->ro_rt->rt_ifp == (struct ifnet *)0)) { + /* No route yet, so try to acquire one */ + bzero(&ro->ro_dst, sizeof(struct sockaddr_in)); ro->ro_dst.sa_family = AF_INET; ro->ro_dst.sa_len = sizeof(struct sockaddr_in); ((struct sockaddr_in *)&ro->ro_dst)->sin_addr = faddr; @@ -580,8 +589,6 @@ */ if (ro->ro_rt && !(ro->ro_rt->rt_ifp->if_flags & IFF_LOOPBACK)) ia = ifatoia(ro->ro_rt->rt_ifa); - if (ro->ro_rt) - RTFREE(ro->ro_rt); if (ia == 0) { bzero(&sa, sizeof(sa)); sa.sin_addr = faddr; @@ -668,6 +675,8 @@ } if (inp->inp_options) (void)m_free(inp->inp_options); + if (inp->inp_route.ro_rt) + RTFREE(inp->inp_route.ro_rt); ip_freemoptions(inp->inp_moptions); inp->inp_vflag = 0; INP_LOCK_DESTROY(inp); @@ -841,6 +850,60 @@ } /* + * Check for alternatives when higher level complains + * about service problems. For now, invalidate cached + * routing information. If the route was created dynamically + * (by a redirect), time to try a default gateway again. + */ +void +in_losing(inp) + struct inpcb *inp; +{ + register struct rtentry *rt; + struct rt_addrinfo info; + + if ((rt = inp->inp_route.ro_rt)) { + RT_LOCK(rt); + inp->inp_route.ro_rt = NULL; + bzero((caddr_t)&info, sizeof(info)); + info.rti_flags = rt->rt_flags; + info.rti_info[RTAX_DST] = rt_key(rt); + info.rti_info[RTAX_GATEWAY] = rt->rt_gateway; + info.rti_info[RTAX_NETMASK] = rt_mask(rt); + rt_missmsg(RTM_LOSING, &info, rt->rt_flags, 0); + if (rt->rt_flags & RTF_DYNAMIC) { + RT_UNLOCK(rt); /* XXX refcnt? */ + (void) rtrequest1(RTM_DELETE, &info, NULL); + } else + rtfree(rt); + /* + * A new route can be allocated + * the next time output is attempted. + */ + } +} + +/* + * After a routing change, flush old routing + * and allocate a (hopefully) better one. + */ +struct inpcb * +in_rtchange(inp, errno) + register struct inpcb *inp; + int errno; +{ + if (inp->inp_route.ro_rt) { + RTFREE(inp->inp_route.ro_rt); + inp->inp_route.ro_rt = 0; + /* + * A new route can be allocated the next time + * output is attempted. + */ + } + return inp; +} + +/* * Lookup a PCB based on the local address and port. */ struct inpcb * ==== //depot/projects/netperf/sys/netinet/in_pcb.h#8 (text+ko) ==== @@ -94,22 +94,31 @@ /* * XXX - * the defines for inc_* are hacks and should be changed to direct references + * At some point struct route should possibly change to: + * struct rtentry *rt + * struct in_endpoints *ie; */ struct in_conninfo { u_int8_t inc_flags; u_int8_t inc_len; u_int16_t inc_pad; /* XXX alignment for in_endpoints */ - /* protocol dependent part */ + /* protocol dependent part; cached route */ struct in_endpoints inc_ie; + union { + /* placeholder for routing entry */ + struct route inc4_route; + struct route_in6 inc6_route; + } inc_dependroute; }; #define inc_isipv6 inc_flags /* temp compatability */ #define inc_fport inc_ie.ie_fport #define inc_lport inc_ie.ie_lport #define inc_faddr inc_ie.ie_faddr #define inc_laddr inc_ie.ie_laddr +#define inc_route inc_dependroute.inc4_route #define inc6_faddr inc_ie.ie6_faddr #define inc6_laddr inc_ie.ie6_laddr +#define inc6_route inc_dependroute.inc6_route struct icmp6_filter; @@ -147,6 +156,7 @@ #define inp_lport inp_inc.inc_lport #define inp_faddr inp_inc.inc_faddr #define inp_laddr inp_inc.inc_laddr +#define inp_route inp_inc.inc_route #define inp_ip_tos inp_depend4.inp4_ip_tos #define inp_options inp_depend4.inp4_options #define inp_moptions inp_depend4.inp4_moptions @@ -172,6 +182,7 @@ #define in6p_faddr inp_inc.inc6_faddr #define in6p_laddr inp_inc.inc6_laddr +#define in6p_route inp_inc.inc6_route #define in6p_ip6_hlim inp_depend6.inp6_hlim #define in6p_hops inp_depend6.inp6_hops /* default hop limit */ #define in6p_ip6_nxt inp_ip_p @@ -316,6 +327,9 @@ extern int ipport_hilastauto; void in_pcbpurgeif0(struct inpcbinfo *, struct ifnet *); +void in_losing(struct inpcb *); +struct inpcb * + in_rtchange(struct inpcb *, int); int in_pcballoc(struct socket *, struct inpcbinfo *, struct thread *); int in_pcbbind(struct inpcb *, struct sockaddr *, struct thread *); int in_pcbbind_setup(struct inpcb *, struct sockaddr *, in_addr_t *, ==== //depot/projects/netperf/sys/netinet/in_rmx.c#9 (text+ko) ==== @@ -73,6 +73,15 @@ struct radix_node *ret; /* + * For IP, all unicast non-host routes are automatically cloning. + */ + if (IN_MULTICAST(ntohl(sin->sin_addr.s_addr))) + rt->rt_flags |= RTF_MULTICAST; + + if (!(rt->rt_flags & (RTF_HOST | RTF_CLONING | RTF_MULTICAST))) + rt->rt_flags |= RTF_PRCLONING; + + /* * A little bit of help for both IP output and input: * For host routes, we make sure that RTF_BROADCAST * is set for anything that looks like a broadcast address. @@ -85,7 +94,8 @@ * * We also mark routes to multicast addresses as such, because * it's easy to do and might be useful (but this is much more - * dubious since it's so easy to inspect the address). + * dubious since it's so easy to inspect the address). (This + * is done above.) */ if (rt->rt_flags & RTF_HOST) { if (in_broadcast(sin->sin_addr, rt->rt_ifp)) { @@ -95,10 +105,9 @@ rt->rt_flags |= RTF_LOCAL; } } - if (IN_MULTICAST(ntohl(sin->sin_addr.s_addr))) - rt->rt_flags |= RTF_MULTICAST; - if (!rt->rt_rmx.rmx_mtu && rt->rt_ifp) + if (!rt->rt_rmx.rmx_mtu && !(rt->rt_rmx.rmx_locks & RTV_MTU) && + rt->rt_ifp) rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; ret = rn_addroute(v_arg, n_arg, head, treenodes); @@ -109,7 +118,8 @@ * Find out if it is because of an * ARP entry and delete it if so. */ - rt2 = rtalloc1((struct sockaddr *)sin, 0, RTF_CLONING); + rt2 = rtalloc1((struct sockaddr *)sin, 0, + RTF_CLONING | RTF_PRCLONING); if (rt2) { if (rt2->rt_flags & RTF_LLINFO && rt2->rt_flags & RTF_HOST && @@ -128,6 +138,14 @@ RTFREE_LOCKED(rt2); } } + + /* + * If the new route created successfully, and we are forwarding, + * flush any cached routes to avoid using a stale value. + */ + if (ret != NULL && ipforwarding) + ip_forward_cacheinval(); + return ret; } @@ -380,7 +398,7 @@ * so that behavior is not needed there. */ RT_LOCK(rt); - rt->rt_flags &= ~RTF_CLONING; + rt->rt_flags &= ~(RTF_CLONING | RTF_PRCLONING); RT_UNLOCK(rt); err = rtrequest(RTM_DELETE, (struct sockaddr *)rt_key(rt), rt->rt_gateway, rt_mask(rt), rt->rt_flags, 0); ==== //depot/projects/netperf/sys/netinet/in_var.h#4 (text+ko) ==== @@ -230,7 +230,9 @@ void ip_input(struct mbuf *); int in_ifadown(struct ifaddr *ifa, int); void in_ifscrub(struct ifnet *, struct in_ifaddr *); -int ip_fastforward(struct mbuf *); +int ipflow_fastforward(struct mbuf *); +void ipflow_create(const struct route *, struct mbuf *); +void ipflow_slowtimo(void); #endif /* _KERNEL */ ==== //depot/projects/netperf/sys/netinet/ip_divert.c#8 (text+ko) ==== @@ -333,7 +333,7 @@ /* Send packet to output processing */ ipstat.ips_rawout++; /* XXX */ error = ip_output((struct mbuf *)&divert_tag, - inp->inp_options, NULL, + inp->inp_options, &inp->inp_route, (so->so_options & SO_DONTROUTE) | IP_ALLOWBROADCAST | IP_RAWOUTPUT, inp->inp_moptions, NULL); ==== //depot/projects/netperf/sys/netinet/ip_fw.h#3 (text+ko) ==== @@ -28,7 +28,6 @@ #ifndef _IPFW2_H #define _IPFW2_H #define IPFW2 1 - /* * The kernel representation of ipfw rules is made of a list of * 'instructions' (for all practical purposes equivalent to BPF ==== //depot/projects/netperf/sys/netinet/ip_fw2.c#12 (text+ko) ==== @@ -461,16 +461,13 @@ dst->sin_len = sizeof(*dst); dst->sin_addr = src; - rtalloc_ign(&ro, RTF_CLONING); + rtalloc_ign(&ro, RTF_CLONING|RTF_PRCLONING); } - if (ro.ro_rt == NULL) + if ((ro.ro_rt == NULL) || (ifp == NULL) || + (ro.ro_rt->rt_ifp->if_index != ifp->if_index)) return 0; - if ((ifp == NULL) || (ro.ro_rt->rt_ifp->if_index != ifp->if_index)) { - RTFREE(ro.ro_rt); - return 0; - } - RTFREE(ro.ro_rt); + return 1; } @@ -1162,6 +1159,7 @@ struct mbuf *m; struct ip *ip; struct tcphdr *tcp; + struct route sro; /* fake route */ MGETHDR(m, M_DONTWAIT, MT_HEADER); if (m == 0) @@ -1227,8 +1225,12 @@ */ ip->ip_ttl = ip_defttl; ip->ip_len = m->m_pkthdr.len; + bzero (&sro, sizeof (sro)); + ip_rtaddr(ip->ip_dst, &sro); m->m_flags |= M_SKIP_FIREWALL; - ip_output(m, NULL, NULL, 0, NULL, NULL); + ip_output(m, NULL, &sro, 0, NULL, NULL); + if (sro.ro_rt) + RTFREE(sro.ro_rt); } /* ==== //depot/projects/netperf/sys/netinet/ip_icmp.c#7 (text+ko) ==== @@ -52,15 +52,11 @@ #include #include -#include #include #include #include #include #include -#include -#include -#include #include #ifdef IPSEC @@ -124,7 +120,7 @@ #endif static void icmp_reflect(struct mbuf *); -static void icmp_send(struct mbuf *, struct mbuf *); +static void icmp_send(struct mbuf *, struct mbuf *, struct route *); static int ip_next_mtu(int, int); extern struct protosw inetsw[]; @@ -169,18 +165,6 @@ if (n->m_flags & (M_BCAST|M_MCAST)) goto freeit; /* - * Limit sending of ICMP host unreachable messages. - * If we are acting as a router and someone is doing a sweep - * scan (eg. nmap and/or numerous windows worms) for destinations - * we are the gateway for but are not reachable (ie. a /24 on a - * interface and only a couple of hosts on the ethernet) we would - * generate a storm of ICMP host unreachable messages. - */ - if (type == ICMP_UNREACH && code == ICMP_UNREACH_HOST) { - if (badport_bandlim(BANDLIM_ICMP_UNREACH_HOST) < 0) - goto freeit; - } - /* * First, formulate icmp message */ m = m_gethdr(M_DONTWAIT, MT_HEADER); @@ -249,34 +233,27 @@ m_freem(n); } +static struct sockaddr_in icmpsrc = { sizeof (struct sockaddr_in), AF_INET }; +static struct sockaddr_in icmpdst = { sizeof (struct sockaddr_in), AF_INET }; +static struct sockaddr_in icmpgw = { sizeof (struct sockaddr_in), AF_INET }; + /* * Process a received ICMP message. */ void icmp_input(m, off) - struct mbuf *m; + register struct mbuf *m; int off; { int hlen = off; - struct icmp *icp; + register struct icmp *icp; + register struct ip *ip = mtod(m, struct ip *); + int icmplen = ip->ip_len; + register int i; struct in_ifaddr *ia; - struct ip *ip = mtod(m, struct ip *); - int icmplen = ip->ip_len; - int i, code; void (*ctlfunc)(int, struct sockaddr *, void *); - struct sockaddr_in icmpsrc, icmpdst, icmpgw; + int code; - /* Initialize */ - bzero(&icmpsrc, sizeof(icmpsrc)); - icmpsrc.sin_len = sizeof(struct sockaddr_in); - icmpsrc.sin_family = AF_INET; - bzero(&icmpdst, sizeof(icmpdst)); - icmpdst.sin_len = sizeof(struct sockaddr_in); - icmpdst.sin_family = AF_INET; - bzero(&icmpgw, sizeof(icmpgw)); - icmpgw.sin_len = sizeof(struct sockaddr_in); - icmpgw.sin_family = AF_INET; - /* * Locate icmp structure in mbuf, and check * that not corrupted and of at least minimum length. @@ -410,7 +387,7 @@ printf("deliver to protocol %d\n", icp->icmp_ip.ip_p); #endif icmpsrc.sin_addr = icp->icmp_ip.ip_dst; - +#if 1 /* * MTU discovery: * If we got a needfrag and there is a host route to the @@ -420,38 +397,40 @@ * notice that the MTU has changed and adapt accordingly. * If no new MTU was suggested, then we guess a new one * less than the current value. If the new MTU is - * unreasonably small (defined by sysctl tcp_minmss), then - * we don't update the MTU value. - * - * XXX: All this should be done in tcp_mtudisc() because - * the way we do it now, everyone can send us bogus ICMP - * MSGSIZE packets for any destination. By doing this far - * higher in the chain we have a matching tcp connection. - * Thus spoofing is much harder. However there is no easy - * non-hackish way to pass the new MTU up to tcp_mtudisc(). - * Also see next XXX regarding IPv4 AH TCP. + * unreasonably small (arbitrarily set at 296), then + * we reset the MTU to the interface value and enable the + * lock bit, indicating that we are no longer doing MTU + * discovery. */ if (code == PRC_MSGSIZE) { + struct rtentry *rt; int mtu; - struct in_conninfo inc; - bzero(&inc, sizeof(inc)); - inc.inc_flags = 0; /* IPv4 */ - inc.inc_faddr = icmpsrc.sin_addr; - - mtu = ntohs(icp->icmp_nextmtu); - if (!mtu) - mtu = ip_next_mtu(mtu, 1); - - if (mtu >= max(296, (tcp_minmss + sizeof(struct tcpiphdr)))) - tcp_hc_updatemtu(&inc, mtu); - + rt = rtalloc1((struct sockaddr *)&icmpsrc, 0, + RTF_CLONING | RTF_PRCLONING); + if (rt && (rt->rt_flags & RTF_HOST) + && !(rt->rt_rmx.rmx_locks & RTV_MTU)) { + mtu = ntohs(icp->icmp_nextmtu); + if (!mtu) + mtu = ip_next_mtu(rt->rt_rmx.rmx_mtu, + 1); #ifdef DEBUG_MTUDISC - printf("MTU for %s reduced to %d\n", - inet_ntoa(icmpsrc.sin_addr), mtu); + printf("MTU for %s reduced to %d\n", + inet_ntoa(icmpsrc.sin_addr), mtu); #endif + if (mtu < 296) { + /* rt->rt_rmx.rmx_mtu = + rt->rt_ifp->if_mtu; */ + rt->rt_rmx.rmx_locks |= RTV_MTU; + } else if (rt->rt_rmx.rmx_mtu > mtu) { + rt->rt_rmx.rmx_mtu = mtu; + } + } + if (rt) + rtfree(rt); } +#endif /* * XXX if the packet contains [IPv4 AH TCP], we can't make a * notification to TCP layer. @@ -628,6 +607,7 @@ struct in_addr t; struct mbuf *opts = 0; int optlen = (ip->ip_hl << 2) - sizeof(struct ip); + struct route *ro = NULL, rt; if (!in_canforward(ip->ip_src) && ((ntohl(ip->ip_src.s_addr) & IN_CLASSA_NET) != @@ -638,6 +618,8 @@ } t = ip->ip_dst; ip->ip_dst = ip->ip_src; + ro = &rt; + bzero(ro, sizeof(*ro)); /* * If the incoming packet was addressed directly to us, * use dst as the src for the reply. Otherwise (broadcast @@ -658,7 +640,7 @@ goto match; } } - ia = ip_rtaddr(ip->ip_dst); + ia = ip_rtaddr(ip->ip_dst, ro); /* We need a route to do anything useful. */ if (ia == NULL) { m_freem(m); >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Oct 23 20:33:11 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id ABA6B16A4C0; Thu, 23 Oct 2003 20:33:10 -0700 (PDT) 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 642CC16A4B3 for ; Thu, 23 Oct 2003 20:33:10 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DA62443F93 for ; Thu, 23 Oct 2003 20:33:07 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9O3X7XJ015315 for ; Thu, 23 Oct 2003 20:33:07 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9O3X6hj015312 for perforce@freebsd.org; Thu, 23 Oct 2003 20:33:06 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 20:33:06 -0700 (PDT) Message-Id: <200310240333.h9O3X6hj015312@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40360 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 03:33:11 -0000 http://perforce.freebsd.org/chv.cgi?CH=40360 Change 40360 by sam@sam_ebb on 2003/10/23 20:32:53 populate sam_hostcache Affected files ... .. //depot/projects/hostcache/sys/Makefile#1 branch .. //depot/projects/hostcache/sys/alpha/Makefile#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/alpha-gdbstub.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/api_up1000.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/atomic.s#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/autoconf.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/busdma_machdep.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/busspace.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/clock.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/clock_if.m#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/cpuconf.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/critical.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/db_disasm.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/db_instruction.h#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/db_interface.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/db_trace.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_1000a.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_2100_a50.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_2100_a500.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_3000_300.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_3000_500.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_axppci_33.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_eb164.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_eb64plus.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_kn20aa.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_kn300.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_kn8ae.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_st550.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dec_st6600.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/divrem.m4#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/dump_machdep.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/elf_machdep.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/exception.s#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/fp_emulate.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/genassym.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/ieee_float.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/ieee_float.h#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/in_cksum.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/interrupt.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/locore.s#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/machdep.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/mem.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/mp_machdep.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/pal.s#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/pmap.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/prom.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/prom_disp.s#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/promcons.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/sgmap.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/support.s#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/swtch.s#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/sys_machdep.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/timerreg.h#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/trap.c#1 branch .. //depot/projects/hostcache/sys/alpha/alpha/vm_machdep.c#1 branch .. //depot/projects/hostcache/sys/alpha/compile/.cvsignore#1 branch .. //depot/projects/hostcache/sys/alpha/conf/GENERIC#1 branch .. //depot/projects/hostcache/sys/alpha/conf/GENERIC.hints#1 branch .. //depot/projects/hostcache/sys/alpha/conf/Makefile#1 branch .. //depot/projects/hostcache/sys/alpha/conf/NOTES#1 branch .. //depot/projects/hostcache/sys/alpha/conf/gethints.awk#1 branch .. //depot/projects/hostcache/sys/alpha/include/_inttypes.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/_limits.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/_stdint.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/_types.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/alpha_cpu.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/asm.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/atomic.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/bootinfo.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/bus.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/bus_memio.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/bus_pio.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/bwx.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/chipset.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/clock.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/clockvar.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/cpu.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/cpuconf.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/cpufunc.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/critical.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/db_machdep.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/elf.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/endian.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/exec.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/float.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/floatingpoint.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/fpu.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/frame.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/ieee.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/ieeefp.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/in_cksum.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/inst.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/intr.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/intrcnt.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/ioctl_bt848.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/ioctl_meteor.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/kse.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/limits.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/md_var.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/mutex.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/pal.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/param.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/pc/bios.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/pc/display.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/pc/msdos.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/pc/vesa.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/pcb.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/pcpu.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/pmap.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/proc.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/profile.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/prom.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/pte.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/ptrace.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/reg.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/reloc.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/resource.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/rpb.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/runq.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/setjmp.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/sgmap.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/sigframe.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/signal.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/smp.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/stdarg.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/swiz.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/sysarch.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/ucontext.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/varargs.h#1 branch .. //depot/projects/hostcache/sys/alpha/include/vmparam.h#1 branch .. //depot/projects/hostcache/sys/alpha/isa/isa.c#1 branch .. //depot/projects/hostcache/sys/alpha/isa/isa_dma.c#1 branch .. //depot/projects/hostcache/sys/alpha/isa/isavar.h#1 branch .. //depot/projects/hostcache/sys/alpha/isa/mcclock_isa.c#1 branch .. //depot/projects/hostcache/sys/alpha/linux/Makefile#1 branch .. //depot/projects/hostcache/sys/alpha/linux/linux.h#1 branch .. //depot/projects/hostcache/sys/alpha/linux/linux_dummy.c#1 branch .. //depot/projects/hostcache/sys/alpha/linux/linux_genassym.c#1 branch .. //depot/projects/hostcache/sys/alpha/linux/linux_ipc64.h#1 branch .. //depot/projects/hostcache/sys/alpha/linux/linux_locore.s#1 branch .. //depot/projects/hostcache/sys/alpha/linux/linux_machdep.c#1 branch .. //depot/projects/hostcache/sys/alpha/linux/linux_proto.h#1 branch .. //depot/projects/hostcache/sys/alpha/linux/linux_syscall.h#1 branch .. //depot/projects/hostcache/sys/alpha/linux/linux_sysent.c#1 branch .. //depot/projects/hostcache/sys/alpha/linux/linux_sysvec.c#1 branch .. //depot/projects/hostcache/sys/alpha/linux/syscalls.conf#1 branch .. //depot/projects/hostcache/sys/alpha/linux/syscalls.master#1 branch .. //depot/projects/hostcache/sys/alpha/mcbus/mcbus.c#1 branch .. //depot/projects/hostcache/sys/alpha/mcbus/mcbusreg.h#1 branch .. //depot/projects/hostcache/sys/alpha/mcbus/mcbusvar.h#1 branch .. //depot/projects/hostcache/sys/alpha/mcbus/mcmem.c#1 branch .. //depot/projects/hostcache/sys/alpha/mcbus/mcpcia.c#1 branch .. //depot/projects/hostcache/sys/alpha/mcbus/mcpciareg.h#1 branch .. //depot/projects/hostcache/sys/alpha/mcbus/mcpciavar.h#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/Makefile#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/README.mach-traps#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/exec_ecoff.h#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/imgact_osf1.c#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/osf1.h#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/osf1_ioctl.c#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/osf1_misc.c#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/osf1_mount.c#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/osf1_proto.h#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/osf1_signal.c#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/osf1_signal.h#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/osf1_syscall.h#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/osf1_sysent.c#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/osf1_sysvec.c#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/osf1_util.h#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/syscalls.conf#1 branch .. //depot/projects/hostcache/sys/alpha/osf1/syscalls.master#1 branch .. //depot/projects/hostcache/sys/alpha/pci/alphapci_if.m#1 branch .. //depot/projects/hostcache/sys/alpha/pci/apecs.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/apecs_pci.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/apecsreg.h#1 branch .. //depot/projects/hostcache/sys/alpha/pci/apecsvar.h#1 branch .. //depot/projects/hostcache/sys/alpha/pci/bwx.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/cia.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/cia_pci.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/ciareg.h#1 branch .. //depot/projects/hostcache/sys/alpha/pci/ciavar.h#1 branch .. //depot/projects/hostcache/sys/alpha/pci/irongate.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/irongate_pci.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/irongatereg.h#1 branch .. //depot/projects/hostcache/sys/alpha/pci/irongatevar.h#1 branch .. //depot/projects/hostcache/sys/alpha/pci/lca.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/lca_pci.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/lcareg.h#1 branch .. //depot/projects/hostcache/sys/alpha/pci/lcavar.h#1 branch .. //depot/projects/hostcache/sys/alpha/pci/pci_eb164_intr.s#1 branch .. //depot/projects/hostcache/sys/alpha/pci/pci_eb64plus_intr.s#1 branch .. //depot/projects/hostcache/sys/alpha/pci/pcibus.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/pcibus.h#1 branch .. //depot/projects/hostcache/sys/alpha/pci/swiz.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/t2.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/t2_pci.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/t2reg.h#1 branch .. //depot/projects/hostcache/sys/alpha/pci/t2var.h#1 branch .. //depot/projects/hostcache/sys/alpha/pci/tsunami.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/tsunami_pci.c#1 branch .. //depot/projects/hostcache/sys/alpha/pci/tsunamireg.h#1 branch .. //depot/projects/hostcache/sys/alpha/pci/tsunamivar.h#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/dwlpx.c#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/dwlpxreg.h#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/dwlpxvar.h#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/gbus.c#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/gbusreg.h#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/gbusvar.h#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/kftxx.c#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/kftxxreg.h#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/kftxxvar.h#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/mcclock_tlsb.c#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/tlsb.c#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/tlsbcpu.c#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/tlsbmem.c#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/tlsbreg.h#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/tlsbvar.h#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/zs_tlsb.c#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/zsreg.h#1 branch .. //depot/projects/hostcache/sys/alpha/tlsb/zsvar.h#1 branch .. //depot/projects/hostcache/sys/amd64/Makefile#1 branch .. //depot/projects/hostcache/sys/amd64/acpica/OsdEnvironment.c#1 branch .. //depot/projects/hostcache/sys/amd64/acpica/acpi_machdep.c#1 branch .. //depot/projects/hostcache/sys/amd64/acpica/acpi_wakeup.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/amd64-gdbstub.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/amd64_mem.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/atomic.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/autoconf.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/busdma_machdep.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/cpu_switch.S#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/critical.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/db_disasm.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/db_interface.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/db_trace.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/dump_machdep.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/elf_machdep.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/exception.S#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/genassym.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/identcpu.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/in_cksum.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/initcpu.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/legacy.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/locore.S#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/machdep.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/mem.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/nexus.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/pmap.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/sigtramp.S#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/support.S#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/sys_machdep.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/trap.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/tsc.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/uma_machdep.c#1 branch .. //depot/projects/hostcache/sys/amd64/amd64/vm_machdep.c#1 branch .. //depot/projects/hostcache/sys/amd64/compile/.cvsignore#1 branch .. //depot/projects/hostcache/sys/amd64/conf/GENERIC#1 branch .. //depot/projects/hostcache/sys/amd64/conf/GENERIC.hints#1 branch .. //depot/projects/hostcache/sys/amd64/conf/Makefile#1 branch .. //depot/projects/hostcache/sys/amd64/conf/gethints.awk#1 branch .. //depot/projects/hostcache/sys/amd64/ia32/ia32_exception.S#1 branch .. //depot/projects/hostcache/sys/amd64/ia32/ia32_signal.c#1 branch .. //depot/projects/hostcache/sys/amd64/ia32/ia32_syscall.c#1 branch .. //depot/projects/hostcache/sys/amd64/include/_inttypes.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/_limits.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/_stdint.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/_types.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/acpica_machdep.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/asm.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/asmacros.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/atomic.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/bus.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/bus_amd64.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/bus_dma.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/bus_memio.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/bus_pio.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/clock.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/cpu.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/cpufunc.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/cputypes.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/critical.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/db_machdep.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/elf.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/endian.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/exec.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/float.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/floatingpoint.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/frame.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/ieeefp.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/in_cksum.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/kse.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/legacyvar.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/limits.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/md_var.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/metadata.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/mutex.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/npx.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/param.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/pc/display.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/pcb.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/pcb_ext.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/pci_cfgreg.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/pcpu.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/pmap.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/proc.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/profile.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/psl.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/ptrace.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/reg.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/reloc.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/resource.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/runq.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/segments.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/setjmp.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/sigframe.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/signal.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/smp.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/specialreg.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/stdarg.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/sysarch.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/trap.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/tss.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/ucontext.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/varargs.h#1 branch .. //depot/projects/hostcache/sys/amd64/include/vmparam.h#1 branch .. //depot/projects/hostcache/sys/amd64/isa/clock.c#1 branch .. //depot/projects/hostcache/sys/amd64/isa/icu.h#1 branch .. //depot/projects/hostcache/sys/amd64/isa/icu_ipl.S#1 branch .. //depot/projects/hostcache/sys/amd64/isa/icu_vector.S#1 branch .. //depot/projects/hostcache/sys/amd64/isa/intr_machdep.c#1 branch .. //depot/projects/hostcache/sys/amd64/isa/intr_machdep.h#1 branch .. //depot/projects/hostcache/sys/amd64/isa/isa.c#1 branch .. //depot/projects/hostcache/sys/amd64/isa/isa.h#1 branch .. //depot/projects/hostcache/sys/amd64/isa/isa_dma.c#1 branch .. //depot/projects/hostcache/sys/amd64/isa/isa_dma.h#1 branch .. //depot/projects/hostcache/sys/amd64/isa/ithread.c#1 branch .. //depot/projects/hostcache/sys/amd64/isa/npx.c#1 branch .. //depot/projects/hostcache/sys/amd64/isa/timerreg.h#1 branch .. //depot/projects/hostcache/sys/amd64/isa/vector.S#1 branch .. //depot/projects/hostcache/sys/amd64/pci/pci_bus.c#1 branch .. //depot/projects/hostcache/sys/amd64/pci/pci_cfgreg.c#1 branch .. //depot/projects/hostcache/sys/arm/compile/.cvsignore#1 branch .. //depot/projects/hostcache/sys/arm/include/_limits.h#1 branch .. //depot/projects/hostcache/sys/arm/include/_stdint.h#1 branch .. //depot/projects/hostcache/sys/arm/include/_types.h#1 branch .. //depot/projects/hostcache/sys/arm/include/elf.h#1 branch .. //depot/projects/hostcache/sys/arm/include/endian.h#1 branch .. //depot/projects/hostcache/sys/arm/include/exec.h#1 branch .. //depot/projects/hostcache/sys/arm/include/limits.h#1 branch .. //depot/projects/hostcache/sys/arm/include/param.h#1 branch .. //depot/projects/hostcache/sys/arm/include/signal.h#1 branch .. //depot/projects/hostcache/sys/arm/include/ucontext.h#1 branch .. //depot/projects/hostcache/sys/boot/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/README#1 branch .. //depot/projects/hostcache/sys/boot/alpha/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/alpha/Makefile.inc#1 branch .. //depot/projects/hostcache/sys/boot/alpha/boot1/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/alpha/boot1/boot1.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/cdboot/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/alpha/cdboot/version#1 branch .. //depot/projects/hostcache/sys/boot/alpha/common/Makefile.common#1 branch .. //depot/projects/hostcache/sys/boot/alpha/common/conf.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/common/help.alpha#1 branch .. //depot/projects/hostcache/sys/boot/alpha/common/main.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/OSFpal.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/alpha_copy.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/alpha_module.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/bbinfo.h#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/bootinfo.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/common.h#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/delay.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/devicename.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/elf_freebsd.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/getsecs.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/libalpha.h#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/pal.S#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/prom.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/prom_disp.S#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/prom_swpal.S#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/reboot.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/srmdisk.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/srmnet.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/start.S#1 branch .. //depot/projects/hostcache/sys/boot/alpha/libalpha/time.c#1 branch .. //depot/projects/hostcache/sys/boot/alpha/loader/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/alpha/loader/version#1 branch .. //depot/projects/hostcache/sys/boot/alpha/netboot/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/alpha/netboot/version#1 branch .. //depot/projects/hostcache/sys/boot/arc/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/arc/Makefile.inc#1 branch .. //depot/projects/hostcache/sys/boot/arc/include/arcfuncs.h#1 branch .. //depot/projects/hostcache/sys/boot/arc/include/arctypes.h#1 branch .. //depot/projects/hostcache/sys/boot/arc/include/libarc.h#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/abort.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/arcconsole.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/arcdisk.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/arch/alpha/copy.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/arch/alpha/rpb.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/arch/alpha/setjmp.S#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/arch/alpha/start.S#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/bootinfo.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/delay.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/devicename.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/elf_freebsd.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/module.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/prom.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/setjmperr.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/lib/time.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/loader/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/arc/loader/conf.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/loader/help.alpha#1 branch .. //depot/projects/hostcache/sys/boot/arc/loader/main.c#1 branch .. //depot/projects/hostcache/sys/boot/arc/loader/version#1 branch .. //depot/projects/hostcache/sys/boot/common/Makefile.inc#1 branch .. //depot/projects/hostcache/sys/boot/common/bcache.c#1 branch .. //depot/projects/hostcache/sys/boot/common/boot.c#1 branch .. //depot/projects/hostcache/sys/boot/common/bootstrap.h#1 branch .. //depot/projects/hostcache/sys/boot/common/commands.c#1 branch .. //depot/projects/hostcache/sys/boot/common/console.c#1 branch .. //depot/projects/hostcache/sys/boot/common/dev_net.c#1 branch .. //depot/projects/hostcache/sys/boot/common/dev_net.h#1 branch .. //depot/projects/hostcache/sys/boot/common/devopen.c#1 branch .. //depot/projects/hostcache/sys/boot/common/help.common#1 branch .. //depot/projects/hostcache/sys/boot/common/interp.c#1 branch .. //depot/projects/hostcache/sys/boot/common/interp_backslash.c#1 branch .. //depot/projects/hostcache/sys/boot/common/interp_forth.c#1 branch .. //depot/projects/hostcache/sys/boot/common/interp_parse.c#1 branch .. //depot/projects/hostcache/sys/boot/common/isapnp.c#1 branch .. //depot/projects/hostcache/sys/boot/common/isapnp.h#1 branch .. //depot/projects/hostcache/sys/boot/common/load.c#1 branch .. //depot/projects/hostcache/sys/boot/common/load_elf.c#1 branch .. //depot/projects/hostcache/sys/boot/common/load_elf32.c#1 branch .. //depot/projects/hostcache/sys/boot/common/load_elf64.c#1 branch .. //depot/projects/hostcache/sys/boot/common/loader.8#1 branch .. //depot/projects/hostcache/sys/boot/common/ls.c#1 branch .. //depot/projects/hostcache/sys/boot/common/merge_help.awk#1 branch .. //depot/projects/hostcache/sys/boot/common/misc.c#1 branch .. //depot/projects/hostcache/sys/boot/common/module.c#1 branch .. //depot/projects/hostcache/sys/boot/common/newvers.sh#1 branch .. //depot/projects/hostcache/sys/boot/common/panic.c#1 branch .. //depot/projects/hostcache/sys/boot/common/pnp.c#1 branch .. //depot/projects/hostcache/sys/boot/common/pnpdata#1 branch .. //depot/projects/hostcache/sys/boot/common/ufsread.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/efi/Makefile.inc#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/README#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efi.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efi_nii.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efiapi.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/eficon.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efidebug.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efidef.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efidevp.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efierr.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efifpswa.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efifs.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efilib.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efinet.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efipart.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efiprot.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efipxebc.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efiser.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/efistdarg.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/i386/efibind.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/i386/pe.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/ia64/efibind.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/include/ia64/pe.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/arch/ia64/ldscript.ia64#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/arch/ia64/start.S#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/bootinfo.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/copy.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/delay.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/devicename.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/efi_console.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/efiboot.h#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/efifpswa.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/efifs.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/efinet.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/elf_freebsd.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/libefi.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/module.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/libefi/time.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/loader/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/efi/loader/conf.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/loader/main.c#1 branch .. //depot/projects/hostcache/sys/boot/efi/loader/version#1 branch .. //depot/projects/hostcache/sys/boot/ficl/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/ficl/alpha/sysdep.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/alpha/sysdep.h#1 branch .. //depot/projects/hostcache/sys/boot/ficl/dict.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/ficl.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/ficl.h#1 branch .. //depot/projects/hostcache/sys/boot/ficl/fileaccess.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/float.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/i386/sysdep.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/i386/sysdep.h#1 branch .. //depot/projects/hostcache/sys/boot/ficl/ia64/sysdep.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/ia64/sysdep.h#1 branch .. //depot/projects/hostcache/sys/boot/ficl/loader.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/math64.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/math64.h#1 branch .. //depot/projects/hostcache/sys/boot/ficl/prefix.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/search.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/classes.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/ficlclass.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/ficllocal.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/fileaccess.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/forml.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/freebsd.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/ifbrack.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/jhlocal.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/marker.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/oo.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/prefix.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/softcore.awk#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/softcore.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/softwords/string.fr#1 branch .. //depot/projects/hostcache/sys/boot/ficl/sparc64/sysdep.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/sparc64/sysdep.h#1 branch .. //depot/projects/hostcache/sys/boot/ficl/stack.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/testmain.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/tools.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/unix.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/vm.c#1 branch .. //depot/projects/hostcache/sys/boot/ficl/words.c#1 branch .. //depot/projects/hostcache/sys/boot/forth/beastie.4th#1 branch .. //depot/projects/hostcache/sys/boot/forth/frames.4th#1 branch .. //depot/projects/hostcache/sys/boot/forth/loader.4th#1 branch .. //depot/projects/hostcache/sys/boot/forth/loader.4th.8#1 branch .. //depot/projects/hostcache/sys/boot/forth/loader.conf#1 branch .. //depot/projects/hostcache/sys/boot/forth/loader.conf.5#1 branch .. //depot/projects/hostcache/sys/boot/forth/loader.rc#1 branch .. //depot/projects/hostcache/sys/boot/forth/pnp.4th#1 branch .. //depot/projects/hostcache/sys/boot/forth/screen.4th#1 branch .. //depot/projects/hostcache/sys/boot/forth/support.4th#1 branch .. //depot/projects/hostcache/sys/boot/i386/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/Makefile.inc#1 branch .. //depot/projects/hostcache/sys/boot/i386/boot0/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/boot0/boot0.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/boot2/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/boot2/boot1.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/boot2/boot2.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/boot2/lib.h#1 branch .. //depot/projects/hostcache/sys/boot/i386/boot2/sio.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/btx/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/btx/Makefile.inc#1 branch .. //depot/projects/hostcache/sys/boot/i386/btx/btx/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/btx/btx/btx.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/btx/btxldr/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/btx/btxldr/btxldr.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/btx/lib/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/btx/lib/btxcsu.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/btx/lib/btxsys.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/btx/lib/btxv86.h#1 branch .. //depot/projects/hostcache/sys/boot/i386/btx/lib/btxv86.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/cdboot/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/cdboot/cdboot.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/kgzldr/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/kgzldr/boot.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/kgzldr/crt.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/kgzldr/kgzldr.h#1 branch .. //depot/projects/hostcache/sys/boot/i386/kgzldr/lib.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/kgzldr/sio.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/kgzldr/start.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/amd64_tramp.S#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/biosacpi.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/bioscd.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/biosdisk.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/biosmem.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/biospci.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/biospnp.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/biossmap.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/bootinfo.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/bootinfo32.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/bootinfo64.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/comconsole.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/devicename.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/elf32_freebsd.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/elf64_freebsd.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/gatea20.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/i386_copy.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/i386_module.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/libi386.h#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/nullconsole.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/pread.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/pxe.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/pxe.h#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/pxetramp.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/time.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/libi386/vidconsole.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/loader/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/loader/conf.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/loader/help.i386#1 branch .. //depot/projects/hostcache/sys/boot/i386/loader/loader.rc#1 branch .. //depot/projects/hostcache/sys/boot/i386/loader/main.c#1 branch .. //depot/projects/hostcache/sys/boot/i386/loader/version#1 branch .. //depot/projects/hostcache/sys/boot/i386/mbr/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/mbr/mbr.s#1 branch .. //depot/projects/hostcache/sys/boot/i386/pxeldr/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/i386/pxeldr/pxeboot.8#1 branch .. //depot/projects/hostcache/sys/boot/i386/pxeldr/pxeldr.s#1 branch .. //depot/projects/hostcache/sys/boot/ia64/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/ia64/Makefile.inc#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/acpi_stub.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/bootinfo.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/copy.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/delay.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/devicename.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/efi_stub.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/elf_freebsd.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/exit.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/libski.h#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/module.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/pal_stub.S#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/sal_stub.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/skiconsole.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/skifs.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/ssc.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/libski/time.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/skiload/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/ia64/skiload/conf.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/skiload/ldscript.ia64#1 branch .. //depot/projects/hostcache/sys/boot/ia64/skiload/main.c#1 branch .. //depot/projects/hostcache/sys/boot/ia64/skiload/skiload.cmd#1 branch .. //depot/projects/hostcache/sys/boot/ia64/skiload/start.S#1 branch .. //depot/projects/hostcache/sys/boot/ia64/skiload/version#1 branch .. //depot/projects/hostcache/sys/boot/ofw/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/ofw/common/Makefile.inc#1 branch .. //depot/projects/hostcache/sys/boot/ofw/common/main.c#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/devicename.c#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/elf_freebsd.c#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/libofw.h#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/ofw_console.c#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/ofw_copy.c#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/ofw_disk.c#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/ofw_memory.c#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/ofw_module.c#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/ofw_net.c#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/ofw_reboot.c#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/ofw_time.c#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/openfirm.c#1 branch .. //depot/projects/hostcache/sys/boot/ofw/libofw/openfirm.h#1 branch .. //depot/projects/hostcache/sys/boot/pc98/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/pc98/Makefile.inc#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot0.5/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot0.5/boot.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot0.5/boot0.5.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot0.5/disk.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot0.5/selector.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot0.5/start.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot0.5/support.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot0.5/syscons.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot0/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot0/boot0.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/README.serial.98#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/asm.S#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/asm.h#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/bios.S#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/boot.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/boot.h#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/boot2.S#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/dinode.h#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/disk.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/fs.h#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/inode.h#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/io.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/probe_keyboard.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/quota.h#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/serial.S#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/serial_16550.S#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/serial_8251.S#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/start.S#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/sys.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/boot2/table.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/btx/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/pc98/btx/btx/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/pc98/btx/btx/btx.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/btx/btxldr/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/pc98/btx/btxldr/btxldr.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/btx/lib/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/pc98/btx/lib/btxcsu.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/btx/lib/btxsys.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/btx/lib/btxv86.h#1 branch .. //depot/projects/hostcache/sys/boot/pc98/btx/lib/btxv86.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/kgzldr/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/pc98/kgzldr/crt.s#1 branch .. //depot/projects/hostcache/sys/boot/pc98/libpc98/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/pc98/libpc98/biosdisk.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/libpc98/biosmem.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/libpc98/comconsole.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/libpc98/gatea20.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/libpc98/i386_module.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/libpc98/time.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/libpc98/vidconsole.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/loader/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/pc98/loader/conf.c#1 branch .. //depot/projects/hostcache/sys/boot/pc98/loader/help.pc98#1 branch .. //depot/projects/hostcache/sys/boot/pc98/loader/main.c#1 branch .. //depot/projects/hostcache/sys/boot/powerpc/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/powerpc/loader/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/powerpc/loader/conf.c#1 branch .. //depot/projects/hostcache/sys/boot/powerpc/loader/help.ofw#1 branch .. //depot/projects/hostcache/sys/boot/powerpc/loader/metadata.c#1 branch .. //depot/projects/hostcache/sys/boot/powerpc/loader/start.c#1 branch .. //depot/projects/hostcache/sys/boot/powerpc/loader/version#1 branch .. //depot/projects/hostcache/sys/boot/sparc64/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/sparc64/boot1/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/sparc64/boot1/_start.S#1 branch .. //depot/projects/hostcache/sys/boot/sparc64/boot1/boot1.c#1 branch .. //depot/projects/hostcache/sys/boot/sparc64/loader/Makefile#1 branch .. //depot/projects/hostcache/sys/boot/sparc64/loader/help.sparc64#1 branch .. //depot/projects/hostcache/sys/boot/sparc64/loader/locore.S#1 branch .. //depot/projects/hostcache/sys/boot/sparc64/loader/main.c#1 branch .. //depot/projects/hostcache/sys/boot/sparc64/loader/metadata.c#1 branch .. //depot/projects/hostcache/sys/boot/sparc64/loader/version#1 branch .. //depot/projects/hostcache/sys/cam/cam.c#1 branch .. //depot/projects/hostcache/sys/cam/cam.h#1 branch .. //depot/projects/hostcache/sys/cam/cam_ccb.h#1 branch .. //depot/projects/hostcache/sys/cam/cam_debug.h#1 branch .. //depot/projects/hostcache/sys/cam/cam_periph.c#1 branch .. //depot/projects/hostcache/sys/cam/cam_periph.h#1 branch .. //depot/projects/hostcache/sys/cam/cam_queue.c#1 branch .. //depot/projects/hostcache/sys/cam/cam_queue.h#1 branch .. //depot/projects/hostcache/sys/cam/cam_sim.c#1 branch .. //depot/projects/hostcache/sys/cam/cam_sim.h#1 branch .. //depot/projects/hostcache/sys/cam/cam_xpt.c#1 branch .. //depot/projects/hostcache/sys/cam/cam_xpt.h#1 branch .. //depot/projects/hostcache/sys/cam/cam_xpt_periph.h#1 branch .. //depot/projects/hostcache/sys/cam/cam_xpt_sim.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_all.c#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_all.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_cd.c#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_cd.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_ch.c#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_ch.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_da.c#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_da.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_dvcfg.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_iu.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_low.c#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_low.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_low_pisa.c#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_low_pisa.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_message.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_pass.c#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_pass.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_pt.c#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_pt.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_sa.c#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_sa.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_ses.c#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_ses.h#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_targ_bh.c#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_target.c#1 branch .. //depot/projects/hostcache/sys/cam/scsi/scsi_targetio.h#1 branch .. //depot/projects/hostcache/sys/coda/00READ#1 branch .. //depot/projects/hostcache/sys/coda/README#1 branch .. //depot/projects/hostcache/sys/coda/TODO#1 branch .. //depot/projects/hostcache/sys/coda/cnode.h#1 branch .. //depot/projects/hostcache/sys/coda/coda.h#1 branch .. //depot/projects/hostcache/sys/coda/coda_fbsd.c#1 branch .. //depot/projects/hostcache/sys/coda/coda_io.h#1 branch .. //depot/projects/hostcache/sys/coda/coda_kernel.h#1 branch .. //depot/projects/hostcache/sys/coda/coda_namecache.c#1 branch .. //depot/projects/hostcache/sys/coda/coda_namecache.h#1 branch .. //depot/projects/hostcache/sys/coda/coda_opstats.h#1 branch .. //depot/projects/hostcache/sys/coda/coda_pioctl.h#1 branch .. //depot/projects/hostcache/sys/coda/coda_psdev.c#1 branch .. //depot/projects/hostcache/sys/coda/coda_psdev.h#1 branch .. //depot/projects/hostcache/sys/coda/coda_subr.c#1 branch .. //depot/projects/hostcache/sys/coda/coda_subr.h#1 branch .. //depot/projects/hostcache/sys/coda/coda_venus.c#1 branch .. //depot/projects/hostcache/sys/coda/coda_venus.h#1 branch .. //depot/projects/hostcache/sys/coda/coda_vfsops.c#1 branch .. //depot/projects/hostcache/sys/coda/coda_vfsops.h#1 branch .. //depot/projects/hostcache/sys/coda/coda_vnops.c#1 branch .. //depot/projects/hostcache/sys/coda/coda_vnops.h#1 branch .. //depot/projects/hostcache/sys/compat/freebsd32/Makefile#1 branch .. //depot/projects/hostcache/sys/compat/freebsd32/freebsd32.h#1 branch .. //depot/projects/hostcache/sys/compat/freebsd32/freebsd32_misc.c#1 branch .. //depot/projects/hostcache/sys/compat/freebsd32/freebsd32_proto.h#1 branch .. //depot/projects/hostcache/sys/compat/freebsd32/freebsd32_syscall.h#1 branch .. //depot/projects/hostcache/sys/compat/freebsd32/freebsd32_syscalls.c#1 branch .. //depot/projects/hostcache/sys/compat/freebsd32/freebsd32_sysent.c#1 branch .. //depot/projects/hostcache/sys/compat/freebsd32/freebsd32_util.h#1 branch .. //depot/projects/hostcache/sys/compat/freebsd32/syscalls.conf#1 branch .. //depot/projects/hostcache/sys/compat/freebsd32/syscalls.master#1 branch .. //depot/projects/hostcache/sys/compat/ia32/ia32_genassym.c#1 branch .. //depot/projects/hostcache/sys/compat/ia32/ia32_signal.h#1 branch .. //depot/projects/hostcache/sys/compat/ia32/ia32_sigtramp.S#1 branch .. //depot/projects/hostcache/sys/compat/ia32/ia32_sysvec.c#1 branch .. //depot/projects/hostcache/sys/compat/ia32/ia32_util.h#1 branch .. //depot/projects/hostcache/sys/compat/linprocfs/linprocfs.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_file.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_getcwd.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_ioctl.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_ioctl.h#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_ipc.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_ipc.h#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_mib.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_mib.h#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_misc.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_signal.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_signal.h#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_socket.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_socket.h#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_stats.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_sysctl.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_uid16.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_util.c#1 branch .. //depot/projects/hostcache/sys/compat/linux/linux_util.h#1 branch .. //depot/projects/hostcache/sys/compat/pecoff/imgact_pecoff.c#1 branch .. //depot/projects/hostcache/sys/compat/pecoff/imgact_pecoff.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/Makefile#1 branch .. //depot/projects/hostcache/sys/compat/svr4/imgact_svr4.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_acl.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_dirent.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_errno.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_exec.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_fcntl.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_fcntl.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_filio.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_filio.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_fuser.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_hrt.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_ioctl.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_ioctl.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_ipc.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_ipc.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_misc.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_mman.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_proto.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_resource.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_resource.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_siginfo.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_signal.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_signal.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_socket.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_socket.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_sockio.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_sockio.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_sockmod.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_stat.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_stat.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_statvfs.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_stream.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_stropts.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_syscall.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_syscallnames.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_sysconfig.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_sysent.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_systeminfo.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_sysvec.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_termios.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_termios.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_time.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_timod.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_ttold.c#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_ttold.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_types.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_ucontext.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_ulimit.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_ustat.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_util.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_utsname.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/svr4_wait.h#1 branch .. //depot/projects/hostcache/sys/compat/svr4/syscalls.conf#1 branch .. //depot/projects/hostcache/sys/compat/svr4/syscalls.master#1 branch .. //depot/projects/hostcache/sys/conf/Makefile.alpha#1 branch .. //depot/projects/hostcache/sys/conf/Makefile.amd64#1 branch .. //depot/projects/hostcache/sys/conf/Makefile.i386#1 branch .. //depot/projects/hostcache/sys/conf/Makefile.ia64#1 branch .. //depot/projects/hostcache/sys/conf/Makefile.pc98#1 branch .. //depot/projects/hostcache/sys/conf/Makefile.powerpc#1 branch .. //depot/projects/hostcache/sys/conf/Makefile.sparc64#1 branch .. //depot/projects/hostcache/sys/conf/NOTES#1 branch .. //depot/projects/hostcache/sys/conf/defines#1 branch .. //depot/projects/hostcache/sys/conf/files#1 branch .. //depot/projects/hostcache/sys/conf/files.alpha#1 branch .. //depot/projects/hostcache/sys/conf/files.amd64#1 branch .. //depot/projects/hostcache/sys/conf/files.i386#1 branch .. //depot/projects/hostcache/sys/conf/files.ia64#1 branch .. //depot/projects/hostcache/sys/conf/files.pc98#1 branch .. //depot/projects/hostcache/sys/conf/files.powerpc#1 branch .. //depot/projects/hostcache/sys/conf/files.sparc64#1 branch .. //depot/projects/hostcache/sys/conf/kern.mk#1 branch .. //depot/projects/hostcache/sys/conf/kern.post.mk#1 branch .. //depot/projects/hostcache/sys/conf/kern.pre.mk#1 branch .. //depot/projects/hostcache/sys/conf/kmod.mk#1 branch .. //depot/projects/hostcache/sys/conf/kmod_syms.awk#1 branch .. //depot/projects/hostcache/sys/conf/ldscript.alpha#1 branch .. //depot/projects/hostcache/sys/conf/ldscript.amd64#1 branch .. //depot/projects/hostcache/sys/conf/ldscript.i386#1 branch .. //depot/projects/hostcache/sys/conf/ldscript.ia64#1 branch .. //depot/projects/hostcache/sys/conf/ldscript.powerpc#1 branch .. //depot/projects/hostcache/sys/conf/ldscript.sparc64#1 branch .. //depot/projects/hostcache/sys/conf/majors#1 branch .. //depot/projects/hostcache/sys/conf/majors.awk#1 branch .. //depot/projects/hostcache/sys/conf/makeLINT.mk#1 branch .. //depot/projects/hostcache/sys/conf/makeLINT.sed#1 branch .. //depot/projects/hostcache/sys/conf/newvers.sh#1 branch .. //depot/projects/hostcache/sys/conf/options#1 branch .. //depot/projects/hostcache/sys/conf/options.alpha#1 branch .. //depot/projects/hostcache/sys/conf/options.amd64#1 branch .. //depot/projects/hostcache/sys/conf/options.i386#1 branch .. //depot/projects/hostcache/sys/conf/options.ia64#1 branch .. //depot/projects/hostcache/sys/conf/options.pc98#1 branch .. //depot/projects/hostcache/sys/conf/options.powerpc#1 branch .. //depot/projects/hostcache/sys/conf/options.sparc64#1 branch .. //depot/projects/hostcache/sys/conf/systags.sh#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/CHANGES.txt#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acapps.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acconfig.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acdebug.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acdisasm.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acdispat.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acefi.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acenv.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acevents.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acexcep.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acfreebsd.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acgcc.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acglobal.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/achware.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acinterp.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/aclocal.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acmacros.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acnamesp.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acobject.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acoutput.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acparser.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acpi.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acpica_prep.sh#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acpiosxf.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acpixf.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acresrc.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acstruct.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/actables.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/actbl.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/actbl1.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/actbl2.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/actypes.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/acutils.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/amlcode.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/amlresrc.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/common/adisasm.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/common/getopt.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslanalyze.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslcodegen.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslcompile.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslcompiler.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslcompiler.l#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslcompiler.y#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslerror.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslfiles.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslfold.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslglobal.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/asllength.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/asllisting.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslload.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/asllookup.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslmain.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslmap.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslopcodes.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/asloperands.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslopt.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslresource.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslrestype1.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslrestype2.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslstubs.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/asltransform.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/asltree.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/asltypes.h#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/compiler/aslutils.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dbcmds.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dbdisply.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dbexec.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dbfileio.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dbhistry.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dbinput.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dbstats.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dbutils.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dbxface.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dmbuffer.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dmnames.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dmobject.c#1 branch .. //depot/projects/hostcache/sys/contrib/dev/acpica/dmopcode.c#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Oct 23 20:36:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 45A9916A4C0; Thu, 23 Oct 2003 20:36:13 -0700 (PDT) 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 20E6616A4B3 for ; Thu, 23 Oct 2003 20:36:13 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8C99543FA3 for ; Thu, 23 Oct 2003 20:36:12 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9O3aCXJ015468 for ; Thu, 23 Oct 2003 20:36:12 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9O3aBTK015465 for perforce@freebsd.org; Thu, 23 Oct 2003 20:36:11 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 20:36:11 -0700 (PDT) Message-Id: <200310240336.h9O3aBTK015465@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40361 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 03:36:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=40361 Change 40361 by sam@sam_ebb on 2003/10/23 20:35:23 remove hostcache files that go on the sam_hostcache branch Affected files ... .. //depot/projects/netperf/sys/netinet/ip_fastforward.c#2 delete .. //depot/projects/netperf/sys/netinet/tcp_hostcache.c#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Thu Oct 23 20:36:14 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0739816A4D5; Thu, 23 Oct 2003 20:36:14 -0700 (PDT) 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 D52BE16A4C0 for ; Thu, 23 Oct 2003 20:36:13 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4CF7143FA3 for ; Thu, 23 Oct 2003 20:36:13 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9O3aDXJ015474 for ; Thu, 23 Oct 2003 20:36:13 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9O3aC2G015471 for perforce@freebsd.org; Thu, 23 Oct 2003 20:36:12 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 20:36:12 -0700 (PDT) Message-Id: <200310240336.h9O3aC2G015471@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40362 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 03:36:14 -0000 http://perforce.freebsd.org/chv.cgi?CH=40362 Change 40362 by sam@sam_ebb on 2003/10/23 20:36:11 IFC Affected files ... .. //depot/projects/hostcache/sys/netinet/ip_fastforward.c#2 delete .. //depot/projects/hostcache/sys/netinet/tcp_hostcache.c#2 delete Differences ... From owner-p4-projects@FreeBSD.ORG Thu Oct 23 20:46:29 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 403E716A4C0; Thu, 23 Oct 2003 20:46:29 -0700 (PDT) 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 192A516A4B3 for ; Thu, 23 Oct 2003 20:46:29 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B201043FF3 for ; Thu, 23 Oct 2003 20:46:26 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9O3kQXJ015904 for ; Thu, 23 Oct 2003 20:46:26 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9O3kPOv015901 for perforce@freebsd.org; Thu, 23 Oct 2003 20:46:25 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 20:46:25 -0700 (PDT) Message-Id: <200310240346.h9O3kPOv015901@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40363 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 03:46:29 -0000 X-List-Received-Date: Fri, 24 Oct 2003 03:46:29 -0000 http://perforce.freebsd.org/chv.cgi?CH=40363 Change 40363 by sam@sam_ebb on 2003/10/23 20:45:28 IFC @ 40360 Affected files ... .. //depot/projects/netperf/sys/amd64/include/stdarg.h#2 integrate .. //depot/projects/netperf/sys/dev/drm/ati_pcigart.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/drm.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/drmP.h#4 integrate .. //depot/projects/netperf/sys/dev/drm/drm_auth.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/drm_bufs.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/drm_context.h#4 integrate .. //depot/projects/netperf/sys/dev/drm/drm_dma.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/drm_drv.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/drm_fops.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/drm_ioctl.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/drm_irq.h#1 branch .. //depot/projects/netperf/sys/dev/drm/drm_memory.h#4 integrate .. //depot/projects/netperf/sys/dev/drm/drm_memory_debug.h#2 integrate .. //depot/projects/netperf/sys/dev/drm/drm_os_freebsd.h#4 integrate .. //depot/projects/netperf/sys/dev/drm/drm_pci.h#2 integrate .. //depot/projects/netperf/sys/dev/drm/drm_sysctl.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/drm_vm.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/mga.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/mga_dma.c#3 integrate .. //depot/projects/netperf/sys/dev/drm/mga_drv.c#3 integrate .. //depot/projects/netperf/sys/dev/drm/mga_irq.c#3 integrate .. //depot/projects/netperf/sys/dev/drm/r128.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/r128_cce.c#3 integrate .. //depot/projects/netperf/sys/dev/drm/r128_drv.c#3 integrate .. //depot/projects/netperf/sys/dev/drm/r128_drv.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/r128_irq.c#3 integrate .. //depot/projects/netperf/sys/dev/drm/r128_state.c#3 integrate .. //depot/projects/netperf/sys/dev/drm/radeon.h#4 integrate .. //depot/projects/netperf/sys/dev/drm/radeon_cp.c#4 integrate .. //depot/projects/netperf/sys/dev/drm/radeon_drv.c#4 integrate .. //depot/projects/netperf/sys/dev/drm/radeon_irq.c#3 integrate .. //depot/projects/netperf/sys/dev/drm/sis.h#2 integrate .. //depot/projects/netperf/sys/dev/drm/sis_drv.c#2 integrate .. //depot/projects/netperf/sys/dev/drm/sis_mm.c#2 integrate .. //depot/projects/netperf/sys/dev/drm/tdfx.h#3 integrate .. //depot/projects/netperf/sys/dev/drm/tdfx_drv.c#3 integrate .. //depot/projects/netperf/sys/ia64/disasm/disasm.h#2 integrate .. //depot/projects/netperf/sys/ia64/ia64/unaligned.c#3 integrate .. //depot/projects/netperf/sys/kern/kern_prot.c#3 integrate .. //depot/projects/netperf/sys/kern/vfs_bio.c#12 integrate .. //depot/projects/netperf/sys/netinet/ip_mroute.c#16 integrate .. //depot/projects/netperf/sys/netinet6/in6_src.c#14 integrate .. //depot/projects/netperf/sys/sys/proc.h#7 integrate .. //depot/projects/netperf/sys/ufs/ffs/ffs_snapshot.c#5 integrate .. //depot/projects/netperf/sys/ufs/ffs/ffs_softdep.c#6 integrate Differences ... ==== //depot/projects/netperf/sys/amd64/include/stdarg.h#2 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/stdarg.h,v 1.5 2003/05/10 00:55:15 peter Exp $ + * $FreeBSD: src/sys/amd64/include/stdarg.h,v 1.6 2003/10/24 02:50:39 peter Exp $ */ #ifndef _MACHINE_STDARG_H_ @@ -46,9 +46,12 @@ #define va_arg(ap, type) \ __builtin_va_arg((ap), type) +#define __va_copy(dest, src) \ + __builtin_va_copy((dest), (src)) + #if __ISO_C_VISIBLE >= 1999 #define va_copy(dest, src) \ - __builtin_va_copy((dest), (src)) + __va_copy(dest, src) #endif #define va_end(ap) \ ==== //depot/projects/netperf/sys/dev/drm/ati_pcigart.h#3 (text+ko) ==== @@ -26,7 +26,7 @@ * Authors: * Gareth Hughes * - * $FreeBSD: src/sys/dev/drm/ati_pcigart.h,v 1.2 2003/08/19 02:57:31 anholt Exp $ + * $FreeBSD: src/sys/dev/drm/ati_pcigart.h,v 1.3 2003/10/24 01:48:16 anholt Exp $ */ #include "dev/drm/drmP.h" @@ -60,7 +60,7 @@ } address = (long)contigmalloc((1 << ATI_PCIGART_TABLE_ORDER) * PAGE_SIZE, - DRM(M_DRM), M_WAITOK, 0ul, 0xfffffffful, PAGE_SIZE, 0); + DRM(M_DRM), M_NOWAIT, 0ul, 0xfffffffful, PAGE_SIZE, 0); if ( !address ) { DRM_ERROR( "cannot allocate PCI GART page!\n" ); goto done; ==== //depot/projects/netperf/sys/dev/drm/drm.h#3 (text+ko) ==== @@ -30,7 +30,7 @@ * Acknowledgements: * Dec 1999, Richard Henderson , move to generic cmpxchg. * - * $FreeBSD: src/sys/dev/drm/drm.h,v 1.4 2003/08/19 02:57:31 anholt Exp $ + * $FreeBSD: src/sys/dev/drm/drm.h,v 1.5 2003/10/24 01:48:16 anholt Exp $ */ #ifndef _DRM_H_ @@ -46,7 +46,7 @@ #define DRM_IOC_READWRITE _IOC_READ|_IOC_WRITE #define DRM_IOC(dir, group, nr, size) _IOC(dir, group, nr, size) #elif defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) -#if defined(__FreeBSD__) && defined(XFree86Server) +#if defined(__FreeBSD__) && defined(IN_MODULE) /* Prevent name collision when including sys/ioccom.h */ #undef ioctl #include @@ -79,10 +79,6 @@ #define DRM_DEV_GID 0 #endif -#if CONFIG_XFREE86_VERSION >= XFREE86_VERSION(4,1,0,0) -#define DRM_MAJOR 226 -#define DRM_MAX_MINOR 15 -#endif #define DRM_NAME "drm" /* Name in kernel, /dev, and /proc */ #define DRM_MIN_ORDER 5 /* At least 2^5 bytes = 32 bytes */ #define DRM_MAX_ORDER 22 /* Up to 2^22 bytes = 4MB */ @@ -409,6 +405,13 @@ unsigned long handle; /* Used for mapping / unmapping */ } drm_scatter_gather_t; +typedef struct drm_set_version { + int drm_di_major; + int drm_di_minor; + int drm_dd_major; + int drm_dd_minor; +} drm_set_version_t; + #define DRM_IOCTL_BASE 'd' #define DRM_IO(nr) _IO(DRM_IOCTL_BASE,nr) #define DRM_IOR(nr,type) _IOR(DRM_IOCTL_BASE,nr,type) @@ -422,6 +425,7 @@ #define DRM_IOCTL_GET_MAP DRM_IOWR(0x04, drm_map_t) #define DRM_IOCTL_GET_CLIENT DRM_IOWR(0x05, drm_client_t) #define DRM_IOCTL_GET_STATS DRM_IOR( 0x06, drm_stats_t) +#define DRM_IOCTL_SET_VERSION DRM_IOWR(0x07, drm_set_version_t) #define DRM_IOCTL_SET_UNIQUE DRM_IOW( 0x10, drm_unique_t) #define DRM_IOCTL_AUTH_MAGIC DRM_IOW( 0x11, drm_auth_t) ==== //depot/projects/netperf/sys/dev/drm/drmP.h#4 (text+ko) ==== @@ -28,7 +28,7 @@ * Rickard E. (Rik) Faith * Gareth Hughes * - * $FreeBSD: src/sys/dev/drm/drmP.h,v 1.6 2003/09/09 00:24:31 anholt Exp $ + * $FreeBSD: src/sys/dev/drm/drmP.h,v 1.7 2003/10/24 01:48:16 anholt Exp $ */ #ifndef _DRM_P_H_ @@ -50,8 +50,8 @@ #ifndef __HAVE_DMA #define __HAVE_DMA 0 #endif -#ifndef __HAVE_DMA_IRQ -#define __HAVE_DMA_IRQ 0 +#ifndef __HAVE_IRQ +#define __HAVE_IRQ 0 #endif #define DRM_DEBUG_CODE 0 /* Include debugging code (if > 1, then @@ -119,15 +119,19 @@ #define DRM_MIN(a,b) ((a)<(b)?(a):(b)) #define DRM_MAX(a,b) ((a)>(b)?(a):(b)) -#define DRM_LEFTCOUNT(x) (((x)->rp + (x)->count - (x)->wp) % ((x)->count + 1)) -#define DRM_BUFCOUNT(x) ((x)->count - DRM_LEFTCOUNT(x)) -#define DRM_WAITCOUNT(dev,idx) DRM_BUFCOUNT(&dev->queuelist[idx]->waitlist) - #define DRM_GET_PRIV_SAREA(_dev, _ctx, _map) do { \ (_map) = (_dev)->context_sareas[_ctx]; \ } while(0) +typedef struct drm_pci_id_list +{ + int vendor; + int device; + long driver_private; + char *name; +} drm_pci_id_list_t; + typedef struct drm_ioctl_desc { int (*func)(DRM_IOCTL_ARGS); int auth_needed; @@ -170,17 +174,6 @@ void *dev_private; /* Per-buffer private storage */ } drm_buf_t; - /* bufs is one longer than it has to be */ -typedef struct drm_waitlist { - int count; /* Number of possible buffers */ - drm_buf_t **bufs; /* List of pointers to buffers */ - drm_buf_t **rp; /* Read pointer */ - drm_buf_t **wp; /* Write pointer */ - drm_buf_t **end; /* End pointer */ - DRM_SPINTYPE read_lock; - DRM_SPINTYPE write_lock; -} drm_waitlist_t; - typedef struct drm_freelist { int initialized; /* Freelist in use */ atomic_t count; /* Number of free buffers */ @@ -188,7 +181,6 @@ int low_mark; /* Low water mark */ int high_mark; /* High water mark */ - DRM_SPINTYPE lock; } drm_freelist_t; typedef struct drm_buf_entry { @@ -224,10 +216,17 @@ typedef struct drm_lock_data { drm_hw_lock_t *hw_lock; /* Hardware lock */ DRMFILE filp; /* Unique identifier of holding process (NULL is kernel)*/ - wait_queue_head_t lock_queue; /* Queue of blocked processes */ + int lock_queue; /* Queue of blocked processes */ unsigned long lock_time; /* Time of last lock in jiffies */ } drm_lock_data_t; +/* This structure, in the drm_device_t, is always initialized while the device + * is open. dev->dma_lock protects the incrementing of dev->buf_use, which + * when set marks that no further bufs may be allocated until device teardown + * occurs (when the last open of the device has closed). The high/low + * watermarks of bufs are only touched by the X Server, and thus not + * concurrently accessed, so no locking is needed. + */ typedef struct drm_device_dma { drm_buf_entry_t bufs[DRM_MAX_ORDER+1]; int buf_count; @@ -319,8 +318,15 @@ int flags; /* Flags to open(2) */ /* Locks */ - DRM_SPINTYPE count_lock; /* For open_count, buf_use, buf_alloc */ - struct lock dev_lock; /* For others */ +#if defined(__FreeBSD__) && __FreeBSD_version > 500000 +#if __HAVE_DMA + struct mtx dma_lock; /* protects dev->dma */ +#endif +#if __HAVE_IRQ + struct mtx irq_lock; /* protects irq condition checks */ +#endif + struct mtx dev_lock; /* protects everything else */ +#endif /* Usage Counters */ int open_count; /* Outstanding files open */ int buf_use; /* Buffers in use -- cannot alloc */ @@ -335,8 +341,8 @@ drm_file_list_t files; drm_magic_head_t magiclist[DRM_HASH_SIZE]; - /* Memory management */ - drm_map_list_t *maplist; /* Linked list of regions */ + /* Linked list of mappable regions. Protected by dev_lock */ + drm_map_list_t *maplist; drm_local_map_t **context_sareas; int max_context; @@ -357,19 +363,14 @@ #endif void *irqh; /* Handle from bus_setup_intr */ atomic_t context_flag; /* Context swapping flag */ - struct callout timer; /* Timer for delaying ctx switch */ int last_context; /* Last current context */ #if __FreeBSD_version >= 400005 struct task task; #endif #if __HAVE_VBL_IRQ - wait_queue_head_t vbl_queue; /* vbl wait channel */ + int vbl_queue; /* vbl wait channel */ atomic_t vbl_received; -#if 0 /* vbl signals are untested */ - struct drm_vbl_sig_list vbl_sig_list; - DRM_SPINTYPE vbl_lock; #endif -#endif #ifdef __FreeBSD__ struct sigio *buf_sigio; /* Processes waiting for SIGIO */ @@ -390,14 +391,6 @@ extern int DRM(flags); - /* Authentication (drm_auth.h) */ -extern int DRM(add_magic)(drm_device_t *dev, drm_file_t *priv, - drm_magic_t magic); -extern int DRM(remove_magic)(drm_device_t *dev, drm_magic_t magic); - - /* Driver support (drm_drv.h) */ -extern int DRM(version)( DRM_IOCTL_ARGS ); - /* Memory management support (drm_memory.h) */ extern void DRM(mem_init)(void); extern void DRM(mem_uninit)(void); @@ -408,6 +401,8 @@ extern void DRM(free)(void *pt, size_t size, int area); extern void *DRM(ioremap)(drm_device_t *dev, drm_local_map_t *map); extern void DRM(ioremapfree)(drm_local_map_t *map); +extern int DRM(mtrr_add)(unsigned long offset, size_t size, int flags); +extern int DRM(mtrr_del)(unsigned long offset, size_t size, int flags); #if __REALLY_HAVE_AGP extern agp_memory *DRM(alloc_agp)(int pages, u32 type); @@ -445,26 +440,21 @@ extern void DRM(dma_takedown)(drm_device_t *dev); extern void DRM(free_buffer)(drm_device_t *dev, drm_buf_t *buf); extern void DRM(reclaim_buffers)(drm_device_t *dev, DRMFILE filp); -#if __HAVE_DMA_IRQ +#endif + +#if __HAVE_IRQ + /* IRQ support (drm_irq.h) */ extern int DRM(irq_install)( drm_device_t *dev, int irq ); extern int DRM(irq_uninstall)( drm_device_t *dev ); -extern irqreturn_t DRM(dma_service)( DRM_IRQ_ARGS ); +extern irqreturn_t DRM(irq_handler)( DRM_IRQ_ARGS ); extern void DRM(driver_irq_preinstall)( drm_device_t *dev ); extern void DRM(driver_irq_postinstall)( drm_device_t *dev ); extern void DRM(driver_irq_uninstall)( drm_device_t *dev ); -#if __HAVE_DMA_IRQ_BH -extern void DRM(dma_immediate_bh)( DRM_TASKQUEUE_ARGS ); +#if __HAVE_IRQ_BH +extern void DRM(irq_immediate_bh)( DRM_TASKQUEUE_ARGS ); #endif #endif - /* Buffer list support (drm_lists.h) */ -#if __HAVE_DMA_WAITLIST -extern int DRM(waitlist_create)(drm_waitlist_t *bl, int count); -extern int DRM(waitlist_destroy)(drm_waitlist_t *bl); -extern int DRM(waitlist_put)(drm_waitlist_t *bl, drm_buf_t *buf); -extern drm_buf_t *DRM(waitlist_get)(drm_waitlist_t *bl); -#endif -#endif /* __HAVE_DMA */ #if __HAVE_VBL_IRQ extern int DRM(vblank_wait)(drm_device_t *dev, unsigned int *vbl_seq); extern void DRM(vbl_send_signals)( drm_device_t *dev ); @@ -499,6 +489,8 @@ /* Locking IOCTL support (drm_drv.h) */ extern int DRM(lock)(DRM_IOCTL_ARGS); extern int DRM(unlock)(DRM_IOCTL_ARGS); +extern int DRM(version)( DRM_IOCTL_ARGS ); +extern int DRM(setversion)( DRM_IOCTL_ARGS ); /* Misc. IOCTL support (drm_ioctl.h) */ extern int DRM(irq_busid)(DRM_IOCTL_ARGS); @@ -539,8 +531,8 @@ extern int DRM(mapbufs)(DRM_IOCTL_ARGS); #endif -/* DMA support (drm_dma.h) */ -#if __HAVE_DMA +/* IRQ support (drm_irq.h) */ +#if __HAVE_IRQ || __HAVE_DMA extern int DRM(control)(DRM_IOCTL_ARGS); #endif #if __HAVE_VBL_IRQ ==== //depot/projects/netperf/sys/dev/drm/drm_auth.h#3 (text+ko) ==== @@ -28,7 +28,7 @@ * Rickard E. (Rik) Faith * Gareth Hughes * - * $FreeBSD: src/sys/dev/drm/drm_auth.h,v 1.4 2003/08/19 02:57:31 anholt Exp $ + * $FreeBSD: src/sys/dev/drm/drm_auth.h,v 1.5 2003/10/24 01:48:16 anholt Exp $ */ #include "dev/drm/drmP.h" @@ -44,18 +44,18 @@ drm_magic_entry_t *pt; int hash = DRM(hash_magic)(magic); - DRM_LOCK; + DRM_LOCK(); for (pt = dev->magiclist[hash].head; pt; pt = pt->next) { if (pt->magic == magic) { retval = pt->priv; break; } } - DRM_UNLOCK; + DRM_UNLOCK(); return retval; } -int DRM(add_magic)(drm_device_t *dev, drm_file_t *priv, drm_magic_t magic) +static int DRM(add_magic)(drm_device_t *dev, drm_file_t *priv, drm_magic_t magic) { int hash; drm_magic_entry_t *entry; @@ -70,7 +70,7 @@ entry->priv = priv; entry->next = NULL; - DRM_LOCK; + DRM_LOCK(); if (dev->magiclist[hash].tail) { dev->magiclist[hash].tail->next = entry; dev->magiclist[hash].tail = entry; @@ -78,12 +78,12 @@ dev->magiclist[hash].head = entry; dev->magiclist[hash].tail = entry; } - DRM_UNLOCK; + DRM_UNLOCK(); return 0; } -int DRM(remove_magic)(drm_device_t *dev, drm_magic_t magic) +static int DRM(remove_magic)(drm_device_t *dev, drm_magic_t magic) { drm_magic_entry_t *prev = NULL; drm_magic_entry_t *pt; @@ -92,7 +92,7 @@ DRM_DEBUG("%d\n", magic); hash = DRM(hash_magic)(magic); - DRM_LOCK; + DRM_LOCK(); for (pt = dev->magiclist[hash].head; pt; prev = pt, pt = pt->next) { if (pt->magic == magic) { if (dev->magiclist[hash].head == pt) { @@ -104,11 +104,11 @@ if (prev) { prev->next = pt->next; } - DRM_UNLOCK; + DRM_UNLOCK(); return 0; } } - DRM_UNLOCK; + DRM_UNLOCK(); DRM(free)(pt, sizeof(*pt), DRM_MEM_MAGIC); return DRM_ERR(EINVAL); @@ -117,9 +117,11 @@ int DRM(getmagic)(DRM_IOCTL_ARGS) { static drm_magic_t sequence = 0; - drm_auth_t auth; + drm_auth_t auth; + drm_file_t *priv; DRM_DEVICE; - DRM_PRIV; + + DRM_GET_PRIV_WITH_RETURN(priv, filp); /* Find unique magic */ if (priv->magic) { @@ -153,6 +155,7 @@ DRM_COPY_FROM_USER_IOCTL(auth, (drm_auth_t *)data, sizeof(auth)); DRM_DEBUG("%u\n", auth.magic); + if ((file = DRM(find_file)(dev, auth.magic))) { file->authenticated = 1; DRM(remove_magic)(dev, auth.magic); ==== //depot/projects/netperf/sys/dev/drm/drm_bufs.h#3 (text+ko) ==== @@ -28,7 +28,7 @@ * Rickard E. (Rik) Faith * Gareth Hughes * - * $FreeBSD: src/sys/dev/drm/drm_bufs.h,v 1.6 2003/08/19 02:57:31 anholt Exp $ + * $FreeBSD: src/sys/dev/drm/drm_bufs.h,v 1.7 2003/10/24 01:48:16 anholt Exp $ */ #include "dev/drm/drmP.h" @@ -116,25 +116,12 @@ #if __REALLY_HAVE_MTRR if ( map->type == _DRM_FRAME_BUFFER || (map->flags & _DRM_WRITE_COMBINING) ) { -#ifdef __FreeBSD__ - int retcode = 0, act; - struct mem_range_desc mrdesc; - mrdesc.mr_base = map->offset; - mrdesc.mr_len = map->size; - mrdesc.mr_flags = MDF_WRITECOMBINE; - act = MEMRANGE_SET_UPDATE; - bcopy(DRIVER_NAME, &mrdesc.mr_owner, strlen(DRIVER_NAME)); - retcode = mem_range_attr_set(&mrdesc, &act); - map->mtrr=1; -#elif defined __NetBSD__ - struct mtrr mtrrmap; - int one = 1; - mtrrmap.base = map->offset; - mtrrmap.len = map->size; - mtrrmap.type = MTRR_TYPE_WC; - mtrrmap.flags = MTRR_VALID; - map->mtrr = mtrr_set( &mtrrmap, &one, p, MTRR_GETSET_KERNEL ); -#endif + int mtrr; + + mtrr = DRM(mtrr_add)(map->offset, map->size, + DRM_MTRR_WC); + if (mtrr == 0) + map->mtrr = 1; } #endif /* __REALLY_HAVE_MTRR */ DRM_IOREMAP(map, dev); @@ -172,17 +159,16 @@ return DRM_ERR(EINVAL); } - list = DRM(alloc)(sizeof(*list), DRM_MEM_MAPS); - if(!list) { + list = DRM(calloc)(1, sizeof(*list), DRM_MEM_MAPS); + if (list == NULL) { DRM(free)(map, sizeof(*map), DRM_MEM_MAPS); return DRM_ERR(EINVAL); } - memset(list, 0, sizeof(*list)); list->map = map; - DRM_LOCK; + DRM_LOCK(); TAILQ_INSERT_TAIL(dev->maplist, list, link); - DRM_UNLOCK; + DRM_UNLOCK(); request.offset = map->offset; request.size = map->size; @@ -211,69 +197,49 @@ drm_map_list_entry_t *list; drm_local_map_t *map; drm_map_t request; - int found_maps = 0; DRM_COPY_FROM_USER_IOCTL( request, (drm_map_t *)data, sizeof(request) ); - DRM_LOCK; + DRM_LOCK(); TAILQ_FOREACH(list, dev->maplist, link) { map = list->map; - if(map->handle == request.handle && - map->flags & _DRM_REMOVABLE) break; + if (map->handle == request.handle && + map->flags & _DRM_REMOVABLE) + break; } - /* List has wrapped around to the head pointer, or its empty we didn't - * find anything. - */ - if(list == NULL) { - DRM_UNLOCK; + /* No match found. */ + if (list == NULL) { + DRM_UNLOCK(); return DRM_ERR(EINVAL); } TAILQ_REMOVE(dev->maplist, list, link); + DRM_UNLOCK(); + DRM(free)(list, sizeof(*list), DRM_MEM_MAPS); - - if(!found_maps) { - switch (map->type) { - case _DRM_REGISTERS: - case _DRM_FRAME_BUFFER: + switch (map->type) { + case _DRM_REGISTERS: + case _DRM_FRAME_BUFFER: #if __REALLY_HAVE_MTRR - if (map->mtrr >= 0) { - int retcode; -#ifdef __FreeBSD__ - int act; - struct mem_range_desc mrdesc; - mrdesc.mr_base = map->offset; - mrdesc.mr_len = map->size; - mrdesc.mr_flags = MDF_WRITECOMBINE; - act = MEMRANGE_SET_REMOVE; - bcopy(DRIVER_NAME, &mrdesc.mr_owner, strlen(DRIVER_NAME)); - retcode = mem_range_attr_set(&mrdesc, &act); -#elif defined __NetBSD__ - struct mtrr mtrrmap; - int one = 1; - mtrrmap.base = map->offset; - mtrrmap.len = map->size; - mtrrmap.type = 0; - mtrrmap.flags = 0; - mtrrmap.owner = p->p_pid; - retcode = mtrr_set( &mtrrmap, &one, p, MTRR_GETSET_KERNEL); - DRM_DEBUG("mtrr_del = %d\n", retcode); + if (map->mtrr >= 0) { + int __unused mtrr; + + mtrr = DRM(mtrr_del)(map->offset, map->size, + DRM_MTRR_WC); + DRM_DEBUG("mtrr_del = %d\n", mtrr); + } #endif - } -#endif - DRM(ioremapfree)( map ); - break; - case _DRM_SHM: - DRM(free)( map->handle, map->size, DRM_MEM_SAREA ); - break; - case _DRM_AGP: - case _DRM_SCATTER_GATHER: - break; - } - DRM(free)(map, sizeof(*map), DRM_MEM_MAPS); + DRM(ioremapfree)(map); + break; + case _DRM_SHM: + DRM(free)(map->handle, map->size, DRM_MEM_SAREA); + break; + case _DRM_AGP: + case _DRM_SCATTER_GATHER: + break; } - DRM_UNLOCK; + DRM(free)(map, sizeof(*map), DRM_MEM_MAPS); return 0; } @@ -355,20 +321,11 @@ DRM_DEBUG( "page_order: %d\n", page_order ); DRM_DEBUG( "total: %d\n", total ); - if ( order < DRM_MIN_ORDER || order > DRM_MAX_ORDER ) - return DRM_ERR(EINVAL); - - DRM_LOCK; entry = &dma->bufs[order]; - if ( entry->buf_count ) { - DRM_UNLOCK; - return DRM_ERR(ENOMEM); /* May only call once for each order */ - } entry->buflist = DRM(alloc)( count * sizeof(*entry->buflist), DRM_MEM_BUFS ); if ( !entry->buflist ) { - DRM_UNLOCK; return DRM_ERR(ENOMEM); } memset( entry->buflist, 0, count * sizeof(*entry->buflist) ); @@ -393,16 +350,14 @@ buf->filp = NULL; buf->dev_priv_size = sizeof(DRIVER_BUF_PRIV_T); - buf->dev_private = DRM(alloc)( sizeof(DRIVER_BUF_PRIV_T), - DRM_MEM_BUFS ); - if(!buf->dev_private) { + buf->dev_private = DRM(calloc)(1, buf->dev_priv_size, + DRM_MEM_BUFS); + if (buf->dev_private == NULL) { /* Set count correctly so we free the proper amount. */ entry->buf_count = count; DRM(cleanup_buf_error)(dev, entry); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } - memset( buf->dev_private, 0, buf->dev_priv_size ); offset += alignment; entry->buf_count++; @@ -416,10 +371,9 @@ (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), DRM_MEM_BUFS ); - if(!temp_buflist) { + if (temp_buflist == NULL) { /* Free the entry because it isn't valid */ DRM(cleanup_buf_error)(dev, entry); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } dma->buflist = temp_buflist; @@ -434,8 +388,6 @@ DRM_DEBUG( "dma->buf_count : %d\n", dma->buf_count ); DRM_DEBUG( "entry->buf_count : %d\n", entry->buf_count ); - DRM_UNLOCK; - request->count = entry->buf_count; request->size = size; @@ -473,20 +425,12 @@ DRM_DEBUG( "count=%d, size=%d (%d), order=%d\n", request->count, request->size, size, order ); - if ( order < DRM_MIN_ORDER || order > DRM_MAX_ORDER ) - return DRM_ERR(EINVAL); - alignment = (request->flags & _DRM_PAGE_ALIGN) ? round_page(size) : size; page_order = order - PAGE_SHIFT > 0 ? order - PAGE_SHIFT : 0; total = PAGE_SIZE << page_order; - DRM_LOCK; entry = &dma->bufs[order]; - if ( entry->buf_count ) { - DRM_UNLOCK; - return DRM_ERR(ENOMEM); /* May only call once for each order */ - } entry->buflist = DRM(alloc)(count * sizeof(*entry->buflist), DRM_MEM_BUFS); @@ -509,7 +453,6 @@ DRM_MEM_SEGS); DRM(free)(entry->seglist_bus, count * sizeof(*entry->seglist_bus), DRM_MEM_SEGS); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } @@ -538,7 +481,6 @@ DRM(free)(temp_pagelist, (dma->page_count + (count << page_order)) * sizeof(*dma->pagelist), DRM_MEM_PAGES); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } @@ -577,7 +519,6 @@ DRM(free)(temp_pagelist, (dma->page_count + (count << page_order)) * sizeof(*dma->pagelist), DRM_MEM_PAGES ); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } bzero(buf->dev_private, buf->dev_priv_size); @@ -599,7 +540,6 @@ DRM(free)(temp_pagelist, (dma->page_count + (count << page_order)) * sizeof(*dma->pagelist), DRM_MEM_PAGES); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } dma->buflist = temp_buflist; @@ -620,8 +560,6 @@ dma->page_count += entry->seg_count << page_order; dma->byte_count += PAGE_SIZE * (entry->seg_count << page_order); - DRM_UNLOCK; - request->count = entry->buf_count; request->size = size; @@ -668,23 +606,12 @@ DRM_DEBUG( "page_order: %d\n", page_order ); DRM_DEBUG( "total: %d\n", total ); - if ( order < DRM_MIN_ORDER || order > DRM_MAX_ORDER ) - return DRM_ERR(EINVAL); - - DRM_LOCK; entry = &dma->bufs[order]; - if ( entry->buf_count ) { - DRM_UNLOCK; - return DRM_ERR(ENOMEM); /* May only call once for each order */ - } - entry->buflist = DRM(alloc)( count * sizeof(*entry->buflist), - DRM_MEM_BUFS ); - if ( !entry->buflist ) { - DRM_UNLOCK; + entry->buflist = DRM(calloc)(1, count * sizeof(*entry->buflist), + DRM_MEM_BUFS); + if (entry->buflist == NULL) return DRM_ERR(ENOMEM); - } - memset( entry->buflist, 0, count * sizeof(*entry->buflist) ); entry->buf_size = size; entry->page_order = page_order; @@ -706,18 +633,15 @@ buf->filp = NULL; buf->dev_priv_size = sizeof(DRIVER_BUF_PRIV_T); - buf->dev_private = DRM(alloc)( sizeof(DRIVER_BUF_PRIV_T), - DRM_MEM_BUFS ); - if(!buf->dev_private) { + buf->dev_private = DRM(calloc)(1, buf->dev_priv_size, + DRM_MEM_BUFS); + if (buf->dev_private == NULL) { /* Set count correctly so we free the proper amount. */ entry->buf_count = count; DRM(cleanup_buf_error)(dev, entry); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } - memset( buf->dev_private, 0, buf->dev_priv_size ); - DRM_DEBUG( "buffer %d @ %p\n", entry->buf_count, buf->address ); @@ -733,10 +657,9 @@ (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), DRM_MEM_BUFS ); - if(!temp_buflist) { + if (temp_buflist == NULL) { /* Free the entry because it isn't valid */ DRM(cleanup_buf_error)(dev, entry); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } dma->buflist = temp_buflist; @@ -751,8 +674,6 @@ DRM_DEBUG( "dma->buf_count : %d\n", dma->buf_count ); DRM_DEBUG( "entry->buf_count : %d\n", entry->buf_count ); - DRM_UNLOCK; - request->count = entry->buf_count; request->size = size; @@ -767,26 +688,29 @@ DRM_DEVICE; drm_buf_desc_t request; int err; + int order; DRM_COPY_FROM_USER_IOCTL( request, (drm_buf_desc_t *)data, sizeof(request) ); - if (dev->dma == NULL) + if (request.count < 0 || request.count > 4096) return DRM_ERR(EINVAL); - if (request.count < 0 || request.count > 4096) + order = DRM(order)(request.size); + if (order < DRM_MIN_ORDER || order > DRM_MAX_ORDER) return DRM_ERR(EINVAL); - DRM_SPINLOCK(&dev->count_lock); - if (dev->buf_use) { - DRM_SPINUNLOCK(&dev->count_lock); + DRM_SPINLOCK(&dev->dma_lock); + /* No more allocations after first buffer-using ioctl. */ + if (dev->buf_use != 0) { + DRM_SPINUNLOCK(&dev->dma_lock); return DRM_ERR(EBUSY); } - /* dev->buf_alloc acts as a lock to prevent infobufs/mapbufs from - * trying to read from the dma->bufs while buffers are being allocated */ - dev->buf_alloc++; - DRM_SPINUNLOCK(&dev->count_lock); + /* No more than one allocation per order */ + if (dev->dma->bufs[order].buf_count != 0) { + DRM_SPINUNLOCK(&dev->dma_lock); + return DRM_ERR(ENOMEM); + } - #if __REALLY_HAVE_AGP if ( request.flags & _DRM_AGP_BUFFER ) err = DRM(addbufs_agp)(dev, &request); @@ -802,13 +726,10 @@ #else err = DRM_ERR(EINVAL); #endif + DRM_SPINUNLOCK(&dev->dma_lock); DRM_COPY_TO_USER_IOCTL((drm_buf_desc_t *)data, request, sizeof(request)); - DRM_SPINLOCK(&dev->count_lock); - dev->buf_alloc--; - DRM_SPINUNLOCK(&dev->count_lock); - return err; } @@ -819,18 +740,13 @@ drm_buf_info_t request; int i; int count; + int retcode = 0; - if ( !dma ) return DRM_ERR(EINVAL); + DRM_COPY_FROM_USER_IOCTL( request, (drm_buf_info_t *)data, sizeof(request) ); - DRM_SPINLOCK( &dev->count_lock ); - if (dev->buf_alloc != 0) { - DRM_SPINUNLOCK( &dev->count_lock ); - return DRM_ERR(EBUSY); - } + DRM_SPINLOCK(&dev->dma_lock); ++dev->buf_use; /* Can't allocate more after this call */ - DRM_SPINUNLOCK( &dev->count_lock ); - - DRM_COPY_FROM_USER_IOCTL( request, (drm_buf_info_t *)data, sizeof(request) ); + DRM_SPINUNLOCK(&dev->dma_lock); for ( i = 0, count = 0 ; i < DRM_MAX_ORDER + 1 ; i++ ) { if ( dma->bufs[i].buf_count ) ++count; @@ -849,8 +765,10 @@ from.high_mark = dma->bufs[i].freelist.high_mark; if (DRM_COPY_TO_USER(&request.list[count], &from, - sizeof(drm_buf_desc_t)) != 0) - return DRM_ERR(EFAULT); + sizeof(drm_buf_desc_t)) != 0) { + retcode = DRM_ERR(EFAULT); + break; + } DRM_DEBUG( "%d %d %d %d %d\n", i, @@ -866,7 +784,7 @@ DRM_COPY_TO_USER_IOCTL( (drm_buf_info_t *)data, request, sizeof(request) ); - return 0; + return retcode; } int DRM(markbufs)( DRM_IOCTL_ARGS ) @@ -875,26 +793,28 @@ drm_device_dma_t *dma = dev->dma; drm_buf_desc_t request; int order; - drm_buf_entry_t *entry; - - if ( !dma ) return DRM_ERR(EINVAL); DRM_COPY_FROM_USER_IOCTL( request, (drm_buf_desc_t *)data, sizeof(request) ); DRM_DEBUG( "%d, %d, %d\n", request.size, request.low_mark, request.high_mark ); - order = DRM(order)( request.size ); - if ( order < DRM_MIN_ORDER || order > DRM_MAX_ORDER ) + + + order = DRM(order)(request.size); + if (order < DRM_MIN_ORDER || order > DRM_MAX_ORDER || + request.low_mark < 0 || request.high_mark < 0) { return DRM_ERR(EINVAL); - entry = &dma->bufs[order]; + } - if ( request.low_mark < 0 || request.low_mark > entry->buf_count ) + DRM_SPINLOCK(&dev->dma_lock); + if (request.low_mark > dma->bufs[order].buf_count || + request.high_mark > dma->bufs[order].buf_count) { return DRM_ERR(EINVAL); - if ( request.high_mark < 0 || request.high_mark > entry->buf_count ) - return DRM_ERR(EINVAL); + } - entry->freelist.low_mark = request.low_mark; - entry->freelist.high_mark = request.high_mark; + dma->bufs[order].freelist.low_mark = request.low_mark; + dma->bufs[order].freelist.high_mark = request.high_mark; + DRM_SPINUNLOCK(&dev->dma_lock); return 0; } @@ -907,32 +827,36 @@ int i; int idx; drm_buf_t *buf; - - if ( !dma ) return DRM_ERR(EINVAL); + int retcode = 0; DRM_COPY_FROM_USER_IOCTL( request, (drm_buf_free_t *)data, sizeof(request) ); DRM_DEBUG( "%d\n", request.count ); + + DRM_SPINLOCK(&dev->dma_lock); for ( i = 0 ; i < request.count ; i++ ) { - if ( DRM_COPY_FROM_USER( &idx, - &request.list[i], - sizeof(idx) ) ) - return DRM_ERR(EFAULT); + if (DRM_COPY_FROM_USER(&idx, &request.list[i], sizeof(idx))) { + retcode = DRM_ERR(EFAULT); + break; + } if ( idx < 0 || idx >= dma->buf_count ) { DRM_ERROR( "Index %d (of %d max)\n", >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Oct 23 20:46:30 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0A93C16A4C0; Thu, 23 Oct 2003 20:46:30 -0700 (PDT) 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 8FB3816A4EE for ; Thu, 23 Oct 2003 20:46:29 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 946E543FF5 for ; Thu, 23 Oct 2003 20:46:27 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9O3kRXJ015910 for ; Thu, 23 Oct 2003 20:46:27 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9O3kQiV015907 for perforce@freebsd.org; Thu, 23 Oct 2003 20:46:26 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 20:46:26 -0700 (PDT) Message-Id: <200310240346.h9O3kQiV015907@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40364 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 03:46:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=40364 Change 40364 by sam@sam_ebb on 2003/10/23 20:46:24 IFC Affected files ... .. //depot/projects/hostcache/sys/amd64/include/stdarg.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/ati_pcigart.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drmP.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_auth.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_bufs.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_context.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_dma.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_drv.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_fops.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_ioctl.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_irq.h#1 branch .. //depot/projects/hostcache/sys/dev/drm/drm_memory.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_memory_debug.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_os_freebsd.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_pci.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_sysctl.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/drm_vm.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/mga.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/mga_dma.c#2 integrate .. //depot/projects/hostcache/sys/dev/drm/mga_drv.c#2 integrate .. //depot/projects/hostcache/sys/dev/drm/mga_irq.c#2 integrate .. //depot/projects/hostcache/sys/dev/drm/r128.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/r128_cce.c#2 integrate .. //depot/projects/hostcache/sys/dev/drm/r128_drv.c#2 integrate .. //depot/projects/hostcache/sys/dev/drm/r128_drv.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/r128_irq.c#2 integrate .. //depot/projects/hostcache/sys/dev/drm/r128_state.c#2 integrate .. //depot/projects/hostcache/sys/dev/drm/radeon.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/radeon_cp.c#2 integrate .. //depot/projects/hostcache/sys/dev/drm/radeon_drv.c#2 integrate .. //depot/projects/hostcache/sys/dev/drm/radeon_irq.c#2 integrate .. //depot/projects/hostcache/sys/dev/drm/sis.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/sis_drv.c#2 integrate .. //depot/projects/hostcache/sys/dev/drm/sis_mm.c#2 integrate .. //depot/projects/hostcache/sys/dev/drm/tdfx.h#2 integrate .. //depot/projects/hostcache/sys/dev/drm/tdfx_drv.c#2 integrate .. //depot/projects/hostcache/sys/ia64/disasm/disasm.h#2 integrate .. //depot/projects/hostcache/sys/ia64/ia64/unaligned.c#2 integrate .. //depot/projects/hostcache/sys/kern/kern_prot.c#2 integrate .. //depot/projects/hostcache/sys/kern/vfs_bio.c#2 integrate .. //depot/projects/hostcache/sys/netinet/ip_mroute.c#2 integrate .. //depot/projects/hostcache/sys/netinet6/in6_src.c#2 integrate .. //depot/projects/hostcache/sys/sys/proc.h#2 integrate .. //depot/projects/hostcache/sys/ufs/ffs/ffs_snapshot.c#2 integrate .. //depot/projects/hostcache/sys/ufs/ffs/ffs_softdep.c#2 integrate Differences ... ==== //depot/projects/hostcache/sys/amd64/include/stdarg.h#2 (text+ko) ==== @@ -25,7 +25,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/stdarg.h,v 1.5 2003/05/10 00:55:15 peter Exp $ + * $FreeBSD: src/sys/amd64/include/stdarg.h,v 1.6 2003/10/24 02:50:39 peter Exp $ */ #ifndef _MACHINE_STDARG_H_ @@ -46,9 +46,12 @@ #define va_arg(ap, type) \ __builtin_va_arg((ap), type) +#define __va_copy(dest, src) \ + __builtin_va_copy((dest), (src)) + #if __ISO_C_VISIBLE >= 1999 #define va_copy(dest, src) \ - __builtin_va_copy((dest), (src)) + __va_copy(dest, src) #endif #define va_end(ap) \ ==== //depot/projects/hostcache/sys/dev/drm/ati_pcigart.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ * Authors: * Gareth Hughes * - * $FreeBSD: src/sys/dev/drm/ati_pcigart.h,v 1.2 2003/08/19 02:57:31 anholt Exp $ + * $FreeBSD: src/sys/dev/drm/ati_pcigart.h,v 1.3 2003/10/24 01:48:16 anholt Exp $ */ #include "dev/drm/drmP.h" @@ -60,7 +60,7 @@ } address = (long)contigmalloc((1 << ATI_PCIGART_TABLE_ORDER) * PAGE_SIZE, - DRM(M_DRM), M_WAITOK, 0ul, 0xfffffffful, PAGE_SIZE, 0); + DRM(M_DRM), M_NOWAIT, 0ul, 0xfffffffful, PAGE_SIZE, 0); if ( !address ) { DRM_ERROR( "cannot allocate PCI GART page!\n" ); goto done; ==== //depot/projects/hostcache/sys/dev/drm/drm.h#2 (text+ko) ==== @@ -30,7 +30,7 @@ * Acknowledgements: * Dec 1999, Richard Henderson , move to generic cmpxchg. * - * $FreeBSD: src/sys/dev/drm/drm.h,v 1.4 2003/08/19 02:57:31 anholt Exp $ + * $FreeBSD: src/sys/dev/drm/drm.h,v 1.5 2003/10/24 01:48:16 anholt Exp $ */ #ifndef _DRM_H_ @@ -46,7 +46,7 @@ #define DRM_IOC_READWRITE _IOC_READ|_IOC_WRITE #define DRM_IOC(dir, group, nr, size) _IOC(dir, group, nr, size) #elif defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) -#if defined(__FreeBSD__) && defined(XFree86Server) +#if defined(__FreeBSD__) && defined(IN_MODULE) /* Prevent name collision when including sys/ioccom.h */ #undef ioctl #include @@ -79,10 +79,6 @@ #define DRM_DEV_GID 0 #endif -#if CONFIG_XFREE86_VERSION >= XFREE86_VERSION(4,1,0,0) -#define DRM_MAJOR 226 -#define DRM_MAX_MINOR 15 -#endif #define DRM_NAME "drm" /* Name in kernel, /dev, and /proc */ #define DRM_MIN_ORDER 5 /* At least 2^5 bytes = 32 bytes */ #define DRM_MAX_ORDER 22 /* Up to 2^22 bytes = 4MB */ @@ -409,6 +405,13 @@ unsigned long handle; /* Used for mapping / unmapping */ } drm_scatter_gather_t; +typedef struct drm_set_version { + int drm_di_major; + int drm_di_minor; + int drm_dd_major; + int drm_dd_minor; +} drm_set_version_t; + #define DRM_IOCTL_BASE 'd' #define DRM_IO(nr) _IO(DRM_IOCTL_BASE,nr) #define DRM_IOR(nr,type) _IOR(DRM_IOCTL_BASE,nr,type) @@ -422,6 +425,7 @@ #define DRM_IOCTL_GET_MAP DRM_IOWR(0x04, drm_map_t) #define DRM_IOCTL_GET_CLIENT DRM_IOWR(0x05, drm_client_t) #define DRM_IOCTL_GET_STATS DRM_IOR( 0x06, drm_stats_t) +#define DRM_IOCTL_SET_VERSION DRM_IOWR(0x07, drm_set_version_t) #define DRM_IOCTL_SET_UNIQUE DRM_IOW( 0x10, drm_unique_t) #define DRM_IOCTL_AUTH_MAGIC DRM_IOW( 0x11, drm_auth_t) ==== //depot/projects/hostcache/sys/dev/drm/drmP.h#2 (text+ko) ==== @@ -28,7 +28,7 @@ * Rickard E. (Rik) Faith * Gareth Hughes * - * $FreeBSD: src/sys/dev/drm/drmP.h,v 1.6 2003/09/09 00:24:31 anholt Exp $ + * $FreeBSD: src/sys/dev/drm/drmP.h,v 1.7 2003/10/24 01:48:16 anholt Exp $ */ #ifndef _DRM_P_H_ @@ -50,8 +50,8 @@ #ifndef __HAVE_DMA #define __HAVE_DMA 0 #endif -#ifndef __HAVE_DMA_IRQ -#define __HAVE_DMA_IRQ 0 +#ifndef __HAVE_IRQ +#define __HAVE_IRQ 0 #endif #define DRM_DEBUG_CODE 0 /* Include debugging code (if > 1, then @@ -119,15 +119,19 @@ #define DRM_MIN(a,b) ((a)<(b)?(a):(b)) #define DRM_MAX(a,b) ((a)>(b)?(a):(b)) -#define DRM_LEFTCOUNT(x) (((x)->rp + (x)->count - (x)->wp) % ((x)->count + 1)) -#define DRM_BUFCOUNT(x) ((x)->count - DRM_LEFTCOUNT(x)) -#define DRM_WAITCOUNT(dev,idx) DRM_BUFCOUNT(&dev->queuelist[idx]->waitlist) - #define DRM_GET_PRIV_SAREA(_dev, _ctx, _map) do { \ (_map) = (_dev)->context_sareas[_ctx]; \ } while(0) +typedef struct drm_pci_id_list +{ + int vendor; + int device; + long driver_private; + char *name; +} drm_pci_id_list_t; + typedef struct drm_ioctl_desc { int (*func)(DRM_IOCTL_ARGS); int auth_needed; @@ -170,17 +174,6 @@ void *dev_private; /* Per-buffer private storage */ } drm_buf_t; - /* bufs is one longer than it has to be */ -typedef struct drm_waitlist { - int count; /* Number of possible buffers */ - drm_buf_t **bufs; /* List of pointers to buffers */ - drm_buf_t **rp; /* Read pointer */ - drm_buf_t **wp; /* Write pointer */ - drm_buf_t **end; /* End pointer */ - DRM_SPINTYPE read_lock; - DRM_SPINTYPE write_lock; -} drm_waitlist_t; - typedef struct drm_freelist { int initialized; /* Freelist in use */ atomic_t count; /* Number of free buffers */ @@ -188,7 +181,6 @@ int low_mark; /* Low water mark */ int high_mark; /* High water mark */ - DRM_SPINTYPE lock; } drm_freelist_t; typedef struct drm_buf_entry { @@ -224,10 +216,17 @@ typedef struct drm_lock_data { drm_hw_lock_t *hw_lock; /* Hardware lock */ DRMFILE filp; /* Unique identifier of holding process (NULL is kernel)*/ - wait_queue_head_t lock_queue; /* Queue of blocked processes */ + int lock_queue; /* Queue of blocked processes */ unsigned long lock_time; /* Time of last lock in jiffies */ } drm_lock_data_t; +/* This structure, in the drm_device_t, is always initialized while the device + * is open. dev->dma_lock protects the incrementing of dev->buf_use, which + * when set marks that no further bufs may be allocated until device teardown + * occurs (when the last open of the device has closed). The high/low + * watermarks of bufs are only touched by the X Server, and thus not + * concurrently accessed, so no locking is needed. + */ typedef struct drm_device_dma { drm_buf_entry_t bufs[DRM_MAX_ORDER+1]; int buf_count; @@ -319,8 +318,15 @@ int flags; /* Flags to open(2) */ /* Locks */ - DRM_SPINTYPE count_lock; /* For open_count, buf_use, buf_alloc */ - struct lock dev_lock; /* For others */ +#if defined(__FreeBSD__) && __FreeBSD_version > 500000 +#if __HAVE_DMA + struct mtx dma_lock; /* protects dev->dma */ +#endif +#if __HAVE_IRQ + struct mtx irq_lock; /* protects irq condition checks */ +#endif + struct mtx dev_lock; /* protects everything else */ +#endif /* Usage Counters */ int open_count; /* Outstanding files open */ int buf_use; /* Buffers in use -- cannot alloc */ @@ -335,8 +341,8 @@ drm_file_list_t files; drm_magic_head_t magiclist[DRM_HASH_SIZE]; - /* Memory management */ - drm_map_list_t *maplist; /* Linked list of regions */ + /* Linked list of mappable regions. Protected by dev_lock */ + drm_map_list_t *maplist; drm_local_map_t **context_sareas; int max_context; @@ -357,19 +363,14 @@ #endif void *irqh; /* Handle from bus_setup_intr */ atomic_t context_flag; /* Context swapping flag */ - struct callout timer; /* Timer for delaying ctx switch */ int last_context; /* Last current context */ #if __FreeBSD_version >= 400005 struct task task; #endif #if __HAVE_VBL_IRQ - wait_queue_head_t vbl_queue; /* vbl wait channel */ + int vbl_queue; /* vbl wait channel */ atomic_t vbl_received; -#if 0 /* vbl signals are untested */ - struct drm_vbl_sig_list vbl_sig_list; - DRM_SPINTYPE vbl_lock; #endif -#endif #ifdef __FreeBSD__ struct sigio *buf_sigio; /* Processes waiting for SIGIO */ @@ -390,14 +391,6 @@ extern int DRM(flags); - /* Authentication (drm_auth.h) */ -extern int DRM(add_magic)(drm_device_t *dev, drm_file_t *priv, - drm_magic_t magic); -extern int DRM(remove_magic)(drm_device_t *dev, drm_magic_t magic); - - /* Driver support (drm_drv.h) */ -extern int DRM(version)( DRM_IOCTL_ARGS ); - /* Memory management support (drm_memory.h) */ extern void DRM(mem_init)(void); extern void DRM(mem_uninit)(void); @@ -408,6 +401,8 @@ extern void DRM(free)(void *pt, size_t size, int area); extern void *DRM(ioremap)(drm_device_t *dev, drm_local_map_t *map); extern void DRM(ioremapfree)(drm_local_map_t *map); +extern int DRM(mtrr_add)(unsigned long offset, size_t size, int flags); +extern int DRM(mtrr_del)(unsigned long offset, size_t size, int flags); #if __REALLY_HAVE_AGP extern agp_memory *DRM(alloc_agp)(int pages, u32 type); @@ -445,26 +440,21 @@ extern void DRM(dma_takedown)(drm_device_t *dev); extern void DRM(free_buffer)(drm_device_t *dev, drm_buf_t *buf); extern void DRM(reclaim_buffers)(drm_device_t *dev, DRMFILE filp); -#if __HAVE_DMA_IRQ +#endif + +#if __HAVE_IRQ + /* IRQ support (drm_irq.h) */ extern int DRM(irq_install)( drm_device_t *dev, int irq ); extern int DRM(irq_uninstall)( drm_device_t *dev ); -extern irqreturn_t DRM(dma_service)( DRM_IRQ_ARGS ); +extern irqreturn_t DRM(irq_handler)( DRM_IRQ_ARGS ); extern void DRM(driver_irq_preinstall)( drm_device_t *dev ); extern void DRM(driver_irq_postinstall)( drm_device_t *dev ); extern void DRM(driver_irq_uninstall)( drm_device_t *dev ); -#if __HAVE_DMA_IRQ_BH -extern void DRM(dma_immediate_bh)( DRM_TASKQUEUE_ARGS ); +#if __HAVE_IRQ_BH +extern void DRM(irq_immediate_bh)( DRM_TASKQUEUE_ARGS ); #endif #endif - /* Buffer list support (drm_lists.h) */ -#if __HAVE_DMA_WAITLIST -extern int DRM(waitlist_create)(drm_waitlist_t *bl, int count); -extern int DRM(waitlist_destroy)(drm_waitlist_t *bl); -extern int DRM(waitlist_put)(drm_waitlist_t *bl, drm_buf_t *buf); -extern drm_buf_t *DRM(waitlist_get)(drm_waitlist_t *bl); -#endif -#endif /* __HAVE_DMA */ #if __HAVE_VBL_IRQ extern int DRM(vblank_wait)(drm_device_t *dev, unsigned int *vbl_seq); extern void DRM(vbl_send_signals)( drm_device_t *dev ); @@ -499,6 +489,8 @@ /* Locking IOCTL support (drm_drv.h) */ extern int DRM(lock)(DRM_IOCTL_ARGS); extern int DRM(unlock)(DRM_IOCTL_ARGS); +extern int DRM(version)( DRM_IOCTL_ARGS ); +extern int DRM(setversion)( DRM_IOCTL_ARGS ); /* Misc. IOCTL support (drm_ioctl.h) */ extern int DRM(irq_busid)(DRM_IOCTL_ARGS); @@ -539,8 +531,8 @@ extern int DRM(mapbufs)(DRM_IOCTL_ARGS); #endif -/* DMA support (drm_dma.h) */ -#if __HAVE_DMA +/* IRQ support (drm_irq.h) */ +#if __HAVE_IRQ || __HAVE_DMA extern int DRM(control)(DRM_IOCTL_ARGS); #endif #if __HAVE_VBL_IRQ ==== //depot/projects/hostcache/sys/dev/drm/drm_auth.h#2 (text+ko) ==== @@ -28,7 +28,7 @@ * Rickard E. (Rik) Faith * Gareth Hughes * - * $FreeBSD: src/sys/dev/drm/drm_auth.h,v 1.4 2003/08/19 02:57:31 anholt Exp $ + * $FreeBSD: src/sys/dev/drm/drm_auth.h,v 1.5 2003/10/24 01:48:16 anholt Exp $ */ #include "dev/drm/drmP.h" @@ -44,18 +44,18 @@ drm_magic_entry_t *pt; int hash = DRM(hash_magic)(magic); - DRM_LOCK; + DRM_LOCK(); for (pt = dev->magiclist[hash].head; pt; pt = pt->next) { if (pt->magic == magic) { retval = pt->priv; break; } } - DRM_UNLOCK; + DRM_UNLOCK(); return retval; } -int DRM(add_magic)(drm_device_t *dev, drm_file_t *priv, drm_magic_t magic) +static int DRM(add_magic)(drm_device_t *dev, drm_file_t *priv, drm_magic_t magic) { int hash; drm_magic_entry_t *entry; @@ -70,7 +70,7 @@ entry->priv = priv; entry->next = NULL; - DRM_LOCK; + DRM_LOCK(); if (dev->magiclist[hash].tail) { dev->magiclist[hash].tail->next = entry; dev->magiclist[hash].tail = entry; @@ -78,12 +78,12 @@ dev->magiclist[hash].head = entry; dev->magiclist[hash].tail = entry; } - DRM_UNLOCK; + DRM_UNLOCK(); return 0; } -int DRM(remove_magic)(drm_device_t *dev, drm_magic_t magic) +static int DRM(remove_magic)(drm_device_t *dev, drm_magic_t magic) { drm_magic_entry_t *prev = NULL; drm_magic_entry_t *pt; @@ -92,7 +92,7 @@ DRM_DEBUG("%d\n", magic); hash = DRM(hash_magic)(magic); - DRM_LOCK; + DRM_LOCK(); for (pt = dev->magiclist[hash].head; pt; prev = pt, pt = pt->next) { if (pt->magic == magic) { if (dev->magiclist[hash].head == pt) { @@ -104,11 +104,11 @@ if (prev) { prev->next = pt->next; } - DRM_UNLOCK; + DRM_UNLOCK(); return 0; } } - DRM_UNLOCK; + DRM_UNLOCK(); DRM(free)(pt, sizeof(*pt), DRM_MEM_MAGIC); return DRM_ERR(EINVAL); @@ -117,9 +117,11 @@ int DRM(getmagic)(DRM_IOCTL_ARGS) { static drm_magic_t sequence = 0; - drm_auth_t auth; + drm_auth_t auth; + drm_file_t *priv; DRM_DEVICE; - DRM_PRIV; + + DRM_GET_PRIV_WITH_RETURN(priv, filp); /* Find unique magic */ if (priv->magic) { @@ -153,6 +155,7 @@ DRM_COPY_FROM_USER_IOCTL(auth, (drm_auth_t *)data, sizeof(auth)); DRM_DEBUG("%u\n", auth.magic); + if ((file = DRM(find_file)(dev, auth.magic))) { file->authenticated = 1; DRM(remove_magic)(dev, auth.magic); ==== //depot/projects/hostcache/sys/dev/drm/drm_bufs.h#2 (text+ko) ==== @@ -28,7 +28,7 @@ * Rickard E. (Rik) Faith * Gareth Hughes * - * $FreeBSD: src/sys/dev/drm/drm_bufs.h,v 1.6 2003/08/19 02:57:31 anholt Exp $ + * $FreeBSD: src/sys/dev/drm/drm_bufs.h,v 1.7 2003/10/24 01:48:16 anholt Exp $ */ #include "dev/drm/drmP.h" @@ -116,25 +116,12 @@ #if __REALLY_HAVE_MTRR if ( map->type == _DRM_FRAME_BUFFER || (map->flags & _DRM_WRITE_COMBINING) ) { -#ifdef __FreeBSD__ - int retcode = 0, act; - struct mem_range_desc mrdesc; - mrdesc.mr_base = map->offset; - mrdesc.mr_len = map->size; - mrdesc.mr_flags = MDF_WRITECOMBINE; - act = MEMRANGE_SET_UPDATE; - bcopy(DRIVER_NAME, &mrdesc.mr_owner, strlen(DRIVER_NAME)); - retcode = mem_range_attr_set(&mrdesc, &act); - map->mtrr=1; -#elif defined __NetBSD__ - struct mtrr mtrrmap; - int one = 1; - mtrrmap.base = map->offset; - mtrrmap.len = map->size; - mtrrmap.type = MTRR_TYPE_WC; - mtrrmap.flags = MTRR_VALID; - map->mtrr = mtrr_set( &mtrrmap, &one, p, MTRR_GETSET_KERNEL ); -#endif + int mtrr; + + mtrr = DRM(mtrr_add)(map->offset, map->size, + DRM_MTRR_WC); + if (mtrr == 0) + map->mtrr = 1; } #endif /* __REALLY_HAVE_MTRR */ DRM_IOREMAP(map, dev); @@ -172,17 +159,16 @@ return DRM_ERR(EINVAL); } - list = DRM(alloc)(sizeof(*list), DRM_MEM_MAPS); - if(!list) { + list = DRM(calloc)(1, sizeof(*list), DRM_MEM_MAPS); + if (list == NULL) { DRM(free)(map, sizeof(*map), DRM_MEM_MAPS); return DRM_ERR(EINVAL); } - memset(list, 0, sizeof(*list)); list->map = map; - DRM_LOCK; + DRM_LOCK(); TAILQ_INSERT_TAIL(dev->maplist, list, link); - DRM_UNLOCK; + DRM_UNLOCK(); request.offset = map->offset; request.size = map->size; @@ -211,69 +197,49 @@ drm_map_list_entry_t *list; drm_local_map_t *map; drm_map_t request; - int found_maps = 0; DRM_COPY_FROM_USER_IOCTL( request, (drm_map_t *)data, sizeof(request) ); - DRM_LOCK; + DRM_LOCK(); TAILQ_FOREACH(list, dev->maplist, link) { map = list->map; - if(map->handle == request.handle && - map->flags & _DRM_REMOVABLE) break; + if (map->handle == request.handle && + map->flags & _DRM_REMOVABLE) + break; } - /* List has wrapped around to the head pointer, or its empty we didn't - * find anything. - */ - if(list == NULL) { - DRM_UNLOCK; + /* No match found. */ + if (list == NULL) { + DRM_UNLOCK(); return DRM_ERR(EINVAL); } TAILQ_REMOVE(dev->maplist, list, link); + DRM_UNLOCK(); + DRM(free)(list, sizeof(*list), DRM_MEM_MAPS); - - if(!found_maps) { - switch (map->type) { - case _DRM_REGISTERS: - case _DRM_FRAME_BUFFER: + switch (map->type) { + case _DRM_REGISTERS: + case _DRM_FRAME_BUFFER: #if __REALLY_HAVE_MTRR - if (map->mtrr >= 0) { - int retcode; -#ifdef __FreeBSD__ - int act; - struct mem_range_desc mrdesc; - mrdesc.mr_base = map->offset; - mrdesc.mr_len = map->size; - mrdesc.mr_flags = MDF_WRITECOMBINE; - act = MEMRANGE_SET_REMOVE; - bcopy(DRIVER_NAME, &mrdesc.mr_owner, strlen(DRIVER_NAME)); - retcode = mem_range_attr_set(&mrdesc, &act); -#elif defined __NetBSD__ - struct mtrr mtrrmap; - int one = 1; - mtrrmap.base = map->offset; - mtrrmap.len = map->size; - mtrrmap.type = 0; - mtrrmap.flags = 0; - mtrrmap.owner = p->p_pid; - retcode = mtrr_set( &mtrrmap, &one, p, MTRR_GETSET_KERNEL); - DRM_DEBUG("mtrr_del = %d\n", retcode); + if (map->mtrr >= 0) { + int __unused mtrr; + + mtrr = DRM(mtrr_del)(map->offset, map->size, + DRM_MTRR_WC); + DRM_DEBUG("mtrr_del = %d\n", mtrr); + } #endif - } -#endif - DRM(ioremapfree)( map ); - break; - case _DRM_SHM: - DRM(free)( map->handle, map->size, DRM_MEM_SAREA ); - break; - case _DRM_AGP: - case _DRM_SCATTER_GATHER: - break; - } - DRM(free)(map, sizeof(*map), DRM_MEM_MAPS); + DRM(ioremapfree)(map); + break; + case _DRM_SHM: + DRM(free)(map->handle, map->size, DRM_MEM_SAREA); + break; + case _DRM_AGP: + case _DRM_SCATTER_GATHER: + break; } - DRM_UNLOCK; + DRM(free)(map, sizeof(*map), DRM_MEM_MAPS); return 0; } @@ -355,20 +321,11 @@ DRM_DEBUG( "page_order: %d\n", page_order ); DRM_DEBUG( "total: %d\n", total ); - if ( order < DRM_MIN_ORDER || order > DRM_MAX_ORDER ) - return DRM_ERR(EINVAL); - - DRM_LOCK; entry = &dma->bufs[order]; - if ( entry->buf_count ) { - DRM_UNLOCK; - return DRM_ERR(ENOMEM); /* May only call once for each order */ - } entry->buflist = DRM(alloc)( count * sizeof(*entry->buflist), DRM_MEM_BUFS ); if ( !entry->buflist ) { - DRM_UNLOCK; return DRM_ERR(ENOMEM); } memset( entry->buflist, 0, count * sizeof(*entry->buflist) ); @@ -393,16 +350,14 @@ buf->filp = NULL; buf->dev_priv_size = sizeof(DRIVER_BUF_PRIV_T); - buf->dev_private = DRM(alloc)( sizeof(DRIVER_BUF_PRIV_T), - DRM_MEM_BUFS ); - if(!buf->dev_private) { + buf->dev_private = DRM(calloc)(1, buf->dev_priv_size, + DRM_MEM_BUFS); + if (buf->dev_private == NULL) { /* Set count correctly so we free the proper amount. */ entry->buf_count = count; DRM(cleanup_buf_error)(dev, entry); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } - memset( buf->dev_private, 0, buf->dev_priv_size ); offset += alignment; entry->buf_count++; @@ -416,10 +371,9 @@ (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), DRM_MEM_BUFS ); - if(!temp_buflist) { + if (temp_buflist == NULL) { /* Free the entry because it isn't valid */ DRM(cleanup_buf_error)(dev, entry); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } dma->buflist = temp_buflist; @@ -434,8 +388,6 @@ DRM_DEBUG( "dma->buf_count : %d\n", dma->buf_count ); DRM_DEBUG( "entry->buf_count : %d\n", entry->buf_count ); - DRM_UNLOCK; - request->count = entry->buf_count; request->size = size; @@ -473,20 +425,12 @@ DRM_DEBUG( "count=%d, size=%d (%d), order=%d\n", request->count, request->size, size, order ); - if ( order < DRM_MIN_ORDER || order > DRM_MAX_ORDER ) - return DRM_ERR(EINVAL); - alignment = (request->flags & _DRM_PAGE_ALIGN) ? round_page(size) : size; page_order = order - PAGE_SHIFT > 0 ? order - PAGE_SHIFT : 0; total = PAGE_SIZE << page_order; - DRM_LOCK; entry = &dma->bufs[order]; - if ( entry->buf_count ) { - DRM_UNLOCK; - return DRM_ERR(ENOMEM); /* May only call once for each order */ - } entry->buflist = DRM(alloc)(count * sizeof(*entry->buflist), DRM_MEM_BUFS); @@ -509,7 +453,6 @@ DRM_MEM_SEGS); DRM(free)(entry->seglist_bus, count * sizeof(*entry->seglist_bus), DRM_MEM_SEGS); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } @@ -538,7 +481,6 @@ DRM(free)(temp_pagelist, (dma->page_count + (count << page_order)) * sizeof(*dma->pagelist), DRM_MEM_PAGES); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } @@ -577,7 +519,6 @@ DRM(free)(temp_pagelist, (dma->page_count + (count << page_order)) * sizeof(*dma->pagelist), DRM_MEM_PAGES ); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } bzero(buf->dev_private, buf->dev_priv_size); @@ -599,7 +540,6 @@ DRM(free)(temp_pagelist, (dma->page_count + (count << page_order)) * sizeof(*dma->pagelist), DRM_MEM_PAGES); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } dma->buflist = temp_buflist; @@ -620,8 +560,6 @@ dma->page_count += entry->seg_count << page_order; dma->byte_count += PAGE_SIZE * (entry->seg_count << page_order); - DRM_UNLOCK; - request->count = entry->buf_count; request->size = size; @@ -668,23 +606,12 @@ DRM_DEBUG( "page_order: %d\n", page_order ); DRM_DEBUG( "total: %d\n", total ); - if ( order < DRM_MIN_ORDER || order > DRM_MAX_ORDER ) - return DRM_ERR(EINVAL); - - DRM_LOCK; entry = &dma->bufs[order]; - if ( entry->buf_count ) { - DRM_UNLOCK; - return DRM_ERR(ENOMEM); /* May only call once for each order */ - } - entry->buflist = DRM(alloc)( count * sizeof(*entry->buflist), - DRM_MEM_BUFS ); - if ( !entry->buflist ) { - DRM_UNLOCK; + entry->buflist = DRM(calloc)(1, count * sizeof(*entry->buflist), + DRM_MEM_BUFS); + if (entry->buflist == NULL) return DRM_ERR(ENOMEM); - } - memset( entry->buflist, 0, count * sizeof(*entry->buflist) ); entry->buf_size = size; entry->page_order = page_order; @@ -706,18 +633,15 @@ buf->filp = NULL; buf->dev_priv_size = sizeof(DRIVER_BUF_PRIV_T); - buf->dev_private = DRM(alloc)( sizeof(DRIVER_BUF_PRIV_T), - DRM_MEM_BUFS ); - if(!buf->dev_private) { + buf->dev_private = DRM(calloc)(1, buf->dev_priv_size, + DRM_MEM_BUFS); + if (buf->dev_private == NULL) { /* Set count correctly so we free the proper amount. */ entry->buf_count = count; DRM(cleanup_buf_error)(dev, entry); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } - memset( buf->dev_private, 0, buf->dev_priv_size ); - DRM_DEBUG( "buffer %d @ %p\n", entry->buf_count, buf->address ); @@ -733,10 +657,9 @@ (dma->buf_count + entry->buf_count) * sizeof(*dma->buflist), DRM_MEM_BUFS ); - if(!temp_buflist) { + if (temp_buflist == NULL) { /* Free the entry because it isn't valid */ DRM(cleanup_buf_error)(dev, entry); - DRM_UNLOCK; return DRM_ERR(ENOMEM); } dma->buflist = temp_buflist; @@ -751,8 +674,6 @@ DRM_DEBUG( "dma->buf_count : %d\n", dma->buf_count ); DRM_DEBUG( "entry->buf_count : %d\n", entry->buf_count ); - DRM_UNLOCK; - request->count = entry->buf_count; request->size = size; @@ -767,26 +688,29 @@ DRM_DEVICE; drm_buf_desc_t request; int err; + int order; DRM_COPY_FROM_USER_IOCTL( request, (drm_buf_desc_t *)data, sizeof(request) ); - if (dev->dma == NULL) + if (request.count < 0 || request.count > 4096) return DRM_ERR(EINVAL); - if (request.count < 0 || request.count > 4096) + order = DRM(order)(request.size); + if (order < DRM_MIN_ORDER || order > DRM_MAX_ORDER) return DRM_ERR(EINVAL); - DRM_SPINLOCK(&dev->count_lock); - if (dev->buf_use) { - DRM_SPINUNLOCK(&dev->count_lock); + DRM_SPINLOCK(&dev->dma_lock); + /* No more allocations after first buffer-using ioctl. */ + if (dev->buf_use != 0) { + DRM_SPINUNLOCK(&dev->dma_lock); return DRM_ERR(EBUSY); } - /* dev->buf_alloc acts as a lock to prevent infobufs/mapbufs from - * trying to read from the dma->bufs while buffers are being allocated */ - dev->buf_alloc++; - DRM_SPINUNLOCK(&dev->count_lock); + /* No more than one allocation per order */ + if (dev->dma->bufs[order].buf_count != 0) { + DRM_SPINUNLOCK(&dev->dma_lock); + return DRM_ERR(ENOMEM); + } - #if __REALLY_HAVE_AGP if ( request.flags & _DRM_AGP_BUFFER ) err = DRM(addbufs_agp)(dev, &request); @@ -802,13 +726,10 @@ #else err = DRM_ERR(EINVAL); #endif + DRM_SPINUNLOCK(&dev->dma_lock); DRM_COPY_TO_USER_IOCTL((drm_buf_desc_t *)data, request, sizeof(request)); - DRM_SPINLOCK(&dev->count_lock); - dev->buf_alloc--; - DRM_SPINUNLOCK(&dev->count_lock); - return err; } @@ -819,18 +740,13 @@ drm_buf_info_t request; int i; int count; + int retcode = 0; - if ( !dma ) return DRM_ERR(EINVAL); + DRM_COPY_FROM_USER_IOCTL( request, (drm_buf_info_t *)data, sizeof(request) ); - DRM_SPINLOCK( &dev->count_lock ); - if (dev->buf_alloc != 0) { - DRM_SPINUNLOCK( &dev->count_lock ); - return DRM_ERR(EBUSY); - } + DRM_SPINLOCK(&dev->dma_lock); ++dev->buf_use; /* Can't allocate more after this call */ - DRM_SPINUNLOCK( &dev->count_lock ); - - DRM_COPY_FROM_USER_IOCTL( request, (drm_buf_info_t *)data, sizeof(request) ); + DRM_SPINUNLOCK(&dev->dma_lock); for ( i = 0, count = 0 ; i < DRM_MAX_ORDER + 1 ; i++ ) { if ( dma->bufs[i].buf_count ) ++count; @@ -849,8 +765,10 @@ from.high_mark = dma->bufs[i].freelist.high_mark; if (DRM_COPY_TO_USER(&request.list[count], &from, - sizeof(drm_buf_desc_t)) != 0) - return DRM_ERR(EFAULT); + sizeof(drm_buf_desc_t)) != 0) { + retcode = DRM_ERR(EFAULT); + break; + } DRM_DEBUG( "%d %d %d %d %d\n", i, @@ -866,7 +784,7 @@ DRM_COPY_TO_USER_IOCTL( (drm_buf_info_t *)data, request, sizeof(request) ); - return 0; + return retcode; } int DRM(markbufs)( DRM_IOCTL_ARGS ) @@ -875,26 +793,28 @@ drm_device_dma_t *dma = dev->dma; drm_buf_desc_t request; int order; - drm_buf_entry_t *entry; - - if ( !dma ) return DRM_ERR(EINVAL); DRM_COPY_FROM_USER_IOCTL( request, (drm_buf_desc_t *)data, sizeof(request) ); DRM_DEBUG( "%d, %d, %d\n", request.size, request.low_mark, request.high_mark ); - order = DRM(order)( request.size ); - if ( order < DRM_MIN_ORDER || order > DRM_MAX_ORDER ) + + + order = DRM(order)(request.size); + if (order < DRM_MIN_ORDER || order > DRM_MAX_ORDER || + request.low_mark < 0 || request.high_mark < 0) { return DRM_ERR(EINVAL); - entry = &dma->bufs[order]; + } - if ( request.low_mark < 0 || request.low_mark > entry->buf_count ) + DRM_SPINLOCK(&dev->dma_lock); + if (request.low_mark > dma->bufs[order].buf_count || + request.high_mark > dma->bufs[order].buf_count) { return DRM_ERR(EINVAL); - if ( request.high_mark < 0 || request.high_mark > entry->buf_count ) - return DRM_ERR(EINVAL); + } - entry->freelist.low_mark = request.low_mark; - entry->freelist.high_mark = request.high_mark; + dma->bufs[order].freelist.low_mark = request.low_mark; + dma->bufs[order].freelist.high_mark = request.high_mark; + DRM_SPINUNLOCK(&dev->dma_lock); return 0; } @@ -907,32 +827,36 @@ int i; int idx; drm_buf_t *buf; - - if ( !dma ) return DRM_ERR(EINVAL); + int retcode = 0; DRM_COPY_FROM_USER_IOCTL( request, (drm_buf_free_t *)data, sizeof(request) ); DRM_DEBUG( "%d\n", request.count ); + + DRM_SPINLOCK(&dev->dma_lock); for ( i = 0 ; i < request.count ; i++ ) { - if ( DRM_COPY_FROM_USER( &idx, - &request.list[i], - sizeof(idx) ) ) - return DRM_ERR(EFAULT); + if (DRM_COPY_FROM_USER(&idx, &request.list[i], sizeof(idx))) { + retcode = DRM_ERR(EFAULT); + break; + } if ( idx < 0 || idx >= dma->buf_count ) { DRM_ERROR( "Index %d (of %d max)\n", >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Oct 23 21:56:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 75E6816A4C1; Thu, 23 Oct 2003 21:56:56 -0700 (PDT) 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 4D6D816A4BF for ; Thu, 23 Oct 2003 21:56:56 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E6E4B43F75 for ; Thu, 23 Oct 2003 21:56:54 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9O4usXJ026092 for ; Thu, 23 Oct 2003 21:56:54 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9O4usSG026089 for perforce@freebsd.org; Thu, 23 Oct 2003 21:56:54 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 21:56:54 -0700 (PDT) Message-Id: <200310240456.h9O4usSG026089@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40367 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 04:56:57 -0000 http://perforce.freebsd.org/chv.cgi?CH=40367 Change 40367 by sam@sam_ebb on 2003/10/23 21:56:06 import andre's latest tcp hostcache patch Affected files ... .. //depot/projects/hostcache/sys/conf/files#2 edit .. //depot/projects/hostcache/sys/net/if_arcsubr.c#2 edit .. //depot/projects/hostcache/sys/net/if_ef.c#2 edit .. //depot/projects/hostcache/sys/net/if_ethersubr.c#2 edit .. //depot/projects/hostcache/sys/net/if_faith.c#2 edit .. //depot/projects/hostcache/sys/net/if_fddisubr.c#2 edit .. //depot/projects/hostcache/sys/net/if_iso88025subr.c#2 edit .. //depot/projects/hostcache/sys/net/if_loop.c#2 edit .. //depot/projects/hostcache/sys/net/if_ppp.c#2 edit .. //depot/projects/hostcache/sys/net/route.c#2 edit .. //depot/projects/hostcache/sys/net/route.h#2 edit .. //depot/projects/hostcache/sys/net/rtsock.c#2 edit .. //depot/projects/hostcache/sys/netatalk/ddp_output.c#2 edit .. //depot/projects/hostcache/sys/netinet/icmp_var.h#2 edit .. //depot/projects/hostcache/sys/netinet/in_pcb.c#2 edit .. //depot/projects/hostcache/sys/netinet/in_pcb.h#2 edit .. //depot/projects/hostcache/sys/netinet/in_rmx.c#2 edit .. //depot/projects/hostcache/sys/netinet/in_var.h#2 edit .. //depot/projects/hostcache/sys/netinet/ip_divert.c#2 edit .. //depot/projects/hostcache/sys/netinet/ip_fastforward.c#3 add .. //depot/projects/hostcache/sys/netinet/ip_flow.c#2 edit .. //depot/projects/hostcache/sys/netinet/ip_flow.h#2 edit .. //depot/projects/hostcache/sys/netinet/ip_fw.h#2 edit .. //depot/projects/hostcache/sys/netinet/ip_fw2.c#2 edit .. //depot/projects/hostcache/sys/netinet/ip_icmp.c#2 edit .. //depot/projects/hostcache/sys/netinet/ip_input.c#2 edit .. //depot/projects/hostcache/sys/netinet/ip_output.c#2 edit .. //depot/projects/hostcache/sys/netinet/ip_var.h#2 edit .. //depot/projects/hostcache/sys/netinet/raw_ip.c#2 edit .. //depot/projects/hostcache/sys/netinet/tcp.h#2 edit .. //depot/projects/hostcache/sys/netinet/tcp_hostcache.c#3 add .. //depot/projects/hostcache/sys/netinet/tcp_input.c#2 edit .. //depot/projects/hostcache/sys/netinet/tcp_output.c#2 edit .. //depot/projects/hostcache/sys/netinet/tcp_subr.c#2 edit .. //depot/projects/hostcache/sys/netinet/tcp_syncache.c#2 edit .. //depot/projects/hostcache/sys/netinet/tcp_timer.c#2 edit .. //depot/projects/hostcache/sys/netinet/tcp_usrreq.c#2 edit .. //depot/projects/hostcache/sys/netinet/tcp_var.h#2 edit .. //depot/projects/hostcache/sys/netinet/udp_usrreq.c#2 edit .. //depot/projects/hostcache/sys/netinet6/icmp6.c#2 edit .. //depot/projects/hostcache/sys/netinet6/in6_pcb.c#2 edit .. //depot/projects/hostcache/sys/netinet6/in6_rmx.c#2 edit .. //depot/projects/hostcache/sys/netinet6/in6_src.c#3 edit .. //depot/projects/hostcache/sys/netinet6/ip6_forward.c#2 edit .. //depot/projects/hostcache/sys/netinet6/ip6_input.c#2 edit .. //depot/projects/hostcache/sys/netinet6/ip6_output.c#2 edit .. //depot/projects/hostcache/sys/netinet6/raw_ip6.c#2 edit .. //depot/projects/hostcache/sys/netinet6/udp6_output.c#2 edit .. //depot/projects/hostcache/sys/netipx/ipx_input.c#2 edit .. //depot/projects/hostcache/sys/netipx/ipx_outputfl.c#2 edit .. //depot/projects/hostcache/sys/sys/mbuf.h#2 edit Differences ... ==== //depot/projects/hostcache/sys/conf/files#2 (text+ko) ==== @@ -1424,7 +1424,7 @@ netinet/ip_ecn.c optional inet6 netinet/ip_encap.c optional inet netinet/ip_encap.c optional inet6 -netinet/ip_flow.c optional inet +netinet/ip_fastforward.c optional inet netinet/ip_fw2.c optional ipfirewall netinet/ip_icmp.c optional inet netinet/ip_input.c optional inet @@ -1432,6 +1432,7 @@ netinet/ip_output.c optional inet netinet/raw_ip.c optional inet netinet/tcp_debug.c optional tcpdebug +netinet/tcp_hostcache.c optional inet netinet/tcp_input.c optional inet netinet/tcp_output.c optional inet netinet/tcp_subr.c optional inet ==== //depot/projects/hostcache/sys/net/if_arcsubr.c#2 (text+ko) ==== @@ -543,14 +543,14 @@ #ifdef INET case ARCTYPE_IP: m_adj(m, ARC_HDRNEWLEN); - if (ipflow_fastforward(m)) + if (ip_fastforward(m)) return; isr = NETISR_IP; break; case ARCTYPE_IP_OLD: m_adj(m, ARC_HDRLEN); - if (ipflow_fastforward(m)) + if (ip_fastforward(m)) return; isr = NETISR_IP; break; ==== //depot/projects/hostcache/sys/net/if_ef.c#2 (text+ko) ==== @@ -252,8 +252,8 @@ #endif #ifdef INET case ETHERTYPE_IP: - if (ipflow_fastforward(m)) - return (0); + if (ip_fastforward(m)) + return; isr = NETISR_IP; break; ==== //depot/projects/hostcache/sys/net/if_ethersubr.c#2 (text+ko) ==== @@ -717,7 +717,7 @@ switch (ether_type) { #ifdef INET case ETHERTYPE_IP: - if (ipflow_fastforward(m)) + if (ip_fastforward(m)) return; isr = NETISR_IP; break; ==== //depot/projects/hostcache/sys/net/if_faith.c#2 (text+ko) ==== @@ -271,17 +271,8 @@ struct rt_addrinfo *info; { RT_LOCK_ASSERT(rt); - - if (rt) { - rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; /* for ISO */ - /* - * For optimal performance, the send and receive buffers - * should be at least twice the MTU plus a little more for - * overhead. - */ - rt->rt_rmx.rmx_recvpipe = - rt->rt_rmx.rmx_sendpipe = 3 * FAITHMTU; - } + if (rt) + rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; } /* ==== //depot/projects/hostcache/sys/net/if_fddisubr.c#2 (text+ko) ==== @@ -471,7 +471,7 @@ switch (type) { #ifdef INET case ETHERTYPE_IP: - if (ipflow_fastforward(m)) + if (ip_fastforward(m)) return; isr = NETISR_IP; break; ==== //depot/projects/hostcache/sys/net/if_iso88025subr.c#2 (text+ko) ==== @@ -556,7 +556,7 @@ #ifdef INET case ETHERTYPE_IP: th->iso88025_shost[0] &= ~(TR_RII); - if (ipflow_fastforward(m)) + if (ip_fastforward(m)) return; isr = NETISR_IP; break; ==== //depot/projects/hostcache/sys/net/if_loop.c#2 (text+ko) ==== @@ -357,17 +357,8 @@ struct rt_addrinfo *info; { RT_LOCK_ASSERT(rt); - - if (rt) { - rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; /* for ISO */ - /* - * For optimal performance, the send and receive buffers - * should be at least twice the MTU plus a little more for - * overhead. - */ - rt->rt_rmx.rmx_recvpipe = - rt->rt_rmx.rmx_sendpipe = 3 * LOMTU; - } + if (rt) + rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; } /* ==== //depot/projects/hostcache/sys/net/if_ppp.c#2 (text+ko) ==== @@ -1538,8 +1538,8 @@ m->m_pkthdr.len -= PPP_HDRLEN; m->m_data += PPP_HDRLEN; m->m_len -= PPP_HDRLEN; - if (ipflow_fastforward(m)) - return; + if (ip_fastforward(m)) + return; isr = NETISR_IP; break; #endif ==== //depot/projects/hostcache/sys/net/route.c#2 (text+ko) ==== @@ -139,7 +139,7 @@ */ newrt = rt = (struct rtentry *)rn; nflags = rt->rt_flags & ~ignflags; - if (report && (nflags & (RTF_CLONING | RTF_PRCLONING))) { + if (report && (nflags & RTF_CLONING)) { /* * We are apparently adding (report = 0 in delete). * If it requires that it be cloned, do so. @@ -548,7 +548,7 @@ */ if (flags & RTF_HOST) { netmask = 0; - flags &= ~(RTF_CLONING | RTF_PRCLONING); + flags &= ~RTF_CLONING; } switch (req) { case RTM_DELETE: @@ -570,7 +570,7 @@ * Now search what's left of the subtree for any cloned * routes which might have been formed from this node. */ - if ((rt->rt_flags & (RTF_CLONING | RTF_PRCLONING)) && + if ((rt->rt_flags & RTF_CLONING) && rt_mask(rt)) { rnh->rnh_walktree_from(rnh, dst, rt_mask(rt), rt_fixdelete, rt); @@ -617,7 +617,7 @@ ifa = rt->rt_ifa; /* XXX locking? */ flags = rt->rt_flags & - ~(RTF_CLONING | RTF_PRCLONING | RTF_STATIC); + ~(RTF_CLONING | RTF_STATIC); flags |= RTF_WASCLONED; gateway = rt->rt_gateway; if ((netmask = rt->rt_genmask) == 0) @@ -678,11 +678,11 @@ /* * Uh-oh, we already have one of these in the tree. * We do a special hack: if the route that's already - * there was generated by the protocol-cloning - * mechanism, then we just blow it away and retry - * the insertion of the new one. + * there was generated by the cloning mechanism + * then we just blow it away and retry the insertion + * of the new one. */ - rt2 = rtalloc1(dst, 0, RTF_PRCLONING); + rt2 = rtalloc1(dst, 0, 0); if (rt2 && rt2->rt_parent) { rtrequest(RTM_DELETE, rt_key(rt2), @@ -724,7 +724,7 @@ ("no route to clone from")); rt->rt_rmx = (*ret_nrt)->rt_rmx; /* copy metrics */ rt->rt_rmx.rmx_pksent = 0; /* reset packet counter */ - if ((*ret_nrt)->rt_flags & (RTF_CLONING | RTF_PRCLONING)) { + if ((*ret_nrt)->rt_flags & RTF_CLONING) { /* * NB: We do not bump the refcnt on the parent * entry under the assumption that it will @@ -800,7 +800,7 @@ struct rtentry *rt0 = vp; if (rt->rt_parent == rt0 && - !(rt->rt_flags & (RTF_PINNED | RTF_CLONING | RTF_PRCLONING))) { + !(rt->rt_flags & (RTF_PINNED | RTF_CLONING))) { return rtrequest(RTM_DELETE, rt_key(rt), (struct sockaddr *)0, rt_mask(rt), rt->rt_flags, (struct rtentry **)0); @@ -841,7 +841,7 @@ #endif if (!rt->rt_parent || - (rt->rt_flags & (RTF_PINNED | RTF_CLONING | RTF_PRCLONING))) { + (rt->rt_flags & (RTF_PINNED | RTF_CLONING))) { #ifdef DEBUG if(rtfcdebug) printf("no parent, pinned or cloning\n"); #endif @@ -992,9 +992,10 @@ * correct choice anyway), and avoid the resulting reference loops * by disallowing any route to run through itself as a gateway. * This is obviously mandatory when we get rt->rt_output(). + * XXX: After removal of PRCLONING this probably not needed anymore. */ if (rt->rt_flags & RTF_GATEWAY) { - rt->rt_gwroute = rtalloc1(gate, 1, RTF_PRCLONING); + rt->rt_gwroute = rtalloc1(gate, 1, 0); if (rt->rt_gwroute == rt) { RTFREE_LOCKED(rt->rt_gwroute); rt->rt_gwroute = 0; ==== //depot/projects/hostcache/sys/net/route.h#2 (text+ko) ==== @@ -58,6 +58,12 @@ * These numbers are used by reliable protocols for determining * retransmission behavior and are included in the routing structure. */ +struct rt_metrics_lite { + u_long rmx_mtu; /* MTU for this path */ + u_long rmx_expire; /* lifetime for route, e.g. redirect */ + u_long rmx_pksent; /* packets sent using this route */ +}; + struct rt_metrics { u_long rmx_locks; /* Kernel must leave these values alone */ u_long rmx_mtu; /* MTU for this path */ @@ -104,10 +110,10 @@ long rt_refcnt; /* # held references */ u_long rt_flags; /* up/down?, host/net */ struct ifnet *rt_ifp; /* the answer: interface to use */ - struct ifaddr *rt_ifa; /* the answer: interface to use */ + struct ifaddr *rt_ifa; /* the answer: interface address to use */ struct sockaddr *rt_genmask; /* for generation of cloned routes */ caddr_t rt_llinfo; /* pointer to link level info cache */ - struct rt_metrics rt_rmx; /* metrics used by rx'ing protocols */ + struct rt_metrics_lite rt_rmx; /* metrics used by rx'ing protocols */ struct rtentry *rt_gwroute; /* implied entry for gatewayed routes */ int (*rt_output)(struct ifnet *, struct mbuf *, struct sockaddr *, struct rtentry *); @@ -151,7 +157,7 @@ #define RTF_PROTO2 0x4000 /* protocol specific routing flag */ #define RTF_PROTO1 0x8000 /* protocol specific routing flag */ -#define RTF_PRCLONING 0x10000 /* protocol requires cloning */ +/* 0x10000 unused */ #define RTF_WASCLONED 0x20000 /* route generated through cloning */ #define RTF_PROTO3 0x40000 /* protocol specific routing flag */ /* 0x80000 unused */ ==== //depot/projects/hostcache/sys/net/rtsock.c#2 (text+ko) ==== @@ -86,7 +86,8 @@ static int sysctl_dumpentry(struct radix_node *rn, void *vw); static int sysctl_iflist(int af, struct walkarg *w); static int route_output(struct mbuf *, struct socket *); -static void rt_setmetrics(u_long, struct rt_metrics *, struct rt_metrics *); +static void rt_setmetrics(u_long, struct rt_metrics *, struct rt_metrics_lite *); +static void rt_getmetrics(struct rt_metrics_lite *, struct rt_metrics *); static void rt_dispatch(struct mbuf *, struct sockaddr *); /* @@ -354,9 +355,6 @@ RT_LOCK(saved_nrt); rt_setmetrics(rtm->rtm_inits, &rtm->rtm_rmx, &saved_nrt->rt_rmx); - saved_nrt->rt_rmx.rmx_locks &= ~(rtm->rtm_inits); - saved_nrt->rt_rmx.rmx_locks |= - (rtm->rtm_inits & rtm->rtm_rmx.rmx_locks); saved_nrt->rt_refcnt--; saved_nrt->rt_genmask = info.rti_info[RTAX_GENMASK]; RT_UNLOCK(saved_nrt); @@ -427,7 +425,7 @@ (void)rt_msg2(rtm->rtm_type, &info, (caddr_t)rtm, (struct walkarg *)0); rtm->rtm_flags = rt->rt_flags; - rtm->rtm_rmx = rt->rt_rmx; + rt_getmetrics(&rt->rt_rmx, &rtm->rtm_rmx); rtm->rtm_addrs = info.rti_addrs; break; @@ -477,9 +475,7 @@ rt->rt_genmask = info.rti_info[RTAX_GENMASK]; /* FALLTHROUGH */ case RTM_LOCK: - rt->rt_rmx.rmx_locks &= ~(rtm->rtm_inits); - rt->rt_rmx.rmx_locks |= - (rtm->rtm_inits & rtm->rtm_rmx.rmx_locks); + /* We don't support locks anymore */ break; } RT_UNLOCK(rt); @@ -541,20 +537,28 @@ } static void -rt_setmetrics(u_long which, struct rt_metrics *in, struct rt_metrics *out) +rt_setmetrics(u_long which, struct rt_metrics *in, struct rt_metrics_lite *out) { #define metric(f, e) if (which & (f)) out->e = in->e; - metric(RTV_RPIPE, rmx_recvpipe); - metric(RTV_SPIPE, rmx_sendpipe); - metric(RTV_SSTHRESH, rmx_ssthresh); - metric(RTV_RTT, rmx_rtt); - metric(RTV_RTTVAR, rmx_rttvar); - metric(RTV_HOPCOUNT, rmx_hopcount); + /* + * Only these are stored in the routing entry since introduction + * of tcp hostcache. The rest is ignored. + */ metric(RTV_MTU, rmx_mtu); metric(RTV_EXPIRE, rmx_expire); #undef metric } +static void +rt_getmetrics(struct rt_metrics_lite *in, struct rt_metrics *out) +{ +#define metric(e) out->e = in->e; + bzero(out, sizeof(*out)); + metric(rmx_mtu); + metric(rmx_expire); +#undef metric +} + #define ROUNDUP(a) \ ((a) > 0 ? (1 + (((a) - 1) | (sizeof(long) - 1))) : sizeof(long)) @@ -944,8 +948,8 @@ struct rt_msghdr *rtm = (struct rt_msghdr *)w->w_tmem; rtm->rtm_flags = rt->rt_flags; - rtm->rtm_use = rt->rt_use; - rtm->rtm_rmx = rt->rt_rmx; + rtm->rtm_use = rt->rt_rmx.rmx_pksent; + rt_getmetrics(&rt->rt_rmx, &rtm->rtm_rmx); rtm->rtm_index = rt->rt_ifp->if_index; rtm->rtm_errno = rtm->rtm_pid = rtm->rtm_seq = 0; rtm->rtm_addrs = info.rti_addrs; ==== //depot/projects/hostcache/sys/netatalk/ddp_output.c#2 (text+ko) ==== @@ -217,7 +217,7 @@ elh->el_type = ELAP_DDPEXTEND; elh->el_dnode = gate.sat_addr.s_node; } - ro->ro_rt->rt_use++; + ro->ro_rt->rt_rmx.rmx_pksent++; #ifdef NETATALK_DEBUG printf ("ddp_route: from %d.%d to %d.%d, via %d.%d (%s%d)\n", ==== //depot/projects/hostcache/sys/netinet/icmp_var.h#2 (text+ko) ==== @@ -81,11 +81,12 @@ extern int badport_bandlim(int); #define BANDLIM_UNLIMITED -1 #define BANDLIM_ICMP_UNREACH 0 -#define BANDLIM_ICMP_ECHO 1 -#define BANDLIM_ICMP_TSTAMP 2 -#define BANDLIM_RST_CLOSEDPORT 3 /* No connection, and no listeners */ -#define BANDLIM_RST_OPENPORT 4 /* No connection, listener */ -#define BANDLIM_MAX 4 +#define BANDLIM_ICMP_UNREACH_HOST 1 +#define BANDLIM_ICMP_ECHO 2 +#define BANDLIM_ICMP_TSTAMP 3 +#define BANDLIM_RST_CLOSEDPORT 4 /* No connection, and no listeners */ +#define BANDLIM_RST_OPENPORT 5 /* No connection, listener */ +#define BANDLIM_MAX 5 #endif #endif ==== //depot/projects/hostcache/sys/netinet/in_pcb.c#2 (text+ko) ==== @@ -536,7 +536,6 @@ if (error) return (error); } - if (!TAILQ_EMPTY(&in_ifaddrhead)) { /* * If the destination address is INADDR_ANY, @@ -554,7 +553,8 @@ &in_ifaddrhead)->ia_broadaddr)->sin_addr; } if (laddr.s_addr == INADDR_ANY) { - register struct route *ro; + struct route *ro; + struct route sro; ia = (struct in_ifaddr *)0; /* @@ -563,19 +563,10 @@ * Note that we should check the address family of the cached * destination, in case of sharing the cache with IPv6. */ - ro = &inp->inp_route; - if (ro->ro_rt && - (ro->ro_dst.sa_family != AF_INET || - satosin(&ro->ro_dst)->sin_addr.s_addr != faddr.s_addr || - inp->inp_socket->so_options & SO_DONTROUTE)) { - RTFREE(ro->ro_rt); - ro->ro_rt = (struct rtentry *)0; - } - if ((inp->inp_socket->so_options & SO_DONTROUTE) == 0 && /*XXX*/ - (ro->ro_rt == (struct rtentry *)0 || - ro->ro_rt->rt_ifp == (struct ifnet *)0)) { - /* No route yet, so try to acquire one */ - bzero(&ro->ro_dst, sizeof(struct sockaddr_in)); + ro = &sro; + bzero(ro, sizeof(*ro)); + if ((inp->inp_socket->so_options & SO_DONTROUTE) == 0) { + /* Find out route to destination */ ro->ro_dst.sa_family = AF_INET; ro->ro_dst.sa_len = sizeof(struct sockaddr_in); ((struct sockaddr_in *)&ro->ro_dst)->sin_addr = faddr; @@ -589,6 +580,8 @@ */ if (ro->ro_rt && !(ro->ro_rt->rt_ifp->if_flags & IFF_LOOPBACK)) ia = ifatoia(ro->ro_rt->rt_ifa); + if (ro->ro_rt) + RTFREE(ro->ro_rt); if (ia == 0) { bzero(&sa, sizeof(sa)); sa.sin_addr = faddr; @@ -675,8 +668,6 @@ } if (inp->inp_options) (void)m_free(inp->inp_options); - if (inp->inp_route.ro_rt) - RTFREE(inp->inp_route.ro_rt); ip_freemoptions(inp->inp_moptions); inp->inp_vflag = 0; INP_LOCK_DESTROY(inp); @@ -850,60 +841,6 @@ } /* - * Check for alternatives when higher level complains - * about service problems. For now, invalidate cached - * routing information. If the route was created dynamically - * (by a redirect), time to try a default gateway again. - */ -void -in_losing(inp) - struct inpcb *inp; -{ - register struct rtentry *rt; - struct rt_addrinfo info; - - if ((rt = inp->inp_route.ro_rt)) { - RT_LOCK(rt); - inp->inp_route.ro_rt = NULL; - bzero((caddr_t)&info, sizeof(info)); - info.rti_flags = rt->rt_flags; - info.rti_info[RTAX_DST] = rt_key(rt); - info.rti_info[RTAX_GATEWAY] = rt->rt_gateway; - info.rti_info[RTAX_NETMASK] = rt_mask(rt); - rt_missmsg(RTM_LOSING, &info, rt->rt_flags, 0); - if (rt->rt_flags & RTF_DYNAMIC) { - RT_UNLOCK(rt); /* XXX refcnt? */ - (void) rtrequest1(RTM_DELETE, &info, NULL); - } else - rtfree(rt); - /* - * A new route can be allocated - * the next time output is attempted. - */ - } -} - -/* - * After a routing change, flush old routing - * and allocate a (hopefully) better one. - */ -struct inpcb * -in_rtchange(inp, errno) - register struct inpcb *inp; - int errno; -{ - if (inp->inp_route.ro_rt) { - RTFREE(inp->inp_route.ro_rt); - inp->inp_route.ro_rt = 0; - /* - * A new route can be allocated the next time - * output is attempted. - */ - } - return inp; -} - -/* * Lookup a PCB based on the local address and port. */ struct inpcb * ==== //depot/projects/hostcache/sys/netinet/in_pcb.h#2 (text+ko) ==== @@ -94,31 +94,22 @@ /* * XXX - * At some point struct route should possibly change to: - * struct rtentry *rt - * struct in_endpoints *ie; + * the defines for inc_* are hacks and should be changed to direct references */ struct in_conninfo { u_int8_t inc_flags; u_int8_t inc_len; u_int16_t inc_pad; /* XXX alignment for in_endpoints */ - /* protocol dependent part; cached route */ + /* protocol dependent part */ struct in_endpoints inc_ie; - union { - /* placeholder for routing entry */ - struct route inc4_route; - struct route_in6 inc6_route; - } inc_dependroute; }; #define inc_isipv6 inc_flags /* temp compatability */ #define inc_fport inc_ie.ie_fport #define inc_lport inc_ie.ie_lport #define inc_faddr inc_ie.ie_faddr #define inc_laddr inc_ie.ie_laddr -#define inc_route inc_dependroute.inc4_route #define inc6_faddr inc_ie.ie6_faddr #define inc6_laddr inc_ie.ie6_laddr -#define inc6_route inc_dependroute.inc6_route struct icmp6_filter; @@ -156,7 +147,6 @@ #define inp_lport inp_inc.inc_lport #define inp_faddr inp_inc.inc_faddr #define inp_laddr inp_inc.inc_laddr -#define inp_route inp_inc.inc_route #define inp_ip_tos inp_depend4.inp4_ip_tos #define inp_options inp_depend4.inp4_options #define inp_moptions inp_depend4.inp4_moptions @@ -182,7 +172,6 @@ #define in6p_faddr inp_inc.inc6_faddr #define in6p_laddr inp_inc.inc6_laddr -#define in6p_route inp_inc.inc6_route #define in6p_ip6_hlim inp_depend6.inp6_hlim #define in6p_hops inp_depend6.inp6_hops /* default hop limit */ #define in6p_ip6_nxt inp_ip_p @@ -327,9 +316,6 @@ extern int ipport_hilastauto; void in_pcbpurgeif0(struct inpcbinfo *, struct ifnet *); -void in_losing(struct inpcb *); -struct inpcb * - in_rtchange(struct inpcb *, int); int in_pcballoc(struct socket *, struct inpcbinfo *, struct thread *); int in_pcbbind(struct inpcb *, struct sockaddr *, struct thread *); int in_pcbbind_setup(struct inpcb *, struct sockaddr *, in_addr_t *, ==== //depot/projects/hostcache/sys/netinet/in_rmx.c#2 (text+ko) ==== @@ -73,15 +73,6 @@ struct radix_node *ret; /* - * For IP, all unicast non-host routes are automatically cloning. - */ - if (IN_MULTICAST(ntohl(sin->sin_addr.s_addr))) - rt->rt_flags |= RTF_MULTICAST; - - if (!(rt->rt_flags & (RTF_HOST | RTF_CLONING | RTF_MULTICAST))) - rt->rt_flags |= RTF_PRCLONING; - - /* * A little bit of help for both IP output and input: * For host routes, we make sure that RTF_BROADCAST * is set for anything that looks like a broadcast address. @@ -94,8 +85,7 @@ * * We also mark routes to multicast addresses as such, because * it's easy to do and might be useful (but this is much more - * dubious since it's so easy to inspect the address). (This - * is done above.) + * dubious since it's so easy to inspect the address). */ if (rt->rt_flags & RTF_HOST) { if (in_broadcast(sin->sin_addr, rt->rt_ifp)) { @@ -105,9 +95,10 @@ rt->rt_flags |= RTF_LOCAL; } } + if (IN_MULTICAST(ntohl(sin->sin_addr.s_addr))) + rt->rt_flags |= RTF_MULTICAST; - if (!rt->rt_rmx.rmx_mtu && !(rt->rt_rmx.rmx_locks & RTV_MTU) && - rt->rt_ifp) + if (!rt->rt_rmx.rmx_mtu && rt->rt_ifp) rt->rt_rmx.rmx_mtu = rt->rt_ifp->if_mtu; ret = rn_addroute(v_arg, n_arg, head, treenodes); @@ -118,8 +109,7 @@ * Find out if it is because of an * ARP entry and delete it if so. */ - rt2 = rtalloc1((struct sockaddr *)sin, 0, - RTF_CLONING | RTF_PRCLONING); + rt2 = rtalloc1((struct sockaddr *)sin, 0, RTF_CLONING); if (rt2) { if (rt2->rt_flags & RTF_LLINFO && rt2->rt_flags & RTF_HOST && @@ -138,14 +128,6 @@ RTFREE_LOCKED(rt2); } } - - /* - * If the new route created successfully, and we are forwarding, - * flush any cached routes to avoid using a stale value. - */ - if (ret != NULL && ipforwarding) - ip_forward_cacheinval(); - return ret; } @@ -398,7 +380,7 @@ * so that behavior is not needed there. */ RT_LOCK(rt); - rt->rt_flags &= ~(RTF_CLONING | RTF_PRCLONING); + rt->rt_flags &= ~RTF_CLONING; RT_UNLOCK(rt); err = rtrequest(RTM_DELETE, (struct sockaddr *)rt_key(rt), rt->rt_gateway, rt_mask(rt), rt->rt_flags, 0); ==== //depot/projects/hostcache/sys/netinet/in_var.h#2 (text+ko) ==== @@ -230,9 +230,7 @@ void ip_input(struct mbuf *); int in_ifadown(struct ifaddr *ifa, int); void in_ifscrub(struct ifnet *, struct in_ifaddr *); -int ipflow_fastforward(struct mbuf *); -void ipflow_create(const struct route *, struct mbuf *); -void ipflow_slowtimo(void); +int ip_fastforward(struct mbuf *); #endif /* _KERNEL */ ==== //depot/projects/hostcache/sys/netinet/ip_divert.c#2 (text+ko) ==== @@ -333,7 +333,7 @@ /* Send packet to output processing */ ipstat.ips_rawout++; /* XXX */ error = ip_output((struct mbuf *)&divert_tag, - inp->inp_options, &inp->inp_route, + inp->inp_options, NULL, (so->so_options & SO_DONTROUTE) | IP_ALLOWBROADCAST | IP_RAWOUTPUT, inp->inp_moptions, NULL); ==== //depot/projects/hostcache/sys/netinet/ip_flow.c#2 (text+ko) ==== @@ -1,377 +1,1 @@ -/*- - * Copyright (c) 1998 The NetBSD Foundation, Inc. - * All rights reserved. - * - * This code is derived from software contributed to The NetBSD Foundation - * by the 3am Software Foundry ("3am"). It was developed by Matt Thomas. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * 1. Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * 2. Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the NetBSD - * Foundation, Inc. and its contributors. - * 4. Neither the name of The NetBSD Foundation nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS - * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR - * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS - * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR - * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF - * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS - * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN - * CONTRACT, STRICT LIABILITY, OR TORT (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/sys/netinet/ip_flow.c,v 1.15 2003/10/04 03:44:49 sam Exp $ - */ - -#include -#include -#include -#include -#include -#include -#include -#include -#include - -#include - -#include -#include - -#include -#include -#include -#include -#include -#include - -#define IPFLOW_TIMER (5 * PR_SLOWHZ) -#define IPFLOW_HASHBITS 6 /* should not be a multiple of 8 */ -#define IPFLOW_HASHSIZE (1 << IPFLOW_HASHBITS) -#if IPFLOW_HASHSIZE > 255 -#error "make ipf_hash larger" -#endif -static struct ipflow_head ipflows[IPFLOW_HASHSIZE]; -static int ipflow_inuse; -#define IPFLOW_MAX 256 - -/* - * Each flow list has a lock that guards updates to the list and to - * all entries on the list. Flow entries hold the hash index for - * finding the head of the list so the lock can be found quickly. - * - * ipflow_inuse holds a count of the number of flow entries present. - * This is used to bound the size of the table. When IPFLOW_MAX entries - * are present and an additional entry is needed one is chosen for - * replacement. We could use atomic ops for this counter but having it - * inconsistent doesn't appear to be a problem. - */ -#define IPFLOW_HEAD_LOCK(_ipfh) mtx_lock(&(_ipfh)->ipfh_mtx) -#define IPFLOW_HEAD_UNLOCK(_ipfh) mtx_unlock(&(_ipfh)->ipfh_mtx) -#define IPFLOW_LOCK(_ipf) \ - IPFLOW_HEAD_LOCK(&ipflows[(_ipf)->ipf_hash]) -#define IPFLOW_UNLOCK(_ipf) \ - IPFLOW_HEAD_UNLOCK(&ipflows[(_ipf)->ipf_hash]) - -static int ipflow_active = 0; -SYSCTL_INT(_net_inet_ip, IPCTL_FASTFORWARDING, fastforwarding, CTLFLAG_RW, - &ipflow_active, 0, "Enable flow-based IP forwarding"); - -static MALLOC_DEFINE(M_IPFLOW, "ip_flow", "IP flow"); - -static unsigned -ipflow_hash(struct in_addr dst, struct in_addr src, unsigned tos) -{ - unsigned hash = tos; - int idx; - for (idx = 0; idx < 32; idx += IPFLOW_HASHBITS) - hash += (dst.s_addr >> (32 - idx)) + (src.s_addr >> idx); - return hash & (IPFLOW_HASHSIZE-1); -} - -static struct ipflow * -ipflow_lookup(const struct ip *ip) -{ - unsigned hash; - struct ipflow_head *head; - struct ipflow *ipf; - - hash = ipflow_hash(ip->ip_dst, ip->ip_src, ip->ip_tos); - head = &ipflows[hash]; - - IPFLOW_HEAD_LOCK(head); - LIST_FOREACH(ipf, &head->ipfh_head, ipf_next) { - if (ip->ip_dst.s_addr == ipf->ipf_dst.s_addr - && ip->ip_src.s_addr == ipf->ipf_src.s_addr - && ip->ip_tos == ipf->ipf_tos) { - /* NB: return head locked */ - return ipf; - } - } - IPFLOW_HEAD_UNLOCK(head); - return NULL; -} - -int -ipflow_fastforward(struct mbuf *m) -{ - struct ip *ip; - struct ipflow *ipf; - struct rtentry *rt; - struct sockaddr *dst; - int error; - - /* - * Are we forwarding packets? Big enough for an IP packet? - */ - if (!ipforwarding || !ipflow_active || m->m_len < sizeof(struct ip)) - return 0; - /* - * IP header with no option and valid version and length - */ - ip = mtod(m, struct ip *); - if (ip->ip_v != IPVERSION || ip->ip_hl != (sizeof(struct ip) >> 2) - || ntohs(ip->ip_len) > m->m_pkthdr.len) - return 0; - /* - * Find a flow. - */ - if ((ipf = ipflow_lookup(ip)) == NULL) - return 0; - - /* - * Route and interface still up? - */ - rt = ipf->ipf_ro.ro_rt; - if ((rt->rt_flags & RTF_UP) == 0 || (rt->rt_ifp->if_flags & IFF_UP) == 0) { - IPFLOW_UNLOCK(ipf); - return 0; - } - - /* - * Packet size OK? TTL? - */ - if (m->m_pkthdr.len > rt->rt_ifp->if_mtu || ip->ip_ttl <= IPTTLDEC) { - IPFLOW_UNLOCK(ipf); - return 0; - } - - /* - * Everything checks out and so we can forward this packet. - * Modify the TTL and incrementally change the checksum. - */ - ip->ip_ttl -= IPTTLDEC; - if (ip->ip_sum >= htons(0xffff - (IPTTLDEC << 8))) { - ip->ip_sum += htons(IPTTLDEC << 8) + 1; - } else { - ip->ip_sum += htons(IPTTLDEC << 8); - } - - /* - * Send the packet on its way. All we can get back is ENOBUFS - */ - ipf->ipf_uses++; - ipf->ipf_timer = IPFLOW_TIMER; - - if (rt->rt_flags & RTF_GATEWAY) - dst = rt->rt_gateway; - else - dst = &ipf->ipf_ro.ro_dst; - if ((error = (*rt->rt_ifp->if_output)(rt->rt_ifp, m, dst, rt)) != 0) { - if (error == ENOBUFS) - ipf->ipf_dropped++; - else - ipf->ipf_errors++; - } - IPFLOW_UNLOCK(ipf); - return 1; -} - -static void -ipflow_addstats(struct ipflow *ipf) -{ - ipf->ipf_ro.ro_rt->rt_use += ipf->ipf_uses; - ipstat.ips_cantforward += ipf->ipf_errors + ipf->ipf_dropped; - ipstat.ips_forward += ipf->ipf_uses; - ipstat.ips_fastforward += ipf->ipf_uses; -} - -/* - * XXX the locking here makes reaping an entry very expensive... - */ -static struct ipflow * -ipflow_reap(void) -{ - struct ipflow *victim = NULL; - struct ipflow *ipf; - int idx; - - for (idx = 0; idx < IPFLOW_HASHSIZE; idx++) { - struct ipflow_head *head = &ipflows[idx]; - - IPFLOW_HEAD_LOCK(head); - LIST_FOREACH(ipf, &head->ipfh_head, ipf_next) { - /* - * If this no longer points to a valid route - * reclaim it. - */ - if ((ipf->ipf_ro.ro_rt->rt_flags & RTF_UP) == 0) - goto done; - /* - * choose the one that's been least recently used - * or has had the least uses in the last 1.5 - * intervals. - */ - if (victim == NULL) - victim = ipf; - else if (ipf->ipf_timer < victim->ipf_timer - || (ipf->ipf_timer == victim->ipf_timer - && ipf->ipf_last_uses + ipf->ipf_uses < - victim->ipf_last_uses + victim->ipf_uses)) { >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Thu Oct 23 21:57:57 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9242216A4C0; Thu, 23 Oct 2003 21:57:57 -0700 (PDT) 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 6040716A4B3 for ; Thu, 23 Oct 2003 21:57:57 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E0E1543FBD for ; Thu, 23 Oct 2003 21:57:56 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9O4vuXJ026139 for ; Thu, 23 Oct 2003 21:57:56 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9O4vuAY026136 for perforce@freebsd.org; Thu, 23 Oct 2003 21:57:56 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 21:57:56 -0700 (PDT) Message-Id: <200310240457.h9O4vuAY026136@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40368 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 04:57:58 -0000 http://perforce.freebsd.org/chv.cgi?CH=40368 Change 40368 by sam@sam_ebb on 2003/10/23 21:57:19 allocate memory holding mutex's pre-zero'd so mtx_init doesn't panic because a mutex is already initialized when WINESS is enabled Affected files ... .. //depot/projects/hostcache/sys/netinet/tcp_hostcache.c#4 edit Differences ... ==== //depot/projects/hostcache/sys/netinet/tcp_hostcache.c#4 (text+ko) ==== @@ -218,10 +218,12 @@ /* * Allocate the hash table + * + * NB: M_ZERO is to keep WITNESS happy. */ MALLOC(tcp_hostcache.hashbase, struct hc_head *, tcp_hostcache.hashsize * sizeof(struct hc_head), - M_HOSTCACHE, M_WAITOK); + M_HOSTCACHE, M_WAITOK | M_ZERO); /* * Initialize the hash buckets From owner-p4-projects@FreeBSD.ORG Thu Oct 23 21:59:00 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E339316A4C0; Thu, 23 Oct 2003 21:58:59 -0700 (PDT) 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 B953A16A4B3 for ; Thu, 23 Oct 2003 21:58:59 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E079E43F75 for ; Thu, 23 Oct 2003 21:58:58 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9O4wwXJ026243 for ; Thu, 23 Oct 2003 21:58:58 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9O4wwXR026240 for perforce@freebsd.org; Thu, 23 Oct 2003 21:58:58 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 21:58:58 -0700 (PDT) Message-Id: <200310240458.h9O4wwXR026240@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40369 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 04:59:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=40369 Change 40369 by sam@sam_ebb on 2003/10/23 21:58:22 re-apply earlier fix to correctly recognize when the reference to a locally allocate routing table entry needs to be reclaimed Affected files ... .. //depot/projects/hostcache/sys/netinet6/in6_src.c#4 edit Differences ... ==== //depot/projects/hostcache/sys/netinet6/in6_src.c#4 (text+ko) ==== @@ -280,8 +280,8 @@ if (ia6 == 0) /* xxx scope error ?*/ ia6 = ifatoia6(ro->ro_rt->rt_ifa); } - if (sro.ro_rt) - RTFREE(sro.ro_rt); + if (ro == &sro && ro->ro_rt) + RTFREE(ro->ro_rt); if (ia6 == 0) { *errorp = EHOSTUNREACH; /* no route */ return (0); From owner-p4-projects@FreeBSD.ORG Thu Oct 23 22:22:32 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D2A9F16A4C0; Thu, 23 Oct 2003 22:22:31 -0700 (PDT) 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 A2AEB16A4B3 for ; Thu, 23 Oct 2003 22:22:31 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F3D7243F3F for ; Thu, 23 Oct 2003 22:22:28 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9O5MSXJ028137 for ; Thu, 23 Oct 2003 22:22:28 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9O5MSiK028134 for perforce@freebsd.org; Thu, 23 Oct 2003 22:22:28 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Thu, 23 Oct 2003 22:22:28 -0700 (PDT) Message-Id: <200310240522.h9O5MSiK028134@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40371 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 05:22:32 -0000 http://perforce.freebsd.org/chv.cgi?CH=40371 Change 40371 by sam@sam_ebb on 2003/10/23 22:22:23 populate branch Affected files ... .. //depot/projects/netperf+sockets/sys/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/alpha/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/alpha-gdbstub.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/api_up1000.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/atomic.s#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/autoconf.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/busdma_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/busspace.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/clock.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/clock_if.m#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/cpuconf.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/critical.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/db_disasm.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/db_instruction.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/db_interface.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/db_trace.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_1000a.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_2100_a50.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_2100_a500.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_3000_300.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_3000_500.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_axppci_33.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_eb164.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_eb64plus.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_kn20aa.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_kn300.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_kn8ae.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_st550.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dec_st6600.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/divrem.m4#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/dump_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/elf_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/exception.s#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/fp_emulate.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/genassym.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/ieee_float.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/ieee_float.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/in_cksum.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/interrupt.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/locore.s#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/mem.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/mp_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/pal.s#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/pmap.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/prom.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/prom_disp.s#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/promcons.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/sgmap.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/support.s#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/swtch.s#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/sys_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/timerreg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/trap.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/alpha/vm_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/compile/.cvsignore#1 branch .. //depot/projects/netperf+sockets/sys/alpha/conf/GENERIC#1 branch .. //depot/projects/netperf+sockets/sys/alpha/conf/GENERIC.hints#1 branch .. //depot/projects/netperf+sockets/sys/alpha/conf/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/alpha/conf/NOTES#1 branch .. //depot/projects/netperf+sockets/sys/alpha/conf/gethints.awk#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/_inttypes.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/_limits.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/_stdint.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/_types.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/alpha_cpu.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/asm.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/atomic.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/bootinfo.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/bus.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/bus_memio.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/bus_pio.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/bwx.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/chipset.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/clock.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/clockvar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/cpu.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/cpuconf.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/cpufunc.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/critical.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/db_machdep.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/elf.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/endian.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/exec.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/float.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/floatingpoint.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/fpu.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/frame.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/ieee.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/ieeefp.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/in_cksum.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/inst.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/intr.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/intrcnt.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/ioctl_bt848.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/ioctl_meteor.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/kse.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/limits.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/md_var.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/mutex.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/pal.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/param.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/pc/bios.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/pc/display.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/pc/msdos.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/pc/vesa.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/pcb.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/pcpu.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/pmap.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/proc.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/profile.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/prom.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/pte.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/ptrace.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/reg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/reloc.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/resource.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/rpb.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/runq.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/setjmp.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/sgmap.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/sigframe.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/signal.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/smp.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/stdarg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/swiz.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/sysarch.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/ucontext.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/varargs.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/include/vmparam.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/isa/isa.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/isa/isa_dma.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/isa/isavar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/isa/mcclock_isa.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/linux.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/linux_dummy.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/linux_genassym.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/linux_ipc64.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/linux_locore.s#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/linux_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/linux_proto.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/linux_syscall.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/linux_sysent.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/linux_sysvec.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/syscalls.conf#1 branch .. //depot/projects/netperf+sockets/sys/alpha/linux/syscalls.master#1 branch .. //depot/projects/netperf+sockets/sys/alpha/mcbus/mcbus.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/mcbus/mcbusreg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/mcbus/mcbusvar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/mcbus/mcmem.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/mcbus/mcpcia.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/mcbus/mcpciareg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/mcbus/mcpciavar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/README.mach-traps#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/exec_ecoff.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/imgact_osf1.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/osf1.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/osf1_ioctl.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/osf1_misc.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/osf1_mount.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/osf1_proto.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/osf1_signal.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/osf1_signal.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/osf1_syscall.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/osf1_sysent.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/osf1_sysvec.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/osf1_util.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/syscalls.conf#1 branch .. //depot/projects/netperf+sockets/sys/alpha/osf1/syscalls.master#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/alphapci_if.m#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/apecs.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/apecs_pci.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/apecsreg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/apecsvar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/bwx.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/cia.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/cia_pci.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/ciareg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/ciavar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/irongate.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/irongate_pci.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/irongatereg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/irongatevar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/lca.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/lca_pci.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/lcareg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/lcavar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/pci_eb164_intr.s#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/pci_eb64plus_intr.s#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/pcibus.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/pcibus.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/swiz.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/t2.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/t2_pci.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/t2reg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/t2var.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/tsunami.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/tsunami_pci.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/tsunamireg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/pci/tsunamivar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/dwlpx.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/dwlpxreg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/dwlpxvar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/gbus.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/gbusreg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/gbusvar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/kftxx.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/kftxxreg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/kftxxvar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/mcclock_tlsb.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/tlsb.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/tlsbcpu.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/tlsbmem.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/tlsbreg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/tlsbvar.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/zs_tlsb.c#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/zsreg.h#1 branch .. //depot/projects/netperf+sockets/sys/alpha/tlsb/zsvar.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/amd64/acpica/OsdEnvironment.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/acpica/acpi_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/acpica/acpi_wakeup.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/amd64-gdbstub.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/amd64_mem.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/atomic.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/autoconf.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/busdma_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/cpu_switch.S#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/critical.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/db_disasm.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/db_interface.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/db_trace.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/dump_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/elf_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/exception.S#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/genassym.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/identcpu.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/in_cksum.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/initcpu.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/legacy.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/locore.S#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/mem.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/nexus.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/pmap.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/sigtramp.S#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/support.S#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/sys_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/trap.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/tsc.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/uma_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/amd64/vm_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/compile/.cvsignore#1 branch .. //depot/projects/netperf+sockets/sys/amd64/conf/GENERIC#1 branch .. //depot/projects/netperf+sockets/sys/amd64/conf/GENERIC.hints#1 branch .. //depot/projects/netperf+sockets/sys/amd64/conf/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/amd64/conf/gethints.awk#1 branch .. //depot/projects/netperf+sockets/sys/amd64/ia32/ia32_exception.S#1 branch .. //depot/projects/netperf+sockets/sys/amd64/ia32/ia32_signal.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/ia32/ia32_syscall.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/_inttypes.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/_limits.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/_stdint.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/_types.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/acpica_machdep.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/asm.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/asmacros.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/atomic.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/bus.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/bus_amd64.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/bus_dma.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/bus_memio.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/bus_pio.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/clock.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/cpu.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/cpufunc.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/cputypes.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/critical.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/db_machdep.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/elf.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/endian.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/exec.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/float.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/floatingpoint.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/frame.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/ieeefp.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/in_cksum.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/kse.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/legacyvar.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/limits.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/md_var.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/metadata.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/mutex.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/npx.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/param.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/pc/display.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/pcb.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/pcb_ext.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/pci_cfgreg.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/pcpu.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/pmap.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/proc.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/profile.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/psl.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/ptrace.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/reg.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/reloc.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/resource.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/runq.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/segments.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/setjmp.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/sigframe.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/signal.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/smp.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/specialreg.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/stdarg.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/sysarch.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/trap.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/tss.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/ucontext.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/varargs.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/include/vmparam.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/clock.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/icu.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/icu_ipl.S#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/icu_vector.S#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/intr_machdep.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/intr_machdep.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/isa.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/isa.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/isa_dma.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/isa_dma.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/ithread.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/npx.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/timerreg.h#1 branch .. //depot/projects/netperf+sockets/sys/amd64/isa/vector.S#1 branch .. //depot/projects/netperf+sockets/sys/amd64/pci/pci_bus.c#1 branch .. //depot/projects/netperf+sockets/sys/amd64/pci/pci_cfgreg.c#1 branch .. //depot/projects/netperf+sockets/sys/arm/compile/.cvsignore#1 branch .. //depot/projects/netperf+sockets/sys/arm/include/_limits.h#1 branch .. //depot/projects/netperf+sockets/sys/arm/include/_stdint.h#1 branch .. //depot/projects/netperf+sockets/sys/arm/include/_types.h#1 branch .. //depot/projects/netperf+sockets/sys/arm/include/elf.h#1 branch .. //depot/projects/netperf+sockets/sys/arm/include/endian.h#1 branch .. //depot/projects/netperf+sockets/sys/arm/include/exec.h#1 branch .. //depot/projects/netperf+sockets/sys/arm/include/limits.h#1 branch .. //depot/projects/netperf+sockets/sys/arm/include/param.h#1 branch .. //depot/projects/netperf+sockets/sys/arm/include/signal.h#1 branch .. //depot/projects/netperf+sockets/sys/arm/include/ucontext.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/README#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/Makefile.inc#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/boot1/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/boot1/boot1.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/cdboot/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/cdboot/version#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/common/Makefile.common#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/common/conf.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/common/help.alpha#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/common/main.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/OSFpal.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/alpha_copy.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/alpha_module.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/bbinfo.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/bootinfo.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/common.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/delay.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/devicename.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/elf_freebsd.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/getsecs.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/libalpha.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/pal.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/prom.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/prom_disp.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/prom_swpal.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/reboot.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/srmdisk.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/srmnet.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/start.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/libalpha/time.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/loader/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/loader/version#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/netboot/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/alpha/netboot/version#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/Makefile.inc#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/include/arcfuncs.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/include/arctypes.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/include/libarc.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/abort.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/arcconsole.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/arcdisk.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/arch/alpha/copy.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/arch/alpha/rpb.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/arch/alpha/setjmp.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/arch/alpha/start.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/bootinfo.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/delay.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/devicename.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/elf_freebsd.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/module.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/prom.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/setjmperr.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/lib/time.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/loader/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/loader/conf.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/loader/help.alpha#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/loader/main.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/arc/loader/version#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/Makefile.inc#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/bcache.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/boot.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/bootstrap.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/commands.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/console.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/dev_net.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/dev_net.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/devopen.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/help.common#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/interp.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/interp_backslash.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/interp_forth.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/interp_parse.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/isapnp.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/isapnp.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/load.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/load_elf.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/load_elf32.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/load_elf64.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/loader.8#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/ls.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/merge_help.awk#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/misc.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/module.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/newvers.sh#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/panic.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/pnp.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/pnpdata#1 branch .. //depot/projects/netperf+sockets/sys/boot/common/ufsread.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/Makefile.inc#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/README#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efi.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efi_nii.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efiapi.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/eficon.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efidebug.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efidef.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efidevp.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efierr.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efifpswa.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efifs.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efilib.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efinet.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efipart.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efiprot.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efipxebc.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efiser.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/efistdarg.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/i386/efibind.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/i386/pe.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/ia64/efibind.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/include/ia64/pe.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/arch/ia64/ldscript.ia64#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/arch/ia64/start.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/bootinfo.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/copy.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/delay.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/devicename.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/efi_console.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/efiboot.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/efifpswa.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/efifs.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/efinet.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/elf_freebsd.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/libefi.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/module.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/libefi/time.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/loader/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/loader/conf.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/loader/main.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/efi/loader/version#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/alpha/sysdep.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/alpha/sysdep.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/dict.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/ficl.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/ficl.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/fileaccess.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/float.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/i386/sysdep.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/i386/sysdep.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/ia64/sysdep.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/ia64/sysdep.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/loader.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/math64.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/math64.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/prefix.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/search.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/classes.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/ficlclass.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/ficllocal.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/fileaccess.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/forml.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/freebsd.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/ifbrack.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/jhlocal.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/marker.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/oo.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/prefix.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/softcore.awk#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/softcore.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/softwords/string.fr#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/sparc64/sysdep.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/sparc64/sysdep.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/stack.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/testmain.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/tools.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/unix.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/vm.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ficl/words.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/forth/beastie.4th#1 branch .. //depot/projects/netperf+sockets/sys/boot/forth/frames.4th#1 branch .. //depot/projects/netperf+sockets/sys/boot/forth/loader.4th#1 branch .. //depot/projects/netperf+sockets/sys/boot/forth/loader.4th.8#1 branch .. //depot/projects/netperf+sockets/sys/boot/forth/loader.conf#1 branch .. //depot/projects/netperf+sockets/sys/boot/forth/loader.conf.5#1 branch .. //depot/projects/netperf+sockets/sys/boot/forth/loader.rc#1 branch .. //depot/projects/netperf+sockets/sys/boot/forth/pnp.4th#1 branch .. //depot/projects/netperf+sockets/sys/boot/forth/screen.4th#1 branch .. //depot/projects/netperf+sockets/sys/boot/forth/support.4th#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/Makefile.inc#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/boot0/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/boot0/boot0.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/boot2/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/boot2/boot1.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/boot2/boot2.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/boot2/lib.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/boot2/sio.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/btx/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/btx/Makefile.inc#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/btx/btx/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/btx/btx/btx.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/btx/btxldr/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/btx/btxldr/btxldr.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/btx/lib/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/btx/lib/btxcsu.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/btx/lib/btxsys.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/btx/lib/btxv86.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/btx/lib/btxv86.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/cdboot/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/cdboot/cdboot.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/kgzldr/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/kgzldr/boot.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/kgzldr/crt.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/kgzldr/kgzldr.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/kgzldr/lib.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/kgzldr/sio.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/kgzldr/start.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/amd64_tramp.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/biosacpi.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/bioscd.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/biosdisk.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/biosmem.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/biospci.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/biospnp.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/biossmap.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/bootinfo.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/bootinfo32.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/bootinfo64.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/comconsole.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/devicename.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/elf32_freebsd.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/elf64_freebsd.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/gatea20.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/i386_copy.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/i386_module.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/libi386.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/nullconsole.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/pread.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/pxe.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/pxe.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/pxetramp.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/time.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/libi386/vidconsole.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/loader/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/loader/conf.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/loader/help.i386#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/loader/loader.rc#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/loader/main.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/loader/version#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/mbr/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/mbr/mbr.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/pxeldr/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/pxeldr/pxeboot.8#1 branch .. //depot/projects/netperf+sockets/sys/boot/i386/pxeldr/pxeldr.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/Makefile.inc#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/acpi_stub.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/bootinfo.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/copy.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/delay.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/devicename.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/efi_stub.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/elf_freebsd.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/exit.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/libski.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/module.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/pal_stub.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/sal_stub.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/skiconsole.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/skifs.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/ssc.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/libski/time.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/skiload/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/skiload/conf.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/skiload/ldscript.ia64#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/skiload/main.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/skiload/skiload.cmd#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/skiload/start.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/ia64/skiload/version#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/common/Makefile.inc#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/common/main.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/devicename.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/elf_freebsd.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/libofw.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/ofw_console.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/ofw_copy.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/ofw_disk.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/ofw_memory.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/ofw_module.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/ofw_net.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/ofw_reboot.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/ofw_time.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/openfirm.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/ofw/libofw/openfirm.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/Makefile.inc#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot0.5/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot0.5/boot.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot0.5/boot0.5.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot0.5/disk.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot0.5/selector.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot0.5/start.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot0.5/support.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot0.5/syscons.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot0/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot0/boot0.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/README.serial.98#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/asm.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/asm.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/bios.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/boot.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/boot.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/boot2.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/dinode.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/disk.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/fs.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/inode.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/io.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/probe_keyboard.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/quota.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/serial.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/serial_16550.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/serial_8251.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/start.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/sys.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/boot2/table.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/btx/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/btx/btx/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/btx/btx/btx.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/btx/btxldr/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/btx/btxldr/btxldr.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/btx/lib/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/btx/lib/btxcsu.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/btx/lib/btxsys.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/btx/lib/btxv86.h#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/btx/lib/btxv86.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/kgzldr/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/kgzldr/crt.s#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/libpc98/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/libpc98/biosdisk.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/libpc98/biosmem.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/libpc98/comconsole.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/libpc98/gatea20.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/libpc98/i386_module.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/libpc98/time.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/libpc98/vidconsole.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/loader/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/loader/conf.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/loader/help.pc98#1 branch .. //depot/projects/netperf+sockets/sys/boot/pc98/loader/main.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/powerpc/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/powerpc/loader/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/powerpc/loader/conf.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/powerpc/loader/help.ofw#1 branch .. //depot/projects/netperf+sockets/sys/boot/powerpc/loader/metadata.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/powerpc/loader/start.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/powerpc/loader/version#1 branch .. //depot/projects/netperf+sockets/sys/boot/sparc64/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/sparc64/boot1/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/sparc64/boot1/_start.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/sparc64/boot1/boot1.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/sparc64/loader/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/boot/sparc64/loader/help.sparc64#1 branch .. //depot/projects/netperf+sockets/sys/boot/sparc64/loader/locore.S#1 branch .. //depot/projects/netperf+sockets/sys/boot/sparc64/loader/main.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/sparc64/loader/metadata.c#1 branch .. //depot/projects/netperf+sockets/sys/boot/sparc64/loader/version#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam_ccb.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam_debug.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam_periph.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam_periph.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam_queue.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam_queue.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam_sim.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam_sim.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam_xpt.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam_xpt.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam_xpt_periph.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/cam_xpt_sim.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_all.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_all.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_cd.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_cd.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_ch.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_ch.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_da.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_da.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_dvcfg.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_iu.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_low.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_low.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_low_pisa.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_low_pisa.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_message.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_pass.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_pass.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_pt.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_pt.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_sa.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_sa.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_ses.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_ses.h#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_targ_bh.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_target.c#1 branch .. //depot/projects/netperf+sockets/sys/cam/scsi/scsi_targetio.h#1 branch .. //depot/projects/netperf+sockets/sys/coda/00READ#1 branch .. //depot/projects/netperf+sockets/sys/coda/README#1 branch .. //depot/projects/netperf+sockets/sys/coda/TODO#1 branch .. //depot/projects/netperf+sockets/sys/coda/cnode.h#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda.h#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_fbsd.c#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_io.h#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_kernel.h#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_namecache.c#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_namecache.h#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_opstats.h#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_pioctl.h#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_psdev.c#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_psdev.h#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_subr.c#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_subr.h#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_venus.c#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_venus.h#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_vfsops.c#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_vfsops.h#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_vnops.c#1 branch .. //depot/projects/netperf+sockets/sys/coda/coda_vnops.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/freebsd32/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/compat/freebsd32/freebsd32.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/freebsd32/freebsd32_misc.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/freebsd32/freebsd32_proto.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/freebsd32/freebsd32_syscall.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/freebsd32/freebsd32_syscalls.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/freebsd32/freebsd32_sysent.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/freebsd32/freebsd32_util.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/freebsd32/syscalls.conf#1 branch .. //depot/projects/netperf+sockets/sys/compat/freebsd32/syscalls.master#1 branch .. //depot/projects/netperf+sockets/sys/compat/ia32/ia32_genassym.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/ia32/ia32_signal.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/ia32/ia32_sigtramp.S#1 branch .. //depot/projects/netperf+sockets/sys/compat/ia32/ia32_sysvec.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/ia32/ia32_util.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/linprocfs/linprocfs.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_file.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_getcwd.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_ioctl.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_ioctl.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_ipc.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_ipc.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_mib.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_mib.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_misc.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_signal.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_signal.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_socket.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_socket.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_stats.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_sysctl.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_uid16.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_util.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/linux/linux_util.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/pecoff/imgact_pecoff.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/pecoff/imgact_pecoff.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/Makefile#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/imgact_svr4.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_acl.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_dirent.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_errno.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_exec.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_fcntl.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_fcntl.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_filio.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_filio.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_fuser.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_hrt.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_ioctl.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_ioctl.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_ipc.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_ipc.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_misc.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_mman.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_proto.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_resource.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_resource.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_siginfo.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_signal.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_signal.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_socket.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_socket.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_sockio.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_sockio.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_sockmod.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_stat.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_stat.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_statvfs.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_stream.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_stropts.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_syscall.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_syscallnames.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_sysconfig.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_sysent.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_systeminfo.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_sysvec.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_termios.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_termios.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_time.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_timod.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_ttold.c#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_ttold.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_types.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_ucontext.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_ulimit.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_ustat.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_util.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_utsname.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/svr4_wait.h#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/syscalls.conf#1 branch .. //depot/projects/netperf+sockets/sys/compat/svr4/syscalls.master#1 branch .. //depot/projects/netperf+sockets/sys/conf/Makefile.alpha#1 branch .. //depot/projects/netperf+sockets/sys/conf/Makefile.amd64#1 branch .. //depot/projects/netperf+sockets/sys/conf/Makefile.i386#1 branch .. //depot/projects/netperf+sockets/sys/conf/Makefile.ia64#1 branch .. //depot/projects/netperf+sockets/sys/conf/Makefile.pc98#1 branch .. //depot/projects/netperf+sockets/sys/conf/Makefile.powerpc#1 branch .. //depot/projects/netperf+sockets/sys/conf/Makefile.sparc64#1 branch .. //depot/projects/netperf+sockets/sys/conf/NOTES#1 branch .. //depot/projects/netperf+sockets/sys/conf/defines#1 branch .. //depot/projects/netperf+sockets/sys/conf/files#1 branch .. //depot/projects/netperf+sockets/sys/conf/files.alpha#1 branch .. //depot/projects/netperf+sockets/sys/conf/files.amd64#1 branch .. //depot/projects/netperf+sockets/sys/conf/files.i386#1 branch .. //depot/projects/netperf+sockets/sys/conf/files.ia64#1 branch .. //depot/projects/netperf+sockets/sys/conf/files.pc98#1 branch .. //depot/projects/netperf+sockets/sys/conf/files.powerpc#1 branch .. //depot/projects/netperf+sockets/sys/conf/files.sparc64#1 branch .. //depot/projects/netperf+sockets/sys/conf/kern.mk#1 branch .. //depot/projects/netperf+sockets/sys/conf/kern.post.mk#1 branch .. //depot/projects/netperf+sockets/sys/conf/kern.pre.mk#1 branch .. //depot/projects/netperf+sockets/sys/conf/kmod.mk#1 branch .. //depot/projects/netperf+sockets/sys/conf/kmod_syms.awk#1 branch .. //depot/projects/netperf+sockets/sys/conf/ldscript.alpha#1 branch .. //depot/projects/netperf+sockets/sys/conf/ldscript.amd64#1 branch .. //depot/projects/netperf+sockets/sys/conf/ldscript.i386#1 branch .. //depot/projects/netperf+sockets/sys/conf/ldscript.ia64#1 branch .. //depot/projects/netperf+sockets/sys/conf/ldscript.powerpc#1 branch .. //depot/projects/netperf+sockets/sys/conf/ldscript.sparc64#1 branch .. //depot/projects/netperf+sockets/sys/conf/majors#1 branch .. //depot/projects/netperf+sockets/sys/conf/majors.awk#1 branch .. //depot/projects/netperf+sockets/sys/conf/makeLINT.mk#1 branch .. //depot/projects/netperf+sockets/sys/conf/makeLINT.sed#1 branch .. //depot/projects/netperf+sockets/sys/conf/newvers.sh#1 branch .. //depot/projects/netperf+sockets/sys/conf/options#1 branch .. //depot/projects/netperf+sockets/sys/conf/options.alpha#1 branch .. //depot/projects/netperf+sockets/sys/conf/options.amd64#1 branch .. //depot/projects/netperf+sockets/sys/conf/options.i386#1 branch .. //depot/projects/netperf+sockets/sys/conf/options.ia64#1 branch .. //depot/projects/netperf+sockets/sys/conf/options.pc98#1 branch .. //depot/projects/netperf+sockets/sys/conf/options.powerpc#1 branch .. //depot/projects/netperf+sockets/sys/conf/options.sparc64#1 branch .. //depot/projects/netperf+sockets/sys/conf/systags.sh#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/CHANGES.txt#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acapps.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acconfig.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acdebug.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acdisasm.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acdispat.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acefi.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acenv.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acevents.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acexcep.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acfreebsd.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acgcc.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acglobal.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/achware.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acinterp.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/aclocal.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acmacros.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acnamesp.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acobject.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acoutput.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acparser.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acpi.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acpica_prep.sh#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acpiosxf.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acpixf.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acresrc.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acstruct.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/actables.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/actbl.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/actbl1.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/actbl2.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/actypes.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/acutils.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/amlcode.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/amlresrc.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/common/adisasm.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/common/getopt.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslanalyze.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslcodegen.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslcompile.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslcompiler.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslcompiler.l#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslcompiler.y#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslerror.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslfiles.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslfold.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslglobal.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/asllength.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/asllisting.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslload.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/asllookup.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslmain.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslmap.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslopcodes.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/asloperands.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslopt.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslresource.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslrestype1.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslrestype2.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslstubs.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/asltransform.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/asltree.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/asltypes.h#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/compiler/aslutils.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dbcmds.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dbdisply.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dbexec.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dbfileio.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dbhistry.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dbinput.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dbstats.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dbutils.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dbxface.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dmbuffer.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dmnames.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dmobject.c#1 branch .. //depot/projects/netperf+sockets/sys/contrib/dev/acpica/dmopcode.c#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Oct 24 10:53:30 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BE9BA16A4C0; Fri, 24 Oct 2003 10:53:29 -0700 (PDT) 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 9950116A4B3 for ; Fri, 24 Oct 2003 10:53:29 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A8F3C43FAF for ; Fri, 24 Oct 2003 10:53:28 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9OHrSXJ006337 for ; Fri, 24 Oct 2003 10:53:28 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9OHrSla006334 for perforce@freebsd.org; Fri, 24 Oct 2003 10:53:28 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Fri, 24 Oct 2003 10:53:28 -0700 (PDT) Message-Id: <200310241753.h9OHrSla006334@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40408 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 17:53:30 -0000 http://perforce.freebsd.org/chv.cgi?CH=40408 Change 40408 by sam@sam_ebb on 2003/10/24 10:52:50 add rt_print function to dump a routing table entry; needs to be under DIAGNOSTICS or similar and needs more work Affected files ... .. //depot/projects/netperf/sys/net/route.c#19 edit .. //depot/projects/netperf/sys/net/route.h#9 edit Differences ... ==== //depot/projects/netperf/sys/net/route.c#19 (text+ko) ==== @@ -1217,5 +1217,46 @@ #undef senderr } +static void +rt_print_sockaddr(const char *leader, const char *tag, const struct sockaddr *sa) +{ + printf("%s%s: len %u af %u addr %7D\n", leader, tag, + sa->sa_len, sa->sa_family, + (const unsigned char *) sa->sa_data, ":"); +} + +static void +rt_print1(const char *leader, const char *tag, const struct rtentry *rt) +{ + printf("%s%s @%p: refcnt %ld flags 0x%lx\n", leader, tag, + rt, rt->rt_refcnt, rt->rt_flags); + printf("%sllinfo %p nodes %p %p\n", leader, + rt->rt_llinfo, &rt->rt_nodes[0], &rt->rt_nodes[1]); + if (rt->rt_gateway) + rt_print_sockaddr(leader, "gw", rt->rt_gateway); + if (rt_key(rt)) + rt_print_sockaddr(leader, "key", rt_key(rt)); + if (rt_mask(rt)) + rt_print_sockaddr(leader, "mask", rt_mask(rt)); + if (rt->rt_ifp) + printf("%sifp: %p (%s%u)\n", leader, + rt->rt_ifp, rt->rt_ifp->if_name, rt->rt_ifp->if_unit); + if (rt->rt_ifa) + printf("%sifa: %p\n", leader, rt->rt_ifa); /* XXX expand */ + if (rt->rt_genmask) + rt_print_sockaddr(leader, "genmask", rt->rt_genmask); + if (rt->rt_gwroute) + rt_print1(" ", "gwroute", rt->rt_gwroute); + if (rt->rt_parent) + rt_print1(" ", "parent", rt->rt_parent); + /* XXX rt_rmx */ +} + +void +rt_print(const struct rtentry *rt) +{ + rt_print1("", "route", rt); +} + /* This must be before ip6_init2(), which is now SI_ORDER_MIDDLE */ SYSINIT(route, SI_SUB_PROTO_DOMAIN, SI_ORDER_THIRD, route_init, 0); ==== //depot/projects/netperf/sys/net/route.h#9 (text+ko) ==== @@ -306,6 +306,7 @@ struct sockaddr *, struct sockaddr *, int, struct rtentry **); int rtrequest1(int, struct rt_addrinfo *, struct rtentry **); int rt_check(struct rtentry **, struct rtentry **, struct sockaddr *); +void rt_print(const struct rtentry *); #endif #endif From owner-p4-projects@FreeBSD.ORG Fri Oct 24 10:54:31 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 3967116A4C0; Fri, 24 Oct 2003 10:54:31 -0700 (PDT) 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 1383616A4B3 for ; Fri, 24 Oct 2003 10:54:31 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 8ACF943FB1 for ; Fri, 24 Oct 2003 10:54:30 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9OHsUXJ006373 for ; Fri, 24 Oct 2003 10:54:30 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9OHsUkY006370 for perforce@freebsd.org; Fri, 24 Oct 2003 10:54:30 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Fri, 24 Oct 2003 10:54:30 -0700 (PDT) Message-Id: <200310241754.h9OHsUkY006370@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40409 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 17:54:31 -0000 http://perforce.freebsd.org/chv.cgi?CH=40409 Change 40409 by sam@sam_ebb on 2003/10/24 10:53:49 o add locking around changes to the routing table reference count o dump routing table entry when hitting a reference with a bad reference count o fix comments that still talk about spl's o remove duplicate DUMMYNET_DEBUG define Affected files ... .. //depot/projects/netperf/sys/netinet/ip_dummynet.c#12 edit Differences ... ==== //depot/projects/netperf/sys/netinet/ip_dummynet.c#12 (text+ko) ==== @@ -39,10 +39,7 @@ * + scheduler and dummynet functions; * + configuration and initialization. * - * NOTA BENE: critical sections are protected by splimp()/splx() - * pairs. One would think that splnet() is enough as for most of - * the netinet code, but it is not so because when used with - * bridging, dummynet is invoked at splimp(). + * NOTA BENE: critical sections are protected by the "dummynet lock". * * Most important Changes: * @@ -152,7 +149,6 @@ CTLFLAG_RD, &red_max_pkt_size, 0, "RED Max packet size"); #endif -#define DUMMYNET_DEBUG #ifdef DUMMYNET_DEBUG int dummynet_debug = 0; #ifdef SYSCTL_NODE @@ -194,10 +190,13 @@ { if (rt == NULL) return ; - if (rt->rt_refcnt <= 0) + RT_LOCK(rt); + if (rt->rt_refcnt <= 0) { printf("dummynet: warning, refcnt now %ld, decreasing\n", rt->rt_refcnt); - RTFREE(rt); + rt_print(rt); /* XXX */ + } + RTFREE_LOCKED(rt); } /* @@ -1198,11 +1197,13 @@ * a pointer into *ro so it needs to be updated. */ pkt->ro = *(fwa->ro); - if (fwa->ro->ro_rt) + if (fwa->ro->ro_rt) { + RT_LOCK(fwa->ro->ro_rt); fwa->ro->ro_rt->rt_refcnt++ ; + RT_UNLOCK(fwa->ro->ro_rt); + } if (fwa->dst == (struct sockaddr_in *)&fwa->ro->ro_dst) /* dst points into ro */ fwa->dst = (struct sockaddr_in *)&(pkt->ro.ro_dst) ; - pkt->dn_dst = fwa->dst; pkt->flags = fwa->flags; } From owner-p4-projects@FreeBSD.ORG Fri Oct 24 10:59:39 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E2EDF16A4C0; Fri, 24 Oct 2003 10:59:38 -0700 (PDT) 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 A54C016A4B3 for ; Fri, 24 Oct 2003 10:59:38 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6305743FB1 for ; Fri, 24 Oct 2003 10:59:37 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9OHxbXJ006584 for ; Fri, 24 Oct 2003 10:59:37 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9OHxacX006581 for perforce@freebsd.org; Fri, 24 Oct 2003 10:59:36 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Fri, 24 Oct 2003 10:59:36 -0700 (PDT) Message-Id: <200310241759.h9OHxacX006581@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40410 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 17:59:39 -0000 http://perforce.freebsd.org/chv.cgi?CH=40410 Change 40410 by sam@sam_ebb on 2003/10/24 10:58:46 IFC @ 40409 Affected files ... .. //depot/projects/netperf/sys/conf/NOTES#14 integrate .. //depot/projects/netperf/sys/conf/files#18 integrate .. //depot/projects/netperf/sys/conf/files.ia64#8 integrate .. //depot/projects/netperf/sys/conf/options#13 integrate .. //depot/projects/netperf/sys/dev/dcons/dcons.c#1 branch .. //depot/projects/netperf/sys/dev/dcons/dcons.h#1 branch .. //depot/projects/netperf/sys/dev/dcons/dcons_crom.c#1 branch .. //depot/projects/netperf/sys/dev/firewire/firewire.c#6 integrate .. //depot/projects/netperf/sys/dev/firewire/fwdev.c#4 integrate .. //depot/projects/netperf/sys/dev/hatm/if_hatm.c#6 integrate .. //depot/projects/netperf/sys/dev/pccbb/pccbb.c#6 integrate .. //depot/projects/netperf/sys/ia64/ia64/db_disasm.c#2 delete .. //depot/projects/netperf/sys/ia64/ia64/db_interface.c#2 integrate .. //depot/projects/netperf/sys/ia64/ia64/machdep.c#14 integrate .. //depot/projects/netperf/sys/ia64/include/inst.h#2 delete .. //depot/projects/netperf/sys/modules/Makefile#7 integrate .. //depot/projects/netperf/sys/modules/dcons/Makefile#1 branch .. //depot/projects/netperf/sys/modules/dcons_crom/Makefile#1 branch .. //depot/projects/netperf/sys/modules/netgraph/atm/Makefile#3 integrate .. //depot/projects/netperf/sys/modules/netgraph/atm/atmbase/Makefile#1 branch .. //depot/projects/netperf/sys/modules/netgraph/atm/sscfu/Makefile#1 branch .. //depot/projects/netperf/sys/modules/netgraph/atm/sscop/Makefile#1 branch .. //depot/projects/netperf/sys/net/if.c#10 integrate .. //depot/projects/netperf/sys/net/if_var.h#3 integrate .. //depot/projects/netperf/sys/netgraph/atm/ng_sscfu.h#1 branch .. //depot/projects/netperf/sys/netgraph/atm/ng_sscop.h#1 branch .. //depot/projects/netperf/sys/netgraph/atm/ngatmbase.c#1 branch .. //depot/projects/netperf/sys/netgraph/atm/ngatmbase.h#1 branch .. //depot/projects/netperf/sys/netgraph/atm/sscfu/ng_sscfu.c#1 branch .. //depot/projects/netperf/sys/netgraph/atm/sscfu/ng_sscfu_cust.h#1 branch .. //depot/projects/netperf/sys/netgraph/atm/sscop/ng_sscop.c#1 branch .. //depot/projects/netperf/sys/netgraph/atm/sscop/ng_sscop_cust.h#1 branch .. //depot/projects/netperf/sys/netinet/tcp_subr.c#7 integrate .. //depot/projects/netperf/sys/vm/swap_pager.c#7 integrate .. //depot/projects/netperf/sys/vm/vm_pageout.c#11 integrate .. //depot/projects/netperf/sys/vm/vm_pager.h#3 integrate .. //depot/projects/netperf/sys/vm/vnode_pager.c#9 integrate Differences ... ==== //depot/projects/netperf/sys/conf/NOTES#14 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1179 2003/10/22 22:27:49 njl Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1180 2003/10/24 15:44:08 simokawa Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -2241,11 +2241,21 @@ options UVSCOM_DEFAULT_OPKTSIZE=8 # default output packet size ##################################################################### -# Firewire support +# FireWire support -device firewire # Firewire bus code +device firewire # FireWire bus code device sbp # SCSI over Firewire (Requires scbus and da) -device fwe # Ethernet over Firewire (non-standard!) +device fwe # Ethernet over FireWire (non-standard!) + +##################################################################### +# dcons support (Dumb Console Device) + +device dcons # dumb console driver +device dcons_crom # FireWire attachment +options DCONS_BUF_SIZE=16384 # buffer size +options DCONS_POLL_HZ=100 # polling rate +options DCONS_FORCE_CONSOLE=0 # force to be the primary console +options DCONS_FORCE_GDB=1 # force to be the gdb device ##################################################################### # crypto subsystem ==== //depot/projects/netperf/sys/conf/files#18 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.837 2003/10/22 20:39:33 rwatson Exp $ +# $FreeBSD: src/sys/conf/files,v 1.838 2003/10/24 15:44:08 simokawa Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -351,6 +351,8 @@ dev/cs/if_cs_isa.c optional cs isa dev/cs/if_cs_pccard.c optional cs card dev/cs/if_cs_pccard.c optional cs pccard +dev/dcons/dcons.c optional dcons +dev/dcons/dcons_crom.c optional dcons_crom dev/digi/digi.c optional digi dev/digi/digi_isa.c optional digi isa dev/digi/digi_pci.c optional digi pci ==== //depot/projects/netperf/sys/conf/files.ia64#8 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.ia64,v 1.60 2003/10/23 06:11:37 marcel Exp $ +# $FreeBSD: src/sys/conf/files.ia64,v 1.61 2003/10/24 06:48:41 marcel Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -92,7 +92,6 @@ ia64/ia64/clock_if.m standard ia64/ia64/context.S standard ia64/ia64/critical.c standard -ia64/ia64/db_disasm.c optional ddb ia64/ia64/db_interface.c optional ddb ia64/ia64/db_trace.c optional ddb ia64/ia64/dump_machdep.c standard ==== //depot/projects/netperf/sys/conf/options#13 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.416 2003/10/22 22:27:49 njl Exp $ +# $FreeBSD: src/sys/conf/options,v 1.417 2003/10/24 15:44:08 simokawa Exp $ # # On the handling of kernel options # @@ -675,3 +675,9 @@ AH_DEBUG opt_ah.h AH_DEBUG_ALQ opt_ah.h AH_ASSERT opt_ah.h + +# dcons options +DCONS_BUF_SIZE opt_dcons.h +DCONS_POLL_HZ opt_dcons.h +DCONS_FORCE_CONSOLE opt_dcons.h +DCONS_FORCE_GDB opt_dcons.h ==== //depot/projects/netperf/sys/dev/firewire/firewire.c#6 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/firewire.c,v 1.62 2003/10/06 07:17:43 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/firewire.c,v 1.63 2003/10/24 07:42:21 simokawa Exp $ * */ @@ -338,15 +338,27 @@ splx(s); } +#define WATCHDOC_HZ 10 static void firewire_watchdog(void *arg) { struct firewire_comm *fc; + static int watchdoc_clock = 0; fc = (struct firewire_comm *)arg; - firewire_xfer_timeout(fc); - fc->timeout(fc); - callout_reset(&fc->timeout_callout, hz / 10, + + /* + * At boot stage, the device interrupt is disabled and + * We encounter a timeout easily. To avoid this, + * ignore clock interrupt for a while. + */ + if (watchdoc_clock > WATCHDOC_HZ * 15) { + firewire_xfer_timeout(fc); + fc->timeout(fc); + } else + watchdoc_clock ++; + + callout_reset(&fc->timeout_callout, hz / WATCHDOC_HZ, (void *)firewire_watchdog, (void *)fc); } ==== //depot/projects/netperf/sys/dev/firewire/fwdev.c#4 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/fwdev.c,v 1.33 2003/10/02 04:06:55 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/fwdev.c,v 1.34 2003/10/24 13:55:51 simokawa Exp $ * */ @@ -471,13 +471,11 @@ it->flag |= (0x3f & ichreq->ch); it->flag |= ((0x3 & ichreq->tag) << 6); d->it = it; - err = 0; break; case FW_GTSTREAM: if (it != NULL) { ichreq->ch = it->flag & 0x3f; ichreq->tag = it->flag >> 2 & 0x3; - err = 0; } else err = EINVAL; break; @@ -507,13 +505,11 @@ if (d->ir != NULL) { ichreq->ch = ir->flag & 0x3f; ichreq->tag = ir->flag >> 2 & 0x3; - err = 0; } else err = EINVAL; break; case FW_SSTBUF: bcopy(ibufreq, &d->bufreq, sizeof(d->bufreq)); - err = 0; break; case FW_GSTBUF: bzero(&ibufreq->rx, sizeof(ibufreq->rx)); @@ -532,14 +528,18 @@ case FW_ASYREQ: { struct tcode_info *tinfo; + int pay_len = 0; - xfer = fw_xfer_alloc_buf(M_FWXFER, asyreq->req.len, - PAGE_SIZE/*XXX*/); - if(xfer == NULL){ - err = ENOMEM; - return err; - } fp = &asyreq->pkt; + tinfo = &sc->fc->tcode[fp->mode.hdr.tcode]; + + if ((tinfo->flag & FWTI_BLOCK_ASY) != 0) + pay_len = MAX(0, asyreq->req.len - tinfo->hdr_len); + + xfer = fw_xfer_alloc_buf(M_FWXFER, pay_len, PAGE_SIZE/*XXX*/); + if (xfer == NULL) + return (ENOMEM); + switch (asyreq->req.type) { case FWASREQNODE: break; @@ -550,7 +550,7 @@ device_printf(sc->fc->bdev, "cannot find node\n"); err = EINVAL; - goto error; + goto out; } fp->mode.hdr.dst = FWLOCALBUS | fwdev->dst; break; @@ -561,38 +561,35 @@ /* nothing to do */ break; } - xfer->send.spd = asyreq->req.sped; - tinfo = &sc->fc->tcode[fp->mode.hdr.tcode]; + bcopy(fp, (void *)&xfer->send.hdr, tinfo->hdr_len); - if ((tinfo->flag & FWTI_BLOCK_ASY) != 0) + if (pay_len > 0) bcopy((char *)fp + tinfo->hdr_len, - (void *)&xfer->send.payload, - asyreq->req.len - tinfo->hdr_len); + (void *)&xfer->send.payload, pay_len); + xfer->send.spd = asyreq->req.sped; xfer->act.hand = fw_asy_callback; - err = fw_asyreq(sc->fc, -1, xfer); - if(err){ - fw_xfer_free_buf(xfer); - return err; + + if ((err = fw_asyreq(sc->fc, -1, xfer)) != 0) + goto out; + if ((err = tsleep(xfer, FWPRI, "asyreq", hz)) != 0) + goto out; + if (xfer->resp != 0) { + err = EIO; + goto out; } - err = tsleep(xfer, FWPRI, "asyreq", hz); - if (err == 0) { - if (xfer->resp != 0) { - err = EIO; - goto error; - } - tinfo = &sc->fc->tcode[xfer->recv.hdr.mode.hdr.tcode]; - if (asyreq->req.len >= xfer->recv.pay_len + - tinfo->hdr_len) { - asyreq->req.len = xfer->recv.pay_len; - }else{ - err = EINVAL; - } - bcopy(&xfer->recv.hdr, fp, tinfo->hdr_len); - bcopy(xfer->recv.payload, - (char *)fp + tinfo->hdr_len, - asyreq->req.len - tinfo->hdr_len); - } -error: + if ((tinfo->flag & FWTI_TLABEL) == 0) + goto out; + + /* copy response */ + tinfo = &sc->fc->tcode[xfer->recv.hdr.mode.hdr.tcode]; + if (asyreq->req.len >= xfer->recv.pay_len + tinfo->hdr_len) + asyreq->req.len = xfer->recv.pay_len; + else + err = EINVAL; + bcopy(&xfer->recv.hdr, fp, tinfo->hdr_len); + bcopy(xfer->recv.payload, (char *)fp + tinfo->hdr_len, + MAX(0, asyreq->req.len - tinfo->hdr_len)); +out: fw_xfer_free_buf(xfer); break; } ==== //depot/projects/netperf/sys/dev/hatm/if_hatm.c#6 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/hatm/if_hatm.c,v 1.10 2003/09/02 17:30:35 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/hatm/if_hatm.c,v 1.11 2003/10/24 16:44:26 harti Exp $"); #include "opt_inet.h" #include "opt_natm.h" @@ -1334,61 +1334,61 @@ hatm_configure(struct hatm_softc *sc) { /* Receive buffer pool 0 small */ - kenv_getuint(sc, "rbps0.size", &sc->rbp_s0.size, + kenv_getuint(sc, "rbps0_size", &sc->rbp_s0.size, HE_CONFIG_RBPS0_SIZE, 0); - kenv_getuint(sc, "rbps0.thresh", &sc->rbp_s0.thresh, + kenv_getuint(sc, "rbps0_thresh", &sc->rbp_s0.thresh, HE_CONFIG_RBPS0_THRESH, 0); sc->rbp_s0.bsize = MBUF0_SIZE; /* Receive buffer pool 0 large */ - kenv_getuint(sc, "rbpl0.size", &sc->rbp_l0.size, + kenv_getuint(sc, "rbpl0_size", &sc->rbp_l0.size, HE_CONFIG_RBPL0_SIZE, 0); - kenv_getuint(sc, "rbpl0.thresh", &sc->rbp_l0.thresh, + kenv_getuint(sc, "rbpl0_thresh", &sc->rbp_l0.thresh, HE_CONFIG_RBPL0_THRESH, 0); sc->rbp_l0.bsize = MCLBYTES - MBUFL_OFFSET; /* Receive buffer return queue 0 */ - kenv_getuint(sc, "rbrq0.size", &sc->rbrq_0.size, + kenv_getuint(sc, "rbrq0_size", &sc->rbrq_0.size, HE_CONFIG_RBRQ0_SIZE, 0); - kenv_getuint(sc, "rbrq0.thresh", &sc->rbrq_0.thresh, + kenv_getuint(sc, "rbrq0_thresh", &sc->rbrq_0.thresh, HE_CONFIG_RBRQ0_THRESH, 0); - kenv_getuint(sc, "rbrq0.tout", &sc->rbrq_0.tout, + kenv_getuint(sc, "rbrq0_tout", &sc->rbrq_0.tout, HE_CONFIG_RBRQ0_TOUT, 0); - kenv_getuint(sc, "rbrq0.pcnt", &sc->rbrq_0.pcnt, + kenv_getuint(sc, "rbrq0_pcnt", &sc->rbrq_0.pcnt, HE_CONFIG_RBRQ0_PCNT, 0); /* Receive buffer pool 1 small */ - kenv_getuint(sc, "rbps1.size", &sc->rbp_s1.size, + kenv_getuint(sc, "rbps1_size", &sc->rbp_s1.size, HE_CONFIG_RBPS1_SIZE, 0); - kenv_getuint(sc, "rbps1.thresh", &sc->rbp_s1.thresh, + kenv_getuint(sc, "rbps1_thresh", &sc->rbp_s1.thresh, HE_CONFIG_RBPS1_THRESH, 0); sc->rbp_s1.bsize = MBUF1_SIZE; /* Receive buffer return queue 1 */ - kenv_getuint(sc, "rbrq1.size", &sc->rbrq_1.size, + kenv_getuint(sc, "rbrq1_size", &sc->rbrq_1.size, HE_CONFIG_RBRQ1_SIZE, 0); - kenv_getuint(sc, "rbrq1.thresh", &sc->rbrq_1.thresh, + kenv_getuint(sc, "rbrq1_thresh", &sc->rbrq_1.thresh, HE_CONFIG_RBRQ1_THRESH, 0); - kenv_getuint(sc, "rbrq1.tout", &sc->rbrq_1.tout, + kenv_getuint(sc, "rbrq1_tout", &sc->rbrq_1.tout, HE_CONFIG_RBRQ1_TOUT, 0); - kenv_getuint(sc, "rbrq1.pcnt", &sc->rbrq_1.pcnt, + kenv_getuint(sc, "rbrq1_pcnt", &sc->rbrq_1.pcnt, HE_CONFIG_RBRQ1_PCNT, 0); /* Interrupt queue 0 */ - kenv_getuint(sc, "irq0.size", &sc->irq_0.size, + kenv_getuint(sc, "irq0_size", &sc->irq_0.size, HE_CONFIG_IRQ0_SIZE, 0); - kenv_getuint(sc, "irq0.thresh", &sc->irq_0.thresh, + kenv_getuint(sc, "irq0_thresh", &sc->irq_0.thresh, HE_CONFIG_IRQ0_THRESH, 0); sc->irq_0.line = HE_CONFIG_IRQ0_LINE; /* Transmit buffer return queue 0 */ - kenv_getuint(sc, "tbrq0.size", &sc->tbrq.size, + kenv_getuint(sc, "tbrq0_size", &sc->tbrq.size, HE_CONFIG_TBRQ_SIZE, 0); - kenv_getuint(sc, "tbrq0.thresh", &sc->tbrq.thresh, + kenv_getuint(sc, "tbrq0_thresh", &sc->tbrq.thresh, HE_CONFIG_TBRQ_THRESH, 0); /* Transmit buffer ready queue */ - kenv_getuint(sc, "tpdrq.size", &sc->tpdrq.size, + kenv_getuint(sc, "tpdrq_size", &sc->tpdrq.size, HE_CONFIG_TPDRQ_SIZE, 0); /* Max TPDs per VCC */ kenv_getuint(sc, "tpdmax", &sc->max_tpd, ==== //depot/projects/netperf/sys/dev/pccbb/pccbb.c#6 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/pccbb/pccbb.c,v 1.95 2003/08/22 08:49:56 imp Exp $ + * $FreeBSD: src/sys/dev/pccbb/pccbb.c,v 1.96 2003/10/24 07:20:13 imp Exp $ */ /* @@ -1162,10 +1162,10 @@ */ if (sc->flags & CBB_CARD_OK) { STAILQ_FOREACH(ih, &sc->intr_handlers, entries) { - if ((ih->flags & INTR_MPSAFE) != 0) + if ((ih->flags & INTR_MPSAFE) == 0) mtx_lock(&Giant); (*ih->intr)(ih->arg); - if ((ih->flags & INTR_MPSAFE) != 0) + if ((ih->flags & INTR_MPSAFE) == 0) mtx_unlock(&Giant); } } ==== //depot/projects/netperf/sys/ia64/ia64/db_interface.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/ia64/ia64/db_interface.c,v 1.23 2003/05/16 21:26:40 marcel Exp $ */ +/* $FreeBSD: src/sys/ia64/ia64/db_interface.c,v 1.24 2003/10/24 06:42:03 marcel Exp $ */ /* * Mach Operating System @@ -50,16 +50,16 @@ #include -#include #include #include +#include #include - #include #include #include -#include + +#include static jmp_buf *db_nofault = 0; extern jmp_buf db_jmpbuf; @@ -398,10 +398,7 @@ * Read bytes from kernel address space for debugger. */ void -db_read_bytes(addr, size, data) - vm_offset_t addr; - register size_t size; - register char *data; +db_read_bytes(vm_offset_t addr, size_t size, char *data) { db_nofault = &db_jmpbuf; @@ -418,10 +415,7 @@ * Write bytes to kernel address space for debugger. */ void -db_write_bytes(addr, size, data) - vm_offset_t addr; - register size_t size; - register char *data; +db_write_bytes(vm_offset_t addr, size_t size, char *data) { db_nofault = &db_jmpbuf; @@ -442,9 +436,7 @@ } u_long -db_register_value(regs, regno) - db_regs_t *regs; - int regno; +db_register_value(db_regs_t *regs, int regno) { uint64_t *rsp; uint64_t bsp; @@ -479,68 +471,95 @@ } void -db_read_bundle(db_addr_t addr, struct ia64_bundle *bp) +db_write_breakpoint(vm_offset_t addr, u_int64_t *storage) { - u_int64_t low, high; - - db_read_bytes(addr, 8, (caddr_t) &low); - db_read_bytes(addr+8, 8, (caddr_t) &high); - - ia64_unpack_bundle(low, high, bp); } void -db_write_bundle(db_addr_t addr, struct ia64_bundle *bp) +db_clear_breakpoint(vm_offset_t addr, u_int64_t *storage) { - u_int64_t low, high; - - ia64_pack_bundle(&low, &high, bp); - - db_write_bytes(addr, 8, (caddr_t) &low); - db_write_bytes(addr+8, 8, (caddr_t) &high); - - ia64_fc(addr); - ia64_sync_i(); } void -db_write_breakpoint(vm_offset_t addr, u_int64_t *storage) +db_skip_breakpoint() { - struct ia64_bundle b; - int slot; - slot = addr & 15; - addr &= ~15; - db_read_bundle(addr, &b); - *storage = b.slot[slot]; - b.slot[slot] = 0x80100 << 6; /* break.* 0x80100 */ - db_write_bundle(addr, &b); + ddb_regs.tf_special.psr += IA64_PSR_RI_1; + if ((ddb_regs.tf_special.psr & IA64_PSR_RI) > IA64_PSR_RI_2) { + ddb_regs.tf_special.psr &= ~IA64_PSR_RI; + ddb_regs.tf_special.iip += 16; + } } -void -db_clear_breakpoint(vm_offset_t addr, u_int64_t *storage) +db_addr_t +db_disasm(db_addr_t loc, boolean_t altfmt) { - struct ia64_bundle b; - int slot; + char buf[32]; + struct asm_bundle bundle; + const struct asm_inst *i; + const char *tmpl; + int n, slot; + + slot = loc & 0xf; + loc &= ~0xful; + db_read_bytes(loc, 16, buf); + if (asm_decode((uintptr_t)buf, &bundle)) { + i = bundle.b_inst + slot; + tmpl = bundle.b_templ + slot; + if (*tmpl == ';' || (slot == 2 && bundle.b_templ[1] == ';')) + tmpl++; + if (*tmpl == 'L' || i->i_op == ASM_OP_NONE) { + db_printf("\n"); + goto out; + } + + /* Unit + slot. */ + db_printf("[%c%d] ", *tmpl, slot); + + /* Predicate. */ + if (i->i_oper[0].o_value != 0) { + asm_operand(i->i_oper+0, buf, loc); + db_printf("(%s) ", buf); + } else + db_printf(" "); - slot = addr & 15; - addr &= ~15; - db_read_bundle(addr, &b); - b.slot[slot] = *storage; - db_write_bundle(addr, &b); -} + /* Mnemonic & completers. */ + asm_mnemonic(i->i_op, buf); + db_printf(buf); + n = 0; + while (n < i->i_ncmpltrs) { + asm_completer(i->i_cmpltr + n, buf); + db_printf(buf); + n++; + } + db_printf(" "); -void -db_skip_breakpoint(void) -{ - /* - * Skip past the break instruction. - */ - ddb_regs.tf_special.psr += IA64_PSR_RI_1; - if ((ddb_regs.tf_special.psr & IA64_PSR_RI) > IA64_PSR_RI_2) { - ddb_regs.tf_special.psr &= ~IA64_PSR_RI; - ddb_regs.tf_special.iip += 16; + /* Operands. */ + n = 1; + while (n < 7 && i->i_oper[n].o_type != ASM_OPER_NONE) { + if (n > 1) { + if (n == i->i_srcidx) + db_printf("="); + else + db_printf(","); + } + asm_operand(i->i_oper + n, buf, loc); + db_printf(buf); + n++; + } + } else { + tmpl = NULL; + slot = 2; } + db_printf("\n"); + +out: + slot++; + if (slot == 1 && tmpl[1] == 'L') + slot++; + if (slot > 2) + slot = 16; + return (loc + slot); } void ==== //depot/projects/netperf/sys/ia64/ia64/machdep.c#14 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/ia64/ia64/machdep.c,v 1.160 2003/10/21 01:13:49 marcel Exp $ + * $FreeBSD: src/sys/ia64/ia64/machdep.c,v 1.162 2003/10/24 06:52:21 marcel Exp $ */ #include "opt_compat.h" @@ -85,7 +85,6 @@ #include #include #include -#include #include #include @@ -418,8 +417,7 @@ __asm __volatile("rsm psr.ic|psr.i"); __asm __volatile("srlz.d"); __asm __volatile("mov cr.ifa=%0" :: "r"(ia64_port_base)); - /* XXX We should use the size from the memory descriptor. */ - __asm __volatile("mov cr.itir=%0" :: "r"(24 << 2)); + __asm __volatile("mov cr.itir=%0" :: "r"(IA64_ID_PAGE_SHIFT << 2)); __asm __volatile("itr.d dtr[%0]=%1" :: "r"(2), "r"(*(u_int64_t*)&pte)); __asm __volatile("mov psr.l=%0" :: "r" (psr)); __asm __volatile("srlz.d"); @@ -1439,30 +1437,6 @@ } #endif /* no DDB */ -/* - * Utility functions for manipulating instruction bundles. - */ -void -ia64_unpack_bundle(u_int64_t low, u_int64_t high, struct ia64_bundle *bp) -{ - bp->template = low & 0x1f; - bp->slot[0] = (low >> 5) & ((1L<<41) - 1); - bp->slot[1] = (low >> 46) | ((high & ((1L<<23) - 1)) << 18); - bp->slot[2] = (high >> 23); -} - -void -ia64_pack_bundle(u_int64_t *lowp, u_int64_t *highp, - const struct ia64_bundle *bp) -{ - u_int64_t low, high; - - low = bp->template | (bp->slot[0] << 5) | (bp->slot[1] << 46); - high = (bp->slot[1] >> 18) | (bp->slot[2] << 23); - *lowp = low; - *highp = high; -} - int sysbeep(int pitch, int period) { ==== //depot/projects/netperf/sys/modules/Makefile#7 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/modules/Makefile,v 1.351 2003/09/26 20:26:24 fjoe Exp $ +# $FreeBSD: src/sys/modules/Makefile,v 1.352 2003/10/24 15:44:09 simokawa Exp $ .if !defined(NOCRYPT) || defined(ALL_MODULES) .if exists(${.CURDIR}/../opencrypto) @@ -32,6 +32,8 @@ ${_cryptodev} \ cue \ dc \ + dcons \ + dcons_crom \ de \ digi \ dummynet \ ==== //depot/projects/netperf/sys/modules/netgraph/atm/Makefile#3 (text+ko) ==== @@ -1,8 +1,11 @@ -# $FreeBSD: src/sys/modules/netgraph/atm/Makefile,v 1.2 2003/08/11 08:40:01 harti Exp $ +# $FreeBSD: src/sys/modules/netgraph/atm/Makefile,v 1.3 2003/10/24 07:42:08 harti Exp $ SUBDIR= \ atm \ - atmpif + atmbase \ + atmpif \ + sscfu \ + sscop .include ==== //depot/projects/netperf/sys/net/if.c#10 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)if.c 8.5 (Berkeley) 1/9/95 - * $FreeBSD: src/sys/net/if.c,v 1.170 2003/10/23 13:49:10 des Exp $ + * $FreeBSD: src/sys/net/if.c,v 1.171 2003/10/24 16:57:59 ume Exp $ */ #include "opt_compat.h" @@ -369,6 +369,8 @@ struct sockaddr_dl *sdl; struct ifaddr *ifa; + IF_AFDATA_LOCK_INIT(ifp); + ifp->if_afdata_initialized = 0; IFNET_WLOCK(); TAILQ_INSERT_TAIL(&ifnet, ifp, if_link); IFNET_WUNLOCK(); @@ -456,10 +458,8 @@ int s; s = splnet(); - IFNET_RLOCK(); for (ifp = TAILQ_FIRST(&ifnet); ifp; ifp = TAILQ_NEXT(ifp, if_list)) if_attachdomain1(ifp); - IFNET_RUNLOCK(); splx(s); } SYSINIT(domainifattach, SI_SUB_PROTO_IFATTACHDOMAIN, SI_ORDER_FIRST, @@ -473,6 +473,22 @@ s = splnet(); + /* + * Since dp->dom_ifattach calls malloc() with M_WAITOK, we + * cannot lock ifp->if_afdata initialization, entirely. + */ + if (IF_AFDATA_TRYLOCK(ifp) == 0) { + splx(s); + return; + } + if (ifp->if_afdata_initialized) { + IF_AFDATA_UNLOCK(ifp); + splx(s); + return; + } + ifp->if_afdata_initialized = 1; + IF_AFDATA_UNLOCK(ifp); + /* address family dependent data region */ bzero(ifp->if_afdata, sizeof(ifp->if_afdata)); for (dp = domains; dp; dp = dp->dom_next) { @@ -576,11 +592,13 @@ /* Announce that the interface is gone. */ rt_ifannouncemsg(ifp, IFAN_DEPARTURE); + IF_AFDATA_LOCK(ifp); for (dp = domains; dp; dp = dp->dom_next) { if (dp->dom_ifdetach && ifp->if_afdata[dp->dom_family]) (*dp->dom_ifdetach)(ifp, ifp->if_afdata[dp->dom_family]); } + IF_AFDATA_UNLOCK(ifp); #ifdef MAC mac_destroy_ifnet(ifp); @@ -590,6 +608,7 @@ TAILQ_REMOVE(&ifnet, ifp, if_link); IFNET_WUNLOCK(); mtx_destroy(&ifp->if_snd.ifq_mtx); + IF_AFDATA_DESTROY(ifp); splx(s); } ==== //depot/projects/netperf/sys/net/if_var.h#3 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * From: @(#)if.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/net/if_var.h,v 1.59 2003/10/17 15:46:30 ume Exp $ + * $FreeBSD: src/sys/net/if_var.h,v 1.60 2003/10/24 16:57:59 ume Exp $ */ #ifndef _NET_IF_VAR_H_ @@ -180,6 +180,8 @@ struct label if_label; /* interface MAC label */ void *if_afdata[AF_MAX]; + int if_afdata_initialized; + struct mtx if_afdata_mtx; }; typedef void if_init_f_t(void *); @@ -289,6 +291,13 @@ } while (0) #ifdef _KERNEL +#define IF_AFDATA_LOCK_INIT(ifp) \ + mtx_init(&(ifp)->if_afdata_mtx, "if_afdata", NULL, MTX_DEF) +#define IF_AFDATA_LOCK(ifp) mtx_lock(&(ifp)->if_afdata_mtx) +#define IF_AFDATA_TRYLOCK(ifp) mtx_trylock(&(ifp)->if_afdata_mtx) +#define IF_AFDATA_UNLOCK(ifp) mtx_unlock(&(ifp)->if_afdata_mtx) +#define IF_AFDATA_DESTROY(ifp) mtx_destroy(&(ifp)->if_afdata_mtx) + #define IF_HANDOFF(ifq, m, ifp) if_handoff(ifq, m, ifp, 0) #define IF_HANDOFF_ADJ(ifq, m, ifp, adj) if_handoff(ifq, m, ifp, adj) ==== //depot/projects/netperf/sys/netinet/tcp_subr.c#7 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)tcp_subr.c 8.2 (Berkeley) 5/24/95 - * $FreeBSD: src/sys/netinet/tcp_subr.c,v 1.163 2003/10/21 18:28:35 silby Exp $ + * $FreeBSD: src/sys/netinet/tcp_subr.c,v 1.164 2003/10/24 05:44:14 silby Exp $ */ #include "opt_compat.h" @@ -259,7 +259,7 @@ uma_zone_set_max(tcpcb_zone, maxsockets); tcptw_zone = uma_zcreate("tcptw", sizeof(struct tcptw), NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_NOFREE); - uma_zone_set_max(tcptw_zone, maxsockets); + uma_zone_set_max(tcptw_zone, maxsockets / 5); tcp_timer_init(); syncache_init(); } ==== //depot/projects/netperf/sys/vm/swap_pager.c#7 (text+ko) ==== @@ -67,7 +67,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/swap_pager.c,v 1.231 2003/10/18 14:10:27 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/swap_pager.c,v 1.232 2003/10/24 06:43:04 alc Exp $"); #include "opt_mac.h" #include "opt_swap.h" @@ -1187,6 +1187,7 @@ m[0]->object ); } + VM_OBJECT_UNLOCK(object); /* * Step 1 * @@ -1368,6 +1369,7 @@ swp_pager_async_iodone(bp); splx(s); } + VM_OBJECT_LOCK(object); } /* @@ -1652,13 +1654,13 @@ m = vm_page_grab(object, pindex + idx, VM_ALLOC_NORMAL|VM_ALLOC_RETRY); if (m->valid == VM_PAGE_BITS_ALL) { vm_object_pip_subtract(object, 1); - VM_OBJECT_UNLOCK(object); vm_page_lock_queues(); vm_page_activate(m); vm_page_dirty(m); vm_page_wakeup(m); vm_page_unlock_queues(); vm_pager_page_unswapped(m); + VM_OBJECT_UNLOCK(object); return; } @@ -1666,14 +1668,13 @@ VM_PAGER_OK) panic("swap_pager_force_pagein: read from swap failed");/*XXX*/ vm_object_pip_subtract(object, 1); - VM_OBJECT_UNLOCK(object); - vm_page_lock_queues(); vm_page_dirty(m); vm_page_dontneed(m); vm_page_wakeup(m); vm_page_unlock_queues(); vm_pager_page_unswapped(m); + VM_OBJECT_UNLOCK(object); } ==== //depot/projects/netperf/sys/vm/vm_pageout.c#11 (text+ko) ==== @@ -71,7 +71,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/vm_pageout.c,v 1.248 2003/10/22 18:41:32 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/vm_pageout.c,v 1.249 2003/10/24 06:43:04 alc Exp $"); #include "opt_vm.h" #include @@ -362,12 +362,13 @@ int vm_pageout_flush(vm_page_t *mc, int count, int flags) { - vm_object_t object; + vm_object_t object = mc[0]->object; int pageout_status[count]; int numpagedout = 0; int i; mtx_assert(&vm_page_queue_mtx, MA_OWNED); + VM_OBJECT_LOCK_ASSERT(object, MA_OWNED); /* * Initiate I/O. Bump the vm_page_t->busy counter and * mark the pages read-only. @@ -385,16 +386,13 @@ vm_page_io_start(mc[i]); pmap_page_protect(mc[i], VM_PROT_READ); } - object = mc[0]->object; vm_page_unlock_queues(); vm_object_pip_add(object, count); - VM_OBJECT_UNLOCK(object); vm_pager_put_pages(object, mc, count, (flags | ((object == kernel_object) ? VM_PAGER_PUT_SYNC : 0)), pageout_status); - VM_OBJECT_LOCK(object); vm_page_lock_queues(); for (i = 0; i < count; i++) { vm_page_t mt = mc[i]; @@ -669,7 +667,7 @@ int s; struct thread *td; - GIANT_REQUIRED; + mtx_lock(&Giant); /* * Decrease registered cache sizes. */ @@ -1224,6 +1222,7 @@ wakeup(&cnt.v_free_count); } } + mtx_unlock(&Giant); } /* @@ -1324,8 +1323,6 @@ { int error, pass, s; - mtx_lock(&Giant); - /* * Initialize some paging parameters. */ >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Oct 24 11:10:54 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 42B1E16A4C1; Fri, 24 Oct 2003 11:10:54 -0700 (PDT) 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 1DB2E16A4B3 for ; Fri, 24 Oct 2003 11:10:54 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 61C6043FDF for ; Fri, 24 Oct 2003 11:10:52 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9OIAqXJ008047 for ; Fri, 24 Oct 2003 11:10:52 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9OIApeK008044 for perforce@freebsd.org; Fri, 24 Oct 2003 11:10:51 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Fri, 24 Oct 2003 11:10:51 -0700 (PDT) Message-Id: <200310241810.h9OIApeK008044@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40412 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 18:10:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=40412 Change 40412 by areisse@areisse_ibook on 2003/10/24 11:10:27 getfmac command for darwin Affected files ... .. //depot/projects/trustedbsd/sedarwin/mac_cmds/getfmac/Makefile#1 add .. //depot/projects/trustedbsd/sedarwin/mac_cmds/getfmac/getfmac#1 add .. //depot/projects/trustedbsd/sedarwin/mac_cmds/getfmac/getfmac.8#1 add .. //depot/projects/trustedbsd/sedarwin/mac_cmds/getfmac/getfmac.c#1 add Differences ... From owner-p4-projects@FreeBSD.ORG Fri Oct 24 11:09:52 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 5E57B16A4C1; Fri, 24 Oct 2003 11:09:52 -0700 (PDT) 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 21F9616A4BF for ; Fri, 24 Oct 2003 11:09:52 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 702E143FE5 for ; Fri, 24 Oct 2003 11:09:50 -0700 (PDT) (envelope-from sam@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9OI9oXJ007916 for ; Fri, 24 Oct 2003 11:09:50 -0700 (PDT) (envelope-from sam@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9OI9nAG007913 for perforce@freebsd.org; Fri, 24 Oct 2003 11:09:49 -0700 (PDT) (envelope-from sam@freebsd.org) Date: Fri, 24 Oct 2003 11:09:49 -0700 (PDT) Message-Id: <200310241809.h9OI9nAG007913@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to sam@freebsd.org using -f From: Sam Leffler To: Perforce Change Reviews Subject: PERFORCE change 40411 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 18:09:52 -0000 X-List-Received-Date: Fri, 24 Oct 2003 18:09:52 -0000 X-List-Received-Date: Fri, 24 Oct 2003 18:09:52 -0000 X-List-Received-Date: Fri, 24 Oct 2003 18:09:52 -0000 http://perforce.freebsd.org/chv.cgi?CH=40411 Change 40411 by sam@sam_ebb on 2003/10/24 11:09:38 IFC @ 40409 Affected files ... .. //depot/projects/hostcache/sys/conf/NOTES#2 integrate .. //depot/projects/hostcache/sys/conf/files#3 integrate .. //depot/projects/hostcache/sys/conf/files.ia64#2 integrate .. //depot/projects/hostcache/sys/conf/options#2 integrate .. //depot/projects/hostcache/sys/dev/dcons/dcons.c#1 branch .. //depot/projects/hostcache/sys/dev/dcons/dcons.h#1 branch .. //depot/projects/hostcache/sys/dev/dcons/dcons_crom.c#1 branch .. //depot/projects/hostcache/sys/dev/firewire/firewire.c#2 integrate .. //depot/projects/hostcache/sys/dev/firewire/fwdev.c#2 integrate .. //depot/projects/hostcache/sys/dev/hatm/if_hatm.c#2 integrate .. //depot/projects/hostcache/sys/dev/pccbb/pccbb.c#2 integrate .. //depot/projects/hostcache/sys/ia64/ia64/db_disasm.c#2 delete .. //depot/projects/hostcache/sys/ia64/ia64/db_interface.c#2 integrate .. //depot/projects/hostcache/sys/ia64/ia64/machdep.c#2 integrate .. //depot/projects/hostcache/sys/ia64/include/inst.h#2 delete .. //depot/projects/hostcache/sys/modules/Makefile#2 integrate .. //depot/projects/hostcache/sys/modules/dcons/Makefile#1 branch .. //depot/projects/hostcache/sys/modules/dcons_crom/Makefile#1 branch .. //depot/projects/hostcache/sys/modules/netgraph/atm/Makefile#2 integrate .. //depot/projects/hostcache/sys/modules/netgraph/atm/atmbase/Makefile#1 branch .. //depot/projects/hostcache/sys/modules/netgraph/atm/sscfu/Makefile#1 branch .. //depot/projects/hostcache/sys/modules/netgraph/atm/sscop/Makefile#1 branch .. //depot/projects/hostcache/sys/net/if.c#2 integrate .. //depot/projects/hostcache/sys/net/if_var.h#2 integrate .. //depot/projects/hostcache/sys/net/route.c#3 integrate .. //depot/projects/hostcache/sys/net/route.h#3 integrate .. //depot/projects/hostcache/sys/netgraph/atm/ng_sscfu.h#1 branch .. //depot/projects/hostcache/sys/netgraph/atm/ng_sscop.h#1 branch .. //depot/projects/hostcache/sys/netgraph/atm/ngatmbase.c#1 branch .. //depot/projects/hostcache/sys/netgraph/atm/ngatmbase.h#1 branch .. //depot/projects/hostcache/sys/netgraph/atm/sscfu/ng_sscfu.c#1 branch .. //depot/projects/hostcache/sys/netgraph/atm/sscfu/ng_sscfu_cust.h#1 branch .. //depot/projects/hostcache/sys/netgraph/atm/sscop/ng_sscop.c#1 branch .. //depot/projects/hostcache/sys/netgraph/atm/sscop/ng_sscop_cust.h#1 branch .. //depot/projects/hostcache/sys/netinet/ip_dummynet.c#2 integrate .. //depot/projects/hostcache/sys/netinet/tcp_subr.c#3 integrate .. //depot/projects/hostcache/sys/vm/swap_pager.c#2 integrate .. //depot/projects/hostcache/sys/vm/vm_pageout.c#2 integrate .. //depot/projects/hostcache/sys/vm/vm_pager.h#2 integrate .. //depot/projects/hostcache/sys/vm/vnode_pager.c#2 integrate Differences ... ==== //depot/projects/hostcache/sys/conf/NOTES#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/NOTES,v 1.1179 2003/10/22 22:27:49 njl Exp $ +# $FreeBSD: src/sys/conf/NOTES,v 1.1180 2003/10/24 15:44:08 simokawa Exp $ # # NOTES -- Lines that can be cut/pasted into kernel and hints configs. # @@ -2241,11 +2241,21 @@ options UVSCOM_DEFAULT_OPKTSIZE=8 # default output packet size ##################################################################### -# Firewire support +# FireWire support -device firewire # Firewire bus code +device firewire # FireWire bus code device sbp # SCSI over Firewire (Requires scbus and da) -device fwe # Ethernet over Firewire (non-standard!) +device fwe # Ethernet over FireWire (non-standard!) + +##################################################################### +# dcons support (Dumb Console Device) + +device dcons # dumb console driver +device dcons_crom # FireWire attachment +options DCONS_BUF_SIZE=16384 # buffer size +options DCONS_POLL_HZ=100 # polling rate +options DCONS_FORCE_CONSOLE=0 # force to be the primary console +options DCONS_FORCE_GDB=1 # force to be the gdb device ##################################################################### # crypto subsystem ==== //depot/projects/hostcache/sys/conf/files#3 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/files,v 1.837 2003/10/22 20:39:33 rwatson Exp $ +# $FreeBSD: src/sys/conf/files,v 1.838 2003/10/24 15:44:08 simokawa Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -351,6 +351,8 @@ dev/cs/if_cs_isa.c optional cs isa dev/cs/if_cs_pccard.c optional cs card dev/cs/if_cs_pccard.c optional cs pccard +dev/dcons/dcons.c optional dcons +dev/dcons/dcons_crom.c optional dcons_crom dev/digi/digi.c optional digi dev/digi/digi_isa.c optional digi isa dev/digi/digi_pci.c optional digi pci ==== //depot/projects/hostcache/sys/conf/files.ia64#2 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.ia64,v 1.60 2003/10/23 06:11:37 marcel Exp $ +# $FreeBSD: src/sys/conf/files.ia64,v 1.61 2003/10/24 06:48:41 marcel Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -92,7 +92,6 @@ ia64/ia64/clock_if.m standard ia64/ia64/context.S standard ia64/ia64/critical.c standard -ia64/ia64/db_disasm.c optional ddb ia64/ia64/db_interface.c optional ddb ia64/ia64/db_trace.c optional ddb ia64/ia64/dump_machdep.c standard ==== //depot/projects/hostcache/sys/conf/options#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/conf/options,v 1.416 2003/10/22 22:27:49 njl Exp $ +# $FreeBSD: src/sys/conf/options,v 1.417 2003/10/24 15:44:08 simokawa Exp $ # # On the handling of kernel options # @@ -675,3 +675,9 @@ AH_DEBUG opt_ah.h AH_DEBUG_ALQ opt_ah.h AH_ASSERT opt_ah.h + +# dcons options +DCONS_BUF_SIZE opt_dcons.h +DCONS_POLL_HZ opt_dcons.h +DCONS_FORCE_CONSOLE opt_dcons.h +DCONS_FORCE_GDB opt_dcons.h ==== //depot/projects/hostcache/sys/dev/firewire/firewire.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/firewire.c,v 1.62 2003/10/06 07:17:43 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/firewire.c,v 1.63 2003/10/24 07:42:21 simokawa Exp $ * */ @@ -338,15 +338,27 @@ splx(s); } +#define WATCHDOC_HZ 10 static void firewire_watchdog(void *arg) { struct firewire_comm *fc; + static int watchdoc_clock = 0; fc = (struct firewire_comm *)arg; - firewire_xfer_timeout(fc); - fc->timeout(fc); - callout_reset(&fc->timeout_callout, hz / 10, + + /* + * At boot stage, the device interrupt is disabled and + * We encounter a timeout easily. To avoid this, + * ignore clock interrupt for a while. + */ + if (watchdoc_clock > WATCHDOC_HZ * 15) { + firewire_xfer_timeout(fc); + fc->timeout(fc); + } else + watchdoc_clock ++; + + callout_reset(&fc->timeout_callout, hz / WATCHDOC_HZ, (void *)firewire_watchdog, (void *)fc); } ==== //depot/projects/hostcache/sys/dev/firewire/fwdev.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/firewire/fwdev.c,v 1.33 2003/10/02 04:06:55 simokawa Exp $ + * $FreeBSD: src/sys/dev/firewire/fwdev.c,v 1.34 2003/10/24 13:55:51 simokawa Exp $ * */ @@ -471,13 +471,11 @@ it->flag |= (0x3f & ichreq->ch); it->flag |= ((0x3 & ichreq->tag) << 6); d->it = it; - err = 0; break; case FW_GTSTREAM: if (it != NULL) { ichreq->ch = it->flag & 0x3f; ichreq->tag = it->flag >> 2 & 0x3; - err = 0; } else err = EINVAL; break; @@ -507,13 +505,11 @@ if (d->ir != NULL) { ichreq->ch = ir->flag & 0x3f; ichreq->tag = ir->flag >> 2 & 0x3; - err = 0; } else err = EINVAL; break; case FW_SSTBUF: bcopy(ibufreq, &d->bufreq, sizeof(d->bufreq)); - err = 0; break; case FW_GSTBUF: bzero(&ibufreq->rx, sizeof(ibufreq->rx)); @@ -532,14 +528,18 @@ case FW_ASYREQ: { struct tcode_info *tinfo; + int pay_len = 0; - xfer = fw_xfer_alloc_buf(M_FWXFER, asyreq->req.len, - PAGE_SIZE/*XXX*/); - if(xfer == NULL){ - err = ENOMEM; - return err; - } fp = &asyreq->pkt; + tinfo = &sc->fc->tcode[fp->mode.hdr.tcode]; + + if ((tinfo->flag & FWTI_BLOCK_ASY) != 0) + pay_len = MAX(0, asyreq->req.len - tinfo->hdr_len); + + xfer = fw_xfer_alloc_buf(M_FWXFER, pay_len, PAGE_SIZE/*XXX*/); + if (xfer == NULL) + return (ENOMEM); + switch (asyreq->req.type) { case FWASREQNODE: break; @@ -550,7 +550,7 @@ device_printf(sc->fc->bdev, "cannot find node\n"); err = EINVAL; - goto error; + goto out; } fp->mode.hdr.dst = FWLOCALBUS | fwdev->dst; break; @@ -561,38 +561,35 @@ /* nothing to do */ break; } - xfer->send.spd = asyreq->req.sped; - tinfo = &sc->fc->tcode[fp->mode.hdr.tcode]; + bcopy(fp, (void *)&xfer->send.hdr, tinfo->hdr_len); - if ((tinfo->flag & FWTI_BLOCK_ASY) != 0) + if (pay_len > 0) bcopy((char *)fp + tinfo->hdr_len, - (void *)&xfer->send.payload, - asyreq->req.len - tinfo->hdr_len); + (void *)&xfer->send.payload, pay_len); + xfer->send.spd = asyreq->req.sped; xfer->act.hand = fw_asy_callback; - err = fw_asyreq(sc->fc, -1, xfer); - if(err){ - fw_xfer_free_buf(xfer); - return err; + + if ((err = fw_asyreq(sc->fc, -1, xfer)) != 0) + goto out; + if ((err = tsleep(xfer, FWPRI, "asyreq", hz)) != 0) + goto out; + if (xfer->resp != 0) { + err = EIO; + goto out; } - err = tsleep(xfer, FWPRI, "asyreq", hz); - if (err == 0) { - if (xfer->resp != 0) { - err = EIO; - goto error; - } - tinfo = &sc->fc->tcode[xfer->recv.hdr.mode.hdr.tcode]; - if (asyreq->req.len >= xfer->recv.pay_len + - tinfo->hdr_len) { - asyreq->req.len = xfer->recv.pay_len; - }else{ - err = EINVAL; - } - bcopy(&xfer->recv.hdr, fp, tinfo->hdr_len); - bcopy(xfer->recv.payload, - (char *)fp + tinfo->hdr_len, - asyreq->req.len - tinfo->hdr_len); - } -error: + if ((tinfo->flag & FWTI_TLABEL) == 0) + goto out; + + /* copy response */ + tinfo = &sc->fc->tcode[xfer->recv.hdr.mode.hdr.tcode]; + if (asyreq->req.len >= xfer->recv.pay_len + tinfo->hdr_len) + asyreq->req.len = xfer->recv.pay_len; + else + err = EINVAL; + bcopy(&xfer->recv.hdr, fp, tinfo->hdr_len); + bcopy(xfer->recv.payload, (char *)fp + tinfo->hdr_len, + MAX(0, asyreq->req.len - tinfo->hdr_len)); +out: fw_xfer_free_buf(xfer); break; } ==== //depot/projects/hostcache/sys/dev/hatm/if_hatm.c#2 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/hatm/if_hatm.c,v 1.10 2003/09/02 17:30:35 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/hatm/if_hatm.c,v 1.11 2003/10/24 16:44:26 harti Exp $"); #include "opt_inet.h" #include "opt_natm.h" @@ -1334,61 +1334,61 @@ hatm_configure(struct hatm_softc *sc) { /* Receive buffer pool 0 small */ - kenv_getuint(sc, "rbps0.size", &sc->rbp_s0.size, + kenv_getuint(sc, "rbps0_size", &sc->rbp_s0.size, HE_CONFIG_RBPS0_SIZE, 0); - kenv_getuint(sc, "rbps0.thresh", &sc->rbp_s0.thresh, + kenv_getuint(sc, "rbps0_thresh", &sc->rbp_s0.thresh, HE_CONFIG_RBPS0_THRESH, 0); sc->rbp_s0.bsize = MBUF0_SIZE; /* Receive buffer pool 0 large */ - kenv_getuint(sc, "rbpl0.size", &sc->rbp_l0.size, + kenv_getuint(sc, "rbpl0_size", &sc->rbp_l0.size, HE_CONFIG_RBPL0_SIZE, 0); - kenv_getuint(sc, "rbpl0.thresh", &sc->rbp_l0.thresh, + kenv_getuint(sc, "rbpl0_thresh", &sc->rbp_l0.thresh, HE_CONFIG_RBPL0_THRESH, 0); sc->rbp_l0.bsize = MCLBYTES - MBUFL_OFFSET; /* Receive buffer return queue 0 */ - kenv_getuint(sc, "rbrq0.size", &sc->rbrq_0.size, + kenv_getuint(sc, "rbrq0_size", &sc->rbrq_0.size, HE_CONFIG_RBRQ0_SIZE, 0); - kenv_getuint(sc, "rbrq0.thresh", &sc->rbrq_0.thresh, + kenv_getuint(sc, "rbrq0_thresh", &sc->rbrq_0.thresh, HE_CONFIG_RBRQ0_THRESH, 0); - kenv_getuint(sc, "rbrq0.tout", &sc->rbrq_0.tout, + kenv_getuint(sc, "rbrq0_tout", &sc->rbrq_0.tout, HE_CONFIG_RBRQ0_TOUT, 0); - kenv_getuint(sc, "rbrq0.pcnt", &sc->rbrq_0.pcnt, + kenv_getuint(sc, "rbrq0_pcnt", &sc->rbrq_0.pcnt, HE_CONFIG_RBRQ0_PCNT, 0); /* Receive buffer pool 1 small */ - kenv_getuint(sc, "rbps1.size", &sc->rbp_s1.size, + kenv_getuint(sc, "rbps1_size", &sc->rbp_s1.size, HE_CONFIG_RBPS1_SIZE, 0); - kenv_getuint(sc, "rbps1.thresh", &sc->rbp_s1.thresh, + kenv_getuint(sc, "rbps1_thresh", &sc->rbp_s1.thresh, HE_CONFIG_RBPS1_THRESH, 0); sc->rbp_s1.bsize = MBUF1_SIZE; /* Receive buffer return queue 1 */ - kenv_getuint(sc, "rbrq1.size", &sc->rbrq_1.size, + kenv_getuint(sc, "rbrq1_size", &sc->rbrq_1.size, HE_CONFIG_RBRQ1_SIZE, 0); - kenv_getuint(sc, "rbrq1.thresh", &sc->rbrq_1.thresh, + kenv_getuint(sc, "rbrq1_thresh", &sc->rbrq_1.thresh, HE_CONFIG_RBRQ1_THRESH, 0); - kenv_getuint(sc, "rbrq1.tout", &sc->rbrq_1.tout, + kenv_getuint(sc, "rbrq1_tout", &sc->rbrq_1.tout, HE_CONFIG_RBRQ1_TOUT, 0); - kenv_getuint(sc, "rbrq1.pcnt", &sc->rbrq_1.pcnt, + kenv_getuint(sc, "rbrq1_pcnt", &sc->rbrq_1.pcnt, HE_CONFIG_RBRQ1_PCNT, 0); /* Interrupt queue 0 */ - kenv_getuint(sc, "irq0.size", &sc->irq_0.size, + kenv_getuint(sc, "irq0_size", &sc->irq_0.size, HE_CONFIG_IRQ0_SIZE, 0); - kenv_getuint(sc, "irq0.thresh", &sc->irq_0.thresh, + kenv_getuint(sc, "irq0_thresh", &sc->irq_0.thresh, HE_CONFIG_IRQ0_THRESH, 0); sc->irq_0.line = HE_CONFIG_IRQ0_LINE; /* Transmit buffer return queue 0 */ - kenv_getuint(sc, "tbrq0.size", &sc->tbrq.size, + kenv_getuint(sc, "tbrq0_size", &sc->tbrq.size, HE_CONFIG_TBRQ_SIZE, 0); - kenv_getuint(sc, "tbrq0.thresh", &sc->tbrq.thresh, + kenv_getuint(sc, "tbrq0_thresh", &sc->tbrq.thresh, HE_CONFIG_TBRQ_THRESH, 0); /* Transmit buffer ready queue */ - kenv_getuint(sc, "tpdrq.size", &sc->tpdrq.size, + kenv_getuint(sc, "tpdrq_size", &sc->tpdrq.size, HE_CONFIG_TPDRQ_SIZE, 0); /* Max TPDs per VCC */ kenv_getuint(sc, "tpdmax", &sc->max_tpd, ==== //depot/projects/hostcache/sys/dev/pccbb/pccbb.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/pccbb/pccbb.c,v 1.95 2003/08/22 08:49:56 imp Exp $ + * $FreeBSD: src/sys/dev/pccbb/pccbb.c,v 1.96 2003/10/24 07:20:13 imp Exp $ */ /* @@ -1162,10 +1162,10 @@ */ if (sc->flags & CBB_CARD_OK) { STAILQ_FOREACH(ih, &sc->intr_handlers, entries) { - if ((ih->flags & INTR_MPSAFE) != 0) + if ((ih->flags & INTR_MPSAFE) == 0) mtx_lock(&Giant); (*ih->intr)(ih->arg); - if ((ih->flags & INTR_MPSAFE) != 0) + if ((ih->flags & INTR_MPSAFE) == 0) mtx_unlock(&Giant); } } ==== //depot/projects/hostcache/sys/ia64/ia64/db_interface.c#2 (text+ko) ==== @@ -1,4 +1,4 @@ -/* $FreeBSD: src/sys/ia64/ia64/db_interface.c,v 1.23 2003/05/16 21:26:40 marcel Exp $ */ +/* $FreeBSD: src/sys/ia64/ia64/db_interface.c,v 1.24 2003/10/24 06:42:03 marcel Exp $ */ /* * Mach Operating System @@ -50,16 +50,16 @@ #include -#include #include #include +#include #include - #include #include #include -#include + +#include static jmp_buf *db_nofault = 0; extern jmp_buf db_jmpbuf; @@ -398,10 +398,7 @@ * Read bytes from kernel address space for debugger. */ void -db_read_bytes(addr, size, data) - vm_offset_t addr; - register size_t size; - register char *data; +db_read_bytes(vm_offset_t addr, size_t size, char *data) { db_nofault = &db_jmpbuf; @@ -418,10 +415,7 @@ * Write bytes to kernel address space for debugger. */ void -db_write_bytes(addr, size, data) - vm_offset_t addr; - register size_t size; - register char *data; +db_write_bytes(vm_offset_t addr, size_t size, char *data) { db_nofault = &db_jmpbuf; @@ -442,9 +436,7 @@ } u_long -db_register_value(regs, regno) - db_regs_t *regs; - int regno; +db_register_value(db_regs_t *regs, int regno) { uint64_t *rsp; uint64_t bsp; @@ -479,68 +471,95 @@ } void -db_read_bundle(db_addr_t addr, struct ia64_bundle *bp) +db_write_breakpoint(vm_offset_t addr, u_int64_t *storage) { - u_int64_t low, high; - - db_read_bytes(addr, 8, (caddr_t) &low); - db_read_bytes(addr+8, 8, (caddr_t) &high); - - ia64_unpack_bundle(low, high, bp); } void -db_write_bundle(db_addr_t addr, struct ia64_bundle *bp) +db_clear_breakpoint(vm_offset_t addr, u_int64_t *storage) { - u_int64_t low, high; - - ia64_pack_bundle(&low, &high, bp); - - db_write_bytes(addr, 8, (caddr_t) &low); - db_write_bytes(addr+8, 8, (caddr_t) &high); - - ia64_fc(addr); - ia64_sync_i(); } void -db_write_breakpoint(vm_offset_t addr, u_int64_t *storage) +db_skip_breakpoint() { - struct ia64_bundle b; - int slot; - slot = addr & 15; - addr &= ~15; - db_read_bundle(addr, &b); - *storage = b.slot[slot]; - b.slot[slot] = 0x80100 << 6; /* break.* 0x80100 */ - db_write_bundle(addr, &b); + ddb_regs.tf_special.psr += IA64_PSR_RI_1; + if ((ddb_regs.tf_special.psr & IA64_PSR_RI) > IA64_PSR_RI_2) { + ddb_regs.tf_special.psr &= ~IA64_PSR_RI; + ddb_regs.tf_special.iip += 16; + } } -void -db_clear_breakpoint(vm_offset_t addr, u_int64_t *storage) +db_addr_t +db_disasm(db_addr_t loc, boolean_t altfmt) { - struct ia64_bundle b; - int slot; + char buf[32]; + struct asm_bundle bundle; + const struct asm_inst *i; + const char *tmpl; + int n, slot; + + slot = loc & 0xf; + loc &= ~0xful; + db_read_bytes(loc, 16, buf); + if (asm_decode((uintptr_t)buf, &bundle)) { + i = bundle.b_inst + slot; + tmpl = bundle.b_templ + slot; + if (*tmpl == ';' || (slot == 2 && bundle.b_templ[1] == ';')) + tmpl++; + if (*tmpl == 'L' || i->i_op == ASM_OP_NONE) { + db_printf("\n"); + goto out; + } + + /* Unit + slot. */ + db_printf("[%c%d] ", *tmpl, slot); + + /* Predicate. */ + if (i->i_oper[0].o_value != 0) { + asm_operand(i->i_oper+0, buf, loc); + db_printf("(%s) ", buf); + } else + db_printf(" "); - slot = addr & 15; - addr &= ~15; - db_read_bundle(addr, &b); - b.slot[slot] = *storage; - db_write_bundle(addr, &b); -} + /* Mnemonic & completers. */ + asm_mnemonic(i->i_op, buf); + db_printf(buf); + n = 0; + while (n < i->i_ncmpltrs) { + asm_completer(i->i_cmpltr + n, buf); + db_printf(buf); + n++; + } + db_printf(" "); -void -db_skip_breakpoint(void) -{ - /* - * Skip past the break instruction. - */ - ddb_regs.tf_special.psr += IA64_PSR_RI_1; - if ((ddb_regs.tf_special.psr & IA64_PSR_RI) > IA64_PSR_RI_2) { - ddb_regs.tf_special.psr &= ~IA64_PSR_RI; - ddb_regs.tf_special.iip += 16; + /* Operands. */ + n = 1; + while (n < 7 && i->i_oper[n].o_type != ASM_OPER_NONE) { + if (n > 1) { + if (n == i->i_srcidx) + db_printf("="); + else + db_printf(","); + } + asm_operand(i->i_oper + n, buf, loc); + db_printf(buf); + n++; + } + } else { + tmpl = NULL; + slot = 2; } + db_printf("\n"); + +out: + slot++; + if (slot == 1 && tmpl[1] == 'L') + slot++; + if (slot > 2) + slot = 16; + return (loc + slot); } void ==== //depot/projects/hostcache/sys/ia64/ia64/machdep.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/sys/ia64/ia64/machdep.c,v 1.160 2003/10/21 01:13:49 marcel Exp $ + * $FreeBSD: src/sys/ia64/ia64/machdep.c,v 1.162 2003/10/24 06:52:21 marcel Exp $ */ #include "opt_compat.h" @@ -85,7 +85,6 @@ #include #include #include -#include #include #include @@ -418,8 +417,7 @@ __asm __volatile("rsm psr.ic|psr.i"); __asm __volatile("srlz.d"); __asm __volatile("mov cr.ifa=%0" :: "r"(ia64_port_base)); - /* XXX We should use the size from the memory descriptor. */ - __asm __volatile("mov cr.itir=%0" :: "r"(24 << 2)); + __asm __volatile("mov cr.itir=%0" :: "r"(IA64_ID_PAGE_SHIFT << 2)); __asm __volatile("itr.d dtr[%0]=%1" :: "r"(2), "r"(*(u_int64_t*)&pte)); __asm __volatile("mov psr.l=%0" :: "r" (psr)); __asm __volatile("srlz.d"); @@ -1439,30 +1437,6 @@ } #endif /* no DDB */ -/* - * Utility functions for manipulating instruction bundles. - */ -void -ia64_unpack_bundle(u_int64_t low, u_int64_t high, struct ia64_bundle *bp) -{ - bp->template = low & 0x1f; - bp->slot[0] = (low >> 5) & ((1L<<41) - 1); - bp->slot[1] = (low >> 46) | ((high & ((1L<<23) - 1)) << 18); - bp->slot[2] = (high >> 23); -} - -void -ia64_pack_bundle(u_int64_t *lowp, u_int64_t *highp, - const struct ia64_bundle *bp) -{ - u_int64_t low, high; - - low = bp->template | (bp->slot[0] << 5) | (bp->slot[1] << 46); - high = (bp->slot[1] >> 18) | (bp->slot[2] << 23); - *lowp = low; - *highp = high; -} - int sysbeep(int pitch, int period) { ==== //depot/projects/hostcache/sys/modules/Makefile#2 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/modules/Makefile,v 1.351 2003/09/26 20:26:24 fjoe Exp $ +# $FreeBSD: src/sys/modules/Makefile,v 1.352 2003/10/24 15:44:09 simokawa Exp $ .if !defined(NOCRYPT) || defined(ALL_MODULES) .if exists(${.CURDIR}/../opencrypto) @@ -32,6 +32,8 @@ ${_cryptodev} \ cue \ dc \ + dcons \ + dcons_crom \ de \ digi \ dummynet \ ==== //depot/projects/hostcache/sys/modules/netgraph/atm/Makefile#2 (text+ko) ==== @@ -1,8 +1,11 @@ -# $FreeBSD: src/sys/modules/netgraph/atm/Makefile,v 1.2 2003/08/11 08:40:01 harti Exp $ +# $FreeBSD: src/sys/modules/netgraph/atm/Makefile,v 1.3 2003/10/24 07:42:08 harti Exp $ SUBDIR= \ atm \ - atmpif + atmbase \ + atmpif \ + sscfu \ + sscop .include ==== //depot/projects/hostcache/sys/net/if.c#2 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)if.c 8.5 (Berkeley) 1/9/95 - * $FreeBSD: src/sys/net/if.c,v 1.170 2003/10/23 13:49:10 des Exp $ + * $FreeBSD: src/sys/net/if.c,v 1.171 2003/10/24 16:57:59 ume Exp $ */ #include "opt_compat.h" @@ -369,6 +369,8 @@ struct sockaddr_dl *sdl; struct ifaddr *ifa; + IF_AFDATA_LOCK_INIT(ifp); + ifp->if_afdata_initialized = 0; IFNET_WLOCK(); TAILQ_INSERT_TAIL(&ifnet, ifp, if_link); IFNET_WUNLOCK(); @@ -456,10 +458,8 @@ int s; s = splnet(); - IFNET_RLOCK(); for (ifp = TAILQ_FIRST(&ifnet); ifp; ifp = TAILQ_NEXT(ifp, if_list)) if_attachdomain1(ifp); - IFNET_RUNLOCK(); splx(s); } SYSINIT(domainifattach, SI_SUB_PROTO_IFATTACHDOMAIN, SI_ORDER_FIRST, @@ -473,6 +473,22 @@ s = splnet(); + /* + * Since dp->dom_ifattach calls malloc() with M_WAITOK, we + * cannot lock ifp->if_afdata initialization, entirely. + */ + if (IF_AFDATA_TRYLOCK(ifp) == 0) { + splx(s); + return; + } + if (ifp->if_afdata_initialized) { + IF_AFDATA_UNLOCK(ifp); + splx(s); + return; + } + ifp->if_afdata_initialized = 1; + IF_AFDATA_UNLOCK(ifp); + /* address family dependent data region */ bzero(ifp->if_afdata, sizeof(ifp->if_afdata)); for (dp = domains; dp; dp = dp->dom_next) { @@ -576,11 +592,13 @@ /* Announce that the interface is gone. */ rt_ifannouncemsg(ifp, IFAN_DEPARTURE); + IF_AFDATA_LOCK(ifp); for (dp = domains; dp; dp = dp->dom_next) { if (dp->dom_ifdetach && ifp->if_afdata[dp->dom_family]) (*dp->dom_ifdetach)(ifp, ifp->if_afdata[dp->dom_family]); } + IF_AFDATA_UNLOCK(ifp); #ifdef MAC mac_destroy_ifnet(ifp); @@ -590,6 +608,7 @@ TAILQ_REMOVE(&ifnet, ifp, if_link); IFNET_WUNLOCK(); mtx_destroy(&ifp->if_snd.ifq_mtx); + IF_AFDATA_DESTROY(ifp); splx(s); } ==== //depot/projects/hostcache/sys/net/if_var.h#2 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * From: @(#)if.h 8.1 (Berkeley) 6/10/93 - * $FreeBSD: src/sys/net/if_var.h,v 1.59 2003/10/17 15:46:30 ume Exp $ + * $FreeBSD: src/sys/net/if_var.h,v 1.60 2003/10/24 16:57:59 ume Exp $ */ #ifndef _NET_IF_VAR_H_ @@ -180,6 +180,8 @@ struct label if_label; /* interface MAC label */ void *if_afdata[AF_MAX]; + int if_afdata_initialized; + struct mtx if_afdata_mtx; }; typedef void if_init_f_t(void *); @@ -289,6 +291,13 @@ } while (0) #ifdef _KERNEL +#define IF_AFDATA_LOCK_INIT(ifp) \ + mtx_init(&(ifp)->if_afdata_mtx, "if_afdata", NULL, MTX_DEF) +#define IF_AFDATA_LOCK(ifp) mtx_lock(&(ifp)->if_afdata_mtx) +#define IF_AFDATA_TRYLOCK(ifp) mtx_trylock(&(ifp)->if_afdata_mtx) +#define IF_AFDATA_UNLOCK(ifp) mtx_unlock(&(ifp)->if_afdata_mtx) +#define IF_AFDATA_DESTROY(ifp) mtx_destroy(&(ifp)->if_afdata_mtx) + #define IF_HANDOFF(ifq, m, ifp) if_handoff(ifq, m, ifp, 0) #define IF_HANDOFF_ADJ(ifq, m, ifp, adj) if_handoff(ifq, m, ifp, adj) ==== //depot/projects/hostcache/sys/net/route.c#3 (text+ko) ==== @@ -1218,5 +1218,46 @@ #undef senderr } +static void +rt_print_sockaddr(const char *leader, const char *tag, const struct sockaddr *sa) +{ + printf("%s%s: len %u af %u addr %7D\n", leader, tag, + sa->sa_len, sa->sa_family, + (const unsigned char *) sa->sa_data, ":"); +} + +static void +rt_print1(const char *leader, const char *tag, const struct rtentry *rt) +{ + printf("%s%s @%p: refcnt %ld flags 0x%lx\n", leader, tag, + rt, rt->rt_refcnt, rt->rt_flags); + printf("%sllinfo %p nodes %p %p\n", leader, + rt->rt_llinfo, &rt->rt_nodes[0], &rt->rt_nodes[1]); + if (rt->rt_gateway) + rt_print_sockaddr(leader, "gw", rt->rt_gateway); + if (rt_key(rt)) + rt_print_sockaddr(leader, "key", rt_key(rt)); + if (rt_mask(rt)) + rt_print_sockaddr(leader, "mask", rt_mask(rt)); + if (rt->rt_ifp) + printf("%sifp: %p (%s%u)\n", leader, + rt->rt_ifp, rt->rt_ifp->if_name, rt->rt_ifp->if_unit); + if (rt->rt_ifa) + printf("%sifa: %p\n", leader, rt->rt_ifa); /* XXX expand */ + if (rt->rt_genmask) + rt_print_sockaddr(leader, "genmask", rt->rt_genmask); + if (rt->rt_gwroute) + rt_print1(" ", "gwroute", rt->rt_gwroute); + if (rt->rt_parent) + rt_print1(" ", "parent", rt->rt_parent); + /* XXX rt_rmx */ +} + +void +rt_print(const struct rtentry *rt) +{ + rt_print1("", "route", rt); +} + /* This must be before ip6_init2(), which is now SI_ORDER_MIDDLE */ SYSINIT(route, SI_SUB_PROTO_DOMAIN, SI_ORDER_THIRD, route_init, 0); ==== //depot/projects/hostcache/sys/net/route.h#3 (text+ko) ==== @@ -312,6 +312,7 @@ struct sockaddr *, struct sockaddr *, int, struct rtentry **); int rtrequest1(int, struct rt_addrinfo *, struct rtentry **); int rt_check(struct rtentry **, struct rtentry **, struct sockaddr *); +void rt_print(const struct rtentry *); #endif #endif ==== //depot/projects/hostcache/sys/netinet/ip_dummynet.c#2 (text+ko) ==== @@ -39,10 +39,7 @@ * + scheduler and dummynet functions; * + configuration and initialization. * - * NOTA BENE: critical sections are protected by splimp()/splx() - * pairs. One would think that splnet() is enough as for most of - * the netinet code, but it is not so because when used with - * bridging, dummynet is invoked at splimp(). + * NOTA BENE: critical sections are protected by the "dummynet lock". * * Most important Changes: * @@ -152,7 +149,6 @@ CTLFLAG_RD, &red_max_pkt_size, 0, "RED Max packet size"); #endif -#define DUMMYNET_DEBUG #ifdef DUMMYNET_DEBUG int dummynet_debug = 0; #ifdef SYSCTL_NODE @@ -194,10 +190,13 @@ { if (rt == NULL) return ; - if (rt->rt_refcnt <= 0) + RT_LOCK(rt); + if (rt->rt_refcnt <= 0) { printf("dummynet: warning, refcnt now %ld, decreasing\n", rt->rt_refcnt); - RTFREE(rt); + rt_print(rt); /* XXX */ + } + RTFREE_LOCKED(rt); } /* @@ -1198,11 +1197,13 @@ * a pointer into *ro so it needs to be updated. */ pkt->ro = *(fwa->ro); - if (fwa->ro->ro_rt) + if (fwa->ro->ro_rt) { + RT_LOCK(fwa->ro->ro_rt); fwa->ro->ro_rt->rt_refcnt++ ; + RT_UNLOCK(fwa->ro->ro_rt); + } if (fwa->dst == (struct sockaddr_in *)&fwa->ro->ro_dst) /* dst points into ro */ fwa->dst = (struct sockaddr_in *)&(pkt->ro.ro_dst) ; - pkt->dn_dst = fwa->dst; pkt->flags = fwa->flags; } ==== //depot/projects/hostcache/sys/netinet/tcp_subr.c#3 (text+ko) ==== @@ -31,7 +31,7 @@ * SUCH DAMAGE. * * @(#)tcp_subr.c 8.2 (Berkeley) 5/24/95 - * $FreeBSD: src/sys/netinet/tcp_subr.c,v 1.163 2003/10/21 18:28:35 silby Exp $ + * $FreeBSD: src/sys/netinet/tcp_subr.c,v 1.164 2003/10/24 05:44:14 silby Exp $ */ #include "opt_compat.h" @@ -281,7 +281,7 @@ uma_zone_set_max(tcpcb_zone, maxsockets); tcptw_zone = uma_zcreate("tcptw", sizeof(struct tcptw), NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, UMA_ZONE_NOFREE); - uma_zone_set_max(tcptw_zone, maxsockets); + uma_zone_set_max(tcptw_zone, maxsockets / 5); tcp_timer_init(); syncache_init(); tcp_hc_init(); ==== //depot/projects/hostcache/sys/vm/swap_pager.c#2 (text+ko) ==== @@ -67,7 +67,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/vm/swap_pager.c,v 1.231 2003/10/18 14:10:27 phk Exp $"); +__FBSDID("$FreeBSD: src/sys/vm/swap_pager.c,v 1.232 2003/10/24 06:43:04 alc Exp $"); #include "opt_mac.h" >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Fri Oct 24 11:11:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id F0AA016A4C0; Fri, 24 Oct 2003 11:11:55 -0700 (PDT) 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 CC3BB16A4B3 for ; Fri, 24 Oct 2003 11:11:55 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3AF3943FDF for ; Fri, 24 Oct 2003 11:11:55 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9OIBsXJ008204 for ; Fri, 24 Oct 2003 11:11:54 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9OIBsro008201 for perforce@freebsd.org; Fri, 24 Oct 2003 11:11:54 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Fri, 24 Oct 2003 11:11:54 -0700 (PDT) Message-Id: <200310241811.h9OIBsro008201@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40414 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 18:11:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=40414 Change 40414 by areisse@areisse_ibook on 2003/10/24 11:10:52 mac_get_pid wrapper Affected files ... .. //depot/projects/trustedbsd/sedarwin/libmac/mac_get.c#2 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/libmac/mac_get.c#2 (text+ko) ==== @@ -62,7 +62,7 @@ int mac_get_pid(pid_t pid, struct mac *label) { - return ENOSYS; + return syscall (343, pid, label); } int From owner-p4-projects@FreeBSD.ORG Fri Oct 24 11:11:56 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7662016A4C3; Fri, 24 Oct 2003 11:11:56 -0700 (PDT) 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 4CEF616A4FF for ; Fri, 24 Oct 2003 11:11:56 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id ADE8243FE1 for ; Fri, 24 Oct 2003 11:11:55 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9OIBtXJ008210 for ; Fri, 24 Oct 2003 11:11:55 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9OIBtVl008207 for perforce@freebsd.org; Fri, 24 Oct 2003 11:11:55 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Fri, 24 Oct 2003 11:11:55 -0700 (PDT) Message-Id: <200310241811.h9OIBtVl008207@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40415 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 18:11:56 -0000 http://perforce.freebsd.org/chv.cgi?CH=40415 Change 40415 by areisse@areisse_ibook on 2003/10/24 11:11:31 removed obsolete files from build Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/conf/files#3 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/conf/files#3 (text+ko) ==== @@ -18,4 +18,3 @@ security/sebsd/ss/services.c standard security/sebsd/ss/sidtab.c standard security/sebsd/ss/symtab.c standard -security/sebsd/ss/fileutils.c standard From owner-p4-projects@FreeBSD.ORG Fri Oct 24 11:17:04 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4E18B16A4C0; Fri, 24 Oct 2003 11:17:04 -0700 (PDT) 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 27CE816A4B3 for ; Fri, 24 Oct 2003 11:17:04 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B05AF43FE0 for ; Fri, 24 Oct 2003 11:17:02 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9OIH2XJ008406 for ; Fri, 24 Oct 2003 11:17:02 -0700 (PDT) (envelope-from areisse@nailabs.com) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9OIH2ZY008403 for perforce@freebsd.org; Fri, 24 Oct 2003 11:17:02 -0700 (PDT) (envelope-from areisse@nailabs.com) Date: Fri, 24 Oct 2003 11:17:02 -0700 (PDT) Message-Id: <200310241817.h9OIH2ZY008403@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to areisse@nailabs.com using -f From: Andrew Reisse To: Perforce Change Reviews Subject: PERFORCE change 40416 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 18:17:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=40416 Change 40416 by areisse@areisse_ibook on 2003/10/24 11:16:52 Some mac syscalls (mac_get_file, mac_get_pid, mac_get_proc) mpo_execve calls take execlabel and not image_params Porting for sebsd Most memory allocation changed to use kmem_alloc and sometimes kmem_free Affected files ... .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/init_sysent.c#3 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_mac.c#21 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac.h#5 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac_policy.h#3 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/Makefile#3 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/avc/Makefile#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/linux-compat.h#3 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/sebsd.c#6 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/Makefile#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/avtab.h#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/ebitmap.h#4 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/global.h#4 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/init.c#4 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/policydb.c#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/policydb.h#2 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/queue.c#4 edit .. //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/services.c#2 edit Differences ... ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/init_sysent.c#3 (text+ko) ==== @@ -317,7 +317,9 @@ int __mac_get_link(); int __mac_set_link(); int __mac_get_proc(); +int __mac_get_pid(); int __mac_set_proc(); +int mac_execve(); #endif /* @@ -729,14 +731,17 @@ syss(__mac_get_link,2), /* 339 */ syss(__mac_get_proc,1), /* 340 */ syss(__mac_set_proc,1), /* 341 */ + /*syss(mac_execve,4), /* 342 */ + syss(nosys,0), /* 342 */ + syss(__mac_get_pid,2), /* 343 */ #else syss(nosys,0), /* 338 */ syss(nosys,0), /* 339 */ syss(nosys,0), /* 340 */ syss(nosys,0), /* 341 */ -#endif syss(nosys,0), /* 342 */ syss(nosys,0), /* 343 */ +#endif syss(nosys,0), /* 344 */ syss(nosys,0), /* 345 */ syss(nosys,0), /* 346 */ ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/kern/kern_mac.c#21 (text+ko) ==== @@ -1558,10 +1558,10 @@ return (error); } +#endif int -mac_execve_enter(struct image_params *imgp, struct mac *mac_p, - struct label *execlabelstorage) +mac_execve_enter(struct mac *mac_p, struct label *execlabelstorage) { struct mac mac; char *buffer; @@ -1578,7 +1578,7 @@ if (error) return (error); - buffer = malloc(mac.m_buflen, M_MACTEMP, M_WAITOK); + buffer = _MALLOC(mac.m_buflen, M_MACTEMP, M_WAITOK); error = copyinstr(mac.m_string, buffer, mac.m_buflen, NULL); if (error) { FREE(buffer, M_MACTEMP); @@ -1592,20 +1592,12 @@ mac_destroy_cred_label(execlabelstorage); return (error); } - imgp->execlabel = execlabelstorage; return (0); } void -mac_execve_exit(struct image_params *imgp) -{ - if (imgp->execlabel != NULL) - mac_destroy_cred_label(imgp->execlabel); -} - -void mac_execve_transition(struct ucred *old, struct ucred *new, struct vnode *vp, - struct label *interpvnodelabel, struct image_params *imgp) + struct label *interpvnodelabel, struct label *execl) { ASSERT_VOP_LOCKED(vp, "mac_execve_transition"); @@ -1614,12 +1606,12 @@ return; MAC_PERFORM(execve_transition, old, new, vp, &vp->v_label, - interpvnodelabel, imgp, imgp->execlabel); + interpvnodelabel, execl); } int mac_execve_will_transition(struct ucred *old, struct vnode *vp, - struct label *interpvnodelabel, struct image_params *imgp) + struct label *interpvnodelabel, struct label *execlabel) { int result; @@ -1630,11 +1622,10 @@ result = 0; MAC_BOOLEAN(execve_will_transition, ||, old, vp, &vp->v_label, - interpvnodelabel, imgp, imgp->execlabel); + interpvnodelabel, execlabel); return (result); } -#endif int mac_check_vnode_access(struct ucred *cred, struct vnode *vp, int acc_mode) @@ -3455,7 +3446,7 @@ struct mac mac; struct proc *tproc; struct ucred *tcred; - int error; + int error, ulen; error = copyin(uap->mac_p, &mac, sizeof(mac)); if (error) @@ -3480,7 +3471,7 @@ return (error); MALLOC(elements, char *, mac.m_buflen, M_MACTEMP, M_WAITOK); - error = copyinstr(mac.m_string, elements, mac.m_buflen, NULL); + error = copyinstr(mac.m_string, elements, mac.m_buflen, &ulen); if (error) { FREE(elements, M_MACTEMP); crfree(tcred); @@ -3787,7 +3778,7 @@ error = mac_externalize_vnode_label(&intlabel, elements, buffer, mac.m_buflen, M_WAITOK); - /*NDFREE(&nd, 0);*/ + vput (nd.ni_vp); FREE_ZONE(nd.ni_cnd.cn_pnbuf, nd.ni_cnd.cn_pnlen, M_NAMEI); mac_destroy_vnode_label(&intlabel); @@ -3853,7 +3844,8 @@ mac_copy_vnode_label(&nd.ni_vp->v_label, &intlabel); error = mac_externalize_vnode_label(&intlabel, elements, buffer, mac.m_buflen, M_WAITOK); - /*NDFREE(&nd, 0);*/ + + vput (nd.ni_vp); FREE_ZONE(nd.ni_cnd.cn_pnbuf, nd.ni_cnd.cn_pnlen, M_NAMEI); mac_destroy_vnode_label(&intlabel); ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac.h#5 (text+ko) ==== @@ -222,14 +222,14 @@ * Labeling event operations: processes. */ void mac_create_cred(struct ucred *cred_parent, struct ucred *cred_child); -int mac_execve_enter(struct image_params *imgp, struct mac *mac_p, +int mac_execve_enter(struct mac *mac_p, struct label *execlabel); void mac_execve_exit(struct image_params *imgp); void mac_execve_transition(struct ucred *old, struct ucred *new, struct vnode *vp, struct label *interpvnodelabel, - struct image_params *imgp); + struct label *execlabel); int mac_execve_will_transition(struct ucred *old, struct vnode *vp, - struct label *interpvnodelabel, struct image_params *imgp); + struct label *interpvnodelabel, struct label *execlabel); void mac_create_proc0(struct ucred *cred); void mac_create_proc1(struct ucred *cred); #if 0 ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/bsd/sys/mac_policy.h#3 (text+ko) ==== @@ -280,16 +280,18 @@ */ void (*mpo_create_cred)(struct ucred *parent_cred, struct ucred *child_cred); -#if 0 + void (*mpo_execve_transition)(struct ucred *old, struct ucred *new, - struct vnode *vp, struct label *vnodelabel, + struct vnode *vp, + struct label *vnodelabel, struct label *interpvnodelabel, - struct image_params *imgp, struct label *execlabel); + struct label *execlabel); int (*mpo_execve_will_transition)(struct ucred *old, - struct vnode *vp, struct label *vnodelabel, + struct vnode *vp, + struct label *vnodelabel, struct label *interpvnodelabel, - struct image_params *imgp, struct label *execlabel); -#endif + struct label *execlabel); + void (*mpo_create_proc0)(struct ucred *cred); void (*mpo_create_proc1)(struct ucred *cred); void (*mpo_relabel_cred)(struct ucred *cred, ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/Makefile#3 (text+ko) ==== @@ -11,6 +11,7 @@ sebsd.h \ flask.h \ flask_types.h \ + sebsd_syscalls.h \ linux-compat.h INSTINC_SUBDIRS = avc ss ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/avc/Makefile#2 (text+ko) ==== @@ -17,6 +17,11 @@ EXPORT_ONLY_FILES = \ avc.h \ + avc_ss.h \ + class_to_string.h \ + av_perm_to_string.h \ + common_perm_to_string.h \ + initial_sid_to_string.h \ av_permissions.h INSTALL_MI_LIST = ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/linux-compat.h#3 (text+ko) ==== @@ -47,6 +47,7 @@ #ifdef __APPLE__ #include +#include #else /* Probably FreeBSD */ #include #endif @@ -63,15 +64,25 @@ #define le32_to_cpu(x) ((__uint32_t)(x)) #define le64_to_cpu(x) ((__uint64_t)(x)) #else /* BYTE_ORDER != LITTLE_ENDIAN */ + +#ifdef __APPLE__ +#define le32_to_cpu(x) NXSwapLittleLongToHost(x) +#define le64_to_cpu(x) NXSwapLittleLongLongToHost(x) +#define cpu_to_le32(x) NXSwapHostLongToLittle(x) +#define cpu_to_le64(x) NXSwapHostLongLongToLittle(x) +#else + #define cpu_to_le32(x) bswap32((x)) #define cpu_to_le64(x) bswap64((x)) #define le32_to_cpu(x) bswap32((x)) #define le64_to_cpu(x) bswap64((x)) + +#endif #endif /* BYTE_ORDER */ /* sebsd uses same ss source files for userspace */ -#define kmalloc(size,flags) malloc(size,as) +#define kmalloc(size,flags) malloc(size) #define kfree(v) free(v) #define __get_free_page(flags) malloc (4096) /* XXX need page size */ #define GFP_ATOMIC 1 @@ -80,7 +91,6 @@ #else /* _KERNEL */ #ifdef __APPLE__ -#include #if BYTE_ORDER == LITTLE_ENDIAN #define le32_to_cpu(x) ((__uint32_t)(x)) #define le64_to_cpu(x) ((__uint64_t)(x)) @@ -108,8 +118,12 @@ #include #ifdef __APPLE__ -#define malloc(size,type,flags) _MALLOC(size,type,flags) -#define free(addr,type) FREE(addr,type) + +extern void *sebsd_malloc (size_t size, int flags); + +#define malloc(size,type,flags) sebsd_malloc (size,flags) +#define free(addr,type) + #define M_SEBSD M_MACTEMP #else #ifndef _M_SEBSD_DEF @@ -118,10 +132,10 @@ #endif #endif /* __APPLE__ */ -#define kmalloc(size,flags) malloc(size, M_SEBSD, flags) +#define kmalloc(size,flags) sebsd_malloc(size, flags) #define kfree(v) free(v, M_SEBSD) /* XXX need page size */ -#define __get_free_page(flags) malloc(4096, M_SEBSD, flags) +#define __get_free_page(flags) sebsd_malloc(4096, flags) #define GFP_ATOMIC M_NOWAIT #define GFP_KERNEL M_NOWAIT ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/sebsd.c#6 (text+ko) ==== @@ -59,11 +59,15 @@ * HAS_EXTATTRS * HAS_DEVFS_DIRENT * HAS_VAPPEND - * HAS_IMAGE_PARAMS * HAS_STRINGS * HAS_ACLS */ + +#define HAS_STRING +#define HAS_STRINGS + #include +#include #endif #include @@ -77,7 +81,21 @@ #define SLOT(l) ((void *)LABEL_TO_SLOT((l), slot).l_ptr) #ifdef __APPLE__ -#define M_SEBSD M_MACTEMP + +void *sebsd_malloc (size_t size, int flags) +{ + void *v; + kmem_alloc (kernel_map, &v, size); + if (flags & M_ZERO) + bzero (v, size); + return v; +} + +static void sebsd_free (void *v, size_t size) +{ + kmem_free (kernel_map, v, size); +} + #else MALLOC_DEFINE(M_SEBSD, "sebsd", "Security Enhanced BSD"); #endif @@ -92,13 +110,12 @@ sebsd_init(struct mac_policy_conf *mpc) { printf("sebsd:: init\n"); + + avc_init(); sebsd_register_sysctls(); -#if 0 - avc_init(); if (security_init()) { panic("SEBSD: couldn't read policy file"); } -#endif } static void @@ -337,7 +354,7 @@ { struct task_security_struct *new_tsec; - new_tsec = malloc(sizeof(*new_tsec), M_SEBSD, M_ZERO | M_WAITOK); + new_tsec = sebsd_malloc(sizeof(*new_tsec), M_ZERO | M_WAITOK); new_tsec->osid = new_tsec->sid = SECINITSID_UNLABELED; SLOT(label) = new_tsec; } @@ -347,7 +364,7 @@ { struct file_security_struct *new_fsec; - new_fsec = malloc(sizeof(*new_fsec), M_SEBSD, M_ZERO | M_WAITOK); + new_fsec = sebsd_malloc (sizeof(*new_fsec), M_ZERO | M_WAITOK); new_fsec->sid = new_fsec->sid = SECINITSID_UNLABELED; SLOT(label) = new_fsec; } @@ -357,7 +374,7 @@ { struct mount_security_struct *sbsec; - sbsec = malloc(sizeof(*sbsec), M_SEBSD, M_ZERO | M_WAITOK); + sbsec = sebsd_malloc(sizeof(*sbsec), M_ZERO | M_WAITOK); sbsec->sid = SECINITSID_UNLABELED; SLOT(label) = sbsec; } @@ -367,7 +384,7 @@ { struct mount_fs_security_struct *sbsec; - sbsec = malloc(sizeof(*sbsec), M_SEBSD, M_ZERO | M_WAITOK); + sbsec = sebsd_malloc(sizeof(*sbsec), M_ZERO | M_WAITOK); sbsec->sid = SECINITSID_UNLABELED; SLOT(label) = sbsec; } @@ -377,7 +394,7 @@ { struct network_security_struct *new; - new = malloc(sizeof(*new), M_SEBSD, M_ZERO | M_WAITOK); + new = sebsd_malloc(sizeof(*new), M_ZERO | M_WAITOK); new->sid = new->task_sid = SECINITSID_UNLABELED; SLOT(label) = new; } @@ -387,7 +404,7 @@ { struct network_security_struct *new; - new = malloc(sizeof(*new), M_SEBSD, M_ZERO | flag); + new = sebsd_malloc(sizeof(*new), M_ZERO | flag); if (new == NULL) { SLOT(label) = NULL; return (ENOMEM); @@ -404,20 +421,25 @@ { struct vnode_security_struct *vsec; - vsec = malloc(sizeof(*vsec), M_SEBSD, M_ZERO | M_WAITOK); + vsec = sebsd_malloc(sizeof(*vsec), M_ZERO | M_WAITOK); vsec->sid = SECINITSID_UNLABELED; vsec->task_sid = SECINITSID_UNLABELED; SLOT(label) = vsec; } static void -sebsd_destroy_label(struct label *label) +sebsd_destroy_cred_label(struct label *label) { + sebsd_free (SLOT(label), sizeof (struct task_security_struct)); + SLOT(label) = NULL; +} - free(SLOT(label), M_SEBSD); - SLOT(label) = NULL; +static void +sebsd_destroy_vnode_label(struct label *label) +{ + sebsd_free (SLOT(label), sizeof (struct vnode_security_struct)); + SLOT(label) = NULL; } - static void sebsd_relabel_cred(struct ucred *cred, struct label *newlabel) { @@ -579,7 +601,7 @@ dirent_type_to_security_class(devfs_dirent->de_dirent->d_type); /* Obtain a SID based on the fstype, path, and class. */ - path = malloc(strlen(fullpath) + 2, M_SEBSD, M_ZERO | M_WAITOK); + path = sebsd_malloc(strlen(fullpath) + 2, M_ZERO | M_WAITOK); path[0] = '/'; strcpy(&path[1], fullpath); rc = security_genfs_sid(mp->mnt_vfc->vfc_name, path, dirent->sclass, @@ -608,7 +630,7 @@ "dirent=%d\n", path, sbsec->sid, mp->mnt_stat.f_mntonname, rc, dirent->sclass, newsid, dirent->sid); } - free(path, M_SEBSD); + sebsd_free (path, 2 + strlen(fullpath)); } static void @@ -631,7 +653,7 @@ dirent->sclass = SECCLASS_DIR; /* Obtain a SID based on the fstype, path, and class. */ - path = malloc(strlen(fullpath) + 2, M_SEBSD, M_ZERO | M_WAITOK); + path = sebsd_malloc(strlen(fullpath) + 2, M_ZERO | M_WAITOK); path[0] = '/'; strcpy(&path[1], fullpath); rc = security_genfs_sid(mp->mnt_vfc->vfc_name, path, dirent->sclass, @@ -646,7 +668,7 @@ __func__, path, sbsec->sid, mp->mnt_stat.f_mntonname, rc, dirent->sclass, newsid, dirent->sid); } - free(path, M_SEBSD); + sebsd_free(path, strlen (fullpath) + 2); } static void @@ -674,7 +696,7 @@ lnksec->sclass = SECCLASS_LNK_FILE; /* Obtain a SID based on the fstype, path, and class. */ - path = malloc(strlen(fullpath) + 2, M_SEBSD, M_ZERO | M_WAITOK); + path = sebsd_malloc(strlen(fullpath) + 2, M_ZERO | M_WAITOK); path[0] = '/'; strcpy(&path[1], fullpath); rc = security_genfs_sid(mp->mnt_vfc->vfc_name, path, lnksec->sclass, @@ -688,7 +710,7 @@ sbsec->sid, mp->mnt_stat.f_mntonname, rc, lnksec->sclass, newsid, lnksec->sid); } - free(path, M_SEBSD); + sebsd_free(path, strlen (fullpath) + 2); } #endif /* HAS_DEVFS_DIRENT */ @@ -1092,11 +1114,10 @@ return (cred_has_perm(cred, proc, perm)); } -#ifdef HAS_IMAGE_PARAMS static void sebsd_execve_transition(struct ucred *old, struct ucred *new, struct vnode *vp, struct label *vnodelabel, struct label *interpvnodelabel, - struct image_params *imgp, struct label *execlabel) + struct label *execlabel) { struct task_security_struct *otask, *ntask; struct vnode_security_struct *file; @@ -1136,7 +1157,7 @@ static int sebsd_execve_will_transition(struct ucred *old, struct vnode *vp, struct label *vnodelabel, struct label *interpvnodelabel, - struct image_params *imgp, struct label *execlabel) + struct label *execlabel) { struct task_security_struct *task; struct vnode_security_struct *file; @@ -1155,6 +1176,15 @@ if (execlabel == NULL) { (void)security_transition_sid(task->sid, file->sid, SECCLASS_PROCESS, &newsid); + int len; + char *ts, *ns, *fs; + security_sid_to_context (task->sid, &ts, &len); + security_sid_to_context (file->sid, &fs, &len); + security_sid_to_context (newsid, &ns, &len); + printf ("transition: %s %s -> %s\n", ts, fs, ns); + security_free_context (ts); + security_free_context (fs); + security_free_context (ns); } else { newsid = ((struct task_security_struct *) SLOT(execlabel))->sid; @@ -1162,7 +1192,6 @@ return (newsid != task->sid); } -#endif #ifdef HAS_STRING static int @@ -1893,7 +1922,7 @@ return (error); if (sbuf_cat(sb, context) == -1) - error = EINVAL; + error = ENOMEM; security_free_context(context); return (error); } @@ -2049,9 +2078,33 @@ } static struct mac_policy_ops sebsd_ops = { - .mpo_init = sebsd_init + .mpo_init = sebsd_init, + + .mpo_init_cred_label = sebsd_init_cred_label, + .mpo_init_vnode_label = sebsd_init_vnode_label, + + .mpo_destroy = sebsd_destroy, + .mpo_destroy_cred_label = sebsd_destroy_cred_label, + .mpo_destroy_vnode_label = sebsd_destroy_vnode_label, + + .mpo_internalize_cred_label = sebsd_internalize_cred_label, + .mpo_externalize_cred_label = sebsd_externalize_cred_label, + + .mpo_internalize_vnode_label = sebsd_internalize_vnode_label, + .mpo_externalize_vnode_label = sebsd_externalize_vnode_label, + + /* Create Labels */ + + .mpo_create_cred = sebsd_create_cred, + .mpo_create_proc0 = sebsd_create_proc0, + .mpo_create_proc1 = sebsd_create_proc1, + + /* Transition */ + .mpo_execve_will_transition = sebsd_execve_will_transition, + .mpo_execve_transition = sebsd_execve_transition }; +#if 0 static struct mac_policy_ops sebsd_ops_o = { /* Init Labels */ .mpo_init_bpfdesc_label = sebsd_init_network_label, @@ -2282,6 +2335,7 @@ .mpo_syscall = sebsd_syscall, #endif }; +#endif #if 0 MAC_POLICY_SET(&sebsd_ops, sebsd, "NSA/NAI Labs Security Enhanced BSD", ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/Makefile#2 (text+ko) ==== @@ -16,7 +16,8 @@ EXPINC_SUBDIRS_I386 = ${EXPINC_SUBDIRS} EXPORT_ONLY_FILES = \ - security.h + mls.h security.h services.h policydb.h global.h context.h queue.h \ + hashtab.h symtab.h avtab.h sidtab.h ebitmap.h mls_types.h constraint.h INSTALL_MI_LIST = ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/avtab.h#2 (text+ko) ==== @@ -11,7 +11,6 @@ #define _SS_AVTAB_H_ #include -#include struct avtab_key { u32 source_type; /* source type */ ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/ebitmap.h#4 (text+ko) ==== @@ -15,14 +15,23 @@ #define _SS_EBITMAP_H_ #ifdef __APPLE__ + +#ifdef KERNEL #include #else +#include +#include +#endif + +#else + #ifdef _KERNEL #include #else #include #include #endif + #endif #include ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/global.h#4 (text+ko) ==== @@ -24,13 +24,15 @@ #include #if defined(_KERNEL) || defined(KERNEL) -#define sebsd_malloc(a,b,c) malloc(a,b,c) -#define sebsd_free(a,b) free(a,b) +/*#define sebsd_malloc(a,b,c) sebsd_malloc(a,c) + #define sebsd_free(a,b) free(a,b)*/ #else /* _KERNEL */ #include #include +/* #define sebsd_malloc(a,b,c) (c&M_ZERO)?calloc(1,a):malloc(a) #define sebsd_free(a,b) free(a) +*/ #define mtx_lock(a) #define mtx_unlock(a) #endif /* _KERNEL */ ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/init.c#4 (text+ko) ==== @@ -16,6 +16,18 @@ #include #ifndef __APPLE__ #include +#else +#include +#include /* TMP */ + +struct lpargs +{ + int size; + void *data; +}; + +extern kmod_info_t *kmod; + #endif #include @@ -29,6 +41,17 @@ char policyfile[MAXPATHLEN]; +#if 1 + +#include + +int security_init(void) +{ + return security_load_policy (binpolicy_data, binpolicy_len); +} + +#else + int security_init(void) { int rc; @@ -39,9 +62,7 @@ printf("security: starting up (compiled " __DATE__ ")\n"); #ifndef __APPLE__ -/* - * TBD: No way to load policy on Darwin (yet) - */ + lh = preload_search_by_type ("sebsd_policy"); if (lh == NULL) goto loaderr; @@ -62,14 +83,40 @@ printf("security: error while reading policy, cannot initialize.\n"); return EINVAL; } +#else + + struct lpargs lp; + kmod_info_t *k; + lp.size = 0; + + for (k = kmod; k != NULL; k = k->next) + { + printf ("kmod %s\n", k->name); + if (k->address && 0 == strcmp ("sebsd.policy", k->name)) + { + rc = k->start (k, &lp); + if (rc) + return rc; + + break; + } + } + + char *lpdata = (char *) lp.data; + if (lp.size) + printf ("%d %c%c%c%c%c\n", lp.size, lpdata[0], lpdata[1], + lpdata[2], lpdata[3], lpdata[4]); + else + printf ("security: no policy module found\n"); + #endif - return 0; - loaderr: printf("security: policy not supplied by bootloader\n"); return EINVAL; } +#endif + /* FLASK */ ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/policydb.c#2 (text+ko) ==== @@ -546,7 +546,7 @@ */ static int context_read_and_validate(struct context *c, struct policydb *p, - void *fp) + struct policy_file *fp) { u32 *buf; int rc = 0; @@ -582,7 +582,7 @@ * binary representation file. */ -static int perm_read(struct policydb *p, struct hashtab *h, void *fp) +static int perm_read(struct policydb *p, struct hashtab *h, struct policy_file *fp) { char *key = 0; struct perm_datum *perdatum; @@ -631,7 +631,7 @@ goto out; } -static int common_read(struct policydb *p, struct hashtab *h, void *fp) +static int common_read(struct policydb *p, struct hashtab *h, struct policy_file *fp) { char *key = 0; struct common_datum *comdatum; @@ -689,7 +689,7 @@ goto out; } -static int class_read(struct policydb *p, struct hashtab *h, void *fp) +static int class_read(struct policydb *p, struct hashtab *h, struct policy_file *fp) { char *key = 0; struct class_datum *cladatum; @@ -866,7 +866,7 @@ goto out; } -static int role_read(struct policydb *p, struct hashtab *h, void *fp) +static int role_read(struct policydb *p, struct hashtab *h, struct policy_file *fp) { char *key = 0; struct role_datum *role; @@ -931,7 +931,7 @@ goto out; } -static int type_read(struct policydb *p, struct hashtab *h, void *fp) +static int type_read(struct policydb *p, struct hashtab *h, struct policy_file *fp) { char *key = 0; struct type_datum *typdatum; @@ -978,7 +978,7 @@ goto out; } -static int user_read(struct policydb *p, struct hashtab *h, void *fp) +static int user_read(struct policydb *p, struct hashtab *h, struct policy_file *fp) { char *key = 0; struct user_datum *usrdatum; @@ -1033,7 +1033,7 @@ goto out; } -static int (*read_f[SYM_NUM]) (struct policydb *p, struct hashtab *h, void *fp) = +static int (*read_f[SYM_NUM]) (struct policydb *p, struct hashtab *h, struct policy_file *fp) = { common_read, class_read, @@ -1064,8 +1064,10 @@ mls_set_config(config); rc = policydb_init(p); - if (rc) - goto out; + if (rc) { + printf ("policydb_init failed\n"); + goto out; + } rc = EINVAL; /* Read the magic number and string length. */ ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/policydb.h#2 (text+ko) ==== ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/queue.c#4 (text+ko) ==== @@ -22,7 +22,7 @@ { queue_t q; - q = (queue_t) sebsd_malloc(sizeof(struct queue_info), + q = (queue_t) malloc(sizeof(struct queue_info), M_SEBSD, M_WAITOK); if (q == NULL) return NULL; @@ -40,7 +40,7 @@ if (!q) return -1; - newnode = (queue_node_ptr_t) sebsd_malloc(sizeof(struct queue_node), + newnode = (queue_node_ptr_t) malloc(sizeof(struct queue_node), M_SEBSD, M_WAITOK); if (newnode == NULL) return -1; @@ -66,7 +66,7 @@ if (!q) return -1; - newnode = (queue_node_ptr_t) sebsd_malloc(sizeof(struct queue_node), + newnode = (queue_node_ptr_t) malloc(sizeof(struct queue_node), M_SEBSD, M_WAITOK); if (newnode == NULL) return -1; @@ -103,7 +103,7 @@ q->tail = NULL; e = node->element; - sebsd_free(node, M_SEBSD); + free(node, M_SEBSD); return e; } @@ -132,10 +132,10 @@ while (p != NULL) { temp = p; p = p->next; - sebsd_free(temp, M_SEBSD); + free(temp, M_SEBSD); } - sebsd_free(q, M_SEBSD); + free(q, M_SEBSD); } int queue_map(queue_t q, int (*f) (queue_element_t, void *), void *vp) @@ -188,7 +188,7 @@ temp = p; p = p->next; g(temp->element, vp); - sebsd_free(temp, M_SEBSD); + free(temp, M_SEBSD); } else { last = p; p = p->next; ==== //depot/projects/trustedbsd/sedarwin/apsl/xnu/security/sebsd/ss/services.c#2 (text+ko) ==== @@ -402,7 +402,7 @@ } printk(KERN_ERR "security_sid_to_context: called before initial " "load_policy on unknown SID %d\n", sid); - rc = EINVAL; + rc = ENOENT; goto out; } POLICY_RDLOCK; @@ -410,7 +410,7 @@ if (!context) { printk(KERN_ERR "security_sid_to_context: unrecognized SID " "%d\n", sid); - rc = EINVAL; + rc = EMFILE; goto out_unlock; } rc = context_struct_to_string(context, scontext, scontext_len); @@ -997,11 +997,14 @@ LOAD_LOCK; + printf ("policy %x %d\n", data, len); + if (!ss_initialized) { if (policydb_read(&policydb, fp)) { LOAD_UNLOCK; return EINVAL; } + printf ("finished reading policy"); if (policydb_load_isids(&policydb, &sidtab)) { LOAD_UNLOCK; policydb_destroy(&policydb); From owner-p4-projects@FreeBSD.ORG Fri Oct 24 14:38:21 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id D055016A4C0; Fri, 24 Oct 2003 14:38:21 -0700 (PDT) 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 A681316A4B3 for ; Fri, 24 Oct 2003 14:38:21 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id F1A8843FB1 for ; Fri, 24 Oct 2003 14:38:20 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9OLcKXJ025679 for ; Fri, 24 Oct 2003 14:38:20 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9OLcKIp025676 for perforce@freebsd.org; Fri, 24 Oct 2003 14:38:20 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Fri, 24 Oct 2003 14:38:20 -0700 (PDT) Message-Id: <200310242138.h9OLcKIp025676@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 Subject: PERFORCE change 40437 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 21:38:22 -0000 http://perforce.freebsd.org/chv.cgi?CH=40437 Change 40437 by rwatson@rwatson_tislabs on 2003/10/24 14:37:54 Flesh out the mount-related pieces in mac_vfs.c with local modifications from kern_mac.c in the SEBSD branch: - Add mac_init_mount_label(), mac_destroy_mount_label(), mac_copy_mount_label(), mac_externalize_mount_label(), mac_internalize_mount_label(). - Add mac_check_mount(), mac_check_umount(), mac_check_remount(). - Add optional mount label argument to mac_create_mount(). - Add credential to mac_create_devfs_device() for use with cloning. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_internal.h#2 edit .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_vfs.c#2 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_internal.h#2 (text+ko) ==== @@ -109,6 +109,9 @@ int mac_internalize_cred_label(struct label *label, char *string); void mac_relabel_cred(struct ucred *cred, struct label *newlabel); +int mac_externalize_mount_label(struct label *label, char *elements, + char *outbuf, size_t outbuflen, int flags); +int mac_internalize_mount_label(struct label *label, char *string); void mac_copy_pipe_label(struct label *src, struct label *dest); void mac_destroy_pipe_label(struct label *label); ==== //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_vfs.c#2 (text+ko) ==== @@ -110,12 +110,19 @@ } void +mac_init_mount_label(struct label *label) +{ + + mac_init_label(label); + MAC_PERFORM(init_mount_label, label); +} + +void mac_init_mount(struct mount *mp) { - mac_init_label(&mp->mnt_mntlabel); + mac_init_mount_label(&mp->mnt_mntlabel); mac_init_label(&mp->mnt_fslabel); - MAC_PERFORM(init_mount_label, &mp->mnt_mntlabel); MAC_PERFORM(init_mount_fs_label, &mp->mnt_fslabel); MAC_DEBUG_COUNTER_INC(&nmacmounts); } @@ -146,13 +153,20 @@ } void +mac_destroy_mount_label(struct label *label) +{ + + MAC_PERFORM(destroy_mount_label, label); + mac_destroy_label(label); +} + +void mac_destroy_mount(struct mount *mp) { - MAC_PERFORM(destroy_mount_label, &mp->mnt_mntlabel); + mac_destroy_mount_label(&mp->mnt_mntlabel); MAC_PERFORM(destroy_mount_fs_label, &mp->mnt_fslabel); mac_destroy_label(&mp->mnt_fslabel); - mac_destroy_label(&mp->mnt_mntlabel); MAC_DEBUG_COUNTER_DEC(&nmacmounts); } @@ -173,6 +187,13 @@ } void +mac_copy_mount_label(struct label *src, struct label *dest) +{ + + MAC_PERFORM(copy_mount_label, src, dest); +} + +void mac_copy_vnode_label(struct label *src, struct label *dest) { @@ -180,6 +201,17 @@ } int +mac_externalize_mount_label(struct label *label, char *elements, + char *outbuf, size_t outbuflen, int flags) +{ + int error; + + MAC_EXTERNALIZE(mount_label, label, elements, outbuf, outbuflen); + + return (error); +} + +int mac_externalize_vnode_label(struct label *label, char *elements, char *outbuf, size_t outbuflen, int flags) { @@ -191,6 +223,16 @@ } int +mac_internalize_mount_label(struct label *label, char *string) +{ + int error; + + MAC_INTERNALIZE(mount_label, label, string); + + return (error); +} + +int mac_internalize_vnode_label(struct label *label, char *string) { int error; @@ -342,6 +384,47 @@ } int +mac_check_mount(struct ucred *cred, struct vnode *vp, const char *vfc_name, + struct label *mntlabel) +{ + int error; + + if (!mac_enforce_fs) + return (0); + + MAC_CHECK(check_mount, cred, vp, &vp->v_label, vfc_name, mntlabel); + + return (error); +} + +int +mac_check_umount(struct ucred *cred, struct mount *mp) +{ int error; + + if (!mac_enforce_fs) + return (0); + + MAC_CHECK(check_umount, cred, mp, &mp->mnt_mntlabel); + + return (error); +} + +int +mac_check_remount(struct ucred *cred, struct mount *mp, + struct label *mount_arg_label) +{ + int error; + + if (!mac_enforce_fs) + return (0); + + MAC_CHECK(check_remount, cred, mp, &mp->mnt_mntlabel, + mount_arg_label); + + return (error); +} + +int mac_check_vnode_access(struct ucred *cred, struct vnode *vp, int acc_mode) { int error; @@ -853,11 +936,12 @@ } void -mac_create_mount(struct ucred *cred, struct mount *mp) +mac_create_mount(struct ucred *cred, struct mount *mp, + struct label *mount_arg_label) { MAC_PERFORM(create_mount, cred, mp, &mp->mnt_mntlabel, - &mp->mnt_fslabel); + &mp->mnt_fslabel, mount_arg_label); } void @@ -882,11 +966,11 @@ } void -mac_create_devfs_device(struct mount *mp, dev_t dev, struct devfs_dirent *de, - const char *fullpath) +mac_create_devfs_device(struct ucred *cred, struct mount *mp, dev_t dev, + struct devfs_dirent *de, const char *fullpath) { - MAC_PERFORM(create_devfs_device, mp, dev, de, &de->de_label, + MAC_PERFORM(create_devfs_device, cred, mp, dev, de, &de->de_label, fullpath); } From owner-p4-projects@FreeBSD.ORG Fri Oct 24 14:42:27 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 7DE0C16A4C1; Fri, 24 Oct 2003 14:42:27 -0700 (PDT) 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 223F316A4B3 for ; Fri, 24 Oct 2003 14:42:27 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 935E743FAF for ; Fri, 24 Oct 2003 14:42:26 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9OLgQXJ025992 for ; Fri, 24 Oct 2003 14:42:26 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9OLgQpu025989 for perforce@freebsd.org; Fri, 24 Oct 2003 14:42:26 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Fri, 24 Oct 2003 14:42:26 -0700 (PDT) Message-Id: <200310242142.h9OLgQpu025989@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 Subject: PERFORCE change 40438 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 21:42:27 -0000 http://perforce.freebsd.org/chv.cgi?CH=40438 Change 40438 by rwatson@rwatson_tislabs on 2003/10/24 14:41:51 Add mac_check_cap(), an SEBSD-local change to kern_mac.c, to mac_system.c. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_system.c#2 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_system.c#2 (text+ko) ==== @@ -59,6 +59,16 @@ TUNABLE_INT("security.mac.enforce_system", &mac_enforce_system); int +mac_check_cap(struct ucred *cred, cap_value_t capv) +{ + int error; + + MAC_CHECK(check_cap, cred, capv); + + return (error); +} + +int mac_check_kenv_dump(struct ucred *cred) { int error; From owner-p4-projects@FreeBSD.ORG Fri Oct 24 15:57:00 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 6E40D16A4C0; Fri, 24 Oct 2003 15:57:00 -0700 (PDT) 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 47F5116A4B3 for ; Fri, 24 Oct 2003 15:57:00 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id B23CD43F85 for ; Fri, 24 Oct 2003 15:56:59 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9OMuxXJ029933 for ; Fri, 24 Oct 2003 15:56:59 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9OMuxMU029930 for perforce@freebsd.org; Fri, 24 Oct 2003 15:56:59 -0700 (PDT) (envelope-from peter@freebsd.org) Date: Fri, 24 Oct 2003 15:56:59 -0700 (PDT) Message-Id: <200310242256.h9OMuxMU029930@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 40443 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 22:57:00 -0000 http://perforce.freebsd.org/chv.cgi?CH=40443 Change 40443 by peter@peter_clonedev2 on 2003/10/24 15:56:53 cosmetic Affected files ... .. //depot/projects/ezm3/m3config/src/FBSD_AMD64#2 edit Differences ... ==== //depot/projects/ezm3/m3config/src/FBSD_AMD64#2 (text+ko) ==== @@ -1,5 +1,5 @@ % -% FreeBSD/Sparc64 5.x configuration. +% FreeBSD/amd64 5.x configuration. % readonly TARGET = "FBSD_AMD64" From owner-p4-projects@FreeBSD.ORG Fri Oct 24 16:07:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 4AF3D16A4C0; Fri, 24 Oct 2003 16:07:13 -0700 (PDT) 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 2631016A4B3 for ; Fri, 24 Oct 2003 16:07:13 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id A012943FAF for ; Fri, 24 Oct 2003 16:07:12 -0700 (PDT) (envelope-from peter@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9ON7CXJ031392 for ; Fri, 24 Oct 2003 16:07:12 -0700 (PDT) (envelope-from peter@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9ON7CYI031389 for perforce@freebsd.org; Fri, 24 Oct 2003 16:07:12 -0700 (PDT) (envelope-from peter@freebsd.org) Date: Fri, 24 Oct 2003 16:07:12 -0700 (PDT) Message-Id: <200310242307.h9ON7CYI031389@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to peter@freebsd.org using -f From: Peter Wemm To: Perforce Change Reviews Subject: PERFORCE change 40444 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 24 Oct 2003 23:07:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=40444 Change 40444 by peter@peter_clonedev2 on 2003/10/24 16:06:35 update for abi changes Affected files ... .. //depot/projects/ezm3/libs/m3core/src/unix/freebsd-4.amd64/Usignal.i3#6 edit .. //depot/projects/ezm3/libs/m3core/src/unix/freebsd-4.amd64/Uucontext.i3#5 edit Differences ... ==== //depot/projects/ezm3/libs/m3core/src/unix/freebsd-4.amd64/Usignal.i3#6 (text+ko) ==== @@ -142,6 +142,7 @@ sc_r15 : long; sc_trapno : long; sc_addr : long; + sc_flags : long; sc_err : long; sc_rip : long; (* program counter *) sc_cs : long; ==== //depot/projects/ezm3/libs/m3core/src/unix/freebsd-4.amd64/Uucontext.i3#5 (text+ko) ==== @@ -36,6 +36,7 @@ mc_r15 : register_t; mc_trapno : register_t; mc_addr : register_t; + mc_flags : register_t; mc_err : register_t; mc_rip : register_t; mc_cs : register_t; @@ -45,9 +46,8 @@ mc_len : long; mc_fpformat : long; mc_ownedfp : long; - mc_spare1 : ARRAY[1..1] OF long; mc_fpstate : ARRAY[0..63] OF long; - mc_spare2 : ARRAY[1..8] OF long; + mc_spare : ARRAY[1..8] OF long; END; struct_ucontext = RECORD From owner-p4-projects@FreeBSD.ORG Fri Oct 24 19:57:53 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 34B5616A4C0; Fri, 24 Oct 2003 19:57:53 -0700 (PDT) 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 0770116A4B3 for ; Fri, 24 Oct 2003 19:57:53 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7AB0843F85 for ; Fri, 24 Oct 2003 19:57:52 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9P2vqXJ048041 for ; Fri, 24 Oct 2003 19:57:52 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9P2vpEW048038 for perforce@freebsd.org; Fri, 24 Oct 2003 19:57:51 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Fri, 24 Oct 2003 19:57:51 -0700 (PDT) Message-Id: <200310250257.h9P2vpEW048038@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 Subject: PERFORCE change 40447 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 25 Oct 2003 02:57:53 -0000 http://perforce.freebsd.org/chv.cgi?CH=40447 Change 40447 by rwatson@rwatson_tislabs on 2003/10/24 19:57:46 Local SEBSD branch modification migrated from kern_mac.c. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_internal.h#3 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/security/mac/mac_internal.h#3 (text+ko) ==== @@ -200,7 +200,7 @@ } else \ ignorenotfound = 0; \ savedlen = sbuf_len(&sb); \ - if (first) \ + if (first == 1) \ error = sbuf_printf(&sb, "%s/", element_name); \ else \ error = sbuf_printf(&sb, ",%s/", element_name); \ From owner-p4-projects@FreeBSD.ORG Fri Oct 24 20:12:12 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1F5D316A4C0; Fri, 24 Oct 2003 20:12:12 -0700 (PDT) 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 EE8B116A4B3 for ; Fri, 24 Oct 2003 20:12:11 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E161F43FDF for ; Fri, 24 Oct 2003 20:12:10 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9P3CAXJ049565 for ; Fri, 24 Oct 2003 20:12:10 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9P3CAhW049562 for perforce@freebsd.org; Fri, 24 Oct 2003 20:12:10 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Fri, 24 Oct 2003 20:12:10 -0700 (PDT) Message-Id: <200310250312.h9P3CAhW049562@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 Subject: PERFORCE change 40449 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 25 Oct 2003 03:12:12 -0000 X-List-Received-Date: Sat, 25 Oct 2003 03:12:12 -0000 http://perforce.freebsd.org/chv.cgi?CH=40449 Change 40449 by rwatson@rwatson_tislabs on 2003/10/24 20:11:58 Add mac_file.c, present in SEBSD branch but not MAC branch. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/conf/files#7 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/conf/files#7 (text+ko) ==== @@ -1589,6 +1589,7 @@ posix4/p1003_1b.c standard posix4/posix4_mib.c standard kern/uipc_sem.c optional p1003_1b_semaphores +security/mac/mac_file.c optional mac security/mac/mac_net.c optional mac security/mac/mac_pipe.c optional mac security/mac/mac_posix_sem.c optional mac From owner-p4-projects@FreeBSD.ORG Fri Oct 24 20:12:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id AD1EE16A4D6; Fri, 24 Oct 2003 20:12:12 -0700 (PDT) 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 577E316A4F7 for ; Fri, 24 Oct 2003 20:12:12 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 64ED643FE0 for ; Fri, 24 Oct 2003 20:12:11 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9P3CBXJ049571 for ; Fri, 24 Oct 2003 20:12:11 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9P3CAZd049568 for perforce@freebsd.org; Fri, 24 Oct 2003 20:12:10 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Fri, 24 Oct 2003 20:12:10 -0700 (PDT) Message-Id: <200310250312.h9P3CAZd049568@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 Subject: PERFORCE change 40450 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 25 Oct 2003 03:12:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=40450 Change 40450 by rwatson@rwatson_tislabs on 2003/10/24 20:12:06 Integrate C++'isms. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/sys/mac.h#10 integrate Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/sys/mac.h#10 (text+ko) ==== @@ -31,7 +31,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/sys/mac.h,v 1.45 2003/08/29 02:43:57 rwatson Exp $ + * $FreeBSD: src/sys/sys/mac.h,v 1.46 2003/10/02 03:07:51 rwatson Exp $ */ /* * Userland/kernel interface for Mandatory Access Control. @@ -77,6 +77,7 @@ * Extended non-POSIX.1e interfaces that offer additional services * available from the userland and kernel MAC frameworks. */ +__BEGIN_DECLS int mac_execve(char *fname, char **argv, char **envv, mac_t _label); int mac_free(mac_t _label); int mac_from_text(mac_t *_label, const char *_text); @@ -97,6 +98,7 @@ int mac_set_proc(const mac_t _label); int mac_syscall(const char *_policyname, int _call, void *_arg); int mac_to_text(mac_t mac, char **_text); +__END_DECLS #else /* _KERNEL */ From owner-p4-projects@FreeBSD.ORG Fri Oct 24 20:12:13 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id EFACF16A51C; Fri, 24 Oct 2003 20:12:12 -0700 (PDT) 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 9AD5716A4C0 for ; Fri, 24 Oct 2003 20:12:12 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6C05743FCB for ; Fri, 24 Oct 2003 20:12:10 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9P3CAXJ049559 for ; Fri, 24 Oct 2003 20:12:10 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9P3C9Jv049556 for perforce@freebsd.org; Fri, 24 Oct 2003 20:12:09 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Fri, 24 Oct 2003 20:12:09 -0700 (PDT) Message-Id: <200310250312.h9P3C9Jv049556@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 Subject: PERFORCE change 40448 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 25 Oct 2003 03:12:13 -0000 http://perforce.freebsd.org/chv.cgi?CH=40448 Change 40448 by rwatson@rwatson_tislabs on 2003/10/24 20:11:25 Integrate trustedbsd_sebsd up to trustedbsd_mac HEAD. This brings in the removal of much object-specific logic from kern_mac.c, now found in sys/security/mac/mac*.[ch]. Affected files ... .. //depot/projects/trustedbsd/sebsd/sys/conf/files#6 edit .. //depot/projects/trustedbsd/sebsd/sys/kern/kern_mac.c#14 edit Differences ... ==== //depot/projects/trustedbsd/sebsd/sys/conf/files#6 (text+ko) ==== @@ -1589,6 +1589,15 @@ posix4/p1003_1b.c standard posix4/posix4_mib.c standard kern/uipc_sem.c optional p1003_1b_semaphores +security/mac/mac_net.c optional mac +security/mac/mac_pipe.c optional mac +security/mac/mac_posix_sem.c optional mac +security/mac/mac_process.c optional mac +security/mac/mac_system.c optional mac +security/mac/mac_sysv_msg.c optional mac +security/mac/mac_sysv_sem.c optional mac +security/mac/mac_sysv_shm.c optional mac +security/mac/mac_vfs.c optional mac security/mac_biba/mac_biba.c optional mac_biba security/mac_bsdextended/mac_bsdextended.c optional mac_bsdextended security/mac_ifoff/mac_ifoff.c optional mac_ifoff ==== //depot/projects/trustedbsd/sebsd/sys/kern/kern_mac.c#14 (text+ko) ==== @@ -44,7 +44,6 @@ #include "opt_mac.h" #include "opt_devfs.h" -#include "opt_posix.h" #include #include @@ -69,12 +68,6 @@ #include #include #include -#include -#include -#include -#include - -#include #include #include @@ -92,6 +85,8 @@ #include #include +#include + #ifdef MAC /* @@ -101,8 +96,6 @@ */ MODULE_VERSION(kernel_mac_support, 1); -SYSCTL_DECL(_security); - SYSCTL_NODE(_security, OID_AUTO, mac, CTLFLAG_RW, 0, "TrustedBSD MAC policy controls"); @@ -120,13 +113,7 @@ * access to this variable is serialized during the boot process. Following * the end of serialization, we don't update this flag; no locking. */ -static int mac_late = 0; - -/* - * Warn about EA transactions only the first time they happen. - * Weak coherency, no locking. - */ -static int ea_warn_once = 0; +int mac_late = 0; /* * Flag to indicate whether or not we should allocate label storage for @@ -140,152 +127,23 @@ * be a problem. Note: currently no locking. Will this be a problem? */ #ifndef MAC_ALWAYS_LABEL_MBUF -static int mac_labelmbufs = 0; +int mac_labelmbufs = 0; #endif -static int mac_enforce_fs = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_fs, CTLFLAG_RW, - &mac_enforce_fs, 0, "Enforce MAC policy on file system objects"); -TUNABLE_INT("security.mac.enforce_fs", &mac_enforce_fs); - -static int mac_enforce_file = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_file, CTLFLAG_RW, - &mac_enforce_file, 0, "Enforce MAC policy on file descriptors"); -TUNABLE_INT("security.mac.enforce_file", &mac_enforce_file); - -static int mac_enforce_kld = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_kld, CTLFLAG_RW, - &mac_enforce_kld, 0, "Enforce MAC policy on kld operations"); -TUNABLE_INT("security.mac.enforce_kld", &mac_enforce_kld); - -static int mac_enforce_network = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_network, CTLFLAG_RW, - &mac_enforce_network, 0, "Enforce MAC policy on network packets"); -TUNABLE_INT("security.mac.enforce_network", &mac_enforce_network); - -static int mac_enforce_pipe = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_pipe, CTLFLAG_RW, - &mac_enforce_pipe, 0, "Enforce MAC policy on pipe operations"); -TUNABLE_INT("security.mac.enforce_pipe", &mac_enforce_pipe); - -static int mac_enforce_posix_sem = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_posix_sem, CTLFLAG_RW, - &mac_enforce_posix_sem, 0, "Enforce MAC policy on global POSIX semaphores"); -TUNABLE_INT("security.mac.enforce_posix_sem", &mac_enforce_posix_sem); - -static int mac_enforce_process = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_process, CTLFLAG_RW, - &mac_enforce_process, 0, "Enforce MAC policy on inter-process operations"); -TUNABLE_INT("security.mac.enforce_process", &mac_enforce_process); - -static int mac_enforce_socket = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_socket, CTLFLAG_RW, - &mac_enforce_socket, 0, "Enforce MAC policy on socket operations"); -TUNABLE_INT("security.mac.enforce_socket", &mac_enforce_socket); - -static int mac_enforce_system = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_system, CTLFLAG_RW, - &mac_enforce_system, 0, "Enforce MAC policy on system operations"); -TUNABLE_INT("security.mac.enforce_system", &mac_enforce_system); - -static int mac_enforce_sysv = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_sysv, CTLFLAG_RW, - &mac_enforce_sysv, 0, "Enforce MAC policy on System V IPC objects"); -TUNABLE_INT("security.mac.enforce_sysv", &mac_enforce_sysv); - -static int mac_enforce_vm = 1; -SYSCTL_INT(_security_mac, OID_AUTO, enforce_vm, CTLFLAG_RW, - &mac_enforce_vm, 0, "Enforce MAC policy on vm operations"); -TUNABLE_INT("security.mac.enforce_vm", &mac_enforce_vm); - -static int mac_mmap_revocation = 0; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation, CTLFLAG_RW, - &mac_mmap_revocation, 0, "Revoke mmap access to files on subject " - "relabel"); - -static int mac_mmap_revocation_via_cow = 1; -SYSCTL_INT(_security_mac, OID_AUTO, mmap_revocation_via_cow, CTLFLAG_RW, - &mac_mmap_revocation_via_cow, 0, "Revoke mmap access to files via " - "copy-on-write semantics, or by removing all write access"); - #ifdef MAC_DEBUG SYSCTL_NODE(_security_mac, OID_AUTO, debug, CTLFLAG_RW, 0, "TrustedBSD MAC debug info"); - -static int mac_debug_label_fallback = 0; -SYSCTL_INT(_security_mac_debug, OID_AUTO, label_fallback, CTLFLAG_RW, - &mac_debug_label_fallback, 0, "Filesystems should fall back to fs label" - "when label is corrupted."); -TUNABLE_INT("security.mac.debug_label_fallback", - &mac_debug_label_fallback); - SYSCTL_NODE(_security_mac_debug, OID_AUTO, counters, CTLFLAG_RW, 0, "TrustedBSD MAC object counters"); -static unsigned int nmacmbufs, nmaccreds, nmacfiles, nmacifnets, nmacbpfdescs, - nmacsockets, nmacmounts, nmactemp, nmacvnodes, nmacdevfsdirents, - nmacipqs, nmacpipes, nmacprocs, nmacipcmsgs, nmacipcmsqs, - nmacipcsemas, nmacipcshms, nmacposixksems; - -#define MAC_DEBUG_COUNTER_INC(x) atomic_add_int(x, 1); -#define MAC_DEBUG_COUNTER_DEC(x) atomic_subtract_int(x, 1); - -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mbufs, CTLFLAG_RD, - &nmacmbufs, 0, "number of mbufs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, creds, CTLFLAG_RD, - &nmaccreds, 0, "number of ucreds in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, files, CTLFLAG_RD, - &nmacfiles, 0, "number of files in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ifnets, CTLFLAG_RD, - &nmacifnets, 0, "number of ifnets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipqs, CTLFLAG_RD, - &nmacipqs, 0, "number of ipqs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, bpfdescs, CTLFLAG_RD, - &nmacbpfdescs, 0, "number of bpfdescs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, sockets, CTLFLAG_RD, - &nmacsockets, 0, "number of sockets in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, pipes, CTLFLAG_RD, - &nmacpipes, 0, "number of pipes in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, procs, CTLFLAG_RD, - &nmacprocs, 0, "number of procs in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, mounts, CTLFLAG_RD, - &nmacmounts, 0, "number of mounts in use"); +static unsigned int nmactemp; SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, temp, CTLFLAG_RD, &nmactemp, 0, "number of temporary labels in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, vnodes, CTLFLAG_RD, - &nmacvnodes, 0, "number of vnodes in use"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, devfsdirents, CTLFLAG_RD, - &nmacdevfsdirents, 0, "number of devfs dirents inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msgs, CTLFLAG_RD, - &nmacipcmsgs, 0, "number of sysv ipc messages inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_msqs, CTLFLAG_RD, - &nmacipcmsqs, 0, "number of sysv ipc message queue identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_semas, CTLFLAG_RD, - &nmacipcsemas, 0, "number of sysv ipc semaphore identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, ipc_shms, CTLFLAG_RD, - &nmacipcshms, 0, "number of sysv ipc shm identifiers inuse"); -SYSCTL_UINT(_security_mac_debug_counters, OID_AUTO, posix_ksems, CTLFLAG_RD, - &nmacposixksems, 0, "number of posix global semaphores inuse"); -#else -#define MAC_DEBUG_COUNTER_INC(x) -#define MAC_DEBUG_COUNTER_DEC(x) #endif -static int error_select(int error1, int error2); static int mac_policy_register(struct mac_policy_conf *mpc); static int mac_policy_unregister(struct mac_policy_conf *mpc); -static void mac_check_vnode_mmap_downgrade(struct ucred *cred, - struct vnode *vp, int *prot); -static void mac_cred_mmapped_drop_perms_recurse(struct thread *td, - struct ucred *cred, struct vm_map *map); - -static void mac_destroy_socket_label(struct label *label); - -static int mac_setlabel_vnode_extattr(struct ucred *cred, - struct vnode *vp, struct label *intlabel); - -MALLOC_DEFINE(M_MACPIPELABEL, "macpipelabel", "MAC labels for pipes"); MALLOC_DEFINE(M_MACTEMP, "mactemp", "MAC temporary label storage"); /* @@ -311,8 +169,8 @@ static struct cv mac_policy_cv; static int mac_policy_count; #endif -static LIST_HEAD(, mac_policy_conf) mac_policy_list; -static LIST_HEAD(, mac_policy_conf) mac_static_policy_list; +struct mac_policy_list_head mac_policy_list; +struct mac_policy_list_head mac_static_policy_list; /* * We manually invoke WITNESS_WARN() to allow Witness to generate @@ -323,7 +181,7 @@ * framework to become quiescent so that a policy list change may * be made. */ -static __inline void +void mac_policy_grab_exclusive(void) { @@ -336,7 +194,7 @@ #endif } -static __inline void +void mac_policy_assert_exclusive(void) { @@ -347,7 +205,7 @@ #endif } -static __inline void +void mac_policy_release_exclusive(void) { @@ -359,7 +217,7 @@ #endif } -static __inline void +void mac_policy_list_busy(void) { @@ -370,7 +228,7 @@ #endif } -static __inline int +int mac_policy_list_conditional_busy(void) { #ifndef MAC_STATIC @@ -389,7 +247,7 @@ #endif } -static __inline void +void mac_policy_list_unbusy(void) { @@ -404,152 +262,6 @@ } /* - * MAC_CHECK performs the designated check by walking the policy - * module list and checking with each as to how it feels about the - * request. Note that it returns its value via 'error' in the scope - * of the caller. - */ -#define MAC_CHECK(check, args...) do { \ - struct mac_policy_conf *mpc; \ - int entrycount; \ - \ - error = 0; \ - LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## check != NULL) \ - error = error_select( \ - mpc->mpc_ops->mpo_ ## check (args), \ - error); \ - } \ - if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## check != NULL) \ - error = error_select( \ - mpc->mpc_ops->mpo_ ## check (args), \ - error); \ - } \ - mac_policy_list_unbusy(); \ - } \ -} while (0) - -/* - * MAC_BOOLEAN performs the designated boolean composition by walking - * the module list, invoking each instance of the operation, and - * combining the results using the passed C operator. Note that it - * returns its value via 'result' in the scope of the caller, which - * should be initialized by the caller in a meaningful way to get - * a meaningful result. - */ -#define MAC_BOOLEAN(operation, composition, args...) do { \ - struct mac_policy_conf *mpc; \ - int entrycount; \ - \ - LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - result = result composition \ - mpc->mpc_ops->mpo_ ## operation (args); \ - } \ - if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - result = result composition \ - mpc->mpc_ops->mpo_ ## operation \ - (args); \ - } \ - mac_policy_list_unbusy(); \ - } \ -} while (0) - -#define MAC_EXTERNALIZE(type, label, elementlist, outbuf, \ - outbuflen) do { \ - int claimed, first, ignorenotfound, savedlen; \ - char *element_name, *element_temp; \ - struct sbuf sb; \ - \ - error = 0; \ - first = 1; \ - sbuf_new(&sb, outbuf, outbuflen, SBUF_FIXEDLEN); \ - element_temp = elementlist; \ - while ((element_name = strsep(&element_temp, ",")) != NULL) { \ - if (element_name[0] == '?') { \ - element_name++; \ - ignorenotfound = 1; \ - } else \ - ignorenotfound = 0; \ - savedlen = sbuf_len(&sb); \ - if (first == 1) \ - error = sbuf_printf(&sb, "%s/", element_name); \ - else \ - error = sbuf_printf(&sb, ",%s/", element_name); \ - if (error == -1) { \ - error = EINVAL; /* XXX: E2BIG? */ \ - break; \ - } \ - claimed = 0; \ - MAC_CHECK(externalize_ ## type, label, element_name, \ - &sb, &claimed); \ - if (error) \ - break; \ - if (claimed == 0 && ignorenotfound) { \ - /* Revert last label name. */ \ - sbuf_setpos(&sb, savedlen); \ - } else if (claimed != 1) { \ - error = EINVAL; /* XXX: ENOLABEL? */ \ - break; \ - } else { \ - first = 0; \ - } \ - } \ - sbuf_finish(&sb); \ -} while (0) - -#define MAC_INTERNALIZE(type, label, instring) do { \ - char *element, *element_name, *element_data; \ - int claimed; \ - \ - error = 0; \ - element = instring; \ - while ((element_name = strsep(&element, ",")) != NULL) { \ - element_data = element_name; \ - element_name = strsep(&element_data, "/"); \ - if (element_data == NULL) { \ - error = EINVAL; \ - break; \ - } \ - claimed = 0; \ - MAC_CHECK(internalize_ ## type, label, element_name, \ - element_data, &claimed); \ - if (error) \ - break; \ - if (claimed != 1) { \ - /* XXXMAC: Another error here? */ \ - error = EINVAL; \ - break; \ - } \ - } \ -} while (0) - -/* - * MAC_PERFORM performs the designated operation by walking the policy - * module list and invoking that operation for each policy. - */ -#define MAC_PERFORM(operation, args...) do { \ - struct mac_policy_conf *mpc; \ - int entrycount; \ - \ - LIST_FOREACH(mpc, &mac_static_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - mpc->mpc_ops->mpo_ ## operation (args); \ - } \ - if ((entrycount = mac_policy_list_conditional_busy()) != 0) { \ - LIST_FOREACH(mpc, &mac_policy_list, mpc_list) { \ - if (mpc->mpc_ops->mpo_ ## operation != NULL) \ - mpc->mpc_ops->mpo_ ## operation (args); \ - } \ - mac_policy_list_unbusy(); \ - } \ -} while (0) - -/* * Initialize the MAC subsystem, including appropriate SMP locks. */ static void @@ -775,8 +487,8 @@ * Define an error value precedence, and given two arguments, selects the * value with the higher precedence. */ -static int -error_select(int error1, int error2) +int +mac_error_select(int error1, int error2) { /* Certain decision-making errors take top priority. */ @@ -808,19 +520,7 @@ return (error2); } -static struct label * -mbuf_to_label(struct mbuf *mbuf) -{ - struct m_tag *tag; - struct label *label; - - tag = m_tag_find(mbuf, PACKET_TAG_MACLABEL, NULL); - label = (struct label *)(tag+1); - - return (label); -} - -static void +void mac_init_label(struct label *label) { @@ -828,7 +528,7 @@ label->l_flags = MAC_FLAG_INITIALIZED; } -static void +void mac_destroy_label(struct label *label) { @@ -839,536 +539,7 @@ /* implicit: label->l_flags &= ~MAC_FLAG_INITIALIZED; */ } -void -mac_init_bpfdesc(struct bpf_d *bpf_d) -{ - - mac_init_label(&bpf_d->bd_label); - MAC_PERFORM(init_bpfdesc_label, &bpf_d->bd_label); - MAC_DEBUG_COUNTER_INC(&nmacbpfdescs); -} - -static void -mac_init_cred_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_cred_label, label); - MAC_DEBUG_COUNTER_INC(&nmaccreds); -} - -void -mac_init_cred(struct ucred *cred) -{ - - mac_init_cred_label(&cred->cr_label); -} - -void -mac_init_devfsdirent(struct devfs_dirent *de) -{ - - mac_init_label(&de->de_label); - MAC_PERFORM(init_devfsdirent_label, &de->de_label); - MAC_DEBUG_COUNTER_INC(&nmacdevfsdirents); -} - -void -mac_init_file(struct file *fp) -{ - - mac_init_label(&fp->f_label); - MAC_PERFORM(init_file_label, &fp->f_label); - MAC_DEBUG_COUNTER_INC(&nmacfiles); -} - -static void -mac_init_ifnet_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_ifnet_label, label); - MAC_DEBUG_COUNTER_INC(&nmacifnets); -} - -void -mac_init_ifnet(struct ifnet *ifp) -{ - - mac_init_ifnet_label(&ifp->if_label); -} - -void -mac_init_ipc_msgmsg(struct msg *msgptr) -{ - - mac_init_label(&msgptr->label); - MAC_PERFORM(init_ipc_msgmsg_label, &msgptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsgs); -} - -void -mac_init_ipc_msgqueue(struct msqid_kernel *msqkptr) -{ - - mac_init_label(&msqkptr->label); - MAC_PERFORM(init_ipc_msgqueue_label, &msqkptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcmsqs); -} - -void -mac_init_ipc_sema(struct semid_kernel *semakptr) -{ - - mac_init_label(&semakptr->label); - MAC_PERFORM(init_ipc_sema_label, &semakptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcsemas); -} - -void -mac_init_ipc_shm(struct shmid_kernel *shmsegptr) -{ - - mac_init_label(&shmsegptr->label); - MAC_PERFORM(init_ipc_shm_label, &shmsegptr->label); - MAC_DEBUG_COUNTER_INC(&nmacipcshms); -} - -int -mac_init_ipq(struct ipq *ipq, int flag) -{ - int error; - - mac_init_label(&ipq->ipq_label); - - MAC_CHECK(init_ipq_label, &ipq->ipq_label, flag); - if (error) { - MAC_PERFORM(destroy_ipq_label, &ipq->ipq_label); - mac_destroy_label(&ipq->ipq_label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacipqs); - } - return (error); -} - int -mac_init_mbuf_tag(struct m_tag *tag, int flag) -{ - struct label *label; - int error; - - label = (struct label *) (tag + 1); - mac_init_label(label); - - MAC_CHECK(init_mbuf_label, label, flag); - if (error) { - MAC_PERFORM(destroy_mbuf_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacmbufs); - } - return (error); -} - -int -mac_init_mbuf(struct mbuf *m, int flag) -{ - struct m_tag *tag; - int error; - - M_ASSERTPKTHDR(m); - -#ifndef MAC_ALWAYS_LABEL_MBUF - /* - * If conditionally allocating mbuf labels, don't allocate unless - * they are required. - */ - if (!mac_labelmbufs) - return (0); -#endif - tag = m_tag_get(PACKET_TAG_MACLABEL, sizeof(struct label), - flag); - if (tag == NULL) - return (ENOMEM); - error = mac_init_mbuf_tag(tag, flag); - if (error) { - m_tag_free(tag); - return (error); - } - m_tag_prepend(m, tag); - return (0); -} - -void -mac_init_mount(struct mount *mp) -{ - - mac_init_label(&mp->mnt_mntlabel); - mac_init_label(&mp->mnt_fslabel); - MAC_PERFORM(init_mount_label, &mp->mnt_mntlabel); - MAC_PERFORM(init_mount_fs_label, &mp->mnt_fslabel); - MAC_DEBUG_COUNTER_INC(&nmacmounts); -} - -static void -mac_init_pipe_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_pipe_label, label); - MAC_DEBUG_COUNTER_INC(&nmacpipes); -} - -void -mac_init_pipe(struct pipe *pipe) -{ - struct label *label; - - label = malloc(sizeof(struct label), M_MACPIPELABEL, M_ZERO|M_WAITOK); - pipe->pipe_label = label; - pipe->pipe_peer->pipe_label = label; - mac_init_pipe_label(label); -} - -void -mac_init_posix_ksem(struct ksem *ksemptr) -{ - - mac_init_label(&ksemptr->ks_label); - MAC_PERFORM(init_posix_ksem_label, &ksemptr->ks_label); - MAC_DEBUG_COUNTER_INC(&nmacposixksems); -} - -void -mac_init_proc(struct proc *p) -{ - - mac_init_label(&p->p_label); - MAC_PERFORM(init_proc_label, &p->p_label); - MAC_DEBUG_COUNTER_INC(&nmacprocs); -} - -static int -mac_init_socket_label(struct label *label, int flag) -{ - int error; - - mac_init_label(label); - - MAC_CHECK(init_socket_label, label, flag); - if (error) { - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - } else { - MAC_DEBUG_COUNTER_INC(&nmacsockets); - } - - return (error); -} - -static int -mac_init_socket_peer_label(struct label *label, int flag) -{ - int error; - - mac_init_label(label); - - MAC_CHECK(init_socket_peer_label, label, flag); - if (error) { - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - } - - return (error); -} - -int -mac_init_socket(struct socket *socket, int flag) -{ - int error; - - error = mac_init_socket_label(&socket->so_label, flag); - if (error) - return (error); - - error = mac_init_socket_peer_label(&socket->so_peerlabel, flag); - if (error) - mac_destroy_socket_label(&socket->so_label); - - return (error); -} - -void -mac_init_vnode_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_vnode_label, label); - MAC_DEBUG_COUNTER_INC(&nmacvnodes); -} - -void -mac_init_mount_label(struct label *label) -{ - - mac_init_label(label); - MAC_PERFORM(init_mount_label, label); -} - -void -mac_init_vnode(struct vnode *vp) -{ - - mac_init_vnode_label(&vp->v_label); -} - -void -mac_destroy_bpfdesc(struct bpf_d *bpf_d) -{ - - MAC_PERFORM(destroy_bpfdesc_label, &bpf_d->bd_label); - mac_destroy_label(&bpf_d->bd_label); - MAC_DEBUG_COUNTER_DEC(&nmacbpfdescs); -} - -static void -mac_destroy_cred_label(struct label *label) -{ - - MAC_PERFORM(destroy_cred_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmaccreds); -} - -void -mac_destroy_cred(struct ucred *cred) -{ - - mac_destroy_cred_label(&cred->cr_label); -} - -void -mac_destroy_devfsdirent(struct devfs_dirent *de) -{ - - MAC_PERFORM(destroy_devfsdirent_label, &de->de_label); - mac_destroy_label(&de->de_label); - MAC_DEBUG_COUNTER_DEC(&nmacdevfsdirents); -} - -void -mac_destroy_file(struct file *fp) -{ - - MAC_PERFORM(destroy_file_label, &fp->f_label); - mac_destroy_label(&fp->f_label); - MAC_DEBUG_COUNTER_DEC(&nmacfiles); -} - -static void -mac_destroy_ifnet_label(struct label *label) -{ - - MAC_PERFORM(destroy_ifnet_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacifnets); -} - -void -mac_destroy_ifnet(struct ifnet *ifp) -{ - - mac_destroy_ifnet_label(&ifp->if_label); -} - -void -mac_destroy_ipc_msgmsg(struct msg *msgptr) -{ - - MAC_PERFORM(destroy_ipc_msgmsg_label, &msgptr->label); - mac_destroy_label(&msgptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcmsgs); -} - -void -mac_destroy_ipc_msgqueue(struct msqid_kernel *msqkptr) -{ - - MAC_PERFORM(destroy_ipc_msgqueue_label, &msqkptr->label); - mac_destroy_label(&msqkptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcmsqs); -} - -void -mac_destroy_ipc_sema(struct semid_kernel *semakptr) -{ - - MAC_PERFORM(destroy_ipc_sema_label, &semakptr->label); - mac_destroy_label(&semakptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcsemas); -} - -void -mac_destroy_ipc_shm(struct shmid_kernel *shmsegptr) -{ - - MAC_PERFORM(destroy_ipc_shm_label, &shmsegptr->label); - mac_destroy_label(&shmsegptr->label); - MAC_DEBUG_COUNTER_DEC(&nmacipcshms); -} - -void -mac_destroy_ipq(struct ipq *ipq) -{ - - MAC_PERFORM(destroy_ipq_label, &ipq->ipq_label); - mac_destroy_label(&ipq->ipq_label); - MAC_DEBUG_COUNTER_DEC(&nmacipqs); -} - -void -mac_destroy_mbuf_tag(struct m_tag *tag) -{ - struct label *label; - - label = (struct label *)(tag+1); - - MAC_PERFORM(destroy_mbuf_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacmbufs); -} - -void -mac_destroy_mount(struct mount *mp) -{ - - MAC_PERFORM(destroy_mount_label, &mp->mnt_mntlabel); - MAC_PERFORM(destroy_mount_fs_label, &mp->mnt_fslabel); - mac_destroy_label(&mp->mnt_fslabel); - mac_destroy_label(&mp->mnt_mntlabel); - MAC_DEBUG_COUNTER_DEC(&nmacmounts); -} - -static void -mac_destroy_pipe_label(struct label *label) -{ - - MAC_PERFORM(destroy_pipe_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacpipes); -} - -void -mac_destroy_pipe(struct pipe *pipe) -{ - - mac_destroy_pipe_label(pipe->pipe_label); - free(pipe->pipe_label, M_MACPIPELABEL); -} - -void -mac_destroy_posix_ksem(struct ksem *ksemptr) -{ - - MAC_PERFORM(destroy_posix_ksem_label, &ksemptr->ks_label); - mac_destroy_label(&ksemptr->ks_label); - MAC_DEBUG_COUNTER_DEC(&nmacposixksems); -} - -void -mac_destroy_proc(struct proc *p) -{ - - MAC_PERFORM(destroy_proc_label, &p->p_label); - mac_destroy_label(&p->p_label); - MAC_DEBUG_COUNTER_DEC(&nmacprocs); -} - -static void -mac_destroy_socket_label(struct label *label) -{ - - MAC_PERFORM(destroy_socket_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacsockets); -} - -static void -mac_destroy_socket_peer_label(struct label *label) -{ - - MAC_PERFORM(destroy_socket_peer_label, label); - mac_destroy_label(label); -} - -void -mac_destroy_socket(struct socket *socket) -{ - - mac_destroy_socket_label(&socket->so_label); - mac_destroy_socket_peer_label(&socket->so_peerlabel); -} - -void -mac_destroy_vnode_label(struct label *label) -{ - - MAC_PERFORM(destroy_vnode_label, label); - mac_destroy_label(label); - MAC_DEBUG_COUNTER_DEC(&nmacvnodes); -} - -void -mac_destroy_vnode(struct vnode *vp) -{ - - mac_destroy_vnode_label(&vp->v_label); -} - -void -mac_destroy_mount_label(struct label *label) -{ - - MAC_PERFORM(destroy_mount_label, label); - mac_destroy_label(label); -} - >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Oct 25 07:52:45 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id C477B16A4C0; Sat, 25 Oct 2003 07:52:44 -0700 (PDT) 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 92CD116A4B3 for ; Sat, 25 Oct 2003 07:52:44 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id E399543FAF for ; Sat, 25 Oct 2003 07:52:43 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9PEqhXJ007879 for ; Sat, 25 Oct 2003 07:52:43 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9PEqhok007876 for perforce@freebsd.org; Sat, 25 Oct 2003 07:52:43 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 25 Oct 2003 07:52:43 -0700 (PDT) Message-Id: <200310251452.h9PEqhok007876@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 Subject: PERFORCE change 40479 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 25 Oct 2003 14:52:45 -0000 http://perforce.freebsd.org/chv.cgi?CH=40479 Change 40479 by rwatson@rwatson_paprika on 2003/10/25 07:52:06 Submit some WIP pieces related to pushing cmask processing into per-filesystem code. This is required to implement Solaris/ Linux semantics for default ACL masks. Affected files ... .. //depot/projects/trustedbsd/acl/sys/kern/kern_acl.c#7 edit .. //depot/projects/trustedbsd/acl/sys/sys/acl.h#5 edit .. //depot/projects/trustedbsd/acl/sys/ufs/ufs/ufs_vnops.c#5 edit Differences ... ==== //depot/projects/trustedbsd/acl/sys/kern/kern_acl.c#7 (text+ko) ==== @@ -620,12 +620,10 @@ /* * Given a requested mode for a new object, and a default ACL, combine * the two to produce a new mode. Be careful not to clear any bits that - * aren't intended to be affected by the POSIX.1e ACL. Eventually, - * this might also take the cmask as an argument, if we push that down - * into per-filesystem-code. + * aren't intended to be affected by the POSIX.1e ACL. */ mode_t -acl_posix1e_newfilemode(mode_t cmode, struct acl *dacl) +acl_posix1e_newfilemode(mode_t cmode, int cmask, struct acl *dacl) { mode_t mode; ==== //depot/projects/trustedbsd/acl/sys/sys/acl.h#5 (text+ko) ==== @@ -144,7 +144,7 @@ struct acl_entry *acl_group_obj_entry, struct acl_entry *acl_other_entry); mode_t acl_posix1e_acl_to_mode(struct acl *acl); -mode_t acl_posix1e_newfilemode(mode_t cmode, +mode_t acl_posix1e_newfilemode(mode_t cmode, int cmask, struct acl *dacl); /* ==== //depot/projects/trustedbsd/acl/sys/ufs/ufs/ufs_vnops.c#5 (text+ko) ==== @@ -1356,6 +1356,7 @@ struct vnode **a_vpp; struct componentname *a_cnp; struct vattr *a_vap; + int a_cmask; } */ *ap; { struct vnode *dvp = ap->a_dvp; @@ -1474,7 +1475,8 @@ * the "not defined or available" case. */ if (acl->acl_cnt != 0) { - dmode = acl_posix1e_newfilemode(dmode, acl); + dmode = acl_posix1e_newfilemode(dmode, + ap->a_cmask, acl); ip->i_mode = dmode; DIP(ip, i_mode) = dmode; *dacl = *acl; @@ -1772,6 +1774,7 @@ struct componentname *a_cnp; struct vattr *a_vap; char *a_target; + int a_cmask; } */ *ap; { struct vnode *vp, **vpp = ap->a_vpp; From owner-p4-projects@FreeBSD.ORG Sat Oct 25 10:16:54 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 42BC016A4C0; Sat, 25 Oct 2003 10:16:54 -0700 (PDT) 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 12C6A16A4B3 for ; Sat, 25 Oct 2003 10:16:54 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4268A43F3F for ; Sat, 25 Oct 2003 10:16:51 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9PHGpXJ022247 for ; Sat, 25 Oct 2003 10:16:51 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9PHGg06022244 for perforce@freebsd.org; Sat, 25 Oct 2003 10:16:42 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 25 Oct 2003 10:16:42 -0700 (PDT) Message-Id: <200310251716.h9PHGg06022244@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 Subject: PERFORCE change 40488 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 25 Oct 2003 17:16:54 -0000 http://perforce.freebsd.org/chv.cgi?CH=40488 Change 40488 by rwatson@rwatson_tislabs on 2003/10/25 10:16:03 Slide trustedbsd_base forward on the FreeBSD 5.x-CURRENT HEAD through October 25, 2003. Numerous changes, including: - Additional Netgraph/ATM support - Heimdal upgrade - Bluetooth code drop - IPv6 "Advanced Sockets API" upgrade - Many threading improvements - devd ACPI support - Many documentation changes/fixes/additions - ia64 stack trace support - Many compat layer bugfixes - Rijndael (AES) support for IPsec - Many ATA fixes - Dcons (firewire console) - DRM/DRI upgrade, locking fixes - Loop back of kern_mac.c breakup - NFS/snapshot deadlock fix - Additional network stack locking, including parts of IPv6, routing improvements, locking for dummynet, et al. - Additional VM locking. - Additional proc locking. - And much more... Affected files ... .. //depot/projects/trustedbsd/base/Makefile#28 integrate .. //depot/projects/trustedbsd/base/Makefile.inc1#45 integrate .. //depot/projects/trustedbsd/base/UPDATING#38 integrate .. //depot/projects/trustedbsd/base/bin/date/date.c#7 integrate .. //depot/projects/trustedbsd/base/bin/echo/echo.c#7 integrate .. //depot/projects/trustedbsd/base/bin/ls/print.c#17 integrate .. //depot/projects/trustedbsd/base/bin/rcp/rcp.c#12 integrate .. //depot/projects/trustedbsd/base/contrib/ngatm/FREEBSD-upgrade#1 branch .. //depot/projects/trustedbsd/base/contrib/ngatm/libngatm/sscfucust.h#1 branch .. //depot/projects/trustedbsd/base/contrib/ngatm/libngatm/sscopcust.h#1 branch .. //depot/projects/trustedbsd/base/contrib/ngatm/libngatm/unimsg.c#1 branch .. //depot/projects/trustedbsd/base/contrib/ngatm/man/unimsg.3#1 branch .. //depot/projects/trustedbsd/base/contrib/sendmail/FREEBSD-upgrade#12 integrate .. //depot/projects/trustedbsd/base/contrib/telnet/telnet/commands.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/ChangeLog#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/ChangeLog.2002#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/FREEBSD-Xlist#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/NEWS#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/aclocal.m4#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/admin/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/admin/change.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/admin/copy.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/admin/get.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/admin/ktutil.8#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/afsutil/ChangeLog#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/afsutil/Makefile.am#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/afsutil/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/afsutil/afslog.1#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/afsutil/afslog.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ChangeLog#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/common/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ftp/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ftp/ftp.1#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ftp/ftp.c#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ftp/gssapi.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ftp/main.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ftpd/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ftpd/ftpd.8#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ftpd/ftpd.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ftpd/ftpd_locl.h#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ftpd/gss_userok.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ftpd/ls.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/ftp/ftpd/pathnames.h#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/kf/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/kf/kf.1#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/kf/kfd.8#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/kf/kfd.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/login/ChangeLog#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/login/Makefile.am#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/login/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/login/login.1#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/login/login.access.5#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/login/login.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/push/ChangeLog#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/push/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/push/pfrom.1#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/push/push.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/rcp/ChangeLog#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/rcp/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/rcp/rcp.1#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/rcp/rcp.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/rsh/ChangeLog#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/rsh/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/rsh/rsh.1#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/rsh/rsh.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/rsh/rsh_locl.h#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/rsh/rshd.8#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/rsh/rshd.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/su/ChangeLog#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/su/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/su/su.c#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/telnet/ChangeLog#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/telnet/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/telnet/libtelnet/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/telnet/libtelnet/kerberos5.c#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/telnet/telnet/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/telnet/telnetd/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/appl/test/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/cf/ChangeLog#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/cf/Makefile.am.common#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/cf/check-compile-et.m4#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/cf/check-var.m4#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/cf/crypto.m4#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/cf/make-proto.pl#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/cf/roken-frag.m4#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/cf/sunos.m4#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/configure#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/configure.in#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/doc/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/doc/ack.texi#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/doc/intro.texi#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/doc/misc.texi#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/doc/programming.texi#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/doc/setup.texi#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/include/Makefile.in#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/include/kadm5/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/include/make_crypto.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/ChangeLog#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/ank.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/init.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/kadm_conn.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/kadmin.8#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/kadmin.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/kadmind.8#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/kadmind.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/mod.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/server.c#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/util.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kadmin/version4.c#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/524.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/Makefile.am#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/config.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/connect.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/hprop.8#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/hpropd.8#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/hpropd.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/kaserver.c#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/kdc.8#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/kdc_locl.h#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/kerberos4.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/kerberos5.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/string2key.8#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/string2key.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kdc/v4_dump.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kpasswd/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kpasswd/kpasswd.1#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kpasswd/kpasswdd.8#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kpasswd/kpasswdd.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kuser/Makefile.am#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kuser/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kuser/kdestroy.1#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kuser/kdestroy.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kuser/kgetcred.1#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kuser/kinit.1#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kuser/kinit.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kuser/klist.1#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/kuser/klist.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/45/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/asn1/Makefile.am#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/asn1/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/asn1/check-common.c#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/asn1/check-common.h#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/asn1/check-der.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/asn1/check-gen.c#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/asn1/der_copy.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/asn1/der_put.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/asn1/gen.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/asn1/k5.asn1#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/auth/ChangeLog#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/auth/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/auth/afskauthlib/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/auth/pam/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/auth/sia/Makefile.am#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/auth/sia/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/com_err/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/8003.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/ChangeLog#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/Makefile.am#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/accept_sec_context.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/acquire_cred.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/add_cred.c#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/add_oid_set_member.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/compare_name.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/compat.c#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/context_time.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/copy_ccache.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/create_emtpy_oid_set.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/delete_sec_context.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/display_name.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/display_status.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/duplicate_name.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/export_name.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/export_sec_context.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/get_mic.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/gss_acquire_cred.3#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/gssapi.3#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/gssapi.h#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/gssapi_locl.h#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/import_name.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/import_sec_context.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/indicate_mechs.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/init_sec_context.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/inquire_context.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/inquire_cred.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/inquire_cred_by_mech.c#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/inquire_mechs_for_name.c#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/inquire_names_for_mech.c#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/process_context_token.c#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/release_buffer.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/release_cred.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/release_name.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/release_oid_set.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/test_acquire_cred.c#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/test_oid_set_member.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/unwrap.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/verify_mic.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/gssapi/wrap.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/hdb/Makefile.am#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/hdb/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/hdb/common.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/hdb/mkey.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kadm5/ChangeLog#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kadm5/Makefile.am#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kadm5/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kadm5/dump_log.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kadm5/init_c.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kadm5/ipropd_master.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kadm5/ipropd_slave.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kadm5/log.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kadm5/send_recv.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kafs/ChangeLog#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kafs/Makefile.am#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kafs/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kafs/afskrb.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kafs/afskrb5.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kafs/afssys.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kafs/afssysdefs.h#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kafs/common.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kafs/dlfcn.h#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kafs/kafs.3#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kafs/kafs.h#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/kafs/kafs_locl.h#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/Makefile.am#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/Makefile.in#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/addr_families.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/aes-test.c#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/aname_to_localname.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/cache.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/changepw.c#7 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/context.c#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/convert_creds.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/crypto.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/data.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/get_addrs.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/get_in_tkt.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/init_creds_pw.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/kerberos.8#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/keytab.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/keytab_any.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/keytab_file.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/keytab_keyfile.c#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5-private.h#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5-protos.h#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5-v4compat.h#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5.3#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5.conf.5#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5.h#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_425_conv_principal.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_address.3#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_aname_to_localname.3#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_appdefault.3#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_auth_context.3#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_build_principal.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_ccache.3#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_config.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_context.3#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_create_checksum.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_crypto_init.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_data.3#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_encrypt.3#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_free_addresses.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_free_principal.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_get_all_client_addrs.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_get_krbhst.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_init_context.3#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_keytab.3#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_krbhst_init.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_kuserok.3#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_openlog.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_parse_name.3#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_principal_get_realm.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_set_default_realm.3#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_sname_to_principal.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_timeofday.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_unparse_name.3#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_verify_user.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krb5_warn.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/krbhst.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/kuserok.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/mk_rep.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/name-45-test.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/principal.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/prompter_posix.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/store_emem.c#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/test_alname.c#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/test_cc.c#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/transited.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/verify_krb5_conf.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/krb5/warn.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/ChangeLog#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/Makefile.am#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/Makefile.in#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/getarg.3#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/getcap.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/parse_bytes.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/parse_time.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/parse_units.h#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/resolve.c#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/roken.awk#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/snprintf.c#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/socket.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/strcasecmp.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/strlwr.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/strncasecmp.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/roken/strupr.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/sl/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/vers/ChangeLog#4 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/vers/Makefile.in#5 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/vers/make-print-version.c#2 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/lib/vers/print_version.c#3 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/tools/Makefile.in#6 integrate .. //depot/projects/trustedbsd/base/crypto/heimdal/tools/build.sh#1 branch .. //depot/projects/trustedbsd/base/crypto/heimdal/tools/krb5-config.1#2 integrate .. //depot/projects/trustedbsd/base/crypto/openssh/auth2-pam-freebsd.c#9 integrate .. //depot/projects/trustedbsd/base/etc/Makefile#35 integrate .. //depot/projects/trustedbsd/base/etc/bluetooth/hcsecd.conf#1 branch .. //depot/projects/trustedbsd/base/etc/bluetooth/hosts#1 branch .. //depot/projects/trustedbsd/base/etc/bluetooth/protocols#1 branch .. //depot/projects/trustedbsd/base/etc/defaults/pccard.conf#20 integrate .. //depot/projects/trustedbsd/base/etc/defaults/rc.conf#32 integrate .. //depot/projects/trustedbsd/base/etc/devd.conf#8 integrate .. //depot/projects/trustedbsd/base/etc/etc.alpha/ttys#3 integrate .. //depot/projects/trustedbsd/base/etc/etc.amd64/ttys#2 integrate .. //depot/projects/trustedbsd/base/etc/etc.i386/ttys#3 integrate .. //depot/projects/trustedbsd/base/etc/etc.ia64/ttys#4 integrate .. //depot/projects/trustedbsd/base/etc/etc.sparc64/ttys#6 integrate .. //depot/projects/trustedbsd/base/etc/mtree/BSD.include.dist#19 integrate .. //depot/projects/trustedbsd/base/etc/mtree/BSD.usr.dist#30 integrate .. //depot/projects/trustedbsd/base/etc/netstart#4 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/atm3#2 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/diskless#9 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/initdiskless#11 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/ipfilter#11 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/ipnat#7 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/jail#4 integrate .. //depot/projects/trustedbsd/base/etc/rc.d/motd#7 integrate .. //depot/projects/trustedbsd/base/etc/rc.sendmail#3 integrate .. //depot/projects/trustedbsd/base/etc/remote#4 integrate .. //depot/projects/trustedbsd/base/etc/sendmail/Makefile#12 integrate .. //depot/projects/trustedbsd/base/etc/sendmail/freebsd.submit.mc#1 branch .. //depot/projects/trustedbsd/base/etc/services#11 integrate .. //depot/projects/trustedbsd/base/games/fortune/datfiles/fortunes#29 integrate .. //depot/projects/trustedbsd/base/games/fortune/datfiles/fortunes.sp.ok#2 integrate .. //depot/projects/trustedbsd/base/games/fortune/datfiles/fortunes2#17 integrate .. //depot/projects/trustedbsd/base/games/fortune/datfiles/limerick#3 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/groff/tmac/mdoc.local#17 integrate .. //depot/projects/trustedbsd/base/gnu/usr.bin/man/man/man.c#8 integrate .. //depot/projects/trustedbsd/base/include/netdb.h#5 integrate .. //depot/projects/trustedbsd/base/kerberos5/include/Makefile#2 integrate .. //depot/projects/trustedbsd/base/kerberos5/include/config.h#8 integrate .. //depot/projects/trustedbsd/base/kerberos5/include/krb5-private.h#3 integrate .. //depot/projects/trustedbsd/base/kerberos5/include/version.h#8 integrate .. //depot/projects/trustedbsd/base/kerberos5/lib/Makefile#5 integrate .. //depot/projects/trustedbsd/base/kerberos5/lib/Makefile.inc#5 integrate .. //depot/projects/trustedbsd/base/kerberos5/lib/libgssapi/Makefile#5 integrate .. //depot/projects/trustedbsd/base/kerberos5/lib/libhdb/Makefile#10 integrate .. //depot/projects/trustedbsd/base/kerberos5/lib/libkadm5clnt/Makefile#3 integrate .. //depot/projects/trustedbsd/base/kerberos5/lib/libkafs5/Makefile#3 branch .. //depot/projects/trustedbsd/base/kerberos5/lib/libkrb5/Makefile#7 integrate .. //depot/projects/trustedbsd/base/kerberos5/libexec/kdc/Makefile#9 integrate .. //depot/projects/trustedbsd/base/kerberos5/usr.bin/Makefile#4 integrate .. //depot/projects/trustedbsd/base/kerberos5/usr.bin/kdestroy/Makefile#4 integrate .. //depot/projects/trustedbsd/base/kerberos5/usr.bin/kinit/Makefile#4 integrate .. //depot/projects/trustedbsd/base/kerberos5/usr.bin/klist/Makefile#4 integrate .. //depot/projects/trustedbsd/base/kerberos5/usr.bin/krb5-config/Makefile#8 integrate .. //depot/projects/trustedbsd/base/kerberos5/usr.bin/ksu/Makefile#4 integrate .. //depot/projects/trustedbsd/base/kerberos5/usr.bin/verify_krb5_conf/Makefile#1 branch .. //depot/projects/trustedbsd/base/lib/Makefile#24 integrate .. //depot/projects/trustedbsd/base/lib/csu/common/crtbrand.c#4 integrate .. //depot/projects/trustedbsd/base/lib/libbluetooth/Makefile#1 branch .. //depot/projects/trustedbsd/base/lib/libbluetooth/bluetooth.3#1 branch .. //depot/projects/trustedbsd/base/lib/libbluetooth/bluetooth.c#1 branch .. //depot/projects/trustedbsd/base/lib/libbluetooth/bluetooth.h#1 branch .. //depot/projects/trustedbsd/base/lib/libc/amd64/gen/Makefile.inc#5 integrate .. //depot/projects/trustedbsd/base/lib/libc/amd64/gen/rfork_thread.S#1 branch .. //depot/projects/trustedbsd/base/lib/libc/amd64/sys/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/base/lib/libc/amd64/sys/amd64_get_fsbase.c#1 branch .. //depot/projects/trustedbsd/base/lib/libc/amd64/sys/amd64_get_gsbase.c#1 branch .. //depot/projects/trustedbsd/base/lib/libc/amd64/sys/amd64_set_fsbase.c#1 branch .. //depot/projects/trustedbsd/base/lib/libc/amd64/sys/amd64_set_gsbase.c#1 branch .. //depot/projects/trustedbsd/base/lib/libc/ia64/gen/fpgetmask.c#4 integrate .. //depot/projects/trustedbsd/base/lib/libc/ia64/gen/fpsetmask.c#4 integrate .. //depot/projects/trustedbsd/base/lib/libc/net/Makefile.inc#7 integrate .. //depot/projects/trustedbsd/base/lib/libc/net/getaddrinfo.3#5 integrate .. //depot/projects/trustedbsd/base/lib/libc/net/getaddrinfo.c#13 integrate .. //depot/projects/trustedbsd/base/lib/libc/net/getnameinfo.3#4 integrate .. //depot/projects/trustedbsd/base/lib/libc/net/inet6_opt_init.3#1 branch .. //depot/projects/trustedbsd/base/lib/libc/net/inet6_rth_space.3#1 branch .. //depot/projects/trustedbsd/base/lib/libc/net/ip6opt.c#5 integrate .. //depot/projects/trustedbsd/base/lib/libc/net/rthdr.c#5 integrate .. //depot/projects/trustedbsd/base/lib/libc/stdlib/malloc.c#15 integrate .. //depot/projects/trustedbsd/base/lib/libc/sys/kill.2#3 integrate .. //depot/projects/trustedbsd/base/lib/libc/sys/kqueue.2#8 integrate .. //depot/projects/trustedbsd/base/lib/libc/sys/stat.2#7 integrate .. //depot/projects/trustedbsd/base/lib/libc/sys/write.2#5 integrate .. //depot/projects/trustedbsd/base/lib/libdevstat/devstat.c#7 integrate .. //depot/projects/trustedbsd/base/lib/libfetch/common.c#12 integrate .. //depot/projects/trustedbsd/base/lib/libipsec/ipsec_dump_policy.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libipsec/pfkey_dump.c#4 integrate .. //depot/projects/trustedbsd/base/lib/libkiconv/kiconv.3#2 integrate .. //depot/projects/trustedbsd/base/lib/libkvm/kvm.h#5 integrate .. //depot/projects/trustedbsd/base/lib/libmd/mdX.3#4 integrate .. //depot/projects/trustedbsd/base/lib/libmd/ripemd.3#4 integrate .. //depot/projects/trustedbsd/base/lib/libmd/sha.3#3 integrate .. //depot/projects/trustedbsd/base/lib/libngatm/Makefile#1 branch .. //depot/projects/trustedbsd/base/lib/libpam/modules/pam_self/pam_self.8#6 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/arch/alpha/alpha/context.S#2 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/arch/amd64/amd64/context.S#3 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/arch/amd64/include/pthread_md.h#4 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/arch/sparc64/Makefile.inc#1 branch .. //depot/projects/trustedbsd/base/lib/libpthread/arch/sparc64/include/atomic_ops.h#1 branch .. //depot/projects/trustedbsd/base/lib/libpthread/arch/sparc64/include/pthread_md.h#1 branch .. //depot/projects/trustedbsd/base/lib/libpthread/arch/sparc64/sparc64/assym.s#1 branch .. //depot/projects/trustedbsd/base/lib/libpthread/arch/sparc64/sparc64/pthread_md.c#1 branch .. //depot/projects/trustedbsd/base/lib/libpthread/arch/sparc64/sparc64/thr_getcontext.S#1 branch .. //depot/projects/trustedbsd/base/lib/libpthread/man/pthread_attr_get_np.3#3 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/man/pthread_mutex_init.3#2 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/sys/lock.c#5 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/test/mutex_d.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_cancel.c#10 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_kern.c#17 integrate .. //depot/projects/trustedbsd/base/lib/libpthread/thread/thr_private.h#15 integrate .. //depot/projects/trustedbsd/base/lib/libsdp/Makefile#1 branch .. //depot/projects/trustedbsd/base/lib/libsdp/sdp-int.h#1 branch .. //depot/projects/trustedbsd/base/lib/libsdp/sdp.3#1 branch .. //depot/projects/trustedbsd/base/lib/libsdp/sdp.h#1 branch .. //depot/projects/trustedbsd/base/lib/libsdp/search.c#1 branch .. //depot/projects/trustedbsd/base/lib/libsdp/session.c#1 branch .. //depot/projects/trustedbsd/base/lib/libsdp/util.c#1 branch .. //depot/projects/trustedbsd/base/lib/libufs/block.c#7 integrate .. //depot/projects/trustedbsd/base/lib/libufs/bread.3#2 integrate .. //depot/projects/trustedbsd/base/lib/libufs/cgread.3#2 integrate .. //depot/projects/trustedbsd/base/lib/libufs/getino.3#2 integrate .. //depot/projects/trustedbsd/base/lib/libufs/libufs.3#2 integrate .. //depot/projects/trustedbsd/base/lib/libufs/sbread.3#2 integrate .. //depot/projects/trustedbsd/base/lib/libufs/ufs_disk_close.3#2 integrate .. //depot/projects/trustedbsd/base/lib/libutil/Makefile#7 integrate .. //depot/projects/trustedbsd/base/lib/libutil/_secure_path.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libutil/fparseln.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libutil/libutil.h#4 integrate .. //depot/projects/trustedbsd/base/lib/libutil/login.c#5 integrate .. //depot/projects/trustedbsd/base/lib/libutil/login_cap.c#6 integrate .. //depot/projects/trustedbsd/base/lib/libutil/login_cap.h#5 integrate .. //depot/projects/trustedbsd/base/lib/libutil/login_class.c#7 integrate .. //depot/projects/trustedbsd/base/lib/libutil/login_ok.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libutil/login_tty.c#3 integrate .. //depot/projects/trustedbsd/base/lib/libutil/logout.c#4 integrate .. //depot/projects/trustedbsd/base/lib/libutil/logwtmp.c#4 integrate .. //depot/projects/trustedbsd/base/lib/libutil/pty.c#4 integrate .. //depot/projects/trustedbsd/base/lib/libutil/pw_util.c#8 integrate .. //depot/projects/trustedbsd/base/lib/libutil/realhostname.c#4 integrate .. //depot/projects/trustedbsd/base/lib/libutil/stub.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libutil/trimdomain.c#2 integrate .. //depot/projects/trustedbsd/base/lib/libutil/uucplock.c#3 integrate .. //depot/projects/trustedbsd/base/lib/msun/Makefile#8 integrate .. //depot/projects/trustedbsd/base/lib/msun/man/fabs.3#2 integrate .. //depot/projects/trustedbsd/base/lib/msun/src/math.h#12 integrate .. //depot/projects/trustedbsd/base/lib/msun/src/s_fabsl.c#1 branch .. //depot/projects/trustedbsd/base/libexec/makekey/makekey.8#3 integrate .. //depot/projects/trustedbsd/base/release/Makefile#51 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/errata/article.sgml#13 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#45 integrate .. //depot/projects/trustedbsd/base/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#74 integrate .. //depot/projects/trustedbsd/base/release/doc/ja_JP.eucJP/early-adopter/article.sgml#5 integrate .. //depot/projects/trustedbsd/base/release/doc/ja_JP.eucJP/errata/article.sgml#12 integrate .. //depot/projects/trustedbsd/base/release/doc/ja_JP.eucJP/hardware/amd64/proc-amd64.sgml#2 integrate .. //depot/projects/trustedbsd/base/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#13 integrate .. //depot/projects/trustedbsd/base/release/doc/ja_JP.eucJP/hardware/i386/proc-i386.sgml#6 integrate .. //depot/projects/trustedbsd/base/release/doc/ja_JP.eucJP/relnotes/alpha/article.sgml#3 integrate .. //depot/projects/trustedbsd/base/release/doc/ja_JP.eucJP/relnotes/amd64/article.sgml#2 integrate .. //depot/projects/trustedbsd/base/release/doc/ja_JP.eucJP/relnotes/common/new.sgml#26 integrate .. //depot/projects/trustedbsd/base/release/doc/ja_JP.eucJP/relnotes/i386/article.sgml#4 integrate .. //depot/projects/trustedbsd/base/release/doc/ja_JP.eucJP/relnotes/ia64/article.sgml#2 integrate .. //depot/projects/trustedbsd/base/release/doc/ja_JP.eucJP/relnotes/pc98/article.sgml#2 integrate .. //depot/projects/trustedbsd/base/release/doc/ja_JP.eucJP/relnotes/sparc64/article.sgml#4 integrate .. //depot/projects/trustedbsd/base/release/scripts/print-cdrom-packages.sh#20 integrate .. //depot/projects/trustedbsd/base/sbin/bsdlabel/bsdlabel.c#8 integrate .. //depot/projects/trustedbsd/base/sbin/devd/devd.cc#8 integrate .. //depot/projects/trustedbsd/base/sbin/devd/devd.h#4 integrate .. //depot/projects/trustedbsd/base/sbin/devd/devd.hh#2 integrate .. //depot/projects/trustedbsd/base/sbin/devd/parse.y#4 integrate .. //depot/projects/trustedbsd/base/sbin/devd/token.l#5 integrate .. //depot/projects/trustedbsd/base/sbin/fdisk/fdisk.8#5 integrate .. //depot/projects/trustedbsd/base/sbin/fsck_ffs/dir.c#9 integrate .. //depot/projects/trustedbsd/base/sbin/fsck_ffs/main.c#13 integrate .. //depot/projects/trustedbsd/base/sbin/gbde/Makefile#8 integrate .. //depot/projects/trustedbsd/base/sbin/gbde/gbde.c#9 integrate .. //depot/projects/trustedbsd/base/sbin/gbde/image.uu#1 branch .. //depot/projects/trustedbsd/base/sbin/gbde/test.sh#2 integrate .. //depot/projects/trustedbsd/base/sbin/ip6fw/ip6fw.c#7 integrate .. //depot/projects/trustedbsd/base/sbin/ipfw/ipfw2.c#20 integrate .. //depot/projects/trustedbsd/base/sbin/mdconfig/mdconfig.8#9 integrate .. //depot/projects/trustedbsd/base/sbin/mount/mount.8#12 integrate .. //depot/projects/trustedbsd/base/sbin/mount_msdosfs/Makefile#7 integrate .. //depot/projects/trustedbsd/base/sbin/mount_msdosfs/mount_msdosfs.8#7 integrate .. //depot/projects/trustedbsd/base/sbin/mount_msdosfs/mount_msdosfs.c#6 integrate .. //depot/projects/trustedbsd/base/sbin/mount_std/mount_std.8#6 integrate .. //depot/projects/trustedbsd/base/sbin/newfs/newfs.8#16 integrate .. //depot/projects/trustedbsd/base/sbin/ping6/Makefile#4 integrate .. //depot/projects/trustedbsd/base/sbin/ping6/ping6.8#6 integrate .. //depot/projects/trustedbsd/base/sbin/ping6/ping6.c#10 integrate .. //depot/projects/trustedbsd/base/sbin/savecore/savecore.c#9 integrate .. //depot/projects/trustedbsd/base/sbin/sysctl/sysctl.c#14 integrate .. //depot/projects/trustedbsd/base/share/colldef/Makefile#17 integrate .. //depot/projects/trustedbsd/base/share/colldef/sl_SI.ISO8859-2.src#1 branch .. //depot/projects/trustedbsd/base/share/doc/IPv6/IMPLEMENTATION#3 integrate .. //depot/projects/trustedbsd/base/share/examples/drivers/make_device_driver.sh#4 integrate .. //depot/projects/trustedbsd/base/share/examples/scsi_target/scsi_cmds.c#4 integrate .. //depot/projects/trustedbsd/base/share/examples/scsi_target/scsi_target.8#3 integrate .. //depot/projects/trustedbsd/base/share/examples/scsi_target/scsi_target.c#5 integrate .. //depot/projects/trustedbsd/base/share/examples/scsi_target/scsi_target.h#2 integrate .. //depot/projects/trustedbsd/base/share/man/man4/Makefile#38 integrate .. //depot/projects/trustedbsd/base/share/man/man4/bktr.4#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/dcons.4#1 branch .. //depot/projects/trustedbsd/base/share/man/man4/dcons_crom.4#1 branch .. //depot/projects/trustedbsd/base/share/man/man4/ddb.4#4 integrate .. //depot/projects/trustedbsd/base/share/man/man4/hatm.4#3 integrate .. //depot/projects/trustedbsd/base/share/man/man4/hifn.4#3 integrate .. //depot/projects/trustedbsd/base/share/man/man4/inet.4#7 integrate .. //depot/projects/trustedbsd/base/share/man/man4/man4.i386/Makefile#7 integrate .. //depot/projects/trustedbsd/base/share/man/man4/man4.i386/ep.4#3 integrate .. //depot/projects/trustedbsd/base/share/man/man4/man4.i386/pae.4#4 integrate .. //depot/projects/trustedbsd/base/share/man/man4/multicast.4#1 branch .. //depot/projects/trustedbsd/base/share/man/man4/ng_bluetooth.4#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ng_bt3c.4#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ng_btsocket.4#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ng_h4.4#4 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ng_hci.4#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ng_l2cap.4#5 integrate .. //depot/projects/trustedbsd/base/share/man/man4/ng_ubt.4#4 integrate .. //depot/projects/trustedbsd/base/share/man/man4/pim.4#1 branch .. //depot/projects/trustedbsd/base/share/man/man4/ubtbcmfw.4#2 integrate .. //depot/projects/trustedbsd/base/share/man/man4/umass.4#10 integrate .. //depot/projects/trustedbsd/base/share/man/man4/vpo.4#4 integrate .. //depot/projects/trustedbsd/base/share/man/man4/xl.4#4 integrate .. //depot/projects/trustedbsd/base/share/man/man5/Makefile#11 integrate .. //depot/projects/trustedbsd/base/share/man/man5/bluetooth.hosts.5#1 branch .. //depot/projects/trustedbsd/base/share/man/man5/bluetooth.protocols.5#1 branch .. //depot/projects/trustedbsd/base/share/man/man5/remote.5#3 integrate .. //depot/projects/trustedbsd/base/share/man/man7/release.7#17 integrate .. //depot/projects/trustedbsd/base/share/man/man9/BUS_CONFIG_INTR.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/BUS_PRINT_CHILD.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/BUS_READ_IVAR.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/BUS_SETUP_INTR.9#6 integrate .. //depot/projects/trustedbsd/base/share/man/man9/DELAY.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/DEVICE_DETACH.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/DEVICE_PROBE.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/MD5.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/Makefile#33 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_CHECKEXP.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_FHTOVP.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_INIT.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_MOUNT.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_QUOTACTL.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_ROOT.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_SET.9#7 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_START.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_STATFS.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_SYNC.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_UNMOUNT.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_VGET.9#7 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VFS_VPTOFH.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_ACLCHECK.9#7 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_ADVLOCK.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_CREATE.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_GETACL.9#7 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_GETEXTATTR.9#11 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_GETPAGES.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_INACTIVE.9#6 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_LEASE.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_LISTEXTATTR.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_OPENCLOSE.9#6 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_RDWR.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_READDIR.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_RENAME.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/VOP_SETACL.9#6 integrate .. //depot/projects/trustedbsd/base/share/man/man9/accept_filter.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/bios.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/boot.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/buf.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/bus_dma.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/bus_generic_attach.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/bus_generic_detach.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/bus_generic_shutdown.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/cd.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/copy.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/devclass.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/devclass_add_driver.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_add_child.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_delete_child.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_enable.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_find_child.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_get_children.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_get_devclass.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_get_driver.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_get_ivars.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_get_name.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_get_parent.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_get_softc.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_get_state.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_get_unit.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_ids.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_probe_and_attach.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_quiet.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_set_desc.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_set_driver.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/device_set_flags.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/devstat.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/devtoname.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/disk.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/driver.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/extattr.9#6 integrate .. //depot/projects/trustedbsd/base/share/man/man9/inittodr.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/make_dev.9#6 integrate .. //depot/projects/trustedbsd/base/share/man/man9/panic.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/pmap.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/pmap_is_prefaultable.9#1 branch .. //depot/projects/trustedbsd/base/share/man/man9/pmap_prefault.9#2 delete .. //depot/projects/trustedbsd/base/share/man/man9/pmap_resident_count.9#1 branch .. //depot/projects/trustedbsd/base/share/man/man9/random.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/resettodr.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/rijndael.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/rtalloc.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/rtentry.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/sleep.9#8 integrate .. //depot/projects/trustedbsd/base/share/man/man9/spl.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/suser.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/time.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vfs_busy.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vfs_getnewfsid.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vfs_getvfs.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vfs_mount.9#6 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vfs_mountedon.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vfs_rootmountalloc.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vfs_timestamp.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vfs_unbusy.9#3 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vget.9#5 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vm_fault_prefault.9#1 branch .. //depot/projects/trustedbsd/base/share/man/man9/vm_map.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vm_map_max.9#2 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vm_page_alloc.9#4 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vnode.9#9 integrate .. //depot/projects/trustedbsd/base/share/man/man9/vref.9#4 integrate .. //depot/projects/trustedbsd/base/share/mk/bsd.libnames.mk#19 integrate .. //depot/projects/trustedbsd/base/share/mk/sys.mk#11 integrate .. //depot/projects/trustedbsd/base/share/zoneinfo/asia#7 integrate .. //depot/projects/trustedbsd/base/share/zoneinfo/australasia#7 integrate .. //depot/projects/trustedbsd/base/share/zoneinfo/backward#4 integrate .. //depot/projects/trustedbsd/base/share/zoneinfo/europe#6 integrate .. //depot/projects/trustedbsd/base/share/zoneinfo/leapseconds#5 integrate .. //depot/projects/trustedbsd/base/share/zoneinfo/northamerica#6 integrate .. //depot/projects/trustedbsd/base/share/zoneinfo/southamerica#7 integrate .. //depot/projects/trustedbsd/base/share/zoneinfo/zone.tab#9 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/machdep.c#29 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/pmap.c#35 integrate .. //depot/projects/trustedbsd/base/sys/alpha/alpha/trap.c#22 integrate .. //depot/projects/trustedbsd/base/sys/alpha/include/pmap.h#11 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/amd64_mem.c#3 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/exception.S#5 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/machdep.c#8 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/pmap.c#10 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/support.S#3 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/trap.c#8 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/tsc.c#4 integrate .. //depot/projects/trustedbsd/base/sys/amd64/amd64/uma_machdep.c#1 branch .. //depot/projects/trustedbsd/base/sys/amd64/include/frame.h#3 integrate .. //depot/projects/trustedbsd/base/sys/amd64/include/pmap.h#6 integrate .. //depot/projects/trustedbsd/base/sys/amd64/include/signal.h#3 integrate .. //depot/projects/trustedbsd/base/sys/amd64/include/stdarg.h#3 integrate .. //depot/projects/trustedbsd/base/sys/amd64/include/sysarch.h#3 integrate .. //depot/projects/trustedbsd/base/sys/amd64/include/ucontext.h#4 integrate .. //depot/projects/trustedbsd/base/sys/cam/cam_periph.c#13 integrate .. //depot/projects/trustedbsd/base/sys/cam/scsi/scsi_cd.c#21 integrate .. //depot/projects/trustedbsd/base/sys/cam/scsi/scsi_da.c#39 integrate .. //depot/projects/trustedbsd/base/sys/cam/scsi/scsi_target.c#9 integrate .. //depot/projects/trustedbsd/base/sys/coda/coda_subr.c#8 integrate .. //depot/projects/trustedbsd/base/sys/compat/linprocfs/linprocfs.c#22 integrate .. //depot/projects/trustedbsd/base/sys/compat/linux/linux_ioctl.c#25 integrate .. //depot/projects/trustedbsd/base/sys/compat/linux/linux_misc.c#26 integrate .. //depot/projects/trustedbsd/base/sys/compat/linux/linux_socket.c#10 integrate .. //depot/projects/trustedbsd/base/sys/compat/linux/linux_uid16.c#7 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/svr4_filio.c#13 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/svr4_misc.c#20 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/svr4_signal.c#8 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/svr4_stream.c#14 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/svr4_sysvec.c#11 integrate .. //depot/projects/trustedbsd/base/sys/compat/svr4/svr4_util.h#3 integrate .. //depot/projects/trustedbsd/base/sys/conf/NOTES#43 integrate .. //depot/projects/trustedbsd/base/sys/conf/files#65 integrate .. //depot/projects/trustedbsd/base/sys/conf/files.amd64#8 integrate .. //depot/projects/trustedbsd/base/sys/conf/files.ia64#23 integrate .. //depot/projects/trustedbsd/base/sys/conf/kmod.mk#23 integrate .. //depot/projects/trustedbsd/base/sys/conf/majors#26 integrate .. //depot/projects/trustedbsd/base/sys/conf/options#43 integrate .. //depot/projects/trustedbsd/base/sys/contrib/dev/acpica/exfldio.c#9 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ia64/libuwx/src/Makefile#3 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ia64/libuwx/src/uwx.h#2 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ia64/libuwx/src/uwx_context.c#2 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ia64/libuwx/src/uwx_env.h#2 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#2 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ia64/libuwx/src/uwx_self.c#2 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ia64/libuwx/src/uwx_step.c#2 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ia64/libuwx/src/uwx_step.h#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/ia64/libuwx/src/uwx_trace.c#3 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ia64/libuwx/src/uwx_trace.h#3 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#2 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#3 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ipfilter/netinet/ip_fil.c#10 integrate .. //depot/projects/trustedbsd/base/sys/contrib/ngatm/FREEBSD-upgrade#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/ngatm/netnatm/misc/unimsg_common.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/ngatm/netnatm/saal/saal_sscfu.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/ngatm/netnatm/saal/saal_sscop.c#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/ngatm/netnatm/saal/sscfu.h#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/ngatm/netnatm/saal/sscfudef.h#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/ngatm/netnatm/saal/sscfupriv.h#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/ngatm/netnatm/saal/sscop.h#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/ngatm/netnatm/saal/sscopdef.h#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/ngatm/netnatm/saal/sscoppriv.h#1 branch .. //depot/projects/trustedbsd/base/sys/contrib/ngatm/netnatm/unimsg.h#1 branch .. //depot/projects/trustedbsd/base/sys/crypto/blowfish/bf_ecb.c#1 branch .. //depot/projects/trustedbsd/base/sys/crypto/blowfish/blowfish.h#4 integrate .. //depot/projects/trustedbsd/base/sys/crypto/cast128/cast128.c#4 integrate .. //depot/projects/trustedbsd/base/sys/crypto/cast128/cast128.h#4 integrate .. //depot/projects/trustedbsd/base/sys/crypto/cast128/cast128_subkey.h#2 delete .. //depot/projects/trustedbsd/base/sys/crypto/cast128/cast128sb.h#1 branch .. //depot/projects/trustedbsd/base/sys/crypto/rijndael/Makefile#1 branch .. //depot/projects/trustedbsd/base/sys/crypto/rijndael/boxes-fst.dat#2 delete .. //depot/projects/trustedbsd/base/sys/crypto/rijndael/rijndael-alg-fst.c#3 integrate .. //depot/projects/trustedbsd/base/sys/crypto/rijndael/rijndael-alg-fst.h#2 integrate .. //depot/projects/trustedbsd/base/sys/crypto/rijndael/rijndael-api-fst.c#6 integrate .. //depot/projects/trustedbsd/base/sys/crypto/rijndael/rijndael-api-fst.h#3 integrate .. //depot/projects/trustedbsd/base/sys/crypto/rijndael/rijndael_local.h#2 integrate .. //depot/projects/trustedbsd/base/sys/crypto/rijndael/test00.c#1 branch .. //depot/projects/trustedbsd/base/sys/dev/aac/aac.c#25 integrate .. //depot/projects/trustedbsd/base/sys/dev/aac/aac_disk.c#15 integrate .. //depot/projects/trustedbsd/base/sys/dev/aac/aacreg.h#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/Osd/OsdSchedule.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi.c#30 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_acad.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_button.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_cmbat.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_lid.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpi_thermal.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/acpica/acpivar.h#20 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/ahc_pci.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/aic7xxx/ahd_pci.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/amr/amr.c#15 integrate .. //depot/projects/trustedbsd/base/sys/dev/amr/amr_disk.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/amr/amrvar.h#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/an/if_an_pccard.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-all.c#32 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-all.h#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-card.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-chipset.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-disk.c#24 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-dma.c#25 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-lowlevel.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-pci.c#27 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/ata-queue.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/ata/atapi-cd.c#25 integrate .. //depot/projects/trustedbsd/base/sys/dev/ath/if_ath.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/ath/if_ath_pci.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/ath/if_athvar.h#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/cardbus/cardbus.c#17 integrate .. //depot/projects/trustedbsd/base/sys/dev/cardbus/cardbus_cis.c#17 integrate .. //depot/projects/trustedbsd/base/sys/dev/cardbus/cardbus_cis.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/ciss/ciss.c#17 integrate .. //depot/projects/trustedbsd/base/sys/dev/dcons/dcons.c#1 branch .. //depot/projects/trustedbsd/base/sys/dev/dcons/dcons.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/dcons/dcons_crom.c#1 branch .. //depot/projects/trustedbsd/base/sys/dev/drm/ati_pcigart.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drmP.h#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_auth.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_bufs.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_context.h#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_dma.h#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_drv.h#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_fops.h#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_ioctl.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_irq.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_memory.h#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_memory_debug.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_os_freebsd.h#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_pci.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_sysctl.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/drm_vm.h#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/mga.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/mga_dma.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/mga_drv.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/mga_irq.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128_cce.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128_drv.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128_drv.h#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128_irq.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/r128_state.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/radeon.h#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/radeon_cp.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/radeon_drv.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/radeon_irq.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/sis.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/sis_drv.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/sis_mm.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/tdfx.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/drm/tdfx_drv.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/ed/if_ed.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/ed/if_ed_cbus.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/ed/if_ed_isa.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/ed/if_edreg.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/ed/if_edvar.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/em/if_em.c#25 integrate .. //depot/projects/trustedbsd/base/sys/dev/em/if_em.h#19 integrate .. //depot/projects/trustedbsd/base/sys/dev/ep/if_ep.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/ep/if_ep_eisa.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/ep/if_ep_isa.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/ep/if_ep_mca.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/ep/if_ep_pccard.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/ep/if_epreg.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/ep/if_epvar.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/exca/exca.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/firewire.c#21 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/firewire.h#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/firewirereg.h#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwcrom.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwdev.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwmem.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwmem.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwohci.c#19 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwohci_pci.c#16 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwohcireg.h#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/fwohcivar.h#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/if_fwe.c#15 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/sbp.c#22 integrate .. //depot/projects/trustedbsd/base/sys/dev/firewire/sbp.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/firewire/sbp_targ.c#1 branch .. //depot/projects/trustedbsd/base/sys/dev/hatm/if_hatm.c#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/hifn/hifn7751.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/hifn/hifn7751reg.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/hifn/hifn7751var.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/ips/ips_commands.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/isp/isp_freebsd.h#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/kbd/atkbd.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/matcd/matcd.c#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/mcd/mcd.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/md/md.c#32 integrate .. //depot/projects/trustedbsd/base/sys/dev/null/null.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/ofw/ofw_disk.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/owi/if_owi.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/card_if.m#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccard.c#22 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccard_cis.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccard_cis.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccard_cis_quirks.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccarddevs#26 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccarddevs.h#26 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccardreg.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccard/pccardvar.h#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/pccbb/pccbb.c#29 integrate .. //depot/projects/trustedbsd/base/sys/dev/pci/pci_pci.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/pci/pci_user.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/puc/pucdata.c#16 integrate .. //depot/projects/trustedbsd/base/sys/dev/raidframe/rf_freebsdkintf.c#13 integrate .. //depot/projects/trustedbsd/base/sys/dev/scd/scd.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/sio/sio_pccard.c#8 integrate .. //depot/projects/trustedbsd/base/sys/dev/sound/pci/au88x0.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/sound/pci/au88x0.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/sound/pcm/ac97.c#15 integrate .. //depot/projects/trustedbsd/base/sys/dev/streams/streams.c#15 integrate .. //depot/projects/trustedbsd/base/sys/dev/uart/uart_bus_pccard.c#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/if_aue.c#17 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/if_auereg.h#6 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/if_cue.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/if_cuereg.h#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/if_kue.c#10 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/if_kuereg.h#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/if_rue.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/if_ruereg.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/ubsa.c#7 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/ufm.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/ugen.c#18 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/uhid.c#15 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/ukbd.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/ums.c#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/usb.c#18 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/usb_mem.c#4 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/usb_port.h#14 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/usbdevs#29 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/usbdevs.h#29 integrate .. //depot/projects/trustedbsd/base/sys/dev/usb/usbdevs_data.h#29 integrate .. //depot/projects/trustedbsd/base/sys/dev/vinum/vinumrequest.c#12 integrate .. //depot/projects/trustedbsd/base/sys/dev/vx/if_vx.c#11 integrate .. //depot/projects/trustedbsd/base/sys/dev/vx/if_vx_eisa.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/vx/if_vx_pci.c#5 integrate .. //depot/projects/trustedbsd/base/sys/dev/vx/if_vxreg.h#3 integrate .. //depot/projects/trustedbsd/base/sys/dev/vx/if_vxvar.h#1 branch .. //depot/projects/trustedbsd/base/sys/dev/xe/if_xe.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/xe/if_xe_pccard.c#9 integrate .. //depot/projects/trustedbsd/base/sys/dev/xe/if_xereg.h#2 integrate .. //depot/projects/trustedbsd/base/sys/dev/xe/if_xevar.h#3 integrate .. //depot/projects/trustedbsd/base/sys/fs/devfs/devfs_vnops.c#25 integrate .. //depot/projects/trustedbsd/base/sys/fs/hpfs/hpfs_vnops.c#18 integrate .. //depot/projects/trustedbsd/base/sys/fs/msdosfs/msdosfs_denode.c#13 integrate .. //depot/projects/trustedbsd/base/sys/fs/msdosfs/msdosfs_vfsops.c#19 integrate .. //depot/projects/trustedbsd/base/sys/fs/msdosfs/msdosfs_vnops.c#18 integrate .. //depot/projects/trustedbsd/base/sys/fs/ntfs/ntfs_vnops.c#13 integrate .. //depot/projects/trustedbsd/base/sys/fs/nwfs/nwfs_io.c#9 integrate .. //depot/projects/trustedbsd/base/sys/fs/nwfs/nwfs_node.c#9 integrate .. //depot/projects/trustedbsd/base/sys/fs/nwfs/nwfs_vnops.c#7 integrate .. //depot/projects/trustedbsd/base/sys/fs/procfs/procfs_dbregs.c#9 integrate .. //depot/projects/trustedbsd/base/sys/fs/procfs/procfs_fpregs.c#9 integrate .. //depot/projects/trustedbsd/base/sys/fs/procfs/procfs_map.c#5 integrate .. //depot/projects/trustedbsd/base/sys/fs/procfs/procfs_regs.c#9 integrate .. //depot/projects/trustedbsd/base/sys/fs/pseudofs/pseudofs_vncache.c#14 integrate .. //depot/projects/trustedbsd/base/sys/fs/pseudofs/pseudofs_vnops.c#20 integrate .. //depot/projects/trustedbsd/base/sys/fs/smbfs/smbfs_io.c#13 integrate .. //depot/projects/trustedbsd/base/sys/fs/smbfs/smbfs_node.c#12 integrate .. //depot/projects/trustedbsd/base/sys/fs/smbfs/smbfs_vnops.c#19 integrate .. //depot/projects/trustedbsd/base/sys/fs/specfs/spec_vnops.c#25 integrate .. //depot/projects/trustedbsd/base/sys/fs/udf/udf_vnops.c#16 integrate .. //depot/projects/trustedbsd/base/sys/geom/bde/g_bde.h#5 integrate .. //depot/projects/trustedbsd/base/sys/geom/bde/g_bde_lock.c#10 integrate .. //depot/projects/trustedbsd/base/sys/geom/geom.h#30 integrate .. //depot/projects/trustedbsd/base/sys/geom/geom_ccd.c#5 integrate .. //depot/projects/trustedbsd/base/sys/geom/geom_dev.c#33 integrate .. //depot/projects/trustedbsd/base/sys/geom/geom_disk.c#30 integrate .. //depot/projects/trustedbsd/base/sys/geom/geom_event.c#13 integrate .. //depot/projects/trustedbsd/base/sys/geom/geom_fox.c#2 integrate .. //depot/projects/trustedbsd/base/sys/geom/geom_io.c#19 integrate .. //depot/projects/trustedbsd/base/sys/geom/geom_subr.c#24 integrate .. //depot/projects/trustedbsd/base/sys/gnu/ext2fs/ext2_bmap.c#4 integrate .. //depot/projects/trustedbsd/base/sys/gnu/ext2fs/ext2_inode.c#9 integrate .. //depot/projects/trustedbsd/base/sys/gnu/ext2fs/ext2_vfsops.c#16 integrate .. //depot/projects/trustedbsd/base/sys/gnu/ext2fs/ext2_vnops.c#15 integrate .. //depot/projects/trustedbsd/base/sys/i386/conf/NOTES#41 integrate .. //depot/projects/trustedbsd/base/sys/i386/i386/i686_mem.c#8 integrate .. //depot/projects/trustedbsd/base/sys/i386/i386/locore.s#15 integrate .. //depot/projects/trustedbsd/base/sys/i386/i386/machdep.c#37 integrate .. //depot/projects/trustedbsd/base/sys/i386/i386/mp_clock.c#9 integrate .. //depot/projects/trustedbsd/base/sys/i386/i386/mp_machdep.c#28 integrate .. //depot/projects/trustedbsd/base/sys/i386/i386/pmap.c#43 integrate .. //depot/projects/trustedbsd/base/sys/i386/i386/trap.c#30 integrate .. //depot/projects/trustedbsd/base/sys/i386/i386/tsc.c#7 integrate .. //depot/projects/trustedbsd/base/sys/i386/i386/vm_machdep.c#27 integrate .. //depot/projects/trustedbsd/base/sys/i386/ibcs2/ibcs2_misc.c#10 integrate .. //depot/projects/trustedbsd/base/sys/i386/ibcs2/ibcs2_signal.c#9 integrate .. //depot/projects/trustedbsd/base/sys/i386/ibcs2/ibcs2_socksys.c#6 integrate .. //depot/projects/trustedbsd/base/sys/i386/ibcs2/ibcs2_util.c#5 integrate .. //depot/projects/trustedbsd/base/sys/i386/ibcs2/ibcs2_util.h#4 integrate .. //depot/projects/trustedbsd/base/sys/i386/ibcs2/imgact_coff.c#15 integrate .. //depot/projects/trustedbsd/base/sys/i386/include/pmap.h#13 integrate .. //depot/projects/trustedbsd/base/sys/i386/isa/apic_vector.s#12 integrate .. //depot/projects/trustedbsd/base/sys/i386/isa/isa_compat.c#4 integrate .. //depot/projects/trustedbsd/base/sys/i386/pci/pci_cfgreg.c#18 integrate .. //depot/projects/trustedbsd/base/sys/ia64/disasm/disasm.h#1 branch .. //depot/projects/trustedbsd/base/sys/ia64/disasm/disasm_decode.c#1 branch .. //depot/projects/trustedbsd/base/sys/ia64/disasm/disasm_extract.c#1 branch .. //depot/projects/trustedbsd/base/sys/ia64/disasm/disasm_format.c#1 branch .. //depot/projects/trustedbsd/base/sys/ia64/disasm/disasm_int.h#1 branch .. //depot/projects/trustedbsd/base/sys/ia64/ia64/db_disasm.c#3 delete .. //depot/projects/trustedbsd/base/sys/ia64/ia64/db_interface.c#8 integrate .. //depot/projects/trustedbsd/base/sys/ia64/ia64/db_trace.c#9 integrate .. //depot/projects/trustedbsd/base/sys/ia64/ia64/machdep.c#42 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Oct 25 11:02:03 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 9FC4B16A4C0; Sat, 25 Oct 2003 11:02:03 -0700 (PDT) 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 6E49516A4B3 for ; Sat, 25 Oct 2003 11:02:03 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id DBCA743F75 for ; Sat, 25 Oct 2003 11:01:59 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9PI1xXJ034695 for ; Sat, 25 Oct 2003 11:01:59 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9PI1m8C034543 for perforce@freebsd.org; Sat, 25 Oct 2003 11:01:48 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 25 Oct 2003 11:01:48 -0700 (PDT) Message-Id: <200310251801.h9PI1m8C034543@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 Subject: PERFORCE change 40491 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 25 Oct 2003 18:02:04 -0000 http://perforce.freebsd.org/chv.cgi?CH=40491 Change 40491 by rwatson@rwatson_tislabs on 2003/10/25 11:00:59 Slide trustedbsd_mac forward on the FreeBSD 5.x-CURRENT HEAD through October 25, 2003. Numerous changes, including: - Additional Netgraph/ATM support - Heimdal upgrade - Bluetooth code drop - IPv6 "Advanced Sockets API" upgrade - Many threading improvements - devd ACPI support - Many documentation changes/fixes/additions - ia64 stack trace support - Many compat layer bugfixes - Rijndael (AES) support for IPsec - Many ATA fixes - Dcons (firewire console) - DRM/DRI upgrade, locking fixes - Loop back of kern_mac.c breakup - NFS/snapshot deadlock fix - Additional network stack locking, including parts of IPv6, routing improvements, locking for dummynet, et al. - And much more... Affected files ... .. //depot/projects/trustedbsd/mac/Makefile#25 integrate .. //depot/projects/trustedbsd/mac/Makefile.inc1#42 integrate .. //depot/projects/trustedbsd/mac/UPDATING#32 integrate .. //depot/projects/trustedbsd/mac/bin/date/date.c#8 integrate .. //depot/projects/trustedbsd/mac/bin/echo/echo.c#8 integrate .. //depot/projects/trustedbsd/mac/bin/ls/print.c#19 integrate .. //depot/projects/trustedbsd/mac/bin/rcp/rcp.c#12 integrate .. //depot/projects/trustedbsd/mac/contrib/ngatm/FREEBSD-upgrade#1 branch .. //depot/projects/trustedbsd/mac/contrib/ngatm/libngatm/sscfucust.h#1 branch .. //depot/projects/trustedbsd/mac/contrib/ngatm/libngatm/sscopcust.h#1 branch .. //depot/projects/trustedbsd/mac/contrib/ngatm/libngatm/unimsg.c#1 branch .. //depot/projects/trustedbsd/mac/contrib/ngatm/man/unimsg.3#1 branch .. //depot/projects/trustedbsd/mac/contrib/sendmail/FREEBSD-upgrade#12 integrate .. //depot/projects/trustedbsd/mac/contrib/telnet/telnet/commands.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/ChangeLog#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/ChangeLog.2002#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/FREEBSD-Xlist#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/NEWS#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/aclocal.m4#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/admin/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/admin/change.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/admin/copy.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/admin/get.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/admin/ktutil.8#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/afsutil/ChangeLog#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/afsutil/Makefile.am#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/afsutil/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/afsutil/afslog.1#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/afsutil/afslog.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ChangeLog#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/common/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ftp/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ftp/ftp.1#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ftp/ftp.c#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ftp/gssapi.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ftp/main.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ftpd/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ftpd/ftpd.8#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ftpd/ftpd.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ftpd/ftpd_locl.h#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ftpd/gss_userok.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ftpd/ls.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/ftp/ftpd/pathnames.h#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/kf/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/kf/kf.1#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/kf/kfd.8#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/kf/kfd.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/login/ChangeLog#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/login/Makefile.am#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/login/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/login/login.1#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/login/login.access.5#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/login/login.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/push/ChangeLog#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/push/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/push/pfrom.1#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/push/push.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/rcp/ChangeLog#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/rcp/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/rcp/rcp.1#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/rcp/rcp.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/rsh/ChangeLog#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/rsh/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/rsh/rsh.1#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/rsh/rsh.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/rsh/rsh_locl.h#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/rsh/rshd.8#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/rsh/rshd.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/su/ChangeLog#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/su/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/su/su.c#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/telnet/ChangeLog#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/telnet/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/telnet/libtelnet/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/telnet/libtelnet/kerberos5.c#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/telnet/telnet/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/telnet/telnetd/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/appl/test/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/cf/ChangeLog#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/cf/Makefile.am.common#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/cf/check-compile-et.m4#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/cf/check-var.m4#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/cf/crypto.m4#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/cf/make-proto.pl#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/cf/roken-frag.m4#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/cf/sunos.m4#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/configure#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/configure.in#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/doc/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/doc/ack.texi#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/doc/intro.texi#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/doc/misc.texi#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/doc/programming.texi#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/doc/setup.texi#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/include/Makefile.in#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/include/kadm5/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/include/make_crypto.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/ChangeLog#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/ank.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/init.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/kadm_conn.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/kadmin.8#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/kadmin.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/kadmind.8#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/kadmind.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/mod.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/server.c#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/util.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kadmin/version4.c#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/524.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/Makefile.am#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/config.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/connect.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/hprop.8#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/hpropd.8#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/hpropd.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/kaserver.c#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/kdc.8#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/kdc_locl.h#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/kerberos4.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/kerberos5.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/string2key.8#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/string2key.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kdc/v4_dump.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kpasswd/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kpasswd/kpasswd.1#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kpasswd/kpasswdd.8#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kpasswd/kpasswdd.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kuser/Makefile.am#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kuser/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kuser/kdestroy.1#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kuser/kdestroy.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kuser/kgetcred.1#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kuser/kinit.1#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kuser/kinit.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kuser/klist.1#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/kuser/klist.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/45/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/asn1/Makefile.am#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/asn1/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/asn1/check-common.c#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/asn1/check-common.h#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/asn1/check-der.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/asn1/check-gen.c#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/asn1/der_copy.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/asn1/der_put.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/asn1/gen.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/asn1/k5.asn1#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/auth/ChangeLog#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/auth/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/auth/afskauthlib/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/auth/pam/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/auth/sia/Makefile.am#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/auth/sia/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/com_err/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/8003.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/ChangeLog#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/Makefile.am#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/accept_sec_context.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/acquire_cred.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/add_cred.c#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/add_oid_set_member.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/compare_name.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/compat.c#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/context_time.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/copy_ccache.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/create_emtpy_oid_set.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/delete_sec_context.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/display_name.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/display_status.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/duplicate_name.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/export_name.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/export_sec_context.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/get_mic.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/gss_acquire_cred.3#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/gssapi.3#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/gssapi.h#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/gssapi_locl.h#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/import_name.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/import_sec_context.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/indicate_mechs.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/init_sec_context.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/inquire_context.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/inquire_cred.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/inquire_cred_by_mech.c#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/inquire_mechs_for_name.c#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/inquire_names_for_mech.c#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/process_context_token.c#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/release_buffer.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/release_cred.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/release_name.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/release_oid_set.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/test_acquire_cred.c#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/test_oid_set_member.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/unwrap.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/verify_mic.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/gssapi/wrap.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/hdb/Makefile.am#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/hdb/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/hdb/common.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/hdb/mkey.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kadm5/ChangeLog#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kadm5/Makefile.am#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kadm5/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kadm5/dump_log.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kadm5/init_c.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kadm5/ipropd_master.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kadm5/ipropd_slave.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kadm5/log.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kadm5/send_recv.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kafs/ChangeLog#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kafs/Makefile.am#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kafs/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kafs/afskrb.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kafs/afskrb5.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kafs/afssys.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kafs/afssysdefs.h#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kafs/common.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kafs/dlfcn.h#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kafs/kafs.3#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kafs/kafs.h#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/kafs/kafs_locl.h#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/Makefile.am#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/Makefile.in#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/addr_families.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/aes-test.c#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/aname_to_localname.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/cache.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/changepw.c#7 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/context.c#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/convert_creds.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/crypto.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/data.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/get_addrs.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/get_in_tkt.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/init_creds_pw.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/kerberos.8#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/keytab.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/keytab_any.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/keytab_file.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/keytab_keyfile.c#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5-private.h#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5-protos.h#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5-v4compat.h#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5.3#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5.conf.5#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5.h#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_425_conv_principal.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_address.3#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_aname_to_localname.3#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_appdefault.3#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_auth_context.3#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_build_principal.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_ccache.3#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_config.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_context.3#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_create_checksum.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_crypto_init.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_data.3#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_encrypt.3#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_free_addresses.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_free_principal.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_get_all_client_addrs.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_get_krbhst.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_init_context.3#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_keytab.3#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_krbhst_init.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_kuserok.3#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_openlog.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_parse_name.3#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_principal_get_realm.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_set_default_realm.3#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_sname_to_principal.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_timeofday.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_unparse_name.3#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_verify_user.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krb5_warn.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/krbhst.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/kuserok.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/mk_rep.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/name-45-test.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/principal.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/prompter_posix.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/store_emem.c#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/test_alname.c#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/test_cc.c#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/transited.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/verify_krb5_conf.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/krb5/warn.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/ChangeLog#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/Makefile.am#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/Makefile.in#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/getarg.3#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/getcap.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/parse_bytes.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/parse_time.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/parse_units.h#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/resolve.c#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/roken.awk#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/snprintf.c#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/socket.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/strcasecmp.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/strlwr.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/strncasecmp.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/roken/strupr.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/sl/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/vers/ChangeLog#4 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/vers/Makefile.in#5 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/vers/make-print-version.c#2 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/lib/vers/print_version.c#3 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/tools/Makefile.in#6 integrate .. //depot/projects/trustedbsd/mac/crypto/heimdal/tools/build.sh#1 branch .. //depot/projects/trustedbsd/mac/crypto/heimdal/tools/krb5-config.1#2 integrate .. //depot/projects/trustedbsd/mac/crypto/openssh/auth2-pam-freebsd.c#9 integrate .. //depot/projects/trustedbsd/mac/etc/Makefile#33 integrate .. //depot/projects/trustedbsd/mac/etc/bluetooth/hcsecd.conf#1 branch .. //depot/projects/trustedbsd/mac/etc/bluetooth/hosts#1 branch .. //depot/projects/trustedbsd/mac/etc/bluetooth/protocols#1 branch .. //depot/projects/trustedbsd/mac/etc/defaults/pccard.conf#17 integrate .. //depot/projects/trustedbsd/mac/etc/defaults/rc.conf#30 integrate .. //depot/projects/trustedbsd/mac/etc/devd.conf#7 integrate .. //depot/projects/trustedbsd/mac/etc/etc.alpha/ttys#3 integrate .. //depot/projects/trustedbsd/mac/etc/etc.amd64/ttys#2 integrate .. //depot/projects/trustedbsd/mac/etc/etc.i386/ttys#3 integrate .. //depot/projects/trustedbsd/mac/etc/etc.ia64/ttys#4 integrate .. //depot/projects/trustedbsd/mac/etc/etc.sparc64/ttys#6 integrate .. //depot/projects/trustedbsd/mac/etc/mtree/BSD.include.dist#26 integrate .. //depot/projects/trustedbsd/mac/etc/mtree/BSD.usr.dist#27 integrate .. //depot/projects/trustedbsd/mac/etc/netstart#4 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/atm3#2 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/diskless#9 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/initdiskless#10 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/ipfilter#11 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/ipnat#7 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/jail#4 integrate .. //depot/projects/trustedbsd/mac/etc/rc.d/motd#7 integrate .. //depot/projects/trustedbsd/mac/etc/rc.sendmail#3 integrate .. //depot/projects/trustedbsd/mac/etc/remote#4 integrate .. //depot/projects/trustedbsd/mac/etc/sendmail/Makefile#10 integrate .. //depot/projects/trustedbsd/mac/etc/sendmail/freebsd.submit.mc#1 branch .. //depot/projects/trustedbsd/mac/etc/services#10 integrate .. //depot/projects/trustedbsd/mac/games/fortune/datfiles/fortunes#27 integrate .. //depot/projects/trustedbsd/mac/games/fortune/datfiles/fortunes.sp.ok#2 integrate .. //depot/projects/trustedbsd/mac/games/fortune/datfiles/fortunes2#17 integrate .. //depot/projects/trustedbsd/mac/games/fortune/datfiles/limerick#3 integrate .. //depot/projects/trustedbsd/mac/gnu/usr.bin/groff/tmac/mdoc.local#16 integrate .. //depot/projects/trustedbsd/mac/gnu/usr.bin/man/man/man.c#8 integrate .. //depot/projects/trustedbsd/mac/include/netdb.h#5 integrate .. //depot/projects/trustedbsd/mac/kerberos5/include/Makefile#2 integrate .. //depot/projects/trustedbsd/mac/kerberos5/include/config.h#8 integrate .. //depot/projects/trustedbsd/mac/kerberos5/include/krb5-private.h#3 integrate .. //depot/projects/trustedbsd/mac/kerberos5/include/version.h#8 integrate .. //depot/projects/trustedbsd/mac/kerberos5/lib/Makefile#5 integrate .. //depot/projects/trustedbsd/mac/kerberos5/lib/Makefile.inc#5 integrate .. //depot/projects/trustedbsd/mac/kerberos5/lib/libgssapi/Makefile#5 integrate .. //depot/projects/trustedbsd/mac/kerberos5/lib/libhdb/Makefile#10 integrate .. //depot/projects/trustedbsd/mac/kerberos5/lib/libkadm5clnt/Makefile#3 integrate .. //depot/projects/trustedbsd/mac/kerberos5/lib/libkafs5/Makefile#3 branch .. //depot/projects/trustedbsd/mac/kerberos5/lib/libkrb5/Makefile#7 integrate .. //depot/projects/trustedbsd/mac/kerberos5/libexec/kdc/Makefile#8 integrate .. //depot/projects/trustedbsd/mac/kerberos5/usr.bin/Makefile#4 integrate .. //depot/projects/trustedbsd/mac/kerberos5/usr.bin/kdestroy/Makefile#3 integrate .. //depot/projects/trustedbsd/mac/kerberos5/usr.bin/kinit/Makefile#3 integrate .. //depot/projects/trustedbsd/mac/kerberos5/usr.bin/klist/Makefile#3 integrate .. //depot/projects/trustedbsd/mac/kerberos5/usr.bin/krb5-config/Makefile#8 integrate .. //depot/projects/trustedbsd/mac/kerberos5/usr.bin/ksu/Makefile#3 integrate .. //depot/projects/trustedbsd/mac/kerberos5/usr.bin/verify_krb5_conf/Makefile#1 branch .. //depot/projects/trustedbsd/mac/lib/Makefile#24 integrate .. //depot/projects/trustedbsd/mac/lib/csu/common/crtbrand.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libbluetooth/Makefile#1 branch .. //depot/projects/trustedbsd/mac/lib/libbluetooth/bluetooth.3#1 branch .. //depot/projects/trustedbsd/mac/lib/libbluetooth/bluetooth.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libbluetooth/bluetooth.h#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/amd64/gen/Makefile.inc#5 integrate .. //depot/projects/trustedbsd/mac/lib/libc/amd64/gen/rfork_thread.S#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/amd64/sys/Makefile.inc#3 integrate .. //depot/projects/trustedbsd/mac/lib/libc/amd64/sys/amd64_get_fsbase.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/amd64/sys/amd64_get_gsbase.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/amd64/sys/amd64_set_fsbase.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/amd64/sys/amd64_set_gsbase.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/ia64/gen/fpgetmask.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libc/ia64/gen/fpsetmask.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/Makefile.inc#7 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/getaddrinfo.3#5 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/getaddrinfo.c#12 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/getnameinfo.3#4 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/inet6_opt_init.3#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/net/inet6_rth_space.3#1 branch .. //depot/projects/trustedbsd/mac/lib/libc/net/ip6opt.c#5 integrate .. //depot/projects/trustedbsd/mac/lib/libc/net/rthdr.c#5 integrate .. //depot/projects/trustedbsd/mac/lib/libc/stdlib/malloc.c#15 integrate .. //depot/projects/trustedbsd/mac/lib/libc/sys/kill.2#3 integrate .. //depot/projects/trustedbsd/mac/lib/libc/sys/kqueue.2#8 integrate .. //depot/projects/trustedbsd/mac/lib/libc/sys/stat.2#7 integrate .. //depot/projects/trustedbsd/mac/lib/libc/sys/write.2#4 integrate .. //depot/projects/trustedbsd/mac/lib/libdevstat/devstat.c#7 integrate .. //depot/projects/trustedbsd/mac/lib/libfetch/common.c#12 integrate .. //depot/projects/trustedbsd/mac/lib/libipsec/ipsec_dump_policy.c#3 integrate .. //depot/projects/trustedbsd/mac/lib/libipsec/pfkey_dump.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libkiconv/kiconv.3#2 integrate .. //depot/projects/trustedbsd/mac/lib/libkvm/kvm.h#5 integrate .. //depot/projects/trustedbsd/mac/lib/libmd/mdX.3#4 integrate .. //depot/projects/trustedbsd/mac/lib/libmd/ripemd.3#4 integrate .. //depot/projects/trustedbsd/mac/lib/libmd/sha.3#3 integrate .. //depot/projects/trustedbsd/mac/lib/libngatm/Makefile#1 branch .. //depot/projects/trustedbsd/mac/lib/libpam/modules/pam_self/pam_self.8#6 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/arch/alpha/alpha/context.S#2 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/arch/amd64/amd64/context.S#3 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/arch/amd64/include/pthread_md.h#4 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/arch/sparc64/Makefile.inc#1 branch .. //depot/projects/trustedbsd/mac/lib/libpthread/arch/sparc64/include/atomic_ops.h#1 branch .. //depot/projects/trustedbsd/mac/lib/libpthread/arch/sparc64/include/pthread_md.h#1 branch .. //depot/projects/trustedbsd/mac/lib/libpthread/arch/sparc64/sparc64/assym.s#1 branch .. //depot/projects/trustedbsd/mac/lib/libpthread/arch/sparc64/sparc64/pthread_md.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libpthread/arch/sparc64/sparc64/thr_getcontext.S#1 branch .. //depot/projects/trustedbsd/mac/lib/libpthread/man/pthread_attr_get_np.3#3 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/man/pthread_mutex_init.3#2 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/sys/lock.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/test/mutex_d.c#2 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/thread/thr_cancel.c#9 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/thread/thr_kern.c#13 integrate .. //depot/projects/trustedbsd/mac/lib/libpthread/thread/thr_private.h#12 integrate .. //depot/projects/trustedbsd/mac/lib/libsdp/Makefile#1 branch .. //depot/projects/trustedbsd/mac/lib/libsdp/sdp-int.h#1 branch .. //depot/projects/trustedbsd/mac/lib/libsdp/sdp.3#1 branch .. //depot/projects/trustedbsd/mac/lib/libsdp/sdp.h#1 branch .. //depot/projects/trustedbsd/mac/lib/libsdp/search.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libsdp/session.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libsdp/util.c#1 branch .. //depot/projects/trustedbsd/mac/lib/libufs/block.c#7 integrate .. //depot/projects/trustedbsd/mac/lib/libufs/bread.3#2 integrate .. //depot/projects/trustedbsd/mac/lib/libufs/cgread.3#2 integrate .. //depot/projects/trustedbsd/mac/lib/libufs/getino.3#2 integrate .. //depot/projects/trustedbsd/mac/lib/libufs/libufs.3#2 integrate .. //depot/projects/trustedbsd/mac/lib/libufs/sbread.3#2 integrate .. //depot/projects/trustedbsd/mac/lib/libufs/ufs_disk_close.3#2 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/Makefile#7 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/_secure_path.c#3 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/fparseln.c#3 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/libutil.h#4 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/login.c#5 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/login_cap.c#6 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/login_cap.h#6 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/login_class.c#13 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/login_ok.c#3 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/login_tty.c#3 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/logout.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/logwtmp.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/pty.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/pw_util.c#8 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/realhostname.c#4 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/stub.c#2 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/trimdomain.c#2 integrate .. //depot/projects/trustedbsd/mac/lib/libutil/uucplock.c#3 integrate .. //depot/projects/trustedbsd/mac/lib/msun/Makefile#8 integrate .. //depot/projects/trustedbsd/mac/lib/msun/man/fabs.3#2 integrate .. //depot/projects/trustedbsd/mac/lib/msun/src/math.h#12 integrate .. //depot/projects/trustedbsd/mac/lib/msun/src/s_fabsl.c#1 branch .. //depot/projects/trustedbsd/mac/libexec/makekey/makekey.8#3 integrate .. //depot/projects/trustedbsd/mac/release/Makefile#50 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/errata/article.sgml#12 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#40 integrate .. //depot/projects/trustedbsd/mac/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#63 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/early-adopter/article.sgml#5 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/errata/article.sgml#12 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/hardware/amd64/proc-amd64.sgml#2 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#13 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/hardware/i386/proc-i386.sgml#6 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/relnotes/alpha/article.sgml#3 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/relnotes/amd64/article.sgml#2 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/relnotes/common/new.sgml#23 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/relnotes/i386/article.sgml#4 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/relnotes/ia64/article.sgml#2 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/relnotes/pc98/article.sgml#2 integrate .. //depot/projects/trustedbsd/mac/release/doc/ja_JP.eucJP/relnotes/sparc64/article.sgml#4 integrate .. //depot/projects/trustedbsd/mac/release/scripts/print-cdrom-packages.sh#19 integrate .. //depot/projects/trustedbsd/mac/sbin/bsdlabel/bsdlabel.c#6 integrate .. //depot/projects/trustedbsd/mac/sbin/devd/devd.cc#5 integrate .. //depot/projects/trustedbsd/mac/sbin/devd/devd.h#4 integrate .. //depot/projects/trustedbsd/mac/sbin/devd/devd.hh#2 integrate .. //depot/projects/trustedbsd/mac/sbin/devd/parse.y#4 integrate .. //depot/projects/trustedbsd/mac/sbin/devd/token.l#5 integrate .. //depot/projects/trustedbsd/mac/sbin/fdisk/fdisk.8#5 integrate .. //depot/projects/trustedbsd/mac/sbin/fsck_ffs/dir.c#9 integrate .. //depot/projects/trustedbsd/mac/sbin/fsck_ffs/main.c#13 integrate .. //depot/projects/trustedbsd/mac/sbin/gbde/Makefile#8 integrate .. //depot/projects/trustedbsd/mac/sbin/gbde/gbde.c#9 integrate .. //depot/projects/trustedbsd/mac/sbin/gbde/image.uu#1 branch .. //depot/projects/trustedbsd/mac/sbin/gbde/test.sh#2 integrate .. //depot/projects/trustedbsd/mac/sbin/ip6fw/ip6fw.c#7 integrate .. //depot/projects/trustedbsd/mac/sbin/ipfw/ipfw2.c#17 integrate .. //depot/projects/trustedbsd/mac/sbin/mdconfig/mdconfig.8#9 integrate .. //depot/projects/trustedbsd/mac/sbin/mount/mount.8#12 integrate .. //depot/projects/trustedbsd/mac/sbin/mount_msdosfs/Makefile#6 integrate .. //depot/projects/trustedbsd/mac/sbin/mount_msdosfs/mount_msdosfs.8#6 integrate .. //depot/projects/trustedbsd/mac/sbin/mount_msdosfs/mount_msdosfs.c#5 integrate .. //depot/projects/trustedbsd/mac/sbin/mount_std/mount_std.8#6 integrate .. //depot/projects/trustedbsd/mac/sbin/newfs/newfs.8#16 integrate .. //depot/projects/trustedbsd/mac/sbin/ping6/Makefile#4 integrate .. //depot/projects/trustedbsd/mac/sbin/ping6/ping6.8#6 integrate .. //depot/projects/trustedbsd/mac/sbin/ping6/ping6.c#10 integrate .. //depot/projects/trustedbsd/mac/sbin/savecore/savecore.c#9 integrate .. //depot/projects/trustedbsd/mac/sbin/sysctl/sysctl.c#14 integrate .. //depot/projects/trustedbsd/mac/share/colldef/Makefile#15 integrate .. //depot/projects/trustedbsd/mac/share/colldef/sl_SI.ISO8859-2.src#1 branch .. //depot/projects/trustedbsd/mac/share/doc/IPv6/IMPLEMENTATION#3 integrate .. //depot/projects/trustedbsd/mac/share/examples/drivers/make_device_driver.sh#3 integrate .. //depot/projects/trustedbsd/mac/share/examples/scsi_target/scsi_cmds.c#4 integrate .. //depot/projects/trustedbsd/mac/share/examples/scsi_target/scsi_target.8#3 integrate .. //depot/projects/trustedbsd/mac/share/examples/scsi_target/scsi_target.c#5 integrate .. //depot/projects/trustedbsd/mac/share/examples/scsi_target/scsi_target.h#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/Makefile#33 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/bktr.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/dcons.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/dcons_crom.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/ddb.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/hatm.4#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/hifn.4#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/inet.4#7 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/man4.i386/Makefile#7 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/man4.i386/ep.4#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/man4.i386/pae.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/multicast.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/ng_bluetooth.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ng_bt3c.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ng_btsocket.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ng_h4.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ng_hci.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ng_l2cap.4#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/ng_ubt.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/pim.4#1 branch .. //depot/projects/trustedbsd/mac/share/man/man4/ubtbcmfw.4#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/umass.4#10 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/vpo.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man4/xl.4#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man5/Makefile#9 integrate .. //depot/projects/trustedbsd/mac/share/man/man5/bluetooth.hosts.5#1 branch .. //depot/projects/trustedbsd/mac/share/man/man5/bluetooth.protocols.5#1 branch .. //depot/projects/trustedbsd/mac/share/man/man5/remote.5#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man7/release.7#16 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/BUS_CONFIG_INTR.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/BUS_PRINT_CHILD.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/BUS_READ_IVAR.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/BUS_SETUP_INTR.9#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/DELAY.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/DEVICE_DETACH.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/DEVICE_PROBE.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/MD5.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/Makefile#32 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_CHECKEXP.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_FHTOVP.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_INIT.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_MOUNT.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_QUOTACTL.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_ROOT.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_SET.9#7 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_START.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_STATFS.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_SYNC.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_UNMOUNT.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_VGET.9#7 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VFS_VPTOFH.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_ACLCHECK.9#7 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_ADVLOCK.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_CREATE.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_GETACL.9#7 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_GETEXTATTR.9#10 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_GETPAGES.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_INACTIVE.9#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_LEASE.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_LISTEXTATTR.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_OPENCLOSE.9#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_RDWR.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_READDIR.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_RENAME.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/VOP_SETACL.9#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/accept_filter.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/bios.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/boot.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/buf.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/bus_dma.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/bus_generic_attach.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/bus_generic_detach.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/bus_generic_shutdown.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/cd.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/copy.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/devclass.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/devclass_add_driver.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_add_child.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_delete_child.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_enable.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_find_child.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_get_children.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_get_devclass.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_get_driver.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_get_ivars.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_get_name.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_get_parent.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_get_softc.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_get_state.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_get_unit.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_ids.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_probe_and_attach.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_quiet.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_set_desc.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_set_driver.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/device_set_flags.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/devstat.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/devtoname.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/disk.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/driver.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/extattr.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/inittodr.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/make_dev.9#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/panic.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/pmap.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/pmap_is_prefaultable.9#1 branch .. //depot/projects/trustedbsd/mac/share/man/man9/pmap_prefault.9#2 delete .. //depot/projects/trustedbsd/mac/share/man/man9/pmap_resident_count.9#1 branch .. //depot/projects/trustedbsd/mac/share/man/man9/random.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/resettodr.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/rijndael.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/rtalloc.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/rtentry.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/sleep.9#8 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/spl.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/suser.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/time.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vfs_busy.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vfs_getnewfsid.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vfs_getvfs.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vfs_mount.9#6 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vfs_mountedon.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vfs_rootmountalloc.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vfs_timestamp.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vfs_unbusy.9#3 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vget.9#5 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vm_fault_prefault.9#1 branch .. //depot/projects/trustedbsd/mac/share/man/man9/vm_map.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vm_map_max.9#2 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vm_page_alloc.9#4 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vnode.9#9 integrate .. //depot/projects/trustedbsd/mac/share/man/man9/vref.9#4 integrate .. //depot/projects/trustedbsd/mac/share/mk/bsd.libnames.mk#17 integrate .. //depot/projects/trustedbsd/mac/share/mk/sys.mk#11 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/asia#6 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/australasia#6 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/backward#3 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/europe#5 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/leapseconds#4 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/northamerica#5 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/southamerica#6 integrate .. //depot/projects/trustedbsd/mac/share/zoneinfo/zone.tab#8 integrate .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/machdep.c#26 integrate .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/pmap.c#32 integrate .. //depot/projects/trustedbsd/mac/sys/alpha/alpha/trap.c#22 integrate .. //depot/projects/trustedbsd/mac/sys/alpha/include/pmap.h#10 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/amd64_mem.c#3 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/exception.S#5 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/machdep.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/pmap.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/support.S#3 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/trap.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/tsc.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/amd64/uma_machdep.c#1 branch .. //depot/projects/trustedbsd/mac/sys/amd64/include/frame.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/pmap.h#6 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/signal.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/stdarg.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/sysarch.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/amd64/include/ucontext.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/cam/cam_periph.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/cam/scsi/scsi_cd.c#19 integrate .. //depot/projects/trustedbsd/mac/sys/cam/scsi/scsi_da.c#32 integrate .. //depot/projects/trustedbsd/mac/sys/cam/scsi/scsi_target.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/coda/coda_subr.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linprocfs/linprocfs.c#23 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_ioctl.c#23 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_misc.c#29 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_socket.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/compat/linux/linux_uid16.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/compat/svr4/svr4_filio.c#14 integrate .. //depot/projects/trustedbsd/mac/sys/compat/svr4/svr4_misc.c#27 integrate .. //depot/projects/trustedbsd/mac/sys/compat/svr4/svr4_signal.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/compat/svr4/svr4_stream.c#15 integrate .. //depot/projects/trustedbsd/mac/sys/compat/svr4/svr4_sysvec.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/compat/svr4/svr4_util.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/conf/NOTES#47 integrate .. //depot/projects/trustedbsd/mac/sys/conf/files#94 integrate .. //depot/projects/trustedbsd/mac/sys/conf/files.amd64#6 integrate .. //depot/projects/trustedbsd/mac/sys/conf/files.ia64#22 integrate .. //depot/projects/trustedbsd/mac/sys/conf/kmod.mk#20 integrate .. //depot/projects/trustedbsd/mac/sys/conf/majors#24 integrate .. //depot/projects/trustedbsd/mac/sys/conf/options#57 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/dev/acpica/exfldio.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ia64/libuwx/src/Makefile#3 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ia64/libuwx/src/uwx.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ia64/libuwx/src/uwx_context.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ia64/libuwx/src/uwx_env.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ia64/libuwx/src/uwx_self.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ia64/libuwx/src/uwx_step.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ia64/libuwx/src/uwx_step.h#1 branch .. //depot/projects/trustedbsd/mac/sys/contrib/ia64/libuwx/src/uwx_trace.c#3 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ia64/libuwx/src/uwx_trace.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#3 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ipfilter/netinet/ip_fil.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/contrib/ngatm/FREEBSD-upgrade#1 branch .. //depot/projects/trustedbsd/mac/sys/contrib/ngatm/netnatm/misc/unimsg_common.c#1 branch .. //depot/projects/trustedbsd/mac/sys/contrib/ngatm/netnatm/saal/saal_sscfu.c#1 branch .. //depot/projects/trustedbsd/mac/sys/contrib/ngatm/netnatm/saal/saal_sscop.c#1 branch .. //depot/projects/trustedbsd/mac/sys/contrib/ngatm/netnatm/saal/sscfu.h#1 branch .. //depot/projects/trustedbsd/mac/sys/contrib/ngatm/netnatm/saal/sscfudef.h#1 branch .. //depot/projects/trustedbsd/mac/sys/contrib/ngatm/netnatm/saal/sscfupriv.h#1 branch .. //depot/projects/trustedbsd/mac/sys/contrib/ngatm/netnatm/saal/sscop.h#1 branch .. //depot/projects/trustedbsd/mac/sys/contrib/ngatm/netnatm/saal/sscopdef.h#1 branch .. //depot/projects/trustedbsd/mac/sys/contrib/ngatm/netnatm/saal/sscoppriv.h#1 branch .. //depot/projects/trustedbsd/mac/sys/contrib/ngatm/netnatm/unimsg.h#1 branch .. //depot/projects/trustedbsd/mac/sys/crypto/blowfish/bf_ecb.c#1 branch .. //depot/projects/trustedbsd/mac/sys/crypto/blowfish/blowfish.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/crypto/cast128/cast128.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/crypto/cast128/cast128.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/crypto/cast128/cast128_subkey.h#2 delete .. //depot/projects/trustedbsd/mac/sys/crypto/cast128/cast128sb.h#1 branch .. //depot/projects/trustedbsd/mac/sys/crypto/rijndael/Makefile#1 branch .. //depot/projects/trustedbsd/mac/sys/crypto/rijndael/boxes-fst.dat#2 delete .. //depot/projects/trustedbsd/mac/sys/crypto/rijndael/rijndael-alg-fst.c#3 integrate .. //depot/projects/trustedbsd/mac/sys/crypto/rijndael/rijndael-alg-fst.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/crypto/rijndael/rijndael-api-fst.c#6 integrate .. //depot/projects/trustedbsd/mac/sys/crypto/rijndael/rijndael-api-fst.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/crypto/rijndael/rijndael_local.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/crypto/rijndael/test00.c#1 branch .. //depot/projects/trustedbsd/mac/sys/dev/aac/aac.c#23 integrate .. //depot/projects/trustedbsd/mac/sys/dev/aac/aac_disk.c#14 integrate .. //depot/projects/trustedbsd/mac/sys/dev/aac/aacreg.h#10 integrate .. //depot/projects/trustedbsd/mac/sys/dev/acpica/Osd/OsdSchedule.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/dev/acpica/acpi.c#28 integrate .. //depot/projects/trustedbsd/mac/sys/dev/acpica/acpi_acad.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/dev/acpica/acpi_button.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/dev/acpica/acpi_cmbat.c#11 integrate .. //depot/projects/trustedbsd/mac/sys/dev/acpica/acpi_lid.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/dev/acpica/acpi_thermal.c#11 integrate .. //depot/projects/trustedbsd/mac/sys/dev/acpica/acpivar.h#19 integrate .. //depot/projects/trustedbsd/mac/sys/dev/aic7xxx/ahc_pci.c#11 integrate .. //depot/projects/trustedbsd/mac/sys/dev/aic7xxx/ahd_pci.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/dev/amr/amr.c#14 integrate .. //depot/projects/trustedbsd/mac/sys/dev/amr/amr_disk.c#11 integrate .. //depot/projects/trustedbsd/mac/sys/dev/amr/amrvar.h#11 integrate .. //depot/projects/trustedbsd/mac/sys/dev/an/if_an_pccard.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ata/ata-all.c#28 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ata/ata-all.h#13 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ata/ata-card.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ata/ata-chipset.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ata/ata-disk.c#21 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ata/ata-dma.c#23 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ata/ata-pci.c#24 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ata/ata-queue.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ata/atapi-cd.c#22 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ath/if_ath.c#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ath/if_ath_pci.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ath/if_athvar.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/cardbus/cardbus.c#17 integrate .. //depot/projects/trustedbsd/mac/sys/dev/cardbus/cardbus_cis.c#16 integrate .. //depot/projects/trustedbsd/mac/sys/dev/cardbus/cardbus_cis.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ciss/ciss.c#16 integrate .. //depot/projects/trustedbsd/mac/sys/dev/dcons/dcons.c#1 branch .. //depot/projects/trustedbsd/mac/sys/dev/dcons/dcons.h#1 branch .. //depot/projects/trustedbsd/mac/sys/dev/dcons/dcons_crom.c#1 branch .. //depot/projects/trustedbsd/mac/sys/dev/drm/ati_pcigart.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drmP.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_auth.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_bufs.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_context.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_dma.h#6 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_drv.h#13 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_fops.h#6 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_ioctl.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_irq.h#1 branch .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_memory.h#8 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_memory_debug.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_os_freebsd.h#9 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_pci.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_sysctl.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/drm_vm.h#7 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/mga.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/mga_dma.c#6 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/mga_drv.c#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/mga_irq.c#3 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/r128.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/r128_cce.c#6 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/r128_drv.c#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/r128_drv.h#6 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/r128_irq.c#3 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/r128_state.c#6 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/radeon.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/radeon_cp.c#6 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/radeon_drv.c#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/radeon_irq.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/sis.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/sis_drv.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/sis_mm.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/tdfx.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/dev/drm/tdfx_drv.c#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ed/if_ed.c#14 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ed/if_ed_cbus.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ed/if_ed_isa.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ed/if_edreg.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ed/if_edvar.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/dev/em/if_em.c#24 integrate .. //depot/projects/trustedbsd/mac/sys/dev/em/if_em.h#20 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ep/if_ep.c#11 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ep/if_ep_eisa.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ep/if_ep_isa.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ep/if_ep_mca.c#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ep/if_ep_pccard.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ep/if_epreg.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ep/if_epvar.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/exca/exca.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/firewire.c#16 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/firewire.h#9 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/firewirereg.h#11 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/fwcrom.c#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/fwdev.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/fwmem.c#11 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/fwmem.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/fwohci.c#16 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/fwohci_pci.c#14 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/fwohcireg.h#8 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/fwohcivar.h#6 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/if_fwe.c#14 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/sbp.c#16 integrate .. //depot/projects/trustedbsd/mac/sys/dev/firewire/sbp.h#1 branch .. //depot/projects/trustedbsd/mac/sys/dev/firewire/sbp_targ.c#1 branch .. //depot/projects/trustedbsd/mac/sys/dev/hatm/if_hatm.c#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/hifn/hifn7751.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/dev/hifn/hifn7751reg.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/dev/hifn/hifn7751var.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ips/ips_commands.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/isp/isp_freebsd.h#12 integrate .. //depot/projects/trustedbsd/mac/sys/dev/kbd/atkbd.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/dev/matcd/matcd.c#3 integrate .. //depot/projects/trustedbsd/mac/sys/dev/mcd/mcd.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/dev/md/md.c#29 integrate .. //depot/projects/trustedbsd/mac/sys/dev/null/null.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/dev/ofw/ofw_disk.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/dev/owi/if_owi.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/pccard/card_if.m#7 integrate .. //depot/projects/trustedbsd/mac/sys/dev/pccard/pccard.c#21 integrate .. //depot/projects/trustedbsd/mac/sys/dev/pccard/pccard_cis.c#11 integrate .. //depot/projects/trustedbsd/mac/sys/dev/pccard/pccard_cis.h#1 branch .. //depot/projects/trustedbsd/mac/sys/dev/pccard/pccard_cis_quirks.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/pccard/pccarddevs#21 integrate .. //depot/projects/trustedbsd/mac/sys/dev/pccard/pccarddevs.h#21 integrate .. //depot/projects/trustedbsd/mac/sys/dev/pccard/pccardreg.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/pccard/pccardvar.h#10 integrate .. //depot/projects/trustedbsd/mac/sys/dev/pccbb/pccbb.c#27 integrate .. //depot/projects/trustedbsd/mac/sys/dev/pci/pci_pci.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/dev/pci/pci_user.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/dev/puc/pucdata.c#14 integrate .. //depot/projects/trustedbsd/mac/sys/dev/raidframe/rf_freebsdkintf.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/dev/scd/scd.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/dev/sio/sio_pccard.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/dev/sound/pci/au88x0.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/sound/pci/au88x0.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/sound/pcm/ac97.c#14 integrate .. //depot/projects/trustedbsd/mac/sys/dev/streams/streams.c#15 integrate .. //depot/projects/trustedbsd/mac/sys/dev/uart/uart_bus_pccard.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/if_aue.c#18 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/if_auereg.h#6 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/if_cue.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/if_cuereg.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/if_kue.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/if_kuereg.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/if_rue.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/if_ruereg.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/ubsa.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/ufm.c#11 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/ugen.c#17 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/uhid.c#14 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/ukbd.c#11 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/ums.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/usb.c#18 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/usb_mem.c#3 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/usb_port.h#14 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/usbdevs#27 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/usbdevs.h#27 integrate .. //depot/projects/trustedbsd/mac/sys/dev/usb/usbdevs_data.h#27 integrate .. //depot/projects/trustedbsd/mac/sys/dev/vinum/vinumrequest.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/dev/vx/if_vx.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/dev/vx/if_vx_eisa.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/dev/vx/if_vx_pci.c#6 integrate .. //depot/projects/trustedbsd/mac/sys/dev/vx/if_vxreg.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/dev/vx/if_vxvar.h#1 branch .. //depot/projects/trustedbsd/mac/sys/dev/xe/if_xe.c#11 integrate .. //depot/projects/trustedbsd/mac/sys/dev/xe/if_xe_pccard.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/dev/xe/if_xereg.h#2 integrate .. //depot/projects/trustedbsd/mac/sys/dev/xe/if_xevar.h#3 integrate .. //depot/projects/trustedbsd/mac/sys/fs/devfs/devfs_vnops.c#46 integrate .. //depot/projects/trustedbsd/mac/sys/fs/hpfs/hpfs_vnops.c#17 integrate .. //depot/projects/trustedbsd/mac/sys/fs/msdosfs/msdosfs_denode.c#14 integrate .. //depot/projects/trustedbsd/mac/sys/fs/msdosfs/msdosfs_vfsops.c#16 integrate .. //depot/projects/trustedbsd/mac/sys/fs/msdosfs/msdosfs_vnops.c#17 integrate .. //depot/projects/trustedbsd/mac/sys/fs/ntfs/ntfs_vnops.c#14 integrate .. //depot/projects/trustedbsd/mac/sys/fs/nwfs/nwfs_io.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/fs/nwfs/nwfs_node.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/fs/nwfs/nwfs_vnops.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/fs/procfs/procfs_dbregs.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/fs/procfs/procfs_fpregs.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/fs/procfs/procfs_map.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/fs/procfs/procfs_regs.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/fs/pseudofs/pseudofs_vncache.c#16 integrate .. //depot/projects/trustedbsd/mac/sys/fs/pseudofs/pseudofs_vnops.c#28 integrate .. //depot/projects/trustedbsd/mac/sys/fs/smbfs/smbfs_io.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/fs/smbfs/smbfs_node.c#13 integrate .. //depot/projects/trustedbsd/mac/sys/fs/smbfs/smbfs_vnops.c#17 integrate .. //depot/projects/trustedbsd/mac/sys/fs/specfs/spec_vnops.c#24 integrate .. //depot/projects/trustedbsd/mac/sys/fs/udf/udf_vnops.c#18 integrate .. //depot/projects/trustedbsd/mac/sys/geom/bde/g_bde.h#5 integrate .. //depot/projects/trustedbsd/mac/sys/geom/bde/g_bde_lock.c#10 integrate .. //depot/projects/trustedbsd/mac/sys/geom/geom.h#27 integrate .. //depot/projects/trustedbsd/mac/sys/geom/geom_ccd.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/geom/geom_dev.c#29 integrate .. //depot/projects/trustedbsd/mac/sys/geom/geom_disk.c#27 integrate .. //depot/projects/trustedbsd/mac/sys/geom/geom_event.c#12 integrate .. //depot/projects/trustedbsd/mac/sys/geom/geom_fox.c#2 integrate .. //depot/projects/trustedbsd/mac/sys/geom/geom_io.c#16 integrate .. //depot/projects/trustedbsd/mac/sys/geom/geom_subr.c#22 integrate .. //depot/projects/trustedbsd/mac/sys/gnu/ext2fs/ext2_bmap.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/gnu/ext2fs/ext2_inode.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/gnu/ext2fs/ext2_vfsops.c#17 integrate .. //depot/projects/trustedbsd/mac/sys/gnu/ext2fs/ext2_vnops.c#16 integrate .. //depot/projects/trustedbsd/mac/sys/i386/conf/NOTES#41 integrate .. //depot/projects/trustedbsd/mac/sys/i386/i386/i686_mem.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/i386/i386/locore.s#15 integrate .. //depot/projects/trustedbsd/mac/sys/i386/i386/machdep.c#36 integrate .. //depot/projects/trustedbsd/mac/sys/i386/i386/mp_clock.c#8 integrate .. //depot/projects/trustedbsd/mac/sys/i386/i386/mp_machdep.c#25 integrate .. //depot/projects/trustedbsd/mac/sys/i386/i386/pmap.c#37 integrate .. //depot/projects/trustedbsd/mac/sys/i386/i386/trap.c#27 integrate .. //depot/projects/trustedbsd/mac/sys/i386/i386/tsc.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/i386/i386/vm_machdep.c#26 integrate .. //depot/projects/trustedbsd/mac/sys/i386/ibcs2/ibcs2_misc.c#14 integrate .. //depot/projects/trustedbsd/mac/sys/i386/ibcs2/ibcs2_signal.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/i386/ibcs2/ibcs2_socksys.c#6 integrate .. //depot/projects/trustedbsd/mac/sys/i386/ibcs2/ibcs2_util.c#5 integrate .. //depot/projects/trustedbsd/mac/sys/i386/ibcs2/ibcs2_util.h#4 integrate .. //depot/projects/trustedbsd/mac/sys/i386/ibcs2/imgact_coff.c#17 integrate .. //depot/projects/trustedbsd/mac/sys/i386/include/pmap.h#13 integrate .. //depot/projects/trustedbsd/mac/sys/i386/isa/apic_vector.s#12 integrate .. //depot/projects/trustedbsd/mac/sys/i386/isa/isa_compat.c#4 integrate .. //depot/projects/trustedbsd/mac/sys/i386/pci/pci_cfgreg.c#17 integrate .. //depot/projects/trustedbsd/mac/sys/ia64/disasm/disasm.h#1 branch .. //depot/projects/trustedbsd/mac/sys/ia64/disasm/disasm_decode.c#1 branch .. //depot/projects/trustedbsd/mac/sys/ia64/disasm/disasm_extract.c#1 branch .. //depot/projects/trustedbsd/mac/sys/ia64/disasm/disasm_format.c#1 branch .. //depot/projects/trustedbsd/mac/sys/ia64/disasm/disasm_int.h#1 branch .. //depot/projects/trustedbsd/mac/sys/ia64/ia64/db_disasm.c#3 delete .. //depot/projects/trustedbsd/mac/sys/ia64/ia64/db_interface.c#7 integrate .. //depot/projects/trustedbsd/mac/sys/ia64/ia64/db_trace.c#9 integrate .. //depot/projects/trustedbsd/mac/sys/ia64/ia64/machdep.c#36 integrate .. //depot/projects/trustedbsd/mac/sys/ia64/ia64/pmap.c#33 integrate .. //depot/projects/trustedbsd/mac/sys/ia64/ia64/support.S#3 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<< From owner-p4-projects@FreeBSD.ORG Sat Oct 25 11:08:09 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 34B3E16A4C0; Sat, 25 Oct 2003 11:08:09 -0700 (PDT) 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 03B7B16A4B3 for ; Sat, 25 Oct 2003 11:08:09 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 7755043F75 for ; Sat, 25 Oct 2003 11:08:08 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9PI88XJ039798 for ; Sat, 25 Oct 2003 11:08:08 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9PI871u039795 for perforce@freebsd.org; Sat, 25 Oct 2003 11:08:07 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 25 Oct 2003 11:08:07 -0700 (PDT) Message-Id: <200310251808.h9PI871u039795@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 Subject: PERFORCE change 40492 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 25 Oct 2003 18:08:09 -0000 http://perforce.freebsd.org/chv.cgi?CH=40492 Change 40492 by rwatson@rwatson_paprika on 2003/10/25 11:07:40 Given that our diffs are almost as large as the file, assert a NETA copyright on uipc_sem.c (same license as original). Affected files ... .. //depot/projects/trustedbsd/mac/sys/kern/uipc_sem.c#13 edit Differences ... ==== //depot/projects/trustedbsd/mac/sys/kern/uipc_sem.c#13 (text+ko) ==== @@ -1,7 +1,13 @@ /* * Copyright (c) 2002 Alfred Perlstein + * Copyright (c) 2001, 2002, 2003 Networks Associates Technology, Inc. * All rights reserved. * + * This software was developed for the FreeBSD Project in part by Network + * Associates Laboratories, the Security Research Division of Network + * Associates, Inc. under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), + * as part of the DARPA CHATS research program. + * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: From owner-p4-projects@FreeBSD.ORG Sat Oct 25 11:32:18 2003 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 0F50316A4C1; Sat, 25 Oct 2003 11:32:18 -0700 (PDT) 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 D7E2816A4BF for ; Sat, 25 Oct 2003 11:32:17 -0700 (PDT) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 1ECB543F3F for ; Sat, 25 Oct 2003 11:32:14 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.12.9/8.12.9) with ESMTP id h9PIWDXJ054426 for ; Sat, 25 Oct 2003 11:32:13 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.12.9/8.12.9/Submit) id h9PIW0sk054423 for perforce@freebsd.org; Sat, 25 Oct 2003 11:32:00 -0700 (PDT) (envelope-from bb+lists.freebsd.perforce@cyrus.watson.org) Date: Sat, 25 Oct 2003 11:32:00 -0700 (PDT) Message-Id: <200310251832.h9PIW0sk054423@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 Subject: PERFORCE change 40493 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 25 Oct 2003 18:32:18 -0000 http://perforce.freebsd.org/chv.cgi?CH=40493 Change 40493 by rwatson@rwatson_tislabs on 2003/10/25 11:31:37 Slide trustedbsd_sebsd forward on the FreeBSD 5.x-CURRENT HEAD through October 25, 2003. Numerous changes, including: - Additional Netgraph/ATM support - Heimdal upgrade - Bluetooth code drop - IPv6 "Advanced Sockets API" upgrade - Many threading improvements - devd ACPI support - Many documentation changes/fixes/additions - ia64 stack trace support - Many compat layer bugfixes - Rijndael (AES) support for IPsec - Many ATA fixes - Dcons (firewire console) - DRM/DRI upgrade, locking fixes - Loop back of kern_mac.c breakup - NFS/snapshot deadlock fix - Additional network stack locking, including parts of IPv6, routing improvements, locking for dummynet, et al. - And much more... Affected files ... .. //depot/projects/trustedbsd/sebsd/Makefile#5 integrate .. //depot/projects/trustedbsd/sebsd/Makefile.inc1#5 integrate .. //depot/projects/trustedbsd/sebsd/UPDATING#5 integrate .. //depot/projects/trustedbsd/sebsd/bin/date/date.c#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/echo/echo.c#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/ls/print.c#4 integrate .. //depot/projects/trustedbsd/sebsd/bin/rcp/rcp.c#4 integrate .. //depot/projects/trustedbsd/sebsd/contrib/ngatm/FREEBSD-upgrade#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/ngatm/libngatm/sscfucust.h#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/ngatm/libngatm/sscopcust.h#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/ngatm/libngatm/unimsg.c#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/ngatm/man/unimsg.3#1 branch .. //depot/projects/trustedbsd/sebsd/contrib/sendmail/FREEBSD-upgrade#5 integrate .. //depot/projects/trustedbsd/sebsd/contrib/telnet/telnet/commands.c#3 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/ChangeLog.2002#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/FREEBSD-Xlist#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/NEWS#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/aclocal.m4#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/admin/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/admin/change.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/admin/copy.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/admin/get.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/admin/ktutil.8#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/afsutil/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/afsutil/Makefile.am#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/afsutil/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/afsutil/afslog.1#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/afsutil/afslog.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/common/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ftp/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ftp/ftp.1#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ftp/ftp.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ftp/gssapi.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ftp/main.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ftpd/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ftpd/ftpd.8#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ftpd/ftpd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ftpd/ftpd_locl.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ftpd/gss_userok.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ftpd/ls.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/ftp/ftpd/pathnames.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/kf/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/kf/kf.1#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/kf/kfd.8#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/kf/kfd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/login/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/login/Makefile.am#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/login/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/login/login.1#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/login/login.access.5#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/login/login.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/push/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/push/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/push/pfrom.1#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/push/push.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/rcp/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/rcp/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/rcp/rcp.1#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/rcp/rcp.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/rsh/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/rsh/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/rsh/rsh.1#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/rsh/rsh.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/rsh/rsh_locl.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/rsh/rshd.8#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/rsh/rshd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/su/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/su/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/su/su.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/telnet/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/telnet/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/telnet/libtelnet/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/telnet/libtelnet/kerberos5.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/telnet/telnet/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/telnet/telnetd/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/appl/test/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/cf/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/cf/Makefile.am.common#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/cf/check-compile-et.m4#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/cf/check-var.m4#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/cf/crypto.m4#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/cf/make-proto.pl#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/cf/roken-frag.m4#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/cf/sunos.m4#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/configure#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/configure.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/doc/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/doc/ack.texi#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/doc/intro.texi#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/doc/misc.texi#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/doc/programming.texi#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/doc/setup.texi#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/include/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/include/kadm5/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/include/make_crypto.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/ank.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/init.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/kadm_conn.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/kadmin.8#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/kadmin.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/kadmind.8#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/kadmind.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/mod.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/server.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/util.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kadmin/version4.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/524.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/Makefile.am#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/config.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/connect.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/hprop.8#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/hpropd.8#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/hpropd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/kaserver.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/kdc.8#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/kdc_locl.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/kerberos4.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/kerberos5.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/string2key.8#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/string2key.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kdc/v4_dump.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kpasswd/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kpasswd/kpasswd.1#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kpasswd/kpasswdd.8#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kpasswd/kpasswdd.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kuser/Makefile.am#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kuser/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kuser/kdestroy.1#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kuser/kdestroy.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kuser/kgetcred.1#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kuser/kinit.1#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kuser/kinit.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kuser/klist.1#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/kuser/klist.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/45/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/asn1/Makefile.am#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/asn1/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/asn1/check-common.c#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/asn1/check-common.h#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/asn1/check-der.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/asn1/check-gen.c#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/asn1/der_copy.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/asn1/der_put.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/asn1/gen.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/asn1/k5.asn1#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/auth/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/auth/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/auth/afskauthlib/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/auth/pam/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/auth/sia/Makefile.am#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/auth/sia/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/com_err/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/8003.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/Makefile.am#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/accept_sec_context.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/acquire_cred.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/add_cred.c#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/add_oid_set_member.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/compare_name.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/compat.c#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/context_time.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/copy_ccache.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/create_emtpy_oid_set.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/delete_sec_context.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/display_name.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/display_status.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/duplicate_name.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/export_name.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/export_sec_context.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/get_mic.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/gss_acquire_cred.3#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/gssapi.3#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/gssapi.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/gssapi_locl.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/import_name.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/import_sec_context.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/indicate_mechs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/init_sec_context.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/inquire_context.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/inquire_cred.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/inquire_cred_by_mech.c#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/inquire_mechs_for_name.c#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/inquire_names_for_mech.c#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/process_context_token.c#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/release_buffer.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/release_cred.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/release_name.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/release_oid_set.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/test_acquire_cred.c#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/test_oid_set_member.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/unwrap.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/verify_mic.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/gssapi/wrap.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/hdb/Makefile.am#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/hdb/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/hdb/common.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/hdb/mkey.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kadm5/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kadm5/Makefile.am#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kadm5/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kadm5/dump_log.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kadm5/init_c.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kadm5/ipropd_master.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kadm5/ipropd_slave.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kadm5/log.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kadm5/send_recv.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kafs/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kafs/Makefile.am#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kafs/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kafs/afskrb.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kafs/afskrb5.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kafs/afssys.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kafs/afssysdefs.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kafs/common.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kafs/dlfcn.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kafs/kafs.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kafs/kafs.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/kafs/kafs_locl.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/Makefile.am#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/addr_families.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/aes-test.c#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/aname_to_localname.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/cache.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/changepw.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/context.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/convert_creds.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/crypto.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/data.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/get_addrs.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/get_in_tkt.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/init_creds_pw.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/kerberos.8#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/keytab.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/keytab_any.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/keytab_file.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/keytab_keyfile.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5-private.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5-protos.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5-v4compat.h#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5.conf.5#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_425_conv_principal.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_address.3#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_aname_to_localname.3#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_appdefault.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_auth_context.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_build_principal.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_ccache.3#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_config.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_context.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_create_checksum.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_crypto_init.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_data.3#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_encrypt.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_free_addresses.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_free_principal.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_get_all_client_addrs.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_get_krbhst.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_init_context.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_keytab.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_krbhst_init.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_kuserok.3#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_openlog.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_parse_name.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_principal_get_realm.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_set_default_realm.3#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_sname_to_principal.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_timeofday.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_unparse_name.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_verify_user.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krb5_warn.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/krbhst.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/kuserok.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/mk_rep.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/name-45-test.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/principal.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/prompter_posix.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/store_emem.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/test_alname.c#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/test_cc.c#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/transited.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/verify_krb5_conf.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/krb5/warn.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/Makefile.am#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/getarg.3#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/getcap.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/parse_bytes.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/parse_time.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/parse_units.h#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/resolve.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/roken.awk#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/snprintf.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/socket.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/strcasecmp.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/strlwr.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/strncasecmp.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/roken/strupr.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/sl/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/vers/ChangeLog#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/vers/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/vers/make-print-version.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/lib/vers/print_version.c#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/tools/Makefile.in#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/tools/build.sh#1 branch .. //depot/projects/trustedbsd/sebsd/crypto/heimdal/tools/krb5-config.1#2 integrate .. //depot/projects/trustedbsd/sebsd/crypto/openssh/auth2-pam-freebsd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/etc/Makefile#6 integrate .. //depot/projects/trustedbsd/sebsd/etc/bluetooth/hcsecd.conf#1 branch .. //depot/projects/trustedbsd/sebsd/etc/bluetooth/hosts#1 branch .. //depot/projects/trustedbsd/sebsd/etc/bluetooth/protocols#1 branch .. //depot/projects/trustedbsd/sebsd/etc/defaults/pccard.conf#5 integrate .. //depot/projects/trustedbsd/sebsd/etc/defaults/rc.conf#5 integrate .. //depot/projects/trustedbsd/sebsd/etc/devd.conf#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/etc.alpha/ttys#2 integrate .. //depot/projects/trustedbsd/sebsd/etc/etc.amd64/ttys#3 integrate .. //depot/projects/trustedbsd/sebsd/etc/etc.i386/ttys#2 integrate .. //depot/projects/trustedbsd/sebsd/etc/etc.ia64/ttys#3 integrate .. //depot/projects/trustedbsd/sebsd/etc/etc.sparc64/ttys#5 integrate .. //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.include.dist#5 integrate .. //depot/projects/trustedbsd/sebsd/etc/mtree/BSD.usr.dist#5 integrate .. //depot/projects/trustedbsd/sebsd/etc/netstart#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/atm3#3 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/diskless#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/initdiskless#5 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/ipfilter#5 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/ipnat#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/jail#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.d/motd#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/rc.sendmail#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/remote#4 integrate .. //depot/projects/trustedbsd/sebsd/etc/sendmail/Makefile#5 integrate .. //depot/projects/trustedbsd/sebsd/etc/sendmail/freebsd.submit.mc#1 branch .. //depot/projects/trustedbsd/sebsd/etc/services#5 integrate .. //depot/projects/trustedbsd/sebsd/games/fortune/datfiles/fortunes#4 integrate .. //depot/projects/trustedbsd/sebsd/games/fortune/datfiles/fortunes.sp.ok#2 integrate .. //depot/projects/trustedbsd/sebsd/games/fortune/datfiles/fortunes2#5 integrate .. //depot/projects/trustedbsd/sebsd/games/fortune/datfiles/limerick#2 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/groff/tmac/mdoc.local#5 integrate .. //depot/projects/trustedbsd/sebsd/gnu/usr.bin/man/man/man.c#2 integrate .. //depot/projects/trustedbsd/sebsd/include/netdb.h#2 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/include/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/include/config.h#4 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/include/krb5-private.h#2 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/include/version.h#4 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/lib/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/lib/Makefile.inc#2 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/lib/libgssapi/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/lib/libhdb/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/lib/libkadm5clnt/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/lib/libkafs5/Makefile#3 branch .. //depot/projects/trustedbsd/sebsd/kerberos5/lib/libkrb5/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/libexec/kdc/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/usr.bin/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/usr.bin/kdestroy/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/usr.bin/kinit/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/usr.bin/klist/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/usr.bin/krb5-config/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/usr.bin/ksu/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/kerberos5/usr.bin/verify_krb5_conf/Makefile#1 branch .. //depot/projects/trustedbsd/sebsd/lib/Makefile#6 integrate .. //depot/projects/trustedbsd/sebsd/lib/csu/common/crtbrand.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libbluetooth/Makefile#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libbluetooth/bluetooth.3#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libbluetooth/bluetooth.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libbluetooth/bluetooth.h#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/amd64/gen/Makefile.inc#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/amd64/gen/rfork_thread.S#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/amd64/sys/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/amd64/sys/amd64_get_fsbase.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/amd64/sys/amd64_get_gsbase.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/amd64/sys/amd64_set_fsbase.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/amd64/sys/amd64_set_gsbase.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/ia64/gen/fpgetmask.c#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/ia64/gen/fpsetmask.c#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/Makefile.inc#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/getaddrinfo.3#5 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/getaddrinfo.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/getnameinfo.3#5 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/inet6_opt_init.3#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/net/inet6_rth_space.3#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libc/net/ip6opt.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/net/rthdr.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/stdlib/malloc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/kill.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/kqueue.2#5 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/stat.2#5 integrate .. //depot/projects/trustedbsd/sebsd/lib/libc/sys/write.2#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libdevstat/devstat.c#5 integrate .. //depot/projects/trustedbsd/sebsd/lib/libfetch/common.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libipsec/ipsec_dump_policy.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libipsec/pfkey_dump.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libkiconv/kiconv.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libkvm/kvm.h#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libmd/mdX.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libmd/ripemd.3#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libmd/sha.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libngatm/Makefile#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpam/modules/pam_self/pam_self.8#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/alpha/alpha/context.S#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/amd64/amd64/context.S#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/amd64/include/pthread_md.h#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/sparc64/Makefile.inc#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/sparc64/include/atomic_ops.h#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/sparc64/include/pthread_md.h#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/sparc64/sparc64/assym.s#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/sparc64/sparc64/pthread_md.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/arch/sparc64/sparc64/thr_getcontext.S#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libpthread/man/pthread_attr_get_np.3#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/man/pthread_mutex_init.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/sys/lock.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/test/mutex_d.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_cancel.c#5 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_kern.c#5 integrate .. //depot/projects/trustedbsd/sebsd/lib/libpthread/thread/thr_private.h#5 integrate .. //depot/projects/trustedbsd/sebsd/lib/libsdp/Makefile#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libsdp/sdp-int.h#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libsdp/sdp.3#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libsdp/sdp.h#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libsdp/search.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libsdp/session.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libsdp/util.c#1 branch .. //depot/projects/trustedbsd/sebsd/lib/libufs/block.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libufs/bread.3#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libufs/cgread.3#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libufs/getino.3#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libufs/libufs.3#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libufs/sbread.3#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libufs/ufs_disk_close.3#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/_secure_path.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/fparseln.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/libutil.h#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/login.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/login_cap.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/login_cap.h#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/login_class.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/login_ok.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/login_tty.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/logout.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/logwtmp.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/pty.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/pw_util.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/realhostname.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/stub.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/trimdomain.c#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/libutil/uucplock.c#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/msun/Makefile#5 integrate .. //depot/projects/trustedbsd/sebsd/lib/msun/man/fabs.3#2 integrate .. //depot/projects/trustedbsd/sebsd/lib/msun/src/math.h#4 integrate .. //depot/projects/trustedbsd/sebsd/lib/msun/src/s_fabsl.c#1 branch .. //depot/projects/trustedbsd/sebsd/libexec/makekey/makekey.8#2 integrate .. //depot/projects/trustedbsd/sebsd/release/Makefile#7 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/errata/article.sgml#5 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/hardware/common/dev.sgml#5 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/en_US.ISO8859-1/relnotes/common/new.sgml#5 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/ja_JP.eucJP/early-adopter/article.sgml#4 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/ja_JP.eucJP/errata/article.sgml#4 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/ja_JP.eucJP/hardware/amd64/proc-amd64.sgml#3 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/ja_JP.eucJP/hardware/common/dev.sgml#4 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/ja_JP.eucJP/hardware/i386/proc-i386.sgml#4 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/ja_JP.eucJP/relnotes/alpha/article.sgml#2 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/ja_JP.eucJP/relnotes/amd64/article.sgml#3 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/ja_JP.eucJP/relnotes/common/new.sgml#4 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/ja_JP.eucJP/relnotes/i386/article.sgml#4 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/ja_JP.eucJP/relnotes/ia64/article.sgml#3 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/ja_JP.eucJP/relnotes/pc98/article.sgml#2 integrate .. //depot/projects/trustedbsd/sebsd/release/doc/ja_JP.eucJP/relnotes/sparc64/article.sgml#2 integrate .. //depot/projects/trustedbsd/sebsd/release/scripts/print-cdrom-packages.sh#5 integrate .. //depot/projects/trustedbsd/sebsd/sbin/bsdlabel/bsdlabel.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/devd/devd.cc#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/devd/devd.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/devd/devd.hh#3 integrate .. //depot/projects/trustedbsd/sebsd/sbin/devd/parse.y#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/devd/token.l#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/fdisk/fdisk.8#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/fsck_ffs/dir.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/fsck_ffs/main.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sbin/gbde/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/gbde/gbde.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/gbde/image.uu#1 branch .. //depot/projects/trustedbsd/sebsd/sbin/gbde/test.sh#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ip6fw/ip6fw.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ipfw/ipfw2.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mdconfig/mdconfig.8#5 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount/mount.8#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_msdosfs/Makefile#3 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_msdosfs/mount_msdosfs.8#3 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_msdosfs/mount_msdosfs.c#3 integrate .. //depot/projects/trustedbsd/sebsd/sbin/mount_std/mount_std.8#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/newfs/newfs.8#6 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ping6/Makefile#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ping6/ping6.8#2 integrate .. //depot/projects/trustedbsd/sebsd/sbin/ping6/ping6.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sbin/savecore/savecore.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sbin/sysctl/sysctl.c#4 integrate .. //depot/projects/trustedbsd/sebsd/share/colldef/Makefile#5 integrate .. //depot/projects/trustedbsd/sebsd/share/colldef/sl_SI.ISO8859-2.src#1 branch .. //depot/projects/trustedbsd/sebsd/share/doc/IPv6/IMPLEMENTATION#4 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/drivers/make_device_driver.sh#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/scsi_target/scsi_cmds.c#5 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/scsi_target/scsi_target.8#2 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/scsi_target/scsi_target.c#5 integrate .. //depot/projects/trustedbsd/sebsd/share/examples/scsi_target/scsi_target.h#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/Makefile#5 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/bktr.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/dcons.4#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man4/dcons_crom.4#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man4/ddb.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/hatm.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/hifn.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/inet.4#5 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/man4.i386/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/man4.i386/ep.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/man4.i386/pae.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/multicast.4#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man4/ng_bluetooth.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ng_bt3c.4#5 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ng_btsocket.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ng_h4.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ng_hci.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ng_l2cap.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/ng_ubt.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/pim.4#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man4/ubtbcmfw.4#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/umass.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/vpo.4#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man4/xl.4#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/Makefile#5 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man5/bluetooth.hosts.5#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man5/bluetooth.protocols.5#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man5/remote.5#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man7/release.7#5 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/BUS_CONFIG_INTR.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/BUS_PRINT_CHILD.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/BUS_READ_IVAR.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/BUS_SETUP_INTR.9#5 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/DELAY.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/DEVICE_DETACH.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/DEVICE_PROBE.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/MD5.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/Makefile#5 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_CHECKEXP.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_FHTOVP.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_INIT.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_MOUNT.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_QUOTACTL.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_ROOT.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_SET.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_START.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_STATFS.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_SYNC.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_UNMOUNT.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_VGET.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VFS_VPTOFH.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_ACLCHECK.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_ADVLOCK.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_CREATE.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_GETACL.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_GETEXTATTR.9#5 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_GETPAGES.9#5 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_INACTIVE.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_LEASE.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_LISTEXTATTR.9#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_OPENCLOSE.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_RDWR.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_READDIR.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_RENAME.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/VOP_SETACL.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/accept_filter.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/bios.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/boot.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/buf.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/bus_dma.9#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/bus_generic_attach.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/bus_generic_detach.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/bus_generic_shutdown.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/cd.9#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/copy.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/devclass.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/devclass_add_driver.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_add_child.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_delete_child.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_enable.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_find_child.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_get_children.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_get_devclass.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_get_driver.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_get_ivars.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_get_name.9#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_get_parent.9#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_get_softc.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_get_state.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_get_unit.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_ids.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_probe_and_attach.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_quiet.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_set_desc.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_set_driver.9#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/device_set_flags.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/devstat.9#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/devtoname.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/disk.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/driver.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/extattr.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/inittodr.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/make_dev.9#5 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/panic.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_is_prefaultable.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_prefault.9#2 delete .. //depot/projects/trustedbsd/sebsd/share/man/man9/pmap_resident_count.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/random.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/resettodr.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/rijndael.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/rtalloc.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/rtentry.9#3 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/sleep.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/spl.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/suser.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/time.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vfs_busy.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vfs_getnewfsid.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vfs_getvfs.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vfs_mount.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vfs_mountedon.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vfs_rootmountalloc.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vfs_timestamp.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vfs_unbusy.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vget.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_fault_prefault.9#1 branch .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_map_max.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vm_page_alloc.9#2 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vnode.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/man/man9/vref.9#4 integrate .. //depot/projects/trustedbsd/sebsd/share/mk/bsd.libnames.mk#6 integrate .. //depot/projects/trustedbsd/sebsd/share/mk/sys.mk#5 integrate .. //depot/projects/trustedbsd/sebsd/share/zoneinfo/asia#4 integrate .. //depot/projects/trustedbsd/sebsd/share/zoneinfo/australasia#4 integrate .. //depot/projects/trustedbsd/sebsd/share/zoneinfo/backward#2 integrate .. //depot/projects/trustedbsd/sebsd/share/zoneinfo/europe#4 integrate .. //depot/projects/trustedbsd/sebsd/share/zoneinfo/leapseconds#2 integrate .. //depot/projects/trustedbsd/sebsd/share/zoneinfo/northamerica#4 integrate .. //depot/projects/trustedbsd/sebsd/share/zoneinfo/southamerica#4 integrate .. //depot/projects/trustedbsd/sebsd/share/zoneinfo/zone.tab#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/machdep.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/pmap.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/alpha/trap.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/alpha/include/pmap.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/amd64_mem.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/exception.S#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/machdep.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/pmap.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/support.S#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/trap.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/tsc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/amd64/uma_machdep.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/frame.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/pmap.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/signal.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/stdarg.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/sysarch.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/amd64/include/ucontext.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/cam/cam_periph.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/cam/scsi/scsi_cd.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/cam/scsi/scsi_da.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/cam/scsi/scsi_target.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/coda/coda_subr.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/linprocfs/linprocfs.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/linux/linux_ioctl.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/linux/linux_misc.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/linux/linux_socket.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/linux/linux_uid16.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/svr4/svr4_filio.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/svr4/svr4_misc.c#7 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/svr4/svr4_signal.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/svr4/svr4_stream.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/svr4/svr4_sysvec.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/compat/svr4/svr4_util.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/NOTES#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/files#8 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/files.amd64#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/files.ia64#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/kmod.mk#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/majors#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/conf/options#7 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/dev/acpica/exfldio.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ia64/libuwx/src/Makefile#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ia64/libuwx/src/uwx.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ia64/libuwx/src/uwx_context.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ia64/libuwx/src/uwx_env.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ia64/libuwx/src/uwx_scoreboard.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ia64/libuwx/src/uwx_self.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ia64/libuwx/src/uwx_step.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ia64/libuwx/src/uwx_step.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/ia64/libuwx/src/uwx_trace.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ia64/libuwx/src/uwx_trace.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ia64/libuwx/src/uwx_ttrace.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ia64/libuwx/src/uwx_uinfo.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ipfilter/netinet/ip_fil.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/contrib/ngatm/FREEBSD-upgrade#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/ngatm/netnatm/misc/unimsg_common.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/ngatm/netnatm/saal/saal_sscfu.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/ngatm/netnatm/saal/saal_sscop.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/ngatm/netnatm/saal/sscfu.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/ngatm/netnatm/saal/sscfudef.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/ngatm/netnatm/saal/sscfupriv.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/ngatm/netnatm/saal/sscop.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/ngatm/netnatm/saal/sscopdef.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/ngatm/netnatm/saal/sscoppriv.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/contrib/ngatm/netnatm/unimsg.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/crypto/blowfish/bf_ecb.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/crypto/blowfish/blowfish.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/crypto/cast128/cast128.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/crypto/cast128/cast128.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/crypto/cast128/cast128_subkey.h#3 delete .. //depot/projects/trustedbsd/sebsd/sys/crypto/cast128/cast128sb.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/crypto/rijndael/Makefile#1 branch .. //depot/projects/trustedbsd/sebsd/sys/crypto/rijndael/boxes-fst.dat#3 delete .. //depot/projects/trustedbsd/sebsd/sys/crypto/rijndael/rijndael-alg-fst.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/crypto/rijndael/rijndael-alg-fst.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/crypto/rijndael/rijndael-api-fst.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/crypto/rijndael/rijndael-api-fst.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/crypto/rijndael/rijndael_local.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/crypto/rijndael/test00.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/aac/aac.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aac/aac_disk.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aac/aacreg.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/Osd/OsdSchedule.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_acad.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_button.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_cmbat.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_lid.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpi_thermal.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/acpica/acpivar.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/ahc_pci.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/aic7xxx/ahd_pci.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/amr/amr.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/amr/amr_disk.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/amr/amrvar.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/an/if_an_pccard.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-all.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-all.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-card.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-chipset.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-disk.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-dma.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-lowlevel.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-pci.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/ata-queue.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ata/atapi-cd.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ath/if_ath.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ath/if_ath_pci.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ath/if_athvar.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/cardbus/cardbus.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/cardbus/cardbus_cis.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/cardbus/cardbus_cis.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ciss/ciss.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/dcons/dcons.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/dcons/dcons.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/dcons/dcons_crom.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/ati_pcigart.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drmP.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_auth.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_bufs.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_context.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_dma.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_drv.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_fops.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_ioctl.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_irq.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_memory.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_memory_debug.h#2 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_os_freebsd.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_pci.h#2 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_sysctl.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/drm_vm.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/mga.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/mga_dma.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/mga_drv.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/mga_irq.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128_cce.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128_drv.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128_drv.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128_irq.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/r128_state.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/radeon.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/radeon_cp.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/radeon_drv.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/radeon_irq.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/sis.h#2 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/sis_drv.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/sis_mm.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/tdfx.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/drm/tdfx_drv.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ed/if_ed.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ed/if_ed_cbus.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ed/if_ed_isa.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ed/if_edreg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ed/if_edvar.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/em/if_em.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/em/if_em.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ep/if_ep.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ep/if_ep_eisa.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ep/if_ep_isa.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ep/if_ep_mca.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ep/if_ep_pccard.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ep/if_epreg.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ep/if_epvar.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/exca/exca.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/firewire.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/firewire.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/firewirereg.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwcrom.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwdev.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwmem.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwmem.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwohci.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwohci_pci.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwohcireg.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/fwohcivar.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/if_fwe.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/sbp.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/sbp.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/firewire/sbp_targ.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/hatm/if_hatm.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hifn/hifn7751.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hifn/hifn7751reg.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/hifn/hifn7751var.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ips/ips_commands.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/isp/isp_freebsd.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/kbd/atkbd.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/matcd/matcd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/mcd/mcd.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/md/md.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/null/null.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/ofw/ofw_disk.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/owi/if_owi.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/card_if.m#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccard.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccard_cis.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccard_cis.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccard_cis_quirks.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccarddevs#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccarddevs.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccardreg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccard/pccardvar.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pccbb/pccbb.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/pci_pci.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/pci/pci_user.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/puc/pucdata.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/raidframe/rf_freebsdkintf.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/scd/scd.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sio/sio_pccard.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/au88x0.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pci/au88x0.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/sound/pcm/ac97.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/streams/streams.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/uart/uart_bus_pccard.c#2 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/if_aue.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/if_auereg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/if_cue.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/if_cuereg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/if_kue.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/if_kuereg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/if_rue.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/if_ruereg.h#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/ubsa.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/ufm.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/ugen.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/uhid.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/ukbd.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/ums.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/usb.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/usb_mem.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/usb_port.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/usbdevs#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/usbdevs.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/usb/usbdevs_data.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/vinum/vinumrequest.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/vx/if_vx.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/vx/if_vx_eisa.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/vx/if_vx_pci.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/vx/if_vxreg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/vx/if_vxvar.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/dev/xe/if_xe.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/xe/if_xe_pccard.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/xe/if_xereg.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/dev/xe/if_xevar.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/devfs/devfs_vnops.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/hpfs/hpfs_vnops.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/msdosfs/msdosfs_denode.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/msdosfs/msdosfs_vfsops.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/msdosfs/msdosfs_vnops.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/ntfs/ntfs_vnops.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/nwfs/nwfs_io.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/nwfs/nwfs_node.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/nwfs/nwfs_vnops.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/procfs/procfs_dbregs.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/procfs/procfs_fpregs.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/procfs/procfs_map.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/procfs/procfs_regs.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/pseudofs/pseudofs_vncache.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/pseudofs/pseudofs_vnops.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/smbfs/smbfs_io.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/smbfs/smbfs_node.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/smbfs/smbfs_vnops.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/specfs/spec_vnops.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/fs/udf/udf_vnops.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/geom/bde/g_bde.h#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/geom/bde/g_bde_lock.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/geom/geom.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/geom/geom_ccd.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/geom/geom_dev.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/geom/geom_disk.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/geom/geom_event.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/geom/geom_fox.c#4 integrate .. //depot/projects/trustedbsd/sebsd/sys/geom/geom_io.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/geom/geom_subr.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/gnu/ext2fs/ext2_bmap.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/gnu/ext2fs/ext2_inode.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/gnu/ext2fs/ext2_vfsops.c#7 integrate .. //depot/projects/trustedbsd/sebsd/sys/gnu/ext2fs/ext2_vnops.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/conf/NOTES#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/i386/i686_mem.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/i386/locore.s#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/i386/machdep.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/i386/mp_clock.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/i386/mp_machdep.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/i386/pmap.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/i386/trap.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/i386/tsc.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/i386/vm_machdep.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/ibcs2/ibcs2_misc.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/ibcs2/ibcs2_signal.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/ibcs2/ibcs2_socksys.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/ibcs2/ibcs2_util.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/ibcs2/ibcs2_util.h#3 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/ibcs2/imgact_coff.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/include/pmap.h#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/isa/apic_vector.s#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/isa/isa_compat.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/i386/pci/pci_cfgreg.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/ia64/disasm/disasm.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/ia64/disasm/disasm_decode.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/ia64/disasm/disasm_extract.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/ia64/disasm/disasm_format.c#1 branch .. //depot/projects/trustedbsd/sebsd/sys/ia64/disasm/disasm_int.h#1 branch .. //depot/projects/trustedbsd/sebsd/sys/ia64/ia64/db_disasm.c#3 delete .. //depot/projects/trustedbsd/sebsd/sys/ia64/ia64/db_interface.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/ia64/ia64/db_trace.c#5 integrate .. //depot/projects/trustedbsd/sebsd/sys/ia64/ia64/machdep.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/ia64/ia64/pmap.c#6 integrate .. //depot/projects/trustedbsd/sebsd/sys/ia64/ia64/support.S#5 integrate >>> TRUNCATED FOR MAIL (1000 lines) <<<