From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 00:37:22 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 685CDBA9; Sun, 26 Jan 2014 00:37:22 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 51CD1167C; Sun, 26 Jan 2014 00:37:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0Q0bMhv006630; Sun, 26 Jan 2014 00:37:22 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0Q0bL0t006626; Sun, 26 Jan 2014 00:37:21 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201401260037.s0Q0bL0t006626@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Sun, 26 Jan 2014 00:37:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261175 - in head/contrib/binutils: gas/config opcodes X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 00:37:22 -0000 Author: pfg Date: Sun Jan 26 00:37:21 2014 New Revision: 261175 URL: http://svnweb.freebsd.org/changeset/base/261175 Log: binutils: add support for Intel SMAP-related instructions Add support for stac/clac instructions to manipulate the flag that controls the behaviour of Intel's Supervisor Mode Access Prevention (SMAP) feature. Tested by: dim Obtained from: OpenBSD MFC after: 5 days Modified: head/contrib/binutils/gas/config/tc-i386.c head/contrib/binutils/opcodes/i386-dis.c head/contrib/binutils/opcodes/i386-opc.h head/contrib/binutils/opcodes/i386-tbl.h Modified: head/contrib/binutils/gas/config/tc-i386.c ============================================================================== --- head/contrib/binutils/gas/config/tc-i386.c Sat Jan 25 23:59:20 2014 (r261174) +++ head/contrib/binutils/gas/config/tc-i386.c Sun Jan 26 00:37:21 2014 (r261175) @@ -1827,7 +1827,7 @@ md_assemble (line) { expressionS *exp; - if ((i.tm.cpu_flags & CpuSSE3) && i.operands > 0) + if ((i.tm.cpu_flags & (CpuSSE3|CpuSMAP)) && i.operands > 0) { /* Streaming SIMD extensions 3 Instructions have the fixed operands with an opcode suffix which is coded in the same Modified: head/contrib/binutils/opcodes/i386-dis.c ============================================================================== --- head/contrib/binutils/opcodes/i386-dis.c Sat Jan 25 23:59:20 2014 (r261174) +++ head/contrib/binutils/opcodes/i386-dis.c Sun Jan 26 00:37:21 2014 (r261175) @@ -6257,6 +6257,16 @@ PNI_Fixup (int extrachar ATTRIBUTE_UNUSE codep++; } + else if (modrm.mod == 3 && modrm.reg == 1 && modrm.rm <= 3) + { + size_t olen = strlen (obuf); + char *p = obuf + olen - 4; + if (*codep == 0xca) + strcpy (p, "clac"); + else if (*codep == 0xcb) + strcpy (p, "stac"); + codep++; + } else OP_M (0, sizeflag); } Modified: head/contrib/binutils/opcodes/i386-opc.h ============================================================================== --- head/contrib/binutils/opcodes/i386-opc.h Sat Jan 25 23:59:20 2014 (r261174) +++ head/contrib/binutils/opcodes/i386-opc.h Sun Jan 26 00:37:21 2014 (r261175) @@ -80,6 +80,7 @@ typedef struct template #define CpuPCLMUL 0x10000000 /* Carry-less Multiplication extensions */ #define CpuRdRnd 0x20000000 /* Intel Random Number Generator extensions */ +#define CpuSMAP 0x40000000 /* Intel Supervisor Mode Access Prevention */ /* SSE4.1/4.2 Instructions required */ #define CpuSSE4 (CpuSSE4_1|CpuSSE4_2) @@ -88,7 +89,7 @@ typedef struct template #define CpuUnknownFlags (Cpu186|Cpu286|Cpu386|Cpu486|Cpu586|Cpu686 \ |CpuP4|CpuSledgehammer|CpuMMX|CpuMMX2|CpuSSE|CpuSSE2|CpuSSE3|CpuVMX \ |Cpu3dnow|Cpu3dnowA|CpuK6|CpuPadLock|CpuSVME|CpuSSSE3|CpuSSE4_1 \ - |CpuSSE4_2|CpuABM|CpuSSE4a|CpuXSAVE|CpuAES|CpuPCLMUL|CpuRdRnd) + |CpuSSE4_2|CpuABM|CpuSSE4a|CpuXSAVE|CpuAES|CpuPCLMUL|CpuRdRnd|CpuSMAP) /* the bits in opcode_modifier are used to generate the final opcode from the base_opcode. These bits also are used to detect alternate forms of Modified: head/contrib/binutils/opcodes/i386-tbl.h ============================================================================== --- head/contrib/binutils/opcodes/i386-tbl.h Sat Jan 25 23:59:20 2014 (r261174) +++ head/contrib/binutils/opcodes/i386-tbl.h Sun Jan 26 00:37:21 2014 (r261175) @@ -4379,6 +4379,12 @@ const template i386_optab[] = {"rdrand", 1, 0x0fc7, 0x6, CpuRdRnd, Modrm|NoSuf, { Reg16|Reg32|Reg64 } }, + + /* Intel Supervisor Mode Access Prevention extensions */ + {"clac", 0, 0x0f01, 0xca, CpuSMAP, + NoSuf|ImmExt, { 0, 0, 0 } }, + {"stac", 0, 0x0f01, 0xcb, CpuSMAP, + NoSuf|ImmExt, { 0, 0, 0 } }, { NULL, 0, 0, 0, 0, 0, { 0 } } }; From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 02:23:17 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 58453C9C; Sun, 26 Jan 2014 02:23:17 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 43A4B1DA9; Sun, 26 Jan 2014 02:23:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0Q2NG4j089656; Sun, 26 Jan 2014 02:23:17 GMT (envelope-from jhibbits@svn.freebsd.org) Received: (from jhibbits@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0Q2NGm4089655; Sun, 26 Jan 2014 02:23:16 GMT (envelope-from jhibbits@svn.freebsd.org) Message-Id: <201401260223.s0Q2NGm4089655@svn.freebsd.org> From: Justin Hibbits Date: Sun, 26 Jan 2014 02:23:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261177 - stable/10/sys/powerpc/powermac X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 02:23:17 -0000 Author: jhibbits Date: Sun Jan 26 02:23:16 2014 New Revision: 261177 URL: http://svnweb.freebsd.org/changeset/base/261177 Log: MFC r260872: There's actually no data in the PMU_GET_VERSION command. Don't send any. This change now allows the PMU to be used on PowerBook5,8 Modified: stable/10/sys/powerpc/powermac/pmu.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/powerpc/powermac/pmu.c ============================================================================== --- stable/10/sys/powerpc/powermac/pmu.c Sun Jan 26 01:27:53 2014 (r261176) +++ stable/10/sys/powerpc/powermac/pmu.c Sun Jan 26 02:23:16 2014 (r261177) @@ -378,7 +378,7 @@ pmu_attach(device_t dev) pmu_write_reg(sc, vIER, 0x94); /* make sure VIA interrupts are on */ pmu_send(sc, PMU_SYSTEM_READY, 1, cmd, 16, resp); - pmu_send(sc, PMU_GET_VERSION, 1, cmd, 16, resp); + pmu_send(sc, PMU_GET_VERSION, 0, cmd, 16, resp); /* Initialize child buses (ADB) */ node = ofw_bus_get_node(dev); From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 02:36:07 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3A4D4117; Sun, 26 Jan 2014 02:36:07 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 19C6F1E45; Sun, 26 Jan 2014 02:36:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0Q2a60j093883; Sun, 26 Jan 2014 02:36:06 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0Q2a61Q093880; Sun, 26 Jan 2014 02:36:06 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201401260236.s0Q2a61Q093880@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Sun, 26 Jan 2014 02:36:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261178 - in head/contrib/gcc: . cp doc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 02:36:07 -0000 Author: pfg Date: Sun Jan 26 02:36:06 2014 New Revision: 261178 URL: http://svnweb.freebsd.org/changeset/base/261178 Log: gcc: Add support for -Wmissing-prototypes in C++ Support for warnings about missing prototypes in C++ was added by Apple GCC (Radar 6261539). Most of the code crept into r260311 so it felt natural to make use of it. Obtained from: Apple GCC - 5646 MFC after: 5 days Modified: head/contrib/gcc/c.opt head/contrib/gcc/cp/decl.c head/contrib/gcc/doc/invoke.texi Modified: head/contrib/gcc/c.opt ============================================================================== --- head/contrib/gcc/c.opt Sun Jan 26 02:23:16 2014 (r261177) +++ head/contrib/gcc/c.opt Sun Jan 26 02:36:06 2014 (r261178) @@ -280,9 +280,11 @@ Wmissing-include-dirs C ObjC C++ ObjC++ Warn about user-specified include directories that do not exist +; APPLE LOCAL begin warn missing prototype 6261539 Wmissing-prototypes -C ObjC Var(warn_missing_prototypes) +C ObjC C++ ObjC++ Var(warn_missing_prototypes) Warn about global functions without prototypes +; APPLE LOCAL end warn missing prototype 6261539 ; APPLE LOCAL begin -Wmost Wmost Modified: head/contrib/gcc/cp/decl.c ============================================================================== --- head/contrib/gcc/cp/decl.c Sun Jan 26 02:23:16 2014 (r261177) +++ head/contrib/gcc/cp/decl.c Sun Jan 26 02:36:06 2014 (r261178) @@ -11486,6 +11486,10 @@ start_function (cp_decl_specifier_seq *d gcc_assert (same_type_p (TREE_TYPE (TREE_TYPE (decl1)), integer_type_node)); + /* APPLE LOCAL begin warn missing prototype 6261539 */ + check_missing_prototype (decl1); + /* APPLE LOCAL end warn missing prototype 6261539 */ + start_preparsed_function (decl1, attrs, /*flags=*/SF_DEFAULT); return 1; Modified: head/contrib/gcc/doc/invoke.texi ============================================================================== --- head/contrib/gcc/doc/invoke.texi Sun Jan 26 02:23:16 2014 (r261177) +++ head/contrib/gcc/doc/invoke.texi Sun Jan 26 02:36:06 2014 (r261178) @@ -225,6 +225,8 @@ in the following sections. -Wmain -Wmissing-braces -Wmissing-field-initializers @gol -Wmissing-format-attribute -Wmissing-include-dirs @gol -Wmissing-noreturn @gol +@c APPLE LOCAL warn missing prototype 6261539 +-Wmissing-prototypes @gol @c APPLE LOCAL -Wmost -Wmost (APPLE ONLY) @gol -Wno-multichar -Wnonnull -Wno-overflow @gol @@ -245,7 +247,8 @@ in the following sections. @item C-only Warning Options @gccoptlist{-Wbad-function-cast -Wmissing-declarations @gol --Wmissing-prototypes -Wnested-externs -Wold-style-definition @gol +@c APPLE LOCAL warn missing prototype 6261539 +-Wnested-externs -Wold-style-definition @gol -Wstrict-prototypes -Wtraditional @gol -Wdeclaration-after-statement -Wpointer-sign} @@ -3052,7 +3055,8 @@ types.) Warn if an old-style function definition is used. A warning is given even if there is a previous prototype. -@item -Wmissing-prototypes @r{(C only)} +@c APPLE LOCAL warn missing prototype 6261539 +@item -Wmissing-prototypes @opindex Wmissing-prototypes Warn if a global function is defined without a previous prototype declaration. This warning is issued even if the definition itself From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 02:41:01 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 67A91403; Sun, 26 Jan 2014 02:41:01 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5380C1ECC; Sun, 26 Jan 2014 02:41:01 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0Q2f1oG095451; Sun, 26 Jan 2014 02:41:01 GMT (envelope-from jhibbits@svn.freebsd.org) Received: (from jhibbits@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0Q2f1Cc095449; Sun, 26 Jan 2014 02:41:01 GMT (envelope-from jhibbits@svn.freebsd.org) Message-Id: <201401260241.s0Q2f1Cc095449@svn.freebsd.org> From: Justin Hibbits Date: Sun, 26 Jan 2014 02:41:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261179 - stable/9/sys/powerpc/powermac X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 02:41:01 -0000 Author: jhibbits Date: Sun Jan 26 02:41:00 2014 New Revision: 261179 URL: http://svnweb.freebsd.org/changeset/base/261179 Log: MFC r260872: There's actually no data in the PMU_GET_VERSION command. Don't send any. This change now allows the PMU to be used on PowerBook5,8. Modified: stable/9/sys/powerpc/powermac/pmu.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/powerpc/powermac/pmu.c ============================================================================== --- stable/9/sys/powerpc/powermac/pmu.c Sun Jan 26 02:36:06 2014 (r261178) +++ stable/9/sys/powerpc/powermac/pmu.c Sun Jan 26 02:41:00 2014 (r261179) @@ -365,7 +365,7 @@ pmu_attach(device_t dev) pmu_write_reg(sc, vIER, 0x90); /* make sure VIA interrupts are on */ pmu_send(sc, PMU_SYSTEM_READY, 1, cmd, 16, resp); - pmu_send(sc, PMU_GET_VERSION, 1, cmd, 16, resp); + pmu_send(sc, PMU_GET_VERSION, 0, cmd, 16, resp); /* Initialize child buses (ADB) */ node = ofw_bus_get_node(dev); From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 04:57:58 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AAB8B728; Sun, 26 Jan 2014 04:57:58 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8DE251791; Sun, 26 Jan 2014 04:57:58 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0Q4vw6J048445; Sun, 26 Jan 2014 04:57:58 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0Q4vwf5048444; Sun, 26 Jan 2014 04:57:58 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401260457.s0Q4vwf5048444@svn.freebsd.org> From: Warner Losh Date: Sun, 26 Jan 2014 04:57:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261180 - head/sys/arm/at91 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 04:57:58 -0000 Author: imp Date: Sun Jan 26 04:57:58 2014 New Revision: 261180 URL: http://svnweb.freebsd.org/changeset/base/261180 Log: Before resetting the USART, delay a bit to allow the transmitter to finish the current character to drain to avoid glitching. Also, simplify the code a smidge. Modified: head/sys/arm/at91/uart_dev_at91usart.c Modified: head/sys/arm/at91/uart_dev_at91usart.c ============================================================================== --- head/sys/arm/at91/uart_dev_at91usart.c Sun Jan 26 02:41:00 2014 (r261179) +++ head/sys/arm/at91/uart_dev_at91usart.c Sun Jan 26 04:57:58 2014 (r261180) @@ -421,7 +421,6 @@ at91_usart_bus_attach(struct uart_softc { int err; int i; - uint32_t cr; struct at91_usart_softc *atsc; atsc = (struct at91_usart_softc *)sc; @@ -490,8 +489,8 @@ at91_usart_bus_attach(struct uart_softc } /* Turn on rx and tx */ - cr = USART_CR_RSTSTA | USART_CR_RSTRX | USART_CR_RSTTX; - WR4(&sc->sc_bas, USART_CR, cr); + DELAY(1000); /* Give pending character a chance to drain. */ + WR4(&sc->sc_bas, USART_CR, USART_CR_RSTSTA | USART_CR_RSTRX | USART_CR_RSTTX); WR4(&sc->sc_bas, USART_CR, USART_CR_RXEN | USART_CR_TXEN); /* From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 07:20:33 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1F9FDEFB; Sun, 26 Jan 2014 07:20:33 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0C473105E; Sun, 26 Jan 2014 07:20:33 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0Q7KWY3002836; Sun, 26 Jan 2014 07:20:32 GMT (envelope-from kevlo@svn.freebsd.org) Received: (from kevlo@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0Q7KWvT002835; Sun, 26 Jan 2014 07:20:32 GMT (envelope-from kevlo@svn.freebsd.org) Message-Id: <201401260720.s0Q7KWvT002835@svn.freebsd.org> From: Kevin Lo Date: Sun, 26 Jan 2014 07:20:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261181 - head/bin/pax X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 07:20:33 -0000 Author: kevlo Date: Sun Jan 26 07:20:32 2014 New Revision: 261181 URL: http://svnweb.freebsd.org/changeset/base/261181 Log: Stop the options string leak if it is not attached into the options linked list. Obtained from: OpenBSD Modified: head/bin/pax/options.c Modified: head/bin/pax/options.c ============================================================================== --- head/bin/pax/options.c Sun Jan 26 04:57:58 2014 (r261180) +++ head/bin/pax/options.c Sun Jan 26 07:20:32 2014 (r261181) @@ -1385,6 +1385,7 @@ opt_add(const char *str) free(lstr); return(-1); } + lstr = NULL; /* parts of string going onto the OPLIST */ *pt++ = '\0'; opt->name = frpt; opt->value = pt; @@ -1400,6 +1401,7 @@ opt_add(const char *str) optail->fow = opt; optail = opt; } + free(lstr); return(0); } From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 07:40:21 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A466E17D; Sun, 26 Jan 2014 07:40:21 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8C4B81126; Sun, 26 Jan 2014 07:40:21 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0Q7eLSj009880; Sun, 26 Jan 2014 07:40:21 GMT (envelope-from sjg@svn.freebsd.org) Received: (from sjg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0Q7eH2R009850; Sun, 26 Jan 2014 07:40:17 GMT (envelope-from sjg@svn.freebsd.org) Message-Id: <201401260740.s0Q7eH2R009850@svn.freebsd.org> From: "Simon J. Gerraty" Date: Sun, 26 Jan 2014 07:40:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261182 - in vendor/NetBSD/bmake/dist: . lst.lib mk X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 07:40:21 -0000 Author: sjg Date: Sun Jan 26 07:40:17 2014 New Revision: 261182 URL: http://svnweb.freebsd.org/changeset/base/261182 Log: Import bmake-20140101 Modified: vendor/NetBSD/bmake/dist/ChangeLog vendor/NetBSD/bmake/dist/Makefile vendor/NetBSD/bmake/dist/Makefile.config.in vendor/NetBSD/bmake/dist/bmake.1 vendor/NetBSD/bmake/dist/bmake.cat1 vendor/NetBSD/bmake/dist/boot-strap vendor/NetBSD/bmake/dist/compat.c vendor/NetBSD/bmake/dist/configure vendor/NetBSD/bmake/dist/configure.in vendor/NetBSD/bmake/dist/hash.c vendor/NetBSD/bmake/dist/lst.lib/lstMember.c vendor/NetBSD/bmake/dist/main.c vendor/NetBSD/bmake/dist/make-bootstrap.sh.in vendor/NetBSD/bmake/dist/make.1 vendor/NetBSD/bmake/dist/make.h vendor/NetBSD/bmake/dist/meta.c vendor/NetBSD/bmake/dist/mk/ChangeLog vendor/NetBSD/bmake/dist/mk/dirdeps.mk vendor/NetBSD/bmake/dist/mk/install-mk vendor/NetBSD/bmake/dist/mk/meta2deps.py vendor/NetBSD/bmake/dist/parse.c vendor/NetBSD/bmake/dist/util.c Modified: vendor/NetBSD/bmake/dist/ChangeLog ============================================================================== --- vendor/NetBSD/bmake/dist/ChangeLog Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/ChangeLog Sun Jan 26 07:40:17 2014 (r261182) @@ -1,3 +1,37 @@ +2014-01-03 Simon J. Gerraty + + * boot-strap: ignore mksrc=none + +2014-01-02 Simon J. Gerraty + + * Makefile (DEFAULT_SYS_PATH?): use just ${prefix}/share/mk + +2014-01-01 Simon J. Gerraty + + * Makefile (MAKE_VERSION): 20140101 + * configure.in: set bmake_path_max to min(_SC_PATH_MAX,1024) + * Makefile.config: defined BMAKE_PATH_MAX to bmake_path_max + * make.h: use BMAKE_PATH_MAX if MAXPATHLEN not defined (needed for + Hurd) + * configure.in: Add AC_PREREQ and check for + sysctl; patch from Andrew Shadura andrewsh at debian.org + +2013-10-16 Simon J. Gerraty + + * Makefile (MAKE_VERSION): 20131010 + * lose the const from arg to systcl to avoid problems on older BSDs. + +2013-10-01 Simon J. Gerraty + + * Makefile (MAKE_VERSION): 20131001 + Merge with NetBSD make, pick up + o main.c: for NATIVE build sysctl to get MACHINE_ARCH from + hw.machine_arch if necessary. + o meta.c: meta_oodate - need to look at src of Link and target + of Move as well. + * main.c: check that CTL_HW and HW_MACHINE_ARCH exist. + provide __arraycount() if needed. + 2013-09-04 Simon J. Gerraty * Makefile (MAKE_VERSION): 20130904 Modified: vendor/NetBSD/bmake/dist/Makefile ============================================================================== --- vendor/NetBSD/bmake/dist/Makefile Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/Makefile Sun Jan 26 07:40:17 2014 (r261182) @@ -1,7 +1,7 @@ -# $Id: Makefile,v 1.20 2013/09/04 15:42:03 sjg Exp $ +# $Id: Makefile,v 1.23 2014/01/02 22:20:52 sjg Exp $ # Base version on src date -MAKE_VERSION= 20130904 +MAKE_VERSION= 20140101 PROG= bmake @@ -68,7 +68,7 @@ SRCS+= ${LIBOBJS:T:.o=.c} prefix?= /usr srcdir?= ${.CURDIR} -DEFAULT_SYS_PATH?= .../share/mk:${prefix}/share/mk +DEFAULT_SYS_PATH?= ${prefix}/share/mk CPPFLAGS+= -DUSE_META CFLAGS+= ${CPPFLAGS} Modified: vendor/NetBSD/bmake/dist/Makefile.config.in ============================================================================== --- vendor/NetBSD/bmake/dist/Makefile.config.in Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/Makefile.config.in Sun Jan 26 07:40:17 2014 (r261182) @@ -14,3 +14,7 @@ LIBOBJS= @LIBOBJS@ LDADD= @LIBS@ USE_META= @use_meta@ FILEMON_H= @filemon_h@ +BMAKE_PATH_MAX?= @bmake_path_max@ +# used if MAXPATHLEN not defined +CPPFLAGS+= -DBMAKE_PATH_MAX=${BMAKE_PATH_MAX} + Modified: vendor/NetBSD/bmake/dist/bmake.1 ============================================================================== --- vendor/NetBSD/bmake/dist/bmake.1 Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/bmake.1 Sun Jan 26 07:40:17 2014 (r261182) @@ -1,4 +1,4 @@ -.\" $NetBSD: make.1,v 1.222 2013/08/11 09:53:49 apb Exp $ +.\" $NetBSD: make.1,v 1.226 2013/11/07 18:50:46 dholland Exp $ .\" .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. @@ -29,7 +29,7 @@ .\" .\" from: @(#)make.1 8.4 (Berkeley) 3/19/94 .\" -.Dd August 11, 2013 +.Dd October 25, 2013 .Dt MAKE 1 .Os .Sh NAME @@ -745,7 +745,7 @@ then output for each target is prefixed .Ql --- target --- the first part of which can be controlled via .Va .MAKE.JOB.PREFIX . -If +If .Va .MAKE.JOB.PREFIX is empty, no token is printed. .br @@ -1066,6 +1066,13 @@ may be used. The wildcard characters may be escaped with a backslash .Pq Ql \e . +As a consequence of the way values are split into words, matched, +and then joined, a construct like +.Dl ${VAR:M*} +will normalise the inter-word spacing, removing all leading and +trailing space, and converting multiple consecutive spaces +to single spaces. +. .It Cm \&:N Ns Ar pattern This is identical to .Ql Cm \&:M , @@ -1209,7 +1216,7 @@ The modifier is just like the .Cm \&:S modifier except that the old and new strings, instead of being -simple strings, are a regular expression (see +simple strings, are an extended regular expression (see .Xr regex 3 ) string .Ar pattern @@ -1751,7 +1758,7 @@ or .Fl t options were specified. Normally used to mark recursive -.Nm Ns 's . +.Nm Ns s . .It Ic .META Create a meta file for the target, even if it is flagged as .Ic .PHONY , Modified: vendor/NetBSD/bmake/dist/bmake.cat1 ============================================================================== --- vendor/NetBSD/bmake/dist/bmake.cat1 Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/bmake.cat1 Sun Jan 26 07:40:17 2014 (r261182) @@ -690,7 +690,13 @@ VVAARRIIAABBLLEE AASSSSIIGG ::MM_p_a_t_t_e_r_n Select only those words that match _p_a_t_t_e_r_n. The standard shell wildcard characters (`*', `?', and `[]') may be used. The wildcard - characters may be escaped with a backslash (`\'). + characters may be escaped with a backslash (`\'). As a consequence + of the way values are split into words, matched, and then joined, a + construct like + ${VAR:M*} + will normalise the inter-word spacing, removing all leading and + trailing space, and converting multiple consecutive spaces to single + spaces. ::NN_p_a_t_t_e_r_n This is identical to `::MM', but selects all words which do not match @@ -777,18 +783,18 @@ VVAARRIIAABBLLEE AASSSSIIGG ::CC/_p_a_t_t_e_r_n/_r_e_p_l_a_c_e_m_e_n_t/[11ggWW] The ::CC modifier is just like the ::SS modifier except that the old and - new strings, instead of being simple strings, are a regular expres- - sion (see regex(3)) string _p_a_t_t_e_r_n and an ed(1)-style string - _r_e_p_l_a_c_e_m_e_n_t. Normally, the first occurrence of the pattern _p_a_t_t_e_r_n - in each word of the value is substituted with _r_e_p_l_a_c_e_m_e_n_t. The `1' - modifier causes the substitution to apply to at most one word; the - `g' modifier causes the substitution to apply to as many instances - of the search pattern _p_a_t_t_e_r_n as occur in the word or words it is - found in; the `W' modifier causes the value to be treated as a sin- - gle word (possibly containing embedded white space). Note that `1' - and `g' are orthogonal; the former specifies whether multiple words - are potentially affected, the latter whether multiple substitutions - can potentially occur within each affected word. + new strings, instead of being simple strings, are an extended regu- + lar expression (see regex(3)) string _p_a_t_t_e_r_n and an ed(1)-style + string _r_e_p_l_a_c_e_m_e_n_t. Normally, the first occurrence of the pattern + _p_a_t_t_e_r_n in each word of the value is substituted with _r_e_p_l_a_c_e_m_e_n_t. + The `1' modifier causes the substitution to apply to at most one + word; the `g' modifier causes the substitution to apply to as many + instances of the search pattern _p_a_t_t_e_r_n as occur in the word or + words it is found in; the `W' modifier causes the value to be + treated as a single word (possibly containing embedded white space). + Note that `1' and `g' are orthogonal; the former specifies whether + multiple words are potentially affected, the latter whether multiple + substitutions can potentially occur within each affected word. ::TT Replaces each word in the variable with its last component. @@ -1107,7 +1113,7 @@ SSPPEECCIIAALL SSOOUURRCCEE ..MMAAKKEE Execute the commands associated with this target even if the --nn or --tt options were specified. Normally used to mark recursive - bbmmaakkee's. + bbmmaakkees. ..MMEETTAA Create a meta file for the target, even if it is flagged as ..PPHHOONNYY, ..MMAAKKEE, or ..SSPPEECCIIAALL. Usage in conjunction with ..MMAAKKEE is @@ -1378,4 +1384,4 @@ BBUUGGSS There is no way of escaping a space character in a filename. -NetBSD 5.1 August 11, 2013 NetBSD 5.1 +NetBSD 5.1 October 25, 2013 NetBSD 5.1 Modified: vendor/NetBSD/bmake/dist/boot-strap ============================================================================== --- vendor/NetBSD/bmake/dist/boot-strap Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/boot-strap Sun Jan 26 07:40:17 2014 (r261182) @@ -111,7 +111,7 @@ # Simon J. Gerraty # RCSid: -# $Id: boot-strap,v 1.43 2013/03/02 18:55:23 sjg Exp $ +# $Id: boot-strap,v 1.44 2014/01/08 14:49:10 sjg Exp $ # # @(#) Copyright (c) 2001 Simon J. Gerraty # @@ -216,11 +216,9 @@ do --share=*) share_dir=`get_optarg "$1"`;; --share) share_dir="$2"; shift;; --with-default-sys-path=*) - CONFIGURE_ARGS="$1" - MAKESYSPATH=`get_optarg "$1"`;; + CONFIGURE_ARGS="$1";; --with-default-sys-path) - CONFIGURE_ARGS="$1 $2" - MAKESYSPATH="$2"; shift;; + CONFIGURE_ARGS="$1 $2";; --install) INSTALL_PREFIX=${INSTALL_PREFIX:-$prefix};; --install-host-target) INSTALL_PREFIX=${INSTALL_PREFIX:-$prefix} @@ -330,8 +328,8 @@ add_path () { srcdir=`GetDir /bmake make-bootstrap.sh.in "$srcdir" "$2" "$Mydir" ./bmake* "$Mydir"/../bmake*` [ -d "${srcdir:-/dev/null}" ] || Usage case "$mksrc" in -none|-) # we don't want it - mksrc= +none|-) # we ignore this now + mksrc=$Mydir/mk ;; .../*) # find here or above mksrc=`FindHereOrAbove -C "$Mydir" -s "$mksrc/sys.mk"` Modified: vendor/NetBSD/bmake/dist/compat.c ============================================================================== --- vendor/NetBSD/bmake/dist/compat.c Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/compat.c Sun Jan 26 07:40:17 2014 (r261182) @@ -1,4 +1,4 @@ -/* $NetBSD: compat.c,v 1.93 2013/09/02 19:26:42 sjg Exp $ */ +/* $NetBSD: compat.c,v 1.94 2014/01/03 00:02:01 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990 The Regents of the University of California. @@ -70,14 +70,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: compat.c,v 1.93 2013/09/02 19:26:42 sjg Exp $"; +static char rcsid[] = "$NetBSD: compat.c,v 1.94 2014/01/03 00:02:01 sjg Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)compat.c 8.2 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: compat.c,v 1.93 2013/09/02 19:26:42 sjg Exp $"); +__RCSID("$NetBSD: compat.c,v 1.94 2014/01/03 00:02:01 sjg Exp $"); #endif #endif /* not lint */ #endif @@ -133,7 +133,7 @@ Compat_Init(void) Shell_Init(); /* setup default shell */ - for (cp = "#=|^(){};&<>*?[]:$`\\\n"; *cp != '\0'; cp++) { + for (cp = "~#=|^(){};&<>*?[]:$`\\\n"; *cp != '\0'; cp++) { meta[(unsigned char) *cp] = 1; } /* Modified: vendor/NetBSD/bmake/dist/configure ============================================================================== Binary file (source and/or target). No diff available. Modified: vendor/NetBSD/bmake/dist/configure.in ============================================================================== --- vendor/NetBSD/bmake/dist/configure.in Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/configure.in Sun Jan 26 07:40:17 2014 (r261182) @@ -1,10 +1,11 @@ dnl dnl RCSid: -dnl $Id: configure.in,v 1.49 2013/07/06 18:25:19 sjg Exp $ +dnl $Id: configure.in,v 1.51 2014/01/02 22:20:52 sjg Exp $ dnl dnl Process this file with autoconf to produce a configure script dnl -AC_INIT([bmake], [20130706], [sjg@NetBSD.org]) +AC_PREREQ(2.50) +AC_INIT([bmake], [20140101], [sjg@NetBSD.org]) AC_CONFIG_HEADER(config.h) dnl make srcdir absolute @@ -77,7 +78,18 @@ AC_PROG_GCC_TRADITIONAL AC_PROG_INSTALL dnl Executable suffix - normally empty; .exe on os2. AC_SUBST(ac_exe_suffix)dnl - +dnl +dnl Hurd refuses to define PATH_MAX or MAXPATHLEN +if test -x /usr/bin/getconf; then + bmake_path_max=`getconf PATH_MAX / 2> /dev/null` +fi +bmake_path_max=${bmake_path_max:-1024} +if test $bmake_path_max -gt 1024; then + # this is all we expect + bmake_path_max=1024 +fi +echo "Using: BMAKE_PATH_MAX=$bmake_path_max" >&6 +AC_SUBST(bmake_path_max)dnl dnl dnl AC_C_CROSS dnl @@ -98,6 +110,7 @@ AC_CHECK_HEADERS( \ sys/mman.h \ sys/select.h \ sys/socket.h \ + sys/sysctl.h \ sys/time.h \ sys/uio.h \ unistd.h \ @@ -159,6 +172,7 @@ AC_CHECK_FUNCS( \ strsep \ strtod \ strtol \ + sysctl \ unsetenv \ vsnprintf \ wait3 \ Modified: vendor/NetBSD/bmake/dist/hash.c ============================================================================== --- vendor/NetBSD/bmake/dist/hash.c Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/hash.c Sun Jan 26 07:40:17 2014 (r261182) @@ -1,4 +1,4 @@ -/* $NetBSD: hash.c,v 1.19 2009/01/24 10:59:09 dsl Exp $ */ +/* $NetBSD: hash.c,v 1.20 2013/11/14 00:27:05 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990 The Regents of the University of California. @@ -70,14 +70,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: hash.c,v 1.19 2009/01/24 10:59:09 dsl Exp $"; +static char rcsid[] = "$NetBSD: hash.c,v 1.20 2013/11/14 00:27:05 sjg Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)hash.c 8.1 (Berkeley) 6/6/93"; #else -__RCSID("$NetBSD: hash.c,v 1.19 2009/01/24 10:59:09 dsl Exp $"); +__RCSID("$NetBSD: hash.c,v 1.20 2013/11/14 00:27:05 sjg Exp $"); #endif #endif /* not lint */ #endif @@ -221,6 +221,9 @@ Hash_FindEntry(Hash_Table *t, const char unsigned h; const char *p; + if (t == NULL || t->bucketPtr == NULL) { + return NULL; + } for (h = 0, p = key; *p;) h = (h << 5) - h + *p++; p = key; Modified: vendor/NetBSD/bmake/dist/lst.lib/lstMember.c ============================================================================== --- vendor/NetBSD/bmake/dist/lst.lib/lstMember.c Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/lst.lib/lstMember.c Sun Jan 26 07:40:17 2014 (r261182) @@ -1,4 +1,4 @@ -/* $NetBSD: lstMember.c,v 1.13 2009/01/23 21:26:30 dsl Exp $ */ +/* $NetBSD: lstMember.c,v 1.14 2013/11/14 00:01:28 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -33,14 +33,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: lstMember.c,v 1.13 2009/01/23 21:26:30 dsl Exp $"; +static char rcsid[] = "$NetBSD: lstMember.c,v 1.14 2013/11/14 00:01:28 sjg Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)lstMember.c 8.1 (Berkeley) 6/6/93"; #else -__RCSID("$NetBSD: lstMember.c,v 1.13 2009/01/23 21:26:30 dsl Exp $"); +__RCSID("$NetBSD: lstMember.c,v 1.14 2013/11/14 00:01:28 sjg Exp $"); #endif #endif /* not lint */ #endif @@ -58,6 +58,9 @@ Lst_Member(Lst l, void *d) List list = l; ListNode lNode; + if (list == NULL) { + return NULL; + } lNode = list->firstPtr; if (lNode == NULL) { return NULL; Modified: vendor/NetBSD/bmake/dist/main.c ============================================================================== --- vendor/NetBSD/bmake/dist/main.c Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/main.c Sun Jan 26 07:40:17 2014 (r261182) @@ -1,4 +1,4 @@ -/* $NetBSD: main.c,v 1.224 2013/09/04 15:38:26 sjg Exp $ */ +/* $NetBSD: main.c,v 1.225 2013/09/14 15:09:34 matt Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -69,7 +69,7 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: main.c,v 1.224 2013/09/04 15:38:26 sjg Exp $"; +static char rcsid[] = "$NetBSD: main.c,v 1.225 2013/09/14 15:09:34 matt Exp $"; #else #include #ifndef lint @@ -81,7 +81,7 @@ __COPYRIGHT("@(#) Copyright (c) 1988, 19 #if 0 static char sccsid[] = "@(#)main.c 8.3 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: main.c,v 1.224 2013/09/04 15:38:26 sjg Exp $"); +__RCSID("$NetBSD: main.c,v 1.225 2013/09/14 15:09:34 matt Exp $"); #endif #endif /* not lint */ #endif @@ -118,6 +118,9 @@ __RCSID("$NetBSD: main.c,v 1.224 2013/09 #include #include #include +#if defined(MAKE_NATIVE) && defined(HAVE_SYSCTL) +#include +#endif #include #include "wait.h" @@ -145,6 +148,10 @@ __RCSID("$NetBSD: main.c,v 1.224 2013/09 #define DEFMAXLOCAL DEFMAXJOBS #endif /* DEFMAXLOCAL */ +#ifndef __arraycount +# define __arraycount(__x) (sizeof(__x) / sizeof(__x[0])) +#endif + Lst create; /* Targets to be made */ time_t now; /* Time at start of make */ GNode *DEFAULT; /* .DEFAULT node */ @@ -910,6 +917,20 @@ main(int argc, char **argv) } if (!machine_arch) { +#if defined(MAKE_NATIVE) && defined(HAVE_SYSCTL) && defined(CTL_HW) && defined(HW_MACHINE_ARCH) + static char machine_arch_buf[sizeof(utsname.machine)]; + int mib[2] = { CTL_HW, HW_MACHINE_ARCH }; + size_t len = sizeof(machine_arch_buf); + + if (sysctl(mib, __arraycount(mib), machine_arch_buf, + &len, NULL, 0) < 0) { + (void)fprintf(stderr, "%s: sysctl failed (%s).\n", progname, + strerror(errno)); + exit(2); + } + + machine_arch = machine_arch_buf; +#else #ifndef MACHINE_ARCH #ifdef MAKE_MACHINE_ARCH machine_arch = MAKE_MACHINE_ARCH; @@ -919,6 +940,7 @@ main(int argc, char **argv) #else machine_arch = MACHINE_ARCH; #endif +#endif } myPid = getpid(); /* remember this for vFork() */ Modified: vendor/NetBSD/bmake/dist/make-bootstrap.sh.in ============================================================================== --- vendor/NetBSD/bmake/dist/make-bootstrap.sh.in Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/make-bootstrap.sh.in Sun Jan 26 07:40:17 2014 (r261182) @@ -11,7 +11,7 @@ yes) XDEFS="-DUSE_META ${XDEFS}";; esac CC="@CC@" -CFLAGS="@CFLAGS@ -I. -I${srcdir} @DEFS@ @CPPFLAGS@ -DMAKE_NATIVE ${XDEFS}" +CFLAGS="@CFLAGS@ -I. -I${srcdir} @DEFS@ @CPPFLAGS@ -DMAKE_NATIVE ${XDEFS} -DBMAKE_PATH_MAX=@bmake_path_max@" MAKE_VERSION=`sed -n '/^MAKE_VERSION=/s,.*=[^0-9]*,,p' $srcdir/Makefile` Modified: vendor/NetBSD/bmake/dist/make.1 ============================================================================== --- vendor/NetBSD/bmake/dist/make.1 Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/make.1 Sun Jan 26 07:40:17 2014 (r261182) @@ -1,4 +1,4 @@ -.\" $NetBSD: make.1,v 1.222 2013/08/11 09:53:49 apb Exp $ +.\" $NetBSD: make.1,v 1.226 2013/11/07 18:50:46 dholland Exp $ .\" .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. @@ -29,7 +29,7 @@ .\" .\" from: @(#)make.1 8.4 (Berkeley) 3/19/94 .\" -.Dd August 11, 2013 +.Dd October 25, 2013 .Dt MAKE 1 .Os .Sh NAME @@ -745,7 +745,7 @@ then output for each target is prefixed .Ql --- target --- the first part of which can be controlled via .Va .MAKE.JOB.PREFIX . -If +If .Va .MAKE.JOB.PREFIX is empty, no token is printed. .br @@ -1066,6 +1066,13 @@ may be used. The wildcard characters may be escaped with a backslash .Pq Ql \e . +As a consequence of the way values are split into words, matched, +and then joined, a construct like +.Dl ${VAR:M*} +will normalise the inter-word spacing, removing all leading and +trailing space, and converting multiple consecutive spaces +to single spaces. +. .It Cm \&:N Ns Ar pattern This is identical to .Ql Cm \&:M , @@ -1209,7 +1216,7 @@ The modifier is just like the .Cm \&:S modifier except that the old and new strings, instead of being -simple strings, are a regular expression (see +simple strings, are an extended regular expression (see .Xr regex 3 ) string .Ar pattern @@ -1751,7 +1758,7 @@ or .Fl t options were specified. Normally used to mark recursive -.Nm Ns 's . +.Nm Ns s . .It Ic .META Create a meta file for the target, even if it is flagged as .Ic .PHONY , Modified: vendor/NetBSD/bmake/dist/make.h ============================================================================== --- vendor/NetBSD/bmake/dist/make.h Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/make.h Sun Jan 26 07:40:17 2014 (r261182) @@ -518,4 +518,8 @@ int str2Lst_Append(Lst, char *, const ch #define MAX(a, b) ((a > b) ? a : b) #endif +#ifndef MAXPATHLEN +#define MAXPATHLEN BMAKE_PATH_MAX +#endif + #endif /* _MAKE_H_ */ Modified: vendor/NetBSD/bmake/dist/meta.c ============================================================================== --- vendor/NetBSD/bmake/dist/meta.c Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/meta.c Sun Jan 26 07:40:17 2014 (r261182) @@ -1,4 +1,4 @@ -/* $NetBSD: meta.c,v 1.32 2013/06/25 00:20:54 sjg Exp $ */ +/* $NetBSD: meta.c,v 1.33 2013/10/01 05:37:17 sjg Exp $ */ /* * Implement 'meta' mode. @@ -860,6 +860,13 @@ string_match(const void *p, const void * continue; \ } +#define DEQUOTE(p) if (*p == '\'') { \ + char *ep; \ + p++; \ + if ((ep = strchr(p, '\''))) \ + *ep = '\0'; \ + } + Boolean meta_oodate(GNode *gn, Boolean oodate) { @@ -872,6 +879,8 @@ meta_oodate(GNode *gn, Boolean oodate) char fname2[MAXPATHLEN]; char *p; char *cp; + char *link_src; + char *move_target; static size_t cwdlen = 0; static size_t tmplen = 0; FILE *fp; @@ -938,6 +947,8 @@ meta_oodate(GNode *gn, Boolean oodate) oodate = TRUE; break; } + link_src = NULL; + move_target = NULL; /* Find the start of the build monitor section. */ if (!f) { if (strncmp(buf, "-- filemon", 10) == 0) { @@ -1051,16 +1062,21 @@ meta_oodate(GNode *gn, Boolean oodate) break; case 'M': /* renaMe */ - if (Lst_IsEmpty(missingFiles)) - break; + /* + * For 'M'oves we want to check + * the src as for 'R'ead + * and the target as for 'W'rite. + */ + cp = p; /* save this for a second */ + /* now get target */ + if (strsep(&p, " ") == NULL) + continue; + CHECK_VALID_META(p); + move_target = p; + p = cp; /* 'L' and 'M' put single quotes around the args */ - if (*p == '\'') { - char *ep; - - p++; - if ((ep = strchr(p, '\''))) - *ep = '\0'; - } + DEQUOTE(p); + DEQUOTE(move_target); /* FALLTHROUGH */ case 'D': /* unlink */ if (*p == '/' && !Lst_IsEmpty(missingFiles)) { @@ -1072,22 +1088,39 @@ meta_oodate(GNode *gn, Boolean oodate) ln = NULL; /* we're done with it */ } } + if (buf[0] == 'M') { + /* the target of the mv is a file 'W'ritten */ +#ifdef DEBUG_META_MODE + if (DEBUG(META)) + fprintf(debug_file, "meta_oodate: M %s -> %s\n", + p, move_target); +#endif + p = move_target; + goto check_write; + } break; case 'L': /* Link */ - /* we want the target */ + /* + * For 'L'inks check + * the src as for 'R'ead + * and the target as for 'W'rite. + */ + link_src = p; + /* now get target */ if (strsep(&p, " ") == NULL) continue; CHECK_VALID_META(p); /* 'L' and 'M' put single quotes around the args */ - if (*p == '\'') { - char *ep; - - p++; - if ((ep = strchr(p, '\''))) - *ep = '\0'; - } + DEQUOTE(p); + DEQUOTE(link_src); +#ifdef DEBUG_META_MODE + if (DEBUG(META)) + fprintf(debug_file, "meta_oodate: L %s -> %s\n", + link_src, p); +#endif /* FALLTHROUGH */ case 'W': /* Write */ + check_write: /* * If a file we generated within our bailiwick * but outside of .OBJDIR is missing, @@ -1119,6 +1152,14 @@ meta_oodate(GNode *gn, Boolean oodate) Lst_AtEnd(missingFiles, bmake_strdup(p)); } break; + check_link_src: + p = link_src; + link_src = NULL; +#ifdef DEBUG_META_MODE + if (DEBUG(META)) + fprintf(debug_file, "meta_oodate: L src %s\n", p); +#endif + /* FALLTHROUGH */ case 'R': /* Read */ case 'E': /* Exec */ /* @@ -1213,6 +1254,8 @@ meta_oodate(GNode *gn, Boolean oodate) default: break; } + if (!oodate && buf[0] == 'L' && link_src != NULL) + goto check_link_src; } else if (strcmp(buf, "CMD") == 0) { /* * Compare the current command with the one in the Modified: vendor/NetBSD/bmake/dist/mk/ChangeLog ============================================================================== --- vendor/NetBSD/bmake/dist/mk/ChangeLog Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/mk/ChangeLog Sun Jan 26 07:40:17 2014 (r261182) @@ -1,3 +1,22 @@ +2013-12-12 Simon J. Gerraty + + * install-mk (MK_VERSION): bump version + * meta2deps.py: convert to print function for python3 compat. + we also need to open files with mode 'r' rather than 'rb' + otherwise we get bytes instead of strings. + +2013-10-10 Simon J. Gerraty + + * install-mk (MK_VERSION): bump version + + * dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE + apply the same filtering (M_dep_qual_fixes) when setting _machines + as _build_dirs. + Also fix the filtering of Makefile.depend files - for reporting + what we are looking for (M_dep_qual_fixes can get confused by + Makefile.depend) + Add some more debug info. + 2013-09-04 Simon J. Gerraty * gendirdeps.mk (_objtops): fix typo also Modified: vendor/NetBSD/bmake/dist/mk/dirdeps.mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/dirdeps.mk Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/mk/dirdeps.mk Sun Jan 26 07:40:17 2014 (r261182) @@ -1,4 +1,4 @@ -# $Id: dirdeps.mk,v 1.28 2013/03/25 21:11:43 sjg Exp $ +# $Id: dirdeps.mk,v 1.29 2013/10/13 18:43:53 sjg Exp $ # Copyright (c) 2010-2013, Juniper Networks, Inc. # All rights reserved. @@ -149,11 +149,11 @@ DEP_$v ?= ${$v} JOT ?= jot _tspec_x := ${${JOT} ${TARGET_SPEC_VARS:[#]}:L:sh} # this handles unqualified entries -M_dep_qual_fixes = C;(/[^/.,]+)$$;\1.${DEP_TARGET_SPEC}; +M_dep_qual_fixes = C;(/[^/.,]+)$$;\1.$${DEP_TARGET_SPEC}; # there needs to be at least one item missing for these to make sense .for i in ${_tspec_x:[2..-1]} _tspec_m$i := ${TARGET_SPEC_VARS:[2..$i]:@w@[^,]+@:ts,} -_tspec_a$i := ,${TARGET_SPEC_VARS:[$i..-1]:@v@$${DEP_$v}@:ts,} +_tspec_a$i := ,${TARGET_SPEC_VARS:[$i..-1]:@v@$$$${DEP_$v}@:ts,} M_dep_qual_fixes += C;(\.${_tspec_m$i})$$;\1${_tspec_a$i}; .endfor .else @@ -359,7 +359,8 @@ _machines := ${_machines:O:u} .if ${TARGET_SPEC_VARS:[#]} > 1 # we need to tweak _machines _dm := ${DEP_MACHINE} -_machines := ${_machines:@DEP_MACHINE@${DEP_TARGET_SPEC}@} +# apply the same filtering that we do when qualifying DIRDEPS. +_machines := ${_machines:@DEP_MACHINE@${DEP_TARGET_SPEC}@:${M_dep_qual_fixes:ts:}:O:u} DEP_MACHINE := ${_dm} .endif @@ -464,6 +465,9 @@ ${_this_dir}.$m: ${_build_dirs:M*.$m:N${ .if ${_DIRDEP_CHECKED:M$d} == "" # once only _DIRDEP_CHECKED += $d +.if !empty(_debug_search) +.info checking $d +.endif # Note: _build_dirs is fully qualifed so d:R is always the directory .if exists(${d:R}) # Warning: there is an assumption here that MACHINE is always @@ -471,7 +475,8 @@ _DIRDEP_CHECKED += $d # If TARGET_SPEC and MACHINE are insufficient, you have a problem. _m := ${.MAKE.DEPENDFILE_PREFERENCE:T:S;${TARGET_SPEC}$;${d:E};:S;${MACHINE};${d:E:C/,.*//};:@m@${exists(${d:R}/$m):?${d:R}/$m:}@:[1]} .if !empty(_m) -_qm := ${_m:${M_dep_qual_fixes:ts:}} +# M_dep_qual_fixes isn't geared to Makefile.depend +_qm := ${_m:C;(\.depend)$;\1.${d:E};:${M_dep_qual_fixes:ts:}} .if !empty(_debug_search) .info Looking for ${_qm} .endif Modified: vendor/NetBSD/bmake/dist/mk/install-mk ============================================================================== --- vendor/NetBSD/bmake/dist/mk/install-mk Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/mk/install-mk Sun Jan 26 07:40:17 2014 (r261182) @@ -55,7 +55,7 @@ # Simon J. Gerraty # RCSid: -# $Id: install-mk,v 1.93 2013/08/02 18:28:47 sjg Exp $ +# $Id: install-mk,v 1.95 2013/12/20 06:08:52 sjg Exp $ # # @(#) Copyright (c) 1994 Simon J. Gerraty # @@ -70,7 +70,7 @@ # sjg@crufty.net # -MK_VERSION=20130801 +MK_VERSION=20131212 OWNER= GROUP= MODE=444 Modified: vendor/NetBSD/bmake/dist/mk/meta2deps.py ============================================================================== --- vendor/NetBSD/bmake/dist/mk/meta2deps.py Sun Jan 26 07:20:32 2014 (r261181) +++ vendor/NetBSD/bmake/dist/mk/meta2deps.py Sun Jan 26 07:40:17 2014 (r261182) @@ -1,5 +1,7 @@ #!/usr/bin/env python +from __future__ import print_function + """ This script parses each "meta" file and extracts the information needed to deduce build and src dependencies. @@ -35,7 +37,7 @@ We only pay attention to a subset of the """ RCSid: - $Id: meta2deps.py,v 1.15 2013/07/29 20:41:23 sjg Exp $ + $Id: meta2deps.py,v 1.16 2013/12/20 06:08:52 sjg Exp $ Copyright (c) 2011-2013, Juniper Networks, Inc. All rights reserved. @@ -90,14 +92,14 @@ def resolve(path, cwd, last_dir=None, de continue p = '/'.join([d,path]) if debug > 2: - print >> debug_out, "looking for:", p, + print("looking for:", p, end=' ', file=debug_out) if not os.path.exists(p): if debug > 2: - print >> debug_out, "nope" + print("nope", file=debug_out) p = None continue if debug > 2: - print >> debug_out, "found:", p + print("found:", p, file=debug_out) return p return None @@ -236,21 +238,21 @@ class MetaFile: self.objroots.sort(reverse=True) if self.debug: - print >> self.debug_out, "host_target=", self.host_target - print >> self.debug_out, "srctops=", self.srctops - print >> self.debug_out, "objroots=", self.objroots + print("host_target=", self.host_target, file=self.debug_out) + print("srctops=", self.srctops, file=self.debug_out) + print("objroots=", self.objroots, file=self.debug_out) self.dirdep_re = re.compile(r'([^/]+)/(.+)') if self.dpdeps and not self.reldir: if self.debug: - print >> self.debug_out, "need reldir:", + print("need reldir:", end=' ', file=self.debug_out) if self.curdir: srctop = self.find_top(self.curdir, self.srctops) if srctop: self.reldir = self.curdir.replace(srctop,'') if self.debug: - print >> self.debug_out, self.reldir + print(self.reldir, file=self.debug_out) if not self.reldir: self.dpdeps = None # we cannot do it? @@ -280,7 +282,7 @@ class MetaFile: if not self.reldir: return None for f in sort_unique(self.file_deps): - print >> out, 'DPDEPS_%s += %s' % (f, self.reldir) + print('DPDEPS_%s += %s' % (f, self.reldir), file=out) def seenit(self, dir): """rememer that we have seen dir.""" @@ -291,14 +293,14 @@ class MetaFile: if data not in list: list.append(data) if self.debug: - print >> self.debug_out, "%s: %sAdd: %s" % (self.name, clue, data) + print("%s: %sAdd: %s" % (self.name, clue, data), file=self.debug_out) def find_top(self, path, list): """the logical tree may be split accross multiple trees""" for top in list: if path.startswith(top): if self.debug > 2: - print >> self.debug_out, "found in", top + print("found in", top, file=self.debug_out) return top return None @@ -307,9 +309,9 @@ class MetaFile: ddep = None for ddepf in [path + '.dirdep', dir + '/.dirdep']: if not ddep and os.path.exists(ddepf): - ddep = open(ddepf, 'rb').readline().strip('# \n') + ddep = open(ddepf, 'r').readline().strip('# \n') if self.debug > 1: - print >> self.debug_out, "found %s: %s\n" % (ddepf, ddep) + print("found %s: %s\n" % (ddepf, ddep), file=self.debug_out) if ddep.endswith(self.machine): ddep = ddep[0:-(1+len(self.machine))] elif self.target_spec and ddep.endswith(self.target_spec): @@ -331,7 +333,7 @@ class MetaFile: if not (self.machine == 'host' and dmachine == self.host_target): if self.debug > 2: - print >> self.debug_out, "adding .%s to %s" % (dmachine, ddep) + print("adding .%s to %s" % (dmachine, ddep), file=self.debug_out) ddep += '.' + dmachine return ddep @@ -342,7 +344,7 @@ class MetaFile: self.parse(name, file) except: # give a useful clue - print >> sys.stderr, '{}:{}: '.format(self.name, self.line), + print('{}:{}: '.format(self.name, self.line), end=' ', file=sys.stderr) raise def parse(self, name=None, file=None): @@ -379,7 +381,7 @@ class MetaFile: f = file cwd = last_dir = self.cwd else: - f = open(self.name, 'rb') + f = open(self.name, 'r') skip = True pid_cwd = {} pid_last_dir = {} @@ -396,7 +398,7 @@ class MetaFile: if not line[0] in interesting: continue if self.debug > 2: - print >> self.debug_out, "input:", line, + print("input:", line, end=' ', file=self.debug_out) w = line.split() if skip: @@ -413,7 +415,7 @@ class MetaFile: self.cwd = cwd = last_dir = w[1] self.seenit(cwd) # ignore this if self.debug: - print >> self.debug_out, "%s: CWD=%s" % (self.name, cwd) + print("%s: CWD=%s" % (self.name, cwd), file=self.debug_out) continue pid = int(w[1]) @@ -438,12 +440,12 @@ class MetaFile: cwd = cwd[0:-2] last_dir = cwd if self.debug > 1: - print >> self.debug_out, "cwd=", cwd + print("cwd=", cwd, file=self.debug_out) continue if w[2] in self.seen: if self.debug > 2: - print >> self.debug_out, "seen:", w[2] + print("seen:", w[2], file=self.debug_out) continue # file operations if w[0] in 'ML': @@ -461,7 +463,7 @@ class MetaFile: dir,base = os.path.split(path) if dir in self.seen: if self.debug > 2: - print >> self.debug_out, "seen:", dir + print("seen:", dir, file=self.debug_out) continue # we can have a path in an objdir which is a link # to the src dir, we may need to add dependencies for each @@ -472,19 +474,19 @@ class MetaFile: # now put path back together path = '/'.join([dir,base]) if self.debug > 1: - print >> self.debug_out, "raw=%s rdir=%s dir=%s path=%s" % (w[2], rdir, dir, path) + print("raw=%s rdir=%s dir=%s path=%s" % (w[2], rdir, dir, path), file=self.debug_out) if w[0] in 'SRWL': if w[0] == 'W' and path.endswith('.dirdep'): continue if path in [last_dir, cwd, self.cwd, self.curdir]: if self.debug > 1: - print >> self.debug_out, "skipping:", path + print("skipping:", path, file=self.debug_out) continue if os.path.isdir(path): if w[0] in 'RW': last_dir = path; if self.debug > 1: - print >> self.debug_out, "ldir=", last_dir + print("ldir=", last_dir, file=self.debug_out) continue if w[0] in 'REWML': @@ -642,10 +644,10 @@ def main(argv, klass=MetaFile, xopts='', debug_out = getv(conf, 'debug_out', sys.stderr) if debug: - print >> debug_out, "config:" - print >> debug_out, "psyco=", have_psyco - for k,v in conf.items(): - print >> debug_out, "%s=%s" % (k,v) + print("config:", file=debug_out) + print("psyco=", have_psyco, file=debug_out) + for k,v in list(conf.items()): + print("%s=%s" % (k,v), file=debug_out) for a in args: if a.endswith('.meta'): @@ -657,9 +659,9 @@ def main(argv, klass=MetaFile, xopts='', m = klass(f, conf) if output: - print m.dirdeps() + print(m.dirdeps()) - print m.src_dirdeps('\nsrc:') + print(m.src_dirdeps('\nsrc:')) dpdeps = getv(conf, 'DPDEPS') *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 07:40:56 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C78D92B2; Sun, 26 Jan 2014 07:40:56 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9B3FA112E; Sun, 26 Jan 2014 07:40:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0Q7euEs012220; Sun, 26 Jan 2014 07:40:56 GMT (envelope-from sjg@svn.freebsd.org) Received: (from sjg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0Q7eusn012219; Sun, 26 Jan 2014 07:40:56 GMT (envelope-from sjg@svn.freebsd.org) Message-Id: <201401260740.s0Q7eusn012219@svn.freebsd.org> From: "Simon J. Gerraty" Date: Sun, 26 Jan 2014 07:40:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261183 - vendor/NetBSD/bmake/20140101 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 07:40:56 -0000 Author: sjg Date: Sun Jan 26 07:40:56 2014 New Revision: 261183 URL: http://svnweb.freebsd.org/changeset/base/261183 Log: Tag 20140101 Added: vendor/NetBSD/bmake/20140101/ - copied from r261182, vendor/NetBSD/bmake/dist/ From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 19:49:55 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 845F3B28; Sun, 26 Jan 2014 19:49:55 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6D17B149F; Sun, 26 Jan 2014 19:49:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QJntqO000654; Sun, 26 Jan 2014 19:49:55 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QJnsHg000650; Sun, 26 Jan 2014 19:49:54 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201401261949.s0QJnsHg000650@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Sun, 26 Jan 2014 19:49:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261188 - in stable/10/contrib: gcc gcc/cp gcc/doc gcclibs/include gcclibs/libiberty X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 19:49:55 -0000 Author: pfg Date: Sun Jan 26 19:49:54 2014 New Revision: 261188 URL: http://svnweb.freebsd.org/changeset/base/261188 Log: MFC r260311, r260831: gcc: Add support for Apple's Block extension Block objects [1] are a C-level syntactic and runtime feature. They are similar to standard C functions, but in addition to executable code they may also contain variable bindings to automatic (stack) or managed (heap) memory. A block can therefore maintain a set of state (data) that it can use to impact behavior when executed. This port is based on Apple's GCC 5646 with some bugfixes from Apple GCC 5666.3. It has some small differences with the support in clang, which remains the recommended compiler. Perhaps the most notable difference is that in GCC __block is not actually a keyword, but a macro. There may be workaround for this issue in the future. Other issues can be consulted in the clang documentation [2] For better compatiblity with Apple's GCC and llvm-gcc, some related fixes and features from Apple have been included. Support for the non-standard nested functions in GCC is now off by default. No effort was made to update the ObjC support since FreeBSD doesn't carry ObjC in the base system but some of the code crept in and was more difficult to remove than to adjust. References: [1] https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/Blocks/Articles/00_Introduction.html [2] http://clang.llvm.org/compatibility.html#block-variable-initialization Obtained from: Apple GCC 4.2 Modified: stable/10/contrib/gcc/ChangeLog.apple stable/10/contrib/gcc/attribs.c stable/10/contrib/gcc/c-common.c stable/10/contrib/gcc/c-common.h stable/10/contrib/gcc/c-convert.c stable/10/contrib/gcc/c-cppbuiltin.c stable/10/contrib/gcc/c-decl.c stable/10/contrib/gcc/c-objc-common.h stable/10/contrib/gcc/c-opts.c stable/10/contrib/gcc/c-parser.c stable/10/contrib/gcc/c-pretty-print.c stable/10/contrib/gcc/c-pretty-print.h stable/10/contrib/gcc/c-tree.h stable/10/contrib/gcc/c-typeck.c stable/10/contrib/gcc/c.opt stable/10/contrib/gcc/calls.c stable/10/contrib/gcc/cgraph.h stable/10/contrib/gcc/cgraphunit.c stable/10/contrib/gcc/convert.c stable/10/contrib/gcc/convert.h stable/10/contrib/gcc/cp/ChangeLog.apple stable/10/contrib/gcc/cp/call.c stable/10/contrib/gcc/cp/class.c stable/10/contrib/gcc/cp/cp-gimplify.c stable/10/contrib/gcc/cp/cp-objcp-common.c stable/10/contrib/gcc/cp/cp-objcp-common.h stable/10/contrib/gcc/cp/cp-tree.h stable/10/contrib/gcc/cp/decl.c stable/10/contrib/gcc/cp/decl.h stable/10/contrib/gcc/cp/decl2.c stable/10/contrib/gcc/cp/error.c stable/10/contrib/gcc/cp/init.c stable/10/contrib/gcc/cp/mangle.c stable/10/contrib/gcc/cp/name-lookup.c stable/10/contrib/gcc/cp/name-lookup.h stable/10/contrib/gcc/cp/parser.c stable/10/contrib/gcc/cp/pt.c stable/10/contrib/gcc/cp/semantics.c stable/10/contrib/gcc/cp/tree.c stable/10/contrib/gcc/cp/typeck.c stable/10/contrib/gcc/dbxout.c stable/10/contrib/gcc/doc/extend.texi stable/10/contrib/gcc/doc/invoke.texi stable/10/contrib/gcc/dwarf2.h stable/10/contrib/gcc/dwarf2out.c stable/10/contrib/gcc/expmed.c stable/10/contrib/gcc/expr.c stable/10/contrib/gcc/fold-const.c stable/10/contrib/gcc/function.c stable/10/contrib/gcc/function.h stable/10/contrib/gcc/ggc-common.c stable/10/contrib/gcc/ggc.h stable/10/contrib/gcc/langhooks-def.h stable/10/contrib/gcc/langhooks.c stable/10/contrib/gcc/langhooks.h stable/10/contrib/gcc/stor-layout.c stable/10/contrib/gcc/stub-objc.c stable/10/contrib/gcc/targhooks.c stable/10/contrib/gcc/toplev.c stable/10/contrib/gcc/tree-gimple.h stable/10/contrib/gcc/tree-nested.c stable/10/contrib/gcc/tree.c stable/10/contrib/gcc/tree.def stable/10/contrib/gcc/tree.h stable/10/contrib/gcc/varasm.c stable/10/contrib/gcclibs/include/libiberty.h stable/10/contrib/gcclibs/libiberty/physmem.c Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/gcc/ChangeLog.apple ============================================================================== --- stable/10/contrib/gcc/ChangeLog.apple Sun Jan 26 12:45:55 2014 (r261187) +++ stable/10/contrib/gcc/ChangeLog.apple Sun Jan 26 19:49:54 2014 (r261188) @@ -1,8 +1,908 @@ -006-02-15 Fariborz Jahanian +2010-03-16 Fariborz Jahanian + + Radar 7760213 + * c-common.h (HasByrefArray): New decl. + * c-common.c (HasByrefArray): New definition. + * c-typeck.c (build_external_ref): Diagnose access of + __block array. + +2010-03-12 Jim Grosbach + + Radar 7744816 + + * expmed.c (synth_mult): Remove incorrect special case handling for + 0xffffffff. + +2010-03-12 Fariborz Jahanian + + Radar 7735196 + * c-parser.c (build_block_struct_initlist): + Set BLOCK_USE_STRET flag in block descriptor for + blocks which return their aggregate value in memory. + * c-common.h (BLOCK_USE_STRET): New flag. + +2010-03-05 Fariborz Jahanian + + Radar 7721728 + * c-typeck.c (build_external_ref): Diagnose + importation of copied-in variables. + +2009-03-12 Caroline Tice + + Radar 6144634 + * c-parser.c (c_parser_statement_after_labels): When + re-setting the expression location at the end, use the input + location for Block pointer assignments. + +2009-02-11 Fariborz Jahanian + + Radar 6573923 + * c-decl.c (synth_block_byref_id_object_copy_func, + synth_block_byref_id_object_dispose_func): Set BLOCK_BYREF_CALLER + flag in call to copy/dispose helper functions. + * c-common.h (BLOCK_BYREF_CALLER): New flag. + +2008-12-21 Caroline Tice + + Radar 6455678 + * cp/typeck.c (original_type): Stop if the type + and its DECL_ORIGINAL_TYPE are the same. + +2008-12-18 Bill Wendling + + Radar 6457359 + * c-parser.c (build_block_struct_initlist): Changed type. + * cp/parser.c (build_block_struct_initlist): Ditto. + +2008-12-02 Caroline Tice + + Radar 6386976 + * objcp/objcp-decl.h (TYPE_HAS_OBJCXX_INFO): New macro. + * objcp/objcp-lang.c (objcp-decl.h): New include statement, with + required define. + (LANG_HOOKS_IS_RUNTIME_SPECIFIC_TYPE): Redefine for + obj-c++. + (objcxx_is_runtime_type): New function. + +2008-12-02 Fariborz Jahanian + + Radar 6411649 + * funciton.h: Added new field. + * c-common.c (build_block_helper_name): Produce a unique + block number per each enclosing function when building + the block helper function name. + +2008-11-18 Stuart Hastings + + Radar 6353006 + * tree.c (generic_block_literal_struct_type): Fix APPLE LOCAL. + * langhooks-def.h (lhd_build_generic_block_struct_type): Fix + APPLE LOCAL. + +2008-11-07 Fariborz Jahanian + + Radar 5847976 + * c-decl.c (synth_block_byref_id_object_copy_func): Takes a new + 'flag' argument and generates the much simplified API. + (synth_block_byref_id_object_dispose_func): Ditto. + (new_block_byref_decl): Hack to prevent issuing bogus warning + on a field declared as __weak. + (init_byref_decl): Takes an additional 'flag' argument + and passes it down to synth_block_byref_id_object_copy_func and + synth_block_byref_id_object_dispose_func. + (finish_decl): Computes the flag for the block variable declaration. + * c-common.c (build_block_byref_release_decl, + build_block_byref_assign_copy_decl): Removed. + (build_block_byref_release_exp): Use the new API. + (build_block_object_assign_decl, build_block_object_assign_call_exp, + build_block_object_dispose_decl, build_block_object_dispose_call_exp): New. + (build_indirect_object_id_exp): Fixed a code gen bug which was exposed in + c/c++ mode, but not in ObjC/ObjC++ mode. + * c-common.h (build_block_object_assign_call_exp, + build_block_object_dispose_call_exp, + objc_is_gcable_type): New decls. + Declaration of several new flags. + (cast_to_pointer_to_id): Removed. + * stub-objc.c (objc_is_gcable_type): New + (copy_in_object, retain_block_component, release_block_component): Removed. + (cast_to_pointer_to_id): Removed. + * c-parser.c (build_block_struct_initlist): Remove call to copy_in_object. + (synth_copy_helper_block_func): Generates much simplified API. + (synth_destroy_helper_block_func): Ditto. + (block_object_dispose): Removed. + * config/darwin-c.c (darwin_cpp_builtins): Define __weak even when + -fobjc-gc is off. + +2008-10-31 Fariborz Jahanian + + Radar 6175959 + * stub-objc.c (block_requires_copying): Object pointers with + NSObject attribute also require copy/release API. + * c-parser.c (synth_copy_helper_block_func): Use the new API + _Block_object_assign for ObjC object copying. + (block_object_dispose): New + (synth_destroy_helper_block_func): Call block_object_dispose + to use new _Block_object_dispose API for ObjC object release. + +2008-10-27 Fariborz Jahanian + + Radar 6231433 + * c-typeck.c (objc_compare_types, objc_have_common_type): + Take an extra argument for better diagnostics. + * c-common.c (objc_compare_types, objc_have_common_type): + Take extra argument. + * stub-objc.c: Ditto + +2008-10-24 Fariborz Jahanian + + Radar 6305545 + * cgraph.h (lower_if_nested_functions): New decl. + * tree-gimple.h (lower_nested_functions): Takes one more arg. + * cgraphunit.c (lower_if_nested_functions): New + * tree-nested.c (lower_nested_functions): Skip structors. + +2008-10-24 Fariborz Jahanian + + Radar 5847213 (minor tweak) + * c-decl.c (build_block_descriptor_type): + Make descriptor_ptr_type and descriptor_ptr_type_with_copydispose + visible to pch. + +2008-10-23 Caroline Tice + + Radar 6300081 + * tree.c(build_block_pointer_type): Add call to + build_generic_block_struct_type to initialize + generic_block_literal_struct_type if necessary. + * cp/parser.c (build_generic_block_struct_type): Update comments. + (build_block_struct_type): Remove call to + build_generic_block_struct_type. + (make_block_pointer_declarator): Likewise. + * c-decl.c (make_block_pointer_declarator): Likewise. + * c-parser.c (build_block_struct_type): Likewise. + (build_generic_block_struct_type): Update comments. + +2008-10-22 Caroline Tice + + Radar 6300081 & Radar 6163705 + * tree.h (generic_block_literal_struct_type): Extern global variable + decl. + (build_generic_block_struct_type): New extern function decl. + * cp/parser (build_generic_block_struct_type): New function. + (build_block_struct_type): Call build_generic_block_struct_type + to initialize generic_block_literal_struct_type. + (make_block_pointer_declarator): Likewise. + (declare_block_prologue_local_vars): Temporarily set input_location + to 1 before the start of the block function; re-set input_location at + the end of this function. + * dwarf2out.c (add_type_attribute): If the type is a + BLOCK_POINTER_TYPE, assign it to be a pointer to a + generic_block_literal_struct_type. + * c-decl.c (make_block_pointer_declarator): Call + build_generic_block_struct_type to initialize + generic_block_literal_struct_type. + * c-common.c (generic_block_literal_struct_type): New global variable. + * c-parser.c (build_generic_block_struct_type): New function. + (build_block_struct_type): Call build_generic_block_struct_type + to initialize generic_block_literal_struct_type. + * testsuite/gcc.apple/block-debug-1.c: Fix test to work with new + compiler modifications. + * testsuite/gcc.apple/block-debug-2.c: Likewise. + * testsuite/g++.apple/block-debug-1.C: Likewise. + * testsuite/g++.apple/block-debug-2.C: Likewise. + +2008-10-10 Fariborz Jahanian + + Radar 5847213 - New Block ABI + * dwarf2out.c (add_type_attribute): Unusuable code + for radar 5811943 is removed. + * c-decl.c (build_block_byref_decl): Removed unneeded + build of block_original_byref_decl_list. + (build_block_internal_types): Removed. + (build_block_descriptor_type): New routine to build the descriptor type. + (make_block_pointer_declarator): Unused code is removed. + * c-typeck.c (build_block_call): New code gen for block calls. + * c-common.c (invoke_impl_ptr_type): Removed. + * c-common.h (block_original_byref_decl_list, build_block_internal_types): Removed + (build_block_descriptor_type, BLOCK_HAS_DESCRIPTOR): Decls added. + * c-parser.c (build_block_struct_type): Block literal expression internal type + is redeclared into its new layout. + (build_block_struct_initlist): Initializer list for above type is redone. + (build_descriptor_block_decl): New routine to declare the descriptor variable + (build_block_literal_tmp): Modified for the new type and initiazation. + +2008-10-06 Fariborz Jahanian + + Radar 6268817 + * c-decl.c (check_for_loop_decls): Block helper function + is OK if declared in a for-loop main statement block. + +2008-10-02 Fariborz Jahanian + + Radar 6246527 + * attribs.c (decl_attributes): Added support for adding attributes + on block pointer variable declarations. + * c-common.c (block_delta_format_args): Add + (any_recognized_block_attribute): Add + * c-common.h (any_recognized_block_attribute): New decl. + * c-parser.c (c_parser_block_literal_expr): Call to do the delta + on printf attribute. + +2008-09-30 Fariborz Jahanian + + Radar 6225809 + * c-decl.c (build_block_byref_decl): Add __block vaiables + to intervening blocks. + +2008-09-25 Fariborz Jahanian + + Radar 6237713 + * c-common.c (handle_noreturn_attribute): Add 'noreturn' + attribute to block pointer decls. + * c-parser.c (c_parser_block_literal_expr): Parse and set + attributes on block literals. + +2008-09-25 Fariborz Jahanian + + Radar 6244520 - minor addition + * c-common.c (build_indirect_object_id_exp): offset needs + be updated to accomodate addition of the new field. + +2008-09-16 Fariborz Jahanian + + Radar 6214617 + * c-common: New flag BLOCK_HAS_CXX_OBJ replaces BLOCK_NO_COPY. + (BlockImportsCxxObjects): New field replaces BlockHasByrefVar. + * c-parser.c (build_block_struct_type): Remove setting of + BLOCK_NO_COPY flag. + +2008-09-16 Fariborz Jahanian + + Radar 6217257 + * c-common.c (handle_blocks_attribute): Diagnose + vla __block declarations. + +2008-09-12 Fariborz Jahanian + + Radar 6212722 (tweak) + * c-decl.c (build_block_ref_decl): Use array_to_pointer_conversion + and function_to_pointer_conversion. + * c-typeck.c (array_to_pointer_conversion, function_to_pointer_conversion): + Made them global. + * c-common.h (array_to_pointer_conversion, function_to_pointer_conversion): + Declare. + +2008-09-09 Fariborz Jahanian + + Radar 6169580 + * c-commmon.c (build_block_helper_name): Fix bug in + block helper function name mangling. + +2008-09-03 Fariborz Jahanian + + Radar 6185344 + * c-typeck.c (c_finish_return): Don't do block specific + stuff when block has a return type. + * c-common.h (block_sema_info): block_has_return_type is + a new field. + * c-parser.c (c_parser_direct_declarator): Terminate type + parsing for block return types. + (c_parser_block_literal_expr): Added support to parse and + handle explicit return type for blocks. + +2008-08-28 Fariborz Jahanian + + Radar 6160536 + * c-commmon.c (build_block_helper_name): New + * c-common.h (build_block_helper_name): New decl. + * c-parser.c (c_parser_block_literal_expr): Call + build_block_helper_name to build pretty helper function + name. + +2008-08-28 Fariborz Jahanian + + Radar 6180456 + * c-decl.c (synth_block_byref_id_object_copy_func): Different + API for copying __block declared objects in c. + (synth_block_byref_id_object_dispose_func): Different API + for releasing __block declared objects in c. + * c-common.c (block_byref_assign_copy_decl): New + (build_indirect_object_id_exp): Cast to 'id *' in objective-c + mode only. + * c-common.h (build_block_byref_assign_copy_decl): New decl. + * c-parser.c (synth_copy_helper_block_func): Refactored code + to call build_block_byref_assign_copy_decl(). + +2008-08-24 Caroline Tice + + Radars 6144664, 6145471, 6144634 + c-decl.c (build_block_byref_decl): Assign the source + location for each byref decl to the source location of + the helper function decl. + (build_block_ref_decl): Ditto for ref decls. + +2008-08-14 Fariborz Jahanian + + Radar 5822844 + * c-typeck.c (digest_init): Handler block as initializer. + (c_finish_return): check for completed block before + analyzing block's return expression. + * varasm.c (output_constant): Allow outputting block data. + * c-common.h (BLOCK_IS_GLOBAL): New flag. + (block_is_complete): New field in block data structure. + * c-parser.c (build_block_struct_initlist): New initializer and + flag for global block data. + (build_block_literal_tmp): Temporary data for global block is + declared as global static. + (c_parser_block_literal_expr): Removed diagnostics for global blocks. + Moved fixing helper function type earlier before its tree is built. + +2008-08-06 Fariborz Jahanian + + Radar 6014138 + * c-decl.c (build_block_byref_decl): In the presence of nested "{" + move up the scope chain until reaching the main function body's scope. + +2008-08-04 Fariborz Jahanian + + Radar 6040305 - work in progress. + * c-decl.c (build_indirect_object_id_exp): Removed. + * c-common.c (build_indirect_object_id_exp): Added + * c-common.h (build_indirect_object_id_exp): New decl. + * config/darwin-c.c (darwin_cpp_builtins): Define __byref + in c++ mode as well. + +2008-07-18 Fariborz Jahanian + + Radar 6083129 - twiked + * c-decl.c (release_all_local_byrefs_at_return): Do not release + imported __byref variables in the block. + * c-parser.c (gen_block_byref_release_exp): Do not release __byref + variables outside of the block when returning from the block. + +2008-07-15 Fariborz Jahanian + + Radar 5988451 + * c-decl.c (build_block_ref_decl): Insert copied in variable + in each enclosing block which does not use it. + (begin_block): Remove setting of "the_scope" field of the block. + (in_imm_block): Fix effect of changing the "the_scope" field. + (lookup_name_in_block): Do not skip over copied-in variables when + looking up a variable in the block. + * c-parser.c (c_parser_block_literal_expr): Set block's "the_scope" field + to the helper function's outer-most body scope. + +2008-07-08 Fariborz Jahanian + + Radar 6048570 + * c-typeck.c (c_finish_return): Error on returning a block on the stack. + +2008-06-05 Fariborz Jahanian + + Radar 5988995 + * c-typeck.c (types_are_closure_compatible): Nested block pointer + types must be considered when matching block types. + +2008-06-05 Fariborz Jahanian + + Radar 5982990 + * c-parser.c (c_parser_objc_synch_compound_statement): New + (c_parser_objc_synchronized_statement): Call + c_parser_objc_synch_compound_statement. + +2008-06-04 Fariborz Jahanian + + Radar 5985368 + * c-parser.c (c_parser_declaration_or_fndef): Better diagnostics for + a bad block definition. + +2008-05-23 Fariborz Jahanian + + Radar 5925781 + * c-common.c (handle_nonnull_attribute): Support block pointer + just like a pointer for nonnull attribute. + (check_nonnull_arg): Ditto. + +2008-05-20 Fariborz Jahanian + + Radar 5932809 - minor change for runtime delight. + * c-parser.c (build_closure_struct_type): Add strcutor fields + for __byref 'id' object blocks as well. + (build_closure_struct_initlist): And their initializers. + +2008-04-30 Caroline Tice + + Radar 5811961 + * c-decl.c: (declare_closure_prologue_local_vars): Set the source + location for the new decl expr statement to be the source location of + the decl tree. + +2008-04-25 Fariborz Jahanian + + Radar 5803005 (tweaked) + * c-typeck.c (build_external_ref): Refactored global decl checks. + +2008-04-24 Caroline Tice + + Radar 5811943 + * tree.h (TYPE_CLOSURE_IMPL_STRUCT): New macro. + (lang_flag_2): Use previously unused field in tree_type to indicate + closure structs. + * dwarf2out.c (c-common.h): New include statement. + (dwarf_attr_name): Add case for DW_AT_APPLE_closure. + (gen_variable_die): Give pointers to closures the + invoke_impl_ptr_type. + (gen_struct_or_union_type_die): Add DW_AT_APPLE_closure + to structs that define closures. + * dwarf2.h (DW_AT_APPLE_closure): New Dwarf attribute. + * c-typeck.c (invoke_impl_ptr_type): Move declaration from here to + c-common.c + (build_closure_internal_types): Set TYPE_CLOSURE_IMPL_STRUCT + flag for closure structs. + * c-common.c (invoke_impl_ptr_type): Move declaration to here from + c-typeck.c. + +2008-04-23 Fariborz Jahanian + + Radar 5882266 + * c-typeck.c (types_are_closure_compatible): Check for underlying + pointer types as well. + +2008-04-15 Stuart Hastings + + Radar 5862465 + * tree.h (PTR_OR_REF_CHECK, POINTER_TYPE_P): Add + CLOSURE_POINTER_TYPE. + * fold-const.c (fold_convert): Add CLOSURE_POINTER_TYPE. + * testsuite/gcc.apple/closure-5862465.c: New. + +2008-03-31 Fariborz Jahanian + + Radar 5831855 + * c-typeck.c (convert_for_assignment): Block and 'id' types + are interchangeable. + +2008-03-28 Fariborz Jahanian + + Radar 5809099 + * convert.c (convert_to_pointer): Allow typecast of closure + pointer to 'id'. + (convert_to_closure_pointer): Allow typecast of 'id' + of a closure pointer expression. + +2008-03-25 Fariborz Jahanian + + Radar 5811887 (minor change) + * c-opts.c (c_common_post_options): Remove conditional check + of pedantic when setting flag_blocks. + +2008-03-24 Fariborz Jahanian + + Radar 5811887 + * c-cppbuiltin.c: flag_closures renamed to flag_blocks + * c-parser.c: Ditto. + * c.opt: flag_closures renamed to flag_blocks. flag_blocks + defaulted to -1. + * c-opts.c (c_common_post_options): All flavors of c99, blocks are off by + default unless requested via -fblocks. + +2008-03-24 Fariborz Jahanian + + Radar 5814025 + * c-tree.h (make_closure_pointer_declarator): Takes + additional argument. + * c-decl.c (grokdeclarator): Get 'const'-ness of closure + pointer. + (make_closure_pointer_declarator): Takes additional argument for + const/volatile. + * c-parser.c (c_parser_declarator): Pass down attribute info. + to make_closure_pointer_declarator. + +2008-03-20 Fariborz Jahanian + + Radar 5802025 + * c-common.h (objc_build_property_getter_func_call): New decl. + * stub-objc.c (objc_build_property_getter_func_call): New stub. + +2008-03-18 Fariborz Jahanian + + Radar 5803600 + * c-decl.c (add_closure_global_byref_list, + in_closure_global_byref_list): New defs. + * c-common.h (add_closure_global_byref_list, + in_closure_global_byref_list): New decls. + * c-typeck.c (build_external_ref): global variables + declared as 'byref' are enterred in their own list + of such declarations per each closure. + * c-parser.c (c_parser_postfix_expression): Remove previous fix. + (c_parser_closure_byref_declaration): Check for global + 'byref' by calling in_closure_global_byref_list. + +2008-03-13 Fariborz Jahanian + + Radar 5795493 + * c-typeck.c: Renamed typesAreClosureCompatible to + types_are_closure_compatible. + +2008-03-11 Fariborz Jahanian + + Radar 5732232 (Related to change of command option/macro) + * c-cppbuiltin.c: __CLOSURES__ macro rename __BLOCKS__ + * c.opt: -fclosures change to -fblocks. + +2008-03-10 Fariborz Jahanian + + Radar 5782740 - part 2 (bug fix). + * c-parser.c (synth_copy_helper_closure, + synth_destroy_helper_closure): set DECL_ARG_TYPE field of input + arguments for the two synthesized helper functions. + +2008-02-21 Caroline Tice + + Radar 5741070 + * objc/objc-act.c (objc_finish_message_expr): Find + the record-type tree from the class interface, and mark the record + type as used, for emitting debug info. + * cp/cp-objcp-common.c (c_return_interface_record_type): New function. + * cp/cp-tree.h (c_return_interface_record_type): New extern function + declaration. + * c-tree.h (c_return_interface_record_type): Likewise + * c-decl.c (c_return_interface_record_type): New function. + +2007-08-22 Fariborz Jahanian + + Radar 4947311 + * c-common.h (objc_declare_protocols, objc_start_protocol): Decl changed. + * stub-objc.c (objc_declare_protocols, objc_start_protocol): Changed. + * c-parser.c (c_parser_external_declaration): Call to + c_parser_objc_protocol_definition takes additional argument. + (c_parser_declaration_or_fndef): Protocols with attributes are processed + here by passing it to c_parser_objc_protocol_definition. + (c_parser_objc_protocol_definition): Takes additional argument and passes + it to objc_declare_protocols or objc_start_protocol. + +2007-07-13 Fariborz Jahanian + + Radar 5277239 + * c-parser.c (c_parser_next_token_starts_declspecs): Exclude + objc2's property dot-syntax as a declarator. + (c_parser_postfix_expression): Convert property dot-syntax on + class objects into a property reference expression. + +2007-07-10 Fariborz Jahanian + + Radar 5285911 + * tree.h (CALL_EXPR_OBJC_PROPERTY_GETTER): Macro removed. + * c-typeck.c (build_component_ref): Call + objc_build_property_reference_expr instead of objc_build_getter_call. + (build_modify_expr): Call objc_property_reference_expr instead of + objc_property_call. + * c-common.h (objc_build_getter_call, objc_property_call): Decl removed. + (objc_build_property_reference_expr, objc_property_reference_expr): Decl. + added. + * stub-objc.c (objc_build_getter_call, objc_property_call): Stub removed. + (objc_build_property_reference_expr, objc_property_reference_expr): + Stub added. + +2007-06-29 Fariborz Jahanian + + Radar 5276085 + * c-parser.c (c_parser_binary_expression) : objc_generate_weak_read + replaced with call to objc_build_weak_reference_tree + * c-typeck.c (build_modify_expr, c_objc_common_truthvalue_conversion): + objc_remove_weak_read replaced with call to objc_weak_reference_expr. + * c-common.h (objc_weak_reference_expr, + objc_build_weak_reference_tree) : New decl. + (objc_generate_weak_read, objc_remove_weak_read): remove. + * stub-objc.c (objc_weak_reference_expr, + objc_build_weak_reference_tree): New stub. + (objc_generate_weak_read, objc_remove_weak_read): remove. + +2007-05-23 Fariborz Jahanian + + Radar 5195402 + * c-format.c (handle_format_arg_attribute): Check for NSString * + and CFStringRef as valid formatting types. + (check_format_string): Ditto. + * c-common.h (objc_check_format_nsstring, + objc_check_cfstringref_type): New decls. + * stub-objc.c (objc_check_nsstring_pointer_type): New stub. + * config/darwin-c.c (objc_check_cfstringref_type): New + (objc_check_format_cfstring): Call objc_check_cfstringref_type + for valid CFStringRef argument type. + * config/darwin-protos.h (objc_check_cfstringref_type): New decl. + * config/darwin.h (CFSTRING_TYPE_CHECK): New macro. + +2007-05-18 Fariborz Jahanian + + Radar 5202926 + * c-common.h (objc_anonymous_local_objc_name): New decl. + * config/darwin-protos.h (objc_anonymous_local_objc_name): Decl. + * stub-objc.c (objc_anonymous_local_objc_name): New stub. + * config/darwin.h (ASM_OUTPUT_LABELREF) Call + objc_anonymous_local_objc_name. + +2007-05-07 Fariborz Jahanian + + Radar 4157812 + * c-common.h (objc_build_keyword_decl): Takes a new argument. + * stub-objc.c (objc_build_keyword_decl): Ditto. + * c-parser.c (c_parser_objc_method_decl): Recognize optional + method's argument attribute. + (c_parser_objc_method_decl): Handle errornous selector. + +2007-05-02 Fariborz Jahanian + + Radar 4502186 + * c-typeck.c (convert_for_assignment): Remove synthesized 'volatile' + type before doing type comparison. + +2007-03-29 Fariborz Jahanian + + Radar 4564694 + * c-parse.c (c_parser_objc_class_instance_variables): Add @package + support to syntax. + * c-common.h (RID_AT_PACKAGE): Add + +2007-03-29 Fariborz Jahanian + + Radar 4947014 - objc atomic property + * c-common.h (RID_NONATOMIC): Add + * c-parse.c (c_parser_objc_property_attribute) : Recognize 'nonatomic' + as new property. + +2007-03-23 Fariborz Jahanian + + Radar 4985544 + * c-format.c (enum format_type): New entry for NSString format. + (format_typ): Has a new entry for NSString format. + (decode_format_attr): Error on use of NSString format on a + non-objective-c program. + (objc_check_nsformat_arg): New. + (check_format_info): Call back for NSString is objc_check_nsformat_arg + (handle_format_attribute): Use objc_check_format_nsstring for + NSString format. + * c-common.h (objc_NSString_format): New decl. + (objc_check_format_nsstring): New decl. + * stub-objc.c (objc_NSString_format, objc_check_format_nsstring): New + stubs. + * config/darwin-protos.h (darwin_cfstring_type_node): New decl. + * config/darwin.c (darwin_cfstring_type_node): New + * config/darwin.h (TARGET_CFSTRING_P): New macro + +2007-03-23 Fariborz Jahanian + + Radar 4985544 + * c-format.c (enum format_type): New entry for NSString format. + (format_typ): Has a new entry for NSString format. + (decode_format_attr): Error on use of NSString format on a + non-objective-c program. + (objc_check_nsformat_arg): New. + (check_format_info): Call back for NSString is objc_check_nsformat_arg + (handle_format_attribute): Use objc_check_format_nsstring for + NSString format. + * c-common.h (objc_NSString_format): New decl. + (objc_check_format_nsstring): New decl. + * stub-objc.c (objc_NSString_format, objc_check_format_nsstring): New + stubs. + * config/darwin-protos.h (darwin_cfstring_type_node): New decl. + * config/darwin.c (darwin_cfstring_type_node): New + * config/darwin.h (TARGET_CFSTRING_P): New macro + +2007-03-22 Fariborz Jahanian + + Radar 4965989 + * c-parser.c (c_parser_objc_class_definition): Add supprt for anonymous + category syntax. + +2007-03-21 Fariborz Jahanian + + Radar 2848255 + * c-parser.c (c_parser_objc_try_catch_statement): Parse @catch(...). + * c.opt: Add -fobjc-zerocost-exceptions option. + * c-opts.c (c_common_post_options): Set the flags for + -fobjc-zerocost-exceptions. + * c-common.h: Add some declarations. + * stub-objc.c (objc2_valid_objc_catch_type, objc2_build_throw_call): + New stubs. + * config/darwin.h (OBJC_FLAG_OBJC_ABI): Check for proper + use of -fobjc-zerocost-exceptions option. + +2006-11-06 Fariborz Jahanian + + Radar 4781080 (part 2) + * targhooks.c (default_objc_fpreturn_msgcall): Takes 2nd argument. + * targhooks.h (default_objc_fpreturn_msgcall): Changed Decl. + * target.h (objc_fpreturn_msgcall): Changed Decl. + * config/i386/i386.h (OBJC_FPRETURN_MSGCALL): Changed Decl. + * config/i386/i386-protos.h (ix86_objc_fpreturn_msgcall): Changed Decl. + * config/i386/i386.c (ix86_objc_fpreturn_msgcall): Changed definition. +2006-09-15 Fariborz Jahanian + + Radar 4727659 + * c-common.c (handle_noreturn_attribute): Handle method_decl + nodes as well. + +2006-09-01 Fariborz Jahanian + + Radar 4712269 + * c-common.h (objc_build_incr_decr_setter_call): New decl. + * stub-objc.c (objc_build_incr_decr_setter_call): New stub. + * c-typeck.c (build_unary_op): Call objc_build_incr_decr_setter_call + for potential ince/decr pre/post expressions involving properties. + +2006-08-31 Fariborz Jahanian + + Radar 4697411 + * c-common.h (objc_volatilize_component_ref): New decl. + * c-typeck.c (build_component_ref): Call objc_volatilize_component_ref. + * stub-objc.c (objc_volatilize_component_ref): New stub. + +2006-07-18 Fariborz Jahanian + + Radar 4592503 + * c-decl.c (finish_struct): Check on illegal use of __weak + on struct fields. + * decl.c (start_decl): Check on illegal use of __weak on + variable declarations. + * stub-objc.c (objc_checkon_weak_attribute): New stub. + * c-common.h (objc_checkon_weak_attribute): New decl. + +2006-06-26 Fariborz Jahanian + + Radar 4591909 + * c-parse.in: New/modified grammar for new attributes in + properties. + (yylexname): Change to recognize new attribute terminals. + * c-common.h (RID_DYNAMIC): New enum declaration. + +2006-07-14 Fariborz Jahanian + + Radar 4621020 + * c-parse.in: Added 'weak' attribute keyword for @property. + * c-common.h: 'weak' related declarations. + +2006-05-18 Fariborz Jahanian + + Radar 4548636 (objc attributes on class) + * c-parse.in: Add attribute non-terminal before + AT_INTERFACE. + * c-common.h (objc_start_class_interface): New argument added. + * stub-objc.c (objc_start_class_interface): Ditto. + +2006-05-16 Fariborz Jahanian + + Radar 4547045 + * c-gimplify.c (obj_reuse_bc_block): Removed. + (objc_pop_label, objc_push_label): New. + (gimplify_c_loop): Fix up foreach's innerloop break label. + +2006-04-26 Fariborz Jahanian + + Radar 3803157 (method attributes) + * c-parse.in: Add grammar support for declaring + attribute for objc methods. + * c-common.c (handle_deprecated_attribute): Recognize + objc methods as valid declarations. + (handle_unavailable_attribute): Ditto. + * c-common.h: Bunch of new extern declarations. + * stub-objc.c (objc_add_method_declaration, objc_start_method_definition): + Added new argument. + (objc_method_decl): New stub. + +2006-04-12 Fariborz Jahanian + + Radar 4507230 + * c-common.h (objc_type_valid_for_messaging): Declare. + * stub-objc.c (objc_type_valid_for_messaging): New stub. + +2006-04-06 Fariborz Jahanian + + Radar 4436866 + (Missing copies attribute) + * c-parse.in: Add grammer for 'copies' attribute. + * c-common.h (RID_COPIES): New enumerator. + +2006-03-27 Fariborz Jahanian + + Radar 4133425 + * c-common.h (objc_diagnose_private_ivar): New decl. + * stub-objc.c (objc_diagnose_private_ivar): New stub. + * c-decl.c (undeclared_variable): Issue disnostic on + private 'ivar' access. + +2006-03-27 Fariborz Jahanian + + Radar 4491608 + * c-typeck.c (convert_arguments): function name must come from 'selector' + when diagnosing 'too many arguments'. + +2006-03-23 Fariborz Jahanian + + Radar 4193359 + * c-typeck.c (convert_for_assignment): Remove Objective-C EH machinery + 'volatile' qualifier before doing type comparison. + +2006-02-28 Fariborz Jahanian + + Radar 4441049 + * c-common.h (objc_v2_bitfield_ivar_bitpos): New decl. + * expr.h (objc_v2_bitfield_ivar_bitpos): New decl. + * stub-objc.c (objc_v2_bitfield_ivar_bitpos): New stub. + * expr.c (get_inner_reference): Compute ivar's bitfield bit offset. + +2006-02-15 Fariborz Jahanian Radar 4445586 * c-common.def (DO_STMT): Takes an extra argument. +2006-02-02 Fariborz Jahanian + + Radar 4426814 + * c-parse.in (cast_expr): generate objc_read_weak call on + each __weak object in the expession. + * c-typeck.c (build_modify_expr): Undo the call to objc_read_weak + on LHS expression. + * c-objc-common.c (c_objc_common_truthvalue_conversion): Generate + objc_read_weak call before generating tree for !exp, etc. + * c-common.h (objc_generate_weak_read, objc_remove_weak_read): New decl. + * stub-objc.c (objc_generate_weak_read, objc_remove_weak_read): New stubs. + +2005-12-15 Fariborz Jahanian + + Radar 4229905 + * c-typeck.c (build_conditional_expr): Call objc_have_common_type when + looking for objective-c common pointer types. + * c-common.h objc_have_common_type): New declaration. + * stub-objc.c (objc_have_common_type): New stub. + +2005-12-05 Mike Stump + + Radar 4357979 + * doc/invoke.texi (C Dialect Options): Improve -fnested-functions wording. + * doc/extend.texi (Nested Functions): Note that on darwin nested + functions are off by default. + +2005-11-08 Fariborz Jahanian + + Radar 4330422 + + * c-common.h (objc_non_volatilized_type): New declaration + * stub-objc.c (objc_non_volatilized_type): New stub. + +2005-10-12 Fariborz Jahanian + + Radar 4291785 + + * c-common.h (objc_get_interface_ivars): New declaration + (objc_detect_field_duplicates): Ditto. + * c-decl.c (finish_struct): Check for duplicate among + flattened fields if objective-c. + * stub-objc.c (objc_get_interface_ivars): New stub. + (objc_detect_field_duplicates): Ditto. + +2005-09-28 Devang Patel + + Radar 4258406 + * c-parse.in (nested_function): Report an error, instead of a warning. + (nontype_nested_function): Same. + * c.opt (Wnested-funcs): Remove. + * doc/invoke.texi: Remove Wnested-funcs documentations. + +2005-08-03 Fariborz Jahanian + + Radar 4188876 + * c-typeck.c (pop_init_level): Issue diagnostic on non-constant + vector initializers. + +2005-06-22 Ziemowit Laski + + Radar 4154928 + * c-common.h (objc_common_type): New prototype. + * c-typeck.c (build_conditional_expr): For two ObjC pointer types, + use their ObjC common type. + * stub-objc.c (objc_common_type): New stub. + /* APPLE LOCAL merge marger */ /* Stuff under is in fsf mainline, but not in the 4.2 branch */ Modified: stable/10/contrib/gcc/attribs.c ============================================================================== --- stable/10/contrib/gcc/attribs.c Sun Jan 26 12:45:55 2014 (r261187) +++ stable/10/contrib/gcc/attribs.c Sun Jan 26 19:49:54 2014 (r261188) @@ -216,7 +216,8 @@ decl_attributes (tree *node, tree attrib if (spec->function_type_required && TREE_CODE (*anode) != FUNCTION_TYPE && TREE_CODE (*anode) != METHOD_TYPE) { - if (TREE_CODE (*anode) == POINTER_TYPE + /* APPLE LOCAL radar 6246527 */ + if ((TREE_CODE (*anode) == POINTER_TYPE || TREE_CODE (*anode) == BLOCK_POINTER_TYPE) && (TREE_CODE (TREE_TYPE (*anode)) == FUNCTION_TYPE || TREE_CODE (TREE_TYPE (*anode)) == METHOD_TYPE)) { @@ -323,6 +324,14 @@ decl_attributes (tree *node, tree attrib if (fn_ptr_tmp) { + /* APPLE LOCAL begin radar 6246527 */ + if (DECL_P (*node) && TREE_TYPE (*node) && + TREE_CODE (TREE_TYPE (*node)) == BLOCK_POINTER_TYPE) + /* Rebuild the block pointer type and put it in the + appropriate place. */ + fn_ptr_tmp = build_block_pointer_type (fn_ptr_tmp); + else + /* APPLE LOCAL end radar 6246527 */ /* Rebuild the function pointer type and put it in the appropriate place. */ fn_ptr_tmp = build_pointer_type (fn_ptr_tmp); Modified: stable/10/contrib/gcc/c-common.c ============================================================================== --- stable/10/contrib/gcc/c-common.c Sun Jan 26 12:45:55 2014 (r261187) +++ stable/10/contrib/gcc/c-common.c Sun Jan 26 19:49:54 2014 (r261188) @@ -552,6 +552,8 @@ static tree handle_cleanup_attribute (tr static tree handle_warn_unused_result_attribute (tree *, tree, tree, int, bool *); static tree handle_sentinel_attribute (tree *, tree, tree, int, bool *); +/* APPLE LOCAL radar 5932809 - copyable byref blocks */ +static tree handle_blocks_attribute (tree *, tree, tree, int, bool *); static void check_function_nonnull (tree, tree); static void check_nonnull_arg (void *, tree, unsigned HOST_WIDE_INT); @@ -607,7 +609,8 @@ const struct attribute_spec c_common_att handle_section_attribute }, { "aligned", 0, 1, false, false, false, handle_aligned_attribute }, - { "weak", 0, 0, true, false, false, + /* APPLE LOCAL weak types 5954418 */ + { "weak", 0, 0, false, false, false, handle_weak_attribute }, { "alias", 1, 1, true, false, false, handle_alias_attribute }, @@ -650,6 +653,8 @@ const struct attribute_spec c_common_att handle_warn_unused_result_attribute }, { "sentinel", 0, 1, false, true, true, handle_sentinel_attribute }, + /* APPLE LOCAL radar 5932809 - copyable byref blocks */ + { "blocks", 1, 1, true, false, false, handle_blocks_attribute }, { NULL, 0, 0, false, false, false, NULL } }; @@ -4259,7 +4264,10 @@ handle_noreturn_attribute (tree *node, t tree type = TREE_TYPE (*node); /* See FIXME comment in c_common_attribute_table. */ - if (TREE_CODE (*node) == FUNCTION_DECL) + /* APPLE LOCAL begin radar 4727659 */ + if (TREE_CODE (*node) == FUNCTION_DECL + || objc_method_decl (TREE_CODE (*node))) + /* APPLE LOCAL end radar 4727659 */ TREE_THIS_VOLATILE (*node) = 1; else if (TREE_CODE (type) == POINTER_TYPE && TREE_CODE (TREE_TYPE (type)) == FUNCTION_TYPE) @@ -4267,6 +4275,14 @@ handle_noreturn_attribute (tree *node, t = build_pointer_type (build_type_variant (TREE_TYPE (type), TYPE_READONLY (TREE_TYPE (type)), 1)); + /* APPLE LOCAL begin radar 6237713 */ + else if (TREE_CODE (type) == BLOCK_POINTER_TYPE + && TREE_CODE (TREE_TYPE (type)) == FUNCTION_TYPE) + TREE_TYPE (*node) + = build_block_pointer_type + (build_type_variant (TREE_TYPE (type), + TYPE_READONLY (TREE_TYPE (type)), 1)); + /* APPLE LOCAL end radar 6237713 */ else { warning (OPT_Wattributes, "%qE attribute ignored", name); @@ -4893,6 +4909,23 @@ handle_weak_attribute (tree *node, tree if (TREE_CODE (*node) == FUNCTION_DECL || TREE_CODE (*node) == VAR_DECL) declare_weak (*node); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 20:13:29 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 15892787; Sun, 26 Jan 2014 20:13:29 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 010B51675; Sun, 26 Jan 2014 20:13:29 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QKDSjX012379; Sun, 26 Jan 2014 20:13:28 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QKDSiT012378; Sun, 26 Jan 2014 20:13:28 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201401262013.s0QKDSiT012378@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sun, 26 Jan 2014 20:13:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261189 - head/contrib/sendmail X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 20:13:29 -0000 Author: gshapiro Date: Sun Jan 26 20:13:28 2014 New Revision: 261189 URL: http://svnweb.freebsd.org/changeset/base/261189 Log: Update link to vendor import instructions Modified: head/contrib/sendmail/FREEBSD-upgrade Modified: head/contrib/sendmail/FREEBSD-upgrade ============================================================================== --- head/contrib/sendmail/FREEBSD-upgrade Sun Jan 26 19:49:54 2014 (r261188) +++ head/contrib/sendmail/FREEBSD-upgrade Sun Jan 26 20:13:28 2014 (r261189) @@ -9,7 +9,7 @@ For the import of sendmail, the followin Imported using the instructions at: -http://wiki.freebsd.org/SubversionPrimer/VendorImports +http://www.freebsd.org/doc/en_US.ISO8859-1/articles/committers-guide/subversion-primer.html Then merged using: From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 20:47:01 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 47385693; Sun, 26 Jan 2014 20:47:01 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2E35418DD; Sun, 26 Jan 2014 20:47:01 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QKl1mL025030; Sun, 26 Jan 2014 20:47:01 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QKku7E024991; Sun, 26 Jan 2014 20:46:56 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201401262046.s0QKku7E024991@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sun, 26 Jan 2014 20:46:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261190 - in vendor/sendmail/dist: . cf cf/cf cf/domain cf/feature cf/hack cf/m4 cf/mailer cf/ostype cf/sh contrib devtools/M4 devtools/M4/UNIX devtools/OS devtools/bin doc/op editmap i... X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 20:47:01 -0000 Author: gshapiro Date: Sun Jan 26 20:46:55 2014 New Revision: 261190 URL: http://svnweb.freebsd.org/changeset/base/261190 Log: Import sendmail 8.14.8 Added: vendor/sendmail/dist/devtools/OS/Darwin.12.x (contents, props changed) vendor/sendmail/dist/devtools/OS/Darwin.13.x (contents, props changed) vendor/sendmail/dist/libsm/inet6_ntop.c (contents, props changed) vendor/sendmail/dist/libsm/t-inet6_ntop.c (contents, props changed) Modified: vendor/sendmail/dist/Build vendor/sendmail/dist/LICENSE vendor/sendmail/dist/PGPKEYS vendor/sendmail/dist/README vendor/sendmail/dist/RELEASE_NOTES vendor/sendmail/dist/cf/README vendor/sendmail/dist/cf/cf/Build vendor/sendmail/dist/cf/cf/chez.cs.mc vendor/sendmail/dist/cf/cf/clientproto.mc vendor/sendmail/dist/cf/cf/cs-hpux10.mc vendor/sendmail/dist/cf/cf/cs-hpux9.mc vendor/sendmail/dist/cf/cf/cs-osf1.mc vendor/sendmail/dist/cf/cf/cs-solaris2.mc vendor/sendmail/dist/cf/cf/cs-sunos4.1.mc vendor/sendmail/dist/cf/cf/cs-ultrix4.mc vendor/sendmail/dist/cf/cf/generic-bsd4.4.cf vendor/sendmail/dist/cf/cf/generic-bsd4.4.mc vendor/sendmail/dist/cf/cf/generic-hpux10.cf vendor/sendmail/dist/cf/cf/generic-hpux10.mc vendor/sendmail/dist/cf/cf/generic-hpux9.cf vendor/sendmail/dist/cf/cf/generic-hpux9.mc vendor/sendmail/dist/cf/cf/generic-linux.cf vendor/sendmail/dist/cf/cf/generic-linux.mc vendor/sendmail/dist/cf/cf/generic-mpeix.cf vendor/sendmail/dist/cf/cf/generic-mpeix.mc vendor/sendmail/dist/cf/cf/generic-nextstep3.3.cf vendor/sendmail/dist/cf/cf/generic-nextstep3.3.mc vendor/sendmail/dist/cf/cf/generic-osf1.cf vendor/sendmail/dist/cf/cf/generic-osf1.mc vendor/sendmail/dist/cf/cf/generic-solaris.cf vendor/sendmail/dist/cf/cf/generic-solaris.mc vendor/sendmail/dist/cf/cf/generic-sunos4.1.cf vendor/sendmail/dist/cf/cf/generic-sunos4.1.mc vendor/sendmail/dist/cf/cf/generic-ultrix4.cf vendor/sendmail/dist/cf/cf/generic-ultrix4.mc vendor/sendmail/dist/cf/cf/huginn.cs.mc vendor/sendmail/dist/cf/cf/knecht.mc vendor/sendmail/dist/cf/cf/mail.cs.mc vendor/sendmail/dist/cf/cf/mail.eecs.mc vendor/sendmail/dist/cf/cf/mailspool.cs.mc vendor/sendmail/dist/cf/cf/python.cs.mc vendor/sendmail/dist/cf/cf/s2k-osf1.mc vendor/sendmail/dist/cf/cf/s2k-ultrix4.mc vendor/sendmail/dist/cf/cf/submit.cf vendor/sendmail/dist/cf/cf/submit.mc vendor/sendmail/dist/cf/cf/tcpproto.mc vendor/sendmail/dist/cf/cf/ucbarpa.mc vendor/sendmail/dist/cf/cf/ucbvax.mc vendor/sendmail/dist/cf/cf/uucpproto.mc vendor/sendmail/dist/cf/cf/vangogh.cs.mc vendor/sendmail/dist/cf/domain/Berkeley.EDU.m4 vendor/sendmail/dist/cf/domain/CS.Berkeley.EDU.m4 vendor/sendmail/dist/cf/domain/EECS.Berkeley.EDU.m4 vendor/sendmail/dist/cf/domain/S2K.Berkeley.EDU.m4 vendor/sendmail/dist/cf/domain/berkeley-only.m4 vendor/sendmail/dist/cf/domain/generic.m4 vendor/sendmail/dist/cf/feature/accept_unqualified_senders.m4 vendor/sendmail/dist/cf/feature/accept_unresolvable_domains.m4 vendor/sendmail/dist/cf/feature/access_db.m4 vendor/sendmail/dist/cf/feature/allmasquerade.m4 vendor/sendmail/dist/cf/feature/always_add_domain.m4 vendor/sendmail/dist/cf/feature/authinfo.m4 vendor/sendmail/dist/cf/feature/badmx.m4 vendor/sendmail/dist/cf/feature/bestmx_is_local.m4 vendor/sendmail/dist/cf/feature/bitdomain.m4 vendor/sendmail/dist/cf/feature/blacklist_recipients.m4 vendor/sendmail/dist/cf/feature/block_bad_helo.m4 vendor/sendmail/dist/cf/feature/compat_check.m4 vendor/sendmail/dist/cf/feature/conncontrol.m4 vendor/sendmail/dist/cf/feature/delay_checks.m4 vendor/sendmail/dist/cf/feature/dnsbl.m4 vendor/sendmail/dist/cf/feature/domaintable.m4 vendor/sendmail/dist/cf/feature/enhdnsbl.m4 vendor/sendmail/dist/cf/feature/generics_entire_domain.m4 vendor/sendmail/dist/cf/feature/genericstable.m4 vendor/sendmail/dist/cf/feature/greet_pause.m4 vendor/sendmail/dist/cf/feature/ldap_routing.m4 vendor/sendmail/dist/cf/feature/limited_masquerade.m4 vendor/sendmail/dist/cf/feature/local_lmtp.m4 vendor/sendmail/dist/cf/feature/local_no_masquerade.m4 vendor/sendmail/dist/cf/feature/local_procmail.m4 vendor/sendmail/dist/cf/feature/lookupdotdomain.m4 vendor/sendmail/dist/cf/feature/loose_relay_check.m4 vendor/sendmail/dist/cf/feature/mailertable.m4 vendor/sendmail/dist/cf/feature/masquerade_entire_domain.m4 vendor/sendmail/dist/cf/feature/masquerade_envelope.m4 vendor/sendmail/dist/cf/feature/msp.m4 vendor/sendmail/dist/cf/feature/mtamark.m4 vendor/sendmail/dist/cf/feature/no_default_msa.m4 vendor/sendmail/dist/cf/feature/nocanonify.m4 vendor/sendmail/dist/cf/feature/notsticky.m4 vendor/sendmail/dist/cf/feature/nouucp.m4 vendor/sendmail/dist/cf/feature/nullclient.m4 vendor/sendmail/dist/cf/feature/preserve_local_plus_detail.m4 vendor/sendmail/dist/cf/feature/preserve_luser_host.m4 vendor/sendmail/dist/cf/feature/promiscuous_relay.m4 vendor/sendmail/dist/cf/feature/queuegroup.m4 vendor/sendmail/dist/cf/feature/ratecontrol.m4 vendor/sendmail/dist/cf/feature/redirect.m4 vendor/sendmail/dist/cf/feature/relay_based_on_MX.m4 vendor/sendmail/dist/cf/feature/relay_entire_domain.m4 vendor/sendmail/dist/cf/feature/relay_hosts_only.m4 vendor/sendmail/dist/cf/feature/relay_local_from.m4 vendor/sendmail/dist/cf/feature/relay_mail_from.m4 vendor/sendmail/dist/cf/feature/require_rdns.m4 vendor/sendmail/dist/cf/feature/smrsh.m4 vendor/sendmail/dist/cf/feature/stickyhost.m4 vendor/sendmail/dist/cf/feature/use_client_ptr.m4 vendor/sendmail/dist/cf/feature/use_ct_file.m4 vendor/sendmail/dist/cf/feature/use_cw_file.m4 vendor/sendmail/dist/cf/feature/uucpdomain.m4 vendor/sendmail/dist/cf/feature/virtuser_entire_domain.m4 vendor/sendmail/dist/cf/feature/virtusertable.m4 vendor/sendmail/dist/cf/hack/cssubdomain.m4 vendor/sendmail/dist/cf/m4/cf.m4 vendor/sendmail/dist/cf/m4/cfhead.m4 vendor/sendmail/dist/cf/m4/proto.m4 vendor/sendmail/dist/cf/m4/version.m4 vendor/sendmail/dist/cf/mailer/cyrus.m4 vendor/sendmail/dist/cf/mailer/cyrusv2.m4 vendor/sendmail/dist/cf/mailer/fax.m4 vendor/sendmail/dist/cf/mailer/local.m4 vendor/sendmail/dist/cf/mailer/mail11.m4 vendor/sendmail/dist/cf/mailer/phquery.m4 vendor/sendmail/dist/cf/mailer/pop.m4 vendor/sendmail/dist/cf/mailer/procmail.m4 vendor/sendmail/dist/cf/mailer/qpage.m4 vendor/sendmail/dist/cf/mailer/smtp.m4 vendor/sendmail/dist/cf/mailer/usenet.m4 vendor/sendmail/dist/cf/mailer/uucp.m4 vendor/sendmail/dist/cf/ostype/a-ux.m4 vendor/sendmail/dist/cf/ostype/aix3.m4 vendor/sendmail/dist/cf/ostype/aix4.m4 vendor/sendmail/dist/cf/ostype/aix5.m4 vendor/sendmail/dist/cf/ostype/altos.m4 vendor/sendmail/dist/cf/ostype/amdahl-uts.m4 vendor/sendmail/dist/cf/ostype/bsd4.3.m4 vendor/sendmail/dist/cf/ostype/bsd4.4.m4 vendor/sendmail/dist/cf/ostype/bsdi.m4 vendor/sendmail/dist/cf/ostype/bsdi1.0.m4 vendor/sendmail/dist/cf/ostype/bsdi2.0.m4 vendor/sendmail/dist/cf/ostype/darwin.m4 vendor/sendmail/dist/cf/ostype/dgux.m4 vendor/sendmail/dist/cf/ostype/domainos.m4 vendor/sendmail/dist/cf/ostype/dragonfly.m4 vendor/sendmail/dist/cf/ostype/dynix3.2.m4 vendor/sendmail/dist/cf/ostype/freebsd4.m4 vendor/sendmail/dist/cf/ostype/freebsd5.m4 vendor/sendmail/dist/cf/ostype/freebsd6.m4 vendor/sendmail/dist/cf/ostype/gnu.m4 vendor/sendmail/dist/cf/ostype/hpux10.m4 vendor/sendmail/dist/cf/ostype/hpux11.m4 vendor/sendmail/dist/cf/ostype/hpux9.m4 vendor/sendmail/dist/cf/ostype/irix4.m4 vendor/sendmail/dist/cf/ostype/irix5.m4 vendor/sendmail/dist/cf/ostype/irix6.m4 vendor/sendmail/dist/cf/ostype/isc4.1.m4 vendor/sendmail/dist/cf/ostype/linux.m4 vendor/sendmail/dist/cf/ostype/maxion.m4 vendor/sendmail/dist/cf/ostype/mklinux.m4 vendor/sendmail/dist/cf/ostype/mpeix.m4 vendor/sendmail/dist/cf/ostype/nextstep.m4 vendor/sendmail/dist/cf/ostype/openbsd.m4 vendor/sendmail/dist/cf/ostype/osf1.m4 vendor/sendmail/dist/cf/ostype/powerux.m4 vendor/sendmail/dist/cf/ostype/ptx2.m4 vendor/sendmail/dist/cf/ostype/qnx.m4 vendor/sendmail/dist/cf/ostype/riscos4.5.m4 vendor/sendmail/dist/cf/ostype/sco-uw-2.1.m4 vendor/sendmail/dist/cf/ostype/sco3.2.m4 vendor/sendmail/dist/cf/ostype/sinix.m4 vendor/sendmail/dist/cf/ostype/solaris11.m4 vendor/sendmail/dist/cf/ostype/solaris2.m4 vendor/sendmail/dist/cf/ostype/solaris2.ml.m4 vendor/sendmail/dist/cf/ostype/solaris2.pre5.m4 vendor/sendmail/dist/cf/ostype/solaris8.m4 vendor/sendmail/dist/cf/ostype/sunos3.5.m4 vendor/sendmail/dist/cf/ostype/sunos4.1.m4 vendor/sendmail/dist/cf/ostype/svr4.m4 vendor/sendmail/dist/cf/ostype/ultrix4.m4 vendor/sendmail/dist/cf/ostype/unicos.m4 vendor/sendmail/dist/cf/ostype/unicosmk.m4 vendor/sendmail/dist/cf/ostype/unicosmp.m4 vendor/sendmail/dist/cf/ostype/unixware7.m4 vendor/sendmail/dist/cf/ostype/unknown.m4 vendor/sendmail/dist/cf/ostype/uxpds.m4 vendor/sendmail/dist/cf/sendmail.schema vendor/sendmail/dist/cf/sh/makeinfo.sh vendor/sendmail/dist/contrib/dnsblaccess.m4 vendor/sendmail/dist/contrib/link_hash.sh vendor/sendmail/dist/contrib/qtool.8 vendor/sendmail/dist/contrib/qtool.pl vendor/sendmail/dist/devtools/M4/UNIX/all.m4 vendor/sendmail/dist/devtools/M4/UNIX/check.m4 vendor/sendmail/dist/devtools/M4/UNIX/defines.m4 vendor/sendmail/dist/devtools/M4/UNIX/executable.m4 vendor/sendmail/dist/devtools/M4/UNIX/footer.m4 vendor/sendmail/dist/devtools/M4/UNIX/library.m4 vendor/sendmail/dist/devtools/M4/UNIX/links.m4 vendor/sendmail/dist/devtools/M4/UNIX/manpage.m4 vendor/sendmail/dist/devtools/M4/UNIX/sm-test.m4 vendor/sendmail/dist/devtools/M4/UNIX/smlib.m4 vendor/sendmail/dist/devtools/M4/header.m4 vendor/sendmail/dist/devtools/M4/list.m4 vendor/sendmail/dist/devtools/M4/string.m4 vendor/sendmail/dist/devtools/M4/subst_ext.m4 vendor/sendmail/dist/devtools/M4/switch.m4 vendor/sendmail/dist/devtools/bin/Build vendor/sendmail/dist/devtools/bin/configure.sh vendor/sendmail/dist/devtools/bin/find_m4.sh vendor/sendmail/dist/devtools/bin/install.sh vendor/sendmail/dist/doc/op/op.me vendor/sendmail/dist/doc/op/op.ps vendor/sendmail/dist/editmap/Build vendor/sendmail/dist/editmap/editmap.0 vendor/sendmail/dist/editmap/editmap.8 vendor/sendmail/dist/editmap/editmap.c vendor/sendmail/dist/include/libmilter/mfapi.h vendor/sendmail/dist/include/libmilter/mfdef.h vendor/sendmail/dist/include/libmilter/milter.h vendor/sendmail/dist/include/libsmdb/smdb.h vendor/sendmail/dist/include/sendmail/mailstats.h vendor/sendmail/dist/include/sendmail/pathnames.h vendor/sendmail/dist/include/sendmail/sendmail.h vendor/sendmail/dist/include/sm/assert.h vendor/sendmail/dist/include/sm/bdb.h vendor/sendmail/dist/include/sm/bitops.h vendor/sendmail/dist/include/sm/cdefs.h vendor/sendmail/dist/include/sm/cf.h vendor/sendmail/dist/include/sm/clock.h vendor/sendmail/dist/include/sm/conf.h vendor/sendmail/dist/include/sm/config.h vendor/sendmail/dist/include/sm/debug.h vendor/sendmail/dist/include/sm/errstring.h vendor/sendmail/dist/include/sm/exc.h vendor/sendmail/dist/include/sm/fdset.h vendor/sendmail/dist/include/sm/gen.h vendor/sendmail/dist/include/sm/heap.h vendor/sendmail/dist/include/sm/io.h vendor/sendmail/dist/include/sm/ldap.h vendor/sendmail/dist/include/sm/limits.h vendor/sendmail/dist/include/sm/mbdb.h vendor/sendmail/dist/include/sm/misc.h vendor/sendmail/dist/include/sm/os/sm_os_aix.h vendor/sendmail/dist/include/sm/os/sm_os_dragonfly.h vendor/sendmail/dist/include/sm/os/sm_os_freebsd.h vendor/sendmail/dist/include/sm/os/sm_os_hp.h vendor/sendmail/dist/include/sm/os/sm_os_irix.h vendor/sendmail/dist/include/sm/os/sm_os_linux.h vendor/sendmail/dist/include/sm/os/sm_os_mpeix.h vendor/sendmail/dist/include/sm/os/sm_os_next.h vendor/sendmail/dist/include/sm/os/sm_os_openbsd.h vendor/sendmail/dist/include/sm/os/sm_os_openunix.h vendor/sendmail/dist/include/sm/os/sm_os_osf1.h vendor/sendmail/dist/include/sm/os/sm_os_qnx.h vendor/sendmail/dist/include/sm/os/sm_os_sunos.h vendor/sendmail/dist/include/sm/os/sm_os_ultrix.h vendor/sendmail/dist/include/sm/os/sm_os_unicos.h vendor/sendmail/dist/include/sm/os/sm_os_unicosmk.h vendor/sendmail/dist/include/sm/os/sm_os_unicosmp.h vendor/sendmail/dist/include/sm/os/sm_os_unixware.h vendor/sendmail/dist/include/sm/path.h vendor/sendmail/dist/include/sm/rpool.h vendor/sendmail/dist/include/sm/sem.h vendor/sendmail/dist/include/sm/sendmail.h vendor/sendmail/dist/include/sm/setjmp.h vendor/sendmail/dist/include/sm/shm.h vendor/sendmail/dist/include/sm/signal.h vendor/sendmail/dist/include/sm/string.h vendor/sendmail/dist/include/sm/sysexits.h vendor/sendmail/dist/include/sm/test.h vendor/sendmail/dist/include/sm/time.h vendor/sendmail/dist/include/sm/types.h vendor/sendmail/dist/include/sm/varargs.h vendor/sendmail/dist/include/sm/xtrap.h vendor/sendmail/dist/libmilter/Build vendor/sendmail/dist/libmilter/Makefile.m4 vendor/sendmail/dist/libmilter/comm.c vendor/sendmail/dist/libmilter/docs/api.html vendor/sendmail/dist/libmilter/docs/design.html vendor/sendmail/dist/libmilter/docs/index.html vendor/sendmail/dist/libmilter/docs/installation.html vendor/sendmail/dist/libmilter/docs/other.html vendor/sendmail/dist/libmilter/docs/overview.html vendor/sendmail/dist/libmilter/docs/sample.html vendor/sendmail/dist/libmilter/docs/smfi_addheader.html vendor/sendmail/dist/libmilter/docs/smfi_addrcpt.html vendor/sendmail/dist/libmilter/docs/smfi_addrcpt_par.html vendor/sendmail/dist/libmilter/docs/smfi_chgfrom.html vendor/sendmail/dist/libmilter/docs/smfi_chgheader.html vendor/sendmail/dist/libmilter/docs/smfi_delrcpt.html vendor/sendmail/dist/libmilter/docs/smfi_getpriv.html vendor/sendmail/dist/libmilter/docs/smfi_getsymval.html vendor/sendmail/dist/libmilter/docs/smfi_insheader.html vendor/sendmail/dist/libmilter/docs/smfi_main.html vendor/sendmail/dist/libmilter/docs/smfi_opensocket.html vendor/sendmail/dist/libmilter/docs/smfi_progress.html vendor/sendmail/dist/libmilter/docs/smfi_quarantine.html vendor/sendmail/dist/libmilter/docs/smfi_register.html vendor/sendmail/dist/libmilter/docs/smfi_replacebody.html vendor/sendmail/dist/libmilter/docs/smfi_setbacklog.html vendor/sendmail/dist/libmilter/docs/smfi_setconn.html vendor/sendmail/dist/libmilter/docs/smfi_setdbg.html vendor/sendmail/dist/libmilter/docs/smfi_setmlreply.html vendor/sendmail/dist/libmilter/docs/smfi_setpriv.html vendor/sendmail/dist/libmilter/docs/smfi_setreply.html vendor/sendmail/dist/libmilter/docs/smfi_setsymlist.html vendor/sendmail/dist/libmilter/docs/smfi_settimeout.html vendor/sendmail/dist/libmilter/docs/smfi_stop.html vendor/sendmail/dist/libmilter/docs/smfi_version.html vendor/sendmail/dist/libmilter/docs/xxfi_abort.html vendor/sendmail/dist/libmilter/docs/xxfi_body.html vendor/sendmail/dist/libmilter/docs/xxfi_close.html vendor/sendmail/dist/libmilter/docs/xxfi_connect.html vendor/sendmail/dist/libmilter/docs/xxfi_data.html vendor/sendmail/dist/libmilter/docs/xxfi_envfrom.html vendor/sendmail/dist/libmilter/docs/xxfi_envrcpt.html vendor/sendmail/dist/libmilter/docs/xxfi_eoh.html vendor/sendmail/dist/libmilter/docs/xxfi_eom.html vendor/sendmail/dist/libmilter/docs/xxfi_header.html vendor/sendmail/dist/libmilter/docs/xxfi_helo.html vendor/sendmail/dist/libmilter/docs/xxfi_negotiate.html vendor/sendmail/dist/libmilter/docs/xxfi_unknown.html vendor/sendmail/dist/libmilter/engine.c vendor/sendmail/dist/libmilter/example.c vendor/sendmail/dist/libmilter/handler.c vendor/sendmail/dist/libmilter/libmilter.h vendor/sendmail/dist/libmilter/listener.c vendor/sendmail/dist/libmilter/main.c vendor/sendmail/dist/libmilter/monitor.c vendor/sendmail/dist/libmilter/signal.c vendor/sendmail/dist/libmilter/sm_gethost.c vendor/sendmail/dist/libmilter/smfi.c vendor/sendmail/dist/libmilter/worker.c vendor/sendmail/dist/libsm/Build vendor/sendmail/dist/libsm/Makefile.m4 vendor/sendmail/dist/libsm/README vendor/sendmail/dist/libsm/assert.c vendor/sendmail/dist/libsm/b-strcmp.c vendor/sendmail/dist/libsm/b-strl.c vendor/sendmail/dist/libsm/cf.c vendor/sendmail/dist/libsm/clock.c vendor/sendmail/dist/libsm/clrerr.c vendor/sendmail/dist/libsm/config.c vendor/sendmail/dist/libsm/debug.c vendor/sendmail/dist/libsm/errstring.c vendor/sendmail/dist/libsm/exc.c vendor/sendmail/dist/libsm/fclose.c vendor/sendmail/dist/libsm/feof.c vendor/sendmail/dist/libsm/ferror.c vendor/sendmail/dist/libsm/fflush.c vendor/sendmail/dist/libsm/fget.c vendor/sendmail/dist/libsm/findfp.c vendor/sendmail/dist/libsm/flags.c vendor/sendmail/dist/libsm/fopen.c vendor/sendmail/dist/libsm/fpos.c vendor/sendmail/dist/libsm/fprintf.c vendor/sendmail/dist/libsm/fpurge.c vendor/sendmail/dist/libsm/fput.c vendor/sendmail/dist/libsm/fread.c vendor/sendmail/dist/libsm/fscanf.c vendor/sendmail/dist/libsm/fseek.c vendor/sendmail/dist/libsm/fvwrite.c vendor/sendmail/dist/libsm/fvwrite.h vendor/sendmail/dist/libsm/fwalk.c vendor/sendmail/dist/libsm/fwrite.c vendor/sendmail/dist/libsm/get.c vendor/sendmail/dist/libsm/glue.h vendor/sendmail/dist/libsm/heap.c vendor/sendmail/dist/libsm/ldap.c vendor/sendmail/dist/libsm/local.h vendor/sendmail/dist/libsm/makebuf.c vendor/sendmail/dist/libsm/match.c vendor/sendmail/dist/libsm/mbdb.c vendor/sendmail/dist/libsm/memstat.c vendor/sendmail/dist/libsm/mpeix.c vendor/sendmail/dist/libsm/niprop.c vendor/sendmail/dist/libsm/path.c vendor/sendmail/dist/libsm/put.c vendor/sendmail/dist/libsm/refill.c vendor/sendmail/dist/libsm/rewind.c vendor/sendmail/dist/libsm/rpool.c vendor/sendmail/dist/libsm/sem.c vendor/sendmail/dist/libsm/setvbuf.c vendor/sendmail/dist/libsm/shm.c vendor/sendmail/dist/libsm/signal.c vendor/sendmail/dist/libsm/smstdio.c vendor/sendmail/dist/libsm/snprintf.c vendor/sendmail/dist/libsm/sscanf.c vendor/sendmail/dist/libsm/stdio.c vendor/sendmail/dist/libsm/strcasecmp.c vendor/sendmail/dist/libsm/strdup.c vendor/sendmail/dist/libsm/strerror.c vendor/sendmail/dist/libsm/strexit.c vendor/sendmail/dist/libsm/string.c vendor/sendmail/dist/libsm/stringf.c vendor/sendmail/dist/libsm/strio.c vendor/sendmail/dist/libsm/strl.c vendor/sendmail/dist/libsm/strrevcmp.c vendor/sendmail/dist/libsm/strto.c vendor/sendmail/dist/libsm/syslogio.c vendor/sendmail/dist/libsm/t-cf.c vendor/sendmail/dist/libsm/t-event.c vendor/sendmail/dist/libsm/t-exc.c vendor/sendmail/dist/libsm/t-fget.c vendor/sendmail/dist/libsm/t-float.c vendor/sendmail/dist/libsm/t-fopen.c vendor/sendmail/dist/libsm/t-heap.c vendor/sendmail/dist/libsm/t-match.c vendor/sendmail/dist/libsm/t-memstat.c vendor/sendmail/dist/libsm/t-path.c vendor/sendmail/dist/libsm/t-qic.c vendor/sendmail/dist/libsm/t-rpool.c vendor/sendmail/dist/libsm/t-scanf.c vendor/sendmail/dist/libsm/t-sem.c vendor/sendmail/dist/libsm/t-shm.c vendor/sendmail/dist/libsm/t-smstdio.c vendor/sendmail/dist/libsm/t-string.c vendor/sendmail/dist/libsm/t-strio.c vendor/sendmail/dist/libsm/t-strl.c vendor/sendmail/dist/libsm/t-strrevcmp.c vendor/sendmail/dist/libsm/t-types.c vendor/sendmail/dist/libsm/test.c vendor/sendmail/dist/libsm/ungetc.c vendor/sendmail/dist/libsm/util.c vendor/sendmail/dist/libsm/vasprintf.c vendor/sendmail/dist/libsm/vfprintf.c vendor/sendmail/dist/libsm/vfscanf.c vendor/sendmail/dist/libsm/vprintf.c vendor/sendmail/dist/libsm/vsnprintf.c vendor/sendmail/dist/libsm/wbuf.c vendor/sendmail/dist/libsm/wsetup.c vendor/sendmail/dist/libsm/xtrap.c vendor/sendmail/dist/libsmdb/Build vendor/sendmail/dist/libsmdb/smdb.c vendor/sendmail/dist/libsmdb/smdb1.c vendor/sendmail/dist/libsmdb/smdb2.c vendor/sendmail/dist/libsmdb/smndbm.c vendor/sendmail/dist/libsmutil/Build vendor/sendmail/dist/libsmutil/cf.c vendor/sendmail/dist/libsmutil/debug.c vendor/sendmail/dist/libsmutil/err.c vendor/sendmail/dist/libsmutil/lockfile.c vendor/sendmail/dist/libsmutil/safefile.c vendor/sendmail/dist/libsmutil/snprintf.c vendor/sendmail/dist/mail.local/Build vendor/sendmail/dist/mail.local/mail.local.0 vendor/sendmail/dist/mail.local/mail.local.8 vendor/sendmail/dist/mail.local/mail.local.c vendor/sendmail/dist/mailstats/Build vendor/sendmail/dist/mailstats/mailstats.0 vendor/sendmail/dist/mailstats/mailstats.8 vendor/sendmail/dist/mailstats/mailstats.c vendor/sendmail/dist/makemap/Build vendor/sendmail/dist/makemap/makemap.0 vendor/sendmail/dist/makemap/makemap.8 vendor/sendmail/dist/makemap/makemap.c vendor/sendmail/dist/praliases/Build vendor/sendmail/dist/praliases/praliases.0 vendor/sendmail/dist/praliases/praliases.8 vendor/sendmail/dist/praliases/praliases.c vendor/sendmail/dist/rmail/Build vendor/sendmail/dist/rmail/rmail.0 vendor/sendmail/dist/rmail/rmail.8 vendor/sendmail/dist/rmail/rmail.c vendor/sendmail/dist/smrsh/Build vendor/sendmail/dist/smrsh/smrsh.0 vendor/sendmail/dist/smrsh/smrsh.8 vendor/sendmail/dist/smrsh/smrsh.c vendor/sendmail/dist/src/Build vendor/sendmail/dist/src/Makefile.m4 vendor/sendmail/dist/src/README vendor/sendmail/dist/src/SECURITY vendor/sendmail/dist/src/TRACEFLAGS vendor/sendmail/dist/src/TUNING vendor/sendmail/dist/src/alias.c vendor/sendmail/dist/src/aliases.0 vendor/sendmail/dist/src/aliases.5 vendor/sendmail/dist/src/arpadate.c vendor/sendmail/dist/src/bf.c vendor/sendmail/dist/src/bf.h vendor/sendmail/dist/src/collect.c vendor/sendmail/dist/src/conf.c vendor/sendmail/dist/src/conf.h vendor/sendmail/dist/src/control.c vendor/sendmail/dist/src/convtime.c vendor/sendmail/dist/src/daemon.c vendor/sendmail/dist/src/daemon.h vendor/sendmail/dist/src/deliver.c vendor/sendmail/dist/src/domain.c vendor/sendmail/dist/src/envelope.c vendor/sendmail/dist/src/err.c vendor/sendmail/dist/src/headers.c vendor/sendmail/dist/src/helpfile vendor/sendmail/dist/src/macro.c vendor/sendmail/dist/src/mailq.0 vendor/sendmail/dist/src/mailq.1 vendor/sendmail/dist/src/main.c vendor/sendmail/dist/src/makesendmail vendor/sendmail/dist/src/map.c vendor/sendmail/dist/src/map.h vendor/sendmail/dist/src/mci.c vendor/sendmail/dist/src/milter.c vendor/sendmail/dist/src/mime.c vendor/sendmail/dist/src/newaliases.0 vendor/sendmail/dist/src/newaliases.1 vendor/sendmail/dist/src/parseaddr.c vendor/sendmail/dist/src/queue.c vendor/sendmail/dist/src/ratectrl.c vendor/sendmail/dist/src/readcf.c vendor/sendmail/dist/src/recipient.c vendor/sendmail/dist/src/sasl.c vendor/sendmail/dist/src/savemail.c vendor/sendmail/dist/src/sendmail.0 vendor/sendmail/dist/src/sendmail.8 vendor/sendmail/dist/src/sendmail.h vendor/sendmail/dist/src/sfsasl.c vendor/sendmail/dist/src/sfsasl.h vendor/sendmail/dist/src/shmticklib.c vendor/sendmail/dist/src/sm_resolve.c vendor/sendmail/dist/src/sm_resolve.h vendor/sendmail/dist/src/srvrsmtp.c vendor/sendmail/dist/src/stab.c vendor/sendmail/dist/src/stats.c vendor/sendmail/dist/src/statusd_shm.h vendor/sendmail/dist/src/sysexits.c vendor/sendmail/dist/src/timers.c vendor/sendmail/dist/src/timers.h vendor/sendmail/dist/src/tls.c vendor/sendmail/dist/src/trace.c vendor/sendmail/dist/src/udb.c vendor/sendmail/dist/src/usersmtp.c vendor/sendmail/dist/src/util.c vendor/sendmail/dist/src/version.c vendor/sendmail/dist/test/Build vendor/sendmail/dist/test/README vendor/sendmail/dist/test/t_dropgid.c vendor/sendmail/dist/test/t_exclopen.c vendor/sendmail/dist/test/t_pathconf.c vendor/sendmail/dist/test/t_seteuid.c vendor/sendmail/dist/test/t_setgid.c vendor/sendmail/dist/test/t_setreuid.c vendor/sendmail/dist/test/t_setuid.c vendor/sendmail/dist/test/t_snprintf.c vendor/sendmail/dist/vacation/Build vendor/sendmail/dist/vacation/vacation.0 vendor/sendmail/dist/vacation/vacation.1 vendor/sendmail/dist/vacation/vacation.c Modified: vendor/sendmail/dist/Build ============================================================================== --- vendor/sendmail/dist/Build Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/Build Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright (c) 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set @@ -8,6 +8,6 @@ # the sendmail distribution. # # -# $Id: Build,v 8.3 1999/09/23 21:31:12 ca Exp $ +# $Id: Build,v 8.4 2013/11/22 20:51:01 ca Exp $ exec make OPTIONS="$*" Modified: vendor/sendmail/dist/LICENSE ============================================================================== --- vendor/sendmail/dist/LICENSE Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/LICENSE Sun Jan 26 20:46:55 2014 (r261190) @@ -1,9 +1,9 @@ SENDMAIL LICENSE -The following license terms and conditions apply, unless a redistribution -agreement or other license is obtained from Sendmail, Inc., 6475 Christie -Ave, Third Floor, Emeryville, CA 94608, USA, or by electronic mail at -license@sendmail.com. +The following license terms and conditions apply, unless a redistribution +agreement or other license is obtained from Proofpoint, Inc., 892 +Ross Street, Sunnyvale, CA, 94089, USA, or by electronic mail at +sendmail-license@proofpoint.com. License Terms: @@ -35,12 +35,12 @@ each of the following conditions is met: forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: - "Copyright (c) 1998-2012 Sendmail, Inc. All rights reserved." + "Copyright (c) 1998-2013 Proofpoint, Inc. All rights reserved." -4. Neither the name of Sendmail, Inc. nor the University of California nor +4. Neither the name of Proofpoint, Inc. nor the University of California nor names of their contributors may be used to endorse or promote products derived from this software without specific prior written - permission. The name "sendmail" is a trademark of Sendmail, Inc. + permission. The name "sendmail" is a trademark of Proofpoint, Inc. 5. All redistributions must comply with the conditions imposed by the University of California on certain embedded code, which copyright @@ -78,4 +78,4 @@ each of the following conditions is met: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. -$Revision: 8.18 $, Last updated $Date: 2012/05/15 21:49:03 $, Document 139848.1 +$Revision: 8.22 $, Last updated $Date: 2013/11/23 04:37:36 $, Document 139848.1 Modified: vendor/sendmail/dist/PGPKEYS ============================================================================== --- vendor/sendmail/dist/PGPKEYS Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/PGPKEYS Sun Jan 26 20:46:55 2014 (r261190) @@ -142,6 +142,184 @@ gpExpdV7qPrw9k01j5rod5PjZlG8zV0= -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use +pub 2048 E2763A73 2014-01-02 ------- RSA Sign & Encrypt +fingerprint: 49F6 A8BE 8473 3949 5191 6F3B 61DE 11EC E276 3A73 +uid Sendmail Signing Key/2014 + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1 + +mQENBFLGB58BCADFOlIYbhlAZ1URaoyfEHLgrm/bHeZufZO3jp2eeuDIkt4Z8csa +eLkwomo/UtmUNXkn5rlUacRjyuhrDgVyuhYVeqq+tVbGccrjq4TM+5dkDTtQvLE5 +sEF3pbNYiPNJwPnqMfGTVmSouR9gGJGgttPubFDp/2jTpuFYZbcDSo+hoI9m5RAH +aWe+MhFC0r7RZTv5pY1CG3GSODaoz2XIQ/dDJ4WKZFeEvDPQnpLY4t0cb0hVcxYO +XVZZs1YmS2sEJirwJ+rpxivX4eyVKSO9Vjidh6cvmg2UdKfNoXXd+G9r0DR5FSo7 +hQHlOCrLFQQ5YJ3thGNl/fw7wVXVs34Nj7QfABEBAAG0MVNlbmRtYWlsIFNpZ25p +bmcgS2V5LzIwMTQgPHNlbmRtYWlsQFNlbmRtYWlsLk9SRz6JATgEEwECACIFAlLG +B58CGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEGHeEezidjpzcRgIAJUZ +4J6yvykcpgrIS8ZjDz1ab2sXtBx0ZjI5TxxnIwg9RQb5YkEk2/9tPo0ZwNUTDwz6 +eVENR++Bv3VXs32RnRiFNy1Mm2hhULh4ifgqT6Sy7zRk/kwiKuj6xkjAGZV71QmD +ukFIpVaWAQwiFkDgqM3LbxZ1sisbvvA8M/zJq66uGg09Lu9CKcwjKDfy+UW1E8Ub +SRzStTRrpvCH400q/Pwv3mOA43+H6Un4fZfCOcZeo22rSgT6D/FEY4LMdNnMLYuU +zPkpx7cKvQa/AcMdjoGu38g364JxlDjxjE6M+XBym8Tx6j4res7o0W8TGW5g+rEv +8X9i7uxdnEfYBlNAElGJARwEEAECAAYFAlLGCCIACgkQPWiyXVIHytM4QggAtF+W +cXu8pJi3+OAoPmj+etgIuLhJ2GOp8qNK8yvwTEwiNwtenjennlW3ETHiCbtfQ0/T +Z9rq5elhANsfp8LsXGoJ4ic6KJlDEhCrKa76jwEeECI74E60TpG0z64pHMmUhk7l +eAUckCOvW7iHIBJVA7ZM8oII04ipPz6qJfJrUWkJbfZh8VV5DRp7zKAFT+URgSUc +bdAbLjyC7AohynNVxir90UoT+wo06GPMDpeA5+fS0VZxKAwKv2P0mRZAK63yzEJz ++VK3GCHLPCWJvHoqx4KSutk2mIpZ406T/BJEphkGN0BHHiUmIr9qfX/87klA4i9K +dHvzFr6qFBxD78XfuIkBHAQQAQIABgUCUsYIMAAKCRCOWun7zu70Ox9XB/9IP99U +LScSFiDgoZQr3eMztpc2NLIS2bGO1iX7L+9VInPCob7Se53MpaFrDWNna53Xehwf +NbaqsCQrG+OIMMwhRc0x3QCoXQUchA/JyAUIojfOyoFUZvlyZStRGOp2TBRrJnmb +l3iWz3pStqqtvqag2d3YxowqGqUvlRzAXTFmgjcnfMcJrxb9f3n6Nf84QpxLHxB2 +MgOgxUCHXMtJ4WxFHAoINize+P/P99U9mpyn4ewTnSaFzcmemqoVT9yZUDYUYrap +Bm4Xp0Y92IzoNpJgKBZLwXihisuI4alY/hBopo5L89vms2BwesQuh/4Tr6SELwFx +zX63E++tz1TqHleWiQEcBBABAgAGBQJSxghsAAoJEDmkx32peISwXiIH/3suKuiQ ++KqQT10UdBoNg6m0XinG4IG2MghRRcdg2Q8ncCfMFJPsKQcPdjiUuuUIYtD7CE+O +SwQ9N+6vZlsk3Zq2I8rPEwrUTmZ1gDcMK93MafNS32Xt7FmCY6wpMCkpmCLd9sjb +7rj3uZdv/aI6Is76z6dKTfxJWBrbsUQNncASn5JyCXrYj9eeGP8gHX2KCkyPBF4u +kHFPgdzYevCfZeP/+f/cdRwF6bAVaHiEZ2S/Vg6r3Z89vgd+wNKnNsljEiacYWuS +zxouEn0eWQj9kC3bXJgqXH+HLrEY8NAQ5EQWjd8bzIhzCTA9MtL+N1b0Ep36gNiw +YFB5b/b7KlbEPsSJARwEEAECAAYFAlLGCG8ACgkQYE378oVBCr4XDAf/auf1ljzq +w2khe1L/1ANvtnugMP3sVJEPU2nDUnCK2+c0G5INnWc+c7DEFsaLHgcs2eN/w80a +adInDn9lFw7DtcvZr3xL8q+b6j4i4jucjT5WVfYHbvc0xcKfpEjRge4oV3XR73SU +ztdTWZZAlds4Xvh9pojjM90fBu5uDqfpRM3/vNTQ9EWvjcCGKusWRTwgdfF94cHN +CeSe8PCo7sil6MtBBoujmLldCKZaLC08NLPX3yTGzNmuLyNZj9WgwPoK++XTxJly +0j9EJsO28ZxmNCxsZyGA+1D1NuRurQ5FXIUHUfz6taP8FHSDt95cOiirmCMOAjT4 +UFtGAZFlbhzxroicBBABAgAGBQJSxghyAAoJEBKJbpunfyQpyFwD/1fp8qgb6zvn +dIoTUoVWahI41Clt65cA2d1Ib1IbJJ4ms9cxNbFMTvbpPQ4AXOz1t7x2uS3YDmq5 +IxdWLr6YPSMkGmtpF2CD1HwSLcUwtKcIFrb8a0EN8Z+sRKu7yYg1vMxc7LmmOBUX +x+j9fm/1OFGIHYnUEb9GeKFf91cK0VAIiJwEEAECAAYFAlLGCHUACgkQ2Krwyvaz +BylxvAP+JuZQFPnk6l4SKHR/3ZWz56fOqZ6Qv8cgUCFY5AY9OdSE7aU2zVjZTjd1 +dJzVD7xc/9h8OW4HakfwcNnfAqdQ4eNdox5+uydXwU0CXJqU8QxGPaCSRkB1Thb5 +aMik5S01lzra4s6dF0iMC15I5v0PAznykJO9Sq4qhMLUCYTxFiqInAQQAQIABgUC +UsYIeAAKCRCXQwEYcJO4QeDXBAC2hVO1j2dyQfkHr8eLAg/P+2qwZ1ZaG4jxItol +vF91lfGNCaG3RWB9iPRIkz5B+lSoh4mSPGzJ3cFDgB53rRMpFUa0qhiUpVaNuPMY +BSrkxYb00amJcFoXX+yE8soeu6BZ1cazg8GEkbjFbboqJMts2M39dD3c4ikbU4Op +v9ag1YicBBABAgAGBQJSxgh7AAoJEB57s8ivlZYl1w0D/1AySnzhz5PKQo4Wh9QX +qX+yMVBT3rgVO6EgR8ShsyMhZX8GwEEGPueDAh8MLGPqQZbjXq81QMeVk6TSUCQx +XbhHxyGJJTVDxxJxFJZ7f8y05PjppTA6TL2aKYsZLkWUPEq5vKocE2VAmYldwvRS +Ez4oNLWQD5dw05DPzVsJ2/49iJwEEAECAAYFAlLGCH4ACgkQcKAkTR75klFOVwP/ +fxmc8/ckreAjz7C3oarAHlWgAUHrJAAtG1MEgXN6FtzGZyzj7jsC4HI8A5nfwIWx +A67jktU+6OpySrvIv3gRF1OAV168Q9IE8KszvnJgl6Gknf/KuiwpthWHpKztn9lF +vealu7JKqI+3D5m33SqcWUg8SThfnGBoZOZGOnGrw4aInAQQAQIABgUCUsYIggAK +CRDI1e0plfYXcf9oA/44QISEfFkqab+NIIgKW0SHqJDmI5QvVkcCO1Ct+/TkhGVO +I68XKLMaNbzerl+BF26gU2IYCs0axa9hlkl8IJLokZhEPSRPDuSP2PG3GjaFsgnE +5OK6aaVvjrEwaXe8v6rOYLmavnhZtOKg3H8pOl74KhFy1i/ZwM9oVfD4sfLhxIic +BBABAgAGBQJSxgiFAAoJECGD4bE5bweJnYsEAJUX07KH5tI+OfmhQ+WCFuU2as+r +I39oH1BB0W44fEhTj/yJFVqGSt4e3OBlP+SYqIM4DxPttxNtfQ9448rbzWLCdL0c +KGOM2y9NT/LoDi1JQ/IVLYvuIyNnPViAF5JQ96NrmJH+3SaC6goK6HY6D2Oh3iyO +1VGIhjOWyJr2+5ZjiJwEEAECAAYFAlLGCIwACgkQiWliuGeMCgNvkwQAjrrAjFyh +pMepbLnRlxi2gcLqdmLcaub6AaRzCGDaYQxNFtBd+vLt0CtgY7sILahcMX6hLT53 +z4zCHoM93DM3jBoJehC0lH6/qd3ZAcW9vcSxk5ws97K6sbMXWIfqDgTUXaArOvKG +GHE3vsgaLvAQ8nz0QaVkwgSIQfz+vBDjlM6InAQQAQIABgUCUsYIjwAKCRA4IttH +zDdPLdPdBACoapJIpeNLyL9szztPzznIIxNbeuFJVfJRAE+pZ08y5YKVtGWArUcb +GBXlZC5FrVTqV3ptIa72ALApIZ/M4Awnk3C3XyjMioKemv7I+cOj5DqRgkR/hsAF +7YSAg718twgv8W2Ssy8i2vOlAoazxzN9bhVl5cSny5aeUnpLwK0WMYicBBABAgAG +BQJSxgiSAAoJEJwcveLjXFY1DnoD/iFZ3zhzwIyWUl17pESa7H79tbcpmRyelH5M +vH51sEBl27yRRKrsx4oayaumUT7W4JVoQTEYH54unN6fSBqKK9VyxzlA+v8PJjTG +43MhtMG5lc5B1fKXFer1SpxuoR5h3Qdi4KSz3yh8K8g5KKtciPBx5kEXSTm6Nycu +wkrCRYZLiJwEEAECAAYFAlLGCJcACgkQb1KT2KObplUY2QP/T2Zt5U2cl0usnYck +wmMF3ZAzmcfhsxMkVgxxL9AkVJh9dHhLSYFWN6qhlkZwiW6UhhKoINfEpb8gOcBz +rdb4u8yrWqIS726GqE/gnjYUf5CX22mOPWry8CPuWesRVpr832TzS5wxlBQzRMSS +MVn39IPfIQnC6UQ3tPChruwwZh2InAQQAQIABgUCUsYImgAKCRDvWJZk1DLhnUOZ +A/4qp/HD/+V1zpewexP4wL+bLA9Y6X+y2UWAh7eZCBQvXOhVAYcHxpmWgEfHuS+c +iHYqCc7hz+1AiKV8AfVk6RX0k9Oli/IMbM3ijv3uIl+5JF765oXUAB3RWg6V+MlJ +VhOVkBHXmBuhFnfVPeR5wNPpQ58d9LwsZtU11/Y76xzOUYicBBABAgAGBQJSxgie +AAoJEMGcHSUS00YdL7MEAK/BtyOdoFA/8SBA+8EOG8nd5NSlGNZUBnTlpWqdphkR +SLRrb1gLGr41ND2yvg/ElTti7m1D7+7VUnwCXM5wUO/RZuZx2uDYRCdDXj5WBhcg +3wsHO3IPGGTbCukp9fLcthBQ46PDewlUVo6gPWhjWG/oC04XYeB3+f1f1zGAai+s +iJwEEAECAAYFAlLGCKMACgkQwCnKQBb0zOm0CAQAhwRycBvn1kZB8cjBVw0a74Xu +rjQrMVqmKM0LW/UzoVscB0W2KxZnvCLcw8N87CnnoSAO3MSnb/vPPhtnQxVe0IBA +4yoe9acWJvmtIjw4JFDKioVPtEy+pcg5EDlyqNHj0He/Cmbirxbvy2XiGB/Y/lxu +t1kad5ZYY/F5+X4hbyOIRgQQEQIABgUCUsYIsQAKCRAY9QOAJMJ4ArQbAJ414QQw +60cTU3tVbBTT/l/sRysTXACg1ggZJszRL0P8Yy6WOryQ+r5Fg8yInAQQAQIABgUC +UsYItwAKCRB8S2dtoA4VY3VvA/4i7bKzYElfVdTIj0IgHfd1zneeDjJoJP5tmf7F +ElWIkENFVkKQ+tUBO2d/qMK8h+aj3brDcve5A1LUIsD5leE+igke8SjVF9/fwN4U +8Mpqrvaw+CX7zGMnt6J075OD7mfU7hZkSpDhmOEMaEzaviei2rovBgaNv7tOlgrk +J5nCo4icBBABAgAGBQJSxgi8AAoJENbgof5PvirdqiMEAKp3kzOjTetlDWAqK0BY +u1kSTCLzO8jFIq620dT0BqorZ5nvxwKovog/FgrZ0LlywsjlwOGCAFo3aW7WTEyt +7AwlQvUScAbPuZZcyZxKwQ9h2O6C2K2RPVIIHQusLRVcr+oGgqMoNjpSxOOxfJuj +hT6fXHK5SayZSQEiZyeKme12iEYEEBECAAYFAlLGCMEACgkQIfnFvPdqm/UiSwCf +d7Y5AR2m6vK5drJEaqbnv2tmXzcAoMhOg7eUPnYXr0Uwpo/61oHAPUTwiJwEEAEC +AAYFAlLGCMcACgkQvdqP1j/qff1p6QP/TkEC+SJr4YUPy/0cLsSr9j0uPfvke+Qx +U0RWynv4BMU05TKaBeZiVG25iFsGERW0drxiisPkcgMTq98wE7Q23Qtk+Fg8amDn +6c0qEj0S4xd/DfHPhcznHjjkhiTftSmeMGHDMF8M5+ZBSlJyM6M1dtTlceU88ZYu +Vv89Iz9nnmaJARwEEAECAAYFAlLGCMsACgkQvSdtLm/PqIVOHwgAvKy116ykGuvC +LlxCVx+RfIjhaXa5OTtZhLc7YkXgaNr4UmcvNZtGwQLUEjDO4fVCF/7bSrryZ6Fr +PZBNTKQRwbqH8UksQ+6hIbTBb5ZGcpKQPdIqEWjRjCoDah2EI1ln/JI8WY5NoA+V +iuBd07msr49qevHgGEex5dX7NKOu6nuvefaasVDODNsiMp2QZmIlP7XJw7VKkiEx +ov93DGImxD4o8r2Etzo1Lt5/soNzw26etSRFhoGHRdW2mlS5QFjebV+PNAxwvRrI +a+5CjoA/vFfwxV+RZlvCLhzuEsBIzw6yenfNEd37bzqJq/7Jp7kQCe463o7ujG00 +k+ObGvq/YokBNwQTAQIAIQIbAwIeAQIXgAUCUsYZQgYLCQgHAwIGFQgCCQoLAxYC +AQAKCRBh3hHs4nY6c/AjB/4rt17ezRHDxuDuS7+waPC9N6eXAQCbwdvkYd/v0bWe +5jHgknMHR9OyGU9JKA4boJCtJNUvceAmzBtynqxy4hR6rmCwCmFW3AIK31iu3frz +Zqq84XK791voKMMrvnux0OHqq2l2mYOSNXUeVNQeyDE6HbKXFUiWhRZl36UndVaE +XhdDnKpxseMpYZsECW1+x1GxbUHFRx6tSiqzgLSNU/SsgwgttHwyqEdW0sr63r66 +7XSoMKvEgIhb36hJ7AIaFNWasLnnLOTOWR74IHnJ68FpordYm7lnmT5Vg/ju9y29 +JDwfOcNroCao6tTjyXcM6KmIssQPavTDLK/I6XgVr9QziQEcBBABAgAGBQJSxwGo +AAoJEBCQryClqlvmWGgH/3CsqpTEKQW3FL/jughz3Yt8vmgqmlj7ZbTaVehIKRU4 +iL2XOlgAu3JISxCLPkdz79qcMSkZsOJtTGwA1yjvw/yx7oSznvW+jgNZ+fNOuT9w +c6YKGSm0KbGGOFzjzoCsnIpoVEVuJwOS/zqGY349WR5dyaY4pEL42StfqLLtHO7I +IJMKRcubedgZSogT9iwhin+sAGi60Wjq0pX240UQG0bgSB7n+/+7NT64u9yRyPwZ +9B7Y11smlCw0jIlJD/P51rFgFciG/BdYyPfRHToe5CjOI+1sFxJYuOQI25o9/Syg +7MMzp3ym2IEjIi3poBwfqZRlPDb5nHfu4vnSntPrwcWJAhwEEAEKAAYFAlLHCkcA +CgkQ8Ar26sJF0gu9AA/9EXGIp5BwAYXNtlrI66nuPBwbPXHIVXocnlu2O2Kfzc9W +Lvl3e5eSi61/TCOPNM4ParKUT9utxq9Sd01WO4GuepQFOiSfhMfKb7ORd0cKfWuM +9shAKHsTbuAopO9R43jv1QnE+yL1xpM85JaGxI2pWf4XIpL32ZZ0s7s3x1fklNMG +7ObB5dHr66M/V/GXZSx6rTBWhODm34W07HcXqDdwjVT8J/fo+3kkY9eXYuVfpl8t +bVV6g8DK1zMkQiQBHpN0DCZUYB9WoJgCKFsTvVUElRyMY5sd2bkyAktA2df1EBSH +kMXzqn3py+n3YzRY3VpsNUV3WkDRfU9SIdJd8g88muZeL9namSr/3eHTjdaMoCyL +GyyUpy5LrD56k3QWeXDWVynU9lXuxaiJDntP6A81d6vaIBtm8AFVihtJFoufHot4 +crmPqKtH+MQ9G6xwN5Az9okXKg7HGG9ZD82s4D/X5plN0OH5pMeYLrOQI+oEhjn2 +uK67y0Zl/eqoQcnVDy9PFrynuSVBC5/BTGNbebQrTDrIsQo0m0LMYO3mUzMBA7SO +j9iA0vmXxIGsPzf8lRu26odcahKWswRE492MZiTJlul+HWYmun1b0XJz/4YDWL5l ++kUVLnl53o2aHVlTkmPEMg/mwufkxTayJrtl3kL6oun7e6jUjaCRao9eLFZWtGWI +mwQQAQIABgUCUscuQwAKCRBfHshviAyeVYy3A/ig6XKOyU+RC/+4HtFxvL5osE9T +w/9JlY78umlNish7CJo0Sbka4nFipd6Iw/xcYiAQ06TuS5NDwdmcuoZoUpDAqbLP +r/pWpBy9IAUIzAa1UnyvYTDBp2NS3nxcWnzEpXk/dDyYMKX0gUsrDjE9ZTpsKeMq +70Kgq7lPtH6EfekmiQIcBBABAgAGBQJSx12BAAoJEG8PnXiV/JnUMB4QAJu5xu2F +ej5QSiIXlZw8LD/uzx3UEQocQy4eGPtwTxeYogt9FtbdblRYb6Y8qc+Uyk6fLBxB +E+gclk3I2GnKnpqjtdG5utJnAbvynqfgoE81tuC7hjxKYPaqGTJotwX4IsV8MZZN +D6hduw1hxCWsnckS/6jnVrJxThKqlKEnnFqLE14W1WTnKIqh+dXYdnqn+MEMXZhK +7z68TLteASvT1S9i91Kof7gmfe6hL2wbzPAtils6+gJr0ZfxxUTDzFL5hFulypzX +GgW4VemsZLRz6hhevPiWSRIGCG6xO/boGPnlOQt6Fv2mReBiuIidSia9S1G7G8KF +36ya41RrS6157dgAeSGGUOAzGkvamqlJozlTo1dl8eD08x5G2cHKL/H2oviaE1hr +CgZypLuhPisW2Yd99WMndMV+jrbkNXcORVdYQO/T0aP0vA7zNrTv96shcpNoT3q7 +nWDuGvxjOic8sSX/MxR7F+4UqZO9eZGziPnKDrv1fp17CWWmBBvJHWhFXfPF9nPu +vej6q3Eq49pq3oDuIbtV+1GaMKLre1fzMzqyz1hQ+esByOKi/cAH+QzkbXUC4KyL +q45O/UfNR3hYZms36n05729qF+hW6tO2ZGd43k7kSVgYHj55BIr942dzWMvg7BUY +aWQqYiahIfDxfBXz+WvW5gihr8In24L6dYXDiEYEEBECAAYFAlLHhgUACgkQCaei +StHlggeAhgCdG3L6GRFUho2VtUOx+uaGsvj7vvUAoIahAtf5fb8mSfzceNr5neXd +FgnpiEYEEBECAAYFAlLINaMACgkQxLEHmIV5aiNLbgCgoJYeWDcldLWYU1MH+uvo +Ll4ThV0An0PZNMtCd6gwGGhGd9iMRqHzVpQQiQIcBBABCAAGBQJSyoYqAAoJEIvo +ebAocx4cLO8P/jO9GWX7PSI+k21P4NIjSc6VHYv8MMa5H36NWe8wnoUSUr8FKvUh +uLOI1bDamRZBdCWSuMf3gcWNiwVi3FKJqH/tAdjD4Mc9NaL2DJwKgHH3IlSwV+jF +Hz9OvkEzfo8RT0zVkbt61tMhrNCK7wRw/QrjchixNyJH9YIifV2huppwbgHl5YH7 +7wYJ1thhIgyw8kSSKHFi3yJzy2q1qZ6hwcCCkUw2K9VgYV+0Y2plSkkc/OsoBUsU +JSNdCOSAzpwAmFuSpT3YVlwWnknJu0vV5BPUL/dJTeYLbhyxfXWiWDiF1tiBWHMS +KvUJowbW9r2CZ/FQx4V5hXKMfCupuDJpmCvIiDfRPGfuD4+4vJ+EhAp2TEyRL3HX +7BAlQ/95TiS22AhcFqn7Zl+9tS1vUcj4xLmakPQ2REKgBqiUrVDu+GvzZY0A6V6k +J6LNc+ncaLX+B9lYqqMQmxLyRK3JySpHWgC2ZPoyje8GR4ksf0IlvrRufFMj1Qyt +/a8Jc1Z2mXJR3PRrsL7EBDdp7Xl8BGqnjShZgIvKPDt6+nCIqsv13OjWaUBl+CKg +eZcDMt2nZGUfu4KJD6ktJ9nvthrocWxL4dRhFM7s/R9ad1IdmySoBH9SnUuMgM8e +bKQ5FnVqNiy1Z+JrsigPvb671KJ1MA9n2rPaBhY1cNYaaavIbKkBzDDTuQENBFLG +B58BCACe6UEcbxy5q6rIPXZikT4WCg6bw3AtdT/MeLUCmxWhhP9g+T3i0t7zU6bu +Zcw1uFxjnKsMEeDBHwdI0Bg9r5EVtp77GVf1EGrveKvISURlktkBtcezTVRfukEM +mTXBt/3vMGLg+AadFGZTU2ciKdO22AxLBZWVgz0ICoO/ljtvEFokrrzwDoF6ySHX +3Taiq/aMqI/RjIRXXMq6u+/oVC6droj10eZRYXGPMl7og5MRSUU8waV2fYgtfLmw +BtVEFbd0LPO5L1BNgIIMBx1X/QzMeBTldT+XcDSYh9ELfMJoynnVz0smZbeQ2PZ/ +DhGsVsLvJc+cx5cDnBKsPrejCTXBABEBAAGJAR8EGAECAAkFAlLGB58CGwwACgkQ +Yd4R7OJ2OnMzXAf+LxzrPplcEyIDKOoGW21320AwH5NqjInqj49K0gGhOL/xNkfs +C1wsiFFESdN7eL1+aDdk68CF1ClJagDKkH3U5o5PiPSjCsGBoGpdI6f7mRlxbUT2 +jQv0QC9Qav+9t4QcyBC/1BvwO1e7fgrpFLvBrXJpj4utHBP/R3WUo04kAp+sPbVk +tOEByvXAHkDDe0KAG2G9A0dLqF7kfydoSaioFmoJlkAu7LCwFLFbFZ3JRFAaYEQO +DfwkgPDDOA6k9Y1o+nbk/TgyEj7PtpzkiWh0aK5BRI8mjA/s0XNZKpuY1sghyASo +XvRQkAGPLcqS1D4k+kW3MLWpxjbSwGi8FCdsfg== +=d3FT +-----END PGP PUBLIC KEY BLOCK----- + +Type Bits KeyID Created Expires Algorithm Use pub 2048 5207CAD3 2013-01-02 ------- RSA Sign & Encrypt fingerprint: B87D 4569 86F1 9484 07E5 CCB4 3D68 B25D 5207 CAD3 uid Sendmail Signing Key/2013 @@ -2435,4 +2613,4 @@ DnF3FZZEzV7oqPwC2jzv/1dD6GFhtgy0cnyoPGUJ =nES8 -----END PGP PUBLIC KEY BLOCK----- -$Revision: 8.43 $, Last updated $Date: 2013/01/18 17:40:21 $ +$Revision: 8.46 $, Last updated $Date: 2014/01/18 00:20:24 $ Modified: vendor/sendmail/dist/README ============================================================================== --- vendor/sendmail/dist/README Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/README Sun Jan 26 20:46:55 2014 (r261190) @@ -1,7 +1,7 @@ SENDMAIL RELEASE 8 -This directory has the latest sendmail(TM) software from Sendmail, Inc. +This directory has the latest sendmail(TM) software from Proofpoint, Inc. Report any bugs to sendmail-bugs-YYYY@support.sendmail.org where YYYY is the current year, e.g., 2005. @@ -37,7 +37,7 @@ the latest updates. 4. Read cf/README. -Sendmail is a trademark of Sendmail, Inc. +Sendmail is a trademark of Proofpoint, Inc. US Patent Numbers 6865671, 6986037. +-----------------------+ @@ -465,4 +465,4 @@ sendmail Source for the sendmail program test Some test scripts (currently only for compilation aids). vacation Source for the vacation program. NOT PART OF SENDMAIL! -$Revision: 8.95 $, Last updated $Date: 2009/04/10 17:49:18 $ +$Revision: 8.96 $, Last updated $Date: 2013/11/22 20:51:01 $ Modified: vendor/sendmail/dist/RELEASE_NOTES ============================================================================== --- vendor/sendmail/dist/RELEASE_NOTES Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/RELEASE_NOTES Sun Jan 26 20:46:55 2014 (r261190) @@ -1,11 +1,58 @@ SENDMAIL RELEASE NOTES - $Id: RELEASE_NOTES,v 8.2024 2013/04/19 15:01:58 ca Exp $ + $Id: RELEASE_NOTES,v 8.2043 2014/01/23 20:27:19 ca Exp $ This listing shows the version of the sendmail binary, the version of the sendmail configuration files, the date of release, and a summary of the changes in that release. +8.14.8/8.14.8 2014/01/26 + Properly initialize all OpenSSL algorithms for versions before + OpenSSL 0.9.8o. Without this SHA2 algorithms may not + work properly, causing for example failures for certs + that use sha256WithRSAEncryption as signature algorithm. + When looking up hostnames, ensure only to return those records + for the requested family (AF_INET or AF_INET6). + On system that have NEEDSGETIPNODE and NETINET6 + this may have failed and cause delivery problems. + Problem noted by Kees Cook. + A new mailer flag '!' is available to suppress an MH hack + that drops an explicit From: header if it is the + same as what sendmail would generate. + Add an FFR (for future release) to use uncompressed IPv6 addresses, + i.e., they will not contain "::". For example, instead + of ::1 it will be 0:0:0:0:0:0:0:1. This means that + configuration data (including maps, files, classes, + custom ruleset, etc) have to use the same format. + This will be turned on in 8.15. It can be enabled in 8.14 + by compiling with: + APPENDDEF(`conf_sendmail_ENVDEF', `-D_FFR_IPV6_FULL') + in your devtools/Site/site.config.m4 file. + Add an additional case for the WorkAroundBrokenAAAA check when + dealing with broken nameservers by ignoring SERVFAIL + errors returned on T_AAAA (IPv6) lookups at delivery time. + Problem noted by Pavel Timofeev of OCS. + If available, pass LOGIN_SETCPUMASK and LOGIN_SETLOGINCLASS to + setusercontext() on deliveries as a different user. + Patch from Edward Tomasz Napierala from FreeBSD. + Avoid compiler warnings from a change in Cyrus-SASL 2.1.25. + Patch from Hajimu UMEMOTO from FreeBSD. + Add support for DHParameters 2048-bit primes. + CONFIG: Accept IPv6 literals when evaluating the HELO/EHLO argument + in FEATURE(`block_bad_helo'). Suggested by Andrey Chernov. + LIBSMDB: Add a missing check for malloc() in libsmdb/smndbm.c. + Patch from Bill Parker. + LIBSMDB: Fix minor memory leaks in libsmdb/ if allocations + fail. Patch from John Beck of Oracle. + Portability: + Add support for Darwin 12.x and 13.x (Mac OS X 10.8 and 10.9). + On Linux use socklen_t as the type for the 3rd argument + for getsockname/getpeername if the glibc version is at + least 2.1. + Added Files: + devtools/OS/Darwin.12.x + devtools/OS/Darwin.13.x + 8.14.7/8.14.7 2013/04/21 Drop support for IPv4-mapped IPv6 addresses to prevent the MTA from using a mapped address over a legitimate IPv6 address @@ -80,9 +127,12 @@ summary of the changes in that release. the reason for the failure in a single log line. Suggested by James Carey of Boeing. Portability: - Add support for Darwin 11.x and 12.x (Mac OS X 10.7 and 10.8). + Add support for Darwin 11.x (Mac OS X 10.7). Add support for SunOS 5.12 (aka Solaris 12). Patch from John Beck of Oracle. + Added Files: + devtools/OS/Darwin.11.x + devtools/OS/SunOS.5.12 8.14.5/8.14.5 2011/05/17 Do not cache SMTP extensions across connections as the cache Modified: vendor/sendmail/dist/cf/README ============================================================================== --- vendor/sendmail/dist/cf/README Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/README Sun Jan 26 20:46:55 2014 (r261190) @@ -77,7 +77,7 @@ Let's examine a typical .mc file: divert(-1) # - # Copyright (c) 1998-2005 Sendmail, Inc. and its suppliers. + # Copyright (c) 1998-2005 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -1402,6 +1402,9 @@ preserve_local_plus_detail that address will be looked up in the alias file; user+* and user will not be looked up). Only use if the local delivery agent in use supports +detail addressing. + Moreover, this will most likely not work if the 'w' flag + for the local mailer is set as the entire local address + including +detail is passed to the user lookup function. compat_check Enable ruleset check_compat to look up pairs of addresses with the Compat: tag -- Compat:sender<@>recipient -- in the @@ -4701,4 +4704,4 @@ M4 DIVERSIONS 8 DNS based blacklists 9 special local rulesets (1 and 2) -$Revision: 8.728 $, Last updated $Date: 2012/09/07 16:29:13 $ +$Revision: 8.730 $, Last updated $Date: 2014/01/16 15:55:51 $ Modified: vendor/sendmail/dist/cf/cf/Build ============================================================================== --- vendor/sendmail/dist/cf/cf/Build Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/Build Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ #!/bin/sh -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set @@ -8,7 +8,7 @@ # the sendmail distribution. # # -# $Id: Build,v 8.7 1999/03/02 02:37:12 peterh Exp $ +# $Id: Build,v 8.8 2013/11/22 20:51:08 ca Exp $ # # Modified: vendor/sendmail/dist/cf/cf/chez.cs.mc ============================================================================== --- vendor/sendmail/dist/cf/cf/chez.cs.mc Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/chez.cs.mc Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: chez.cs.mc,v 8.14 1999/02/07 07:25:59 gshapiro Exp $') +VERSIONID(`$Id: chez.cs.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`LOCAL_RELAY', vangogh.CS.Berkeley.EDU)dnl Modified: vendor/sendmail/dist/cf/cf/clientproto.mc ============================================================================== --- vendor/sendmail/dist/cf/cf/clientproto.mc Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/clientproto.mc Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2000 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: clientproto.mc,v 8.16 2000/03/21 21:05:26 ca Exp $') +VERSIONID(`$Id: clientproto.mc,v 8.17 2013/11/22 20:51:08 ca Exp $') OSTYPE(unknown) FEATURE(nullclient, mailhost.$m) Modified: vendor/sendmail/dist/cf/cf/cs-hpux10.mc ============================================================================== --- vendor/sendmail/dist/cf/cf/cs-hpux10.mc Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/cs-hpux10.mc Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-hpux10.mc,v 8.13 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-hpux10.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux10)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`MAIL_HUB', mailspool.CS.Berkeley.EDU)dnl Modified: vendor/sendmail/dist/cf/cf/cs-hpux9.mc ============================================================================== --- vendor/sendmail/dist/cf/cf/cs-hpux9.mc Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/cs-hpux9.mc Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-hpux9.mc,v 8.14 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-hpux9.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux9)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`MAIL_HUB', mailspool.CS.Berkeley.EDU)dnl Modified: vendor/sendmail/dist/cf/cf/cs-osf1.mc ============================================================================== --- vendor/sendmail/dist/cf/cf/cs-osf1.mc Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/cs-osf1.mc Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-osf1.mc,v 8.13 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-osf1.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(osf1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: vendor/sendmail/dist/cf/cf/cs-solaris2.mc ============================================================================== --- vendor/sendmail/dist/cf/cf/cs-solaris2.mc Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/cs-solaris2.mc Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-solaris2.mc,v 8.12 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-solaris2.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') OSTYPE(solaris2)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: vendor/sendmail/dist/cf/cf/cs-sunos4.1.mc ============================================================================== --- vendor/sendmail/dist/cf/cf/cs-sunos4.1.mc Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/cs-sunos4.1.mc Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-sunos4.1.mc,v 8.13 1999/02/07 07:26:01 gshapiro Exp $') +VERSIONID(`$Id: cs-sunos4.1.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(sunos4.1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: vendor/sendmail/dist/cf/cf/cs-ultrix4.mc ============================================================================== --- vendor/sendmail/dist/cf/cf/cs-ultrix4.mc Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/cs-ultrix4.mc Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-ultrix4.mc,v 8.13 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: cs-ultrix4.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: vendor/sendmail/dist/cf/cf/generic-bsd4.4.cf ============================================================================== --- vendor/sendmail/dist/cf/cf/generic-bsd4.4.cf Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/generic-bsd4.4.cf Sun Jan 26 20:46:55 2014 (r261190) @@ -1,5 +1,5 @@ # -# Copyright (c) 1998-2004, 2009, 2010 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2004, 2009, 2010 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983, 1995 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -16,8 +16,8 @@ ##### ##### SENDMAIL CONFIGURATION FILE ##### -##### built by ca@wiz.smi.sendmail.com on Fri Apr 19 08:04:43 PDT 2013 -##### in /extra/home/ca/sm-8.14.7/OpenSource/sendmail-8.14.7/cf/cf +##### built by ca@lab.smi.sendmail.com on Thu Jan 23 12:29:13 PST 2014 +##### in /home/ca/sm8-rel/sm-8.14.8/OpenSource/sendmail-8.14.8/cf/cf ##### using ../ as configuration include directory ##### ###################################################################### @@ -27,21 +27,21 @@ ###################################################################### ###################################################################### -##### $Id: cfhead.m4,v 8.121 2010/01/07 18:20:19 ca Exp $ ##### -##### $Id: cf.m4,v 8.32 1999/02/07 07:26:14 gshapiro Exp $ ##### -##### $Id: generic-bsd4.4.mc,v 8.10 1999/02/07 07:26:02 gshapiro Exp $ ##### +##### $Id: cfhead.m4,v 8.122 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: cf.m4,v 8.33 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: generic-bsd4.4.mc,v 8.11 2013/11/22 20:51:08 ca Exp $ ##### -##### $Id: bsd4.4.m4,v 8.14 1999/04/24 05:37:40 gshapiro Exp $ ##### +##### $Id: bsd4.4.m4,v 8.15 2013/11/22 20:51:15 ca Exp $ ##### -##### $Id: generic.m4,v 8.15 1999/04/04 00:51:09 ca Exp $ ##### +##### $Id: generic.m4,v 8.16 2013/11/22 20:51:10 ca Exp $ ##### -##### $Id: redirect.m4,v 8.15 1999/08/06 01:47:36 gshapiro Exp $ ##### +##### $Id: redirect.m4,v 8.16 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: use_cw_file.m4,v 8.11 2001/08/26 20:58:57 gshapiro Exp $ ##### +##### $Id: use_cw_file.m4,v 8.12 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ ##### +##### $Id: proto.m4,v 8.762 2013/11/22 20:51:13 ca Exp $ ##### # level 10 config file format V10/Berkeley @@ -122,7 +122,7 @@ DnMAILER-DAEMON CPREDIRECT # Configuration version number -DZ8.14.7 +DZ8.14.8 ############### @@ -1298,7 +1298,7 @@ Sauthinfo ### Local and Program Mailer specification ### ################################################## -##### $Id: local.m4,v 8.59 2004/11/23 00:37:25 ca Exp $ ##### +##### $Id: local.m4,v 8.60 2013/11/22 20:51:14 ca Exp $ ##### # # Envelope sender rewriting @@ -1350,7 +1350,7 @@ Mprog, P=/bin/sh, F=lsDFMoqeu9, S=EnvFr ### SMTP Mailer specification ### ##################################### -##### $Id: smtp.m4,v 8.65 2006/07/12 21:08:10 ca Exp $ ##### +##### $Id: smtp.m4,v 8.66 2013/11/22 20:51:14 ca Exp $ ##### # # common sender and masquerading recipient rewriting @@ -1441,7 +1441,7 @@ Mrelay, P=[IPC], F=mDFMuXa8, S=EnvFromS ### generic-bsd4.4.mc ### # divert(-1) # # -# # Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# # Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # # All rights reserved. # # Copyright (c) 1983 Eric P. Allman. All rights reserved. # # Copyright (c) 1988, 1993 @@ -1462,7 +1462,7 @@ Mrelay, P=[IPC], F=mDFMuXa8, S=EnvFromS # # # # divert(0)dnl -# VERSIONID(`$Id: generic-bsd4.4.mc,v 8.10 1999/02/07 07:26:02 gshapiro Exp $') +# VERSIONID(`$Id: generic-bsd4.4.mc,v 8.11 2013/11/22 20:51:08 ca Exp $') # OSTYPE(bsd4.4)dnl # DOMAIN(generic)dnl # MAILER(local)dnl Modified: vendor/sendmail/dist/cf/cf/generic-bsd4.4.mc ============================================================================== --- vendor/sendmail/dist/cf/cf/generic-bsd4.4.mc Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/generic-bsd4.4.mc Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -21,7 +21,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-bsd4.4.mc,v 8.10 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-bsd4.4.mc,v 8.11 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: vendor/sendmail/dist/cf/cf/generic-hpux10.cf ============================================================================== --- vendor/sendmail/dist/cf/cf/generic-hpux10.cf Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/generic-hpux10.cf Sun Jan 26 20:46:55 2014 (r261190) @@ -1,5 +1,5 @@ # -# Copyright (c) 1998-2004, 2009, 2010 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2004, 2009, 2010 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983, 1995 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -16,8 +16,8 @@ ##### ##### SENDMAIL CONFIGURATION FILE ##### -##### built by ca@wiz.smi.sendmail.com on Fri Apr 19 08:04:43 PDT 2013 -##### in /extra/home/ca/sm-8.14.7/OpenSource/sendmail-8.14.7/cf/cf +##### built by ca@lab.smi.sendmail.com on Thu Jan 23 12:29:13 PST 2014 +##### in /home/ca/sm8-rel/sm-8.14.8/OpenSource/sendmail-8.14.8/cf/cf ##### using ../ as configuration include directory ##### ###################################################################### @@ -27,22 +27,22 @@ ###################################################################### ###################################################################### -##### $Id: cfhead.m4,v 8.121 2010/01/07 18:20:19 ca Exp $ ##### -##### $Id: cf.m4,v 8.32 1999/02/07 07:26:14 gshapiro Exp $ ##### -##### $Id: generic-hpux10.mc,v 8.13 2001/05/29 17:29:52 ca Exp $ ##### +##### $Id: cfhead.m4,v 8.122 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: cf.m4,v 8.33 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: generic-hpux10.mc,v 8.14 2013/11/22 20:51:08 ca Exp $ ##### -##### $Id: hpux10.m4,v 8.19 1999/04/24 05:37:41 gshapiro Exp $ ##### +##### $Id: hpux10.m4,v 8.20 2013/11/22 20:51:15 ca Exp $ ##### -##### $Id: generic.m4,v 8.15 1999/04/04 00:51:09 ca Exp $ ##### +##### $Id: generic.m4,v 8.16 2013/11/22 20:51:10 ca Exp $ ##### -##### $Id: redirect.m4,v 8.15 1999/08/06 01:47:36 gshapiro Exp $ ##### +##### $Id: redirect.m4,v 8.16 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: use_cw_file.m4,v 8.11 2001/08/26 20:58:57 gshapiro Exp $ ##### +##### $Id: use_cw_file.m4,v 8.12 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ ##### +##### $Id: proto.m4,v 8.762 2013/11/22 20:51:13 ca Exp $ ##### # level 10 config file format V10/Berkeley @@ -123,7 +123,7 @@ DnMAILER-DAEMON CPREDIRECT # Configuration version number -DZ8.14.7 +DZ8.14.8 ############### @@ -1299,7 +1299,7 @@ Sauthinfo ### Local and Program Mailer specification ### ################################################## -##### $Id: local.m4,v 8.59 2004/11/23 00:37:25 ca Exp $ ##### +##### $Id: local.m4,v 8.60 2013/11/22 20:51:14 ca Exp $ ##### # # Envelope sender rewriting @@ -1351,7 +1351,7 @@ Mprog, P=/usr/bin/sh, F=lsDFMoqeu9, S=E ### SMTP Mailer specification ### ##################################### -##### $Id: smtp.m4,v 8.65 2006/07/12 21:08:10 ca Exp $ ##### +##### $Id: smtp.m4,v 8.66 2013/11/22 20:51:14 ca Exp $ ##### # # common sender and masquerading recipient rewriting @@ -1442,7 +1442,7 @@ Mrelay, P=[IPC], F=mDFMuXa8, S=EnvFromS ### generic-hpux10.mc ### # divert(-1) # # -# # Copyright (c) 1998, 1999, 2001 Sendmail, Inc. and its suppliers. +# # Copyright (c) 1998, 1999, 2001 Proofpoint, Inc. and its suppliers. # # All rights reserved. # # Copyright (c) 1983 Eric P. Allman. All rights reserved. # # Copyright (c) 1988, 1993 @@ -1462,7 +1462,7 @@ Mrelay, P=[IPC], F=mDFMuXa8, S=EnvFromS # # # # divert(0)dnl -# VERSIONID(`$Id: generic-hpux10.mc,v 8.13 2001/05/29 17:29:52 ca Exp $') +# VERSIONID(`$Id: generic-hpux10.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') # OSTYPE(hpux10)dnl # DOMAIN(generic)dnl # MAILER(local)dnl Modified: vendor/sendmail/dist/cf/cf/generic-hpux10.mc ============================================================================== --- vendor/sendmail/dist/cf/cf/generic-hpux10.mc Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/generic-hpux10.mc Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999, 2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999, 2001 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-hpux10.mc,v 8.13 2001/05/29 17:29:52 ca Exp $') +VERSIONID(`$Id: generic-hpux10.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux10)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: vendor/sendmail/dist/cf/cf/generic-hpux9.cf ============================================================================== --- vendor/sendmail/dist/cf/cf/generic-hpux9.cf Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/generic-hpux9.cf Sun Jan 26 20:46:55 2014 (r261190) @@ -1,5 +1,5 @@ # -# Copyright (c) 1998-2004, 2009, 2010 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2004, 2009, 2010 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983, 1995 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -16,8 +16,8 @@ ##### ##### SENDMAIL CONFIGURATION FILE ##### -##### built by ca@wiz.smi.sendmail.com on Fri Apr 19 08:04:43 PDT 2013 -##### in /extra/home/ca/sm-8.14.7/OpenSource/sendmail-8.14.7/cf/cf +##### built by ca@lab.smi.sendmail.com on Thu Jan 23 12:29:13 PST 2014 +##### in /home/ca/sm8-rel/sm-8.14.8/OpenSource/sendmail-8.14.8/cf/cf ##### using ../ as configuration include directory ##### ###################################################################### @@ -27,22 +27,22 @@ ###################################################################### ###################################################################### -##### $Id: cfhead.m4,v 8.121 2010/01/07 18:20:19 ca Exp $ ##### -##### $Id: cf.m4,v 8.32 1999/02/07 07:26:14 gshapiro Exp $ ##### -##### $Id: generic-hpux9.mc,v 8.11 1999/02/07 07:26:02 gshapiro Exp $ ##### +##### $Id: cfhead.m4,v 8.122 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: cf.m4,v 8.33 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: generic-hpux9.mc,v 8.12 2013/11/22 20:51:08 ca Exp $ ##### -##### $Id: hpux9.m4,v 8.24 1999/04/24 05:37:41 gshapiro Exp $ ##### +##### $Id: hpux9.m4,v 8.25 2013/11/22 20:51:15 ca Exp $ ##### -##### $Id: generic.m4,v 8.15 1999/04/04 00:51:09 ca Exp $ ##### +##### $Id: generic.m4,v 8.16 2013/11/22 20:51:10 ca Exp $ ##### -##### $Id: redirect.m4,v 8.15 1999/08/06 01:47:36 gshapiro Exp $ ##### +##### $Id: redirect.m4,v 8.16 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: use_cw_file.m4,v 8.11 2001/08/26 20:58:57 gshapiro Exp $ ##### +##### $Id: use_cw_file.m4,v 8.12 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ ##### +##### $Id: proto.m4,v 8.762 2013/11/22 20:51:13 ca Exp $ ##### # level 10 config file format V10/Berkeley @@ -123,7 +123,7 @@ DnMAILER-DAEMON CPREDIRECT # Configuration version number -DZ8.14.7 +DZ8.14.8 ############### @@ -1299,7 +1299,7 @@ Sauthinfo ### Local and Program Mailer specification ### ################################################## -##### $Id: local.m4,v 8.59 2004/11/23 00:37:25 ca Exp $ ##### +##### $Id: local.m4,v 8.60 2013/11/22 20:51:14 ca Exp $ ##### # # Envelope sender rewriting @@ -1351,7 +1351,7 @@ Mprog, P=/bin/sh, F=lsDFMoqeu9, S=EnvFr ### SMTP Mailer specification ### ##################################### -##### $Id: smtp.m4,v 8.65 2006/07/12 21:08:10 ca Exp $ ##### +##### $Id: smtp.m4,v 8.66 2013/11/22 20:51:14 ca Exp $ ##### # # common sender and masquerading recipient rewriting @@ -1442,7 +1442,7 @@ Mrelay, P=[IPC], F=mDFMuXa8, S=EnvFromS ### generic-hpux9.mc ### # divert(-1) # # -# # Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# # Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # # All rights reserved. # # Copyright (c) 1983 Eric P. Allman. All rights reserved. # # Copyright (c) 1988, 1993 @@ -1462,7 +1462,7 @@ Mrelay, P=[IPC], F=mDFMuXa8, S=EnvFromS # # # # divert(0)dnl -# VERSIONID(`$Id: generic-hpux9.mc,v 8.11 1999/02/07 07:26:02 gshapiro Exp $') +# VERSIONID(`$Id: generic-hpux9.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') # OSTYPE(hpux9)dnl # DOMAIN(generic)dnl # MAILER(local)dnl Modified: vendor/sendmail/dist/cf/cf/generic-hpux9.mc ============================================================================== --- vendor/sendmail/dist/cf/cf/generic-hpux9.mc Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/generic-hpux9.mc Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-hpux9.mc,v 8.11 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-hpux9.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux9)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: vendor/sendmail/dist/cf/cf/generic-linux.cf ============================================================================== --- vendor/sendmail/dist/cf/cf/generic-linux.cf Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/generic-linux.cf Sun Jan 26 20:46:55 2014 (r261190) @@ -1,5 +1,5 @@ # -# Copyright (c) 1998-2004, 2009, 2010 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2004, 2009, 2010 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983, 1995 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -16,8 +16,8 @@ ##### ##### SENDMAIL CONFIGURATION FILE ##### -##### built by ca@wiz.smi.sendmail.com on Fri Apr 19 08:04:43 PDT 2013 -##### in /extra/home/ca/sm-8.14.7/OpenSource/sendmail-8.14.7/cf/cf +##### built by ca@lab.smi.sendmail.com on Thu Jan 23 12:29:13 PST 2014 +##### in /home/ca/sm8-rel/sm-8.14.8/OpenSource/sendmail-8.14.8/cf/cf ##### using ../ as configuration include directory ##### ###################################################################### @@ -27,26 +27,26 @@ ###################################################################### ###################################################################### -##### $Id: cfhead.m4,v 8.121 2010/01/07 18:20:19 ca Exp $ ##### -##### $Id: cf.m4,v 8.32 1999/02/07 07:26:14 gshapiro Exp $ ##### -##### $Id: generic-linux.mc,v 8.1 1999/09/24 22:48:05 gshapiro Exp $ ##### +##### $Id: cfhead.m4,v 8.122 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: cf.m4,v 8.33 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: generic-linux.mc,v 8.2 2013/11/22 20:51:08 ca Exp $ ##### -##### $Id: linux.m4,v 8.13 2000/09/17 17:30:00 gshapiro Exp $ ##### +##### $Id: linux.m4,v 8.14 2013/11/22 20:51:15 ca Exp $ ##### -##### $Id: local_procmail.m4,v 8.22 2002/11/17 04:24:19 ca Exp $ ##### +##### $Id: local_procmail.m4,v 8.23 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: generic.m4,v 8.15 1999/04/04 00:51:09 ca Exp $ ##### +##### $Id: generic.m4,v 8.16 2013/11/22 20:51:10 ca Exp $ ##### -##### $Id: redirect.m4,v 8.15 1999/08/06 01:47:36 gshapiro Exp $ ##### +##### $Id: redirect.m4,v 8.16 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: use_cw_file.m4,v 8.11 2001/08/26 20:58:57 gshapiro Exp $ ##### +##### $Id: use_cw_file.m4,v 8.12 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ ##### +##### $Id: proto.m4,v 8.762 2013/11/22 20:51:13 ca Exp $ ##### # level 10 config file format V10/Berkeley @@ -127,7 +127,7 @@ DnMAILER-DAEMON CPREDIRECT # Configuration version number -DZ8.14.7 +DZ8.14.8 ############### @@ -1303,7 +1303,7 @@ Sauthinfo ### Local and Program Mailer specification ### ################################################## -##### $Id: local.m4,v 8.59 2004/11/23 00:37:25 ca Exp $ ##### +##### $Id: local.m4,v 8.60 2013/11/22 20:51:14 ca Exp $ ##### # # Envelope sender rewriting @@ -1355,7 +1355,7 @@ Mprog, P=/bin/sh, F=lsDFMoqeu9, S=EnvFr ### SMTP Mailer specification ### ##################################### -##### $Id: smtp.m4,v 8.65 2006/07/12 21:08:10 ca Exp $ ##### +##### $Id: smtp.m4,v 8.66 2013/11/22 20:51:14 ca Exp $ ##### # # common sender and masquerading recipient rewriting @@ -1446,7 +1446,7 @@ Mrelay, P=[IPC], F=mDFMuXa8, S=EnvFromS ### generic-linux.mc ### # divert(-1) # # -# # Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# # Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # # All rights reserved. # # Copyright (c) 1983 Eric P. Allman. All rights reserved. # # Copyright (c) 1988, 1993 @@ -1466,7 +1466,7 @@ Mrelay, P=[IPC], F=mDFMuXa8, S=EnvFromS # # # # divert(0)dnl -# VERSIONID(`$Id: generic-linux.mc,v 8.1 1999/09/24 22:48:05 gshapiro Exp $') +# VERSIONID(`$Id: generic-linux.mc,v 8.2 2013/11/22 20:51:08 ca Exp $') # OSTYPE(linux)dnl # DOMAIN(generic)dnl # MAILER(local)dnl Modified: vendor/sendmail/dist/cf/cf/generic-linux.mc ============================================================================== --- vendor/sendmail/dist/cf/cf/generic-linux.mc Sun Jan 26 20:13:28 2014 (r261189) +++ vendor/sendmail/dist/cf/cf/generic-linux.mc Sun Jan 26 20:46:55 2014 (r261190) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 20:51:50 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9BF6B954; Sun, 26 Jan 2014 20:51:50 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6F3B31969; Sun, 26 Jan 2014 20:51:50 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QKpoED028319; Sun, 26 Jan 2014 20:51:50 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QKpoYP028318; Sun, 26 Jan 2014 20:51:50 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201401262051.s0QKpoYP028318@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sun, 26 Jan 2014 20:51:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261191 - vendor/sendmail/8.14.8 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 20:51:50 -0000 Author: gshapiro Date: Sun Jan 26 20:51:49 2014 New Revision: 261191 URL: http://svnweb.freebsd.org/changeset/base/261191 Log: Tag sendmail 8.14.8 Added: vendor/sendmail/8.14.8/ - copied from r261190, vendor/sendmail/dist/ From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 21:19:36 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 21EEE5D6; Sun, 26 Jan 2014 21:19:36 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 01B221B21; Sun, 26 Jan 2014 21:19:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QLJZw0038089; Sun, 26 Jan 2014 21:19:35 GMT (envelope-from jilles@svn.freebsd.org) Received: (from jilles@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QLJYP4038081; Sun, 26 Jan 2014 21:19:34 GMT (envelope-from jilles@svn.freebsd.org) Message-Id: <201401262119.s0QLJYP4038081@svn.freebsd.org> From: Jilles Tjoelker Date: Sun, 26 Jan 2014 21:19:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261192 - in head/bin/sh: . tests/parser X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 21:19:36 -0000 Author: jilles Date: Sun Jan 26 21:19:33 2014 New Revision: 261192 URL: http://svnweb.freebsd.org/changeset/base/261192 Log: sh: Allow aliases to force alias substitution on the following word. If an alias's value ends with a space or tab, the next word is also checked for aliases. This is a POSIX feature. It is useful with utilities like command and nohup (alias them to themselves followed by a space). Added: head/bin/sh/tests/parser/alias14.0 (contents, props changed) head/bin/sh/tests/parser/alias15.0 (contents, props changed) head/bin/sh/tests/parser/alias15.0.stdout (contents, props changed) Modified: head/bin/sh/input.c head/bin/sh/parser.c head/bin/sh/parser.h head/bin/sh/sh.1 head/bin/sh/tests/parser/Makefile Modified: head/bin/sh/input.c ============================================================================== --- head/bin/sh/input.c Sun Jan 26 20:51:49 2014 (r261191) +++ head/bin/sh/input.c Sun Jan 26 21:19:33 2014 (r261192) @@ -367,12 +367,16 @@ popstring(void) struct strpush *sp = parsefile->strpush; INTOFF; + if (sp->ap) { + if (parsenextc != sp->ap->val && + (parsenextc[-1] == ' ' || parsenextc[-1] == '\t')) + forcealias(); + sp->ap->flag &= ~ALIASINUSE; + } parsenextc = sp->prevstring; parsenleft = sp->prevnleft; parselleft = sp->prevlleft; /*out2fmt_flush("*** calling popstring: restoring to '%s'\n", parsenextc);*/ - if (sp->ap) - sp->ap->flag &= ~ALIASINUSE; parsefile->strpush = sp->prev; if (sp != &(parsefile->basestrpush)) ckfree(sp); Modified: head/bin/sh/parser.c ============================================================================== --- head/bin/sh/parser.c Sun Jan 26 20:51:49 2014 (r261191) +++ head/bin/sh/parser.c Sun Jan 26 21:19:33 2014 (r261192) @@ -683,6 +683,12 @@ makebinary(int type, union node *n1, uni } void +forcealias(void) +{ + checkkwd |= CHKALIAS; +} + +void fixredir(union node *n, const char *text, int err) { TRACE(("Fix redir %s %d\n", text, err)); Modified: head/bin/sh/parser.h ============================================================================== --- head/bin/sh/parser.h Sun Jan 26 20:51:49 2014 (r261191) +++ head/bin/sh/parser.h Sun Jan 26 21:19:33 2014 (r261192) @@ -76,6 +76,7 @@ extern const char *const parsekwd[]; union node *parsecmd(int); +void forcealias(void); void fixredir(union node *, const char *, int); int goodname(const char *); int isassignment(const char *); Modified: head/bin/sh/sh.1 ============================================================================== --- head/bin/sh/sh.1 Sun Jan 26 20:51:49 2014 (r261191) +++ head/bin/sh/sh.1 Sun Jan 26 21:19:33 2014 (r261192) @@ -32,7 +32,7 @@ .\" from: @(#)sh.1 8.6 (Berkeley) 5/4/95 .\" $FreeBSD$ .\" -.Dd January 3, 2014 +.Dd January 26, 2014 .Dt SH 1 .Os .Sh NAME @@ -533,6 +533,20 @@ would become .Pp .Dl "ls -F foobar" .Pp +Aliases are also recognized after an alias +whose value ends with a space or tab. +For example, if there is also an alias called +.Dq Li nohup +with the value +.Dq Li "nohup " , +then the input +.Pp +.Dl "nohup lf foobar" +.Pp +would become +.Pp +.Dl "nohup ls -F foobar" +.Pp Aliases provide a convenient way for naive users to create shorthands for commands without having to learn how to create functions with arguments. Modified: head/bin/sh/tests/parser/Makefile ============================================================================== --- head/bin/sh/tests/parser/Makefile Sun Jan 26 20:51:49 2014 (r261191) +++ head/bin/sh/tests/parser/Makefile Sun Jan 26 21:19:33 2014 (r261192) @@ -18,6 +18,8 @@ FILES+= alias10.0 FILES+= alias11.0 FILES+= alias12.0 FILES+= alias13.0 +FILES+= alias14.0 +FILES+= alias15.0 alias15.0.stdout FILES+= and-pipe-not.0 FILES+= case1.0 FILES+= case2.0 Added: head/bin/sh/tests/parser/alias14.0 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/bin/sh/tests/parser/alias14.0 Sun Jan 26 21:19:33 2014 (r261192) @@ -0,0 +1,6 @@ +# $FreeBSD$ + +alias command='command ' +alias alias0=exit +eval 'command alias0 0' +exit 3 Added: head/bin/sh/tests/parser/alias15.0 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/bin/sh/tests/parser/alias15.0 Sun Jan 26 21:19:33 2014 (r261192) @@ -0,0 +1,12 @@ +# $FreeBSD$ + +f_echoanddo() { + printf '%s\n' "$*" + "$@" +} + +alias echoanddo='f_echoanddo ' +alias alias0='echo test2' +eval 'echoanddo echo test1' +eval 'echoanddo alias0' +exit 0 Added: head/bin/sh/tests/parser/alias15.0.stdout ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/bin/sh/tests/parser/alias15.0.stdout Sun Jan 26 21:19:33 2014 (r261192) @@ -0,0 +1,4 @@ +echo test1 +test1 +echo test2 +test2 From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 22:49:25 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 703A6637; Sun, 26 Jan 2014 22:49:25 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 50226133E; Sun, 26 Jan 2014 22:49:25 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QMnP5M074558; Sun, 26 Jan 2014 22:49:25 GMT (envelope-from jilles@svn.freebsd.org) Received: (from jilles@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QMnPCd074557; Sun, 26 Jan 2014 22:49:25 GMT (envelope-from jilles@svn.freebsd.org) Message-Id: <201401262249.s0QMnPCd074557@svn.freebsd.org> From: Jilles Tjoelker Date: Sun, 26 Jan 2014 22:49:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261193 - head/usr.bin/login X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 22:49:25 -0000 Author: jilles Date: Sun Jan 26 22:49:24 2014 New Revision: 261193 URL: http://svnweb.freebsd.org/changeset/base/261193 Log: login: Clean up PAM and audit, then exit, on SIGHUP and SIGTERM. This avoids leaving stale entries in utmpx after the connection is closed on an open login session. It also allows a clean way (SIGTERM) to forcibly terminate a user's terminal session. This does not affect the situation for "hung" processes after the connection is closed. The foreground process group receives SIGHUP and the tty becomes inaccessible. Also replace all use of the obsolete signal() function with sigaction() (not only the part where it is actually required: SIGHUP and SIGTERM must mask the other as well when caught). PR: misc/183495 Reviewed by: ed Modified: head/usr.bin/login/login.c Modified: head/usr.bin/login/login.c ============================================================================== --- head/usr.bin/login/login.c Sun Jan 26 21:19:33 2014 (r261192) +++ head/usr.bin/login/login.c Sun Jan 26 22:49:24 2014 (r261193) @@ -83,6 +83,7 @@ __FBSDID("$FreeBSD$"); static int auth_pam(void); static void bail(int, int); +static void bail_internal(int, int, int); static int export(const char *); static void export_pam_environment(void); static int motd(const char *); @@ -94,6 +95,7 @@ static void refused(const char *, cons static const char *stypeof(char *); static void sigint(int); static void timedout(int); +static void bail_sig(int); static void usage(void); #define TTYGRPNAME "tty" /* group to own ttys */ @@ -172,13 +174,18 @@ main(int argc, char *argv[]) login_cap_t *lc = NULL; login_cap_t *lc_user = NULL; pid_t pid; + sigset_t mask, omask; + struct sigaction sa; #ifdef USE_BSM_AUDIT char auditsuccess = 1; #endif - (void)signal(SIGQUIT, SIG_IGN); - (void)signal(SIGINT, SIG_IGN); - (void)signal(SIGHUP, SIG_IGN); + sa.sa_flags = SA_RESTART; + (void)sigfillset(&sa.sa_mask); + sa.sa_handler = SIG_IGN; + (void)sigaction(SIGQUIT, &sa, NULL); + (void)sigaction(SIGINT, &sa, NULL); + (void)sigaction(SIGHUP, &sa, NULL); if (setjmp(timeout_buf)) { if (failures) badlogin(username); @@ -186,7 +193,8 @@ main(int argc, char *argv[]) timeout); bail(NO_SLEEP_EXIT, 0); } - (void)signal(SIGALRM, timedout); + sa.sa_handler = timedout; + (void)sigaction(SIGALRM, &sa, NULL); (void)alarm(timeout); (void)setpriority(PRIO_PROCESS, 0, 0); @@ -370,7 +378,14 @@ main(int argc, char *argv[]) /* committed to login -- turn off timeout */ (void)alarm((u_int)0); - (void)signal(SIGHUP, SIG_DFL); + + (void)sigemptyset(&mask); + (void)sigaddset(&mask, SIGHUP); + (void)sigaddset(&mask, SIGTERM); + (void)sigprocmask(SIG_BLOCK, &mask, &omask); + sa.sa_handler = bail_sig; + (void)sigaction(SIGHUP, &sa, NULL); + (void)sigaction(SIGTERM, &sa, NULL); endpwent(); @@ -550,10 +565,17 @@ main(int argc, char *argv[]) /* * Parent: wait for child to finish, then clean up * session. + * + * If we get SIGHUP or SIGTERM, clean up the session + * and exit right away. This will make the terminal + * inaccessible and send SIGHUP to the foreground + * process group. */ int status; setproctitle("-%s [pam]", getprogname()); + (void)sigprocmask(SIG_SETMASK, &omask, NULL); waitpid(pid, &status, 0); + (void)sigprocmask(SIG_BLOCK, &mask, NULL); bail(NO_SLEEP_EXIT, 0); } @@ -627,10 +649,15 @@ main(int argc, char *argv[]) login_close(lc_user); login_close(lc); - (void)signal(SIGALRM, SIG_DFL); - (void)signal(SIGQUIT, SIG_DFL); - (void)signal(SIGINT, SIG_DFL); - (void)signal(SIGTSTP, SIG_IGN); + sa.sa_handler = SIG_DFL; + (void)sigaction(SIGALRM, &sa, NULL); + (void)sigaction(SIGQUIT, &sa, NULL); + (void)sigaction(SIGINT, &sa, NULL); + (void)sigaction(SIGTERM, &sa, NULL); + (void)sigaction(SIGHUP, &sa, NULL); + sa.sa_handler = SIG_IGN; + (void)sigaction(SIGTSTP, &sa, NULL); + (void)sigprocmask(SIG_SETMASK, &omask, NULL); /* * Login shells have a leading '-' in front of argv[0] @@ -847,17 +874,20 @@ sigint(int signo __unused) static int motd(const char *motdfile) { - sig_t oldint; + struct sigaction newint, oldint; FILE *f; int ch; if ((f = fopen(motdfile, "r")) == NULL) return (-1); motdinterrupt = 0; - oldint = signal(SIGINT, sigint); + newint.sa_handler = sigint; + newint.sa_flags = 0; + sigfillset(&newint.sa_mask); + sigaction(SIGINT, &newint, &oldint); while ((ch = fgetc(f)) != EOF && !motdinterrupt) putchar(ch); - signal(SIGINT, oldint); + sigaction(SIGINT, &oldint, NULL); if (ch != EOF || ferror(f)) { fclose(f); return (-1); @@ -966,12 +996,10 @@ pam_cleanup(void) } } -/* - * Exit, optionally after sleeping a few seconds - */ -void -bail(int sec, int eval) +static void +bail_internal(int sec, int eval, int signo) { + struct sigaction sa; pam_cleanup(); #ifdef USE_BSM_AUDIT @@ -979,5 +1007,36 @@ bail(int sec, int eval) audit_logout(); #endif (void)sleep(sec); - exit(eval); + if (signo == 0) + exit(eval); + else { + sa.sa_handler = SIG_DFL; + sa.sa_flags = 0; + (void)sigemptyset(&sa.sa_mask); + (void)sigaction(signo, &sa, NULL); + (void)sigaddset(&sa.sa_mask, signo); + (void)sigprocmask(SIG_UNBLOCK, &sa.sa_mask, NULL); + raise(signo); + exit(128 + signo); + } +} + +/* + * Exit, optionally after sleeping a few seconds + */ +static void +bail(int sec, int eval) +{ + bail_internal(sec, eval, 0); +} + +/* + * Exit because of a signal. + * This is not async-signal safe, so only call async-signal safe functions + * while the signal is unmasked. + */ +static void +bail_sig(int signo) +{ + bail_internal(NO_SLEEP_EXIT, 0, signo); } From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 23:39:19 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BE0DCDA1; Sun, 26 Jan 2014 23:39:19 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A523C17CE; Sun, 26 Jan 2014 23:39:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QNdJWa094612; Sun, 26 Jan 2014 23:39:19 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QNdBsJ094560; Sun, 26 Jan 2014 23:39:11 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201401262339.s0QNdBsJ094560@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sun, 26 Jan 2014 23:39:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261194 - in head/contrib/sendmail: . cf cf/cf cf/domain cf/feature cf/hack cf/m4 cf/mailer cf/ostype cf/sh contrib doc/op editmap include/libmilter include/libsmdb include/sendmail inc... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 23:39:19 -0000 Author: gshapiro Date: Sun Jan 26 23:39:11 2014 New Revision: 261194 URL: http://svnweb.freebsd.org/changeset/base/261194 Log: Merge sendmail 8.14.8 to HEAD MFC after: 5 days Added: head/contrib/sendmail/libsm/inet6_ntop.c - copied unchanged from r261190, vendor/sendmail/dist/libsm/inet6_ntop.c head/contrib/sendmail/libsm/t-inet6_ntop.c - copied unchanged from r261190, vendor/sendmail/dist/libsm/t-inet6_ntop.c Modified: head/contrib/sendmail/LICENSE head/contrib/sendmail/PGPKEYS head/contrib/sendmail/README head/contrib/sendmail/RELEASE_NOTES head/contrib/sendmail/cf/README head/contrib/sendmail/cf/cf/chez.cs.mc head/contrib/sendmail/cf/cf/clientproto.mc head/contrib/sendmail/cf/cf/cs-hpux10.mc head/contrib/sendmail/cf/cf/cs-hpux9.mc head/contrib/sendmail/cf/cf/cs-osf1.mc head/contrib/sendmail/cf/cf/cs-solaris2.mc head/contrib/sendmail/cf/cf/cs-sunos4.1.mc head/contrib/sendmail/cf/cf/cs-ultrix4.mc head/contrib/sendmail/cf/cf/generic-bsd4.4.mc head/contrib/sendmail/cf/cf/generic-hpux10.mc head/contrib/sendmail/cf/cf/generic-hpux9.mc head/contrib/sendmail/cf/cf/generic-linux.mc head/contrib/sendmail/cf/cf/generic-mpeix.mc head/contrib/sendmail/cf/cf/generic-nextstep3.3.mc head/contrib/sendmail/cf/cf/generic-osf1.mc head/contrib/sendmail/cf/cf/generic-solaris.mc head/contrib/sendmail/cf/cf/generic-sunos4.1.mc head/contrib/sendmail/cf/cf/generic-ultrix4.mc head/contrib/sendmail/cf/cf/huginn.cs.mc head/contrib/sendmail/cf/cf/knecht.mc head/contrib/sendmail/cf/cf/mail.cs.mc head/contrib/sendmail/cf/cf/mail.eecs.mc head/contrib/sendmail/cf/cf/mailspool.cs.mc head/contrib/sendmail/cf/cf/python.cs.mc head/contrib/sendmail/cf/cf/s2k-osf1.mc head/contrib/sendmail/cf/cf/s2k-ultrix4.mc head/contrib/sendmail/cf/cf/submit.cf head/contrib/sendmail/cf/cf/submit.mc head/contrib/sendmail/cf/cf/tcpproto.mc head/contrib/sendmail/cf/cf/ucbarpa.mc head/contrib/sendmail/cf/cf/ucbvax.mc head/contrib/sendmail/cf/cf/uucpproto.mc head/contrib/sendmail/cf/cf/vangogh.cs.mc head/contrib/sendmail/cf/domain/Berkeley.EDU.m4 head/contrib/sendmail/cf/domain/CS.Berkeley.EDU.m4 head/contrib/sendmail/cf/domain/EECS.Berkeley.EDU.m4 head/contrib/sendmail/cf/domain/S2K.Berkeley.EDU.m4 head/contrib/sendmail/cf/domain/berkeley-only.m4 head/contrib/sendmail/cf/domain/generic.m4 head/contrib/sendmail/cf/feature/accept_unqualified_senders.m4 head/contrib/sendmail/cf/feature/accept_unresolvable_domains.m4 head/contrib/sendmail/cf/feature/access_db.m4 head/contrib/sendmail/cf/feature/allmasquerade.m4 head/contrib/sendmail/cf/feature/always_add_domain.m4 head/contrib/sendmail/cf/feature/authinfo.m4 head/contrib/sendmail/cf/feature/badmx.m4 head/contrib/sendmail/cf/feature/bestmx_is_local.m4 head/contrib/sendmail/cf/feature/bitdomain.m4 head/contrib/sendmail/cf/feature/blacklist_recipients.m4 head/contrib/sendmail/cf/feature/block_bad_helo.m4 head/contrib/sendmail/cf/feature/compat_check.m4 head/contrib/sendmail/cf/feature/conncontrol.m4 head/contrib/sendmail/cf/feature/delay_checks.m4 head/contrib/sendmail/cf/feature/dnsbl.m4 head/contrib/sendmail/cf/feature/domaintable.m4 head/contrib/sendmail/cf/feature/enhdnsbl.m4 head/contrib/sendmail/cf/feature/generics_entire_domain.m4 head/contrib/sendmail/cf/feature/genericstable.m4 head/contrib/sendmail/cf/feature/greet_pause.m4 head/contrib/sendmail/cf/feature/ldap_routing.m4 head/contrib/sendmail/cf/feature/limited_masquerade.m4 head/contrib/sendmail/cf/feature/local_lmtp.m4 head/contrib/sendmail/cf/feature/local_no_masquerade.m4 head/contrib/sendmail/cf/feature/local_procmail.m4 head/contrib/sendmail/cf/feature/lookupdotdomain.m4 head/contrib/sendmail/cf/feature/loose_relay_check.m4 head/contrib/sendmail/cf/feature/mailertable.m4 head/contrib/sendmail/cf/feature/masquerade_entire_domain.m4 head/contrib/sendmail/cf/feature/masquerade_envelope.m4 head/contrib/sendmail/cf/feature/msp.m4 head/contrib/sendmail/cf/feature/mtamark.m4 head/contrib/sendmail/cf/feature/no_default_msa.m4 head/contrib/sendmail/cf/feature/nocanonify.m4 head/contrib/sendmail/cf/feature/notsticky.m4 head/contrib/sendmail/cf/feature/nouucp.m4 head/contrib/sendmail/cf/feature/nullclient.m4 head/contrib/sendmail/cf/feature/preserve_local_plus_detail.m4 head/contrib/sendmail/cf/feature/preserve_luser_host.m4 head/contrib/sendmail/cf/feature/promiscuous_relay.m4 head/contrib/sendmail/cf/feature/queuegroup.m4 head/contrib/sendmail/cf/feature/ratecontrol.m4 head/contrib/sendmail/cf/feature/redirect.m4 head/contrib/sendmail/cf/feature/relay_based_on_MX.m4 head/contrib/sendmail/cf/feature/relay_entire_domain.m4 head/contrib/sendmail/cf/feature/relay_hosts_only.m4 head/contrib/sendmail/cf/feature/relay_local_from.m4 head/contrib/sendmail/cf/feature/relay_mail_from.m4 head/contrib/sendmail/cf/feature/require_rdns.m4 head/contrib/sendmail/cf/feature/smrsh.m4 head/contrib/sendmail/cf/feature/stickyhost.m4 head/contrib/sendmail/cf/feature/use_client_ptr.m4 head/contrib/sendmail/cf/feature/use_ct_file.m4 head/contrib/sendmail/cf/feature/use_cw_file.m4 head/contrib/sendmail/cf/feature/uucpdomain.m4 head/contrib/sendmail/cf/feature/virtuser_entire_domain.m4 head/contrib/sendmail/cf/feature/virtusertable.m4 head/contrib/sendmail/cf/hack/cssubdomain.m4 head/contrib/sendmail/cf/m4/cf.m4 head/contrib/sendmail/cf/m4/cfhead.m4 head/contrib/sendmail/cf/m4/proto.m4 head/contrib/sendmail/cf/m4/version.m4 head/contrib/sendmail/cf/mailer/cyrus.m4 head/contrib/sendmail/cf/mailer/cyrusv2.m4 head/contrib/sendmail/cf/mailer/fax.m4 head/contrib/sendmail/cf/mailer/local.m4 head/contrib/sendmail/cf/mailer/mail11.m4 head/contrib/sendmail/cf/mailer/phquery.m4 head/contrib/sendmail/cf/mailer/pop.m4 head/contrib/sendmail/cf/mailer/procmail.m4 head/contrib/sendmail/cf/mailer/qpage.m4 head/contrib/sendmail/cf/mailer/smtp.m4 head/contrib/sendmail/cf/mailer/usenet.m4 head/contrib/sendmail/cf/mailer/uucp.m4 head/contrib/sendmail/cf/ostype/a-ux.m4 head/contrib/sendmail/cf/ostype/aix3.m4 head/contrib/sendmail/cf/ostype/aix4.m4 head/contrib/sendmail/cf/ostype/aix5.m4 head/contrib/sendmail/cf/ostype/altos.m4 head/contrib/sendmail/cf/ostype/amdahl-uts.m4 head/contrib/sendmail/cf/ostype/bsd4.3.m4 head/contrib/sendmail/cf/ostype/bsd4.4.m4 head/contrib/sendmail/cf/ostype/bsdi.m4 head/contrib/sendmail/cf/ostype/bsdi1.0.m4 head/contrib/sendmail/cf/ostype/bsdi2.0.m4 head/contrib/sendmail/cf/ostype/darwin.m4 head/contrib/sendmail/cf/ostype/dgux.m4 head/contrib/sendmail/cf/ostype/domainos.m4 head/contrib/sendmail/cf/ostype/dragonfly.m4 head/contrib/sendmail/cf/ostype/dynix3.2.m4 head/contrib/sendmail/cf/ostype/freebsd4.m4 head/contrib/sendmail/cf/ostype/freebsd5.m4 head/contrib/sendmail/cf/ostype/freebsd6.m4 head/contrib/sendmail/cf/ostype/gnu.m4 head/contrib/sendmail/cf/ostype/hpux10.m4 head/contrib/sendmail/cf/ostype/hpux11.m4 head/contrib/sendmail/cf/ostype/hpux9.m4 head/contrib/sendmail/cf/ostype/irix4.m4 head/contrib/sendmail/cf/ostype/irix5.m4 head/contrib/sendmail/cf/ostype/irix6.m4 head/contrib/sendmail/cf/ostype/isc4.1.m4 head/contrib/sendmail/cf/ostype/linux.m4 head/contrib/sendmail/cf/ostype/maxion.m4 head/contrib/sendmail/cf/ostype/mklinux.m4 head/contrib/sendmail/cf/ostype/mpeix.m4 head/contrib/sendmail/cf/ostype/nextstep.m4 head/contrib/sendmail/cf/ostype/openbsd.m4 head/contrib/sendmail/cf/ostype/osf1.m4 head/contrib/sendmail/cf/ostype/powerux.m4 head/contrib/sendmail/cf/ostype/ptx2.m4 head/contrib/sendmail/cf/ostype/qnx.m4 head/contrib/sendmail/cf/ostype/riscos4.5.m4 head/contrib/sendmail/cf/ostype/sco-uw-2.1.m4 head/contrib/sendmail/cf/ostype/sco3.2.m4 head/contrib/sendmail/cf/ostype/sinix.m4 head/contrib/sendmail/cf/ostype/solaris11.m4 head/contrib/sendmail/cf/ostype/solaris2.m4 head/contrib/sendmail/cf/ostype/solaris2.ml.m4 head/contrib/sendmail/cf/ostype/solaris2.pre5.m4 head/contrib/sendmail/cf/ostype/solaris8.m4 head/contrib/sendmail/cf/ostype/sunos3.5.m4 head/contrib/sendmail/cf/ostype/sunos4.1.m4 head/contrib/sendmail/cf/ostype/svr4.m4 head/contrib/sendmail/cf/ostype/ultrix4.m4 head/contrib/sendmail/cf/ostype/unicos.m4 head/contrib/sendmail/cf/ostype/unicosmk.m4 head/contrib/sendmail/cf/ostype/unicosmp.m4 head/contrib/sendmail/cf/ostype/unixware7.m4 head/contrib/sendmail/cf/ostype/unknown.m4 head/contrib/sendmail/cf/ostype/uxpds.m4 head/contrib/sendmail/cf/sendmail.schema head/contrib/sendmail/cf/sh/makeinfo.sh head/contrib/sendmail/contrib/dnsblaccess.m4 head/contrib/sendmail/contrib/link_hash.sh head/contrib/sendmail/contrib/qtool.8 head/contrib/sendmail/contrib/qtool.pl head/contrib/sendmail/doc/op/op.me head/contrib/sendmail/editmap/editmap.8 head/contrib/sendmail/editmap/editmap.c head/contrib/sendmail/include/libmilter/mfapi.h head/contrib/sendmail/include/libmilter/mfdef.h head/contrib/sendmail/include/libmilter/milter.h head/contrib/sendmail/include/libsmdb/smdb.h head/contrib/sendmail/include/sendmail/mailstats.h head/contrib/sendmail/include/sendmail/pathnames.h head/contrib/sendmail/include/sendmail/sendmail.h head/contrib/sendmail/include/sm/assert.h head/contrib/sendmail/include/sm/bdb.h head/contrib/sendmail/include/sm/bitops.h head/contrib/sendmail/include/sm/cdefs.h head/contrib/sendmail/include/sm/cf.h head/contrib/sendmail/include/sm/clock.h head/contrib/sendmail/include/sm/conf.h head/contrib/sendmail/include/sm/config.h head/contrib/sendmail/include/sm/debug.h head/contrib/sendmail/include/sm/errstring.h head/contrib/sendmail/include/sm/exc.h head/contrib/sendmail/include/sm/fdset.h head/contrib/sendmail/include/sm/gen.h head/contrib/sendmail/include/sm/heap.h head/contrib/sendmail/include/sm/io.h head/contrib/sendmail/include/sm/ldap.h head/contrib/sendmail/include/sm/limits.h head/contrib/sendmail/include/sm/mbdb.h head/contrib/sendmail/include/sm/misc.h head/contrib/sendmail/include/sm/os/sm_os_aix.h head/contrib/sendmail/include/sm/os/sm_os_dragonfly.h head/contrib/sendmail/include/sm/os/sm_os_freebsd.h head/contrib/sendmail/include/sm/os/sm_os_hp.h head/contrib/sendmail/include/sm/os/sm_os_irix.h head/contrib/sendmail/include/sm/os/sm_os_linux.h head/contrib/sendmail/include/sm/os/sm_os_mpeix.h head/contrib/sendmail/include/sm/os/sm_os_next.h head/contrib/sendmail/include/sm/os/sm_os_openbsd.h head/contrib/sendmail/include/sm/os/sm_os_openunix.h head/contrib/sendmail/include/sm/os/sm_os_osf1.h head/contrib/sendmail/include/sm/os/sm_os_qnx.h head/contrib/sendmail/include/sm/os/sm_os_sunos.h head/contrib/sendmail/include/sm/os/sm_os_ultrix.h head/contrib/sendmail/include/sm/os/sm_os_unicos.h head/contrib/sendmail/include/sm/os/sm_os_unicosmk.h head/contrib/sendmail/include/sm/os/sm_os_unicosmp.h head/contrib/sendmail/include/sm/os/sm_os_unixware.h head/contrib/sendmail/include/sm/path.h head/contrib/sendmail/include/sm/rpool.h head/contrib/sendmail/include/sm/sem.h head/contrib/sendmail/include/sm/sendmail.h head/contrib/sendmail/include/sm/setjmp.h head/contrib/sendmail/include/sm/shm.h head/contrib/sendmail/include/sm/signal.h head/contrib/sendmail/include/sm/string.h head/contrib/sendmail/include/sm/sysexits.h head/contrib/sendmail/include/sm/test.h head/contrib/sendmail/include/sm/time.h head/contrib/sendmail/include/sm/types.h head/contrib/sendmail/include/sm/varargs.h head/contrib/sendmail/include/sm/xtrap.h head/contrib/sendmail/libmilter/Makefile.m4 head/contrib/sendmail/libmilter/comm.c head/contrib/sendmail/libmilter/docs/api.html head/contrib/sendmail/libmilter/docs/design.html head/contrib/sendmail/libmilter/docs/index.html head/contrib/sendmail/libmilter/docs/installation.html head/contrib/sendmail/libmilter/docs/other.html head/contrib/sendmail/libmilter/docs/overview.html head/contrib/sendmail/libmilter/docs/sample.html head/contrib/sendmail/libmilter/docs/smfi_addheader.html head/contrib/sendmail/libmilter/docs/smfi_addrcpt.html head/contrib/sendmail/libmilter/docs/smfi_addrcpt_par.html head/contrib/sendmail/libmilter/docs/smfi_chgfrom.html head/contrib/sendmail/libmilter/docs/smfi_chgheader.html head/contrib/sendmail/libmilter/docs/smfi_delrcpt.html head/contrib/sendmail/libmilter/docs/smfi_getpriv.html head/contrib/sendmail/libmilter/docs/smfi_getsymval.html head/contrib/sendmail/libmilter/docs/smfi_insheader.html head/contrib/sendmail/libmilter/docs/smfi_main.html head/contrib/sendmail/libmilter/docs/smfi_opensocket.html head/contrib/sendmail/libmilter/docs/smfi_progress.html head/contrib/sendmail/libmilter/docs/smfi_quarantine.html head/contrib/sendmail/libmilter/docs/smfi_register.html head/contrib/sendmail/libmilter/docs/smfi_replacebody.html head/contrib/sendmail/libmilter/docs/smfi_setbacklog.html head/contrib/sendmail/libmilter/docs/smfi_setconn.html head/contrib/sendmail/libmilter/docs/smfi_setdbg.html head/contrib/sendmail/libmilter/docs/smfi_setmlreply.html head/contrib/sendmail/libmilter/docs/smfi_setpriv.html head/contrib/sendmail/libmilter/docs/smfi_setreply.html head/contrib/sendmail/libmilter/docs/smfi_setsymlist.html head/contrib/sendmail/libmilter/docs/smfi_settimeout.html head/contrib/sendmail/libmilter/docs/smfi_stop.html head/contrib/sendmail/libmilter/docs/smfi_version.html head/contrib/sendmail/libmilter/docs/xxfi_abort.html head/contrib/sendmail/libmilter/docs/xxfi_body.html head/contrib/sendmail/libmilter/docs/xxfi_close.html head/contrib/sendmail/libmilter/docs/xxfi_connect.html head/contrib/sendmail/libmilter/docs/xxfi_data.html head/contrib/sendmail/libmilter/docs/xxfi_envfrom.html head/contrib/sendmail/libmilter/docs/xxfi_envrcpt.html head/contrib/sendmail/libmilter/docs/xxfi_eoh.html head/contrib/sendmail/libmilter/docs/xxfi_eom.html head/contrib/sendmail/libmilter/docs/xxfi_header.html head/contrib/sendmail/libmilter/docs/xxfi_helo.html head/contrib/sendmail/libmilter/docs/xxfi_negotiate.html head/contrib/sendmail/libmilter/docs/xxfi_unknown.html head/contrib/sendmail/libmilter/engine.c head/contrib/sendmail/libmilter/example.c head/contrib/sendmail/libmilter/handler.c head/contrib/sendmail/libmilter/libmilter.h head/contrib/sendmail/libmilter/listener.c head/contrib/sendmail/libmilter/main.c head/contrib/sendmail/libmilter/monitor.c head/contrib/sendmail/libmilter/signal.c head/contrib/sendmail/libmilter/sm_gethost.c head/contrib/sendmail/libmilter/smfi.c head/contrib/sendmail/libmilter/worker.c head/contrib/sendmail/libsm/Makefile.m4 head/contrib/sendmail/libsm/README head/contrib/sendmail/libsm/assert.c head/contrib/sendmail/libsm/b-strcmp.c head/contrib/sendmail/libsm/b-strl.c head/contrib/sendmail/libsm/cf.c head/contrib/sendmail/libsm/clock.c head/contrib/sendmail/libsm/clrerr.c head/contrib/sendmail/libsm/config.c head/contrib/sendmail/libsm/debug.c head/contrib/sendmail/libsm/errstring.c head/contrib/sendmail/libsm/exc.c head/contrib/sendmail/libsm/fclose.c head/contrib/sendmail/libsm/feof.c head/contrib/sendmail/libsm/ferror.c head/contrib/sendmail/libsm/fflush.c head/contrib/sendmail/libsm/fget.c head/contrib/sendmail/libsm/findfp.c head/contrib/sendmail/libsm/flags.c head/contrib/sendmail/libsm/fopen.c head/contrib/sendmail/libsm/fpos.c head/contrib/sendmail/libsm/fprintf.c head/contrib/sendmail/libsm/fpurge.c head/contrib/sendmail/libsm/fput.c head/contrib/sendmail/libsm/fread.c head/contrib/sendmail/libsm/fscanf.c head/contrib/sendmail/libsm/fseek.c head/contrib/sendmail/libsm/fvwrite.c head/contrib/sendmail/libsm/fvwrite.h head/contrib/sendmail/libsm/fwalk.c head/contrib/sendmail/libsm/fwrite.c head/contrib/sendmail/libsm/get.c head/contrib/sendmail/libsm/glue.h head/contrib/sendmail/libsm/heap.c head/contrib/sendmail/libsm/ldap.c head/contrib/sendmail/libsm/local.h head/contrib/sendmail/libsm/makebuf.c head/contrib/sendmail/libsm/match.c head/contrib/sendmail/libsm/mbdb.c head/contrib/sendmail/libsm/memstat.c head/contrib/sendmail/libsm/mpeix.c head/contrib/sendmail/libsm/niprop.c head/contrib/sendmail/libsm/path.c head/contrib/sendmail/libsm/put.c head/contrib/sendmail/libsm/refill.c head/contrib/sendmail/libsm/rewind.c head/contrib/sendmail/libsm/rpool.c head/contrib/sendmail/libsm/sem.c head/contrib/sendmail/libsm/setvbuf.c head/contrib/sendmail/libsm/shm.c head/contrib/sendmail/libsm/signal.c head/contrib/sendmail/libsm/smstdio.c head/contrib/sendmail/libsm/snprintf.c head/contrib/sendmail/libsm/sscanf.c head/contrib/sendmail/libsm/stdio.c head/contrib/sendmail/libsm/strcasecmp.c head/contrib/sendmail/libsm/strdup.c head/contrib/sendmail/libsm/strerror.c head/contrib/sendmail/libsm/strexit.c head/contrib/sendmail/libsm/string.c head/contrib/sendmail/libsm/stringf.c head/contrib/sendmail/libsm/strio.c head/contrib/sendmail/libsm/strl.c head/contrib/sendmail/libsm/strrevcmp.c head/contrib/sendmail/libsm/strto.c head/contrib/sendmail/libsm/syslogio.c head/contrib/sendmail/libsm/t-cf.c head/contrib/sendmail/libsm/t-event.c head/contrib/sendmail/libsm/t-exc.c head/contrib/sendmail/libsm/t-fget.c head/contrib/sendmail/libsm/t-float.c head/contrib/sendmail/libsm/t-fopen.c head/contrib/sendmail/libsm/t-heap.c head/contrib/sendmail/libsm/t-match.c head/contrib/sendmail/libsm/t-memstat.c head/contrib/sendmail/libsm/t-path.c head/contrib/sendmail/libsm/t-qic.c head/contrib/sendmail/libsm/t-rpool.c head/contrib/sendmail/libsm/t-scanf.c head/contrib/sendmail/libsm/t-sem.c head/contrib/sendmail/libsm/t-shm.c head/contrib/sendmail/libsm/t-smstdio.c head/contrib/sendmail/libsm/t-string.c head/contrib/sendmail/libsm/t-strio.c head/contrib/sendmail/libsm/t-strl.c head/contrib/sendmail/libsm/t-strrevcmp.c head/contrib/sendmail/libsm/t-types.c head/contrib/sendmail/libsm/test.c head/contrib/sendmail/libsm/ungetc.c head/contrib/sendmail/libsm/util.c head/contrib/sendmail/libsm/vasprintf.c head/contrib/sendmail/libsm/vfprintf.c head/contrib/sendmail/libsm/vfscanf.c head/contrib/sendmail/libsm/vprintf.c head/contrib/sendmail/libsm/vsnprintf.c head/contrib/sendmail/libsm/wbuf.c head/contrib/sendmail/libsm/wsetup.c head/contrib/sendmail/libsm/xtrap.c head/contrib/sendmail/libsmdb/smdb.c head/contrib/sendmail/libsmdb/smdb1.c head/contrib/sendmail/libsmdb/smdb2.c head/contrib/sendmail/libsmdb/smndbm.c head/contrib/sendmail/libsmutil/cf.c head/contrib/sendmail/libsmutil/debug.c head/contrib/sendmail/libsmutil/err.c head/contrib/sendmail/libsmutil/lockfile.c head/contrib/sendmail/libsmutil/safefile.c head/contrib/sendmail/libsmutil/snprintf.c head/contrib/sendmail/mail.local/mail.local.8 head/contrib/sendmail/mail.local/mail.local.c head/contrib/sendmail/mailstats/mailstats.8 head/contrib/sendmail/mailstats/mailstats.c head/contrib/sendmail/makemap/makemap.8 head/contrib/sendmail/makemap/makemap.c head/contrib/sendmail/praliases/praliases.8 head/contrib/sendmail/praliases/praliases.c head/contrib/sendmail/rmail/rmail.8 head/contrib/sendmail/rmail/rmail.c head/contrib/sendmail/smrsh/smrsh.8 head/contrib/sendmail/smrsh/smrsh.c head/contrib/sendmail/src/Makefile.m4 head/contrib/sendmail/src/README head/contrib/sendmail/src/SECURITY head/contrib/sendmail/src/TRACEFLAGS head/contrib/sendmail/src/TUNING head/contrib/sendmail/src/alias.c head/contrib/sendmail/src/aliases.5 head/contrib/sendmail/src/arpadate.c head/contrib/sendmail/src/bf.c head/contrib/sendmail/src/bf.h head/contrib/sendmail/src/collect.c head/contrib/sendmail/src/conf.c head/contrib/sendmail/src/conf.h head/contrib/sendmail/src/control.c head/contrib/sendmail/src/convtime.c head/contrib/sendmail/src/daemon.c head/contrib/sendmail/src/daemon.h head/contrib/sendmail/src/deliver.c head/contrib/sendmail/src/domain.c head/contrib/sendmail/src/envelope.c head/contrib/sendmail/src/err.c head/contrib/sendmail/src/headers.c head/contrib/sendmail/src/helpfile head/contrib/sendmail/src/macro.c head/contrib/sendmail/src/mailq.1 head/contrib/sendmail/src/main.c head/contrib/sendmail/src/map.c head/contrib/sendmail/src/map.h head/contrib/sendmail/src/mci.c head/contrib/sendmail/src/milter.c head/contrib/sendmail/src/mime.c head/contrib/sendmail/src/newaliases.1 head/contrib/sendmail/src/parseaddr.c head/contrib/sendmail/src/queue.c head/contrib/sendmail/src/ratectrl.c head/contrib/sendmail/src/readcf.c head/contrib/sendmail/src/recipient.c head/contrib/sendmail/src/sasl.c head/contrib/sendmail/src/savemail.c head/contrib/sendmail/src/sendmail.8 head/contrib/sendmail/src/sendmail.h head/contrib/sendmail/src/sfsasl.c head/contrib/sendmail/src/sfsasl.h head/contrib/sendmail/src/shmticklib.c head/contrib/sendmail/src/sm_resolve.c head/contrib/sendmail/src/sm_resolve.h head/contrib/sendmail/src/srvrsmtp.c head/contrib/sendmail/src/stab.c head/contrib/sendmail/src/stats.c head/contrib/sendmail/src/statusd_shm.h head/contrib/sendmail/src/sysexits.c head/contrib/sendmail/src/timers.c head/contrib/sendmail/src/timers.h head/contrib/sendmail/src/tls.c head/contrib/sendmail/src/trace.c head/contrib/sendmail/src/udb.c head/contrib/sendmail/src/usersmtp.c head/contrib/sendmail/src/util.c head/contrib/sendmail/src/version.c head/contrib/sendmail/test/README head/contrib/sendmail/test/t_dropgid.c head/contrib/sendmail/test/t_exclopen.c head/contrib/sendmail/test/t_pathconf.c head/contrib/sendmail/test/t_seteuid.c head/contrib/sendmail/test/t_setgid.c head/contrib/sendmail/test/t_setreuid.c head/contrib/sendmail/test/t_setuid.c head/contrib/sendmail/test/t_snprintf.c head/contrib/sendmail/vacation/vacation.1 head/contrib/sendmail/vacation/vacation.c Directory Properties: head/contrib/sendmail/ (props changed) Modified: head/contrib/sendmail/LICENSE ============================================================================== --- head/contrib/sendmail/LICENSE Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/LICENSE Sun Jan 26 23:39:11 2014 (r261194) @@ -1,9 +1,9 @@ SENDMAIL LICENSE -The following license terms and conditions apply, unless a redistribution -agreement or other license is obtained from Sendmail, Inc., 6475 Christie -Ave, Third Floor, Emeryville, CA 94608, USA, or by electronic mail at -license@sendmail.com. +The following license terms and conditions apply, unless a redistribution +agreement or other license is obtained from Proofpoint, Inc., 892 +Ross Street, Sunnyvale, CA, 94089, USA, or by electronic mail at +sendmail-license@proofpoint.com. License Terms: @@ -35,12 +35,12 @@ each of the following conditions is met: forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: - "Copyright (c) 1998-2012 Sendmail, Inc. All rights reserved." + "Copyright (c) 1998-2013 Proofpoint, Inc. All rights reserved." -4. Neither the name of Sendmail, Inc. nor the University of California nor +4. Neither the name of Proofpoint, Inc. nor the University of California nor names of their contributors may be used to endorse or promote products derived from this software without specific prior written - permission. The name "sendmail" is a trademark of Sendmail, Inc. + permission. The name "sendmail" is a trademark of Proofpoint, Inc. 5. All redistributions must comply with the conditions imposed by the University of California on certain embedded code, which copyright @@ -78,4 +78,4 @@ each of the following conditions is met: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. -$Revision: 8.18 $, Last updated $Date: 2012/05/15 21:49:03 $, Document 139848.1 +$Revision: 8.22 $, Last updated $Date: 2013/11/23 04:37:36 $, Document 139848.1 Modified: head/contrib/sendmail/PGPKEYS ============================================================================== --- head/contrib/sendmail/PGPKEYS Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/PGPKEYS Sun Jan 26 23:39:11 2014 (r261194) @@ -142,6 +142,184 @@ gpExpdV7qPrw9k01j5rod5PjZlG8zV0= -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use +pub 2048 E2763A73 2014-01-02 ------- RSA Sign & Encrypt +fingerprint: 49F6 A8BE 8473 3949 5191 6F3B 61DE 11EC E276 3A73 +uid Sendmail Signing Key/2014 + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1 + +mQENBFLGB58BCADFOlIYbhlAZ1URaoyfEHLgrm/bHeZufZO3jp2eeuDIkt4Z8csa +eLkwomo/UtmUNXkn5rlUacRjyuhrDgVyuhYVeqq+tVbGccrjq4TM+5dkDTtQvLE5 +sEF3pbNYiPNJwPnqMfGTVmSouR9gGJGgttPubFDp/2jTpuFYZbcDSo+hoI9m5RAH +aWe+MhFC0r7RZTv5pY1CG3GSODaoz2XIQ/dDJ4WKZFeEvDPQnpLY4t0cb0hVcxYO +XVZZs1YmS2sEJirwJ+rpxivX4eyVKSO9Vjidh6cvmg2UdKfNoXXd+G9r0DR5FSo7 +hQHlOCrLFQQ5YJ3thGNl/fw7wVXVs34Nj7QfABEBAAG0MVNlbmRtYWlsIFNpZ25p +bmcgS2V5LzIwMTQgPHNlbmRtYWlsQFNlbmRtYWlsLk9SRz6JATgEEwECACIFAlLG +B58CGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEGHeEezidjpzcRgIAJUZ +4J6yvykcpgrIS8ZjDz1ab2sXtBx0ZjI5TxxnIwg9RQb5YkEk2/9tPo0ZwNUTDwz6 +eVENR++Bv3VXs32RnRiFNy1Mm2hhULh4ifgqT6Sy7zRk/kwiKuj6xkjAGZV71QmD +ukFIpVaWAQwiFkDgqM3LbxZ1sisbvvA8M/zJq66uGg09Lu9CKcwjKDfy+UW1E8Ub +SRzStTRrpvCH400q/Pwv3mOA43+H6Un4fZfCOcZeo22rSgT6D/FEY4LMdNnMLYuU +zPkpx7cKvQa/AcMdjoGu38g364JxlDjxjE6M+XBym8Tx6j4res7o0W8TGW5g+rEv +8X9i7uxdnEfYBlNAElGJARwEEAECAAYFAlLGCCIACgkQPWiyXVIHytM4QggAtF+W +cXu8pJi3+OAoPmj+etgIuLhJ2GOp8qNK8yvwTEwiNwtenjennlW3ETHiCbtfQ0/T +Z9rq5elhANsfp8LsXGoJ4ic6KJlDEhCrKa76jwEeECI74E60TpG0z64pHMmUhk7l +eAUckCOvW7iHIBJVA7ZM8oII04ipPz6qJfJrUWkJbfZh8VV5DRp7zKAFT+URgSUc +bdAbLjyC7AohynNVxir90UoT+wo06GPMDpeA5+fS0VZxKAwKv2P0mRZAK63yzEJz ++VK3GCHLPCWJvHoqx4KSutk2mIpZ406T/BJEphkGN0BHHiUmIr9qfX/87klA4i9K +dHvzFr6qFBxD78XfuIkBHAQQAQIABgUCUsYIMAAKCRCOWun7zu70Ox9XB/9IP99U +LScSFiDgoZQr3eMztpc2NLIS2bGO1iX7L+9VInPCob7Se53MpaFrDWNna53Xehwf +NbaqsCQrG+OIMMwhRc0x3QCoXQUchA/JyAUIojfOyoFUZvlyZStRGOp2TBRrJnmb +l3iWz3pStqqtvqag2d3YxowqGqUvlRzAXTFmgjcnfMcJrxb9f3n6Nf84QpxLHxB2 +MgOgxUCHXMtJ4WxFHAoINize+P/P99U9mpyn4ewTnSaFzcmemqoVT9yZUDYUYrap +Bm4Xp0Y92IzoNpJgKBZLwXihisuI4alY/hBopo5L89vms2BwesQuh/4Tr6SELwFx +zX63E++tz1TqHleWiQEcBBABAgAGBQJSxghsAAoJEDmkx32peISwXiIH/3suKuiQ ++KqQT10UdBoNg6m0XinG4IG2MghRRcdg2Q8ncCfMFJPsKQcPdjiUuuUIYtD7CE+O +SwQ9N+6vZlsk3Zq2I8rPEwrUTmZ1gDcMK93MafNS32Xt7FmCY6wpMCkpmCLd9sjb +7rj3uZdv/aI6Is76z6dKTfxJWBrbsUQNncASn5JyCXrYj9eeGP8gHX2KCkyPBF4u +kHFPgdzYevCfZeP/+f/cdRwF6bAVaHiEZ2S/Vg6r3Z89vgd+wNKnNsljEiacYWuS +zxouEn0eWQj9kC3bXJgqXH+HLrEY8NAQ5EQWjd8bzIhzCTA9MtL+N1b0Ep36gNiw +YFB5b/b7KlbEPsSJARwEEAECAAYFAlLGCG8ACgkQYE378oVBCr4XDAf/auf1ljzq +w2khe1L/1ANvtnugMP3sVJEPU2nDUnCK2+c0G5INnWc+c7DEFsaLHgcs2eN/w80a +adInDn9lFw7DtcvZr3xL8q+b6j4i4jucjT5WVfYHbvc0xcKfpEjRge4oV3XR73SU +ztdTWZZAlds4Xvh9pojjM90fBu5uDqfpRM3/vNTQ9EWvjcCGKusWRTwgdfF94cHN +CeSe8PCo7sil6MtBBoujmLldCKZaLC08NLPX3yTGzNmuLyNZj9WgwPoK++XTxJly +0j9EJsO28ZxmNCxsZyGA+1D1NuRurQ5FXIUHUfz6taP8FHSDt95cOiirmCMOAjT4 +UFtGAZFlbhzxroicBBABAgAGBQJSxghyAAoJEBKJbpunfyQpyFwD/1fp8qgb6zvn +dIoTUoVWahI41Clt65cA2d1Ib1IbJJ4ms9cxNbFMTvbpPQ4AXOz1t7x2uS3YDmq5 +IxdWLr6YPSMkGmtpF2CD1HwSLcUwtKcIFrb8a0EN8Z+sRKu7yYg1vMxc7LmmOBUX +x+j9fm/1OFGIHYnUEb9GeKFf91cK0VAIiJwEEAECAAYFAlLGCHUACgkQ2Krwyvaz +BylxvAP+JuZQFPnk6l4SKHR/3ZWz56fOqZ6Qv8cgUCFY5AY9OdSE7aU2zVjZTjd1 +dJzVD7xc/9h8OW4HakfwcNnfAqdQ4eNdox5+uydXwU0CXJqU8QxGPaCSRkB1Thb5 +aMik5S01lzra4s6dF0iMC15I5v0PAznykJO9Sq4qhMLUCYTxFiqInAQQAQIABgUC +UsYIeAAKCRCXQwEYcJO4QeDXBAC2hVO1j2dyQfkHr8eLAg/P+2qwZ1ZaG4jxItol +vF91lfGNCaG3RWB9iPRIkz5B+lSoh4mSPGzJ3cFDgB53rRMpFUa0qhiUpVaNuPMY +BSrkxYb00amJcFoXX+yE8soeu6BZ1cazg8GEkbjFbboqJMts2M39dD3c4ikbU4Op +v9ag1YicBBABAgAGBQJSxgh7AAoJEB57s8ivlZYl1w0D/1AySnzhz5PKQo4Wh9QX +qX+yMVBT3rgVO6EgR8ShsyMhZX8GwEEGPueDAh8MLGPqQZbjXq81QMeVk6TSUCQx +XbhHxyGJJTVDxxJxFJZ7f8y05PjppTA6TL2aKYsZLkWUPEq5vKocE2VAmYldwvRS +Ez4oNLWQD5dw05DPzVsJ2/49iJwEEAECAAYFAlLGCH4ACgkQcKAkTR75klFOVwP/ +fxmc8/ckreAjz7C3oarAHlWgAUHrJAAtG1MEgXN6FtzGZyzj7jsC4HI8A5nfwIWx +A67jktU+6OpySrvIv3gRF1OAV168Q9IE8KszvnJgl6Gknf/KuiwpthWHpKztn9lF +vealu7JKqI+3D5m33SqcWUg8SThfnGBoZOZGOnGrw4aInAQQAQIABgUCUsYIggAK +CRDI1e0plfYXcf9oA/44QISEfFkqab+NIIgKW0SHqJDmI5QvVkcCO1Ct+/TkhGVO +I68XKLMaNbzerl+BF26gU2IYCs0axa9hlkl8IJLokZhEPSRPDuSP2PG3GjaFsgnE +5OK6aaVvjrEwaXe8v6rOYLmavnhZtOKg3H8pOl74KhFy1i/ZwM9oVfD4sfLhxIic +BBABAgAGBQJSxgiFAAoJECGD4bE5bweJnYsEAJUX07KH5tI+OfmhQ+WCFuU2as+r +I39oH1BB0W44fEhTj/yJFVqGSt4e3OBlP+SYqIM4DxPttxNtfQ9448rbzWLCdL0c +KGOM2y9NT/LoDi1JQ/IVLYvuIyNnPViAF5JQ96NrmJH+3SaC6goK6HY6D2Oh3iyO +1VGIhjOWyJr2+5ZjiJwEEAECAAYFAlLGCIwACgkQiWliuGeMCgNvkwQAjrrAjFyh +pMepbLnRlxi2gcLqdmLcaub6AaRzCGDaYQxNFtBd+vLt0CtgY7sILahcMX6hLT53 +z4zCHoM93DM3jBoJehC0lH6/qd3ZAcW9vcSxk5ws97K6sbMXWIfqDgTUXaArOvKG +GHE3vsgaLvAQ8nz0QaVkwgSIQfz+vBDjlM6InAQQAQIABgUCUsYIjwAKCRA4IttH +zDdPLdPdBACoapJIpeNLyL9szztPzznIIxNbeuFJVfJRAE+pZ08y5YKVtGWArUcb +GBXlZC5FrVTqV3ptIa72ALApIZ/M4Awnk3C3XyjMioKemv7I+cOj5DqRgkR/hsAF +7YSAg718twgv8W2Ssy8i2vOlAoazxzN9bhVl5cSny5aeUnpLwK0WMYicBBABAgAG +BQJSxgiSAAoJEJwcveLjXFY1DnoD/iFZ3zhzwIyWUl17pESa7H79tbcpmRyelH5M +vH51sEBl27yRRKrsx4oayaumUT7W4JVoQTEYH54unN6fSBqKK9VyxzlA+v8PJjTG +43MhtMG5lc5B1fKXFer1SpxuoR5h3Qdi4KSz3yh8K8g5KKtciPBx5kEXSTm6Nycu +wkrCRYZLiJwEEAECAAYFAlLGCJcACgkQb1KT2KObplUY2QP/T2Zt5U2cl0usnYck +wmMF3ZAzmcfhsxMkVgxxL9AkVJh9dHhLSYFWN6qhlkZwiW6UhhKoINfEpb8gOcBz +rdb4u8yrWqIS726GqE/gnjYUf5CX22mOPWry8CPuWesRVpr832TzS5wxlBQzRMSS +MVn39IPfIQnC6UQ3tPChruwwZh2InAQQAQIABgUCUsYImgAKCRDvWJZk1DLhnUOZ +A/4qp/HD/+V1zpewexP4wL+bLA9Y6X+y2UWAh7eZCBQvXOhVAYcHxpmWgEfHuS+c +iHYqCc7hz+1AiKV8AfVk6RX0k9Oli/IMbM3ijv3uIl+5JF765oXUAB3RWg6V+MlJ +VhOVkBHXmBuhFnfVPeR5wNPpQ58d9LwsZtU11/Y76xzOUYicBBABAgAGBQJSxgie +AAoJEMGcHSUS00YdL7MEAK/BtyOdoFA/8SBA+8EOG8nd5NSlGNZUBnTlpWqdphkR +SLRrb1gLGr41ND2yvg/ElTti7m1D7+7VUnwCXM5wUO/RZuZx2uDYRCdDXj5WBhcg +3wsHO3IPGGTbCukp9fLcthBQ46PDewlUVo6gPWhjWG/oC04XYeB3+f1f1zGAai+s +iJwEEAECAAYFAlLGCKMACgkQwCnKQBb0zOm0CAQAhwRycBvn1kZB8cjBVw0a74Xu +rjQrMVqmKM0LW/UzoVscB0W2KxZnvCLcw8N87CnnoSAO3MSnb/vPPhtnQxVe0IBA +4yoe9acWJvmtIjw4JFDKioVPtEy+pcg5EDlyqNHj0He/Cmbirxbvy2XiGB/Y/lxu +t1kad5ZYY/F5+X4hbyOIRgQQEQIABgUCUsYIsQAKCRAY9QOAJMJ4ArQbAJ414QQw +60cTU3tVbBTT/l/sRysTXACg1ggZJszRL0P8Yy6WOryQ+r5Fg8yInAQQAQIABgUC +UsYItwAKCRB8S2dtoA4VY3VvA/4i7bKzYElfVdTIj0IgHfd1zneeDjJoJP5tmf7F +ElWIkENFVkKQ+tUBO2d/qMK8h+aj3brDcve5A1LUIsD5leE+igke8SjVF9/fwN4U +8Mpqrvaw+CX7zGMnt6J075OD7mfU7hZkSpDhmOEMaEzaviei2rovBgaNv7tOlgrk +J5nCo4icBBABAgAGBQJSxgi8AAoJENbgof5PvirdqiMEAKp3kzOjTetlDWAqK0BY +u1kSTCLzO8jFIq620dT0BqorZ5nvxwKovog/FgrZ0LlywsjlwOGCAFo3aW7WTEyt +7AwlQvUScAbPuZZcyZxKwQ9h2O6C2K2RPVIIHQusLRVcr+oGgqMoNjpSxOOxfJuj +hT6fXHK5SayZSQEiZyeKme12iEYEEBECAAYFAlLGCMEACgkQIfnFvPdqm/UiSwCf +d7Y5AR2m6vK5drJEaqbnv2tmXzcAoMhOg7eUPnYXr0Uwpo/61oHAPUTwiJwEEAEC +AAYFAlLGCMcACgkQvdqP1j/qff1p6QP/TkEC+SJr4YUPy/0cLsSr9j0uPfvke+Qx +U0RWynv4BMU05TKaBeZiVG25iFsGERW0drxiisPkcgMTq98wE7Q23Qtk+Fg8amDn +6c0qEj0S4xd/DfHPhcznHjjkhiTftSmeMGHDMF8M5+ZBSlJyM6M1dtTlceU88ZYu +Vv89Iz9nnmaJARwEEAECAAYFAlLGCMsACgkQvSdtLm/PqIVOHwgAvKy116ykGuvC +LlxCVx+RfIjhaXa5OTtZhLc7YkXgaNr4UmcvNZtGwQLUEjDO4fVCF/7bSrryZ6Fr +PZBNTKQRwbqH8UksQ+6hIbTBb5ZGcpKQPdIqEWjRjCoDah2EI1ln/JI8WY5NoA+V +iuBd07msr49qevHgGEex5dX7NKOu6nuvefaasVDODNsiMp2QZmIlP7XJw7VKkiEx +ov93DGImxD4o8r2Etzo1Lt5/soNzw26etSRFhoGHRdW2mlS5QFjebV+PNAxwvRrI +a+5CjoA/vFfwxV+RZlvCLhzuEsBIzw6yenfNEd37bzqJq/7Jp7kQCe463o7ujG00 +k+ObGvq/YokBNwQTAQIAIQIbAwIeAQIXgAUCUsYZQgYLCQgHAwIGFQgCCQoLAxYC +AQAKCRBh3hHs4nY6c/AjB/4rt17ezRHDxuDuS7+waPC9N6eXAQCbwdvkYd/v0bWe +5jHgknMHR9OyGU9JKA4boJCtJNUvceAmzBtynqxy4hR6rmCwCmFW3AIK31iu3frz +Zqq84XK791voKMMrvnux0OHqq2l2mYOSNXUeVNQeyDE6HbKXFUiWhRZl36UndVaE +XhdDnKpxseMpYZsECW1+x1GxbUHFRx6tSiqzgLSNU/SsgwgttHwyqEdW0sr63r66 +7XSoMKvEgIhb36hJ7AIaFNWasLnnLOTOWR74IHnJ68FpordYm7lnmT5Vg/ju9y29 +JDwfOcNroCao6tTjyXcM6KmIssQPavTDLK/I6XgVr9QziQEcBBABAgAGBQJSxwGo +AAoJEBCQryClqlvmWGgH/3CsqpTEKQW3FL/jughz3Yt8vmgqmlj7ZbTaVehIKRU4 +iL2XOlgAu3JISxCLPkdz79qcMSkZsOJtTGwA1yjvw/yx7oSznvW+jgNZ+fNOuT9w +c6YKGSm0KbGGOFzjzoCsnIpoVEVuJwOS/zqGY349WR5dyaY4pEL42StfqLLtHO7I +IJMKRcubedgZSogT9iwhin+sAGi60Wjq0pX240UQG0bgSB7n+/+7NT64u9yRyPwZ +9B7Y11smlCw0jIlJD/P51rFgFciG/BdYyPfRHToe5CjOI+1sFxJYuOQI25o9/Syg +7MMzp3ym2IEjIi3poBwfqZRlPDb5nHfu4vnSntPrwcWJAhwEEAEKAAYFAlLHCkcA +CgkQ8Ar26sJF0gu9AA/9EXGIp5BwAYXNtlrI66nuPBwbPXHIVXocnlu2O2Kfzc9W +Lvl3e5eSi61/TCOPNM4ParKUT9utxq9Sd01WO4GuepQFOiSfhMfKb7ORd0cKfWuM +9shAKHsTbuAopO9R43jv1QnE+yL1xpM85JaGxI2pWf4XIpL32ZZ0s7s3x1fklNMG +7ObB5dHr66M/V/GXZSx6rTBWhODm34W07HcXqDdwjVT8J/fo+3kkY9eXYuVfpl8t +bVV6g8DK1zMkQiQBHpN0DCZUYB9WoJgCKFsTvVUElRyMY5sd2bkyAktA2df1EBSH +kMXzqn3py+n3YzRY3VpsNUV3WkDRfU9SIdJd8g88muZeL9namSr/3eHTjdaMoCyL +GyyUpy5LrD56k3QWeXDWVynU9lXuxaiJDntP6A81d6vaIBtm8AFVihtJFoufHot4 +crmPqKtH+MQ9G6xwN5Az9okXKg7HGG9ZD82s4D/X5plN0OH5pMeYLrOQI+oEhjn2 +uK67y0Zl/eqoQcnVDy9PFrynuSVBC5/BTGNbebQrTDrIsQo0m0LMYO3mUzMBA7SO +j9iA0vmXxIGsPzf8lRu26odcahKWswRE492MZiTJlul+HWYmun1b0XJz/4YDWL5l ++kUVLnl53o2aHVlTkmPEMg/mwufkxTayJrtl3kL6oun7e6jUjaCRao9eLFZWtGWI +mwQQAQIABgUCUscuQwAKCRBfHshviAyeVYy3A/ig6XKOyU+RC/+4HtFxvL5osE9T +w/9JlY78umlNish7CJo0Sbka4nFipd6Iw/xcYiAQ06TuS5NDwdmcuoZoUpDAqbLP +r/pWpBy9IAUIzAa1UnyvYTDBp2NS3nxcWnzEpXk/dDyYMKX0gUsrDjE9ZTpsKeMq +70Kgq7lPtH6EfekmiQIcBBABAgAGBQJSx12BAAoJEG8PnXiV/JnUMB4QAJu5xu2F +ej5QSiIXlZw8LD/uzx3UEQocQy4eGPtwTxeYogt9FtbdblRYb6Y8qc+Uyk6fLBxB +E+gclk3I2GnKnpqjtdG5utJnAbvynqfgoE81tuC7hjxKYPaqGTJotwX4IsV8MZZN +D6hduw1hxCWsnckS/6jnVrJxThKqlKEnnFqLE14W1WTnKIqh+dXYdnqn+MEMXZhK +7z68TLteASvT1S9i91Kof7gmfe6hL2wbzPAtils6+gJr0ZfxxUTDzFL5hFulypzX +GgW4VemsZLRz6hhevPiWSRIGCG6xO/boGPnlOQt6Fv2mReBiuIidSia9S1G7G8KF +36ya41RrS6157dgAeSGGUOAzGkvamqlJozlTo1dl8eD08x5G2cHKL/H2oviaE1hr +CgZypLuhPisW2Yd99WMndMV+jrbkNXcORVdYQO/T0aP0vA7zNrTv96shcpNoT3q7 +nWDuGvxjOic8sSX/MxR7F+4UqZO9eZGziPnKDrv1fp17CWWmBBvJHWhFXfPF9nPu +vej6q3Eq49pq3oDuIbtV+1GaMKLre1fzMzqyz1hQ+esByOKi/cAH+QzkbXUC4KyL +q45O/UfNR3hYZms36n05729qF+hW6tO2ZGd43k7kSVgYHj55BIr942dzWMvg7BUY +aWQqYiahIfDxfBXz+WvW5gihr8In24L6dYXDiEYEEBECAAYFAlLHhgUACgkQCaei +StHlggeAhgCdG3L6GRFUho2VtUOx+uaGsvj7vvUAoIahAtf5fb8mSfzceNr5neXd +FgnpiEYEEBECAAYFAlLINaMACgkQxLEHmIV5aiNLbgCgoJYeWDcldLWYU1MH+uvo +Ll4ThV0An0PZNMtCd6gwGGhGd9iMRqHzVpQQiQIcBBABCAAGBQJSyoYqAAoJEIvo +ebAocx4cLO8P/jO9GWX7PSI+k21P4NIjSc6VHYv8MMa5H36NWe8wnoUSUr8FKvUh +uLOI1bDamRZBdCWSuMf3gcWNiwVi3FKJqH/tAdjD4Mc9NaL2DJwKgHH3IlSwV+jF +Hz9OvkEzfo8RT0zVkbt61tMhrNCK7wRw/QrjchixNyJH9YIifV2huppwbgHl5YH7 +7wYJ1thhIgyw8kSSKHFi3yJzy2q1qZ6hwcCCkUw2K9VgYV+0Y2plSkkc/OsoBUsU +JSNdCOSAzpwAmFuSpT3YVlwWnknJu0vV5BPUL/dJTeYLbhyxfXWiWDiF1tiBWHMS +KvUJowbW9r2CZ/FQx4V5hXKMfCupuDJpmCvIiDfRPGfuD4+4vJ+EhAp2TEyRL3HX +7BAlQ/95TiS22AhcFqn7Zl+9tS1vUcj4xLmakPQ2REKgBqiUrVDu+GvzZY0A6V6k +J6LNc+ncaLX+B9lYqqMQmxLyRK3JySpHWgC2ZPoyje8GR4ksf0IlvrRufFMj1Qyt +/a8Jc1Z2mXJR3PRrsL7EBDdp7Xl8BGqnjShZgIvKPDt6+nCIqsv13OjWaUBl+CKg +eZcDMt2nZGUfu4KJD6ktJ9nvthrocWxL4dRhFM7s/R9ad1IdmySoBH9SnUuMgM8e +bKQ5FnVqNiy1Z+JrsigPvb671KJ1MA9n2rPaBhY1cNYaaavIbKkBzDDTuQENBFLG +B58BCACe6UEcbxy5q6rIPXZikT4WCg6bw3AtdT/MeLUCmxWhhP9g+T3i0t7zU6bu +Zcw1uFxjnKsMEeDBHwdI0Bg9r5EVtp77GVf1EGrveKvISURlktkBtcezTVRfukEM +mTXBt/3vMGLg+AadFGZTU2ciKdO22AxLBZWVgz0ICoO/ljtvEFokrrzwDoF6ySHX +3Taiq/aMqI/RjIRXXMq6u+/oVC6droj10eZRYXGPMl7og5MRSUU8waV2fYgtfLmw +BtVEFbd0LPO5L1BNgIIMBx1X/QzMeBTldT+XcDSYh9ELfMJoynnVz0smZbeQ2PZ/ +DhGsVsLvJc+cx5cDnBKsPrejCTXBABEBAAGJAR8EGAECAAkFAlLGB58CGwwACgkQ +Yd4R7OJ2OnMzXAf+LxzrPplcEyIDKOoGW21320AwH5NqjInqj49K0gGhOL/xNkfs +C1wsiFFESdN7eL1+aDdk68CF1ClJagDKkH3U5o5PiPSjCsGBoGpdI6f7mRlxbUT2 +jQv0QC9Qav+9t4QcyBC/1BvwO1e7fgrpFLvBrXJpj4utHBP/R3WUo04kAp+sPbVk +tOEByvXAHkDDe0KAG2G9A0dLqF7kfydoSaioFmoJlkAu7LCwFLFbFZ3JRFAaYEQO +DfwkgPDDOA6k9Y1o+nbk/TgyEj7PtpzkiWh0aK5BRI8mjA/s0XNZKpuY1sghyASo +XvRQkAGPLcqS1D4k+kW3MLWpxjbSwGi8FCdsfg== +=d3FT +-----END PGP PUBLIC KEY BLOCK----- + +Type Bits KeyID Created Expires Algorithm Use pub 2048 5207CAD3 2013-01-02 ------- RSA Sign & Encrypt fingerprint: B87D 4569 86F1 9484 07E5 CCB4 3D68 B25D 5207 CAD3 uid Sendmail Signing Key/2013 @@ -2435,4 +2613,4 @@ DnF3FZZEzV7oqPwC2jzv/1dD6GFhtgy0cnyoPGUJ =nES8 -----END PGP PUBLIC KEY BLOCK----- -$Revision: 8.43 $, Last updated $Date: 2013/01/18 17:40:21 $ +$Revision: 8.46 $, Last updated $Date: 2014/01/18 00:20:24 $ Modified: head/contrib/sendmail/README ============================================================================== --- head/contrib/sendmail/README Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/README Sun Jan 26 23:39:11 2014 (r261194) @@ -1,7 +1,7 @@ SENDMAIL RELEASE 8 -This directory has the latest sendmail(TM) software from Sendmail, Inc. +This directory has the latest sendmail(TM) software from Proofpoint, Inc. Report any bugs to sendmail-bugs-YYYY@support.sendmail.org where YYYY is the current year, e.g., 2005. @@ -37,7 +37,7 @@ the latest updates. 4. Read cf/README. -Sendmail is a trademark of Sendmail, Inc. +Sendmail is a trademark of Proofpoint, Inc. US Patent Numbers 6865671, 6986037. +-----------------------+ @@ -465,4 +465,4 @@ sendmail Source for the sendmail program test Some test scripts (currently only for compilation aids). vacation Source for the vacation program. NOT PART OF SENDMAIL! -$Revision: 8.95 $, Last updated $Date: 2009/04/10 17:49:18 $ +$Revision: 8.96 $, Last updated $Date: 2013/11/22 20:51:01 $ Modified: head/contrib/sendmail/RELEASE_NOTES ============================================================================== --- head/contrib/sendmail/RELEASE_NOTES Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/RELEASE_NOTES Sun Jan 26 23:39:11 2014 (r261194) @@ -1,11 +1,58 @@ SENDMAIL RELEASE NOTES - $Id: RELEASE_NOTES,v 8.2024 2013/04/19 15:01:58 ca Exp $ + $Id: RELEASE_NOTES,v 8.2043 2014/01/23 20:27:19 ca Exp $ This listing shows the version of the sendmail binary, the version of the sendmail configuration files, the date of release, and a summary of the changes in that release. +8.14.8/8.14.8 2014/01/26 + Properly initialize all OpenSSL algorithms for versions before + OpenSSL 0.9.8o. Without this SHA2 algorithms may not + work properly, causing for example failures for certs + that use sha256WithRSAEncryption as signature algorithm. + When looking up hostnames, ensure only to return those records + for the requested family (AF_INET or AF_INET6). + On system that have NEEDSGETIPNODE and NETINET6 + this may have failed and cause delivery problems. + Problem noted by Kees Cook. + A new mailer flag '!' is available to suppress an MH hack + that drops an explicit From: header if it is the + same as what sendmail would generate. + Add an FFR (for future release) to use uncompressed IPv6 addresses, + i.e., they will not contain "::". For example, instead + of ::1 it will be 0:0:0:0:0:0:0:1. This means that + configuration data (including maps, files, classes, + custom ruleset, etc) have to use the same format. + This will be turned on in 8.15. It can be enabled in 8.14 + by compiling with: + APPENDDEF(`conf_sendmail_ENVDEF', `-D_FFR_IPV6_FULL') + in your devtools/Site/site.config.m4 file. + Add an additional case for the WorkAroundBrokenAAAA check when + dealing with broken nameservers by ignoring SERVFAIL + errors returned on T_AAAA (IPv6) lookups at delivery time. + Problem noted by Pavel Timofeev of OCS. + If available, pass LOGIN_SETCPUMASK and LOGIN_SETLOGINCLASS to + setusercontext() on deliveries as a different user. + Patch from Edward Tomasz Napierala from FreeBSD. + Avoid compiler warnings from a change in Cyrus-SASL 2.1.25. + Patch from Hajimu UMEMOTO from FreeBSD. + Add support for DHParameters 2048-bit primes. + CONFIG: Accept IPv6 literals when evaluating the HELO/EHLO argument + in FEATURE(`block_bad_helo'). Suggested by Andrey Chernov. + LIBSMDB: Add a missing check for malloc() in libsmdb/smndbm.c. + Patch from Bill Parker. + LIBSMDB: Fix minor memory leaks in libsmdb/ if allocations + fail. Patch from John Beck of Oracle. + Portability: + Add support for Darwin 12.x and 13.x (Mac OS X 10.8 and 10.9). + On Linux use socklen_t as the type for the 3rd argument + for getsockname/getpeername if the glibc version is at + least 2.1. + Added Files: + devtools/OS/Darwin.12.x + devtools/OS/Darwin.13.x + 8.14.7/8.14.7 2013/04/21 Drop support for IPv4-mapped IPv6 addresses to prevent the MTA from using a mapped address over a legitimate IPv6 address @@ -80,9 +127,12 @@ summary of the changes in that release. the reason for the failure in a single log line. Suggested by James Carey of Boeing. Portability: - Add support for Darwin 11.x and 12.x (Mac OS X 10.7 and 10.8). + Add support for Darwin 11.x (Mac OS X 10.7). Add support for SunOS 5.12 (aka Solaris 12). Patch from John Beck of Oracle. + Added Files: + devtools/OS/Darwin.11.x + devtools/OS/SunOS.5.12 8.14.5/8.14.5 2011/05/17 Do not cache SMTP extensions across connections as the cache Modified: head/contrib/sendmail/cf/README ============================================================================== --- head/contrib/sendmail/cf/README Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/README Sun Jan 26 23:39:11 2014 (r261194) @@ -77,7 +77,7 @@ Let's examine a typical .mc file: divert(-1) # - # Copyright (c) 1998-2005 Sendmail, Inc. and its suppliers. + # Copyright (c) 1998-2005 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -1402,6 +1402,9 @@ preserve_local_plus_detail that address will be looked up in the alias file; user+* and user will not be looked up). Only use if the local delivery agent in use supports +detail addressing. + Moreover, this will most likely not work if the 'w' flag + for the local mailer is set as the entire local address + including +detail is passed to the user lookup function. compat_check Enable ruleset check_compat to look up pairs of addresses with the Compat: tag -- Compat:sender<@>recipient -- in the @@ -4701,4 +4704,4 @@ M4 DIVERSIONS 8 DNS based blacklists 9 special local rulesets (1 and 2) -$Revision: 8.728 $, Last updated $Date: 2012/09/07 16:29:13 $ +$Revision: 8.730 $, Last updated $Date: 2014/01/16 15:55:51 $ Modified: head/contrib/sendmail/cf/cf/chez.cs.mc ============================================================================== --- head/contrib/sendmail/cf/cf/chez.cs.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/chez.cs.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: chez.cs.mc,v 8.14 1999/02/07 07:25:59 gshapiro Exp $') +VERSIONID(`$Id: chez.cs.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`LOCAL_RELAY', vangogh.CS.Berkeley.EDU)dnl Modified: head/contrib/sendmail/cf/cf/clientproto.mc ============================================================================== --- head/contrib/sendmail/cf/cf/clientproto.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/clientproto.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2000 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: clientproto.mc,v 8.16 2000/03/21 21:05:26 ca Exp $') +VERSIONID(`$Id: clientproto.mc,v 8.17 2013/11/22 20:51:08 ca Exp $') OSTYPE(unknown) FEATURE(nullclient, mailhost.$m) Modified: head/contrib/sendmail/cf/cf/cs-hpux10.mc ============================================================================== --- head/contrib/sendmail/cf/cf/cs-hpux10.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/cs-hpux10.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-hpux10.mc,v 8.13 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-hpux10.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux10)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`MAIL_HUB', mailspool.CS.Berkeley.EDU)dnl Modified: head/contrib/sendmail/cf/cf/cs-hpux9.mc ============================================================================== --- head/contrib/sendmail/cf/cf/cs-hpux9.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/cs-hpux9.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-hpux9.mc,v 8.14 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-hpux9.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux9)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`MAIL_HUB', mailspool.CS.Berkeley.EDU)dnl Modified: head/contrib/sendmail/cf/cf/cs-osf1.mc ============================================================================== --- head/contrib/sendmail/cf/cf/cs-osf1.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/cs-osf1.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-osf1.mc,v 8.13 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-osf1.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(osf1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/cs-solaris2.mc ============================================================================== --- head/contrib/sendmail/cf/cf/cs-solaris2.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/cs-solaris2.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-solaris2.mc,v 8.12 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-solaris2.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') OSTYPE(solaris2)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/cs-sunos4.1.mc ============================================================================== --- head/contrib/sendmail/cf/cf/cs-sunos4.1.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/cs-sunos4.1.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-sunos4.1.mc,v 8.13 1999/02/07 07:26:01 gshapiro Exp $') +VERSIONID(`$Id: cs-sunos4.1.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(sunos4.1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/cs-ultrix4.mc ============================================================================== --- head/contrib/sendmail/cf/cf/cs-ultrix4.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/cs-ultrix4.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-ultrix4.mc,v 8.13 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: cs-ultrix4.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/generic-bsd4.4.mc ============================================================================== --- head/contrib/sendmail/cf/cf/generic-bsd4.4.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/generic-bsd4.4.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -21,7 +21,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-bsd4.4.mc,v 8.10 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-bsd4.4.mc,v 8.11 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/generic-hpux10.mc ============================================================================== --- head/contrib/sendmail/cf/cf/generic-hpux10.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/generic-hpux10.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999, 2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999, 2001 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-hpux10.mc,v 8.13 2001/05/29 17:29:52 ca Exp $') +VERSIONID(`$Id: generic-hpux10.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux10)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/generic-hpux9.mc ============================================================================== --- head/contrib/sendmail/cf/cf/generic-hpux9.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/generic-hpux9.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-hpux9.mc,v 8.11 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-hpux9.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux9)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/generic-linux.mc ============================================================================== --- head/contrib/sendmail/cf/cf/generic-linux.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/generic-linux.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-linux.mc,v 8.1 1999/09/24 22:48:05 gshapiro Exp $') +VERSIONID(`$Id: generic-linux.mc,v 8.2 2013/11/22 20:51:08 ca Exp $') OSTYPE(linux)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/generic-mpeix.mc ============================================================================== --- head/contrib/sendmail/cf/cf/generic-mpeix.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/generic-mpeix.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 2001 Proofpoint, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set @@ -17,7 +17,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-mpeix.mc,v 8.1 2001/12/13 23:56:37 gshapiro Exp $') +VERSIONID(`$Id: generic-mpeix.mc,v 8.2 2013/11/22 20:51:08 ca Exp $') OSTYPE(mpeix)dnl DOMAIN(generic)dnl define(`confFORWARD_PATH', `$z/.forward')dnl Modified: head/contrib/sendmail/cf/cf/generic-nextstep3.3.mc ============================================================================== --- head/contrib/sendmail/cf/cf/generic-nextstep3.3.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/generic-nextstep3.3.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-nextstep3.3.mc,v 8.10 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-nextstep3.3.mc,v 8.11 2013/11/22 20:51:08 ca Exp $') OSTYPE(nextstep)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/generic-osf1.mc ============================================================================== --- head/contrib/sendmail/cf/cf/generic-osf1.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/generic-osf1.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-osf1.mc,v 8.11 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-osf1.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(osf1)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/generic-solaris.mc ============================================================================== --- head/contrib/sendmail/cf/cf/generic-solaris.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/generic-solaris.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999, 2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999, 2001 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-solaris.mc,v 8.13 2001/06/27 21:46:30 gshapiro Exp $') +VERSIONID(`$Id: generic-solaris.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(solaris2)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/generic-sunos4.1.mc ============================================================================== --- head/contrib/sendmail/cf/cf/generic-sunos4.1.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/generic-sunos4.1.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-sunos4.1.mc,v 8.11 1999/02/07 07:26:03 gshapiro Exp $') +VERSIONID(`$Id: generic-sunos4.1.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(sunos4.1)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/generic-ultrix4.mc ============================================================================== --- head/contrib/sendmail/cf/cf/generic-ultrix4.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/generic-ultrix4.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-ultrix4.mc,v 8.11 1999/02/07 07:26:03 gshapiro Exp $') +VERSIONID(`$Id: generic-ultrix4.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/huginn.cs.mc ============================================================================== --- head/contrib/sendmail/cf/cf/huginn.cs.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/huginn.cs.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: huginn.cs.mc,v 8.15 1999/02/07 07:26:03 gshapiro Exp $') +VERSIONID(`$Id: huginn.cs.mc,v 8.16 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux9)dnl DOMAIN(CS.Berkeley.EDU)dnl MASQUERADE_AS(CS.Berkeley.EDU)dnl Modified: head/contrib/sendmail/cf/cf/knecht.mc ============================================================================== --- head/contrib/sendmail/cf/cf/knecht.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/knecht.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2001, 2004, 2005 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2001, 2004, 2005 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -19,7 +19,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: knecht.mc,v 8.62 2006/09/27 19:48:59 eric Exp $') +VERSIONID(`$Id: knecht.mc,v 8.63 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4) DOMAIN(generic) Modified: head/contrib/sendmail/cf/cf/mail.cs.mc ============================================================================== --- head/contrib/sendmail/cf/cf/mail.cs.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/mail.cs.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: mail.cs.mc,v 8.18 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: mail.cs.mc,v 8.19 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(Berkeley.EDU)dnl MASQUERADE_AS(CS.Berkeley.EDU)dnl Modified: head/contrib/sendmail/cf/cf/mail.eecs.mc ============================================================================== --- head/contrib/sendmail/cf/cf/mail.eecs.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/mail.eecs.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: mail.eecs.mc,v 8.18 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: mail.eecs.mc,v 8.19 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(EECS.Berkeley.EDU)dnl MASQUERADE_AS(EECS.Berkeley.EDU)dnl Modified: head/contrib/sendmail/cf/cf/mailspool.cs.mc ============================================================================== --- head/contrib/sendmail/cf/cf/mailspool.cs.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/mailspool.cs.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: mailspool.cs.mc,v 8.12 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: mailspool.cs.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') OSTYPE(sunos4.1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/python.cs.mc ============================================================================== --- head/contrib/sendmail/cf/cf/python.cs.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/python.cs.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: python.cs.mc,v 8.12 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: python.cs.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`LOCAL_RELAY', vangogh.CS.Berkeley.EDU)dnl Modified: head/contrib/sendmail/cf/cf/s2k-osf1.mc ============================================================================== --- head/contrib/sendmail/cf/cf/s2k-osf1.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/s2k-osf1.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: s2k-osf1.mc,v 8.13 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: s2k-osf1.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(osf1)dnl DOMAIN(S2K.Berkeley.EDU)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/s2k-ultrix4.mc ============================================================================== --- head/contrib/sendmail/cf/cf/s2k-ultrix4.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/s2k-ultrix4.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: s2k-ultrix4.mc,v 8.13 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: s2k-ultrix4.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(S2K.Berkeley.EDU)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/submit.cf ============================================================================== --- head/contrib/sendmail/cf/cf/submit.cf Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/submit.cf Sun Jan 26 23:39:11 2014 (r261194) @@ -1,5 +1,5 @@ # -# Copyright (c) 1998-2004, 2009, 2010 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2004, 2009, 2010 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983, 1995 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -16,8 +16,8 @@ ##### ##### SENDMAIL CONFIGURATION FILE ##### -##### built by ca@wiz.smi.sendmail.com on Fri Apr 19 08:04:44 PDT 2013 -##### in /extra/home/ca/sm-8.14.7/OpenSource/sendmail-8.14.7/cf/cf +##### built by ca@lab.smi.sendmail.com on Thu Jan 23 12:29:13 PST 2014 +##### in /home/ca/sm8-rel/sm-8.14.8/OpenSource/sendmail-8.14.8/cf/cf ##### using ../ as configuration include directory ##### ###################################################################### @@ -27,15 +27,15 @@ ###################################################################### ###################################################################### -##### $Id: cfhead.m4,v 8.121 2010/01/07 18:20:19 ca Exp $ ##### -##### $Id: cf.m4,v 8.32 1999/02/07 07:26:14 gshapiro Exp $ ##### -##### $Id: submit.mc,v 8.14 2006/04/05 05:54:41 ca Exp $ ##### -##### $Id: msp.m4,v 1.33 2004/02/09 22:32:38 ca Exp $ ##### +##### $Id: cfhead.m4,v 8.122 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: cf.m4,v 8.33 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: submit.mc,v 8.15 2013/11/22 20:51:08 ca Exp $ ##### +##### $Id: msp.m4,v 1.34 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: no_default_msa.m4,v 8.2 2001/02/14 05:03:22 gshapiro Exp $ ##### +##### $Id: no_default_msa.m4,v 8.3 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ ##### +##### $Id: proto.m4,v 8.762 2013/11/22 20:51:13 ca Exp $ ##### # level 10 config file format V10/Berkeley @@ -114,7 +114,7 @@ D{MTAHost}[127.0.0.1] # Configuration version number -DZ8.14.7/Submit +DZ8.14.8/Submit ############### @@ -1299,7 +1299,7 @@ R$* $#relay $@ ${MTAHost} $: $1 < @ $j ### Local and Program Mailer specification ### ################################################## -##### $Id: local.m4,v 8.59 2004/11/23 00:37:25 ca Exp $ ##### +##### $Id: local.m4,v 8.60 2013/11/22 20:51:14 ca Exp $ ##### # # Envelope sender rewriting @@ -1351,7 +1351,7 @@ Mprog, P=[IPC], F=lmDFMuXk5, S=EnvFromL ### SMTP Mailer specification ### ##################################### -##### $Id: smtp.m4,v 8.65 2006/07/12 21:08:10 ca Exp $ ##### +##### $Id: smtp.m4,v 8.66 2013/11/22 20:51:14 ca Exp $ ##### # # common sender and masquerading recipient rewriting @@ -1442,7 +1442,7 @@ Mrelay, P=[IPC], F=mDFMuXa8k, S=EnvFrom ### submit.mc ### # divert(-1) # # -# # Copyright (c) 2001-2003 Sendmail, Inc. and its suppliers. +# # Copyright (c) 2001-2003 Proofpoint, Inc. and its suppliers. # # All rights reserved. # # # # By using this file, you agree to the terms and conditions set @@ -1457,7 +1457,7 @@ Mrelay, P=[IPC], F=mDFMuXa8k, S=EnvFrom # # # # divert(0)dnl -# VERSIONID(`$Id: submit.mc,v 8.14 2006/04/05 05:54:41 ca Exp $') +# VERSIONID(`$Id: submit.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') # define(`confCF_VERSION', `Submit')dnl # define(`__OSTYPE__',`')dnl dirty hack to keep proto.m4 from complaining # define(`_USE_DECNET_SYNTAX_', `1')dnl support DECnet Modified: head/contrib/sendmail/cf/cf/submit.mc ============================================================================== --- head/contrib/sendmail/cf/cf/submit.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/submit.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 2001-2003 Sendmail, Inc. and its suppliers. +# Copyright (c) 2001-2003 Proofpoint, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set @@ -15,7 +15,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: submit.mc,v 8.14 2006/04/05 05:54:41 ca Exp $') +VERSIONID(`$Id: submit.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') define(`confCF_VERSION', `Submit')dnl define(`__OSTYPE__',`')dnl dirty hack to keep proto.m4 from complaining define(`_USE_DECNET_SYNTAX_', `1')dnl support DECnet Modified: head/contrib/sendmail/cf/cf/tcpproto.mc ============================================================================== --- head/contrib/sendmail/cf/cf/tcpproto.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/tcpproto.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2000 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -26,7 +26,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: tcpproto.mc,v 8.14 2000/08/03 15:26:50 ca Exp $') +VERSIONID(`$Id: tcpproto.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') OSTYPE(`unknown') FEATURE(`nouucp', `reject') MAILER(`local') Modified: head/contrib/sendmail/cf/cf/ucbarpa.mc ============================================================================== --- head/contrib/sendmail/cf/cf/ucbarpa.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/ucbarpa.mc Sun Jan 26 23:39:11 2014 (r261194) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -21,7 +21,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: ucbarpa.mc,v 8.12 1999/02/07 07:26:05 gshapiro Exp $') +VERSIONID(`$Id: ucbarpa.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') DOMAIN(CS.Berkeley.EDU)dnl OSTYPE(bsd4.4)dnl MAILER(local)dnl Modified: head/contrib/sendmail/cf/cf/ucbvax.mc ============================================================================== --- head/contrib/sendmail/cf/cf/ucbvax.mc Sun Jan 26 22:49:24 2014 (r261193) +++ head/contrib/sendmail/cf/cf/ucbvax.mc Sun Jan 26 23:39:11 2014 (r261194) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 23:40:32 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 21F8AF05; Sun, 26 Jan 2014 23:40:32 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0E45817F7; Sun, 26 Jan 2014 23:40:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QNeVVZ095117; Sun, 26 Jan 2014 23:40:31 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QNeVWp095116; Sun, 26 Jan 2014 23:40:31 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201401262340.s0QNeVWp095116@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sun, 26 Jan 2014 23:40:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261195 - head/lib/libsm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 23:40:32 -0000 Author: gshapiro Date: Sun Jan 26 23:40:31 2014 New Revision: 261195 URL: http://svnweb.freebsd.org/changeset/base/261195 Log: Add new sendmail 8.14.8 file MFC after: 5 days Modified: head/lib/libsm/Makefile Modified: head/lib/libsm/Makefile ============================================================================== --- head/lib/libsm/Makefile Sun Jan 26 23:39:11 2014 (r261194) +++ head/lib/libsm/Makefile Sun Jan 26 23:40:31 2014 (r261195) @@ -31,7 +31,7 @@ SRCS+= assert.c debug.c errstring.c exc. wbuf.c wsetup.c string.c stringf.c \ xtrap.c strto.c test.c path.c strcasecmp.c strrevcmp.c \ signal.c clock.c config.c sem.c shm.c mbdb.c strexit.c cf.c ldap.c \ - niprop.c mpeix.c memstat.c util.c + niprop.c mpeix.c memstat.c util.c inet6_ntop.c CLEANFILES+=sm_os.h INTERNALLIB= From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 23:42:40 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AC936107; Sun, 26 Jan 2014 23:42:40 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 97DEC1876; Sun, 26 Jan 2014 23:42:40 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QNge0b097621; Sun, 26 Jan 2014 23:42:40 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QNgeMo097620; Sun, 26 Jan 2014 23:42:40 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201401262342.s0QNgeMo097620@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sun, 26 Jan 2014 23:42:40 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261196 - head/contrib/sendmail/include/sm/os X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 23:42:40 -0000 Author: gshapiro Date: Sun Jan 26 23:42:40 2014 New Revision: 261196 URL: http://svnweb.freebsd.org/changeset/base/261196 Log: Remove local FreeBSD workaround now that upstream project has a better fix. MFC after: 5 days Modified: head/contrib/sendmail/include/sm/os/sm_os_freebsd.h Modified: head/contrib/sendmail/include/sm/os/sm_os_freebsd.h ============================================================================== --- head/contrib/sendmail/include/sm/os/sm_os_freebsd.h Sun Jan 26 23:40:31 2014 (r261195) +++ head/contrib/sendmail/include/sm/os/sm_os_freebsd.h Sun Jan 26 23:42:40 2014 (r261196) @@ -39,7 +39,3 @@ #ifndef SM_CONF_MSG # define SM_CONF_MSG 1 #endif /* SM_CONF_MSG */ - -#ifndef SM_IPNODEBYNAME_FLAGS -# define SM_IPNODEBYNAME_FLAGS AI_DEFAULT|AI_ALL -#endif /* SM_IPNODEBYNAME_FLAGS */ From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 23:44:12 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DFAD725A; Sun, 26 Jan 2014 23:44:12 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CB94C1886; Sun, 26 Jan 2014 23:44:12 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QNiCO4097864; Sun, 26 Jan 2014 23:44:12 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QNiCw4097863; Sun, 26 Jan 2014 23:44:12 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201401262344.s0QNiCw4097863@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sun, 26 Jan 2014 23:44:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261197 - head/contrib/sendmail X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 23:44:12 -0000 Author: gshapiro Date: Sun Jan 26 23:44:12 2014 New Revision: 261197 URL: http://svnweb.freebsd.org/changeset/base/261197 Log: Update for sendmail 8.14.8 import MFC after: 5 days Modified: head/contrib/sendmail/FREEBSD-upgrade Modified: head/contrib/sendmail/FREEBSD-upgrade ============================================================================== --- head/contrib/sendmail/FREEBSD-upgrade Sun Jan 26 23:42:40 2014 (r261196) +++ head/contrib/sendmail/FREEBSD-upgrade Sun Jan 26 23:44:12 2014 (r261197) @@ -1,6 +1,6 @@ $FreeBSD$ -sendmail 8.14.7 +sendmail 8.14.8 originals can be found at: ftp://ftp.sendmail.org/pub/sendmail/ For the import of sendmail, the following directories were renamed: @@ -97,4 +97,4 @@ infrastructure in FreeBSD: usr.sbin/mailwrapper/Makefile gshapiro@FreeBSD.org -21-April-2013 +26-January-2014 From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 23:47:04 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3A88A493; Sun, 26 Jan 2014 23:47:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0C54A18A0; Sun, 26 Jan 2014 23:47:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QNl3fm098302; Sun, 26 Jan 2014 23:47:03 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QNl3CY098301; Sun, 26 Jan 2014 23:47:03 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201401262347.s0QNl3CY098301@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sun, 26 Jan 2014 23:47:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261198 - head/contrib/sendmail/libsm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 23:47:04 -0000 Author: gshapiro Date: Sun Jan 26 23:47:03 2014 New Revision: 261198 URL: http://svnweb.freebsd.org/changeset/base/261198 Log: Add missing svn:keywords property to new files MFC after: 5 days Modified: Directory Properties: head/contrib/sendmail/libsm/inet6_ntop.c (props changed) head/contrib/sendmail/libsm/t-fget.c (props changed) head/contrib/sendmail/libsm/t-inet6_ntop.c (props changed) From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 23:51:17 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9B2FF606; Sun, 26 Jan 2014 23:51:17 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8757B18BD; Sun, 26 Jan 2014 23:51:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QNpH7u099744; Sun, 26 Jan 2014 23:51:17 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QNpHvU099742; Sun, 26 Jan 2014 23:51:17 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201401262351.s0QNpHvU099742@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sun, 26 Jan 2014 23:51:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261199 - head/etc/sendmail X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 23:51:17 -0000 Author: gshapiro Date: Sun Jan 26 23:51:16 2014 New Revision: 261199 URL: http://svnweb.freebsd.org/changeset/base/261199 Log: Minor changes to force commit these files so new freebsd*.cf files are built to use the new sendmail-8.14.8/cf tree. MFC after: 5 days Modified: head/etc/sendmail/freebsd.mc head/etc/sendmail/freebsd.submit.mc Modified: head/etc/sendmail/freebsd.mc ============================================================================== --- head/etc/sendmail/freebsd.mc Sun Jan 26 23:47:03 2014 (r261198) +++ head/etc/sendmail/freebsd.mc Sun Jan 26 23:51:16 2014 (r261199) @@ -33,6 +33,7 @@ divert(-1) # SUCH DAMAGE. # + # # This is a generic configuration file for FreeBSD 6.X and later systems. # If you want to customize it, copy it to a name appropriate for your Modified: head/etc/sendmail/freebsd.submit.mc ============================================================================== --- head/etc/sendmail/freebsd.submit.mc Sun Jan 26 23:47:03 2014 (r261198) +++ head/etc/sendmail/freebsd.submit.mc Sun Jan 26 23:51:16 2014 (r261199) @@ -9,6 +9,7 @@ divert(-1) # # + # # This is the FreeBSD configuration for a set-group-ID sm-msp sendmail # that acts as a initial mail submission program. From owner-svn-src-all@FreeBSD.ORG Sun Jan 26 23:55:35 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BEEEA95D; Sun, 26 Jan 2014 23:55:35 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A9B541957; Sun, 26 Jan 2014 23:55:35 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0QNtZPY002160; Sun, 26 Jan 2014 23:55:35 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0QNtZAL002159; Sun, 26 Jan 2014 23:55:35 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201401262355.s0QNtZAL002159@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sun, 26 Jan 2014 23:55:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261200 - head/release/doc/en_US.ISO8859-1/relnotes X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 26 Jan 2014 23:55:35 -0000 Author: gshapiro Date: Sun Jan 26 23:55:35 2014 New Revision: 261200 URL: http://svnweb.freebsd.org/changeset/base/261200 Log: Note merge to head for sendmail 8.14.8. MFC after: 5 days Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml ============================================================================== --- head/release/doc/en_US.ISO8859-1/relnotes/article.xml Sun Jan 26 23:51:16 2014 (r261199) +++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml Sun Jan 26 23:55:35 2014 (r261200) @@ -256,6 +256,9 @@ &man.jemalloc.3; has been updated to version 3.5.0. + + sendmail has been + updated from 8.14.7 to 8.14.8. From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 06:20:39 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 36D2A11C; Mon, 27 Jan 2014 06:20:39 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 219B414F6; Mon, 27 Jan 2014 06:20:39 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0R6Kd8C050493; Mon, 27 Jan 2014 06:20:39 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0R6Kbwo050480; Mon, 27 Jan 2014 06:20:37 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401270620.s0R6Kbwo050480@svn.freebsd.org> From: Warner Losh Date: Mon, 27 Jan 2014 06:20:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261202 - in vendor/dtc/dist: . Documentation libfdt tests X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 06:20:39 -0000 Author: imp Date: Mon Jan 27 06:20:36 2014 New Revision: 261202 URL: http://svnweb.freebsd.org/changeset/base/261202 Log: Import dtc git at 6a15eb2350426d285130e4c9d84c0bdb6575547a (last rev before bison became required) Modified: vendor/dtc/dist/Documentation/manual.txt vendor/dtc/dist/Makefile vendor/dtc/dist/checks.c vendor/dtc/dist/convert-dtsv0-lexer.l vendor/dtc/dist/data.c vendor/dtc/dist/dtc-lexer.l vendor/dtc/dist/dtc-parser.y vendor/dtc/dist/dtc.c vendor/dtc/dist/dtc.h vendor/dtc/dist/fdtdump.c vendor/dtc/dist/fdtget.c vendor/dtc/dist/fdtput.c vendor/dtc/dist/flattree.c vendor/dtc/dist/libfdt/Makefile.libfdt vendor/dtc/dist/libfdt/fdt.c vendor/dtc/dist/libfdt/fdt.h vendor/dtc/dist/libfdt/fdt_ro.c vendor/dtc/dist/libfdt/fdt_rw.c vendor/dtc/dist/libfdt/fdt_sw.c vendor/dtc/dist/libfdt/fdt_wip.c vendor/dtc/dist/libfdt/libfdt.h vendor/dtc/dist/libfdt/libfdt_env.h vendor/dtc/dist/libfdt/version.lds vendor/dtc/dist/livetree.c vendor/dtc/dist/srcpos.c vendor/dtc/dist/srcpos.h vendor/dtc/dist/tests/Makefile.tests vendor/dtc/dist/tests/add_subnode_with_nops.c vendor/dtc/dist/tests/aliases.dts vendor/dtc/dist/tests/appendprop1.c vendor/dtc/dist/tests/appendprop2.c vendor/dtc/dist/tests/asm_tree_dump.c vendor/dtc/dist/tests/boot-cpuid.c vendor/dtc/dist/tests/char_literal.c vendor/dtc/dist/tests/del_node.c vendor/dtc/dist/tests/del_property.c vendor/dtc/dist/tests/dtb_reverse.c vendor/dtc/dist/tests/dtbs_equal_ordered.c vendor/dtc/dist/tests/dtbs_equal_unordered.c vendor/dtc/dist/tests/dumptrees.c vendor/dtc/dist/tests/extra-terminating-null.c vendor/dtc/dist/tests/fdtget-runtest.sh vendor/dtc/dist/tests/find_property.c vendor/dtc/dist/tests/get_alias.c vendor/dtc/dist/tests/get_mem_rsv.c vendor/dtc/dist/tests/get_name.c vendor/dtc/dist/tests/get_path.c vendor/dtc/dist/tests/get_phandle.c vendor/dtc/dist/tests/getprop.c vendor/dtc/dist/tests/incbin.c vendor/dtc/dist/tests/include1.dts vendor/dtc/dist/tests/include7.dts vendor/dtc/dist/tests/include8.dts vendor/dtc/dist/tests/integer-expressions.c vendor/dtc/dist/tests/mangle-layout.c vendor/dtc/dist/tests/move_and_save.c vendor/dtc/dist/tests/node_check_compatible.c vendor/dtc/dist/tests/node_offset_by_compatible.c vendor/dtc/dist/tests/node_offset_by_phandle.c vendor/dtc/dist/tests/node_offset_by_prop_value.c vendor/dtc/dist/tests/nop_node.c vendor/dtc/dist/tests/nop_property.c vendor/dtc/dist/tests/nopulate.c vendor/dtc/dist/tests/notfound.c vendor/dtc/dist/tests/open_pack.c vendor/dtc/dist/tests/parent_offset.c vendor/dtc/dist/tests/path-references.c vendor/dtc/dist/tests/path_offset.c vendor/dtc/dist/tests/path_offset_aliases.c vendor/dtc/dist/tests/phandle_format.c vendor/dtc/dist/tests/references.c vendor/dtc/dist/tests/root_node.c vendor/dtc/dist/tests/run_tests.sh vendor/dtc/dist/tests/rw_tree1.c vendor/dtc/dist/tests/set_name.c vendor/dtc/dist/tests/setprop.c vendor/dtc/dist/tests/setprop_inplace.c vendor/dtc/dist/tests/sized_cells.c vendor/dtc/dist/tests/string_escapes.c vendor/dtc/dist/tests/subnode_offset.c vendor/dtc/dist/tests/supernode_atdepth_offset.c vendor/dtc/dist/tests/sw_tree1.c vendor/dtc/dist/tests/test_tree1.dts vendor/dtc/dist/tests/test_tree1_merge.dts vendor/dtc/dist/tests/test_tree1_merge_labelled.dts vendor/dtc/dist/tests/test_tree1_merge_path.dts vendor/dtc/dist/tests/test_tree1_wrong1.dts vendor/dtc/dist/tests/test_tree1_wrong2.dts vendor/dtc/dist/tests/test_tree1_wrong3.dts vendor/dtc/dist/tests/test_tree1_wrong4.dts vendor/dtc/dist/tests/test_tree1_wrong5.dts vendor/dtc/dist/tests/test_tree1_wrong6.dts vendor/dtc/dist/tests/test_tree1_wrong7.dts vendor/dtc/dist/tests/test_tree1_wrong8.dts vendor/dtc/dist/tests/test_tree1_wrong9.dts vendor/dtc/dist/tests/trees.S vendor/dtc/dist/tests/truncated_property.c vendor/dtc/dist/tests/utilfdt_test.c vendor/dtc/dist/tests/value-labels.c vendor/dtc/dist/treesource.c vendor/dtc/dist/util.c vendor/dtc/dist/util.h Modified: vendor/dtc/dist/Documentation/manual.txt ============================================================================== --- vendor/dtc/dist/Documentation/manual.txt Sun Jan 26 23:57:34 2014 (r261201) +++ vendor/dtc/dist/Documentation/manual.txt Mon Jan 27 06:20:36 2014 (r261202) @@ -3,6 +3,7 @@ Device Tree Compiler Manual I - "dtc", the device tree compiler 1) Obtaining Sources + 1.1) Submitting Patches 2) Description 3) Command Line 4) Source File @@ -44,6 +45,10 @@ Tarballs of the 1.0.0 and latest release http://www.jdl.com/software/dtc-v1.2.0.tgz http://www.jdl.com/software/dtc-latest.tgz +1.1) Submitting Patches + +Patches should be sent to jdl@jdl.com, and CC'ed to +devicetree-discuss@lists.ozlabs.org. 2) Description Modified: vendor/dtc/dist/Makefile ============================================================================== --- vendor/dtc/dist/Makefile Sun Jan 26 23:57:34 2014 (r261201) +++ vendor/dtc/dist/Makefile Mon Jan 27 06:20:36 2014 (r261202) @@ -9,7 +9,7 @@ # CONFIG_LOCALVERSION from some future config system. # VERSION = 1 -PATCHLEVEL = 3 +PATCHLEVEL = 4 SUBLEVEL = 0 EXTRAVERSION = LOCAL_VERSION = @@ -160,18 +160,26 @@ endif # intermediate target and building them again "for real" .SECONDARY: $(DTC_GEN_SRCS) $(CONVERT_GEN_SRCS) -install: all $(SCRIPTS) - @$(VECHO) INSTALL +install-bin: all $(SCRIPTS) + @$(VECHO) INSTALL-BIN $(INSTALL) -d $(DESTDIR)$(BINDIR) $(INSTALL) $(BIN) $(SCRIPTS) $(DESTDIR)$(BINDIR) + +install-lib: all + @$(VECHO) INSTALL-LIB $(INSTALL) -d $(DESTDIR)$(LIBDIR) $(INSTALL) $(LIBFDT_lib) $(DESTDIR)$(LIBDIR) ln -sf $(notdir $(LIBFDT_lib)) $(DESTDIR)$(LIBDIR)/$(LIBFDT_soname) ln -sf $(LIBFDT_soname) $(DESTDIR)$(LIBDIR)/libfdt.$(SHAREDLIB_EXT) $(INSTALL) -m 644 $(LIBFDT_archive) $(DESTDIR)$(LIBDIR) + +install-includes: + @$(VECHO) INSTALL-INC $(INSTALL) -d $(DESTDIR)$(INCLUDEDIR) $(INSTALL) -m 644 $(LIBFDT_include) $(DESTDIR)$(INCLUDEDIR) +install: install-bin install-lib install-includes + $(VERSION_FILE): Makefile FORCE $(call filechk,version) Modified: vendor/dtc/dist/checks.c ============================================================================== --- vendor/dtc/dist/checks.c Sun Jan 26 23:57:34 2014 (r261201) +++ vendor/dtc/dist/checks.c Mon Jan 27 06:20:36 2014 (r261202) @@ -53,7 +53,7 @@ struct check { void *data; bool warn, error; enum checkstatus status; - int inprogress; + bool inprogress; int num_prereqs; struct check **prereq; }; @@ -141,9 +141,9 @@ static void check_nodes_props(struct che check_nodes_props(c, dt, child); } -static int run_check(struct check *c, struct node *dt) +static bool run_check(struct check *c, struct node *dt) { - int error = 0; + bool error = false; int i; assert(!c->inprogress); @@ -151,11 +151,11 @@ static int run_check(struct check *c, st if (c->status != UNCHECKED) goto out; - c->inprogress = 1; + c->inprogress = true; for (i = 0; i < c->num_prereqs; i++) { struct check *prq = c->prereq[i]; - error |= run_check(prq, dt); + error = error || run_check(prq, dt); if (prq->status != PASSED) { c->status = PREREQ; check_msg(c, "Failed prerequisite '%s'", @@ -177,9 +177,9 @@ static int run_check(struct check *c, st TRACE(c, "\tCompleted, status %d", c->status); out: - c->inprogress = 0; + c->inprogress = false; if ((c->status != PASSED) && (c->error)) - error = 1; + error = true; return error; } @@ -256,11 +256,15 @@ static void check_duplicate_property_nam { struct property *prop, *prop2; - for_each_property(node, prop) - for (prop2 = prop->next; prop2; prop2 = prop2->next) + for_each_property(node, prop) { + for (prop2 = prop->next; prop2; prop2 = prop2->next) { + if (prop2->deleted) + continue; if (streq(prop->name, prop2->name)) FAIL(c, "Duplicate property name %s in %s", prop->name, node->fullpath); + } + } } NODE_ERROR(duplicate_property_names, NULL); @@ -729,7 +733,7 @@ void parse_checks_option(bool warn, bool die("Unrecognized check name \"%s\"\n", name); } -void process_checks(int force, struct boot_info *bi) +void process_checks(bool force, struct boot_info *bi) { struct node *dt = bi->dt; int i; Modified: vendor/dtc/dist/convert-dtsv0-lexer.l ============================================================================== --- vendor/dtc/dist/convert-dtsv0-lexer.l Sun Jan 26 23:57:34 2014 (r261201) +++ vendor/dtc/dist/convert-dtsv0-lexer.l Mon Jan 27 06:20:36 2014 (r261202) @@ -50,8 +50,6 @@ static int saw_hyphen; /* = 0 */ static unsigned long long last_val; static char *last_name; /* = NULL */ -#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) - const struct { const char *pattern; int obase, width; @@ -194,11 +192,15 @@ const struct { } %% -static void usage(void) -{ - fprintf(stderr, "convert-dtsv0 ...\n"); - exit(3); -} +/* Usage related data. */ +static const char usage_synopsis[] = "convert-dtsv0 [options] ..."; +static const char usage_short_opts[] = "" USAGE_COMMON_SHORT_OPTS; +static struct option const usage_long_opts[] = { + USAGE_COMMON_LONG_OPTS +}; +static const char * const usage_opts_help[] = { + USAGE_COMMON_OPTS_HELP +}; static void convert_file(const char *fname) { @@ -226,10 +228,16 @@ static void convert_file(const char *fna int main(int argc, char *argv[]) { + int opt; int i; + while ((opt = util_getopt_long()) != EOF) { + switch (opt) { + case_USAGE_COMMON_FLAGS + } + } if (argc < 2) - usage(); + usage("missing filename"); for (i = 1; i < argc; i++) { fprintf(stderr, "Converting %s from dts v0 to dts v1\n", argv[i]); Modified: vendor/dtc/dist/data.c ============================================================================== --- vendor/dtc/dist/data.c Sun Jan 26 23:57:34 2014 (r261201) +++ vendor/dtc/dist/data.c Mon Jan 27 06:20:36 2014 (r261202) @@ -250,20 +250,20 @@ struct data data_add_marker(struct data return data_append_markers(d, m); } -int data_is_one_string(struct data d) +bool data_is_one_string(struct data d) { int i; int len = d.len; if (len == 0) - return 0; + return false; for (i = 0; i < len-1; i++) if (d.val[i] == '\0') - return 0; + return false; if (d.val[len-1] != '\0') - return 0; + return false; - return 1; + return true; } Modified: vendor/dtc/dist/dtc-lexer.l ============================================================================== --- vendor/dtc/dist/dtc-lexer.l Sun Jan 26 23:57:34 2014 (r261201) +++ vendor/dtc/dist/dtc-lexer.l Mon Jan 27 06:20:36 2014 (r261202) @@ -40,6 +40,7 @@ LINECOMMENT "//".*\n #include "dtc-parser.tab.h" YYLTYPE yylloc; +extern bool treesource_error; /* CAUTION: this will stop working if we ever use yyless() or yyunput() */ #define YY_USER_ACTION \ @@ -61,7 +62,8 @@ static int dts_version = 1; BEGIN(V1); \ static void push_input_file(const char *filename); -static int pop_input_file(void); +static bool pop_input_file(void); +static void lexical_error(const char *fmt, ...); %} %% @@ -71,6 +73,27 @@ static int pop_input_file(void); push_input_file(name); } +<*>^"#"(line)?[ \t]+[0-9]+[ \t]+{STRING}([ \t]+[0-9]+)? { + char *line, *tmp, *fn; + /* skip text before line # */ + line = yytext; + while (!isdigit((unsigned char)*line)) + line++; + /* skip digits in line # */ + tmp = line; + while (!isspace((unsigned char)*tmp)) + tmp++; + /* "NULL"-terminate line # */ + *tmp = '\0'; + /* start of filename */ + fn = strchr(tmp + 1, '"') + 1; + /* strip trailing " from filename */ + tmp = strchr(fn, '"'); + *tmp = 0; + /* -1 since #line is the number of the next line */ + srcpos_set_line(xstrdup(fn), atoi(line) - 1); + } + <*><> { if (!pop_input_file()) { yyterminate(); @@ -103,6 +126,20 @@ static int pop_input_file(void); return DT_BITS; } +<*>"/delete-property/" { + DPRINT("Keyword: /delete-property/\n"); + DPRINT("\n"); + BEGIN(PROPNODENAME); + return DT_DEL_PROP; + } + +<*>"/delete-node/" { + DPRINT("Keyword: /delete-node/\n"); + DPRINT("\n"); + BEGIN(PROPNODENAME); + return DT_DEL_NODE; + } + <*>{LABEL}: { DPRINT("Label: %s\n", yytext); yylval.labelref = xstrdup(yytext); @@ -111,15 +148,42 @@ static int pop_input_file(void); } ([0-9]+|0[xX][0-9a-fA-F]+)(U|L|UL|LL|ULL)? { - yylval.literal = xstrdup(yytext); - DPRINT("Literal: '%s'\n", yylval.literal); + char *e; + DPRINT("Integer Literal: '%s'\n", yytext); + + errno = 0; + yylval.integer = strtoull(yytext, &e, 0); + + assert(!(*e) || !e[strspn(e, "UL")]); + + if (errno == ERANGE) + lexical_error("Integer literal '%s' out of range", + yytext); + else + /* ERANGE is the only strtoull error triggerable + * by strings matching the pattern */ + assert(errno == 0); return DT_LITERAL; } <*>{CHAR_LITERAL} { - yytext[yyleng-1] = '\0'; - yylval.literal = xstrdup(yytext+1); - DPRINT("Character literal: %s\n", yylval.literal); + struct data d; + DPRINT("Character literal: %s\n", yytext); + + d = data_copy_escape_string(yytext+1, yyleng-2); + if (d.len == 1) { + lexical_error("Empty character literal"); + yylval.integer = 0; + return DT_CHAR_LITERAL; + } + + yylval.integer = (unsigned char)d.val[0]; + + if (d.len > 2) + lexical_error("Character literal has %d" + " characters instead of 1", + d.len - 1); + return DT_CHAR_LITERAL; } @@ -148,9 +212,10 @@ static int pop_input_file(void); return ']'; } -{PROPNODECHAR}+ { +\\?{PROPNODECHAR}+ { DPRINT("PropNodeName: %s\n", yytext); - yylval.propnodename = xstrdup(yytext); + yylval.propnodename = xstrdup((yytext[0] == '\\') ? + yytext + 1 : yytext); BEGIN_DEFAULT(); return DT_PROPNODENAME; } @@ -202,13 +267,24 @@ static void push_input_file(const char * } -static int pop_input_file(void) +static bool pop_input_file(void) { if (srcfile_pop() == 0) - return 0; + return false; yypop_buffer_state(); yyin = current_srcfile->f; - return 1; + return true; +} + +static void lexical_error(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + srcpos_verror(&yylloc, "Lexical error", fmt, ap); + va_end(ap); + + treesource_error = true; } Modified: vendor/dtc/dist/dtc-parser.y ============================================================================== --- vendor/dtc/dist/dtc-parser.y Sun Jan 26 23:57:34 2014 (r261201) +++ vendor/dtc/dist/dtc-parser.y Mon Jan 27 06:20:36 2014 (r261202) @@ -31,15 +31,11 @@ extern void print_error(char const *fmt, extern void yyerror(char const *s); extern struct boot_info *the_boot_info; -extern int treesource_error; - -static unsigned long long eval_literal(const char *s, int base, int bits); -static unsigned char eval_char_literal(const char *s); +extern bool treesource_error; %} %union { char *propnodename; - char *literal; char *labelref; unsigned int cbase; uint8_t byte; @@ -62,9 +58,11 @@ static unsigned char eval_char_literal(c %token DT_MEMRESERVE %token DT_LSHIFT DT_RSHIFT DT_LE DT_GE DT_EQ DT_NE DT_AND DT_OR %token DT_BITS +%token DT_DEL_PROP +%token DT_DEL_NODE %token DT_PROPNODENAME -%token DT_LITERAL -%token DT_CHAR_LITERAL +%token DT_LITERAL +%token DT_CHAR_LITERAL %token DT_BASE %token DT_BYTE %token DT_STRING @@ -153,6 +151,17 @@ devicetree: print_error("label or path, '%s', not found", $2); $$ = $1; } + | devicetree DT_DEL_NODE DT_REF ';' + { + struct node *target = get_node_by_ref($1, $3); + + if (!target) + print_error("label or path, '%s', not found", $3); + else + delete_node(target); + + $$ = $1; + } ; nodedef: @@ -182,6 +191,10 @@ propdef: { $$ = build_property($1, empty_data); } + | DT_DEL_PROP DT_PROPNODENAME ';' + { + $$ = build_property_delete($2); + } | DT_LABEL propdef { add_label(&$2->labels, $1); @@ -213,10 +226,9 @@ propdata: if ($6 != 0) if (fseek(f, $6, SEEK_SET) != 0) - print_error("Couldn't seek to offset %llu in \"%s\": %s", - (unsigned long long)$6, - $4.val, - strerror(errno)); + die("Couldn't seek to offset %llu in \"%s\": %s", + (unsigned long long)$6, $4.val, + strerror(errno)); d = data_copy_file(f, $8); @@ -257,18 +269,20 @@ propdataprefix: arrayprefix: DT_BITS DT_LITERAL '<' { - $$.data = empty_data; - $$.bits = eval_literal($2, 0, 7); + unsigned long long bits; - if (($$.bits != 8) && - ($$.bits != 16) && - ($$.bits != 32) && - ($$.bits != 64)) + bits = $2; + + if ((bits != 8) && (bits != 16) && + (bits != 32) && (bits != 64)) { print_error("Only 8, 16, 32 and 64-bit elements" " are currently supported"); - $$.bits = 32; + bits = 32; } + + $$.data = empty_data; + $$.bits = bits; } | '<' { @@ -317,13 +331,7 @@ arrayprefix: integer_prim: DT_LITERAL - { - $$ = eval_literal($1, 0, 64); - } | DT_CHAR_LITERAL - { - $$ = eval_char_literal($1); - } | '(' integer_expr ')' { $$ = $2; @@ -440,6 +448,10 @@ subnode: { $$ = name_node($2, $1); } + | DT_DEL_NODE DT_PROPNODENAME ';' + { + $$ = name_node(build_node_delete(), $2); + } | DT_LABEL subnode { add_label(&$2->labels, $1); @@ -454,58 +466,12 @@ void print_error(char const *fmt, ...) va_list va; va_start(va, fmt); - srcpos_verror(&yylloc, fmt, va); + srcpos_verror(&yylloc, "Error", fmt, va); va_end(va); - treesource_error = 1; + treesource_error = true; } void yyerror(char const *s) { print_error("%s", s); } - -static unsigned long long eval_literal(const char *s, int base, int bits) -{ - unsigned long long val; - char *e; - - errno = 0; - val = strtoull(s, &e, base); - if (*e) { - size_t uls = strspn(e, "UL"); - if (e[uls]) - print_error("bad characters in literal"); - } - if ((errno == ERANGE) - || ((bits < 64) && (val >= (1ULL << bits)))) - print_error("literal out of range"); - else if (errno != 0) - print_error("bad literal"); - return val; -} - -static unsigned char eval_char_literal(const char *s) -{ - int i = 1; - char c = s[0]; - - if (c == '\0') - { - print_error("empty character literal"); - return 0; - } - - /* - * If the first character in the character literal is a \ then process - * the remaining characters as an escape encoding. If the first - * character is neither an escape or a terminator it should be the only - * character in the literal and will be returned. - */ - if (c == '\\') - c = get_escape_char(s, &i); - - if (s[i] != '\0') - print_error("malformed character literal"); - - return c; -} Modified: vendor/dtc/dist/dtc.c ============================================================================== --- vendor/dtc/dist/dtc.c Sun Jan 26 23:57:34 2014 (r261201) +++ vendor/dtc/dist/dtc.c Mon Jan 27 06:20:36 2014 (r261202) @@ -21,8 +21,6 @@ #include "dtc.h" #include "srcpos.h" -#include "version_gen.h" - /* * Command line options */ @@ -49,55 +47,60 @@ static void fill_fullpaths(struct node * fill_fullpaths(child, tree->fullpath); } -static void __attribute__ ((noreturn)) usage(void) -{ - fprintf(stderr, "Usage:\n"); - fprintf(stderr, "\tdtc [options] \n"); - fprintf(stderr, "\nOptions:\n"); - fprintf(stderr, "\t-h\n"); - fprintf(stderr, "\t\tThis help text\n"); - fprintf(stderr, "\t-q\n"); - fprintf(stderr, "\t\tQuiet: -q suppress warnings, -qq errors, -qqq all\n"); - fprintf(stderr, "\t-I \n"); - fprintf(stderr, "\t\tInput formats are:\n"); - fprintf(stderr, "\t\t\tdts - device tree source text\n"); - fprintf(stderr, "\t\t\tdtb - device tree blob\n"); - fprintf(stderr, "\t\t\tfs - /proc/device-tree style directory\n"); - fprintf(stderr, "\t-o \n"); - fprintf(stderr, "\t-O \n"); - fprintf(stderr, "\t\tOutput formats are:\n"); - fprintf(stderr, "\t\t\tdts - device tree source text\n"); - fprintf(stderr, "\t\t\tdtb - device tree blob\n"); - fprintf(stderr, "\t\t\tasm - assembler source\n"); - fprintf(stderr, "\t-V \n"); - fprintf(stderr, "\t\tBlob version to produce, defaults to %d (relevant for dtb\n\t\tand asm output only)\n", DEFAULT_FDT_VERSION); - fprintf(stderr, "\t-d \n"); - fprintf(stderr, "\t-R \n"); - fprintf(stderr, "\t\tMake space for reserve map entries (relevant for \n\t\tdtb and asm output only)\n"); - fprintf(stderr, "\t-S \n"); - fprintf(stderr, "\t\tMake the blob at least long (extra space)\n"); - fprintf(stderr, "\t-p \n"); - fprintf(stderr, "\t\tAdd padding to the blob of long (extra space)\n"); - fprintf(stderr, "\t-b \n"); - fprintf(stderr, "\t\tSet the physical boot cpu\n"); - fprintf(stderr, "\t-f\n"); - fprintf(stderr, "\t\tForce - try to produce output even if the input tree has errors\n"); - fprintf(stderr, "\t-i\n"); - fprintf(stderr, "\t\tAdd a path to search for include files\n"); - fprintf(stderr, "\t-s\n"); - fprintf(stderr, "\t\tSort nodes and properties before outputting (only useful for\n\t\tcomparing trees)\n"); - fprintf(stderr, "\t-v\n"); - fprintf(stderr, "\t\tPrint DTC version and exit\n"); - fprintf(stderr, "\t-H \n"); - fprintf(stderr, "\t\tphandle formats are:\n"); - fprintf(stderr, "\t\t\tlegacy - \"linux,phandle\" properties only\n"); - fprintf(stderr, "\t\t\tepapr - \"phandle\" properties only\n"); - fprintf(stderr, "\t\t\tboth - Both \"linux,phandle\" and \"phandle\" properties\n"); - fprintf(stderr, "\t-W [no-]\n"); - fprintf(stderr, "\t-E [no-]\n"); - fprintf(stderr, "\t\t\tenable or disable warnings and errors\n"); - exit(3); -} +/* Usage related data. */ +static const char usage_synopsis[] = "dtc [options] "; +static const char usage_short_opts[] = "qI:O:o:V:d:R:S:p:fb:i:H:sW:E:hv"; +static struct option const usage_long_opts[] = { + {"quiet", no_argument, NULL, 'q'}, + {"in-format", a_argument, NULL, 'I'}, + {"out", a_argument, NULL, 'o'}, + {"out-format", a_argument, NULL, 'O'}, + {"out-version", a_argument, NULL, 'V'}, + {"out-dependency", a_argument, NULL, 'd'}, + {"reserve", a_argument, NULL, 'R'}, + {"space", a_argument, NULL, 'S'}, + {"pad", a_argument, NULL, 'p'}, + {"boot-cpu", a_argument, NULL, 'b'}, + {"force", no_argument, NULL, 'f'}, + {"include", a_argument, NULL, 'i'}, + {"sort", no_argument, NULL, 's'}, + {"phandle", a_argument, NULL, 'H'}, + {"warning", a_argument, NULL, 'W'}, + {"error", a_argument, NULL, 'E'}, + {"help", no_argument, NULL, 'h'}, + {"version", no_argument, NULL, 'v'}, + {NULL, no_argument, NULL, 0x0}, +}; +static const char * const usage_opts_help[] = { + "\n\tQuiet: -q suppress warnings, -qq errors, -qqq all", + "\n\tInput formats are:\n" + "\t\tdts - device tree source text\n" + "\t\tdtb - device tree blob\n" + "\t\tfs - /proc/device-tree style directory", + "\n\tOutput file", + "\n\tOutput formats are:\n" + "\t\tdts - device tree source text\n" + "\t\tdtb - device tree blob\n" + "\t\tasm - assembler source", + "\n\tBlob version to produce, defaults to %d (for dtb and asm output)", //, DEFAULT_FDT_VERSION); + "\n\tOutput dependency file", + "\n\ttMake space for reserve map entries (for dtb and asm output)", + "\n\tMake the blob at least long (extra space)", + "\n\tAdd padding to the blob of long (extra space)", + "\n\tSet the physical boot cpu", + "\n\tTry to produce output even if the input tree has errors", + "\n\tAdd a path to search for include files", + "\n\tSort nodes and properties before outputting (useful for comparing trees)", + "\n\tValid phandle formats are:\n" + "\t\tlegacy - \"linux,phandle\" properties only\n" + "\t\tepapr - \"phandle\" properties only\n" + "\t\tboth - Both \"linux,phandle\" and \"phandle\" properties", + "\n\tEnable/disable warnings (prefix with \"no-\")", + "\n\tEnable/disable errors (prefix with \"no-\")", + "\n\tPrint this help and exit", + "\n\tPrint version and exit", + NULL, +}; int main(int argc, char *argv[]) { @@ -106,7 +109,7 @@ int main(int argc, char *argv[]) const char *outform = "dts"; const char *outname = "-"; const char *depname = NULL; - int force = 0, sort = 0; + bool force = false, sort = false; const char *arg; int opt; FILE *outf = NULL; @@ -118,8 +121,7 @@ int main(int argc, char *argv[]) minsize = 0; padsize = 0; - while ((opt = getopt(argc, argv, "hI:O:o:V:d:R:S:p:fqb:i:vH:sW:E:")) - != EOF) { + while ((opt = util_getopt_long()) != EOF) { switch (opt) { case 'I': inform = optarg; @@ -146,7 +148,7 @@ int main(int argc, char *argv[]) padsize = strtol(optarg, NULL, 0); break; case 'f': - force = 1; + force = true; break; case 'q': quiet++; @@ -158,8 +160,7 @@ int main(int argc, char *argv[]) srcfile_add_search_path(optarg); break; case 'v': - printf("Version: %s\n", DTC_VERSION); - exit(0); + util_version(); case 'H': if (streq(optarg, "legacy")) phandle_format = PHANDLE_LEGACY; @@ -173,7 +174,7 @@ int main(int argc, char *argv[]) break; case 's': - sort = 1; + sort = true; break; case 'W': @@ -185,13 +186,14 @@ int main(int argc, char *argv[]) break; case 'h': + usage(NULL); default: - usage(); + usage("unknown option"); } } if (argc > (optind+1)) - usage(); + usage("missing files"); else if (argc < (optind+1)) arg = "-"; else @@ -201,9 +203,6 @@ int main(int argc, char *argv[]) if (minsize && padsize) die("Can't set both -p and -S\n"); - if (minsize) - fprintf(stderr, "DTC: Use of \"-S\" is deprecated; it will be removed soon, use \"-p\" instead\n"); - if (depname) { depfile = fopen(depname, "w"); if (!depfile) Modified: vendor/dtc/dist/dtc.h ============================================================================== --- vendor/dtc/dist/dtc.h Sun Jan 26 23:57:34 2014 (r261201) +++ vendor/dtc/dist/dtc.h Mon Jan 27 06:20:36 2014 (r261202) @@ -66,7 +66,6 @@ typedef uint32_t cell_t; #define strneq(a, b, n) (strncmp((a), (b), (n)) == 0) #define ALIGN(x, a) (((x) + (a) - 1) & ~((a) - 1)) -#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) /* Data blobs */ enum markertype { @@ -119,7 +118,7 @@ struct data data_append_align(struct dat struct data data_add_marker(struct data d, enum markertype type, char *ref); -int data_is_one_string(struct data d); +bool data_is_one_string(struct data d); /* DT constraints */ @@ -128,11 +127,13 @@ int data_is_one_string(struct data d); /* Live trees */ struct label { + bool deleted; char *label; struct label *next; }; struct property { + bool deleted; char *name; struct data val; @@ -142,6 +143,7 @@ struct property { }; struct node { + bool deleted; char *name; struct property *proplist; struct node *children; @@ -158,28 +160,47 @@ struct node { struct label *labels; }; -#define for_each_label(l0, l) \ +#define for_each_label_withdel(l0, l) \ for ((l) = (l0); (l); (l) = (l)->next) -#define for_each_property(n, p) \ +#define for_each_label(l0, l) \ + for_each_label_withdel(l0, l) \ + if (!(l)->deleted) + +#define for_each_property_withdel(n, p) \ for ((p) = (n)->proplist; (p); (p) = (p)->next) -#define for_each_child(n, c) \ +#define for_each_property(n, p) \ + for_each_property_withdel(n, p) \ + if (!(p)->deleted) + +#define for_each_child_withdel(n, c) \ for ((c) = (n)->children; (c); (c) = (c)->next_sibling) +#define for_each_child(n, c) \ + for_each_child_withdel(n, c) \ + if (!(c)->deleted) + void add_label(struct label **labels, char *label); +void delete_labels(struct label **labels); struct property *build_property(char *name, struct data val); +struct property *build_property_delete(char *name); struct property *chain_property(struct property *first, struct property *list); struct property *reverse_properties(struct property *first); struct node *build_node(struct property *proplist, struct node *children); +struct node *build_node_delete(void); struct node *name_node(struct node *node, char *name); struct node *chain_node(struct node *first, struct node *list); struct node *merge_nodes(struct node *old_node, struct node *new_node); void add_property(struct node *node, struct property *prop); +void delete_property_by_name(struct node *node, char *name); +void delete_property(struct property *prop); void add_child(struct node *parent, struct node *child); +void delete_node_by_name(struct node *parent, char *name); +void delete_node(struct node *node); const char *get_unitname(struct node *node); struct property *get_property(struct node *node, const char *propname); @@ -227,7 +248,7 @@ void sort_tree(struct boot_info *bi); /* Checks */ void parse_checks_option(bool warn, bool error, const char *optarg); -void process_checks(int force, struct boot_info *bi); +void process_checks(bool force, struct boot_info *bi); /* Flattened trees */ Modified: vendor/dtc/dist/fdtdump.c ============================================================================== --- vendor/dtc/dist/fdtdump.c Sun Jan 26 23:57:34 2014 (r261201) +++ vendor/dtc/dist/fdtdump.c Mon Jan 27 06:20:36 2014 (r261202) @@ -2,14 +2,16 @@ * fdtdump.c - Contributed by Pantelis Antoniou */ +#include #include #include #include #include #include -#include +#include #include +#include #include "util.h" @@ -17,33 +19,29 @@ #define PALIGN(p, a) ((void *)(ALIGN((unsigned long)(p), (a)))) #define GET_CELL(p) (p += 4, *((const uint32_t *)(p-4))) -static void print_data(const char *data, int len) +static const char *tagname(uint32_t tag) { - int i; - const char *p = data; - - /* no data, don't print */ - if (len == 0) - return; - - if (util_is_printable_string(data, len)) { - printf(" = \"%s\"", (const char *)data); - } else if ((len % 4) == 0) { - printf(" = <"); - for (i = 0; i < len; i += 4) - printf("0x%08x%s", fdt32_to_cpu(GET_CELL(p)), - i < (len - 4) ? " " : ""); - printf(">"); - } else { - printf(" = ["); - for (i = 0; i < len; i++) - printf("%02x%s", *p++, i < len - 1 ? " " : ""); - printf("]"); - } + static const char * const names[] = { +#define TN(t) [t] #t + TN(FDT_BEGIN_NODE), + TN(FDT_END_NODE), + TN(FDT_PROP), + TN(FDT_NOP), + TN(FDT_END), +#undef TN + }; + if (tag < ARRAY_SIZE(names)) + if (names[tag]) + return names[tag]; + return "FDT_???"; } -static void dump_blob(void *blob) +#define dumpf(fmt, args...) \ + do { if (debug) printf("// " fmt, ## args); } while (0) + +static void dump_blob(void *blob, bool debug) { + uintptr_t blob_off = (uintptr_t)blob; struct fdt_header *bph = blob; uint32_t off_mem_rsvmap = fdt32_to_cpu(bph->off_mem_rsvmap); uint32_t off_dt = fdt32_to_cpu(bph->off_dt_struct); @@ -97,7 +95,8 @@ static void dump_blob(void *blob) p = p_struct; while ((tag = fdt32_to_cpu(GET_CELL(p))) != FDT_END) { - /* printf("tag: 0x%08x (%d)\n", tag, p - p_struct); */ + dumpf("%04zx: tag: 0x%08x (%s)\n", + (uintptr_t)p - blob_off - 4, tag, tagname(tag)); if (tag == FDT_BEGIN_NODE) { s = p; @@ -136,27 +135,93 @@ static void dump_blob(void *blob) p = PALIGN(p + sz, 4); + dumpf("%04zx: string: %s\n", (uintptr_t)s - blob_off, s); + dumpf("%04zx: value\n", (uintptr_t)t - blob_off); printf("%*s%s", depth * shift, "", s); - print_data(t, sz); + utilfdt_print_data(t, sz); printf(";\n"); } } +/* Usage related data. */ +static const char usage_synopsis[] = "fdtdump [options] "; +static const char usage_short_opts[] = "ds" USAGE_COMMON_SHORT_OPTS; +static struct option const usage_long_opts[] = { + {"debug", no_argument, NULL, 'd'}, + {"scan", no_argument, NULL, 's'}, + USAGE_COMMON_LONG_OPTS +}; +static const char * const usage_opts_help[] = { + "Dump debug information while decoding the file", + "Scan for an embedded fdt in file", + USAGE_COMMON_OPTS_HELP +}; int main(int argc, char *argv[]) { + int opt; + const char *file; char *buf; + bool debug = false; + bool scan = false; + off_t len; + + while ((opt = util_getopt_long()) != EOF) { + switch (opt) { + case_USAGE_COMMON_FLAGS - if (argc < 2) { - fprintf(stderr, "supply input filename\n"); - return 5; + case 'd': + debug = true; + break; + case 's': + scan = true; + break; + } + } + if (optind != argc - 1) + usage("missing input filename"); + file = argv[optind]; + + buf = utilfdt_read_len(file, &len); + if (!buf) + die("could not read: %s\n", file); *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 06:22:57 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6BF2A33C; Mon, 27 Jan 2014 06:22:57 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 573951503; Mon, 27 Jan 2014 06:22:57 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0R6MvEu053134; Mon, 27 Jan 2014 06:22:57 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0R6Mt2p053121; Mon, 27 Jan 2014 06:22:55 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401270622.s0R6Mt2p053121@svn.freebsd.org> From: Warner Losh Date: Mon, 27 Jan 2014 06:22:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261203 - vendor/dtc/dist/tests X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 06:22:57 -0000 Author: imp Date: Mon Jan 27 06:22:54 2014 New Revision: 261203 URL: http://svnweb.freebsd.org/changeset/base/261203 Log: Add files for 6a15eb2350426d285130e4c9d84c0bdb6575547a import Added: vendor/dtc/dist/tests/delete_reinstate_multilabel.dts (contents, props changed) vendor/dtc/dist/tests/delete_reinstate_multilabel_ref.dts (contents, props changed) vendor/dtc/dist/tests/line_directives.dts (contents, props changed) vendor/dtc/dist/tests/propname_escapes.c (contents, props changed) vendor/dtc/dist/tests/propname_escapes.dts (contents, props changed) vendor/dtc/dist/tests/subnode_iterate.c (contents, props changed) vendor/dtc/dist/tests/subnode_iterate.dts (contents, props changed) vendor/dtc/dist/tests/sw_tree1.supp vendor/dtc/dist/tests/test_tree1_body.dtsi (contents, props changed) vendor/dtc/dist/tests/test_tree1_delete.dts (contents, props changed) Added: vendor/dtc/dist/tests/delete_reinstate_multilabel.dts ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dist/tests/delete_reinstate_multilabel.dts Mon Jan 27 06:22:54 2014 (r261203) @@ -0,0 +1,37 @@ +/dts-v1/; + +/* Create some nodes and properties with multiple labels */ + +/ { + label1: label2: prop = "value"; + + label3: label4: node { + label5: label6: prop = "value"; + }; +}; + +/* Delete them, and everything that's part of them, i.e. the labels */ + +/ { + /delete-property/ prop; + /delete-node/ node; +}; + +/* + * Re-instate them. None of the old labels should come back + * + * Note: Do not add any new/extra labels here. As of the time of writing, + * when dtc adds labels to an object, they are added to the head of the list + * of labels, and this test is specifically about ensuring the correct + * handling of lists of labels where the first label in the list is marked as + * deleted. Failure to observe this note may result in the test passing when + * it should not. + */ + +/ { + prop = "value"; + + node { + prop = "value"; + }; +}; Added: vendor/dtc/dist/tests/delete_reinstate_multilabel_ref.dts ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dist/tests/delete_reinstate_multilabel_ref.dts Mon Jan 27 06:22:54 2014 (r261203) @@ -0,0 +1,9 @@ +/dts-v1/; + +/ { + prop = "value"; + + node { + prop = "value"; + }; +}; Added: vendor/dtc/dist/tests/line_directives.dts ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dist/tests/line_directives.dts Mon Jan 27 06:22:54 2014 (r261203) @@ -0,0 +1,21 @@ +/dts-v1/; + +/* common format */ +#line 3 "foo.dts" +/* newer gcc format */ +# 9 "baz.dts" 1 +/* flags are optional */ +# 6 "bar.dts" + +/ { +/* + * Make sure optional flags don't consume integer data on next line. The issue + * was that the {WS} in the trailing ({WS}+[0-9]+)? could cross the * line- + * break, and consume the leading "0" of the hex constant, leaving "x12345678" + * to be parsed as a number, which is invalid syntax. + */ + prop1 = < +# 10 "qux.dts" + 0x12345678 + >; +}; Added: vendor/dtc/dist/tests/propname_escapes.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dist/tests/propname_escapes.c Mon Jan 27 06:22:54 2014 (r261203) @@ -0,0 +1,42 @@ +/* + * libfdt - Flat Device Tree manipulation + * Testcase for fdt_getprop() + * Copyright (C) 2006 David Gibson, IBM Corporation. + * Copyright (C) 2012 NVIDIA CORPORATION. All rights reserved. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public License + * as published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include +#include +#include +#include + +#include + +#include "tests.h" + +int main(int argc, char *argv[]) +{ + void *fdt; + + test_init(argc, argv); + fdt = load_blob_arg(argc, argv); + + check_getprop_cell(fdt, 0, "#address-cells", 1); + check_getprop_cell(fdt, 0, "#gpio-cells", 2); + + PASS(); +} Added: vendor/dtc/dist/tests/propname_escapes.dts ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dist/tests/propname_escapes.dts Mon Jan 27 06:22:54 2014 (r261203) @@ -0,0 +1,6 @@ +/dts-v1/; + +/ { + #address-cells = <1>; + \#gpio-cells = <2>; +}; Added: vendor/dtc/dist/tests/subnode_iterate.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dist/tests/subnode_iterate.c Mon Jan 27 06:22:54 2014 (r261203) @@ -0,0 +1,94 @@ +/* + * libfdt - Flat Device Tree manipulation + * Tests that fdt_next_subnode() works as expected + * + * Copyright (C) 2013 Google, Inc + * + * Copyright (C) 2007 David Gibson, IBM Corporation. + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public License + * as published by the Free Software Foundation; either version 2.1 of + * the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + */ + +#include +#include +#include +#include + +#include + +#include "tests.h" +#include "testdata.h" + +static void test_node(void *fdt, int parent_offset) +{ + fdt32_t subnodes; + const fdt32_t *prop; + int offset; + int count; + int len; + + /* This property indicates the number of subnodes to expect */ + prop = fdt_getprop(fdt, parent_offset, "subnodes", &len); + if (!prop || len != sizeof(fdt32_t)) { + FAIL("Missing/invalid subnodes property at '%s'", + fdt_get_name(fdt, parent_offset, NULL)); + } + subnodes = cpu_to_fdt32(*prop); + + count = 0; + for (offset = fdt_first_subnode(fdt, parent_offset); + offset >= 0; + offset = fdt_next_subnode(fdt, offset)) + count++; + + if (count != subnodes) { + FAIL("Node '%s': Expected %d subnodes, got %d\n", + fdt_get_name(fdt, parent_offset, NULL), subnodes, + count); + } +} + +static void check_fdt_next_subnode(void *fdt) +{ + int offset; + int count = 0; + + for (offset = fdt_first_subnode(fdt, 0); + offset >= 0; + offset = fdt_next_subnode(fdt, offset)) { + test_node(fdt, offset); + count++; + } + + if (count != 2) + FAIL("Expected %d tests, got %d\n", 2, count); +} + +int main(int argc, char *argv[]) +{ + void *fdt; + + test_init(argc, argv); + if (argc != 2) + CONFIG("Usage: %s ", argv[0]); + + fdt = load_blob(argv[1]); + if (!fdt) + FAIL("No device tree available"); + + check_fdt_next_subnode(fdt); + + PASS(); +} Added: vendor/dtc/dist/tests/subnode_iterate.dts ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dist/tests/subnode_iterate.dts Mon Jan 27 06:22:54 2014 (r261203) @@ -0,0 +1,44 @@ +/dts-v1/; + +/ { + #address-cells = <1>; + #size-cells = <0>; + + test1 { + subnodes = <2>; + linux,phandle = <0x1>; + #address-cells = <1>; + #size-cells = <0>; + PowerPC,970@0 { + name = "PowerPC,970"; + device_type = "cpu"; + reg = <0x00000000>; + clock-frequency = <1600000000>; + timebase-frequency = <33333333>; + linux,boot-cpu; + i-cache-size = <65536>; + d-cache-size = <32768>; + another-sub-node { + should-be-ignored; + yet-another { + should-also-be-ignored; + }; + }; + }; + + PowerPC,970@1 { + name = "PowerPC,970"; + device_type = "cpu"; + reg = <0x00000001>; + clock-frequency = <1600000000>; + timebase-frequency = <33333333>; + i-cache-size = <65536>; + d-cache-size = <32768>; + }; + }; + + test2 { + subnodes = <0>; + }; +}; + Added: vendor/dtc/dist/tests/sw_tree1.supp ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dist/tests/sw_tree1.supp Mon Jan 27 06:22:54 2014 (r261203) @@ -0,0 +1,18 @@ +{ + allocation methods causes uninitialized data in alignment gap + Memcheck:Param + write(buf) + fun:__write_nocancel + fun:utilfdt_write_err + fun:save_blob + fun:main +} +{ + allocation methods causes uninitialized data in alignment gap + Memcheck:Param + write(buf) + fun:__write_nocancel + fun:utilfdt_write_err + fun:save_blob + fun:main +} Added: vendor/dtc/dist/tests/test_tree1_body.dtsi ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dist/tests/test_tree1_body.dtsi Mon Jan 27 06:22:54 2014 (r261203) @@ -0,0 +1,43 @@ +/memreserve/ 0xdeadbeef00000000 0x100000; +/memreserve/ 123456789 010000; + +/ { + compatible = "test_tree1"; + prop-int = <0xdeadbeef>; + prop-int64 = /bits/ 64 <0xdeadbeef01abcdef>; + prop-str = "hello world"; + #address-cells = <1>; + #size-cells = <0>; + + subnode@1 { + compatible = "subnode1"; + reg = <1>; + prop-int = [deadbeef]; + + subsubnode { + compatible = "subsubnode1", "subsubnode"; + prop-int = <0xdeadbeef>; + }; + + ss1 { + }; + }; + + subnode@2 { + reg = <2>; + linux,phandle = <0x2000>; + prop-int = <123456789>; + #address-cells = <1>; + #size-cells = <0>; + + ssn0: subsubnode@0 { + reg = <0>; + phandle = <0x2001>; + compatible = "subsubnode2", "subsubnode"; + prop-int = <0726746425>; + }; + + ss2 { + }; + }; +}; Added: vendor/dtc/dist/tests/test_tree1_delete.dts ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dist/tests/test_tree1_delete.dts Mon Jan 27 06:22:54 2014 (r261203) @@ -0,0 +1,68 @@ +/dts-v1/; + +/include/ "test_tree1_body.dtsi" + +/ { + nonexistant-property = <0xdeadbeef>; + + nonexistant-subnode { + prop-int = <1>; + }; + + dellabel: deleted-by-label { + prop-int = <1>; + }; + + subnode@1 { + delete-this-str = "deadbeef"; + }; + +}; + +/ { + /delete-property/ nonexistant-property; + + /delete-node/ nonexistant-subnode; + + subnode@1 { + /delete-property/ delete-this-str; + }; +}; + +/delete-node/ &dellabel; + +/ { + /delete-property/ prop-str; +}; + +/ { + prop-str = "hello world"; +}; + +/ { + subnode@1 { + /delete-node/ ss1; + }; +}; + +/ { + subnode@1 { + ss1 { + }; + }; +}; + +/{ + duplabel1: foo1 = "bar"; + duplabel2: foo2 = "bar"; +}; + +/{ + duplabel1: baz1 = "qux"; + duplabel2: baz2 = "qux"; +}; + +/{ + /delete-property/ foo1; + /delete-property/ baz2; +}; From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 06:31:38 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5D1FC6C5; Mon, 27 Jan 2014 06:31:38 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4600E15C3; Mon, 27 Jan 2014 06:31:38 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0R6VcBu056717; Mon, 27 Jan 2014 06:31:38 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0R6Vb6s056713; Mon, 27 Jan 2014 06:31:37 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401270631.s0R6Vb6s056713@svn.freebsd.org> From: Warner Losh Date: Mon, 27 Jan 2014 06:31:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261204 - in vendor/dtc/dtc-6a15eb23: . Documentation libfdt tests X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 06:31:38 -0000 Author: imp Date: Mon Jan 27 06:31:37 2014 New Revision: 261204 URL: http://svnweb.freebsd.org/changeset/base/261204 Log: Copy dtc post 6a15eb2350426d285130e4c9d84c0bdb6575547a import Added: vendor/dtc/dtc-6a15eb23/ - copied from r261201, vendor/dtc/dist/ vendor/dtc/dtc-6a15eb23/tests/delete_reinstate_multilabel.dts - copied unchanged from r261203, vendor/dtc/dist/tests/delete_reinstate_multilabel.dts vendor/dtc/dtc-6a15eb23/tests/delete_reinstate_multilabel_ref.dts - copied unchanged from r261203, vendor/dtc/dist/tests/delete_reinstate_multilabel_ref.dts vendor/dtc/dtc-6a15eb23/tests/line_directives.dts - copied unchanged from r261203, vendor/dtc/dist/tests/line_directives.dts vendor/dtc/dtc-6a15eb23/tests/propname_escapes.c - copied unchanged from r261203, vendor/dtc/dist/tests/propname_escapes.c vendor/dtc/dtc-6a15eb23/tests/propname_escapes.dts - copied unchanged from r261203, vendor/dtc/dist/tests/propname_escapes.dts vendor/dtc/dtc-6a15eb23/tests/subnode_iterate.c - copied unchanged from r261203, vendor/dtc/dist/tests/subnode_iterate.c vendor/dtc/dtc-6a15eb23/tests/subnode_iterate.dts - copied unchanged from r261203, vendor/dtc/dist/tests/subnode_iterate.dts vendor/dtc/dtc-6a15eb23/tests/sw_tree1.supp - copied unchanged from r261203, vendor/dtc/dist/tests/sw_tree1.supp vendor/dtc/dtc-6a15eb23/tests/test_tree1_body.dtsi - copied unchanged from r261203, vendor/dtc/dist/tests/test_tree1_body.dtsi vendor/dtc/dtc-6a15eb23/tests/test_tree1_delete.dts - copied unchanged from r261203, vendor/dtc/dist/tests/test_tree1_delete.dts Replaced: vendor/dtc/dtc-6a15eb23/Documentation/manual.txt - copied unchanged from r261202, vendor/dtc/dist/Documentation/manual.txt vendor/dtc/dtc-6a15eb23/Makefile - copied unchanged from r261202, vendor/dtc/dist/Makefile vendor/dtc/dtc-6a15eb23/checks.c - copied unchanged from r261202, vendor/dtc/dist/checks.c vendor/dtc/dtc-6a15eb23/convert-dtsv0-lexer.l - copied unchanged from r261202, vendor/dtc/dist/convert-dtsv0-lexer.l vendor/dtc/dtc-6a15eb23/data.c - copied unchanged from r261202, vendor/dtc/dist/data.c vendor/dtc/dtc-6a15eb23/dtc-lexer.l - copied unchanged from r261202, vendor/dtc/dist/dtc-lexer.l vendor/dtc/dtc-6a15eb23/dtc-parser.y - copied unchanged from r261202, vendor/dtc/dist/dtc-parser.y vendor/dtc/dtc-6a15eb23/dtc.c - copied unchanged from r261202, vendor/dtc/dist/dtc.c vendor/dtc/dtc-6a15eb23/dtc.h - copied unchanged from r261202, vendor/dtc/dist/dtc.h vendor/dtc/dtc-6a15eb23/fdtdump.c - copied unchanged from r261202, vendor/dtc/dist/fdtdump.c vendor/dtc/dtc-6a15eb23/fdtget.c - copied unchanged from r261202, vendor/dtc/dist/fdtget.c vendor/dtc/dtc-6a15eb23/fdtput.c - copied unchanged from r261202, vendor/dtc/dist/fdtput.c vendor/dtc/dtc-6a15eb23/flattree.c - copied unchanged from r261202, vendor/dtc/dist/flattree.c vendor/dtc/dtc-6a15eb23/libfdt/Makefile.libfdt - copied unchanged from r261202, vendor/dtc/dist/libfdt/Makefile.libfdt vendor/dtc/dtc-6a15eb23/libfdt/fdt.c - copied unchanged from r261202, vendor/dtc/dist/libfdt/fdt.c vendor/dtc/dtc-6a15eb23/libfdt/fdt.h - copied unchanged from r261202, vendor/dtc/dist/libfdt/fdt.h vendor/dtc/dtc-6a15eb23/libfdt/fdt_ro.c - copied unchanged from r261202, vendor/dtc/dist/libfdt/fdt_ro.c vendor/dtc/dtc-6a15eb23/libfdt/fdt_rw.c - copied unchanged from r261202, vendor/dtc/dist/libfdt/fdt_rw.c vendor/dtc/dtc-6a15eb23/libfdt/fdt_sw.c - copied unchanged from r261202, vendor/dtc/dist/libfdt/fdt_sw.c vendor/dtc/dtc-6a15eb23/libfdt/fdt_wip.c - copied unchanged from r261202, vendor/dtc/dist/libfdt/fdt_wip.c vendor/dtc/dtc-6a15eb23/libfdt/libfdt.h - copied unchanged from r261202, vendor/dtc/dist/libfdt/libfdt.h vendor/dtc/dtc-6a15eb23/libfdt/libfdt_env.h - copied unchanged from r261202, vendor/dtc/dist/libfdt/libfdt_env.h vendor/dtc/dtc-6a15eb23/libfdt/version.lds - copied unchanged from r261202, vendor/dtc/dist/libfdt/version.lds vendor/dtc/dtc-6a15eb23/livetree.c - copied unchanged from r261202, vendor/dtc/dist/livetree.c vendor/dtc/dtc-6a15eb23/srcpos.c - copied unchanged from r261202, vendor/dtc/dist/srcpos.c vendor/dtc/dtc-6a15eb23/srcpos.h - copied unchanged from r261202, vendor/dtc/dist/srcpos.h vendor/dtc/dtc-6a15eb23/tests/Makefile.tests - copied unchanged from r261202, vendor/dtc/dist/tests/Makefile.tests vendor/dtc/dtc-6a15eb23/tests/add_subnode_with_nops.c - copied unchanged from r261202, vendor/dtc/dist/tests/add_subnode_with_nops.c vendor/dtc/dtc-6a15eb23/tests/aliases.dts - copied unchanged from r261202, vendor/dtc/dist/tests/aliases.dts vendor/dtc/dtc-6a15eb23/tests/appendprop1.c - copied unchanged from r261202, vendor/dtc/dist/tests/appendprop1.c vendor/dtc/dtc-6a15eb23/tests/appendprop2.c - copied unchanged from r261202, vendor/dtc/dist/tests/appendprop2.c vendor/dtc/dtc-6a15eb23/tests/asm_tree_dump.c - copied unchanged from r261202, vendor/dtc/dist/tests/asm_tree_dump.c vendor/dtc/dtc-6a15eb23/tests/boot-cpuid.c - copied unchanged from r261202, vendor/dtc/dist/tests/boot-cpuid.c vendor/dtc/dtc-6a15eb23/tests/char_literal.c - copied unchanged from r261202, vendor/dtc/dist/tests/char_literal.c vendor/dtc/dtc-6a15eb23/tests/del_node.c - copied unchanged from r261202, vendor/dtc/dist/tests/del_node.c vendor/dtc/dtc-6a15eb23/tests/del_property.c - copied unchanged from r261202, vendor/dtc/dist/tests/del_property.c vendor/dtc/dtc-6a15eb23/tests/dtb_reverse.c - copied unchanged from r261202, vendor/dtc/dist/tests/dtb_reverse.c vendor/dtc/dtc-6a15eb23/tests/dtbs_equal_ordered.c - copied unchanged from r261202, vendor/dtc/dist/tests/dtbs_equal_ordered.c vendor/dtc/dtc-6a15eb23/tests/dtbs_equal_unordered.c - copied unchanged from r261202, vendor/dtc/dist/tests/dtbs_equal_unordered.c vendor/dtc/dtc-6a15eb23/tests/dumptrees.c - copied unchanged from r261202, vendor/dtc/dist/tests/dumptrees.c vendor/dtc/dtc-6a15eb23/tests/extra-terminating-null.c - copied unchanged from r261202, vendor/dtc/dist/tests/extra-terminating-null.c vendor/dtc/dtc-6a15eb23/tests/fdtget-runtest.sh - copied unchanged from r261202, vendor/dtc/dist/tests/fdtget-runtest.sh vendor/dtc/dtc-6a15eb23/tests/find_property.c - copied unchanged from r261202, vendor/dtc/dist/tests/find_property.c vendor/dtc/dtc-6a15eb23/tests/get_alias.c - copied unchanged from r261202, vendor/dtc/dist/tests/get_alias.c vendor/dtc/dtc-6a15eb23/tests/get_mem_rsv.c - copied unchanged from r261202, vendor/dtc/dist/tests/get_mem_rsv.c vendor/dtc/dtc-6a15eb23/tests/get_name.c - copied unchanged from r261202, vendor/dtc/dist/tests/get_name.c vendor/dtc/dtc-6a15eb23/tests/get_path.c - copied unchanged from r261202, vendor/dtc/dist/tests/get_path.c vendor/dtc/dtc-6a15eb23/tests/get_phandle.c - copied unchanged from r261202, vendor/dtc/dist/tests/get_phandle.c vendor/dtc/dtc-6a15eb23/tests/getprop.c - copied unchanged from r261202, vendor/dtc/dist/tests/getprop.c vendor/dtc/dtc-6a15eb23/tests/incbin.c - copied unchanged from r261202, vendor/dtc/dist/tests/incbin.c vendor/dtc/dtc-6a15eb23/tests/include1.dts - copied unchanged from r261202, vendor/dtc/dist/tests/include1.dts vendor/dtc/dtc-6a15eb23/tests/include7.dts - copied unchanged from r261202, vendor/dtc/dist/tests/include7.dts vendor/dtc/dtc-6a15eb23/tests/include8.dts - copied unchanged from r261202, vendor/dtc/dist/tests/include8.dts vendor/dtc/dtc-6a15eb23/tests/integer-expressions.c - copied unchanged from r261202, vendor/dtc/dist/tests/integer-expressions.c vendor/dtc/dtc-6a15eb23/tests/mangle-layout.c - copied unchanged from r261202, vendor/dtc/dist/tests/mangle-layout.c vendor/dtc/dtc-6a15eb23/tests/move_and_save.c - copied unchanged from r261202, vendor/dtc/dist/tests/move_and_save.c vendor/dtc/dtc-6a15eb23/tests/node_check_compatible.c - copied unchanged from r261202, vendor/dtc/dist/tests/node_check_compatible.c vendor/dtc/dtc-6a15eb23/tests/node_offset_by_compatible.c - copied unchanged from r261202, vendor/dtc/dist/tests/node_offset_by_compatible.c vendor/dtc/dtc-6a15eb23/tests/node_offset_by_phandle.c - copied unchanged from r261202, vendor/dtc/dist/tests/node_offset_by_phandle.c vendor/dtc/dtc-6a15eb23/tests/node_offset_by_prop_value.c - copied unchanged from r261202, vendor/dtc/dist/tests/node_offset_by_prop_value.c vendor/dtc/dtc-6a15eb23/tests/nop_node.c - copied unchanged from r261202, vendor/dtc/dist/tests/nop_node.c vendor/dtc/dtc-6a15eb23/tests/nop_property.c - copied unchanged from r261202, vendor/dtc/dist/tests/nop_property.c vendor/dtc/dtc-6a15eb23/tests/nopulate.c - copied unchanged from r261202, vendor/dtc/dist/tests/nopulate.c vendor/dtc/dtc-6a15eb23/tests/notfound.c - copied unchanged from r261202, vendor/dtc/dist/tests/notfound.c vendor/dtc/dtc-6a15eb23/tests/open_pack.c - copied unchanged from r261202, vendor/dtc/dist/tests/open_pack.c vendor/dtc/dtc-6a15eb23/tests/parent_offset.c - copied unchanged from r261202, vendor/dtc/dist/tests/parent_offset.c vendor/dtc/dtc-6a15eb23/tests/path-references.c - copied unchanged from r261202, vendor/dtc/dist/tests/path-references.c vendor/dtc/dtc-6a15eb23/tests/path_offset.c - copied unchanged from r261202, vendor/dtc/dist/tests/path_offset.c vendor/dtc/dtc-6a15eb23/tests/path_offset_aliases.c - copied unchanged from r261202, vendor/dtc/dist/tests/path_offset_aliases.c vendor/dtc/dtc-6a15eb23/tests/phandle_format.c - copied unchanged from r261202, vendor/dtc/dist/tests/phandle_format.c vendor/dtc/dtc-6a15eb23/tests/references.c - copied unchanged from r261202, vendor/dtc/dist/tests/references.c vendor/dtc/dtc-6a15eb23/tests/root_node.c - copied unchanged from r261202, vendor/dtc/dist/tests/root_node.c vendor/dtc/dtc-6a15eb23/tests/run_tests.sh - copied unchanged from r261202, vendor/dtc/dist/tests/run_tests.sh vendor/dtc/dtc-6a15eb23/tests/rw_tree1.c - copied unchanged from r261202, vendor/dtc/dist/tests/rw_tree1.c vendor/dtc/dtc-6a15eb23/tests/set_name.c - copied unchanged from r261202, vendor/dtc/dist/tests/set_name.c vendor/dtc/dtc-6a15eb23/tests/setprop.c - copied unchanged from r261202, vendor/dtc/dist/tests/setprop.c vendor/dtc/dtc-6a15eb23/tests/setprop_inplace.c - copied unchanged from r261202, vendor/dtc/dist/tests/setprop_inplace.c vendor/dtc/dtc-6a15eb23/tests/sized_cells.c - copied unchanged from r261202, vendor/dtc/dist/tests/sized_cells.c vendor/dtc/dtc-6a15eb23/tests/string_escapes.c - copied unchanged from r261202, vendor/dtc/dist/tests/string_escapes.c vendor/dtc/dtc-6a15eb23/tests/subnode_offset.c - copied unchanged from r261202, vendor/dtc/dist/tests/subnode_offset.c vendor/dtc/dtc-6a15eb23/tests/supernode_atdepth_offset.c - copied unchanged from r261202, vendor/dtc/dist/tests/supernode_atdepth_offset.c vendor/dtc/dtc-6a15eb23/tests/sw_tree1.c - copied unchanged from r261202, vendor/dtc/dist/tests/sw_tree1.c vendor/dtc/dtc-6a15eb23/tests/test_tree1.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1.dts vendor/dtc/dtc-6a15eb23/tests/test_tree1_merge.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1_merge.dts vendor/dtc/dtc-6a15eb23/tests/test_tree1_merge_labelled.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1_merge_labelled.dts vendor/dtc/dtc-6a15eb23/tests/test_tree1_merge_path.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1_merge_path.dts vendor/dtc/dtc-6a15eb23/tests/test_tree1_wrong1.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1_wrong1.dts vendor/dtc/dtc-6a15eb23/tests/test_tree1_wrong2.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1_wrong2.dts vendor/dtc/dtc-6a15eb23/tests/test_tree1_wrong3.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1_wrong3.dts vendor/dtc/dtc-6a15eb23/tests/test_tree1_wrong4.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1_wrong4.dts vendor/dtc/dtc-6a15eb23/tests/test_tree1_wrong5.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1_wrong5.dts vendor/dtc/dtc-6a15eb23/tests/test_tree1_wrong6.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1_wrong6.dts vendor/dtc/dtc-6a15eb23/tests/test_tree1_wrong7.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1_wrong7.dts vendor/dtc/dtc-6a15eb23/tests/test_tree1_wrong8.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1_wrong8.dts vendor/dtc/dtc-6a15eb23/tests/test_tree1_wrong9.dts - copied unchanged from r261202, vendor/dtc/dist/tests/test_tree1_wrong9.dts vendor/dtc/dtc-6a15eb23/tests/trees.S - copied unchanged from r261202, vendor/dtc/dist/tests/trees.S vendor/dtc/dtc-6a15eb23/tests/truncated_property.c - copied unchanged from r261202, vendor/dtc/dist/tests/truncated_property.c vendor/dtc/dtc-6a15eb23/tests/utilfdt_test.c - copied unchanged from r261202, vendor/dtc/dist/tests/utilfdt_test.c vendor/dtc/dtc-6a15eb23/tests/value-labels.c - copied unchanged from r261202, vendor/dtc/dist/tests/value-labels.c vendor/dtc/dtc-6a15eb23/treesource.c - copied unchanged from r261202, vendor/dtc/dist/treesource.c vendor/dtc/dtc-6a15eb23/util.c - copied unchanged from r261202, vendor/dtc/dist/util.c vendor/dtc/dtc-6a15eb23/util.h - copied unchanged from r261202, vendor/dtc/dist/util.h Copied: vendor/dtc/dtc-6a15eb23/Documentation/manual.txt (from r261202, vendor/dtc/dist/Documentation/manual.txt) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dtc-6a15eb23/Documentation/manual.txt Mon Jan 27 06:31:37 2014 (r261204, copy of r261202, vendor/dtc/dist/Documentation/manual.txt) @@ -0,0 +1,660 @@ +Device Tree Compiler Manual +=========================== + +I - "dtc", the device tree compiler + 1) Obtaining Sources + 1.1) Submitting Patches + 2) Description + 3) Command Line + 4) Source File + 4.1) Overview + 4.2) Properties + 4.3) Labels and References + +II - The DT block format + 1) Header + 2) Device tree generalities + 3) Device tree "structure" block + 4) Device tree "strings" block + + +III - libfdt + +IV - Utility Tools + 1) convert-dtsv0 -- Conversion to Version 1 + 1) fdtdump + + +I - "dtc", the device tree compiler +=================================== + +1) Sources + +Source code for the Device Tree Compiler can be found at jdl.com. +The gitweb interface is: + + http://git.jdl.com/gitweb/ + +The repository is here: + + git://www.jdl.com/software/dtc.git + http://www.jdl.com/software/dtc.git + +Tarballs of the 1.0.0 and latest releases are here: + + http://www.jdl.com/software/dtc-v1.2.0.tgz + http://www.jdl.com/software/dtc-latest.tgz + +1.1) Submitting Patches + +Patches should be sent to jdl@jdl.com, and CC'ed to +devicetree-discuss@lists.ozlabs.org. + +2) Description + +The Device Tree Compiler, dtc, takes as input a device-tree in +a given format and outputs a device-tree in another format. +Typically, the input format is "dts", a human readable source +format, and creates a "dtb", or binary format as output. + +The currently supported Input Formats are: + + - "dtb": "blob" format. A flattened device-tree block with + header in one binary blob. + + - "dts": "source" format. A text file containing a "source" + for a device-tree. + + - "fs" format. A representation equivalent to the output of + /proc/device-tree where nodes are directories and + properties are files. + +The currently supported Output Formats are: + + - "dtb": "blob" format + + - "dts": "source" format + + - "asm": assembly language file. A file that can be sourced + by gas to generate a device-tree "blob". That file can + then simply be added to your Makefile. Additionally, the + assembly file exports some symbols that can be used. + + +3) Command Line + +The syntax of the dtc command line is: + + dtc [options] [] + +Options: + + + The name of the input source file. If no + or "-" is given, stdin is used. + + -b + Set the physical boot cpu. + + -f + Force. Try to produce output even if the input tree has errors. + + -h + Emit a brief usage and help message. + + -I + The source input format, as listed above. + + -o + The name of the generated output file. Use "-" for stdout. + + -O + The generated output format, as listed above. + + -d + Generate a dependency file during compilation. + + -q + Quiet: -q suppress warnings, -qq errors, -qqq all + + -R + Make space for reserve map entries + Relevant for dtb and asm output only. + + -S + Ensure the blob at least long, adding additional + space if needed. + + -v + Print DTC version and exit. + + -V + Generate output conforming to the given . + By default the most recent version is generated. + Relevant for dtb and asm output only. + + +The defines what version of the "blob" format will be +generated. Supported versions are 1, 2, 3, 16 and 17. The default is +always the most recent version and is likely the highest number. + +Additionally, dtc performs various sanity checks on the tree. + + +4) Device Tree Source file + +4.1) Overview + +Here is a very rough overview of the layout of a DTS source file: + + + sourcefile: list_of_memreserve devicetree + + memreserve: label 'memreserve' ADDR ADDR ';' + | label 'memreserve' ADDR '-' ADDR ';' + + devicetree: '/' nodedef + + nodedef: '{' list_of_property list_of_subnode '}' ';' + + property: label PROPNAME '=' propdata ';' + + propdata: STRING + | '<' list_of_cells '>' + | '[' list_of_bytes ']' + + subnode: label nodename nodedef + +That structure forms a hierarchical layout of nodes and properties +rooted at an initial node as: + + / { + } + +Both classic C style and C++ style comments are supported. + +Source files may be directly included using the syntax: + + /include/ "filename" + + +4.2) Properties + +Properties are named, possibly labeled, values. Each value +is one of: + + - A null-teminated C-like string, + - A numeric value fitting in 32 bits, + - A list of 32-bit values + - A byte sequence + +Here are some example property definitions: + + - A property containing a 0 terminated string + + property1 = "string_value"; + + - A property containing a numerical 32-bit hexadecimal value + + property2 = <1234abcd>; + + - A property containing 3 numerical 32-bit hexadecimal values + + property3 = <12345678 12345678 deadbeef>; + + - A property whose content is an arbitrary array of bytes + + property4 = [0a 0b 0c 0d de ea ad be ef]; + + +Node may contain sub-nodes to obtain a hierarchical structure. +For example: + + - A child node named "childnode" whose unit name is + "childnode at address". It it turn has a string property + called "childprop". + + childnode@addresss { + childprop = "hello\n"; + }; + + +By default, all numeric values are hexadecimal. Alternate bases +may be specified using a prefix "d#" for decimal, "b#" for binary, +and "o#" for octal. + +Strings support common escape sequences from C: "\n", "\t", "\r", +"\(octal value)", "\x(hex value)". + + +4.3) Labels and References + +Labels may be applied to nodes or properties. Labels appear +before a node name, and are referenced using an ampersand: &label. +Absolute node path names are also allowed in node references. + +In this exmaple, a node is labled "mpic" and then referenced: + + mpic: interrupt-controller@40000 { + ... + }; + + ethernet-phy@3 { + interrupt-parent = <&mpic>; + ... + }; + +And used in properties, lables may appear before or after any value: + + randomnode { + prop: string = data: "mystring\n" data_end: ; + ... + }; + + + +II - The DT block format +======================== + +This chapter defines the format of the flattened device-tree +passed to the kernel. The actual content of the device tree +are described in the kernel documentation in the file + + linux-2.6/Documentation/powerpc/booting-without-of.txt + +You can find example of code manipulating that format within +the kernel. For example, the file: + + including arch/powerpc/kernel/prom_init.c + +will generate a flattened device-tree from the Open Firmware +representation. Other utilities such as fs2dt, which is part of +the kexec tools, will generate one from a filesystem representation. +Some bootloaders such as U-Boot provide a bit more support by +using the libfdt code. + +For booting the kernel, the device tree block has to be in main memory. +It has to be accessible in both real mode and virtual mode with no +mapping other than main memory. If you are writing a simple flash +bootloader, it should copy the block to RAM before passing it to +the kernel. + + +1) Header +--------- + +The kernel is entered with r3 pointing to an area of memory that is +roughly described in include/asm-powerpc/prom.h by the structure +boot_param_header: + + struct boot_param_header { + u32 magic; /* magic word OF_DT_HEADER */ + u32 totalsize; /* total size of DT block */ + u32 off_dt_struct; /* offset to structure */ + u32 off_dt_strings; /* offset to strings */ + u32 off_mem_rsvmap; /* offset to memory reserve map */ + u32 version; /* format version */ + u32 last_comp_version; /* last compatible version */ + + /* version 2 fields below */ + u32 boot_cpuid_phys; /* Which physical CPU id we're + booting on */ + /* version 3 fields below */ + u32 size_dt_strings; /* size of the strings block */ + + /* version 17 fields below */ + u32 size_dt_struct; /* size of the DT structure block */ + }; + +Along with the constants: + + /* Definitions used by the flattened device tree */ + #define OF_DT_HEADER 0xd00dfeed /* 4: version, + 4: total size */ + #define OF_DT_BEGIN_NODE 0x1 /* Start node: full name + */ + #define OF_DT_END_NODE 0x2 /* End node */ + #define OF_DT_PROP 0x3 /* Property: name off, + size, content */ + #define OF_DT_END 0x9 + +All values in this header are in big endian format, the various +fields in this header are defined more precisely below. All "offset" +values are in bytes from the start of the header; that is from the +value of r3. + + - magic + + This is a magic value that "marks" the beginning of the + device-tree block header. It contains the value 0xd00dfeed and is + defined by the constant OF_DT_HEADER + + - totalsize + + This is the total size of the DT block including the header. The + "DT" block should enclose all data structures defined in this + chapter (who are pointed to by offsets in this header). That is, + the device-tree structure, strings, and the memory reserve map. + + - off_dt_struct + + This is an offset from the beginning of the header to the start + of the "structure" part the device tree. (see 2) device tree) + + - off_dt_strings + + This is an offset from the beginning of the header to the start + of the "strings" part of the device-tree + + - off_mem_rsvmap + + This is an offset from the beginning of the header to the start + of the reserved memory map. This map is a list of pairs of 64- + bit integers. Each pair is a physical address and a size. The + list is terminated by an entry of size 0. This map provides the + kernel with a list of physical memory areas that are "reserved" + and thus not to be used for memory allocations, especially during + early initialization. The kernel needs to allocate memory during + boot for things like un-flattening the device-tree, allocating an + MMU hash table, etc... Those allocations must be done in such a + way to avoid overriding critical things like, on Open Firmware + capable machines, the RTAS instance, or on some pSeries, the TCE + tables used for the iommu. Typically, the reserve map should + contain _at least_ this DT block itself (header,total_size). If + you are passing an initrd to the kernel, you should reserve it as + well. You do not need to reserve the kernel image itself. The map + should be 64-bit aligned. + + - version + + This is the version of this structure. Version 1 stops + here. Version 2 adds an additional field boot_cpuid_phys. + Version 3 adds the size of the strings block, allowing the kernel + to reallocate it easily at boot and free up the unused flattened + structure after expansion. Version 16 introduces a new more + "compact" format for the tree itself that is however not backward + compatible. Version 17 adds an additional field, size_dt_struct, + allowing it to be reallocated or moved more easily (this is + particularly useful for bootloaders which need to make + adjustments to a device tree based on probed information). You + should always generate a structure of the highest version defined + at the time of your implementation. Currently that is version 17, + unless you explicitly aim at being backward compatible. + + - last_comp_version + + Last compatible version. This indicates down to what version of + the DT block you are backward compatible. For example, version 2 + is backward compatible with version 1 (that is, a kernel build + for version 1 will be able to boot with a version 2 format). You + should put a 1 in this field if you generate a device tree of + version 1 to 3, or 16 if you generate a tree of version 16 or 17 + using the new unit name format. + + - boot_cpuid_phys + + This field only exist on version 2 headers. It indicate which + physical CPU ID is calling the kernel entry point. This is used, + among others, by kexec. If you are on an SMP system, this value + should match the content of the "reg" property of the CPU node in + the device-tree corresponding to the CPU calling the kernel entry + point (see further chapters for more informations on the required + device-tree contents) + + - size_dt_strings + + This field only exists on version 3 and later headers. It + gives the size of the "strings" section of the device tree (which + starts at the offset given by off_dt_strings). + + - size_dt_struct + + This field only exists on version 17 and later headers. It gives + the size of the "structure" section of the device tree (which + starts at the offset given by off_dt_struct). + +So the typical layout of a DT block (though the various parts don't +need to be in that order) looks like this (addresses go from top to +bottom): + + ------------------------------ + r3 -> | struct boot_param_header | + ------------------------------ + | (alignment gap) (*) | + ------------------------------ + | memory reserve map | + ------------------------------ + | (alignment gap) | + ------------------------------ + | | + | device-tree structure | + | | + ------------------------------ + | (alignment gap) | + ------------------------------ + | | + | device-tree strings | + | | + -----> ------------------------------ + | + | + --- (r3 + totalsize) + + (*) The alignment gaps are not necessarily present; their presence + and size are dependent on the various alignment requirements of + the individual data blocks. + + +2) Device tree generalities +--------------------------- + +This device-tree itself is separated in two different blocks, a +structure block and a strings block. Both need to be aligned to a 4 +byte boundary. + +First, let's quickly describe the device-tree concept before detailing +the storage format. This chapter does _not_ describe the detail of the +required types of nodes & properties for the kernel, this is done +later in chapter III. + +The device-tree layout is strongly inherited from the definition of +the Open Firmware IEEE 1275 device-tree. It's basically a tree of +nodes, each node having two or more named properties. A property can +have a value or not. + +It is a tree, so each node has one and only one parent except for the +root node who has no parent. + +A node has 2 names. The actual node name is generally contained in a +property of type "name" in the node property list whose value is a +zero terminated string and is mandatory for version 1 to 3 of the +format definition (as it is in Open Firmware). Version 16 makes it +optional as it can generate it from the unit name defined below. + +There is also a "unit name" that is used to differentiate nodes with +the same name at the same level, it is usually made of the node +names, the "@" sign, and a "unit address", which definition is +specific to the bus type the node sits on. + +The unit name doesn't exist as a property per-se but is included in +the device-tree structure. It is typically used to represent "path" in +the device-tree. More details about the actual format of these will be +below. + +The kernel powerpc generic code does not make any formal use of the +unit address (though some board support code may do) so the only real +requirement here for the unit address is to ensure uniqueness of +the node unit name at a given level of the tree. Nodes with no notion +of address and no possible sibling of the same name (like /memory or +/cpus) may omit the unit address in the context of this specification, +or use the "@0" default unit address. The unit name is used to define +a node "full path", which is the concatenation of all parent node +unit names separated with "/". + +The root node doesn't have a defined name, and isn't required to have +a name property either if you are using version 3 or earlier of the +format. It also has no unit address (no @ symbol followed by a unit +address). The root node unit name is thus an empty string. The full +path to the root node is "/". + +Every node which actually represents an actual device (that is, a node +which isn't only a virtual "container" for more nodes, like "/cpus" +is) is also required to have a "device_type" property indicating the +type of node . + +Finally, every node that can be referenced from a property in another +node is required to have a "linux,phandle" property. Real open +firmware implementations provide a unique "phandle" value for every +node that the "prom_init()" trampoline code turns into +"linux,phandle" properties. However, this is made optional if the +flattened device tree is used directly. An example of a node +referencing another node via "phandle" is when laying out the +interrupt tree which will be described in a further version of this +document. + +This "linux, phandle" property is a 32-bit value that uniquely +identifies a node. You are free to use whatever values or system of +values, internal pointers, or whatever to generate these, the only +requirement is that every node for which you provide that property has +a unique value for it. + +Here is an example of a simple device-tree. In this example, an "o" +designates a node followed by the node unit name. Properties are +presented with their name followed by their content. "content" +represents an ASCII string (zero terminated) value, while +represents a 32-bit hexadecimal value. The various nodes in this +example will be discussed in a later chapter. At this point, it is +only meant to give you a idea of what a device-tree looks like. I have +purposefully kept the "name" and "linux,phandle" properties which +aren't necessary in order to give you a better idea of what the tree +looks like in practice. + + / o device-tree + |- name = "device-tree" + |- model = "MyBoardName" + |- compatible = "MyBoardFamilyName" + |- #address-cells = <2> + |- #size-cells = <2> + |- linux,phandle = <0> + | + o cpus + | | - name = "cpus" + | | - linux,phandle = <1> + | | - #address-cells = <1> + | | - #size-cells = <0> + | | + | o PowerPC,970@0 + | |- name = "PowerPC,970" + | |- device_type = "cpu" + | |- reg = <0> + | |- clock-frequency = <5f5e1000> + | |- 64-bit + | |- linux,phandle = <2> + | + o memory@0 + | |- name = "memory" + | |- device_type = "memory" + | |- reg = <00000000 00000000 00000000 20000000> + | |- linux,phandle = <3> + | + o chosen + |- name = "chosen" + |- bootargs = "root=/dev/sda2" + |- linux,phandle = <4> + +This tree is almost a minimal tree. It pretty much contains the +minimal set of required nodes and properties to boot a linux kernel; +that is, some basic model informations at the root, the CPUs, and the +physical memory layout. It also includes misc information passed +through /chosen, like in this example, the platform type (mandatory) +and the kernel command line arguments (optional). + +The /cpus/PowerPC,970@0/64-bit property is an example of a +property without a value. All other properties have a value. The +significance of the #address-cells and #size-cells properties will be +explained in chapter IV which defines precisely the required nodes and +properties and their content. + + +3) Device tree "structure" block + +The structure of the device tree is a linearized tree structure. The +"OF_DT_BEGIN_NODE" token starts a new node, and the "OF_DT_END_NODE" +ends that node definition. Child nodes are simply defined before +"OF_DT_END_NODE" (that is nodes within the node). A 'token' is a 32 +bit value. The tree has to be "finished" with a OF_DT_END token + +Here's the basic structure of a single node: + + * token OF_DT_BEGIN_NODE (that is 0x00000001) + * for version 1 to 3, this is the node full path as a zero + terminated string, starting with "/". For version 16 and later, + this is the node unit name only (or an empty string for the + root node) + * [align gap to next 4 bytes boundary] + * for each property: + * token OF_DT_PROP (that is 0x00000003) + * 32-bit value of property value size in bytes (or 0 if no + value) + * 32-bit value of offset in string block of property name + * property value data if any + * [align gap to next 4 bytes boundary] + * [child nodes if any] + * token OF_DT_END_NODE (that is 0x00000002) + +So the node content can be summarized as a start token, a full path, +a list of properties, a list of child nodes, and an end token. Every +child node is a full node structure itself as defined above. + +NOTE: The above definition requires that all property definitions for +a particular node MUST precede any subnode definitions for that node. +Although the structure would not be ambiguous if properties and +subnodes were intermingled, the kernel parser requires that the +properties come first (up until at least 2.6.22). Any tools +manipulating a flattened tree must take care to preserve this +constraint. + +4) Device tree "strings" block + +In order to save space, property names, which are generally redundant, +are stored separately in the "strings" block. This block is simply the +whole bunch of zero terminated strings for all property names +concatenated together. The device-tree property definitions in the +structure block will contain offset values from the beginning of the +strings block. + + +III - libfdt +============ + +This library should be merged into dtc proper. +This library should likely be worked into U-Boot and the kernel. + + +IV - Utility Tools +================== + +1) convert-dtsv0 -- Conversion to Version 1 + +convert-dtsv0 is a small utility program which converts (DTS) +Device Tree Source from the obsolete version 0 to version 1. + +Version 1 DTS files are marked by line "/dts-v1/;" at the top of the file. + +The syntax of the convert-dtsv0 command line is: + + convert-dtsv0 [] + +Each file passed will be converted to the new /dts-v1/ version by creating +a new file with a "v1" appended the filename. + +Comments, empty lines, etc. are preserved. + + +2) fdtdump -- Flat Device Tree dumping utility + +The fdtdump program prints a readable version of a flat device tree file. + +The syntax of the fdtdump command line is: + + fdtdump Copied: vendor/dtc/dtc-6a15eb23/Makefile (from r261202, vendor/dtc/dist/Makefile) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dtc-6a15eb23/Makefile Mon Jan 27 06:31:37 2014 (r261204, copy of r261202, vendor/dtc/dist/Makefile) @@ -0,0 +1,271 @@ +# +# Device Tree Compiler +# + +# +# Version information will be constructed in this order: +# EXTRAVERSION might be "-rc", for example. +# LOCAL_VERSION is likely from command line. +# CONFIG_LOCALVERSION from some future config system. +# +VERSION = 1 +PATCHLEVEL = 4 +SUBLEVEL = 0 +EXTRAVERSION = +LOCAL_VERSION = +CONFIG_LOCALVERSION = + +CPPFLAGS = -I libfdt -I . +WARNINGS = -Werror -Wall -Wpointer-arith -Wcast-qual -Wnested-externs \ + -Wstrict-prototypes -Wmissing-prototypes -Wredundant-decls +CFLAGS = -g -Os -fPIC -Werror $(WARNINGS) + +BISON = bison +LEX = flex + +INSTALL = /usr/bin/install +DESTDIR = +PREFIX = $(HOME) +BINDIR = $(PREFIX)/bin +LIBDIR = $(PREFIX)/lib +INCLUDEDIR = $(PREFIX)/include + +HOSTOS := $(shell uname -s | tr '[:upper:]' '[:lower:]' | \ + sed -e 's/\(cygwin\).*/cygwin/') + +ifeq ($(HOSTOS),darwin) +SHAREDLIB_EXT=dylib +SHAREDLIB_LINK_OPTIONS=-dynamiclib -Wl,-install_name -Wl, +else +SHAREDLIB_EXT=so +SHAREDLIB_LINK_OPTIONS=-shared -Wl,--version-script=$(LIBFDT_version) -Wl,-soname, +endif + +# +# Overall rules +# +ifdef V +VECHO = : +else +VECHO = echo " " +ARFLAGS = rc +.SILENT: +endif + +NODEPTARGETS = clean +ifeq ($(MAKECMDGOALS),) +DEPTARGETS = all +else +DEPTARGETS = $(filter-out $(NODEPTARGETS),$(MAKECMDGOALS)) +endif + +# +# Rules for versioning +# + +DTC_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION) +VERSION_FILE = version_gen.h + +CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \ + else if [ -x /bin/bash ]; then echo /bin/bash; \ + else echo sh; fi ; fi) + +nullstring := +space := $(nullstring) # end of line + +localver_config = $(subst $(space),, $(string) \ + $(patsubst "%",%,$(CONFIG_LOCALVERSION))) + +localver_cmd = $(subst $(space),, $(string) \ + $(patsubst "%",%,$(LOCALVERSION))) + +localver_scm = $(shell $(CONFIG_SHELL) ./scripts/setlocalversion) +localver_full = $(localver_config)$(localver_cmd)$(localver_scm) + +dtc_version = $(DTC_VERSION)$(localver_full) + +# Contents of the generated version file. +define filechk_version + (echo "#define DTC_VERSION \"DTC $(dtc_version)\""; ) +endef + +define filechk + set -e; \ + echo ' CHK $@'; \ + mkdir -p $(dir $@); \ + $(filechk_$(1)) < $< > $@.tmp; \ + if [ -r $@ ] && cmp -s $@ $@.tmp; then \ + rm -f $@.tmp; \ + else \ + echo ' UPD $@'; \ + mv -f $@.tmp $@; \ + fi; +endef + + +include Makefile.convert-dtsv0 +include Makefile.dtc +include Makefile.utils + +BIN += convert-dtsv0 +BIN += dtc +BIN += fdtdump +BIN += fdtget +BIN += fdtput + +SCRIPTS = dtdiff + +all: $(BIN) libfdt + + +ifneq ($(DEPTARGETS),) +-include $(DTC_OBJS:%.o=%.d) +-include $(CONVERT_OBJS:%.o=%.d) +-include $(FDTDUMP_OBJS:%.o=%.d) +-include $(FDTGET_OBJS:%.o=%.d) +-include $(FDTPUT_OBJS:%.o=%.d) +endif + + + +# +# Rules for libfdt +# +LIBFDT_objdir = libfdt +LIBFDT_srcdir = libfdt +LIBFDT_archive = $(LIBFDT_objdir)/libfdt.a +LIBFDT_lib = $(LIBFDT_objdir)/libfdt-$(DTC_VERSION).$(SHAREDLIB_EXT) +LIBFDT_include = $(addprefix $(LIBFDT_srcdir)/,$(LIBFDT_INCLUDES)) +LIBFDT_version = $(addprefix $(LIBFDT_srcdir)/,$(LIBFDT_VERSION)) + +include $(LIBFDT_srcdir)/Makefile.libfdt + +.PHONY: libfdt +libfdt: $(LIBFDT_archive) $(LIBFDT_lib) + +$(LIBFDT_archive): $(addprefix $(LIBFDT_objdir)/,$(LIBFDT_OBJS)) +$(LIBFDT_lib): $(addprefix $(LIBFDT_objdir)/,$(LIBFDT_OBJS)) + +libfdt_clean: + @$(VECHO) CLEAN "(libfdt)" + rm -f $(addprefix $(LIBFDT_objdir)/,$(STD_CLEANFILES)) + rm -f $(LIBFDT_objdir)/*.so + +ifneq ($(DEPTARGETS),) +-include $(LIBFDT_OBJS:%.o=$(LIBFDT_objdir)/%.d) +endif + +# This stops make from generating the lex and bison output during +# auto-dependency computation, but throwing them away as an +# intermediate target and building them again "for real" +.SECONDARY: $(DTC_GEN_SRCS) $(CONVERT_GEN_SRCS) + +install-bin: all $(SCRIPTS) + @$(VECHO) INSTALL-BIN + $(INSTALL) -d $(DESTDIR)$(BINDIR) + $(INSTALL) $(BIN) $(SCRIPTS) $(DESTDIR)$(BINDIR) + +install-lib: all + @$(VECHO) INSTALL-LIB + $(INSTALL) -d $(DESTDIR)$(LIBDIR) + $(INSTALL) $(LIBFDT_lib) $(DESTDIR)$(LIBDIR) + ln -sf $(notdir $(LIBFDT_lib)) $(DESTDIR)$(LIBDIR)/$(LIBFDT_soname) + ln -sf $(LIBFDT_soname) $(DESTDIR)$(LIBDIR)/libfdt.$(SHAREDLIB_EXT) + $(INSTALL) -m 644 $(LIBFDT_archive) $(DESTDIR)$(LIBDIR) + +install-includes: + @$(VECHO) INSTALL-INC + $(INSTALL) -d $(DESTDIR)$(INCLUDEDIR) + $(INSTALL) -m 644 $(LIBFDT_include) $(DESTDIR)$(INCLUDEDIR) + +install: install-bin install-lib install-includes + +$(VERSION_FILE): Makefile FORCE + $(call filechk,version) + + +dtc: $(DTC_OBJS) + +convert-dtsv0: $(CONVERT_OBJS) + @$(VECHO) LD $@ + $(LINK.c) -o $@ $^ + +fdtdump: $(FDTDUMP_OBJS) + +fdtget: $(FDTGET_OBJS) $(LIBFDT_archive) + +fdtput: $(FDTPUT_OBJS) $(LIBFDT_archive) + + +# +# Testsuite rules +# +TESTS_PREFIX=tests/ + +TESTS_BIN += dtc +TESTS_BIN += convert-dtsv0 +TESTS_BIN += fdtput +TESTS_BIN += fdtget + +include tests/Makefile.tests + +# +# Clean rules +# +STD_CLEANFILES = *~ *.o *.$(SHAREDLIB_EXT) *.d *.a *.i *.s core a.out vgcore.* \ + *.tab.[ch] *.lex.c *.output + +clean: libfdt_clean tests_clean + @$(VECHO) CLEAN + rm -f $(STD_CLEANFILES) + rm -f $(VERSION_FILE) + rm -f $(BIN) + +# +# Generic compile rules +# +%: %.o + @$(VECHO) LD $@ + $(LINK.c) -o $@ $^ + +%.o: %.c + @$(VECHO) CC $@ + $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -c $< + +%.o: %.S + @$(VECHO) AS $@ + $(CC) $(CPPFLAGS) $(AFLAGS) -D__ASSEMBLY__ -o $@ -c $< + +%.d: %.c + @$(VECHO) DEP $< + $(CC) $(CPPFLAGS) -MM -MG -MT "$*.o $@" $< > $@ + +%.d: %.S + @$(VECHO) DEP $< + $(CC) $(CPPFLAGS) -MM -MG -MT "$*.o $@" $< > $@ + +%.i: %.c + @$(VECHO) CPP $@ + $(CC) $(CPPFLAGS) -E $< > $@ + +%.s: %.c + @$(VECHO) CC -S $@ + $(CC) $(CPPFLAGS) $(CFLAGS) -o $@ -S $< + +%.a: + @$(VECHO) AR $@ + $(AR) $(ARFLAGS) $@ $^ + +$(LIBFDT_lib): + @$(VECHO) LD $@ + $(CC) $(LDFLAGS) -fPIC $(SHAREDLIB_LINK_OPTIONS)$(LIBFDT_soname) -o $(LIBFDT_lib) $^ + +%.lex.c: %.l + @$(VECHO) LEX $@ + $(LEX) -o$@ $< + +%.tab.c %.tab.h %.output: %.y + @$(VECHO) BISON $@ + $(BISON) -d $< + +FORCE: Copied: vendor/dtc/dtc-6a15eb23/checks.c (from r261202, vendor/dtc/dist/checks.c) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/dtc/dtc-6a15eb23/checks.c Mon Jan 27 06:31:37 2014 (r261204, copy of r261202, vendor/dtc/dist/checks.c) @@ -0,0 +1,759 @@ +/* + * (C) Copyright David Gibson , IBM Corporation. 2007. + * + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA + */ + +#include "dtc.h" + +#ifdef TRACE_CHECKS +#define TRACE(c, ...) \ + do { \ + fprintf(stderr, "=== %s: ", (c)->name); \ + fprintf(stderr, __VA_ARGS__); \ + fprintf(stderr, "\n"); \ + } while (0) +#else +#define TRACE(c, fmt, ...) do { } while (0) +#endif + +enum checkstatus { + UNCHECKED = 0, + PREREQ, + PASSED, + FAILED, +}; + +struct check; + +typedef void (*tree_check_fn)(struct check *c, struct node *dt); +typedef void (*node_check_fn)(struct check *c, struct node *dt, struct node *node); +typedef void (*prop_check_fn)(struct check *c, struct node *dt, + struct node *node, struct property *prop); + +struct check { + const char *name; + tree_check_fn tree_fn; + node_check_fn node_fn; + prop_check_fn prop_fn; + void *data; + bool warn, error; + enum checkstatus status; + bool inprogress; + int num_prereqs; + struct check **prereq; +}; + *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 08:15:23 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0061EB8F; Mon, 27 Jan 2014 08:15:22 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id DDD9F1D0B; Mon, 27 Jan 2014 08:15:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0R8FMw5095932; Mon, 27 Jan 2014 08:15:22 GMT (envelope-from glebius@svn.freebsd.org) Received: (from glebius@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0R8FLOv095922; Mon, 27 Jan 2014 08:15:21 GMT (envelope-from glebius@svn.freebsd.org) Message-Id: <201401270815.s0R8FLOv095922@svn.freebsd.org> From: Gleb Smirnoff Date: Mon, 27 Jan 2014 08:15:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261207 - in stable/10: usr.bin/netstat usr.sbin/crashinfo X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 08:15:23 -0000 Author: glebius Date: Mon Jan 27 08:15:21 2014 New Revision: 261207 URL: http://svnweb.freebsd.org/changeset/base/261207 Log: Merged /head:r256510,256512,257376,257469,260052: Make 'netstat -i' use getifaddrs(3) instead of kvm(3). Modified: stable/10/usr.bin/netstat/if.c stable/10/usr.bin/netstat/main.c stable/10/usr.bin/netstat/mbuf.c stable/10/usr.bin/netstat/netstat.1 stable/10/usr.bin/netstat/netstat.h stable/10/usr.bin/netstat/route.c stable/10/usr.sbin/crashinfo/crashinfo.sh Directory Properties: stable/10/ (props changed) Modified: stable/10/usr.bin/netstat/if.c ============================================================================== --- stable/10/usr.bin/netstat/if.c Mon Jan 27 07:59:04 2014 (r261206) +++ stable/10/usr.bin/netstat/if.c Mon Jan 27 08:15:21 2014 (r261207) @@ -1,4 +1,5 @@ /*- + * Copyright (c) 2013 Gleb Smirnoff * Copyright (c) 1983, 1988, 1993 * The Regents of the University of California. All rights reserved. * @@ -58,24 +59,23 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #ifdef INET6 #include #endif #include +#include #include #include #include #include +#include #include #include "netstat.h" -#define YES 1 -#define NO 0 - -static void sidewaysintpr(int, u_long); -static void catchalarm(int); +static void sidewaysintpr(int); #ifdef INET6 static char addr_buf[NI_MAXHOST]; /* for getnameinfo() */ @@ -198,52 +198,40 @@ show_stat(const char *fmt, int width, u_ } /* - * Print a description of the network interfaces. + * Find next multiaddr for a given interface name. */ -void -intpr(int interval1, u_long ifnetaddr, void (*pfunc)(char *)) +static struct ifmaddrs * +next_ifma(struct ifmaddrs *ifma, const char *name, const sa_family_t family) { - struct ifnet ifnet; - struct ifnethead ifnethead; - union { - struct ifaddr ifa; - struct in_ifaddr in; -#ifdef INET6 - struct in6_ifaddr in6; -#endif - struct ipx_ifaddr ipx; - } ifaddr; - u_long ifaddraddr; - u_long ifaddrfound; - u_long opackets; - u_long ipackets; - u_long obytes; - u_long ibytes; - u_long omcasts; - u_long imcasts; - u_long oerrors; - u_long ierrors; - u_long idrops; - u_long collisions; - int drops; - struct sockaddr *sa = NULL; - char name[IFNAMSIZ]; - short network_layer; - short link_layer; - if (ifnetaddr == 0) { - printf("ifnet: symbol not defined\n"); - return; - } - if (interval1) { - sidewaysintpr(interval1, ifnetaddr); - return; + for(; ifma != NULL; ifma = ifma->ifma_next) { + struct sockaddr_dl *sdl; + + sdl = (struct sockaddr_dl *)ifma->ifma_name; + if (ifma->ifma_addr->sa_family == family && + strcmp(sdl->sdl_data, name) == 0) + break; } - if (kread(ifnetaddr, (char *)&ifnethead, sizeof ifnethead) != 0) - return; - ifnetaddr = (u_long)TAILQ_FIRST(&ifnethead); - if (kread(ifnetaddr, (char *)&ifnet, sizeof ifnet) != 0) - return; + + return (ifma); +} + +/* + * Print a description of the network interfaces. + */ +void +intpr(int interval, void (*pfunc)(char *)) +{ + struct ifaddrs *ifap, *ifa; + struct ifmaddrs *ifmap, *ifma; + + if (interval) + return sidewaysintpr(interval); + + if (getifaddrs(&ifap) != 0) + err(EX_OSERR, "getifaddrs"); + if (aflag && getifmaddrs(&ifmap) != 0) + err(EX_OSERR, "getifmaddrs"); if (!pfunc) { if (Wflag) @@ -262,364 +250,295 @@ intpr(int interval1, u_long ifnetaddr, v printf(" %s", "Drop"); putchar('\n'); } - ifaddraddr = 0; - while (ifnetaddr || ifaddraddr) { - struct sockaddr_in *sockin; -#ifdef INET6 - struct sockaddr_in6 *sockin6; -#endif - char *cp; - int n, m; - network_layer = 0; - link_layer = 0; + for (ifa = ifap; ifa; ifa = ifa->ifa_next) { + bool network = false, link = false; - if (ifaddraddr == 0) { - if (kread(ifnetaddr, (char *)&ifnet, sizeof ifnet) != 0) - return; - strlcpy(name, ifnet.if_xname, sizeof(name)); - ifnetaddr = (u_long)TAILQ_NEXT(&ifnet, if_link); - if (interface != 0 && strcmp(name, interface) != 0) - continue; - cp = strchr(name, '\0'); + if (interface != NULL && strcmp(ifa->ifa_name, interface) != 0) + continue; - if (pfunc) { - (*pfunc)(name); - continue; - } + if (pfunc) { + char *name; - if ((ifnet.if_flags&IFF_UP) == 0) - *cp++ = '*'; - *cp = '\0'; - ifaddraddr = (u_long)TAILQ_FIRST(&ifnet.if_addrhead); - } - ifaddrfound = ifaddraddr; + name = ifa->ifa_name; + (*pfunc)(name); - /* - * Get the interface stats. These may get - * overriden below on a per-interface basis. - */ - opackets = ifnet.if_opackets; - ipackets = ifnet.if_ipackets; - obytes = ifnet.if_obytes; - ibytes = ifnet.if_ibytes; - omcasts = ifnet.if_omcasts; - imcasts = ifnet.if_imcasts; - oerrors = ifnet.if_oerrors; - ierrors = ifnet.if_ierrors; - idrops = ifnet.if_iqdrops; - collisions = ifnet.if_collisions; - drops = ifnet.if_snd.ifq_drops; - - if (ifaddraddr == 0) { - if (Wflag) - printf("%-7.7s", name); - else - printf("%-5.5s", name); - printf(" %5lu ", ifnet.if_mtu); - printf("%-13.13s ", "none"); - printf("%-17.17s ", "none"); - } else { - if (kread(ifaddraddr, (char *)&ifaddr, sizeof ifaddr) - != 0) { - ifaddraddr = 0; - continue; - } -#define CP(x) ((char *)(x)) - cp = (CP(ifaddr.ifa.ifa_addr) - CP(ifaddraddr)) + - CP(&ifaddr); - sa = (struct sockaddr *)cp; - if (af != AF_UNSPEC && sa->sa_family != af) { - ifaddraddr = - (u_long)TAILQ_NEXT(&ifaddr.ifa, ifa_link); - continue; + /* + * Skip all ifaddrs belonging to same interface. + */ + while(ifa->ifa_next != NULL && + (strcmp(ifa->ifa_next->ifa_name, name) == 0)) { + ifa = ifa->ifa_next; } - if (Wflag) - printf("%-7.7s", name); - else - printf("%-5.5s", name); - printf(" %5lu ", ifnet.if_mtu); - switch (sa->sa_family) { - case AF_UNSPEC: - printf("%-13.13s ", "none"); - printf("%-15.15s ", "none"); - break; - case AF_INET: - sockin = (struct sockaddr_in *)sa; -#ifdef notdef - /* can't use inet_makeaddr because kernel - * keeps nets unshifted. - */ - in = inet_makeaddr(ifaddr.in.ia_subnet, - INADDR_ANY); - printf("%-13.13s ", netname(in.s_addr, - ifaddr.in.ia_subnetmask)); -#else - printf("%-13.13s ", - netname(htonl(ifaddr.in.ia_subnet), - ifaddr.in.ia_subnetmask)); -#endif - printf("%-17.17s ", - routename(sockin->sin_addr.s_addr)); + continue; + } - network_layer = 1; - break; -#ifdef INET6 - case AF_INET6: - sockin6 = (struct sockaddr_in6 *)sa; - in6_fillscopeid(&ifaddr.in6.ia_addr); - printf("%-13.13s ", - netname6(&ifaddr.in6.ia_addr, - &ifaddr.in6.ia_prefixmask.sin6_addr)); - in6_fillscopeid(sockin6); - getnameinfo(sa, sa->sa_len, addr_buf, - sizeof(addr_buf), 0, 0, NI_NUMERICHOST); - printf("%-17.17s ", addr_buf); + if (af != AF_UNSPEC && ifa->ifa_addr->sa_family != af) + continue; - network_layer = 1; - break; -#endif /*INET6*/ - case AF_IPX: - { - struct sockaddr_ipx *sipx = - (struct sockaddr_ipx *)sa; - u_long net; - char netnum[10]; - - *(union ipx_net *) &net = sipx->sipx_addr.x_net; - sprintf(netnum, "%lx", (u_long)ntohl(net)); - printf("ipx:%-8s ", netnum); -/* printf("ipx:%-8s ", netname(net, 0L)); */ - printf("%-17s ", - ipx_phost((struct sockaddr *)sipx)); - } + if (Wflag) + printf("%-7.7s", ifa->ifa_name); + else + printf("%-5.5s", ifa->ifa_name); - network_layer = 1; - break; +#define IFA_MTU(ifa) (((struct if_data *)(ifa)->ifa_data)->ifi_mtu) + show_stat("lu", 6, IFA_MTU(ifa), IFA_MTU(ifa)); +#undef IFA_MTU - case AF_APPLETALK: - printf("atalk:%-12.12s ",atalk_print(sa,0x10) ); - printf("%-11.11s ",atalk_print(sa,0x0b) ); - break; - case AF_LINK: - { - struct sockaddr_dl *sdl = - (struct sockaddr_dl *)sa; - char linknum[10]; - cp = (char *)LLADDR(sdl); - n = sdl->sdl_alen; - sprintf(linknum, "", sdl->sdl_index); - m = printf("%-13.13s ", linknum); - } - goto hexprint; - default: - m = printf("(%d)", sa->sa_family); - for (cp = sa->sa_len + (char *)sa; - --cp > sa->sa_data && (*cp == 0);) {} - n = cp - sa->sa_data + 1; - cp = sa->sa_data; - hexprint: - while ((--n >= 0) && (m < 30)) - m += printf("%02x%c", *cp++ & 0xff, - n > 0 ? ':' : ' '); - m = 32 - m; - while (m-- > 0) - putchar(' '); + switch (ifa->ifa_addr->sa_family) { + case AF_UNSPEC: + printf("%-13.13s ", "none"); + printf("%-15.15s ", "none"); + break; + case AF_INET: + { + struct sockaddr_in *sin, *mask; + + sin = (struct sockaddr_in *)ifa->ifa_addr; + mask = (struct sockaddr_in *)ifa->ifa_netmask; + printf("%-13.13s ", netname(sin->sin_addr.s_addr, + mask->sin_addr.s_addr)); + printf("%-17.17s ", + routename(sin->sin_addr.s_addr)); - link_layer = 1; - break; - } + network = true; + break; + } +#ifdef INET6 + case AF_INET6: + { + struct sockaddr_in6 *sin6, *mask; + + sin6 = (struct sockaddr_in6 *)ifa->ifa_addr; + mask = (struct sockaddr_in6 *)ifa->ifa_netmask; + + printf("%-13.13s ", netname6(sin6, &mask->sin6_addr)); + getnameinfo(ifa->ifa_addr, ifa->ifa_addr->sa_len, + addr_buf, sizeof(addr_buf), 0, 0, NI_NUMERICHOST); + printf("%-17.17s ", addr_buf); - /* - * Fixup the statistics for interfaces that - * update stats for their network addresses - */ - if (network_layer) { - opackets = ifaddr.in.ia_ifa.if_opackets; - ipackets = ifaddr.in.ia_ifa.if_ipackets; - obytes = ifaddr.in.ia_ifa.if_obytes; - ibytes = ifaddr.in.ia_ifa.if_ibytes; - } + network = 1; + break; + } +#endif /* INET6 */ + case AF_IPX: + { + struct sockaddr_ipx *sipx; + u_long net; + char netnum[10]; + + sipx = (struct sockaddr_ipx *)ifa->ifa_addr; + *(union ipx_net *) &net = sipx->sipx_addr.x_net; + + sprintf(netnum, "%lx", (u_long)ntohl(net)); + printf("ipx:%-8s ", netnum); + printf("%-17s ", ipx_phost((struct sockaddr *)sipx)); + + network = 1; + break; + } + case AF_APPLETALK: + printf("atalk:%-12.12s ", + atalk_print(ifa->ifa_addr, 0x10)); + printf("%-11.11s ", + atalk_print(ifa->ifa_addr, 0x0b)); + break; + case AF_LINK: + { + struct sockaddr_dl *sdl; + char *cp, linknum[10]; + int n, m; + + sdl = (struct sockaddr_dl *)ifa->ifa_addr; + cp = (char *)LLADDR(sdl); + n = sdl->sdl_alen; + sprintf(linknum, "", sdl->sdl_index); + m = printf("%-13.13s ", linknum); + + while ((--n >= 0) && (m < 30)) + m += printf("%02x%c", *cp++ & 0xff, + n > 0 ? ':' : ' '); + m = 32 - m; + while (m-- > 0) + putchar(' '); - ifaddraddr = (u_long)TAILQ_NEXT(&ifaddr.ifa, ifa_link); + link = 1; + break; + } } - show_stat("lu", 8, ipackets, link_layer|network_layer); - show_stat("lu", 5, ierrors, link_layer); - show_stat("lu", 5, idrops, link_layer); +#define IFA_STAT(s) (((struct if_data *)ifa->ifa_data)->ifi_ ## s) + show_stat("lu", 8, IFA_STAT(ipackets), link|network); + show_stat("lu", 5, IFA_STAT(ierrors), link); + show_stat("lu", 5, IFA_STAT(iqdrops), link); if (bflag) - show_stat("lu", 10, ibytes, link_layer|network_layer); - - show_stat("lu", 8, opackets, link_layer|network_layer); - show_stat("lu", 5, oerrors, link_layer); + show_stat("lu", 10, IFA_STAT(ibytes), link|network); + show_stat("lu", 8, IFA_STAT(opackets), link|network); + show_stat("lu", 5, IFA_STAT(oerrors), link); if (bflag) - show_stat("lu", 10, obytes, link_layer|network_layer); - - show_stat("NRSlu", 5, collisions, link_layer); - if (dflag) - show_stat("LSd", 4, drops, link_layer); + show_stat("lu", 10, IFA_STAT(obytes), link|network); + show_stat("NRSlu", 5, IFA_STAT(collisions), link); + /* XXXGL: output queue drops */ putchar('\n'); - if (aflag && ifaddrfound) { - /* - * Print family's multicast addresses - */ - struct ifmultiaddr *multiaddr; - struct ifmultiaddr ifma; - union { - struct sockaddr sa; - struct sockaddr_in in; -#ifdef INET6 - struct sockaddr_in6 in6; -#endif /* INET6 */ - struct sockaddr_dl dl; - } msa; - const char *fmt; - - TAILQ_FOREACH(multiaddr, &ifnet.if_multiaddrs, ifma_link) { - if (kread((u_long)multiaddr, (char *)&ifma, - sizeof ifma) != 0) - break; - multiaddr = &ifma; - if (kread((u_long)ifma.ifma_addr, (char *)&msa, - sizeof msa) != 0) - break; - if (msa.sa.sa_family != sa->sa_family) - continue; + if (!aflag) + continue; - fmt = 0; - switch (msa.sa.sa_family) { - case AF_INET: - fmt = routename(msa.in.sin_addr.s_addr); - break; + /* + * Print family's multicast addresses. + */ + for (ifma = next_ifma(ifmap, ifa->ifa_name, + ifa->ifa_addr->sa_family); + ifma != NULL; + ifma = next_ifma(ifma, ifa->ifa_name, + ifa->ifa_addr->sa_family)) { + const char *fmt = NULL; + + switch (ifma->ifma_addr->sa_family) { + case AF_INET: + { + struct sockaddr_in *sin; + + sin = (struct sockaddr_in *)ifma->ifma_addr; + fmt = routename(sin->sin_addr.s_addr); + break; + } #ifdef INET6 - case AF_INET6: - in6_fillscopeid(&msa.in6); - getnameinfo(&msa.sa, msa.sa.sa_len, - addr_buf, sizeof(addr_buf), 0, 0, - NI_NUMERICHOST); - printf("%*s %-19.19s(refs: %d)\n", - Wflag ? 27 : 25, "", - addr_buf, ifma.ifma_refcount); - break; + case AF_INET6: + + /* in6_fillscopeid(&msa.in6); */ + getnameinfo(ifma->ifma_addr, + ifma->ifma_addr->sa_len, addr_buf, + sizeof(addr_buf), 0, 0, NI_NUMERICHOST); + printf("%*s %s\n", + Wflag ? 27 : 25, "", addr_buf); + break; #endif /* INET6 */ - case AF_LINK: - switch (msa.dl.sdl_type) { - case IFT_ETHER: - case IFT_FDDI: - fmt = ether_ntoa( - (struct ether_addr *) - LLADDR(&msa.dl)); - break; - } + case AF_LINK: + { + struct sockaddr_dl *sdl; + + sdl = (struct sockaddr_dl *)ifma->ifma_addr; + switch (sdl->sdl_type) { + case IFT_ETHER: + case IFT_FDDI: + fmt = ether_ntoa( + (struct ether_addr *)LLADDR(sdl)); break; } - if (fmt) { - printf("%*s %-17.17s", - Wflag ? 27 : 25, "", fmt); - if (msa.sa.sa_family == AF_LINK) { - printf(" %8lu", imcasts); - printf("%*s", - bflag ? 17 : 6, ""); - printf(" %8lu", omcasts); - } - putchar('\n'); + break; + } + } + + if (fmt) { + printf("%*s %-17.17s", + Wflag ? 27 : 25, "", fmt); + if (ifma->ifma_addr->sa_family == AF_LINK) { + printf(" %8lu", IFA_STAT(imcasts)); + printf("%*s", bflag ? 17 : 6, ""); + printf(" %8lu", IFA_STAT(omcasts)); } + putchar('\n'); } + + ifma = ifma->ifma_next; } } + + freeifaddrs(ifap); + if (aflag) + freeifmaddrs(ifmap); } -struct iftot { - SLIST_ENTRY(iftot) chain; - char ift_name[IFNAMSIZ]; /* interface name */ +struct iftot { u_long ift_ip; /* input packets */ u_long ift_ie; /* input errors */ u_long ift_id; /* input drops */ u_long ift_op; /* output packets */ u_long ift_oe; /* output errors */ u_long ift_co; /* collisions */ - u_int ift_dr; /* drops */ u_long ift_ib; /* input bytes */ u_long ift_ob; /* output bytes */ }; -u_char signalled; /* set if alarm goes off "early" */ - /* - * Print a running summary of interface statistics. - * Repeat display every interval1 seconds, showing statistics - * collected over that interval. Assumes that interval1 is non-zero. - * First line printed at top of screen is always cumulative. - * XXX - should be rewritten to use ifmib(4). + * Obtain stats for interface(s). */ static void -sidewaysintpr(int interval1, u_long off) +fill_iftot(struct iftot *st) { - struct ifnet ifnet; - u_long firstifnet; - struct ifnethead ifnethead; - struct itimerval interval_it; - struct iftot *iftot, *ip, *ipn, *total, *sum, *interesting; - int line; - int oldmask, first; - u_long interesting_off; + struct ifaddrs *ifap, *ifa; + bool found = false; - if (kread(off, (char *)&ifnethead, sizeof ifnethead) != 0) - return; - firstifnet = (u_long)TAILQ_FIRST(&ifnethead); - - if ((iftot = malloc(sizeof(struct iftot))) == NULL) { - printf("malloc failed\n"); - exit(1); - } - memset(iftot, 0, sizeof(struct iftot)); + if (getifaddrs(&ifap) != 0) + err(EX_OSERR, "getifaddrs"); - interesting = NULL; - interesting_off = 0; - for (off = firstifnet, ip = iftot; off;) { - char name[IFNAMSIZ]; + bzero(st, sizeof(*st)); - if (kread(off, (char *)&ifnet, sizeof ifnet) != 0) - break; - strlcpy(name, ifnet.if_xname, sizeof(name)); - if (interface && strcmp(name, interface) == 0) { - interesting = ip; - interesting_off = off; - } - snprintf(ip->ift_name, sizeof(ip->ift_name), "(%s)", name); - if ((ipn = malloc(sizeof(struct iftot))) == NULL) { - printf("malloc failed\n"); - exit(1); + for (ifa = ifap; ifa; ifa = ifa->ifa_next) { + if (ifa->ifa_addr->sa_family != AF_LINK) + continue; + if (interface) { + if (strcmp(ifa->ifa_name, interface) == 0) + found = true; + else + continue; } - memset(ipn, 0, sizeof(struct iftot)); - SLIST_NEXT(ip, chain) = ipn; - ip = ipn; - off = (u_long)TAILQ_NEXT(&ifnet, if_link); - } - if (interface && interesting == NULL) - errx(1, "%s: unknown interface", interface); - if ((total = malloc(sizeof(struct iftot))) == NULL) { - printf("malloc failed\n"); - exit(1); - } - memset(total, 0, sizeof(struct iftot)); - if ((sum = malloc(sizeof(struct iftot))) == NULL) { - printf("malloc failed\n"); - exit(1); + + st->ift_ip += IFA_STAT(ipackets); + st->ift_ie += IFA_STAT(ierrors); + st->ift_id += IFA_STAT(iqdrops); + st->ift_ib += IFA_STAT(ibytes); + st->ift_op += IFA_STAT(opackets); + st->ift_oe += IFA_STAT(oerrors); + st->ift_ob += IFA_STAT(obytes); + st->ift_co += IFA_STAT(collisions); } - memset(sum, 0, sizeof(struct iftot)); + + if (interface && found == false) + err(EX_DATAERR, "interface %s not found", interface); + + freeifaddrs(ifap); +} + +/* + * Set a flag to indicate that a signal from the periodic itimer has been + * caught. + */ +static sig_atomic_t signalled; +static void +catchalarm(int signo __unused) +{ + signalled = true; +} + +/* + * Print a running summary of interface statistics. + * Repeat display every interval seconds, showing statistics + * collected over that interval. Assumes that interval is non-zero. + * First line printed at top of screen is always cumulative. + */ +static void +sidewaysintpr(int interval) +{ + struct iftot ift[2], *new, *old; + struct itimerval interval_it; + int oldmask, line; + + new = &ift[0]; + old = &ift[1]; + fill_iftot(old); (void)signal(SIGALRM, catchalarm); - signalled = NO; - interval_it.it_interval.tv_sec = interval1; + signalled = false; + interval_it.it_interval.tv_sec = interval; interval_it.it_interval.tv_usec = 0; interval_it.it_value = interval_it.it_interval; setitimer(ITIMER_REAL, &interval_it, NULL); - first = 1; + banner: printf("%17s %14s %16s", "input", - interesting ? interesting->ift_name : "(Total)", "output"); + interface != NULL ? interface : "(Total)", "output"); putchar('\n'); printf("%10s %5s %5s %10s %10s %5s %10s %5s", "packets", "errs", "idrops", "bytes", "packets", "errs", "bytes", @@ -629,104 +548,43 @@ banner: putchar('\n'); fflush(stdout); line = 0; + loop: - if (interesting != NULL) { - ip = interesting; - if (kread(interesting_off, (char *)&ifnet, sizeof ifnet) != 0) { - printf("???\n"); - exit(1); - }; - if (!first) { - show_stat("lu", 10, ifnet.if_ipackets - ip->ift_ip, 1); - show_stat("lu", 5, ifnet.if_ierrors - ip->ift_ie, 1); - show_stat("lu", 5, ifnet.if_iqdrops - ip->ift_id, 1); - show_stat("lu", 10, ifnet.if_ibytes - ip->ift_ib, 1); - show_stat("lu", 10, ifnet.if_opackets - ip->ift_op, 1); - show_stat("lu", 5, ifnet.if_oerrors - ip->ift_oe, 1); - show_stat("lu", 10, ifnet.if_obytes - ip->ift_ob, 1); - show_stat("NRSlu", 5, - ifnet.if_collisions - ip->ift_co, 1); - if (dflag) - show_stat("LSu", 5, - ifnet.if_snd.ifq_drops - ip->ift_dr, 1); - } - ip->ift_ip = ifnet.if_ipackets; - ip->ift_ie = ifnet.if_ierrors; - ip->ift_id = ifnet.if_iqdrops; - ip->ift_ib = ifnet.if_ibytes; - ip->ift_op = ifnet.if_opackets; - ip->ift_oe = ifnet.if_oerrors; - ip->ift_ob = ifnet.if_obytes; - ip->ift_co = ifnet.if_collisions; - ip->ift_dr = ifnet.if_snd.ifq_drops; - } else { - sum->ift_ip = 0; - sum->ift_ie = 0; - sum->ift_id = 0; - sum->ift_ib = 0; - sum->ift_op = 0; - sum->ift_oe = 0; - sum->ift_ob = 0; - sum->ift_co = 0; - sum->ift_dr = 0; - for (off = firstifnet, ip = iftot; - off && SLIST_NEXT(ip, chain) != NULL; - ip = SLIST_NEXT(ip, chain)) { - if (kread(off, (char *)&ifnet, sizeof ifnet) != 0) { - off = 0; - continue; - } - sum->ift_ip += ifnet.if_ipackets; - sum->ift_ie += ifnet.if_ierrors; - sum->ift_id += ifnet.if_iqdrops; - sum->ift_ib += ifnet.if_ibytes; - sum->ift_op += ifnet.if_opackets; - sum->ift_oe += ifnet.if_oerrors; - sum->ift_ob += ifnet.if_obytes; - sum->ift_co += ifnet.if_collisions; - sum->ift_dr += ifnet.if_snd.ifq_drops; - off = (u_long)TAILQ_NEXT(&ifnet, if_link); - } - if (!first) { - show_stat("lu", 10, sum->ift_ip - total->ift_ip, 1); - show_stat("lu", 5, sum->ift_ie - total->ift_ie, 1); - show_stat("lu", 5, sum->ift_id - total->ift_id, 1); - show_stat("lu", 10, sum->ift_ib - total->ift_ib, 1); - show_stat("lu", 10, sum->ift_op - total->ift_op, 1); - show_stat("lu", 5, sum->ift_oe - total->ift_oe, 1); - show_stat("lu", 10, sum->ift_ob - total->ift_ob, 1); - show_stat("NRSlu", 5, sum->ift_co - total->ift_co, 1); - if (dflag) - show_stat("LSu", 5, - sum->ift_dr - total->ift_dr, 1); - } - *total = *sum; - } - if (!first) - putchar('\n'); - fflush(stdout); if ((noutputs != 0) && (--noutputs == 0)) exit(0); oldmask = sigblock(sigmask(SIGALRM)); while (!signalled) sigpause(0); - signalled = NO; + signalled = false; sigsetmask(oldmask); line++; - first = 0; + + fill_iftot(new); + + show_stat("lu", 10, new->ift_ip - old->ift_ip, 1); + show_stat("lu", 5, new->ift_ie - old->ift_ie, 1); + show_stat("lu", 5, new->ift_id - old->ift_id, 1); + show_stat("lu", 10, new->ift_ib - old->ift_ib, 1); + show_stat("lu", 10, new->ift_op - old->ift_op, 1); + show_stat("lu", 5, new->ift_oe - old->ift_oe, 1); + show_stat("lu", 10, new->ift_ob - old->ift_ob, 1); + show_stat("NRSlu", 5, new->ift_co - old->ift_co, 1); + /* XXXGL: output queue drops */ + putchar('\n'); + fflush(stdout); + + if (new == &ift[0]) { + new = &ift[1]; + old = &ift[0]; + } else { + new = &ift[0]; + old = &ift[1]; + } + if (line == 21) goto banner; else goto loop; - /*NOTREACHED*/ -} -/* - * Set a flag to indicate that a signal from the periodic itimer has been - * caught. - */ -static void -catchalarm(int signo __unused) -{ - signalled = YES; + /* NOTREACHED */ } Modified: stable/10/usr.bin/netstat/main.c ============================================================================== --- stable/10/usr.bin/netstat/main.c Mon Jan 27 07:59:04 2014 (r261206) +++ stable/10/usr.bin/netstat/main.c Mon Jan 27 08:15:21 2014 (r261207) @@ -71,7 +71,7 @@ __FBSDID("$FreeBSD$"); static struct nlist nl[] = { #define N_IFNET 0 - { .n_name = "_ifnet" }, + { .n_name = "_ifnet" }, /* XXXGL: can be deleted */ #define N_RTSTAT 1 { .n_name = "_rtstat" }, #define N_RTREE 2 @@ -552,7 +552,7 @@ main(int argc, char *argv[]) #endif kread(0, NULL, 0); if (iflag && !sflag) { - intpr(interval, nl[N_IFNET].n_value, NULL); + intpr(interval, NULL); exit(0); } if (rflag) { @@ -636,8 +636,7 @@ printproto(struct protox *tp, const char if (sflag) { if (iflag) { if (tp->pr_istats) - intpr(interval, nl[N_IFNET].n_value, - tp->pr_istats); + intpr(interval, tp->pr_istats); else if (pflag) printf("%s: no per-interface stats routine\n", tp->pr_name); Modified: stable/10/usr.bin/netstat/mbuf.c ============================================================================== --- stable/10/usr.bin/netstat/mbuf.c Mon Jan 27 07:59:04 2014 (r261206) +++ stable/10/usr.bin/netstat/mbuf.c Mon Jan 27 08:15:21 2014 (r261207) @@ -69,16 +69,16 @@ mbpr(void *kvmd, u_long mbaddr) struct memory_type *mtp; uintmax_t mbuf_count, mbuf_bytes, mbuf_free, mbuf_failures, mbuf_size; uintmax_t mbuf_sleeps; - uintmax_t cluster_count, cluster_bytes, cluster_limit, cluster_free; + uintmax_t cluster_count, cluster_limit, cluster_free; uintmax_t cluster_failures, cluster_size, cluster_sleeps; uintmax_t packet_count, packet_bytes, packet_free, packet_failures; uintmax_t packet_sleeps; - uintmax_t tag_count, tag_bytes; - uintmax_t jumbop_count, jumbop_bytes, jumbop_limit, jumbop_free; + uintmax_t tag_bytes; + uintmax_t jumbop_count, jumbop_limit, jumbop_free; uintmax_t jumbop_failures, jumbop_sleeps, jumbop_size; - uintmax_t jumbo9_count, jumbo9_bytes, jumbo9_limit, jumbo9_free; + uintmax_t jumbo9_count, jumbo9_limit, jumbo9_free; uintmax_t jumbo9_failures, jumbo9_sleeps, jumbo9_size; - uintmax_t jumbo16_count, jumbo16_bytes, jumbo16_limit, jumbo16_free; + uintmax_t jumbo16_count, jumbo16_limit, jumbo16_free; uintmax_t jumbo16_failures, jumbo16_sleeps, jumbo16_size; uintmax_t bytes_inuse, bytes_incache, bytes_total; int nsfbufs, nsfbufspeak, nsfbufsused; @@ -146,7 +146,6 @@ mbpr(void *kvmd, u_long mbaddr) goto out; } cluster_count = memstat_get_count(mtp); - cluster_bytes = memstat_get_bytes(mtp); cluster_limit = memstat_get_countlimit(mtp); cluster_free = memstat_get_free(mtp); cluster_failures = memstat_get_failures(mtp); @@ -159,7 +158,6 @@ mbpr(void *kvmd, u_long mbaddr) MBUF_TAG_MEM_NAME); goto out; } - tag_count = memstat_get_count(mtp); tag_bytes = memstat_get_bytes(mtp); mtp = memstat_mtl_find(mtlp, ALLOCATOR_UMA, MBUF_JUMBOP_MEM_NAME); @@ -169,7 +167,6 @@ mbpr(void *kvmd, u_long mbaddr) goto out; } jumbop_count = memstat_get_count(mtp); - jumbop_bytes = memstat_get_bytes(mtp); jumbop_limit = memstat_get_countlimit(mtp); jumbop_free = memstat_get_free(mtp); jumbop_failures = memstat_get_failures(mtp); @@ -183,7 +180,6 @@ mbpr(void *kvmd, u_long mbaddr) goto out; } jumbo9_count = memstat_get_count(mtp); - jumbo9_bytes = memstat_get_bytes(mtp); jumbo9_limit = memstat_get_countlimit(mtp); jumbo9_free = memstat_get_free(mtp); jumbo9_failures = memstat_get_failures(mtp); @@ -197,7 +193,6 @@ mbpr(void *kvmd, u_long mbaddr) goto out; } jumbo16_count = memstat_get_count(mtp); - jumbo16_bytes = memstat_get_bytes(mtp); jumbo16_limit = memstat_get_countlimit(mtp); jumbo16_free = memstat_get_free(mtp); jumbo16_failures = memstat_get_failures(mtp); Modified: stable/10/usr.bin/netstat/netstat.1 ============================================================================== --- stable/10/usr.bin/netstat/netstat.1 Mon Jan 27 07:59:04 2014 (r261206) +++ stable/10/usr.bin/netstat/netstat.1 Mon Jan 27 08:15:21 2014 (r261207) @@ -28,7 +28,7 @@ .\" @(#)netstat.1 8.8 (Berkeley) 4/18/94 .\" $FreeBSD$ .\" -.Dd May 17, 2013 +.Dd October 15, 2013 .Dt NETSTAT 1 .Os .Sh NAME @@ -94,8 +94,6 @@ retransmits, out-of-order packets receiv .Fl i | I Ar interface .Op Fl abdhnW .Op Fl f Ar address_family -.Op Fl M Ar core -.Op Fl N Ar system .Ek .Xc Show the state of all network interfaces or a single Modified: stable/10/usr.bin/netstat/netstat.h ============================================================================== --- stable/10/usr.bin/netstat/netstat.h Mon Jan 27 07:59:04 2014 (r261206) +++ stable/10/usr.bin/netstat/netstat.h Mon Jan 27 08:15:21 2014 (r261207) @@ -119,7 +119,7 @@ void netisr_stats(void *); void hostpr(u_long, u_long); void impstats(u_long, u_long); -void intpr(int, u_long, void (*)(char *)); +void intpr(int, void (*)(char *)); void pr_rthdr(int); void pr_family(int); @@ -130,7 +130,7 @@ char *ns_phost(struct sockaddr *); void upHex(char *); char *routename(in_addr_t); -char *netname(in_addr_t, u_long); +char *netname(in_addr_t, in_addr_t); char *atalk_print(struct sockaddr *, int); char *atalk_print2(struct sockaddr *, struct sockaddr *, int); char *ipx_print(struct sockaddr *); Modified: stable/10/usr.bin/netstat/route.c ============================================================================== --- stable/10/usr.bin/netstat/route.c Mon Jan 27 07:59:04 2014 (r261206) +++ stable/10/usr.bin/netstat/route.c Mon Jan 27 08:15:21 2014 (r261207) @@ -631,10 +631,9 @@ fmt_sockaddr(struct sockaddr *sa, struct cp = routename(sockin->sin_addr.s_addr); else if (mask) cp = netname(sockin->sin_addr.s_addr, - ntohl(((struct sockaddr_in *)mask) - ->sin_addr.s_addr)); + ((struct sockaddr_in *)mask)->sin_addr.s_addr); else - cp = netname(sockin->sin_addr.s_addr, 0L); + cp = netname(sockin->sin_addr.s_addr, INADDR_ANY); break; } @@ -870,19 +869,21 @@ domask(char *dst, in_addr_t addr __unuse *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 09:33:31 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F2AC3A58; Mon, 27 Jan 2014 09:33:30 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id DD35312FD; Mon, 27 Jan 2014 09:33:30 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0R9XUVF027710; Mon, 27 Jan 2014 09:33:30 GMT (envelope-from glebius@svn.freebsd.org) Received: (from glebius@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0R9XUrA027709; Mon, 27 Jan 2014 09:33:30 GMT (envelope-from glebius@svn.freebsd.org) Message-Id: <201401270933.s0R9XUrA027709@svn.freebsd.org> From: Gleb Smirnoff Date: Mon, 27 Jan 2014 09:33:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261208 - stable/10/sys/netinet X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 09:33:31 -0000 Author: glebius Date: Mon Jan 27 09:33:30 2014 New Revision: 261208 URL: http://svnweb.freebsd.org/changeset/base/261208 Log: Merge 261024: fix PIM input regression. Modified: stable/10/sys/netinet/ip_mroute.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/netinet/ip_mroute.c ============================================================================== --- stable/10/sys/netinet/ip_mroute.c Mon Jan 27 08:15:21 2014 (r261207) +++ stable/10/sys/netinet/ip_mroute.c Mon Jan 27 09:33:30 2014 (r261208) @@ -2556,14 +2556,13 @@ pim_encapcheck(const struct mbuf *m, int * is passed to if_simloop(). */ void -pim_input(struct mbuf *m, int off) +pim_input(struct mbuf *m, int iphlen) { struct ip *ip = mtod(m, struct ip *); struct pim *pim; int minlen; - int datalen = ntohs(ip->ip_len); + int datalen = ntohs(ip->ip_len) - iphlen; int ip_tos; - int iphlen = off; /* Keep statistics */ PIMSTAT_INC(pims_rcv_total_msgs); @@ -2593,8 +2592,7 @@ pim_input(struct mbuf *m, int off) * Get the IP and PIM headers in contiguous memory, and * possibly the PIM REGISTER header. */ - if ((m->m_flags & M_EXT || m->m_len < minlen) && - (m = m_pullup(m, minlen)) == 0) { + if (m->m_len < minlen && (m = m_pullup(m, minlen)) == 0) { CTR1(KTR_IPMF, "%s: m_pullup() failed", __func__); return; } From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 11:10:07 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F22DA66E; Mon, 27 Jan 2014 11:10:06 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id DE0BD1D0E; Mon, 27 Jan 2014 11:10:06 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0RBA62q065099; Mon, 27 Jan 2014 11:10:06 GMT (envelope-from rodrigo@svn.freebsd.org) Received: (from rodrigo@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0RBA6iS065098; Mon, 27 Jan 2014 11:10:06 GMT (envelope-from rodrigo@svn.freebsd.org) Message-Id: <201401271110.s0RBA6iS065098@svn.freebsd.org> From: Rodrigo Osorio Date: Mon, 27 Jan 2014 11:10:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261209 - head/share/misc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 11:10:07 -0000 Author: rodrigo (ports committer) Date: Mon Jan 27 11:10:06 2014 New Revision: 261209 URL: http://svnweb.freebsd.org/changeset/base/261209 Log: Add myself as a developer Add bapt@ and kwm@ as mentors Approved by: kwm@ (co-mentor) Modified: head/share/misc/committers-ports.dot Modified: head/share/misc/committers-ports.dot ============================================================================== --- head/share/misc/committers-ports.dot Mon Jan 27 09:33:30 2014 (r261208) +++ head/share/misc/committers-ports.dot Mon Jan 27 11:10:06 2014 (r261209) @@ -183,6 +183,7 @@ rene [label="Rene Ladan\nrene@FreeBSD.or riggs [label="Thomas Zander\nriggs@FreeBSD.org\n2014/01/09"] rm [label="Ruslan Makhmatkhanov\nrm@FreeBSD.org\n2011/11/06"] rnoland [label="Robert Noland\nrnoland@FreeBSD.org\n2008/07/21"] +rodrigo [label="Rodrigo Osorio\nrodrigo@FreeBSD.org\n2014/01/15"] romain [label="Romain Tartiere\nromain@FreeBSD.org\n2010/01/24"] sahil [label="Sahil Tandon\nsahil@FreeBSD.org\n2010/04/11"] sat [label="Andrew Pantyukhin\nsat@FreeBSD.org\n2006/05/06"] @@ -258,6 +259,7 @@ bapt -> eadler bapt -> jlaffaye bapt -> marius bapt -> marino +bapt -> rodrigo beat -> decke beat -> marius @@ -392,6 +394,7 @@ krion -> sem krion -> sergei kwm -> jsa +kwm -> rodrigo kwm -> zeising lawrance -> itetcu From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 11:23:55 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B69D521F; Mon, 27 Jan 2014 11:23:55 +0000 (UTC) Received: from mail.ipfw.ru (mail.ipfw.ru [IPv6:2a01:4f8:120:6141::2]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 766721E64; Mon, 27 Jan 2014 11:23:55 +0000 (UTC) Received: from [2a02:6b8:0:401:222:4dff:fe50:cd2f] (helo=ptichko.yndx.net) by mail.ipfw.ru with esmtpsa (TLSv1:CAMELLIA256-SHA:256) (Exim 4.76 (FreeBSD)) (envelope-from ) id 1W7gS3-000IZp-3J; Mon, 27 Jan 2014 11:17:47 +0400 Message-ID: <52E640F8.8000401@FreeBSD.org> Date: Mon, 27 Jan 2014 15:20:24 +0400 From: "Alexander V. Chernikov" User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:24.0) Gecko/20100101 Thunderbird/24.0.1 MIME-Version: 1.0 To: "Bjoern A. Zeeb" Subject: Re: svn commit: r260882 - in head/sys: netinet netinet6 References: <201401191607.s0JG7SsM084760@svn.freebsd.org> <7C61BA64-179B-492E-A07A-795BFBA43B8F@FreeBSD.org> In-Reply-To: <7C61BA64-179B-492E-A07A-795BFBA43B8F@FreeBSD.org> Content-Type: text/plain; charset=windows-1252; format=flowed Content-Transfer-Encoding: 8bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 11:23:55 -0000 On 19.01.2014 21:33, Bjoern A. Zeeb wrote: > On 19 Jan 2014, at 16:07 , Alexander V. Chernikov wrote: > >> Author: melifaro >> Date: Sun Jan 19 16:07:27 2014 >> New Revision: 260882 >> URL: http://svnweb.freebsd.org/changeset/base/260882 >> >> Log: >> Further rework netinet6 address handling code: >> * Set ia address/mask values BEFORE attaching to address lists. >> Inet6 address assignment is not atomic, so the simplest way to >> do this atomically is to fill in ia before attach. >> * Validate irfa->ia_addr field before use (we permit ANY sockaddr in old code). >> * Do some renamings: >> in6_ifinit -> in6_notify_ifa (interaction with other subsystems is here) >> in6_setup_ifa -> in6_broadcast_ifa (LLE/Multicast/DaD code) > Broadcast is a not exactly a good name with IPv6. Yes, true. s/broadcast/multicast/ ? Anyway, I'm happy with any other naming. > >> in6_ifaddloop -> nd6_add_ifa_lle >> in6_ifremloop -> nd6_rem_ifa_lle >> * Split working with LLE and route announce code for last two. >> Add temporary in6_newaddrmsg() function to mimic current rtsock behaviour. >> * Call device SIOCSIFADDR handler IFF we're adding first address. >> In IPv4 we have to call it on every address change since ARP record >> is installed by arp_ifinit() which is called by given handler. >> IPv6 stack, on the opposite is responsible to call nd6_add_ifa_lle() so >> there is no reason to call SIOCSIFADDR often. >> >> Modified: >> head/sys/netinet/ip_carp.c >> head/sys/netinet6/in6.c >> head/sys/netinet6/in6_var.h >> head/sys/netinet6/nd6.c >> head/sys/netinet6/nd6.h > — > Bjoern A. Zeeb ????????? ??? ??????? ??????: > '??? ??? ???? ?????? ??????? ?? ?? ??????? ??????? ??? ????? ????? ???? > ?????? ?? ????? ????', ????????? ?????????, "??? ????? ?? ?????", ?.??? > > From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 17:31:22 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9AE01E6; Mon, 27 Jan 2014 17:31:22 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 877CD1EF3; Mon, 27 Jan 2014 17:31:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0RHVMTk015498; Mon, 27 Jan 2014 17:31:22 GMT (envelope-from jmg@svn.freebsd.org) Received: (from jmg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0RHVM1d015495; Mon, 27 Jan 2014 17:31:22 GMT (envelope-from jmg@svn.freebsd.org) Message-Id: <201401271731.s0RHVM1d015495@svn.freebsd.org> From: John-Mark Gurney Date: Mon, 27 Jan 2014 17:31:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261211 - head/sys/arm/ti X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 17:31:22 -0000 Author: jmg Date: Mon Jan 27 17:31:21 2014 New Revision: 261211 URL: http://svnweb.freebsd.org/changeset/base/261211 Log: fix args to mtx_init Note that this commit hasn't been compile tested because these files are not hooked up to the build... PR: 186129 Submitted by: Takanori Sawada Approved by: rpaulo Modified: head/sys/arm/ti/ti_mbox.c head/sys/arm/ti/ti_pruss.c Modified: head/sys/arm/ti/ti_mbox.c ============================================================================== --- head/sys/arm/ti/ti_mbox.c Mon Jan 27 13:28:55 2014 (r261210) +++ head/sys/arm/ti/ti_mbox.c Mon Jan 27 17:31:21 2014 (r261211) @@ -140,7 +140,7 @@ ti_mbox_attach(device_t dev) } sc = device_get_softc(dev); rid = 0; - mtx_init(&sc->sc_mtx, "TI mbox", MTX_DEF, 0); + mtx_init(&sc->sc_mtx, "TI mbox", NULL, MTX_DEF); sc->sc_mem_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, RF_ACTIVE); if (sc->sc_mem_res == NULL) { Modified: head/sys/arm/ti/ti_pruss.c ============================================================================== --- head/sys/arm/ti/ti_pruss.c Mon Jan 27 13:28:55 2014 (r261210) +++ head/sys/arm/ti/ti_pruss.c Mon Jan 27 17:31:21 2014 (r261211) @@ -166,7 +166,7 @@ ti_pruss_attach(device_t dev) } sc = device_get_softc(dev); rid = 0; - mtx_init(&sc->sc_mtx, "TI PRUSS", MTX_DEF, 0); + mtx_init(&sc->sc_mtx, "TI PRUSS", NULL, MTX_DEF); sc->sc_mem_res = bus_alloc_resource_any(dev, SYS_RES_MEMORY, &rid, RF_ACTIVE); if (sc->sc_mem_res == NULL) { From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 17:47:26 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2D9885AC; Mon, 27 Jan 2014 17:47:26 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 175D41FD9; Mon, 27 Jan 2014 17:47:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0RHlQ4h020458; Mon, 27 Jan 2014 17:47:26 GMT (envelope-from sjg@svn.freebsd.org) Received: (from sjg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0RHlLp5020429; Mon, 27 Jan 2014 17:47:21 GMT (envelope-from sjg@svn.freebsd.org) Message-Id: <201401271747.s0RHlLp5020429@svn.freebsd.org> From: "Simon J. Gerraty" Date: Mon, 27 Jan 2014 17:47:21 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261212 - in head: contrib/bmake contrib/bmake/lst.lib contrib/bmake/mk usr.bin/bmake X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 17:47:26 -0000 Author: sjg Date: Mon Jan 27 17:47:21 2014 New Revision: 261212 URL: http://svnweb.freebsd.org/changeset/base/261212 Log: Merge bmake-20140101 from vendor Modified: head/contrib/bmake/ChangeLog head/contrib/bmake/Makefile head/contrib/bmake/Makefile.config.in head/contrib/bmake/bmake.1 head/contrib/bmake/bmake.cat1 head/contrib/bmake/boot-strap head/contrib/bmake/compat.c head/contrib/bmake/configure head/contrib/bmake/configure.in head/contrib/bmake/hash.c head/contrib/bmake/lst.lib/lstMember.c head/contrib/bmake/main.c head/contrib/bmake/make-bootstrap.sh.in head/contrib/bmake/make.1 head/contrib/bmake/make.h head/contrib/bmake/meta.c head/contrib/bmake/mk/ChangeLog head/contrib/bmake/mk/dirdeps.mk head/contrib/bmake/mk/install-mk head/contrib/bmake/mk/meta2deps.py head/contrib/bmake/parse.c head/contrib/bmake/util.c head/usr.bin/bmake/Makefile head/usr.bin/bmake/Makefile.config head/usr.bin/bmake/config.h Directory Properties: head/contrib/bmake/ (props changed) Modified: head/contrib/bmake/ChangeLog ============================================================================== --- head/contrib/bmake/ChangeLog Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/ChangeLog Mon Jan 27 17:47:21 2014 (r261212) @@ -1,3 +1,37 @@ +2014-01-03 Simon J. Gerraty + + * boot-strap: ignore mksrc=none + +2014-01-02 Simon J. Gerraty + + * Makefile (DEFAULT_SYS_PATH?): use just ${prefix}/share/mk + +2014-01-01 Simon J. Gerraty + + * Makefile (MAKE_VERSION): 20140101 + * configure.in: set bmake_path_max to min(_SC_PATH_MAX,1024) + * Makefile.config: defined BMAKE_PATH_MAX to bmake_path_max + * make.h: use BMAKE_PATH_MAX if MAXPATHLEN not defined (needed for + Hurd) + * configure.in: Add AC_PREREQ and check for + sysctl; patch from Andrew Shadura andrewsh at debian.org + +2013-10-16 Simon J. Gerraty + + * Makefile (MAKE_VERSION): 20131010 + * lose the const from arg to systcl to avoid problems on older BSDs. + +2013-10-01 Simon J. Gerraty + + * Makefile (MAKE_VERSION): 20131001 + Merge with NetBSD make, pick up + o main.c: for NATIVE build sysctl to get MACHINE_ARCH from + hw.machine_arch if necessary. + o meta.c: meta_oodate - need to look at src of Link and target + of Move as well. + * main.c: check that CTL_HW and HW_MACHINE_ARCH exist. + provide __arraycount() if needed. + 2013-09-04 Simon J. Gerraty * Makefile (MAKE_VERSION): 20130904 Modified: head/contrib/bmake/Makefile ============================================================================== --- head/contrib/bmake/Makefile Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/Makefile Mon Jan 27 17:47:21 2014 (r261212) @@ -1,7 +1,7 @@ -# $Id: Makefile,v 1.20 2013/09/04 15:42:03 sjg Exp $ +# $Id: Makefile,v 1.23 2014/01/02 22:20:52 sjg Exp $ # Base version on src date -MAKE_VERSION= 20130904 +MAKE_VERSION= 20140101 PROG= bmake @@ -68,7 +68,7 @@ SRCS+= ${LIBOBJS:T:.o=.c} prefix?= /usr srcdir?= ${.CURDIR} -DEFAULT_SYS_PATH?= .../share/mk:${prefix}/share/mk +DEFAULT_SYS_PATH?= ${prefix}/share/mk CPPFLAGS+= -DUSE_META CFLAGS+= ${CPPFLAGS} Modified: head/contrib/bmake/Makefile.config.in ============================================================================== --- head/contrib/bmake/Makefile.config.in Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/Makefile.config.in Mon Jan 27 17:47:21 2014 (r261212) @@ -14,3 +14,7 @@ LIBOBJS= @LIBOBJS@ LDADD= @LIBS@ USE_META= @use_meta@ FILEMON_H= @filemon_h@ +BMAKE_PATH_MAX?= @bmake_path_max@ +# used if MAXPATHLEN not defined +CPPFLAGS+= -DBMAKE_PATH_MAX=${BMAKE_PATH_MAX} + Modified: head/contrib/bmake/bmake.1 ============================================================================== --- head/contrib/bmake/bmake.1 Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/bmake.1 Mon Jan 27 17:47:21 2014 (r261212) @@ -1,4 +1,4 @@ -.\" $NetBSD: make.1,v 1.222 2013/08/11 09:53:49 apb Exp $ +.\" $NetBSD: make.1,v 1.226 2013/11/07 18:50:46 dholland Exp $ .\" .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. @@ -29,7 +29,7 @@ .\" .\" from: @(#)make.1 8.4 (Berkeley) 3/19/94 .\" -.Dd August 11, 2013 +.Dd October 25, 2013 .Dt MAKE 1 .Os .Sh NAME @@ -745,7 +745,7 @@ then output for each target is prefixed .Ql --- target --- the first part of which can be controlled via .Va .MAKE.JOB.PREFIX . -If +If .Va .MAKE.JOB.PREFIX is empty, no token is printed. .br @@ -1066,6 +1066,13 @@ may be used. The wildcard characters may be escaped with a backslash .Pq Ql \e . +As a consequence of the way values are split into words, matched, +and then joined, a construct like +.Dl ${VAR:M*} +will normalise the inter-word spacing, removing all leading and +trailing space, and converting multiple consecutive spaces +to single spaces. +. .It Cm \&:N Ns Ar pattern This is identical to .Ql Cm \&:M , @@ -1209,7 +1216,7 @@ The modifier is just like the .Cm \&:S modifier except that the old and new strings, instead of being -simple strings, are a regular expression (see +simple strings, are an extended regular expression (see .Xr regex 3 ) string .Ar pattern @@ -1751,7 +1758,7 @@ or .Fl t options were specified. Normally used to mark recursive -.Nm Ns 's . +.Nm Ns s . .It Ic .META Create a meta file for the target, even if it is flagged as .Ic .PHONY , Modified: head/contrib/bmake/bmake.cat1 ============================================================================== --- head/contrib/bmake/bmake.cat1 Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/bmake.cat1 Mon Jan 27 17:47:21 2014 (r261212) @@ -690,7 +690,13 @@ VVAARRIIAABBLLEE AASSSSIIGG ::MM_p_a_t_t_e_r_n Select only those words that match _p_a_t_t_e_r_n. The standard shell wildcard characters (`*', `?', and `[]') may be used. The wildcard - characters may be escaped with a backslash (`\'). + characters may be escaped with a backslash (`\'). As a consequence + of the way values are split into words, matched, and then joined, a + construct like + ${VAR:M*} + will normalise the inter-word spacing, removing all leading and + trailing space, and converting multiple consecutive spaces to single + spaces. ::NN_p_a_t_t_e_r_n This is identical to `::MM', but selects all words which do not match @@ -777,18 +783,18 @@ VVAARRIIAABBLLEE AASSSSIIGG ::CC/_p_a_t_t_e_r_n/_r_e_p_l_a_c_e_m_e_n_t/[11ggWW] The ::CC modifier is just like the ::SS modifier except that the old and - new strings, instead of being simple strings, are a regular expres- - sion (see regex(3)) string _p_a_t_t_e_r_n and an ed(1)-style string - _r_e_p_l_a_c_e_m_e_n_t. Normally, the first occurrence of the pattern _p_a_t_t_e_r_n - in each word of the value is substituted with _r_e_p_l_a_c_e_m_e_n_t. The `1' - modifier causes the substitution to apply to at most one word; the - `g' modifier causes the substitution to apply to as many instances - of the search pattern _p_a_t_t_e_r_n as occur in the word or words it is - found in; the `W' modifier causes the value to be treated as a sin- - gle word (possibly containing embedded white space). Note that `1' - and `g' are orthogonal; the former specifies whether multiple words - are potentially affected, the latter whether multiple substitutions - can potentially occur within each affected word. + new strings, instead of being simple strings, are an extended regu- + lar expression (see regex(3)) string _p_a_t_t_e_r_n and an ed(1)-style + string _r_e_p_l_a_c_e_m_e_n_t. Normally, the first occurrence of the pattern + _p_a_t_t_e_r_n in each word of the value is substituted with _r_e_p_l_a_c_e_m_e_n_t. + The `1' modifier causes the substitution to apply to at most one + word; the `g' modifier causes the substitution to apply to as many + instances of the search pattern _p_a_t_t_e_r_n as occur in the word or + words it is found in; the `W' modifier causes the value to be + treated as a single word (possibly containing embedded white space). + Note that `1' and `g' are orthogonal; the former specifies whether + multiple words are potentially affected, the latter whether multiple + substitutions can potentially occur within each affected word. ::TT Replaces each word in the variable with its last component. @@ -1107,7 +1113,7 @@ SSPPEECCIIAALL SSOOUURRCCEE ..MMAAKKEE Execute the commands associated with this target even if the --nn or --tt options were specified. Normally used to mark recursive - bbmmaakkee's. + bbmmaakkees. ..MMEETTAA Create a meta file for the target, even if it is flagged as ..PPHHOONNYY, ..MMAAKKEE, or ..SSPPEECCIIAALL. Usage in conjunction with ..MMAAKKEE is @@ -1378,4 +1384,4 @@ BBUUGGSS There is no way of escaping a space character in a filename. -NetBSD 5.1 August 11, 2013 NetBSD 5.1 +NetBSD 5.1 October 25, 2013 NetBSD 5.1 Modified: head/contrib/bmake/boot-strap ============================================================================== --- head/contrib/bmake/boot-strap Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/boot-strap Mon Jan 27 17:47:21 2014 (r261212) @@ -111,7 +111,7 @@ # Simon J. Gerraty # RCSid: -# $Id: boot-strap,v 1.43 2013/03/02 18:55:23 sjg Exp $ +# $Id: boot-strap,v 1.44 2014/01/08 14:49:10 sjg Exp $ # # @(#) Copyright (c) 2001 Simon J. Gerraty # @@ -216,11 +216,9 @@ do --share=*) share_dir=`get_optarg "$1"`;; --share) share_dir="$2"; shift;; --with-default-sys-path=*) - CONFIGURE_ARGS="$1" - MAKESYSPATH=`get_optarg "$1"`;; + CONFIGURE_ARGS="$1";; --with-default-sys-path) - CONFIGURE_ARGS="$1 $2" - MAKESYSPATH="$2"; shift;; + CONFIGURE_ARGS="$1 $2";; --install) INSTALL_PREFIX=${INSTALL_PREFIX:-$prefix};; --install-host-target) INSTALL_PREFIX=${INSTALL_PREFIX:-$prefix} @@ -330,8 +328,8 @@ add_path () { srcdir=`GetDir /bmake make-bootstrap.sh.in "$srcdir" "$2" "$Mydir" ./bmake* "$Mydir"/../bmake*` [ -d "${srcdir:-/dev/null}" ] || Usage case "$mksrc" in -none|-) # we don't want it - mksrc= +none|-) # we ignore this now + mksrc=$Mydir/mk ;; .../*) # find here or above mksrc=`FindHereOrAbove -C "$Mydir" -s "$mksrc/sys.mk"` Modified: head/contrib/bmake/compat.c ============================================================================== --- head/contrib/bmake/compat.c Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/compat.c Mon Jan 27 17:47:21 2014 (r261212) @@ -1,4 +1,4 @@ -/* $NetBSD: compat.c,v 1.93 2013/09/02 19:26:42 sjg Exp $ */ +/* $NetBSD: compat.c,v 1.94 2014/01/03 00:02:01 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990 The Regents of the University of California. @@ -70,14 +70,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: compat.c,v 1.93 2013/09/02 19:26:42 sjg Exp $"; +static char rcsid[] = "$NetBSD: compat.c,v 1.94 2014/01/03 00:02:01 sjg Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)compat.c 8.2 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: compat.c,v 1.93 2013/09/02 19:26:42 sjg Exp $"); +__RCSID("$NetBSD: compat.c,v 1.94 2014/01/03 00:02:01 sjg Exp $"); #endif #endif /* not lint */ #endif @@ -133,7 +133,7 @@ Compat_Init(void) Shell_Init(); /* setup default shell */ - for (cp = "#=|^(){};&<>*?[]:$`\\\n"; *cp != '\0'; cp++) { + for (cp = "~#=|^(){};&<>*?[]:$`\\\n"; *cp != '\0'; cp++) { meta[(unsigned char) *cp] = 1; } /* Modified: head/contrib/bmake/configure ============================================================================== Binary file (source and/or target). No diff available. Modified: head/contrib/bmake/configure.in ============================================================================== --- head/contrib/bmake/configure.in Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/configure.in Mon Jan 27 17:47:21 2014 (r261212) @@ -1,10 +1,11 @@ dnl dnl RCSid: -dnl $Id: configure.in,v 1.49 2013/07/06 18:25:19 sjg Exp $ +dnl $Id: configure.in,v 1.51 2014/01/02 22:20:52 sjg Exp $ dnl dnl Process this file with autoconf to produce a configure script dnl -AC_INIT([bmake], [20130706], [sjg@NetBSD.org]) +AC_PREREQ(2.50) +AC_INIT([bmake], [20140101], [sjg@NetBSD.org]) AC_CONFIG_HEADER(config.h) dnl make srcdir absolute @@ -77,7 +78,18 @@ AC_PROG_GCC_TRADITIONAL AC_PROG_INSTALL dnl Executable suffix - normally empty; .exe on os2. AC_SUBST(ac_exe_suffix)dnl - +dnl +dnl Hurd refuses to define PATH_MAX or MAXPATHLEN +if test -x /usr/bin/getconf; then + bmake_path_max=`getconf PATH_MAX / 2> /dev/null` +fi +bmake_path_max=${bmake_path_max:-1024} +if test $bmake_path_max -gt 1024; then + # this is all we expect + bmake_path_max=1024 +fi +echo "Using: BMAKE_PATH_MAX=$bmake_path_max" >&6 +AC_SUBST(bmake_path_max)dnl dnl dnl AC_C_CROSS dnl @@ -98,6 +110,7 @@ AC_CHECK_HEADERS( \ sys/mman.h \ sys/select.h \ sys/socket.h \ + sys/sysctl.h \ sys/time.h \ sys/uio.h \ unistd.h \ @@ -159,6 +172,7 @@ AC_CHECK_FUNCS( \ strsep \ strtod \ strtol \ + sysctl \ unsetenv \ vsnprintf \ wait3 \ Modified: head/contrib/bmake/hash.c ============================================================================== --- head/contrib/bmake/hash.c Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/hash.c Mon Jan 27 17:47:21 2014 (r261212) @@ -1,4 +1,4 @@ -/* $NetBSD: hash.c,v 1.19 2009/01/24 10:59:09 dsl Exp $ */ +/* $NetBSD: hash.c,v 1.20 2013/11/14 00:27:05 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990 The Regents of the University of California. @@ -70,14 +70,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: hash.c,v 1.19 2009/01/24 10:59:09 dsl Exp $"; +static char rcsid[] = "$NetBSD: hash.c,v 1.20 2013/11/14 00:27:05 sjg Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)hash.c 8.1 (Berkeley) 6/6/93"; #else -__RCSID("$NetBSD: hash.c,v 1.19 2009/01/24 10:59:09 dsl Exp $"); +__RCSID("$NetBSD: hash.c,v 1.20 2013/11/14 00:27:05 sjg Exp $"); #endif #endif /* not lint */ #endif Modified: head/contrib/bmake/lst.lib/lstMember.c ============================================================================== --- head/contrib/bmake/lst.lib/lstMember.c Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/lst.lib/lstMember.c Mon Jan 27 17:47:21 2014 (r261212) @@ -1,4 +1,4 @@ -/* $NetBSD: lstMember.c,v 1.13 2009/01/23 21:26:30 dsl Exp $ */ +/* $NetBSD: lstMember.c,v 1.14 2013/11/14 00:01:28 sjg Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -33,14 +33,14 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: lstMember.c,v 1.13 2009/01/23 21:26:30 dsl Exp $"; +static char rcsid[] = "$NetBSD: lstMember.c,v 1.14 2013/11/14 00:01:28 sjg Exp $"; #else #include #ifndef lint #if 0 static char sccsid[] = "@(#)lstMember.c 8.1 (Berkeley) 6/6/93"; #else -__RCSID("$NetBSD: lstMember.c,v 1.13 2009/01/23 21:26:30 dsl Exp $"); +__RCSID("$NetBSD: lstMember.c,v 1.14 2013/11/14 00:01:28 sjg Exp $"); #endif #endif /* not lint */ #endif Modified: head/contrib/bmake/main.c ============================================================================== --- head/contrib/bmake/main.c Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/main.c Mon Jan 27 17:47:21 2014 (r261212) @@ -1,4 +1,4 @@ -/* $NetBSD: main.c,v 1.224 2013/09/04 15:38:26 sjg Exp $ */ +/* $NetBSD: main.c,v 1.225 2013/09/14 15:09:34 matt Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -69,7 +69,7 @@ */ #ifndef MAKE_NATIVE -static char rcsid[] = "$NetBSD: main.c,v 1.224 2013/09/04 15:38:26 sjg Exp $"; +static char rcsid[] = "$NetBSD: main.c,v 1.225 2013/09/14 15:09:34 matt Exp $"; #else #include #ifndef lint @@ -81,7 +81,7 @@ __COPYRIGHT("@(#) Copyright (c) 1988, 19 #if 0 static char sccsid[] = "@(#)main.c 8.3 (Berkeley) 3/19/94"; #else -__RCSID("$NetBSD: main.c,v 1.224 2013/09/04 15:38:26 sjg Exp $"); +__RCSID("$NetBSD: main.c,v 1.225 2013/09/14 15:09:34 matt Exp $"); #endif #endif /* not lint */ #endif @@ -118,6 +118,9 @@ __RCSID("$NetBSD: main.c,v 1.224 2013/09 #include #include #include +#if defined(MAKE_NATIVE) && defined(HAVE_SYSCTL) +#include +#endif #include #include "wait.h" @@ -145,6 +148,10 @@ __RCSID("$NetBSD: main.c,v 1.224 2013/09 #define DEFMAXLOCAL DEFMAXJOBS #endif /* DEFMAXLOCAL */ +#ifndef __arraycount +# define __arraycount(__x) (sizeof(__x) / sizeof(__x[0])) +#endif + Lst create; /* Targets to be made */ time_t now; /* Time at start of make */ GNode *DEFAULT; /* .DEFAULT node */ @@ -910,6 +917,20 @@ main(int argc, char **argv) } if (!machine_arch) { +#if defined(MAKE_NATIVE) && defined(HAVE_SYSCTL) && defined(CTL_HW) && defined(HW_MACHINE_ARCH) + static char machine_arch_buf[sizeof(utsname.machine)]; + int mib[2] = { CTL_HW, HW_MACHINE_ARCH }; + size_t len = sizeof(machine_arch_buf); + + if (sysctl(mib, __arraycount(mib), machine_arch_buf, + &len, NULL, 0) < 0) { + (void)fprintf(stderr, "%s: sysctl failed (%s).\n", progname, + strerror(errno)); + exit(2); + } + + machine_arch = machine_arch_buf; +#else #ifndef MACHINE_ARCH #ifdef MAKE_MACHINE_ARCH machine_arch = MAKE_MACHINE_ARCH; @@ -919,6 +940,7 @@ main(int argc, char **argv) #else machine_arch = MACHINE_ARCH; #endif +#endif } myPid = getpid(); /* remember this for vFork() */ Modified: head/contrib/bmake/make-bootstrap.sh.in ============================================================================== --- head/contrib/bmake/make-bootstrap.sh.in Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/make-bootstrap.sh.in Mon Jan 27 17:47:21 2014 (r261212) @@ -11,7 +11,7 @@ yes) XDEFS="-DUSE_META ${XDEFS}";; esac CC="@CC@" -CFLAGS="@CFLAGS@ -I. -I${srcdir} @DEFS@ @CPPFLAGS@ -DMAKE_NATIVE ${XDEFS}" +CFLAGS="@CFLAGS@ -I. -I${srcdir} @DEFS@ @CPPFLAGS@ -DMAKE_NATIVE ${XDEFS} -DBMAKE_PATH_MAX=@bmake_path_max@" MAKE_VERSION=`sed -n '/^MAKE_VERSION=/s,.*=[^0-9]*,,p' $srcdir/Makefile` Modified: head/contrib/bmake/make.1 ============================================================================== --- head/contrib/bmake/make.1 Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/make.1 Mon Jan 27 17:47:21 2014 (r261212) @@ -1,4 +1,4 @@ -.\" $NetBSD: make.1,v 1.222 2013/08/11 09:53:49 apb Exp $ +.\" $NetBSD: make.1,v 1.226 2013/11/07 18:50:46 dholland Exp $ .\" .\" Copyright (c) 1990, 1993 .\" The Regents of the University of California. All rights reserved. @@ -29,7 +29,7 @@ .\" .\" from: @(#)make.1 8.4 (Berkeley) 3/19/94 .\" -.Dd August 11, 2013 +.Dd October 25, 2013 .Dt MAKE 1 .Os .Sh NAME @@ -756,7 +756,7 @@ then output for each target is prefixed .Ql --- target --- the first part of which can be controlled via .Va .MAKE.JOB.PREFIX . -If +If .Va .MAKE.JOB.PREFIX is empty, no token is printed. .br @@ -1077,6 +1077,13 @@ may be used. The wildcard characters may be escaped with a backslash .Pq Ql \e . +As a consequence of the way values are split into words, matched, +and then joined, a construct like +.Dl ${VAR:M*} +will normalise the inter-word spacing, removing all leading and +trailing space, and converting multiple consecutive spaces +to single spaces. +. .It Cm \&:N Ns Ar pattern This is identical to .Ql Cm \&:M , @@ -1220,7 +1227,7 @@ The modifier is just like the .Cm \&:S modifier except that the old and new strings, instead of being -simple strings, are a regular expression (see +simple strings, are an extended regular expression (see .Xr regex 3 ) string .Ar pattern @@ -1762,7 +1769,7 @@ or .Fl t options were specified. Normally used to mark recursive -.Nm Ns 's . +.Nm Ns s . .It Ic .META Create a meta file for the target, even if it is flagged as .Ic .PHONY , Modified: head/contrib/bmake/make.h ============================================================================== --- head/contrib/bmake/make.h Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/make.h Mon Jan 27 17:47:21 2014 (r261212) @@ -518,4 +518,8 @@ int str2Lst_Append(Lst, char *, const ch #define MAX(a, b) ((a > b) ? a : b) #endif +#ifndef MAXPATHLEN +#define MAXPATHLEN BMAKE_PATH_MAX +#endif + #endif /* _MAKE_H_ */ Modified: head/contrib/bmake/meta.c ============================================================================== --- head/contrib/bmake/meta.c Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/meta.c Mon Jan 27 17:47:21 2014 (r261212) @@ -1,4 +1,4 @@ -/* $NetBSD: meta.c,v 1.32 2013/06/25 00:20:54 sjg Exp $ */ +/* $NetBSD: meta.c,v 1.33 2013/10/01 05:37:17 sjg Exp $ */ /* * Implement 'meta' mode. @@ -860,6 +860,13 @@ string_match(const void *p, const void * continue; \ } +#define DEQUOTE(p) if (*p == '\'') { \ + char *ep; \ + p++; \ + if ((ep = strchr(p, '\''))) \ + *ep = '\0'; \ + } + Boolean meta_oodate(GNode *gn, Boolean oodate) { @@ -872,6 +879,8 @@ meta_oodate(GNode *gn, Boolean oodate) char fname2[MAXPATHLEN]; char *p; char *cp; + char *link_src; + char *move_target; static size_t cwdlen = 0; static size_t tmplen = 0; FILE *fp; @@ -938,6 +947,8 @@ meta_oodate(GNode *gn, Boolean oodate) oodate = TRUE; break; } + link_src = NULL; + move_target = NULL; /* Find the start of the build monitor section. */ if (!f) { if (strncmp(buf, "-- filemon", 10) == 0) { @@ -1051,16 +1062,21 @@ meta_oodate(GNode *gn, Boolean oodate) break; case 'M': /* renaMe */ - if (Lst_IsEmpty(missingFiles)) - break; + /* + * For 'M'oves we want to check + * the src as for 'R'ead + * and the target as for 'W'rite. + */ + cp = p; /* save this for a second */ + /* now get target */ + if (strsep(&p, " ") == NULL) + continue; + CHECK_VALID_META(p); + move_target = p; + p = cp; /* 'L' and 'M' put single quotes around the args */ - if (*p == '\'') { - char *ep; - - p++; - if ((ep = strchr(p, '\''))) - *ep = '\0'; - } + DEQUOTE(p); + DEQUOTE(move_target); /* FALLTHROUGH */ case 'D': /* unlink */ if (*p == '/' && !Lst_IsEmpty(missingFiles)) { @@ -1072,22 +1088,39 @@ meta_oodate(GNode *gn, Boolean oodate) ln = NULL; /* we're done with it */ } } + if (buf[0] == 'M') { + /* the target of the mv is a file 'W'ritten */ +#ifdef DEBUG_META_MODE + if (DEBUG(META)) + fprintf(debug_file, "meta_oodate: M %s -> %s\n", + p, move_target); +#endif + p = move_target; + goto check_write; + } break; case 'L': /* Link */ - /* we want the target */ + /* + * For 'L'inks check + * the src as for 'R'ead + * and the target as for 'W'rite. + */ + link_src = p; + /* now get target */ if (strsep(&p, " ") == NULL) continue; CHECK_VALID_META(p); /* 'L' and 'M' put single quotes around the args */ - if (*p == '\'') { - char *ep; - - p++; - if ((ep = strchr(p, '\''))) - *ep = '\0'; - } + DEQUOTE(p); + DEQUOTE(link_src); +#ifdef DEBUG_META_MODE + if (DEBUG(META)) + fprintf(debug_file, "meta_oodate: L %s -> %s\n", + link_src, p); +#endif /* FALLTHROUGH */ case 'W': /* Write */ + check_write: /* * If a file we generated within our bailiwick * but outside of .OBJDIR is missing, @@ -1119,6 +1152,14 @@ meta_oodate(GNode *gn, Boolean oodate) Lst_AtEnd(missingFiles, bmake_strdup(p)); } break; + check_link_src: + p = link_src; + link_src = NULL; +#ifdef DEBUG_META_MODE + if (DEBUG(META)) + fprintf(debug_file, "meta_oodate: L src %s\n", p); +#endif + /* FALLTHROUGH */ case 'R': /* Read */ case 'E': /* Exec */ /* @@ -1213,6 +1254,8 @@ meta_oodate(GNode *gn, Boolean oodate) default: break; } + if (!oodate && buf[0] == 'L' && link_src != NULL) + goto check_link_src; } else if (strcmp(buf, "CMD") == 0) { /* * Compare the current command with the one in the Modified: head/contrib/bmake/mk/ChangeLog ============================================================================== --- head/contrib/bmake/mk/ChangeLog Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/mk/ChangeLog Mon Jan 27 17:47:21 2014 (r261212) @@ -1,3 +1,22 @@ +2013-12-12 Simon J. Gerraty + + * install-mk (MK_VERSION): bump version + * meta2deps.py: convert to print function for python3 compat. + we also need to open files with mode 'r' rather than 'rb' + otherwise we get bytes instead of strings. + +2013-10-10 Simon J. Gerraty + + * install-mk (MK_VERSION): bump version + + * dirdeps.mk: when TARGET_SPEC_VARS is more than just MACHINE + apply the same filtering (M_dep_qual_fixes) when setting _machines + as _build_dirs. + Also fix the filtering of Makefile.depend files - for reporting + what we are looking for (M_dep_qual_fixes can get confused by + Makefile.depend) + Add some more debug info. + 2013-09-04 Simon J. Gerraty * gendirdeps.mk (_objtops): fix typo also Modified: head/contrib/bmake/mk/dirdeps.mk ============================================================================== --- head/contrib/bmake/mk/dirdeps.mk Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/mk/dirdeps.mk Mon Jan 27 17:47:21 2014 (r261212) @@ -1,4 +1,4 @@ -# $Id: dirdeps.mk,v 1.28 2013/03/25 21:11:43 sjg Exp $ +# $Id: dirdeps.mk,v 1.29 2013/10/13 18:43:53 sjg Exp $ # Copyright (c) 2010-2013, Juniper Networks, Inc. # All rights reserved. @@ -149,11 +149,11 @@ DEP_$v ?= ${$v} JOT ?= jot _tspec_x := ${${JOT} ${TARGET_SPEC_VARS:[#]}:L:sh} # this handles unqualified entries -M_dep_qual_fixes = C;(/[^/.,]+)$$;\1.${DEP_TARGET_SPEC}; +M_dep_qual_fixes = C;(/[^/.,]+)$$;\1.$${DEP_TARGET_SPEC}; # there needs to be at least one item missing for these to make sense .for i in ${_tspec_x:[2..-1]} _tspec_m$i := ${TARGET_SPEC_VARS:[2..$i]:@w@[^,]+@:ts,} -_tspec_a$i := ,${TARGET_SPEC_VARS:[$i..-1]:@v@$${DEP_$v}@:ts,} +_tspec_a$i := ,${TARGET_SPEC_VARS:[$i..-1]:@v@$$$${DEP_$v}@:ts,} M_dep_qual_fixes += C;(\.${_tspec_m$i})$$;\1${_tspec_a$i}; .endfor .else @@ -359,7 +359,8 @@ _machines := ${_machines:O:u} .if ${TARGET_SPEC_VARS:[#]} > 1 # we need to tweak _machines _dm := ${DEP_MACHINE} -_machines := ${_machines:@DEP_MACHINE@${DEP_TARGET_SPEC}@} +# apply the same filtering that we do when qualifying DIRDEPS. +_machines := ${_machines:@DEP_MACHINE@${DEP_TARGET_SPEC}@:${M_dep_qual_fixes:ts:}:O:u} DEP_MACHINE := ${_dm} .endif @@ -464,6 +465,9 @@ ${_this_dir}.$m: ${_build_dirs:M*.$m:N${ .if ${_DIRDEP_CHECKED:M$d} == "" # once only _DIRDEP_CHECKED += $d +.if !empty(_debug_search) +.info checking $d +.endif # Note: _build_dirs is fully qualifed so d:R is always the directory .if exists(${d:R}) # Warning: there is an assumption here that MACHINE is always @@ -471,7 +475,8 @@ _DIRDEP_CHECKED += $d # If TARGET_SPEC and MACHINE are insufficient, you have a problem. _m := ${.MAKE.DEPENDFILE_PREFERENCE:T:S;${TARGET_SPEC}$;${d:E};:S;${MACHINE};${d:E:C/,.*//};:@m@${exists(${d:R}/$m):?${d:R}/$m:}@:[1]} .if !empty(_m) -_qm := ${_m:${M_dep_qual_fixes:ts:}} +# M_dep_qual_fixes isn't geared to Makefile.depend +_qm := ${_m:C;(\.depend)$;\1.${d:E};:${M_dep_qual_fixes:ts:}} .if !empty(_debug_search) .info Looking for ${_qm} .endif Modified: head/contrib/bmake/mk/install-mk ============================================================================== --- head/contrib/bmake/mk/install-mk Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/mk/install-mk Mon Jan 27 17:47:21 2014 (r261212) @@ -55,7 +55,7 @@ # Simon J. Gerraty # RCSid: -# $Id: install-mk,v 1.93 2013/08/02 18:28:47 sjg Exp $ +# $Id: install-mk,v 1.95 2013/12/20 06:08:52 sjg Exp $ # # @(#) Copyright (c) 1994 Simon J. Gerraty # @@ -70,7 +70,7 @@ # sjg@crufty.net # -MK_VERSION=20130801 +MK_VERSION=20131212 OWNER= GROUP= MODE=444 Modified: head/contrib/bmake/mk/meta2deps.py ============================================================================== --- head/contrib/bmake/mk/meta2deps.py Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/mk/meta2deps.py Mon Jan 27 17:47:21 2014 (r261212) @@ -1,5 +1,7 @@ #!/usr/bin/env python +from __future__ import print_function + """ This script parses each "meta" file and extracts the information needed to deduce build and src dependencies. @@ -35,7 +37,7 @@ We only pay attention to a subset of the """ RCSid: - $Id: meta2deps.py,v 1.15 2013/07/29 20:41:23 sjg Exp $ + $Id: meta2deps.py,v 1.16 2013/12/20 06:08:52 sjg Exp $ Copyright (c) 2011-2013, Juniper Networks, Inc. All rights reserved. @@ -90,14 +92,14 @@ def resolve(path, cwd, last_dir=None, de continue p = '/'.join([d,path]) if debug > 2: - print >> debug_out, "looking for:", p, + print("looking for:", p, end=' ', file=debug_out) if not os.path.exists(p): if debug > 2: - print >> debug_out, "nope" + print("nope", file=debug_out) p = None continue if debug > 2: - print >> debug_out, "found:", p + print("found:", p, file=debug_out) return p return None @@ -236,21 +238,21 @@ class MetaFile: self.objroots.sort(reverse=True) if self.debug: - print >> self.debug_out, "host_target=", self.host_target - print >> self.debug_out, "srctops=", self.srctops - print >> self.debug_out, "objroots=", self.objroots + print("host_target=", self.host_target, file=self.debug_out) + print("srctops=", self.srctops, file=self.debug_out) + print("objroots=", self.objroots, file=self.debug_out) self.dirdep_re = re.compile(r'([^/]+)/(.+)') if self.dpdeps and not self.reldir: if self.debug: - print >> self.debug_out, "need reldir:", + print("need reldir:", end=' ', file=self.debug_out) if self.curdir: srctop = self.find_top(self.curdir, self.srctops) if srctop: self.reldir = self.curdir.replace(srctop,'') if self.debug: - print >> self.debug_out, self.reldir + print(self.reldir, file=self.debug_out) if not self.reldir: self.dpdeps = None # we cannot do it? @@ -280,7 +282,7 @@ class MetaFile: if not self.reldir: return None for f in sort_unique(self.file_deps): - print >> out, 'DPDEPS_%s += %s' % (f, self.reldir) + print('DPDEPS_%s += %s' % (f, self.reldir), file=out) def seenit(self, dir): """rememer that we have seen dir.""" @@ -291,14 +293,14 @@ class MetaFile: if data not in list: list.append(data) if self.debug: - print >> self.debug_out, "%s: %sAdd: %s" % (self.name, clue, data) + print("%s: %sAdd: %s" % (self.name, clue, data), file=self.debug_out) def find_top(self, path, list): """the logical tree may be split accross multiple trees""" for top in list: if path.startswith(top): if self.debug > 2: - print >> self.debug_out, "found in", top + print("found in", top, file=self.debug_out) return top return None @@ -307,9 +309,9 @@ class MetaFile: ddep = None for ddepf in [path + '.dirdep', dir + '/.dirdep']: if not ddep and os.path.exists(ddepf): - ddep = open(ddepf, 'rb').readline().strip('# \n') + ddep = open(ddepf, 'r').readline().strip('# \n') if self.debug > 1: - print >> self.debug_out, "found %s: %s\n" % (ddepf, ddep) + print("found %s: %s\n" % (ddepf, ddep), file=self.debug_out) if ddep.endswith(self.machine): ddep = ddep[0:-(1+len(self.machine))] elif self.target_spec and ddep.endswith(self.target_spec): @@ -331,7 +333,7 @@ class MetaFile: if not (self.machine == 'host' and dmachine == self.host_target): if self.debug > 2: - print >> self.debug_out, "adding .%s to %s" % (dmachine, ddep) + print("adding .%s to %s" % (dmachine, ddep), file=self.debug_out) ddep += '.' + dmachine return ddep @@ -342,7 +344,7 @@ class MetaFile: self.parse(name, file) except: # give a useful clue - print >> sys.stderr, '{}:{}: '.format(self.name, self.line), + print('{}:{}: '.format(self.name, self.line), end=' ', file=sys.stderr) raise def parse(self, name=None, file=None): @@ -379,7 +381,7 @@ class MetaFile: f = file cwd = last_dir = self.cwd else: - f = open(self.name, 'rb') + f = open(self.name, 'r') skip = True pid_cwd = {} pid_last_dir = {} @@ -396,7 +398,7 @@ class MetaFile: if not line[0] in interesting: continue if self.debug > 2: - print >> self.debug_out, "input:", line, + print("input:", line, end=' ', file=self.debug_out) w = line.split() if skip: @@ -413,7 +415,7 @@ class MetaFile: self.cwd = cwd = last_dir = w[1] self.seenit(cwd) # ignore this if self.debug: - print >> self.debug_out, "%s: CWD=%s" % (self.name, cwd) + print("%s: CWD=%s" % (self.name, cwd), file=self.debug_out) continue pid = int(w[1]) @@ -438,12 +440,12 @@ class MetaFile: cwd = cwd[0:-2] last_dir = cwd if self.debug > 1: - print >> self.debug_out, "cwd=", cwd + print("cwd=", cwd, file=self.debug_out) continue if w[2] in self.seen: if self.debug > 2: - print >> self.debug_out, "seen:", w[2] + print("seen:", w[2], file=self.debug_out) continue # file operations if w[0] in 'ML': @@ -461,7 +463,7 @@ class MetaFile: dir,base = os.path.split(path) if dir in self.seen: if self.debug > 2: - print >> self.debug_out, "seen:", dir + print("seen:", dir, file=self.debug_out) continue # we can have a path in an objdir which is a link # to the src dir, we may need to add dependencies for each @@ -472,19 +474,19 @@ class MetaFile: # now put path back together path = '/'.join([dir,base]) if self.debug > 1: - print >> self.debug_out, "raw=%s rdir=%s dir=%s path=%s" % (w[2], rdir, dir, path) + print("raw=%s rdir=%s dir=%s path=%s" % (w[2], rdir, dir, path), file=self.debug_out) if w[0] in 'SRWL': if w[0] == 'W' and path.endswith('.dirdep'): continue if path in [last_dir, cwd, self.cwd, self.curdir]: if self.debug > 1: - print >> self.debug_out, "skipping:", path + print("skipping:", path, file=self.debug_out) continue if os.path.isdir(path): if w[0] in 'RW': last_dir = path; if self.debug > 1: - print >> self.debug_out, "ldir=", last_dir + print("ldir=", last_dir, file=self.debug_out) continue if w[0] in 'REWML': @@ -642,10 +644,10 @@ def main(argv, klass=MetaFile, xopts='', debug_out = getv(conf, 'debug_out', sys.stderr) if debug: - print >> debug_out, "config:" - print >> debug_out, "psyco=", have_psyco - for k,v in conf.items(): - print >> debug_out, "%s=%s" % (k,v) + print("config:", file=debug_out) + print("psyco=", have_psyco, file=debug_out) + for k,v in list(conf.items()): + print("%s=%s" % (k,v), file=debug_out) for a in args: if a.endswith('.meta'): @@ -657,9 +659,9 @@ def main(argv, klass=MetaFile, xopts='', m = klass(f, conf) if output: - print m.dirdeps() + print(m.dirdeps()) - print m.src_dirdeps('\nsrc:') + print(m.src_dirdeps('\nsrc:')) dpdeps = getv(conf, 'DPDEPS') if dpdeps: @@ -672,6 +674,6 @@ if __name__ == '__main__': main(sys.argv) except: # yes, this goes to stdout - print "ERROR: ", sys.exc_info()[1] + print("ERROR: ", sys.exc_info()[1]) raise Modified: head/contrib/bmake/parse.c ============================================================================== --- head/contrib/bmake/parse.c Mon Jan 27 17:31:21 2014 (r261211) +++ head/contrib/bmake/parse.c Mon Jan 27 17:47:21 2014 (r261212) @@ -1,4 +1,4 @@ -/* $NetBSD: parse.c,v 1.191 2013/08/28 21:56:49 sjg Exp $ */ +/* $NetBSD: parse.c,v 1.192 2013/10/18 20:47:06 christos Exp $ */ /* * Copyright (c) 1988, 1989, 1990, 1993 @@ -69,14 +69,14 @@ */ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 18:53:19 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6F2B3714; Mon, 27 Jan 2014 18:53:19 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5A93F159D; Mon, 27 Jan 2014 18:53:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0RIrJ4c046982; Mon, 27 Jan 2014 18:53:19 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0RIrJ1m046981; Mon, 27 Jan 2014 18:53:19 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401271853.s0RIrJ1m046981@svn.freebsd.org> From: John Baldwin Date: Mon, 27 Jan 2014 18:53:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261213 - head/sys/amd64/amd64 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 18:53:19 -0000 Author: jhb Date: Mon Jan 27 18:53:18 2014 New Revision: 261213 URL: http://svnweb.freebsd.org/changeset/base/261213 Log: Add support for 'clac' and 'stac' to DDB's disassembler on amd64. Modified: head/sys/amd64/amd64/db_disasm.c Modified: head/sys/amd64/amd64/db_disasm.c ============================================================================== --- head/sys/amd64/amd64/db_disasm.c Mon Jan 27 17:47:21 2014 (r261212) +++ head/sys/amd64/amd64/db_disasm.c Mon Jan 27 18:53:18 2014 (r261213) @@ -1353,6 +1353,16 @@ db_disasm(loc, altfmt) i_size = NONE; i_mode = 0; break; + case 0xca: + i_name = "clac"; + i_size = NONE; + i_mode = 0; + break; + case 0xcb: + i_name = "stac"; + i_size = NONE; + i_mode = 0; + break; case 0xd0: i_name = "xgetbv"; i_size = NONE; From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 19:31:19 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0B70DF2; Mon, 27 Jan 2014 19:31:19 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id EB414190C; Mon, 27 Jan 2014 19:31:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0RJVIef062633; Mon, 27 Jan 2014 19:31:18 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0RJVIE8062632; Mon, 27 Jan 2014 19:31:18 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401271931.s0RJVIE8062632@svn.freebsd.org> From: Warner Losh Date: Mon, 27 Jan 2014 19:31:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261214 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 19:31:19 -0000 Author: imp Date: Mon Jan 27 19:31:18 2014 New Revision: 261214 URL: http://svnweb.freebsd.org/changeset/base/261214 Log: Remove extra parens to silence clang warning. Modified: head/sys/arm/arm/db_trace.c Modified: head/sys/arm/arm/db_trace.c ============================================================================== --- head/sys/arm/arm/db_trace.c Mon Jan 27 18:53:18 2014 (r261213) +++ head/sys/arm/arm/db_trace.c Mon Jan 27 19:31:18 2014 (r261214) @@ -269,7 +269,7 @@ db_unwind_exec_insn(struct unwind_state /* Stop processing */ state->entries = 0; - } else if ((insn == INSN_POP_REGS)) { + } else if (insn == INSN_POP_REGS) { unsigned int mask, reg; mask = db_unwind_exec_read_byte(state); From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 19:37:38 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DCAE9391; Mon, 27 Jan 2014 19:37:37 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BC24A1952; Mon, 27 Jan 2014 19:37:37 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0RJbbk6063449; Mon, 27 Jan 2014 19:37:37 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0RJbZPs063438; Mon, 27 Jan 2014 19:37:35 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401271937.s0RJbZPs063438@svn.freebsd.org> From: Warner Losh Date: Mon, 27 Jan 2014 19:37:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261215 - in head/contrib/dtc: . Documentation libfdt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 19:37:38 -0000 Author: imp Date: Mon Jan 27 19:37:35 2014 New Revision: 261215 URL: http://svnweb.freebsd.org/changeset/base/261215 Log: Merge from vendor branch importing dtc git rev 6a15eb2350426d285130e4c9d84c0bdb6575547a Modified: head/contrib/dtc/Documentation/manual.txt head/contrib/dtc/Makefile head/contrib/dtc/checks.c head/contrib/dtc/data.c head/contrib/dtc/dtc-lexer.l head/contrib/dtc/dtc-parser.y head/contrib/dtc/dtc.c head/contrib/dtc/dtc.h head/contrib/dtc/fdtdump.c head/contrib/dtc/fdtget.c head/contrib/dtc/fdtput.c head/contrib/dtc/flattree.c head/contrib/dtc/libfdt/Makefile.libfdt head/contrib/dtc/libfdt/fdt.c head/contrib/dtc/libfdt/fdt.h head/contrib/dtc/libfdt/fdt_ro.c head/contrib/dtc/libfdt/fdt_rw.c head/contrib/dtc/libfdt/fdt_sw.c head/contrib/dtc/libfdt/fdt_wip.c head/contrib/dtc/libfdt/libfdt.h head/contrib/dtc/libfdt/libfdt_env.h head/contrib/dtc/libfdt/version.lds head/contrib/dtc/livetree.c head/contrib/dtc/srcpos.c head/contrib/dtc/srcpos.h head/contrib/dtc/treesource.c head/contrib/dtc/util.c head/contrib/dtc/util.h Directory Properties: head/contrib/dtc/ (props changed) Modified: head/contrib/dtc/Documentation/manual.txt ============================================================================== --- head/contrib/dtc/Documentation/manual.txt Mon Jan 27 19:31:18 2014 (r261214) +++ head/contrib/dtc/Documentation/manual.txt Mon Jan 27 19:37:35 2014 (r261215) @@ -3,6 +3,7 @@ Device Tree Compiler Manual I - "dtc", the device tree compiler 1) Obtaining Sources + 1.1) Submitting Patches 2) Description 3) Command Line 4) Source File @@ -44,6 +45,10 @@ Tarballs of the 1.0.0 and latest release http://www.jdl.com/software/dtc-v1.2.0.tgz http://www.jdl.com/software/dtc-latest.tgz +1.1) Submitting Patches + +Patches should be sent to jdl@jdl.com, and CC'ed to +devicetree-discuss@lists.ozlabs.org. 2) Description Modified: head/contrib/dtc/Makefile ============================================================================== --- head/contrib/dtc/Makefile Mon Jan 27 19:31:18 2014 (r261214) +++ head/contrib/dtc/Makefile Mon Jan 27 19:37:35 2014 (r261215) @@ -9,7 +9,7 @@ # CONFIG_LOCALVERSION from some future config system. # VERSION = 1 -PATCHLEVEL = 3 +PATCHLEVEL = 4 SUBLEVEL = 0 EXTRAVERSION = LOCAL_VERSION = @@ -160,18 +160,26 @@ endif # intermediate target and building them again "for real" .SECONDARY: $(DTC_GEN_SRCS) $(CONVERT_GEN_SRCS) -install: all $(SCRIPTS) - @$(VECHO) INSTALL +install-bin: all $(SCRIPTS) + @$(VECHO) INSTALL-BIN $(INSTALL) -d $(DESTDIR)$(BINDIR) $(INSTALL) $(BIN) $(SCRIPTS) $(DESTDIR)$(BINDIR) + +install-lib: all + @$(VECHO) INSTALL-LIB $(INSTALL) -d $(DESTDIR)$(LIBDIR) $(INSTALL) $(LIBFDT_lib) $(DESTDIR)$(LIBDIR) ln -sf $(notdir $(LIBFDT_lib)) $(DESTDIR)$(LIBDIR)/$(LIBFDT_soname) ln -sf $(LIBFDT_soname) $(DESTDIR)$(LIBDIR)/libfdt.$(SHAREDLIB_EXT) $(INSTALL) -m 644 $(LIBFDT_archive) $(DESTDIR)$(LIBDIR) + +install-includes: + @$(VECHO) INSTALL-INC $(INSTALL) -d $(DESTDIR)$(INCLUDEDIR) $(INSTALL) -m 644 $(LIBFDT_include) $(DESTDIR)$(INCLUDEDIR) +install: install-bin install-lib install-includes + $(VERSION_FILE): Makefile FORCE $(call filechk,version) Modified: head/contrib/dtc/checks.c ============================================================================== --- head/contrib/dtc/checks.c Mon Jan 27 19:31:18 2014 (r261214) +++ head/contrib/dtc/checks.c Mon Jan 27 19:37:35 2014 (r261215) @@ -53,7 +53,7 @@ struct check { void *data; bool warn, error; enum checkstatus status; - int inprogress; + bool inprogress; int num_prereqs; struct check **prereq; }; @@ -141,9 +141,9 @@ static void check_nodes_props(struct che check_nodes_props(c, dt, child); } -static int run_check(struct check *c, struct node *dt) +static bool run_check(struct check *c, struct node *dt) { - int error = 0; + bool error = false; int i; assert(!c->inprogress); @@ -151,11 +151,11 @@ static int run_check(struct check *c, st if (c->status != UNCHECKED) goto out; - c->inprogress = 1; + c->inprogress = true; for (i = 0; i < c->num_prereqs; i++) { struct check *prq = c->prereq[i]; - error |= run_check(prq, dt); + error = error || run_check(prq, dt); if (prq->status != PASSED) { c->status = PREREQ; check_msg(c, "Failed prerequisite '%s'", @@ -177,9 +177,9 @@ static int run_check(struct check *c, st TRACE(c, "\tCompleted, status %d", c->status); out: - c->inprogress = 0; + c->inprogress = false; if ((c->status != PASSED) && (c->error)) - error = 1; + error = true; return error; } @@ -256,11 +256,15 @@ static void check_duplicate_property_nam { struct property *prop, *prop2; - for_each_property(node, prop) - for (prop2 = prop->next; prop2; prop2 = prop2->next) + for_each_property(node, prop) { + for (prop2 = prop->next; prop2; prop2 = prop2->next) { + if (prop2->deleted) + continue; if (streq(prop->name, prop2->name)) FAIL(c, "Duplicate property name %s in %s", prop->name, node->fullpath); + } + } } NODE_ERROR(duplicate_property_names, NULL); @@ -729,7 +733,7 @@ void parse_checks_option(bool warn, bool die("Unrecognized check name \"%s\"\n", name); } -void process_checks(int force, struct boot_info *bi) +void process_checks(bool force, struct boot_info *bi) { struct node *dt = bi->dt; int i; Modified: head/contrib/dtc/data.c ============================================================================== --- head/contrib/dtc/data.c Mon Jan 27 19:31:18 2014 (r261214) +++ head/contrib/dtc/data.c Mon Jan 27 19:37:35 2014 (r261215) @@ -250,20 +250,20 @@ struct data data_add_marker(struct data return data_append_markers(d, m); } -int data_is_one_string(struct data d) +bool data_is_one_string(struct data d) { int i; int len = d.len; if (len == 0) - return 0; + return false; for (i = 0; i < len-1; i++) if (d.val[i] == '\0') - return 0; + return false; if (d.val[len-1] != '\0') - return 0; + return false; - return 1; + return true; } Modified: head/contrib/dtc/dtc-lexer.l ============================================================================== --- head/contrib/dtc/dtc-lexer.l Mon Jan 27 19:31:18 2014 (r261214) +++ head/contrib/dtc/dtc-lexer.l Mon Jan 27 19:37:35 2014 (r261215) @@ -44,6 +44,7 @@ YY_BUFFER_STATE include_stack[MAX_INCLUD int include_stack_pointer = 0; YYLTYPE yylloc; +extern bool treesource_error; /* CAUTION: this will stop working if we ever use yyless() or yyunput() */ #define YY_USER_ACTION \ @@ -65,7 +66,8 @@ static int dts_version = 1; BEGIN(V1); \ static void push_input_file(const char *filename); -static int pop_input_file(void); +static bool pop_input_file(void); +static void lexical_error(const char *fmt, ...); %} %% @@ -75,6 +77,27 @@ static int pop_input_file(void); push_input_file(name); } +<*>^"#"(line)?[ \t]+[0-9]+[ \t]+{STRING}([ \t]+[0-9]+)? { + char *line, *tmp, *fn; + /* skip text before line # */ + line = yytext; + while (!isdigit((unsigned char)*line)) + line++; + /* skip digits in line # */ + tmp = line; + while (!isspace((unsigned char)*tmp)) + tmp++; + /* "NULL"-terminate line # */ + *tmp = '\0'; + /* start of filename */ + fn = strchr(tmp + 1, '"') + 1; + /* strip trailing " from filename */ + tmp = strchr(fn, '"'); + *tmp = 0; + /* -1 since #line is the number of the next line */ + srcpos_set_line(xstrdup(fn), atoi(line) - 1); + } + <*><> { if (!pop_input_file()) { yyterminate(); @@ -107,6 +130,20 @@ static int pop_input_file(void); return DT_BITS; } +<*>"/delete-property/" { + DPRINT("Keyword: /delete-property/\n"); + DPRINT("\n"); + BEGIN(PROPNODENAME); + return DT_DEL_PROP; + } + +<*>"/delete-node/" { + DPRINT("Keyword: /delete-node/\n"); + DPRINT("\n"); + BEGIN(PROPNODENAME); + return DT_DEL_NODE; + } + <*>{LABEL}: { DPRINT("Label: %s\n", yytext); yylval.labelref = xstrdup(yytext); @@ -115,15 +152,42 @@ static int pop_input_file(void); } ([0-9]+|0[xX][0-9a-fA-F]+)(U|L|UL|LL|ULL)? { - yylval.literal = xstrdup(yytext); - DPRINT("Literal: '%s'\n", yylval.literal); + char *e; + DPRINT("Integer Literal: '%s'\n", yytext); + + errno = 0; + yylval.integer = strtoull(yytext, &e, 0); + + assert(!(*e) || !e[strspn(e, "UL")]); + + if (errno == ERANGE) + lexical_error("Integer literal '%s' out of range", + yytext); + else + /* ERANGE is the only strtoull error triggerable + * by strings matching the pattern */ + assert(errno == 0); return DT_LITERAL; } <*>{CHAR_LITERAL} { - yytext[yyleng-1] = '\0'; - yylval.literal = xstrdup(yytext+1); - DPRINT("Character literal: %s\n", yylval.literal); + struct data d; + DPRINT("Character literal: %s\n", yytext); + + d = data_copy_escape_string(yytext+1, yyleng-2); + if (d.len == 1) { + lexical_error("Empty character literal"); + yylval.integer = 0; + return DT_CHAR_LITERAL; + } + + yylval.integer = (unsigned char)d.val[0]; + + if (d.len > 2) + lexical_error("Character literal has %d" + " characters instead of 1", + d.len - 1); + return DT_CHAR_LITERAL; } @@ -152,9 +216,10 @@ static int pop_input_file(void); return ']'; } -{PROPNODECHAR}+ { +\\?{PROPNODECHAR}+ { DPRINT("PropNodeName: %s\n", yytext); - yylval.propnodename = xstrdup(yytext); + yylval.propnodename = xstrdup((yytext[0] == '\\') ? + yytext + 1 : yytext); BEGIN_DEFAULT(); return DT_PROPNODENAME; } @@ -210,10 +275,10 @@ static void push_input_file(const char * } -static int pop_input_file(void) +static bool pop_input_file(void) { if (srcfile_pop() == 0) - return 0; + return false; assert(include_stack_pointer > 0); @@ -223,5 +288,16 @@ static int pop_input_file(void) yyin = current_srcfile->f; - return 1; + return true; +} + +static void lexical_error(const char *fmt, ...) +{ + va_list ap; + + va_start(ap, fmt); + srcpos_verror(&yylloc, "Lexical error", fmt, ap); + va_end(ap); + + treesource_error = true; } Modified: head/contrib/dtc/dtc-parser.y ============================================================================== --- head/contrib/dtc/dtc-parser.y Mon Jan 27 19:31:18 2014 (r261214) +++ head/contrib/dtc/dtc-parser.y Mon Jan 27 19:37:35 2014 (r261215) @@ -31,15 +31,11 @@ extern void print_error(char const *fmt, extern void yyerror(char const *s); extern struct boot_info *the_boot_info; -extern int treesource_error; - -static unsigned long long eval_literal(const char *s, int base, int bits); -static unsigned char eval_char_literal(const char *s); +extern bool treesource_error; %} %union { char *propnodename; - char *literal; char *labelref; unsigned int cbase; uint8_t byte; @@ -62,9 +58,11 @@ static unsigned char eval_char_literal(c %token DT_MEMRESERVE %token DT_LSHIFT DT_RSHIFT DT_LE DT_GE DT_EQ DT_NE DT_AND DT_OR %token DT_BITS +%token DT_DEL_PROP +%token DT_DEL_NODE %token DT_PROPNODENAME -%token DT_LITERAL -%token DT_CHAR_LITERAL +%token DT_LITERAL +%token DT_CHAR_LITERAL %token DT_BASE %token DT_BYTE %token DT_STRING @@ -153,6 +151,17 @@ devicetree: print_error("label or path, '%s', not found", $2); $$ = $1; } + | devicetree DT_DEL_NODE DT_REF ';' + { + struct node *target = get_node_by_ref($1, $3); + + if (!target) + print_error("label or path, '%s', not found", $3); + else + delete_node(target); + + $$ = $1; + } ; nodedef: @@ -182,6 +191,10 @@ propdef: { $$ = build_property($1, empty_data); } + | DT_DEL_PROP DT_PROPNODENAME ';' + { + $$ = build_property_delete($2); + } | DT_LABEL propdef { add_label(&$2->labels, $1); @@ -213,10 +226,9 @@ propdata: if ($6 != 0) if (fseek(f, $6, SEEK_SET) != 0) - print_error("Couldn't seek to offset %llu in \"%s\": %s", - (unsigned long long)$6, - $4.val, - strerror(errno)); + die("Couldn't seek to offset %llu in \"%s\": %s", + (unsigned long long)$6, $4.val, + strerror(errno)); d = data_copy_file(f, $8); @@ -257,18 +269,20 @@ propdataprefix: arrayprefix: DT_BITS DT_LITERAL '<' { - $$.data = empty_data; - $$.bits = eval_literal($2, 0, 7); + unsigned long long bits; - if (($$.bits != 8) && - ($$.bits != 16) && - ($$.bits != 32) && - ($$.bits != 64)) + bits = $2; + + if ((bits != 8) && (bits != 16) && + (bits != 32) && (bits != 64)) { print_error("Only 8, 16, 32 and 64-bit elements" " are currently supported"); - $$.bits = 32; + bits = 32; } + + $$.data = empty_data; + $$.bits = bits; } | '<' { @@ -317,13 +331,7 @@ arrayprefix: integer_prim: DT_LITERAL - { - $$ = eval_literal($1, 0, 64); - } | DT_CHAR_LITERAL - { - $$ = eval_char_literal($1); - } | '(' integer_expr ')' { $$ = $2; @@ -440,6 +448,10 @@ subnode: { $$ = name_node($2, $1); } + | DT_DEL_NODE DT_PROPNODENAME ';' + { + $$ = name_node(build_node_delete(), $2); + } | DT_LABEL subnode { add_label(&$2->labels, $1); @@ -454,58 +466,12 @@ void print_error(char const *fmt, ...) va_list va; va_start(va, fmt); - srcpos_verror(&yylloc, fmt, va); + srcpos_verror(&yylloc, "Error", fmt, va); va_end(va); - treesource_error = 1; + treesource_error = true; } void yyerror(char const *s) { print_error("%s", s); } - -static unsigned long long eval_literal(const char *s, int base, int bits) -{ - unsigned long long val; - char *e; - - errno = 0; - val = strtoull(s, &e, base); - if (*e) { - size_t uls = strspn(e, "UL"); - if (e[uls]) - print_error("bad characters in literal"); - } - if ((errno == ERANGE) - || ((bits < 64) && (val >= (1ULL << bits)))) - print_error("literal out of range"); - else if (errno != 0) - print_error("bad literal"); - return val; -} - -static unsigned char eval_char_literal(const char *s) -{ - int i = 1; - char c = s[0]; - - if (c == '\0') - { - print_error("empty character literal"); - return 0; - } - - /* - * If the first character in the character literal is a \ then process - * the remaining characters as an escape encoding. If the first - * character is neither an escape or a terminator it should be the only - * character in the literal and will be returned. - */ - if (c == '\\') - c = get_escape_char(s, &i); - - if (s[i] != '\0') - print_error("malformed character literal"); - - return c; -} Modified: head/contrib/dtc/dtc.c ============================================================================== --- head/contrib/dtc/dtc.c Mon Jan 27 19:31:18 2014 (r261214) +++ head/contrib/dtc/dtc.c Mon Jan 27 19:37:35 2014 (r261215) @@ -21,8 +21,6 @@ #include "dtc.h" #include "srcpos.h" -#include "version_gen.h" - /* * Command line options */ @@ -49,55 +47,60 @@ static void fill_fullpaths(struct node * fill_fullpaths(child, tree->fullpath); } -static void __attribute__ ((noreturn)) usage(void) -{ - fprintf(stderr, "Usage:\n"); - fprintf(stderr, "\tdtc [options] \n"); - fprintf(stderr, "\nOptions:\n"); - fprintf(stderr, "\t-h\n"); - fprintf(stderr, "\t\tThis help text\n"); - fprintf(stderr, "\t-q\n"); - fprintf(stderr, "\t\tQuiet: -q suppress warnings, -qq errors, -qqq all\n"); - fprintf(stderr, "\t-I \n"); - fprintf(stderr, "\t\tInput formats are:\n"); - fprintf(stderr, "\t\t\tdts - device tree source text\n"); - fprintf(stderr, "\t\t\tdtb - device tree blob\n"); - fprintf(stderr, "\t\t\tfs - /proc/device-tree style directory\n"); - fprintf(stderr, "\t-o \n"); - fprintf(stderr, "\t-O \n"); - fprintf(stderr, "\t\tOutput formats are:\n"); - fprintf(stderr, "\t\t\tdts - device tree source text\n"); - fprintf(stderr, "\t\t\tdtb - device tree blob\n"); - fprintf(stderr, "\t\t\tasm - assembler source\n"); - fprintf(stderr, "\t-V \n"); - fprintf(stderr, "\t\tBlob version to produce, defaults to %d (relevant for dtb\n\t\tand asm output only)\n", DEFAULT_FDT_VERSION); - fprintf(stderr, "\t-d \n"); - fprintf(stderr, "\t-R \n"); - fprintf(stderr, "\t\tMake space for reserve map entries (relevant for \n\t\tdtb and asm output only)\n"); - fprintf(stderr, "\t-S \n"); - fprintf(stderr, "\t\tMake the blob at least long (extra space)\n"); - fprintf(stderr, "\t-p \n"); - fprintf(stderr, "\t\tAdd padding to the blob of long (extra space)\n"); - fprintf(stderr, "\t-b \n"); - fprintf(stderr, "\t\tSet the physical boot cpu\n"); - fprintf(stderr, "\t-f\n"); - fprintf(stderr, "\t\tForce - try to produce output even if the input tree has errors\n"); - fprintf(stderr, "\t-i\n"); - fprintf(stderr, "\t\tAdd a path to search for include files\n"); - fprintf(stderr, "\t-s\n"); - fprintf(stderr, "\t\tSort nodes and properties before outputting (only useful for\n\t\tcomparing trees)\n"); - fprintf(stderr, "\t-v\n"); - fprintf(stderr, "\t\tPrint DTC version and exit\n"); - fprintf(stderr, "\t-H \n"); - fprintf(stderr, "\t\tphandle formats are:\n"); - fprintf(stderr, "\t\t\tlegacy - \"linux,phandle\" properties only\n"); - fprintf(stderr, "\t\t\tepapr - \"phandle\" properties only\n"); - fprintf(stderr, "\t\t\tboth - Both \"linux,phandle\" and \"phandle\" properties\n"); - fprintf(stderr, "\t-W [no-]\n"); - fprintf(stderr, "\t-E [no-]\n"); - fprintf(stderr, "\t\t\tenable or disable warnings and errors\n"); - exit(3); -} +/* Usage related data. */ +static const char usage_synopsis[] = "dtc [options] "; +static const char usage_short_opts[] = "qI:O:o:V:d:R:S:p:fb:i:H:sW:E:hv"; +static struct option const usage_long_opts[] = { + {"quiet", no_argument, NULL, 'q'}, + {"in-format", a_argument, NULL, 'I'}, + {"out", a_argument, NULL, 'o'}, + {"out-format", a_argument, NULL, 'O'}, + {"out-version", a_argument, NULL, 'V'}, + {"out-dependency", a_argument, NULL, 'd'}, + {"reserve", a_argument, NULL, 'R'}, + {"space", a_argument, NULL, 'S'}, + {"pad", a_argument, NULL, 'p'}, + {"boot-cpu", a_argument, NULL, 'b'}, + {"force", no_argument, NULL, 'f'}, + {"include", a_argument, NULL, 'i'}, + {"sort", no_argument, NULL, 's'}, + {"phandle", a_argument, NULL, 'H'}, + {"warning", a_argument, NULL, 'W'}, + {"error", a_argument, NULL, 'E'}, + {"help", no_argument, NULL, 'h'}, + {"version", no_argument, NULL, 'v'}, + {NULL, no_argument, NULL, 0x0}, +}; +static const char * const usage_opts_help[] = { + "\n\tQuiet: -q suppress warnings, -qq errors, -qqq all", + "\n\tInput formats are:\n" + "\t\tdts - device tree source text\n" + "\t\tdtb - device tree blob\n" + "\t\tfs - /proc/device-tree style directory", + "\n\tOutput file", + "\n\tOutput formats are:\n" + "\t\tdts - device tree source text\n" + "\t\tdtb - device tree blob\n" + "\t\tasm - assembler source", + "\n\tBlob version to produce, defaults to %d (for dtb and asm output)", //, DEFAULT_FDT_VERSION); + "\n\tOutput dependency file", + "\n\ttMake space for reserve map entries (for dtb and asm output)", + "\n\tMake the blob at least long (extra space)", + "\n\tAdd padding to the blob of long (extra space)", + "\n\tSet the physical boot cpu", + "\n\tTry to produce output even if the input tree has errors", + "\n\tAdd a path to search for include files", + "\n\tSort nodes and properties before outputting (useful for comparing trees)", + "\n\tValid phandle formats are:\n" + "\t\tlegacy - \"linux,phandle\" properties only\n" + "\t\tepapr - \"phandle\" properties only\n" + "\t\tboth - Both \"linux,phandle\" and \"phandle\" properties", + "\n\tEnable/disable warnings (prefix with \"no-\")", + "\n\tEnable/disable errors (prefix with \"no-\")", + "\n\tPrint this help and exit", + "\n\tPrint version and exit", + NULL, +}; int main(int argc, char *argv[]) { @@ -106,7 +109,7 @@ int main(int argc, char *argv[]) const char *outform = "dts"; const char *outname = "-"; const char *depname = NULL; - int force = 0, sort = 0; + bool force = false, sort = false; const char *arg; int opt; FILE *outf = NULL; @@ -118,8 +121,7 @@ int main(int argc, char *argv[]) minsize = 0; padsize = 0; - while ((opt = getopt(argc, argv, "hI:O:o:V:d:R:S:p:fqb:i:vH:sW:E:")) - != EOF) { + while ((opt = util_getopt_long()) != EOF) { switch (opt) { case 'I': inform = optarg; @@ -146,7 +148,7 @@ int main(int argc, char *argv[]) padsize = strtol(optarg, NULL, 0); break; case 'f': - force = 1; + force = true; break; case 'q': quiet++; @@ -158,8 +160,7 @@ int main(int argc, char *argv[]) srcfile_add_search_path(optarg); break; case 'v': - printf("Version: %s\n", DTC_VERSION); - exit(0); + util_version(); case 'H': if (streq(optarg, "legacy")) phandle_format = PHANDLE_LEGACY; @@ -173,7 +174,7 @@ int main(int argc, char *argv[]) break; case 's': - sort = 1; + sort = true; break; case 'W': @@ -185,13 +186,14 @@ int main(int argc, char *argv[]) break; case 'h': + usage(NULL); default: - usage(); + usage("unknown option"); } } if (argc > (optind+1)) - usage(); + usage("missing files"); else if (argc < (optind+1)) arg = "-"; else @@ -201,9 +203,6 @@ int main(int argc, char *argv[]) if (minsize && padsize) die("Can't set both -p and -S\n"); - if (minsize) - fprintf(stderr, "DTC: Use of \"-S\" is deprecated; it will be removed soon, use \"-p\" instead\n"); - if (depname) { depfile = fopen(depname, "w"); if (!depfile) Modified: head/contrib/dtc/dtc.h ============================================================================== --- head/contrib/dtc/dtc.h Mon Jan 27 19:31:18 2014 (r261214) +++ head/contrib/dtc/dtc.h Mon Jan 27 19:37:35 2014 (r261215) @@ -66,7 +66,6 @@ typedef uint32_t cell_t; #define strneq(a, b, n) (strncmp((a), (b), (n)) == 0) #define ALIGN(x, a) (((x) + (a) - 1) & ~((a) - 1)) -#define ARRAY_SIZE(x) (sizeof(x) / sizeof((x)[0])) /* Data blobs */ enum markertype { @@ -119,7 +118,7 @@ struct data data_append_align(struct dat struct data data_add_marker(struct data d, enum markertype type, char *ref); -int data_is_one_string(struct data d); +bool data_is_one_string(struct data d); /* DT constraints */ @@ -128,11 +127,13 @@ int data_is_one_string(struct data d); /* Live trees */ struct label { + bool deleted; char *label; struct label *next; }; struct property { + bool deleted; char *name; struct data val; @@ -142,6 +143,7 @@ struct property { }; struct node { + bool deleted; char *name; struct property *proplist; struct node *children; @@ -158,28 +160,47 @@ struct node { struct label *labels; }; -#define for_each_label(l0, l) \ +#define for_each_label_withdel(l0, l) \ for ((l) = (l0); (l); (l) = (l)->next) -#define for_each_property(n, p) \ +#define for_each_label(l0, l) \ + for_each_label_withdel(l0, l) \ + if (!(l)->deleted) + +#define for_each_property_withdel(n, p) \ for ((p) = (n)->proplist; (p); (p) = (p)->next) -#define for_each_child(n, c) \ +#define for_each_property(n, p) \ + for_each_property_withdel(n, p) \ + if (!(p)->deleted) + +#define for_each_child_withdel(n, c) \ for ((c) = (n)->children; (c); (c) = (c)->next_sibling) +#define for_each_child(n, c) \ + for_each_child_withdel(n, c) \ + if (!(c)->deleted) + void add_label(struct label **labels, char *label); +void delete_labels(struct label **labels); struct property *build_property(char *name, struct data val); +struct property *build_property_delete(char *name); struct property *chain_property(struct property *first, struct property *list); struct property *reverse_properties(struct property *first); struct node *build_node(struct property *proplist, struct node *children); +struct node *build_node_delete(void); struct node *name_node(struct node *node, char *name); struct node *chain_node(struct node *first, struct node *list); struct node *merge_nodes(struct node *old_node, struct node *new_node); void add_property(struct node *node, struct property *prop); +void delete_property_by_name(struct node *node, char *name); +void delete_property(struct property *prop); void add_child(struct node *parent, struct node *child); +void delete_node_by_name(struct node *parent, char *name); +void delete_node(struct node *node); const char *get_unitname(struct node *node); struct property *get_property(struct node *node, const char *propname); @@ -227,7 +248,7 @@ void sort_tree(struct boot_info *bi); /* Checks */ void parse_checks_option(bool warn, bool error, const char *optarg); -void process_checks(int force, struct boot_info *bi); +void process_checks(bool force, struct boot_info *bi); /* Flattened trees */ Modified: head/contrib/dtc/fdtdump.c ============================================================================== --- head/contrib/dtc/fdtdump.c Mon Jan 27 19:31:18 2014 (r261214) +++ head/contrib/dtc/fdtdump.c Mon Jan 27 19:37:35 2014 (r261215) @@ -2,14 +2,16 @@ * fdtdump.c - Contributed by Pantelis Antoniou */ +#include #include #include #include #include #include -#include +#include #include +#include #include "util.h" @@ -17,33 +19,29 @@ #define PALIGN(p, a) ((void *)(ALIGN((unsigned long)(p), (a)))) #define GET_CELL(p) (p += 4, *((const uint32_t *)(p-4))) -static void print_data(const char *data, int len) +static const char *tagname(uint32_t tag) { - int i; - const char *p = data; - - /* no data, don't print */ - if (len == 0) - return; - - if (util_is_printable_string(data, len)) { - printf(" = \"%s\"", (const char *)data); - } else if ((len % 4) == 0) { - printf(" = <"); - for (i = 0; i < len; i += 4) - printf("0x%08x%s", fdt32_to_cpu(GET_CELL(p)), - i < (len - 4) ? " " : ""); - printf(">"); - } else { - printf(" = ["); - for (i = 0; i < len; i++) - printf("%02x%s", *p++, i < len - 1 ? " " : ""); - printf("]"); - } + static const char * const names[] = { +#define TN(t) [t] #t + TN(FDT_BEGIN_NODE), + TN(FDT_END_NODE), + TN(FDT_PROP), + TN(FDT_NOP), + TN(FDT_END), +#undef TN + }; + if (tag < ARRAY_SIZE(names)) + if (names[tag]) + return names[tag]; + return "FDT_???"; } -static void dump_blob(void *blob) +#define dumpf(fmt, args...) \ + do { if (debug) printf("// " fmt, ## args); } while (0) + +static void dump_blob(void *blob, bool debug) { + uintptr_t blob_off = (uintptr_t)blob; struct fdt_header *bph = blob; uint32_t off_mem_rsvmap = fdt32_to_cpu(bph->off_mem_rsvmap); uint32_t off_dt = fdt32_to_cpu(bph->off_dt_struct); @@ -97,7 +95,8 @@ static void dump_blob(void *blob) p = p_struct; while ((tag = fdt32_to_cpu(GET_CELL(p))) != FDT_END) { - /* printf("tag: 0x%08x (%d)\n", tag, p - p_struct); */ + dumpf("%04zx: tag: 0x%08x (%s)\n", + (uintptr_t)p - blob_off - 4, tag, tagname(tag)); if (tag == FDT_BEGIN_NODE) { s = p; @@ -136,27 +135,93 @@ static void dump_blob(void *blob) p = PALIGN(p + sz, 4); + dumpf("%04zx: string: %s\n", (uintptr_t)s - blob_off, s); + dumpf("%04zx: value\n", (uintptr_t)t - blob_off); printf("%*s%s", depth * shift, "", s); - print_data(t, sz); + utilfdt_print_data(t, sz); printf(";\n"); } } +/* Usage related data. */ +static const char usage_synopsis[] = "fdtdump [options] "; +static const char usage_short_opts[] = "ds" USAGE_COMMON_SHORT_OPTS; +static struct option const usage_long_opts[] = { + {"debug", no_argument, NULL, 'd'}, + {"scan", no_argument, NULL, 's'}, + USAGE_COMMON_LONG_OPTS +}; +static const char * const usage_opts_help[] = { + "Dump debug information while decoding the file", + "Scan for an embedded fdt in file", + USAGE_COMMON_OPTS_HELP +}; int main(int argc, char *argv[]) { + int opt; + const char *file; char *buf; + bool debug = false; + bool scan = false; + off_t len; + + while ((opt = util_getopt_long()) != EOF) { + switch (opt) { + case_USAGE_COMMON_FLAGS - if (argc < 2) { - fprintf(stderr, "supply input filename\n"); - return 5; + case 'd': + debug = true; + break; + case 's': + scan = true; + break; + } + } + if (optind != argc - 1) + usage("missing input filename"); + file = argv[optind]; + + buf = utilfdt_read_len(file, &len); + if (!buf) + die("could not read: %s\n", file); + + /* try and locate an embedded fdt in a bigger blob */ + if (scan) { + unsigned char smagic[4]; + char *p = buf; + char *endp = buf + len; + + fdt_set_magic(smagic, FDT_MAGIC); + + /* poor man's memmem */ + while (true) { + p = memchr(p, smagic[0], endp - p - 4); + if (!p) + break; + if (fdt_magic(p) == FDT_MAGIC) { + /* try and validate the main struct */ + off_t this_len = endp - p; + fdt32_t max_version = 17; + if (fdt_version(p) <= max_version && + fdt_last_comp_version(p) < max_version && + fdt_totalsize(p) < this_len && + fdt_off_dt_struct(p) < this_len && + fdt_off_dt_strings(p) < this_len) + break; + if (debug) + printf("%s: skipping fdt magic at offset %#zx\n", + file, p - buf); + } + ++p; + } + if (!p) + die("%s: could not locate fdt magic\n", file); + printf("%s: found fdt at offset %#zx\n", file, p - buf); + buf = p; } - buf = utilfdt_read(argv[1]); - if (buf) - dump_blob(buf); - else - return 10; + dump_blob(buf, debug); return 0; } Modified: head/contrib/dtc/fdtget.c ============================================================================== --- head/contrib/dtc/fdtget.c Mon Jan 27 19:31:18 2014 (r261214) +++ head/contrib/dtc/fdtget.c Mon Jan 27 19:37:35 2014 (r261215) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 19:49:53 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3AAA475C; Mon, 27 Jan 2014 19:49:53 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 271B21A15; Mon, 27 Jan 2014 19:49:53 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0RJnr02067978; Mon, 27 Jan 2014 19:49:53 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0RJnr7t067977; Mon, 27 Jan 2014 19:49:53 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401271949.s0RJnr7t067977@svn.freebsd.org> From: John Baldwin Date: Mon, 27 Jan 2014 19:49:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261216 - head/sys/dev/pccbb X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 19:49:53 -0000 Author: jhb Date: Mon Jan 27 19:49:52 2014 New Revision: 261216 URL: http://svnweb.freebsd.org/changeset/base/261216 Log: Explicitly enable I/O and memory decoding in the bridge's command register when activating an I/O or memory window on the CardBus bridge. Tested by: Olivier Cochard-Labbe Reviewed by: imp MFC after: 3 days Modified: head/sys/dev/pccbb/pccbb.c Modified: head/sys/dev/pccbb/pccbb.c ============================================================================== --- head/sys/dev/pccbb/pccbb.c Mon Jan 27 19:37:35 2014 (r261215) +++ head/sys/dev/pccbb/pccbb.c Mon Jan 27 19:49:52 2014 (r261216) @@ -1038,6 +1038,13 @@ cbb_cardbus_power_disable_socket(device_ /* CardBus Resource */ /************************************************************************/ +static void +cbb_activate_window(device_t brdev, int type) +{ + + PCI_ENABLE_IO(device_get_parent(brdev), brdev, type); +} + static int cbb_cardbus_io_open(device_t brdev, int win, uint32_t start, uint32_t end) { @@ -1055,6 +1062,7 @@ cbb_cardbus_io_open(device_t brdev, int pci_write_config(brdev, basereg, start, 4); pci_write_config(brdev, limitreg, end, 4); + cbb_activate_window(brdev, SYS_RES_IOPORT); return (0); } @@ -1075,6 +1083,7 @@ cbb_cardbus_mem_open(device_t brdev, int pci_write_config(brdev, basereg, start, 4); pci_write_config(brdev, limitreg, end, 4); + cbb_activate_window(brdev, SYS_RES_MEMORY); return (0); } @@ -1342,7 +1351,12 @@ cbb_pcic_activate_resource(device_t brde struct resource *res) { struct cbb_softc *sc = device_get_softc(brdev); - return (exca_activate_resource(&sc->exca[0], child, type, rid, res)); + int error; + + error = exca_activate_resource(&sc->exca[0], child, type, rid, res); + if (error == 0) + cbb_activate_window(brdev, type); + return (error); } static int From owner-svn-src-all@FreeBSD.ORG Mon Jan 27 22:26:17 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4CBF55FB; Mon, 27 Jan 2014 22:26:17 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 38B2C17C1; Mon, 27 Jan 2014 22:26:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0RMQHMl036107; Mon, 27 Jan 2014 22:26:17 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0RMQGrl036102; Mon, 27 Jan 2014 22:26:16 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401272226.s0RMQGrl036102@svn.freebsd.org> From: John Baldwin Date: Mon, 27 Jan 2014 22:26:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261217 - head/usr.sbin/bhyve X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Jan 2014 22:26:17 -0000 Author: jhb Date: Mon Jan 27 22:26:15 2014 New Revision: 261217 URL: http://svnweb.freebsd.org/changeset/base/261217 Log: Remove support for legacy PCI devices. These haven't been needed since support for LPC uart devices was added and it conflicts with upcoming patches to add PCI INTx support. Reviewed by: neel Modified: head/usr.sbin/bhyve/bhyve.8 head/usr.sbin/bhyve/bhyverun.c head/usr.sbin/bhyve/pci_emul.c head/usr.sbin/bhyve/pci_emul.h head/usr.sbin/bhyve/pci_uart.c Modified: head/usr.sbin/bhyve/bhyve.8 ============================================================================== --- head/usr.sbin/bhyve/bhyve.8 Mon Jan 27 19:49:52 2014 (r261216) +++ head/usr.sbin/bhyve/bhyve.8 Mon Jan 27 22:26:15 2014 (r261217) @@ -24,7 +24,7 @@ .\" .\" $FreeBSD$ .\" -.Dd December 12, 2013 +.Dd January 27, 2014 .Dt BHYVE 8 .Os .Sh NAME @@ -37,7 +37,6 @@ .Op Fl g Ar gdbport .Op Fl p Ar pinnedcpu .Op Fl s Ar slot,emulation Ns Op , Ns Ar conf -.Op Fl S Ar slot,emulation Ns Op , Ns Ar conf .Op Fl l Ar lpcdev Ns Op , Ns Ar conf .Ar vmname .Sh DESCRIPTION @@ -202,13 +201,6 @@ The host device must have been reserved loader variable as described in .Xr vmm 4 . .El -.It Fl S Ar slot , Ns Ar emulation Ns Op , Ns Ar conf -Identical to the -s option except the device is instructed to use legacy -ISA addresses if possible. -Currently this only has an effect with the -.Li uart -device emulation. -This option will be deprecated in a future version. .It Fl l Ar lpcdev Ns Op , Ns Ar conf Allow devices behind the LPC PCI-ISA bridge to be configured. The only supported devices are the TTY-class devices, Modified: head/usr.sbin/bhyve/bhyverun.c ============================================================================== --- head/usr.sbin/bhyve/bhyverun.c Mon Jan 27 19:49:52 2014 (r261216) +++ head/usr.sbin/bhyve/bhyverun.c Mon Jan 27 22:26:15 2014 (r261217) @@ -124,7 +124,7 @@ usage(int code) { fprintf(stderr, - "Usage: %s [-aehwAHIPW] [-g ] [-s ] [-S ]\n" + "Usage: %s [-aehwAHIPW] [-g ] [-s ]\n" " %*s [-c vcpus] [-p pincpu] [-m mem] [-l ] \n" " -a: local apic is in XAPIC mode (default is X2APIC)\n" " -A: create an ACPI table\n" @@ -137,7 +137,6 @@ usage(int code) " -e: exit on unhandled I/O access\n" " -h: help\n" " -s: PCI slot config\n" - " -S: legacy PCI slot config\n" " -l: LPC device configuration\n" " -m: memory size in MB\n" " -w: ignore unimplemented MSRs\n", @@ -599,7 +598,7 @@ main(int argc, char *argv[]) guest_ncpus = 1; memsize = 256 * MB; - while ((c = getopt(argc, argv, "abehwAHIPWp:g:c:s:S:m:l:")) != -1) { + while ((c = getopt(argc, argv, "abehwAHIPWp:g:c:s:m:l:")) != -1) { switch (c) { case 'a': disable_x2apic = 1; @@ -626,12 +625,7 @@ main(int argc, char *argv[]) } break; case 's': - if (pci_parse_slot(optarg, 0) != 0) - exit(1); - else - break; - case 'S': - if (pci_parse_slot(optarg, 1) != 0) + if (pci_parse_slot(optarg) != 0) exit(1); else break; Modified: head/usr.sbin/bhyve/pci_emul.c ============================================================================== --- head/usr.sbin/bhyve/pci_emul.c Mon Jan 27 19:49:52 2014 (r261216) +++ head/usr.sbin/bhyve/pci_emul.c Mon Jan 27 22:26:15 2014 (r261217) @@ -75,7 +75,6 @@ static struct slotinfo { char *si_name; char *si_param; struct pci_devinst *si_devi; - int si_legacy; } pci_slotinfo[MAXSLOTS][MAXFUNCS]; SET_DECLARE(pci_devemu_set, struct pci_devemu); @@ -123,7 +122,7 @@ pci_parse_slot_usage(char *aopt) } int -pci_parse_slot(char *opt, int legacy) +pci_parse_slot(char *opt) { char *slot, *func, *emul, *config; char *str, *cpy; @@ -170,7 +169,6 @@ pci_parse_slot(char *opt, int legacy) error = 0; pci_slotinfo[snum][fnum].si_name = emul; pci_slotinfo[snum][fnum].si_param = config; - pci_slotinfo[snum][fnum].si_legacy = legacy; done: if (error) @@ -521,13 +519,7 @@ pci_emul_alloc_pbar(struct pci_devinst * addr = mask = lobits = 0; break; case PCIBAR_IO: - if (hostbase && - pci_slotinfo[pdi->pi_slot][pdi->pi_func].si_legacy) { - assert(hostbase < PCI_EMUL_IOBASE); - baseptr = &hostbase; - } else { - baseptr = &pci_emul_iobase; - } + baseptr = &pci_emul_iobase; limit = PCI_EMUL_IOLIMIT; mask = PCIM_BAR_IO_BASE; lobits = PCIM_BAR_IO_SPACE; @@ -1185,13 +1177,6 @@ pci_generate_msi(struct pci_devinst *pi, } int -pci_is_legacy(struct pci_devinst *pi) -{ - - return (pci_slotinfo[pi->pi_slot][pi->pi_func].si_legacy); -} - -int pci_lintr_request(struct pci_devinst *pi, int req) { int irq; Modified: head/usr.sbin/bhyve/pci_emul.h ============================================================================== --- head/usr.sbin/bhyve/pci_emul.h Mon Jan 27 19:49:52 2014 (r261216) +++ head/usr.sbin/bhyve/pci_emul.h Mon Jan 27 22:26:15 2014 (r261217) @@ -199,7 +199,6 @@ int pci_emul_alloc_pbar(struct pci_devin uint64_t hostbase, enum pcibar_type type, uint64_t size); int pci_emul_add_msicap(struct pci_devinst *pi, int msgnum); int pci_emul_add_pciecap(struct pci_devinst *pi, int pcie_device_type); -int pci_is_legacy(struct pci_devinst *pi); void pci_generate_msi(struct pci_devinst *pi, int msgnum); void pci_generate_msix(struct pci_devinst *pi, int msgnum); void pci_lintr_assert(struct pci_devinst *pi); @@ -210,7 +209,7 @@ int pci_msix_enabled(struct pci_devinst int pci_msix_table_bar(struct pci_devinst *pi); int pci_msix_pba_bar(struct pci_devinst *pi); int pci_msi_msgnum(struct pci_devinst *pi); -int pci_parse_slot(char *opt, int legacy); +int pci_parse_slot(char *opt); void pci_populate_msicap(struct msicap *cap, int msgs, int nextptr); int pci_emul_add_msixcap(struct pci_devinst *pi, int msgnum, int barnum); int pci_emul_msix_twrite(struct pci_devinst *pi, uint64_t offset, int size, Modified: head/usr.sbin/bhyve/pci_uart.c ============================================================================== --- head/usr.sbin/bhyve/pci_uart.c Mon Jan 27 19:49:52 2014 (r261216) +++ head/usr.sbin/bhyve/pci_uart.c Mon Jan 27 22:26:15 2014 (r261217) @@ -85,28 +85,13 @@ pci_uart_read(struct vmctx *ctx, int vcp return (val); } -static int pci_uart_nldevs; /* number of legacy uart ports allocated */ - static int pci_uart_init(struct vmctx *ctx, struct pci_devinst *pi, char *opts) { struct uart_softc *sc; - int ioaddr, ivec; - if (pci_is_legacy(pi)) { - if (uart_legacy_alloc(pci_uart_nldevs, &ioaddr, &ivec) != 0) { - fprintf(stderr, "Unable to allocate resources for " - "legacy COM%d port at pci device %d:%d\n", - pci_uart_nldevs + 1, pi->pi_slot, pi->pi_func); - return (-1); - } - pci_uart_nldevs++; - pci_emul_alloc_pbar(pi, 0, ioaddr, PCIBAR_IO, UART_IO_BAR_SIZE); - } else { - ivec = -1; - pci_emul_alloc_bar(pi, 0, PCIBAR_IO, UART_IO_BAR_SIZE); - } - pci_lintr_request(pi, ivec); + pci_emul_alloc_bar(pi, 0, PCIBAR_IO, UART_IO_BAR_SIZE); + pci_lintr_request(pi, -1); /* initialize config space */ pci_set_cfgdata16(pi, PCIR_DEVICE, COM_DEV); From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 00:30:18 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 898B6455; Tue, 28 Jan 2014 00:30:18 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6971A116A; Tue, 28 Jan 2014 00:30:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0S0UIGD086734; Tue, 28 Jan 2014 00:30:18 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0S0UI3e086730; Tue, 28 Jan 2014 00:30:18 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201401280030.s0S0UI3e086730@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Tue, 28 Jan 2014 00:30:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261218 - stable/10/sys/netinet6 X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 00:30:18 -0000 Author: ae Date: Tue Jan 28 00:30:17 2014 New Revision: 261218 URL: http://svnweb.freebsd.org/changeset/base/261218 Log: MFC r260485,260496: Remove extra nesting from X_ip6_mforward() function. Also remove disabled definitions from ip6_mroute.h. PR: 185148 Modified: stable/10/sys/netinet6/ip6_mroute.c stable/10/sys/netinet6/ip6_mroute.h Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/netinet6/ip6_mroute.c ============================================================================== --- stable/10/sys/netinet6/ip6_mroute.c Mon Jan 27 22:26:15 2014 (r261217) +++ stable/10/sys/netinet6/ip6_mroute.c Tue Jan 28 00:30:17 2014 (r261218) @@ -1044,11 +1044,19 @@ socket_send(struct socket *s, struct mbu int X_ip6_mforward(struct ip6_hdr *ip6, struct ifnet *ifp, struct mbuf *m) { + struct rtdetq *rte; + struct mbuf *mb0; struct mf6c *rt; struct mif6 *mifp; struct mbuf *mm; + u_long hash; mifi_t mifi; char ip6bufs[INET6_ADDRSTRLEN], ip6bufd[INET6_ADDRSTRLEN]; +#ifdef UPCALL_TIMING + struct timeval tp; + + GET_TIME(tp); +#endif /* UPCALL_TIMING */ MRT6_DLOG(DEBUG_FORWARD, "src %s, dst %s, ifindex %d", ip6_sprintf(ip6bufs, &ip6->ip6_src), @@ -1096,200 +1104,178 @@ X_ip6_mforward(struct ip6_hdr *ip6, stru if (rt) { MFC6_UNLOCK(); return (ip6_mdq(m, ifp, rt)); - } else { - /* - * If we don't have a route for packet's origin, - * Make a copy of the packet & - * send message to routing daemon - */ + } - struct mbuf *mb0; - struct rtdetq *rte; - u_long hash; -/* int i, npkts;*/ -#ifdef UPCALL_TIMING - struct timeval tp; + /* + * If we don't have a route for packet's origin, + * Make a copy of the packet & send message to routing daemon. + */ + MRT6STAT_INC(mrt6s_no_route); + MRT6_DLOG(DEBUG_FORWARD | DEBUG_MFC, "no rte s %s g %s", + ip6_sprintf(ip6bufs, &ip6->ip6_src), + ip6_sprintf(ip6bufd, &ip6->ip6_dst)); - GET_TIME(tp); -#endif /* UPCALL_TIMING */ + /* + * Allocate mbufs early so that we don't do extra work if we + * are just going to fail anyway. + */ + rte = (struct rtdetq *)malloc(sizeof(*rte), M_MRTABLE6, M_NOWAIT); + if (rte == NULL) { + MFC6_UNLOCK(); + return (ENOBUFS); + } + mb0 = m_copy(m, 0, M_COPYALL); + /* + * Pullup packet header if needed before storing it, + * as other references may modify it in the meantime. + */ + if (mb0 && (M_HASCL(mb0) || mb0->m_len < sizeof(struct ip6_hdr))) + mb0 = m_pullup(mb0, sizeof(struct ip6_hdr)); + if (mb0 == NULL) { + free(rte, M_MRTABLE6); + MFC6_UNLOCK(); + return (ENOBUFS); + } - MRT6STAT_INC(mrt6s_no_route); - MRT6_DLOG(DEBUG_FORWARD | DEBUG_MFC, "no rte s %s g %s", - ip6_sprintf(ip6bufs, &ip6->ip6_src), - ip6_sprintf(ip6bufd, &ip6->ip6_dst)); + /* is there an upcall waiting for this packet? */ + hash = MF6CHASH(ip6->ip6_src, ip6->ip6_dst); + for (rt = mf6ctable[hash]; rt; rt = rt->mf6c_next) { + if (IN6_ARE_ADDR_EQUAL(&ip6->ip6_src, + &rt->mf6c_origin.sin6_addr) && + IN6_ARE_ADDR_EQUAL(&ip6->ip6_dst, + &rt->mf6c_mcastgrp.sin6_addr) && (rt->mf6c_stall != NULL)) + break; + } - /* - * Allocate mbufs early so that we don't do extra work if we - * are just going to fail anyway. - */ - rte = (struct rtdetq *)malloc(sizeof(*rte), M_MRTABLE6, - M_NOWAIT); - if (rte == NULL) { + if (rt == NULL) { + struct mrt6msg *im; +#ifdef MRT6_OINIT + struct omrt6msg *oim; +#endif + /* no upcall, so make a new entry */ + rt = (struct mf6c *)malloc(sizeof(*rt), M_MRTABLE6, M_NOWAIT); + if (rt == NULL) { + free(rte, M_MRTABLE6); + m_freem(mb0); MFC6_UNLOCK(); return (ENOBUFS); } - mb0 = m_copy(m, 0, M_COPYALL); /* - * Pullup packet header if needed before storing it, - * as other references may modify it in the meantime. + * Make a copy of the header to send to the user + * level process */ - if (mb0 && - (M_HASCL(mb0) || mb0->m_len < sizeof(struct ip6_hdr))) - mb0 = m_pullup(mb0, sizeof(struct ip6_hdr)); - if (mb0 == NULL) { + mm = m_copy(mb0, 0, sizeof(struct ip6_hdr)); + if (mm == NULL) { free(rte, M_MRTABLE6); + m_freem(mb0); + free(rt, M_MRTABLE6); MFC6_UNLOCK(); return (ENOBUFS); } - /* is there an upcall waiting for this packet? */ - hash = MF6CHASH(ip6->ip6_src, ip6->ip6_dst); - for (rt = mf6ctable[hash]; rt; rt = rt->mf6c_next) { - if (IN6_ARE_ADDR_EQUAL(&ip6->ip6_src, - &rt->mf6c_origin.sin6_addr) && - IN6_ARE_ADDR_EQUAL(&ip6->ip6_dst, - &rt->mf6c_mcastgrp.sin6_addr) && - (rt->mf6c_stall != NULL)) - break; - } - - if (rt == NULL) { - struct mrt6msg *im; -#ifdef MRT6_OINIT - struct omrt6msg *oim; -#endif - - /* no upcall, so make a new entry */ - rt = (struct mf6c *)malloc(sizeof(*rt), M_MRTABLE6, - M_NOWAIT); - if (rt == NULL) { - free(rte, M_MRTABLE6); - m_freem(mb0); - MFC6_UNLOCK(); - return (ENOBUFS); - } - /* - * Make a copy of the header to send to the user - * level process - */ - mm = m_copy(mb0, 0, sizeof(struct ip6_hdr)); - - if (mm == NULL) { - free(rte, M_MRTABLE6); - m_freem(mb0); - free(rt, M_MRTABLE6); - MFC6_UNLOCK(); - return (ENOBUFS); - } - - /* - * Send message to routing daemon - */ - sin6.sin6_addr = ip6->ip6_src; - - im = NULL; + /* + * Send message to routing daemon + */ + sin6.sin6_addr = ip6->ip6_src; + im = NULL; #ifdef MRT6_OINIT - oim = NULL; + oim = NULL; #endif - switch (V_ip6_mrouter_ver) { + switch (V_ip6_mrouter_ver) { #ifdef MRT6_OINIT - case MRT6_OINIT: - oim = mtod(mm, struct omrt6msg *); - oim->im6_msgtype = MRT6MSG_NOCACHE; - oim->im6_mbz = 0; - break; -#endif - case MRT6_INIT: - im = mtod(mm, struct mrt6msg *); - im->im6_msgtype = MRT6MSG_NOCACHE; - im->im6_mbz = 0; - break; - default: - free(rte, M_MRTABLE6); - m_freem(mb0); - free(rt, M_MRTABLE6); - MFC6_UNLOCK(); - return (EINVAL); - } - - MRT6_DLOG(DEBUG_FORWARD, - "getting the iif info in the kernel"); + case MRT6_OINIT: + oim = mtod(mm, struct omrt6msg *); + oim->im6_msgtype = MRT6MSG_NOCACHE; + oim->im6_mbz = 0; + break; +#endif + case MRT6_INIT: + im = mtod(mm, struct mrt6msg *); + im->im6_msgtype = MRT6MSG_NOCACHE; + im->im6_mbz = 0; + break; + default: + free(rte, M_MRTABLE6); + m_freem(mb0); + free(rt, M_MRTABLE6); + MFC6_UNLOCK(); + return (EINVAL); + } - for (mifp = mif6table, mifi = 0; - mifi < nummifs && mifp->m6_ifp != ifp; - mifp++, mifi++) + MRT6_DLOG(DEBUG_FORWARD, "getting the iif info in the kernel"); + for (mifp = mif6table, mifi = 0; + mifi < nummifs && mifp->m6_ifp != ifp; mifp++, mifi++) ; - switch (V_ip6_mrouter_ver) { + switch (V_ip6_mrouter_ver) { #ifdef MRT6_OINIT - case MRT6_OINIT: - oim->im6_mif = mifi; - break; -#endif - case MRT6_INIT: - im->im6_mif = mifi; - break; - } + case MRT6_OINIT: + oim->im6_mif = mifi; + break; +#endif + case MRT6_INIT: + im->im6_mif = mifi; + break; + } + + if (socket_send(V_ip6_mrouter, mm, &sin6) < 0) { + log(LOG_WARNING, "ip6_mforward: ip6_mrouter " + "socket queue full\n"); + MRT6STAT_INC(mrt6s_upq_sockfull); + free(rte, M_MRTABLE6); + m_freem(mb0); + free(rt, M_MRTABLE6); + MFC6_UNLOCK(); + return (ENOBUFS); + } + + MRT6STAT_INC(mrt6s_upcalls); - if (socket_send(V_ip6_mrouter, mm, &sin6) < 0) { - log(LOG_WARNING, "ip6_mforward: ip6_mrouter " - "socket queue full\n"); - MRT6STAT_INC(mrt6s_upq_sockfull); + /* insert new entry at head of hash chain */ + bzero(rt, sizeof(*rt)); + rt->mf6c_origin.sin6_family = AF_INET6; + rt->mf6c_origin.sin6_len = sizeof(struct sockaddr_in6); + rt->mf6c_origin.sin6_addr = ip6->ip6_src; + rt->mf6c_mcastgrp.sin6_family = AF_INET6; + rt->mf6c_mcastgrp.sin6_len = sizeof(struct sockaddr_in6); + rt->mf6c_mcastgrp.sin6_addr = ip6->ip6_dst; + rt->mf6c_expire = UPCALL_EXPIRE; + n6expire[hash]++; + rt->mf6c_parent = MF6C_INCOMPLETE_PARENT; + + /* link into table */ + rt->mf6c_next = mf6ctable[hash]; + mf6ctable[hash] = rt; + /* Add this entry to the end of the queue */ + rt->mf6c_stall = rte; + } else { + /* determine if q has overflowed */ + struct rtdetq **p; + int npkts = 0; + + for (p = &rt->mf6c_stall; *p != NULL; p = &(*p)->next) + if (++npkts > MAX_UPQ6) { + MRT6STAT_INC(mrt6s_upq_ovflw); free(rte, M_MRTABLE6); m_freem(mb0); - free(rt, M_MRTABLE6); MFC6_UNLOCK(); - return (ENOBUFS); + return (0); } - MRT6STAT_INC(mrt6s_upcalls); - - /* insert new entry at head of hash chain */ - bzero(rt, sizeof(*rt)); - rt->mf6c_origin.sin6_family = AF_INET6; - rt->mf6c_origin.sin6_len = sizeof(struct sockaddr_in6); - rt->mf6c_origin.sin6_addr = ip6->ip6_src; - rt->mf6c_mcastgrp.sin6_family = AF_INET6; - rt->mf6c_mcastgrp.sin6_len = sizeof(struct sockaddr_in6); - rt->mf6c_mcastgrp.sin6_addr = ip6->ip6_dst; - rt->mf6c_expire = UPCALL_EXPIRE; - n6expire[hash]++; - rt->mf6c_parent = MF6C_INCOMPLETE_PARENT; - - /* link into table */ - rt->mf6c_next = mf6ctable[hash]; - mf6ctable[hash] = rt; - /* Add this entry to the end of the queue */ - rt->mf6c_stall = rte; - } else { - /* determine if q has overflowed */ - struct rtdetq **p; - int npkts = 0; - - for (p = &rt->mf6c_stall; *p != NULL; p = &(*p)->next) - if (++npkts > MAX_UPQ6) { - MRT6STAT_INC(mrt6s_upq_ovflw); - free(rte, M_MRTABLE6); - m_freem(mb0); - MFC6_UNLOCK(); - return (0); - } - - /* Add this entry to the end of the queue */ - *p = rte; - } + /* Add this entry to the end of the queue */ + *p = rte; + } - rte->next = NULL; - rte->m = mb0; - rte->ifp = ifp; + rte->next = NULL; + rte->m = mb0; + rte->ifp = ifp; #ifdef UPCALL_TIMING - rte->t = tp; + rte->t = tp; #endif /* UPCALL_TIMING */ - MFC6_UNLOCK(); + MFC6_UNLOCK(); - return (0); - } + return (0); } /* Modified: stable/10/sys/netinet6/ip6_mroute.h ============================================================================== --- stable/10/sys/netinet6/ip6_mroute.h Mon Jan 27 22:26:15 2014 (r261217) +++ stable/10/sys/netinet6/ip6_mroute.h Tue Jan 28 00:30:17 2014 (r261218) @@ -145,11 +145,6 @@ struct mrt6stat { struct omrt6msg { u_long unused1; u_char im6_msgtype; /* what type of message */ -#if 0 -#define MRT6MSG_NOCACHE 1 -#define MRT6MSG_WRONGMIF 2 -#define MRT6MSG_WHOLEPKT 3 /* used for user level encap*/ -#endif u_char im6_mbz; /* must be zero */ u_char im6_mif; /* mif rec'd on */ u_char unused2; From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 00:31:49 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1B2AB591; Tue, 28 Jan 2014 00:31:49 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id EEB8211CE; Tue, 28 Jan 2014 00:31:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0S0Vmrr089453; Tue, 28 Jan 2014 00:31:48 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0S0Vm0L089451; Tue, 28 Jan 2014 00:31:48 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201401280031.s0S0Vm0L089451@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Tue, 28 Jan 2014 00:31:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261219 - stable/9/sys/netinet6 X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 00:31:49 -0000 Author: ae Date: Tue Jan 28 00:31:48 2014 New Revision: 261219 URL: http://svnweb.freebsd.org/changeset/base/261219 Log: MFC r260485,260496: Remove extra nesting from X_ip6_mforward() function. Also remove disabled definitions from ip6_mroute.h. PR: 185148 Modified: stable/9/sys/netinet6/ip6_mroute.c stable/9/sys/netinet6/ip6_mroute.h Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/netinet6/ip6_mroute.c ============================================================================== --- stable/9/sys/netinet6/ip6_mroute.c Tue Jan 28 00:30:17 2014 (r261218) +++ stable/9/sys/netinet6/ip6_mroute.c Tue Jan 28 00:31:48 2014 (r261219) @@ -1041,11 +1041,19 @@ socket_send(struct socket *s, struct mbu int X_ip6_mforward(struct ip6_hdr *ip6, struct ifnet *ifp, struct mbuf *m) { + struct rtdetq *rte; + struct mbuf *mb0; struct mf6c *rt; struct mif6 *mifp; struct mbuf *mm; + u_long hash; mifi_t mifi; char ip6bufs[INET6_ADDRSTRLEN], ip6bufd[INET6_ADDRSTRLEN]; +#ifdef UPCALL_TIMING + struct timeval tp; + + GET_TIME(tp); +#endif /* UPCALL_TIMING */ MRT6_DLOG(DEBUG_FORWARD, "src %s, dst %s, ifindex %d", ip6_sprintf(ip6bufs, &ip6->ip6_src), @@ -1093,200 +1101,178 @@ X_ip6_mforward(struct ip6_hdr *ip6, stru if (rt) { MFC6_UNLOCK(); return (ip6_mdq(m, ifp, rt)); - } else { - /* - * If we don't have a route for packet's origin, - * Make a copy of the packet & - * send message to routing daemon - */ + } - struct mbuf *mb0; - struct rtdetq *rte; - u_long hash; -/* int i, npkts;*/ -#ifdef UPCALL_TIMING - struct timeval tp; + /* + * If we don't have a route for packet's origin, + * Make a copy of the packet & send message to routing daemon. + */ + MRT6STAT_INC(mrt6s_no_route); + MRT6_DLOG(DEBUG_FORWARD | DEBUG_MFC, "no rte s %s g %s", + ip6_sprintf(ip6bufs, &ip6->ip6_src), + ip6_sprintf(ip6bufd, &ip6->ip6_dst)); - GET_TIME(tp); -#endif /* UPCALL_TIMING */ + /* + * Allocate mbufs early so that we don't do extra work if we + * are just going to fail anyway. + */ + rte = (struct rtdetq *)malloc(sizeof(*rte), M_MRTABLE6, M_NOWAIT); + if (rte == NULL) { + MFC6_UNLOCK(); + return (ENOBUFS); + } + mb0 = m_copy(m, 0, M_COPYALL); + /* + * Pullup packet header if needed before storing it, + * as other references may modify it in the meantime. + */ + if (mb0 && (M_HASCL(mb0) || mb0->m_len < sizeof(struct ip6_hdr))) + mb0 = m_pullup(mb0, sizeof(struct ip6_hdr)); + if (mb0 == NULL) { + free(rte, M_MRTABLE6); + MFC6_UNLOCK(); + return (ENOBUFS); + } - MRT6STAT_INC(mrt6s_no_route); - MRT6_DLOG(DEBUG_FORWARD | DEBUG_MFC, "no rte s %s g %s", - ip6_sprintf(ip6bufs, &ip6->ip6_src), - ip6_sprintf(ip6bufd, &ip6->ip6_dst)); + /* is there an upcall waiting for this packet? */ + hash = MF6CHASH(ip6->ip6_src, ip6->ip6_dst); + for (rt = mf6ctable[hash]; rt; rt = rt->mf6c_next) { + if (IN6_ARE_ADDR_EQUAL(&ip6->ip6_src, + &rt->mf6c_origin.sin6_addr) && + IN6_ARE_ADDR_EQUAL(&ip6->ip6_dst, + &rt->mf6c_mcastgrp.sin6_addr) && (rt->mf6c_stall != NULL)) + break; + } - /* - * Allocate mbufs early so that we don't do extra work if we - * are just going to fail anyway. - */ - rte = (struct rtdetq *)malloc(sizeof(*rte), M_MRTABLE6, - M_NOWAIT); - if (rte == NULL) { + if (rt == NULL) { + struct mrt6msg *im; +#ifdef MRT6_OINIT + struct omrt6msg *oim; +#endif + /* no upcall, so make a new entry */ + rt = (struct mf6c *)malloc(sizeof(*rt), M_MRTABLE6, M_NOWAIT); + if (rt == NULL) { + free(rte, M_MRTABLE6); + m_freem(mb0); MFC6_UNLOCK(); return (ENOBUFS); } - mb0 = m_copy(m, 0, M_COPYALL); /* - * Pullup packet header if needed before storing it, - * as other references may modify it in the meantime. + * Make a copy of the header to send to the user + * level process */ - if (mb0 && - (M_HASCL(mb0) || mb0->m_len < sizeof(struct ip6_hdr))) - mb0 = m_pullup(mb0, sizeof(struct ip6_hdr)); - if (mb0 == NULL) { + mm = m_copy(mb0, 0, sizeof(struct ip6_hdr)); + if (mm == NULL) { free(rte, M_MRTABLE6); + m_freem(mb0); + free(rt, M_MRTABLE6); MFC6_UNLOCK(); return (ENOBUFS); } - /* is there an upcall waiting for this packet? */ - hash = MF6CHASH(ip6->ip6_src, ip6->ip6_dst); - for (rt = mf6ctable[hash]; rt; rt = rt->mf6c_next) { - if (IN6_ARE_ADDR_EQUAL(&ip6->ip6_src, - &rt->mf6c_origin.sin6_addr) && - IN6_ARE_ADDR_EQUAL(&ip6->ip6_dst, - &rt->mf6c_mcastgrp.sin6_addr) && - (rt->mf6c_stall != NULL)) - break; - } - - if (rt == NULL) { - struct mrt6msg *im; -#ifdef MRT6_OINIT - struct omrt6msg *oim; -#endif - - /* no upcall, so make a new entry */ - rt = (struct mf6c *)malloc(sizeof(*rt), M_MRTABLE6, - M_NOWAIT); - if (rt == NULL) { - free(rte, M_MRTABLE6); - m_freem(mb0); - MFC6_UNLOCK(); - return (ENOBUFS); - } - /* - * Make a copy of the header to send to the user - * level process - */ - mm = m_copy(mb0, 0, sizeof(struct ip6_hdr)); - - if (mm == NULL) { - free(rte, M_MRTABLE6); - m_freem(mb0); - free(rt, M_MRTABLE6); - MFC6_UNLOCK(); - return (ENOBUFS); - } - - /* - * Send message to routing daemon - */ - sin6.sin6_addr = ip6->ip6_src; - - im = NULL; + /* + * Send message to routing daemon + */ + sin6.sin6_addr = ip6->ip6_src; + im = NULL; #ifdef MRT6_OINIT - oim = NULL; + oim = NULL; #endif - switch (V_ip6_mrouter_ver) { + switch (V_ip6_mrouter_ver) { #ifdef MRT6_OINIT - case MRT6_OINIT: - oim = mtod(mm, struct omrt6msg *); - oim->im6_msgtype = MRT6MSG_NOCACHE; - oim->im6_mbz = 0; - break; -#endif - case MRT6_INIT: - im = mtod(mm, struct mrt6msg *); - im->im6_msgtype = MRT6MSG_NOCACHE; - im->im6_mbz = 0; - break; - default: - free(rte, M_MRTABLE6); - m_freem(mb0); - free(rt, M_MRTABLE6); - MFC6_UNLOCK(); - return (EINVAL); - } - - MRT6_DLOG(DEBUG_FORWARD, - "getting the iif info in the kernel"); + case MRT6_OINIT: + oim = mtod(mm, struct omrt6msg *); + oim->im6_msgtype = MRT6MSG_NOCACHE; + oim->im6_mbz = 0; + break; +#endif + case MRT6_INIT: + im = mtod(mm, struct mrt6msg *); + im->im6_msgtype = MRT6MSG_NOCACHE; + im->im6_mbz = 0; + break; + default: + free(rte, M_MRTABLE6); + m_freem(mb0); + free(rt, M_MRTABLE6); + MFC6_UNLOCK(); + return (EINVAL); + } - for (mifp = mif6table, mifi = 0; - mifi < nummifs && mifp->m6_ifp != ifp; - mifp++, mifi++) + MRT6_DLOG(DEBUG_FORWARD, "getting the iif info in the kernel"); + for (mifp = mif6table, mifi = 0; + mifi < nummifs && mifp->m6_ifp != ifp; mifp++, mifi++) ; - switch (V_ip6_mrouter_ver) { + switch (V_ip6_mrouter_ver) { #ifdef MRT6_OINIT - case MRT6_OINIT: - oim->im6_mif = mifi; - break; -#endif - case MRT6_INIT: - im->im6_mif = mifi; - break; - } + case MRT6_OINIT: + oim->im6_mif = mifi; + break; +#endif + case MRT6_INIT: + im->im6_mif = mifi; + break; + } + + if (socket_send(V_ip6_mrouter, mm, &sin6) < 0) { + log(LOG_WARNING, "ip6_mforward: ip6_mrouter " + "socket queue full\n"); + MRT6STAT_INC(mrt6s_upq_sockfull); + free(rte, M_MRTABLE6); + m_freem(mb0); + free(rt, M_MRTABLE6); + MFC6_UNLOCK(); + return (ENOBUFS); + } + + MRT6STAT_INC(mrt6s_upcalls); - if (socket_send(V_ip6_mrouter, mm, &sin6) < 0) { - log(LOG_WARNING, "ip6_mforward: ip6_mrouter " - "socket queue full\n"); - MRT6STAT_INC(mrt6s_upq_sockfull); + /* insert new entry at head of hash chain */ + bzero(rt, sizeof(*rt)); + rt->mf6c_origin.sin6_family = AF_INET6; + rt->mf6c_origin.sin6_len = sizeof(struct sockaddr_in6); + rt->mf6c_origin.sin6_addr = ip6->ip6_src; + rt->mf6c_mcastgrp.sin6_family = AF_INET6; + rt->mf6c_mcastgrp.sin6_len = sizeof(struct sockaddr_in6); + rt->mf6c_mcastgrp.sin6_addr = ip6->ip6_dst; + rt->mf6c_expire = UPCALL_EXPIRE; + n6expire[hash]++; + rt->mf6c_parent = MF6C_INCOMPLETE_PARENT; + + /* link into table */ + rt->mf6c_next = mf6ctable[hash]; + mf6ctable[hash] = rt; + /* Add this entry to the end of the queue */ + rt->mf6c_stall = rte; + } else { + /* determine if q has overflowed */ + struct rtdetq **p; + int npkts = 0; + + for (p = &rt->mf6c_stall; *p != NULL; p = &(*p)->next) + if (++npkts > MAX_UPQ6) { + MRT6STAT_INC(mrt6s_upq_ovflw); free(rte, M_MRTABLE6); m_freem(mb0); - free(rt, M_MRTABLE6); MFC6_UNLOCK(); - return (ENOBUFS); + return (0); } - MRT6STAT_INC(mrt6s_upcalls); - - /* insert new entry at head of hash chain */ - bzero(rt, sizeof(*rt)); - rt->mf6c_origin.sin6_family = AF_INET6; - rt->mf6c_origin.sin6_len = sizeof(struct sockaddr_in6); - rt->mf6c_origin.sin6_addr = ip6->ip6_src; - rt->mf6c_mcastgrp.sin6_family = AF_INET6; - rt->mf6c_mcastgrp.sin6_len = sizeof(struct sockaddr_in6); - rt->mf6c_mcastgrp.sin6_addr = ip6->ip6_dst; - rt->mf6c_expire = UPCALL_EXPIRE; - n6expire[hash]++; - rt->mf6c_parent = MF6C_INCOMPLETE_PARENT; - - /* link into table */ - rt->mf6c_next = mf6ctable[hash]; - mf6ctable[hash] = rt; - /* Add this entry to the end of the queue */ - rt->mf6c_stall = rte; - } else { - /* determine if q has overflowed */ - struct rtdetq **p; - int npkts = 0; - - for (p = &rt->mf6c_stall; *p != NULL; p = &(*p)->next) - if (++npkts > MAX_UPQ6) { - MRT6STAT_INC(mrt6s_upq_ovflw); - free(rte, M_MRTABLE6); - m_freem(mb0); - MFC6_UNLOCK(); - return (0); - } - - /* Add this entry to the end of the queue */ - *p = rte; - } + /* Add this entry to the end of the queue */ + *p = rte; + } - rte->next = NULL; - rte->m = mb0; - rte->ifp = ifp; + rte->next = NULL; + rte->m = mb0; + rte->ifp = ifp; #ifdef UPCALL_TIMING - rte->t = tp; + rte->t = tp; #endif /* UPCALL_TIMING */ - MFC6_UNLOCK(); + MFC6_UNLOCK(); - return (0); - } + return (0); } /* Modified: stable/9/sys/netinet6/ip6_mroute.h ============================================================================== --- stable/9/sys/netinet6/ip6_mroute.h Tue Jan 28 00:30:17 2014 (r261218) +++ stable/9/sys/netinet6/ip6_mroute.h Tue Jan 28 00:31:48 2014 (r261219) @@ -145,11 +145,6 @@ struct mrt6stat { struct omrt6msg { u_long unused1; u_char im6_msgtype; /* what type of message */ -#if 0 -#define MRT6MSG_NOCACHE 1 -#define MRT6MSG_WRONGMIF 2 -#define MRT6MSG_WHOLEPKT 3 /* used for user level encap*/ -#endif u_char im6_mbz; /* must be zero */ u_char im6_mif; /* mif rec'd on */ u_char unused2; From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 01:49:50 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0A8B6597; Tue, 28 Jan 2014 01:49:50 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D0D3B1752; Tue, 28 Jan 2014 01:49:49 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0S1nnF1016891; Tue, 28 Jan 2014 01:49:49 GMT (envelope-from csjp@svn.freebsd.org) Received: (from csjp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0S1nn2K016889; Tue, 28 Jan 2014 01:49:49 GMT (envelope-from csjp@svn.freebsd.org) Message-Id: <201401280149.s0S1nn2K016889@svn.freebsd.org> From: "Christian S.J. Peron" Date: Tue, 28 Jan 2014 01:49:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261220 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 01:49:50 -0000 Author: csjp Date: Tue Jan 28 01:49:49 2014 New Revision: 261220 URL: http://svnweb.freebsd.org/changeset/base/261220 Log: Allow sigwait(2) in capabilities mode. It's common for multi-threaded processes to create a thread for the purpose of synchronously processing signals. Allow such processes to utilize a capabilities sandbox. Discussed with: rwatson, pjd MFC after: 2 weeks Modified: head/sys/kern/capabilities.conf head/sys/kern/init_sysent.c Modified: head/sys/kern/capabilities.conf ============================================================================== --- head/sys/kern/capabilities.conf Tue Jan 28 00:31:48 2014 (r261219) +++ head/sys/kern/capabilities.conf Tue Jan 28 01:49:49 2014 (r261220) @@ -667,6 +667,7 @@ sigsuspend sigtimedwait sigvec sigwaitinfo +sigwait ## ## Allow creating new socket pairs with socket(2) and socketpair(2). Modified: head/sys/kern/init_sysent.c ============================================================================== --- head/sys/kern/init_sysent.c Tue Jan 28 00:31:48 2014 (r261219) +++ head/sys/kern/init_sysent.c Tue Jan 28 01:49:49 2014 (r261220) @@ -463,7 +463,7 @@ struct sysent sysent[] = { { AS(__acl_set_link_args), (sy_call_t *)sys___acl_set_link, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 426 = __acl_set_link */ { AS(__acl_delete_link_args), (sy_call_t *)sys___acl_delete_link, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 427 = __acl_delete_link */ { AS(__acl_aclcheck_link_args), (sy_call_t *)sys___acl_aclcheck_link, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC }, /* 428 = __acl_aclcheck_link */ - { AS(sigwait_args), (sy_call_t *)sys_sigwait, AUE_SIGWAIT, NULL, 0, 0, 0, SY_THR_STATIC }, /* 429 = sigwait */ + { AS(sigwait_args), (sy_call_t *)sys_sigwait, AUE_SIGWAIT, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 429 = sigwait */ { AS(thr_create_args), (sy_call_t *)sys_thr_create, AUE_NULL, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 430 = thr_create */ { AS(thr_exit_args), (sy_call_t *)sys_thr_exit, AUE_NULL, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 431 = thr_exit */ { AS(thr_self_args), (sy_call_t *)sys_thr_self, AUE_NULL, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC }, /* 432 = thr_self */ From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 07:04:35 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8E894F61; Tue, 28 Jan 2014 07:04:35 +0000 (UTC) Received: from zxy.spb.ru (zxy.spb.ru [195.70.199.98]) by mx1.freebsd.org (Postfix) with ESMTP id 473231ED7; Tue, 28 Jan 2014 07:04:35 +0000 (UTC) Received: from slw by zxy.spb.ru with local (Exim 4.69 (FreeBSD)) (envelope-from ) id 1W82ii-000C8L-Qq; Tue, 28 Jan 2014 11:04:28 +0400 Date: Tue, 28 Jan 2014 11:04:28 +0400 From: Slawa Olhovchenkov To: Xin LI Subject: Re: svn commit: r259813 - in head: cddl/contrib/opensolaris/cmd/zdb cddl/contrib/opensolaris/cmd/zhack cddl/contrib/opensolaris/cmd/zpool cddl/contrib/opensolaris/lib/libzfs/common sys/cddl/contrib/ope... Message-ID: <20140128070428.GA46109@zxy.spb.ru> References: <201312240714.rBO7EQoT064268@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201312240714.rBO7EQoT064268@svn.freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) X-SA-Exim-Connect-IP: X-SA-Exim-Mail-From: slw@zxy.spb.ru X-SA-Exim-Scanned: No (on zxy.spb.ru); SAEximRunCond expanded to false Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 07:04:35 -0000 On Tue, Dec 24, 2013 at 07:14:26AM +0000, Xin LI wrote: > Author: delphij > Date: Tue Dec 24 07:14:25 2013 > New Revision: 259813 > URL: http://svnweb.freebsd.org/changeset/base/259813 > > Log: > MFV r258374: > > 4171 clean up spa_feature_*() interfaces > > 4172 implement extensible_dataset feature for use by other zpool > features > > illumos/illumos-gate@2acef22db7808606888f8f92715629ff3ba555b9 > > MFC after: 2 weeks MFC? From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 07:09:49 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0A48B15F; Tue, 28 Jan 2014 07:09:49 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E985B1EEC; Tue, 28 Jan 2014 07:09:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0S79mkb040469; Tue, 28 Jan 2014 07:09:48 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0S79m5s040468; Tue, 28 Jan 2014 07:09:48 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201401280709.s0S79m5s040468@svn.freebsd.org> From: Hans Petter Selasky Date: Tue, 28 Jan 2014 07:09:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261222 - stable/9/usr.sbin/usbdump X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 07:09:49 -0000 Author: hselasky Date: Tue Jan 28 07:09:48 2014 New Revision: 261222 URL: http://svnweb.freebsd.org/changeset/base/261222 Log: MFC r260978: Add check for "hw.usb.no_pf" sysctl value. Modified: stable/9/usr.sbin/usbdump/usbdump.c Directory Properties: stable/9/usr.sbin/ (props changed) stable/9/usr.sbin/usbdump/ (props changed) Modified: stable/9/usr.sbin/usbdump/usbdump.c ============================================================================== --- stable/9/usr.sbin/usbdump/usbdump.c Tue Jan 28 03:09:57 2014 (r261221) +++ stable/9/usr.sbin/usbdump/usbdump.c Tue Jan 28 07:09:48 2014 (r261222) @@ -34,6 +34,7 @@ #include #include #include +#include #include #include #include @@ -780,6 +781,23 @@ usage(void) exit(EX_USAGE); } +static void +check_usb_pf_sysctl(void) +{ + int error; + int no_pf_val = 0; + size_t no_pf_len = sizeof(int); + + /* check "hw.usb.no_pf" sysctl for 8- and 9- stable */ + + error = sysctlbyname("hw.usb.no_pf", &no_pf_val, + &no_pf_len, NULL, 0); + if (error == 0 && no_pf_val != 0) { + warnx("The USB packet filter might be disabled."); + warnx("See the \"hw.usb.no_pf\" sysctl for more information."); + } +} + int main(int argc, char *argv[]) { @@ -870,6 +888,8 @@ main(int argc, char *argv[]) exit(EXIT_SUCCESS); } + check_usb_pf_sysctl(); + p->fd = fd = open("/dev/bpf", O_RDONLY); if (p->fd < 0) err(EXIT_FAILURE, "Could not open BPF device"); From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 07:11:24 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6D4F92A6; Tue, 28 Jan 2014 07:11:24 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 58DBD1F53; Tue, 28 Jan 2014 07:11:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0S7BOQ1043419; Tue, 28 Jan 2014 07:11:24 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0S7BO1R043418; Tue, 28 Jan 2014 07:11:24 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201401280711.s0S7BO1R043418@svn.freebsd.org> From: Hans Petter Selasky Date: Tue, 28 Jan 2014 07:11:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r261223 - stable/8/usr.sbin/usbdump X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 07:11:24 -0000 Author: hselasky Date: Tue Jan 28 07:11:23 2014 New Revision: 261223 URL: http://svnweb.freebsd.org/changeset/base/261223 Log: MFC r260978: Add check for "hw.usb.no_pf" sysctl value. Modified: stable/8/usr.sbin/usbdump/usbdump.c (contents, props changed) Directory Properties: stable/8/usr.sbin/ (props changed) stable/8/usr.sbin/usbdump/ (props changed) Modified: stable/8/usr.sbin/usbdump/usbdump.c ============================================================================== --- stable/8/usr.sbin/usbdump/usbdump.c Tue Jan 28 07:09:48 2014 (r261222) +++ stable/8/usr.sbin/usbdump/usbdump.c Tue Jan 28 07:11:23 2014 (r261223) @@ -34,6 +34,7 @@ #include #include #include +#include #include #include #include @@ -780,6 +781,23 @@ usage(void) exit(EX_USAGE); } +static void +check_usb_pf_sysctl(void) +{ + int error; + int no_pf_val = 0; + size_t no_pf_len = sizeof(int); + + /* check "hw.usb.no_pf" sysctl for 8- and 9- stable */ + + error = sysctlbyname("hw.usb.no_pf", &no_pf_val, + &no_pf_len, NULL, 0); + if (error == 0 && no_pf_val != 0) { + warnx("The USB packet filter might be disabled."); + warnx("See the \"hw.usb.no_pf\" sysctl for more information."); + } +} + int main(int argc, char *argv[]) { @@ -870,6 +888,8 @@ main(int argc, char *argv[]) exit(EXIT_SUCCESS); } + check_usb_pf_sysctl(); + p->fd = fd = open("/dev/bpf", O_RDONLY); if (p->fd < 0) err(EXIT_FAILURE, "Could not open BPF device"); From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 07:21:47 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3169C538; Tue, 28 Jan 2014 07:21:47 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1D3961FFA; Tue, 28 Jan 2014 07:21:47 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0S7LkfC047299; Tue, 28 Jan 2014 07:21:46 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0S7LkJC047297; Tue, 28 Jan 2014 07:21:46 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201401280721.s0S7LkJC047297@svn.freebsd.org> From: Hans Petter Selasky Date: Tue, 28 Jan 2014 07:21:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261224 - head/lib/libusb X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 07:21:47 -0000 Author: hselasky Date: Tue Jan 28 07:21:46 2014 New Revision: 261224 URL: http://svnweb.freebsd.org/changeset/base/261224 Log: Comply to the official LibUSB v1.0 API: "It is legal to attempt to claim an already-claimed interface." MFC after: 1 week Modified: head/lib/libusb/libusb10.c Modified: head/lib/libusb/libusb10.c ============================================================================== --- head/lib/libusb/libusb10.c Tue Jan 28 07:11:23 2014 (r261223) +++ head/lib/libusb/libusb10.c Tue Jan 28 07:21:46 2014 (r261224) @@ -611,7 +611,6 @@ int libusb_claim_interface(struct libusb20_device *pdev, int interface_number) { libusb_device *dev; - int err = 0; dev = libusb_get_device(pdev); if (dev == NULL) @@ -621,13 +620,10 @@ libusb_claim_interface(struct libusb20_d return (LIBUSB_ERROR_INVALID_PARAM); CTX_LOCK(dev->ctx); - if (dev->claimed_interfaces & (1 << interface_number)) - err = LIBUSB_ERROR_BUSY; - - if (!err) - dev->claimed_interfaces |= (1 << interface_number); + dev->claimed_interfaces |= (1 << interface_number); CTX_UNLOCK(dev->ctx); - return (err); + + return (0); } int From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 08:07:19 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DD2E3470; Tue, 28 Jan 2014 08:07:19 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id ADD9412B8; Tue, 28 Jan 2014 08:07:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0S87JSO063606; Tue, 28 Jan 2014 08:07:19 GMT (envelope-from dim@svn.freebsd.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0S87JA6063605; Tue, 28 Jan 2014 08:07:19 GMT (envelope-from dim@svn.freebsd.org) Message-Id: <201401280807.s0S87JA6063605@svn.freebsd.org> From: Dimitry Andric Date: Tue, 28 Jan 2014 08:07:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261225 - in stable: 10/contrib/llvm/lib/Target/X86/MCTargetDesc 9/contrib/llvm/lib/Target/X86/MCTargetDesc X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 08:07:20 -0000 Author: dim Date: Tue Jan 28 08:07:19 2014 New Revision: 261225 URL: http://svnweb.freebsd.org/changeset/base/261225 Log: MFC r261162: Pull in r195679 from upstream llvm trunk: Don't use nopl in cpus that don't support it. Patch by Mikulas Patocka. I added the test. I checked that for cpu names that gas knows about, it also doesn't generate nopl. The modified cpus: i686 - there are i686-class CPUs that don't have nopl: Via c3, Transmeta Crusoe, Microsoft VirtualBox - see https://bbs.archlinux.org/viewtopic.php?pid=775414 k6, k6-2, k6-3, winchip-c6, winchip2 - these are 586-class CPUs via c3 c3-2 - see https://bugs.archlinux.org/task/19733 as a proof that Via c3 and c3-Nehemiah don't have nopl PR: bin/185777 Modified: stable/9/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp Directory Properties: stable/9/contrib/llvm/ (props changed) Changes in other areas also in this revision: Modified: stable/10/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp Directory Properties: stable/10/ (props changed) Modified: stable/9/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp ============================================================================== --- stable/9/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp Tue Jan 28 07:21:46 2014 (r261224) +++ stable/9/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp Tue Jan 28 08:07:19 2014 (r261225) @@ -308,8 +308,12 @@ bool X86AsmBackend::writeNopData(uint64_ // This CPU doesnt support long nops. If needed add more. // FIXME: Can we get this from the subtarget somehow? + // FIXME: We could generated something better than plain 0x90. if (CPU == "generic" || CPU == "i386" || CPU == "i486" || CPU == "i586" || - CPU == "pentium" || CPU == "pentium-mmx" || CPU == "geode") { + CPU == "pentium" || CPU == "pentium-mmx" || CPU == "i686" || + CPU == "k6" || CPU == "k6-2" || CPU == "k6-3" || CPU == "geode" || + CPU == "winchip-c6" || CPU == "winchip2" || CPU == "c3" || + CPU == "c3-2") { for (uint64_t i = 0; i < Count; ++i) OW->Write8(0x90); return true; From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 08:07:20 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3F7D2471; Tue, 28 Jan 2014 08:07:20 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 102BD12B9; Tue, 28 Jan 2014 08:07:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0S87J7Q063612; Tue, 28 Jan 2014 08:07:19 GMT (envelope-from dim@svn.freebsd.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0S87J0C063611; Tue, 28 Jan 2014 08:07:19 GMT (envelope-from dim@svn.freebsd.org) Message-Id: <201401280807.s0S87J0C063611@svn.freebsd.org> From: Dimitry Andric Date: Tue, 28 Jan 2014 08:07:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261225 - in stable: 10/contrib/llvm/lib/Target/X86/MCTargetDesc 9/contrib/llvm/lib/Target/X86/MCTargetDesc X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 08:07:20 -0000 Author: dim Date: Tue Jan 28 08:07:19 2014 New Revision: 261225 URL: http://svnweb.freebsd.org/changeset/base/261225 Log: MFC r261162: Pull in r195679 from upstream llvm trunk: Don't use nopl in cpus that don't support it. Patch by Mikulas Patocka. I added the test. I checked that for cpu names that gas knows about, it also doesn't generate nopl. The modified cpus: i686 - there are i686-class CPUs that don't have nopl: Via c3, Transmeta Crusoe, Microsoft VirtualBox - see https://bbs.archlinux.org/viewtopic.php?pid=775414 k6, k6-2, k6-3, winchip-c6, winchip2 - these are 586-class CPUs via c3 c3-2 - see https://bugs.archlinux.org/task/19733 as a proof that Via c3 and c3-Nehemiah don't have nopl PR: bin/185777 Modified: stable/10/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp Directory Properties: stable/10/ (props changed) Changes in other areas also in this revision: Modified: stable/9/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp Directory Properties: stable/9/contrib/llvm/ (props changed) Modified: stable/10/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp ============================================================================== --- stable/10/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp Tue Jan 28 07:21:46 2014 (r261224) +++ stable/10/contrib/llvm/lib/Target/X86/MCTargetDesc/X86AsmBackend.cpp Tue Jan 28 08:07:19 2014 (r261225) @@ -308,8 +308,12 @@ bool X86AsmBackend::writeNopData(uint64_ // This CPU doesnt support long nops. If needed add more. // FIXME: Can we get this from the subtarget somehow? + // FIXME: We could generated something better than plain 0x90. if (CPU == "generic" || CPU == "i386" || CPU == "i486" || CPU == "i586" || - CPU == "pentium" || CPU == "pentium-mmx" || CPU == "geode") { + CPU == "pentium" || CPU == "pentium-mmx" || CPU == "i686" || + CPU == "k6" || CPU == "k6-2" || CPU == "k6-3" || CPU == "geode" || + CPU == "winchip-c6" || CPU == "winchip2" || CPU == "c3" || + CPU == "c3-2") { for (uint64_t i = 0; i < Count; ++i) OW->Write8(0x90); return true; From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 08:49:01 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3A4D7879; Tue, 28 Jan 2014 08:49:01 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2670D1609; Tue, 28 Jan 2014 08:49:01 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0S8n1Jh079785; Tue, 28 Jan 2014 08:49:01 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0S8n1ZA079784; Tue, 28 Jan 2014 08:49:01 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201401280849.s0S8n1ZA079784@svn.freebsd.org> From: Hans Petter Selasky Date: Tue, 28 Jan 2014 08:49:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261226 - head/sys/dev/usb/input X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 08:49:01 -0000 Author: hselasky Date: Tue Jan 28 08:49:00 2014 New Revision: 261226 URL: http://svnweb.freebsd.org/changeset/base/261226 Log: Revert r260622: To be implemented a bit differently. Modified: head/sys/dev/usb/input/ukbd.c Modified: head/sys/dev/usb/input/ukbd.c ============================================================================== --- head/sys/dev/usb/input/ukbd.c Tue Jan 28 08:07:19 2014 (r261225) +++ head/sys/dev/usb/input/ukbd.c Tue Jan 28 08:49:00 2014 (r261226) @@ -197,7 +197,6 @@ struct ukbd_softc { #define UKBD_FLAG_NUMLOCK 0x00080000 #define UKBD_FLAG_CAPSLOCK 0x00100000 #define UKBD_FLAG_SCROLLLOCK 0x00200000 -#define UKBD_FLAG_VALID_KEYS 0x00400000 int sc_mode; /* input mode (K_XLATE,K_RAW,K_CODE) */ int sc_state; /* shift/lock key state */ @@ -513,41 +512,6 @@ ukbd_interrupt(struct ukbd_softc *sc) n_mod = sc->sc_ndata.modifiers; o_mod = sc->sc_odata.modifiers; - - /* - * Don't output any modifier keys before we see a valid - * non-modifier key press. This prevents so-called "ghost - * keyboards" keeping modifier keys pressed while not actually - * seen as a real keyboard. - */ - if (sc->sc_flags & UKBD_FLAG_VALID_KEYS) - goto kfound; - - for (i = 0; i != UKBD_NKEYCODE; i++) { - key = sc->sc_ndata.keycode[i]; - switch (key) { - case 0xe0: - case 0xe4: - case 0xe1: - case 0xe5: - case 0xe2: - case 0xe6: - case 0xe3: - case 0xe7: - case 0x00: - case KEY_ERROR: - break; - default: - sc->sc_flags |= UKBD_FLAG_VALID_KEYS; - goto kfound; - } - } - DPRINTF("Keeping modifiers buffered\n"); - - /* keep modifiers in buffer */ - sc->sc_ndata.modifiers = n_mod = 0; - -kfound: if (n_mod != o_mod) { for (i = 0; i < UKBD_NMOD; i++) { if ((n_mod & ukbd_mods[i].mask) != From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 09:12:15 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 00F6BFA5; Tue, 28 Jan 2014 09:12:15 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D58031854; Tue, 28 Jan 2014 09:12:14 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0S9CEUG090851; Tue, 28 Jan 2014 09:12:14 GMT (envelope-from andrew@svn.freebsd.org) Received: (from andrew@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0S9C5AN090788; Tue, 28 Jan 2014 09:12:05 GMT (envelope-from andrew@svn.freebsd.org) Message-Id: <201401280912.s0S9C5AN090788@svn.freebsd.org> From: Andrew Turner Date: Tue, 28 Jan 2014 09:12:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261227 - in head/sys: arm/allwinner arm/allwinner/a20 arm/arm arm/at91 arm/broadcom/bcm2835 arm/conf arm/econa arm/freescale/imx arm/freescale/vybrid arm/lpc arm/mv/armadaxp arm/mv/dis... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 09:12:15 -0000 Author: andrew Date: Tue Jan 28 09:12:04 2014 New Revision: 261227 URL: http://svnweb.freebsd.org/changeset/base/261227 Log: Remove STARTUP_PAGETABLE_ADDR from the ARM configs and replace it with memory at the end of the kernel. This helps reduce the SoC and board specific configuration required. Reviewed by: bsdimp Tested by: jmg (armeb), br Modified: head/sys/arm/allwinner/a20/std.a20 head/sys/arm/allwinner/std.a10 head/sys/arm/arm/locore.S head/sys/arm/at91/std.bwct head/sys/arm/at91/std.eb9200 head/sys/arm/at91/std.ethernut5 head/sys/arm/at91/std.hl200 head/sys/arm/at91/std.hl201 head/sys/arm/at91/std.kb920x head/sys/arm/at91/std.qila9g20 head/sys/arm/at91/std.sam9260ek head/sys/arm/at91/std.sam9g20ek head/sys/arm/at91/std.sam9x25ek head/sys/arm/at91/std.sn9g45 head/sys/arm/at91/std.tsc4370 head/sys/arm/broadcom/bcm2835/std.rpi head/sys/arm/conf/ATMEL head/sys/arm/conf/CNS11XXNAS head/sys/arm/conf/CRB head/sys/arm/conf/EP80219 head/sys/arm/conf/GUMSTIX head/sys/arm/conf/IQ31244 head/sys/arm/conf/NSLU head/sys/arm/conf/VERSATILEPB head/sys/arm/econa/std.econa head/sys/arm/freescale/imx/std.imx51 head/sys/arm/freescale/imx/std.imx53 head/sys/arm/freescale/imx/std.imx6 head/sys/arm/freescale/vybrid/std.vybrid head/sys/arm/lpc/std.lpc head/sys/arm/mv/armadaxp/std.armadaxp head/sys/arm/mv/discovery/std.db78xxx head/sys/arm/mv/kirkwood/std.kirkwood head/sys/arm/mv/orion/std.db88f5xxx head/sys/arm/mv/orion/std.ts7800 head/sys/arm/rockchip/std.rk30xx head/sys/arm/s3c2xx0/std.ln2410sbc head/sys/arm/samsung/exynos/std.exynos5 head/sys/arm/tegra/std.tegra2 head/sys/arm/ti/am335x/std.am335x head/sys/arm/ti/omap4/std.omap4 head/sys/arm/xilinx/std.zynq7 head/sys/arm/xscale/ixp425/std.avila head/sys/conf/ldscript.arm head/sys/conf/options.arm Modified: head/sys/arm/allwinner/a20/std.a20 ============================================================================== --- head/sys/arm/allwinner/a20/std.a20 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/allwinner/a20/std.a20 Tue Jan 28 09:12:04 2014 (r261227) @@ -16,8 +16,6 @@ options KERNPHYSADDR=0x40200000 makeoptions KERNVIRTADDR=0xc0200000 options KERNVIRTADDR=0xc0200000 -options STARTUP_PAGETABLE_ADDR=0x48000000 - options ARM_L2_PIPT options IPI_IRQ_START=0 Modified: head/sys/arm/allwinner/std.a10 ============================================================================== --- head/sys/arm/allwinner/std.a10 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/allwinner/std.a10 Tue Jan 28 09:12:04 2014 (r261227) @@ -16,6 +16,4 @@ options KERNPHYSADDR=0x40200000 makeoptions KERNVIRTADDR=0xc0200000 options KERNVIRTADDR=0xc0200000 -options STARTUP_PAGETABLE_ADDR=0x48000000 - files "../allwinner/files.a10" Modified: head/sys/arm/arm/locore.S ============================================================================== --- head/sys/arm/arm/locore.S Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/arm/locore.S Tue Jan 28 09:12:04 2014 (r261227) @@ -144,9 +144,15 @@ disable_mmu: nop mov pc, r7 Lunmapped: -#ifdef STARTUP_PAGETABLE_ADDR - /* build page table from scratch */ - ldr r0, Lstartup_pagetable + /* + * Build page table from scratch. + */ + + /* Load the page tables physical address */ + ldr r1, Lstartup_pagetable + ldr r2, =(KERNVIRTADDR - KERNPHYSADDR) + sub r0, r1, r2 + adr r4, mmu_init_table b 3f @@ -197,7 +203,6 @@ Lunmapped: nop CPWAIT(r0) -#endif mmu_done: nop adr r1, .Lstart @@ -231,7 +236,6 @@ virt_done: adr r0, .Lmainreturned b _C_LABEL(panic) /* NOTREACHED */ -#ifdef STARTUP_PAGETABLE_ADDR #define MMU_INIT(va,pa,n_sec,attr) \ .word n_sec ; \ .word 4*((va)>>L1_S_SHIFT) ; \ @@ -246,7 +250,7 @@ Lreal_start: Lend: .word _edata Lstartup_pagetable: - .word STARTUP_PAGETABLE_ADDR + .word pagetable #ifdef SMP Lstartup_pagetable_secondary: .word temp_pagetable @@ -272,10 +276,9 @@ mmu_init_table: MMU_INIT(0x48000000, 0x48000000, 1, L1_TYPE_S|L1_SHARED|L1_S_C|L1_S_AP(AP_KRW)) #endif /* SMP */ .word 0 /* end of table */ -#endif .Lstart: .word _edata - .word _end + .word _ebss .word svcstk + INIT_ARM_STACK_SIZE .Lvirt_done: @@ -293,6 +296,15 @@ mmu_init_table: svcstk: .space INIT_ARM_STACK_SIZE +/* + * Memory for the initial pagetable. We are unable to place this in + * the bss as this will be cleared after the table is loaded. + */ + .section ".init_pagetable" + .align 14 /* 16KiB aligned */ +pagetable: + .space L1_TABLE_SIZE + .text .align 0 Modified: head/sys/arm/at91/std.bwct ============================================================================== --- head/sys/arm/at91/std.bwct Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/at91/std.bwct Tue Jan 28 09:12:04 2014 (r261227) @@ -1,7 +1,6 @@ #$FreeBSD$ include "../at91/std.at91" -options STARTUP_PAGETABLE_ADDR=0x20800000 makeoptions KERNPHYSADDR=0x20000000 options KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 Modified: head/sys/arm/at91/std.eb9200 ============================================================================== --- head/sys/arm/at91/std.eb9200 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/at91/std.eb9200 Tue Jan 28 09:12:04 2014 (r261227) @@ -1,7 +1,6 @@ #$FreeBSD$ include "../at91/std.at91" -options STARTUP_PAGETABLE_ADDR=0x20800000 makeoptions KERNPHYSADDR=0x20000000 options KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 Modified: head/sys/arm/at91/std.ethernut5 ============================================================================== --- head/sys/arm/at91/std.ethernut5 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/at91/std.ethernut5 Tue Jan 28 09:12:04 2014 (r261227) @@ -1,7 +1,6 @@ # $FreeBSD$ include "../at91/std.at91sam9" -options STARTUP_PAGETABLE_ADDR=0x20800000 makeoptions KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 options KERNPHYSADDR=0x20000000 Modified: head/sys/arm/at91/std.hl200 ============================================================================== --- head/sys/arm/at91/std.hl200 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/at91/std.hl200 Tue Jan 28 09:12:04 2014 (r261227) @@ -1,7 +1,6 @@ #$FreeBSD$ include "../at91/std.at91" -options STARTUP_PAGETABLE_ADDR=0x20000000 makeoptions KERNPHYSADDR=0x20100000 options KERNPHYSADDR=0x20100000 makeoptions KERNVIRTADDR=0xc0100000 Modified: head/sys/arm/at91/std.hl201 ============================================================================== --- head/sys/arm/at91/std.hl201 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/at91/std.hl201 Tue Jan 28 09:12:04 2014 (r261227) @@ -1,7 +1,6 @@ #$FreeBSD$ include "../at91/std.at91sam9" -options STARTUP_PAGETABLE_ADDR=0x20800000 makeoptions KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 options KERNPHYSADDR=0x20000000 Modified: head/sys/arm/at91/std.kb920x ============================================================================== --- head/sys/arm/at91/std.kb920x Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/at91/std.kb920x Tue Jan 28 09:12:04 2014 (r261227) @@ -1,7 +1,6 @@ #$FreeBSD$ include "../at91/std.at91" -options STARTUP_PAGETABLE_ADDR=0x20800000 makeoptions KERNPHYSADDR=0x20000000 options KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 Modified: head/sys/arm/at91/std.qila9g20 ============================================================================== --- head/sys/arm/at91/std.qila9g20 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/at91/std.qila9g20 Tue Jan 28 09:12:04 2014 (r261227) @@ -1,7 +1,6 @@ #$FreeBSD$ include "../at91/std.at91sam9" -options STARTUP_PAGETABLE_ADDR=0x20800000 makeoptions KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 options KERNPHYSADDR=0x20000000 Modified: head/sys/arm/at91/std.sam9260ek ============================================================================== --- head/sys/arm/at91/std.sam9260ek Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/at91/std.sam9260ek Tue Jan 28 09:12:04 2014 (r261227) @@ -1,7 +1,6 @@ # $FreeBSD$ include "../at91/std.at91sam9" -options STARTUP_PAGETABLE_ADDR=0x20800000 makeoptions KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 options KERNPHYSADDR=0x20000000 Modified: head/sys/arm/at91/std.sam9g20ek ============================================================================== --- head/sys/arm/at91/std.sam9g20ek Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/at91/std.sam9g20ek Tue Jan 28 09:12:04 2014 (r261227) @@ -1,7 +1,6 @@ #$FreeBSD$ include "../at91/std.at91sam9" -options STARTUP_PAGETABLE_ADDR=0x20800000 makeoptions KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 options KERNPHYSADDR=0x20000000 Modified: head/sys/arm/at91/std.sam9x25ek ============================================================================== --- head/sys/arm/at91/std.sam9x25ek Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/at91/std.sam9x25ek Tue Jan 28 09:12:04 2014 (r261227) @@ -1,7 +1,6 @@ #$FreeBSD$ include "../at91/std.at91sam9" -options STARTUP_PAGETABLE_ADDR=0x20800000 makeoptions KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 options KERNPHYSADDR=0x20000000 Modified: head/sys/arm/at91/std.sn9g45 ============================================================================== --- head/sys/arm/at91/std.sn9g45 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/at91/std.sn9g45 Tue Jan 28 09:12:04 2014 (r261227) @@ -1,7 +1,6 @@ #$FreeBSD$ include "../at91/std.at91sam9g45" -options STARTUP_PAGETABLE_ADDR=0x70800000 makeoptions KERNPHYSADDR=0x70008000 options KERNPHYSADDR=0x70008000 makeoptions KERNVIRTADDR=0xc0008000 Modified: head/sys/arm/at91/std.tsc4370 ============================================================================== --- head/sys/arm/at91/std.tsc4370 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/at91/std.tsc4370 Tue Jan 28 09:12:04 2014 (r261227) @@ -1,7 +1,6 @@ #$FreeBSD$ include "../at91/std.at91" -options STARTUP_PAGETABLE_ADDR=0x20800000 makeoptions KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 options KERNPHYSADDR=0x20000000 Modified: head/sys/arm/broadcom/bcm2835/std.rpi ============================================================================== --- head/sys/arm/broadcom/bcm2835/std.rpi Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/broadcom/bcm2835/std.rpi Tue Jan 28 09:12:04 2014 (r261227) @@ -7,6 +7,5 @@ makeoptions KERNVIRTADDR=0xc0100000 options KERNPHYSADDR=0x00100000 makeoptions KERNPHYSADDR=0x00100000 options PHYSADDR=0x00000000 -options STARTUP_PAGETABLE_ADDR=0x01000000 options FREEBSD_BOOT_LOADER options LINUX_BOOT_ABI Modified: head/sys/arm/conf/ATMEL ============================================================================== --- head/sys/arm/conf/ATMEL Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/conf/ATMEL Tue Jan 28 09:12:04 2014 (r261227) @@ -10,7 +10,6 @@ include "../at91/std.atmel" # Typical values for most SoCs and board configurations. Will not work for # at91sam9g45 or on some boards with non u-boot boot loaders. -options STARTUP_PAGETABLE_ADDR=0x20800000 makeoptions KERNPHYSADDR=0x20000000 makeoptions KERNVIRTADDR=0xc0000000 options KERNPHYSADDR=0x20000000 Modified: head/sys/arm/conf/CNS11XXNAS ============================================================================== --- head/sys/arm/conf/CNS11XXNAS Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/conf/CNS11XXNAS Tue Jan 28 09:12:04 2014 (r261227) @@ -25,7 +25,6 @@ ident CNS11XXNAS #options KERNVIRTADDR=0xc0200000 # Used in ldscript.arm #options FLASHADDR=0x50000000 #options LOADERRAMADDR=0x00000000 -#options STARTUP_PAGETABLE_ADDR=0x10000000 include "../econa/std.econa" Modified: head/sys/arm/conf/CRB ============================================================================== --- head/sys/arm/conf/CRB Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/conf/CRB Tue Jan 28 09:12:04 2014 (r261227) @@ -24,7 +24,6 @@ options KERNPHYSADDR=0x00200000 options KERNVIRTADDR=0xc0200000 # Used in ldscript.arm options COUNTS_PER_SEC=400000000 -options STARTUP_PAGETABLE_ADDR=0x00000000 include "../xscale/i8134x/std.crb" makeoptions MODULES_OVERRIDE="" Modified: head/sys/arm/conf/EP80219 ============================================================================== --- head/sys/arm/conf/EP80219 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/conf/EP80219 Tue Jan 28 09:12:04 2014 (r261227) @@ -23,7 +23,6 @@ options PHYSADDR=0xa0000000 options KERNPHYSADDR=0xa0200000 options KERNVIRTADDR=0xc0200000 # Used in ldscript.arm -options STARTUP_PAGETABLE_ADDR=0xa0000000 #options ARM32_NEW_VM_LAYOUT include "../xscale/i80321/std.ep80219" makeoptions MODULES_OVERRIDE="" Modified: head/sys/arm/conf/GUMSTIX ============================================================================== --- head/sys/arm/conf/GUMSTIX Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/conf/GUMSTIX Tue Jan 28 09:12:04 2014 (r261227) @@ -30,7 +30,6 @@ options PHYSADDR=0xa0000000 options KERNPHYSADDR=0xa0200000 options KERNVIRTADDR=0xc0200000 # Used in ldscript.arm -options STARTUP_PAGETABLE_ADDR=0xa0000000 include "../xscale/pxa/std.pxa" makeoptions MODULES_OVERRIDE="" Modified: head/sys/arm/conf/IQ31244 ============================================================================== --- head/sys/arm/conf/IQ31244 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/conf/IQ31244 Tue Jan 28 09:12:04 2014 (r261227) @@ -25,7 +25,6 @@ options KERNVIRTADDR=0xc0200000 # Used options FLASHADDR=0xf0000000 options LOADERRAMADDR=0x00000000 -options STARTUP_PAGETABLE_ADDR=0xa0000000 include "../xscale/i80321/std.iq31244" makeoptions MODULES_OVERRIDE="" Modified: head/sys/arm/conf/NSLU ============================================================================== --- head/sys/arm/conf/NSLU Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/conf/NSLU Tue Jan 28 09:12:04 2014 (r261227) @@ -25,7 +25,6 @@ ident NSLU #options KERNVIRTADDR=0xc0200000 # Used in ldscript.arm #options FLASHADDR=0x50000000 #options LOADERRAMADDR=0x00000000 -#options STARTUP_PAGETABLE_ADDR=0x10000000 include "../xscale/ixp425/std.ixp425" # NB: memory mapping is defined in std.avila (see also comment above) Modified: head/sys/arm/conf/VERSATILEPB ============================================================================== --- head/sys/arm/conf/VERSATILEPB Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/conf/VERSATILEPB Tue Jan 28 09:12:04 2014 (r261227) @@ -29,7 +29,6 @@ makeoptions KERNVIRTADDR=0xc0100000 options KERNPHYSADDR=0x00100000 makeoptions KERNPHYSADDR=0x00100000 options PHYSADDR=0x00000000 -options STARTUP_PAGETABLE_ADDR=0x01000000 options FREEBSD_BOOT_LOADER options LINUX_BOOT_ABI Modified: head/sys/arm/econa/std.econa ============================================================================== --- head/sys/arm/econa/std.econa Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/econa/std.econa Tue Jan 28 09:12:04 2014 (r261227) @@ -12,6 +12,5 @@ options KERNPHYSADDR=0x01000000 options KERNVIRTADDR=0xc1000000 # Used in ldscript.arm options FLASHADDR=0xD0000000 options LOADERRAMADDR=0x00000000 -options STARTUP_PAGETABLE_ADDR=0x00100000 options NO_EVENTTIMERS Modified: head/sys/arm/freescale/imx/std.imx51 ============================================================================== --- head/sys/arm/freescale/imx/std.imx51 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/freescale/imx/std.imx51 Tue Jan 28 09:12:04 2014 (r261227) @@ -9,7 +9,6 @@ makeoptions KERNVIRTADDR=0xc0100000 options KERNPHYSADDR=0x90100000 makeoptions KERNPHYSADDR=0x90100000 options PHYSADDR=0x90000000 -options STARTUP_PAGETABLE_ADDR=0x91000000 files "../freescale/imx/files.imx51" Modified: head/sys/arm/freescale/imx/std.imx53 ============================================================================== --- head/sys/arm/freescale/imx/std.imx53 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/freescale/imx/std.imx53 Tue Jan 28 09:12:04 2014 (r261227) @@ -9,7 +9,6 @@ makeoptions KERNVIRTADDR=0xc0100000 options KERNPHYSADDR=0x70100000 makeoptions KERNPHYSADDR=0x70100000 options PHYSADDR=0x70000000 -options STARTUP_PAGETABLE_ADDR=0x71000000 files "../freescale/imx/files.imx53" Modified: head/sys/arm/freescale/imx/std.imx6 ============================================================================== --- head/sys/arm/freescale/imx/std.imx6 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/freescale/imx/std.imx6 Tue Jan 28 09:12:04 2014 (r261227) @@ -9,7 +9,6 @@ makeoptions KERNVIRTADDR = 0xc2000000 options KERNPHYSADDR = 0x12000000 makeoptions KERNPHYSADDR = 0x12000000 options PHYSADDR = 0x10000000 -options STARTUP_PAGETABLE_ADDR = 0x11f00000 files "../freescale/imx/files.imx6" Modified: head/sys/arm/freescale/vybrid/std.vybrid ============================================================================== --- head/sys/arm/freescale/vybrid/std.vybrid Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/freescale/vybrid/std.vybrid Tue Jan 28 09:12:04 2014 (r261227) @@ -13,8 +13,6 @@ options KERNPHYSADDR=0x80100000 makeoptions KERNVIRTADDR=0xc0100000 options KERNVIRTADDR=0xc0100000 -options STARTUP_PAGETABLE_ADDR=0x81000000 - options ARM_L2_PIPT files "../freescale/vybrid/files.vybrid" Modified: head/sys/arm/lpc/std.lpc ============================================================================== --- head/sys/arm/lpc/std.lpc Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/lpc/std.lpc Tue Jan 28 09:12:04 2014 (r261227) @@ -8,7 +8,6 @@ cpu CPU_ARM9 machine arm makeoptions CONF_CFLAGS="-march=armv5te" options PHYSADDR=0x80000000 -options STARTUP_PAGETABLE_ADDR=0x80000000 makeoptions KERNPHYSADDR=0x80100000 options KERNPHYSADDR=0x80100000 makeoptions KERNVIRTADDR=0xc0100000 Modified: head/sys/arm/mv/armadaxp/std.armadaxp ============================================================================== --- head/sys/arm/mv/armadaxp/std.armadaxp Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/mv/armadaxp/std.armadaxp Tue Jan 28 09:12:04 2014 (r261227) @@ -12,6 +12,5 @@ makeoptions KERNVIRTADDR=0xc0200000 options KERNPHYSADDR=0x00200000 options KERNVIRTADDR=0xc0200000 options PHYSADDR=0x00000000 -options STARTUP_PAGETABLE_ADDR=0x00100000 options ARM_L2_PIPT Modified: head/sys/arm/mv/discovery/std.db78xxx ============================================================================== --- head/sys/arm/mv/discovery/std.db78xxx Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/mv/discovery/std.db78xxx Tue Jan 28 09:12:04 2014 (r261227) @@ -9,4 +9,3 @@ makeoptions KERNVIRTADDR=0xc0900000 options KERNPHYSADDR=0x00900000 options KERNVIRTADDR=0xc0900000 options PHYSADDR=0x00000000 -options STARTUP_PAGETABLE_ADDR=0x00100000 Modified: head/sys/arm/mv/kirkwood/std.kirkwood ============================================================================== --- head/sys/arm/mv/kirkwood/std.kirkwood Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/mv/kirkwood/std.kirkwood Tue Jan 28 09:12:04 2014 (r261227) @@ -12,4 +12,3 @@ makeoptions KERNVIRTADDR=0xc0900000 options KERNPHYSADDR=0x00900000 options KERNVIRTADDR=0xc0900000 options PHYSADDR=0x00000000 -options STARTUP_PAGETABLE_ADDR=0x00100000 Modified: head/sys/arm/mv/orion/std.db88f5xxx ============================================================================== --- head/sys/arm/mv/orion/std.db88f5xxx Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/mv/orion/std.db88f5xxx Tue Jan 28 09:12:04 2014 (r261227) @@ -9,4 +9,3 @@ makeoptions KERNVIRTADDR=0xc0900000 options KERNPHYSADDR=0x00900000 options KERNVIRTADDR=0xc0900000 options PHYSADDR=0x00000000 -options STARTUP_PAGETABLE_ADDR=0x00100000 Modified: head/sys/arm/mv/orion/std.ts7800 ============================================================================== --- head/sys/arm/mv/orion/std.ts7800 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/mv/orion/std.ts7800 Tue Jan 28 09:12:04 2014 (r261227) @@ -9,7 +9,6 @@ makeoptions KERNVIRTADDR=0xc0900000 options KERNPHYSADDR=0x00900000 options KERNVIRTADDR=0xc0900000 options PHYSADDR=0x00000000 -options STARTUP_PAGETABLE_ADDR=0x00100000 options LOADERRAMADDR=0x00000000 options FLASHADDR=0x00008000 Modified: head/sys/arm/rockchip/std.rk30xx ============================================================================== --- head/sys/arm/rockchip/std.rk30xx Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/rockchip/std.rk30xx Tue Jan 28 09:12:04 2014 (r261227) @@ -17,8 +17,6 @@ options KERNPHYSADDR=0x60400000 makeoptions KERNVIRTADDR=0xc0400000 options KERNVIRTADDR=0xc0400000 -options STARTUP_PAGETABLE_ADDR=0x60200000 - options ARM_L2_PIPT options IPI_IRQ_START=0 Modified: head/sys/arm/s3c2xx0/std.ln2410sbc ============================================================================== --- head/sys/arm/s3c2xx0/std.ln2410sbc Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/s3c2xx0/std.ln2410sbc Tue Jan 28 09:12:04 2014 (r261227) @@ -6,6 +6,5 @@ makeoptions KERNVIRTADDR=0xc0000000 options KERNPHYSADDR=0x30000000 options KERNVIRTADDR=0xc0000000 options PHYSADDR=0x30000000 -options STARTUP_PAGETABLE_ADDR=0x30800000 options NO_EVENTTIMERS Modified: head/sys/arm/samsung/exynos/std.exynos5 ============================================================================== --- head/sys/arm/samsung/exynos/std.exynos5 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/samsung/exynos/std.exynos5 Tue Jan 28 09:12:04 2014 (r261227) @@ -13,8 +13,6 @@ options KERNPHYSADDR=0x40f00000 makeoptions KERNVIRTADDR=0xc0f00000 options KERNVIRTADDR=0xc0f00000 -options STARTUP_PAGETABLE_ADDR=0x40100000 - options ARM_L2_PIPT options IPI_IRQ_START=0 Modified: head/sys/arm/tegra/std.tegra2 ============================================================================== --- head/sys/arm/tegra/std.tegra2 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/tegra/std.tegra2 Tue Jan 28 09:12:04 2014 (r261227) @@ -11,6 +11,4 @@ options KERNPHYSADDR=0x00200000 makeoptions KERNVIRTADDR=0xc0200000 options KERNVIRTADDR=0xc0200000 -options STARTUP_PAGETABLE_ADDR=0x00100000 - files "../tegra/files.tegra2" Modified: head/sys/arm/ti/am335x/std.am335x ============================================================================== --- head/sys/arm/ti/am335x/std.am335x Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/ti/am335x/std.am335x Tue Jan 28 09:12:04 2014 (r261227) @@ -14,8 +14,6 @@ makeoptions KERNPHYSADDR=0x80200000 options KERNVIRTADDR=0xc0200000 # Used in ldscript.arm makeoptions KERNVIRTADDR=0xc0200000 -options STARTUP_PAGETABLE_ADDR=0x80000000 - options SOC_TI_AM335X options ARM_L2_PIPT Modified: head/sys/arm/ti/omap4/std.omap4 ============================================================================== --- head/sys/arm/ti/omap4/std.omap4 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/ti/omap4/std.omap4 Tue Jan 28 09:12:04 2014 (r261227) @@ -14,8 +14,6 @@ makeoptions KERNPHYSADDR=0x80200000 options KERNVIRTADDR=0xc0200000 # Used in ldscript.arm makeoptions KERNVIRTADDR=0xc0200000 -options STARTUP_PAGETABLE_ADDR=0x80000000 - options SOC_OMAP4 options ARM_L2_PIPT Modified: head/sys/arm/xilinx/std.zynq7 ============================================================================== --- head/sys/arm/xilinx/std.zynq7 Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/xilinx/std.zynq7 Tue Jan 28 09:12:04 2014 (r261227) @@ -18,6 +18,5 @@ makeoptions KERNPHYSADDR=0x00100000 options KERNVIRTADDR=0xc0100000 # Used in ldscript.arm makeoptions KERNVIRTADDR=0xc0100000 -options STARTUP_PAGETABLE_ADDR=0x000f0000 options ARM_L2_PIPT Modified: head/sys/arm/xscale/ixp425/std.avila ============================================================================== --- head/sys/arm/xscale/ixp425/std.avila Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/arm/xscale/ixp425/std.avila Tue Jan 28 09:12:04 2014 (r261227) @@ -19,4 +19,3 @@ options KERNVIRTADDR=0xc0200000 # Used makeoptions KERNVIRTADDR=0xc0200000 options FLASHADDR=0x50000000 options LOADERRAMADDR=0x00000000 -options STARTUP_PAGETABLE_ADDR=0x00000000 Modified: head/sys/conf/ldscript.arm ============================================================================== --- head/sys/conf/ldscript.arm Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/conf/ldscript.arm Tue Jan 28 09:12:04 2014 (r261227) @@ -107,6 +107,12 @@ SECTIONS *(.dynbss) *(.bss) *(COMMON) + . = ALIGN(32 / 8); + _ebss = .; + /* A section for the initial page table, it doesn't need to be in the + kernel file, however unlike normal .bss entries should not be zeroed + out as we use it before the .bss section is cleared. */ + *(.init_pagetable) } . = ALIGN(32 / 8); _end = . ; Modified: head/sys/conf/options.arm ============================================================================== --- head/sys/conf/options.arm Tue Jan 28 08:49:00 2014 (r261226) +++ head/sys/conf/options.arm Tue Jan 28 09:12:04 2014 (r261227) @@ -50,7 +50,6 @@ SOC_OMAP3 opt_global.h SOC_OMAP4 opt_global.h SOC_TI_AM335X opt_global.h SOC_TEGRA2 opt_global.h -STARTUP_PAGETABLE_ADDR opt_global.h XSCALE_CACHE_READ_WRITE_ALLOCATE opt_global.h XSACLE_DISABLE_CCNT opt_timer.h VERBOSE_INIT_ARM opt_global.h From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 09:55:08 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7A239D61; Tue, 28 Jan 2014 09:55:08 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6663F1B29; Tue, 28 Jan 2014 09:55:08 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0S9t88x005918; Tue, 28 Jan 2014 09:55:08 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0S9t8pv005917; Tue, 28 Jan 2014 09:55:08 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201401280955.s0S9t8pv005917@svn.freebsd.org> From: Hans Petter Selasky Date: Tue, 28 Jan 2014 09:55:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261228 - head/sys/dev/usb/input X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 09:55:08 -0000 Author: hselasky Date: Tue Jan 28 09:55:07 2014 New Revision: 261228 URL: http://svnweb.freebsd.org/changeset/base/261228 Log: When detaching a [USB] keyboard, keys might still be pressed. Ensure that all pressed keys are released before completing the USB keyboard detach. This will prevent so-called "ghost-keys" from appearing after that the USB device generating the key event(s) has been detached. MFC after: 1 week Modified: head/sys/dev/usb/input/ukbd.c Modified: head/sys/dev/usb/input/ukbd.c ============================================================================== --- head/sys/dev/usb/input/ukbd.c Tue Jan 28 09:12:04 2014 (r261227) +++ head/sys/dev/usb/input/ukbd.c Tue Jan 28 09:55:07 2014 (r261228) @@ -473,7 +473,8 @@ ukbd_get_key(struct ukbd_softc *sc, uint || (sc->sc_flags & UKBD_FLAG_POLLING) != 0, ("not polling in kdb or panic\n")); - if (sc->sc_inputs == 0) { + if (sc->sc_inputs == 0 && + (sc->sc_flags & UKBD_FLAG_GONE) == 0) { /* start transfer, if not already started */ usbd_transfer_start(sc->sc_xfer[UKBD_INTR_DT]); } @@ -1319,6 +1320,18 @@ ukbd_detach(device_t dev) usb_callout_stop(&sc->sc_callout); + /* kill any stuck keys */ + if (sc->sc_flags & UKBD_FLAG_ATTACHED) { + /* stop receiving events from the USB keyboard */ + usbd_transfer_stop(sc->sc_xfer[UKBD_INTR_DT]); + + /* release all leftover keys, if any */ + memset(&sc->sc_ndata, 0, sizeof(sc->sc_ndata)); + + /* process releasing of all keys */ + ukbd_interrupt(sc); + } + ukbd_disable(&sc->sc_kbd); #ifdef KBD_INSTALL_CDEV From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 12:26:39 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7D13F302; Tue, 28 Jan 2014 12:26:39 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 686ED178D; Tue, 28 Jan 2014 12:26:39 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SCQdNL061945; Tue, 28 Jan 2014 12:26:39 GMT (envelope-from maxim@svn.freebsd.org) Received: (from maxim@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SCQddx061944; Tue, 28 Jan 2014 12:26:39 GMT (envelope-from maxim@svn.freebsd.org) Message-Id: <201401281226.s0SCQddx061944@svn.freebsd.org> From: Maxim Konovalov Date: Tue, 28 Jan 2014 12:26:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261229 - head/usr.sbin/bhyveload X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 12:26:39 -0000 Author: maxim Date: Tue Jan 28 12:26:38 2014 New Revision: 261229 URL: http://svnweb.freebsd.org/changeset/base/261229 Log: o Fix typo, sort .Xrs. PR: docs/186191 Submitted by: Andrew (typo fix) MFC after: 1 week Modified: head/usr.sbin/bhyveload/bhyveload.8 Modified: head/usr.sbin/bhyveload/bhyveload.8 ============================================================================== --- head/usr.sbin/bhyveload/bhyveload.8 Tue Jan 28 09:55:07 2014 (r261228) +++ head/usr.sbin/bhyveload/bhyveload.8 Tue Jan 28 12:26:38 2014 (r261229) @@ -134,10 +134,10 @@ device .Dl "bhyveload -m 256MB -h /usr/images/test -c /dev/nmdm1B test-vm" .Sh SEE ALSO .Xr bhyve 4 , +.Xr nmdm 4 , +.Xr vmm 4 , .Xr bhyve 8 , -.Xr loader 8 , -.Xr nmdm 4, -.Xr vmm 4 +.Xr loader 8 .Sh HISTORY .Nm first appeared in From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 12:48:19 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 04E5AB93; Tue, 28 Jan 2014 12:48:19 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E41051968; Tue, 28 Jan 2014 12:48:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SCmIQO070226; Tue, 28 Jan 2014 12:48:18 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SCmIWG070223; Tue, 28 Jan 2014 12:48:18 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201401281248.s0SCmIWG070223@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Tue, 28 Jan 2014 12:48:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261230 - head/lib/libfetch X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 12:48:19 -0000 Author: des Date: Tue Jan 28 12:48:17 2014 New Revision: 261230 URL: http://svnweb.freebsd.org/changeset/base/261230 Log: Solve http buffering issues and hangs once and for all (hopefully!) by simply not trying to return exactly what the caller asked for - just return whatever we got and let the caller be the judge of whether it was enough. If an error occurs or the connection times out after we already received some data, return a short read, under the assumption that the next call will fail or time out before we read anything. As it turns out, none of the code that calls fetch_read() assumes an all-or-nothing result anyway, except for a couple of lines where we read the CR LF at the end of a hunk in HTTP hunked encoding, so the changes outside of fetch_read() and http_readfn() are minimal. While there, replace select(2) with poll(2). MFC after: 3 days Modified: head/lib/libfetch/common.c head/lib/libfetch/common.h head/lib/libfetch/http.c Modified: head/lib/libfetch/common.c ============================================================================== --- head/lib/libfetch/common.c Tue Jan 28 12:26:38 2014 (r261229) +++ head/lib/libfetch/common.c Tue Jan 28 12:48:17 2014 (r261230) @@ -41,6 +41,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include @@ -641,7 +642,7 @@ fetch_ssl_verify_hname(X509 *cert, const struct addrinfo *ip; STACK_OF(GENERAL_NAME) *altnames; X509_NAME *subject; - int ret; + int ret; ret = 0; ip = fetch_ssl_get_numeric_addrinfo(host, strlen(host)); @@ -913,33 +914,6 @@ fetch_ssl_read(SSL *ssl, char *buf, size } #endif -/* - * Cache some data that was read from a socket but cannot be immediately - * returned because of an interrupted system call. - */ -static int -fetch_cache_data(conn_t *conn, char *src, size_t nbytes) -{ - char *tmp; - - if (conn->cache.size < nbytes) { - tmp = realloc(conn->cache.buf, nbytes); - if (tmp == NULL) { - fetch_syserr(); - return (-1); - } - conn->cache.buf = tmp; - conn->cache.size = nbytes; - } - - memcpy(conn->cache.buf, src, nbytes); - conn->cache.len = nbytes; - conn->cache.pos = 0; - - return (0); -} - - static ssize_t fetch_socket_read(int sd, char *buf, size_t len) { @@ -962,46 +936,31 @@ ssize_t fetch_read(conn_t *conn, char *buf, size_t len) { struct timeval now, timeout, delta; - fd_set readfds; - ssize_t rlen, total; - char *start; + struct pollfd pfd; + ssize_t rlen; + int deltams; if (fetchTimeout > 0) { gettimeofday(&timeout, NULL); timeout.tv_sec += fetchTimeout; } - total = 0; - start = buf; + deltams = INFTIM; + memset(&pfd, 0, sizeof pfd); + pfd.fd = conn->sd; + pfd.events = POLLIN | POLLERR; - if (conn->cache.len > 0) { - /* - * The last invocation of fetch_read was interrupted by a - * signal after some data had been read from the socket. Copy - * the cached data into the supplied buffer before trying to - * read from the socket again. - */ - total = (conn->cache.len < len) ? conn->cache.len : len; - memcpy(buf, conn->cache.buf, total); - - conn->cache.len -= total; - conn->cache.pos += total; - len -= total; - buf += total; - } - - while (len > 0) { + for (;;) { /* * The socket is non-blocking. Instead of the canonical - * select() -> read(), we do the following: + * poll() -> read(), we do the following: * * 1) call read() or SSL_read(). - * 2) if an error occurred, return -1. - * 3) if we received data but we still expect more, - * update our counters and loop. + * 2) if we received some data, return it. + * 3) if an error occurred, return -1. * 4) if read() or SSL_read() signaled EOF, return. * 5) if we did not receive any data but we're not at EOF, - * call select(). + * call poll(). * * In the SSL case, this is necessary because if we * receive a close notification, we have to call @@ -1017,46 +976,34 @@ fetch_read(conn_t *conn, char *buf, size else #endif rlen = fetch_socket_read(conn->sd, buf, len); - if (rlen == 0) { + if (rlen > 0) { break; - } else if (rlen > 0) { - len -= rlen; - buf += rlen; - total += rlen; - continue; } else if (rlen == FETCH_READ_ERROR) { if (errno == EINTR) - fetch_cache_data(conn, start, total); + break; return (-1); } - // assert(rlen == FETCH_READ_WAIT); - FD_ZERO(&readfds); - while (!FD_ISSET(conn->sd, &readfds)) { - FD_SET(conn->sd, &readfds); - if (fetchTimeout > 0) { - gettimeofday(&now, NULL); - if (!timercmp(&timeout, &now, >)) { - errno = ETIMEDOUT; - fetch_syserr(); - return (-1); - } - timersub(&timeout, &now, &delta); - } - errno = 0; - if (select(conn->sd + 1, &readfds, NULL, NULL, - fetchTimeout > 0 ? &delta : NULL) < 0) { - if (errno == EINTR) { - if (fetchRestartCalls) - continue; - /* Save anything that was read. */ - fetch_cache_data(conn, start, total); - } + if (fetchTimeout > 0) { + gettimeofday(&now, NULL); + if (!timercmp(&timeout, &now, >)) { + errno = ETIMEDOUT; fetch_syserr(); return (-1); } + timersub(&timeout, &now, &delta); + deltams = delta.tv_sec * 1000 + + delta.tv_usec / 1000;; + } + errno = 0; + pfd.revents = 0; + if (poll(&pfd, 1, deltams) < 0) { + if (errno == EINTR && fetchRestartCalls) + continue; + fetch_syserr(); + return (-1); } } - return (total); + return (rlen); } @@ -1130,20 +1077,21 @@ ssize_t fetch_writev(conn_t *conn, struct iovec *iov, int iovcnt) { struct timeval now, timeout, delta; - fd_set writefds; + struct pollfd pfd; ssize_t wlen, total; - int r; + int deltams, r; + memset(&pfd, 0, sizeof pfd); if (fetchTimeout) { - FD_ZERO(&writefds); + pfd.fd = conn->sd; + pfd.events = POLLOUT | POLLERR; gettimeofday(&timeout, NULL); timeout.tv_sec += fetchTimeout; } total = 0; while (iovcnt > 0) { - while (fetchTimeout && !FD_ISSET(conn->sd, &writefds)) { - FD_SET(conn->sd, &writefds); + while (fetchTimeout && pfd.revents == 0) { gettimeofday(&now, NULL); delta.tv_sec = timeout.tv_sec - now.tv_sec; delta.tv_usec = timeout.tv_usec - now.tv_usec; @@ -1156,9 +1104,9 @@ fetch_writev(conn_t *conn, struct iovec fetch_syserr(); return (-1); } + deltams = delta.tv_sec * 1000 + delta.tv_usec / 1000;; errno = 0; - r = select(conn->sd + 1, NULL, &writefds, NULL, &delta); - if (r == -1) { + if ((r = poll(&pfd, 1, deltams)) == -1) { if (errno == EINTR && fetchRestartCalls) continue; return (-1); @@ -1250,7 +1198,6 @@ fetch_close(conn_t *conn) } #endif ret = close(conn->sd); - free(conn->cache.buf); free(conn->buf); free(conn); return (ret); Modified: head/lib/libfetch/common.h ============================================================================== --- head/lib/libfetch/common.h Tue Jan 28 12:26:38 2014 (r261229) +++ head/lib/libfetch/common.h Tue Jan 28 12:48:17 2014 (r261230) @@ -52,13 +52,6 @@ struct fetchconn { size_t bufsize; /* buffer size */ size_t buflen; /* length of buffer contents */ int err; /* last protocol reply code */ - struct { /* data cached after an interrupted - read */ - char *buf; - size_t size; - size_t pos; - size_t len; - } cache; #ifdef WITH_SSL SSL *ssl; /* SSL handle */ SSL_CTX *ssl_ctx; /* SSL context */ Modified: head/lib/libfetch/http.c ============================================================================== --- head/lib/libfetch/http.c Tue Jan 28 12:26:38 2014 (r261229) +++ head/lib/libfetch/http.c Tue Jan 28 12:48:17 2014 (r261230) @@ -208,6 +208,7 @@ static int http_fillbuf(struct httpio *io, size_t len) { ssize_t nbytes; + char ch; if (io->error) return (-1); @@ -249,10 +250,8 @@ http_fillbuf(struct httpio *io, size_t l io->chunksize -= io->buflen; if (io->chunksize == 0) { - char endl[2]; - - if (fetch_read(io->conn, endl, 2) != 2 || - endl[0] != '\r' || endl[1] != '\n') + if (fetch_read(io->conn, &ch, 1) != 1 || ch != '\r' || + fetch_read(io->conn, &ch, 1) != 1 || ch != '\n') return (-1); } @@ -268,31 +267,28 @@ static int http_readfn(void *v, char *buf, int len) { struct httpio *io = (struct httpio *)v; - int l, pos; + int rlen; if (io->error) return (-1); if (io->eof) return (0); - for (pos = 0; len > 0; pos += l, len -= l) { - /* empty buffer */ - if (!io->buf || io->bufpos == io->buflen) - if (http_fillbuf(io, len) < 1) - break; - l = io->buflen - io->bufpos; - if (len < l) - l = len; - memcpy(buf + pos, io->buf + io->bufpos, l); - io->bufpos += l; + /* empty buffer */ + if (!io->buf || io->bufpos == io->buflen) { + if (http_fillbuf(io, len) < 1) { + if (io->error == EINTR) + io->error = 0; + return (-1); + } } - if (!pos && io->error) { - if (io->error == EINTR) - io->error = 0; - return (-1); - } - return (pos); + rlen = io->buflen - io->bufpos; + if (len < rlen) + rlen = len; + memcpy(buf, io->buf + io->bufpos, rlen); + io->bufpos += rlen; + return (rlen); } /* From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 13:29:55 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 15CE39A1; Tue, 28 Jan 2014 13:29:55 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 012B11D74; Tue, 28 Jan 2014 13:29:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SDTs5p086099; Tue, 28 Jan 2014 13:29:54 GMT (envelope-from ache@svn.freebsd.org) Received: (from ache@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SDTsbw086098; Tue, 28 Jan 2014 13:29:54 GMT (envelope-from ache@svn.freebsd.org) Message-Id: <201401281329.s0SDTsbw086098@svn.freebsd.org> From: "Andrey A. Chernov" Date: Tue, 28 Jan 2014 13:29:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261231 - stable/10/usr.sbin/cron/cron X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 13:29:55 -0000 Author: ache Date: Tue Jan 28 13:29:54 2014 New Revision: 261231 URL: http://svnweb.freebsd.org/changeset/base/261231 Log: MFC: r261146 Bad timespec_subtract() calculations produce negative tv_nsec on i386 which cause EINVAL returned from nanosleep() which cause loop in cron_sleep() and making all cron jobs to start about 30 seconds earlier (which cause f.e. logfiles rotation by newsyslog delayed by 1 hour). Use simple and proved calculations from kernel's timespecsub() instead. Modified: stable/10/usr.sbin/cron/cron/cron.c Directory Properties: stable/10/ (props changed) Modified: stable/10/usr.sbin/cron/cron/cron.c ============================================================================== --- stable/10/usr.sbin/cron/cron/cron.c Tue Jan 28 12:48:17 2014 (r261230) +++ stable/10/usr.sbin/cron/cron/cron.c Tue Jan 28 13:29:54 2014 (r261231) @@ -376,30 +376,17 @@ cron_sync(int secres) { } } -static int +static void timespec_subtract(struct timespec *result, struct timespec *x, struct timespec *y) { - time_t nsec; - - /* Perform the carry for the later subtraction by updating y. */ - if (x->tv_nsec < y->tv_nsec) { - nsec = (y->tv_nsec - x->tv_nsec) / 10000000 + 1; - y->tv_nsec -= 1000000000 * nsec; - y->tv_sec += nsec; - } - if (x->tv_nsec - y->tv_nsec > 1000000000) { - nsec = (x->tv_nsec - y->tv_nsec) / 1000000000; - y->tv_nsec += 1000000000 * nsec; - y->tv_sec -= nsec; - } - - /* tv_nsec is certainly positive. */ - result->tv_sec = x->tv_sec - y->tv_sec; - result->tv_nsec = x->tv_nsec - y->tv_nsec; - - /* Return True if result is negative. */ - return (x->tv_sec < y->tv_sec); + *result = *x; + result->tv_sec -= y->tv_sec; + result->tv_nsec -= y->tv_nsec; + if (result->tv_nsec < 0) { + result->tv_sec--; + result->tv_nsec += 1000000000; + } } static void From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 14:11:10 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 53A3D7D0; Tue, 28 Jan 2014 14:11:10 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3EC81113C; Tue, 28 Jan 2014 14:11:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SEBA42004126; Tue, 28 Jan 2014 14:11:10 GMT (envelope-from skreuzer@svn.freebsd.org) Received: (from skreuzer@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SEBANg004105; Tue, 28 Jan 2014 14:11:10 GMT (envelope-from skreuzer@svn.freebsd.org) Message-Id: <201401281411.s0SEBANg004105@svn.freebsd.org> From: Steven Kreuzer Date: Tue, 28 Jan 2014 14:11:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261232 - head/share/misc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 14:11:10 -0000 Author: skreuzer (doc,ports committer) Date: Tue Jan 28 14:11:09 2014 New Revision: 261232 URL: http://svnweb.freebsd.org/changeset/base/261232 Log: Add missing 'n' after '\' Reported by: gavin Approved by: hrs (mentor) Modified: head/share/misc/committers-doc.dot Modified: head/share/misc/committers-doc.dot ============================================================================== --- head/share/misc/committers-doc.dot Tue Jan 28 13:29:54 2014 (r261231) +++ head/share/misc/committers-doc.dot Tue Jan 28 14:11:09 2014 (r261232) @@ -84,7 +84,7 @@ remko [label="Remko Lodder\nremko@FreeBS rene [label="Rene Ladan\nrene@FreeBSD.org\n2008/11/03"] ryusuke [label="Ryusuke Suzuki\nryusuke@FreeBSD.org\n2009/12/21"] simon [label="Simon L. Nielsen\nsimon@FreeBSD.org\n2003/07/20"] -skreuzer [label="Steven Kreuzer\skreuzer@FreeBSD.org\n2014/01/15"] +skreuzer [label="Steven Kreuzer\nskreuzer@FreeBSD.org\n2014/01/15"] taras [label="Taras Korenko\ntaras@FreeBSD.org\n2010/06/25"] trhodes [label="Tom Rhodes\ntrhodes@FreeBSD.org\n2002/03/25"] wblock [label="Warren Block\nwblock@FreeBSD.org\n2011/09/12"] From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 14:29:25 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 04A4F4F0; Tue, 28 Jan 2014 14:29:25 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E477B1277; Tue, 28 Jan 2014 14:29:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SETOGQ011955; Tue, 28 Jan 2014 14:29:24 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SETOfK011954; Tue, 28 Jan 2014 14:29:24 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201401281429.s0SETOfK011954@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Tue, 28 Jan 2014 14:29:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261233 - head/usr.bin/fetch X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 14:29:25 -0000 Author: des Date: Tue Jan 28 14:29:24 2014 New Revision: 261233 URL: http://svnweb.freebsd.org/changeset/base/261233 Log: whitespace and bump copyright Modified: head/usr.bin/fetch/fetch.c Modified: head/usr.bin/fetch/fetch.c ============================================================================== --- head/usr.bin/fetch/fetch.c Tue Jan 28 14:11:09 2014 (r261232) +++ head/usr.bin/fetch/fetch.c Tue Jan 28 14:29:24 2014 (r261233) @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2000-2011 Dag-Erling Smørgrav + * Copyright (c) 2000-2014 Dag-Erling Smørgrav * Copyright (c) 2013 Michael Gmelin * All rights reserved. * @@ -109,7 +109,7 @@ enum options OPTION_SSL_CLIENT_KEY_FILE, OPTION_SSL_CRL_FILE, OPTION_SSL_NO_SSL3, - OPTION_SSL_NO_TLS1, + OPTION_SSL_NO_TLS1, OPTION_SSL_NO_VERIFY_HOSTNAME, OPTION_SSL_NO_VERIFY_PEER }; @@ -147,7 +147,7 @@ static struct option longopts[] = { "passive-portrange-default", no_argument, NULL, 'T' }, { "verbose", no_argument, NULL, 'v' }, { "retry-delay", required_argument, NULL, 'w' }, - + /* options without a single character equivalent */ { "bind-address", required_argument, NULL, OPTION_BIND_ADDRESS }, { "no-passive", no_argument, NULL, OPTION_NO_FTP_PASSIVE_MODE }, From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 14:32:05 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5801185F; Tue, 28 Jan 2014 14:32:05 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2A4C71304; Tue, 28 Jan 2014 14:32:05 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SEW5Ne015018; Tue, 28 Jan 2014 14:32:05 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SEW4iS015016; Tue, 28 Jan 2014 14:32:04 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201401281432.s0SEW4iS015016@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Tue, 28 Jan 2014 14:32:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261234 - head/usr.bin/fetch X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 14:32:05 -0000 Author: des Date: Tue Jan 28 14:32:04 2014 New Revision: 261234 URL: http://svnweb.freebsd.org/changeset/base/261234 Log: Increase the default (and minimum) buffer size from 4 kB to 16 kB. Also, propagate the buffer size to libc, which uses a 1 kB buffer by default, negating any hypothetical benefit of increasing fetch(1)'s buffer size. MFC after: 3 days Modified: head/usr.bin/fetch/fetch.1 head/usr.bin/fetch/fetch.c Modified: head/usr.bin/fetch/fetch.1 ============================================================================== --- head/usr.bin/fetch/fetch.1 Tue Jan 28 14:29:24 2014 (r261233) +++ head/usr.bin/fetch/fetch.1 Tue Jan 28 14:32:04 2014 (r261234) @@ -1,5 +1,5 @@ .\"- -.\" Copyright (c) 2000-2013 Dag-Erling Smørgrav +.\" Copyright (c) 2000-2014 Dag-Erling Smørgrav .\" Copyright (c) 2013 Michael Gmelin .\" All rights reserved. .\" Portions Copyright (c) 1999 Massachusetts Institute of Technology; used @@ -30,7 +30,7 @@ .\" .\" $FreeBSD$ .\" -.Dd July 30, 2013 +.Dd January 28, 2014 .Dt FETCH 1 .Os .Sh NAME @@ -118,7 +118,7 @@ Automatically retry the transfer upon so Allow SSL version 2 when negotiating the connection. .It Fl B Ar bytes , Fl -buffer-size= Ns Ar bytes Specify the read buffer size in bytes. -The default is 4096 bytes. +The default is 16,384 bytes. Attempts to set a buffer size lower than this will be silently ignored. The number of reads actually performed is reported at verbosity level Modified: head/usr.bin/fetch/fetch.c ============================================================================== --- head/usr.bin/fetch/fetch.c Tue Jan 28 14:29:24 2014 (r261233) +++ head/usr.bin/fetch/fetch.c Tue Jan 28 14:32:04 2014 (r261234) @@ -49,7 +49,7 @@ __FBSDID("$FreeBSD$"); #include -#define MINBUFSIZE 4096 +#define MINBUFSIZE 16384 #define TIMEOUT 120 /* Option flags */ @@ -716,6 +716,7 @@ fetch(char *URL, const char *path) sigalrm = siginfo = sigint = 0; /* suck in the data */ + setvbuf(f, NULL, _IOFBF, B_size); signal(SIGINFO, sig_handler); while (!sigint) { if (us.size != -1 && us.size - count < B_size && From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 14:39:07 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7C0D2C99; Tue, 28 Jan 2014 14:39:07 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 66B79134C; Tue, 28 Jan 2014 14:39:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SEd7hs016076; Tue, 28 Jan 2014 14:39:07 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SEd5fA016067; Tue, 28 Jan 2014 14:39:05 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201401281439.s0SEd5fA016067@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Tue, 28 Jan 2014 14:39:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261235 - head/sys/fs/ext2fs X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 14:39:07 -0000 Author: pfg Date: Tue Jan 28 14:39:05 2014 New Revision: 261235 URL: http://svnweb.freebsd.org/changeset/base/261235 Log: ext2fs: Use i_flag instead of i_flags for Ext4 inode flags. The ext4 inode flags do not have equivalents for chflags (1) and hold information that is private to the implementation. The i_flag field in the inode is a better place to hold the Ext4 inode flags as it saves us from masking flags while setting or getting attributes. It should also make things cleaner if we implement write support for Ext4. Suggested by: bde Tested by: Mike Ma MFC after: 3 days Modified: head/sys/fs/ext2fs/ext2_bmap.c head/sys/fs/ext2fs/ext2_htree.c head/sys/fs/ext2fs/ext2_inode_cnv.c head/sys/fs/ext2fs/ext2_lookup.c head/sys/fs/ext2fs/ext2_subr.c head/sys/fs/ext2fs/ext2_vfsops.c head/sys/fs/ext2fs/ext2_vnops.c head/sys/fs/ext2fs/inode.h Modified: head/sys/fs/ext2fs/ext2_bmap.c ============================================================================== --- head/sys/fs/ext2fs/ext2_bmap.c Tue Jan 28 14:32:04 2014 (r261234) +++ head/sys/fs/ext2fs/ext2_bmap.c Tue Jan 28 14:39:05 2014 (r261235) @@ -74,7 +74,7 @@ ext2_bmap(struct vop_bmap_args *ap) if (ap->a_bnp == NULL) return (0); - if (VTOI(ap->a_vp)->i_flags & E4_EXTENTS) + if (VTOI(ap->a_vp)->i_flag & IN_E4EXTENTS) error = ext4_bmapext(ap->a_vp, ap->a_bn, &blkno, ap->a_runp, ap->a_runb); else Modified: head/sys/fs/ext2fs/ext2_htree.c ============================================================================== --- head/sys/fs/ext2fs/ext2_htree.c Tue Jan 28 14:32:04 2014 (r261234) +++ head/sys/fs/ext2fs/ext2_htree.c Tue Jan 28 14:39:05 2014 (r261235) @@ -90,7 +90,7 @@ int ext2_htree_has_idx(struct inode *ip) { if (EXT2_HAS_COMPAT_FEATURE(ip->i_e2fs, EXT2F_COMPAT_DIRHASHINDEX) && - ip->i_flags & E4_INDEX) + ip->i_flag & IN_E4INDEX) return (1); else return (0); @@ -654,7 +654,7 @@ ext2_htree_create_index(struct vnode *vp ((char *)ep + ep->e2d_reclen); ep->e2d_reclen = buf1 + blksize - (char *)ep; - dp->i_flags |= E4_INDEX; + dp->i_flag |= IN_E4INDEX; /* * Initialize index root. Modified: head/sys/fs/ext2fs/ext2_inode_cnv.c ============================================================================== --- head/sys/fs/ext2fs/ext2_inode_cnv.c Tue Jan 28 14:32:04 2014 (r261234) +++ head/sys/fs/ext2fs/ext2_inode_cnv.c Tue Jan 28 14:39:05 2014 (r261235) @@ -108,8 +108,8 @@ ext2_ei2i(struct ext2fs_dinode *ei, stru ip->i_flags |= (ei->e2di_flags & EXT2_APPEND) ? SF_APPEND : 0; ip->i_flags |= (ei->e2di_flags & EXT2_IMMUTABLE) ? SF_IMMUTABLE : 0; ip->i_flags |= (ei->e2di_flags & EXT2_NODUMP) ? UF_NODUMP : 0; - ip->i_flags |= (ei->e2di_flags & EXT4_INDEX) ? E4_INDEX : 0; - ip->i_flags |= (ei->e2di_flags & EXT4_EXTENTS) ? E4_EXTENTS : 0; + ip->i_flag |= (ei->e2di_flags & EXT4_INDEX) ? IN_E4INDEX : 0; + ip->i_flag |= (ei->e2di_flags & EXT4_EXTENTS) ? IN_E4EXTENTS : 0; ip->i_blocks = ei->e2di_nblock; if (E2DI_HAS_HUGE_FILE(ip)) { ip->i_blocks |= (uint64_t)ei->e2di_nblock_high << 32; @@ -158,6 +158,8 @@ ext2_i2ei(struct inode *ip, struct ext2f ei->e2di_flags |= (ip->i_flags & SF_APPEND) ? EXT2_APPEND: 0; ei->e2di_flags |= (ip->i_flags & SF_IMMUTABLE) ? EXT2_IMMUTABLE: 0; ei->e2di_flags |= (ip->i_flags & UF_NODUMP) ? EXT2_NODUMP: 0; + ei->e2di_flags |= (ip->i_flag & IN_E4INDEX) ? EXT4_INDEX: 0; + ei->e2di_flags |= (ip->i_flag & IN_E4EXTENTS) ? EXT4_EXTENTS: 0; ei->e2di_nblock = ip->i_blocks & 0xffffffff; ei->e2di_nblock_high = ip->i_blocks >> 32 & 0xffff; ei->e2di_gen = ip->i_gen; Modified: head/sys/fs/ext2fs/ext2_lookup.c ============================================================================== --- head/sys/fs/ext2fs/ext2_lookup.c Tue Jan 28 14:32:04 2014 (r261234) +++ head/sys/fs/ext2fs/ext2_lookup.c Tue Jan 28 14:39:05 2014 (r261235) @@ -887,7 +887,7 @@ ext2_direnter(struct inode *ip, struct v if (ext2_htree_has_idx(dp)) { error = ext2_htree_add_entry(dvp, &newdir, cnp); if (error) { - dp->i_flags &= ~E4_INDEX; + dp->i_flag &= ~IN_E4INDEX; dp->i_flag |= IN_CHANGE | IN_UPDATE; } return (error); Modified: head/sys/fs/ext2fs/ext2_subr.c ============================================================================== --- head/sys/fs/ext2fs/ext2_subr.c Tue Jan 28 14:32:04 2014 (r261234) +++ head/sys/fs/ext2fs/ext2_subr.c Tue Jan 28 14:39:05 2014 (r261235) @@ -82,10 +82,10 @@ ext2_blkatoff(struct vnode *vp, off_t of *bpp = NULL; /* - * E4_EXTENTS requires special treatment as we can otherwise fall + * IN_E4EXTENTS requires special treatment as we can otherwise fall * back to the normal path. */ - if (!(ip->i_flags & E4_EXTENTS)) + if (!(ip->i_flag & IN_E4EXTENTS)) goto normal; memset(&path, 0, sizeof(path)); @@ -110,7 +110,7 @@ ext2_blkatoff(struct vnode *vp, off_t of if (res) *res = (char *)bp->b_data + blkoff(fs, offset); /* - * If E4_EXTENTS is enabled we would get a wrong offset so + * If IN_E4EXTENTS is enabled we would get a wrong offset so * reset b_offset here. */ bp->b_offset = lbn * bsize; Modified: head/sys/fs/ext2fs/ext2_vfsops.c ============================================================================== --- head/sys/fs/ext2fs/ext2_vfsops.c Tue Jan 28 14:32:04 2014 (r261234) +++ head/sys/fs/ext2fs/ext2_vfsops.c Tue Jan 28 14:39:05 2014 (r261235) @@ -964,10 +964,10 @@ ext2_vget(struct mount *mp, ino_t ino, i * blocks are zeroed out - ext2_balloc depends on this * although for regular files and directories only * - * If E4_EXTENTS is enabled, unused blocks are not zeroed + * If IN_E4EXTENTS is enabled, unused blocks are not zeroed * out because we could corrupt the extent tree. */ - if (!(ip->i_flags & E4_EXTENTS) && + if (!(ip->i_flag & IN_E4EXTENTS) && (S_ISDIR(ip->i_mode) || S_ISREG(ip->i_mode))) { used_blocks = (ip->i_size+fs->e2fs_bsize-1) / fs->e2fs_bsize; for (i = used_blocks; i < EXT2_NDIR_BLOCKS; i++) Modified: head/sys/fs/ext2fs/ext2_vnops.c ============================================================================== --- head/sys/fs/ext2fs/ext2_vnops.c Tue Jan 28 14:32:04 2014 (r261234) +++ head/sys/fs/ext2fs/ext2_vnops.c Tue Jan 28 14:39:05 2014 (r261235) @@ -343,8 +343,7 @@ ext2_getattr(struct vop_getattr_args *ap vap->va_birthtime.tv_sec = ip->i_birthtime; vap->va_birthtime.tv_nsec = ip->i_birthnsec; } - /* E4_* flags are private to the filesystem. */ - vap->va_flags = ip->i_flags & ~(E4_INDEX | E4_EXTENTS); + vap->va_flags = ip->i_flags; vap->va_gen = ip->i_gen; vap->va_blocksize = vp->v_mount->mnt_stat.f_iosize; vap->va_bytes = dbtob((u_quad_t)ip->i_blocks); @@ -1616,7 +1615,7 @@ ext2_read(struct vop_read_args *ap) ip = VTOI(vp); /*EXT4_EXT_LOCK(ip);*/ - if (ip->i_flags & E4_EXTENTS) + if (ip->i_flag & IN_E4EXTENTS) error = ext4_ext_read(ap); else error = ext2_ind_read(ap); Modified: head/sys/fs/ext2fs/inode.h ============================================================================== --- head/sys/fs/ext2fs/inode.h Tue Jan 28 14:32:04 2014 (r261234) +++ head/sys/fs/ext2fs/inode.h Tue Jan 28 14:39:05 2014 (r261235) @@ -157,8 +157,8 @@ struct inode { * These are translation flags for some attributes that Ext4 * passes as inode flags but that we cannot pass directly. */ -#define E4_INDEX 0x01000000 -#define E4_EXTENTS 0x02000000 +#define IN_E4INDEX 0x010000 +#define IN_E4EXTENTS 0x020000 #define i_devvp i_ump->um_devvp From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 15:15:14 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 50CC8ED0; Tue, 28 Jan 2014 15:15:14 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 20E8416A7; Tue, 28 Jan 2014 15:15:14 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SFFDcQ034177; Tue, 28 Jan 2014 15:15:13 GMT (envelope-from skreuzer@svn.freebsd.org) Received: (from skreuzer@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SFFDwc034175; Tue, 28 Jan 2014 15:15:13 GMT (envelope-from skreuzer@svn.freebsd.org) Message-Id: <201401281515.s0SFFDwc034175@svn.freebsd.org> From: Steven Kreuzer Date: Tue, 28 Jan 2014 15:15:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261236 - in stable/10: share/man/man5 share/mk tools/build/options X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 15:15:14 -0000 Author: skreuzer (doc,ports committer) Date: Tue Jan 28 15:15:13 2014 New Revision: 261236 URL: http://svnweb.freebsd.org/changeset/base/261236 Log: Merge /head:261072: Remove WITHOUT_ATF from src.conf.5 Approved by: hrs (mentor) Deleted: stable/10/tools/build/options/WITHOUT_ATF Modified: stable/10/share/man/man5/src.conf.5 stable/10/share/mk/bsd.own.mk Directory Properties: stable/10/ (props changed) Modified: stable/10/share/man/man5/src.conf.5 ============================================================================== --- stable/10/share/man/man5/src.conf.5 Tue Jan 28 14:39:05 2014 (r261235) +++ stable/10/share/man/man5/src.conf.5 Tue Jan 28 15:15:13 2014 (r261236) @@ -1,7 +1,7 @@ .\" DO NOT EDIT-- this file is automatically generated. .\" from FreeBSD: stable/10/tools/build/options/makeman 255964 2013-10-01 07:22:04Z des .\" $FreeBSD$ -.Dd December 9, 2013 +.Dd January 27, 2014 .Dt SRC.CONF 5 .Os .Sh NAME @@ -113,9 +113,6 @@ checks. Set to not build .Xr at 1 and related utilities. -.It Va WITHOUT_ATF -.\" from FreeBSD: stable/10/tools/build/options/WITHOUT_ATF 241823 2012-10-22 01:18:41Z marcel -Set to not build programs and libraries related to the ATF testing framework. .It Va WITHOUT_ATM .\" from FreeBSD: stable/10/tools/build/options/WITHOUT_ATM 156932 2006-03-21 07:50:50Z ru Set to not build @@ -624,9 +621,9 @@ and On amd64, set to not build 32-bit library set and a .Nm ld-elf32.so.1 runtime linker. -.It Va WITHOUT_LIBCPLUSPLUS -.\" from FreeBSD: stable/10/tools/build/options/WITHOUT_LIBCPLUSPLUS 246262 2013-02-02 22:42:46Z dim -Set to avoid building libcxxrt and libc++. +.It Va WITH_LIBCPLUSPLUS +.\" from FreeBSD: stable/10/tools/build/options/WITH_LIBCPLUSPLUS 228082 2011-11-28 17:56:46Z dim +Set to build libcxxrt and libc++. .It Va WITHOUT_LIBPTHREAD .\" from FreeBSD: stable/10/tools/build/options/WITHOUT_LIBPTHREAD 188848 2009-02-20 11:09:55Z mtm Set to not build the Modified: stable/10/share/mk/bsd.own.mk ============================================================================== --- stable/10/share/mk/bsd.own.mk Tue Jan 28 14:39:05 2014 (r261235) +++ stable/10/share/mk/bsd.own.mk Tue Jan 28 15:15:13 2014 (r261236) @@ -251,7 +251,6 @@ __DEFAULT_YES_OPTIONS = \ ARM_EABI \ ASSERT_DEBUG \ AT \ - ATF \ ATM \ AUDIT \ AUTHPF \ From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 17:27:55 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7869B28B; Tue, 28 Jan 2014 17:27:55 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4A31813C3; Tue, 28 Jan 2014 17:27:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SHRtHE088243; Tue, 28 Jan 2014 17:27:55 GMT (envelope-from jmg@svn.freebsd.org) Received: (from jmg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SHRs82088237; Tue, 28 Jan 2014 17:27:54 GMT (envelope-from jmg@svn.freebsd.org) Message-Id: <201401281727.s0SHRs82088237@svn.freebsd.org> From: John-Mark Gurney Date: Tue, 28 Jan 2014 17:27:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261238 - in head/sys: kern sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 17:27:55 -0000 Author: jmg Date: Tue Jan 28 17:27:54 2014 New Revision: 261238 URL: http://svnweb.freebsd.org/changeset/base/261238 Log: fix spelling of lock_initialized.. jhb approved.. MFC after: 1 week Modified: head/sys/kern/subr_lock.c head/sys/sys/lock.h head/sys/sys/mutex.h head/sys/sys/rwlock.h Modified: head/sys/kern/subr_lock.c ============================================================================== --- head/sys/kern/subr_lock.c Tue Jan 28 17:23:44 2014 (r261237) +++ head/sys/kern/subr_lock.c Tue Jan 28 17:27:54 2014 (r261238) @@ -78,7 +78,7 @@ lock_init(struct lock_object *lock, stru int i; /* Check for double-init and zero object. */ - KASSERT(!lock_initalized(lock), ("lock \"%s\" %p already initialized", + KASSERT(!lock_initialized(lock), ("lock \"%s\" %p already initialized", name, lock)); /* Look up lock class to find its index. */ @@ -100,7 +100,7 @@ void lock_destroy(struct lock_object *lock) { - KASSERT(lock_initalized(lock), ("lock %p is not initialized", lock)); + KASSERT(lock_initialized(lock), ("lock %p is not initialized", lock)); WITNESS_DESTROY(lock); LOCK_LOG_DESTROY(lock, 0); lock->lo_flags &= ~LO_INITIALIZED; Modified: head/sys/sys/lock.h ============================================================================== --- head/sys/sys/lock.h Tue Jan 28 17:23:44 2014 (r261237) +++ head/sys/sys/lock.h Tue Jan 28 17:27:54 2014 (r261238) @@ -178,7 +178,7 @@ struct lock_class { #define LOCK_LOG_DESTROY(lo, flags) LOCK_LOG_INIT(lo, flags) -#define lock_initalized(lo) ((lo)->lo_flags & LO_INITIALIZED) +#define lock_initialized(lo) ((lo)->lo_flags & LO_INITIALIZED) /* * Helpful macros for quickly coming up with assertions with informative Modified: head/sys/sys/mutex.h ============================================================================== --- head/sys/sys/mutex.h Tue Jan 28 17:23:44 2014 (r261237) +++ head/sys/sys/mutex.h Tue Jan 28 17:27:54 2014 (r261238) @@ -382,7 +382,7 @@ extern struct mtx_pool *mtxpool_sleep; _sleep((chan), &(mtx)->lock_object, (pri), (wmesg), \ tick_sbt * (timo), 0, C_HARDCLOCK) -#define mtx_initialized(m) lock_initalized(&(m)->lock_object) +#define mtx_initialized(m) lock_initialized(&(m)->lock_object) #define mtx_owned(m) (((m)->mtx_lock & ~MTX_FLAGMASK) == (uintptr_t)curthread) Modified: head/sys/sys/rwlock.h ============================================================================== --- head/sys/sys/rwlock.h Tue Jan 28 17:23:44 2014 (r261237) +++ head/sys/sys/rwlock.h Tue Jan 28 17:27:54 2014 (r261238) @@ -218,7 +218,7 @@ void __rw_assert(const volatile uintptr_ _sleep((chan), &(rw)->lock_object, (pri), (wmesg), \ tick_sbt * (timo), 0, C_HARDCLOCK) -#define rw_initialized(rw) lock_initalized(&(rw)->lock_object) +#define rw_initialized(rw) lock_initialized(&(rw)->lock_object) struct rw_args { void *ra_rw; From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 20:28:32 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EB7BF6A5; Tue, 28 Jan 2014 20:28:32 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BDD7D163D; Tue, 28 Jan 2014 20:28:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SKSWZ5058006; Tue, 28 Jan 2014 20:28:32 GMT (envelope-from gnn@svn.freebsd.org) Received: (from gnn@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SKSWa5058004; Tue, 28 Jan 2014 20:28:32 GMT (envelope-from gnn@svn.freebsd.org) Message-Id: <201401282028.s0SKSWa5058004@svn.freebsd.org> From: "George V. Neville-Neil" Date: Tue, 28 Jan 2014 20:28:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261242 - head/sys/netinet X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 20:28:33 -0000 Author: gnn Date: Tue Jan 28 20:28:32 2014 New Revision: 261242 URL: http://svnweb.freebsd.org/changeset/base/261242 Log: Decrease lock contention within the TCP accept case by removing the INP_INFO lock from tcp_usr_accept. As the PR/patch states this was following the advice already in the code. See the PR below for a full disucssion of this change and its measured effects. PR: 183659 Submitted by: Julian Charbon Reviewed by: jhb Modified: head/sys/netinet/tcp_syncache.c head/sys/netinet/tcp_usrreq.c Modified: head/sys/netinet/tcp_syncache.c ============================================================================== --- head/sys/netinet/tcp_syncache.c Tue Jan 28 19:12:31 2014 (r261241) +++ head/sys/netinet/tcp_syncache.c Tue Jan 28 20:28:32 2014 (r261242) @@ -682,7 +682,7 @@ syncache_socket(struct syncache *sc, str * connection when the SYN arrived. If we can't create * the connection, abort it. */ - so = sonewconn(lso, SS_ISCONNECTED); + so = sonewconn(lso, 0); if (so == NULL) { /* * Drop the connection; we will either send a RST or @@ -922,6 +922,8 @@ syncache_socket(struct syncache *sc, str INP_WUNLOCK(inp); + soisconnected(so); + TCPSTAT_INC(tcps_accepts); return (so); Modified: head/sys/netinet/tcp_usrreq.c ============================================================================== --- head/sys/netinet/tcp_usrreq.c Tue Jan 28 19:12:31 2014 (r261241) +++ head/sys/netinet/tcp_usrreq.c Tue Jan 28 20:28:32 2014 (r261242) @@ -610,13 +610,6 @@ out: /* * Accept a connection. Essentially all the work is done at higher levels; * just return the address of the peer, storing through addr. - * - * The rationale for acquiring the tcbinfo lock here is somewhat complicated, - * and is described in detail in the commit log entry for r175612. Acquiring - * it delays an accept(2) racing with sonewconn(), which inserts the socket - * before the inpcb address/port fields are initialized. A better fix would - * prevent the socket from being placed in the listen queue until all fields - * are fully initialized. */ static int tcp_usr_accept(struct socket *so, struct sockaddr **nam) @@ -633,7 +626,6 @@ tcp_usr_accept(struct socket *so, struct inp = sotoinpcb(so); KASSERT(inp != NULL, ("tcp_usr_accept: inp == NULL")); - INP_INFO_RLOCK(&V_tcbinfo); INP_WLOCK(inp); if (inp->inp_flags & (INP_TIMEWAIT | INP_DROPPED)) { error = ECONNABORTED; @@ -653,7 +645,6 @@ tcp_usr_accept(struct socket *so, struct out: TCPDEBUG2(PRU_ACCEPT); INP_WUNLOCK(inp); - INP_INFO_RUNLOCK(&V_tcbinfo); if (error == 0) *nam = in_sockaddr(port, &addr); return error; From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 20:53:34 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 91BD41D0; Tue, 28 Jan 2014 20:53:34 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5FBCD18A0; Tue, 28 Jan 2014 20:53:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SKrY5L068826; Tue, 28 Jan 2014 20:53:34 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SKrYcN068825; Tue, 28 Jan 2014 20:53:34 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401282053.s0SKrYcN068825@svn.freebsd.org> From: John Baldwin Date: Tue, 28 Jan 2014 20:53:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261243 - head/sys/dev/acpica X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 20:53:34 -0000 Author: jhb Date: Tue Jan 28 20:53:33 2014 New Revision: 261243 URL: http://svnweb.freebsd.org/changeset/base/261243 Log: Some BIOSes incorrectly use standard memory resource ranges to list the memory ranges that they decode for downstream devices rather than creating ResourceProducer range resource entries. The result is that we allocate the full range to the PCI root bridge device causing allocations in child devices to all fail. As a workaround, ignore any standard memory resources on a PCI root bridge device. It is normal for a PCI root bridge to allocate an I/O resource for the I/O ports used for PCI config access, but I have not seen any PCI root bridges that legitimately allocate a memory resource. Reviewed by: jkim MFC after: 1 week Modified: head/sys/dev/acpica/acpi.c Modified: head/sys/dev/acpica/acpi.c ============================================================================== --- head/sys/dev/acpica/acpi.c Tue Jan 28 20:28:32 2014 (r261242) +++ head/sys/dev/acpica/acpi.c Tue Jan 28 20:53:33 2014 (r261243) @@ -1190,12 +1190,28 @@ acpi_set_resource(device_t dev, device_t struct acpi_softc *sc = device_get_softc(dev); struct acpi_device *ad = device_get_ivars(child); struct resource_list *rl = &ad->ad_rl; + ACPI_DEVICE_INFO *devinfo; u_long end; /* Ignore IRQ resources for PCI link devices. */ if (type == SYS_RES_IRQ && ACPI_ID_PROBE(dev, child, pcilink_ids) != NULL) return (0); + /* + * Ignore memory resources for PCI root bridges. Some BIOSes + * incorrectly enumerate the memory ranges they decode as plain + * memory resources instead of as a ResourceProducer range. + */ + if (type == SYS_RES_MEMORY) { + if (ACPI_SUCCESS(AcpiGetObjectInfo(ad->ad_handle, &devinfo))) { + if ((devinfo->Flags & ACPI_PCI_ROOT_BRIDGE) != 0) { + AcpiOsFree(devinfo); + return (0); + } + AcpiOsFree(devinfo); + } + } + /* If the resource is already allocated, fail. */ if (resource_list_busy(rl, type, rid)) return (EBUSY); From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 21:13:16 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EF441846; Tue, 28 Jan 2014 21:13:15 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CF3641A24; Tue, 28 Jan 2014 21:13:15 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SLDFm9077186; Tue, 28 Jan 2014 21:13:15 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SLDFNF077185; Tue, 28 Jan 2014 21:13:15 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201401282113.s0SLDFNF077185@svn.freebsd.org> From: Peter Wemm Date: Tue, 28 Jan 2014 21:13:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261244 - head/sys/netinet X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 21:13:16 -0000 Author: peter Date: Tue Jan 28 21:13:15 2014 New Revision: 261244 URL: http://svnweb.freebsd.org/changeset/base/261244 Log: Adjust r239672 from rrs and r258821 from eadler. By definition, the very first FIN is not a duplicate. Process it normally and don't feed it to congestion control as though it were a dupe. Don't prevent CC from seeing later dupe acks while in a half close state. Modified: head/sys/netinet/tcp_input.c Modified: head/sys/netinet/tcp_input.c ============================================================================== --- head/sys/netinet/tcp_input.c Tue Jan 28 20:53:33 2014 (r261243) +++ head/sys/netinet/tcp_input.c Tue Jan 28 21:13:15 2014 (r261244) @@ -2429,8 +2429,19 @@ tcp_do_segment(struct mbuf *m, struct tc hhook_run_tcp_est_in(tp, th, &to); if (SEQ_LEQ(th->th_ack, tp->snd_una)) { - if (tlen == 0 && tiwin == tp->snd_wnd && - !(thflags & TH_FIN)) { + if (tlen == 0 && tiwin == tp->snd_wnd) { + /* + * If this is the first time we've seen a + * FIN from the remote, this is not a + * duplicate and it needs to be processed + * normally. This happens during a + * simultaneous close. + */ + if ((thflags & TH_FIN) && + (TCPS_HAVERCVDFIN(tp->t_state) == 0)) { + tp->t_dupacks = 0; + break; + } TCPSTAT_INC(tcps_rcvdupack); /* * If we have outstanding data (other than @@ -2485,16 +2496,6 @@ tcp_do_segment(struct mbuf *m, struct tc } } else tp->snd_cwnd += tp->t_maxseg; - if ((thflags & TH_FIN) && - (TCPS_HAVERCVDFIN(tp->t_state) == 0)) { - /* - * If its a fin we need to process - * it to avoid a race where both - * sides enter FIN-WAIT and send FIN|ACK - * at the same time. - */ - break; - } (void) tcp_output(tp); goto drop; } else if (tp->t_dupacks == tcprexmtthresh) { @@ -2534,16 +2535,6 @@ tcp_do_segment(struct mbuf *m, struct tc } tp->snd_nxt = th->th_ack; tp->snd_cwnd = tp->t_maxseg; - if ((thflags & TH_FIN) && - (TCPS_HAVERCVDFIN(tp->t_state) == 0)) { - /* - * If its a fin we need to process - * it to avoid a race where both - * sides enter FIN-WAIT and send FIN|ACK - * at the same time. - */ - break; - } (void) tcp_output(tp); KASSERT(tp->snd_limited <= 2, ("%s: tp->snd_limited too big", @@ -2571,16 +2562,6 @@ tcp_do_segment(struct mbuf *m, struct tc (tp->snd_nxt - tp->snd_una) + (tp->t_dupacks - tp->snd_limited) * tp->t_maxseg; - if ((thflags & TH_FIN) && - (TCPS_HAVERCVDFIN(tp->t_state) == 0)) { - /* - * If its a fin we need to process - * it to avoid a race where both - * sides enter FIN-WAIT and send FIN|ACK - * at the same time. - */ - break; - } /* * Only call tcp_output when there * is new data available to be sent. From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 21:38:56 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2479216E; Tue, 28 Jan 2014 21:38:56 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0D4711CF1; Tue, 28 Jan 2014 21:38:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SLcuYE085776; Tue, 28 Jan 2014 21:38:56 GMT (envelope-from kaiw@svn.freebsd.org) Received: (from kaiw@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SLcsVV085769; Tue, 28 Jan 2014 21:38:54 GMT (envelope-from kaiw@svn.freebsd.org) Message-Id: <201401282138.s0SLcsVV085769@svn.freebsd.org> From: Kai Wang Date: Tue, 28 Jan 2014 21:38:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261246 - in head: . cddl/contrib/opensolaris/tools/ctf/cvt contrib/elftoolchain lib/libdwarf lib/libelf sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 21:38:56 -0000 Author: kaiw Date: Tue Jan 28 21:38:54 2014 New Revision: 261246 URL: http://svnweb.freebsd.org/changeset/base/261246 Log: Merge from projects/elftoolchain: Upgrade libelf and libdwarf to newer versions from elftoolchain upstream (r2974). Convert ctfconvert to use the APIs from the new libdwarf and make ctfconvert work with Clang 3.4. __FreeBSD_version is bumped to 1100006. A list of notable changes: [libelf] * The old libelf source code in lib/libelf has been removed. Instead, the new libelf is built from contrib/elftoolchain/libelf. * Manual pages are largely improved. * Internal implementation was refactored and improved for better correctness and portability. * Fixed a few memory leaks. * Extended with extension APIs `elf_open()` and `elf_openmemory()`. These APIs are similar to `elf_begin()` and `elf_memory()` respectively, except that they return an ELF descriptor of kind `ELF_K_NONE` instead of an error if the object being opened could not be parsed. * Implement support for translating sections of type ELF_T_VDEF and ELF_T_VNEED. * Improve `elf_update()` to check that the executable header, the program header table, section contents and the section header table do not overlap, and to ensure that gaps between extents are filled with the fill character specified by `elf_fill()`. * Allow `Elf_Data` descriptors to have types and alignments differing from their containing section. * Remove functionality controlled by `LIBELF_TEST_HOOKS`. * Support processing of BSD-flavor archives. * Add knowledge of section types `SHT_GNU_ATTRIBUTES` and `SHT_GNU_LIBLIST`. * Use elftoolchain style symbol versioning. * Shared library version is bumped. [libdwarf] * The old libdwarf source code in lib/libdwarf has been removed. Instead, the new libdwarf is built from contrib/elftoolchain/libdwarf. * Support full DWARF3 and partial DWARF4 parsing. * Support DWARF2 generation. * Support for DWARF line number, call frame, location expression, macro info and address ranges, among other things. * The APIs for the new libdwarf are mostly compatible with the widely used LGPL libdwarf. Some of the incompatible APIs from the old libdwarf are kept as its own extensions. All the APIs are documented. * Use elftoolchain style symbol versioning. * Shared library version is bumped. [ctfconvert] * Switch to the APIs from the new libdwarf. * Improve die_mem_offset() so that DW_AT_data_member_location attributes generated by Clang 3.4 can be handled properly. * Make use of DW_AT_byte_size attribute of the member DIE to calculate the bits occupied by the member's type, without actually resolving the type. This way ctfconvert can deal with the case that Clang 3.4 sometimes emits DIE for struct/union member before emitting the DIE for the type of that member. Obtained from: elftoolchain No objection: -toolchain mailing list Added: head/contrib/elftoolchain/ - copied from r261245, projects/elftoolchain/contrib/elftoolchain/ Deleted: head/lib/libdwarf/_libdwarf.h head/lib/libdwarf/dwarf.h head/lib/libdwarf/dwarf_abbrev.c head/lib/libdwarf/dwarf_attr.c head/lib/libdwarf/dwarf_attrval.c head/lib/libdwarf/dwarf_cu.c head/lib/libdwarf/dwarf_dealloc.c head/lib/libdwarf/dwarf_die.c head/lib/libdwarf/dwarf_dump.c head/lib/libdwarf/dwarf_errmsg.c head/lib/libdwarf/dwarf_errno.c head/lib/libdwarf/dwarf_finish.c head/lib/libdwarf/dwarf_form.c head/lib/libdwarf/dwarf_func.c head/lib/libdwarf/dwarf_init.c head/lib/libdwarf/dwarf_loc.c head/lib/libdwarf/libdwarf.h head/lib/libelf/README head/lib/libelf/Version.map head/lib/libelf/_libelf.h head/lib/libelf/elf.3 head/lib/libelf/elf_begin.3 head/lib/libelf/elf_begin.c head/lib/libelf/elf_cntl.3 head/lib/libelf/elf_cntl.c head/lib/libelf/elf_data.c head/lib/libelf/elf_end.3 head/lib/libelf/elf_end.c head/lib/libelf/elf_errmsg.3 head/lib/libelf/elf_errmsg.c head/lib/libelf/elf_errno.c head/lib/libelf/elf_fill.3 head/lib/libelf/elf_fill.c head/lib/libelf/elf_flag.c head/lib/libelf/elf_flagdata.3 head/lib/libelf/elf_getarhdr.3 head/lib/libelf/elf_getarhdr.c head/lib/libelf/elf_getarsym.3 head/lib/libelf/elf_getarsym.c head/lib/libelf/elf_getbase.3 head/lib/libelf/elf_getbase.c head/lib/libelf/elf_getdata.3 head/lib/libelf/elf_getident.3 head/lib/libelf/elf_getident.c head/lib/libelf/elf_getphdrnum.3 head/lib/libelf/elf_getphnum.3 head/lib/libelf/elf_getscn.3 head/lib/libelf/elf_getshdrnum.3 head/lib/libelf/elf_getshdrstrndx.3 head/lib/libelf/elf_getshnum.3 head/lib/libelf/elf_getshstrndx.3 head/lib/libelf/elf_hash.3 head/lib/libelf/elf_hash.c head/lib/libelf/elf_kind.3 head/lib/libelf/elf_kind.c head/lib/libelf/elf_memory.3 head/lib/libelf/elf_memory.c head/lib/libelf/elf_next.3 head/lib/libelf/elf_next.c head/lib/libelf/elf_phnum.c head/lib/libelf/elf_rand.3 head/lib/libelf/elf_rand.c head/lib/libelf/elf_rawfile.3 head/lib/libelf/elf_rawfile.c head/lib/libelf/elf_scn.c head/lib/libelf/elf_shnum.c head/lib/libelf/elf_shstrndx.c head/lib/libelf/elf_strptr.3 head/lib/libelf/elf_strptr.c head/lib/libelf/elf_types.m4 head/lib/libelf/elf_update.3 head/lib/libelf/elf_update.c head/lib/libelf/elf_version.3 head/lib/libelf/elf_version.c head/lib/libelf/gelf.3 head/lib/libelf/gelf.h head/lib/libelf/gelf_cap.c head/lib/libelf/gelf_checksum.3 head/lib/libelf/gelf_checksum.c head/lib/libelf/gelf_dyn.c head/lib/libelf/gelf_ehdr.c head/lib/libelf/gelf_fsize.3 head/lib/libelf/gelf_fsize.c head/lib/libelf/gelf_getcap.3 head/lib/libelf/gelf_getclass.3 head/lib/libelf/gelf_getclass.c head/lib/libelf/gelf_getdyn.3 head/lib/libelf/gelf_getehdr.3 head/lib/libelf/gelf_getmove.3 head/lib/libelf/gelf_getphdr.3 head/lib/libelf/gelf_getrel.3 head/lib/libelf/gelf_getrela.3 head/lib/libelf/gelf_getshdr.3 head/lib/libelf/gelf_getsym.3 head/lib/libelf/gelf_getsyminfo.3 head/lib/libelf/gelf_getsymshndx.3 head/lib/libelf/gelf_move.c head/lib/libelf/gelf_newehdr.3 head/lib/libelf/gelf_newphdr.3 head/lib/libelf/gelf_phdr.c head/lib/libelf/gelf_rel.c head/lib/libelf/gelf_rela.c head/lib/libelf/gelf_shdr.c head/lib/libelf/gelf_sym.c head/lib/libelf/gelf_syminfo.c head/lib/libelf/gelf_symshndx.c head/lib/libelf/gelf_update_ehdr.3 head/lib/libelf/gelf_xlate.c head/lib/libelf/gelf_xlatetof.3 head/lib/libelf/libelf.c head/lib/libelf/libelf.h head/lib/libelf/libelf_align.c head/lib/libelf/libelf_allocate.c head/lib/libelf/libelf_ar.c head/lib/libelf/libelf_ar_util.c head/lib/libelf/libelf_checksum.c head/lib/libelf/libelf_convert.m4 head/lib/libelf/libelf_data.c head/lib/libelf/libelf_ehdr.c head/lib/libelf/libelf_extended.c head/lib/libelf/libelf_fsize.m4 head/lib/libelf/libelf_msize.m4 head/lib/libelf/libelf_phdr.c head/lib/libelf/libelf_shdr.c head/lib/libelf/libelf_xlate.c Modified: head/ObsoleteFiles.inc head/UPDATING head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c head/lib/libdwarf/Makefile head/lib/libelf/Makefile head/sys/sys/elf_common.h head/sys/sys/param.h Directory Properties: head/ (props changed) Modified: head/ObsoleteFiles.inc ============================================================================== --- head/ObsoleteFiles.inc Tue Jan 28 21:30:05 2014 (r261245) +++ head/ObsoleteFiles.inc Tue Jan 28 21:38:54 2014 (r261246) @@ -38,6 +38,11 @@ # xargs -n1 | sort | uniq -d; # done +# 20140128: libelf and libdwarf import +OLD_LIBS+=usr/lib/libelf.so.1 +OLD_LIBS+=usr/lib32/libelf.so.1 +OLD_LIBS+=usr/lib/libdwarf.so.3 +OLD_LIBS+=usr/lib32/libdwarf.so.3 # 20131215: libcam version bumped OLD_LIBS+=lib/libcam.so.6 usr/lib32/libcam.so.6 # 20131202: libcapsicum and libcasper moved to /lib/ Modified: head/UPDATING ============================================================================== --- head/UPDATING Tue Jan 28 21:30:05 2014 (r261245) +++ head/UPDATING Tue Jan 28 21:38:54 2014 (r261246) @@ -31,6 +31,13 @@ NOTE TO PEOPLE WHO THINK THAT FreeBSD 11 disable the most expensive debugging functionality run "ln -s 'abort:false,junk:false' /etc/malloc.conf".) +20140128: + The libelf and libdwarf libraries have been updated to newer + versions from upstream. Shared library version numbers for + these two libraries were bumped. Any ports or binaries + requiring these two libraries should be recompiled. + __FreeBSD_version is bumped to 1100006. + 20140110: If a Makefile in a tests/ directory was auto-generating a Kyuafile instead of providing an explicit one, this would prevent such Modified: head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c ============================================================================== --- head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c Tue Jan 28 21:30:05 2014 (r261245) +++ head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c Tue Jan 28 21:38:54 2014 (r261246) @@ -96,9 +96,6 @@ #include "list.h" #include "traverse.h" -/* The version of DWARF which we support. */ -#define DWARF_VERSION 2 - /* * We need to define a couple of our own intrinsics, to smooth out some of the * differences between the GCC and DevPro DWARF emitters. See the referenced @@ -271,7 +268,7 @@ die_off(dwarf_t *dw, Dwarf_Die die) return (off); terminate("failed to get offset for die: %s\n", - dwarf_errmsg(&dw->dw_err)); + dwarf_errmsg(dw->dw_err)); /*NOTREACHED*/ return (0); } @@ -289,7 +286,7 @@ die_sibling(dwarf_t *dw, Dwarf_Die die) return (NULL); terminate("die %llu: failed to find type sibling: %s\n", - die_off(dw, die), dwarf_errmsg(&dw->dw_err)); + die_off(dw, die), dwarf_errmsg(dw->dw_err)); /*NOTREACHED*/ return (NULL); } @@ -306,7 +303,7 @@ die_child(dwarf_t *dw, Dwarf_Die die) return (NULL); terminate("die %llu: failed to find type child: %s\n", - die_off(dw, die), dwarf_errmsg(&dw->dw_err)); + die_off(dw, die), dwarf_errmsg(dw->dw_err)); /*NOTREACHED*/ return (NULL); } @@ -320,7 +317,7 @@ die_tag(dwarf_t *dw, Dwarf_Die die) return (tag); terminate("die %llu: failed to get tag for type: %s\n", - die_off(dw, die), dwarf_errmsg(&dw->dw_err)); + die_off(dw, die), dwarf_errmsg(dw->dw_err)); /*NOTREACHED*/ return (0); } @@ -343,7 +340,7 @@ die_attr(dwarf_t *dw, Dwarf_Die die, Dwa } terminate("die %llu: failed to get attribute for type: %s\n", - die_off(dw, die), dwarf_errmsg(&dw->dw_err)); + die_off(dw, die), dwarf_errmsg(dw->dw_err)); /*NOTREACHED*/ return (NULL); } @@ -353,10 +350,10 @@ die_signed(dwarf_t *dw, Dwarf_Die die, D int req) { *valp = 0; - if (dwarf_attrval_signed(die, name, valp, &dw->dw_err) != DWARF_E_NONE) { + if (dwarf_attrval_signed(die, name, valp, &dw->dw_err) != DW_DLV_OK) { if (req) terminate("die %llu: failed to get signed: %s\n", - die_off(dw, die), dwarf_errmsg(&dw->dw_err)); + die_off(dw, die), dwarf_errmsg(dw->dw_err)); return (0); } @@ -368,10 +365,10 @@ die_unsigned(dwarf_t *dw, Dwarf_Die die, int req) { *valp = 0; - if (dwarf_attrval_unsigned(die, name, valp, &dw->dw_err) != DWARF_E_NONE) { + if (dwarf_attrval_unsigned(die, name, valp, &dw->dw_err) != DW_DLV_OK) { if (req) terminate("die %llu: failed to get unsigned: %s\n", - die_off(dw, die), dwarf_errmsg(&dw->dw_err)); + die_off(dw, die), dwarf_errmsg(dw->dw_err)); return (0); } @@ -383,10 +380,10 @@ die_bool(dwarf_t *dw, Dwarf_Die die, Dwa { *valp = 0; - if (dwarf_attrval_flag(die, name, valp, &dw->dw_err) != DWARF_E_NONE) { + if (dwarf_attrval_flag(die, name, valp, &dw->dw_err) != DW_DLV_OK) { if (req) terminate("die %llu: failed to get flag: %s\n", - die_off(dw, die), dwarf_errmsg(&dw->dw_err)); + die_off(dw, die), dwarf_errmsg(dw->dw_err)); return (0); } @@ -398,11 +395,11 @@ die_string(dwarf_t *dw, Dwarf_Die die, D { const char *str = NULL; - if (dwarf_attrval_string(die, name, &str, &dw->dw_err) != DWARF_E_NONE || + if (dwarf_attrval_string(die, name, &str, &dw->dw_err) != DW_DLV_OK || str == NULL) { if (req) terminate("die %llu: failed to get string: %s\n", - die_off(dw, die), dwarf_errmsg(&dw->dw_err)); + die_off(dw, die), dwarf_errmsg(dw->dw_err)); else *strp = NULL; return (0); @@ -417,9 +414,9 @@ die_attr_ref(dwarf_t *dw, Dwarf_Die die, { Dwarf_Off off; - if (dwarf_attrval_unsigned(die, name, &off, &dw->dw_err) != DWARF_E_NONE) { + if (dwarf_attrval_unsigned(die, name, &off, &dw->dw_err) != DW_DLV_OK) { terminate("die %llu: failed to get ref: %s\n", - die_off(dw, die), dwarf_errmsg(&dw->dw_err)); + die_off(dw, die), dwarf_errmsg(dw->dw_err)); } return (off); @@ -431,6 +428,8 @@ die_name(dwarf_t *dw, Dwarf_Die die) char *str = NULL; (void) die_string(dw, die, DW_AT_name, &str, 0); + if (str == NULL) + str = xstrdup(""); return (str); } @@ -489,21 +488,73 @@ die_mem_offset(dwarf_t *dw, Dwarf_Die di { Dwarf_Locdesc *loc = NULL; Dwarf_Signed locnum = 0; + Dwarf_Attribute at; + Dwarf_Half form; + + if (name != DW_AT_data_member_location) + terminate("die %llu: can only process attribute " + "DW_AT_data_member_location\n", die_off(dw, die)); - if (dwarf_locdesc(die, name, &loc, &locnum, &dw->dw_err) != DW_DLV_OK) + if ((at = die_attr(dw, die, name, 0)) == NULL) return (0); - if (locnum != 1 || loc->ld_s->lr_atom != DW_OP_plus_uconst) { - terminate("die %llu: cannot parse member offset\n", - die_off(dw, die)); - } + if (dwarf_whatform(at, &form, &dw->dw_err) != DW_DLV_OK) + return (0); + + switch (form) { + case DW_FORM_sec_offset: + case DW_FORM_block: + case DW_FORM_block1: + case DW_FORM_block2: + case DW_FORM_block4: + /* + * GCC in base and Clang (3.3 or below) generates + * DW_AT_data_member_location attribute with DW_FORM_block* + * form. The attribute contains one DW_OP_plus_uconst + * operator. The member offset stores in the operand. + */ + if (dwarf_loclist(at, &loc, &locnum, &dw->dw_err) != DW_DLV_OK) + return (0); + if (locnum != 1 || loc->ld_s->lr_atom != DW_OP_plus_uconst) { + terminate("die %llu: cannot parse member offset with " + "operator other than DW_OP_plus_uconst\n", + die_off(dw, die)); + } + *valp = loc->ld_s->lr_number; + if (loc != NULL) { + dwarf_dealloc(dw->dw_dw, loc->ld_s, DW_DLA_LOC_BLOCK); + dwarf_dealloc(dw->dw_dw, loc, DW_DLA_LOCDESC); + } + break; - *valp = loc->ld_s->lr_number; + case DW_FORM_data1: + case DW_FORM_data2: + case DW_FORM_data4: + case DW_FORM_data8: + case DW_FORM_udata: + /* + * Clang 3.4 generates DW_AT_data_member_location attribute + * with DW_FORM_data* form (constant class). The attribute + * stores a contant value which is the member offset. + * + * However, note that DW_FORM_data[48] in DWARF version 2 or 3 + * could be used as a section offset (offset into .debug_loc in + * this case). Here we assume the attribute always stores a + * constant because we know Clang 3.4 does this and GCC in + * base won't emit DW_FORM_data[48] for this attribute. This + * code will remain correct if future vesrions of Clang and + * GCC conform to DWARF4 standard and only use the form + * DW_FORM_sec_offset for section offset. + */ + if (dwarf_attrval_unsigned(die, name, valp, &dw->dw_err) != + DW_DLV_OK) + return (0); + break; - if (loc != NULL) - if (dwarf_locdesc_free(loc, &dw->dw_err) != DW_DLV_OK) - terminate("die %llu: cannot free location descriptor: %s\n", - die_off(dw, die), dwarf_errmsg(&dw->dw_err)); + default: + terminate("die %llu: cannot parse member offset with form " + "%u\n", die_off(dw, die), form); + } return (1); } @@ -884,7 +935,7 @@ static void die_sou_create(dwarf_t *dw, Dwarf_Die str, Dwarf_Off off, tdesc_t *tdp, int type, const char *typename) { - Dwarf_Unsigned sz, bitsz, bitoff, maxsz=0; + Dwarf_Unsigned sz, bysz, bitsz, bitoff, maxsz=0; Dwarf_Die mem; mlist_t *ml, **mlastp; iidesc_t *ii; @@ -959,8 +1010,26 @@ die_sou_create(dwarf_t *dw, Dwarf_Die st #if BYTE_ORDER == _BIG_ENDIAN ml->ml_offset += bitoff; #else - ml->ml_offset += tdesc_bitsize(ml->ml_type) - bitoff - - ml->ml_size; + /* + * Note that Clang 3.4 will sometimes generate + * member DIE before generating the DIE for the + * member's type. The code can not handle this + * properly so that tdesc_bitsize(ml->ml_type) will + * return 0 because ml->ml_type is unknown. As a + * result, a wrong member offset will be calculated. + * To workaround this, we can instead try to + * retrieve the value of DW_AT_byte_size attribute + * which stores the byte size of the space occupied + * by the type. If this attribute exists, its value + * should equal to tdesc_bitsize(ml->ml_type)/NBBY. + */ + if (die_unsigned(dw, mem, DW_AT_byte_size, &bysz, 0) && + bysz > 0) + ml->ml_offset += bysz * NBBY - bitoff - + ml->ml_size; + else + ml->ml_offset += tdesc_bitsize(ml->ml_type) - + bitoff - ml->ml_size; #endif } @@ -1852,7 +1921,7 @@ int dw_read(tdata_t *td, Elf *elf, char *filename __unused) { Dwarf_Unsigned abboff, hdrlen, nxthdr; - Dwarf_Half vers, addrsz; + Dwarf_Half vers, addrsz, offsz; Dwarf_Die cu = 0; Dwarf_Die child = 0; dwarf_t dw; @@ -1869,7 +1938,7 @@ dw_read(tdata_t *td, Elf *elf, char *fil dw.dw_enumhash = hash_new(TDESC_HASH_BUCKETS, tdesc_namehash, tdesc_namecmp); - if ((rc = dwarf_elf_init(elf, DW_DLC_READ, &dw.dw_dw, + if ((rc = dwarf_elf_init(elf, DW_DLC_READ, NULL, NULL, &dw.dw_dw, &dw.dw_err)) == DW_DLV_NO_ENTRY) { if (should_have_dwarf(elf)) { errno = ENOENT; @@ -1878,7 +1947,7 @@ dw_read(tdata_t *td, Elf *elf, char *fil return (0); } } else if (rc != DW_DLV_OK) { - if (dwarf_errno(&dw.dw_err) == DW_DLE_DEBUG_INFO_NULL) { + if (dwarf_errno(dw.dw_err) == DW_DLE_DEBUG_INFO_NULL) { /* * There's no type data in the DWARF section, but * libdwarf is too clever to handle that properly. @@ -1887,12 +1956,12 @@ dw_read(tdata_t *td, Elf *elf, char *fil } terminate("failed to initialize DWARF: %s\n", - dwarf_errmsg(&dw.dw_err)); + dwarf_errmsg(dw.dw_err)); } - if ((rc = dwarf_next_cu_header(dw.dw_dw, &hdrlen, &vers, &abboff, - &addrsz, &nxthdr, &dw.dw_err)) != DW_DLV_OK) - terminate("rc = %d %s\n", rc, dwarf_errmsg(&dw.dw_err)); + if ((rc = dwarf_next_cu_header_b(dw.dw_dw, &hdrlen, &vers, &abboff, + &addrsz, &offsz, NULL, &nxthdr, &dw.dw_err)) != DW_DLV_OK) + terminate("rc = %d %s\n", rc, dwarf_errmsg(dw.dw_err)); if ((cu = die_sibling(&dw, NULL)) == NULL || (((child = die_child(&dw, cu)) == NULL) && @@ -1909,9 +1978,9 @@ dw_read(tdata_t *td, Elf *elf, char *fil terminate("file contains too many types\n"); debug(1, "DWARF version: %d\n", vers); - if (vers != DWARF_VERSION) { + if (vers < 2 || vers > 4) { terminate("file contains incompatible version %d DWARF code " - "(version 2 required)\n", vers); + "(version 2, 3 or 4 required)\n", vers); } if (die_string(&dw, cu, DW_AT_producer, &prod, 0)) { @@ -1930,11 +1999,11 @@ dw_read(tdata_t *td, Elf *elf, char *fil if ((child = die_child(&dw, cu)) != NULL) die_create(&dw, child); - if ((rc = dwarf_next_cu_header(dw.dw_dw, &hdrlen, &vers, &abboff, - &addrsz, &nxthdr, &dw.dw_err)) != DW_DLV_NO_ENTRY) + if ((rc = dwarf_next_cu_header_b(dw.dw_dw, &hdrlen, &vers, &abboff, + &addrsz, &offsz, NULL, &nxthdr, &dw.dw_err)) != DW_DLV_NO_ENTRY) terminate("multiple compilation units not supported\n"); - (void) dwarf_finish(&dw.dw_dw, &dw.dw_err); + (void) dwarf_finish(dw.dw_dw, &dw.dw_err); die_resolve(&dw); Modified: head/lib/libdwarf/Makefile ============================================================================== --- head/lib/libdwarf/Makefile Tue Jan 28 21:30:05 2014 (r261245) +++ head/lib/libdwarf/Makefile Tue Jan 28 21:38:54 2014 (r261246) @@ -1,9 +1,16 @@ # $FreeBSD$ +.include + +TOP= ${.CURDIR}/../../contrib/elftoolchain +SRCDIR= ${TOP}/libdwarf + +.PATH: ${SRCDIR} LIB= dwarf SRCS= \ dwarf_abbrev.c \ + dwarf_arange.c \ dwarf_attr.c \ dwarf_attrval.c \ dwarf_cu.c \ @@ -11,19 +18,329 @@ SRCS= \ dwarf_die.c \ dwarf_dump.c \ dwarf_errmsg.c \ - dwarf_errno.c \ dwarf_finish.c \ dwarf_form.c \ - dwarf_func.c \ + dwarf_frame.c \ + dwarf_funcs.c \ dwarf_init.c \ - dwarf_loc.c + dwarf_lineno.c \ + dwarf_loclist.c \ + dwarf_macinfo.c \ + dwarf_pro_arange.c \ + dwarf_pro_attr.c \ + dwarf_pro_die.c \ + dwarf_pro_expr.c \ + dwarf_pro_finish.c \ + dwarf_pro_frame.c \ + dwarf_pro_funcs.c \ + dwarf_pro_init.c \ + dwarf_pro_lineno.c \ + dwarf_pro_macinfo.c \ + dwarf_pro_pubnames.c \ + dwarf_pro_reloc.c \ + dwarf_pro_sections.c \ + dwarf_pro_types.c \ + dwarf_pro_vars.c \ + dwarf_pro_weaks.c \ + dwarf_pubnames.c \ + dwarf_pubtypes.c \ + dwarf_ranges.c \ + dwarf_reloc.c \ + dwarf_seterror.c \ + dwarf_str.c \ + dwarf_types.c \ + dwarf_vars.c \ + dwarf_weaks.c \ + libdwarf.c \ + libdwarf_abbrev.c \ + libdwarf_arange.c \ + libdwarf_attr.c \ + libdwarf_die.c \ + libdwarf_error.c \ + libdwarf_elf_access.c \ + libdwarf_elf_init.c \ + libdwarf_frame.c \ + libdwarf_info.c \ + libdwarf_init.c \ + libdwarf_lineno.c \ + libdwarf_loc.c \ + libdwarf_loclist.c \ + libdwarf_macinfo.c \ + libdwarf_nametbl.c \ + libdwarf_ranges.c \ + libdwarf_reloc.c \ + libdwarf_rw.c \ + libdwarf_sections.c \ + libdwarf_str.c + +INCS= dwarf.h libdwarf.h + +# +# We need to link against the correct version of these files. One +# solution is to include ../../sys in the include path. This causes +# problems when a header file in sys depends on a file in another +# part of the tree, e.g. a machine dependent header. +# +SRCS+= sys/elf32.h sys/elf64.h sys/elf_common.h + +GENSRCS= dwarf_pubnames.c dwarf_pubtypes.c dwarf_weaks.c \ + dwarf_funcs.c dwarf_vars.c dwarf_types.c \ + dwarf_pro_pubnames.c dwarf_pro_weaks.c \ + dwarf_pro_funcs.c dwarf_pro_types.c \ + dwarf_pro_vars.c +CLEANFILES= ${GENSRCS} +CLEANDIRS= sys +CFLAGS+= -I. -I${SRCDIR} -I${TOP}/common -I${TOP}/libelf -INCS= dwarf.h libdwarf.h +sys/elf32.h sys/elf64.h sys/elf_common.h: ${.CURDIR}/../../sys/${.TARGET} + mkdir -p ${.OBJDIR}/sys + ln -sf ${.CURDIR}/../../sys/${.TARGET} ${.TARGET} -CFLAGS+= -I${.CURDIR} +LDADD+= -lelf +DPADD+= ${LIBELF} -SHLIB_MAJOR= 3 +SHLIB_MAJOR= 4 -WITHOUT_MAN= +MAN= dwarf.3 \ + dwarf_add_arange.3 \ + dwarf_add_AT_comp_dir.3 \ + dwarf_add_AT_const_value_string.3 \ + dwarf_add_AT_dataref.3 \ + dwarf_add_AT_flag.3 \ + dwarf_add_AT_location_expr.3 \ + dwarf_add_AT_name.3 \ + dwarf_add_AT_producer.3 \ + dwarf_add_AT_ref_address.3 \ + dwarf_add_AT_reference.3 \ + dwarf_add_AT_signed_const.3 \ + dwarf_add_AT_string.3 \ + dwarf_add_AT_targ_address.3 \ + dwarf_add_die_to_debug.3 \ + dwarf_add_directory_decl.3 \ + dwarf_add_expr_addr.3 \ + dwarf_add_expr_gen.3 \ + dwarf_add_fde_inst.3 \ + dwarf_add_file_decl.3 \ + dwarf_add_frame_cie.3 \ + dwarf_add_frame_fde.3 \ + dwarf_add_funcname.3 \ + dwarf_add_line_entry.3 \ + dwarf_add_pubname.3 \ + dwarf_add_typename.3 \ + dwarf_add_varname.3 \ + dwarf_add_weakname.3 \ + dwarf_attr.3 \ + dwarf_attrlist.3 \ + dwarf_attrval_signed.3 \ + dwarf_child.3 \ + dwarf_dealloc.3 \ + dwarf_def_macro.3 \ + dwarf_die_abbrev_code.3 \ + dwarf_die_link.3 \ + dwarf_diename.3 \ + dwarf_dieoffset.3 \ + dwarf_end_macro_file.3 \ + dwarf_errmsg.3 \ + dwarf_errno.3 \ + dwarf_expand_frame_instructions.3 \ + dwarf_expr_current_offset.3 \ + dwarf_expr_into_block.3 \ + dwarf_fde_cfa_offset.3 \ + dwarf_find_macro_value_start.3 \ + dwarf_finish.3 \ + dwarf_formaddr.3 \ + dwarf_formblock.3 \ + dwarf_formexprloc.3 \ + dwarf_formflag.3 \ + dwarf_formref.3 \ + dwarf_formsig8.3 \ + dwarf_formstring.3 \ + dwarf_formudata.3 \ + dwarf_get_abbrev.3 \ + dwarf_get_abbrev_children_flag.3 \ + dwarf_get_abbrev_code.3 \ + dwarf_get_abbrev_entry.3 \ + dwarf_get_abbrev_tag.3 \ + dwarf_get_address_size.3 \ + dwarf_get_arange.3 \ + dwarf_get_arange_info.3 \ + dwarf_get_aranges.3 \ + dwarf_get_AT_name.3 \ + dwarf_get_cie_index.3 \ + dwarf_get_cie_info.3 \ + dwarf_get_cie_of_fde.3 \ + dwarf_get_cu_die_offset.3 \ + dwarf_get_elf.3 \ + dwarf_get_fde_at_pc.3 \ + dwarf_get_fde_info_for_all_regs.3 \ + dwarf_get_fde_info_for_all_regs3.3 \ + dwarf_get_fde_info_for_cfa_reg3.3 \ + dwarf_get_fde_info_for_reg.3 \ + dwarf_get_fde_info_for_reg3.3 \ + dwarf_get_fde_instr_bytes.3 \ + dwarf_get_fde_list.3 \ + dwarf_get_fde_n.3 \ + dwarf_get_fde_range.3 \ + dwarf_get_form_class.3 \ + dwarf_get_funcs.3 \ + dwarf_get_globals.3 \ + dwarf_get_loclist_entry.3 \ + dwarf_get_macro_details.3 \ + dwarf_get_pubtypes.3 \ + dwarf_get_ranges.3 \ + dwarf_get_relocation_info.3 \ + dwarf_get_relocation_info_count.3 \ + dwarf_get_section_bytes.3 \ + dwarf_get_str.3 \ + dwarf_get_types.3 \ + dwarf_get_vars.3 \ + dwarf_get_weaks.3 \ + dwarf_hasattr.3 \ + dwarf_hasform.3 \ + dwarf_highpc.3 \ + dwarf_init.3 \ + dwarf_lineno.3 \ + dwarf_lne_end_sequence.3 \ + dwarf_lne_set_address.3 \ + dwarf_loclist.3 \ + dwarf_loclist_from_expr.3 \ + dwarf_new_die.3 \ + dwarf_new_expr.3 \ + dwarf_new_fde.3 \ + dwarf_next_cu_header.3 \ + dwarf_object_init.3 \ + dwarf_producer_init.3 \ + dwarf_producer_set_isa.3 \ + dwarf_reset_section_bytes.3 \ + dwarf_seterrarg.3 \ + dwarf_set_frame_cfa_value.3 \ + dwarf_set_reloc_application.3 \ + dwarf_srcfiles.3 \ + dwarf_srclines.3 \ + dwarf_start_macro_file.3 \ + dwarf_tag.3 \ + dwarf_transform_to_disk_form.3 \ + dwarf_undef_macro.3 \ + dwarf_vendor_ext.3 \ + dwarf_whatattr.3 + +MLINKS+= \ + dwarf_add_AT_const_value_string.3 dwarf_add_AT_const_value_signedint.3 \ + dwarf_add_AT_const_value_string.3 dwarf_add_AT_const_value_unsignedint.3 \ + dwarf_add_AT_signed_const.3 dwarf_add_AT_unsigned_const.3 \ + dwarf_add_AT_targ_address.3 dwarf_add_AT_targ_address_b.3 \ + dwarf_add_arange.3 dwarf_add_arange_b.3 \ + dwarf_add_expr_addr.3 dwarf_add_expr_addr_b.3 \ + dwarf_add_frame_fde.3 dwarf_add_frame_fde_b.3 \ + dwarf_attrval_signed.3 dwarf_attrval_flag.3 \ + dwarf_attrval_signed.3 dwarf_attrval_string.3 \ + dwarf_attrval_signed.3 dwarf_attrval_unsigned.3 \ + dwarf_child.3 dwarf_offdie.3 \ + dwarf_child.3 dwarf_siblingof.3 \ + dwarf_dealloc.3 dwarf_fde_cie_list_dealloc.3 \ + dwarf_dealloc.3 dwarf_funcs_dealloc.3 \ + dwarf_dealloc.3 dwarf_globals_dealloc.3 \ + dwarf_dealloc.3 dwarf_pubtypes_dealloc.3 \ + dwarf_dealloc.3 dwarf_types_dealloc.3 \ + dwarf_dealloc.3 dwarf_vars_dealloc.3 \ + dwarf_dealloc.3 dwarf_weaks_dealloc.3 \ + dwarf_dealloc.3 dwarf_ranges_dealloc.3 \ + dwarf_dealloc.3 dwarf_srclines_dealloc.3 \ + dwarf_init.3 dwarf_elf_init.3 \ + dwarf_dieoffset.3 dwarf_die_CU_offset.3 \ + dwarf_dieoffset.3 dwarf_die_CU_offset_range.3 \ + dwarf_dieoffset.3 dwarf_get_cu_die_offset_given_cu_header_offset.3 \ + dwarf_finish.3 dwarf_object_finish.3 \ + dwarf_formref.3 dwarf_global_formref.3 \ + dwarf_formudata.3 dwarf_formsdata.3 \ + dwarf_get_AT_name.3 dwarf_get_ACCESS_name.3 \ + dwarf_get_AT_name.3 dwarf_get_ATE_name.3 \ + dwarf_get_AT_name.3 dwarf_get_CC_name.3 \ + dwarf_get_AT_name.3 dwarf_get_CFA_name.3 \ + dwarf_get_AT_name.3 dwarf_get_CHILDREN_name.3 \ + dwarf_get_AT_name.3 dwarf_get_DS_name.3 \ + dwarf_get_AT_name.3 dwarf_get_DSC_name.3 \ + dwarf_get_AT_name.3 dwarf_get_EH_name.3 \ + dwarf_get_AT_name.3 dwarf_get_END_name.3 \ + dwarf_get_AT_name.3 dwarf_get_FORM_name.3 \ + dwarf_get_AT_name.3 dwarf_get_ID_name.3 \ + dwarf_get_AT_name.3 dwarf_get_INL_name.3 \ + dwarf_get_AT_name.3 dwarf_get_LANG_name.3 \ + dwarf_get_AT_name.3 dwarf_get_LNE_name.3 \ + dwarf_get_AT_name.3 dwarf_get_LNS_name.3 \ + dwarf_get_AT_name.3 dwarf_get_MACINFO_name.3 \ + dwarf_get_AT_name.3 dwarf_get_OP_name.3 \ + dwarf_get_AT_name.3 dwarf_get_ORD_name.3 \ + dwarf_get_AT_name.3 dwarf_get_TAG_name.3 \ + dwarf_get_AT_name.3 dwarf_get_VIRTUALITY_name.3 \ + dwarf_get_AT_name.3 dwarf_get_VIS_name.3 \ + dwarf_get_cu_die_offset.3 dwarf_get_arange_cu_header_offset.3 \ + dwarf_get_fde_list.3 dwarf_get_fde_list_eh.3 \ + dwarf_get_funcs.3 dwarf_func_die_offset.3 \ + dwarf_get_funcs.3 dwarf_func_cu_offset.3 \ + dwarf_get_funcs.3 dwarf_func_name_offsets.3 \ + dwarf_get_funcs.3 dwarf_funcname.3 \ + dwarf_get_globals.3 dwarf_global_die_offset.3 \ + dwarf_get_globals.3 dwarf_global_cu_offset.3 \ + dwarf_get_globals.3 dwarf_global_name_offsets.3 \ + dwarf_get_globals.3 dwarf_globname.3 \ + dwarf_get_pubtypes.3 dwarf_pubtype_die_offset.3 \ + dwarf_get_pubtypes.3 dwarf_pubtype_cu_offset.3 \ + dwarf_get_pubtypes.3 dwarf_pubtype_name_offsets.3 \ + dwarf_get_pubtypes.3 dwarf_pubtypename.3 \ + dwarf_get_ranges.3 dwarf_get_ranges_a.3 \ + dwarf_get_types.3 dwarf_type_die_offset.3 \ + dwarf_get_types.3 dwarf_type_cu_offset.3 \ + dwarf_get_types.3 dwarf_type_name_offsets.3 \ + dwarf_get_types.3 dwarf_typename.3 \ + dwarf_get_vars.3 dwarf_var_die_offset.3 \ + dwarf_get_vars.3 dwarf_var_cu_offset.3 \ + dwarf_get_vars.3 dwarf_var_name_offsets.3 \ + dwarf_get_vars.3 dwarf_varname.3 \ + dwarf_get_weaks.3 dwarf_weak_die_offset.3 \ + dwarf_get_weaks.3 dwarf_weak_cu_offset.3 \ + dwarf_get_weaks.3 dwarf_weak_name_offsets.3 \ + dwarf_get_weaks.3 dwarf_weakname.3 \ + dwarf_hasform.3 dwarf_whatform.3 \ + dwarf_hasform.3 dwarf_whatform_direct.3 \ + dwarf_highpc.3 dwarf_arrayorder.3 \ + dwarf_highpc.3 dwarf_bitoffset.3 \ + dwarf_highpc.3 dwarf_bitsize.3 \ + dwarf_highpc.3 dwarf_bytesize.3 \ + dwarf_highpc.3 dwarf_lowpc.3 \ + dwarf_highpc.3 dwarf_srclang.3 \ + dwarf_lineno.3 dwarf_lineaddr.3 \ + dwarf_lineno.3 dwarf_linebeginstatement.3 \ + dwarf_lineno.3 dwarf_lineblock.3 \ + dwarf_lineno.3 dwarf_lineendsequence.3 \ + dwarf_lineno.3 dwarf_lineoff.3 \ + dwarf_lineno.3 dwarf_linesrc.3 \ + dwarf_lineno.3 dwarf_line_srcfileno.3 \ + dwarf_loclist.3 dwarf_loclist_n.3 \ + dwarf_loclist_from_expr.3 dwarf_loclist_from_expr_a.3 \ + dwarf_producer_init.3 dwarf_producer_init_b.3 \ + dwarf_seterrarg.3 dwarf_seterrhand.3 \ + dwarf_set_frame_cfa_value.3 dwarf_set_frame_rule_initial_value.3 \ + dwarf_set_frame_cfa_value.3 dwarf_set_frame_rule_table_size.3 \ + dwarf_set_frame_cfa_value.3 dwarf_set_frame_same_value.3 \ + dwarf_set_frame_cfa_value.3 dwarf_set_frame_undefined_value.3 + +dwarf_pubnames.c: dwarf_nametbl.m4 dwarf_pubnames.m4 +dwarf_pubtypes.c: dwarf_nametbl.m4 dwarf_pubtypes.m4 +dwarf_weaks.c: dwarf_nametbl.m4 dwarf_weaks.m4 +dwarf_funcs.c: dwarf_nametbl.m4 dwarf_funcs.m4 +dwarf_vars.c: dwarf_nametbl.m4 dwarf_vars.m4 +dwarf_types.c: dwarf_nametbl.m4 dwarf_types.m4 +dwarf_pro_pubnames.c: dwarf_pro_nametbl.m4 dwarf_pro_pubnames.m4 +dwarf_pro_weaks.c: dwarf_pro_nametbl.m4 dwarf_pro_weaks.m4 +dwarf_pro_funcs.c: dwarf_pro_nametbl.m4 dwarf_pro_funcs.m4 +dwarf_pro_types.c: dwarf_pro_nametbl.m4 dwarf_pro_types.m4 +dwarf_pro_vars.c: dwarf_pro_nametbl.m4 dwarf_pro_vars.m4 .include + +# Keep the .SUFFIXES line after the include of bsd.lib.mk +.SUFFIXES: .m4 .c +.m4.c: + m4 -D SRCDIR=${SRCDIR} ${M4FLAGS} ${.IMPSRC} > ${.TARGET} + Modified: head/lib/libelf/Makefile ============================================================================== --- head/lib/libelf/Makefile Tue Jan 28 21:30:05 2014 (r261245) +++ head/lib/libelf/Makefile Tue Jan 28 21:38:54 2014 (r261246) @@ -1,8 +1,15 @@ # $FreeBSD$ +.include + +TOP= ${.CURDIR}/../../contrib/elftoolchain +SRCDIR= ${TOP}/libelf + +.PATH: ${SRCDIR} LIB= elf -SRCS= elf_begin.c \ +SRCS= elf.c \ + elf_begin.c \ elf_cntl.c \ elf_end.c elf_errmsg.c elf_errno.c \ elf_data.c \ @@ -16,6 +23,7 @@ SRCS= elf_begin.c \ elf_kind.c \ elf_memory.c \ elf_next.c \ + elf_open.c \ elf_rand.c \ elf_rawfile.c \ elf_phnum.c \ @@ -40,7 +48,6 @@ SRCS= elf_begin.c \ gelf_syminfo.c \ gelf_symshndx.c \ gelf_xlate.c \ - libelf.c \ libelf_align.c \ libelf_allocate.c \ libelf_ar.c \ @@ -49,11 +56,14 @@ SRCS= elf_begin.c \ libelf_data.c \ libelf_ehdr.c \ libelf_extended.c \ + libelf_memory.c \ + libelf_open.c \ libelf_phdr.c \ libelf_shdr.c \ libelf_xlate.c \ ${GENSRCS} -INCS= libelf.h gelf.h + +INCS= libelf.h gelf.h # # We need to link against the correct version of these files. One @@ -66,13 +76,13 @@ SRCS+= sys/elf32.h sys/elf64.h sys/elf_c GENSRCS= libelf_fsize.c libelf_msize.c libelf_convert.c CLEANFILES= ${GENSRCS} CLEANDIRS= sys -CFLAGS+= -I${.CURDIR} -I. +CFLAGS+= -I. -I${SRCDIR} -I${TOP}/common sys/elf32.h sys/elf64.h sys/elf_common.h: ${.CURDIR}/../../sys/${.TARGET} mkdir -p ${.OBJDIR}/sys ln -sf ${.CURDIR}/../../sys/${.TARGET} ${.TARGET} -SHLIB_MAJOR= 1 +SHLIB_MAJOR= 2 MAN= elf.3 \ elf_begin.3 \ @@ -97,6 +107,7 @@ MAN= elf.3 \ elf_kind.3 \ elf_memory.3 \ elf_next.3 \ + elf_open.3 \ elf_rawfile.3 \ elf_rand.3 \ elf_strptr.3 \ @@ -124,6 +135,7 @@ MAN= elf.3 \ MLINKS+= \ elf_errmsg.3 elf_errno.3 \ + elf_flagdata.3 elf_flagarhdr.3 \ elf_flagdata.3 elf_flagehdr.3 \ elf_flagdata.3 elf_flagelf.3 \ elf_flagdata.3 elf_flagphdr.3 \ @@ -135,6 +147,7 @@ MLINKS+= \ elf_getscn.3 elf_newscn.3 \ elf_getscn.3 elf_nextscn.3 \ elf_getshstrndx.3 elf_setshstrndx.3 \ + elf_open.3 elf_openmemory.3 \ gelf_getcap.3 gelf_update_cap.3 \ gelf_getdyn.3 gelf_update_dyn.3 \ gelf_getmove.3 gelf_update_move.3 \ @@ -160,12 +173,7 @@ MLINKS+= \ gelf_xlatetof.3 elf${E}_xlatetom.3 .endfor -VERSION_MAP= ${.CURDIR}/Version.map - -LIBELF_TEST_HOOKS?= 1 -.if defined(LIBELF_TEST_HOOKS) && (${LIBELF_TEST_HOOKS} > 0) -CFLAGS+= -DLIBELF_TEST_HOOKS -.endif +VERSION_MAP= ${SRCDIR}/Version.map libelf_convert.c: elf_types.m4 libelf_convert.m4 libelf_fsize.c: elf_types.m4 libelf_fsize.m4 @@ -176,4 +184,5 @@ libelf_msize.c: elf_types.m4 libelf_msi # Keep the .SUFFIXES line after the include of bsd.lib.mk .SUFFIXES: .m4 .c .m4.c: - m4 -D SRCDIR=${.CURDIR} ${.IMPSRC} > ${.TARGET} + m4 -D SRCDIR=${SRCDIR} ${M4FLAGS} ${.IMPSRC} > ${.TARGET} + Modified: head/sys/sys/elf_common.h ============================================================================== --- head/sys/sys/elf_common.h Tue Jan 28 21:30:05 2014 (r261245) +++ head/sys/sys/elf_common.h Tue Jan 28 21:38:54 2014 (r261246) @@ -280,6 +280,7 @@ typedef struct { #define SHT_SUNW_cap 0x6ffffff5 #define SHT_SUNW_SIGNATURE 0x6ffffff6 #define SHT_GNU_HASH 0x6ffffff6 +#define SHT_GNU_LIBLIST 0x6ffffff7 #define SHT_SUNW_ANNOTATE 0x6ffffff7 #define SHT_SUNW_DEBUGSTR 0x6ffffff8 #define SHT_SUNW_DEBUG 0x6ffffff9 @@ -769,6 +770,7 @@ typedef struct { #define R_MIPS_PC16 10 /* PC relative 16 bit */ #define R_MIPS_CALL16 11 /* 16 bit GOT entry for function */ #define R_MIPS_GPREL32 12 /* GP relative 32 bit */ +#define R_MIPS_64 18 /* Direct 64 bit */ #define R_MIPS_GOTHI16 21 /* GOT HI 16 bit */ #define R_MIPS_GOTLO16 22 /* GOT LO 16 bit */ #define R_MIPS_CALLHI16 30 /* upper 16 bit GOT entry for function */ Modified: head/sys/sys/param.h ============================================================================== --- head/sys/sys/param.h Tue Jan 28 21:30:05 2014 (r261245) +++ head/sys/sys/param.h Tue Jan 28 21:38:54 2014 (r261246) @@ -58,7 +58,7 @@ * in the range 5 to 9. */ #undef __FreeBSD_version -#define __FreeBSD_version 1100005 /* Master, propagated to newvers */ +#define __FreeBSD_version 1100006 /* Master, propagated to newvers */ /* * __FreeBSD_kernel__ indicates that this system uses the kernel of FreeBSD, From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 21:39:46 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9E5F92BB; Tue, 28 Jan 2014 21:39:46 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8AB751CFA; Tue, 28 Jan 2014 21:39:46 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SLdk5c085930; Tue, 28 Jan 2014 21:39:46 GMT (envelope-from uqs@svn.freebsd.org) Received: (from uqs@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SLdkT8085929; Tue, 28 Jan 2014 21:39:46 GMT (envelope-from uqs@svn.freebsd.org) Message-Id: <201401282139.s0SLdkT8085929@svn.freebsd.org> From: Ulrich Spoerlein Date: Tue, 28 Jan 2014 21:39:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261247 - head/share/misc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 21:39:46 -0000 Author: uqs Date: Tue Jan 28 21:39:46 2014 New Revision: 261247 URL: http://svnweb.freebsd.org/changeset/base/261247 Log: Add FreeBSD 2.2.9, the April Fools release. I decided not to extend the graph to the actual point in time when it was released, that would just look silly. Modified: head/share/misc/bsd-family-tree Modified: head/share/misc/bsd-family-tree ============================================================================== --- head/share/misc/bsd-family-tree Tue Jan 28 21:38:54 2014 (r261246) +++ head/share/misc/bsd-family-tree Tue Jan 28 21:39:46 2014 (r261247) @@ -110,9 +110,11 @@ FreeBSD 2.1 | | | | | | | | NetBSD 1.3.2 | | | FreeBSD 2.2.7 | | | | | | | | | | | | | BSD/OS 4.0 - | v | | | | | | | FreeBSD 2.2.8 | | | | | | - | | | | | OpenBSD 2.4 | + | | | | | | | | + | v | | | | OpenBSD 2.4 | + | FreeBSD 2.2.9 | | | | | | + | | | | | | | FreeBSD 3.0 <--------* | | v | | | | | NetBSD 1.3.3 | | *---FreeBSD 3.1 | | | | @@ -540,6 +542,7 @@ FreeBSD 6.0 2005-11-01 [FBD] NetBSD 2.1 2005-11-02 [NBD] NetBSD 3.0 2005-12-23 [NBD] DragonFly 1.4.0 2006-01-08 [DFB] +FreeBSD 2.2.9 2006-04-01 [FBD] OpenBSD 3.9 2006-05-01 [OBD] FreeBSD 6.1 2006-05-08 [FBD] FreeBSD 5.5 2006-05-25 [FBD] From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 21:40:04 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 433C1404; Tue, 28 Jan 2014 21:40:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2E0231CFE; Tue, 28 Jan 2014 21:40:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SLe4rP086073; Tue, 28 Jan 2014 21:40:04 GMT (envelope-from uqs@svn.freebsd.org) Received: (from uqs@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SLe4hC086072; Tue, 28 Jan 2014 21:40:04 GMT (envelope-from uqs@svn.freebsd.org) Message-Id: <201401282140.s0SLe4hC086072@svn.freebsd.org> From: Ulrich Spoerlein Date: Tue, 28 Jan 2014 21:40:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261248 - head/gnu/usr.bin/groff/tmac X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 21:40:04 -0000 Author: uqs Date: Tue Jan 28 21:40:03 2014 New Revision: 261248 URL: http://svnweb.freebsd.org/changeset/base/261248 Log: Add FreeBSD 2.2.9 which aout(4) references. Discussed with: kib Modified: head/gnu/usr.bin/groff/tmac/mdoc.local Modified: head/gnu/usr.bin/groff/tmac/mdoc.local ============================================================================== --- head/gnu/usr.bin/groff/tmac/mdoc.local Tue Jan 28 21:39:46 2014 (r261247) +++ head/gnu/usr.bin/groff/tmac/mdoc.local Tue Jan 28 21:40:03 2014 (r261248) @@ -48,6 +48,7 @@ .ds doc-default-operating-system FreeBSD\~11.0 . .\" FreeBSD releases not found in doc-common +.ds doc-operating-system-FreeBSD-2.2.9 2.2.9 .ds doc-operating-system-FreeBSD-7.4 7.4 .ds doc-operating-system-FreeBSD-8.3 8.3 .ds doc-operating-system-FreeBSD-8.4 8.4 From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 21:40:12 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9B02E537; Tue, 28 Jan 2014 21:40:12 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 875541D58; Tue, 28 Jan 2014 21:40:12 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SLeCpS086139; Tue, 28 Jan 2014 21:40:12 GMT (envelope-from uqs@svn.freebsd.org) Received: (from uqs@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SLeBoJ086131; Tue, 28 Jan 2014 21:40:11 GMT (envelope-from uqs@svn.freebsd.org) Message-Id: <201401282140.s0SLeBoJ086131@svn.freebsd.org> From: Ulrich Spoerlein Date: Tue, 28 Jan 2014 21:40:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261249 - in head: lib/libc/iconv lib/libc/sys share/man/man4 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 21:40:12 -0000 Author: uqs Date: Tue Jan 28 21:40:10 2014 New Revision: 261249 URL: http://svnweb.freebsd.org/changeset/base/261249 Log: mdoc: fix several uses of the Fx macro to point to actual releases. Found by: make manlint Modified: head/lib/libc/iconv/__iconv_get_list.3 head/lib/libc/iconv/iconv_canonicalize.3 head/lib/libc/iconv/iconvctl.3 head/lib/libc/iconv/iconvlist.3 head/lib/libc/sys/procctl.2 head/share/man/man4/nvd.4 head/share/man/man4/nvme.4 Modified: head/lib/libc/iconv/__iconv_get_list.3 ============================================================================== --- head/lib/libc/iconv/__iconv_get_list.3 Tue Jan 28 21:40:03 2014 (r261248) +++ head/lib/libc/iconv/__iconv_get_list.3 Tue Jan 28 21:40:10 2014 (r261249) @@ -89,7 +89,7 @@ and functions are non-standard interfaces, which appeared in the implementation of the Citrus Project. The iconv implementation of the Citrus Project was adopted in -.Fx 9 . +.Fx 9.0 . .Sh AUTHORS This manual page was written by .An Gabor Kovesdan Aq gabor@FreeBSD.org . Modified: head/lib/libc/iconv/iconv_canonicalize.3 ============================================================================== --- head/lib/libc/iconv/iconv_canonicalize.3 Tue Jan 28 21:40:03 2014 (r261248) +++ head/lib/libc/iconv/iconv_canonicalize.3 Tue Jan 28 21:40:10 2014 (r261249) @@ -67,7 +67,7 @@ The .Nm function is a non-standard extension, which appeared in the GNU implementation and was adopted in -.Fx 9 +.Fx 9.0 for compatibility's sake. .Sh AUTHORS This manual page was written by Modified: head/lib/libc/iconv/iconvctl.3 ============================================================================== --- head/lib/libc/iconv/iconvctl.3 Tue Jan 28 21:40:03 2014 (r261248) +++ head/lib/libc/iconv/iconvctl.3 Tue Jan 28 21:40:10 2014 (r261249) @@ -175,7 +175,7 @@ The .Nm facility is a non-standard extension, which appeared in the GNU implementation and was adopted in -.Fx 9 +.Fx 9.0 for compatibility's sake. .Sh AUTHORS This manual page was written by Modified: head/lib/libc/iconv/iconvlist.3 ============================================================================== --- head/lib/libc/iconv/iconvlist.3 Tue Jan 28 21:40:03 2014 (r261248) +++ head/lib/libc/iconv/iconvlist.3 Tue Jan 28 21:40:10 2014 (r261249) @@ -86,7 +86,7 @@ The .Nm function is a non-standard extension, which appeared in the GNU implementation and was adopted in -.Fx 9 +.Fx 9.0 for compatibility's sake. .Sh AUTHORS This manual page was written by Modified: head/lib/libc/sys/procctl.2 ============================================================================== --- head/lib/libc/sys/procctl.2 Tue Jan 28 21:40:03 2014 (r261248) +++ head/lib/libc/sys/procctl.2 Tue Jan 28 21:40:10 2014 (r261249) @@ -139,4 +139,4 @@ command. The .Fn procctl function appeared in -.Fx 10 . +.Fx 10.0 . Modified: head/share/man/man4/nvd.4 ============================================================================== --- head/share/man/man4/nvd.4 Tue Jan 28 21:40:03 2014 (r261248) +++ head/share/man/man4/nvd.4 Tue Jan 28 21:40:10 2014 (r261249) @@ -70,7 +70,7 @@ I/O commands. The .Nm driver first appeared in -.Fx 9.2. +.Fx 9.2 . .Sh AUTHORS .An -nosplit The Modified: head/share/man/man4/nvme.4 ============================================================================== --- head/share/man/man4/nvme.4 Tue Jan 28 21:40:03 2014 (r261248) +++ head/share/man/man4/nvme.4 Tue Jan 28 21:40:10 2014 (r261249) @@ -151,7 +151,7 @@ and completion queues to the console. The .Nm driver first appeared in -.Fx 9.2. +.Fx 9.2 . .Sh AUTHORS .An -nosplit The From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 21:56:19 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6276D938; Tue, 28 Jan 2014 21:56:19 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4C2A61E3F; Tue, 28 Jan 2014 21:56:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SLuJQc093103; Tue, 28 Jan 2014 21:56:19 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SLuIFt093101; Tue, 28 Jan 2014 21:56:18 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401282156.s0SLuIFt093101@svn.freebsd.org> From: John Baldwin Date: Tue, 28 Jan 2014 21:56:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261250 - in stable: 10/usr.sbin/pciconf 8/usr.sbin/pciconf 9/usr.sbin/pciconf X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 21:56:19 -0000 Author: jhb Date: Tue Jan 28 21:56:18 2014 New Revision: 261250 URL: http://svnweb.freebsd.org/changeset/base/261250 Log: MFC 260910: - Allow PCI devices that are attached to a driver to be identified by their device name instead of just the selector. - Accept an optional device argument to -l to restrict the output to only listing details about a single device. This is mostly useful in conjunction with other flags like -e or -c to allow a user to query details about a single device. Modified: stable/10/usr.sbin/pciconf/pciconf.8 stable/10/usr.sbin/pciconf/pciconf.c Directory Properties: stable/10/ (props changed) Changes in other areas also in this revision: Modified: stable/8/usr.sbin/pciconf/pciconf.8 stable/8/usr.sbin/pciconf/pciconf.c stable/9/usr.sbin/pciconf/pciconf.8 stable/9/usr.sbin/pciconf/pciconf.c Directory Properties: stable/8/usr.sbin/pciconf/ (props changed) stable/9/usr.sbin/pciconf/ (props changed) Modified: stable/10/usr.sbin/pciconf/pciconf.8 ============================================================================== --- stable/10/usr.sbin/pciconf/pciconf.8 Tue Jan 28 21:40:10 2014 (r261249) +++ stable/10/usr.sbin/pciconf/pciconf.8 Tue Jan 28 21:56:18 2014 (r261250) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd June 1, 2012 +.Dd January 20, 2014 .Dt PCICONF 8 .Os .Sh NAME @@ -33,13 +33,13 @@ .Nd diagnostic utility for the PCI bus .Sh SYNOPSIS .Nm -.Fl l Op Fl bcev +.Fl l Oo Fl bcev Oc Op Ar device .Nm -.Fl a Ar selector +.Fl a Ar device .Nm -.Fl r Oo Fl b | h Oc Ar selector addr Ns Op : Ns Ar addr2 +.Fl r Oo Fl b | h Oc Ar device addr Ns Op : Ns Ar addr2 .Nm -.Fl w Oo Fl b | h Oc Ar selector addr value +.Fl w Oo Fl b | h Oc Ar device addr value .Sh DESCRIPTION The .Nm @@ -54,7 +54,9 @@ normally only the super-user. .Pp With the .Fl l -option, it lists all devices found by the boot probe in the following format: +option, +.Nm +lists PCI devices in the following format: .Bd -literal foo0@pci0:0:4:0: class=0x010000 card=0x00000000 chip=0x000f1000 rev=0x01 \ hdr=0x00 @@ -65,16 +67,14 @@ hdr=0x00 .Ed .Pp The first column gives the -device name, unit number, and -.Ar selector . -If there is no device configured in the kernel for the +driver name, unit number, and selector . +If there is no driver attached to the .Tn PCI -device in question, the device name will be +device in question, the driver name will be .Dq none . -Unit numbers for unconfigured devices start at zero and are incremented for -each unconfigured device that is encountered. -The -.Ar selector +Unit numbers for detached devices start at zero and are incremented for +each detached device that is encountered. +The selector is in a form which may directly be used for the other forms of the command. The second column is the class code, with the class byte printed as two hex digits, followed by the sub-class and the interface bytes. @@ -182,18 +182,36 @@ option is supplied, will attempt to load the vendor/device information database, and print vendor, device, class and subclass identification strings for each device. .Pp +If the optional +.Ar device +argument is given with the +.Fl l +flag, +.Nm +will only list details about a single device instead of all devices. +.Pp All invocations of .Nm except for .Fl l require a -.Ar selector -of the form +.Ar device . +The device can be identified either by a device name if the device is +attached to a driver or by a selector. +Selectors identify a PCI device by its address in PCI config space and +can take one of the following forms: +.Pp +.Bl -bullet -offset indent -compact +.It .Li pci Ns Va domain Ns \&: Ns Va bus Ns \&: Ns Va device Ns \&: \ -Ns Va function Ns , -.Li pci Ns Va bus Ns \&: Ns Va device Ns \&: Ns Va function Ns , or -.Li pci Ns Va bus Ns \&: Ns Va device Ns . -In case of an abridged form, omitted selector components are assumed to be 0. +Ns Va function Ns +.It +.Li pci Ns Va bus Ns \&: Ns Va device Ns \&: Ns Va function Ns +.It +.Li pci Ns Va bus Ns \&: Ns Va device Ns +.El +.Pp +In the case of an abridged form, omitted selector components are assumed to be 0. An optional leading device name followed by @ and an optional final colon will be ignored; this is so that the first column in the output of .Nm Modified: stable/10/usr.sbin/pciconf/pciconf.c ============================================================================== --- stable/10/usr.sbin/pciconf/pciconf.c Tue Jan 28 21:40:10 2014 (r261249) +++ stable/10/usr.sbin/pciconf/pciconf.c Tue Jan 28 21:56:18 2014 (r261250) @@ -35,6 +35,7 @@ static const char rcsid[] = #include #include +#include #include #include #include @@ -67,8 +68,10 @@ struct pci_vendor_info TAILQ_HEAD(,pci_vendor_info) pci_vendors; +static struct pcisel getsel(const char *str); static void list_bars(int fd, struct pci_conf *p); -static void list_devs(int verbose, int bars, int caps, int errors); +static void list_devs(const char *name, int verbose, int bars, int caps, + int errors); static void list_verbose(struct pci_conf *p); static const char *guess_class(struct pci_conf *p); static const char *guess_subclass(struct pci_conf *p); @@ -83,10 +86,10 @@ static void usage(void) { fprintf(stderr, "%s\n%s\n%s\n%s\n", - "usage: pciconf -l [-bcev]", - " pciconf -a selector", - " pciconf -r [-b | -h] selector addr[:addr2]", - " pciconf -w [-b | -h] selector addr value"); + "usage: pciconf -l [-bcev] [device]", + " pciconf -a device", + " pciconf -r [-b | -h] device addr[:addr2]", + " pciconf -w [-b | -h] device addr value"); exit (1); } @@ -145,14 +148,15 @@ main(int argc, char **argv) } } - if ((listmode && optind != argc) + if ((listmode && optind >= argc + 1) || (writemode && optind + 3 != argc) || (readmode && optind + 2 != argc) || (attachedmode && optind + 1 != argc)) usage(); if (listmode) { - list_devs(verbose, bars, caps, errors); + list_devs(optind + 1 == argc ? argv[optind] : NULL, verbose, + bars, caps, errors); } else if (attachedmode) { chkattached(argv[optind]); } else if (readmode) { @@ -169,11 +173,12 @@ main(int argc, char **argv) } static void -list_devs(int verbose, int bars, int caps, int errors) +list_devs(const char *name, int verbose, int bars, int caps, int errors) { int fd; struct pci_conf_io pc; struct pci_conf conf[255], *p; + struct pci_match_conf patterns[1]; int none_count = 0; if (verbose) @@ -186,6 +191,16 @@ list_devs(int verbose, int bars, int cap bzero(&pc, sizeof(struct pci_conf_io)); pc.match_buf_len = sizeof(conf); pc.matches = conf; + if (name != NULL) { + bzero(&patterns, sizeof(patterns)); + patterns[0].pc_sel = getsel(name); + patterns[0].flags = PCI_GETCONF_MATCH_DOMAIN | + PCI_GETCONF_MATCH_BUS | PCI_GETCONF_MATCH_DEV | + PCI_GETCONF_MATCH_FUNC; + pc.num_patterns = 1; + pc.pat_buf_len = sizeof(patterns); + pc.patterns = patterns; + } do { if (ioctl(fd, PCIOCGETCONF, &pc) == -1) @@ -557,7 +572,61 @@ read_config(int fd, struct pcisel *sel, } static struct pcisel -getsel(const char *str) +getdevice(const char *name) +{ + struct pci_conf_io pc; + struct pci_conf conf[1]; + struct pci_match_conf patterns[1]; + char *cp; + int fd; + + fd = open(_PATH_DEVPCI, O_RDONLY, 0); + if (fd < 0) + err(1, "%s", _PATH_DEVPCI); + + bzero(&pc, sizeof(struct pci_conf_io)); + pc.match_buf_len = sizeof(conf); + pc.matches = conf; + + bzero(&patterns, sizeof(patterns)); + + /* + * The pattern structure requires the unit to be split out from + * the driver name. Walk backwards from the end of the name to + * find the start of the unit. + */ + if (name[0] == '\0') + err(1, "Empty device name"); + cp = strchr(name, '\0'); + assert(cp != NULL && cp != name); + cp--; + while (cp != name && isdigit(cp[-1])) + cp--; + if (cp == name) + errx(1, "Invalid device name"); + if ((size_t)(cp - name) + 1 > sizeof(patterns[0].pd_name)) + errx(1, "Device name i2s too long"); + memcpy(patterns[0].pd_name, name, cp - name); + patterns[0].pd_unit = strtol(cp, &cp, 10); + assert(*cp == '\0'); + patterns[0].flags = PCI_GETCONF_MATCH_NAME | PCI_GETCONF_MATCH_UNIT; + pc.num_patterns = 1; + pc.pat_buf_len = sizeof(patterns); + pc.patterns = patterns; + + if (ioctl(fd, PCIOCGETCONF, &pc) == -1) + err(1, "ioctl(PCIOCGETCONF)"); + if (pc.status != PCI_GETCONF_LAST_DEVICE && + pc.status != PCI_GETCONF_MORE_DEVS) + errx(1, "error returned from PCIOCGETCONF ioctl"); + close(fd); + if (pc.num_matches == 0) + errx(1, "Device not found"); + return (conf[0].pc_sel); +} + +static struct pcisel +parsesel(const char *str) { char *ep = strchr(str, '@'); char *epbase; @@ -595,6 +664,20 @@ getsel(const char *str) return sel; } +static struct pcisel +getsel(const char *str) +{ + + /* + * No device names contain colons and selectors always contain + * at least one colon. + */ + if (strchr(str, ':') == NULL) + return (getdevice(str)); + else + return (parsesel(str)); +} + static void readone(int fd, struct pcisel *sel, long reg, int width) { From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 21:56:20 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7FB0093A; Tue, 28 Jan 2014 21:56:20 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 695451E41; Tue, 28 Jan 2014 21:56:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SLuKgq093117; Tue, 28 Jan 2014 21:56:20 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SLuKrL093115; Tue, 28 Jan 2014 21:56:20 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401282156.s0SLuKrL093115@svn.freebsd.org> From: John Baldwin Date: Tue, 28 Jan 2014 21:56:20 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261250 - in stable: 10/usr.sbin/pciconf 8/usr.sbin/pciconf 9/usr.sbin/pciconf X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 21:56:20 -0000 Author: jhb Date: Tue Jan 28 21:56:18 2014 New Revision: 261250 URL: http://svnweb.freebsd.org/changeset/base/261250 Log: MFC 260910: - Allow PCI devices that are attached to a driver to be identified by their device name instead of just the selector. - Accept an optional device argument to -l to restrict the output to only listing details about a single device. This is mostly useful in conjunction with other flags like -e or -c to allow a user to query details about a single device. Modified: stable/9/usr.sbin/pciconf/pciconf.8 stable/9/usr.sbin/pciconf/pciconf.c Directory Properties: stable/9/usr.sbin/pciconf/ (props changed) Changes in other areas also in this revision: Modified: stable/10/usr.sbin/pciconf/pciconf.8 stable/10/usr.sbin/pciconf/pciconf.c stable/8/usr.sbin/pciconf/pciconf.8 stable/8/usr.sbin/pciconf/pciconf.c Directory Properties: stable/10/ (props changed) stable/8/usr.sbin/pciconf/ (props changed) Modified: stable/9/usr.sbin/pciconf/pciconf.8 ============================================================================== --- stable/9/usr.sbin/pciconf/pciconf.8 Tue Jan 28 21:40:10 2014 (r261249) +++ stable/9/usr.sbin/pciconf/pciconf.8 Tue Jan 28 21:56:18 2014 (r261250) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd June 1, 2012 +.Dd January 20, 2014 .Dt PCICONF 8 .Os .Sh NAME @@ -33,13 +33,13 @@ .Nd diagnostic utility for the PCI bus .Sh SYNOPSIS .Nm -.Fl l Op Fl bcev +.Fl l Oo Fl bcev Oc Op Ar device .Nm -.Fl a Ar selector +.Fl a Ar device .Nm -.Fl r Oo Fl b | h Oc Ar selector addr Ns Op : Ns Ar addr2 +.Fl r Oo Fl b | h Oc Ar device addr Ns Op : Ns Ar addr2 .Nm -.Fl w Oo Fl b | h Oc Ar selector addr value +.Fl w Oo Fl b | h Oc Ar device addr value .Sh DESCRIPTION The .Nm @@ -54,7 +54,9 @@ normally only the super-user. .Pp With the .Fl l -option, it lists all devices found by the boot probe in the following format: +option, +.Nm +lists PCI devices in the following format: .Bd -literal foo0@pci0:0:4:0: class=0x010000 card=0x00000000 chip=0x000f1000 rev=0x01 \ hdr=0x00 @@ -65,16 +67,14 @@ hdr=0x00 .Ed .Pp The first column gives the -device name, unit number, and -.Ar selector . -If there is no device configured in the kernel for the +driver name, unit number, and selector . +If there is no driver attached to the .Tn PCI -device in question, the device name will be +device in question, the driver name will be .Dq none . -Unit numbers for unconfigured devices start at zero and are incremented for -each unconfigured device that is encountered. -The -.Ar selector +Unit numbers for detached devices start at zero and are incremented for +each detached device that is encountered. +The selector is in a form which may directly be used for the other forms of the command. The second column is the class code, with the class byte printed as two hex digits, followed by the sub-class and the interface bytes. @@ -182,18 +182,36 @@ option is supplied, will attempt to load the vendor/device information database, and print vendor, device, class and subclass identification strings for each device. .Pp +If the optional +.Ar device +argument is given with the +.Fl l +flag, +.Nm +will only list details about a single device instead of all devices. +.Pp All invocations of .Nm except for .Fl l require a -.Ar selector -of the form +.Ar device . +The device can be identified either by a device name if the device is +attached to a driver or by a selector. +Selectors identify a PCI device by its address in PCI config space and +can take one of the following forms: +.Pp +.Bl -bullet -offset indent -compact +.It .Li pci Ns Va domain Ns \&: Ns Va bus Ns \&: Ns Va device Ns \&: \ -Ns Va function Ns , -.Li pci Ns Va bus Ns \&: Ns Va device Ns \&: Ns Va function Ns , or -.Li pci Ns Va bus Ns \&: Ns Va device Ns . -In case of an abridged form, omitted selector components are assumed to be 0. +Ns Va function Ns +.It +.Li pci Ns Va bus Ns \&: Ns Va device Ns \&: Ns Va function Ns +.It +.Li pci Ns Va bus Ns \&: Ns Va device Ns +.El +.Pp +In the case of an abridged form, omitted selector components are assumed to be 0. An optional leading device name followed by @ and an optional final colon will be ignored; this is so that the first column in the output of .Nm Modified: stable/9/usr.sbin/pciconf/pciconf.c ============================================================================== --- stable/9/usr.sbin/pciconf/pciconf.c Tue Jan 28 21:40:10 2014 (r261249) +++ stable/9/usr.sbin/pciconf/pciconf.c Tue Jan 28 21:56:18 2014 (r261250) @@ -35,6 +35,7 @@ static const char rcsid[] = #include #include +#include #include #include #include @@ -67,8 +68,10 @@ struct pci_vendor_info TAILQ_HEAD(,pci_vendor_info) pci_vendors; +static struct pcisel getsel(const char *str); static void list_bars(int fd, struct pci_conf *p); -static void list_devs(int verbose, int bars, int caps, int errors); +static void list_devs(const char *name, int verbose, int bars, int caps, + int errors); static void list_verbose(struct pci_conf *p); static const char *guess_class(struct pci_conf *p); static const char *guess_subclass(struct pci_conf *p); @@ -83,10 +86,10 @@ static void usage(void) { fprintf(stderr, "%s\n%s\n%s\n%s\n", - "usage: pciconf -l [-bcev]", - " pciconf -a selector", - " pciconf -r [-b | -h] selector addr[:addr2]", - " pciconf -w [-b | -h] selector addr value"); + "usage: pciconf -l [-bcev] [device]", + " pciconf -a device", + " pciconf -r [-b | -h] device addr[:addr2]", + " pciconf -w [-b | -h] device addr value"); exit (1); } @@ -145,14 +148,15 @@ main(int argc, char **argv) } } - if ((listmode && optind != argc) + if ((listmode && optind >= argc + 1) || (writemode && optind + 3 != argc) || (readmode && optind + 2 != argc) || (attachedmode && optind + 1 != argc)) usage(); if (listmode) { - list_devs(verbose, bars, caps, errors); + list_devs(optind + 1 == argc ? argv[optind] : NULL, verbose, + bars, caps, errors); } else if (attachedmode) { chkattached(argv[optind]); } else if (readmode) { @@ -169,11 +173,12 @@ main(int argc, char **argv) } static void -list_devs(int verbose, int bars, int caps, int errors) +list_devs(const char *name, int verbose, int bars, int caps, int errors) { int fd; struct pci_conf_io pc; struct pci_conf conf[255], *p; + struct pci_match_conf patterns[1]; int none_count = 0; if (verbose) @@ -186,6 +191,16 @@ list_devs(int verbose, int bars, int cap bzero(&pc, sizeof(struct pci_conf_io)); pc.match_buf_len = sizeof(conf); pc.matches = conf; + if (name != NULL) { + bzero(&patterns, sizeof(patterns)); + patterns[0].pc_sel = getsel(name); + patterns[0].flags = PCI_GETCONF_MATCH_DOMAIN | + PCI_GETCONF_MATCH_BUS | PCI_GETCONF_MATCH_DEV | + PCI_GETCONF_MATCH_FUNC; + pc.num_patterns = 1; + pc.pat_buf_len = sizeof(patterns); + pc.patterns = patterns; + } do { if (ioctl(fd, PCIOCGETCONF, &pc) == -1) @@ -557,7 +572,61 @@ read_config(int fd, struct pcisel *sel, } static struct pcisel -getsel(const char *str) +getdevice(const char *name) +{ + struct pci_conf_io pc; + struct pci_conf conf[1]; + struct pci_match_conf patterns[1]; + char *cp; + int fd; + + fd = open(_PATH_DEVPCI, O_RDONLY, 0); + if (fd < 0) + err(1, "%s", _PATH_DEVPCI); + + bzero(&pc, sizeof(struct pci_conf_io)); + pc.match_buf_len = sizeof(conf); + pc.matches = conf; + + bzero(&patterns, sizeof(patterns)); + + /* + * The pattern structure requires the unit to be split out from + * the driver name. Walk backwards from the end of the name to + * find the start of the unit. + */ + if (name[0] == '\0') + err(1, "Empty device name"); + cp = strchr(name, '\0'); + assert(cp != NULL && cp != name); + cp--; + while (cp != name && isdigit(cp[-1])) + cp--; + if (cp == name) + errx(1, "Invalid device name"); + if ((size_t)(cp - name) + 1 > sizeof(patterns[0].pd_name)) + errx(1, "Device name i2s too long"); + memcpy(patterns[0].pd_name, name, cp - name); + patterns[0].pd_unit = strtol(cp, &cp, 10); + assert(*cp == '\0'); + patterns[0].flags = PCI_GETCONF_MATCH_NAME | PCI_GETCONF_MATCH_UNIT; + pc.num_patterns = 1; + pc.pat_buf_len = sizeof(patterns); + pc.patterns = patterns; + + if (ioctl(fd, PCIOCGETCONF, &pc) == -1) + err(1, "ioctl(PCIOCGETCONF)"); + if (pc.status != PCI_GETCONF_LAST_DEVICE && + pc.status != PCI_GETCONF_MORE_DEVS) + errx(1, "error returned from PCIOCGETCONF ioctl"); + close(fd); + if (pc.num_matches == 0) + errx(1, "Device not found"); + return (conf[0].pc_sel); +} + +static struct pcisel +parsesel(const char *str) { char *ep = strchr(str, '@'); char *epbase; @@ -595,6 +664,20 @@ getsel(const char *str) return sel; } +static struct pcisel +getsel(const char *str) +{ + + /* + * No device names contain colons and selectors always contain + * at least one colon. + */ + if (strchr(str, ':') == NULL) + return (getdevice(str)); + else + return (parsesel(str)); +} + static void readone(int fd, struct pcisel *sel, long reg, int width) { From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 21:56:19 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EB105939; Tue, 28 Jan 2014 21:56:19 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D48771E40; Tue, 28 Jan 2014 21:56:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SLuJZV093110; Tue, 28 Jan 2014 21:56:19 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SLuJwZ093108; Tue, 28 Jan 2014 21:56:19 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401282156.s0SLuJwZ093108@svn.freebsd.org> From: John Baldwin Date: Tue, 28 Jan 2014 21:56:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r261250 - in stable: 10/usr.sbin/pciconf 8/usr.sbin/pciconf 9/usr.sbin/pciconf X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 21:56:20 -0000 Author: jhb Date: Tue Jan 28 21:56:18 2014 New Revision: 261250 URL: http://svnweb.freebsd.org/changeset/base/261250 Log: MFC 260910: - Allow PCI devices that are attached to a driver to be identified by their device name instead of just the selector. - Accept an optional device argument to -l to restrict the output to only listing details about a single device. This is mostly useful in conjunction with other flags like -e or -c to allow a user to query details about a single device. Modified: stable/8/usr.sbin/pciconf/pciconf.8 stable/8/usr.sbin/pciconf/pciconf.c Directory Properties: stable/8/usr.sbin/pciconf/ (props changed) Changes in other areas also in this revision: Modified: stable/10/usr.sbin/pciconf/pciconf.8 stable/10/usr.sbin/pciconf/pciconf.c stable/9/usr.sbin/pciconf/pciconf.8 stable/9/usr.sbin/pciconf/pciconf.c Directory Properties: stable/10/ (props changed) stable/9/usr.sbin/pciconf/ (props changed) Modified: stable/8/usr.sbin/pciconf/pciconf.8 ============================================================================== --- stable/8/usr.sbin/pciconf/pciconf.8 Tue Jan 28 21:40:10 2014 (r261249) +++ stable/8/usr.sbin/pciconf/pciconf.8 Tue Jan 28 21:56:18 2014 (r261250) @@ -25,7 +25,7 @@ .\" .\" $FreeBSD$ .\" -.Dd June 1, 2012 +.Dd January 20, 2014 .Dt PCICONF 8 .Os .Sh NAME @@ -33,13 +33,13 @@ .Nd diagnostic utility for the PCI bus .Sh SYNOPSIS .Nm -.Fl l Op Fl bcev +.Fl l Oo Fl bcev Oc Op Ar device .Nm -.Fl a Ar selector +.Fl a Ar device .Nm -.Fl r Oo Fl b | h Oc Ar selector addr Ns Op : Ns Ar addr2 +.Fl r Oo Fl b | h Oc Ar device addr Ns Op : Ns Ar addr2 .Nm -.Fl w Oo Fl b | h Oc Ar selector addr value +.Fl w Oo Fl b | h Oc Ar device addr value .Sh DESCRIPTION The .Nm @@ -54,7 +54,9 @@ normally only the super-user. .Pp With the .Fl l -option, it lists all devices found by the boot probe in the following format: +option, +.Nm +lists PCI devices in the following format: .Bd -literal foo0@pci0:0:4:0: class=0x010000 card=0x00000000 chip=0x000f1000 rev=0x01 \ hdr=0x00 @@ -65,16 +67,14 @@ hdr=0x00 .Ed .Pp The first column gives the -device name, unit number, and -.Ar selector . -If there is no device configured in the kernel for the +driver name, unit number, and selector . +If there is no driver attached to the .Tn PCI -device in question, the device name will be +device in question, the driver name will be .Dq none . -Unit numbers for unconfigured devices start at zero and are incremented for -each unconfigured device that is encountered. -The -.Ar selector +Unit numbers for detached devices start at zero and are incremented for +each detached device that is encountered. +The selector is in a form which may directly be used for the other forms of the command. The second column is the class code, with the class byte printed as two hex digits, followed by the sub-class and the interface bytes. @@ -170,19 +170,37 @@ option is supplied, will attempt to load the vendor/device information database, and print vendor, device, class and subclass identification strings for each device. .Pp +If the optional +.Ar device +argument is given with the +.Fl l +flag, +.Nm +will only list details about a single device instead of all devices. +.Pp All invocations of .Nm except for .Fl l require a -.Ar selector -of the form +.Ar device . +The device can be identified either by a device name if the device is +attached to a driver or by a selector. +Selectors identify a PCI device by its address in PCI config space and +can take one of the following forms: +.Pp +.Bl -bullet -offset indent -compact +.It .Li pci Ns Va domain Ns \&: Ns Va bus Ns \&: Ns Va device Ns \&: \ -Ns Va function Ns , -.Li pci Ns Va bus Ns \&: Ns Va device Ns \&: Ns Va function Ns , or -.Li pci Ns Va bus Ns \&: Ns Va device Ns . -In case of an abrigded form, omitted selector components are assumed to be 0. -An optional leading device name followed by @ and an optional final colon +Ns Va function Ns +.It +.Li pci Ns Va bus Ns \&: Ns Va device Ns \&: Ns Va function Ns +.It +.Li pci Ns Va bus Ns \&: Ns Va device Ns +.El +.Pp +In the case of an abridged form, omitted selector components are assumed to be 0. +An optional leading device name followed by @ and an optional final colon will be ignored; this is so that the first column in the output of .Nm .Fl l Modified: stable/8/usr.sbin/pciconf/pciconf.c ============================================================================== --- stable/8/usr.sbin/pciconf/pciconf.c Tue Jan 28 21:40:10 2014 (r261249) +++ stable/8/usr.sbin/pciconf/pciconf.c Tue Jan 28 21:56:18 2014 (r261250) @@ -35,6 +35,7 @@ static const char rcsid[] = #include #include +#include #include #include #include @@ -67,8 +68,10 @@ struct pci_vendor_info TAILQ_HEAD(,pci_vendor_info) pci_vendors; +static struct pcisel getsel(const char *str); static void list_bars(int fd, struct pci_conf *p); -static void list_devs(int verbose, int bars, int caps, int errors); +static void list_devs(const char *name, int verbose, int bars, int caps, + int errors); static void list_verbose(struct pci_conf *p); static const char *guess_class(struct pci_conf *p); static const char *guess_subclass(struct pci_conf *p); @@ -83,10 +86,10 @@ static void usage(void) { fprintf(stderr, "%s\n%s\n%s\n%s\n", - "usage: pciconf -l [-bcev]", - " pciconf -a selector", - " pciconf -r [-b | -h] selector addr[:addr2]", - " pciconf -w [-b | -h] selector addr value"); + "usage: pciconf -l [-bcev] [device]", + " pciconf -a device", + " pciconf -r [-b | -h] device addr[:addr2]", + " pciconf -w [-b | -h] device addr value"); exit (1); } @@ -145,14 +148,15 @@ main(int argc, char **argv) } } - if ((listmode && optind != argc) + if ((listmode && optind >= argc + 1) || (writemode && optind + 3 != argc) || (readmode && optind + 2 != argc) || (attachedmode && optind + 1 != argc)) usage(); if (listmode) { - list_devs(verbose, bars, caps, errors); + list_devs(optind + 1 == argc ? argv[optind] : NULL, verbose, + bars, caps, errors); } else if (attachedmode) { chkattached(argv[optind]); } else if (readmode) { @@ -169,11 +173,12 @@ main(int argc, char **argv) } static void -list_devs(int verbose, int bars, int caps, int errors) +list_devs(const char *name, int verbose, int bars, int caps, int errors) { int fd; struct pci_conf_io pc; struct pci_conf conf[255], *p; + struct pci_match_conf patterns[1]; int none_count = 0; if (verbose) @@ -186,6 +191,16 @@ list_devs(int verbose, int bars, int cap bzero(&pc, sizeof(struct pci_conf_io)); pc.match_buf_len = sizeof(conf); pc.matches = conf; + if (name != NULL) { + bzero(&patterns, sizeof(patterns)); + patterns[0].pc_sel = getsel(name); + patterns[0].flags = PCI_GETCONF_MATCH_DOMAIN | + PCI_GETCONF_MATCH_BUS | PCI_GETCONF_MATCH_DEV | + PCI_GETCONF_MATCH_FUNC; + pc.num_patterns = 1; + pc.pat_buf_len = sizeof(patterns); + pc.patterns = patterns; + } do { if (ioctl(fd, PCIOCGETCONF, &pc) == -1) @@ -557,7 +572,61 @@ read_config(int fd, struct pcisel *sel, } static struct pcisel -getsel(const char *str) +getdevice(const char *name) +{ + struct pci_conf_io pc; + struct pci_conf conf[1]; + struct pci_match_conf patterns[1]; + char *cp; + int fd; + + fd = open(_PATH_DEVPCI, O_RDONLY, 0); + if (fd < 0) + err(1, "%s", _PATH_DEVPCI); + + bzero(&pc, sizeof(struct pci_conf_io)); + pc.match_buf_len = sizeof(conf); + pc.matches = conf; + + bzero(&patterns, sizeof(patterns)); + + /* + * The pattern structure requires the unit to be split out from + * the driver name. Walk backwards from the end of the name to + * find the start of the unit. + */ + if (name[0] == '\0') + err(1, "Empty device name"); + cp = strchr(name, '\0'); + assert(cp != NULL && cp != name); + cp--; + while (cp != name && isdigit(cp[-1])) + cp--; + if (cp == name) + errx(1, "Invalid device name"); + if ((size_t)(cp - name) + 1 > sizeof(patterns[0].pd_name)) + errx(1, "Device name i2s too long"); + memcpy(patterns[0].pd_name, name, cp - name); + patterns[0].pd_unit = strtol(cp, &cp, 10); + assert(*cp == '\0'); + patterns[0].flags = PCI_GETCONF_MATCH_NAME | PCI_GETCONF_MATCH_UNIT; + pc.num_patterns = 1; + pc.pat_buf_len = sizeof(patterns); + pc.patterns = patterns; + + if (ioctl(fd, PCIOCGETCONF, &pc) == -1) + err(1, "ioctl(PCIOCGETCONF)"); + if (pc.status != PCI_GETCONF_LAST_DEVICE && + pc.status != PCI_GETCONF_MORE_DEVS) + errx(1, "error returned from PCIOCGETCONF ioctl"); + close(fd); + if (pc.num_matches == 0) + errx(1, "Device not found"); + return (conf[0].pc_sel); +} + +static struct pcisel +parsesel(const char *str) { char *ep = strchr(str, '@'); char *epbase; @@ -595,6 +664,20 @@ getsel(const char *str) return sel; } +static struct pcisel +getsel(const char *str) +{ + + /* + * No device names contain colons and selectors always contain + * at least one colon. + */ + if (strchr(str, ':') == NULL) + return (getdevice(str)); + else + return (parsesel(str)); +} + static void readone(int fd, struct pcisel *sel, long reg, int width) { From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 22:02:29 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9761EDF3; Tue, 28 Jan 2014 22:02:29 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 832E41ECF; Tue, 28 Jan 2014 22:02:29 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SM2TAf096784; Tue, 28 Jan 2014 22:02:29 GMT (envelope-from benno@svn.freebsd.org) Received: (from benno@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SM2TtX096783; Tue, 28 Jan 2014 22:02:29 GMT (envelope-from benno@svn.freebsd.org) Message-Id: <201401282202.s0SM2TtX096783@svn.freebsd.org> From: Benno Rice Date: Tue, 28 Jan 2014 22:02:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261251 - head/sys/opencrypto X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 22:02:29 -0000 Author: benno Date: Tue Jan 28 22:02:29 2014 New Revision: 261251 URL: http://svnweb.freebsd.org/changeset/base/261251 Log: Prevent races in accesses of the software crypto session array. swcr_newsession can change the pointer for swcr_sessions which races with swcr_process which is looking up entries in this array. Add a rwlock that protects changes to the array pointer so that swcr_newsession and swcr_process no longer race. Original patch by: Steve O'Hara-Smith Reviewed by: jmg Sponsored by: EMC / Isilon Storage Division Modified: head/sys/opencrypto/cryptosoft.c Modified: head/sys/opencrypto/cryptosoft.c ============================================================================== --- head/sys/opencrypto/cryptosoft.c Tue Jan 28 21:56:18 2014 (r261250) +++ head/sys/opencrypto/cryptosoft.c Tue Jan 28 22:02:29 2014 (r261251) @@ -35,6 +35,8 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include +#include #include #include @@ -54,6 +56,8 @@ __FBSDID("$FreeBSD$"); static int32_t swcr_id; static struct swcr_data **swcr_sessions = NULL; static u_int32_t swcr_sesnum; +/* Protects swcr_sessions pointer, not data. */ +static struct rwlock swcr_sessions_lock; u_int8_t hmac_ipad_buffer[HMAC_MAX_BLOCK_LEN]; u_int8_t hmac_opad_buffer[HMAC_MAX_BLOCK_LEN]; @@ -62,6 +66,7 @@ static int swcr_encdec(struct cryptodesc static int swcr_authcompute(struct cryptodesc *, struct swcr_data *, caddr_t, int); static int swcr_compdec(struct cryptodesc *, struct swcr_data *, caddr_t, int); static int swcr_freesession(device_t dev, u_int64_t tid); +static int swcr_freesession_locked(device_t dev, u_int64_t tid); /* * Apply a symmetric encryption/decryption algorithm. @@ -670,6 +675,7 @@ swcr_newsession(device_t dev, u_int32_t if (sid == NULL || cri == NULL) return EINVAL; + rw_wlock(&swcr_sessions_lock); if (swcr_sessions) { for (i = 1; i < swcr_sesnum; i++) if (swcr_sessions[i] == NULL) @@ -692,6 +698,7 @@ swcr_newsession(device_t dev, u_int32_t swcr_sesnum = 0; else swcr_sesnum /= 2; + rw_wunlock(&swcr_sessions_lock); return ENOBUFS; } @@ -705,6 +712,7 @@ swcr_newsession(device_t dev, u_int32_t swcr_sessions = swd; } + rw_downgrade(&swcr_sessions_lock); swd = &swcr_sessions[i]; *sid = i; @@ -712,7 +720,8 @@ swcr_newsession(device_t dev, u_int32_t *swd = malloc(sizeof(struct swcr_data), M_CRYPTO_DATA, M_NOWAIT|M_ZERO); if (*swd == NULL) { - swcr_freesession(dev, i); + swcr_freesession_locked(dev, i); + rw_runlock(&swcr_sessions_lock); return ENOBUFS; } @@ -749,7 +758,8 @@ swcr_newsession(device_t dev, u_int32_t error = txf->setkey(&((*swd)->sw_kschedule), cri->cri_key, cri->cri_klen / 8); if (error) { - swcr_freesession(dev, i); + swcr_freesession_locked(dev, i); + rw_runlock(&swcr_sessions_lock); return error; } } @@ -780,14 +790,16 @@ swcr_newsession(device_t dev, u_int32_t (*swd)->sw_ictx = malloc(axf->ctxsize, M_CRYPTO_DATA, M_NOWAIT); if ((*swd)->sw_ictx == NULL) { - swcr_freesession(dev, i); + swcr_freesession_locked(dev, i); + rw_runlock(&swcr_sessions_lock); return ENOBUFS; } (*swd)->sw_octx = malloc(axf->ctxsize, M_CRYPTO_DATA, M_NOWAIT); if ((*swd)->sw_octx == NULL) { - swcr_freesession(dev, i); + swcr_freesession_locked(dev, i); + rw_runlock(&swcr_sessions_lock); return ENOBUFS; } @@ -810,14 +822,16 @@ swcr_newsession(device_t dev, u_int32_t (*swd)->sw_ictx = malloc(axf->ctxsize, M_CRYPTO_DATA, M_NOWAIT); if ((*swd)->sw_ictx == NULL) { - swcr_freesession(dev, i); + swcr_freesession_locked(dev, i); + rw_runlock(&swcr_sessions_lock); return ENOBUFS; } (*swd)->sw_octx = malloc(cri->cri_klen / 8, M_CRYPTO_DATA, M_NOWAIT); if ((*swd)->sw_octx == NULL) { - swcr_freesession(dev, i); + swcr_freesession_locked(dev, i); + rw_runlock(&swcr_sessions_lock); return ENOBUFS; } @@ -841,7 +855,8 @@ swcr_newsession(device_t dev, u_int32_t (*swd)->sw_ictx = malloc(axf->ctxsize, M_CRYPTO_DATA, M_NOWAIT); if ((*swd)->sw_ictx == NULL) { - swcr_freesession(dev, i); + swcr_freesession_locked(dev, i); + rw_runlock(&swcr_sessions_lock); return ENOBUFS; } @@ -855,7 +870,8 @@ swcr_newsession(device_t dev, u_int32_t (*swd)->sw_cxf = cxf; break; default: - swcr_freesession(dev, i); + swcr_freesession_locked(dev, i); + rw_runlock(&swcr_sessions_lock); return EINVAL; } @@ -863,14 +879,26 @@ swcr_newsession(device_t dev, u_int32_t cri = cri->cri_next; swd = &((*swd)->sw_next); } + rw_runlock(&swcr_sessions_lock); return 0; } +static int +swcr_freesession(device_t dev, u_int64_t tid) +{ + int error; + + rw_rlock(&swcr_sessions_lock); + error = swcr_freesession_locked(dev, tid); + rw_runlock(&swcr_sessions_lock); + return error; +} + /* * Free a session. */ static int -swcr_freesession(device_t dev, u_int64_t tid) +swcr_freesession_locked(device_t dev, u_int64_t tid) { struct swcr_data *swd; struct enc_xform *txf; @@ -976,10 +1004,14 @@ swcr_process(device_t dev, struct crypto } lid = crp->crp_sid & 0xffffffff; - if (lid >= swcr_sesnum || lid == 0 || swcr_sessions[lid] == NULL) { + rw_rlock(&swcr_sessions_lock); + if (swcr_sessions == NULL || lid >= swcr_sesnum || lid == 0 || + swcr_sessions[lid] == NULL) { + rw_runlock(&swcr_sessions_lock); crp->crp_etype = ENOENT; goto done; } + rw_runlock(&swcr_sessions_lock); /* Go through crypto descriptors, processing as we go */ for (crd = crp->crp_desc; crd; crd = crd->crd_next) { @@ -993,10 +1025,17 @@ swcr_process(device_t dev, struct crypto * XXX between the various instances of an algorithm (so we can * XXX locate the correct crypto context). */ + rw_rlock(&swcr_sessions_lock); + if (swcr_sessions == NULL) { + rw_runlock(&swcr_sessions_lock); + crp->crp_etype = ENOENT; + goto done; + } for (sw = swcr_sessions[lid]; sw && sw->sw_alg != crd->crd_alg; sw = sw->sw_next) ; + rw_runlock(&swcr_sessions_lock); /* No such context ? */ if (sw == NULL) { @@ -1074,6 +1113,7 @@ swcr_probe(device_t dev) static int swcr_attach(device_t dev) { + rw_init(&swcr_sessions_lock, "swcr_sessions_lock"); memset(hmac_ipad_buffer, HMAC_IPAD_VAL, HMAC_MAX_BLOCK_LEN); memset(hmac_opad_buffer, HMAC_OPAD_VAL, HMAC_MAX_BLOCK_LEN); @@ -1115,8 +1155,11 @@ static int swcr_detach(device_t dev) { crypto_unregister_all(swcr_id); - if (swcr_sessions != NULL) - free(swcr_sessions, M_CRYPTO_DATA); + rw_wlock(&swcr_sessions_lock); + free(swcr_sessions, M_CRYPTO_DATA); + swcr_sessions = NULL; + rw_wunlock(&swcr_sessions_lock); + rw_destroy(&swcr_sessions_lock); return 0; } From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 22:07:17 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3C2DBF76; Tue, 28 Jan 2014 22:07:17 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 28D4D1EF1; Tue, 28 Jan 2014 22:07:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SM7HVv097520; Tue, 28 Jan 2014 22:07:17 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SM7Hde097519; Tue, 28 Jan 2014 22:07:17 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401282207.s0SM7Hde097519@svn.freebsd.org> From: Warner Losh Date: Tue, 28 Jan 2014 22:07:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261252 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 22:07:17 -0000 Author: imp Date: Tue Jan 28 22:07:16 2014 New Revision: 261252 URL: http://svnweb.freebsd.org/changeset/base/261252 Log: Fix clang warning. Modified: head/sys/arm/arm/genassym.c Modified: head/sys/arm/arm/genassym.c ============================================================================== --- head/sys/arm/arm/genassym.c Tue Jan 28 22:02:29 2014 (r261251) +++ head/sys/arm/arm/genassym.c Tue Jan 28 22:07:16 2014 (r261252) @@ -33,6 +33,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include #include From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 22:23:40 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 70EA4510; Tue, 28 Jan 2014 22:23:40 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5129F1054; Tue, 28 Jan 2014 22:23:40 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SMNe3F005326; Tue, 28 Jan 2014 22:23:40 GMT (envelope-from peter@svn.freebsd.org) Received: (from peter@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SMNdOA005321; Tue, 28 Jan 2014 22:23:39 GMT (envelope-from peter@svn.freebsd.org) Message-Id: <201401282223.s0SMNdOA005321@svn.freebsd.org> From: Peter Wemm Date: Tue, 28 Jan 2014 22:23:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261253 - in head/kerberos5/lib: libasn1 libgssapi_spnego libhdb libhx509 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 22:23:40 -0000 Author: peter Date: Tue Jan 28 22:23:39 2014 New Revision: 261253 URL: http://svnweb.freebsd.org/changeset/base/261253 Log: Speculatively replace a cp with a cat for gathering data on a sporadic parallel build failure in the FreeBSD cluster on many-core systems with ZFS. cp uses mmap in this scenario, cat does not. Modified: head/kerberos5/lib/libasn1/Makefile head/kerberos5/lib/libgssapi_spnego/Makefile head/kerberos5/lib/libhdb/Makefile head/kerberos5/lib/libhx509/Makefile Modified: head/kerberos5/lib/libasn1/Makefile ============================================================================== --- head/kerberos5/lib/libasn1/Makefile Tue Jan 28 22:07:16 2014 (r261252) +++ head/kerberos5/lib/libasn1/Makefile Tue Jan 28 22:23:39 2014 (r261253) @@ -103,10 +103,10 @@ ${GEN_KX509}: kx509.asn1 .SUFFIXES: .h .c .x .hx .x.c: - cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cp ${.IMPSRC} ${.TARGET} + cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cat ${.IMPSRC} > ${.TARGET} .hx.h: - cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cp ${.IMPSRC} ${.TARGET} + cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cat ${.IMPSRC} > ${.TARGET} .include Modified: head/kerberos5/lib/libgssapi_spnego/Makefile ============================================================================== --- head/kerberos5/lib/libgssapi_spnego/Makefile Tue Jan 28 22:07:16 2014 (r261252) +++ head/kerberos5/lib/libgssapi_spnego/Makefile Tue Jan 28 22:23:39 2014 (r261253) @@ -45,10 +45,10 @@ ${GEN}: spnego.asn1 spnego.opt .SUFFIXES: .h .c .x .hx .x.c: - cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cp ${.IMPSRC} ${.TARGET} + cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cat ${.IMPSRC} > ${.TARGET} .hx.h: - cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cp ${.IMPSRC} ${.TARGET} + cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cat ${.IMPSRC} > ${.TARGET} .include Modified: head/kerberos5/lib/libhdb/Makefile ============================================================================== --- head/kerberos5/lib/libhdb/Makefile Tue Jan 28 22:07:16 2014 (r261252) +++ head/kerberos5/lib/libhdb/Makefile Tue Jan 28 22:23:39 2014 (r261253) @@ -90,10 +90,10 @@ ${GEN}: hdb.asn1 .SUFFIXES: .h .c .x .hx .x.c: - cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cp ${.IMPSRC} ${.TARGET} + cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cat ${.IMPSRC} > ${.TARGET} .hx.h: - cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cp ${.IMPSRC} ${.TARGET} + cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cat ${.IMPSRC} > ${.TARGET} .include Modified: head/kerberos5/lib/libhx509/Makefile ============================================================================== --- head/kerberos5/lib/libhx509/Makefile Tue Jan 28 22:07:16 2014 (r261252) +++ head/kerberos5/lib/libhx509/Makefile Tue Jan 28 22:23:39 2014 (r261253) @@ -283,10 +283,10 @@ ${GEN_CRMF}: crmf.asn1 .SUFFIXES: .h .c .x .hx .x.c: - cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cp ${.IMPSRC} ${.TARGET} + cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cat ${.IMPSRC} > ${.TARGET} .hx.h: - cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cp ${.IMPSRC} ${.TARGET} + cmp -s ${.IMPSRC} ${.TARGET} 2> /dev/null || cat ${.IMPSRC} > ${.TARGET} .include From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 22:37:23 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4973B88E for ; Tue, 28 Jan 2014 22:37:23 +0000 (UTC) Received: from nm48-vm10.bullet.mail.bf1.yahoo.com (nm48-vm10.bullet.mail.bf1.yahoo.com [216.109.114.235]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id EA1721111 for ; Tue, 28 Jan 2014 22:37:22 +0000 (UTC) Received: from [98.139.212.151] by nm48.bullet.mail.bf1.yahoo.com with NNFMP; 28 Jan 2014 22:37:15 -0000 Received: from [98.139.211.162] by tm8.bullet.mail.bf1.yahoo.com with NNFMP; 28 Jan 2014 22:37:15 -0000 Received: from [127.0.0.1] by smtp219.mail.bf1.yahoo.com with NNFMP; 28 Jan 2014 22:37:15 -0000 X-Yahoo-Newman-Id: 832673.80604.bm@smtp219.mail.bf1.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: TXBBYGEVM1lYI04HOLmdoOAaC.gWL5fJxwCu_RCbSihM9iQ vp2lZEs_UbYFBIb4_lXAZnKVueDYLPsRDI8cRH64zYSRt9ZsAE0Smu3sJiL_ 3Uss4CyV8BTC0VgPwhsPWQhNjarD__kWaLLSLNCuz8zobbRg6.zloiGcZ_B0 wOamUvxMijh_YoB_JS9YbKf6ToXhH74BR4OsNIeFRLLXg6wlKWnbaf6xfJK5 mutlh3lQsQAGhr9Vz7rvPf49wZOQ2vCTe5xHk0l9XWCDjFHCjoTj9TWXvyZ4 QSiGGN2F2swv5tGWm1dpg7nCYxCChS5vNuQCL2NzjdYoWtYgs7xyBqJSV5zC an6Ymsyhx1puQGoCMH_Yso3auj6OCl9KZc6QVob_Xrm_fvUh1UYvM338rCqE 0e8KVzT9NJgQtF8QyDh3v32A3KPc4mBQ9IjL86iB82pR7.Dvnyf8_u0DWJzC GOqCtUakt8RCn1wi6Cd90dgHhe6BXyG631Goa6IK.p.2Qiv3z88yY30gwkgo W4nS71_pjfDdFFSV_EQ7fDuihOHwExqi.76eeDxIS3E4EuiRNm6V902U- X-Yahoo-SMTP: xcjD0guswBAZaPPIbxpWwLcp9Unf X-Rocket-Received: from [192.168.0.101] (pfg@190.157.126.109 with plain [63.250.193.228]) by smtp219.mail.bf1.yahoo.com with SMTP; 28 Jan 2014 14:37:15 -0800 PST Content-Type: text/plain; charset=windows-1252 Mime-Version: 1.0 (Mac OS X Mail 7.1 \(1827\)) Subject: Re: svn commit: r261246 - in head: . cddl/contrib/opensolaris/tools/ctf/cvt contrib/elftoolchain lib/libdwarf lib/libelf sys/sys From: Pedro Giffuni In-Reply-To: <201401282138.s0SLcsVV085769@svn.freebsd.org> Date: Tue, 28 Jan 2014 17:37:11 -0500 Content-Transfer-Encoding: quoted-printable Message-Id: <62D9690C-16B3-4ECF-B534-4D454989865D@FreeBSD.org> References: <201401282138.s0SLcsVV085769@svn.freebsd.org> To: Kai Wang X-Mailer: Apple Mail (2.1827) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 22:37:23 -0000 Il giorno 28/gen/2014, alle ore 16:38, Kai Wang ha = scritto: > Author: kaiw > Date: Tue Jan 28 21:38:54 2014 > New Revision: 261246 > URL: http://svnweb.freebsd.org/changeset/base/261246 >=20 > Log: > Merge from projects/elftoolchain: Upgrade libelf and libdwarf to = newer > versions from elftoolchain upstream (r2974). Convert ctfconvert to > use the APIs from the new libdwarf and make ctfconvert work with = Clang > 3.4. >=20 > __FreeBSD_version is bumped to 1100006. >=20 Awesome!=20 Hope that: 1) This gets MFC=92d at least to 10. 2) We start seeing more of those binutils replacements[1] in = elftoolchain find their way into the tree now that they are already in = the vendor area. Great work, thank you !! Regards, Pedro. [1] https://wiki.freebsd.org/GPLinBase From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 23:01:41 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0236920E; Tue, 28 Jan 2014 23:01:41 +0000 (UTC) Received: from mail-qc0-x22e.google.com (mail-qc0-x22e.google.com [IPv6:2607:f8b0:400d:c01::22e]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6CC30134A; Tue, 28 Jan 2014 23:01:40 +0000 (UTC) Received: by mail-qc0-f174.google.com with SMTP id x13so1601988qcv.5 for ; Tue, 28 Jan 2014 15:01:39 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=GVTPR4kQ5iYXmLoMauZmYGKgYwXdo32gmpNv1orn2LI=; b=fdA26PoR+0bQpqnZjuYJizzvgSEi6hpseESYVMG4vJ/4yyBfEo0FKFva24E4qxNXe8 /Fa7dgU61Pi0me6BhPKeDj7zFhqEcJGkHtLeKCEp7uUDJ9T4pLrYQM/j1CZZ3sYtKRCS IKkDNaorNXEZIQf7Lt18mO5KLeXXFrBUeWTsGa5qGwvCa+h0+T9JpqADQb8MyVEMcSfC m2oXD/y3RLRp6xeKPbwmaqb0/hClrIM9/iWlPcGby29IgPYnmNiZ4ii3IKt01Pno65WZ t0Z3zpVbQAv7VCsbPDgiJhcAQJyLRB4F8aoE1a7Z/4BMRymDpbTQnO/UMT557psS+Gxc M51w== MIME-Version: 1.0 X-Received: by 10.140.42.180 with SMTP id c49mr6622657qga.24.1390950099617; Tue, 28 Jan 2014 15:01:39 -0800 (PST) Sender: adrian.chadd@gmail.com Received: by 10.224.52.8 with HTTP; Tue, 28 Jan 2014 15:01:39 -0800 (PST) In-Reply-To: <62D9690C-16B3-4ECF-B534-4D454989865D@FreeBSD.org> References: <201401282138.s0SLcsVV085769@svn.freebsd.org> <62D9690C-16B3-4ECF-B534-4D454989865D@FreeBSD.org> Date: Tue, 28 Jan 2014 15:01:39 -0800 X-Google-Sender-Auth: QyFdv6ob0PW_hXcw-sfsrs5oXyE Message-ID: Subject: Re: svn commit: r261246 - in head: . cddl/contrib/opensolaris/tools/ctf/cvt contrib/elftoolchain lib/libdwarf lib/libelf sys/sys From: Adrian Chadd To: Pedro Giffuni Content-Type: text/plain; charset=ISO-8859-1 Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , Kai Wang X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 23:01:41 -0000 .. and was this tested on anything other than i386/amd64? Don't be too hasty to MFC; us guys in ARM, PPC, MIPS, SPARC and IA64 world have to now retest everything. It'll take time for this to shake out. Thanks! -a From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 23:33:41 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1C8A82F2; Tue, 28 Jan 2014 23:33:41 +0000 (UTC) Received: from troutmask.apl.washington.edu (troutmask.apl.washington.edu [128.95.76.21]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CD667161C; Tue, 28 Jan 2014 23:33:40 +0000 (UTC) Received: from troutmask.apl.washington.edu (localhost.apl.washington.edu [127.0.0.1]) by troutmask.apl.washington.edu (8.14.7/8.14.7) with ESMTP id s0SNXdwK084919 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Tue, 28 Jan 2014 15:33:40 -0800 (PST) (envelope-from sgk@troutmask.apl.washington.edu) Received: (from sgk@localhost) by troutmask.apl.washington.edu (8.14.7/8.14.7/Submit) id s0SNXdnE084918; Tue, 28 Jan 2014 15:33:39 -0800 (PST) (envelope-from sgk) Date: Tue, 28 Jan 2014 15:33:39 -0800 From: Steve Kargl To: Adrian Chadd Subject: Re: svn commit: r261246 - in head: . cddl/contrib/opensolaris/tools/ctf/cvt contrib/elftoolchain lib/libdwarf lib/libelf sys/sys Message-ID: <20140128233339.GA84881@troutmask.apl.washington.edu> References: <201401282138.s0SLcsVV085769@svn.freebsd.org> <62D9690C-16B3-4ECF-B534-4D454989865D@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.22 (2013-10-16) Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , Pedro Giffuni , "src-committers@freebsd.org" , Kai Wang X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 23:33:41 -0000 On Tue, Jan 28, 2014 at 03:01:39PM -0800, Adrian Chadd wrote: > .. and was this tested on anything other than i386/amd64? > > Don't be too hasty to MFC; us guys in ARM, PPC, MIPS, SPARC and IA64 > world have to now retest everything. It'll take time for this to shake > out. > No kidding! There should be a much longer wait period than the 3 days that appears common for a MFC (unless the patch fixes a critical bug). I suspect that there are not as many people running top-of-tree current as some committer seem to assume. At the moment, I fear that there is a rather nasty bug in either UFS2, USB, CAM, or code generation for Intel core2 duo processors in current. I further fear that I'll need to go back to a circa Aug 2013 current and perform bisection with svn. :( -- Steve From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 23:40:02 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A1FD7648; Tue, 28 Jan 2014 23:40:02 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8E8431659; Tue, 28 Jan 2014 23:40:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0SNe287033401; Tue, 28 Jan 2014 23:40:02 GMT (envelope-from jmg@svn.freebsd.org) Received: (from jmg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0SNe2LA033400; Tue, 28 Jan 2014 23:40:02 GMT (envelope-from jmg@svn.freebsd.org) Message-Id: <201401282340.s0SNe2LA033400@svn.freebsd.org> From: John-Mark Gurney Date: Tue, 28 Jan 2014 23:40:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261254 - head/share/man/man9 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 23:40:02 -0000 Author: jmg Date: Tue Jan 28 23:40:02 2014 New Revision: 261254 URL: http://svnweb.freebsd.org/changeset/base/261254 Log: link mbuf to m_append so it can be found... Pointed out by: J David MFC after: 1 week Modified: head/share/man/man9/Makefile Modified: head/share/man/man9/Makefile ============================================================================== --- head/share/man/man9/Makefile Tue Jan 28 22:23:39 2014 (r261253) +++ head/share/man/man9/Makefile Tue Jan 28 23:40:02 2014 (r261254) @@ -878,6 +878,7 @@ MLINKS+=mbpool.9 mbp_alloc.9 \ MLINKS+=\ mbuf.9 m_adj.9 \ mbuf.9 M_ALIGN.9 \ + mbuf.9 m_append.9 \ mbuf.9 m_apply.9 \ mbuf.9 m_cat.9 \ mbuf.9 MCHTYPE.9 \ From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 23:47:45 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CF37F941; Tue, 28 Jan 2014 23:47:45 +0000 (UTC) Received: from mail-la0-x22a.google.com (mail-la0-x22a.google.com [IPv6:2a00:1450:4010:c03::22a]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8F02F16E5; Tue, 28 Jan 2014 23:47:44 +0000 (UTC) Received: by mail-la0-f42.google.com with SMTP id hr13so953891lab.29 for ; Tue, 28 Jan 2014 15:47:42 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=vFOumAefzVZN8i8saOYh+fqf63TuMQqhJlJ/qmtN7po=; b=Pm6huHRMH1u/C/yBrEpEtgYSq4udxkM7WDQa35T3TrwRPvemjRCRq/1adBXXd76TjK pvmNnlwMmuPJzOnwKo1xzzLfFoTV55uVWJTemq6Whn54Z1nDNE78rF+sSQhZEcQA705S giWxFQGrTGe4MWUzowLPzkzcZX1oMQgwkF9u7GXobyxu7ksD4JuQ7co0C6GlJ4sgN6V/ xHxxWSBkOTW7diAApaeCz0fSlPWpiW5gMqGbjOeVDVfX7OFzDzpfhzkzf8606KHiM3ci VIXEQ58XEi96O75xtaksQhL0y0nQBxwDdinE6Jlpo/BucNgldRyH0CSQlEa/+sMHkgaz LaxQ== X-Received: by 10.112.218.68 with SMTP id pe4mr2658824lbc.29.1390952862672; Tue, 28 Jan 2014 15:47:42 -0800 (PST) Received: from localhost (s83-179-26-16.cust.tele2.se. [83.179.26.16]) by mx.google.com with ESMTPSA id s9sm500837laj.0.2014.01.28.15.47.40 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Tue, 28 Jan 2014 15:47:41 -0800 (PST) Sender: Kai Wang Received: from localhost.localdomain ([127.0.0.1] helo=localhost.my.domain) by localhost with esmtp (Exim 4.80.1 (FreeBSD)) (envelope-from ) id 1W8INF-000Fkd-3J; Wed, 29 Jan 2014 00:47:21 +0100 Received: (from kaiw@localhost) by localhost.my.domain (8.14.5/8.14.5/Submit) id s0SNlLmU060550; Wed, 29 Jan 2014 00:47:21 +0100 (CET) (envelope-from kaiw@FreeBSD.org) X-Authentication-Warning: localhost.my.domain: kaiw set sender to kaiw@FreeBSD.org using -f Date: Wed, 29 Jan 2014 00:47:21 +0100 From: Kai Wang To: Adrian Chadd Subject: Re: svn commit: r261246 - in head: . cddl/contrib/opensolaris/tools/ctf/cvt contrib/elftoolchain lib/libdwarf lib/libelf sys/sys Message-ID: <20140128234721.GB93265@soulhacker> References: <201401282138.s0SLcsVV085769@svn.freebsd.org> <62D9690C-16B3-4ECF-B534-4D454989865D@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.21 (2010-09-15) Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , Pedro Giffuni , "src-committers@freebsd.org" X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 23:47:45 -0000 On Tue, Jan 28, 2014 at 03:01:39PM -0800, Adrian Chadd wrote: > .. and was this tested on anything other than i386/amd64? > > Don't be too hasty to MFC; us guys in ARM, PPC, MIPS, SPARC and IA64 > world have to now retest everything. It'll take time for this to shake > out. Of course! I can help with troubleshooting CTF, libdwarf, libelf related issues on these platforms, if needed. Also I need to complete the DWARF4 support in libdwarf/ctfconvert, which definitely will consume some time. After that, we can consider MFC if everything runs ok on all these platforms. Thanks, Kai From owner-svn-src-all@FreeBSD.ORG Tue Jan 28 23:57:52 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B363ED58; Tue, 28 Jan 2014 23:57:52 +0000 (UTC) Received: from mail-la0-x231.google.com (mail-la0-x231.google.com [IPv6:2a00:1450:4010:c03::231]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9D8E81797; Tue, 28 Jan 2014 23:57:51 +0000 (UTC) Received: by mail-la0-f49.google.com with SMTP id y1so928123lam.8 for ; Tue, 28 Jan 2014 15:57:49 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=hAltUawWGPzIeUCER9YWekDwz/qfsKAcV89oH9IJYak=; b=WNRHBPRVRZQC7DnpMrUwrcARmMM57MJjrzL21XKIxufW5e7UdXpauy3Hp7TI8Nv3mS rVbev0rYYgQDJN4D3JSxiyB1ZrSQfxxq7hBcqivGLldOiP4F5vfUoGCmnX1sHDm9x1e2 TADLY2I+UTqkJEuo2VLsSJg3PEDzGBEmsSlkNE/80DaSz4Pp58bnOnW0Cm0UZDGalecD xISXhyl0kj54SUKHQ83DC7UaR4mIc8rHjkSJrt0bqd6wRqntGVtsaPmAvfo9nkCmsKEt MeTlo6fb2qf1mD20BE4pmOxDJXOJHxitsfUQUsU9qGGLbn4IY3yIcFKFLWXirwZJy5YL pPkQ== X-Received: by 10.112.209.97 with SMTP id ml1mr2769106lbc.26.1390953469642; Tue, 28 Jan 2014 15:57:49 -0800 (PST) Received: from localhost (s83-179-26-16.cust.tele2.se. [83.179.26.16]) by mx.google.com with ESMTPSA id cu8sm343567lbb.12.2014.01.28.15.57.48 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Tue, 28 Jan 2014 15:57:48 -0800 (PST) Sender: Kai Wang Received: from localhost.localdomain ([127.0.0.1] helo=localhost.my.domain) by localhost with esmtp (Exim 4.80.1 (FreeBSD)) (envelope-from ) id 1W8IX2-000FlI-Ir; Wed, 29 Jan 2014 00:57:28 +0100 Received: (from kaiw@localhost) by localhost.my.domain (8.14.5/8.14.5/Submit) id s0SNvSVr060591; Wed, 29 Jan 2014 00:57:28 +0100 (CET) (envelope-from kaiw@FreeBSD.org) X-Authentication-Warning: localhost.my.domain: kaiw set sender to kaiw@FreeBSD.org using -f Date: Wed, 29 Jan 2014 00:57:28 +0100 From: Kai Wang To: Pedro Giffuni Subject: Re: svn commit: r261246 - in head: . cddl/contrib/opensolaris/tools/ctf/cvt contrib/elftoolchain lib/libdwarf lib/libelf sys/sys Message-ID: <20140128235728.GC93265@soulhacker> References: <201401282138.s0SLcsVV085769@svn.freebsd.org> <62D9690C-16B3-4ECF-B534-4D454989865D@FreeBSD.org> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Disposition: inline In-Reply-To: <62D9690C-16B3-4ECF-B534-4D454989865D@FreeBSD.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, src-committers@FreeBSD.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 28 Jan 2014 23:57:52 -0000 On Tue, Jan 28, 2014 at 05:37:11PM -0500, Pedro Giffuni wrote: > 2) We start seeing more of those binutils replacements[1] in elftoolchain find their way into the tree now that they are already in the vendor area. Yes I will try to do that later. Some of the binutils replacements in elftoolchain were almost ready. We just need to do more testing and to probably implement new features found in more recent binutils. Thanks, Kai From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 02:38:25 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C53C65A9; Wed, 29 Jan 2014 02:38:25 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id B16BC12A3; Wed, 29 Jan 2014 02:38:25 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0T2cPxJ002782; Wed, 29 Jan 2014 02:38:25 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0T2cPKs002781; Wed, 29 Jan 2014 02:38:25 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201401290238.s0T2cPKs002781@svn.freebsd.org> From: Alexander Motin Date: Wed, 29 Jan 2014 02:38:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261255 - stable/10/sys/cam/scsi X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 02:38:25 -0000 Author: mav Date: Wed Jan 29 02:38:25 2014 New Revision: 261255 URL: http://svnweb.freebsd.org/changeset/base/261255 Log: MFC r260267 (by smh), r261042: Correct short delete issue in SCSI UNMAP support Correct missing \n's in xpt_print's Correct incorrect count being passed to short delete xpt_print Modified: stable/10/sys/cam/scsi/scsi_da.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/cam/scsi/scsi_da.c ============================================================================== --- stable/10/sys/cam/scsi/scsi_da.c Tue Jan 28 23:40:02 2014 (r261254) +++ stable/10/sys/cam/scsi/scsi_da.c Wed Jan 29 02:38:25 2014 (r261255) @@ -211,7 +211,7 @@ struct da_softc { int delete_running; int delete_available; /* Delete methods possibly available */ uint32_t unmap_max_ranges; - uint32_t unmap_max_lba; + uint32_t unmap_max_lba; /* Max LBAs in UNMAP req */ uint64_t ws_max_blks; da_delete_methods delete_method; da_delete_func_t *delete_func; @@ -1246,7 +1246,7 @@ daopen(struct disk *dp) error = cam_periph_sleep(periph, &softc->disk->d_mediasize, PRIBIO, "dareprobe", 0); if (error != 0) - xpt_print(periph->path, "unable to retrieve capacity data"); + xpt_print(periph->path, "unable to retrieve capacity data\n"); if (periph->flags & CAM_PERIPH_INVALID) error = ENXIO; @@ -1854,7 +1854,7 @@ dadeletemaxsize(struct da_softc *softc, switch(delete_method) { case DA_DELETE_UNMAP: - sectors = (off_t)softc->unmap_max_lba * softc->unmap_max_ranges; + sectors = (off_t)softc->unmap_max_lba; break; case DA_DELETE_ATA_TRIM: sectors = (off_t)ATA_DSM_RANGE_MAX * softc->trim_max_ranges; @@ -2553,7 +2553,7 @@ da_delete_unmap(struct cam_periph *perip /* Try to extend the previous range. */ if (lba == lastlba) { - c = min(count, softc->unmap_max_lba - lastcount); + c = omin(count, UNMAP_RANGE_MAX - lastcount); lastcount += c; off = ((ranges - 1) * UNMAP_RANGE_SIZE) + UNMAP_HEAD_SIZE; @@ -2564,7 +2564,7 @@ da_delete_unmap(struct cam_periph *perip } while (count > 0) { - c = min(count, softc->unmap_max_lba); + c = omin(count, UNMAP_RANGE_MAX); if (totalcount + c > softc->unmap_max_lba || ranges >= softc->unmap_max_ranges) { xpt_print(periph->path, @@ -2659,7 +2659,7 @@ da_delete_trim(struct cam_periph *periph lastcount = c; if (count != 0 && ranges == softc->trim_max_ranges) { xpt_print(periph->path, - "%s issuing short delete %ld > %ld", + "%s issuing short delete %ld > %ld\n", da_delete_method_desc[softc->delete_method], requestcount, (softc->trim_max_ranges - ranges) * @@ -2691,7 +2691,7 @@ da_delete_trim(struct cam_periph *periph /* * We calculate ws_max_blks here based off d_delmaxsize instead * of using softc->ws_max_blks as it is absolute max for the - * device not the protocol max which may well be lower + * device not the protocol max which may well be lower. */ static void da_delete_ws(struct cam_periph *periph, union ccb *ccb, struct bio *bp) @@ -2714,11 +2714,11 @@ da_delete_ws(struct cam_periph *periph, bioq_insert_tail(&softc->delete_run_queue, bp1); count += bp1->bio_bcount / softc->params.secsize; if (count > ws_max_blks) { - count = min(count, ws_max_blks); xpt_print(periph->path, - "%s issuing short delete %ld > %ld", + "%s issuing short delete %ld > %ld\n", da_delete_method_desc[softc->delete_method], count, ws_max_blks); + count = min(count, ws_max_blks); break; } bp1 = bioq_first(&softc->delete_queue); From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 02:39:44 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9F9496F2; Wed, 29 Jan 2014 02:39:44 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8B3F512AF; Wed, 29 Jan 2014 02:39:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0T2di3d002970; Wed, 29 Jan 2014 02:39:44 GMT (envelope-from mav@svn.freebsd.org) Received: (from mav@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0T2diNE002969; Wed, 29 Jan 2014 02:39:44 GMT (envelope-from mav@svn.freebsd.org) Message-Id: <201401290239.s0T2diNE002969@svn.freebsd.org> From: Alexander Motin Date: Wed, 29 Jan 2014 02:39:44 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261256 - stable/9/sys/cam/scsi X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 02:39:44 -0000 Author: mav Date: Wed Jan 29 02:39:44 2014 New Revision: 261256 URL: http://svnweb.freebsd.org/changeset/base/261256 Log: MFC r260267 (by smh), r261042: Correct short delete issue in SCSI UNMAP support Correct missing \n's in xpt_print's Correct incorrect count being passed to short delete xpt_print Modified: stable/9/sys/cam/scsi/scsi_da.c Directory Properties: stable/9/ (props changed) stable/9/sys/ (props changed) Modified: stable/9/sys/cam/scsi/scsi_da.c ============================================================================== --- stable/9/sys/cam/scsi/scsi_da.c Wed Jan 29 02:38:25 2014 (r261255) +++ stable/9/sys/cam/scsi/scsi_da.c Wed Jan 29 02:39:44 2014 (r261256) @@ -212,7 +212,7 @@ struct da_softc { int delete_running; int delete_available; /* Delete methods possibly available */ uint32_t unmap_max_ranges; - uint32_t unmap_max_lba; + uint32_t unmap_max_lba; /* Max LBAs in UNMAP req */ uint64_t ws_max_blks; da_delete_methods delete_method; da_delete_func_t *delete_func; @@ -1239,7 +1239,7 @@ daopen(struct disk *dp) error = cam_periph_sleep(periph, &softc->disk->d_mediasize, PRIBIO, "dareprobe", 0); if (error != 0) - xpt_print(periph->path, "unable to retrieve capacity data"); + xpt_print(periph->path, "unable to retrieve capacity data\n"); if (periph->flags & CAM_PERIPH_INVALID) error = ENXIO; @@ -1863,7 +1863,7 @@ dadeletemaxsize(struct da_softc *softc, switch(delete_method) { case DA_DELETE_UNMAP: - sectors = (off_t)softc->unmap_max_lba * softc->unmap_max_ranges; + sectors = (off_t)softc->unmap_max_lba; break; case DA_DELETE_ATA_TRIM: sectors = (off_t)ATA_DSM_RANGE_MAX * softc->trim_max_ranges; @@ -2570,7 +2570,7 @@ da_delete_unmap(struct cam_periph *perip /* Try to extend the previous range. */ if (lba == lastlba) { - c = min(count, softc->unmap_max_lba - lastcount); + c = omin(count, UNMAP_RANGE_MAX - lastcount); lastcount += c; off = ((ranges - 1) * UNMAP_RANGE_SIZE) + UNMAP_HEAD_SIZE; @@ -2581,7 +2581,7 @@ da_delete_unmap(struct cam_periph *perip } while (count > 0) { - c = min(count, softc->unmap_max_lba); + c = omin(count, UNMAP_RANGE_MAX); if (totalcount + c > softc->unmap_max_lba || ranges >= softc->unmap_max_ranges) { xpt_print(periph->path, @@ -2675,7 +2675,7 @@ da_delete_trim(struct cam_periph *periph lastcount = c; if (count != 0 && ranges == softc->trim_max_ranges) { xpt_print(periph->path, - "%s issuing short delete %ld > %ld", + "%s issuing short delete %ld > %ld\n", da_delete_method_desc[softc->delete_method], requestcount, (softc->trim_max_ranges - ranges) * @@ -2706,7 +2706,7 @@ da_delete_trim(struct cam_periph *periph /* * We calculate ws_max_blks here based off d_delmaxsize instead * of using softc->ws_max_blks as it is absolute max for the - * device not the protocol max which may well be lower + * device not the protocol max which may well be lower. */ static void da_delete_ws(struct cam_periph *periph, union ccb *ccb, struct bio *bp) @@ -2729,11 +2729,11 @@ da_delete_ws(struct cam_periph *periph, bioq_insert_tail(&softc->delete_run_queue, bp1); count += bp1->bio_bcount / softc->params.secsize; if (count > ws_max_blks) { - count = min(count, ws_max_blks); xpt_print(periph->path, - "%s issuing short delete %ld > %ld", + "%s issuing short delete %ld > %ld\n", da_delete_method_desc[softc->delete_method], count, ws_max_blks); + count = min(count, ws_max_blks); break; } bp1 = bioq_first(&softc->delete_queue); From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 02:57:11 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9D812988 for ; Wed, 29 Jan 2014 02:57:11 +0000 (UTC) Received: from nm16.bullet.mail.bf1.yahoo.com (nm16.bullet.mail.bf1.yahoo.com [98.139.212.175]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 43B9813DE for ; Wed, 29 Jan 2014 02:57:11 +0000 (UTC) Received: from [66.196.81.170] by nm16.bullet.mail.bf1.yahoo.com with NNFMP; 29 Jan 2014 02:57:03 -0000 Received: from [98.139.211.198] by tm16.bullet.mail.bf1.yahoo.com with NNFMP; 29 Jan 2014 02:57:03 -0000 Received: from [127.0.0.1] by smtp207.mail.bf1.yahoo.com with NNFMP; 29 Jan 2014 02:57:03 -0000 X-Yahoo-Newman-Id: 65369.19505.bm@smtp207.mail.bf1.yahoo.com X-Yahoo-Newman-Property: ymail-3 X-YMail-OSG: KC3LUbYVM1mhyUdoSqCBCdMognUI8DkErAGtZ0V__EQPniZ PNCus6GwxtOWqGz3OHGkqQkzBVcS5Eo54eiB017ebeqI_GG_toQJ.i6CzGNT NddcfQsmNkGQUOhZE0DiU5lX8Fnftjp1HVQAFdlirrgeckrfim_lQigoeAKt modvAe47UZ7Frbxc07Iz9vrh74DNQA52qeiBqwYwwzNJv5.LjvISfvHpKPKs kZMfljDe10.Mjj23uigAFhL6qK3KXsynkhHoWGk.fFdAwDHOBfm8Us94e9By uyrXN8C9SlvLI7JAZP94G0BmZq9QrWeUhRJNtgOhWeFe0Y3MLuStc0OP48A_ pQtDZps.OSH4cRh7p.WuAxbZKTG1wlCwckcEeODgQb.HBT45.CuV0kix0ZJ_ mEJnLzCMwLImazd9lC8ecCAmewUimFbDAQmVP.c8fvWN.u4oMqm5k75HUsH_ mx.cbBRCcTWh5vMrzcsxhGmVT_ThniUN3F0Pq.pCES2QbkW5I8dUk0HYjGcc _bCKE4KV7DioFFLgUaeH3u.sPYvLJFIT389a__FERHtFL8g6fl4uxT94- X-Yahoo-SMTP: xcjD0guswBAZaPPIbxpWwLcp9Unf X-Rocket-Received: from [192.168.0.102] (pfg@190.157.126.109 with plain [98.138.105.21]) by smtp207.mail.bf1.yahoo.com with SMTP; 28 Jan 2014 18:57:03 -0800 PST Message-ID: <52E86DFC.8030602@FreeBSD.org> Date: Tue, 28 Jan 2014 21:57:00 -0500 From: Pedro Giffuni Organization: FreeBSD User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Adrian Chadd Subject: Re: svn commit: r261246 - in head: . cddl/contrib/opensolaris/tools/ctf/cvt contrib/elftoolchain lib/libdwarf lib/libelf sys/sys References: <201401282138.s0SLcsVV085769@svn.freebsd.org> <62D9690C-16B3-4ECF-B534-4D454989865D@FreeBSD.org> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: "svn-src-head@freebsd.org" , "svn-src-all@freebsd.org" , "src-committers@freebsd.org" , Kai Wang X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 02:57:11 -0000 On 28/01/2014 18:01, Adrian Chadd wrote: > .. and was this tested on anything other than i386/amd64? > > Don't be too hasty to MFC; us guys in ARM, PPC, MIPS, SPARC and IA64 > world have to now retest everything. It'll take time for this to shake > out. > Absolutely, I didn't mean to force things before they are ready. My understanding is that DTrace is the only consumer of the dwarf stuff that we need for clang 3.4, so that's a good thing to start testing first. Regards, Pedro. From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 04:58:03 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 458F7D2D for ; Wed, 29 Jan 2014 04:58:03 +0000 (UTC) Received: from mail-ie0-f178.google.com (mail-ie0-f178.google.com [209.85.223.178]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0CE0D1E7C for ; Wed, 29 Jan 2014 04:58:02 +0000 (UTC) Received: by mail-ie0-f178.google.com with SMTP id x13so1670095ief.9 for ; Tue, 28 Jan 2014 20:57:56 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:mime-version:content-type:from :in-reply-to:date:cc:content-transfer-encoding:message-id:references :to; bh=vD9wSEKm63GSOVgCFdXIvEHBqRSIigcCko9/OZzMPno=; b=J3ZNMR0YRy3fRWF+iNeNmBTu6VLfxxd4ROa8rmk+upWMgGl5l7EC87yR9VgSSoY4NA 16V1burFYTI+hwWGLLS7etnztgMfjQ99vDlWMYJbgggMVyeWIFAglSIsJrtt0IjhdOre dmqKZGO2/9H8B+/sscGbMiTSlm8yPzqA1fvxnsGiC4mz+qPqRuNAfZIShEBrbaCM6B4w zjKqxxI1tooW8L+lnm5cZdibT0fNW7pXbxDnHQyZCir2sxXDm/EkKz4pDGbsqDz7ThTN kXRoeYmOrpVKITJTnXcGLwo0Gy7EVfGIOdvad+gUrXff1Bo/iTOxBgj2AWP+CJTyafC1 kw4A== X-Gm-Message-State: ALoCoQnBvO3DiFjJuDsIG7KU/vsiMrvtNjMk6Ig+Wzx4w/ygy4SEgXd0dd450DC00h3xm/2Qhi6x X-Received: by 10.43.56.4 with SMTP id wa4mr4368819icb.18.1390971476763; Tue, 28 Jan 2014 20:57:56 -0800 (PST) Received: from fusion-mac.bsdimp.com (50-78-194-198-static.hfc.comcastbusiness.net. [50.78.194.198]) by mx.google.com with ESMTPSA id ft2sm4919082igb.5.2014.01.28.20.57.55 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 28 Jan 2014 20:57:56 -0800 (PST) Sender: Warner Losh Subject: Re: svn commit: r261246 - in head: . cddl/contrib/opensolaris/tools/ctf/cvt contrib/elftoolchain lib/libdwarf lib/libelf sys/sys Mime-Version: 1.0 (Apple Message framework v1085) Content-Type: text/plain; charset=us-ascii From: Warner Losh In-Reply-To: <20140128235728.GC93265@soulhacker> Date: Tue, 28 Jan 2014 21:57:54 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: <0470457F-7F74-4B0E-9B89-270BAD2624B1@bsdimp.com> References: <201401282138.s0SLcsVV085769@svn.freebsd.org> <62D9690C-16B3-4ECF-B534-4D454989865D@FreeBSD.org> <20140128235728.GC93265@soulhacker> To: Kai Wang X-Mailer: Apple Mail (2.1085) Cc: svn-src-head@FreeBSD.org, svn-src-all@FreeBSD.org, Pedro Giffuni , src-committers@FreeBSD.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 04:58:03 -0000 On Jan 28, 2014, at 4:57 PM, Kai Wang wrote: > On Tue, Jan 28, 2014 at 05:37:11PM -0500, Pedro Giffuni wrote: >> 2) We start seeing more of those binutils replacements[1] in = elftoolchain find their way into the tree now that they are already in = the vendor area. >=20 > Yes I will try to do that later. Some of the binutils replacements in > elftoolchain were almost ready. We just need to do more testing and to > probably implement new features found in more recent binutils. Let's make sure we shake this stuff out... There was insufficient shake = out time when the bsdl dtc replaced the gpl one, as well as lack of = proper notice to the current maintainer of the gpl dtc... Let's learn = from that experience shall we, so we don't have another mess to sort = out. Warner From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 05:00:04 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A3ABAE92; Wed, 29 Jan 2014 05:00:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 90EB91EA4; Wed, 29 Jan 2014 05:00:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0T504qi056866; Wed, 29 Jan 2014 05:00:04 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0T504hA056865; Wed, 29 Jan 2014 05:00:04 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401290500.s0T504hA056865@svn.freebsd.org> From: Warner Losh Date: Wed, 29 Jan 2014 05:00:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261257 - head/usr.bin X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 05:00:04 -0000 Author: imp Date: Wed Jan 29 05:00:04 2014 New Revision: 261257 URL: http://svnweb.freebsd.org/changeset/base/261257 Log: Don't build BSDL dtc if the GPL dtc is enabled. Modified: head/usr.bin/Makefile Modified: head/usr.bin/Makefile ============================================================================== --- head/usr.bin/Makefile Wed Jan 29 02:39:44 2014 (r261256) +++ head/usr.bin/Makefile Wed Jan 29 05:00:04 2014 (r261257) @@ -37,7 +37,6 @@ SUBDIR= alias \ ctlstat \ cut \ dirname \ - dtc \ du \ ee \ elf2aout \ @@ -231,6 +230,10 @@ SUBDIR+= calendar _clang= clang .endif +.if ${MK_GPL_DTC} != "yes" +SUBDIR+= dtc +.endif + .if ${MK_GROFF} != "no" SUBDIR+= vgrind .endif From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 05:58:08 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AEACBC4E; Wed, 29 Jan 2014 05:58:08 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9A6DE12B7; Wed, 29 Jan 2014 05:58:08 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0T5w8ex078979; Wed, 29 Jan 2014 05:58:08 GMT (envelope-from jhibbits@svn.freebsd.org) Received: (from jhibbits@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0T5w8CF078978; Wed, 29 Jan 2014 05:58:08 GMT (envelope-from jhibbits@svn.freebsd.org) Message-Id: <201401290558.s0T5w8CF078978@svn.freebsd.org> From: Justin Hibbits Date: Wed, 29 Jan 2014 05:58:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261258 - head/sys/powerpc/aim X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 05:58:08 -0000 Author: jhibbits Date: Wed Jan 29 05:58:08 2014 New Revision: 261258 URL: http://svnweb.freebsd.org/changeset/base/261258 Log: Use a loop of dcbz, instead of calling bzero() to zero a page. This matches what is done in mmu_oea64.c. MFC after: 1 month Modified: head/sys/powerpc/aim/mmu_oea.c Modified: head/sys/powerpc/aim/mmu_oea.c ============================================================================== --- head/sys/powerpc/aim/mmu_oea.c Wed Jan 29 05:00:04 2014 (r261257) +++ head/sys/powerpc/aim/mmu_oea.c Wed Jan 29 05:58:08 2014 (r261258) @@ -1084,10 +1084,10 @@ moea_copy_pages(mmu_t mmu, vm_page_t *ma void moea_zero_page(mmu_t mmu, vm_page_t m) { - vm_offset_t pa = VM_PAGE_TO_PHYS(m); - void *va = (void *)pa; + vm_offset_t off, pa = VM_PAGE_TO_PHYS(m); - bzero(va, PAGE_SIZE); + for (off = 0; off < PAGE_SIZE; off += cacheline_size) + __asm __volatile("dcbz 0,%0" :: "r"(pa + off)); } void @@ -1102,10 +1102,8 @@ moea_zero_page_area(mmu_t mmu, vm_page_t void moea_zero_page_idle(mmu_t mmu, vm_page_t m) { - vm_offset_t pa = VM_PAGE_TO_PHYS(m); - void *va = (void *)pa; - bzero(va, PAGE_SIZE); + moea_zero_page(mmu, m); } /* From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 09:58:05 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B3FE41D1; Wed, 29 Jan 2014 09:58:05 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A088515DE; Wed, 29 Jan 2014 09:58:05 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0T9w5BQ074969; Wed, 29 Jan 2014 09:58:05 GMT (envelope-from kaiw@svn.freebsd.org) Received: (from kaiw@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0T9w5tx074968; Wed, 29 Jan 2014 09:58:05 GMT (envelope-from kaiw@svn.freebsd.org) Message-Id: <201401290958.s0T9w5tx074968@svn.freebsd.org> From: Kai Wang Date: Wed, 29 Jan 2014 09:58:05 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261259 - head/cddl/contrib/opensolaris/tools/ctf/cvt X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 09:58:05 -0000 Author: kaiw Date: Wed Jan 29 09:58:05 2014 New Revision: 261259 URL: http://svnweb.freebsd.org/changeset/base/261259 Log: Only declare `bysz' variable under little endian archs. Modified: head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c Modified: head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c ============================================================================== --- head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c Wed Jan 29 05:58:08 2014 (r261258) +++ head/cddl/contrib/opensolaris/tools/ctf/cvt/dwarf.c Wed Jan 29 09:58:05 2014 (r261259) @@ -935,7 +935,10 @@ static void die_sou_create(dwarf_t *dw, Dwarf_Die str, Dwarf_Off off, tdesc_t *tdp, int type, const char *typename) { - Dwarf_Unsigned sz, bysz, bitsz, bitoff, maxsz=0; + Dwarf_Unsigned sz, bitsz, bitoff, maxsz=0; +#if BYTE_ORDER == _LITTLE_ENDIAN + Dwarf_Unsigned bysz; +#endif Dwarf_Die mem; mlist_t *ml, **mlastp; iidesc_t *ii; From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 10:42:02 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 581F6E27; Wed, 29 Jan 2014 10:42:02 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 421AC1976; Wed, 29 Jan 2014 10:42:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TAg2kr095150; Wed, 29 Jan 2014 10:42:02 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TAg10i095143; Wed, 29 Jan 2014 10:42:01 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201401291042.s0TAg10i095143@svn.freebsd.org> From: Hans Petter Selasky Date: Wed, 29 Jan 2014 10:42:01 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261260 - in head: etc sys/conf sys/dev/usb sys/dev/usb/input sys/modules/usb sys/modules/usb/wsp X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 10:42:02 -0000 Author: hselasky Date: Wed Jan 29 10:42:01 2014 New Revision: 261260 URL: http://svnweb.freebsd.org/changeset/base/261260 Log: Add support for trackpads found in Apple MacBook products. While at it add some missing devd entries. Submitted by: Huang Wen Hui MFC after: 1 week Added: head/sys/dev/usb/input/wsp.c (contents, props changed) head/sys/modules/usb/wsp/ head/sys/modules/usb/wsp/Makefile (contents, props changed) Modified: head/etc/devd.conf head/sys/conf/NOTES head/sys/conf/files head/sys/dev/usb/usbdevs head/sys/modules/usb/Makefile Modified: head/etc/devd.conf ============================================================================== --- head/etc/devd.conf Wed Jan 29 09:58:05 2014 (r261259) +++ head/etc/devd.conf Wed Jan 29 10:42:01 2014 (r261260) @@ -119,6 +119,15 @@ notify 100 { match "system" "DEVFS"; match "subsystem" "CDEV"; match "type" "CREATE"; + match "cdev" "atp[0-9]+"; + + action "/etc/rc.d/moused quietstart $cdev"; +}; + +notify 100 { + match "system" "DEVFS"; + match "subsystem" "CDEV"; + match "type" "CREATE"; match "cdev" "ums[0-9]+"; action "/etc/rc.d/moused quietstart $cdev"; @@ -127,6 +136,15 @@ notify 100 { notify 100 { match "system" "DEVFS"; match "subsystem" "CDEV"; + match "type" "CREATE"; + match "cdev" "wsp[0-9]+"; + + action "/etc/rc.d/moused quietstart $cdev"; +}; + +notify 100 { + match "system" "DEVFS"; + match "subsystem" "CDEV"; match "type" "DESTROY"; match "cdev" "ums[0-9]+"; Modified: head/sys/conf/NOTES ============================================================================== --- head/sys/conf/NOTES Wed Jan 29 09:58:05 2014 (r261259) +++ head/sys/conf/NOTES Wed Jan 29 10:42:01 2014 (r261260) @@ -2660,6 +2660,9 @@ device umct device umodem # USB mouse device ums +# USB touchpad(s) +device atp +device wsp # eGalax USB touch screen device uep # Diamond Rio 500 MP3 player Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Wed Jan 29 09:58:05 2014 (r261259) +++ head/sys/conf/files Wed Jan 29 10:42:01 2014 (r261260) @@ -2408,6 +2408,7 @@ dev/usb/input/uep.c optional uep dev/usb/input/uhid.c optional uhid dev/usb/input/ukbd.c optional ukbd dev/usb/input/ums.c optional ums +dev/usb/input/wsp.c optional wsp # # USB quirks # Added: head/sys/dev/usb/input/wsp.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/usb/input/wsp.c Wed Jan 29 10:42:01 2014 (r261260) @@ -0,0 +1,1438 @@ +/*- + * Copyright (c) 2012 Huang Wen Hui + * All rights reserved. + * + * 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. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include "usbdevs.h" + +#define USB_DEBUG_VAR wsp_debug +#include + +#include + +#define WSP_DRIVER_NAME "wsp" + +#define WSP_CLAMP(x,low,high) do { \ + if ((x) < (low)) \ + (x) = (low); \ + else if ((x) > (high)) \ + (x) = (high); \ +} while (0) + +/* Tunables */ +static SYSCTL_NODE(_hw_usb, OID_AUTO, wsp, CTLFLAG_RW, 0, "USB wsp"); + +#ifdef USB_DEBUG +enum wsp_log_level { + WSP_LLEVEL_DISABLED = 0, + WSP_LLEVEL_ERROR, + WSP_LLEVEL_DEBUG, /* for troubleshooting */ + WSP_LLEVEL_INFO, /* for diagnostics */ +}; +static int wsp_debug = WSP_LLEVEL_ERROR;/* the default is to only log errors */ + +SYSCTL_INT(_hw_usb_wsp, OID_AUTO, debug, CTLFLAG_RW, + &wsp_debug, WSP_LLEVEL_ERROR, "WSP debug level"); +#endif /* USB_DEBUG */ + +static struct wsp_tuning { + int scale_factor; + int z_factor; + int pressure_touch_threshold; + int pressure_untouch_threshold; + int pressure_tap_threshold; + int scr_hor_threshold; +} + wsp_tuning = +{ + .scale_factor = 12, + .z_factor = 5, + .pressure_touch_threshold = 50, + .pressure_untouch_threshold = 10, + .pressure_tap_threshold = 120, + .scr_hor_threshold = 50, +}; + +static void +wsp_runing_rangecheck(struct wsp_tuning *ptun) +{ + WSP_CLAMP(ptun->scale_factor, 1, 63); + WSP_CLAMP(ptun->z_factor, 1, 63); + WSP_CLAMP(ptun->pressure_touch_threshold, 1, 255); + WSP_CLAMP(ptun->pressure_untouch_threshold, 1, 255); + WSP_CLAMP(ptun->pressure_tap_threshold, 1, 255); + WSP_CLAMP(ptun->scr_hor_threshold, 1, 255); +} + +SYSCTL_INT(_hw_usb_wsp, OID_AUTO, scale_factor, CTLFLAG_RW, + &wsp_tuning.scale_factor, 0, "movement scale factor"); +SYSCTL_INT(_hw_usb_wsp, OID_AUTO, z_factor, CTLFLAG_RW, + &wsp_tuning.z_factor, 0, "Z-axis scale factor"); +SYSCTL_INT(_hw_usb_wsp, OID_AUTO, pressure_touch_threshold, CTLFLAG_RW, + &wsp_tuning.pressure_touch_threshold, 0, "touch pressure threshold"); +SYSCTL_INT(_hw_usb_wsp, OID_AUTO, pressure_untouch_threshold, CTLFLAG_RW, + &wsp_tuning.pressure_untouch_threshold, 0, "untouch pressure threshold"); +SYSCTL_INT(_hw_usb_wsp, OID_AUTO, pressure_tap_threshold, CTLFLAG_RW, + &wsp_tuning.pressure_tap_threshold, 0, "tap pressure threshold"); +SYSCTL_INT(_hw_usb_wsp, OID_AUTO, scr_hor_threshold, CTLFLAG_RW, + &wsp_tuning.scr_hor_threshold, 0, "horizontal scrolling threshold"); + +#define WSP_IFACE_INDEX 1 + +/* button data structure */ +struct bt_data { + uint8_t unknown1; /* constant */ + uint8_t button; /* left button */ + uint8_t rel_x; /* relative x coordinate */ + uint8_t rel_y; /* relative y coordinate */ +} __packed; + +/* trackpad header types */ +enum tp_type { + TYPE1, /* plain trackpad */ + TYPE2, /* button integrated in trackpad */ + TYPE3 /* additional header fields since June 2013 */ +}; + +/* trackpad finger data offsets, le16-aligned */ +#define FINGER_TYPE1 (13 * 2) +#define FINGER_TYPE2 (15 * 2) +#define FINGER_TYPE3 (19 * 2) + +/* trackpad button data offsets */ +#define BUTTON_TYPE2 15 +#define BUTTON_TYPE3 23 + +/* list of device capability bits */ +#define HAS_INTEGRATED_BUTTON 1 + +/* trackpad finger header - little endian */ +struct tp_header { + uint8_t flag; + uint8_t sn0; + uint16_t wFixed0; + uint32_t dwSn1; + uint32_t dwFixed1; + uint16_t wLength; + uint8_t nfinger; + uint8_t ibt; + int16_t wUnknown[6]; + uint8_t q1; + uint8_t q2; +} __packed; + +/* trackpad finger structure - little endian */ +struct tp_finger { + int16_t origin; /* zero when switching track finger */ + int16_t abs_x; /* absolute x coodinate */ + int16_t abs_y; /* absolute y coodinate */ + int16_t rel_x; /* relative x coodinate */ + int16_t rel_y; /* relative y coodinate */ + int16_t tool_major; /* tool area, major axis */ + int16_t tool_minor; /* tool area, minor axis */ + int16_t orientation; /* 16384 when point, else 15 bit angle */ + int16_t touch_major; /* touch area, major axis */ + int16_t touch_minor; /* touch area, minor axis */ + int16_t unused[3]; /* zeros */ + int16_t multi; /* one finger: varies, more fingers: + * constant */ +} __packed; + +/* trackpad finger data size, empirically at least ten fingers */ +#define MAX_FINGERS 16 +#define SIZEOF_FINGER sizeof(struct tp_finger) +#define SIZEOF_ALL_FINGERS (MAX_FINGERS * SIZEOF_FINGER) +#define MAX_FINGER_ORIENTATION 16384 + +/* logical signal quality */ +#define SN_PRESSURE 45 /* pressure signal-to-noise ratio */ +#define SN_WIDTH 25 /* width signal-to-noise ratio */ +#define SN_COORD 250 /* coordinate signal-to-noise ratio */ +#define SN_ORIENT 10 /* orientation signal-to-noise ratio */ + +/* device-specific parameters */ +struct wsp_param { + int snratio; /* signal-to-noise ratio */ + int min; /* device minimum reading */ + int max; /* device maximum reading */ +}; + +enum { + WSP_FLAG_WELLSPRING1, + WSP_FLAG_WELLSPRING2, + WSP_FLAG_WELLSPRING3, + WSP_FLAG_WELLSPRING4, + WSP_FLAG_WELLSPRING4A, + WSP_FLAG_WELLSPRING5, + WSP_FLAG_WELLSPRING6A, + WSP_FLAG_WELLSPRING6, + WSP_FLAG_WELLSPRING5A, + WSP_FLAG_WELLSPRING7, + WSP_FLAG_WELLSPRING7A, + WSP_FLAG_WELLSPRING8, + WSP_FLAG_MAX, +}; + +/* device-specific configuration */ +struct wsp_dev_params { + uint8_t caps; /* device capability bitmask */ + uint16_t bt_datalen; /* data length of the button interface */ + uint8_t tp_type; /* type of trackpad interface */ + uint8_t tp_offset; /* offset to trackpad finger data */ + uint16_t tp_datalen; /* data length of the trackpad + * interface */ + struct wsp_param p; /* finger pressure limits */ + struct wsp_param w; /* finger width limits */ + struct wsp_param x; /* horizontal limits */ + struct wsp_param y; /* vertical limits */ + struct wsp_param o; /* orientation limits */ +}; + +static const struct wsp_dev_params wsp_dev_params[WSP_FLAG_MAX] = { + [WSP_FLAG_WELLSPRING1] = { + .caps = 0, + .bt_datalen = sizeof(struct bt_data), + .tp_type = TYPE1, + .tp_offset = FINGER_TYPE1, + .tp_datalen = FINGER_TYPE1 + SIZEOF_ALL_FINGERS, + .p = { + SN_PRESSURE, 0, 256 + }, + .w = { + SN_WIDTH, 0, 2048 + }, + .x = { + SN_COORD, -4824, 5342 + }, + .y = { + SN_COORD, -172, 5820 + }, + .o = { + SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION + }, + }, + [WSP_FLAG_WELLSPRING2] = { + .caps = 0, + .bt_datalen = sizeof(struct bt_data), + .tp_type = TYPE1, + .tp_offset = FINGER_TYPE1, + .tp_datalen = FINGER_TYPE1 + SIZEOF_ALL_FINGERS, + .p = { + SN_PRESSURE, 0, 256 + }, + .w = { + SN_WIDTH, 0, 2048 + }, + .x = { + SN_COORD, -4824, 4824 + }, + .y = { + SN_COORD, -172, 4290 + }, + .o = { + SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION + }, + }, + [WSP_FLAG_WELLSPRING3] = { + .caps = HAS_INTEGRATED_BUTTON, + .bt_datalen = sizeof(struct bt_data), + .tp_type = TYPE2, + .tp_offset = FINGER_TYPE2, + .tp_datalen = FINGER_TYPE2 + SIZEOF_ALL_FINGERS, + .p = { + SN_PRESSURE, 0, 300 + }, + .w = { + SN_WIDTH, 0, 2048 + }, + .x = { + SN_COORD, -4460, 5166 + }, + .y = { + SN_COORD, -75, 6700 + }, + .o = { + SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION + }, + }, + [WSP_FLAG_WELLSPRING4] = { + .caps = HAS_INTEGRATED_BUTTON, + .bt_datalen = sizeof(struct bt_data), + .tp_type = TYPE2, + .tp_offset = FINGER_TYPE2, + .tp_datalen = FINGER_TYPE2 + SIZEOF_ALL_FINGERS, + .p = { + SN_PRESSURE, 0, 300 + }, + .w = { + SN_WIDTH, 0, 2048 + }, + .x = { + SN_COORD, -4620, 5140 + }, + .y = { + SN_COORD, -150, 6600 + }, + .o = { + SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION + }, + }, + [WSP_FLAG_WELLSPRING4A] = { + .caps = HAS_INTEGRATED_BUTTON, + .bt_datalen = sizeof(struct bt_data), + .tp_type = TYPE2, + .tp_offset = FINGER_TYPE2, + .tp_datalen = FINGER_TYPE2 + SIZEOF_ALL_FINGERS, + .p = { + SN_PRESSURE, 0, 300 + }, + .w = { + SN_WIDTH, 0, 2048 + }, + .x = { + SN_COORD, -4616, 5112 + }, + .y = { + SN_COORD, -142, 5234 + }, + .o = { + SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION + }, + }, + [WSP_FLAG_WELLSPRING5] = { + .caps = HAS_INTEGRATED_BUTTON, + .bt_datalen = sizeof(struct bt_data), + .tp_type = TYPE2, + .tp_offset = FINGER_TYPE2, + .tp_datalen = FINGER_TYPE2 + SIZEOF_ALL_FINGERS, + .p = { + SN_PRESSURE, 0, 300 + }, + .w = { + SN_WIDTH, 0, 2048 + }, + .x = { + SN_COORD, -4415, 5050 + }, + .y = { + SN_COORD, -55, 6680 + }, + .o = { + SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION + }, + }, + [WSP_FLAG_WELLSPRING6] = { + .caps = HAS_INTEGRATED_BUTTON, + .bt_datalen = sizeof(struct bt_data), + .tp_type = TYPE2, + .tp_offset = FINGER_TYPE2, + .tp_datalen = FINGER_TYPE2 + SIZEOF_ALL_FINGERS, + .p = { + SN_PRESSURE, 0, 300 + }, + .w = { + SN_WIDTH, 0, 2048 + }, + .x = { + SN_COORD, -4620, 5140 + }, + .y = { + SN_COORD, -150, 6600 + }, + .o = { + SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION + }, + }, + [WSP_FLAG_WELLSPRING5A] = { + .caps = HAS_INTEGRATED_BUTTON, + .bt_datalen = sizeof(struct bt_data), + .tp_type = TYPE2, + .tp_offset = FINGER_TYPE2, + .tp_datalen = FINGER_TYPE2 + SIZEOF_ALL_FINGERS, + .p = { + SN_PRESSURE, 0, 300 + }, + .w = { + SN_WIDTH, 0, 2048 + }, + .x = { + SN_COORD, -4750, 5280 + }, + .y = { + SN_COORD, -150, 6730 + }, + .o = { + SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION + }, + }, + [WSP_FLAG_WELLSPRING6A] = { + .caps = HAS_INTEGRATED_BUTTON, + .bt_datalen = sizeof(struct bt_data), + .tp_type = TYPE2, + .tp_offset = FINGER_TYPE2, + .tp_datalen = FINGER_TYPE2 + SIZEOF_ALL_FINGERS, + .p = { + SN_PRESSURE, 0, 300 + }, + .w = { + SN_WIDTH, 0, 2048 + }, + .x = { + SN_COORD, -4620, 5140 + }, + .y = { + SN_COORD, -150, 6600 + }, + .o = { + SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION + }, + }, + [WSP_FLAG_WELLSPRING7] = { + .caps = HAS_INTEGRATED_BUTTON, + .bt_datalen = sizeof(struct bt_data), + .tp_type = TYPE2, + .tp_offset = FINGER_TYPE2, + .tp_datalen = FINGER_TYPE2 + SIZEOF_ALL_FINGERS, + .p = { + SN_PRESSURE, 0, 300 + }, + .w = { + SN_WIDTH, 0, 2048 + }, + .x = { + SN_COORD, -4750, 5280 + }, + .y = { + SN_COORD, -150, 6730 + }, + .o = { + SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION + }, + }, + [WSP_FLAG_WELLSPRING7A] = { + .caps = HAS_INTEGRATED_BUTTON, + .bt_datalen = sizeof(struct bt_data), + .tp_type = TYPE2, + .tp_offset = FINGER_TYPE2, + .tp_datalen = FINGER_TYPE2 + SIZEOF_ALL_FINGERS, + .p = { + SN_PRESSURE, 0, 300 + }, + .w = { + SN_WIDTH, 0, 2048 + }, + .x = { + SN_COORD, -4750, 5280 + }, + .y = { + SN_COORD, -150, 6730 + }, + .o = { + SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION + }, + }, + [WSP_FLAG_WELLSPRING8] = { + .caps = HAS_INTEGRATED_BUTTON, + .bt_datalen = sizeof(struct bt_data), + .tp_type = TYPE3, + .tp_offset = FINGER_TYPE3, + .tp_datalen = FINGER_TYPE3 + SIZEOF_ALL_FINGERS, + .p = { + SN_PRESSURE, 0, 300 + }, + .w = { + SN_WIDTH, 0, 2048 + }, + .x = { + SN_COORD, -4620, 5140 + }, + .y = { + SN_COORD, -150, 6600 + }, + .o = { + SN_ORIENT, -MAX_FINGER_ORIENTATION, MAX_FINGER_ORIENTATION + }, + }, +}; + +#define WSP_DEV(v,p,i) { USB_VPI(USB_VENDOR_##v, USB_PRODUCT_##v##_##p, i) } + +static const STRUCT_USB_HOST_ID wsp_devs[] = { + /* MacbookAir1.1 */ + WSP_DEV(APPLE, WELLSPRING_ANSI, WSP_FLAG_WELLSPRING1), + WSP_DEV(APPLE, WELLSPRING_ISO, WSP_FLAG_WELLSPRING1), + WSP_DEV(APPLE, WELLSPRING_JIS, WSP_FLAG_WELLSPRING1), + + /* MacbookProPenryn, aka wellspring2 */ + WSP_DEV(APPLE, WELLSPRING2_ANSI, WSP_FLAG_WELLSPRING2), + WSP_DEV(APPLE, WELLSPRING2_ISO, WSP_FLAG_WELLSPRING2), + WSP_DEV(APPLE, WELLSPRING2_JIS, WSP_FLAG_WELLSPRING2), + + /* Macbook5,1 (unibody), aka wellspring3 */ + WSP_DEV(APPLE, WELLSPRING3_ANSI, WSP_FLAG_WELLSPRING3), + WSP_DEV(APPLE, WELLSPRING3_ISO, WSP_FLAG_WELLSPRING3), + WSP_DEV(APPLE, WELLSPRING3_JIS, WSP_FLAG_WELLSPRING3), + + /* MacbookAir3,2 (unibody), aka wellspring4 */ + WSP_DEV(APPLE, WELLSPRING4_ANSI, WSP_FLAG_WELLSPRING4), + WSP_DEV(APPLE, WELLSPRING4_ISO, WSP_FLAG_WELLSPRING4), + WSP_DEV(APPLE, WELLSPRING4_JIS, WSP_FLAG_WELLSPRING4), + + /* MacbookAir3,1 (unibody), aka wellspring4 */ + WSP_DEV(APPLE, WELLSPRING4A_ANSI, WSP_FLAG_WELLSPRING4A), + WSP_DEV(APPLE, WELLSPRING4A_ISO, WSP_FLAG_WELLSPRING4A), + WSP_DEV(APPLE, WELLSPRING4A_JIS, WSP_FLAG_WELLSPRING4A), + + /* Macbook8 (unibody, March 2011) */ + WSP_DEV(APPLE, WELLSPRING5_ANSI, WSP_FLAG_WELLSPRING5), + WSP_DEV(APPLE, WELLSPRING5_ISO, WSP_FLAG_WELLSPRING5), + WSP_DEV(APPLE, WELLSPRING5_JIS, WSP_FLAG_WELLSPRING5), + + /* MacbookAir4,1 (unibody, July 2011) */ + WSP_DEV(APPLE, WELLSPRING6A_ANSI, WSP_FLAG_WELLSPRING6A), + WSP_DEV(APPLE, WELLSPRING6A_ISO, WSP_FLAG_WELLSPRING6A), + WSP_DEV(APPLE, WELLSPRING6A_JIS, WSP_FLAG_WELLSPRING6A), + + /* MacbookAir4,2 (unibody, July 2011) */ + WSP_DEV(APPLE, WELLSPRING6_ANSI, WSP_FLAG_WELLSPRING6), + WSP_DEV(APPLE, WELLSPRING6_ISO, WSP_FLAG_WELLSPRING6), + WSP_DEV(APPLE, WELLSPRING6_JIS, WSP_FLAG_WELLSPRING6), + + /* Macbook8,2 (unibody) */ + WSP_DEV(APPLE, WELLSPRING5A_ANSI, WSP_FLAG_WELLSPRING5A), + WSP_DEV(APPLE, WELLSPRING5A_ISO, WSP_FLAG_WELLSPRING5A), + WSP_DEV(APPLE, WELLSPRING5A_JIS, WSP_FLAG_WELLSPRING5A), + + /* MacbookPro10,1 (unibody, June 2012) */ + /* MacbookPro11,? (unibody, June 2013) */ + WSP_DEV(APPLE, WELLSPRING7_ANSI, WSP_FLAG_WELLSPRING7), + WSP_DEV(APPLE, WELLSPRING7_ISO, WSP_FLAG_WELLSPRING7), + WSP_DEV(APPLE, WELLSPRING7_JIS, WSP_FLAG_WELLSPRING7), + + /* MacbookPro10,2 (unibody, October 2012) */ + WSP_DEV(APPLE, WELLSPRING7A_ANSI, WSP_FLAG_WELLSPRING7A), + WSP_DEV(APPLE, WELLSPRING7A_ISO, WSP_FLAG_WELLSPRING7A), + WSP_DEV(APPLE, WELLSPRING7A_JIS, WSP_FLAG_WELLSPRING7A), + + /* MacbookAir6,2 (unibody, June 2013) */ + WSP_DEV(APPLE, WELLSPRING8_ANSI, WSP_FLAG_WELLSPRING8), + WSP_DEV(APPLE, WELLSPRING8_ISO, WSP_FLAG_WELLSPRING8), + WSP_DEV(APPLE, WELLSPRING8_JIS, WSP_FLAG_WELLSPRING8), +}; + +#define WSP_FIFO_BUF_SIZE 8 /* bytes */ +#define WSP_FIFO_QUEUE_MAXLEN 50 /* units */ + +enum { + WSP_INTR_DT, + WSP_RESET, + WSP_N_TRANSFER, +}; + +struct wsp_softc { + device_t sc_dev; + struct usb_device *sc_usb_device; +#define MODE_LENGTH 8 + uint8_t sc_mode_bytes[MODE_LENGTH]; /* device mode */ + struct mtx sc_mutex; /* for synchronization */ + struct usb_xfer *sc_xfer[WSP_N_TRANSFER]; + struct usb_fifo_sc sc_fifo; + + const struct wsp_dev_params *sc_params; /* device configuration */ + + mousehw_t sc_hw; + mousemode_t sc_mode; + u_int sc_pollrate; + mousestatus_t sc_status; + u_int sc_state; +#define WSP_ENABLED 0x01 + + struct bt_data *bt_data; /* button transferred data */ + uint8_t *tp_data; /* trackpad transferred data */ + struct tp_finger *index[MAX_FINGERS]; /* finger index data */ + int16_t pos_x[MAX_FINGERS]; /* position array */ + int16_t pos_y[MAX_FINGERS]; /* position array */ + u_int sc_touch; /* touch status */ +#define WSP_UNTOUCH 0x00 +#define WSP_FIRST_TOUCH 0x01 +#define WSP_SECOND_TOUCH 0x02 +#define WSP_TOUCHING 0x04 + int16_t pre_pos_x; /* previous position array */ + int16_t pre_pos_y; /* previous position array */ + int dx_sum; /* x axis cumulative movement */ + int dy_sum; /* y axis cumulative movement */ + int dz_sum; /* z axis cumulative movement */ + int dz_count; +#define WSP_DZ_MAX_COUNT 32 + int dt_sum; /* T-axis cumulative movement */ + + uint8_t finger; /* 0 or 1 *, check which finger moving */ + uint16_t intr_count; +#define WSP_TAP_THRESHOLD 3 +#define WSP_TAP_MAX_COUNT 20 + int distance; /* the distance of 2 fingers */ +#define MAX_DISTANCE 2500 /* the max allowed distance */ + uint8_t ibtn; /* button status in tapping */ + uint8_t ntaps; /* finger status in tapping */ + uint8_t scr_mode; /* scroll status in movement */ +#define WSP_SCR_NONE 0 +#define WSP_SCR_VER 1 +#define WSP_SCR_HOR 2 +}; + +typedef enum interface_mode { + RAW_SENSOR_MODE = 0x01, + HID_MODE = 0x08 +} interface_mode; + +/* + * function prototypes + */ +static usb_fifo_cmd_t wsp_start_read; +static usb_fifo_cmd_t wsp_stop_read; +static usb_fifo_open_t wsp_open; +static usb_fifo_close_t wsp_close; +static usb_fifo_ioctl_t wsp_ioctl; + +static struct usb_fifo_methods wsp_fifo_methods = { + .f_open = &wsp_open, + .f_close = &wsp_close, + .f_ioctl = &wsp_ioctl, + .f_start_read = &wsp_start_read, + .f_stop_read = &wsp_stop_read, + .basename[0] = WSP_DRIVER_NAME, +}; + +/* device initialization and shutdown */ +static usb_error_t wsp_req_get_report(struct usb_device *udev, void *data); +static int wsp_set_device_mode(device_t dev, interface_mode mode); +static int wsp_enable(struct wsp_softc *sc); +static void wsp_disable(struct wsp_softc *sc); + +/* updating fifo */ +static void wsp_reset_buf(struct wsp_softc *sc); +static void wsp_add_to_queue(struct wsp_softc *, int, int, int, uint32_t); + +/* Device methods. */ +static device_probe_t wsp_probe; +static device_attach_t wsp_attach; +static device_detach_t wsp_detach; +static usb_callback_t wsp_intr_callback; +static usb_callback_t wsp_reset_callback; + +static struct usb_config wsp_config[WSP_N_TRANSFER] = { + [WSP_INTR_DT] = { + .type = UE_INTERRUPT, + .endpoint = UE_ADDR_ANY, + .direction = UE_DIR_IN, + .flags = { + .pipe_bof = 0, + .short_xfer_ok = 1, + }, + .bufsize = 0, /* use wMaxPacketSize */ + .callback = &wsp_intr_callback, + }, + [WSP_RESET] = { + .type = UE_CONTROL, + .endpoint = 0, /* Control pipe */ + .direction = UE_DIR_ANY, + .bufsize = sizeof(struct usb_device_request) + MODE_LENGTH, + .callback = &wsp_reset_callback, + .interval = 0, /* no pre-delay */ + }, +}; + +usb_error_t +wsp_req_get_report(struct usb_device *udev, void *data) +{ + struct usb_device_request req; + + req.bmRequestType = UT_READ_CLASS_INTERFACE; + req.bRequest = UR_GET_REPORT; + USETW2(req.wValue, (uint8_t)0x03 /* type */ , (uint8_t)0x00 /* id */ ); + USETW(req.wIndex, 0); + USETW(req.wLength, MODE_LENGTH); + + return (usbd_do_request(udev, NULL /* mutex */ , &req, data)); +} + +static int +wsp_set_device_mode(device_t dev, interface_mode mode) +{ + struct wsp_softc *sc; + usb_device_request_t req; + usb_error_t err; + + if ((mode != RAW_SENSOR_MODE) && (mode != HID_MODE)) + return (ENXIO); + + sc = device_get_softc(dev); + + sc->sc_mode_bytes[0] = mode; + req.bmRequestType = UT_WRITE_CLASS_INTERFACE; + req.bRequest = UR_SET_REPORT; + USETW2(req.wValue, (uint8_t)0x03 /* type */ , (uint8_t)0x00 /* id */ ); + USETW(req.wIndex, 0); + USETW(req.wLength, MODE_LENGTH); + err = usbd_do_request(sc->sc_usb_device, NULL, &req, sc->sc_mode_bytes); + if (err != USB_ERR_NORMAL_COMPLETION) + return (ENXIO); + + return (0); +} + +static void +wsp_reset_callback(struct usb_xfer *xfer, usb_error_t error) +{ + usb_device_request_t req; + struct usb_page_cache *pc; + struct wsp_softc *sc = usbd_xfer_softc(xfer); + + switch (USB_GET_STATE(xfer)) { + case USB_ST_SETUP: + sc->sc_mode_bytes[0] = RAW_SENSOR_MODE; + req.bmRequestType = UT_WRITE_CLASS_INTERFACE; + req.bRequest = UR_SET_REPORT; + USETW2(req.wValue, + (uint8_t)0x03 /* type */ , (uint8_t)0x00 /* id */ ); + USETW(req.wIndex, 0); + USETW(req.wLength, MODE_LENGTH); + + pc = usbd_xfer_get_frame(xfer, 0); + usbd_copy_in(pc, 0, &req, sizeof(req)); + pc = usbd_xfer_get_frame(xfer, 1); + usbd_copy_in(pc, 0, sc->sc_mode_bytes, MODE_LENGTH); + + usbd_xfer_set_frame_len(xfer, 0, sizeof(req)); + usbd_xfer_set_frame_len(xfer, 1, MODE_LENGTH); + usbd_xfer_set_frames(xfer, 2); + usbd_transfer_submit(xfer); + break; + + case USB_ST_TRANSFERRED: + default: + break; + } +} + +static int +wsp_enable(struct wsp_softc *sc) +{ + const struct wsp_dev_params *params = sc->sc_params; + + if (params == NULL || params->tp_datalen == 0) { + DPRINTF("params uninitialized!\n"); + return (ENXIO); + } + /* Allocate the dynamic buffers */ + sc->tp_data = malloc(params->tp_datalen, M_USB, M_WAITOK | M_ZERO); + if (sc->tp_data == NULL) { + DPRINTF("Cannot allocate memory\n"); + return (ENXIO); + } + + /* reset status */ + memset(&sc->sc_status, 0, sizeof(sc->sc_status)); + sc->sc_state |= WSP_ENABLED; + + DPRINTFN(WSP_LLEVEL_INFO, "enabled wsp\n"); + return (0); +} + +static void +wsp_disable(struct wsp_softc *sc) +{ + free(sc->tp_data, M_USB); + sc->tp_data = NULL; + + sc->sc_state &= ~WSP_ENABLED; + DPRINTFN(WSP_LLEVEL_INFO, "disabled wsp\n"); +} + +static int +wsp_probe(device_t self) +{ + struct usb_attach_arg *uaa = device_get_ivars(self); + + if (uaa->usb_mode != USB_MODE_HOST) + return (ENXIO); + + if (uaa->info.bIfaceIndex != WSP_IFACE_INDEX) + return (ENXIO); + + if ((uaa->info.bInterfaceClass != UICLASS_HID) || + (uaa->info.bInterfaceProtocol != 0)) + return (ENXIO); + + return (usbd_lookup_id_by_uaa(wsp_devs, sizeof(wsp_devs), uaa)); +} + +static int +wsp_attach(device_t dev) +{ + struct wsp_softc *sc = device_get_softc(dev); + struct usb_attach_arg *uaa = device_get_ivars(dev); + usb_error_t err; + + DPRINTFN(WSP_LLEVEL_INFO, "sc=%p\n", sc); + + sc->sc_dev = dev; + sc->sc_usb_device = uaa->device; + + /* + * By default the touchpad behaves like an HID device, sending + * packets with reportID = 8. Such reports contain only + * limited information. They encode movement deltas and button + * events, but do not include data from the pressure + * sensors. The device input mode can be switched from HID + * reports to raw sensor data using vendor-specific USB + * control commands; but first the mode must be read. + */ + err = wsp_req_get_report(sc->sc_usb_device, sc->sc_mode_bytes); + if (err != USB_ERR_NORMAL_COMPLETION) { + DPRINTF("failed to read device mode (%d)\n", err); + return (ENXIO); + } + if (wsp_set_device_mode(dev, RAW_SENSOR_MODE) != 0) { + DPRINTF("failed to set mode to 'RAW_SENSOR' (%d)\n", err); + return (ENXIO); + } + mtx_init(&sc->sc_mutex, "wspmtx", NULL, MTX_DEF | MTX_RECURSE); + + /* get device specific configuration */ + sc->sc_params = wsp_dev_params + USB_GET_DRIVER_INFO(uaa); + + /* set to 0 to use wMaxPacketSize is not enough */ + wsp_config[0].bufsize = sc->sc_params->tp_datalen; + + err = usbd_transfer_setup(uaa->device, + &uaa->info.bIfaceIndex, sc->sc_xfer, wsp_config, + WSP_N_TRANSFER, sc, &sc->sc_mutex); + + if (err) { + DPRINTF("error=%s\n", usbd_errstr(err)); + goto detach; + } + if (usb_fifo_attach(sc->sc_usb_device, sc, &sc->sc_mutex, + &wsp_fifo_methods, &sc->sc_fifo, + device_get_unit(dev), -1, uaa->info.bIfaceIndex, + UID_ROOT, GID_OPERATOR, 0644)) { + goto detach; + } + device_set_usb_desc(dev); + + sc->sc_hw.buttons = 3; + sc->sc_hw.iftype = MOUSE_IF_USB; + sc->sc_hw.type = MOUSE_PAD; + sc->sc_hw.model = MOUSE_MODEL_GENERIC; + sc->sc_mode.protocol = MOUSE_PROTO_MSC; + sc->sc_mode.rate = -1; + sc->sc_mode.resolution = MOUSE_RES_UNKNOWN; + sc->sc_mode.packetsize = MOUSE_MSC_PACKETSIZE; + sc->sc_mode.syncmask[0] = MOUSE_MSC_SYNCMASK; + sc->sc_mode.syncmask[1] = MOUSE_MSC_SYNC; + + sc->sc_touch = WSP_UNTOUCH; + sc->scr_mode = WSP_SCR_NONE; + + return (0); + +detach: + wsp_detach(dev); + return (ENOMEM); +} + +static int +wsp_detach(device_t dev) +{ + struct wsp_softc *sc = device_get_softc(dev); + + wsp_set_device_mode(dev, HID_MODE); + + mtx_lock(&sc->sc_mutex); + if (sc->sc_state & WSP_ENABLED) + wsp_disable(sc); + mtx_unlock(&sc->sc_mutex); + + usb_fifo_detach(&sc->sc_fifo); + + usbd_transfer_unsetup(sc->sc_xfer, WSP_N_TRANSFER); + + mtx_destroy(&sc->sc_mutex); + + return (0); +} + +static void +wsp_intr_callback(struct usb_xfer *xfer, usb_error_t error) +{ + struct wsp_softc *sc = usbd_xfer_softc(xfer); + const struct wsp_dev_params *params = sc->sc_params; + struct usb_page_cache *pc; + struct tp_finger *f; + struct tp_header *h; + struct wsp_tuning tun = wsp_tuning; + int ntouch = 0; /* the finger number in touch */ + int ibt = 0; /* button status */ + int dx = 0; + int dy = 0; + int dz = 0; + int n = 0; + int len; + int i; + + wsp_runing_rangecheck(&tun); + + if (sc->dz_count == 0) + sc->dz_count = WSP_DZ_MAX_COUNT; + + usbd_xfer_status(xfer, &len, NULL, NULL, NULL); + + switch (USB_GET_STATE(xfer)) { + case USB_ST_TRANSFERRED: + if (len > (int)params->tp_datalen) { + DPRINTFN(WSP_LLEVEL_ERROR, + "truncating large packet from %u to %u bytes\n", + len, params->tp_datalen); + len = params->tp_datalen; *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 11:39:59 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2DEA060D; Wed, 29 Jan 2014 11:39:59 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1A1861EA8; Wed, 29 Jan 2014 11:39:59 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TBdwZo016943; Wed, 29 Jan 2014 11:39:58 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TBdwIr016942; Wed, 29 Jan 2014 11:39:58 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201401291139.s0TBdwIr016942@svn.freebsd.org> From: Sergey Kandaurov Date: Wed, 29 Jan 2014 11:39:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261261 - head/contrib/libc-vis X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 11:39:59 -0000 Author: pluknet Date: Wed Jan 29 11:39:58 2014 New Revision: 261261 URL: http://svnweb.freebsd.org/changeset/base/261261 Log: Restore the Nx macro lost in transit. This matches upstream. PR: 186205 Submitted by: naddy MFC after: 3 days Modified: head/contrib/libc-vis/vis.3 Modified: head/contrib/libc-vis/vis.3 ============================================================================== --- head/contrib/libc-vis/vis.3 Wed Jan 29 10:42:01 2014 (r261260) +++ head/contrib/libc-vis/vis.3 Wed Jan 29 11:39:58 2014 (r261261) @@ -510,6 +510,7 @@ The buffer size limited versions of the and .Fn strsnvisx Pc appeared in +.Nx 6.0 and .Fx 9.2 . Myltibyte character support was added in From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 12:34:06 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 819ECCAB; Wed, 29 Jan 2014 12:34:06 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6D1C41358; Wed, 29 Jan 2014 12:34:06 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TCY6q9040892; Wed, 29 Jan 2014 12:34:06 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TCY6uZ040891; Wed, 29 Jan 2014 12:34:06 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201401291234.s0TCY6uZ040891@svn.freebsd.org> From: Hans Petter Selasky Date: Wed, 29 Jan 2014 12:34:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261262 - head/sys/dev/usb/input X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 12:34:06 -0000 Author: hselasky Date: Wed Jan 29 12:34:05 2014 New Revision: 261262 URL: http://svnweb.freebsd.org/changeset/base/261262 Log: - Remove some dead code. - Use system provided functions for HID report requests. - Nice the mode setting, because the USB hardware does appear to handle the commands right away. MFC after: 1 week Modified: head/sys/dev/usb/input/wsp.c Modified: head/sys/dev/usb/input/wsp.c ============================================================================== --- head/sys/dev/usb/input/wsp.c Wed Jan 29 11:39:58 2014 (r261261) +++ head/sys/dev/usb/input/wsp.c Wed Jan 29 12:34:05 2014 (r261262) @@ -569,15 +569,11 @@ static const STRUCT_USB_HOST_ID wsp_devs enum { WSP_INTR_DT, - WSP_RESET, WSP_N_TRANSFER, }; struct wsp_softc { - device_t sc_dev; struct usb_device *sc_usb_device; -#define MODE_LENGTH 8 - uint8_t sc_mode_bytes[MODE_LENGTH]; /* device mode */ struct mtx sc_mutex; /* for synchronization */ struct usb_xfer *sc_xfer[WSP_N_TRANSFER]; struct usb_fifo_sc sc_fifo; @@ -648,8 +644,6 @@ static struct usb_fifo_methods wsp_fifo_ }; /* device initialization and shutdown */ -static usb_error_t wsp_req_get_report(struct usb_device *udev, void *data); -static int wsp_set_device_mode(device_t dev, interface_mode mode); static int wsp_enable(struct wsp_softc *sc); static void wsp_disable(struct wsp_softc *sc); @@ -662,7 +656,6 @@ static device_probe_t wsp_probe; static device_attach_t wsp_attach; static device_detach_t wsp_detach; static usb_callback_t wsp_intr_callback; -static usb_callback_t wsp_reset_callback; static struct usb_config wsp_config[WSP_N_TRANSFER] = { [WSP_INTR_DT] = { @@ -676,87 +669,36 @@ static struct usb_config wsp_config[WSP_ .bufsize = 0, /* use wMaxPacketSize */ .callback = &wsp_intr_callback, }, - [WSP_RESET] = { - .type = UE_CONTROL, - .endpoint = 0, /* Control pipe */ - .direction = UE_DIR_ANY, - .bufsize = sizeof(struct usb_device_request) + MODE_LENGTH, - .callback = &wsp_reset_callback, - .interval = 0, /* no pre-delay */ - }, }; -usb_error_t -wsp_req_get_report(struct usb_device *udev, void *data) +static usb_error_t +wsp_set_device_mode(struct wsp_softc *sc, interface_mode mode) { - struct usb_device_request req; - - req.bmRequestType = UT_READ_CLASS_INTERFACE; - req.bRequest = UR_GET_REPORT; - USETW2(req.wValue, (uint8_t)0x03 /* type */ , (uint8_t)0x00 /* id */ ); - USETW(req.wIndex, 0); - USETW(req.wLength, MODE_LENGTH); - - return (usbd_do_request(udev, NULL /* mutex */ , &req, data)); -} - -static int -wsp_set_device_mode(device_t dev, interface_mode mode) -{ - struct wsp_softc *sc; - usb_device_request_t req; + uint8_t mode_bytes[8]; usb_error_t err; - if ((mode != RAW_SENSOR_MODE) && (mode != HID_MODE)) - return (ENXIO); - - sc = device_get_softc(dev); + err = usbd_req_get_report(sc->sc_usb_device, NULL, + mode_bytes, sizeof(mode_bytes), 0, + 0x03, 0x00); - sc->sc_mode_bytes[0] = mode; - req.bmRequestType = UT_WRITE_CLASS_INTERFACE; - req.bRequest = UR_SET_REPORT; - USETW2(req.wValue, (uint8_t)0x03 /* type */ , (uint8_t)0x00 /* id */ ); - USETW(req.wIndex, 0); - USETW(req.wLength, MODE_LENGTH); - err = usbd_do_request(sc->sc_usb_device, NULL, &req, sc->sc_mode_bytes); - if (err != USB_ERR_NORMAL_COMPLETION) - return (ENXIO); - - return (0); -} - -static void -wsp_reset_callback(struct usb_xfer *xfer, usb_error_t error) -{ - usb_device_request_t req; - struct usb_page_cache *pc; - struct wsp_softc *sc = usbd_xfer_softc(xfer); + if (err != USB_ERR_NORMAL_COMPLETION) { + DPRINTF("Failed to read device mode (%d)\n", err); + return (err); + } - switch (USB_GET_STATE(xfer)) { - case USB_ST_SETUP: - sc->sc_mode_bytes[0] = RAW_SENSOR_MODE; - req.bmRequestType = UT_WRITE_CLASS_INTERFACE; - req.bRequest = UR_SET_REPORT; - USETW2(req.wValue, - (uint8_t)0x03 /* type */ , (uint8_t)0x00 /* id */ ); - USETW(req.wIndex, 0); - USETW(req.wLength, MODE_LENGTH); + /* + * XXX Need to wait at least 250ms for hardware to get + * ready. The device mode handling appears to be handled + * asynchronously and we should not issue these commands too + * quickly. + */ + pause("WHW", hz / 4); - pc = usbd_xfer_get_frame(xfer, 0); - usbd_copy_in(pc, 0, &req, sizeof(req)); - pc = usbd_xfer_get_frame(xfer, 1); - usbd_copy_in(pc, 0, sc->sc_mode_bytes, MODE_LENGTH); - - usbd_xfer_set_frame_len(xfer, 0, sizeof(req)); - usbd_xfer_set_frame_len(xfer, 1, MODE_LENGTH); - usbd_xfer_set_frames(xfer, 2); - usbd_transfer_submit(xfer); - break; + mode_bytes[0] = mode; - case USB_ST_TRANSFERRED: - default: - break; - } + return (usbd_req_set_report(sc->sc_usb_device, NULL, + mode_bytes, sizeof(mode_bytes), 0, + 0x03, 0x00)); } static int @@ -820,27 +762,35 @@ wsp_attach(device_t dev) DPRINTFN(WSP_LLEVEL_INFO, "sc=%p\n", sc); - sc->sc_dev = dev; sc->sc_usb_device = uaa->device; /* - * By default the touchpad behaves like an HID device, sending + * By default the touchpad behaves like a HID device, sending * packets with reportID = 8. Such reports contain only * limited information. They encode movement deltas and button * events, but do not include data from the pressure * sensors. The device input mode can be switched from HID * reports to raw sensor data using vendor-specific USB - * control commands; but first the mode must be read. + * control commands: */ - err = wsp_req_get_report(sc->sc_usb_device, sc->sc_mode_bytes); + + /* + * During re-enumeration of the device we need to force the + * device back into HID mode before switching it to RAW + * mode. Else the device does not work like expected. + */ + err = wsp_set_device_mode(sc, HID_MODE); if (err != USB_ERR_NORMAL_COMPLETION) { - DPRINTF("failed to read device mode (%d)\n", err); + DPRINTF("Failed to set mode to HID MODE (%d)\n", err); return (ENXIO); } - if (wsp_set_device_mode(dev, RAW_SENSOR_MODE) != 0) { - DPRINTF("failed to set mode to 'RAW_SENSOR' (%d)\n", err); + + err = wsp_set_device_mode(sc, RAW_SENSOR_MODE); + if (err != USB_ERR_NORMAL_COMPLETION) { + DPRINTF("failed to set mode to RAW MODE (%d)\n", err); return (ENXIO); } + mtx_init(&sc->sc_mutex, "wspmtx", NULL, MTX_DEF | MTX_RECURSE); /* get device specific configuration */ @@ -891,7 +841,7 @@ wsp_detach(device_t dev) { struct wsp_softc *sc = device_get_softc(dev); - wsp_set_device_mode(dev, HID_MODE); + (void) wsp_set_device_mode(sc, HID_MODE); mtx_lock(&sc->sc_mutex); if (sc->sc_state & WSP_ENABLED) From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 12:48:20 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 01256327; Wed, 29 Jan 2014 12:48:20 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E17FD14A6; Wed, 29 Jan 2014 12:48:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TCmJHm045277; Wed, 29 Jan 2014 12:48:19 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TCmJT7045274; Wed, 29 Jan 2014 12:48:19 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201401291248.s0TCmJT7045274@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Wed, 29 Jan 2014 12:48:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261263 - head/lib/libfetch X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 12:48:20 -0000 Author: des Date: Wed Jan 29 12:48:19 2014 New Revision: 261263 URL: http://svnweb.freebsd.org/changeset/base/261263 Log: r261230 broke the cases where the amount of data to be read is not known in advance, or where the caller doesn't care and just keeps reading until it hits EOF. In fetch_read(): the socket is non-blocking, so read() will return 0 on EOF, and -1 (errno == EAGAIN) when the connection is still open but there is no data waiting. In the first case, we should immediately return 0. The EINTR case was also broken, although not in a way that matters. In fetch_writev(): use timersub() and timercmp() as in fetch_read(). In http_fillbuf(): set errno to a sensible value when an invalid chunk header is encountered. In http_readfn(): as in fetch_read(), a zero return from down the stack indicates EOF, not an error. Furthermore, when io->error is EINTR, clear it (but no errno) before returning so the caller can retry after dealing with the interrupt. MFC after: 3 days Modified: head/lib/libfetch/common.c head/lib/libfetch/http.c Modified: head/lib/libfetch/common.c ============================================================================== --- head/lib/libfetch/common.c Wed Jan 29 12:34:05 2014 (r261262) +++ head/lib/libfetch/common.c Wed Jan 29 12:48:19 2014 (r261263) @@ -976,13 +976,13 @@ fetch_read(conn_t *conn, char *buf, size else #endif rlen = fetch_socket_read(conn->sd, buf, len); - if (rlen > 0) { + if (rlen >= 0) { break; } else if (rlen == FETCH_READ_ERROR) { - if (errno == EINTR) - break; + fetch_syserr(); return (-1); } + // assert(rlen == FETCH_READ_WAIT); if (fetchTimeout > 0) { gettimeofday(&now, NULL); if (!timercmp(&timeout, &now, >)) { @@ -1079,7 +1079,7 @@ fetch_writev(conn_t *conn, struct iovec struct timeval now, timeout, delta; struct pollfd pfd; ssize_t wlen, total; - int deltams, r; + int deltams; memset(&pfd, 0, sizeof pfd); if (fetchTimeout) { @@ -1093,20 +1093,17 @@ fetch_writev(conn_t *conn, struct iovec while (iovcnt > 0) { while (fetchTimeout && pfd.revents == 0) { gettimeofday(&now, NULL); - delta.tv_sec = timeout.tv_sec - now.tv_sec; - delta.tv_usec = timeout.tv_usec - now.tv_usec; - if (delta.tv_usec < 0) { - delta.tv_usec += 1000000; - delta.tv_sec--; - } - if (delta.tv_sec < 0) { + if (!timercmp(&timeout, &now, >)) { errno = ETIMEDOUT; fetch_syserr(); return (-1); } - deltams = delta.tv_sec * 1000 + delta.tv_usec / 1000;; + timersub(&timeout, &now, &delta); + deltams = delta.tv_sec * 1000 + + delta.tv_usec / 1000; errno = 0; - if ((r = poll(&pfd, 1, deltams)) == -1) { + pfd.revents = 0; + if (poll(&pfd, 1, deltams) < 0) { if (errno == EINTR && fetchRestartCalls) continue; return (-1); Modified: head/lib/libfetch/http.c ============================================================================== --- head/lib/libfetch/http.c Wed Jan 29 12:34:05 2014 (r261262) +++ head/lib/libfetch/http.c Wed Jan 29 12:48:19 2014 (r261263) @@ -204,7 +204,7 @@ http_growbuf(struct httpio *io, size_t l /* * Fill the input buffer, do chunk decoding on the fly */ -static int +static ssize_t http_fillbuf(struct httpio *io, size_t len) { ssize_t nbytes; @@ -230,7 +230,7 @@ http_fillbuf(struct httpio *io, size_t l if (io->chunksize == 0) { switch (http_new_chunk(io)) { case -1: - io->error = 1; + io->error = EPROTO; return (-1); case 0: io->eof = 1; @@ -276,10 +276,12 @@ http_readfn(void *v, char *buf, int len) /* empty buffer */ if (!io->buf || io->bufpos == io->buflen) { - if (http_fillbuf(io, len) < 1) { - if (io->error == EINTR) + if ((rlen = http_fillbuf(io, len)) < 0) { + if ((errno = io->error) == EINTR) io->error = 0; return (-1); + } else if (rlen == 0) { + return (0); } } From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 13:22:49 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7D716475; Wed, 29 Jan 2014 13:22:49 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4F8B317B7; Wed, 29 Jan 2014 13:22:49 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TDMned060928; Wed, 29 Jan 2014 13:22:49 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TDMnGe060927; Wed, 29 Jan 2014 13:22:49 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401291322.s0TDMnGe060927@svn.freebsd.org> From: John Baldwin Date: Wed, 29 Jan 2014 13:22:49 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261264 - stable/10 X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 13:22:49 -0000 Author: jhb Date: Wed Jan 29 13:22:48 2014 New Revision: 261264 URL: http://svnweb.freebsd.org/changeset/base/261264 Log: Record mergeinfo for earlier merge of 257293. Modified: Directory Properties: stable/10/ (props changed) From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 13:35:15 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 738EDB2F; Wed, 29 Jan 2014 13:35:15 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 52EDB18AD; Wed, 29 Jan 2014 13:35:15 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TDZFJZ065240; Wed, 29 Jan 2014 13:35:15 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TDZCD5065225; Wed, 29 Jan 2014 13:35:12 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401291335.s0TDZCD5065225@svn.freebsd.org> From: John Baldwin Date: Wed, 29 Jan 2014 13:35:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261265 - stable/10/usr.sbin/bhyve X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 13:35:15 -0000 Author: jhb Date: Wed Jan 29 13:35:12 2014 New Revision: 261265 URL: http://svnweb.freebsd.org/changeset/base/261265 Log: MFC 260206: Rework the DSDT generation code a bit to generate more accurate info about LPC devices. Among other things, the LPC serial ports now appear as ACPI devices. Modified: stable/10/usr.sbin/bhyve/acpi.c stable/10/usr.sbin/bhyve/acpi.h stable/10/usr.sbin/bhyve/atpic.c stable/10/usr.sbin/bhyve/elcr.c stable/10/usr.sbin/bhyve/pci_emul.c stable/10/usr.sbin/bhyve/pci_emul.h stable/10/usr.sbin/bhyve/pci_lpc.c stable/10/usr.sbin/bhyve/pci_lpc.h stable/10/usr.sbin/bhyve/pit_8254.c stable/10/usr.sbin/bhyve/pm.c stable/10/usr.sbin/bhyve/post.c stable/10/usr.sbin/bhyve/rtc.c Directory Properties: stable/10/ (props changed) Modified: stable/10/usr.sbin/bhyve/acpi.c ============================================================================== --- stable/10/usr.sbin/bhyve/acpi.c Wed Jan 29 13:22:48 2014 (r261264) +++ stable/10/usr.sbin/bhyve/acpi.c Wed Jan 29 13:35:12 2014 (r261265) @@ -57,6 +57,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include @@ -67,6 +68,7 @@ __FBSDID("$FreeBSD$"); #include "bhyverun.h" #include "acpi.h" +#include "pci_emul.h" /* * Define the base address of the ACPI tables, and the offsets to @@ -98,6 +100,13 @@ static uint32_t hpet_capabilities; static char basl_template[MAXPATHLEN]; static char basl_stemplate[MAXPATHLEN]; +/* + * State for dsdt_line(), dsdt_indent(), and dsdt_unindent(). + */ +static FILE *dsdt_fp; +static int dsdt_indent_level; +static int dsdt_error; + struct basl_fio { int fd; FILE *fp; @@ -596,119 +605,122 @@ err_exit: return (errno); } +/* + * Helper routines for writing to the DSDT from other modules. + */ +void +dsdt_line(const char *fmt, ...) +{ + va_list ap; + int err; + + if (dsdt_error != 0) + return; + + if (strcmp(fmt, "") != 0) { + if (dsdt_indent_level != 0) + EFPRINTF(dsdt_fp, "%*c", dsdt_indent_level * 2, ' '); + va_start(ap, fmt); + if (vfprintf(dsdt_fp, fmt, ap) < 0) + goto err_exit; + va_end(ap); + } + EFPRINTF(dsdt_fp, "\n"); + return; + +err_exit: + dsdt_error = errno; +} + +void +dsdt_indent(int levels) +{ + + dsdt_indent_level += levels; + assert(dsdt_indent_level >= 0); +} + +void +dsdt_unindent(int levels) +{ + + assert(dsdt_indent_level >= levels); + dsdt_indent_level -= levels; +} + +void +dsdt_fixed_ioport(uint16_t iobase, uint16_t length) +{ + + dsdt_line("IO (Decode16,"); + dsdt_line(" 0x%04X, // Range Minimum", iobase); + dsdt_line(" 0x%04X, // Range Maximum", iobase); + dsdt_line(" 0x01, // Alignment"); + dsdt_line(" 0x%02X, // Length", length); + dsdt_line(" )"); +} + +void +dsdt_fixed_irq(uint8_t irq) +{ + + dsdt_line("IRQNoFlags ()"); + dsdt_line(" {%d}", irq); +} + +void +dsdt_fixed_mem32(uint32_t base, uint32_t length) +{ + + dsdt_line("Memory32Fixed (ReadWrite,"); + dsdt_line(" 0x%08X, // Address Base", base); + dsdt_line(" 0x%08X, // Address Length", length); + dsdt_line(" )"); +} + static int basl_fwrite_dsdt(FILE *fp) { int err; err = 0; + dsdt_fp = fp; + dsdt_error = 0; + dsdt_indent_level = 0; + + dsdt_line("/*"); + dsdt_line(" * bhyve DSDT template"); + dsdt_line(" */"); + dsdt_line("DefinitionBlock (\"bhyve_dsdt.aml\", \"DSDT\", 2," + "\"BHYVE \", \"BVDSDT \", 0x00000001)"); + dsdt_line("{"); + dsdt_line(" Name (_S5, Package (0x02)"); + dsdt_line(" {"); + dsdt_line(" 0x05,"); + dsdt_line(" Zero,"); + dsdt_line(" })"); + + pci_write_dsdt(); + + dsdt_line(""); + dsdt_line(" Scope (_SB.PCI0)"); + dsdt_line(" {"); + dsdt_line(" Device (HPET)"); + dsdt_line(" {"); + dsdt_line(" Name (_HID, EISAID(\"PNP0103\"))"); + dsdt_line(" Name (_UID, 0)"); + dsdt_line(" Name (_CRS, ResourceTemplate ()"); + dsdt_line(" {"); + dsdt_indent(4); + dsdt_fixed_mem32(0xFED00000, 0x400); + dsdt_unindent(4); + dsdt_line(" })"); + dsdt_line(" }"); + dsdt_line(" }"); + dsdt_line("}"); - EFPRINTF(fp, "/*\n"); - EFPRINTF(fp, " * bhyve DSDT template\n"); - EFPRINTF(fp, " */\n"); - EFPRINTF(fp, "DefinitionBlock (\"bhyve_dsdt.aml\", \"DSDT\", 2," - "\"BHYVE \", \"BVDSDT \", 0x00000001)\n"); - EFPRINTF(fp, "{\n"); - EFPRINTF(fp, " Name (_S5, Package (0x02)\n"); - EFPRINTF(fp, " {\n"); - EFPRINTF(fp, " 0x05,\n"); - EFPRINTF(fp, " Zero,\n"); - EFPRINTF(fp, " })\n"); - EFPRINTF(fp, " Scope (_SB)\n"); - EFPRINTF(fp, " {\n"); - EFPRINTF(fp, " Device (PCI0)\n"); - EFPRINTF(fp, " {\n"); - EFPRINTF(fp, " Name (_HID, EisaId (\"PNP0A03\"))\n"); - EFPRINTF(fp, " Name (_ADR, Zero)\n"); - EFPRINTF(fp, " Name (_UID, One)\n"); - EFPRINTF(fp, " Name (_CRS, ResourceTemplate ()\n"); - EFPRINTF(fp, " {\n"); - EFPRINTF(fp, " WordBusNumber (ResourceProducer, MinFixed," - "MaxFixed, PosDecode,\n"); - EFPRINTF(fp, " 0x0000, // Granularity\n"); - EFPRINTF(fp, " 0x0000, // Range Minimum\n"); - EFPRINTF(fp, " 0x00FF, // Range Maximum\n"); - EFPRINTF(fp, " 0x0000, // Transl Offset\n"); - EFPRINTF(fp, " 0x0100, // Length\n"); - EFPRINTF(fp, " ,, )\n"); - EFPRINTF(fp, " IO (Decode16,\n"); - EFPRINTF(fp, " 0x0CF8, // Range Minimum\n"); - EFPRINTF(fp, " 0x0CF8, // Range Maximum\n"); - EFPRINTF(fp, " 0x01, // Alignment\n"); - EFPRINTF(fp, " 0x08, // Length\n"); - EFPRINTF(fp, " )\n"); - EFPRINTF(fp, " WordIO (ResourceProducer, MinFixed, MaxFixed," - "PosDecode, EntireRange,\n"); - EFPRINTF(fp, " 0x0000, // Granularity\n"); - EFPRINTF(fp, " 0x0000, // Range Minimum\n"); - EFPRINTF(fp, " 0x0CF7, // Range Maximum\n"); - EFPRINTF(fp, " 0x0000, // Transl Offset\n"); - EFPRINTF(fp, " 0x0CF8, // Length\n"); - EFPRINTF(fp, " ,, , TypeStatic)\n"); - EFPRINTF(fp, " WordIO (ResourceProducer, MinFixed, MaxFixed," - "PosDecode, EntireRange,\n"); - EFPRINTF(fp, " 0x0000, // Granularity\n"); - EFPRINTF(fp, " 0x0D00, // Range Minimum\n"); - EFPRINTF(fp, " 0xFFFF, // Range Maximum\n"); - EFPRINTF(fp, " 0x0000, // Transl Offset\n"); - EFPRINTF(fp, " 0xF300, // Length\n"); - EFPRINTF(fp, " ,, , TypeStatic)\n"); - EFPRINTF(fp, " })\n"); - EFPRINTF(fp, " }\n"); - EFPRINTF(fp, " }\n"); - EFPRINTF(fp, "\n"); - EFPRINTF(fp, " Scope (_SB.PCI0)\n"); - EFPRINTF(fp, " {\n"); - EFPRINTF(fp, " Device (ISA)\n"); - EFPRINTF(fp, " {\n"); - EFPRINTF(fp, " Name (_ADR, 0x00010000)\n"); - EFPRINTF(fp, " OperationRegion (P40C, PCI_Config, 0x60, 0x04)\n"); - EFPRINTF(fp, " }\n"); - - EFPRINTF(fp, " Device (HPET)\n"); - EFPRINTF(fp, " {\n"); - EFPRINTF(fp, " Name (_HID, EISAID(\"PNP0103\"))\n"); - EFPRINTF(fp, " Name (_UID, 0)\n"); - EFPRINTF(fp, " Name (_CRS, ResourceTemplate ()\n"); - EFPRINTF(fp, " {\n"); - EFPRINTF(fp, " DWordMemory (ResourceConsumer, PosDecode, " - "MinFixed, MaxFixed, NonCacheable, ReadWrite,\n"); - EFPRINTF(fp, " 0x00000000,\n"); - EFPRINTF(fp, " 0xFED00000,\n"); - EFPRINTF(fp, " 0xFED003FF,\n"); - EFPRINTF(fp, " 0x00000000,\n"); - EFPRINTF(fp, " 0x00000400\n"); - EFPRINTF(fp, " )\n"); - EFPRINTF(fp, " })\n"); - EFPRINTF(fp, " }\n"); - - EFPRINTF(fp, " }\n"); - EFPRINTF(fp, "\n"); - EFPRINTF(fp, " Scope (_SB.PCI0.ISA)\n"); - EFPRINTF(fp, " {\n"); - EFPRINTF(fp, " Device (RTC)\n"); - EFPRINTF(fp, " {\n"); - EFPRINTF(fp, " Name (_HID, EisaId (\"PNP0B00\"))\n"); - EFPRINTF(fp, " Name (_CRS, ResourceTemplate ()\n"); - EFPRINTF(fp, " {\n"); - EFPRINTF(fp, " IO (Decode16,\n"); - EFPRINTF(fp, " 0x0070, // Range Minimum\n"); - EFPRINTF(fp, " 0x0070, // Range Maximum\n"); - EFPRINTF(fp, " 0x10, // Alignment\n"); - EFPRINTF(fp, " 0x02, // Length\n"); - EFPRINTF(fp, " )\n"); - EFPRINTF(fp, " IRQNoFlags ()\n"); - EFPRINTF(fp, " {8}\n"); - EFPRINTF(fp, " IO (Decode16,\n"); - EFPRINTF(fp, " 0x0072, // Range Minimum\n"); - EFPRINTF(fp, " 0x0072, // Range Maximum\n"); - EFPRINTF(fp, " 0x02, // Alignment\n"); - EFPRINTF(fp, " 0x06, // Length\n"); - EFPRINTF(fp, " )\n"); - EFPRINTF(fp, " })\n"); - EFPRINTF(fp, " }\n"); - EFPRINTF(fp, " }\n"); - EFPRINTF(fp, "}\n"); + if (dsdt_error != 0) + return (dsdt_error); EFFLUSH(fp); Modified: stable/10/usr.sbin/bhyve/acpi.h ============================================================================== --- stable/10/usr.sbin/bhyve/acpi.h Wed Jan 29 13:22:48 2014 (r261264) +++ stable/10/usr.sbin/bhyve/acpi.h Wed Jan 29 13:35:12 2014 (r261265) @@ -43,5 +43,11 @@ struct vmctx; int acpi_build(struct vmctx *ctx, int ncpu); +void dsdt_line(const char *fmt, ...); +void dsdt_fixed_ioport(uint16_t iobase, uint16_t length); +void dsdt_fixed_irq(uint8_t irq); +void dsdt_fixed_mem32(uint32_t base, uint32_t length); +void dsdt_indent(int levels); +void dsdt_unindent(int levels); #endif /* _ACPI_H_ */ Modified: stable/10/usr.sbin/bhyve/atpic.c ============================================================================== --- stable/10/usr.sbin/bhyve/atpic.c Wed Jan 29 13:22:48 2014 (r261264) +++ stable/10/usr.sbin/bhyve/atpic.c Wed Jan 29 13:35:12 2014 (r261265) @@ -35,7 +35,9 @@ __FBSDID("$FreeBSD$"); #include #include +#include "acpi.h" #include "inout.h" +#include "pci_lpc.h" #define IO_ICU1 0x20 #define IO_ICU2 0xA0 @@ -65,3 +67,23 @@ INOUT_PORT(atpic, IO_ICU1, IOPORT_F_INOU INOUT_PORT(atpic, IO_ICU1 + ICU_IMR_OFFSET, IOPORT_F_INOUT, atpic_handler); INOUT_PORT(atpic, IO_ICU2, IOPORT_F_INOUT, atpic_handler); INOUT_PORT(atpic, IO_ICU2 + ICU_IMR_OFFSET, IOPORT_F_INOUT, atpic_handler); + +static void +atpic_dsdt(void) +{ + + dsdt_line(""); + dsdt_line("Device (PIC)"); + dsdt_line("{"); + dsdt_line(" Name (_HID, EisaId (\"PNP0000\"))"); + dsdt_line(" Name (_CRS, ResourceTemplate ()"); + dsdt_line(" {"); + dsdt_indent(2); + dsdt_fixed_ioport(IO_ICU1, 2); + dsdt_fixed_ioport(IO_ICU2, 2); + dsdt_fixed_irq(2); + dsdt_unindent(2); + dsdt_line(" })"); + dsdt_line("}"); +} +LPC_DSDT(atpic_dsdt); Modified: stable/10/usr.sbin/bhyve/elcr.c ============================================================================== --- stable/10/usr.sbin/bhyve/elcr.c Wed Jan 29 13:22:48 2014 (r261264) +++ stable/10/usr.sbin/bhyve/elcr.c Wed Jan 29 13:35:12 2014 (r261265) @@ -32,6 +32,7 @@ __FBSDID("$FreeBSD$"); #include #include "inout.h" +#include "pci_lpc.h" /* * EISA interrupt Level Control Register. @@ -63,3 +64,4 @@ elcr_handler(struct vmctx *ctx, int vcpu } INOUT_PORT(elcr, ELCR_PORT + 0, IOPORT_F_INOUT, elcr_handler); INOUT_PORT(elcr, ELCR_PORT + 1, IOPORT_F_INOUT, elcr_handler); +SYSRES_IO(ELCR_PORT, 2); Modified: stable/10/usr.sbin/bhyve/pci_emul.c ============================================================================== --- stable/10/usr.sbin/bhyve/pci_emul.c Wed Jan 29 13:22:48 2014 (r261264) +++ stable/10/usr.sbin/bhyve/pci_emul.c Wed Jan 29 13:35:12 2014 (r261265) @@ -44,11 +44,13 @@ __FBSDID("$FreeBSD$"); #include #include +#include "acpi.h" #include "bhyverun.h" #include "inout.h" #include "legacy_irq.h" #include "mem.h" #include "pci_emul.h" +#include "pci_lpc.h" #define CONF1_ADDR_PORT 0x0cf8 #define CONF1_DATA_PORT 0x0cfc @@ -93,6 +95,7 @@ static uint64_t pci_emul_membase64; static struct pci_devemu *pci_emul_finddev(char *name); static int pci_emul_devices; +static struct mem_range pci_mem_hole; /* * I/O access @@ -1002,7 +1005,6 @@ pci_emul_fallback_handler(struct vmctx * int init_pci(struct vmctx *ctx) { - struct mem_range memp; struct pci_devemu *pde; struct slotinfo *si; size_t lowmem; @@ -1040,19 +1042,100 @@ init_pci(struct vmctx *ctx) error = vm_get_memory_seg(ctx, 0, &lowmem, NULL); assert(error == 0); - memset(&memp, 0, sizeof(struct mem_range)); - memp.name = "PCI hole"; - memp.flags = MEM_F_RW; - memp.base = lowmem; - memp.size = (4ULL * 1024 * 1024 * 1024) - lowmem; - memp.handler = pci_emul_fallback_handler; + memset(&pci_mem_hole, 0, sizeof(struct mem_range)); + pci_mem_hole.name = "PCI hole"; + pci_mem_hole.flags = MEM_F_RW; + pci_mem_hole.base = lowmem; + pci_mem_hole.size = (4ULL * 1024 * 1024 * 1024) - lowmem; + pci_mem_hole.handler = pci_emul_fallback_handler; - error = register_mem_fallback(&memp); + error = register_mem_fallback(&pci_mem_hole); assert(error == 0); return (0); } +void +pci_write_dsdt(void) +{ + struct pci_devinst *pi; + int slot, func; + + dsdt_indent(1); + dsdt_line("Scope (_SB)"); + dsdt_line("{"); + dsdt_line(" Device (PCI0)"); + dsdt_line(" {"); + dsdt_line(" Name (_HID, EisaId (\"PNP0A03\"))"); + dsdt_line(" Name (_ADR, Zero)"); + dsdt_line(" Name (_CRS, ResourceTemplate ()"); + dsdt_line(" {"); + dsdt_line(" WordBusNumber (ResourceProducer, MinFixed, " + "MaxFixed, PosDecode,"); + dsdt_line(" 0x0000, // Granularity"); + dsdt_line(" 0x0000, // Range Minimum"); + dsdt_line(" 0x00FF, // Range Maximum"); + dsdt_line(" 0x0000, // Translation Offset"); + dsdt_line(" 0x0100, // Length"); + dsdt_line(" ,, )"); + dsdt_indent(3); + dsdt_fixed_ioport(0xCF8, 8); + dsdt_unindent(3); + dsdt_line(" WordIO (ResourceProducer, MinFixed, MaxFixed, " + "PosDecode, EntireRange,"); + dsdt_line(" 0x0000, // Granularity"); + dsdt_line(" 0x0000, // Range Minimum"); + dsdt_line(" 0x0CF7, // Range Maximum"); + dsdt_line(" 0x0000, // Translation Offset"); + dsdt_line(" 0x0CF8, // Length"); + dsdt_line(" ,, , TypeStatic)"); + dsdt_line(" WordIO (ResourceProducer, MinFixed, MaxFixed, " + "PosDecode, EntireRange,"); + dsdt_line(" 0x0000, // Granularity"); + dsdt_line(" 0x0D00, // Range Minimum"); + dsdt_line(" 0xFFFF, // Range Maximum"); + dsdt_line(" 0x0000, // Translation Offset"); + dsdt_line(" 0xF300, // Length"); + dsdt_line(" ,, , TypeStatic)"); + dsdt_line(" DWordMemory (ResourceProducer, PosDecode, " + "MinFixed, MaxFixed, NonCacheable, ReadWrite,"); + dsdt_line(" 0x00000000, // Granularity"); + dsdt_line(" 0x%08lX, // Range Minimum\n", + pci_mem_hole.base); + dsdt_line(" 0x%08X, // Range Maximum\n", + PCI_EMUL_MEMLIMIT32 - 1); + dsdt_line(" 0x00000000, // Translation Offset"); + dsdt_line(" 0x%08lX, // Length\n", + PCI_EMUL_MEMLIMIT32 - pci_mem_hole.base); + dsdt_line(" ,, , AddressRangeMemory, TypeStatic)"); + dsdt_line(" QWordMemory (ResourceProducer, PosDecode, " + "MinFixed, MaxFixed, NonCacheable, ReadWrite,"); + dsdt_line(" 0x0000000000000000, // Granularity"); + dsdt_line(" 0x%016lX, // Range Minimum\n", + PCI_EMUL_MEMBASE64); + dsdt_line(" 0x%016lX, // Range Maximum\n", + PCI_EMUL_MEMLIMIT64 - 1); + dsdt_line(" 0x0000000000000000, // Translation Offset"); + dsdt_line(" 0x%016lX, // Length\n", + PCI_EMUL_MEMLIMIT64 - PCI_EMUL_MEMBASE64); + dsdt_line(" ,, , AddressRangeMemory, TypeStatic)"); + dsdt_line(" })"); + + dsdt_indent(2); + for (slot = 0; slot < MAXSLOTS; slot++) { + for (func = 0; func < MAXFUNCS; func++) { + pi = pci_slotinfo[slot][func].si_devi; + if (pi != NULL && pi->pi_d->pe_write_dsdt != NULL) + pi->pi_d->pe_write_dsdt(pi); + } + } + dsdt_unindent(2); + + dsdt_line(" }"); + dsdt_line("}"); + dsdt_unindent(1); +} + int pci_msi_enabled(struct pci_devinst *pi) { @@ -1440,6 +1523,7 @@ pci_irq_port_handler(struct vmctx *ctx, } INOUT_PORT(pci_irq, 0xC00, IOPORT_F_OUT, pci_irq_port_handler); INOUT_PORT(pci_irq, 0xC01, IOPORT_F_OUT, pci_irq_port_handler); +SYSRES_IO(0xC00, 2); #define PCI_EMUL_TEST #ifdef PCI_EMUL_TEST Modified: stable/10/usr.sbin/bhyve/pci_emul.h ============================================================================== --- stable/10/usr.sbin/bhyve/pci_emul.h Wed Jan 29 13:22:48 2014 (r261264) +++ stable/10/usr.sbin/bhyve/pci_emul.h Wed Jan 29 13:35:12 2014 (r261265) @@ -51,6 +51,9 @@ struct pci_devemu { int (*pe_init)(struct vmctx *, struct pci_devinst *, char *opts); + /* ACPI DSDT enumeration */ + void (*pe_write_dsdt)(struct pci_devinst *); + /* config space read/write callbacks */ int (*pe_cfgwrite)(struct vmctx *ctx, int vcpu, struct pci_devinst *pi, int offset, @@ -213,6 +216,7 @@ int pci_emul_add_msixcap(struct pci_devi int pci_emul_msix_twrite(struct pci_devinst *pi, uint64_t offset, int size, uint64_t value); uint64_t pci_emul_msix_tread(struct pci_devinst *pi, uint64_t offset, int size); +void pci_write_dsdt(void); static __inline void pci_set_cfgdata8(struct pci_devinst *pi, int offset, uint8_t val) Modified: stable/10/usr.sbin/bhyve/pci_lpc.c ============================================================================== --- stable/10/usr.sbin/bhyve/pci_lpc.c Wed Jan 29 13:22:48 2014 (r261264) +++ stable/10/usr.sbin/bhyve/pci_lpc.c Wed Jan 29 13:35:12 2014 (r261265) @@ -40,10 +40,15 @@ __FBSDID("$FreeBSD$"); #include +#include "acpi.h" #include "inout.h" #include "pci_emul.h" +#include "pci_lpc.h" #include "uart_emul.h" +SET_DECLARE(lpc_dsdt_set, struct lpc_dsdt); +SET_DECLARE(lpc_sysres_set, struct lpc_sysres); + static struct pci_devinst *lpc_bridge; #define LPC_UART_NUM 2 @@ -52,6 +57,7 @@ static struct lpc_uart_softc { const char *opts; int iobase; int irq; + int enabled; } lpc_uart_softc[LPC_UART_NUM]; static const char *lpc_uart_names[LPC_UART_NUM] = { "COM1", "COM2" }; @@ -164,12 +170,92 @@ lpc_init(void) error = register_inout(&iop); assert(error == 0); + sc->enabled = 1; } return (0); } static void +pci_lpc_write_dsdt(struct pci_devinst *pi) +{ + struct lpc_dsdt **ldpp, *ldp; + + dsdt_line(""); + dsdt_line("Device (ISA)"); + dsdt_line("{"); + dsdt_line(" Name (_ADR, 0x%04X%04X)", pi->pi_slot, pi->pi_func); + dsdt_line(" OperationRegion (P40C, PCI_Config, 0x60, 0x04)"); + + dsdt_indent(1); + SET_FOREACH(ldpp, lpc_dsdt_set) { + ldp = *ldpp; + ldp->handler(); + } + dsdt_unindent(1); + + dsdt_line("}"); +} + +static void +pci_lpc_sysres_dsdt(void) +{ + struct lpc_sysres **lspp, *lsp; + + dsdt_line(""); + dsdt_line("Device (SIO)"); + dsdt_line("{"); + dsdt_line(" Name (_HID, EisaId (\"PNP0C02\"))"); + dsdt_line(" Name (_CRS, ResourceTemplate ()"); + dsdt_line(" {"); + + dsdt_indent(2); + SET_FOREACH(lspp, lpc_sysres_set) { + lsp = *lspp; + switch (lsp->type) { + case LPC_SYSRES_IO: + dsdt_fixed_ioport(lsp->base, lsp->length); + break; + case LPC_SYSRES_MEM: + dsdt_fixed_mem32(lsp->base, lsp->length); + break; + } + } + dsdt_unindent(2); + + dsdt_line(" })"); + dsdt_line("}"); +} +LPC_DSDT(pci_lpc_sysres_dsdt); + +static void +pci_lpc_uart_dsdt(void) +{ + struct lpc_uart_softc *sc; + int unit; + + for (unit = 0; unit < LPC_UART_NUM; unit++) { + sc = &lpc_uart_softc[unit]; + if (!sc->enabled) + continue; + dsdt_line(""); + dsdt_line("Device (%s)", lpc_uart_names[unit]); + dsdt_line("{"); + dsdt_line(" Name (_HID, EisaId (\"PNP0501\"))"); + dsdt_line(" Name (_UID, %d)", unit + 1); + dsdt_line(" Name (_CRS, ResourceTemplate ()"); + dsdt_line(" {"); + dsdt_indent(2); + dsdt_fixed_ioport(sc->iobase, UART_IO_BAR_SIZE); + dsdt_fixed_irq(sc->irq); + dsdt_unindent(2); + dsdt_line(" })"); + dsdt_line("}"); + } +} +LPC_DSDT(pci_lpc_uart_dsdt); + +static void pci_lpc_write(struct vmctx *ctx, int vcpu, struct pci_devinst *pi, int baridx, uint64_t offset, int size, uint64_t value) { @@ -211,6 +297,7 @@ pci_lpc_init(struct vmctx *ctx, struct p struct pci_devemu pci_de_lpc = { .pe_emu = "lpc", .pe_init = pci_lpc_init, + .pe_write_dsdt = pci_lpc_write_dsdt, .pe_barwrite = pci_lpc_write, .pe_barread = pci_lpc_read }; Modified: stable/10/usr.sbin/bhyve/pci_lpc.h ============================================================================== --- stable/10/usr.sbin/bhyve/pci_lpc.h Wed Jan 29 13:22:48 2014 (r261264) +++ stable/10/usr.sbin/bhyve/pci_lpc.h Wed Jan 29 13:35:12 2014 (r261265) @@ -29,6 +29,42 @@ #ifndef _LPC_H_ #define _LPC_H_ +#include + +typedef void (*lpc_write_dsdt_t)(void); + +struct lpc_dsdt { + lpc_write_dsdt_t handler; +}; + +#define LPC_DSDT(handler) \ + static struct lpc_dsdt __CONCAT(__lpc_dsdt, __LINE__) = { \ + (handler), \ + }; \ + DATA_SET(lpc_dsdt_set, __CONCAT(__lpc_dsdt, __LINE__)) + +enum lpc_sysres_type { + LPC_SYSRES_IO, + LPC_SYSRES_MEM +}; + +struct lpc_sysres { + enum lpc_sysres_type type; + uint32_t base; + uint32_t length; +}; + +#define LPC_SYSRES(type, base, length) \ + static struct lpc_sysres __CONCAT(__lpc_sysres, __LINE__) = { \ + (type), \ + (base), \ + (length) \ + }; \ + DATA_SET(lpc_sysres_set, __CONCAT(__lpc_sysres, __LINE__)) + +#define SYSRES_IO(base, length) LPC_SYSRES(LPC_SYSRES_IO, base, length) +#define SYSRES_MEM(base, length) LPC_SYSRES(LPC_SYSRES_MEM, base, length) + int lpc_device_parse(const char *opt); #endif Modified: stable/10/usr.sbin/bhyve/pit_8254.c ============================================================================== --- stable/10/usr.sbin/bhyve/pit_8254.c Wed Jan 29 13:22:48 2014 (r261264) +++ stable/10/usr.sbin/bhyve/pit_8254.c Wed Jan 29 13:35:12 2014 (r261265) @@ -42,9 +42,11 @@ __FBSDID("$FreeBSD$"); #include +#include "acpi.h" #include "bhyverun.h" #include "inout.h" #include "mevent.h" +#include "pci_lpc.h" #include "pit_8254.h" #define TIMER_SEL_MASK 0xc0 @@ -268,3 +270,22 @@ INOUT_PORT(8254, TIMER_MODE, IOPORT_F_OU INOUT_PORT(8254, TIMER_CNTR0, IOPORT_F_INOUT, pit_8254_handler); INOUT_PORT(8254, TIMER_CNTR1, IOPORT_F_INOUT, pit_8254_handler); INOUT_PORT(8254, TIMER_CNTR2, IOPORT_F_INOUT, pit_8254_handler); + +static void +pit_dsdt(void) +{ + + dsdt_line(""); + dsdt_line("Device (TIMR)"); + dsdt_line("{"); + dsdt_line(" Name (_HID, EisaId (\"PNP0100\"))"); + dsdt_line(" Name (_CRS, ResourceTemplate ()"); + dsdt_line(" {"); + dsdt_indent(2); + dsdt_fixed_ioport(IO_TIMER1, 4); + dsdt_fixed_irq(0); + dsdt_unindent(2); + dsdt_line(" })"); + dsdt_line("}"); +} +LPC_DSDT(pit_dsdt); Modified: stable/10/usr.sbin/bhyve/pm.c ============================================================================== --- stable/10/usr.sbin/bhyve/pm.c Wed Jan 29 13:22:48 2014 (r261264) +++ stable/10/usr.sbin/bhyve/pm.c Wed Jan 29 13:35:12 2014 (r261265) @@ -39,6 +39,7 @@ __FBSDID("$FreeBSD$"); #include "acpi.h" #include "inout.h" #include "mevent.h" +#include "pci_lpc.h" static pthread_mutex_t pm_lock = PTHREAD_MUTEX_INITIALIZER; static struct mevent *power_button; @@ -248,6 +249,7 @@ pm1_control_handler(struct vmctx *ctx, i return (0); } INOUT_PORT(pm1_control, PM1A_CNT_ADDR, IOPORT_F_INOUT, pm1_control_handler); +SYSRES_IO(PM1A_EVT_ADDR, 8); /* * ACPI SMI Command Register @@ -286,3 +288,4 @@ smi_cmd_handler(struct vmctx *ctx, int v return (0); } INOUT_PORT(smi_cmd, SMI_CMD, IOPORT_F_OUT, smi_cmd_handler); +SYSRES_IO(SMI_CMD, 1); Modified: stable/10/usr.sbin/bhyve/post.c ============================================================================== --- stable/10/usr.sbin/bhyve/post.c Wed Jan 29 13:22:48 2014 (r261264) +++ stable/10/usr.sbin/bhyve/post.c Wed Jan 29 13:35:12 2014 (r261265) @@ -34,6 +34,7 @@ __FBSDID("$FreeBSD$"); #include #include "inout.h" +#include "pci_lpc.h" static int post_data_handler(struct vmctx *ctx, int vcpu, int in, int port, int bytes, @@ -49,3 +50,4 @@ post_data_handler(struct vmctx *ctx, int } INOUT_PORT(post, 0x84, IOPORT_F_IN, post_data_handler); +SYSRES_IO(0x84, 1); Modified: stable/10/usr.sbin/bhyve/rtc.c ============================================================================== --- stable/10/usr.sbin/bhyve/rtc.c Wed Jan 29 13:22:48 2014 (r261264) +++ stable/10/usr.sbin/bhyve/rtc.c Wed Jan 29 13:35:12 2014 (r261265) @@ -40,7 +40,9 @@ __FBSDID("$FreeBSD$"); #include #include +#include "acpi.h" #include "inout.h" +#include "pci_lpc.h" #include "rtc.h" #define IO_RTC 0x70 @@ -358,3 +360,24 @@ rtc_init(struct vmctx *ctx) INOUT_PORT(rtc, IO_RTC, IOPORT_F_INOUT, rtc_addr_handler); INOUT_PORT(rtc, IO_RTC + 1, IOPORT_F_INOUT, rtc_data_handler); + +static void +rtc_dsdt(void) +{ + + dsdt_line(""); + dsdt_line("Device (RTC)"); + dsdt_line("{"); + dsdt_line(" Name (_HID, EisaId (\"PNP0B00\"))"); + dsdt_line(" Name (_CRS, ResourceTemplate ()"); + dsdt_line(" {"); + dsdt_indent(2); + dsdt_fixed_ioport(IO_RTC, 2); + dsdt_fixed_irq(8); + dsdt_unindent(2); + dsdt_line(" })"); + dsdt_line("}"); +} +LPC_DSDT(rtc_dsdt); + +SYSRES_IO(0x72, 6); From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 13:41:14 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8B129D7C; Wed, 29 Jan 2014 13:41:14 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 760D91957; Wed, 29 Jan 2014 13:41:14 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TDfEMd068215; Wed, 29 Jan 2014 13:41:14 GMT (envelope-from jamie@svn.freebsd.org) Received: (from jamie@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TDfDcB068211; Wed, 29 Jan 2014 13:41:13 GMT (envelope-from jamie@svn.freebsd.org) Message-Id: <201401291341.s0TDfDcB068211@svn.freebsd.org> From: Jamie Gritton Date: Wed, 29 Jan 2014 13:41:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261266 - in head: sys/dev/drm sys/kern sys/sys usr.sbin/jail X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 13:41:14 -0000 Author: jamie Date: Wed Jan 29 13:41:13 2014 New Revision: 261266 URL: http://svnweb.freebsd.org/changeset/base/261266 Log: Add a jail parameter, allow.kmem, which lets jailed processes access /dev/kmem and related devices (i.e. grants PRIV_IO and PRIV_KMEM_WRITE). This in conjunction with changing the drm driver's permission check from PRIV_DRIVER to PRIV_KMEM_WRITE will allow a jailed Xorg server. Submitted by: netchild MFC after: 1 week Modified: head/sys/dev/drm/drmP.h head/sys/kern/kern_jail.c head/sys/sys/jail.h head/usr.sbin/jail/jail.8 Modified: head/sys/dev/drm/drmP.h ============================================================================== --- head/sys/dev/drm/drmP.h Wed Jan 29 13:35:12 2014 (r261265) +++ head/sys/dev/drm/drmP.h Wed Jan 29 13:41:13 2014 (r261266) @@ -227,7 +227,9 @@ enum { #define PAGE_ALIGN(addr) round_page(addr) /* DRM_SUSER returns true if the user is superuser */ -#if __FreeBSD_version >= 700000 +#if __FreeBSD_version >= 1000000 +#define DRM_SUSER(p) (priv_check(p, PRIV_KMEM_WRITE) == 0) +#elif __FreeBSD_version >= 700000 #define DRM_SUSER(p) (priv_check(p, PRIV_DRIVER) == 0) #else #define DRM_SUSER(p) (suser(p) == 0) Modified: head/sys/kern/kern_jail.c ============================================================================== --- head/sys/kern/kern_jail.c Wed Jan 29 13:35:12 2014 (r261265) +++ head/sys/kern/kern_jail.c Wed Jan 29 13:41:13 2014 (r261266) @@ -208,6 +208,7 @@ static char *pr_allow_names[] = { "allow.mount.zfs", "allow.mount.procfs", "allow.mount.tmpfs", + "allow.kmem", }; const size_t pr_allow_names_size = sizeof(pr_allow_names); @@ -224,6 +225,7 @@ static char *pr_allow_nonames[] = { "allow.mount.nozfs", "allow.mount.noprocfs", "allow.mount.notmpfs", + "allow.nokmem", }; const size_t pr_allow_nonames_size = sizeof(pr_allow_nonames); @@ -3951,6 +3953,27 @@ prison_priv_check(struct ucred *cred, in return (0); /* + * Allow access to /dev/io in a jail if the non-jailed admin + * requests this and if /dev/io exists in the jail. This + * allows Xorg to probe a card. + */ + case PRIV_IO: + if (cred->cr_prison->pr_allow & PR_ALLOW_KMEM) + return (0); + else + return (EPERM); + + /* + * Allow low level access to KMEM-like devices (e.g. to + * allow Xorg to use DRI). + */ + case PRIV_KMEM_WRITE: + if (cred->cr_prison->pr_allow & PR_ALLOW_KMEM) + return (0); + else + return (EPERM); + + /* * Allow jailed root to set loginclass. */ case PRIV_PROC_SETLOGINCLASS: @@ -4384,6 +4407,8 @@ SYSCTL_JAIL_PARAM(_allow, quotas, CTLTYP "B", "Jail may set file quotas"); SYSCTL_JAIL_PARAM(_allow, socket_af, CTLTYPE_INT | CTLFLAG_RW, "B", "Jail may create sockets other than just UNIX/IPv4/IPv6/route"); +SYSCTL_JAIL_PARAM(_allow, kmem, CTLTYPE_INT | CTLFLAG_RW, + "B", "Jail may access kmem-like devices (io, dri) if they exist"); SYSCTL_JAIL_PARAM_SUBNODE(allow, mount, "Jail mount/unmount permission flags"); SYSCTL_JAIL_PARAM(_allow_mount, , CTLTYPE_INT | CTLFLAG_RW, Modified: head/sys/sys/jail.h ============================================================================== --- head/sys/sys/jail.h Wed Jan 29 13:35:12 2014 (r261265) +++ head/sys/sys/jail.h Wed Jan 29 13:41:13 2014 (r261266) @@ -228,7 +228,8 @@ struct prison_racct { #define PR_ALLOW_MOUNT_ZFS 0x0200 #define PR_ALLOW_MOUNT_PROCFS 0x0400 #define PR_ALLOW_MOUNT_TMPFS 0x0800 -#define PR_ALLOW_ALL 0x0fff +#define PR_ALLOW_KMEM 0x1000 +#define PR_ALLOW_ALL 0x1fff /* * OSD methods Modified: head/usr.sbin/jail/jail.8 ============================================================================== --- head/usr.sbin/jail/jail.8 Wed Jan 29 13:35:12 2014 (r261265) +++ head/usr.sbin/jail/jail.8 Wed Jan 29 13:41:13 2014 (r261266) @@ -573,6 +573,17 @@ with non-jailed parts of the system. Sockets within a jail are normally restricted to IPv4, IPv6, local (UNIX), and route. This allows access to other protocol stacks that have not had jail functionality added to them. +.It Va allow.kmem +Jailed processes may access +.Pa /dev/kmem +and similar devices (e.g. io, dri) if they have sufficient permission +(via the usual file permissions). +Note that the device files must exist within the jail for this parameter +to be of any use; +the default devfs ruleset for jails does not include any such devices. +Giving a jail access to kernel memory obviates much of the security that +jails offer, but can still be useful for other purposes. +For example, this would allow the Xorg server to run inside a jail. .El .El .Pp From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 13:43:47 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B3A0011C; Wed, 29 Jan 2014 13:43:47 +0000 (UTC) Received: from cell.glebius.int.ru (glebius.int.ru [81.19.69.10]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 35DA71981; Wed, 29 Jan 2014 13:43:46 +0000 (UTC) Received: from cell.glebius.int.ru (localhost [127.0.0.1]) by cell.glebius.int.ru (8.14.7/8.14.7) with ESMTP id s0TDhic0026742 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=NO); Wed, 29 Jan 2014 17:43:44 +0400 (MSK) (envelope-from glebius@FreeBSD.org) Received: (from glebius@localhost) by cell.glebius.int.ru (8.14.7/8.14.7/Submit) id s0TDhiGr026741; Wed, 29 Jan 2014 17:43:44 +0400 (MSK) (envelope-from glebius@FreeBSD.org) X-Authentication-Warning: cell.glebius.int.ru: glebius set sender to glebius@FreeBSD.org using -f Date: Wed, 29 Jan 2014 17:43:44 +0400 From: Gleb Smirnoff To: Jamie Gritton , netchild@FreeBSD.org Subject: Re: svn commit: r261266 - in head: sys/dev/drm sys/kern sys/sys usr.sbin/jail Message-ID: <20140129134344.GW66160@FreeBSD.org> References: <201401291341.s0TDfDcB068211@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <201401291341.s0TDfDcB068211@svn.freebsd.org> User-Agent: Mutt/1.5.22 (2013-10-16) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 13:43:47 -0000 On Wed, Jan 29, 2014 at 01:41:13PM +0000, Jamie Gritton wrote: J> Author: jamie J> Date: Wed Jan 29 13:41:13 2014 J> New Revision: 261266 J> URL: http://svnweb.freebsd.org/changeset/base/261266 J> J> Log: J> Add a jail parameter, allow.kmem, which lets jailed processes access J> /dev/kmem and related devices (i.e. grants PRIV_IO and PRIV_KMEM_WRITE). J> This in conjunction with changing the drm driver's permission check from J> PRIV_DRIVER to PRIV_KMEM_WRITE will allow a jailed Xorg server. J> J> Submitted by: netchild Doesn't this allow to easily unjail self? :) -- Totus tuus, Glebius. From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 13:54:06 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3C8C5547; Wed, 29 Jan 2014 13:54:06 +0000 (UTC) Received: from m2.gritton.org (gritton.org [199.192.164.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 167721AA5; Wed, 29 Jan 2014 13:54:05 +0000 (UTC) Received: from [192.168.0.34] (c-50-168-192-61.hsd1.ut.comcast.net [50.168.192.61]) (authenticated bits=0) by m2.gritton.org (8.14.7/8.14.7) with ESMTP id s0TDn9li028033; Wed, 29 Jan 2014 06:49:09 -0700 (MST) (envelope-from jamie@freebsd.org) Message-ID: <52E906CD.9050202@freebsd.org> Date: Wed, 29 Jan 2014 06:49:01 -0700 From: James Gritton User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Gleb Smirnoff , netchild@FreeBSD.org Subject: Re: svn commit: r261266 - in head: sys/dev/drm sys/kern sys/sys usr.sbin/jail References: <201401291341.s0TDfDcB068211@svn.freebsd.org> <20140129134344.GW66160@FreeBSD.org> In-Reply-To: <20140129134344.GW66160@FreeBSD.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 13:54:06 -0000 It does. I included a warning in jail.8 that this will pretty much undo jail security. There are still reasons some may want to do this, but it's definitely not for everyone or even most people. - Jamie On 1/29/2014 6:43 AM, Gleb Smirnoff wrote: > On Wed, Jan 29, 2014 at 01:41:13PM +0000, Jamie Gritton wrote: > J> Author: jamie > J> Date: Wed Jan 29 13:41:13 2014 > J> New Revision: 261266 > J> URL: http://svnweb.freebsd.org/changeset/base/261266 > J> > J> Log: > J> Add a jail parameter, allow.kmem, which lets jailed processes access > J> /dev/kmem and related devices (i.e. grants PRIV_IO and PRIV_KMEM_WRITE). > J> This in conjunction with changing the drm driver's permission check from > J> PRIV_DRIVER to PRIV_KMEM_WRITE will allow a jailed Xorg server. > J> > J> Submitted by: netchild > > Doesn't this allow to easily unjail self? :) From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 14:14:10 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 84303CE1; Wed, 29 Jan 2014 14:14:10 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6F58A1D88; Wed, 29 Jan 2014 14:14:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TEEAT0081635; Wed, 29 Jan 2014 14:14:10 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TEEAjF081634; Wed, 29 Jan 2014 14:14:10 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201401291414.s0TEEAjF081634@svn.freebsd.org> From: Sergey Kandaurov Date: Wed, 29 Jan 2014 14:14:10 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261267 - head/gnu/usr.bin/groff/tmac X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 14:14:10 -0000 Author: pluknet Date: Wed Jan 29 14:14:09 2014 New Revision: 261267 URL: http://svnweb.freebsd.org/changeset/base/261267 Log: Add libexecinfo. MFC after: 3 days Modified: head/gnu/usr.bin/groff/tmac/mdoc.local Modified: head/gnu/usr.bin/groff/tmac/mdoc.local ============================================================================== --- head/gnu/usr.bin/groff/tmac/mdoc.local Wed Jan 29 13:41:13 2014 (r261266) +++ head/gnu/usr.bin/groff/tmac/mdoc.local Wed Jan 29 14:14:09 2014 (r261267) @@ -37,6 +37,7 @@ .ds doc-str-Lb-libedit Line Editor and History Library (libedit, \-ledit) .ds doc-str-Lb-libefi EFI Runtime Services Library (libefi, \-lefi) .ds doc-str-Lb-libelf ELF Parsing Library (libelf, \-lelf) +.ds doc-str-Lb-libexecinfo Backtrace Access Library (libexecinfo, \-lexecinfo) .ds doc-str-Lb-libfetch File Transfer Library (libfetch, \-lfetch) .ds doc-str-Lb-libpmc Performance Monitoring Counters Interface Library (libpmc, \-lpmc) .ds doc-str-Lb-libproc Processor Monitoring and Analysis Library (libproc, \-lproc) From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 14:56:52 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2DB25BB4; Wed, 29 Jan 2014 14:56:52 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 17B261260; Wed, 29 Jan 2014 14:56:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TEuquX097315; Wed, 29 Jan 2014 14:56:52 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TEum0D097293; Wed, 29 Jan 2014 14:56:48 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401291456.s0TEum0D097293@svn.freebsd.org> From: John Baldwin Date: Wed, 29 Jan 2014 14:56:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261268 - in head: lib/libvmmapi sys/amd64/include sys/amd64/vmm usr.sbin/bhyve X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 14:56:52 -0000 Author: jhb Date: Wed Jan 29 14:56:48 2014 New Revision: 261268 URL: http://svnweb.freebsd.org/changeset/base/261268 Log: Enhance the support for PCI legacy INTx interrupts and enable them in the virtio backends. - Add a new ioctl to export the count of pins on the I/O APIC from vmm to the hypervisor. - Use pins on the I/O APIC >= 16 for PCI interrupts leaving 0-15 for ISA interrupts. - Populate the MP Table with I/O interrupt entries for any PCI INTx interrupts. - Create a _PRT table under the PCI root bridge in ACPI to route any PCI INTx interrupts appropriately. - Track which INTx interrupts are in use per-slot so that functions that share a slot attempt to distribute their INTx interrupts across the four available pins. - Implicitly mask INTx interrupts if either MSI or MSI-X is enabled and when the INTx DIS bit is set in a function's PCI command register. Either assert or deassert the associated I/O APIC pin when the state of one of those conditions changes. - Add INTx support to the virtio backends. - Always advertise the MSI capability in the virtio backends. Submitted by: neel (7) Reviewed by: neel MFC after: 2 weeks Added: head/usr.sbin/bhyve/ioapic.c (contents, props changed) head/usr.sbin/bhyve/ioapic.h (contents, props changed) Deleted: head/usr.sbin/bhyve/legacy_irq.c head/usr.sbin/bhyve/legacy_irq.h Modified: head/lib/libvmmapi/vmmapi.c head/lib/libvmmapi/vmmapi.h head/sys/amd64/include/vmm_dev.h head/sys/amd64/vmm/vmm_dev.c head/usr.sbin/bhyve/Makefile head/usr.sbin/bhyve/bhyverun.c head/usr.sbin/bhyve/mptbl.c head/usr.sbin/bhyve/pci_emul.c head/usr.sbin/bhyve/pci_emul.h head/usr.sbin/bhyve/pci_uart.c head/usr.sbin/bhyve/pci_virtio_block.c head/usr.sbin/bhyve/pci_virtio_net.c head/usr.sbin/bhyve/virtio.c head/usr.sbin/bhyve/virtio.h Modified: head/lib/libvmmapi/vmmapi.c ============================================================================== --- head/lib/libvmmapi/vmmapi.c Wed Jan 29 14:14:09 2014 (r261267) +++ head/lib/libvmmapi/vmmapi.c Wed Jan 29 14:56:48 2014 (r261268) @@ -454,6 +454,13 @@ vm_ioapic_pulse_irq(struct vmctx *ctx, i } int +vm_ioapic_pincount(struct vmctx *ctx, int *pincount) +{ + + return (ioctl(ctx->fd, VM_IOAPIC_PINCOUNT, pincount)); +} + +int vm_inject_nmi(struct vmctx *ctx, int vcpu) { struct vm_nmi vmnmi; Modified: head/lib/libvmmapi/vmmapi.h ============================================================================== --- head/lib/libvmmapi/vmmapi.h Wed Jan 29 14:14:09 2014 (r261267) +++ head/lib/libvmmapi/vmmapi.h Wed Jan 29 14:56:48 2014 (r261268) @@ -72,6 +72,7 @@ int vm_lapic_msi(struct vmctx *ctx, uint int vm_ioapic_assert_irq(struct vmctx *ctx, int irq); int vm_ioapic_deassert_irq(struct vmctx *ctx, int irq); int vm_ioapic_pulse_irq(struct vmctx *ctx, int irq); +int vm_ioapic_pincount(struct vmctx *ctx, int *pincount); int vm_inject_nmi(struct vmctx *ctx, int vcpu); int vm_capability_name2type(const char *capname); const char *vm_capability_type2name(int type); Modified: head/sys/amd64/include/vmm_dev.h ============================================================================== --- head/sys/amd64/include/vmm_dev.h Wed Jan 29 14:14:09 2014 (r261267) +++ head/sys/amd64/include/vmm_dev.h Wed Jan 29 14:56:48 2014 (r261268) @@ -181,7 +181,8 @@ enum { IOCNUM_IOAPIC_DEASSERT_IRQ = 34, IOCNUM_IOAPIC_PULSE_IRQ = 35, IOCNUM_LAPIC_MSI = 36, - IOCNUM_LAPIC_LOCAL_IRQ = 37, + IOCNUM_LAPIC_LOCAL_IRQ = 37, + IOCNUM_IOAPIC_PINCOUNT = 38, /* PCI pass-thru */ IOCNUM_BIND_PPTDEV = 40, @@ -228,6 +229,8 @@ enum { _IOW('v', IOCNUM_IOAPIC_DEASSERT_IRQ, struct vm_ioapic_irq) #define VM_IOAPIC_PULSE_IRQ \ _IOW('v', IOCNUM_IOAPIC_PULSE_IRQ, struct vm_ioapic_irq) +#define VM_IOAPIC_PINCOUNT \ + _IOR('v', IOCNUM_IOAPIC_PINCOUNT, int) #define VM_SET_CAPABILITY \ _IOW('v', IOCNUM_SET_CAPABILITY, struct vm_capability) #define VM_GET_CAPABILITY \ Modified: head/sys/amd64/vmm/vmm_dev.c ============================================================================== --- head/sys/amd64/vmm/vmm_dev.c Wed Jan 29 14:14:09 2014 (r261267) +++ head/sys/amd64/vmm/vmm_dev.c Wed Jan 29 14:56:48 2014 (r261268) @@ -318,6 +318,9 @@ vmmdev_ioctl(struct cdev *cdev, u_long c ioapic_irq = (struct vm_ioapic_irq *)data; error = vioapic_pulse_irq(sc->vm, ioapic_irq->irq); break; + case VM_IOAPIC_PINCOUNT: + *(int *)data = vioapic_pincount(sc->vm); + break; case VM_MAP_MEMORY: seg = (struct vm_memory_segment *)data; error = vm_malloc(sc->vm, seg->gpa, seg->len); Modified: head/usr.sbin/bhyve/Makefile ============================================================================== --- head/usr.sbin/bhyve/Makefile Wed Jan 29 14:14:09 2014 (r261267) +++ head/usr.sbin/bhyve/Makefile Wed Jan 29 14:56:48 2014 (r261268) @@ -17,7 +17,7 @@ SRCS= \ dbgport.c \ elcr.c \ inout.c \ - legacy_irq.c \ + ioapic.c \ mem.c \ mevent.c \ mptbl.c \ Modified: head/usr.sbin/bhyve/bhyverun.c ============================================================================== --- head/usr.sbin/bhyve/bhyverun.c Wed Jan 29 14:14:09 2014 (r261267) +++ head/usr.sbin/bhyve/bhyverun.c Wed Jan 29 14:56:48 2014 (r261268) @@ -55,7 +55,7 @@ __FBSDID("$FreeBSD$"); #include "acpi.h" #include "inout.h" #include "dbgport.h" -#include "legacy_irq.h" +#include "ioapic.h" #include "mem.h" #include "mevent.h" #include "mptbl.h" @@ -695,7 +695,7 @@ main(int argc, char *argv[]) init_mem(); init_inout(); - legacy_irq_init(); + ioapic_init(ctx); rtc_init(ctx); Added: head/usr.sbin/bhyve/ioapic.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.sbin/bhyve/ioapic.c Wed Jan 29 14:56:48 2014 (r261268) @@ -0,0 +1,74 @@ +/*- + * Copyright (c) 2014 Advanced Computing Technologies LLC + * Written by: John H. Baldwin + * All rights reserved. + * + * 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. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. + */ + +#include +__FBSDID("$FreeBSD$"); + +#include + +#include +#include + +#include "ioapic.h" + +/* + * Assign PCI INTx interrupts to I/O APIC pins in a round-robin + * fashion. Note that we have no idea what the HPET is using, but the + * HPET is also programmable whereas this is intended for hardwired + * PCI interrupts. + * + * This assumes a single I/O APIC where pins >= 16 are permitted for + * PCI devices. + */ +static int pci_pins; + +void +ioapic_init(struct vmctx *ctx) +{ + + if (vm_ioapic_pincount(ctx, &pci_pins) < 0) { + pci_pins = 0; + return; + } + + /* Ignore the first 16 pins. */ + if (pci_pins <= 16) { + pci_pins = 0; + return; + } + pci_pins -= 16; +} + +int +ioapic_pci_alloc_irq(void) +{ + static int last_pin; + + if (pci_pins == 0) + return (-1); + return (16 + (last_pin++ % pci_pins)); +} Added: head/usr.sbin/bhyve/ioapic.h ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/usr.sbin/bhyve/ioapic.h Wed Jan 29 14:56:48 2014 (r261268) @@ -0,0 +1,39 @@ +/*- + * Copyright (c) 2014 Advanced Computing Technologies LLC + * Written by: John H. Baldwin + * All rights reserved. + * + * 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. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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$ + */ + +#ifndef _IOAPIC_H_ +#define _IOAPIC_H_ + +/* + * Allocate a PCI IRQ from the I/O APIC. + */ +void ioapic_init(struct vmctx *ctx); +int ioapic_pci_alloc_irq(void); + +#endif Modified: head/usr.sbin/bhyve/mptbl.c ============================================================================== --- head/usr.sbin/bhyve/mptbl.c Wed Jan 29 14:14:09 2014 (r261267) +++ head/usr.sbin/bhyve/mptbl.c Wed Jan 29 14:56:48 2014 (r261268) @@ -39,6 +39,7 @@ __FBSDID("$FreeBSD$"); #include "acpi.h" #include "bhyverun.h" #include "mptbl.h" +#include "pci_emul.h" #define MPTABLE_BASE 0xF0000 @@ -75,9 +76,6 @@ __FBSDID("$FreeBSD$"); /* Number of local intr entries */ #define MPEII_NUM_LOCAL_IRQ 2 -/* Number of i/o intr entries */ -#define MPEII_MAX_IRQ 24 - /* Bus entry defines */ #define MPE_NUM_BUSES 2 #define MPE_BUSNAME_LEN 6 @@ -195,8 +193,42 @@ mpt_build_ioapic_entries(io_apic_entry_p mpei->apic_address = IOAPIC_PADDR; } +static int +mpt_count_ioint_entries(void) +{ + + /* + * Always include entries for the first 16 pins along with a entry + * for each active PCI INTx pin. + */ + return (16 + pci_count_lintr()); +} + static void -mpt_build_ioint_entries(int_entry_ptr mpie, int num_pins, int id) +mpt_generate_pci_int(int slot, int pin, int ioapic_irq, void *arg) +{ + int_entry_ptr *mpiep, mpie; + + mpiep = arg; + mpie = *mpiep; + memset(mpie, 0, sizeof(*mpie)); + + /* + * This is always after another I/O interrupt entry, so cheat + * and fetch the I/O APIC ID from the prior entry. + */ + mpie->type = MPCT_ENTRY_INT; + mpie->int_type = INTENTRY_TYPE_INT; + mpie->src_bus_id = 0; + mpie->src_bus_irq = slot << 2 | (pin - 1); + mpie->dst_apic_id = mpie[-1].dst_apic_id; + mpie->dst_apic_int = ioapic_irq; + + *mpiep = mpie + 1; +} + +static void +mpt_build_ioint_entries(int_entry_ptr mpie, int id) { int pin; @@ -206,8 +238,8 @@ mpt_build_ioint_entries(int_entry_ptr mp * just use the default config, tweek later if needed. */ - /* Run through all 16 pins. */ - for (pin = 0; pin < num_pins; pin++) { + /* First, generate the first 16 pins. */ + for (pin = 0; pin < 16; pin++) { memset(mpie, 0, sizeof(*mpie)); mpie->type = MPCT_ENTRY_INT; mpie->src_bus_id = 1; @@ -235,16 +267,6 @@ mpt_build_ioint_entries(int_entry_ptr mp mpie->int_type = INTENTRY_TYPE_INT; mpie->src_bus_irq = SCI_INT; break; - case 5: - case 10: - case 11: - /* - * PCI Irqs set to level triggered and active-lo. - */ - mpie->int_flags = INTENTRY_FLAGS_POLARITY_ACTIVELO | - INTENTRY_FLAGS_TRIGGER_LEVEL; - mpie->src_bus_id = 0; - /* fall through.. */ default: /* All other pins are identity mapped. */ mpie->int_type = INTENTRY_TYPE_INT; @@ -254,6 +276,8 @@ mpt_build_ioint_entries(int_entry_ptr mp mpie++; } + /* Next, generate entries for any PCI INTx interrupts. */ + pci_walk_lintr(mpt_generate_pci_int, &mpie); } void @@ -273,6 +297,7 @@ mptable_build(struct vmctx *ctx, int ncp proc_entry_ptr mpep; mpfps_t mpfp; int_entry_ptr mpie; + int ioints; char *curraddr; char *startaddr; @@ -307,9 +332,10 @@ mptable_build(struct vmctx *ctx, int ncp mpch->entry_count++; mpie = (int_entry_ptr) curraddr; - mpt_build_ioint_entries(mpie, MPEII_MAX_IRQ, 0); - curraddr += sizeof(*mpie) * MPEII_MAX_IRQ; - mpch->entry_count += MPEII_MAX_IRQ; + ioints = mpt_count_ioint_entries(); + mpt_build_ioint_entries(mpie, 0); + curraddr += sizeof(*mpie) * ioints; + mpch->entry_count += ioints; mpie = (int_entry_ptr)curraddr; mpt_build_localint_entries(mpie); Modified: head/usr.sbin/bhyve/pci_emul.c ============================================================================== --- head/usr.sbin/bhyve/pci_emul.c Wed Jan 29 14:14:09 2014 (r261267) +++ head/usr.sbin/bhyve/pci_emul.c Wed Jan 29 14:56:48 2014 (r261268) @@ -34,6 +34,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include @@ -47,7 +48,7 @@ __FBSDID("$FreeBSD$"); #include "acpi.h" #include "bhyverun.h" #include "inout.h" -#include "legacy_irq.h" +#include "ioapic.h" #include "mem.h" #include "pci_emul.h" #include "pci_lpc.h" @@ -71,11 +72,21 @@ do { \ #define MAXSLOTS (PCI_SLOTMAX + 1) #define MAXFUNCS (PCI_FUNCMAX + 1) -static struct slotinfo { - char *si_name; - char *si_param; - struct pci_devinst *si_devi; -} pci_slotinfo[MAXSLOTS][MAXFUNCS]; +struct funcinfo { + char *fi_name; + char *fi_param; + struct pci_devinst *fi_devi; +}; + +struct intxinfo { + int ii_count; + int ii_ioapic_irq; +}; + +struct slotinfo { + struct intxinfo si_intpins[4]; + struct funcinfo si_funcs[MAXFUNCS]; +} pci_slotinfo[MAXSLOTS]; SET_DECLARE(pci_devemu_set, struct pci_devemu); @@ -92,6 +103,7 @@ static uint64_t pci_emul_membase64; #define PCI_EMUL_MEMLIMIT64 0xFD00000000UL static struct pci_devemu *pci_emul_finddev(char *name); +static void pci_lintr_update(struct pci_devinst *pi); static int pci_emul_devices; static struct mem_range pci_mem_hole; @@ -154,7 +166,7 @@ pci_parse_slot(char *opt) goto done; } - if (pci_slotinfo[snum][fnum].si_name != NULL) { + if (pci_slotinfo[snum].si_funcs[fnum].fi_name != NULL) { fprintf(stderr, "pci slot %d:%d already occupied!\n", snum, fnum); goto done; @@ -167,8 +179,8 @@ pci_parse_slot(char *opt) } error = 0; - pci_slotinfo[snum][fnum].si_name = emul; - pci_slotinfo[snum][fnum].si_param = config; + pci_slotinfo[snum].si_funcs[fnum].fi_name = emul; + pci_slotinfo[snum].si_funcs[fnum].fi_param = config; done: if (error) @@ -666,7 +678,10 @@ pci_emul_init(struct vmctx *ctx, struct pdi->pi_bus = 0; pdi->pi_slot = slot; pdi->pi_func = func; - pdi->pi_lintr_pin = -1; + pthread_mutex_init(&pdi->pi_lintr.lock, NULL); + pdi->pi_lintr.pin = 0; + pdi->pi_lintr.state = IDLE; + pdi->pi_lintr.ioapic_irq = 0; pdi->pi_d = pde; snprintf(pdi->pi_name, PI_NAMESZ, "%s-pci-%d", pde->pe_emu, slot); @@ -682,7 +697,7 @@ pci_emul_init(struct vmctx *ctx, struct free(pdi); } else { pci_emul_devices++; - pci_slotinfo[slot][func].si_devi = pdi; + pci_slotinfo[slot].si_funcs[func].fi_devi = pdi; } return (err); @@ -816,6 +831,7 @@ msixcap_cfgwrite(struct pci_devinst *pi, pi->pi_msix.enabled = val & PCIM_MSIXCTRL_MSIX_ENABLE; pi->pi_msix.function_mask = val & PCIM_MSIXCTRL_FUNCTION_MASK; + pci_lintr_update(pi); } CFGWRITE(pi, offset, val, bytes); @@ -854,6 +870,7 @@ msicap_cfgwrite(struct pci_devinst *pi, } else { pi->pi_msi.maxmsgnum = 0; } + pci_lintr_update(pi); } CFGWRITE(pi, offset, val, bytes); @@ -993,7 +1010,7 @@ int init_pci(struct vmctx *ctx) { struct pci_devemu *pde; - struct slotinfo *si; + struct funcinfo *fi; size_t lowmem; int slot, func; int error; @@ -1004,12 +1021,12 @@ init_pci(struct vmctx *ctx) for (slot = 0; slot < MAXSLOTS; slot++) { for (func = 0; func < MAXFUNCS; func++) { - si = &pci_slotinfo[slot][func]; - if (si->si_name != NULL) { - pde = pci_emul_finddev(si->si_name); + fi = &pci_slotinfo[slot].si_funcs[func]; + if (fi->fi_name != NULL) { + pde = pci_emul_finddev(fi->fi_name); assert(pde != NULL); error = pci_emul_init(ctx, pde, slot, func, - si->si_param); + fi->fi_param); if (error) return (error); } @@ -1042,11 +1059,27 @@ init_pci(struct vmctx *ctx) return (0); } +static void +pci_prt_entry(int slot, int pin, int ioapic_irq, void *arg) +{ + int *count; + + count = arg; + dsdt_line(" Package (0x04)"); + dsdt_line(" {"); + dsdt_line(" 0x%X,", slot << 16 | 0xffff); + dsdt_line(" 0x%02X,", pin - 1); + dsdt_line(" Zero,"); + dsdt_line(" 0x%X", ioapic_irq); + dsdt_line(" }%s", *count == 1 ? "" : ","); + (*count)--; +} + void pci_write_dsdt(void) { struct pci_devinst *pi; - int slot, func; + int count, slot, func; dsdt_indent(1); dsdt_line("Scope (_SB)"); @@ -1107,11 +1140,20 @@ pci_write_dsdt(void) PCI_EMUL_MEMLIMIT64 - PCI_EMUL_MEMBASE64); dsdt_line(" ,, , AddressRangeMemory, TypeStatic)"); dsdt_line(" })"); + count = pci_count_lintr(); + if (count != 0) { + dsdt_indent(2); + dsdt_line("Name (_PRT, Package (0x%02X)", count); + dsdt_line("{"); + pci_walk_lintr(pci_prt_entry, &count); + dsdt_line("})"); + dsdt_unindent(2); + } dsdt_indent(2); for (slot = 0; slot < MAXSLOTS; slot++) { for (func = 0; func < MAXFUNCS; func++) { - pi = pci_slotinfo[slot][func].si_devi; + pi = pci_slotinfo[slot].si_funcs[func].fi_devi; if (pi != NULL && pi->pi_d->pe_write_dsdt != NULL) pi->pi_d->pe_write_dsdt(pi); } @@ -1176,18 +1218,54 @@ pci_generate_msi(struct pci_devinst *pi, } } +static bool +pci_lintr_permitted(struct pci_devinst *pi) +{ + uint16_t cmd; + + cmd = pci_get_cfgdata16(pi, PCIR_COMMAND); + return (!(pi->pi_msi.enabled || pi->pi_msix.enabled || + (cmd & PCIM_CMD_INTxDIS))); +} + int -pci_lintr_request(struct pci_devinst *pi, int req) +pci_lintr_request(struct pci_devinst *pi) { - int irq; + struct slotinfo *si; + int bestpin, bestcount, irq, pin; - irq = legacy_irq_alloc(req); - if (irq < 0) - return (-1); + /* + * First, allocate a pin from our slot. + */ + si = &pci_slotinfo[pi->pi_slot]; + bestpin = 0; + bestcount = si->si_intpins[0].ii_count; + for (pin = 1; pin < 4; pin++) { + if (si->si_intpins[pin].ii_count < bestcount) { + bestpin = pin; + bestcount = si->si_intpins[pin].ii_count; + } + } + + /* + * Attempt to allocate an I/O APIC pin for this intpin. If + * 8259A support is added we will need a separate field to + * assign the intpin to an input pin on the PCI interrupt + * router. + */ + if (si->si_intpins[bestpin].ii_count == 0) { + irq = ioapic_pci_alloc_irq(); + if (irq < 0) + return (-1); + si->si_intpins[bestpin].ii_ioapic_irq = irq; + } else + irq = si->si_intpins[bestpin].ii_ioapic_irq; + si->si_intpins[bestpin].ii_count++; - pi->pi_lintr_pin = irq; + pi->pi_lintr.pin = bestpin + 1; + pi->pi_lintr.ioapic_irq = irq; pci_set_cfgdata8(pi, PCIR_INTLINE, irq); - pci_set_cfgdata8(pi, PCIR_INTPIN, 1); + pci_set_cfgdata8(pi, PCIR_INTPIN, bestpin + 1); return (0); } @@ -1195,23 +1273,77 @@ void pci_lintr_assert(struct pci_devinst *pi) { - assert(pi->pi_lintr_pin >= 0); + assert(pi->pi_lintr.pin > 0); - if (pi->pi_lintr_state == 0) { - pi->pi_lintr_state = 1; - vm_ioapic_assert_irq(pi->pi_vmctx, pi->pi_lintr_pin); + pthread_mutex_lock(&pi->pi_lintr.lock); + if (pi->pi_lintr.state == IDLE) { + if (pci_lintr_permitted(pi)) { + pi->pi_lintr.state = ASSERTED; + vm_ioapic_assert_irq(pi->pi_vmctx, + pi->pi_lintr.ioapic_irq); + } else + pi->pi_lintr.state = PENDING; } + pthread_mutex_unlock(&pi->pi_lintr.lock); } void pci_lintr_deassert(struct pci_devinst *pi) { - assert(pi->pi_lintr_pin >= 0); + assert(pi->pi_lintr.pin > 0); + + pthread_mutex_lock(&pi->pi_lintr.lock); + if (pi->pi_lintr.state == ASSERTED) { + pi->pi_lintr.state = IDLE; + vm_ioapic_deassert_irq(pi->pi_vmctx, pi->pi_lintr.ioapic_irq); + } else if (pi->pi_lintr.state == PENDING) + pi->pi_lintr.state = IDLE; + pthread_mutex_unlock(&pi->pi_lintr.lock); +} + +static void +pci_lintr_update(struct pci_devinst *pi) +{ - if (pi->pi_lintr_state == 1) { - pi->pi_lintr_state = 0; - vm_ioapic_deassert_irq(pi->pi_vmctx, pi->pi_lintr_pin); + pthread_mutex_lock(&pi->pi_lintr.lock); + if (pi->pi_lintr.state == ASSERTED && !pci_lintr_permitted(pi)) { + vm_ioapic_deassert_irq(pi->pi_vmctx, pi->pi_lintr.ioapic_irq); + pi->pi_lintr.state = PENDING; + } else if (pi->pi_lintr.state == PENDING && pci_lintr_permitted(pi)) { + pi->pi_lintr.state = ASSERTED; + vm_ioapic_assert_irq(pi->pi_vmctx, pi->pi_lintr.ioapic_irq); + } + pthread_mutex_unlock(&pi->pi_lintr.lock); +} + +int +pci_count_lintr(void) +{ + int count, slot, pin; + + count = 0; + for (slot = 0; slot < MAXSLOTS; slot++) { + for (pin = 0; pin < 4; pin++) { + if (pci_slotinfo[slot].si_intpins[pin].ii_count != 0) + count++; + } + } + return (count); +} + +void +pci_walk_lintr(pci_lintr_cb cb, void *arg) +{ + struct intxinfo *ii; + int slot, pin; + + for (slot = 0; slot < MAXSLOTS; slot++) { + for (pin = 0; pin < 4; pin++) { + ii = &pci_slotinfo[slot].si_intpins[pin]; + if (ii->ii_count != 0) + cb(slot, pin + 1, ii->ii_ioapic_irq, arg); + } } } @@ -1226,7 +1358,7 @@ pci_emul_is_mfdev(int slot) numfuncs = 0; for (f = 0; f < MAXFUNCS; f++) { - if (pci_slotinfo[slot][f].si_devi != NULL) { + if (pci_slotinfo[slot].si_funcs[f].fi_devi != NULL) { numfuncs++; } } @@ -1348,6 +1480,12 @@ pci_emul_cmdwrite(struct pci_devinst *pi assert(0); } } + + /* + * If INTx has been unmasked and is pending, assert the + * interrupt. + */ + pci_lintr_update(pi); } static int @@ -1362,7 +1500,7 @@ pci_emul_cfgdata(struct vmctx *ctx, int assert(bytes == 1 || bytes == 2 || bytes == 4); if (cfgbus == 0) - pi = pci_slotinfo[cfgslot][cfgfunc].si_devi; + pi = pci_slotinfo[cfgslot].si_funcs[cfgfunc].fi_devi; else pi = NULL; Modified: head/usr.sbin/bhyve/pci_emul.h ============================================================================== --- head/usr.sbin/bhyve/pci_emul.h Wed Jan 29 14:14:09 2014 (r261267) +++ head/usr.sbin/bhyve/pci_emul.h Wed Jan 29 14:56:48 2014 (r261268) @@ -32,6 +32,7 @@ #include #include #include +#include #include @@ -102,16 +103,27 @@ struct msix_table_entry { #define MAX_MSIX_TABLE_ENTRIES 2048 #define PBA_TABLE_ENTRY_SIZE 8 +enum lintr_stat { + IDLE, + ASSERTED, + PENDING +}; + struct pci_devinst { struct pci_devemu *pi_d; struct vmctx *pi_vmctx; uint8_t pi_bus, pi_slot, pi_func; - int8_t pi_lintr_pin; - int8_t pi_lintr_state; char pi_name[PI_NAMESZ]; int pi_bar_getsize; struct { + int8_t pin; + enum lintr_stat state; + int ioapic_irq; + pthread_mutex_t lock; + } pi_lintr; + + struct { int enabled; uint64_t addr; uint64_t msg_data; @@ -187,6 +199,8 @@ struct pciecap { uint16_t slot_status2; } __packed; +typedef void (*pci_lintr_cb)(int slot, int pin, int ioapic_irq, void *arg); + int init_pci(struct vmctx *ctx); void msicap_cfgwrite(struct pci_devinst *pi, int capoff, int offset, int bytes, uint32_t val); @@ -203,7 +217,7 @@ void pci_generate_msi(struct pci_devinst void pci_generate_msix(struct pci_devinst *pi, int msgnum); void pci_lintr_assert(struct pci_devinst *pi); void pci_lintr_deassert(struct pci_devinst *pi); -int pci_lintr_request(struct pci_devinst *pi, int ivec); +int pci_lintr_request(struct pci_devinst *pi); int pci_msi_enabled(struct pci_devinst *pi); int pci_msix_enabled(struct pci_devinst *pi); int pci_msix_table_bar(struct pci_devinst *pi); @@ -215,6 +229,8 @@ int pci_emul_add_msixcap(struct pci_devi int pci_emul_msix_twrite(struct pci_devinst *pi, uint64_t offset, int size, uint64_t value); uint64_t pci_emul_msix_tread(struct pci_devinst *pi, uint64_t offset, int size); +int pci_count_lintr(void); +void pci_walk_lintr(pci_lintr_cb cb, void *arg); void pci_write_dsdt(void); static __inline void Modified: head/usr.sbin/bhyve/pci_uart.c ============================================================================== --- head/usr.sbin/bhyve/pci_uart.c Wed Jan 29 14:14:09 2014 (r261267) +++ head/usr.sbin/bhyve/pci_uart.c Wed Jan 29 14:56:48 2014 (r261268) @@ -91,7 +91,7 @@ pci_uart_init(struct vmctx *ctx, struct struct uart_softc *sc; pci_emul_alloc_bar(pi, 0, PCIBAR_IO, UART_IO_BAR_SIZE); - pci_lintr_request(pi, -1); + pci_lintr_request(pi); /* initialize config space */ pci_set_cfgdata16(pi, PCIR_DEVICE, COM_DEV); Modified: head/usr.sbin/bhyve/pci_virtio_block.c ============================================================================== --- head/usr.sbin/bhyve/pci_virtio_block.c Wed Jan 29 14:14:09 2014 (r261267) +++ head/usr.sbin/bhyve/pci_virtio_block.c Wed Jan 29 14:56:48 2014 (r261268) @@ -117,6 +117,7 @@ static int pci_vtblk_debug; */ struct pci_vtblk_softc { struct virtio_softc vbsc_vs; + pthread_mutex_t vsc_mtx; struct vqueue_info vbsc_vq; int vbsc_fd; struct vtblk_config vbsc_cfg; @@ -304,8 +305,12 @@ pci_vtblk_init(struct vmctx *ctx, struct /* record fd of storage device/file */ sc->vbsc_fd = fd; + pthread_mutex_init(&sc->vsc_mtx, NULL); + /* init virtio softc and virtqueues */ vi_softc_linkup(&sc->vbsc_vs, &vtblk_vi_consts, sc, pi, &sc->vbsc_vq); + sc->vbsc_vs.vs_mtx = &sc->vsc_mtx; + sc->vbsc_vq.vq_qsize = VTBLK_RINGSZ; /* sc->vbsc_vq.vq_notify = we have no per-queue notify */ @@ -339,6 +344,8 @@ pci_vtblk_init(struct vmctx *ctx, struct pci_set_cfgdata8(pi, PCIR_CLASS, PCIC_STORAGE); pci_set_cfgdata16(pi, PCIR_SUBDEV_0, VIRTIO_TYPE_BLOCK); + pci_lintr_request(pi); + if (vi_intr_init(&sc->vbsc_vs, 1, fbsdrun_virtio_msix())) return (1); vi_set_io_bar(&sc->vbsc_vs, 0); Modified: head/usr.sbin/bhyve/pci_virtio_net.c ============================================================================== --- head/usr.sbin/bhyve/pci_virtio_net.c Wed Jan 29 14:14:09 2014 (r261267) +++ head/usr.sbin/bhyve/pci_virtio_net.c Wed Jan 29 14:56:48 2014 (r261268) @@ -519,6 +519,8 @@ pci_vtnet_init(struct vmctx *ctx, struct pthread_mutex_init(&sc->vsc_mtx, NULL); vi_softc_linkup(&sc->vsc_vs, &vtnet_vi_consts, sc, pi, sc->vsc_queues); + sc->vsc_vs.vs_mtx = &sc->vsc_mtx; + sc->vsc_queues[VTNET_RXQ].vq_qsize = VTNET_RINGSZ; sc->vsc_queues[VTNET_RXQ].vq_notify = pci_vtnet_ping_rxq; sc->vsc_queues[VTNET_TXQ].vq_qsize = VTNET_RINGSZ; @@ -608,6 +610,8 @@ pci_vtnet_init(struct vmctx *ctx, struct pci_set_cfgdata8(pi, PCIR_CLASS, PCIC_NETWORK); pci_set_cfgdata16(pi, PCIR_SUBDEV_0, VIRTIO_TYPE_NET); + pci_lintr_request(pi); + /* link always up */ sc->vsc_config.status = 1; Modified: head/usr.sbin/bhyve/virtio.c ============================================================================== --- head/usr.sbin/bhyve/virtio.c Wed Jan 29 14:14:09 2014 (r261267) +++ head/usr.sbin/bhyve/virtio.c Wed Jan 29 14:56:48 2014 (r261268) @@ -99,7 +99,11 @@ vi_reset_dev(struct virtio_softc *vs) vs->vs_negotiated_caps = 0; vs->vs_curq = 0; /* vs->vs_status = 0; -- redundant */ + VS_LOCK(vs); + if (vs->vs_isr) + pci_lintr_deassert(vs->vs_pi); vs->vs_isr = 0; + VS_UNLOCK(vs); vs->vs_msix_cfg_idx = VIRTIO_MSI_NO_VECTOR; } @@ -137,11 +141,10 @@ vi_intr_init(struct virtio_softc *vs, in nvec = vs->vs_vc->vc_nvq + 1; if (pci_emul_add_msixcap(vs->vs_pi, nvec, barnum)) return (1); - } else { + } else vs->vs_flags &= ~VIRTIO_USE_MSIX; - /* Only 1 MSI vector for bhyve */ - pci_emul_add_msicap(vs->vs_pi, 1); - } + /* Only 1 MSI vector for bhyve */ + pci_emul_add_msicap(vs->vs_pi, 1); return (0); } @@ -591,6 +594,8 @@ bad: case VTCFG_R_ISR: value = vs->vs_isr; vs->vs_isr = 0; /* a read clears this flag */ + if (value) + pci_lintr_deassert(pi); break; case VTCFG_R_CFGVEC: value = vs->vs_msix_cfg_idx; Modified: head/usr.sbin/bhyve/virtio.h ============================================================================== --- head/usr.sbin/bhyve/virtio.h Wed Jan 29 14:14:09 2014 (r261267) +++ head/usr.sbin/bhyve/virtio.h Wed Jan 29 14:56:48 2014 (r261268) @@ -328,6 +328,18 @@ struct virtio_softc { uint16_t vs_msix_cfg_idx; /* MSI-X vector for config event */ }; +#define VS_LOCK(vs) \ +do { \ + if (vs->vs_mtx) \ + pthread_mutex_lock(vs->vs_mtx); \ +} while (0) + +#define VS_UNLOCK(vs) \ +do { \ + if (vs->vs_mtx) \ + pthread_mutex_unlock(vs->vs_mtx); \ +} while (0) + struct virtio_consts { const char *vc_name; /* name of driver (for diagnostics) */ int vc_nvq; /* number of virtual queues */ @@ -431,11 +443,14 @@ static inline void vq_interrupt(struct virtio_softc *vs, struct vqueue_info *vq) { - if (vs->vs_flags & VIRTIO_USE_MSIX) + if (pci_msix_enabled(vs->vs_pi)) pci_generate_msix(vs->vs_pi, vq->vq_msix_idx); else { + VS_LOCK(vs); vs->vs_isr |= VTCFG_ISR_QUEUES; pci_generate_msi(vs->vs_pi, 0); + pci_lintr_assert(vs->vs_pi); + VS_UNLOCK(vs); } } From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 15:50:02 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9BA27A54; Wed, 29 Jan 2014 15:50:02 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8618217E9; Wed, 29 Jan 2014 15:50:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TFo28C017716; Wed, 29 Jan 2014 15:50:02 GMT (envelope-from jhibbits@svn.freebsd.org) Received: (from jhibbits@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TFo2iF017714; Wed, 29 Jan 2014 15:50:02 GMT (envelope-from jhibbits@svn.freebsd.org) Message-Id: <201401291550.s0TFo2iF017714@svn.freebsd.org> From: Justin Hibbits Date: Wed, 29 Jan 2014 15:50:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261269 - head/sys/dev/vt/hw/ofwfb X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 15:50:02 -0000 Author: jhibbits Date: Wed Jan 29 15:50:01 2014 New Revision: 261269 URL: http://svnweb.freebsd.org/changeset/base/261269 Log: Micro-optimize 8-bit blanking. This is the same as in ofw_syscons. Reviewed by: ray MFC after: 1 week Modified: head/sys/dev/vt/hw/ofwfb/ofwfb.c (contents, props changed) Modified: head/sys/dev/vt/hw/ofwfb/ofwfb.c ============================================================================== --- head/sys/dev/vt/hw/ofwfb/ofwfb.c Wed Jan 29 14:56:48 2014 (r261268) +++ head/sys/dev/vt/hw/ofwfb/ofwfb.c Wed Jan 29 15:50:01 2014 (r261269) @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: user/ed/newcons/sys/dev/vt/hw/ofwfb/ofwfb.c 219888 2011-03-22 21:31:31Z ed $"); +__FBSDID("$FreeBSD$"); #include #include @@ -78,17 +78,19 @@ static void ofwfb_blank(struct vt_device *vd, term_color_t color) { struct ofwfb_softc *sc = vd->vd_softc; - u_int ofs; + u_int ofs, size; uint32_t c; + size = sc->sc_stride * vd->vd_height; switch (sc->sc_depth) { case 8: - for (ofs = 0; ofs < sc->sc_stride*vd->vd_height; ofs++) - *(uint8_t *)(sc->sc_addr + ofs) = color; + c = (color << 24) | (color << 16) | (color << 8) | color; + for (ofs = 0; ofs < size/4; ofs++) + *(uint32_t *)(sc->sc_addr + 4*ofs) = c; break; case 32: c = sc->sc_colormap[color]; - for (ofs = 0; ofs < sc->sc_stride*vd->vd_height; ofs++) + for (ofs = 0; ofs < size; ofs++) *(uint32_t *)(sc->sc_addr + 4*ofs) = c; break; default: From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 16:24:50 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B8930EB2; Wed, 29 Jan 2014 16:24:50 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A4ED61B7B; Wed, 29 Jan 2014 16:24:50 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TGOogp033098; Wed, 29 Jan 2014 16:24:50 GMT (envelope-from n_hibma@svn.freebsd.org) Received: (from n_hibma@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TGOo5k033097; Wed, 29 Jan 2014 16:24:50 GMT (envelope-from n_hibma@svn.freebsd.org) Message-Id: <201401291624.s0TGOo5k033097@svn.freebsd.org> From: Nick Hibma Date: Wed, 29 Jan 2014 16:24:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261270 - head/sys/dev/usb X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 16:24:50 -0000 Author: n_hibma Date: Wed Jan 29 16:24:50 2014 New Revision: 261270 URL: http://svnweb.freebsd.org/changeset/base/261270 Log: Fix the ordering of the arguments to printf in uhub_child_location_string(). This produced bogus information in dev...%location output from sysctl. MFC after: 2 weeks Modified: head/sys/dev/usb/usb_hub.c Modified: head/sys/dev/usb/usb_hub.c ============================================================================== --- head/sys/dev/usb/usb_hub.c Wed Jan 29 15:50:01 2014 (r261269) +++ head/sys/dev/usb/usb_hub.c Wed Jan 29 16:24:50 2014 (r261270) @@ -1597,8 +1597,9 @@ uhub_child_location_string(device_t pare goto done; } snprintf(buf, buflen, "bus=%u hubaddr=%u port=%u devaddr=%u interface=%u", + device_get_unit(res.udev->bus->bdev), (res.udev->parent_hub != NULL) ? res.udev->parent_hub->device_index : 0, - res.portno, device_get_unit(res.udev->bus->bdev), + res.portno, res.udev->device_index, res.iface_index); done: mtx_unlock(&Giant); From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 19:28:52 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DBB67D7E; Wed, 29 Jan 2014 19:28:52 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C77B91D55; Wed, 29 Jan 2014 19:28:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TJSqXq007405; Wed, 29 Jan 2014 19:28:52 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TJSqEY007404; Wed, 29 Jan 2014 19:28:52 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201401291928.s0TJSqEY007404@svn.freebsd.org> From: Sergey Kandaurov Date: Wed, 29 Jan 2014 19:28:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261271 - head/contrib/pf/authpf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 19:28:52 -0000 Author: pluknet Date: Wed Jan 29 19:28:52 2014 New Revision: 261271 URL: http://svnweb.freebsd.org/changeset/base/261271 Log: Ressurect the local change documenting authpf's requirement for a mounted fdescfs(5). PR: docs/186250 MFC after: 1 week Modified: head/contrib/pf/authpf/authpf.8 Modified: head/contrib/pf/authpf/authpf.8 ============================================================================== --- head/contrib/pf/authpf/authpf.8 Wed Jan 29 16:24:50 2014 (r261270) +++ head/contrib/pf/authpf/authpf.8 Wed Jan 29 19:28:52 2014 (r261271) @@ -15,7 +15,7 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd January 6 2009 +.Dd January 29 2014 .Dt AUTHPF 8 .Os .Sh NAME @@ -43,7 +43,11 @@ It is meant to be used with users who ca .Xr ssh 1 only, and requires the .Xr pf 4 -subsystem to be enabled. +subsystem and an +.Xr fdescfs 5 +file system mounted at +.Pa /dev/fd +to be enabled. .Pp .Nm authpf-noip is a user shell @@ -558,6 +562,7 @@ pass out on $internal_if from (self) to .El .Sh SEE ALSO .Xr pf 4 , +.Xr fdescfs 5 , .Xr pf.conf 5 , .Xr securelevel 7 , .Xr ftp-proxy 8 From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 19:30:30 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0FD22224; Wed, 29 Jan 2014 19:30:30 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id EE3E51D75; Wed, 29 Jan 2014 19:30:29 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TJUTSd008098; Wed, 29 Jan 2014 19:30:29 GMT (envelope-from dim@svn.freebsd.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TJUSWh008088; Wed, 29 Jan 2014 19:30:28 GMT (envelope-from dim@svn.freebsd.org) Message-Id: <201401291930.s0TJUSWh008088@svn.freebsd.org> From: Dimitry Andric Date: Wed, 29 Jan 2014 19:30:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261272 - in vendor/libc++/dist: . include include/experimental include/ext src X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 19:30:30 -0000 Author: dim Date: Wed Jan 29 19:30:27 2014 New Revision: 261272 URL: http://svnweb.freebsd.org/changeset/base/261272 Log: Vendor import of libc++ tags/RELEASE_34/final r197960: https://llvm.org/svn/llvm-project/libcxx/tags/RELEASE_34/final@197960 Added: vendor/libc++/dist/include/experimental/ vendor/libc++/dist/include/experimental/dynarray vendor/libc++/dist/include/experimental/optional vendor/libc++/dist/include/shared_mutex vendor/libc++/dist/src/optional.cpp (contents, props changed) vendor/libc++/dist/src/shared_mutex.cpp (contents, props changed) Modified: vendor/libc++/dist/CREDITS.TXT vendor/libc++/dist/include/__bit_reference vendor/libc++/dist/include/__config vendor/libc++/dist/include/__debug vendor/libc++/dist/include/__functional_03 vendor/libc++/dist/include/__functional_base vendor/libc++/dist/include/__functional_base_03 vendor/libc++/dist/include/__hash_table vendor/libc++/dist/include/__locale vendor/libc++/dist/include/__mutex_base vendor/libc++/dist/include/__split_buffer vendor/libc++/dist/include/__std_stream vendor/libc++/dist/include/__tree vendor/libc++/dist/include/__tuple vendor/libc++/dist/include/__tuple_03 vendor/libc++/dist/include/__undef_min_max vendor/libc++/dist/include/algorithm vendor/libc++/dist/include/array vendor/libc++/dist/include/bitset vendor/libc++/dist/include/cctype vendor/libc++/dist/include/chrono vendor/libc++/dist/include/cmath vendor/libc++/dist/include/codecvt vendor/libc++/dist/include/complex vendor/libc++/dist/include/cstddef vendor/libc++/dist/include/cstdio vendor/libc++/dist/include/cstdlib vendor/libc++/dist/include/cstring vendor/libc++/dist/include/cwchar vendor/libc++/dist/include/deque vendor/libc++/dist/include/exception vendor/libc++/dist/include/ext/__hash vendor/libc++/dist/include/ext/hash_map vendor/libc++/dist/include/ext/hash_set vendor/libc++/dist/include/forward_list vendor/libc++/dist/include/fstream vendor/libc++/dist/include/functional vendor/libc++/dist/include/future vendor/libc++/dist/include/initializer_list vendor/libc++/dist/include/iomanip vendor/libc++/dist/include/ios vendor/libc++/dist/include/iosfwd vendor/libc++/dist/include/istream vendor/libc++/dist/include/iterator vendor/libc++/dist/include/limits vendor/libc++/dist/include/list vendor/libc++/dist/include/locale vendor/libc++/dist/include/map vendor/libc++/dist/include/memory vendor/libc++/dist/include/mutex vendor/libc++/dist/include/new vendor/libc++/dist/include/numeric vendor/libc++/dist/include/ostream vendor/libc++/dist/include/queue vendor/libc++/dist/include/random vendor/libc++/dist/include/ratio vendor/libc++/dist/include/regex vendor/libc++/dist/include/scoped_allocator vendor/libc++/dist/include/set vendor/libc++/dist/include/sstream vendor/libc++/dist/include/stack vendor/libc++/dist/include/streambuf vendor/libc++/dist/include/string vendor/libc++/dist/include/system_error vendor/libc++/dist/include/thread vendor/libc++/dist/include/tuple vendor/libc++/dist/include/type_traits vendor/libc++/dist/include/typeindex vendor/libc++/dist/include/unordered_map vendor/libc++/dist/include/unordered_set vendor/libc++/dist/include/utility vendor/libc++/dist/include/valarray vendor/libc++/dist/include/vector vendor/libc++/dist/src/algorithm.cpp vendor/libc++/dist/src/debug.cpp vendor/libc++/dist/src/exception.cpp vendor/libc++/dist/src/future.cpp vendor/libc++/dist/src/ios.cpp vendor/libc++/dist/src/iostream.cpp vendor/libc++/dist/src/locale.cpp vendor/libc++/dist/src/mutex.cpp vendor/libc++/dist/src/new.cpp vendor/libc++/dist/src/random.cpp vendor/libc++/dist/src/stdexcept.cpp vendor/libc++/dist/src/string.cpp vendor/libc++/dist/src/strstream.cpp vendor/libc++/dist/src/system_error.cpp vendor/libc++/dist/src/thread.cpp vendor/libc++/dist/src/typeinfo.cpp vendor/libc++/dist/src/valarray.cpp Modified: vendor/libc++/dist/CREDITS.TXT ============================================================================== --- vendor/libc++/dist/CREDITS.TXT Wed Jan 29 19:28:52 2014 (r261271) +++ vendor/libc++/dist/CREDITS.TXT Wed Jan 29 19:30:27 2014 (r261272) @@ -31,6 +31,14 @@ D: FreeBSD and Solaris ports, libcxxrt s N: Marshall Clow E: mclow.lists@gmail.com E: marshall@idio.com +D: C++14 support, patches and bug fixes. + +N: Bill Fisher +E: william.w.fisher@gmail.com +D: Regex bug fixes. + +N: Matthew Dempsky +E: matthew@dempsky.org D: Minor patches and bug fixes. N: Google Inc. @@ -48,6 +56,10 @@ N: Argyrios Kyrtzidis E: kyrtzidis@apple.com D: Bug fixes. +N: Bruce Mitchener, Jr. +E: bruce.mitchener@gmail.com +D: Emscripten-related changes. + N: Michel Morin E: mimomorin@gmail.com D: Minor patches to is_convertible. @@ -64,6 +76,10 @@ N: Bjorn Reese E: breese@users.sourceforge.net D: Initial regex prototype +N: Nico Rieck +E: nico.rieck@gmail.com +D: Windows fixes + N: Jonathan Sauer D: Minor patches, mostly related to constexpr @@ -74,6 +90,14 @@ D: Implemented Cityhash as the string ha N: Richard Smith D: Minor patches. +N: Joerg Sonnenberger +E: joerg@NetBSD.org +D: NetBSD port. + +N: Stephan Tolksdorf +E: st@quanttec.com +D: Minor fix + N: Michael van der Westhuizen E: r1mikey at gmail dot com @@ -85,11 +109,15 @@ N: Zhang Xiongpang E: zhangxiongpang@gmail.com D: Minor patches and bug fixes. +N: Xing Xue +E: xingxue@ca.ibm.com +D: AIX port + +N: Zhihao Yuan +E: lichray@gmail.com +D: Standard compatibility fixes. + N: Jeffrey Yasskin E: jyasskin@gmail.com E: jyasskin@google.com D: Linux fixes. - -N: Bruce Mitchener, Jr. -E: bruce.mitchener@gmail.com -D: Emscripten-related changes. Modified: vendor/libc++/dist/include/__bit_reference ============================================================================== --- vendor/libc++/dist/include/__bit_reference Wed Jan 29 19:28:52 2014 (r261271) +++ vendor/libc++/dist/include/__bit_reference Wed Jan 29 19:30:27 2014 (r261272) @@ -40,7 +40,7 @@ class __bit_reference __storage_pointer __seg_; __storage_type __mask_; -#if defined(__clang__) +#if defined(__clang__) || defined(__IBMCPP__) || defined(_LIBCPP_MSVC) friend typename _Cp::__self; #else friend class _Cp::__self; @@ -82,7 +82,7 @@ class __bit_reference<_Cp, false> }; template -_LIBCPP_INLINE_VISIBILITY inline +inline _LIBCPP_INLINE_VISIBILITY void swap(__bit_reference<_Cp> __x, __bit_reference<_Cp> __y) _NOEXCEPT { @@ -92,7 +92,7 @@ swap(__bit_reference<_Cp> __x, __bit_ref } template -_LIBCPP_INLINE_VISIBILITY inline +inline _LIBCPP_INLINE_VISIBILITY void swap(__bit_reference<_Cp> __x, __bit_reference<_Dp> __y) _NOEXCEPT { @@ -102,7 +102,7 @@ swap(__bit_reference<_Cp> __x, __bit_ref } template -_LIBCPP_INLINE_VISIBILITY inline +inline _LIBCPP_INLINE_VISIBILITY void swap(__bit_reference<_Cp> __x, bool& __y) _NOEXCEPT { @@ -112,7 +112,7 @@ swap(__bit_reference<_Cp> __x, bool& __y } template -_LIBCPP_INLINE_VISIBILITY inline +inline _LIBCPP_INLINE_VISIBILITY void swap(bool& __x, __bit_reference<_Cp> __y) _NOEXCEPT { @@ -130,7 +130,7 @@ class __bit_const_reference __storage_pointer __seg_; __storage_type __mask_; -#if defined(__clang__) +#if defined(__clang__) || defined(__IBMCPP__) || defined(_LIBCPP_MSVC) friend typename _Cp::__self; #else friend class _Cp::__self; @@ -173,6 +173,8 @@ __find_bool_true(__bit_iterator<_Cp, _Is __storage_type __b = *__first.__seg_ & __m; if (__b) return _It(__first.__seg_, static_cast(_VSTD::__ctz(__b))); + if (__n == __dn) + return _It(__first.__seg_, __first.__ctz_ + __n); __n -= __dn; ++__first.__seg_; } @@ -207,6 +209,8 @@ __find_bool_false(__bit_iterator<_Cp, _I __storage_type __b = ~*__first.__seg_ & __m; if (__b) return _It(__first.__seg_, static_cast(_VSTD::__ctz(__b))); + if (__n == __dn) + return _It(__first.__seg_, __first.__ctz_ + __n); __n -= __dn; ++__first.__seg_; } @@ -375,7 +379,7 @@ __fill_n_true(__bit_iterator<_Cp, false> } template -_LIBCPP_INLINE_VISIBILITY inline +inline _LIBCPP_INLINE_VISIBILITY void fill_n(__bit_iterator<_Cp, false> __first, typename _Cp::size_type __n, bool __value_) { @@ -1104,7 +1108,11 @@ private: unsigned __ctz_; public: - _LIBCPP_INLINE_VISIBILITY __bit_iterator() _NOEXCEPT {} + _LIBCPP_INLINE_VISIBILITY __bit_iterator() _NOEXCEPT +#if _LIBCPP_STD_VER > 11 + : __seg_(nullptr), __ctz_(0) +#endif + {} _LIBCPP_INLINE_VISIBILITY __bit_iterator(const __bit_iterator<_Cp, false>& __it) _NOEXCEPT @@ -1214,7 +1222,7 @@ private: __bit_iterator(__storage_pointer __s, unsigned __ctz) _NOEXCEPT : __seg_(__s), __ctz_(__ctz) {} -#if defined(__clang__) +#if defined(__clang__) || defined(__IBMCPP__) || defined(_LIBCPP_MSVC) friend typename _Cp::__self; #else friend class _Cp::__self; Modified: vendor/libc++/dist/include/__config ============================================================================== --- vendor/libc++/dist/include/__config Wed Jan 29 19:28:52 2014 (r261271) +++ vendor/libc++/dist/include/__config Wed Jan 29 19:30:27 2014 (r261272) @@ -11,7 +11,7 @@ #ifndef _LIBCPP_CONFIG #define _LIBCPP_CONFIG -#ifndef _MSC_VER // explicit macro necessary because it is only defined below in this file +#if !defined(_MSC_VER) || defined(__clang__) #pragma GCC system_header #endif @@ -72,15 +72,26 @@ # define _LIBCPP_LITTLE_ENDIAN 1 # define _LIBCPP_BIG_ENDIAN 0 // Compiler intrinsics (GCC or MSVC) -# if (defined(_MSC_VER) && _MSC_VER >= 1400) \ +# if defined(__clang__) \ + || (defined(_MSC_VER) && _MSC_VER >= 1400) \ || (defined(__GNUC__) && _GNUC_VER > 403) -# define _LIBCP_HAS_IS_BASE_OF +# define _LIBCPP_HAS_IS_BASE_OF +# endif +# if defined(_MSC_VER) && !defined(__clang__) +# define _LIBCPP_MSVC // Using Microsoft Visual C++ compiler +# define _LIBCPP_TOSTRING2(x) #x +# define _LIBCPP_TOSTRING(x) _LIBCPP_TOSTRING2(x) +# define _LIBCPP_WARNING(x) __pragma(message(__FILE__ "(" _LIBCPP_TOSTRING(__LINE__) ") : warning note: " x)) +# endif +# // If mingw not explicitly detected, assume using MS C runtime only. +# ifndef __MINGW32__ +# define _LIBCPP_MSVCRT // Using Microsoft's C Runtime library # endif #endif // _WIN32 #ifdef __linux__ # if defined(__GNUC__) && _GNUC_VER >= 403 -# define _LIBCP_HAS_IS_BASE_OF +# define _LIBCPP_HAS_IS_BASE_OF # endif #endif @@ -127,8 +138,11 @@ # define _LIBCPP_TYPE_VIS #endif +#define _LIBCPP_TYPE_VIS_ONLY +#define _LIBCPP_FUNC_VIS_ONLY + #ifndef _LIBCPP_INLINE_VISIBILITY -# ifdef _MSC_VER +# ifdef _LIBCPP_MSVC # define _LIBCPP_INLINE_VISIBILITY __forceinline # else // MinGW GCC and Clang # define _LIBCPP_INLINE_VISIBILITY __attribute__ ((__always_inline__)) @@ -140,7 +154,7 @@ #endif #ifndef _LIBCPP_ALWAYS_INLINE -# ifdef _MSC_VER +# ifdef _LIBCPP_MSVC # define _LIBCPP_ALWAYS_INLINE __forceinline # endif #endif @@ -160,13 +174,21 @@ #endif #ifndef _LIBCPP_TYPE_VIS -# if __has_attribute(type_visibility) +# if __has_attribute(__type_visibility__) # define _LIBCPP_TYPE_VIS __attribute__ ((__type_visibility__("default"))) # else # define _LIBCPP_TYPE_VIS __attribute__ ((__visibility__("default"))) # endif #endif +#ifndef _LIBCPP_TYPE_VIS_ONLY +# define _LIBCPP_TYPE_VIS_ONLY _LIBCPP_TYPE_VIS +#endif + +#ifndef _LIBCPP_FUNC_VIS_ONLY +# define _LIBCPP_FUNC_VIS_ONLY _LIBCPP_FUNC_VIS +#endif + #ifndef _LIBCPP_INLINE_VISIBILITY #define _LIBCPP_INLINE_VISIBILITY __attribute__ ((__visibility__("hidden"), __always_inline__)) #endif @@ -175,10 +197,6 @@ #define _LIBCPP_EXCEPTION_ABI _LIBCPP_TYPE_VIS #endif -#ifndef _LIBCPP_CANTTHROW -#define _LIBCPP_CANTTHROW __attribute__ ((__nothrow__)) -#endif - #ifndef _LIBCPP_ALWAYS_INLINE #define _LIBCPP_ALWAYS_INLINE __attribute__ ((__visibility__("hidden"), __always_inline__)) #endif @@ -273,7 +291,7 @@ typedef __char32_t char32_t; #endif #if __has_feature(is_base_of) -# define _LIBCP_HAS_IS_BASE_OF +# define _LIBCPP_HAS_IS_BASE_OF #endif // Objective-C++ features (opt-in) @@ -396,13 +414,14 @@ namespace _LIBCPP_NAMESPACE { using namespace _LIBCPP_NAMESPACE __attribute__((__strong__)); } -#elif defined(_MSC_VER) +#elif defined(_LIBCPP_MSVC) #define _LIBCPP_HAS_NO_TEMPLATE_ALIASES #define _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER #define _LIBCPP_HAS_NO_CONSTEXPR #define _LIBCPP_HAS_NO_UNICODE_CHARS #define _LIBCPP_HAS_NO_DELETED_FUNCTIONS +#define _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS #define __alignof__ __alignof #define _LIBCPP_NORETURN __declspec(noreturn) #define _ALIGNAS(x) __declspec(align(x)) @@ -415,10 +434,43 @@ using namespace _LIBCPP_NAMESPACE __attr #define _LIBCPP_END_NAMESPACE_STD } #define _VSTD std +# define _LIBCPP_WEAK +namespace std { +} + +#elif defined(__IBMCPP__) + +#define _ALIGNAS(x) __attribute__((__aligned__(x))) +#define _ALIGNAS_TYPE(x) __attribute__((__aligned__(__alignof(x)))) +#define _ATTRIBUTE(x) __attribute__((x)) +#define _LIBCPP_NORETURN __attribute__((noreturn)) + +#define _NOEXCEPT throw() +#define _NOEXCEPT_(x) + +#define _LIBCPP_HAS_NO_TEMPLATE_ALIASES +#define _LIBCPP_HAS_NO_ADVANCED_SFINAE +#define _LIBCPP_HAS_NO_ALWAYS_INLINE_VARIADICS +#define _LIBCPP_HAS_NO_GENERALIZED_INITIALIZERS +#define _LIBCPP_HAS_NO_NULLPTR +#define _LIBCPP_HAS_NO_UNICODE_CHARS +#define _LIBCPP_HAS_NO_STRONG_ENUMS +#define _LIBCPP_HAS_IS_BASE_OF + +#if defined(_AIX) +#define __MULTILOCALE_API +#endif + +#define _LIBCPP_BEGIN_NAMESPACE_STD namespace std {inline namespace _LIBCPP_NAMESPACE { +#define _LIBCPP_END_NAMESPACE_STD } } +#define _VSTD std::_LIBCPP_NAMESPACE + namespace std { + inline namespace _LIBCPP_NAMESPACE { + } } -#endif // __clang__ || __GNUC___ || _MSC_VER +#endif // __clang__ || __GNUC___ || _MSC_VER || __IBMCPP__ #ifdef _LIBCPP_HAS_NO_UNICODE_CHARS typedef unsigned short char16_t; @@ -481,8 +533,23 @@ template struct __static_asse #define _LIBCPP_DECLARE_STRONG_ENUM_EPILOG(x) #endif // _LIBCPP_HAS_NO_STRONG_ENUMS +#ifdef _LIBCPP_DEBUG +# if _LIBCPP_DEBUG == 0 +# define _LIBCPP_DEBUG_LEVEL 1 +# elif _LIBCPP_DEBUG == 1 +# define _LIBCPP_DEBUG_LEVEL 2 +# else +# error Supported values for _LIBCPP_DEBUG are 0 and 1 +# endif +# define _LIBCPP_EXTERN_TEMPLATE(...) +#endif + #ifndef _LIBCPP_EXTERN_TEMPLATE -#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__; +#define _LIBCPP_EXTERN_TEMPLATE(...) +#endif + +#ifndef _LIBCPP_EXTERN_TEMPLATE2 +#define _LIBCPP_EXTERN_TEMPLATE2(...) extern template __VA_ARGS__; #endif #if defined(__APPLE__) || defined(__FreeBSD__) || defined(_WIN32) || defined(__sun__) || defined(__NetBSD__) @@ -500,14 +567,14 @@ template struct __static_asse #define _LIBCPP_WCTYPE_IS_MASK #endif -#ifdef _LIBCPP_DEBUG2 -# if _LIBCPP_DEBUG2 == 0 -# define _LIBCPP_DEBUG_LEVEL 1 -# elif _LIBCPP_DEBUG2 == 1 -# define _LIBCPP_DEBUG_LEVEL 2 -# else -# error Supported values for _LIBCPP_DEBUG2 are 0 and 1 -# endif +#if defined(__APPLE__) +#ifndef _LIBCPP_TRIVIAL_PAIR_COPY_CTOR +# define _LIBCPP_TRIVIAL_PAIR_COPY_CTOR 0 +#endif +#endif + +#ifndef _LIBCPP_TRIVIAL_PAIR_COPY_CTOR +# define _LIBCPP_TRIVIAL_PAIR_COPY_CTOR 1 #endif #ifndef _LIBCPP_STD_VER @@ -518,10 +585,36 @@ template struct __static_asse # endif #endif // _LIBCPP_STD_VER -#ifdef _LIBCPP_DEBUG2 -# include <__debug> +#if _LIBCPP_STD_VER > 11 +#define _LIBCPP_DEPRECATED [[deprecated]] #else -# define _LIBCPP_ASSERT(x, m) ((void)0) +#define _LIBCPP_DEPRECATED +#endif + +#if _LIBCPP_STD_VER <= 11 +#define _LIBCPP_CONSTEXPR_AFTER_CXX11 +#define _LIBCPP_EXPLICIT_AFTER_CXX11 +#define _LIBCPP_DEPRECATED_AFTER_CXX11 +#else +#define _LIBCPP_CONSTEXPR_AFTER_CXX11 constexpr +#define _LIBCPP_EXPLICIT_AFTER_CXX11 explicit +#define _LIBCPP_DEPRECATED_AFTER_CXX11 [[deprecated]] +#endif + +// Try to find out if RTTI is disabled. +// g++ and cl.exe have RTTI on by default and define a macro when it is. +// g++ only defines the macro in 4.3.2 and onwards. +#if !defined(_LIBCPP_NO_RTTI) +# if defined(__GNUG__) && (__GNUC__ >= 4 && \ + (__GNUC_MINOR__ >= 3 || __GNUC_PATCHLEVEL__ >= 2)) && !defined(__GXX_RTTI) +# define _LIBCPP_NO_RTTI +# elif (defined(_MSC_VER) && !defined(__clang__)) && !defined(_CPPRTTI) +# define _LIBCPP_NO_RTTI +# endif +#endif + +#ifndef _LIBCPP_WEAK +# define _LIBCPP_WEAK __attribute__((__weak__)) #endif #endif // _LIBCPP_CONFIG Modified: vendor/libc++/dist/include/__debug ============================================================================== --- vendor/libc++/dist/include/__debug Wed Jan 29 19:28:52 2014 (r261271) +++ vendor/libc++/dist/include/__debug Wed Jan 29 19:30:27 2014 (r261272) @@ -11,6 +11,10 @@ #ifndef _LIBCPP_DEBUG_H #define _LIBCPP_DEBUG_H +#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) +#pragma GCC system_header +#endif + #if _LIBCPP_DEBUG_LEVEL >= 1 # include @@ -34,8 +38,15 @@ struct _LIBCPP_TYPE_VIS __i_node __i_node* __next_; __c_node* __c_; +#ifndef _LIBCPP_HAS_NO_DELETED_FUNCTIONS __i_node(const __i_node&) = delete; __i_node& operator=(const __i_node&) = delete; +#else +private: + __i_node(const __i_node&); + __i_node& operator=(const __i_node&); +public: +#endif _LIBCPP_INLINE_VISIBILITY __i_node(void* __i, __i_node* __next, __c_node* __c) : __i_(__i), __next_(__next), __c_(__c) {} @@ -50,8 +61,15 @@ struct _LIBCPP_TYPE_VIS __c_node __i_node** end_; __i_node** cap_; +#ifndef _LIBCPP_HAS_NO_DELETED_FUNCTIONS __c_node(const __c_node&) = delete; __c_node& operator=(const __c_node&) = delete; +#else +private: + __c_node(const __c_node&); + __c_node& operator=(const __c_node&); +public: +#endif _LIBCPP_INLINE_VISIBILITY __c_node(void* __c, __c_node* __next) : __c_(__c), __next_(__next), beg_(nullptr), end_(nullptr), cap_(nullptr) {} @@ -130,8 +148,15 @@ class _LIBCPP_TYPE_VIS __libcpp_db __libcpp_db(); public: +#ifndef _LIBCPP_HAS_NO_DELETED_FUNCTIONS __libcpp_db(const __libcpp_db&) = delete; __libcpp_db& operator=(const __libcpp_db&) = delete; +#else +private: + __libcpp_db(const __libcpp_db&); + __libcpp_db& operator=(const __libcpp_db&); +public: +#endif ~__libcpp_db(); class __db_c_iterator; @@ -171,7 +196,7 @@ public: bool __decrementable(const void* __i) const; bool __addable(const void* __i, ptrdiff_t __n) const; bool __subscriptable(const void* __i, ptrdiff_t __n) const; - bool __comparable(const void* __i, const void* __j) const; + bool __less_than_comparable(const void* __i, const void* __j) const; private: _LIBCPP_HIDDEN __i_node* __insert_iterator(void* __i); Modified: vendor/libc++/dist/include/__functional_03 ============================================================================== --- vendor/libc++/dist/include/__functional_03 Wed Jan 29 19:28:52 2014 (r261271) +++ vendor/libc++/dist/include/__functional_03 Wed Jan 29 19:30:27 2014 (r261272) @@ -102,98 +102,98 @@ mem_fn(_Rp (_Tp::* __pm)(_A0, _A1, _A2)) template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)()> +__mem_fn<_Rp (_Tp::*)() const> mem_fn(_Rp (_Tp::* __pm)() const) { - return __mem_fn<_Rp (_Tp::*)()>(__pm); + return __mem_fn<_Rp (_Tp::*)() const>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0)> +__mem_fn<_Rp (_Tp::*)(_A0) const> mem_fn(_Rp (_Tp::* __pm)(_A0) const) { - return __mem_fn<_Rp (_Tp::*)(_A0)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0) const>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0, _A1)> +__mem_fn<_Rp (_Tp::*)(_A0, _A1) const> mem_fn(_Rp (_Tp::* __pm)(_A0, _A1) const) { - return __mem_fn<_Rp (_Tp::*)(_A0, _A1)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0, _A1) const>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2)> +__mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2) const> mem_fn(_Rp (_Tp::* __pm)(_A0, _A1, _A2) const) { - return __mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2) const>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)()> +__mem_fn<_Rp (_Tp::*)() volatile> mem_fn(_Rp (_Tp::* __pm)() volatile) { - return __mem_fn<_Rp (_Tp::*)()>(__pm); + return __mem_fn<_Rp (_Tp::*)() volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0)> +__mem_fn<_Rp (_Tp::*)(_A0) volatile> mem_fn(_Rp (_Tp::* __pm)(_A0) volatile) { - return __mem_fn<_Rp (_Tp::*)(_A0)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0) volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0, _A1)> +__mem_fn<_Rp (_Tp::*)(_A0, _A1) volatile> mem_fn(_Rp (_Tp::* __pm)(_A0, _A1) volatile) { - return __mem_fn<_Rp (_Tp::*)(_A0, _A1)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0, _A1) volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2)> +__mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2) volatile> mem_fn(_Rp (_Tp::* __pm)(_A0, _A1, _A2) volatile) { - return __mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2) volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)()> +__mem_fn<_Rp (_Tp::*)() const volatile> mem_fn(_Rp (_Tp::* __pm)() const volatile) { - return __mem_fn<_Rp (_Tp::*)()>(__pm); + return __mem_fn<_Rp (_Tp::*)() const volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0)> +__mem_fn<_Rp (_Tp::*)(_A0) const volatile> mem_fn(_Rp (_Tp::* __pm)(_A0) const volatile) { - return __mem_fn<_Rp (_Tp::*)(_A0)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0) const volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0, _A1)> +__mem_fn<_Rp (_Tp::*)(_A0, _A1) const volatile> mem_fn(_Rp (_Tp::* __pm)(_A0, _A1) const volatile) { - return __mem_fn<_Rp (_Tp::*)(_A0, _A1)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0, _A1) const volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2)> +__mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2) const volatile> mem_fn(_Rp (_Tp::* __pm)(_A0, _A1, _A2) const volatile) { - return __mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2) const volatile>(__pm); } // bad_function_call @@ -203,7 +203,7 @@ class _LIBCPP_EXCEPTION_ABI bad_function { }; -template class _LIBCPP_TYPE_VIS function; // undefined +template class _LIBCPP_TYPE_VIS_ONLY function; // undefined namespace __function { @@ -644,7 +644,7 @@ __func<_Fp, _Alloc, _Rp(_A0, _A1, _A2)>: } // __function template -class _LIBCPP_TYPE_VIS function<_Rp()> +class _LIBCPP_TYPE_VIS_ONLY function<_Rp()> { typedef __function::__base<_Rp()> __base; aligned_storage<3*sizeof(void*)>::type __buf_; @@ -928,7 +928,7 @@ function<_Rp()>::target() const #endif // _LIBCPP_NO_RTTI template -class _LIBCPP_TYPE_VIS function<_Rp(_A0)> +class _LIBCPP_TYPE_VIS_ONLY function<_Rp(_A0)> : public unary_function<_A0, _Rp> { typedef __function::__base<_Rp(_A0)> __base; @@ -1230,7 +1230,7 @@ function<_Rp(_A0)>::target() const #endif // _LIBCPP_NO_RTTI template -class _LIBCPP_TYPE_VIS function<_Rp(_A0, _A1)> +class _LIBCPP_TYPE_VIS_ONLY function<_Rp(_A0, _A1)> : public binary_function<_A0, _A1, _Rp> { typedef __function::__base<_Rp(_A0, _A1)> __base; @@ -1532,7 +1532,7 @@ function<_Rp(_A0, _A1)>::target() const #endif // _LIBCPP_NO_RTTI template -class _LIBCPP_TYPE_VIS function<_Rp(_A0, _A1, _A2)> +class _LIBCPP_TYPE_VIS_ONLY function<_Rp(_A0, _A1, _A2)> { typedef __function::__base<_Rp(_A0, _A1, _A2)> __base; aligned_storage<3*sizeof(void*)>::type __buf_; @@ -1860,11 +1860,11 @@ swap(function<_Fp>& __x, function<_Fp>& {return __x.swap(__y);} template struct __is_bind_expression : public false_type {}; -template struct _LIBCPP_TYPE_VIS is_bind_expression +template struct _LIBCPP_TYPE_VIS_ONLY is_bind_expression : public __is_bind_expression::type> {}; template struct __is_placeholder : public integral_constant {}; -template struct _LIBCPP_TYPE_VIS is_placeholder +template struct _LIBCPP_TYPE_VIS_ONLY is_placeholder : public __is_placeholder::type> {}; namespace placeholders Modified: vendor/libc++/dist/include/__functional_base ============================================================================== --- vendor/libc++/dist/include/__functional_base Wed Jan 29 19:28:52 2014 (r261271) +++ vendor/libc++/dist/include/__functional_base Wed Jan 29 19:30:27 2014 (r261272) @@ -15,6 +15,7 @@ #include #include #include +#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #pragma GCC system_header @@ -23,21 +24,21 @@ _LIBCPP_BEGIN_NAMESPACE_STD template -struct _LIBCPP_TYPE_VIS unary_function +struct _LIBCPP_TYPE_VIS_ONLY unary_function { typedef _Arg argument_type; typedef _Result result_type; }; template -struct _LIBCPP_TYPE_VIS binary_function +struct _LIBCPP_TYPE_VIS_ONLY binary_function { typedef _Arg1 first_argument_type; typedef _Arg2 second_argument_type; typedef _Result result_type; }; -template struct _LIBCPP_TYPE_VIS hash; +template struct _LIBCPP_TYPE_VIS_ONLY hash; template struct __has_result_type @@ -50,13 +51,80 @@ public: static const bool value = sizeof(__test<_Tp>(0)) == 1; }; +#if _LIBCPP_STD_VER > 11 +template +#else template -struct _LIBCPP_TYPE_VIS less : binary_function<_Tp, _Tp, bool> +#endif +struct _LIBCPP_TYPE_VIS_ONLY less : binary_function<_Tp, _Tp, bool> { - _LIBCPP_INLINE_VISIBILITY bool operator()(const _Tp& __x, const _Tp& __y) const + _LIBCPP_CONSTEXPR_AFTER_CXX11 _LIBCPP_INLINE_VISIBILITY + bool operator()(const _Tp& __x, const _Tp& __y) const {return __x < __y;} }; +#if _LIBCPP_STD_VER > 11 +template <> +struct _LIBCPP_TYPE_VIS_ONLY less +{ + template + _LIBCPP_CONSTEXPR_AFTER_CXX11 _LIBCPP_INLINE_VISIBILITY + auto operator()(_T1&& __t, _T2&& __u) const + { return _VSTD::forward<_T1>(__t) < _VSTD::forward<_T2>(__u); } + typedef void is_transparent; +}; +#endif + +// addressof + +template +inline _LIBCPP_INLINE_VISIBILITY +_Tp* +addressof(_Tp& __x) _NOEXCEPT +{ + return (_Tp*)&reinterpret_cast(__x); +} + +#if defined(_LIBCPP_HAS_OBJC_ARC) && !defined(_LIBCPP_PREDEFINED_OBJC_ARC_ADDRESSOF) +// Objective-C++ Automatic Reference Counting uses qualified pointers +// that require special addressof() signatures. When +// _LIBCPP_PREDEFINED_OBJC_ARC_ADDRESSOF is defined, the compiler +// itself is providing these definitions. Otherwise, we provide them. +template +inline _LIBCPP_INLINE_VISIBILITY +__strong _Tp* +addressof(__strong _Tp& __x) _NOEXCEPT +{ + return &__x; +} + +#ifdef _LIBCPP_HAS_OBJC_ARC_WEAK +template +inline _LIBCPP_INLINE_VISIBILITY +__weak _Tp* +addressof(__weak _Tp& __x) _NOEXCEPT +{ + return &__x; +} +#endif + +template +inline _LIBCPP_INLINE_VISIBILITY +__autoreleasing _Tp* +addressof(__autoreleasing _Tp& __x) _NOEXCEPT +{ + return &__x; +} + +template +inline _LIBCPP_INLINE_VISIBILITY +__unsafe_unretained _Tp* +addressof(__unsafe_unretained _Tp& __x) _NOEXCEPT +{ + return &__x; +} +#endif + #ifdef _LIBCPP_HAS_NO_VARIADICS #include <__functional_base_03> @@ -352,7 +420,7 @@ struct __invoke_return }; template -class _LIBCPP_TYPE_VIS reference_wrapper +class _LIBCPP_TYPE_VIS_ONLY reference_wrapper : public __weak_result_type<_Tp> { public: @@ -363,7 +431,8 @@ private: public: // construct/copy/destroy - _LIBCPP_INLINE_VISIBILITY reference_wrapper(type& __f) _NOEXCEPT : __f_(&__f) {} + _LIBCPP_INLINE_VISIBILITY reference_wrapper(type& __f) _NOEXCEPT + : __f_(_VSTD::addressof(__f)) {} #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES private: reference_wrapper(type&&); public: // = delete; // do not bind to temps #endif @@ -436,6 +505,111 @@ template void cref(const _Tp #endif // _LIBCPP_HAS_NO_VARIADICS +#if _LIBCPP_STD_VER > 11 +template +struct __is_transparent +{ +private: + struct __two {char __lx; char __lxx;}; + template static __two __test(...); + template static char __test(typename _Up::is_transparent* = 0); +public: + static const bool value = sizeof(__test<_Tp1>(0)) == 1; +}; +#endif + +// allocator_arg_t + +struct _LIBCPP_TYPE_VIS_ONLY allocator_arg_t { }; + +#if defined(_LIBCPP_HAS_NO_CONSTEXPR) || defined(_LIBCPP_BUILDING_MEMORY) +extern const allocator_arg_t allocator_arg; +#else +constexpr allocator_arg_t allocator_arg = allocator_arg_t(); +#endif + +// uses_allocator + +template +struct __has_allocator_type +{ +private: + struct __two {char __lx; char __lxx;}; + template static __two __test(...); + template static char __test(typename _Up::allocator_type* = 0); +public: + static const bool value = sizeof(__test<_Tp>(0)) == 1; +}; + +template ::value> +struct __uses_allocator + : public integral_constant::value> +{ +}; + +template +struct __uses_allocator<_Tp, _Alloc, false> + : public false_type +{ +}; + +template +struct _LIBCPP_TYPE_VIS_ONLY uses_allocator + : public __uses_allocator<_Tp, _Alloc> +{ +}; + +#ifndef _LIBCPP_HAS_NO_VARIADICS + +// allocator construction + +template +struct __uses_alloc_ctor_imp +{ + static const bool __ua = uses_allocator<_Tp, _Alloc>::value; + static const bool __ic = + is_constructible<_Tp, allocator_arg_t, _Alloc, _Args...>::value; + static const int value = __ua ? 2 - __ic : 0; +}; + +template +struct __uses_alloc_ctor + : integral_constant::value> + {}; + +template +inline _LIBCPP_INLINE_VISIBILITY +void __user_alloc_construct_impl (integral_constant, _Tp *__storage, const _Allocator &, _Args &&... __args ) +{ + new (__storage) _Tp (_VSTD::forward<_Args>(__args)...); +} + +template +inline _LIBCPP_INLINE_VISIBILITY +void __user_alloc_construct_impl (integral_constant, _Tp *__storage, const _Allocator &__a, _Args &&... __args ) +{ + new (__storage) _Tp (allocator_arg, __a, _VSTD::forward<_Args>(__args)...); +} + +template +inline _LIBCPP_INLINE_VISIBILITY +void __user_alloc_construct_impl (integral_constant, _Tp *__storage, const _Allocator &__a, _Args &&... __args ) +{ + new (__storage) _Tp (_VSTD::forward<_Args>(__args)..., __a); +} + +template +inline _LIBCPP_INLINE_VISIBILITY +void __user_alloc_construct (_Tp *__storage, const _Allocator &__a, _Args &&... __args) +{ + __user_alloc_construct_impl( + __uses_alloc_ctor<_Tp, _Allocator>(), + __storage, __a, _VSTD::forward<_Args>(__args)... + ); +} +#endif // _LIBCPP_HAS_NO_VARIADICS + _LIBCPP_END_NAMESPACE_STD #endif // _LIBCPP_FUNCTIONAL_BASE Modified: vendor/libc++/dist/include/__functional_base_03 ============================================================================== --- vendor/libc++/dist/include/__functional_base_03 Wed Jan 29 19:28:52 2014 (r261271) +++ vendor/libc++/dist/include/__functional_base_03 Wed Jan 29 19:30:27 2014 (r261272) @@ -996,7 +996,7 @@ struct __invoke_return2 }; template -class _LIBCPP_TYPE_VIS reference_wrapper +class _LIBCPP_TYPE_VIS_ONLY reference_wrapper : public __weak_result_type<_Tp> { public: Modified: vendor/libc++/dist/include/__hash_table ============================================================================== --- vendor/libc++/dist/include/__hash_table Wed Jan 29 19:28:52 2014 (r261271) +++ vendor/libc++/dist/include/__hash_table Wed Jan 29 19:30:27 2014 (r261272) @@ -20,6 +20,12 @@ #include <__undef_min_max> +#ifdef _LIBCPP_DEBUG +# include <__debug> +#else +# define _LIBCPP_ASSERT(x, m) ((void)0) +#endif + #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #pragma GCC system_header #endif @@ -79,14 +85,14 @@ __next_pow2(size_t __n) } template class __hash_table; -template class _LIBCPP_TYPE_VIS __hash_const_iterator; -template class _LIBCPP_TYPE_VIS __hash_map_iterator; -template class _LIBCPP_TYPE_VIS __hash_map_const_iterator; +template class _LIBCPP_TYPE_VIS_ONLY __hash_const_iterator; +template class _LIBCPP_TYPE_VIS_ONLY __hash_map_iterator; +template class _LIBCPP_TYPE_VIS_ONLY __hash_map_const_iterator; template - class _LIBCPP_TYPE_VIS unordered_map; + class _LIBCPP_TYPE_VIS_ONLY unordered_map; template -class _LIBCPP_TYPE_VIS __hash_iterator +class _LIBCPP_TYPE_VIS_ONLY __hash_iterator { typedef _NodePtr __node_pointer; @@ -105,16 +111,70 @@ public: #endif pointer; - _LIBCPP_INLINE_VISIBILITY __hash_iterator() _NOEXCEPT {} + _LIBCPP_INLINE_VISIBILITY __hash_iterator() _NOEXCEPT +#if _LIBCPP_STD_VER > 11 + : __node_(nullptr) +#endif + { +#if _LIBCPP_DEBUG_LEVEL >= 2 + __get_db()->__insert_i(this); +#endif + } + +#if _LIBCPP_DEBUG_LEVEL >= 2 *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 19:31:58 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B0EAB4D5; Wed, 29 Jan 2014 19:31:58 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 854BD1DF3; Wed, 29 Jan 2014 19:31:58 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TJVwl3010526; Wed, 29 Jan 2014 19:31:58 GMT (envelope-from dim@svn.freebsd.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TJVwbw010525; Wed, 29 Jan 2014 19:31:58 GMT (envelope-from dim@svn.freebsd.org) Message-Id: <201401291931.s0TJVwbw010525@svn.freebsd.org> From: Dimitry Andric Date: Wed, 29 Jan 2014 19:31:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261273 - vendor/libc++/r197960 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 19:31:58 -0000 Author: dim Date: Wed Jan 29 19:31:58 2014 New Revision: 261273 URL: http://svnweb.freebsd.org/changeset/base/261273 Log: Tag libc++ tags/RELEASE_34/final r197960. Added: vendor/libc++/r197960/ - copied from r261272, vendor/libc++/dist/ From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 20:48:27 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 14238115; Wed, 29 Jan 2014 20:48:27 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id F314D13E0; Wed, 29 Jan 2014 20:48:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TKmQr4039702; Wed, 29 Jan 2014 20:48:26 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TKmQIJ039701; Wed, 29 Jan 2014 20:48:26 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401292048.s0TKmQIJ039701@svn.freebsd.org> From: Brooks Davis Date: Wed, 29 Jan 2014 20:48:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261274 - stable/10/sys/mips/beri X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 20:48:27 -0000 Author: brooks Date: Wed Jan 29 20:48:26 2014 New Revision: 261274 URL: http://svnweb.freebsd.org/changeset/base/261274 Log: MFC r256745: MFP4: Change 227630 by bz@bz_zenith on 2013/04/12 08:50:27 Implement soft reset setting sr in sr and just in case loop endlessly afterwards. Sponsored by: DARPA/AFRL Modified: stable/10/sys/mips/beri/beri_machdep.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/mips/beri/beri_machdep.c ============================================================================== --- stable/10/sys/mips/beri/beri_machdep.c Wed Jan 29 19:31:58 2014 (r261273) +++ stable/10/sys/mips/beri/beri_machdep.c Wed Jan 29 20:48:26 2014 (r261274) @@ -116,14 +116,19 @@ mips_init(void) /* * Perform a board-level soft-reset. - * - * XXXRW: BERI doesn't yet have a board-level soft-reset. */ void platform_reset(void) { - panic("%s: not yet", __func__); + /* XXX SMP will likely require us to do more. */ + __asm__ __volatile__( + "mfc0 $k0, $12\n\t" + "li $k1, 0x00100000\n\t" + "or $k0, $k0, $k1\n\t" + "mtc0 $k0, $12\n"); + for( ; ; ) + __asm__ __volatile("wait"); } void From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 21:22:37 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 53931ADF; Wed, 29 Jan 2014 21:22:37 +0000 (UTC) Received: from mail.ebusiness-leidinger.de (mail.ebusiness-leidinger.de [217.11.53.44]) by mx1.freebsd.org (Postfix) with ESMTP id 023D41716; Wed, 29 Jan 2014 21:22:36 +0000 (UTC) Received: from outgoing.leidinger.net (pD9FBB16E.dip0.t-ipconnect.de [217.251.177.110]) by mail.ebusiness-leidinger.de (Postfix) with ESMTPSA id AB2A1844138; Wed, 29 Jan 2014 22:22:14 +0100 (CET) Received: from unknown (Titan.Leidinger.net [192.168.1.17]) by outgoing.leidinger.net (Postfix) with ESMTP id 96A913B9F; Wed, 29 Jan 2014 22:22:11 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=leidinger.net; s=outgoing-alex; t=1391030531; bh=gUS0j8+kUspTlgK7zJG8b79UXn0NuhSGKxA3AzAi8dU=; h=Date:From:To:Cc:Subject:In-Reply-To:References; b=OgHZoho729Tzls/wJNAGpI6Tl2g6ccXAQWSBIjcdyPctRoGHwpzT0V/UvEP1L4pf4 2LHDgZ4U0OXblf/fTjRL2iUuHkQxWNz+/KPPu2mpSiJSsmUtMxhXBgOLISNhwroQ1Y gUS0F1ml1oPIqIA56K1lAUsCONx4+01SsRFeKfgH4PT9uwH8bFDHCzbIJVilqwPl2C 7DqMoDJjQcyU/1Ac1C3rcnHR2TZ9BcXNnhyaUgfjsNqCMYQUFIDt809lBvm//wI3M5 JiOicihUgU3x0+rK/CKPBXeJyU2mrATEnkcTJ1aVDRvXKTie0Vt5RrVbk4MS1sKHu3 ZM6Nv7S4ISq1g== Date: Wed, 29 Jan 2014 22:22:10 +0100 From: Alexander Leidinger To: James Gritton Subject: Re: svn commit: r261266 - in head: sys/dev/drm sys/kern sys/sys usr.sbin/jail Message-ID: <20140129222210.0000711f@unknown> In-Reply-To: <52E906CD.9050202@freebsd.org> References: <201401291341.s0TDfDcB068211@svn.freebsd.org> <20140129134344.GW66160@FreeBSD.org> <52E906CD.9050202@freebsd.org> X-Mailer: Claws Mail 3.9.2-55-g74b05b (GTK+ 2.16.6; i586-pc-mingw32msvc) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-EBL-MailScanner-Information: Please contact the ISP for more information X-EBL-MailScanner-ID: AB2A1844138.A0C9E X-EBL-MailScanner: Found to be clean X-EBL-MailScanner-SpamCheck: not spam, spamhaus-ZEN, SpamAssassin (not cached, score=-0.936, required 6, autolearn=disabled, ALL_TRUSTED -1.00, AWL 0.01, DKIM_SIGNED 0.10, DKIM_VALID -0.10, DKIM_VALID_AU -0.10, RP_MATCHES_RCVD -0.00, TW_EV 0.08, TW_SV 0.08) X-EBL-MailScanner-From: alexander@leidinger.net X-EBL-MailScanner-Watermark: 1391635336.48393@eAcf6kcnE/FDsV7g4M+W5g X-EBL-Spam-Status: No Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Gleb Smirnoff , src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 21:22:37 -0000 On Wed, 29 Jan 2014 06:49:01 -0700 James Gritton wrote: > On 1/29/2014 6:43 AM, Gleb Smirnoff wrote: > > Doesn't this allow to easily unjail self? :) > It does. I included a warning in jail.8 that this will pretty much > undo jail security. There are still reasons some may want to do this, > but it's definitely not for everyone or even most people. It only "unjails" (= basically the same security level as the jail-host with the added benefit of the flexibility of a jail like easy moving from one system to another) the jail which has this flag set. All other jails without the flag can not "escape" to the host. I also have to add that just setting this flag does not give access to the host, you also have to configure a non-default devfs rule for this jail (to have the devices appear in the jail). Bye, Alexander. -- http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID = B0063FE7 http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID = 72077137 From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 21:23:40 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0F5B8C5D; Wed, 29 Jan 2014 21:23:40 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id ED2C4171E; Wed, 29 Jan 2014 21:23:39 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TLNdPt055154; Wed, 29 Jan 2014 21:23:39 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TLNcxg055145; Wed, 29 Jan 2014 21:23:38 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401292123.s0TLNcxg055145@svn.freebsd.org> From: John Baldwin Date: Wed, 29 Jan 2014 21:23:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261275 - in stable/10/sys: amd64/amd64 amd64/include amd64/vmm amd64/vmm/amd amd64/vmm/intel x86/acpica X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 21:23:40 -0000 Author: jhb Date: Wed Jan 29 21:23:37 2014 New Revision: 261275 URL: http://svnweb.freebsd.org/changeset/base/261275 Log: MFC 259782: Add a resume hook for bhyve that runs a function on all CPUs during resume. For Intel CPUs, invoke vmxon for CPUs that were in VMX mode at the time of suspend. Modified: stable/10/sys/amd64/amd64/machdep.c stable/10/sys/amd64/amd64/mp_machdep.c stable/10/sys/amd64/include/cpu.h stable/10/sys/amd64/include/vmm.h stable/10/sys/amd64/vmm/amd/amdv.c stable/10/sys/amd64/vmm/intel/vmx.c stable/10/sys/amd64/vmm/vmm.c stable/10/sys/x86/acpica/acpi_wakeup.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/amd64/amd64/machdep.c ============================================================================== --- stable/10/sys/amd64/amd64/machdep.c Wed Jan 29 20:48:26 2014 (r261274) +++ stable/10/sys/amd64/amd64/machdep.c Wed Jan 29 21:23:37 2014 (r261275) @@ -216,6 +216,8 @@ struct mem_range_softc mem_range_softc; struct mtx dt_lock; /* lock for GDT and LDT */ +void (*vmm_resume_p)(void); + static void cpu_startup(dummy) void *dummy; Modified: stable/10/sys/amd64/amd64/mp_machdep.c ============================================================================== --- stable/10/sys/amd64/amd64/mp_machdep.c Wed Jan 29 20:48:26 2014 (r261274) +++ stable/10/sys/amd64/amd64/mp_machdep.c Wed Jan 29 21:23:37 2014 (r261275) @@ -1483,6 +1483,8 @@ cpususpend_handler(void) if (cpu_ops.cpu_resume) cpu_ops.cpu_resume(); + if (vmm_resume_p) + vmm_resume_p(); /* Resume MCA and local APIC */ mca_resume(); Modified: stable/10/sys/amd64/include/cpu.h ============================================================================== --- stable/10/sys/amd64/include/cpu.h Wed Jan 29 20:48:26 2014 (r261274) +++ stable/10/sys/amd64/include/cpu.h Wed Jan 29 21:23:37 2014 (r261275) @@ -70,6 +70,9 @@ extern struct cpu_ops cpu_ops; extern char btext[]; extern char etext[]; +/* Resume hook for VMM. */ +extern void (*vmm_resume_p)(void); + void cpu_halt(void); void cpu_reset(void); void fork_trampoline(void); Modified: stable/10/sys/amd64/include/vmm.h ============================================================================== --- stable/10/sys/amd64/include/vmm.h Wed Jan 29 20:48:26 2014 (r261274) +++ stable/10/sys/amd64/include/vmm.h Wed Jan 29 21:23:37 2014 (r261275) @@ -49,6 +49,7 @@ enum x2apic_state; typedef int (*vmm_init_func_t)(void); typedef int (*vmm_cleanup_func_t)(void); +typedef void (*vmm_resume_func_t)(void); typedef void * (*vmi_init_func_t)(struct vm *vm, struct pmap *pmap); typedef int (*vmi_run_func_t)(void *vmi, int vcpu, register_t rip, struct pmap *pmap); @@ -72,6 +73,7 @@ typedef void (*vmi_vmspace_free)(struct struct vmm_ops { vmm_init_func_t init; /* module wide initialization */ vmm_cleanup_func_t cleanup; + vmm_resume_func_t resume; vmi_init_func_t vminit; /* vm-specific initialization */ vmi_run_func_t vmrun; Modified: stable/10/sys/amd64/vmm/amd/amdv.c ============================================================================== --- stable/10/sys/amd64/vmm/amd/amdv.c Wed Jan 29 20:48:26 2014 (r261274) +++ stable/10/sys/amd64/vmm/amd/amdv.c Wed Jan 29 21:23:37 2014 (r261275) @@ -53,6 +53,11 @@ amdv_cleanup(void) return (ENXIO); } +static void +amdv_resume(void) +{ +} + static void * amdv_vminit(struct vm *vm, struct pmap *pmap) { @@ -153,6 +158,7 @@ amdv_vmspace_free(struct vmspace *vmspac struct vmm_ops vmm_ops_amd = { amdv_init, amdv_cleanup, + amdv_resume, amdv_vminit, amdv_vmrun, amdv_vmcleanup, Modified: stable/10/sys/amd64/vmm/intel/vmx.c ============================================================================== --- stable/10/sys/amd64/vmm/intel/vmx.c Wed Jan 29 20:48:26 2014 (r261274) +++ stable/10/sys/amd64/vmm/intel/vmx.c Wed Jan 29 21:23:37 2014 (r261275) @@ -526,6 +526,14 @@ vmx_enable(void *arg __unused) vmxon_enabled[curcpu] = 1; } +static void +vmx_restore(void) +{ + + if (vmxon_enabled[curcpu]) + vmxon(vmxon_region[curcpu]); +} + static int vmx_init(void) { @@ -2053,6 +2061,7 @@ vmx_setcap(void *arg, int vcpu, int type struct vmm_ops vmm_ops_intel = { vmx_init, vmx_cleanup, + vmx_restore, vmx_vminit, vmx_run, vmx_vmcleanup, Modified: stable/10/sys/amd64/vmm/vmm.c ============================================================================== --- stable/10/sys/amd64/vmm/vmm.c Wed Jan 29 20:48:26 2014 (r261274) +++ stable/10/sys/amd64/vmm/vmm.c Wed Jan 29 21:23:37 2014 (r261275) @@ -52,6 +52,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include @@ -131,6 +132,7 @@ static int vmm_initialized; static struct vmm_ops *ops; #define VMM_INIT() (ops != NULL ? (*ops->init)() : 0) #define VMM_CLEANUP() (ops != NULL ? (*ops->cleanup)() : 0) +#define VMM_RESUME() (ops != NULL ? (*ops->resume)() : 0) #define VMINIT(vm, pmap) (ops != NULL ? (*ops->vminit)(vm, pmap): NULL) #define VMRUN(vmi, vcpu, rip, pmap) \ @@ -202,6 +204,12 @@ vm_exitinfo(struct vm *vm, int cpuid) return (&vcpu->exitinfo); } +static void +vmm_resume(void) +{ + VMM_RESUME(); +} + static int vmm_init(void) { @@ -222,6 +230,7 @@ vmm_init(void) return (ENXIO); vmm_msr_init(); + vmm_resume_p = vmm_resume; return (VMM_INIT()); } @@ -242,6 +251,7 @@ vmm_handler(module_t mod, int what, void case MOD_UNLOAD: error = vmmdev_cleanup(); if (error == 0) { + vmm_resume_p = NULL; iommu_cleanup(); vmm_ipi_cleanup(); error = VMM_CLEANUP(); Modified: stable/10/sys/x86/acpica/acpi_wakeup.c ============================================================================== --- stable/10/sys/x86/acpica/acpi_wakeup.c Wed Jan 29 20:48:26 2014 (r261274) +++ stable/10/sys/x86/acpica/acpi_wakeup.c Wed Jan 29 21:23:37 2014 (r261275) @@ -42,6 +42,7 @@ __FBSDID("$FreeBSD$"); #include #include +#include #include #include #include @@ -266,6 +267,10 @@ acpi_wakeup_machdep(struct acpi_softc *s restart_cpus(suspcpus); #endif mca_resume(); +#ifdef __amd64__ + if (vmm_resume_p != NULL) + vmm_resume_p(); +#endif intr_resume(/*suspend_cancelled*/false); AcpiSetFirmwareWakingVector(0); From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 21:57:00 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E0D63A4A; Wed, 29 Jan 2014 21:57:00 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CBC7F19BA; Wed, 29 Jan 2014 21:57:00 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TLv0S8066994; Wed, 29 Jan 2014 21:57:00 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TLv0KK066993; Wed, 29 Jan 2014 21:57:00 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401292157.s0TLv0KK066993@svn.freebsd.org> From: Brooks Davis Date: Wed, 29 Jan 2014 21:57:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261276 - stable/10/sys/kern X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 21:57:01 -0000 Author: brooks Date: Wed Jan 29 21:57:00 2014 New Revision: 261276 URL: http://svnweb.freebsd.org/changeset/base/261276 Log: MFC r256945: MFP4: Change 221669 by bz@bz_zenith on 2013/02/01 12:26:04 Run the initialization for polling earlier along with INTRs so that we can put network interface into polling mode by default if DEVICE_POLLING is compiled in and no interrupts are available. Sponsored by: DARPA/AFRL Modified: stable/10/sys/kern/kern_poll.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/kern/kern_poll.c ============================================================================== --- stable/10/sys/kern/kern_poll.c Wed Jan 29 21:23:37 2014 (r261275) +++ stable/10/sys/kern/kern_poll.c Wed Jan 29 21:57:00 2014 (r261276) @@ -267,7 +267,7 @@ init_device_poll(void) EVENTHANDLER_REGISTER(shutdown_post_sync, poll_shutdown, NULL, SHUTDOWN_PRI_LAST); } -SYSINIT(device_poll, SI_SUB_CLOCKS, SI_ORDER_MIDDLE, init_device_poll, NULL); +SYSINIT(device_poll, SI_SUB_SOFTINTR, SI_ORDER_MIDDLE, init_device_poll, NULL); /* From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 22:01:43 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7B532D64; Wed, 29 Jan 2014 22:01:43 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5AE311A47; Wed, 29 Jan 2014 22:01:43 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TM1hxl070326; Wed, 29 Jan 2014 22:01:43 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TM1guX070323; Wed, 29 Jan 2014 22:01:42 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401292201.s0TM1guX070323@svn.freebsd.org> From: Brooks Davis Date: Wed, 29 Jan 2014 22:01:42 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261277 - in stable/10/sys: conf mips/mips X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 22:01:43 -0000 Author: brooks Date: Wed Jan 29 22:01:42 2014 New Revision: 261277 URL: http://svnweb.freebsd.org/changeset/base/261277 Log: MFC r256937: MFP4: Change 231031 by brooks@brooks_zenith on 2013/07/11 16:22:08 Turn the unused and uncompilable MIPS_DISABLE_L1_CACHE define in cache.c into an option and when set force I- and D-cache line sizes to 0 (the latter part might be better as a tunable). Fix some casts in an #if 0'd bit of code which attempts to disable L1 cache ops when the cache is coherent. Sponsored by: DARPA/AFRL Modified: stable/10/sys/conf/options.mips stable/10/sys/mips/mips/cache.c stable/10/sys/mips/mips/cpu.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/conf/options.mips ============================================================================== --- stable/10/sys/conf/options.mips Wed Jan 29 21:57:00 2014 (r261276) +++ stable/10/sys/conf/options.mips Wed Jan 29 22:01:42 2014 (r261277) @@ -71,6 +71,11 @@ TICK_USE_MALTA_RTC opt_global.h MAXMEM opt_global.h # +# Manual override of cache config +# +MIPS_DISABLE_L1_CACHE opt_global.h + +# # Options that control the Cavium Simple Executive. # OCTEON_MODEL opt_cvmx.h Modified: stable/10/sys/mips/mips/cache.c ============================================================================== --- stable/10/sys/mips/mips/cache.c Wed Jan 29 21:57:00 2014 (r261276) +++ stable/10/sys/mips/mips/cache.c Wed Jan 29 22:01:42 2014 (r261277) @@ -116,11 +116,9 @@ mips_config_cache(struct mips_cpuinfo * #ifdef MIPS_DISABLE_L1_CACHE case 0: - mips_cache_ops.mco_icache_sync_all = cache_noop; - mips_cache_ops.mco_icache_sync_range = - (void (*)(vaddr_t, vsize_t))cache_noop; - mips_cache_ops.mco_icache_sync_range_index = - (void (*)(vaddr_t, vsize_t))cache_noop; + mips_cache_ops.mco_icache_sync_all = (void (*)(void))cache_noop; + mips_cache_ops.mco_icache_sync_range = cache_noop; + mips_cache_ops.mco_icache_sync_range_index = cache_noop; break; #endif default: @@ -193,20 +191,16 @@ mips_config_cache(struct mips_cpuinfo * #endif #ifdef MIPS_DISABLE_L1_CACHE case 0: - mips_cache_ops.mco_pdcache_wbinv_all = cache_noop; - mips_cache_ops.mco_intern_pdcache_wbinv_all = cache_noop; - mips_cache_ops.mco_pdcache_wbinv_range = - (void (*)(vaddr_t, vsize_t))cache_noop; - mips_cache_ops.mco_pdcache_wbinv_range_index = - (void (*)(vaddr_t, vsize_t))cache_noop; + mips_cache_ops.mco_pdcache_wbinv_all = + mips_cache_ops.mco_intern_pdcache_wbinv_all = + (void (*)(void))cache_noop; + mips_cache_ops.mco_pdcache_wbinv_range = cache_noop; + mips_cache_ops.mco_pdcache_wbinv_range_index = cache_noop; mips_cache_ops.mco_intern_pdcache_wbinv_range_index = - (void (*)(vaddr_t, vsize_t))cache_noop; - mips_cache_ops.mco_pdcache_inv_range = - (void (*)(vaddr_t, vsize_t))cache_noop; - mips_cache_ops.mco_pdcache_wb_range = - (void (*)(vaddr_t, vsize_t))cache_noop; - mips_cache_ops.mco_intern_pdcache_wb_range = - (void (*)(vaddr_t, vsize_t))cache_noop; + cache_noop; + mips_cache_ops.mco_pdcache_inv_range = cache_noop; + mips_cache_ops.mco_pdcache_wb_range = cache_noop; + mips_cache_ops.mco_intern_pdcache_wb_range = cache_noop; break; #endif default: @@ -222,26 +216,22 @@ mips_config_cache(struct mips_cpuinfo * #ifdef CACHE_DEBUG printf(" Dcache is coherent\n"); #endif - mips_cache_ops.mco_pdcache_wbinv_all = cache_noop; - mips_cache_ops.mco_pdcache_wbinv_range = - (void (*)(vaddr_t, vsize_t))cache_noop; - mips_cache_ops.mco_pdcache_wbinv_range_index = - (void (*)(vaddr_t, vsize_t))cache_noop; - mips_cache_ops.mco_pdcache_inv_range = - (void (*)(vaddr_t, vsize_t))cache_noop; - mips_cache_ops.mco_pdcache_wb_range = - (void (*)(vaddr_t, vsize_t))cache_noop; + mips_cache_ops.mco_pdcache_wbinv_all = + (void (*)(void))cache_noop; + mips_cache_ops.mco_pdcache_wbinv_range = cache_noop; + mips_cache_ops.mco_pdcache_wbinv_range_index = cache_noop; + mips_cache_ops.mco_pdcache_inv_range = cache_noop; + mips_cache_ops.mco_pdcache_wb_range = cache_noop; } if (mips_cpu_flags & CPU_MIPS_I_D_CACHE_COHERENT) { #ifdef CACHE_DEBUG printf(" Icache is coherent against Dcache\n"); #endif mips_cache_ops.mco_intern_pdcache_wbinv_all = - cache_noop; + (void (*)(void))cache_noop; mips_cache_ops.mco_intern_pdcache_wbinv_range_index = - (void (*)(vaddr_t, vsize_t))cache_noop; - mips_cache_ops.mco_intern_pdcache_wb_range = - (void (*)(vaddr_t, vsize_t))cache_noop; + cache_noop; + mips_cache_ops.mco_intern_pdcache_wb_range = cache_noop; } #endif Modified: stable/10/sys/mips/mips/cpu.c ============================================================================== --- stable/10/sys/mips/mips/cpu.c Wed Jan 29 21:57:00 2014 (r261276) +++ stable/10/sys/mips/mips/cpu.c Wed Jan 29 22:01:42 2014 (r261277) @@ -128,6 +128,9 @@ mips_get_identity(struct mips_cpuinfo *c #endif /* L1 instruction cache. */ +#ifdef MIPS_DISABLE_L1_CACHE + cpuinfo->l1.ic_linesize = 0; +#else tmp = (cfg1 & MIPS_CONFIG1_IL_MASK) >> MIPS_CONFIG1_IL_SHIFT; if (tmp != 0) { cpuinfo->l1.ic_linesize = 1 << (tmp + 1); @@ -135,8 +138,12 @@ mips_get_identity(struct mips_cpuinfo *c cpuinfo->l1.ic_nsets = 1 << (((cfg1 & MIPS_CONFIG1_IS_MASK) >> MIPS_CONFIG1_IS_SHIFT) + 6); } +#endif /* L1 data cache. */ +#ifdef MIPS_DISABLE_L1_CACHE + cpuinfo->l1.dc_linesize = 0; +#else #ifndef CPU_CNMIPS tmp = (cfg1 & MIPS_CONFIG1_DL_MASK) >> MIPS_CONFIG1_DL_SHIFT; if (tmp != 0) { @@ -173,6 +180,7 @@ mips_get_identity(struct mips_cpuinfo *c /* All Octeon models use 128 byte line size. */ cpuinfo->l1.dc_linesize = 128; #endif +#endif cpuinfo->l1.ic_size = cpuinfo->l1.ic_linesize * cpuinfo->l1.ic_nsets * cpuinfo->l1.ic_nways; From owner-svn-src-all@FreeBSD.ORG Wed Jan 29 22:06:39 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3AAFCFF2; Wed, 29 Jan 2014 22:06:39 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 25BE31A74; Wed, 29 Jan 2014 22:06:39 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0TM6dtw071191; Wed, 29 Jan 2014 22:06:39 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0TM6dgd071190; Wed, 29 Jan 2014 22:06:39 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401292206.s0TM6dgd071190@svn.freebsd.org> From: Brooks Davis Date: Wed, 29 Jan 2014 22:06:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261278 - stable/10/sys/mips/mips X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 29 Jan 2014 22:06:39 -0000 Author: brooks Date: Wed Jan 29 22:06:38 2014 New Revision: 261278 URL: http://svnweb.freebsd.org/changeset/base/261278 Log: MFC r256939 MFP4: Change 221767 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2013/02/05 14:18:53 When printing out information on a TLB MOD exception for a user process (e.g., an attempt to write to a read-only page), report it as a "write" in the console message, rather than "unknown". Change 221768 by rwatson@rwatson_zenith_cl_cam_ac_uk on 2013/02/05 14:28:00 Fix post-compile but pre-commit typo in last changeset. Sponsored by: DARPA/AFRL Modified: stable/10/sys/mips/mips/trap.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/mips/mips/trap.c ============================================================================== --- stable/10/sys/mips/mips/trap.c Wed Jan 29 22:01:42 2014 (r261277) +++ stable/10/sys/mips/mips/trap.c Wed Jan 29 22:06:38 2014 (r261278) @@ -1520,6 +1520,7 @@ log_bad_page_fault(char *msg, struct tra printf("cpuid = %d\n", PCPU_GET(cpuid)); #endif switch (trap_type) { + case T_TLB_MOD: case T_TLB_ST_MISS: case T_ADDR_ERR_ST: read_or_write = "write"; From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 03:14:36 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EFCDA2CA; Thu, 30 Jan 2014 03:14:36 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id DD43E1A15; Thu, 30 Jan 2014 03:14:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0U3EawB092225; Thu, 30 Jan 2014 03:14:36 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0U3EaXX092224; Thu, 30 Jan 2014 03:14:36 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401300314.s0U3EaXX092224@svn.freebsd.org> From: Warner Losh Date: Thu, 30 Jan 2014 03:14:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261279 - head/sys/arm/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 03:14:37 -0000 Author: imp Date: Thu Jan 30 03:14:36 2014 New Revision: 261279 URL: http://svnweb.freebsd.org/changeset/base/261279 Log: Fix the name of the dts file for the HL201... Modified: head/sys/arm/conf/HL201 Modified: head/sys/arm/conf/HL201 ============================================================================== --- head/sys/arm/conf/HL201 Wed Jan 29 22:06:38 2014 (r261278) +++ head/sys/arm/conf/HL201 Thu Jan 30 03:14:36 2014 (r261279) @@ -126,7 +126,7 @@ device nand # NAND interface on CS3 # Coming soon, but not yet #options FDT #options FDT_DTB_STATIC -#makeoptions FDT_DTS_FILE=at91sam9g20ek.dts +#makeoptions FDT_DTS_FILE=hl201.dts options EARLY_PRINTF options SOCDEV_PA=0xfc000000 From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 05:35:13 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 50F88878; Thu, 30 Jan 2014 05:35:13 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3CDAB1387; Thu, 30 Jan 2014 05:35:13 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0U5ZDb7056473; Thu, 30 Jan 2014 05:35:13 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0U5ZDOc056472; Thu, 30 Jan 2014 05:35:13 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201401300535.s0U5ZDOc056472@svn.freebsd.org> From: Sergey Kandaurov Date: Thu, 30 Jan 2014 05:35:13 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261280 - stable/10/lib/libc/sys X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 05:35:13 -0000 Author: pluknet Date: Thu Jan 30 05:35:12 2014 New Revision: 261280 URL: http://svnweb.freebsd.org/changeset/base/261280 Log: Update EINVAL description. Modified: stable/10/lib/libc/sys/posix_fallocate.2 Directory Properties: stable/10/ (props changed) Modified: stable/10/lib/libc/sys/posix_fallocate.2 ============================================================================== --- stable/10/lib/libc/sys/posix_fallocate.2 Thu Jan 30 03:14:36 2014 (r261279) +++ stable/10/lib/libc/sys/posix_fallocate.2 Thu Jan 30 05:35:12 2014 (r261280) @@ -28,7 +28,7 @@ .\" @(#)open.2 8.2 (Berkeley) 11/16/93 .\" $FreeBSD$ .\" -.Dd February 25, 2012 +.Dd January 23, 2014 .Dt POSIX_FALLOCATE 2 .Os .Sh NAME @@ -107,7 +107,7 @@ A signal was caught during execution. .It Bq Er EINVAL The .Fa len -argument was zero or the +argument was less than or equal to zero or the .Fa offset argument was less than zero. .It Bq Er EIO From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 05:37:18 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8698DA96; Thu, 30 Jan 2014 05:37:18 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 724FE1396; Thu, 30 Jan 2014 05:37:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0U5bIos057078; Thu, 30 Jan 2014 05:37:18 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0U5bIHD057077; Thu, 30 Jan 2014 05:37:18 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201401300537.s0U5bIHD057077@svn.freebsd.org> From: Sergey Kandaurov Date: Thu, 30 Jan 2014 05:37:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261281 - stable/9/lib/libc/sys X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 05:37:18 -0000 Author: pluknet Date: Thu Jan 30 05:37:17 2014 New Revision: 261281 URL: http://svnweb.freebsd.org/changeset/base/261281 Log: MFC r261075: Update EINVAL description. Modified: stable/9/lib/libc/sys/posix_fallocate.2 Directory Properties: stable/9/lib/libc/ (props changed) stable/9/lib/libc/sys/ (props changed) Modified: stable/9/lib/libc/sys/posix_fallocate.2 ============================================================================== --- stable/9/lib/libc/sys/posix_fallocate.2 Thu Jan 30 05:35:12 2014 (r261280) +++ stable/9/lib/libc/sys/posix_fallocate.2 Thu Jan 30 05:37:17 2014 (r261281) @@ -28,7 +28,7 @@ .\" @(#)open.2 8.2 (Berkeley) 11/16/93 .\" $FreeBSD$ .\" -.Dd February 25, 2012 +.Dd January 23, 2014 .Dt POSIX_FALLOCATE 2 .Os .Sh NAME @@ -108,7 +108,7 @@ A signal was caught during execution. .It Bq Er EINVAL The .Fa len -argument was zero or the +argument was less than or equal to zero or the .Fa offset argument was less than zero. .It Bq Er EIO From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 05:38:14 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D4AEBC24; Thu, 30 Jan 2014 05:38:14 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C08B1139D; Thu, 30 Jan 2014 05:38:14 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0U5cE5j057432; Thu, 30 Jan 2014 05:38:14 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0U5cEia057431; Thu, 30 Jan 2014 05:38:14 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201401300538.s0U5cEia057431@svn.freebsd.org> From: Sergey Kandaurov Date: Thu, 30 Jan 2014 05:38:14 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r261282 - stable/8/lib/libc/sys X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 05:38:14 -0000 Author: pluknet Date: Thu Jan 30 05:38:14 2014 New Revision: 261282 URL: http://svnweb.freebsd.org/changeset/base/261282 Log: MFC r261075: Update EINVAL description. Modified: stable/8/lib/libc/sys/posix_fallocate.2 Directory Properties: stable/8/lib/libc/ (props changed) stable/8/lib/libc/sys/ (props changed) Modified: stable/8/lib/libc/sys/posix_fallocate.2 ============================================================================== --- stable/8/lib/libc/sys/posix_fallocate.2 Thu Jan 30 05:37:17 2014 (r261281) +++ stable/8/lib/libc/sys/posix_fallocate.2 Thu Jan 30 05:38:14 2014 (r261282) @@ -28,7 +28,7 @@ .\" @(#)open.2 8.2 (Berkeley) 11/16/93 .\" $FreeBSD$ .\" -.Dd February 25, 2012 +.Dd January 23, 2014 .Dt POSIX_FALLOCATE 2 .Os .Sh NAME @@ -108,7 +108,7 @@ A signal was caught during execution. .It Bq Er EINVAL The .Fa len -argument was zero or the +argument was less than or equal to zero or the .Fa offset argument was less than zero. .It Bq Er EIO From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 07:44:24 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C013B1C4; Thu, 30 Jan 2014 07:44:24 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A94541D5E; Thu, 30 Jan 2014 07:44:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0U7iOS5016056; Thu, 30 Jan 2014 07:44:24 GMT (envelope-from dim@svn.freebsd.org) Received: (from dim@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0U7iNLt016044; Thu, 30 Jan 2014 07:44:23 GMT (envelope-from dim@svn.freebsd.org) Message-Id: <201401300744.s0U7iNLt016044@svn.freebsd.org> From: Dimitry Andric Date: Thu, 30 Jan 2014 07:44:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261283 - in head: contrib/libc++ contrib/libc++/include contrib/libc++/include/experimental contrib/libc++/include/ext contrib/libc++/src etc/mtree lib/libc++ sys/sys tools/build/mk X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 07:44:24 -0000 Author: dim Date: Thu Jan 30 07:44:22 2014 New Revision: 261283 URL: http://svnweb.freebsd.org/changeset/base/261283 Log: Import libc++ 3.4 release. This contains a lot of bugfixes, and some preliminary support for C++1y. MFC after: 3 weeks Added: head/contrib/libc++/include/experimental/ - copied from r261272, vendor/libc++/dist/include/experimental/ head/contrib/libc++/include/shared_mutex - copied unchanged from r261272, vendor/libc++/dist/include/shared_mutex head/contrib/libc++/src/optional.cpp - copied unchanged from r261272, vendor/libc++/dist/src/optional.cpp head/contrib/libc++/src/shared_mutex.cpp - copied unchanged from r261272, vendor/libc++/dist/src/shared_mutex.cpp Modified: head/contrib/libc++/CREDITS.TXT head/contrib/libc++/include/__bit_reference head/contrib/libc++/include/__config head/contrib/libc++/include/__debug head/contrib/libc++/include/__functional_03 head/contrib/libc++/include/__functional_base head/contrib/libc++/include/__functional_base_03 head/contrib/libc++/include/__hash_table head/contrib/libc++/include/__locale head/contrib/libc++/include/__mutex_base head/contrib/libc++/include/__split_buffer head/contrib/libc++/include/__std_stream head/contrib/libc++/include/__tree head/contrib/libc++/include/__tuple head/contrib/libc++/include/__tuple_03 head/contrib/libc++/include/__undef_min_max head/contrib/libc++/include/algorithm head/contrib/libc++/include/array head/contrib/libc++/include/bitset head/contrib/libc++/include/cctype head/contrib/libc++/include/chrono head/contrib/libc++/include/cmath head/contrib/libc++/include/codecvt head/contrib/libc++/include/complex head/contrib/libc++/include/cstddef head/contrib/libc++/include/cstdio head/contrib/libc++/include/cstdlib head/contrib/libc++/include/cstring head/contrib/libc++/include/cwchar head/contrib/libc++/include/deque head/contrib/libc++/include/exception head/contrib/libc++/include/ext/__hash head/contrib/libc++/include/ext/hash_map head/contrib/libc++/include/ext/hash_set head/contrib/libc++/include/forward_list head/contrib/libc++/include/fstream head/contrib/libc++/include/functional head/contrib/libc++/include/future head/contrib/libc++/include/initializer_list head/contrib/libc++/include/iomanip head/contrib/libc++/include/ios head/contrib/libc++/include/iosfwd head/contrib/libc++/include/istream head/contrib/libc++/include/iterator head/contrib/libc++/include/limits head/contrib/libc++/include/list head/contrib/libc++/include/locale head/contrib/libc++/include/map head/contrib/libc++/include/memory head/contrib/libc++/include/mutex head/contrib/libc++/include/new head/contrib/libc++/include/numeric head/contrib/libc++/include/ostream head/contrib/libc++/include/queue head/contrib/libc++/include/random head/contrib/libc++/include/ratio head/contrib/libc++/include/regex head/contrib/libc++/include/scoped_allocator head/contrib/libc++/include/set head/contrib/libc++/include/sstream head/contrib/libc++/include/stack head/contrib/libc++/include/streambuf head/contrib/libc++/include/string head/contrib/libc++/include/system_error head/contrib/libc++/include/thread head/contrib/libc++/include/tuple head/contrib/libc++/include/type_traits head/contrib/libc++/include/typeindex head/contrib/libc++/include/unordered_map head/contrib/libc++/include/unordered_set head/contrib/libc++/include/utility head/contrib/libc++/include/valarray head/contrib/libc++/include/vector head/contrib/libc++/src/algorithm.cpp head/contrib/libc++/src/debug.cpp head/contrib/libc++/src/exception.cpp head/contrib/libc++/src/future.cpp head/contrib/libc++/src/ios.cpp head/contrib/libc++/src/iostream.cpp head/contrib/libc++/src/locale.cpp head/contrib/libc++/src/mutex.cpp head/contrib/libc++/src/new.cpp head/contrib/libc++/src/random.cpp head/contrib/libc++/src/stdexcept.cpp head/contrib/libc++/src/string.cpp head/contrib/libc++/src/strstream.cpp head/contrib/libc++/src/system_error.cpp head/contrib/libc++/src/thread.cpp head/contrib/libc++/src/typeinfo.cpp head/contrib/libc++/src/valarray.cpp head/etc/mtree/BSD.include.dist head/lib/libc++/Makefile head/sys/sys/param.h head/tools/build/mk/OptionalObsoleteFiles.inc Directory Properties: head/contrib/libc++/ (props changed) Modified: head/contrib/libc++/CREDITS.TXT ============================================================================== --- head/contrib/libc++/CREDITS.TXT Thu Jan 30 05:38:14 2014 (r261282) +++ head/contrib/libc++/CREDITS.TXT Thu Jan 30 07:44:22 2014 (r261283) @@ -31,6 +31,14 @@ D: FreeBSD and Solaris ports, libcxxrt s N: Marshall Clow E: mclow.lists@gmail.com E: marshall@idio.com +D: C++14 support, patches and bug fixes. + +N: Bill Fisher +E: william.w.fisher@gmail.com +D: Regex bug fixes. + +N: Matthew Dempsky +E: matthew@dempsky.org D: Minor patches and bug fixes. N: Google Inc. @@ -48,6 +56,10 @@ N: Argyrios Kyrtzidis E: kyrtzidis@apple.com D: Bug fixes. +N: Bruce Mitchener, Jr. +E: bruce.mitchener@gmail.com +D: Emscripten-related changes. + N: Michel Morin E: mimomorin@gmail.com D: Minor patches to is_convertible. @@ -64,6 +76,10 @@ N: Bjorn Reese E: breese@users.sourceforge.net D: Initial regex prototype +N: Nico Rieck +E: nico.rieck@gmail.com +D: Windows fixes + N: Jonathan Sauer D: Minor patches, mostly related to constexpr @@ -74,6 +90,14 @@ D: Implemented Cityhash as the string ha N: Richard Smith D: Minor patches. +N: Joerg Sonnenberger +E: joerg@NetBSD.org +D: NetBSD port. + +N: Stephan Tolksdorf +E: st@quanttec.com +D: Minor fix + N: Michael van der Westhuizen E: r1mikey at gmail dot com @@ -85,11 +109,15 @@ N: Zhang Xiongpang E: zhangxiongpang@gmail.com D: Minor patches and bug fixes. +N: Xing Xue +E: xingxue@ca.ibm.com +D: AIX port + +N: Zhihao Yuan +E: lichray@gmail.com +D: Standard compatibility fixes. + N: Jeffrey Yasskin E: jyasskin@gmail.com E: jyasskin@google.com D: Linux fixes. - -N: Bruce Mitchener, Jr. -E: bruce.mitchener@gmail.com -D: Emscripten-related changes. Modified: head/contrib/libc++/include/__bit_reference ============================================================================== --- head/contrib/libc++/include/__bit_reference Thu Jan 30 05:38:14 2014 (r261282) +++ head/contrib/libc++/include/__bit_reference Thu Jan 30 07:44:22 2014 (r261283) @@ -40,7 +40,7 @@ class __bit_reference __storage_pointer __seg_; __storage_type __mask_; -#if defined(__clang__) +#if defined(__clang__) || defined(__IBMCPP__) || defined(_LIBCPP_MSVC) friend typename _Cp::__self; #else friend class _Cp::__self; @@ -82,7 +82,7 @@ class __bit_reference<_Cp, false> }; template -_LIBCPP_INLINE_VISIBILITY inline +inline _LIBCPP_INLINE_VISIBILITY void swap(__bit_reference<_Cp> __x, __bit_reference<_Cp> __y) _NOEXCEPT { @@ -92,7 +92,7 @@ swap(__bit_reference<_Cp> __x, __bit_ref } template -_LIBCPP_INLINE_VISIBILITY inline +inline _LIBCPP_INLINE_VISIBILITY void swap(__bit_reference<_Cp> __x, __bit_reference<_Dp> __y) _NOEXCEPT { @@ -102,7 +102,7 @@ swap(__bit_reference<_Cp> __x, __bit_ref } template -_LIBCPP_INLINE_VISIBILITY inline +inline _LIBCPP_INLINE_VISIBILITY void swap(__bit_reference<_Cp> __x, bool& __y) _NOEXCEPT { @@ -112,7 +112,7 @@ swap(__bit_reference<_Cp> __x, bool& __y } template -_LIBCPP_INLINE_VISIBILITY inline +inline _LIBCPP_INLINE_VISIBILITY void swap(bool& __x, __bit_reference<_Cp> __y) _NOEXCEPT { @@ -130,7 +130,7 @@ class __bit_const_reference __storage_pointer __seg_; __storage_type __mask_; -#if defined(__clang__) +#if defined(__clang__) || defined(__IBMCPP__) || defined(_LIBCPP_MSVC) friend typename _Cp::__self; #else friend class _Cp::__self; @@ -173,6 +173,8 @@ __find_bool_true(__bit_iterator<_Cp, _Is __storage_type __b = *__first.__seg_ & __m; if (__b) return _It(__first.__seg_, static_cast(_VSTD::__ctz(__b))); + if (__n == __dn) + return _It(__first.__seg_, __first.__ctz_ + __n); __n -= __dn; ++__first.__seg_; } @@ -207,6 +209,8 @@ __find_bool_false(__bit_iterator<_Cp, _I __storage_type __b = ~*__first.__seg_ & __m; if (__b) return _It(__first.__seg_, static_cast(_VSTD::__ctz(__b))); + if (__n == __dn) + return _It(__first.__seg_, __first.__ctz_ + __n); __n -= __dn; ++__first.__seg_; } @@ -375,7 +379,7 @@ __fill_n_true(__bit_iterator<_Cp, false> } template -_LIBCPP_INLINE_VISIBILITY inline +inline _LIBCPP_INLINE_VISIBILITY void fill_n(__bit_iterator<_Cp, false> __first, typename _Cp::size_type __n, bool __value_) { @@ -1104,7 +1108,11 @@ private: unsigned __ctz_; public: - _LIBCPP_INLINE_VISIBILITY __bit_iterator() _NOEXCEPT {} + _LIBCPP_INLINE_VISIBILITY __bit_iterator() _NOEXCEPT +#if _LIBCPP_STD_VER > 11 + : __seg_(nullptr), __ctz_(0) +#endif + {} _LIBCPP_INLINE_VISIBILITY __bit_iterator(const __bit_iterator<_Cp, false>& __it) _NOEXCEPT @@ -1214,7 +1222,7 @@ private: __bit_iterator(__storage_pointer __s, unsigned __ctz) _NOEXCEPT : __seg_(__s), __ctz_(__ctz) {} -#if defined(__clang__) +#if defined(__clang__) || defined(__IBMCPP__) || defined(_LIBCPP_MSVC) friend typename _Cp::__self; #else friend class _Cp::__self; Modified: head/contrib/libc++/include/__config ============================================================================== --- head/contrib/libc++/include/__config Thu Jan 30 05:38:14 2014 (r261282) +++ head/contrib/libc++/include/__config Thu Jan 30 07:44:22 2014 (r261283) @@ -11,7 +11,7 @@ #ifndef _LIBCPP_CONFIG #define _LIBCPP_CONFIG -#ifndef _MSC_VER // explicit macro necessary because it is only defined below in this file +#if !defined(_MSC_VER) || defined(__clang__) #pragma GCC system_header #endif @@ -72,15 +72,26 @@ # define _LIBCPP_LITTLE_ENDIAN 1 # define _LIBCPP_BIG_ENDIAN 0 // Compiler intrinsics (GCC or MSVC) -# if (defined(_MSC_VER) && _MSC_VER >= 1400) \ +# if defined(__clang__) \ + || (defined(_MSC_VER) && _MSC_VER >= 1400) \ || (defined(__GNUC__) && _GNUC_VER > 403) -# define _LIBCP_HAS_IS_BASE_OF +# define _LIBCPP_HAS_IS_BASE_OF +# endif +# if defined(_MSC_VER) && !defined(__clang__) +# define _LIBCPP_MSVC // Using Microsoft Visual C++ compiler +# define _LIBCPP_TOSTRING2(x) #x +# define _LIBCPP_TOSTRING(x) _LIBCPP_TOSTRING2(x) +# define _LIBCPP_WARNING(x) __pragma(message(__FILE__ "(" _LIBCPP_TOSTRING(__LINE__) ") : warning note: " x)) +# endif +# // If mingw not explicitly detected, assume using MS C runtime only. +# ifndef __MINGW32__ +# define _LIBCPP_MSVCRT // Using Microsoft's C Runtime library # endif #endif // _WIN32 #ifdef __linux__ # if defined(__GNUC__) && _GNUC_VER >= 403 -# define _LIBCP_HAS_IS_BASE_OF +# define _LIBCPP_HAS_IS_BASE_OF # endif #endif @@ -127,8 +138,11 @@ # define _LIBCPP_TYPE_VIS #endif +#define _LIBCPP_TYPE_VIS_ONLY +#define _LIBCPP_FUNC_VIS_ONLY + #ifndef _LIBCPP_INLINE_VISIBILITY -# ifdef _MSC_VER +# ifdef _LIBCPP_MSVC # define _LIBCPP_INLINE_VISIBILITY __forceinline # else // MinGW GCC and Clang # define _LIBCPP_INLINE_VISIBILITY __attribute__ ((__always_inline__)) @@ -140,7 +154,7 @@ #endif #ifndef _LIBCPP_ALWAYS_INLINE -# ifdef _MSC_VER +# ifdef _LIBCPP_MSVC # define _LIBCPP_ALWAYS_INLINE __forceinline # endif #endif @@ -160,13 +174,21 @@ #endif #ifndef _LIBCPP_TYPE_VIS -# if __has_attribute(type_visibility) +# if __has_attribute(__type_visibility__) # define _LIBCPP_TYPE_VIS __attribute__ ((__type_visibility__("default"))) # else # define _LIBCPP_TYPE_VIS __attribute__ ((__visibility__("default"))) # endif #endif +#ifndef _LIBCPP_TYPE_VIS_ONLY +# define _LIBCPP_TYPE_VIS_ONLY _LIBCPP_TYPE_VIS +#endif + +#ifndef _LIBCPP_FUNC_VIS_ONLY +# define _LIBCPP_FUNC_VIS_ONLY _LIBCPP_FUNC_VIS +#endif + #ifndef _LIBCPP_INLINE_VISIBILITY #define _LIBCPP_INLINE_VISIBILITY __attribute__ ((__visibility__("hidden"), __always_inline__)) #endif @@ -175,10 +197,6 @@ #define _LIBCPP_EXCEPTION_ABI _LIBCPP_TYPE_VIS #endif -#ifndef _LIBCPP_CANTTHROW -#define _LIBCPP_CANTTHROW __attribute__ ((__nothrow__)) -#endif - #ifndef _LIBCPP_ALWAYS_INLINE #define _LIBCPP_ALWAYS_INLINE __attribute__ ((__visibility__("hidden"), __always_inline__)) #endif @@ -273,7 +291,7 @@ typedef __char32_t char32_t; #endif #if __has_feature(is_base_of) -# define _LIBCP_HAS_IS_BASE_OF +# define _LIBCPP_HAS_IS_BASE_OF #endif // Objective-C++ features (opt-in) @@ -396,13 +414,14 @@ namespace _LIBCPP_NAMESPACE { using namespace _LIBCPP_NAMESPACE __attribute__((__strong__)); } -#elif defined(_MSC_VER) +#elif defined(_LIBCPP_MSVC) #define _LIBCPP_HAS_NO_TEMPLATE_ALIASES #define _LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER #define _LIBCPP_HAS_NO_CONSTEXPR #define _LIBCPP_HAS_NO_UNICODE_CHARS #define _LIBCPP_HAS_NO_DELETED_FUNCTIONS +#define _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS #define __alignof__ __alignof #define _LIBCPP_NORETURN __declspec(noreturn) #define _ALIGNAS(x) __declspec(align(x)) @@ -415,10 +434,43 @@ using namespace _LIBCPP_NAMESPACE __attr #define _LIBCPP_END_NAMESPACE_STD } #define _VSTD std +# define _LIBCPP_WEAK +namespace std { +} + +#elif defined(__IBMCPP__) + +#define _ALIGNAS(x) __attribute__((__aligned__(x))) +#define _ALIGNAS_TYPE(x) __attribute__((__aligned__(__alignof(x)))) +#define _ATTRIBUTE(x) __attribute__((x)) +#define _LIBCPP_NORETURN __attribute__((noreturn)) + +#define _NOEXCEPT throw() +#define _NOEXCEPT_(x) + +#define _LIBCPP_HAS_NO_TEMPLATE_ALIASES +#define _LIBCPP_HAS_NO_ADVANCED_SFINAE +#define _LIBCPP_HAS_NO_ALWAYS_INLINE_VARIADICS +#define _LIBCPP_HAS_NO_GENERALIZED_INITIALIZERS +#define _LIBCPP_HAS_NO_NULLPTR +#define _LIBCPP_HAS_NO_UNICODE_CHARS +#define _LIBCPP_HAS_NO_STRONG_ENUMS +#define _LIBCPP_HAS_IS_BASE_OF + +#if defined(_AIX) +#define __MULTILOCALE_API +#endif + +#define _LIBCPP_BEGIN_NAMESPACE_STD namespace std {inline namespace _LIBCPP_NAMESPACE { +#define _LIBCPP_END_NAMESPACE_STD } } +#define _VSTD std::_LIBCPP_NAMESPACE + namespace std { + inline namespace _LIBCPP_NAMESPACE { + } } -#endif // __clang__ || __GNUC___ || _MSC_VER +#endif // __clang__ || __GNUC___ || _MSC_VER || __IBMCPP__ #ifdef _LIBCPP_HAS_NO_UNICODE_CHARS typedef unsigned short char16_t; @@ -481,8 +533,23 @@ template struct __static_asse #define _LIBCPP_DECLARE_STRONG_ENUM_EPILOG(x) #endif // _LIBCPP_HAS_NO_STRONG_ENUMS +#ifdef _LIBCPP_DEBUG +# if _LIBCPP_DEBUG == 0 +# define _LIBCPP_DEBUG_LEVEL 1 +# elif _LIBCPP_DEBUG == 1 +# define _LIBCPP_DEBUG_LEVEL 2 +# else +# error Supported values for _LIBCPP_DEBUG are 0 and 1 +# endif +# define _LIBCPP_EXTERN_TEMPLATE(...) +#endif + #ifndef _LIBCPP_EXTERN_TEMPLATE -#define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__; +#define _LIBCPP_EXTERN_TEMPLATE(...) +#endif + +#ifndef _LIBCPP_EXTERN_TEMPLATE2 +#define _LIBCPP_EXTERN_TEMPLATE2(...) extern template __VA_ARGS__; #endif #if defined(__APPLE__) || defined(__FreeBSD__) || defined(_WIN32) || defined(__sun__) || defined(__NetBSD__) @@ -500,14 +567,14 @@ template struct __static_asse #define _LIBCPP_WCTYPE_IS_MASK #endif -#ifdef _LIBCPP_DEBUG2 -# if _LIBCPP_DEBUG2 == 0 -# define _LIBCPP_DEBUG_LEVEL 1 -# elif _LIBCPP_DEBUG2 == 1 -# define _LIBCPP_DEBUG_LEVEL 2 -# else -# error Supported values for _LIBCPP_DEBUG2 are 0 and 1 -# endif +#if defined(__APPLE__) +#ifndef _LIBCPP_TRIVIAL_PAIR_COPY_CTOR +# define _LIBCPP_TRIVIAL_PAIR_COPY_CTOR 0 +#endif +#endif + +#ifndef _LIBCPP_TRIVIAL_PAIR_COPY_CTOR +# define _LIBCPP_TRIVIAL_PAIR_COPY_CTOR 1 #endif #ifndef _LIBCPP_STD_VER @@ -518,10 +585,36 @@ template struct __static_asse # endif #endif // _LIBCPP_STD_VER -#ifdef _LIBCPP_DEBUG2 -# include <__debug> +#if _LIBCPP_STD_VER > 11 +#define _LIBCPP_DEPRECATED [[deprecated]] #else -# define _LIBCPP_ASSERT(x, m) ((void)0) +#define _LIBCPP_DEPRECATED +#endif + +#if _LIBCPP_STD_VER <= 11 +#define _LIBCPP_CONSTEXPR_AFTER_CXX11 +#define _LIBCPP_EXPLICIT_AFTER_CXX11 +#define _LIBCPP_DEPRECATED_AFTER_CXX11 +#else +#define _LIBCPP_CONSTEXPR_AFTER_CXX11 constexpr +#define _LIBCPP_EXPLICIT_AFTER_CXX11 explicit +#define _LIBCPP_DEPRECATED_AFTER_CXX11 [[deprecated]] +#endif + +// Try to find out if RTTI is disabled. +// g++ and cl.exe have RTTI on by default and define a macro when it is. +// g++ only defines the macro in 4.3.2 and onwards. +#if !defined(_LIBCPP_NO_RTTI) +# if defined(__GNUG__) && (__GNUC__ >= 4 && \ + (__GNUC_MINOR__ >= 3 || __GNUC_PATCHLEVEL__ >= 2)) && !defined(__GXX_RTTI) +# define _LIBCPP_NO_RTTI +# elif (defined(_MSC_VER) && !defined(__clang__)) && !defined(_CPPRTTI) +# define _LIBCPP_NO_RTTI +# endif +#endif + +#ifndef _LIBCPP_WEAK +# define _LIBCPP_WEAK __attribute__((__weak__)) #endif #endif // _LIBCPP_CONFIG Modified: head/contrib/libc++/include/__debug ============================================================================== --- head/contrib/libc++/include/__debug Thu Jan 30 05:38:14 2014 (r261282) +++ head/contrib/libc++/include/__debug Thu Jan 30 07:44:22 2014 (r261283) @@ -11,6 +11,10 @@ #ifndef _LIBCPP_DEBUG_H #define _LIBCPP_DEBUG_H +#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) +#pragma GCC system_header +#endif + #if _LIBCPP_DEBUG_LEVEL >= 1 # include @@ -34,8 +38,15 @@ struct _LIBCPP_TYPE_VIS __i_node __i_node* __next_; __c_node* __c_; +#ifndef _LIBCPP_HAS_NO_DELETED_FUNCTIONS __i_node(const __i_node&) = delete; __i_node& operator=(const __i_node&) = delete; +#else +private: + __i_node(const __i_node&); + __i_node& operator=(const __i_node&); +public: +#endif _LIBCPP_INLINE_VISIBILITY __i_node(void* __i, __i_node* __next, __c_node* __c) : __i_(__i), __next_(__next), __c_(__c) {} @@ -50,8 +61,15 @@ struct _LIBCPP_TYPE_VIS __c_node __i_node** end_; __i_node** cap_; +#ifndef _LIBCPP_HAS_NO_DELETED_FUNCTIONS __c_node(const __c_node&) = delete; __c_node& operator=(const __c_node&) = delete; +#else +private: + __c_node(const __c_node&); + __c_node& operator=(const __c_node&); +public: +#endif _LIBCPP_INLINE_VISIBILITY __c_node(void* __c, __c_node* __next) : __c_(__c), __next_(__next), beg_(nullptr), end_(nullptr), cap_(nullptr) {} @@ -130,8 +148,15 @@ class _LIBCPP_TYPE_VIS __libcpp_db __libcpp_db(); public: +#ifndef _LIBCPP_HAS_NO_DELETED_FUNCTIONS __libcpp_db(const __libcpp_db&) = delete; __libcpp_db& operator=(const __libcpp_db&) = delete; +#else +private: + __libcpp_db(const __libcpp_db&); + __libcpp_db& operator=(const __libcpp_db&); +public: +#endif ~__libcpp_db(); class __db_c_iterator; @@ -171,7 +196,7 @@ public: bool __decrementable(const void* __i) const; bool __addable(const void* __i, ptrdiff_t __n) const; bool __subscriptable(const void* __i, ptrdiff_t __n) const; - bool __comparable(const void* __i, const void* __j) const; + bool __less_than_comparable(const void* __i, const void* __j) const; private: _LIBCPP_HIDDEN __i_node* __insert_iterator(void* __i); Modified: head/contrib/libc++/include/__functional_03 ============================================================================== --- head/contrib/libc++/include/__functional_03 Thu Jan 30 05:38:14 2014 (r261282) +++ head/contrib/libc++/include/__functional_03 Thu Jan 30 07:44:22 2014 (r261283) @@ -102,98 +102,98 @@ mem_fn(_Rp (_Tp::* __pm)(_A0, _A1, _A2)) template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)()> +__mem_fn<_Rp (_Tp::*)() const> mem_fn(_Rp (_Tp::* __pm)() const) { - return __mem_fn<_Rp (_Tp::*)()>(__pm); + return __mem_fn<_Rp (_Tp::*)() const>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0)> +__mem_fn<_Rp (_Tp::*)(_A0) const> mem_fn(_Rp (_Tp::* __pm)(_A0) const) { - return __mem_fn<_Rp (_Tp::*)(_A0)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0) const>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0, _A1)> +__mem_fn<_Rp (_Tp::*)(_A0, _A1) const> mem_fn(_Rp (_Tp::* __pm)(_A0, _A1) const) { - return __mem_fn<_Rp (_Tp::*)(_A0, _A1)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0, _A1) const>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2)> +__mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2) const> mem_fn(_Rp (_Tp::* __pm)(_A0, _A1, _A2) const) { - return __mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2) const>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)()> +__mem_fn<_Rp (_Tp::*)() volatile> mem_fn(_Rp (_Tp::* __pm)() volatile) { - return __mem_fn<_Rp (_Tp::*)()>(__pm); + return __mem_fn<_Rp (_Tp::*)() volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0)> +__mem_fn<_Rp (_Tp::*)(_A0) volatile> mem_fn(_Rp (_Tp::* __pm)(_A0) volatile) { - return __mem_fn<_Rp (_Tp::*)(_A0)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0) volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0, _A1)> +__mem_fn<_Rp (_Tp::*)(_A0, _A1) volatile> mem_fn(_Rp (_Tp::* __pm)(_A0, _A1) volatile) { - return __mem_fn<_Rp (_Tp::*)(_A0, _A1)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0, _A1) volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2)> +__mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2) volatile> mem_fn(_Rp (_Tp::* __pm)(_A0, _A1, _A2) volatile) { - return __mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2) volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)()> +__mem_fn<_Rp (_Tp::*)() const volatile> mem_fn(_Rp (_Tp::* __pm)() const volatile) { - return __mem_fn<_Rp (_Tp::*)()>(__pm); + return __mem_fn<_Rp (_Tp::*)() const volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0)> +__mem_fn<_Rp (_Tp::*)(_A0) const volatile> mem_fn(_Rp (_Tp::* __pm)(_A0) const volatile) { - return __mem_fn<_Rp (_Tp::*)(_A0)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0) const volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0, _A1)> +__mem_fn<_Rp (_Tp::*)(_A0, _A1) const volatile> mem_fn(_Rp (_Tp::* __pm)(_A0, _A1) const volatile) { - return __mem_fn<_Rp (_Tp::*)(_A0, _A1)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0, _A1) const volatile>(__pm); } template inline _LIBCPP_INLINE_VISIBILITY -__mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2)> +__mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2) const volatile> mem_fn(_Rp (_Tp::* __pm)(_A0, _A1, _A2) const volatile) { - return __mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2)>(__pm); + return __mem_fn<_Rp (_Tp::*)(_A0, _A1, _A2) const volatile>(__pm); } // bad_function_call @@ -203,7 +203,7 @@ class _LIBCPP_EXCEPTION_ABI bad_function { }; -template class _LIBCPP_TYPE_VIS function; // undefined +template class _LIBCPP_TYPE_VIS_ONLY function; // undefined namespace __function { @@ -644,7 +644,7 @@ __func<_Fp, _Alloc, _Rp(_A0, _A1, _A2)>: } // __function template -class _LIBCPP_TYPE_VIS function<_Rp()> +class _LIBCPP_TYPE_VIS_ONLY function<_Rp()> { typedef __function::__base<_Rp()> __base; aligned_storage<3*sizeof(void*)>::type __buf_; @@ -928,7 +928,7 @@ function<_Rp()>::target() const #endif // _LIBCPP_NO_RTTI template -class _LIBCPP_TYPE_VIS function<_Rp(_A0)> +class _LIBCPP_TYPE_VIS_ONLY function<_Rp(_A0)> : public unary_function<_A0, _Rp> { typedef __function::__base<_Rp(_A0)> __base; @@ -1230,7 +1230,7 @@ function<_Rp(_A0)>::target() const #endif // _LIBCPP_NO_RTTI template -class _LIBCPP_TYPE_VIS function<_Rp(_A0, _A1)> +class _LIBCPP_TYPE_VIS_ONLY function<_Rp(_A0, _A1)> : public binary_function<_A0, _A1, _Rp> { typedef __function::__base<_Rp(_A0, _A1)> __base; @@ -1532,7 +1532,7 @@ function<_Rp(_A0, _A1)>::target() const #endif // _LIBCPP_NO_RTTI template -class _LIBCPP_TYPE_VIS function<_Rp(_A0, _A1, _A2)> +class _LIBCPP_TYPE_VIS_ONLY function<_Rp(_A0, _A1, _A2)> { typedef __function::__base<_Rp(_A0, _A1, _A2)> __base; aligned_storage<3*sizeof(void*)>::type __buf_; @@ -1860,11 +1860,11 @@ swap(function<_Fp>& __x, function<_Fp>& {return __x.swap(__y);} template struct __is_bind_expression : public false_type {}; -template struct _LIBCPP_TYPE_VIS is_bind_expression +template struct _LIBCPP_TYPE_VIS_ONLY is_bind_expression : public __is_bind_expression::type> {}; template struct __is_placeholder : public integral_constant {}; -template struct _LIBCPP_TYPE_VIS is_placeholder +template struct _LIBCPP_TYPE_VIS_ONLY is_placeholder : public __is_placeholder::type> {}; namespace placeholders Modified: head/contrib/libc++/include/__functional_base ============================================================================== --- head/contrib/libc++/include/__functional_base Thu Jan 30 05:38:14 2014 (r261282) +++ head/contrib/libc++/include/__functional_base Thu Jan 30 07:44:22 2014 (r261283) @@ -15,6 +15,7 @@ #include #include #include +#include #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #pragma GCC system_header @@ -23,21 +24,21 @@ _LIBCPP_BEGIN_NAMESPACE_STD template -struct _LIBCPP_TYPE_VIS unary_function +struct _LIBCPP_TYPE_VIS_ONLY unary_function { typedef _Arg argument_type; typedef _Result result_type; }; template -struct _LIBCPP_TYPE_VIS binary_function +struct _LIBCPP_TYPE_VIS_ONLY binary_function { typedef _Arg1 first_argument_type; typedef _Arg2 second_argument_type; typedef _Result result_type; }; -template struct _LIBCPP_TYPE_VIS hash; +template struct _LIBCPP_TYPE_VIS_ONLY hash; template struct __has_result_type @@ -50,13 +51,80 @@ public: static const bool value = sizeof(__test<_Tp>(0)) == 1; }; +#if _LIBCPP_STD_VER > 11 +template +#else template -struct _LIBCPP_TYPE_VIS less : binary_function<_Tp, _Tp, bool> +#endif +struct _LIBCPP_TYPE_VIS_ONLY less : binary_function<_Tp, _Tp, bool> { - _LIBCPP_INLINE_VISIBILITY bool operator()(const _Tp& __x, const _Tp& __y) const + _LIBCPP_CONSTEXPR_AFTER_CXX11 _LIBCPP_INLINE_VISIBILITY + bool operator()(const _Tp& __x, const _Tp& __y) const {return __x < __y;} }; +#if _LIBCPP_STD_VER > 11 +template <> +struct _LIBCPP_TYPE_VIS_ONLY less +{ + template + _LIBCPP_CONSTEXPR_AFTER_CXX11 _LIBCPP_INLINE_VISIBILITY + auto operator()(_T1&& __t, _T2&& __u) const + { return _VSTD::forward<_T1>(__t) < _VSTD::forward<_T2>(__u); } + typedef void is_transparent; +}; +#endif + +// addressof + +template +inline _LIBCPP_INLINE_VISIBILITY +_Tp* +addressof(_Tp& __x) _NOEXCEPT +{ + return (_Tp*)&reinterpret_cast(__x); +} + +#if defined(_LIBCPP_HAS_OBJC_ARC) && !defined(_LIBCPP_PREDEFINED_OBJC_ARC_ADDRESSOF) +// Objective-C++ Automatic Reference Counting uses qualified pointers +// that require special addressof() signatures. When +// _LIBCPP_PREDEFINED_OBJC_ARC_ADDRESSOF is defined, the compiler +// itself is providing these definitions. Otherwise, we provide them. +template +inline _LIBCPP_INLINE_VISIBILITY +__strong _Tp* +addressof(__strong _Tp& __x) _NOEXCEPT +{ + return &__x; +} + +#ifdef _LIBCPP_HAS_OBJC_ARC_WEAK +template +inline _LIBCPP_INLINE_VISIBILITY +__weak _Tp* +addressof(__weak _Tp& __x) _NOEXCEPT +{ + return &__x; +} +#endif + +template +inline _LIBCPP_INLINE_VISIBILITY +__autoreleasing _Tp* +addressof(__autoreleasing _Tp& __x) _NOEXCEPT +{ + return &__x; +} + +template +inline _LIBCPP_INLINE_VISIBILITY +__unsafe_unretained _Tp* +addressof(__unsafe_unretained _Tp& __x) _NOEXCEPT +{ + return &__x; +} +#endif + #ifdef _LIBCPP_HAS_NO_VARIADICS #include <__functional_base_03> @@ -352,7 +420,7 @@ struct __invoke_return }; template -class _LIBCPP_TYPE_VIS reference_wrapper +class _LIBCPP_TYPE_VIS_ONLY reference_wrapper : public __weak_result_type<_Tp> { public: @@ -363,7 +431,8 @@ private: public: // construct/copy/destroy - _LIBCPP_INLINE_VISIBILITY reference_wrapper(type& __f) _NOEXCEPT : __f_(&__f) {} + _LIBCPP_INLINE_VISIBILITY reference_wrapper(type& __f) _NOEXCEPT + : __f_(_VSTD::addressof(__f)) {} #ifndef _LIBCPP_HAS_NO_RVALUE_REFERENCES private: reference_wrapper(type&&); public: // = delete; // do not bind to temps #endif @@ -436,6 +505,111 @@ template void cref(const _Tp #endif // _LIBCPP_HAS_NO_VARIADICS +#if _LIBCPP_STD_VER > 11 +template +struct __is_transparent +{ +private: + struct __two {char __lx; char __lxx;}; + template static __two __test(...); + template static char __test(typename _Up::is_transparent* = 0); +public: + static const bool value = sizeof(__test<_Tp1>(0)) == 1; +}; +#endif + +// allocator_arg_t + +struct _LIBCPP_TYPE_VIS_ONLY allocator_arg_t { }; + +#if defined(_LIBCPP_HAS_NO_CONSTEXPR) || defined(_LIBCPP_BUILDING_MEMORY) +extern const allocator_arg_t allocator_arg; +#else +constexpr allocator_arg_t allocator_arg = allocator_arg_t(); +#endif + +// uses_allocator + +template +struct __has_allocator_type +{ +private: + struct __two {char __lx; char __lxx;}; + template static __two __test(...); + template static char __test(typename _Up::allocator_type* = 0); +public: + static const bool value = sizeof(__test<_Tp>(0)) == 1; +}; + +template ::value> +struct __uses_allocator + : public integral_constant::value> +{ +}; + +template +struct __uses_allocator<_Tp, _Alloc, false> + : public false_type +{ +}; + +template +struct _LIBCPP_TYPE_VIS_ONLY uses_allocator + : public __uses_allocator<_Tp, _Alloc> +{ +}; + +#ifndef _LIBCPP_HAS_NO_VARIADICS + +// allocator construction + +template +struct __uses_alloc_ctor_imp +{ + static const bool __ua = uses_allocator<_Tp, _Alloc>::value; + static const bool __ic = + is_constructible<_Tp, allocator_arg_t, _Alloc, _Args...>::value; + static const int value = __ua ? 2 - __ic : 0; +}; + +template +struct __uses_alloc_ctor + : integral_constant::value> + {}; + +template +inline _LIBCPP_INLINE_VISIBILITY +void __user_alloc_construct_impl (integral_constant, _Tp *__storage, const _Allocator &, _Args &&... __args ) +{ + new (__storage) _Tp (_VSTD::forward<_Args>(__args)...); +} + +template +inline _LIBCPP_INLINE_VISIBILITY +void __user_alloc_construct_impl (integral_constant, _Tp *__storage, const _Allocator &__a, _Args &&... __args ) +{ + new (__storage) _Tp (allocator_arg, __a, _VSTD::forward<_Args>(__args)...); +} + +template +inline _LIBCPP_INLINE_VISIBILITY +void __user_alloc_construct_impl (integral_constant, _Tp *__storage, const _Allocator &__a, _Args &&... __args ) +{ + new (__storage) _Tp (_VSTD::forward<_Args>(__args)..., __a); +} + +template +inline _LIBCPP_INLINE_VISIBILITY +void __user_alloc_construct (_Tp *__storage, const _Allocator &__a, _Args &&... __args) +{ + __user_alloc_construct_impl( + __uses_alloc_ctor<_Tp, _Allocator>(), + __storage, __a, _VSTD::forward<_Args>(__args)... + ); +} +#endif // _LIBCPP_HAS_NO_VARIADICS + _LIBCPP_END_NAMESPACE_STD #endif // _LIBCPP_FUNCTIONAL_BASE Modified: head/contrib/libc++/include/__functional_base_03 ============================================================================== --- head/contrib/libc++/include/__functional_base_03 Thu Jan 30 05:38:14 2014 (r261282) +++ head/contrib/libc++/include/__functional_base_03 Thu Jan 30 07:44:22 2014 (r261283) @@ -996,7 +996,7 @@ struct __invoke_return2 }; template -class _LIBCPP_TYPE_VIS reference_wrapper +class _LIBCPP_TYPE_VIS_ONLY reference_wrapper : public __weak_result_type<_Tp> { public: Modified: head/contrib/libc++/include/__hash_table ============================================================================== --- head/contrib/libc++/include/__hash_table Thu Jan 30 05:38:14 2014 (r261282) +++ head/contrib/libc++/include/__hash_table Thu Jan 30 07:44:22 2014 (r261283) @@ -20,6 +20,12 @@ #include <__undef_min_max> +#ifdef _LIBCPP_DEBUG +# include <__debug> +#else +# define _LIBCPP_ASSERT(x, m) ((void)0) +#endif + #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER) #pragma GCC system_header #endif @@ -79,14 +85,14 @@ __next_pow2(size_t __n) } template class __hash_table; -template class _LIBCPP_TYPE_VIS __hash_const_iterator; -template class _LIBCPP_TYPE_VIS __hash_map_iterator; -template class _LIBCPP_TYPE_VIS __hash_map_const_iterator; +template class _LIBCPP_TYPE_VIS_ONLY __hash_const_iterator; +template class _LIBCPP_TYPE_VIS_ONLY __hash_map_iterator; +template class _LIBCPP_TYPE_VIS_ONLY __hash_map_const_iterator; template - class _LIBCPP_TYPE_VIS unordered_map; + class _LIBCPP_TYPE_VIS_ONLY unordered_map; template -class _LIBCPP_TYPE_VIS __hash_iterator +class _LIBCPP_TYPE_VIS_ONLY __hash_iterator { typedef _NodePtr __node_pointer; @@ -105,16 +111,70 @@ public: #endif pointer; - _LIBCPP_INLINE_VISIBILITY __hash_iterator() _NOEXCEPT {} + _LIBCPP_INLINE_VISIBILITY __hash_iterator() _NOEXCEPT +#if _LIBCPP_STD_VER > 11 + : __node_(nullptr) +#endif + { +#if _LIBCPP_DEBUG_LEVEL >= 2 + __get_db()->__insert_i(this); +#endif + } + +#if _LIBCPP_DEBUG_LEVEL >= 2 *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 08:37:24 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8FA5CCBF; Thu, 30 Jan 2014 08:37:24 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 7C74F11B0; Thu, 30 Jan 2014 08:37:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0U8bOsh036381; Thu, 30 Jan 2014 08:37:24 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0U8bNAL036377; Thu, 30 Jan 2014 08:37:23 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201401300837.s0U8bNAL036377@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Thu, 30 Jan 2014 08:37:23 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261284 - head/lib/libfetch X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 08:37:24 -0000 Author: des Date: Thu Jan 30 08:37:23 2014 New Revision: 261284 URL: http://svnweb.freebsd.org/changeset/base/261284 Log: Bump copyright dates Modified: head/lib/libfetch/common.c head/lib/libfetch/common.h head/lib/libfetch/http.c Modified: head/lib/libfetch/common.c ============================================================================== --- head/lib/libfetch/common.c Thu Jan 30 07:44:22 2014 (r261283) +++ head/lib/libfetch/common.c Thu Jan 30 08:37:23 2014 (r261284) @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998-2011 Dag-Erling Smørgrav + * Copyright (c) 1998-2014 Dag-Erling Smørgrav * Copyright (c) 2013 Michael Gmelin * All rights reserved. * Modified: head/lib/libfetch/common.h ============================================================================== --- head/lib/libfetch/common.h Thu Jan 30 07:44:22 2014 (r261283) +++ head/lib/libfetch/common.h Thu Jan 30 08:37:23 2014 (r261284) @@ -1,5 +1,5 @@ /*- - * Copyright (c) 1998-2011 Dag-Erling Smørgrav + * Copyright (c) 1998-2014 Dag-Erling Smørgrav * All rights reserved. * * Redistribution and use in source and binary forms, with or without Modified: head/lib/libfetch/http.c ============================================================================== --- head/lib/libfetch/http.c Thu Jan 30 07:44:22 2014 (r261283) +++ head/lib/libfetch/http.c Thu Jan 30 08:37:23 2014 (r261284) @@ -1,5 +1,5 @@ /*- - * Copyright (c) 2000-2013 Dag-Erling Smørgrav + * Copyright (c) 2000-2014 Dag-Erling Smørgrav * All rights reserved. * * Redistribution and use in source and binary forms, with or without From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 10:53:29 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E2411483; Thu, 30 Jan 2014 10:53:29 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C22D31F19; Thu, 30 Jan 2014 10:53:29 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0UArTT2095973; Thu, 30 Jan 2014 10:53:29 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0UArTpA095972; Thu, 30 Jan 2014 10:53:29 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201401301053.s0UArTpA095972@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Thu, 30 Jan 2014 10:53:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261285 - stable/10/sys/geom X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 10:53:30 -0000 Author: ae Date: Thu Jan 30 10:53:29 2014 New Revision: 261285 URL: http://svnweb.freebsd.org/changeset/base/261285 Log: MFC r261084: malloc() with M_WAITOK doesn't return NULL. MFC r261085: Fix typo in r261084. Add to the gctl_error() an ability to specify error description even if numeric error code is already specified. Also by default set error code to EINVAL. PR: 185852 MFC r261086: In gctl_copyin() remove unused error variable. geom_alloc_copyin() can't return ENOMEM, so describe its fail as bad control request. Add check for NULL pointer in gctl_dump(), since it can be NULL when geom_alloc_copyin() failed. MFC r261089: Remove another unneeded NULL check from geom_alloc_copyin(). Do copyout in case of gctl version mismatch and fix sbuf leak in g_ctl_ioctl_ctl(). MFC r261091: Always free sbuf in gctl_free(). Modified: stable/10/sys/geom/geom_ctl.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/geom/geom_ctl.c ============================================================================== --- stable/10/sys/geom/geom_ctl.c Thu Jan 30 08:37:23 2014 (r261284) +++ stable/10/sys/geom/geom_ctl.c Thu Jan 30 10:53:29 2014 (r261285) @@ -84,8 +84,8 @@ g_ctl_init(void) } /* - * Report an error back to the user in ascii format. Return whatever copyout - * returned, or EINVAL if it succeeded. + * Report an error back to the user in ascii format. Return nerror + * or EINVAL if nerror isn't specified. */ int gctl_error(struct gctl_req *req, const char *fmt, ...) @@ -99,9 +99,10 @@ gctl_error(struct gctl_req *req, const c if (sbuf_done(req->serror)) { if (!req->nerror) req->nerror = EEXIST; - } - if (req->nerror) return (req->nerror); + } + if (!req->nerror) + req->nerror = EINVAL; va_start(ap, fmt); sbuf_vprintf(req->serror, fmt, ap); @@ -109,7 +110,7 @@ gctl_error(struct gctl_req *req, const c sbuf_finish(req->serror); if (g_debugflags & G_F_CTLDUMP) printf("gctl %p error \"%s\"\n", req, sbuf_data(req->serror)); - return (0); + return (req->nerror); } /* @@ -122,27 +123,23 @@ geom_alloc_copyin(struct gctl_req *req, void *ptr; ptr = g_malloc(len, M_WAITOK); - if (ptr == NULL) - req->nerror = ENOMEM; - else - req->nerror = copyin(uaddr, ptr, len); + req->nerror = copyin(uaddr, ptr, len); if (!req->nerror) return (ptr); - if (ptr != NULL) - g_free(ptr); + g_free(ptr); return (NULL); } static void gctl_copyin(struct gctl_req *req) { - int error, i; struct gctl_req_arg *ap; char *p; + int i; ap = geom_alloc_copyin(req, req->arg, req->narg * sizeof(*ap)); if (ap == NULL) { - req->nerror = ENOMEM; + gctl_error(req, "bad control request"); req->arg = NULL; return; } @@ -154,10 +151,9 @@ gctl_copyin(struct gctl_req *req) ap[i].kvalue = NULL; } - error = 0; for (i = 0; i < req->narg; i++) { if (ap[i].nlen < 1 || ap[i].nlen > SPECNAMELEN) { - error = gctl_error(req, + gctl_error(req, "wrong param name length %d: %d", i, ap[i].nlen); break; } @@ -165,14 +161,14 @@ gctl_copyin(struct gctl_req *req) if (p == NULL) break; if (p[ap[i].nlen - 1] != '\0') { - error = gctl_error(req, "unterminated param name"); + gctl_error(req, "unterminated param name"); g_free(p); break; } ap[i].name = p; ap[i].flag |= GCTL_PARAM_NAMEKERNEL; if (ap[i].len <= 0) { - error = gctl_error(req, "negative param length"); + gctl_error(req, "negative param length"); break; } p = geom_alloc_copyin(req, ap[i].value, ap[i].len); @@ -180,7 +176,7 @@ gctl_copyin(struct gctl_req *req) break; if ((ap[i].flag & GCTL_PARAM_ASCII) && p[ap[i].len - 1] != '\0') { - error = gctl_error(req, "unterminated param value"); + gctl_error(req, "unterminated param value"); g_free(p); break; } @@ -218,6 +214,7 @@ gctl_free(struct gctl_req *req) { int i; + sbuf_delete(req->serror); if (req->arg == NULL) return; for (i = 0; i < req->narg; i++) { @@ -228,15 +225,14 @@ gctl_free(struct gctl_req *req) g_free(req->arg[i].kvalue); } g_free(req->arg); - sbuf_delete(req->serror); } static void gctl_dump(struct gctl_req *req) { + struct gctl_req_arg *ap; u_int i; int j; - struct gctl_req_arg *ap; printf("Dump of gctl request at %p:\n", req); if (req->nerror > 0) { @@ -244,6 +240,8 @@ gctl_dump(struct gctl_req *req) if (sbuf_len(req->serror) > 0) printf(" error:\t\"%s\"\n", sbuf_data(req->serror)); } + if (req->arg == NULL) + return; for (i = 0; i < req->narg; i++) { ap = &req->arg[i]; if (!(ap->flag & GCTL_PARAM_NAMEKERNEL)) @@ -464,30 +462,31 @@ g_ctl_ioctl_ctl(struct cdev *dev, u_long req = (void *)data; req->nerror = 0; - req->serror = sbuf_new_auto(); /* It is an error if we cannot return an error text */ if (req->lerror < 2) return (EINVAL); if (!useracc(req->error, req->lerror, VM_PROT_WRITE)) return (EINVAL); + req->serror = sbuf_new_auto(); /* Check the version */ - if (req->version != GCTL_VERSION) - return (gctl_error(req, - "kernel and libgeom version mismatch.")); - - /* Get things on board */ - gctl_copyin(req); - - if (g_debugflags & G_F_CTLDUMP) - gctl_dump(req); - - if (!req->nerror) { - g_waitfor_event(g_ctl_req, req, M_WAITOK, NULL); - gctl_copyout(req); + if (req->version != GCTL_VERSION) { + gctl_error(req, "kernel and libgeom version mismatch."); + req->arg = NULL; + } else { + /* Get things on board */ + gctl_copyin(req); + + if (g_debugflags & G_F_CTLDUMP) + gctl_dump(req); + + if (!req->nerror) { + g_waitfor_event(g_ctl_req, req, M_WAITOK, NULL); + gctl_copyout(req); + } } if (sbuf_done(req->serror)) { - req->nerror = copyout(sbuf_data(req->serror), req->error, + copyout(sbuf_data(req->serror), req->error, imin(req->lerror, sbuf_len(req->serror) + 1)); } From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 10:54:12 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F05C95DF; Thu, 30 Jan 2014 10:54:11 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D0CE01F22; Thu, 30 Jan 2014 10:54:11 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0UAsBCS096103; Thu, 30 Jan 2014 10:54:11 GMT (envelope-from ae@svn.freebsd.org) Received: (from ae@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0UAsBtq096102; Thu, 30 Jan 2014 10:54:11 GMT (envelope-from ae@svn.freebsd.org) Message-Id: <201401301054.s0UAsBtq096102@svn.freebsd.org> From: "Andrey V. Elsukov" Date: Thu, 30 Jan 2014 10:54:11 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261286 - stable/9/sys/geom X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 10:54:12 -0000 Author: ae Date: Thu Jan 30 10:54:11 2014 New Revision: 261286 URL: http://svnweb.freebsd.org/changeset/base/261286 Log: MFC r261084: malloc() with M_WAITOK doesn't return NULL. MFC r261085: Fix typo in r261084. Add to the gctl_error() an ability to specify error description even if numeric error code is already specified. Also by default set error code to EINVAL. PR: 185852 MFC r261086: In gctl_copyin() remove unused error variable. geom_alloc_copyin() can't return ENOMEM, so describe its fail as bad control request. Add check for NULL pointer in gctl_dump(), since it can be NULL when geom_alloc_copyin() failed. MFC r261089: Remove another unneeded NULL check from geom_alloc_copyin(). Do copyout in case of gctl version mismatch and fix sbuf leak in g_ctl_ioctl_ctl(). MFC r261091: Always free sbuf in gctl_free(). Modified: stable/9/sys/geom/geom_ctl.c Directory Properties: stable/9/sys/ (props changed) Modified: stable/9/sys/geom/geom_ctl.c ============================================================================== --- stable/9/sys/geom/geom_ctl.c Thu Jan 30 10:53:29 2014 (r261285) +++ stable/9/sys/geom/geom_ctl.c Thu Jan 30 10:54:11 2014 (r261286) @@ -84,8 +84,8 @@ g_ctl_init(void) } /* - * Report an error back to the user in ascii format. Return whatever copyout - * returned, or EINVAL if it succeeded. + * Report an error back to the user in ascii format. Return nerror + * or EINVAL if nerror isn't specified. */ int gctl_error(struct gctl_req *req, const char *fmt, ...) @@ -99,9 +99,10 @@ gctl_error(struct gctl_req *req, const c if (sbuf_done(req->serror)) { if (!req->nerror) req->nerror = EEXIST; - } - if (req->nerror) return (req->nerror); + } + if (!req->nerror) + req->nerror = EINVAL; va_start(ap, fmt); sbuf_vprintf(req->serror, fmt, ap); @@ -109,7 +110,7 @@ gctl_error(struct gctl_req *req, const c sbuf_finish(req->serror); if (g_debugflags & G_F_CTLDUMP) printf("gctl %p error \"%s\"\n", req, sbuf_data(req->serror)); - return (0); + return (req->nerror); } /* @@ -122,27 +123,23 @@ geom_alloc_copyin(struct gctl_req *req, void *ptr; ptr = g_malloc(len, M_WAITOK); - if (ptr == NULL) - req->nerror = ENOMEM; - else - req->nerror = copyin(uaddr, ptr, len); + req->nerror = copyin(uaddr, ptr, len); if (!req->nerror) return (ptr); - if (ptr != NULL) - g_free(ptr); + g_free(ptr); return (NULL); } static void gctl_copyin(struct gctl_req *req) { - int error, i; struct gctl_req_arg *ap; char *p; + int i; ap = geom_alloc_copyin(req, req->arg, req->narg * sizeof(*ap)); if (ap == NULL) { - req->nerror = ENOMEM; + gctl_error(req, "bad control request"); req->arg = NULL; return; } @@ -154,10 +151,9 @@ gctl_copyin(struct gctl_req *req) ap[i].kvalue = NULL; } - error = 0; for (i = 0; i < req->narg; i++) { if (ap[i].nlen < 1 || ap[i].nlen > SPECNAMELEN) { - error = gctl_error(req, + gctl_error(req, "wrong param name length %d: %d", i, ap[i].nlen); break; } @@ -165,14 +161,14 @@ gctl_copyin(struct gctl_req *req) if (p == NULL) break; if (p[ap[i].nlen - 1] != '\0') { - error = gctl_error(req, "unterminated param name"); + gctl_error(req, "unterminated param name"); g_free(p); break; } ap[i].name = p; ap[i].flag |= GCTL_PARAM_NAMEKERNEL; if (ap[i].len <= 0) { - error = gctl_error(req, "negative param length"); + gctl_error(req, "negative param length"); break; } p = geom_alloc_copyin(req, ap[i].value, ap[i].len); @@ -180,7 +176,7 @@ gctl_copyin(struct gctl_req *req) break; if ((ap[i].flag & GCTL_PARAM_ASCII) && p[ap[i].len - 1] != '\0') { - error = gctl_error(req, "unterminated param value"); + gctl_error(req, "unterminated param value"); g_free(p); break; } @@ -218,6 +214,7 @@ gctl_free(struct gctl_req *req) { int i; + sbuf_delete(req->serror); if (req->arg == NULL) return; for (i = 0; i < req->narg; i++) { @@ -228,15 +225,14 @@ gctl_free(struct gctl_req *req) g_free(req->arg[i].kvalue); } g_free(req->arg); - sbuf_delete(req->serror); } static void gctl_dump(struct gctl_req *req) { + struct gctl_req_arg *ap; u_int i; int j; - struct gctl_req_arg *ap; printf("Dump of gctl request at %p:\n", req); if (req->nerror > 0) { @@ -244,6 +240,8 @@ gctl_dump(struct gctl_req *req) if (sbuf_len(req->serror) > 0) printf(" error:\t\"%s\"\n", sbuf_data(req->serror)); } + if (req->arg == NULL) + return; for (i = 0; i < req->narg; i++) { ap = &req->arg[i]; if (!(ap->flag & GCTL_PARAM_NAMEKERNEL)) @@ -464,30 +462,31 @@ g_ctl_ioctl_ctl(struct cdev *dev, u_long req = (void *)data; req->nerror = 0; - req->serror = sbuf_new_auto(); /* It is an error if we cannot return an error text */ if (req->lerror < 2) return (EINVAL); if (!useracc(req->error, req->lerror, VM_PROT_WRITE)) return (EINVAL); + req->serror = sbuf_new_auto(); /* Check the version */ - if (req->version != GCTL_VERSION) - return (gctl_error(req, - "kernel and libgeom version mismatch.")); - - /* Get things on board */ - gctl_copyin(req); - - if (g_debugflags & G_F_CTLDUMP) - gctl_dump(req); - - if (!req->nerror) { - g_waitfor_event(g_ctl_req, req, M_WAITOK, NULL); - gctl_copyout(req); + if (req->version != GCTL_VERSION) { + gctl_error(req, "kernel and libgeom version mismatch."); + req->arg = NULL; + } else { + /* Get things on board */ + gctl_copyin(req); + + if (g_debugflags & G_F_CTLDUMP) + gctl_dump(req); + + if (!req->nerror) { + g_waitfor_event(g_ctl_req, req, M_WAITOK, NULL); + gctl_copyout(req); + } } if (sbuf_done(req->serror)) { - req->nerror = copyout(sbuf_data(req->serror), req->error, + copyout(sbuf_data(req->serror), req->error, imin(req->lerror, sbuf_len(req->serror) + 1)); } From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 10:56:50 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BA478763; Thu, 30 Jan 2014 10:56:50 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A21851F3C; Thu, 30 Jan 2014 10:56:50 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0UAuoCL096485; Thu, 30 Jan 2014 10:56:50 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0UAuoLe096483; Thu, 30 Jan 2014 10:56:50 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201401301056.s0UAuoLe096483@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Thu, 30 Jan 2014 10:56:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261287 - in vendor-crypto/openssh/dist: . contrib/caldera contrib/cygwin contrib/redhat contrib/suse openbsd-compat regress X-SVN-Group: vendor-crypto MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 10:56:50 -0000 Author: des Date: Thu Jan 30 10:56:49 2014 New Revision: 261287 URL: http://svnweb.freebsd.org/changeset/base/261287 Log: Vendor import of OpenSSH 6.5p1. Added: vendor-crypto/openssh/dist/PROTOCOL.chacha20poly1305 (contents, props changed) vendor-crypto/openssh/dist/PROTOCOL.key (contents, props changed) vendor-crypto/openssh/dist/blocks.c (contents, props changed) vendor-crypto/openssh/dist/chacha.c (contents, props changed) vendor-crypto/openssh/dist/chacha.h (contents, props changed) vendor-crypto/openssh/dist/cipher-chachapoly.c (contents, props changed) vendor-crypto/openssh/dist/cipher-chachapoly.h (contents, props changed) vendor-crypto/openssh/dist/crypto_api.h (contents, props changed) vendor-crypto/openssh/dist/digest.c (contents, props changed) vendor-crypto/openssh/dist/digest.h (contents, props changed) vendor-crypto/openssh/dist/ed25519.c (contents, props changed) vendor-crypto/openssh/dist/fe25519.c (contents, props changed) vendor-crypto/openssh/dist/fe25519.h (contents, props changed) vendor-crypto/openssh/dist/ge25519.c (contents, props changed) vendor-crypto/openssh/dist/ge25519.h (contents, props changed) vendor-crypto/openssh/dist/ge25519_base.data (contents, props changed) vendor-crypto/openssh/dist/hash.c (contents, props changed) vendor-crypto/openssh/dist/kexc25519.c (contents, props changed) vendor-crypto/openssh/dist/kexc25519c.c (contents, props changed) vendor-crypto/openssh/dist/kexc25519s.c (contents, props changed) vendor-crypto/openssh/dist/openbsd-compat/arc4random.c (contents, props changed) vendor-crypto/openssh/dist/openbsd-compat/bcrypt_pbkdf.c (contents, props changed) vendor-crypto/openssh/dist/openbsd-compat/blf.h (contents, props changed) vendor-crypto/openssh/dist/openbsd-compat/blowfish.c (contents, props changed) vendor-crypto/openssh/dist/openbsd-compat/chacha_private.h (contents, props changed) vendor-crypto/openssh/dist/poly1305.c (contents, props changed) vendor-crypto/openssh/dist/poly1305.h (contents, props changed) vendor-crypto/openssh/dist/regress/setuid-allowed.c (contents, props changed) vendor-crypto/openssh/dist/regress/sftp-perm.sh (contents, props changed) vendor-crypto/openssh/dist/sandbox-capsicum.c (contents, props changed) vendor-crypto/openssh/dist/sc25519.c (contents, props changed) vendor-crypto/openssh/dist/sc25519.h (contents, props changed) vendor-crypto/openssh/dist/smult_curve25519_ref.c (contents, props changed) vendor-crypto/openssh/dist/ssh-ed25519.c (contents, props changed) vendor-crypto/openssh/dist/verify.c (contents, props changed) Deleted: vendor-crypto/openssh/dist/openbsd-compat/bsd-arc4random.c Modified: vendor-crypto/openssh/dist/ChangeLog vendor-crypto/openssh/dist/Makefile.in vendor-crypto/openssh/dist/PROTOCOL vendor-crypto/openssh/dist/README vendor-crypto/openssh/dist/aclocal.m4 vendor-crypto/openssh/dist/addrmatch.c vendor-crypto/openssh/dist/atomicio.c vendor-crypto/openssh/dist/auth-krb5.c vendor-crypto/openssh/dist/auth-options.c vendor-crypto/openssh/dist/auth-pam.c vendor-crypto/openssh/dist/auth2-hostbased.c vendor-crypto/openssh/dist/auth2-pubkey.c vendor-crypto/openssh/dist/authfd.c vendor-crypto/openssh/dist/authfile.c vendor-crypto/openssh/dist/authfile.h vendor-crypto/openssh/dist/bufaux.c vendor-crypto/openssh/dist/bufbn.c vendor-crypto/openssh/dist/buffer.c vendor-crypto/openssh/dist/buffer.h vendor-crypto/openssh/dist/canohost.c vendor-crypto/openssh/dist/channels.c vendor-crypto/openssh/dist/cipher.c vendor-crypto/openssh/dist/cipher.h vendor-crypto/openssh/dist/clientloop.c vendor-crypto/openssh/dist/compat.c vendor-crypto/openssh/dist/compat.h vendor-crypto/openssh/dist/config.h.in vendor-crypto/openssh/dist/configure vendor-crypto/openssh/dist/configure.ac vendor-crypto/openssh/dist/contrib/caldera/openssh.spec vendor-crypto/openssh/dist/contrib/cygwin/ssh-host-config vendor-crypto/openssh/dist/contrib/redhat/openssh.spec vendor-crypto/openssh/dist/contrib/suse/openssh.spec vendor-crypto/openssh/dist/defines.h vendor-crypto/openssh/dist/dh.c vendor-crypto/openssh/dist/dh.h vendor-crypto/openssh/dist/gss-serv-krb5.c vendor-crypto/openssh/dist/hostfile.c vendor-crypto/openssh/dist/kex.c vendor-crypto/openssh/dist/kex.h vendor-crypto/openssh/dist/kexdh.c vendor-crypto/openssh/dist/kexdhc.c vendor-crypto/openssh/dist/kexdhs.c vendor-crypto/openssh/dist/kexecdh.c vendor-crypto/openssh/dist/kexecdhc.c vendor-crypto/openssh/dist/kexecdhs.c vendor-crypto/openssh/dist/kexgex.c vendor-crypto/openssh/dist/kexgexc.c vendor-crypto/openssh/dist/kexgexs.c vendor-crypto/openssh/dist/key.c vendor-crypto/openssh/dist/key.h vendor-crypto/openssh/dist/loginrec.c vendor-crypto/openssh/dist/mac.c vendor-crypto/openssh/dist/mac.h vendor-crypto/openssh/dist/match.c vendor-crypto/openssh/dist/misc.c vendor-crypto/openssh/dist/misc.h vendor-crypto/openssh/dist/moduli.c vendor-crypto/openssh/dist/monitor.c vendor-crypto/openssh/dist/monitor_mm.c vendor-crypto/openssh/dist/monitor_mm.h vendor-crypto/openssh/dist/myproposal.h vendor-crypto/openssh/dist/openbsd-compat/Makefile.in vendor-crypto/openssh/dist/openbsd-compat/bsd-cygwin_util.h vendor-crypto/openssh/dist/openbsd-compat/bsd-misc.c vendor-crypto/openssh/dist/openbsd-compat/bsd-poll.c vendor-crypto/openssh/dist/openbsd-compat/bsd-setres_id.c vendor-crypto/openssh/dist/openbsd-compat/bsd-snprintf.c vendor-crypto/openssh/dist/openbsd-compat/bsd-statvfs.c vendor-crypto/openssh/dist/openbsd-compat/bsd-statvfs.h vendor-crypto/openssh/dist/openbsd-compat/openbsd-compat.h vendor-crypto/openssh/dist/openbsd-compat/openssl-compat.c vendor-crypto/openssh/dist/openbsd-compat/openssl-compat.h vendor-crypto/openssh/dist/openbsd-compat/setproctitle.c vendor-crypto/openssh/dist/packet.c vendor-crypto/openssh/dist/pathnames.h vendor-crypto/openssh/dist/pkcs11.h vendor-crypto/openssh/dist/platform.c vendor-crypto/openssh/dist/platform.h vendor-crypto/openssh/dist/progressmeter.c vendor-crypto/openssh/dist/readconf.c vendor-crypto/openssh/dist/readconf.h vendor-crypto/openssh/dist/regress/Makefile vendor-crypto/openssh/dist/regress/agent-ptrace.sh vendor-crypto/openssh/dist/regress/agent.sh vendor-crypto/openssh/dist/regress/cert-hostkey.sh vendor-crypto/openssh/dist/regress/cert-userkey.sh vendor-crypto/openssh/dist/regress/cipher-speed.sh vendor-crypto/openssh/dist/regress/forward-control.sh vendor-crypto/openssh/dist/regress/integrity.sh vendor-crypto/openssh/dist/regress/kextype.sh vendor-crypto/openssh/dist/regress/keytype.sh vendor-crypto/openssh/dist/regress/krl.sh vendor-crypto/openssh/dist/regress/modpipe.c vendor-crypto/openssh/dist/regress/rekey.sh vendor-crypto/openssh/dist/regress/scp-ssh-wrapper.sh vendor-crypto/openssh/dist/regress/scp.sh vendor-crypto/openssh/dist/regress/test-exec.sh vendor-crypto/openssh/dist/regress/try-ciphers.sh vendor-crypto/openssh/dist/roaming_client.c vendor-crypto/openssh/dist/roaming_common.c vendor-crypto/openssh/dist/sandbox-darwin.c vendor-crypto/openssh/dist/sandbox-null.c vendor-crypto/openssh/dist/sandbox-rlimit.c vendor-crypto/openssh/dist/sandbox-seccomp-filter.c vendor-crypto/openssh/dist/sandbox-systrace.c vendor-crypto/openssh/dist/schnorr.c vendor-crypto/openssh/dist/schnorr.h vendor-crypto/openssh/dist/scp.0 vendor-crypto/openssh/dist/scp.1 vendor-crypto/openssh/dist/scp.c vendor-crypto/openssh/dist/servconf.c vendor-crypto/openssh/dist/servconf.h vendor-crypto/openssh/dist/serverloop.c vendor-crypto/openssh/dist/session.c vendor-crypto/openssh/dist/session.h vendor-crypto/openssh/dist/sftp-client.c vendor-crypto/openssh/dist/sftp-client.h vendor-crypto/openssh/dist/sftp-common.c vendor-crypto/openssh/dist/sftp-glob.c vendor-crypto/openssh/dist/sftp-server.0 vendor-crypto/openssh/dist/sftp-server.8 vendor-crypto/openssh/dist/sftp-server.c vendor-crypto/openssh/dist/sftp.0 vendor-crypto/openssh/dist/sftp.1 vendor-crypto/openssh/dist/sftp.c vendor-crypto/openssh/dist/ssh-add.0 vendor-crypto/openssh/dist/ssh-add.1 vendor-crypto/openssh/dist/ssh-add.c vendor-crypto/openssh/dist/ssh-agent.0 vendor-crypto/openssh/dist/ssh-agent.1 vendor-crypto/openssh/dist/ssh-agent.c vendor-crypto/openssh/dist/ssh-dss.c vendor-crypto/openssh/dist/ssh-ecdsa.c vendor-crypto/openssh/dist/ssh-keygen.0 vendor-crypto/openssh/dist/ssh-keygen.1 vendor-crypto/openssh/dist/ssh-keygen.c vendor-crypto/openssh/dist/ssh-keyscan.0 vendor-crypto/openssh/dist/ssh-keyscan.1 vendor-crypto/openssh/dist/ssh-keyscan.c vendor-crypto/openssh/dist/ssh-keysign.0 vendor-crypto/openssh/dist/ssh-keysign.8 vendor-crypto/openssh/dist/ssh-keysign.c vendor-crypto/openssh/dist/ssh-pkcs11-helper.c vendor-crypto/openssh/dist/ssh-pkcs11.c vendor-crypto/openssh/dist/ssh-rsa.c vendor-crypto/openssh/dist/ssh-sandbox.h vendor-crypto/openssh/dist/ssh.0 vendor-crypto/openssh/dist/ssh.1 vendor-crypto/openssh/dist/ssh.c vendor-crypto/openssh/dist/ssh_config vendor-crypto/openssh/dist/ssh_config.0 vendor-crypto/openssh/dist/ssh_config.5 vendor-crypto/openssh/dist/sshconnect.c vendor-crypto/openssh/dist/sshconnect.h vendor-crypto/openssh/dist/sshconnect1.c vendor-crypto/openssh/dist/sshconnect2.c vendor-crypto/openssh/dist/sshd.0 vendor-crypto/openssh/dist/sshd.8 vendor-crypto/openssh/dist/sshd.c vendor-crypto/openssh/dist/sshd_config vendor-crypto/openssh/dist/sshd_config.0 vendor-crypto/openssh/dist/sshd_config.5 vendor-crypto/openssh/dist/uidswap.c vendor-crypto/openssh/dist/version.h vendor-crypto/openssh/dist/xmalloc.c Modified: vendor-crypto/openssh/dist/ChangeLog ============================================================================== --- vendor-crypto/openssh/dist/ChangeLog Thu Jan 30 10:54:11 2014 (r261286) +++ vendor-crypto/openssh/dist/ChangeLog Thu Jan 30 10:56:49 2014 (r261287) @@ -1,25 +1,1042 @@ -20131108 +20140130 + - (djm) [configure.ac] Only check for width-specified integer types + in headers that actually exist. patch from Tom G. Christensen; + ok dtucker@ + - (djm) [configure.ac atomicio.c] Kludge around NetBSD offering + different symbols for 'read' when various compiler flags are + in use, causing atomicio.c comparisons against it to break and + read/write operations to hang; ok dtucker + - (djm) Release openssh-6.5p1 + +20140129 + - (djm) [configure.ac] Fix broken shell test '==' vs '='; patch from + Tom G. Christensen + +20140128 + - (djm) [configure.ac] Search for inet_ntop in libnsl and libresovl; + ok dtucker + - (djm) [sshd.c] Use kill(0, ...) instead of killpg(0, ...); the + latter being specified to have undefined behaviour in SUSv3; + ok dtucker + - (tim) [regress/agent.sh regress/agent-ptrace.sh] Assign $? to a variable + when used as an error message inside an if statement so we display the + correct into. agent.sh patch from Petr Lautrbach. + +20140127 + - (dtucker) [Makefile.in] Remove trailing backslash which some make + implementations (eg older Solaris) do not cope with. + +20140126 + - OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2014/01/25 10:12:50 + [cipher.c cipher.h kex.c kex.h kexgexc.c] + Add a special case for the DH group size for 3des-cbc, which has an + effective strength much lower than the key size. This causes problems + with some cryptlib implementations, which don't support group sizes larger + than 4k but also don't use the largest group size it does support as + specified in the RFC. Based on a patch from Petr Lautrbach at Redhat, + reduced by me with input from Markus. ok djm@ markus@ + - markus@cvs.openbsd.org 2014/01/25 20:35:37 + [kex.c] + dh_need needs to be set to max(seclen, blocksize, ivlen, mac_len) + ok dtucker@, noted by mancha + - (djm) [configure.ac sandbox-capsicum.c sandbox-rlimit.c] Disable + RLIMIT_NOFILE pseudo-sandbox on FreeBSD. In some configurations, + libc will attempt to open additional file descriptors for crypto + offload and crash if they cannot be opened. + - (djm) [configure.ac] correct AC_DEFINE for previous. + +20140125 + - (djm) [configure.ac] Fix detection of capsicum sandbox on FreeBSD + - (djm) [configure.ac] Do not attempt to use capsicum sandbox unless + sys/capability.h exists and cap_rights_limit is in libc. Fixes + build on FreeBSD9x which provides the header but not the libc + support. + - (djm) [configure.ac] autoconf sets finds to 'yes' not '1', so test + against the correct thing. + +20140124 + - (djm) [Makefile.in regress/scp-ssh-wrapper.sh regress/scp.sh] Make + the scp regress test actually test the built scp rather than the one + in $PATH. ok dtucker@ + +20140123 + - (tim) [session.c] Improve error reporting on set_id(). + - (dtucker) [configure.ac] NetBSD's (and FreeBSD's) strnvis is gratuitously + incompatible with OpenBSD's despite post-dating it by more than a decade. + Declare it as broken, and document FreeBSD's as the same. ok djm@ + +20140122 + - (djm) [openbsd-compat/setproctitle.c] Don't fail to compile if a + platform that is expected to use the reuse-argv style setproctitle + hack surprises us by providing a setproctitle in libc; ok dtucker + - (djm) [configure.ac] Unless specifically requested, only attempt + to build Position Independent Executables on gcc >= 4.x; ok dtucker + - (djm) [configure.ac aclocal.m4] More tests to detect fallout from + platform hardening options: include some long long int arithmatic + to detect missing support functions for -ftrapv in libgcc and + equivalents, actually test linking when -ftrapv is supplied and + set either both -pie/-fPIE or neither. feedback and ok dtucker@ + +20140121 + - (dtucker) [configure.ac] Make PIE a configure-time option which defaults + to on platforms where it's known to be reliably detected and off elsewhere. + Works around platforms such as FreeBSD 9.1 where it does not interop with + -ftrapv (it seems to work but fails when trying to link ssh). ok djm@ + - (dtucker) [aclocal.m4] Differentiate between compile-time and link-time + tests in the configure output. ok djm. + - (tim) [platform.c session.c] Fix bug affecting SVR5 platforms introduced + with sftp chroot support. Move set_id call after chroot. + - (djm) [aclocal.m4] Flesh out the code run in the OSSH_CHECK_CFLAG_COMPILE + and OSSH_CHECK_LDFLAG_LINK tests to give them a better chance of + detecting toolchain-related problems; ok dtucker + +20140120 + - (dtucker) [gss-serv-krb5.c] Fall back to krb5_cc_gen_new if the Kerberos + implementation does not have krb5_cc_new_unique, similar to what we do + in auth-krb5.c. + - (djm) [regress/cert-hostkey.sh] Fix regress failure on platforms that + skip one or more key types (e.g. RHEL/CentOS 6.5); ok dtucker@ + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2014/01/20 00:08:48 + [digest.c] + memleak; found by Loganaden Velvindron @ AfriNIC; ok markus@ + +20140119 + - (dtucker) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2014/01/17 06:23:24 + [sftp-server.c] + fix log message statvfs. ok djm + - dtucker@cvs.openbsd.org 2014/01/18 09:36:26 + [session.c] + explicitly define USE_PIPES to 1 to prevent redefinition warnings in + portable on platforms that use pipes for everything. From vinschen at + redhat. + - dtucker@cvs.openbsd.org 2014/01/19 04:17:29 + [canohost.c addrmatch.c] + Cast socklen_t when comparing to size_t and use socklen_t to iterate over + the ip options, both to prevent signed/unsigned comparison warnings. + Patch from vinschen at redhat via portable openssh, begrudging ok deraadt. + - djm@cvs.openbsd.org 2014/01/19 04:48:08 + [ssh_config.5] + fix inverted meaning of 'no' and 'yes' for CanonicalizeFallbackLocal + - dtucker@cvs.openbsd.org 2014/01/19 11:21:51 + [addrmatch.c] + Cast the sizeof to socklen_t so it'll work even if the supplied len is + negative. Suggested by and ok djm, ok deraadt. + +20140118 + - (dtucker) [uidswap.c] Prevent unused variable warnings on Cygwin. Patch + from vinschen at redhat.com + - (dtucker) [openbsd-compat/bsd-cygwin_util.h] Add missing function + declarations that stopped being included when we stopped including + from openbsd-compat/bsd-cygwin_util.h. Patch from vinschen at + redhat.com. + - (dtucker) [configure.ac] On Cygwin the getopt variables (like optargs, + optind) are defined in getopt.h already. Unfortunately they are defined as + "declspec(dllimport)" for historical reasons, because the GNU linker didn't + allow auto-import on PE/COFF targets way back when. The problem is the + dllexport attributes collide with the definitions in the various source + files in OpenSSH, which obviousy define the variables without + declspec(dllimport). The least intrusive way to get rid of these warnings + is to disable warnings for GCC compiler attributes when building on Cygwin. + Patch from vinschen at redhat.com. + - (dtucker) [sandbox-capsicum.c] Correct some error messages and make the + return value check for cap_enter() consistent with the other uses in + FreeBSD. From by Loganaden Velvindron @ AfriNIC via bz#2140. + +20140117 + - (dtucker) [aclocal.m4 configure.ac] Add some additional compiler/toolchain + hardening flags including -fstack-protector-strong. These default to on + if the toolchain supports them, but there is a configure-time knob + (--without-hardening) to disable them if necessary. ok djm@ + - (djm) [sftp-client.c] signed/unsigned comparison fix + - (dtucker) [loginrec.c] Cast to the types specfied in the format + specification to prevent warnings. + - (dtucker) [crypto_api.h] Wrap stdlib.h include inside #ifdef HAVE_STDINT_H. + - (dtucker) [poly1305.c] Wrap stdlib.h include inside #ifdef HAVE_STDINT_H. + - (dtucker) [blocks.c fe25519.c ge25519.c hash.c sc25519.c verify.c] Include + includes.h to pull in all of the compatibility stuff. + - (dtucker) [openbsd-compat/bcrypt_pbkdf.c] Wrap stdlib.h include inside + #ifdef HAVE_STDINT_H. + - (dtucker) [defines.h] Add typedefs for uintXX_t types for platforms that + don't have them. + - (dtucker) [configure.ac] Split AC_CHECK_FUNCS for OpenSSL functions into + separate lines and alphabetize for easier diffing of changes. + - (dtucker) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2014/01/17 00:21:06 + [sftp-client.c] + signed/unsigned comparison warning fix; from portable (Id sync only) + - dtucker@cvs.openbsd.org 2014/01/17 05:26:41 + [digest.c] + remove unused includes. ok djm@ + - (djm) [Makefile.in configure.ac sandbox-capsicum.c sandbox-darwin.c] + [sandbox-null.c sandbox-rlimit.c sandbox-seccomp-filter.c] + [sandbox-systrace.c ssh-sandbox.h sshd.c] Support preauth sandboxing + using the Capsicum API introduced in FreeBSD 10. Patch by Dag-Erling + Smorgrav, updated by Loganaden Velvindron @ AfriNIC; ok dtucker@ + - (dtucker) [configure.ac digest.c openbsd-compat/openssl-compat.c + openbsd-compat/openssl-compat.h] Add compatibility layer for older + openssl versions. ok djm@ + - (dtucker) Fix typo in #ifndef. + - (dtucker) [configure.ac openbsd-compat/bsd-statvfs.c + openbsd-compat/bsd-statvfs.h] Implement enough of statvfs on top of statfs + to be useful (and for the regression tests to pass) on platforms that + have statfs and fstatfs. ok djm@ + - (dtucker) [openbsd-compat/bsd-statvfs.h] Only start including headers if we + need them to cut down on the name collisions. + - (dtucker) [configure.ac] Also look in inttypes.h for uintXX_t types. + - (dtucker) [configure.ac] Have --without-hardening not turn off + stack-protector since that has a separate flag that's been around a while. + - (dtucker) [readconf.c] Wrap paths.h inside an ifdef. Allows building on + Solaris. + - (dtucker) [defines.h] Move our definitions of uintXX_t types down to after + they're defined if we have to define them ourselves. Fixes builds on old + AIX. + +20140118 - (djm) OpenBSD CVS Sync - - markus@cvs.openbsd.org 2013/11/06 16:52:11 - [monitor_wrap.c] - fix rekeying for AES-GCM modes; ok deraadt + - djm@cvs.openbsd.org 2014/01/16 07:31:09 + [sftp-client.c] + needless and incorrect cast to size_t can break resumption of + large download; patch from tobias@ + - djm@cvs.openbsd.org 2014/01/16 07:32:00 + [version.h] + openssh-6.5 + - (djm) [contrib/caldera/openssh.spec contrib/redhat/openssh.spec] + [contrib/suse/openssh.spec] Crank RPM spec version numbers. + - (djm) [README] update release notes URL. + +20140112 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2014/01/10 05:59:19 + [sshd_config] + the /etc/ssh/ssh_host_ed25519_key is loaded by default too + - djm@cvs.openbsd.org 2014/01/12 08:13:13 + [bufaux.c buffer.h kex.c kex.h kexc25519.c kexc25519c.c kexc25519s.c] + [kexdhc.c kexdhs.c kexecdhc.c kexecdhs.c kexgexc.c kexgexs.c] + avoid use of OpenSSL BIGNUM type and functions for KEX with + Curve25519 by adding a buffer_put_bignum2_from_string() that stores + a string using the bignum encoding rules. Will make it easier to + build a reduced-feature OpenSSH without OpenSSL in the future; + ok markus@ + +20140110 + - (djm) OpenBSD CVS Sync + - tedu@cvs.openbsd.org 2014/01/04 17:50:55 + [mac.c monitor_mm.c monitor_mm.h xmalloc.c] + use standard types and formats for size_t like variables. ok dtucker + - guenther@cvs.openbsd.org 2014/01/09 03:26:00 + [sftp-common.c] + When formating the time for "ls -l"-style output, show dates in the future + with the year, and rearrange a comparison to avoid a potentional signed + arithmetic overflow that would give the wrong result. + ok djm@ + - djm@cvs.openbsd.org 2014/01/09 23:20:00 + [digest.c digest.h hostfile.c kex.c kex.h kexc25519.c kexc25519c.c] + [kexc25519s.c kexdh.c kexecdh.c kexecdhc.c kexecdhs.c kexgex.c kexgexc.c] + [kexgexs.c key.c key.h roaming_client.c roaming_common.c schnorr.c] + [schnorr.h ssh-dss.c ssh-ecdsa.c ssh-rsa.c sshconnect2.c] + Introduce digest API and use it to perform all hashing operations + rather than calling OpenSSL EVP_Digest* directly. Will make it easier + to build a reduced-feature OpenSSH without OpenSSL in future; + feedback, ok markus@ + - djm@cvs.openbsd.org 2014/01/09 23:26:48 + [sshconnect.c sshd.c] + ban clients/servers that suffer from SSH_BUG_DERIVEKEY, they are ancient, + deranged and might make some attacks on KEX easier; ok markus@ + +20140108 + - (djm) [regress/.cvsignore] Ignore regress test droppings; ok dtucker@ + +20131231 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/12/30 23:52:28 + [auth2-hostbased.c auth2-pubkey.c compat.c compat.h ssh-rsa.c] + [sshconnect.c sshconnect2.c sshd.c] + refuse RSA keys from old proprietary clients/servers that use the + obsolete RSA+MD5 signature scheme. it will still be possible to connect + with these clients/servers but only DSA keys will be accepted, and we'll + deprecate them entirely in a future release. ok markus@ + +20131229 + - (djm) [loginrec.c] Check for username truncation when looking up lastlog + entries + - (djm) [regress/Makefile] Add some generated files for cleaning + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/12/19 00:10:30 + [ssh-add.c] + skip requesting smartcard PIN when removing keys from agent; bz#2187 + patch from jay AT slushpupie.com; ok dtucker + - dtucker@cvs.openbsd.org 2013/12/19 00:19:12 + [serverloop.c] + Cast client_alive_interval to u_int64_t before assinging to + max_time_milliseconds to avoid potential integer overflow in the timeout. + bz#2170, patch from Loganaden Velvindron, ok djm@ + - djm@cvs.openbsd.org 2013/12/19 00:27:57 + [auth-options.c] + simplify freeing of source-address certificate restriction + - djm@cvs.openbsd.org 2013/12/19 01:04:36 + [channels.c] + bz#2147: fix multiple remote forwardings with dynamically assigned + listen ports. In the s->c message to open the channel we were sending + zero (the magic number to request a dynamic port) instead of the actual + listen port. The client therefore had no way of discriminating between + them. + + Diagnosis and fix by ronf AT timeheart.net + - djm@cvs.openbsd.org 2013/12/19 01:19:41 + [ssh-agent.c] + bz#2186: don't crash (NULL deref) when deleting PKCS#11 keys from an agent + that has a mix of normal and PKCS#11 keys; fix from jay AT slushpupie.com; + ok dtucker + - djm@cvs.openbsd.org 2013/12/19 22:57:13 + [poly1305.c poly1305.h] + use full name for author, with his permission + - tedu@cvs.openbsd.org 2013/12/21 07:10:47 + [ssh-keygen.1] + small typo + - djm@cvs.openbsd.org 2013/12/27 22:30:17 + [ssh-dss.c ssh-ecdsa.c ssh-rsa.c] + make the original RSA and DSA signing/verification code look more like + the ECDSA/Ed25519 ones: use key_type_plain() when checking the key type + rather than tediously listing all variants, use __func__ for debug/ + error messages + - djm@cvs.openbsd.org 2013/12/27 22:37:18 + [ssh-rsa.c] + correct comment + - djm@cvs.openbsd.org 2013/12/29 02:28:10 + [key.c] + allow ed25519 keys to appear as certificate authorities + - djm@cvs.openbsd.org 2013/12/29 02:37:04 + [key.c] + correct comment for key_to_certified() + - djm@cvs.openbsd.org 2013/12/29 02:49:52 + [key.c] + correct comment for key_drop_cert() + - djm@cvs.openbsd.org 2013/12/29 04:20:04 + [key.c] + to make sure we don't omit any key types as valid CA keys again, + factor the valid key type check into a key_type_is_valid_ca() + function + - djm@cvs.openbsd.org 2013/12/29 04:29:25 + [authfd.c] + allow deletion of ed25519 keys from the agent + - djm@cvs.openbsd.org 2013/12/29 04:35:50 + [authfile.c] + don't refuse to load Ed25519 certificates + - djm@cvs.openbsd.org 2013/12/29 05:42:16 + [ssh.c] + don't forget to load Ed25519 certs too + - djm@cvs.openbsd.org 2013/12/29 05:57:02 + [sshconnect.c] + when showing other hostkeys, don't forget Ed25519 keys + +20131221 + - (dtucker) [regress/keytype.sh] Actually test ecdsa key types. + +20131219 + - (dtucker) [configure.ac] bz#2178: Don't try to use BSM on Solaris versions + greater than 11 either rather than just 11. Patch from Tomas Kuthan. + - (dtucker) [auth-pam.c] bz#2163: check return value from pam_get_item(). + Patch from Loganaden Velvindron. + +20131218 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/12/07 08:08:26 + [ssh-keygen.1] + document -a and -o wrt new key format + - naddy@cvs.openbsd.org 2013/12/07 11:58:46 + [ssh-add.1 ssh-agent.1 ssh-keygen.1 ssh-keyscan.1 ssh-keysign.8 ssh.1] + [ssh_config.5 sshd.8 sshd_config.5] + add missing mentions of ed25519; ok djm@ + - dtucker@cvs.openbsd.org 2013/12/08 09:53:27 + [sshd_config.5] + Use a literal for the default value of KEXAlgorithms. ok deraadt jmc + - markus@cvs.openbsd.org 2013/12/09 11:03:45 + [blocks.c ed25519.c fe25519.c fe25519.h ge25519.c ge25519.h] + [ge25519_base.data hash.c sc25519.c sc25519.h verify.c] + Add Authors for the public domain ed25519/nacl code. + see also http://nacl.cr.yp.to/features.html + All of the NaCl software is in the public domain. + and http://ed25519.cr.yp.to/software.html + The Ed25519 software is in the public domain. + - markus@cvs.openbsd.org 2013/12/09 11:08:17 + [crypto_api.h] + remove unused defines + - pascal@cvs.openbsd.org 2013/12/15 18:17:26 + [ssh-add.c] + Make ssh-add also add .ssh/id_ed25519; fixes lie in manual page. + ok markus@ + - djm@cvs.openbsd.org 2013/12/15 21:42:35 + [cipher-chachapoly.c] + add some comments and constify a constant + - markus@cvs.openbsd.org 2013/12/17 10:36:38 + [crypto_api.h] + I've assempled the header file by cut&pasting from generated headers + and the source files. + +20131208 + - (djm) [openbsd-compat/bsd-setres_id.c] Missing header; from Corinna + Vinschen + - (djm) [Makefile.in regress/Makefile regress/agent-ptrace.sh] + [regress/setuid-allowed.c] Check that ssh-agent is not on a no-setuid + filesystem before running agent-ptrace.sh; ok dtucker + +20131207 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/12/05 22:59:45 + [sftp-client.c] + fix memory leak in error path in do_readdir(); pointed out by + Loganaden Velvindron @ AfriNIC in bz#2163 + - djm@cvs.openbsd.org 2013/12/06 03:40:51 + [ssh-keygen.c] + remove duplicated character ('g') in getopt() string; + document the (few) remaining option characters so we don't have to + rummage next time. + - markus@cvs.openbsd.org 2013/12/06 13:30:08 + [authfd.c key.c key.h ssh-agent.c] + move private key (de)serialization to key.c; ok djm + - markus@cvs.openbsd.org 2013/12/06 13:34:54 + [authfile.c authfile.h cipher.c cipher.h key.c packet.c ssh-agent.c] + [ssh-keygen.c PROTOCOL.key] new private key format, bcrypt as KDF by + default; details in PROTOCOL.key; feedback and lots help from djm; + ok djm@ + - markus@cvs.openbsd.org 2013/12/06 13:39:49 + [authfd.c authfile.c key.c key.h myproposal.h pathnames.h readconf.c] + [servconf.c ssh-agent.c ssh-keygen.c ssh-keyscan.1 ssh-keyscan.c] + [ssh-keysign.c ssh.c ssh_config.5 sshd.8 sshd.c verify.c ssh-ed25519.c] + [sc25519.h sc25519.c hash.c ge25519_base.data ge25519.h ge25519.c] + [fe25519.h fe25519.c ed25519.c crypto_api.h blocks.c] + support ed25519 keys (hostkeys and user identities) using the public + domain ed25519 reference code from SUPERCOP, see + http://ed25519.cr.yp.to/software.html + feedback, help & ok djm@ + - jmc@cvs.openbsd.org 2013/12/06 15:29:07 + [sshd.8] + missing comma; + - djm@cvs.openbsd.org 2013/12/07 00:19:15 + [key.c] + set k->cert = NULL after freeing it + - markus@cvs.openbsd.org 2013/12/06 13:52:46 + [regress/Makefile regress/agent.sh regress/cert-hostkey.sh] + [regress/cert-userkey.sh regress/keytype.sh] + test ed25519 support; from djm@ + - (djm) [blocks.c ed25519.c fe25519.c fe25519.h ge25519.c ge25519.h] + [ge25519_base.data hash.c sc25519.c sc25519.h verify.c] Fix RCS idents + - (djm) [Makefile.in] Add ed25519 sources + - (djm) [authfile.c] Conditionalise inclusion of util.h + - (djm) [configure.ac openbsd-compat/Makefile.in openbsd-compat/bcrypt_pbkdf.c] + [openbsd-compat/blf.h openbsd-compat/blowfish.c] + [openbsd-compat/openbsd-compat.h] Start at supporting bcrypt_pbkdf in + portable. + - (djm) [ed25519.c ssh-ed25519.c openbsd-compat/Makefile.in] + [openbsd-compat/bcrypt_pbkdf.c] Make ed25519/new key format compile on + Linux + - (djm) [regress/cert-hostkey.sh] Fix merge botch + - (djm) [Makefile.in] PATHSUBS and keygen bits for Ed25519; from + Loganaden Velvindron @ AfriNIC in bz#2179 + +20131205 + - (djm) OpenBSD CVS Sync + - jmc@cvs.openbsd.org 2013/11/21 08:05:09 + [ssh_config.5 sshd_config.5] + no need for .Pp before displays; + - deraadt@cvs.openbsd.org 2013/11/25 18:04:21 + [ssh.1 ssh.c] + improve -Q usage and such. One usage change is that the option is now + case-sensitive + ok dtucker markus djm + - jmc@cvs.openbsd.org 2013/11/26 12:14:54 + [ssh.1 ssh.c] + - put -Q in the right place + - Ar was a poor choice for the arguments to -Q. i've chosen an + admittedly equally poor Cm, at least consistent with the rest + of the docs. also no need for multiple instances + - zap a now redundant Nm + - usage() sync + - deraadt@cvs.openbsd.org 2013/11/26 19:15:09 + [pkcs11.h] + cleanup 1 << 31 idioms. Resurrection of this issue pointed out by + Eitan Adler ok markus for ssh, implies same change in kerberosV + - djm@cvs.openbsd.org 2013/12/01 23:19:05 + [PROTOCOL] + mention curve25519-sha256@libssh.org key exchange algorithm + - djm@cvs.openbsd.org 2013/12/02 02:50:27 + [PROTOCOL.chacha20poly1305] + typo; from Jon Cave + - djm@cvs.openbsd.org 2013/12/02 02:56:17 + [ssh-pkcs11-helper.c] + use-after-free; bz#2175 patch from Loganaden Velvindron @ AfriNIC + - djm@cvs.openbsd.org 2013/12/02 03:09:22 + [key.c] + make key_to_blob() return a NULL blob on failure; part of + bz#2175 from Loganaden Velvindron @ AfriNIC + - djm@cvs.openbsd.org 2013/12/02 03:13:14 + [cipher.c] + correct bzero of chacha20+poly1305 key context. bz#2177 from + Loganaden Velvindron @ AfriNIC + + Also make it a memset for consistency with the rest of cipher.c + - djm@cvs.openbsd.org 2013/12/04 04:20:01 + [sftp-client.c] + bz#2171: don't leak local_fd on error; from Loganaden Velvindron @ + AfriNIC + - djm@cvs.openbsd.org 2013/12/05 01:16:41 + [servconf.c servconf.h] + bz#2161 - fix AuthorizedKeysCommand inside a Match block and + rearrange things so the same error is harder to make next time; + with and ok dtucker@ + - (dtucker) [configure.ac] bz#2173: use pkg-config --libs to include correct + -L location for libedit. Patch from Serge van den Boom. + +20131121 + - (djm) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2013/11/08 11:15:19 + [bufaux.c bufbn.c buffer.c sftp-client.c sftp-common.c sftp-glob.c] + [uidswap.c] Include stdlib.h for free() as per the man page. + - markus@cvs.openbsd.org 2013/11/13 13:48:20 + [ssh-pkcs11.c] + add missing braces found by pedro + - djm@cvs.openbsd.org 2013/11/20 02:19:01 + [sshd.c] + delay closure of in/out fds until after "Bad protocol version + identification..." message, as get_remote_ipaddr/get_remote_port + require them open. + - deraadt@cvs.openbsd.org 2013/11/20 20:53:10 + [scp.c] + unsigned casts for ctype macros where neccessary + ok guenther millert markus + - deraadt@cvs.openbsd.org 2013/11/20 20:54:10 + [canohost.c clientloop.c match.c readconf.c sftp.c] + unsigned casts for ctype macros where neccessary + ok guenther millert markus + - djm@cvs.openbsd.org 2013/11/21 00:45:44 + [Makefile.in PROTOCOL PROTOCOL.chacha20poly1305 authfile.c chacha.c] + [chacha.h cipher-chachapoly.c cipher-chachapoly.h cipher.c cipher.h] + [dh.c myproposal.h packet.c poly1305.c poly1305.h servconf.c ssh.1] + [ssh.c ssh_config.5 sshd_config.5] Add a new protocol 2 transport + cipher "chacha20-poly1305@openssh.com" that combines Daniel + Bernstein's ChaCha20 stream cipher and Poly1305 MAC to build an + authenticated encryption mode. + + Inspired by and similar to Adam Langley's proposal for TLS: + http://tools.ietf.org/html/draft-agl-tls-chacha20poly1305-03 + but differs in layout used for the MAC calculation and the use of a + second ChaCha20 instance to separately encrypt packet lengths. + Details are in the PROTOCOL.chacha20poly1305 file. + + Feedback markus@, naddy@; manpage bits Loganden Velvindron @ AfriNIC + ok markus@ naddy@ + - naddy@cvs.openbsd.org 2013/11/18 05:09:32 + [regress/forward-control.sh] + bump timeout to 10 seconds to allow slow machines (e.g. Alpha PC164) + to successfully run this; ok djm@ + - djm@cvs.openbsd.org 2013/11/21 03:15:46 + [regress/krl.sh] + add some reminders for additional tests that I'd like to implement + - djm@cvs.openbsd.org 2013/11/21 03:16:47 + [regress/modpipe.c] + use unsigned long long instead of u_int64_t here to avoid warnings + on some systems portable OpenSSH is built on. + - djm@cvs.openbsd.org 2013/11/21 03:18:51 + [regress/cipher-speed.sh regress/integrity.sh regress/rekey.sh] + [regress/try-ciphers.sh] + use new "ssh -Q cipher-auth" query to obtain lists of authenticated + encryption ciphers instead of specifying them manually; ensures that + the new chacha20poly1305@openssh.com mode is tested; + + ok markus@ and naddy@ as part of the diff to add + chacha20poly1305@openssh.com + +20131110 + - (dtucker) [regress/keytype.sh] Populate ECDSA key types to be tested by + querying the ones that are compiled in. + +20131109 + - (dtucker) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2013/11/09 05:41:34 + [regress/test-exec.sh regress/rekey.sh] + Use smaller test data files to speed up tests. Grow test datafiles + where necessary for a specific test. + - (dtucker) [configure.ac kex.c key.c myproposal.h] Test for the presence of + NID_X9_62_prime256v1, NID_secp384r1 and NID_secp521r1 and test that the + latter actually works before using it. Fedora (at least) has NID_secp521r1 + that doesn't work (see https://bugzilla.redhat.com/show_bug.cgi?id=1021897). + - (dtucker) [configure.ac] Fix brackets in NID_secp521r1 test. + - (dtucker) [configure.ac] Add missing "test". + - (dtucker) [key.c] Check for the correct defines for NID_secp521r1. + +20131108 + - (dtucker) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2013/11/08 01:06:14 + [regress/rekey.sh] + Rekey less frequently during tests to speed them up + - (djm) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2013/11/07 11:58:27 + [cipher.c cipher.h kex.c kex.h mac.c mac.h servconf.c ssh.c] + Output the effective values of Ciphers, MACs and KexAlgorithms when + the default has not been overridden. ok markus@ - djm@cvs.openbsd.org 2013/11/08 00:39:15 [auth-options.c auth2-chall.c authfd.c channels.c cipher-3des1.c] [clientloop.c gss-genr.c monitor_mm.c packet.c schnorr.c umac.c] [sftp-client.c sftp-glob.c] use calloc for all structure allocations; from markus@ - - (djm) [README contrib/caldera/openssh.spec contrib/redhat/openssh.spec] - [contrib/suse/openssh.spec] update version numbers - djm@cvs.openbsd.org 2013/11/08 01:38:11 [version.h] openssh-6.4 - - (djm) Release 6.4p1 + - (djm) [README contrib/caldera/openssh.spec contrib/redhat/openssh.spec] + [contrib/suse/openssh.spec] Update version numbers following release. + - (dtucker) [openbsd-compat/openbsd-compat.h] Add null implementation of + arc4random_stir for platforms that have arc4random but don't have + arc4random_stir (right now this is only OpenBSD -current). + - (dtucker) [kex.c] Only enable CURVE25519_SHA256 if we actually have + EVP_sha256. + - (dtucker) [myproposal.h] Conditionally enable CURVE25519_SHA256. + - (dtucker) [openbsd-compat/bsd-poll.c] Add headers to prevent compile + warnings. + - (dtucker) [Makefile.in configure.ac] Set MALLOC_OPTIONS per platform + and pass in TEST_ENV. use stderr to get polluted + and the stderr-data test to fail. + - (dtucker) [contrib/cygwin/ssh-host-config] Simplify host key generation: + rather than testing and generating each key, call ssh-keygen -A. + Patch from vinschen at redhat.com. + - (dtucker) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2013/11/09 05:41:34 + [regress/test-exec.sh regress/rekey.sh] + Use smaller test data files to speed up tests. Grow test datafiles + where necessary for a specific test. + +20131107 + - (djm) [ssh-pkcs11.c] Bring back "non-constant initialiser" fix (rev 1.5) + that got lost in recent merge. + - (djm) [Makefile.in monitor.c] Missed chunks of curve25519 KEX diff + - (djm) [regress/modpipe.c regress/rekey.sh] Never intended to commit these + - (djm) [configure.ac defines.h] Skip arc4random_stir() calls on platforms + that lack it but have arc4random_uniform() + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2013/11/04 11:51:16 + [monitor.c] + fix rekeying for KEX_C25519_SHA256; noted by dtucker@ + RCSID sync only; I thought this was a merge botch and fixed it already + - markus@cvs.openbsd.org 2013/11/06 16:52:11 + [monitor_wrap.c] + fix rekeying for AES-GCM modes; ok deraadt + - djm@cvs.openbsd.org 2013/11/06 23:05:59 + [ssh-pkcs11.c] + from portable: s/true/true_val/ to avoid name collisions on dump platforms + RCSID sync only + - (dtucker) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/10/09 23:44:14 + [regress/Makefile] (ID sync only) + regression test for sftp request white/blacklisting and readonly mode. + - markus@cvs.openbsd.org 2013/11/02 22:39:53 + [regress/kextype.sh] + add curve25519-sha256@libssh.org + - dtucker@cvs.openbsd.org 2013/11/04 12:27:42 + [regress/rekey.sh] + Test rekeying with all KexAlgorithms. + - dtucker@cvs.openbsd.org 2013/11/07 00:12:05 + [regress/rekey.sh] + Test rekeying for every Cipher, MAC and KEX, plus test every KEX with + the GCM ciphers. + - dtucker@cvs.openbsd.org 2013/11/07 01:12:51 + [regress/rekey.sh] + Factor out the data transfer rekey tests + - dtucker@cvs.openbsd.org 2013/11/07 02:48:38 + [regress/integrity.sh regress/cipher-speed.sh regress/try-ciphers.sh] + Use ssh -Q instead of hardcoding lists of ciphers or MACs. + - dtucker@cvs.openbsd.org 2013/11/07 03:55:41 + [regress/kextype.sh] + Use ssh -Q to get kex types instead of a static list. + - dtucker@cvs.openbsd.org 2013/11/07 04:26:56 + [regress/kextype.sh] + trailing space + - (dtucker) [Makefile.in configure.ac] Remove TEST_SSH_SHA256 environment + variable. It's no longer used now that we get the supported MACs from + ssh -Q. -20130913 - - (djm) [channels.c] Fix unaligned access on sparc machines in SOCKS5 code; - ok dtucker@ - - (djm) [channels.c] sigh, typo s/buffet_/buffer_/ - - (djm) Release 6.3p1 +20131104 + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2013/11/02 20:03:54 + [ssh-pkcs11.c] + support pkcs#11 tokes that only provide x509 zerts instead of raw pubkeys; + fixes bz#1908; based on patch from Laurent Barbe; ok djm + - markus@cvs.openbsd.org 2013/11/02 21:59:15 + [kex.c kex.h myproposal.h ssh-keyscan.c sshconnect2.c sshd.c] + use curve25519 for default key exchange (curve25519-sha256@libssh.org); + initial patch from Aris Adamantiadis; ok djm@ + - markus@cvs.openbsd.org 2013/11/02 22:10:15 + [kexdhs.c kexecdhs.c] + no need to include monitor_wrap.h + - markus@cvs.openbsd.org 2013/11/02 22:24:24 + [kexdhs.c kexecdhs.c] + no need to include ssh-gss.h + - markus@cvs.openbsd.org 2013/11/02 22:34:01 + [auth-options.c] + no need to include monitor_wrap.h and ssh-gss.h + - markus@cvs.openbsd.org 2013/11/02 22:39:19 + [ssh_config.5 sshd_config.5] + the default kex is now curve25519-sha256@libssh.org + - djm@cvs.openbsd.org 2013/11/03 10:37:19 + [roaming_common.c] + fix a couple of function definitions foo() -> foo(void) + (-Wold-style-definition) + - (djm) [kexc25519.c kexc25519c.c kexc25519s.c] Import missed files from + KEX/curve25519 change + +20131103 + - (dtucker) [openbsd-compat/bsd-misc.c] Include time.h for nanosleep. + From OpenSMTPD where it prevents "implicit declaration" warnings (it's + a no-op in OpenSSH). From chl at openbsd. + - (dtucker) [openbsd-compat/setproctitle.c] Handle error case form the 2nd + vsnprintf. From eric at openbsd via chl@. + - (dtucker) [configure.ac defines.h] Add typedefs for intmax_t and uintmax_t + for platforms that don't have them. + +20131030 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/10/29 09:42:11 + [key.c key.h] + fix potential stack exhaustion caused by nested certificates; + report by Mateusz Kocielski; ok dtucker@ markus@ + - djm@cvs.openbsd.org 2013/10/29 09:48:02 + [servconf.c servconf.h session.c sshd_config sshd_config.5] + shd_config PermitTTY to disallow TTY allocation, mirroring the + longstanding no-pty authorized_keys option; + bz#2070, patch from Teran McKinney; ok markus@ + - jmc@cvs.openbsd.org 2013/10/29 18:49:32 + [sshd_config.5] + pty(4), not pty(7); + +20131026 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/10/25 23:04:51 + [ssh.c] + fix crash when using ProxyCommand caused by previous commit - was calling + freeaddrinfo(NULL); spotted by sthen@ and Tim Ruehsen, patch by sthen@ + +20131025 + - (djm) [ssh-keygen.c ssh-keysign.c sshconnect1.c sshd.c] Remove + unnecessary arc4random_stir() calls. The only ones left are to ensure + that the PRNG gets a different state after fork() for platforms that + have broken the API. + +20131024 + - (djm) [auth-krb5.c] bz#2032 - use local username in krb5_kuserok check + rather than full client name which may be of form user@REALM; + patch from Miguel Sanders; ok dtucker@ + - (djm) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2013/10/23 05:40:58 + [servconf.c] + fix comment + - djm@cvs.openbsd.org 2013/10/23 23:35:32 + [sshd.c] + include local address and port in "Connection from ..." message (only + shown at loglevel>=verbose) + - dtucker@cvs.openbsd.org 2013/10/24 00:49:49 + [moduli.c] + Periodically print progress and, if possible, expected time to completion + when screening moduli for DH groups. ok deraadt djm + - dtucker@cvs.openbsd.org 2013/10/24 00:51:48 + [readconf.c servconf.c ssh_config.5 sshd_config.5] + Disallow empty Match statements and add "Match all" which matches + everything. ok djm, man page help jmc@ + - djm@cvs.openbsd.org 2013/10/24 08:19:36 + [ssh.c] + fix bug introduced in hostname canonicalisation commit: don't try to + resolve hostnames when a ProxyCommand is set unless the user has forced + canonicalisation; spotted by Iain Morgan + - (tim) [regress/sftp-perm.sh] We need a shell that understands "! somecmd" + +20131023 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/10/20 04:39:28 + [ssh_config.5] + document % expansions performed by "Match command ..." + - djm@cvs.openbsd.org 2013/10/20 06:19:28 + [readconf.c ssh_config.5] + rename "command" subclause of the recently-added "Match" keyword to + "exec"; it's shorter, clearer in intent and we might want to add the + ability to match against the command being executed at the remote end in + the future. + - djm@cvs.openbsd.org 2013/10/20 09:51:26 + [scp.1 sftp.1] + add canonicalisation options to -o lists + - jmc@cvs.openbsd.org 2013/10/20 18:00:13 + [ssh_config.5] + tweak the "exec" description, as worded by djm; + - djm@cvs.openbsd.org 2013/10/23 03:03:07 + [readconf.c] + Hostname may have %h sequences that should be expanded prior to Match + evaluation; spotted by Iain Morgan + - djm@cvs.openbsd.org 2013/10/23 03:05:19 + [readconf.c ssh.c] + comment + - djm@cvs.openbsd.org 2013/10/23 04:16:22 + [ssh-keygen.c] + Make code match documentation: relative-specified certificate expiry time + should be relative to current time and not the validity start time. + Reported by Petr Lautrbach; ok deraadt@ + +20131018 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/10/09 23:44:14 + [regress/Makefile regress/sftp-perm.sh] + regression test for sftp request white/blacklisting and readonly mode. + - jmc@cvs.openbsd.org 2013/10/17 07:35:48 + [sftp.1 sftp.c] + tweak previous; + - djm@cvs.openbsd.org 2013/10/17 22:08:04 + [sshd.c] + include remote port in bad banner message; bz#2162 + +20131017 + - (djm) OpenBSD CVS Sync + - jmc@cvs.openbsd.org 2013/10/15 14:10:25 + [ssh.1 ssh_config.5] + tweak previous; + - djm@cvs.openbsd.org 2013/10/16 02:31:47 + [readconf.c readconf.h roaming_client.c ssh.1 ssh.c ssh_config.5] + [sshconnect.c sshconnect.h] + Implement client-side hostname canonicalisation to allow an explicit + search path of domain suffixes to use to convert unqualified host names + to fully-qualified ones for host key matching. + This is particularly useful for host certificates, which would otherwise + need to list unqualified names alongside fully-qualified ones (and this + causes a number of problems). + "looks fine" markus@ + - jmc@cvs.openbsd.org 2013/10/16 06:42:25 + [ssh_config.5] + tweak previous; + - djm@cvs.openbsd.org 2013/10/16 22:49:39 + [readconf.c readconf.h ssh.1 ssh.c ssh_config.5] + s/canonicalise/canonicalize/ for consistency with existing spelling, + e.g. authorized_keys; pointed out by naddy@ + - djm@cvs.openbsd.org 2013/10/16 22:58:01 + [ssh.c ssh_config.5] + one I missed in previous: s/isation/ization/ + - djm@cvs.openbsd.org 2013/10/17 00:30:13 + [PROTOCOL sftp-client.c sftp-client.h sftp-server.c sftp.1 sftp.c] + fsync@openssh.com protocol extension for sftp-server + client support to allow calling fsync() faster successful transfer + patch mostly by imorgan AT nas.nasa.gov; bz#1798 + "fine" markus@ "grumble OK" deraadt@ "doesn't sound bad to me" millert@ + - djm@cvs.openbsd.org 2013/10/17 00:46:49 + [ssh.c] + rearrange check to reduce diff against -portable + (Id sync only) + +20131015 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/10/09 23:42:17 + [sftp-server.8 sftp-server.c] + Add ability to whitelist and/or blacklist sftp protocol requests by name. + Refactor dispatch loop and consolidate read-only mode checks. + Make global variables static, since sftp-server is linked into sshd(8). + ok dtucker@ + - djm@cvs.openbsd.org 2013/10/10 00:53:25 + [sftp-server.c] + add -Q, -P and -p to usage() before jmc@ catches me + - djm@cvs.openbsd.org 2013/10/10 01:43:03 + [sshd.c] + bz#2139: fix re-exec fallback by ensuring that startup_pipe is correctly + updated; ok dtucker@ + - djm@cvs.openbsd.org 2013/10/11 02:45:36 + [sftp-client.c] + rename flag arguments to be more clear and consistent. + reorder some internal function arguments to make adding additional flags + easier. + no functional change + - djm@cvs.openbsd.org 2013/10/11 02:52:23 + [sftp-client.c] + missed one arg reorder + - djm@cvs.openbsd.org 2013/10/11 02:53:45 + [sftp-client.h] + obsolete comment + - jmc@cvs.openbsd.org 2013/10/14 14:18:56 + [sftp-server.8 sftp-server.c] + tweak previous; + ok djm + - djm@cvs.openbsd.org 2013/10/14 21:20:52 + [session.c session.h] + Add logging of session starts in a useful format; ok markus@ feedback and + ok dtucker@ + - djm@cvs.openbsd.org 2013/10/14 22:22:05 + [readconf.c readconf.h ssh-keysign.c ssh.c ssh_config.5] + add a "Match" keyword to ssh_config that allows matching on hostname, + user and result of arbitrary commands. "nice work" markus@ + - djm@cvs.openbsd.org 2013/10/14 23:28:23 + [canohost.c misc.c misc.h readconf.c sftp-server.c ssh.c] + refactor client config code a little: + add multistate option partsing to readconf.c, similar to servconf.c's + existing code. + move checking of options that accept "none" as an argument to readconf.c + add a lowercase() function and use it instead of explicit tolower() in + loops + part of a larger diff that was ok markus@ + - djm@cvs.openbsd.org 2013/10/14 23:31:01 + [ssh.c] + whitespace at EOL; pointed out by markus@ + - [ssh.c] g/c unused variable. + +20131010 + - (dtucker) OpenBSD CVS Sync + - sthen@cvs.openbsd.org 2013/09/16 11:35:43 + [ssh_config] + Remove gssapi config parts from ssh_config, as was already done for + sshd_config. Req by/ok ajacoutot@ + ID SYNC ONLY for portable; kerberos/gssapi is still pretty popular + - djm@cvs.openbsd.org 2013/09/19 00:24:52 + [progressmeter.c] + store the initial file offset so the progress meter doesn't freak out + when resuming sftp transfers. bz#2137; patch from Iain Morgan; ok dtucker@` + - djm@cvs.openbsd.org 2013/09/19 00:49:12 + [sftp-client.c] + fix swapped pflag and printflag in sftp upload_dir; from Iain Morgan + - djm@cvs.openbsd.org 2013/09/19 01:24:46 + [channels.c] + bz#1297 - tell the client (via packet_send_debug) when their preferred + listen address has been overridden by the server's GatewayPorts; + ok dtucker@ + - djm@cvs.openbsd.org 2013/09/19 01:26:29 + [sshconnect.c] + bz#1211: make BindAddress work with UsePrivilegedPort=yes; patch from + swp AT swp.pp.ru; ok dtucker@ + - dtucker@cvs.openbsd.org 2013/10/08 11:42:13 + [dh.c dh.h] + Increase the size of the Diffie-Hellman groups requested for a each + symmetric key size. New values from NIST Special Publication 800-57 with + the upper limit specified by RFC4419. Pointed out by Peter Backes, ok + djm@. + +20131009 + - (djm) [openbsd-compat/arc4random.c openbsd-compat/chacha_private.h] Pull + in OpenBSD implementation of arc4random, shortly to replace the existing + bsd-arc4random.c + - (djm) [openbsd-compat/Makefile.in openbsd-compat/arc4random.c] + [openbsd-compat/bsd-arc4random.c] Replace old RC4-based arc4random + implementation with recent OpenBSD's ChaCha-based PRNG. ok dtucker@, + tested tim@ + +20130922 + - (dtucker) [platform.c platform.h sshd.c] bz#2156: restore Linux oom_adj + setting when handling SIGHUP to maintain behaviour over retart. Patch + from Matthew Ife. + +20130918 + - (dtucker) [sshd_config] Trailing whitespace; from jstjohn at purdue edu. + +20130914 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/08/22 19:02:21 + [sshd.c] + Stir PRNG after post-accept fork. The child gets a different PRNG state + anyway via rexec and explicit privsep reseeds, but it's good to be sure. + ok markus@ + - mikeb@cvs.openbsd.org 2013/08/28 12:34:27 + [ssh-keygen.c] + improve batch processing a bit by making use of the quite flag a bit + more often and exit with a non zero code if asked to find a hostname + in a known_hosts file and it wasn't there; + originally from reyk@, ok djm + - djm@cvs.openbsd.org 2013/08/31 00:13:54 + [sftp.c] + make ^w match ksh behaviour (delete previous word instead of entire line) + - deraadt@cvs.openbsd.org 2013/09/02 22:00:34 + [ssh-keygen.c sshconnect1.c sshd.c] + All the instances of arc4random_stir() are bogus, since arc4random() + does this itself, inside itself, and has for a very long time.. Actually, + this was probably reducing the entropy available. + ok djm + ID SYNC ONLY for portable; we don't trust other arc4random implementations + to do this right. + - sthen@cvs.openbsd.org 2013/09/07 13:53:11 + [sshd_config] + Remove commented-out kerberos/gssapi config options from sample config, + kerberos support is currently not enabled in ssh in OpenBSD. Discussed with + various people; ok deraadt@ + ID SYNC ONLY for portable; kerberos/gssapi is still pretty popular + - djm@cvs.openbsd.org 2013/09/12 01:41:12 + [clientloop.c] + fix connection crash when sending break (~B) on ControlPersist'd session; + ok dtucker@ + - djm@cvs.openbsd.org 2013/09/13 06:54:34 + [channels.c] + avoid unaligned access in code that reused a buffer to send a + struct in_addr in a reply; simpler just use use buffer_put_int(); + from portable; spotted by and ok dtucker@ + +20130828 + - (djm) [openbsd-compat/bsd-snprintf.c] teach our local snprintf code the + 'j' (intmax_t/uintmax_t) and 'z' (size_t/ssize_t) conversions in case we + start to use them in the future. + - (djm) [openbsd-compat/bsd-snprintf.c] #ifdef noytet for intmax_t bits + until we have configure support. + +20130821 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/08/06 23:03:49 + [sftp.c] + fix some whitespace at EOL + make list of commands an enum rather than a long list of defines + add -a to usage() + - djm@cvs.openbsd.org 2013/08/06 23:05:01 + [sftp.1] *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 10:57:52 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C842E8BD; Thu, 30 Jan 2014 10:57:52 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9A33F1F48; Thu, 30 Jan 2014 10:57:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0UAvqa6096620; Thu, 30 Jan 2014 10:57:52 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0UAvq43096619; Thu, 30 Jan 2014 10:57:52 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201401301057.s0UAvq43096619@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Thu, 30 Jan 2014 10:57:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261288 - vendor-crypto/openssh/6.5p1 X-SVN-Group: vendor-crypto MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 10:57:52 -0000 Author: des Date: Thu Jan 30 10:57:52 2014 New Revision: 261288 URL: http://svnweb.freebsd.org/changeset/base/261288 Log: Tag OpenSSH 6.5p1. Added: vendor-crypto/openssh/6.5p1/ - copied from r261287, vendor-crypto/openssh/dist/ From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 18:04:41 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 109F7F51; Thu, 30 Jan 2014 18:04:41 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id F00C415B9; Thu, 30 Jan 2014 18:04:40 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0UI4eY9062632; Thu, 30 Jan 2014 18:04:40 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0UI4dI0062625; Thu, 30 Jan 2014 18:04:39 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201401301804.s0UI4dI0062625@svn.freebsd.org> From: Konstantin Belousov Date: Thu, 30 Jan 2014 18:04:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261290 - in head: lib/libc/gen lib/libc/sys sys/compat/freebsd32 sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 18:04:41 -0000 Author: kib Date: Thu Jan 30 18:04:39 2014 New Revision: 261290 URL: http://svnweb.freebsd.org/changeset/base/261290 Log: The posix_madvise(3) and posix_fadvise(2) should return error on failure, same as posix_fallocate(2). Noted by: Bob Bishop Discussed with: bde Sponsored by: The FreeBSD Foundation MFC after: 1 week Modified: head/lib/libc/gen/pmadvise.c head/lib/libc/sys/madvise.2 head/lib/libc/sys/posix_fadvise.2 head/lib/libc/sys/posix_fallocate.2 head/sys/compat/freebsd32/freebsd32_misc.c head/sys/kern/vfs_syscalls.c Modified: head/lib/libc/gen/pmadvise.c ============================================================================== --- head/lib/libc/gen/pmadvise.c Thu Jan 30 11:35:19 2014 (r261289) +++ head/lib/libc/gen/pmadvise.c Thu Jan 30 18:04:39 2014 (r261290) @@ -8,9 +8,19 @@ __FBSDID("$FreeBSD$"); #include +#include int posix_madvise(void *address, size_t size, int how) { - return madvise(address, size, how); + int ret, saved_errno; + + saved_errno = errno; + if (madvise(address, size, how) == -1) { + ret = errno; + errno = saved_errno; + } else { + ret = 0; + } + return (ret); } Modified: head/lib/libc/sys/madvise.2 ============================================================================== --- head/lib/libc/sys/madvise.2 Thu Jan 30 11:35:19 2014 (r261289) +++ head/lib/libc/sys/madvise.2 Thu Jan 30 18:04:39 2014 (r261290) @@ -28,7 +28,7 @@ .\" @(#)madvise.2 8.1 (Berkeley) 6/9/93 .\" $FreeBSD$ .\" -.Dd July 19, 1996 +.Dd January 30, 2014 .Dt MADVISE 2 .Os .Sh NAME @@ -50,7 +50,10 @@ allows a process that has knowledge of i to describe it to the system. The .Fn posix_madvise -interface is identical and is provided for standards conformance. +interface is identical, except it returns an error number on error and does +not modify +.Va errno , +and is provided for standards conformance. .Pp The known behaviors are: .Bl -tag -width MADV_SEQUENTIAL Modified: head/lib/libc/sys/posix_fadvise.2 ============================================================================== --- head/lib/libc/sys/posix_fadvise.2 Thu Jan 30 11:35:19 2014 (r261289) +++ head/lib/libc/sys/posix_fadvise.2 Thu Jan 30 18:04:39 2014 (r261290) @@ -28,7 +28,7 @@ .\" @(#)madvise.2 8.1 (Berkeley) 6/9/93 .\" $FreeBSD$ .\" -.Dd June 19, 2012 +.Dd January 30, 2014 .Dt POSIX_FADVISE 2 .Os .Sh NAME @@ -93,7 +93,7 @@ Future access to this data may require a .Sh ERRORS The .Fn posix_fadvise -system call will fail if: +system call returns zero on success, and an error on failure: .Bl -tag -width Er .It Bq Er EBADF The Modified: head/lib/libc/sys/posix_fallocate.2 ============================================================================== --- head/lib/libc/sys/posix_fallocate.2 Thu Jan 30 11:35:19 2014 (r261289) +++ head/lib/libc/sys/posix_fallocate.2 Thu Jan 30 18:04:39 2014 (r261290) @@ -83,9 +83,8 @@ that reduces the file size to a size sma If successful, .Fn posix_fallocate returns zero. -It returns error number on failure, without setting -.Va errno -variable. +It returns an error on failure, without setting +.Va errno . .Sh ERRORS Possible failure conditions: .Bl -tag -width Er Modified: head/sys/compat/freebsd32/freebsd32_misc.c ============================================================================== --- head/sys/compat/freebsd32/freebsd32_misc.c Thu Jan 30 11:35:19 2014 (r261289) +++ head/sys/compat/freebsd32/freebsd32_misc.c Thu Jan 30 18:04:39 2014 (r261290) @@ -3005,8 +3005,10 @@ freebsd32_posix_fadvise(struct thread *t struct freebsd32_posix_fadvise_args *uap) { - return (kern_posix_fadvise(td, uap->fd, PAIR32TO64(off_t, uap->offset), - PAIR32TO64(off_t, uap->len), uap->advice)); + td->td_retval[0] = kern_posix_fadvise(td, uap->fd, + PAIR32TO64(off_t, uap->offset), PAIR32TO64(off_t, uap->len), + uap->advice); + return (0); } int Modified: head/sys/kern/vfs_syscalls.c ============================================================================== --- head/sys/kern/vfs_syscalls.c Thu Jan 30 11:35:19 2014 (r261289) +++ head/sys/kern/vfs_syscalls.c Thu Jan 30 18:04:39 2014 (r261290) @@ -4725,6 +4725,7 @@ int sys_posix_fadvise(struct thread *td, struct posix_fadvise_args *uap) { - return (kern_posix_fadvise(td, uap->fd, uap->offset, uap->len, - uap->advice)); + td->td_retval[0] = kern_posix_fadvise(td, uap->fd, uap->offset, + uap->len, uap->advice); + return (0); } From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 18:32:34 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 266CF94C; Thu, 30 Jan 2014 18:32:34 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 12DBD1859; Thu, 30 Jan 2014 18:32:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0UIWXlb074553; Thu, 30 Jan 2014 18:32:33 GMT (envelope-from gnn@svn.freebsd.org) Received: (from gnn@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0UIWXVQ074552; Thu, 30 Jan 2014 18:32:33 GMT (envelope-from gnn@svn.freebsd.org) Message-Id: <201401301832.s0UIWXVQ074552@svn.freebsd.org> From: "George V. Neville-Neil" Date: Thu, 30 Jan 2014 18:32:33 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261291 - head/sys/dev/e1000 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 18:32:34 -0000 Author: gnn Date: Thu Jan 30 18:32:33 2014 New Revision: 261291 URL: http://svnweb.freebsd.org/changeset/base/261291 Log: The timestamp bit is number 17, and not number 9, in the stat error field of the receive descriptor. MFC after: 1 week Modified: head/sys/dev/e1000/e1000_defines.h Modified: head/sys/dev/e1000/e1000_defines.h ============================================================================== --- head/sys/dev/e1000/e1000_defines.h Thu Jan 30 18:04:39 2014 (r261290) +++ head/sys/dev/e1000/e1000_defines.h Thu Jan 30 18:32:33 2014 (r261291) @@ -131,7 +131,7 @@ #define E1000_RXD_ERR_RXE 0x80 /* Rx Data Error */ #define E1000_RXD_SPC_VLAN_MASK 0x0FFF /* VLAN ID is in lower 12 bits */ -#define E1000_RXDEXT_STATERR_TST 0x00000100 /* Time Stamp taken */ +#define E1000_RXDEXT_STATERR_TST 0x00010000 /* Time Stamp taken */ #define E1000_RXDEXT_STATERR_LB 0x00040000 #define E1000_RXDEXT_STATERR_CE 0x01000000 #define E1000_RXDEXT_STATERR_SE 0x02000000 From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 19:10:00 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4B5075A5; Thu, 30 Jan 2014 19:10:00 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 374BF1AF0; Thu, 30 Jan 2014 19:10:00 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0UJA0Qm087542; Thu, 30 Jan 2014 19:10:00 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0UJA0ew087512; Thu, 30 Jan 2014 19:10:00 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401301910.s0UJA0ew087512@svn.freebsd.org> From: John Baldwin Date: Thu, 30 Jan 2014 19:10:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261292 - stable/10/sys/dev/pccbb X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 19:10:00 -0000 Author: jhb Date: Thu Jan 30 19:09:59 2014 New Revision: 261292 URL: http://svnweb.freebsd.org/changeset/base/261292 Log: MFC 261216: Explicitly enable I/O and memory decoding in the bridge's command register when activating an I/O or memory window on the CardBus bridge. Modified: stable/10/sys/dev/pccbb/pccbb.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/dev/pccbb/pccbb.c ============================================================================== --- stable/10/sys/dev/pccbb/pccbb.c Thu Jan 30 18:32:33 2014 (r261291) +++ stable/10/sys/dev/pccbb/pccbb.c Thu Jan 30 19:09:59 2014 (r261292) @@ -1038,6 +1038,13 @@ cbb_cardbus_power_disable_socket(device_ /* CardBus Resource */ /************************************************************************/ +static void +cbb_activate_window(device_t brdev, int type) +{ + + PCI_ENABLE_IO(device_get_parent(brdev), brdev, type); +} + static int cbb_cardbus_io_open(device_t brdev, int win, uint32_t start, uint32_t end) { @@ -1055,6 +1062,7 @@ cbb_cardbus_io_open(device_t brdev, int pci_write_config(brdev, basereg, start, 4); pci_write_config(brdev, limitreg, end, 4); + cbb_activate_window(brdev, SYS_RES_IOPORT); return (0); } @@ -1075,6 +1083,7 @@ cbb_cardbus_mem_open(device_t brdev, int pci_write_config(brdev, basereg, start, 4); pci_write_config(brdev, limitreg, end, 4); + cbb_activate_window(brdev, SYS_RES_MEMORY); return (0); } @@ -1342,7 +1351,12 @@ cbb_pcic_activate_resource(device_t brde struct resource *res) { struct cbb_softc *sc = device_get_softc(brdev); - return (exca_activate_resource(&sc->exca[0], child, type, rid, res)); + int error; + + error = exca_activate_resource(&sc->exca[0], child, type, rid, res); + if (error == 0) + cbb_activate_window(brdev, type); + return (error); } static int From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 19:13:15 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5E27D7D6; Thu, 30 Jan 2014 19:13:15 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 48D1F1B73; Thu, 30 Jan 2014 19:13:15 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0UJDFD5090737; Thu, 30 Jan 2014 19:13:15 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0UJDFfp090736; Thu, 30 Jan 2014 19:13:15 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401301913.s0UJDFfp090736@svn.freebsd.org> From: John Baldwin Date: Thu, 30 Jan 2014 19:13:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261293 - stable/9/sys/dev/pccbb X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 19:13:15 -0000 Author: jhb Date: Thu Jan 30 19:13:14 2014 New Revision: 261293 URL: http://svnweb.freebsd.org/changeset/base/261293 Log: MFC 261216: Explicitly enable I/O and memory decoding in the bridge's command register when activating an I/O or memory window on the CardBus bridge. Modified: stable/9/sys/dev/pccbb/pccbb.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/dev/ (props changed) Modified: stable/9/sys/dev/pccbb/pccbb.c ============================================================================== --- stable/9/sys/dev/pccbb/pccbb.c Thu Jan 30 19:09:59 2014 (r261292) +++ stable/9/sys/dev/pccbb/pccbb.c Thu Jan 30 19:13:14 2014 (r261293) @@ -1031,6 +1031,13 @@ cbb_cardbus_power_disable_socket(device_ /* CardBus Resource */ /************************************************************************/ +static void +cbb_activate_window(device_t brdev, int type) +{ + + PCI_ENABLE_IO(device_get_parent(brdev), brdev, type); +} + static int cbb_cardbus_io_open(device_t brdev, int win, uint32_t start, uint32_t end) { @@ -1048,6 +1055,7 @@ cbb_cardbus_io_open(device_t brdev, int pci_write_config(brdev, basereg, start, 4); pci_write_config(brdev, limitreg, end, 4); + cbb_activate_window(brdev, SYS_RES_IOPORT); return (0); } @@ -1068,6 +1076,7 @@ cbb_cardbus_mem_open(device_t brdev, int pci_write_config(brdev, basereg, start, 4); pci_write_config(brdev, limitreg, end, 4); + cbb_activate_window(brdev, SYS_RES_MEMORY); return (0); } @@ -1335,7 +1344,12 @@ cbb_pcic_activate_resource(device_t brde struct resource *res) { struct cbb_softc *sc = device_get_softc(brdev); - return (exca_activate_resource(&sc->exca[0], child, type, rid, res)); + int error; + + error = exca_activate_resource(&sc->exca[0], child, type, rid, res); + if (error == 0) + cbb_activate_window(brdev, type); + return (error); } static int From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 20:39:56 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id DA5B5F7F; Thu, 30 Jan 2014 20:39:56 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C66391301; Thu, 30 Jan 2014 20:39:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0UKdu2t022550; Thu, 30 Jan 2014 20:39:56 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0UKdubM022549; Thu, 30 Jan 2014 20:39:56 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401302039.s0UKdubM022549@svn.freebsd.org> From: Brooks Davis Date: Thu, 30 Jan 2014 20:39:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261294 - head/sys/mips/mips X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 20:39:56 -0000 Author: brooks Date: Thu Jan 30 20:39:56 2014 New Revision: 261294 URL: http://svnweb.freebsd.org/changeset/base/261294 Log: Remove an unneeded space in the BERI merge. Modified: head/sys/mips/mips/machdep.c Modified: head/sys/mips/mips/machdep.c ============================================================================== --- head/sys/mips/mips/machdep.c Thu Jan 30 19:13:14 2014 (r261293) +++ head/sys/mips/mips/machdep.c Thu Jan 30 20:39:56 2014 (r261294) @@ -351,7 +351,7 @@ mips_vector_init(void) * XXXRW: Why don't we install the XTLB handler for all 64-bit * architectures? */ -#if defined(__mips_n64) || defined(CPU_RMI) || defined(CPU_NLM) || defined (CPU_BERI) +#if defined(__mips_n64) || defined(CPU_RMI) || defined(CPU_NLM) || defined(CPU_BERI) /* Fake, but sufficient, for the 32-bit with 64-bit hardware addresses */ bcopy(MipsTLBMiss, (void *)MIPS_XTLB_MISS_EXC_VEC, MipsTLBMissEnd - MipsTLBMiss); From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 20:54:57 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 422B9570; Thu, 30 Jan 2014 20:54:57 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2E53314A3; Thu, 30 Jan 2014 20:54:57 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0UKsvD8029523; Thu, 30 Jan 2014 20:54:57 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0UKsvwI029522; Thu, 30 Jan 2014 20:54:57 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401302054.s0UKsvwI029522@svn.freebsd.org> From: Brooks Davis Date: Thu, 30 Jan 2014 20:54:57 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261295 - head/share/man/man5 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 20:54:57 -0000 Author: brooks Date: Thu Jan 30 20:54:56 2014 New Revision: 261295 URL: http://svnweb.freebsd.org/changeset/base/261295 Log: Revert outdated info related to WITH_LIBCPLUSPLUS that was included in r261072. src.conf.5 now matches makeman's output. Modified: head/share/man/man5/src.conf.5 Modified: head/share/man/man5/src.conf.5 ============================================================================== --- head/share/man/man5/src.conf.5 Thu Jan 30 20:39:56 2014 (r261294) +++ head/share/man/man5/src.conf.5 Thu Jan 30 20:54:56 2014 (r261295) @@ -1,7 +1,7 @@ .\" DO NOT EDIT-- this file is automatically generated. .\" from FreeBSD: head/tools/build/options/makeman 255964 2013-10-01 07:22:04Z des .\" $FreeBSD$ -.Dd January 21, 2014 +.Dd January 30, 2014 .Dt SRC.CONF 5 .Os .Sh NAME @@ -618,9 +618,9 @@ and On amd64, set to not build 32-bit library set and a .Nm ld-elf32.so.1 runtime linker. -.It Va WITH_LIBCPLUSPLUS -.\" from FreeBSD: head/tools/build/options/WITH_LIBCPLUSPLUS 228082 2011-11-28 17:56:46Z dim -Set to build libcxxrt and libc++. +.It Va WITHOUT_LIBCPLUSPLUS +.\" from FreeBSD: head/tools/build/options/WITHOUT_LIBCPLUSPLUS 246262 2013-02-02 22:42:46Z dim +Set to avoid building libcxxrt and libc++. .It Va WITHOUT_LIBPTHREAD .\" from FreeBSD: head/tools/build/options/WITHOUT_LIBPTHREAD 188848 2009-02-20 11:09:55Z mtm Set to not build the From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 21:08:39 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 835D8B54; Thu, 30 Jan 2014 21:08:39 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6D03215AC; Thu, 30 Jan 2014 21:08:39 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0UL8dVD034390; Thu, 30 Jan 2014 21:08:39 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0UL8bZ7034376; Thu, 30 Jan 2014 21:08:37 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401302108.s0UL8bZ7034376@svn.freebsd.org> From: Brooks Davis Date: Thu, 30 Jan 2014 21:08:37 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261296 - in head: gnu/usr.bin/dialog lib/ncurses share/mk usr.bin/systat usr.bin/vi usr.sbin/bsdinstall/distextract usr.sbin/bsdinstall/distfetch usr.sbin/bsdinstall/partedit usr.sbin/... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 21:08:39 -0000 Author: brooks Date: Thu Jan 30 21:08:36 2014 New Revision: 261296 URL: http://svnweb.freebsd.org/changeset/base/261296 Log: Merge from CheriBSD: commit c1acf022c533c5ae27e0cd556977eafe3f5959eb Author: Brooks Davis Date: Fri Jan 17 21:46:44 2014 +0000 Add an option WITHOUT_NCURSESW to suppress building and linking to libncursesw. While wide character support it useful we'd like to only need one ncurses library on embedded systems. MFC after: 4 weeks Sponsored by: DARPA, AFRL Modified: head/gnu/usr.bin/dialog/Makefile head/lib/ncurses/Makefile head/share/mk/bsd.own.mk head/usr.bin/systat/Makefile head/usr.bin/systat/main.c head/usr.bin/vi/Makefile head/usr.sbin/bsdinstall/distextract/Makefile head/usr.sbin/bsdinstall/distfetch/Makefile head/usr.sbin/bsdinstall/partedit/Makefile head/usr.sbin/tzsetup/Makefile Modified: head/gnu/usr.bin/dialog/Makefile ============================================================================== --- head/gnu/usr.bin/dialog/Makefile Thu Jan 30 20:54:56 2014 (r261295) +++ head/gnu/usr.bin/dialog/Makefile Thu Jan 30 21:08:36 2014 (r261296) @@ -3,11 +3,21 @@ DIALOG= ${.CURDIR}/../../../contrib/dialog PROG= dialog -DPADD= ${LIBDIALOG} ${LIBNCURSESW} ${LIBM} -LDADD= -ldialog -lncursesw -lm +DPADD= ${LIBDIALOG} ${LIBM} +LDADD= -ldialog -lm CFLAGS+= -I${.CURDIR} -I${DIALOG} .PATH: ${DIALOG} WARNS?= 6 +.include + +.if ${MK_NCURSESW} == "no" +DPADD+= ${LIBNCURSES} +LDADD+= -lncurses +.else +DPADD+= ${LIBNCURSESW} +LDADD+= -lncursesw +.endif + .include Modified: head/lib/ncurses/Makefile ============================================================================== --- head/lib/ncurses/Makefile Thu Jan 30 20:54:56 2014 (r261295) +++ head/lib/ncurses/Makefile Thu Jan 30 21:08:36 2014 (r261296) @@ -1,6 +1,11 @@ # $FreeBSD$ -SUBDIR= ncurses form menu panel \ - ncursesw formw menuw panelw +.include + +SUBDIR= ncurses form menu panel + +.if ${MK_NCURSESW} != "no" +SUBDIR+= ncursesw formw menuw panelw +.endif .include Modified: head/share/mk/bsd.own.mk ============================================================================== --- head/share/mk/bsd.own.mk Thu Jan 30 20:54:56 2014 (r261295) +++ head/share/mk/bsd.own.mk Thu Jan 30 21:08:36 2014 (r261296) @@ -314,6 +314,7 @@ __DEFAULT_YES_OPTIONS = \ MAILWRAPPER \ MAKE \ MAN \ + NCURSESW \ NDIS \ NETCAT \ NETGRAPH \ Modified: head/usr.bin/systat/Makefile ============================================================================== --- head/usr.bin/systat/Makefile Thu Jan 30 20:54:56 2014 (r261295) +++ head/usr.bin/systat/Makefile Thu Jan 30 21:08:36 2014 (r261296) @@ -16,7 +16,16 @@ CFLAGS+= -DINET6 WARNS?= 0 -DPADD= ${LIBNCURSESW} ${LIBM} ${LIBDEVSTAT} ${LIBKVM} -LDADD= -lncursesw -lm -ldevstat -lkvm +DPADD= ${LIBM} ${LIBDEVSTAT} ${LIBKVM} +LDADD= -lm -ldevstat -lkvm + +.if ${MK_NCURSESW} == "no" +DPADD+= ${LIBNCURSES} +LDADD+= -lncurses +.else +CFLAGS+= -DUSE_WIDECHAR +DPADD+= ${LIBNCURSESW} +LDADD+= -lncursesw +.endif .include Modified: head/usr.bin/systat/main.c ============================================================================== --- head/usr.bin/systat/main.c Thu Jan 30 20:54:56 2014 (r261295) +++ head/usr.bin/systat/main.c Thu Jan 30 21:08:36 2014 (r261296) @@ -84,7 +84,11 @@ main(int argc, char **argv) size_t size; double t; +#ifdef USE_WIDECHAR (void) setlocale(LC_ALL, ""); +#else + (void) setlocale(LC_TIME, ""); +#endif argc--, argv++; while (argc > 0) { Modified: head/usr.bin/vi/Makefile ============================================================================== --- head/usr.bin/vi/Makefile Thu Jan 30 20:54:56 2014 (r261295) +++ head/usr.bin/vi/Makefile Thu Jan 30 21:08:36 2014 (r261296) @@ -36,7 +36,7 @@ CFLAGS+=-I${.CURDIR} -I${SRCDIR} -I${SRC DPADD= ${LIBUTIL} LDADD= -lutil -.if defined(RESCUE) || defined(RELEASE_CRUNCH) +.if defined(RESCUE) || defined(RELEASE_CRUNCH) || ${MK_NCURSESW} == "no" DPADD+= ${LIBNCURSES} LDADD+= -lncurses .else Modified: head/usr.sbin/bsdinstall/distextract/Makefile ============================================================================== --- head/usr.sbin/bsdinstall/distextract/Makefile Thu Jan 30 20:54:56 2014 (r261295) +++ head/usr.sbin/bsdinstall/distextract/Makefile Thu Jan 30 21:08:36 2014 (r261296) @@ -2,10 +2,20 @@ BINDIR= /usr/libexec/bsdinstall PROG= distextract -DPADD= ${LIBARCHIVE} ${LIBNCURSESW} ${LIBDIALOG} ${LIBM} -LDADD= -larchive -lncursesw -ldialog -lm +DPADD= ${LIBARCHIVE} ${LIBDIALOG} ${LIBM} +LDADD= -larchive -ldialog -lm WARNS?= 6 NO_MAN= true +.include + +.if ${MK_NCURSESW} == "no" +DPADD+= ${LIBNCURSES} +LDADD+= -lncurses +.else +DPADD+= ${LIBNCURSESW} +LDADD+= -lncursesw +.endif + .include Modified: head/usr.sbin/bsdinstall/distfetch/Makefile ============================================================================== --- head/usr.sbin/bsdinstall/distfetch/Makefile Thu Jan 30 20:54:56 2014 (r261295) +++ head/usr.sbin/bsdinstall/distfetch/Makefile Thu Jan 30 21:08:36 2014 (r261296) @@ -2,10 +2,20 @@ BINDIR= /usr/libexec/bsdinstall PROG= distfetch -DPADD= ${LIBFETCH} ${LIBNCURSESW} ${LIBDIALOG} ${LIBM} -LDADD= -lfetch -lncursesw -ldialog -lm +DPADD= ${LIBFETCH} ${LIBDIALOG} ${LIBM} +LDADD= -lfetch -ldialog -lm WARNS?= 6 NO_MAN= true +.include + +.if ${MK_NCURSESW} == "no" +DPADD+= ${LIBNCURSES} +LDADD+= -lncurses +.else +DPADD+= ${LIBNCURSESW} +LDADD+= -lncursesw +.endif + .include Modified: head/usr.sbin/bsdinstall/partedit/Makefile ============================================================================== --- head/usr.sbin/bsdinstall/partedit/Makefile Thu Jan 30 20:54:56 2014 (r261295) +++ head/usr.sbin/bsdinstall/partedit/Makefile Thu Jan 30 21:08:36 2014 (r261296) @@ -5,8 +5,8 @@ PROG= partedit LINKS= ${BINDIR}/partedit ${BINDIR}/autopart \ ${BINDIR}/partedit ${BINDIR}/scriptedpart SYMLINKS= ${BINDIR}/partedit /usr/sbin/sade -DPADD= ${LIBGEOM} ${LIBNCURSESW} ${LIBUTIL} ${LIBDIALOG} ${LIBM} -LDADD= -lgeom -lncursesw -lutil -ldialog -lm +DPADD= ${LIBGEOM} ${LIBUTIL} ${LIBDIALOG} ${LIBM} +LDADD= -lgeom -lutil -ldialog -lm PARTEDIT_ARCH= ${MACHINE} .if ${MACHINE} == "i386" || ${MACHINE} == "amd64" @@ -22,4 +22,14 @@ SRCS= diskeditor.c partedit.c gpart_ops. WARNS?= 3 MAN= sade.8 +.include + +.if ${MK_NCURSESW} == "no" +DPADD+= ${LIBNCURSES} +LDADD+= -lncurses +.else +DPADD+= ${LIBNCURSESW} +LDADD+= -lncursesw +.endif + .include Modified: head/usr.sbin/tzsetup/Makefile ============================================================================== --- head/usr.sbin/tzsetup/Makefile Thu Jan 30 20:54:56 2014 (r261295) +++ head/usr.sbin/tzsetup/Makefile Thu Jan 30 21:08:36 2014 (r261296) @@ -7,7 +7,17 @@ CFLAGS+= -I${.CURDIR}/../../contrib/dial WARNS?= 3 -DPADD= ${LIBDIALOG} ${LIBNCURSESW} ${LIBM} -LDADD= -ldialog -lncursesw -lm +DPADD= ${LIBDIALOG} ${LIBM} +LDADD= -ldialog -lm + +.include + +.if ${MK_NCURSESW} == "no" +DPADD+= ${LIBNCURSES} +LDADD+= -lncurses +.else +DPADD+= ${LIBNCURSESW} +LDADD+= -lncursesw +.endif .include From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 21:25:03 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3C636C4; Thu, 30 Jan 2014 21:25:03 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1D644179F; Thu, 30 Jan 2014 21:25:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0ULP24L041807; Thu, 30 Jan 2014 21:25:02 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0ULP2fR041802; Thu, 30 Jan 2014 21:25:02 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401302125.s0ULP2fR041802@svn.freebsd.org> From: Brooks Davis Date: Thu, 30 Jan 2014 21:25:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261297 - in head: share/man/man5 share/mk tools/build/options usr.sbin/mtree usr.sbin/nmtree X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 21:25:03 -0000 Author: brooks Date: Thu Jan 30 21:25:01 2014 New Revision: 261297 URL: http://svnweb.freebsd.org/changeset/base/261297 Log: Merge from CheriBSD: commit 6b569451b92c48ccf1768da32e7e89189e1aa253 Author: Brooks Davis Date: Mon Jan 27 22:50:46 2014 +0000 Always install nmtree as mtree. For compability, link mtree to nmtree. X-MFC after: never Sponsored by: DARPA, AFRL Deleted: head/tools/build/options/WITHOUT_NMTREE Modified: head/share/man/man5/src.conf.5 head/share/mk/bsd.own.mk head/usr.sbin/mtree/Makefile head/usr.sbin/nmtree/Makefile Modified: head/share/man/man5/src.conf.5 ============================================================================== --- head/share/man/man5/src.conf.5 Thu Jan 30 21:08:36 2014 (r261296) +++ head/share/man/man5/src.conf.5 Thu Jan 30 21:25:01 2014 (r261297) @@ -749,16 +749,6 @@ Set to not build NLS catalogs. .\" from FreeBSD: head/tools/build/options/WITHOUT_NLS_CATALOGS 156932 2006-03-21 07:50:50Z ru Set to not build NLS catalog support for .Xr csh 1 . -.It Va WITHOUT_NMTREE -.\" from FreeBSD: head/tools/build/options/WITHOUT_NMTREE 257138 2013-10-25 22:45:18Z brooks -Set to install -.Xr fmtree 8 -as -.Xr mtree 8 . -By default -.Xr nmtree 8 -is installed as -.Xr mtree 8 . .It Va WITHOUT_NS_CACHING .\" from FreeBSD: head/tools/build/options/WITHOUT_NS_CACHING 172803 2007-10-19 14:01:25Z ru Set to disable name caching in the Modified: head/share/mk/bsd.own.mk ============================================================================== --- head/share/mk/bsd.own.mk Thu Jan 30 21:08:36 2014 (r261296) +++ head/share/mk/bsd.own.mk Thu Jan 30 21:25:01 2014 (r261297) @@ -321,7 +321,6 @@ __DEFAULT_YES_OPTIONS = \ NIS \ NLS \ NLS_CATALOGS \ - NMTREE \ NS_CACHING \ NTP \ OPENSSH \ Modified: head/usr.sbin/mtree/Makefile ============================================================================== --- head/usr.sbin/mtree/Makefile Thu Jan 30 21:08:36 2014 (r261296) +++ head/usr.sbin/mtree/Makefile Thu Jan 30 21:25:01 2014 (r261297) @@ -14,11 +14,6 @@ CFLAGS+= -DMD5 -DSHA1 -DRMD160 -DSHA256 DPADD= ${LIBMD} LDADD= -lmd -.if ${MK_NMTREE} == "no" -LINKS= ${BINDIR}/fmtree ${BINDIR}/mtree -MLINKS= fmtree.8 mtree.8 -.endif - CLEANFILES+= fmtree.8 fmtree.8: mtree.8 Modified: head/usr.sbin/nmtree/Makefile ============================================================================== --- head/usr.sbin/nmtree/Makefile Thu Jan 30 21:08:36 2014 (r261296) +++ head/usr.sbin/nmtree/Makefile Thu Jan 30 21:25:01 2014 (r261297) @@ -4,8 +4,8 @@ .PATH: ${.CURDIR}/../../contrib/mtree -PROG= nmtree -MAN= nmtree.8 +PROG= mtree +MAN= mtree.8 SRCS= compare.c crc.c create.c excludes.c getid.c misc.c mtree.c \ only.c spec.c specspec.c verify.c LDADD+= -lmd -lutil @@ -20,14 +20,7 @@ LIBNETBSD= ${LIBNETBSDDIR}/libnetbsd.a DPADD+= ${LIBNETBSD} LDADD+= ${LIBNETBSD} -.if ${MK_NMTREE} != "no" -LINKS= ${BINDIR}/nmtree ${BINDIR}/mtree -MLINKS= nmtree.8 mtree.8 -.endif - -CLEANFILES+= nmtree.8 - -nmtree.8: mtree.8 - cp ${.ALLSRC} ${.TARGET} +LINKS= ${BINDIR}/mtree ${BINDIR}/nmtree +MLINKS= mtree.8 nmtree.8 .include From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 21:32:26 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B83772E9; Thu, 30 Jan 2014 21:32:26 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8A0891853; Thu, 30 Jan 2014 21:32:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0ULWQph045258; Thu, 30 Jan 2014 21:32:26 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0ULWPgu045255; Thu, 30 Jan 2014 21:32:25 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401302132.s0ULWPgu045255@svn.freebsd.org> From: Brooks Davis Date: Thu, 30 Jan 2014 21:32:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261298 - in head/usr.sbin: mtree nmtree X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 21:32:26 -0000 Author: brooks Date: Thu Jan 30 21:32:25 2014 New Revision: 261298 URL: http://svnweb.freebsd.org/changeset/base/261298 Log: Merge from CheriBSD: commit 70b8f0c127db6b80411789d237b403cc64a93573 Author: Brooks Davis Date: Mon Jan 27 22:53:57 2014 +0000 Move mtree.5 to usr.sbin/nmtree. Remove note that mtree 2.0 format files aren't supported. MFC after: 4 weeks Sponsored by: DARPA, AFRL Added: head/usr.sbin/nmtree/mtree.5 - copied, changed from r261296, head/usr.sbin/mtree/mtree.5 Deleted: head/usr.sbin/mtree/mtree.5 Modified: head/usr.sbin/mtree/Makefile head/usr.sbin/nmtree/Makefile Modified: head/usr.sbin/mtree/Makefile ============================================================================== --- head/usr.sbin/mtree/Makefile Thu Jan 30 21:25:01 2014 (r261297) +++ head/usr.sbin/mtree/Makefile Thu Jan 30 21:32:25 2014 (r261298) @@ -6,7 +6,7 @@ .PATH: ${.CURDIR}/../../usr.bin/cksum PROG= fmtree -MAN= fmtree.8 mtree.5 +MAN= fmtree.8 SRCS= compare.c crc.c create.c excludes.c misc.c mtree.c spec.c verify.c SRCS+= specspec.c Modified: head/usr.sbin/nmtree/Makefile ============================================================================== --- head/usr.sbin/nmtree/Makefile Thu Jan 30 21:25:01 2014 (r261297) +++ head/usr.sbin/nmtree/Makefile Thu Jan 30 21:32:25 2014 (r261298) @@ -5,7 +5,7 @@ .PATH: ${.CURDIR}/../../contrib/mtree PROG= mtree -MAN= mtree.8 +MAN= mtree.5 mtree.8 SRCS= compare.c crc.c create.c excludes.c getid.c misc.c mtree.c \ only.c spec.c specspec.c verify.c LDADD+= -lmd -lutil Copied and modified: head/usr.sbin/nmtree/mtree.5 (from r261296, head/usr.sbin/mtree/mtree.5) ============================================================================== --- head/usr.sbin/mtree/mtree.5 Thu Jan 30 21:08:36 2014 (r261296, copy source) +++ head/usr.sbin/nmtree/mtree.5 Thu Jan 30 21:32:25 2014 (r261298) @@ -259,13 +259,6 @@ The entry format was added by .Nx . .Sh BUGS -The -.Fx -implementation of mtree does not currently support -the -.Nm -2.0 -format. The requirement for a .Dq #mtree signature line is new and not yet widely implemented. From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 21:37:44 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9CAC347A; Thu, 30 Jan 2014 21:37:44 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6E1C21883; Thu, 30 Jan 2014 21:37:44 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0ULbiIk045929; Thu, 30 Jan 2014 21:37:44 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0ULbhRN045925; Thu, 30 Jan 2014 21:37:43 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401302137.s0ULbhRN045925@svn.freebsd.org> From: Brooks Davis Date: Thu, 30 Jan 2014 21:37:43 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261299 - in head: share/mk tools/build/mk tools/build/options usr.sbin X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 21:37:44 -0000 Author: brooks Date: Thu Jan 30 21:37:43 2014 New Revision: 261299 URL: http://svnweb.freebsd.org/changeset/base/261299 Log: Merge from CheriBSD: commit 2d581e8caf79d7a0f5a24590eccd06da90cccb74 Author: Brooks Davis Date: Mon Jan 27 22:57:51 2014 +0000 Add WITHOUT_FMTREE to disable building fmtree. MFC after: 4 weeks Sponsored by: DARPA, AFRL Added: head/tools/build/options/WITHOUT_FMTREE (contents, props changed) Modified: head/share/mk/bsd.own.mk head/tools/build/mk/OptionalObsoleteFiles.inc head/usr.sbin/Makefile Modified: head/share/mk/bsd.own.mk ============================================================================== --- head/share/mk/bsd.own.mk Thu Jan 30 21:32:25 2014 (r261298) +++ head/share/mk/bsd.own.mk Thu Jan 30 21:37:43 2014 (r261299) @@ -275,6 +275,7 @@ __DEFAULT_YES_OPTIONS = \ ED_CRYPTO \ EXAMPLES \ FLOPPY \ + FMTREE \ FORMAT_EXTENSIONS \ FORTH \ FP_LIBC \ Modified: head/tools/build/mk/OptionalObsoleteFiles.inc ============================================================================== --- head/tools/build/mk/OptionalObsoleteFiles.inc Thu Jan 30 21:32:25 2014 (r261298) +++ head/tools/build/mk/OptionalObsoleteFiles.inc Thu Jan 30 21:37:43 2014 (r261299) @@ -600,6 +600,11 @@ OLD_FILES+=usr/bin/g++ OLD_FILES+=usr/libexec/cc1plus .endif +.if ${MK_FMTREE} == no +OLD_FILES+=usr/sbin/fmtree +OLD_FILES+=usr/share/man/man8/fmtree.8.gz +.endif + .if ${MK_GNUCXX} == no OLD_FILES+=usr/bin/g++ OLD_FILES+=usr/include/c++/4.2/algorithm Added: head/tools/build/options/WITHOUT_FMTREE ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/tools/build/options/WITHOUT_FMTREE Thu Jan 30 21:37:43 2014 (r261299) @@ -0,0 +1,3 @@ +.\" $FreeBSD$ +Set to not build and install +.Pa /usr/sbin/fmtree . Modified: head/usr.sbin/Makefile ============================================================================== --- head/usr.sbin/Makefile Thu Jan 30 21:32:25 2014 (r261298) +++ head/usr.sbin/Makefile Thu Jan 30 21:37:43 2014 (r261299) @@ -48,7 +48,7 @@ SUBDIR= adduser \ mountd \ mptutil \ mtest \ - mtree \ + ${_mtree} \ newsyslog \ nfscbd \ nfsd \ @@ -142,6 +142,10 @@ SUBDIR+= fdread SUBDIR+= fdwrite .endif +.if ${MK_FMTREE} != "no" +SUBDIR+= mtree +.endif + .if ${MK_FREEBSD_UPDATE} != "no" SUBDIR+= freebsd-update .endif From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 21:41:25 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BA246602; Thu, 30 Jan 2014 21:41:25 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A682D18F5; Thu, 30 Jan 2014 21:41:25 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0ULfPkC048930; Thu, 30 Jan 2014 21:41:25 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0ULfPub048929; Thu, 30 Jan 2014 21:41:25 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401302141.s0ULfPub048929@svn.freebsd.org> From: Brooks Davis Date: Thu, 30 Jan 2014 21:41:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261300 - head/tools/build/options X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 21:41:25 -0000 Author: brooks Date: Thu Jan 30 21:41:25 2014 New Revision: 261300 URL: http://svnweb.freebsd.org/changeset/base/261300 Log: Add file missed in r261296. MFC after: 4 weeks Sponsored by: DARPA, AFRL Added: head/tools/build/options/WITHOUT_NCURSESW (contents, props changed) Added: head/tools/build/options/WITHOUT_NCURSESW ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/tools/build/options/WITHOUT_NCURSESW Thu Jan 30 21:41:25 2014 (r261300) @@ -0,0 +1,4 @@ +.\" $FreeBSD$ +Set to not build or depend on the +.Nm libncursesw +library. From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 21:43:38 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B671D74E; Thu, 30 Jan 2014 21:43:38 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A274B1903; Thu, 30 Jan 2014 21:43:38 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0ULhcPD049296; Thu, 30 Jan 2014 21:43:38 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0ULhcx0049295; Thu, 30 Jan 2014 21:43:38 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401302143.s0ULhcx0049295@svn.freebsd.org> From: Brooks Davis Date: Thu, 30 Jan 2014 21:43:38 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261301 - head/share/man/man5 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 21:43:38 -0000 Author: brooks Date: Thu Jan 30 21:43:38 2014 New Revision: 261301 URL: http://svnweb.freebsd.org/changeset/base/261301 Log: Regenerate for WITHOUT_FMTREE and WITHOUT_NCURSESW. MFC after: 4 weeks Sponsored by: DARPA, AFRL Modified: head/share/man/man5/src.conf.5 Modified: head/share/man/man5/src.conf.5 ============================================================================== --- head/share/man/man5/src.conf.5 Thu Jan 30 21:41:25 2014 (r261300) +++ head/share/man/man5/src.conf.5 Thu Jan 30 21:43:38 2014 (r261301) @@ -360,6 +360,10 @@ arm/arm, arm/armeb, arm/armv6, mips/mips .\" from FreeBSD: head/tools/build/options/WITHOUT_FLOPPY 221540 2011-05-06 19:13:03Z ru Set to not build or install programs for operating floppy disk driver. +.It Va WITHOUT_FMTREE +.\" from FreeBSD: head/tools/build/options/WITHOUT_FMTREE 261299 2014-01-30 21:37:43Z brooks +Set to not build and install +.Pa /usr/sbin/fmtree . .It Va WITHOUT_FORMAT_EXTENSIONS .\" from FreeBSD: head/tools/build/options/WITHOUT_FORMAT_EXTENSIONS 250658 2013-05-15 13:04:10Z brooks Set to not enable @@ -706,6 +710,11 @@ and related support files. .It Va WITH_NAND .\" from FreeBSD: head/tools/build/options/WITH_NAND 235537 2012-05-17 10:11:18Z gber Set to build the NAND Flash components. +.It Va WITHOUT_NCURSESW +.\" from FreeBSD: head/tools/build/options/WITHOUT_NCURSESW 261300 2014-01-30 21:41:25Z brooks +Set to not build or depend on the +.Nm libncursesw +library. .It Va WITHOUT_NDIS .\" from FreeBSD: head/tools/build/options/WITHOUT_NDIS 183242 2008-09-21 22:02:26Z sam Set to not build programs and libraries From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 21:47:13 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 24328A81; Thu, 30 Jan 2014 21:47:13 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 112AE192F; Thu, 30 Jan 2014 21:47:13 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0ULlC1I049952; Thu, 30 Jan 2014 21:47:12 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0ULlCYq049951; Thu, 30 Jan 2014 21:47:12 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401302147.s0ULlCYq049951@svn.freebsd.org> From: Brooks Davis Date: Thu, 30 Jan 2014 21:47:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261302 - head/tools/tools/makeroot X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 21:47:13 -0000 Author: brooks Date: Thu Jan 30 21:47:12 2014 New Revision: 261302 URL: http://svnweb.freebsd.org/changeset/base/261302 Log: The -B flag is intended to take an argument. Fix a couple typos in comments. MFC after: 4 weeks Sponsored by: DARPA, ARFL Modified: head/tools/tools/makeroot/makeroot.sh Modified: head/tools/tools/makeroot/makeroot.sh ============================================================================== --- head/tools/tools/makeroot/makeroot.sh Thu Jan 30 21:43:38 2014 (r261301) +++ head/tools/tools/makeroot/makeroot.sh Thu Jan 30 21:47:12 2014 (r261302) @@ -65,7 +65,7 @@ atexit() } DEBUG= -# Allow duplice manifest entries when not file list is given because the +# Allow duplicate manifest entries when not file list is given because the # FreeBSD METALOG still includes it. DUPFLAG=-D EXTRAS= @@ -75,7 +75,7 @@ KEYDIR= KEYUSERS= PASSWD= -while getopts "Bde:f:g:K:k:p:s:" opt; do +while getopts "B:de:f:g:K:k:p:s:" opt; do case "$opt" in B) BFLAG="-B ${OPTARG}" ;; d) DEBUG=1 ;; @@ -174,7 +174,7 @@ else / type=/ { if ($1 != file) {print} }' >> ${manifest} fi -# For each extras file, add contents kyes relative to the directory the +# For each extras file, add contents keys relative to the directory the # manifest lives in for each file line that does not have one. Adjust # contents keys relative to ./ to be relative to the same directory. for eman in ${EXTRAS}; do From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 22:07:23 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8C9D5300; Thu, 30 Jan 2014 22:07:23 +0000 (UTC) Received: from nibbler.fubar.geek.nz (nibbler.fubar.geek.nz [199.48.134.198]) by mx1.freebsd.org (Postfix) with ESMTP id 6E41C1B01; Thu, 30 Jan 2014 22:07:23 +0000 (UTC) Received: from bender.Home (97e07ba1.skybroadband.com [151.224.123.161]) by nibbler.fubar.geek.nz (Postfix) with ESMTPSA id 9EDAC5C682; Thu, 30 Jan 2014 22:07:16 +0000 (UTC) Date: Thu, 30 Jan 2014 22:07:09 +0000 From: Andrew Turner To: Warner Losh Subject: Re: svn commit: r261252 - head/sys/arm/arm Message-ID: <20140130220709.695f8275@bender.Home> In-Reply-To: <201401282207.s0SM7Hde097519@svn.freebsd.org> References: <201401282207.s0SM7Hde097519@svn.freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 22:07:23 -0000 On Tue, 28 Jan 2014 22:07:16 +0000 (UTC) Warner Losh wrote: > Author: imp > Date: Tue Jan 28 22:07:16 2014 > New Revision: 261252 > URL: http://svnweb.freebsd.org/changeset/base/261252 > > Log: > Fix clang warning. This broke Tinderbox as sys/bus.h includes device_if.h and bus_if.h but these files haven't been generated when we build genassym.o. A simple fix is to add a rule to sys/conf/Makefile.arm to have genassym.o depend on the two above headers, e.g. genassym.o: device_if.h bus_if.h Andrew From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 22:26:51 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C63767D5; Thu, 30 Jan 2014 22:26:51 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 995AD1D50; Thu, 30 Jan 2014 22:26:51 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0UMQpOg065858; Thu, 30 Jan 2014 22:26:51 GMT (envelope-from brooks@svn.freebsd.org) Received: (from brooks@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0UMQpDr065857; Thu, 30 Jan 2014 22:26:51 GMT (envelope-from brooks@svn.freebsd.org) Message-Id: <201401302226.s0UMQpDr065857@svn.freebsd.org> From: Brooks Davis Date: Thu, 30 Jan 2014 22:26:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261303 - head X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 22:26:51 -0000 Author: brooks Date: Thu Jan 30 22:26:51 2014 New Revision: 261303 URL: http://svnweb.freebsd.org/changeset/base/261303 Log: Merge from CheriBSD: commit 1b41f6de7ca09e04fdc6f66bc478ea6c981a41b9 Author: Brooks Davis Date: Mon Jan 27 22:59:02 2014 +0000 Now that mtree is always nmtree use it as mtree Tested on: ref9-amd64 X-MFC after: never Sponsored by: DARPA, AFRL Modified: head/Makefile.inc1 Modified: head/Makefile.inc1 ============================================================================== --- head/Makefile.inc1 Thu Jan 30 21:47:12 2014 (r261302) +++ head/Makefile.inc1 Thu Jan 30 22:26:51 2014 (r261303) @@ -448,7 +448,7 @@ MTREEFLAGS+= -W .endif .if defined(DB_FROM_SRC) || defined(NO_ROOT) IMAKE_INSTALL= INSTALL="install ${INSTALLFLAGS}" -IMAKE_MTREE= MTREE_CMD="nmtree ${MTREEFLAGS}" +IMAKE_MTREE= MTREE_CMD="mtree ${MTREEFLAGS}" .endif # kernel stage @@ -765,13 +765,9 @@ _install-info= install-info _zoneinfo= zic tzsetup .endif -.if exists(/usr/sbin/nmtree) -_nmtree_itools= nmtree -.endif - ITOOLS= [ awk cap_mkdb cat chflags chmod chown \ date echo egrep find grep id install ${_install-info} \ - ln lockf make mkdir mtree ${_nmtree_itools} mv pwd_mkdb \ + ln lockf make mkdir mtree mv pwd_mkdb \ rm sed services_mkdb sh sysctl test true uname wc ${_zoneinfo} # @@ -834,11 +830,11 @@ distributeworld installworld: _installch -p ${DESTDIR}/${DISTDIR}/${dist}/usr/lib >/dev/null .endif .if defined(NO_ROOT) - ${IMAKEENV} nmtree -C -f ${.CURDIR}/etc/mtree/BSD.root.dist | \ + ${IMAKEENV} mtree -C -f ${.CURDIR}/etc/mtree/BSD.root.dist | \ sed -e 's#^\./#./${dist}/#' >> ${METALOG} - ${IMAKEENV} nmtree -C -f ${.CURDIR}/etc/mtree/BSD.usr.dist | \ + ${IMAKEENV} mtree -C -f ${.CURDIR}/etc/mtree/BSD.usr.dist | \ sed -e 's#^\./#./${dist}/usr/#' >> ${METALOG} - ${IMAKEENV} nmtree -C -f ${.CURDIR}/etc/mtree/BSD.include.dist | \ + ${IMAKEENV} mtree -C -f ${.CURDIR}/etc/mtree/BSD.include.dist | \ sed -e 's#^\./#./${dist}/usr/include/#' >> ${METALOG} .endif .endfor From owner-svn-src-all@FreeBSD.ORG Thu Jan 30 23:04:17 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C16CBEED for ; Thu, 30 Jan 2014 23:04:17 +0000 (UTC) Received: from mail-ie0-f182.google.com (mail-ie0-f182.google.com [209.85.223.182]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8A40C1FA4 for ; Thu, 30 Jan 2014 23:04:17 +0000 (UTC) Received: by mail-ie0-f182.google.com with SMTP id lx4so3906491iec.41 for ; Thu, 30 Jan 2014 15:04:10 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:sender:subject:mime-version:content-type:from :in-reply-to:date:cc:content-transfer-encoding:message-id:references :to; bh=eC8UA/Hk5VYzq88o46b46n0bbiVP8KjNWBNOaqR5Ogc=; b=OODXsQuRqALtoi+XjCxgwUuDU7thGYKobYd/T/w7TNI+MniqxA0eW3gufOMb7dD1Oa 1HOhF/QilFdJ4Ue0TW1BOoRCbIkIvY4MkaUBb1sdHSlEL8ZF38U1AqhY4p2K/WqLLDgy nKzSjWDZwUwArWzChv4UAQjK/goVjf4o7zeCUW8rPwfirsvGBhUu6/pQavgj20aOFwE0 CaRgGIVCewxCDKtyg+R1XToub92E6Ua0lO0bV2fHNCEMIA7PNoJ5Og//TgHs7ByYio4W oQkvmbju8UiHESzGzf8bLZMcfrpdr+qSiJoeiKSka+uoFFY8tCZVMOrRELoujIMS8J09 lRsw== X-Gm-Message-State: ALoCoQnTye56b4gDHd1bAHyqkNmzNmeSQXdipOx4VbB9bAHuOKIldr7vHu4+8iIeZlE+1nUuAXTN X-Received: by 10.50.225.39 with SMTP id rh7mr16659325igc.10.1391123050748; Thu, 30 Jan 2014 15:04:10 -0800 (PST) Received: from fusionlt2834a.int.fusionio.com ([209.117.142.2]) by mx.google.com with ESMTPSA id u1sm84087758ige.1.2014.01.30.15.04.09 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Thu, 30 Jan 2014 15:04:09 -0800 (PST) Sender: Warner Losh Subject: Re: svn commit: r261252 - head/sys/arm/arm Mime-Version: 1.0 (Apple Message framework v1085) Content-Type: text/plain; charset=us-ascii From: Warner Losh In-Reply-To: <20140130220709.695f8275@bender.Home> Date: Thu, 30 Jan 2014 16:04:07 -0700 Content-Transfer-Encoding: quoted-printable Message-Id: References: <201401282207.s0SM7Hde097519@svn.freebsd.org> <20140130220709.695f8275@bender.Home> To: Andrew Turner X-Mailer: Apple Mail (2.1085) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Warner Losh X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 30 Jan 2014 23:04:17 -0000 On Jan 30, 2014, at 3:07 PM, Andrew Turner wrote: > On Tue, 28 Jan 2014 22:07:16 +0000 (UTC) > Warner Losh wrote: >=20 >> Author: imp >> Date: Tue Jan 28 22:07:16 2014 >> New Revision: 261252 >> URL: http://svnweb.freebsd.org/changeset/base/261252 >>=20 >> Log: >> Fix clang warning. >=20 > This broke Tinderbox as sys/bus.h includes device_if.h and bus_if.h = but > these files haven't been generated when we build genassym.o. >=20 > A simple fix is to add a rule to sys/conf/Makefile.arm to have > genassym.o depend on the two above headers, e.g. >=20 > genassym.o: device_if.h bus_if.h Thanks. My tinderbox mail seems to have been eaten by a gru... I'll give = that a shot.. Warner From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 01:18:34 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A71A517B; Fri, 31 Jan 2014 01:18:34 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9324619D8; Fri, 31 Jan 2014 01:18:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V1IYtZ032679; Fri, 31 Jan 2014 01:18:34 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V1IYuj032678; Fri, 31 Jan 2014 01:18:34 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401310118.s0V1IYuj032678@svn.freebsd.org> From: Warner Losh Date: Fri, 31 Jan 2014 01:18:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261304 - head/sys/arm/at91 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 01:18:34 -0000 Author: imp Date: Fri Jan 31 01:18:34 2014 New Revision: 261304 URL: http://svnweb.freebsd.org/changeset/base/261304 Log: When mapping an address, the bsh needs the same offset we do for other things. Modified: head/sys/arm/at91/at91.c Modified: head/sys/arm/at91/at91.c ============================================================================== --- head/sys/arm/at91/at91.c Thu Jan 30 22:26:51 2014 (r261303) +++ head/sys/arm/at91/at91.c Fri Jan 31 01:18:34 2014 (r261304) @@ -74,7 +74,7 @@ at91_bs_map(void *t, bus_addr_t bpa, bus } endpa = round_page(bpa + size); - *bshp = (vm_offset_t)pmap_mapdev(pa, endpa - pa); + *bshp = (vm_offset_t)pmap_mapdev(pa, endpa - pa) + (bpa - pa); return (0); } From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 01:34:56 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 010363C5; Fri, 31 Jan 2014 01:34:55 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E17A11AD7; Fri, 31 Jan 2014 01:34:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V1YtA8039691; Fri, 31 Jan 2014 01:34:55 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V1YttK039690; Fri, 31 Jan 2014 01:34:55 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401310134.s0V1YttK039690@svn.freebsd.org> From: Warner Losh Date: Fri, 31 Jan 2014 01:34:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261305 - head/sys/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 01:34:56 -0000 Author: imp Date: Fri Jan 31 01:34:55 2014 New Revision: 261305 URL: http://svnweb.freebsd.org/changeset/base/261305 Log: Hack: Add explicit depends on bus_if.h and device_if.h to avoid a chicken and egg problem in some compilation environments. Modified: head/sys/conf/Makefile.arm Modified: head/sys/conf/Makefile.arm ============================================================================== --- head/sys/conf/Makefile.arm Fri Jan 31 01:18:34 2014 (r261304) +++ head/sys/conf/Makefile.arm Fri Jan 31 01:34:55 2014 (r261305) @@ -55,6 +55,9 @@ CFLAGS += -mllvm -arm-enable-ehabi .endif .endif +# hack because genassym.c includes sys/bus.h which includes these. +genassym.o: bus_if.h device_if.h + SYSTEM_LD_ = ${LD} -Bdynamic -T ldscript.$M.noheader ${LDFLAGS} \ -warn-common -export-dynamic -dynamic-linker /red/herring -o \ ${FULLKERNEL}.noheader -X ${SYSTEM_OBJS} vers.o From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 03:30:10 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9B8AF1E3; Fri, 31 Jan 2014 03:30:10 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 870F11366; Fri, 31 Jan 2014 03:30:10 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V3UAPk084378; Fri, 31 Jan 2014 03:30:10 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V3U9nb084375; Fri, 31 Jan 2014 03:30:09 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201401310330.s0V3U9nb084375@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Fri, 31 Jan 2014 03:30:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261306 - in stable/10/contrib/gcc: . cp doc X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 03:30:10 -0000 Author: pfg Date: Fri Jan 31 03:30:09 2014 New Revision: 261306 URL: http://svnweb.freebsd.org/changeset/base/261306 Log: MFC r261178: gcc: Add support for -Wmissing-prototypes in C++ Support for warnings about missing prototypes in C++ was added by Apple GCC (Radar 6261539). Most of the code crept into r260311 so it felt natural to make use of it. Obtained from: Apple GCC - 5646 Modified: stable/10/contrib/gcc/c.opt stable/10/contrib/gcc/cp/decl.c stable/10/contrib/gcc/doc/invoke.texi Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/gcc/c.opt ============================================================================== --- stable/10/contrib/gcc/c.opt Fri Jan 31 01:34:55 2014 (r261305) +++ stable/10/contrib/gcc/c.opt Fri Jan 31 03:30:09 2014 (r261306) @@ -280,9 +280,11 @@ Wmissing-include-dirs C ObjC C++ ObjC++ Warn about user-specified include directories that do not exist +; APPLE LOCAL begin warn missing prototype 6261539 Wmissing-prototypes -C ObjC Var(warn_missing_prototypes) +C ObjC C++ ObjC++ Var(warn_missing_prototypes) Warn about global functions without prototypes +; APPLE LOCAL end warn missing prototype 6261539 ; APPLE LOCAL begin -Wmost Wmost Modified: stable/10/contrib/gcc/cp/decl.c ============================================================================== --- stable/10/contrib/gcc/cp/decl.c Fri Jan 31 01:34:55 2014 (r261305) +++ stable/10/contrib/gcc/cp/decl.c Fri Jan 31 03:30:09 2014 (r261306) @@ -11486,6 +11486,10 @@ start_function (cp_decl_specifier_seq *d gcc_assert (same_type_p (TREE_TYPE (TREE_TYPE (decl1)), integer_type_node)); + /* APPLE LOCAL begin warn missing prototype 6261539 */ + check_missing_prototype (decl1); + /* APPLE LOCAL end warn missing prototype 6261539 */ + start_preparsed_function (decl1, attrs, /*flags=*/SF_DEFAULT); return 1; Modified: stable/10/contrib/gcc/doc/invoke.texi ============================================================================== --- stable/10/contrib/gcc/doc/invoke.texi Fri Jan 31 01:34:55 2014 (r261305) +++ stable/10/contrib/gcc/doc/invoke.texi Fri Jan 31 03:30:09 2014 (r261306) @@ -225,6 +225,8 @@ in the following sections. -Wmain -Wmissing-braces -Wmissing-field-initializers @gol -Wmissing-format-attribute -Wmissing-include-dirs @gol -Wmissing-noreturn @gol +@c APPLE LOCAL warn missing prototype 6261539 +-Wmissing-prototypes @gol @c APPLE LOCAL -Wmost -Wmost (APPLE ONLY) @gol -Wno-multichar -Wnonnull -Wno-overflow @gol @@ -245,7 +247,8 @@ in the following sections. @item C-only Warning Options @gccoptlist{-Wbad-function-cast -Wmissing-declarations @gol --Wmissing-prototypes -Wnested-externs -Wold-style-definition @gol +@c APPLE LOCAL warn missing prototype 6261539 +-Wnested-externs -Wold-style-definition @gol -Wstrict-prototypes -Wtraditional @gol -Wdeclaration-after-statement -Wpointer-sign} @@ -3052,7 +3055,8 @@ types.) Warn if an old-style function definition is used. A warning is given even if there is a previous prototype. -@item -Wmissing-prototypes @r{(C only)} +@c APPLE LOCAL warn missing prototype 6261539 +@item -Wmissing-prototypes @opindex Wmissing-prototypes Warn if a global function is defined without a previous prototype declaration. This warning is issued even if the definition itself From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 03:38:23 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AD380458; Fri, 31 Jan 2014 03:38:23 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9727E1437; Fri, 31 Jan 2014 03:38:23 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V3cNOD087189; Fri, 31 Jan 2014 03:38:23 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V3cMR8087184; Fri, 31 Jan 2014 03:38:22 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201401310338.s0V3cMR8087184@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Fri, 31 Jan 2014 03:38:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261307 - in stable/10/contrib/binutils: gas/config opcodes X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 03:38:23 -0000 Author: pfg Date: Fri Jan 31 03:38:22 2014 New Revision: 261307 URL: http://svnweb.freebsd.org/changeset/base/261307 Log: MFC r261175: binutils: add support for Intel SMAP-related instructions Add support for stac/clac instructions to manipulate the flag that controls the behaviour of Intel's Supervisor Mode Access Prevention (SMAP) feature. Tested by: dim Obtained from: OpenBSD Modified: stable/10/contrib/binutils/gas/config/tc-i386.c stable/10/contrib/binutils/opcodes/i386-dis.c stable/10/contrib/binutils/opcodes/i386-opc.h stable/10/contrib/binutils/opcodes/i386-tbl.h Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/binutils/gas/config/tc-i386.c ============================================================================== --- stable/10/contrib/binutils/gas/config/tc-i386.c Fri Jan 31 03:30:09 2014 (r261306) +++ stable/10/contrib/binutils/gas/config/tc-i386.c Fri Jan 31 03:38:22 2014 (r261307) @@ -1827,7 +1827,7 @@ md_assemble (line) { expressionS *exp; - if ((i.tm.cpu_flags & CpuSSE3) && i.operands > 0) + if ((i.tm.cpu_flags & (CpuSSE3|CpuSMAP)) && i.operands > 0) { /* Streaming SIMD extensions 3 Instructions have the fixed operands with an opcode suffix which is coded in the same Modified: stable/10/contrib/binutils/opcodes/i386-dis.c ============================================================================== --- stable/10/contrib/binutils/opcodes/i386-dis.c Fri Jan 31 03:30:09 2014 (r261306) +++ stable/10/contrib/binutils/opcodes/i386-dis.c Fri Jan 31 03:38:22 2014 (r261307) @@ -6257,6 +6257,16 @@ PNI_Fixup (int extrachar ATTRIBUTE_UNUSE codep++; } + else if (modrm.mod == 3 && modrm.reg == 1 && modrm.rm <= 3) + { + size_t olen = strlen (obuf); + char *p = obuf + olen - 4; + if (*codep == 0xca) + strcpy (p, "clac"); + else if (*codep == 0xcb) + strcpy (p, "stac"); + codep++; + } else OP_M (0, sizeflag); } Modified: stable/10/contrib/binutils/opcodes/i386-opc.h ============================================================================== --- stable/10/contrib/binutils/opcodes/i386-opc.h Fri Jan 31 03:30:09 2014 (r261306) +++ stable/10/contrib/binutils/opcodes/i386-opc.h Fri Jan 31 03:38:22 2014 (r261307) @@ -80,6 +80,7 @@ typedef struct template #define CpuPCLMUL 0x10000000 /* Carry-less Multiplication extensions */ #define CpuRdRnd 0x20000000 /* Intel Random Number Generator extensions */ +#define CpuSMAP 0x40000000 /* Intel Supervisor Mode Access Prevention */ /* SSE4.1/4.2 Instructions required */ #define CpuSSE4 (CpuSSE4_1|CpuSSE4_2) @@ -88,7 +89,7 @@ typedef struct template #define CpuUnknownFlags (Cpu186|Cpu286|Cpu386|Cpu486|Cpu586|Cpu686 \ |CpuP4|CpuSledgehammer|CpuMMX|CpuMMX2|CpuSSE|CpuSSE2|CpuSSE3|CpuVMX \ |Cpu3dnow|Cpu3dnowA|CpuK6|CpuPadLock|CpuSVME|CpuSSSE3|CpuSSE4_1 \ - |CpuSSE4_2|CpuABM|CpuSSE4a|CpuXSAVE|CpuAES|CpuPCLMUL|CpuRdRnd) + |CpuSSE4_2|CpuABM|CpuSSE4a|CpuXSAVE|CpuAES|CpuPCLMUL|CpuRdRnd|CpuSMAP) /* the bits in opcode_modifier are used to generate the final opcode from the base_opcode. These bits also are used to detect alternate forms of Modified: stable/10/contrib/binutils/opcodes/i386-tbl.h ============================================================================== --- stable/10/contrib/binutils/opcodes/i386-tbl.h Fri Jan 31 03:30:09 2014 (r261306) +++ stable/10/contrib/binutils/opcodes/i386-tbl.h Fri Jan 31 03:38:22 2014 (r261307) @@ -4379,6 +4379,12 @@ const template i386_optab[] = {"rdrand", 1, 0x0fc7, 0x6, CpuRdRnd, Modrm|NoSuf, { Reg16|Reg32|Reg64 } }, + + /* Intel Supervisor Mode Access Prevention extensions */ + {"clac", 0, 0x0f01, 0xca, CpuSMAP, + NoSuf|ImmExt, { 0, 0, 0 } }, + {"stac", 0, 0x0f01, 0xcb, CpuSMAP, + NoSuf|ImmExt, { 0, 0, 0 } }, { NULL, 0, 0, 0, 0, 0, { 0 } } }; From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 03:39:13 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3F694582; Fri, 31 Jan 2014 03:39:13 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 295DF143A; Fri, 31 Jan 2014 03:39:13 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V3dDGX087317; Fri, 31 Jan 2014 03:39:13 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V3dC7B087312; Fri, 31 Jan 2014 03:39:12 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201401310339.s0V3dC7B087312@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Fri, 31 Jan 2014 03:39:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261308 - in stable/9/contrib/binutils: gas/config opcodes X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 03:39:13 -0000 Author: pfg Date: Fri Jan 31 03:39:11 2014 New Revision: 261308 URL: http://svnweb.freebsd.org/changeset/base/261308 Log: MFC r261175: binutils: add support for Intel SMAP-related instructions Add support for stac/clac instructions to manipulate the flag that controls the behaviour of Intel's Supervisor Mode Access Prevention (SMAP) feature. Tested by: dim Obtained from: OpenBSD Modified: stable/9/contrib/binutils/gas/config/tc-i386.c stable/9/contrib/binutils/opcodes/i386-dis.c stable/9/contrib/binutils/opcodes/i386-opc.h stable/9/contrib/binutils/opcodes/i386-tbl.h Directory Properties: stable/9/ (props changed) stable/9/contrib/binutils/ (props changed) Modified: stable/9/contrib/binutils/gas/config/tc-i386.c ============================================================================== --- stable/9/contrib/binutils/gas/config/tc-i386.c Fri Jan 31 03:38:22 2014 (r261307) +++ stable/9/contrib/binutils/gas/config/tc-i386.c Fri Jan 31 03:39:11 2014 (r261308) @@ -1827,7 +1827,7 @@ md_assemble (line) { expressionS *exp; - if ((i.tm.cpu_flags & CpuSSE3) && i.operands > 0) + if ((i.tm.cpu_flags & (CpuSSE3|CpuSMAP)) && i.operands > 0) { /* Streaming SIMD extensions 3 Instructions have the fixed operands with an opcode suffix which is coded in the same Modified: stable/9/contrib/binutils/opcodes/i386-dis.c ============================================================================== --- stable/9/contrib/binutils/opcodes/i386-dis.c Fri Jan 31 03:38:22 2014 (r261307) +++ stable/9/contrib/binutils/opcodes/i386-dis.c Fri Jan 31 03:39:11 2014 (r261308) @@ -6257,6 +6257,16 @@ PNI_Fixup (int extrachar ATTRIBUTE_UNUSE codep++; } + else if (modrm.mod == 3 && modrm.reg == 1 && modrm.rm <= 3) + { + size_t olen = strlen (obuf); + char *p = obuf + olen - 4; + if (*codep == 0xca) + strcpy (p, "clac"); + else if (*codep == 0xcb) + strcpy (p, "stac"); + codep++; + } else OP_M (0, sizeflag); } Modified: stable/9/contrib/binutils/opcodes/i386-opc.h ============================================================================== --- stable/9/contrib/binutils/opcodes/i386-opc.h Fri Jan 31 03:38:22 2014 (r261307) +++ stable/9/contrib/binutils/opcodes/i386-opc.h Fri Jan 31 03:39:11 2014 (r261308) @@ -80,6 +80,7 @@ typedef struct template #define CpuPCLMUL 0x10000000 /* Carry-less Multiplication extensions */ #define CpuRdRnd 0x20000000 /* Intel Random Number Generator extensions */ +#define CpuSMAP 0x40000000 /* Intel Supervisor Mode Access Prevention */ /* SSE4.1/4.2 Instructions required */ #define CpuSSE4 (CpuSSE4_1|CpuSSE4_2) @@ -88,7 +89,7 @@ typedef struct template #define CpuUnknownFlags (Cpu186|Cpu286|Cpu386|Cpu486|Cpu586|Cpu686 \ |CpuP4|CpuSledgehammer|CpuMMX|CpuMMX2|CpuSSE|CpuSSE2|CpuSSE3|CpuVMX \ |Cpu3dnow|Cpu3dnowA|CpuK6|CpuPadLock|CpuSVME|CpuSSSE3|CpuSSE4_1 \ - |CpuSSE4_2|CpuABM|CpuSSE4a|CpuXSAVE|CpuAES|CpuPCLMUL|CpuRdRnd) + |CpuSSE4_2|CpuABM|CpuSSE4a|CpuXSAVE|CpuAES|CpuPCLMUL|CpuRdRnd|CpuSMAP) /* the bits in opcode_modifier are used to generate the final opcode from the base_opcode. These bits also are used to detect alternate forms of Modified: stable/9/contrib/binutils/opcodes/i386-tbl.h ============================================================================== --- stable/9/contrib/binutils/opcodes/i386-tbl.h Fri Jan 31 03:38:22 2014 (r261307) +++ stable/9/contrib/binutils/opcodes/i386-tbl.h Fri Jan 31 03:39:11 2014 (r261308) @@ -4379,6 +4379,12 @@ const template i386_optab[] = {"rdrand", 1, 0x0fc7, 0x6, CpuRdRnd, Modrm|NoSuf, { Reg16|Reg32|Reg64 } }, + + /* Intel Supervisor Mode Access Prevention extensions */ + {"clac", 0, 0x0f01, 0xca, CpuSMAP, + NoSuf|ImmExt, { 0, 0, 0 } }, + {"stac", 0, 0x0f01, 0xcb, CpuSMAP, + NoSuf|ImmExt, { 0, 0, 0 } }, { NULL, 0, 0, 0, 0, 0, { 0 } } }; From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 03:55:37 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id BDF9D7C5; Fri, 31 Jan 2014 03:55:37 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9E6DE1567; Fri, 31 Jan 2014 03:55:37 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V3tbt4094392; Fri, 31 Jan 2014 03:55:37 GMT (envelope-from jhibbits@svn.freebsd.org) Received: (from jhibbits@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V3tYBw094367; Fri, 31 Jan 2014 03:55:34 GMT (envelope-from jhibbits@svn.freebsd.org) Message-Id: <201401310355.s0V3tYBw094367@svn.freebsd.org> From: Justin Hibbits Date: Fri, 31 Jan 2014 03:55:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261309 - in head/sys: conf powerpc/aim powerpc/include powerpc/powermac powerpc/powerpc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 03:55:37 -0000 Author: jhibbits Date: Fri Jan 31 03:55:34 2014 New Revision: 261309 URL: http://svnweb.freebsd.org/changeset/base/261309 Log: Unbreak non-SMP builds. This was broken by r259284. Also, reorganize the code introduced in that revision a bit. Reviewed by: nwhitehorn MFC after: 3 weeks Modified: head/sys/conf/files.powerpc head/sys/powerpc/aim/machdep.c head/sys/powerpc/aim/mp_cpudep.c head/sys/powerpc/aim/trap_subr32.S head/sys/powerpc/aim/trap_subr64.S head/sys/powerpc/include/cpu.h head/sys/powerpc/include/platform.h head/sys/powerpc/powermac/platform_powermac.c head/sys/powerpc/powermac/pmu.c head/sys/powerpc/powerpc/genassym.c head/sys/powerpc/powerpc/mp_machdep.c head/sys/powerpc/powerpc/platform.c head/sys/powerpc/powerpc/platform_if.m Modified: head/sys/conf/files.powerpc ============================================================================== --- head/sys/conf/files.powerpc Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/conf/files.powerpc Fri Jan 31 03:55:34 2014 (r261309) @@ -93,7 +93,7 @@ powerpc/aim/mmu_oea.c optional aim powe powerpc/aim/mmu_oea64.c optional aim powerpc/aim/moea64_if.m optional aim powerpc/aim/moea64_native.c optional aim -powerpc/aim/mp_cpudep.c optional aim smp +powerpc/aim/mp_cpudep.c optional aim powerpc/aim/slb.c optional aim powerpc64 powerpc/aim/trap.c optional aim powerpc/aim/uma_machdep.c optional aim Modified: head/sys/powerpc/aim/machdep.c ============================================================================== --- head/sys/powerpc/aim/machdep.c Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/powerpc/aim/machdep.c Fri Jan 31 03:55:34 2014 (r261309) @@ -142,6 +142,8 @@ int cacheline_size = 32; #endif int hw_direct_map = 1; +extern void *ap_pcpu; + struct pcpu __pcpu[MAXCPU]; static struct trapframe frame0; @@ -235,9 +237,7 @@ extern void *rfid_patch, *rfi_patch1, *r extern void *trapcode64; #endif -#ifdef SMP extern void *rstcode, *rstsize; -#endif extern void *trapcode, *trapsize; extern void *slbtrap, *slbtrapsize; extern void *alitrap, *alisize; @@ -491,11 +491,7 @@ powerpc_init(vm_offset_t startkernel, vm generictrap = &trapcode; #endif -#ifdef SMP bcopy(&rstcode, (void *)(EXC_RST + trap_offset), (size_t)&rstsize); -#else - bcopy(generictrap, (void *)EXC_RST, (size_t)&trapsize); -#endif #ifdef KDB bcopy(&dblow, (void *)(EXC_MCHK + trap_offset), (size_t)&dbsize); @@ -786,3 +782,171 @@ pmap_early_io_map(vm_paddr_t pa, vm_size return (pa); } +/* From p3-53 of the MPC7450 RISC Microprocessor Family Reference Manual */ +void +flush_disable_caches(void) +{ + register_t msr; + register_t msscr0; + register_t cache_reg; + volatile uint32_t *memp; + uint32_t temp; + int i; + int x; + + msr = mfmsr(); + powerpc_sync(); + mtmsr(msr & ~(PSL_EE | PSL_DR)); + msscr0 = mfspr(SPR_MSSCR0); + msscr0 &= ~MSSCR0_L2PFE; + mtspr(SPR_MSSCR0, msscr0); + powerpc_sync(); + isync(); + __asm__ __volatile__("dssall; sync"); + powerpc_sync(); + isync(); + __asm__ __volatile__("dcbf 0,%0" :: "r"(0)); + __asm__ __volatile__("dcbf 0,%0" :: "r"(0)); + __asm__ __volatile__("dcbf 0,%0" :: "r"(0)); + + /* Lock the L1 Data cache. */ + mtspr(SPR_LDSTCR, mfspr(SPR_LDSTCR) | 0xFF); + powerpc_sync(); + isync(); + + mtspr(SPR_LDSTCR, 0); + + /* + * Perform this in two stages: Flush the cache starting in RAM, then do it + * from ROM. + */ + memp = (volatile uint32_t *)0x00000000; + for (i = 0; i < 128 * 1024; i++) { + temp = *memp; + __asm__ __volatile__("dcbf 0,%0" :: "r"(memp)); + memp += 32/sizeof(*memp); + } + + memp = (volatile uint32_t *)0xfff00000; + x = 0xfe; + + for (; x != 0xff;) { + mtspr(SPR_LDSTCR, x); + for (i = 0; i < 128; i++) { + temp = *memp; + __asm__ __volatile__("dcbf 0,%0" :: "r"(memp)); + memp += 32/sizeof(*memp); + } + x = ((x << 1) | 1) & 0xff; + } + mtspr(SPR_LDSTCR, 0); + + cache_reg = mfspr(SPR_L2CR); + if (cache_reg & L2CR_L2E) { + cache_reg &= ~(L2CR_L2IO_7450 | L2CR_L2DO_7450); + mtspr(SPR_L2CR, cache_reg); + powerpc_sync(); + mtspr(SPR_L2CR, cache_reg | L2CR_L2HWF); + while (mfspr(SPR_L2CR) & L2CR_L2HWF) + ; /* Busy wait for cache to flush */ + powerpc_sync(); + cache_reg &= ~L2CR_L2E; + mtspr(SPR_L2CR, cache_reg); + powerpc_sync(); + mtspr(SPR_L2CR, cache_reg | L2CR_L2I); + powerpc_sync(); + while (mfspr(SPR_L2CR) & L2CR_L2I) + ; /* Busy wait for L2 cache invalidate */ + powerpc_sync(); + } + + cache_reg = mfspr(SPR_L3CR); + if (cache_reg & L3CR_L3E) { + cache_reg &= ~(L3CR_L3IO | L3CR_L3DO); + mtspr(SPR_L3CR, cache_reg); + powerpc_sync(); + mtspr(SPR_L3CR, cache_reg | L3CR_L3HWF); + while (mfspr(SPR_L3CR) & L3CR_L3HWF) + ; /* Busy wait for cache to flush */ + powerpc_sync(); + cache_reg &= ~L3CR_L3E; + mtspr(SPR_L3CR, cache_reg); + powerpc_sync(); + mtspr(SPR_L3CR, cache_reg | L3CR_L3I); + powerpc_sync(); + while (mfspr(SPR_L3CR) & L3CR_L3I) + ; /* Busy wait for L3 cache invalidate */ + powerpc_sync(); + } + + mtspr(SPR_HID0, mfspr(SPR_HID0) & ~HID0_DCE); + powerpc_sync(); + isync(); + + mtmsr(msr); +} + +void +cpu_sleep() +{ + static u_quad_t timebase = 0; + static register_t sprgs[4]; + static register_t srrs[2]; + + jmp_buf resetjb; + struct thread *fputd; + struct thread *vectd; + register_t hid0; + register_t msr; + register_t saved_msr; + + ap_pcpu = pcpup; + + PCPU_SET(restore, &resetjb); + + saved_msr = mfmsr(); + fputd = PCPU_GET(fputhread); + vectd = PCPU_GET(vecthread); + if (fputd != NULL) + save_fpu(fputd); + if (vectd != NULL) + save_vec(vectd); + if (setjmp(resetjb) == 0) { + sprgs[0] = mfspr(SPR_SPRG0); + sprgs[1] = mfspr(SPR_SPRG1); + sprgs[2] = mfspr(SPR_SPRG2); + sprgs[3] = mfspr(SPR_SPRG3); + srrs[0] = mfspr(SPR_SRR0); + srrs[1] = mfspr(SPR_SRR1); + timebase = mftb(); + powerpc_sync(); + flush_disable_caches(); + hid0 = mfspr(SPR_HID0); + hid0 = (hid0 & ~(HID0_DOZE | HID0_NAP)) | HID0_SLEEP; + powerpc_sync(); + isync(); + msr = mfmsr() | PSL_POW; + mtspr(SPR_HID0, hid0); + powerpc_sync(); + + while (1) + mtmsr(msr); + } + mttb(timebase); + PCPU_SET(curthread, curthread); + PCPU_SET(curpcb, curthread->td_pcb); + pmap_activate(curthread); + powerpc_sync(); + mtspr(SPR_SPRG0, sprgs[0]); + mtspr(SPR_SPRG1, sprgs[1]); + mtspr(SPR_SPRG2, sprgs[2]); + mtspr(SPR_SPRG3, sprgs[3]); + mtspr(SPR_SRR0, srrs[0]); + mtspr(SPR_SRR1, srrs[1]); + mtmsr(saved_msr); + if (fputd == curthread) + enable_fpu(curthread); + if (vectd == curthread) + enable_vec(curthread); + powerpc_sync(); +} Modified: head/sys/powerpc/aim/mp_cpudep.c ============================================================================== --- head/sys/powerpc/aim/mp_cpudep.c Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/powerpc/aim/mp_cpudep.c Fri Jan 31 03:55:34 2014 (r261309) @@ -273,6 +273,14 @@ cpudep_ap_setup() vers = mfpvr() >> 16; + /* The following is needed for restoring from sleep. */ +#ifdef __powerpc64__ + /* Writing to the time base register is hypervisor-privileged */ + if (mfmsr() & PSL_HV) + mttb(0); +#else + mttb(0); +#endif switch(vers) { case IBM970: case IBM970FX: Modified: head/sys/powerpc/aim/trap_subr32.S ============================================================================== --- head/sys/powerpc/aim/trap_subr32.S Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/powerpc/aim/trap_subr32.S Fri Jan 31 03:55:34 2014 (r261309) @@ -292,7 +292,6 @@ CNAME(restorebridge): isync CNAME(restorebridgesize) = .-CNAME(restorebridge) -#ifdef SMP /* * Processor reset exception handler. These are typically * the first instructions the processor executes after a @@ -320,12 +319,21 @@ cpu_reset: bla CNAME(pmap_cpu_bootstrap) bla CNAME(cpudep_ap_bootstrap) mr %r1,%r3 + bla CNAME(cpudep_ap_setup) + GET_CPUINFO(%r5) + lwz %r3,(PC_RESTORE)(%r5) + cmplwi %cr0,%r3,0 + beq %cr0,2f + li %r4, 1 + b CNAME(longjmp) +2: +#ifdef SMP bla CNAME(machdep_ap_bootstrap) +#endif /* Should not be reached */ 9: b 9b -#endif /* * This code gets copied to all the trap vectors Modified: head/sys/powerpc/aim/trap_subr64.S ============================================================================== --- head/sys/powerpc/aim/trap_subr64.S Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/powerpc/aim/trap_subr64.S Fri Jan 31 03:55:34 2014 (r261309) @@ -287,7 +287,6 @@ dtrace_invop_calltrap_addr: .text #endif -#ifdef SMP /* * Processor reset exception handler. These are typically * the first instructions the processor executes after a @@ -322,13 +321,25 @@ cpu_reset: bl CNAME(cpudep_ap_bootstrap) /* Set up PCPU and stack */ nop mr %r1,%r3 /* Use new stack */ + bl CNAME(cpudep_ap_setup) + nop + GET_CPUINFO(%r5) + ld %r3,(PC_RESTORE)(%r5) + cmpldi %cr0,%r3,0 + beq %cr0,2f + nop + li %r4,1 + b CNAME(longjmp) + nop +2: +#ifdef SMP bl CNAME(machdep_ap_bootstrap) /* And away! */ nop +#endif /* Should not be reached */ 9: b 9b -#endif /* * This code gets copied to all the trap vectors Modified: head/sys/powerpc/include/cpu.h ============================================================================== --- head/sys/powerpc/include/cpu.h Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/powerpc/include/cpu.h Fri Jan 31 03:55:34 2014 (r261309) @@ -95,9 +95,9 @@ extern char etext[]; void cpu_halt(void); void cpu_reset(void); +void cpu_sleep(void); +void flush_disable_caches(void); void fork_trampoline(void); void swi_vm(void *); -void flush_disable_caches(void); - #endif /* _MACHINE_CPU_H_ */ Modified: head/sys/powerpc/include/platform.h ============================================================================== --- head/sys/powerpc/include/platform.h Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/powerpc/include/platform.h Fri Jan 31 03:55:34 2014 (r261309) @@ -56,5 +56,7 @@ void platform_smp_ap_init(void); const char *installed_platform(void); void platform_probe_and_attach(void); + +void platform_sleep(void); #endif /* _MACHINE_PLATFORM_H_ */ Modified: head/sys/powerpc/powermac/platform_powermac.c ============================================================================== --- head/sys/powerpc/powermac/platform_powermac.c Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/powerpc/powermac/platform_powermac.c Fri Jan 31 03:55:34 2014 (r261309) @@ -38,11 +38,14 @@ __FBSDID("$FreeBSD$"); #include #include +#include /* For save_vec() */ #include #include +#include /* For save_fpu() */ #include #include #include +#include #include #include @@ -51,9 +54,7 @@ __FBSDID("$FreeBSD$"); #include "platform_if.h" -#ifdef SMP extern void *ap_pcpu; -#endif static int powermac_probe(platform_t); static int powermac_attach(platform_t); @@ -65,6 +66,7 @@ static int powermac_smp_next_cpu(platfor static int powermac_smp_get_bsp(platform_t, struct cpuref *cpuref); static int powermac_smp_start_cpu(platform_t, struct pcpu *cpu); static void powermac_reset(platform_t); +static void powermac_sleep(platform_t); static platform_method_t powermac_methods[] = { PLATFORMMETHOD(platform_probe, powermac_probe), @@ -78,6 +80,7 @@ static platform_method_t powermac_method PLATFORMMETHOD(platform_smp_start_cpu, powermac_smp_start_cpu), PLATFORMMETHOD(platform_reset, powermac_reset), + PLATFORMMETHOD(platform_sleep, powermac_sleep), PLATFORMMETHOD_END }; @@ -376,113 +379,17 @@ powermac_smp_start_cpu(platform_t plat, #endif } -/* From p3-53 of the MPC7450 RISC Microprocessor Family Reference Manual */ -void -flush_disable_caches(void) -{ - register_t msr; - register_t msscr0; - register_t cache_reg; - volatile uint32_t *memp; - uint32_t temp; - int i; - int x; - - msr = mfmsr(); - powerpc_sync(); - mtmsr(msr & ~(PSL_EE | PSL_DR)); - msscr0 = mfspr(SPR_MSSCR0); - msscr0 &= ~MSSCR0_L2PFE; - mtspr(SPR_MSSCR0, msscr0); - powerpc_sync(); - isync(); - __asm__ __volatile__("dssall; sync"); - powerpc_sync(); - isync(); - __asm__ __volatile__("dcbf 0,%0" :: "r"(0)); - __asm__ __volatile__("dcbf 0,%0" :: "r"(0)); - __asm__ __volatile__("dcbf 0,%0" :: "r"(0)); - - /* Lock the L1 Data cache. */ - mtspr(SPR_LDSTCR, mfspr(SPR_LDSTCR) | 0xFF); - powerpc_sync(); - isync(); - - mtspr(SPR_LDSTCR, 0); - - /* - * Perform this in two stages: Flush the cache starting in RAM, then do it - * from ROM. - */ - memp = (volatile uint32_t *)0x00000000; - for (i = 0; i < 128 * 1024; i++) { - temp = *memp; - __asm__ __volatile__("dcbf 0,%0" :: "r"(memp)); - memp += 32/sizeof(*memp); - } - - memp = (volatile uint32_t *)0xfff00000; - x = 0xfe; - - for (; x != 0xff;) { - mtspr(SPR_LDSTCR, x); - for (i = 0; i < 128; i++) { - temp = *memp; - __asm__ __volatile__("dcbf 0,%0" :: "r"(memp)); - memp += 32/sizeof(*memp); - } - x = ((x << 1) | 1) & 0xff; - } - mtspr(SPR_LDSTCR, 0); - - cache_reg = mfspr(SPR_L2CR); - if (cache_reg & L2CR_L2E) { - cache_reg &= ~(L2CR_L2IO_7450 | L2CR_L2DO_7450); - mtspr(SPR_L2CR, cache_reg); - powerpc_sync(); - mtspr(SPR_L2CR, cache_reg | L2CR_L2HWF); - while (mfspr(SPR_L2CR) & L2CR_L2HWF) - ; /* Busy wait for cache to flush */ - powerpc_sync(); - cache_reg &= ~L2CR_L2E; - mtspr(SPR_L2CR, cache_reg); - powerpc_sync(); - mtspr(SPR_L2CR, cache_reg | L2CR_L2I); - powerpc_sync(); - while (mfspr(SPR_L2CR) & L2CR_L2I) - ; /* Busy wait for L2 cache invalidate */ - powerpc_sync(); - } - - cache_reg = mfspr(SPR_L3CR); - if (cache_reg & L3CR_L3E) { - cache_reg &= ~(L3CR_L3IO | L3CR_L3DO); - mtspr(SPR_L3CR, cache_reg); - powerpc_sync(); - mtspr(SPR_L3CR, cache_reg | L3CR_L3HWF); - while (mfspr(SPR_L3CR) & L3CR_L3HWF) - ; /* Busy wait for cache to flush */ - powerpc_sync(); - cache_reg &= ~L3CR_L3E; - mtspr(SPR_L3CR, cache_reg); - powerpc_sync(); - mtspr(SPR_L3CR, cache_reg | L3CR_L3I); - powerpc_sync(); - while (mfspr(SPR_L3CR) & L3CR_L3I) - ; /* Busy wait for L3 cache invalidate */ - powerpc_sync(); - } - - mtspr(SPR_HID0, mfspr(SPR_HID0) & ~HID0_DCE); - powerpc_sync(); - isync(); - - mtmsr(msr); -} - static void powermac_reset(platform_t platform) { OF_reboot(); } +void +powermac_sleep(platform_t platform) +{ + + *(unsigned long *)0x80 = 0x100; + cpu_sleep(); +} + Modified: head/sys/powerpc/powermac/pmu.c ============================================================================== --- head/sys/powerpc/powermac/pmu.c Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/powerpc/powermac/pmu.c Fri Jan 31 03:55:34 2014 (r261309) @@ -45,17 +45,14 @@ __FBSDID("$FreeBSD$"); #include #include -#include /* For save_vec() */ #include #include -#include /* For save_fpu() */ #include #include #include #include #include #include -#include #include #include @@ -106,7 +103,6 @@ static int pmu_acline_state(SYSCTL_HANDL static int pmu_query_battery(struct pmu_softc *sc, int batt, struct pmu_battstate *info); static int pmu_battquery_sysctl(SYSCTL_HANDLER_ARGS); -static void pmu_sleep_int(void); /* * List of battery-related sysctls we might ask for @@ -1031,72 +1027,6 @@ pmu_settime(device_t dev, struct timespe return (0); } -static register_t sprgs[4]; -static register_t srrs[2]; -extern void *ap_pcpu; - -void pmu_sleep_int(void) -{ - static u_quad_t timebase = 0; - jmp_buf resetjb; - struct thread *fputd; - struct thread *vectd; - register_t hid0; - register_t msr; - register_t saved_msr; - - ap_pcpu = pcpup; - - PCPU_SET(restore, &resetjb); - - *(unsigned long *)0x80 = 0x100; - saved_msr = mfmsr(); - fputd = PCPU_GET(fputhread); - vectd = PCPU_GET(vecthread); - if (fputd != NULL) - save_fpu(fputd); - if (vectd != NULL) - save_vec(vectd); - if (setjmp(resetjb) == 0) { - sprgs[0] = mfspr(SPR_SPRG0); - sprgs[1] = mfspr(SPR_SPRG1); - sprgs[2] = mfspr(SPR_SPRG2); - sprgs[3] = mfspr(SPR_SPRG3); - srrs[0] = mfspr(SPR_SRR0); - srrs[1] = mfspr(SPR_SRR1); - timebase = mftb(); - powerpc_sync(); - flush_disable_caches(); - hid0 = mfspr(SPR_HID0); - hid0 = (hid0 & ~(HID0_DOZE | HID0_NAP)) | HID0_SLEEP; - powerpc_sync(); - isync(); - msr = mfmsr() | PSL_POW; - mtspr(SPR_HID0, hid0); - powerpc_sync(); - - while (1) - mtmsr(msr); - } - mttb(timebase); - PCPU_SET(curthread, curthread); - PCPU_SET(curpcb, curthread->td_pcb); - pmap_activate(curthread); - powerpc_sync(); - mtspr(SPR_SPRG0, sprgs[0]); - mtspr(SPR_SPRG1, sprgs[1]); - mtspr(SPR_SPRG2, sprgs[2]); - mtspr(SPR_SPRG3, sprgs[3]); - mtspr(SPR_SRR0, srrs[0]); - mtspr(SPR_SRR1, srrs[1]); - mtmsr(saved_msr); - if (fputd == curthread) - enable_fpu(curthread); - if (vectd == curthread) - enable_vec(curthread); - powerpc_sync(); -} - int pmu_set_speed(int low_speed) { @@ -1114,7 +1044,7 @@ pmu_set_speed(int low_speed) sleepcmd[4] = low_speed; pmu_send(sc, PMU_CPU_SPEED, 5, sleepcmd, 16, resp); unin_chip_sleep(NULL, 1); - pmu_sleep_int(); + platform_sleep(); unin_chip_wake(NULL); mtdec(1); /* Force a decrementer exception */ Modified: head/sys/powerpc/powerpc/genassym.c ============================================================================== --- head/sys/powerpc/powerpc/genassym.c Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/powerpc/powerpc/genassym.c Fri Jan 31 03:55:34 2014 (r261309) @@ -62,6 +62,7 @@ ASSYM(PC_CURPMAP, offsetof(struct pcpu, ASSYM(PC_TEMPSAVE, offsetof(struct pcpu, pc_tempsave)); ASSYM(PC_DISISAVE, offsetof(struct pcpu, pc_disisave)); ASSYM(PC_DBSAVE, offsetof(struct pcpu, pc_dbsave)); +ASSYM(PC_RESTORE, offsetof(struct pcpu, pc_restore)); #if defined(BOOKE) ASSYM(PC_BOOKE_CRITSAVE, offsetof(struct pcpu, pc_booke_critsave)); Modified: head/sys/powerpc/powerpc/mp_machdep.c ============================================================================== --- head/sys/powerpc/powerpc/mp_machdep.c Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/powerpc/powerpc/mp_machdep.c Fri Jan 31 03:55:34 2014 (r261309) @@ -72,29 +72,12 @@ int longfault(faultbuf, int); void machdep_ap_bootstrap(void) { - jmp_buf *restore; - - /* The following is needed for restoring from sleep. */ -#ifdef __powerpc64__ - /* Writing to the time base register is hypervisor-privileged */ - if (mfmsr() & PSL_HV) - mttb(0); -#else - mttb(0); -#endif - /* Set up important bits on the CPU (HID registers, etc.) */ - cpudep_ap_setup(); /* Set PIR */ PCPU_SET(pir, mfspr(SPR_PIR)); PCPU_SET(awake, 1); __asm __volatile("msync; isync"); - restore = PCPU_GET(restore); - if (restore != NULL) { - longjmp(*restore, 1); - } - while (ap_letgo == 0) ; Modified: head/sys/powerpc/powerpc/platform.c ============================================================================== --- head/sys/powerpc/powerpc/platform.c Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/powerpc/powerpc/platform.c Fri Jan 31 03:55:34 2014 (r261309) @@ -196,6 +196,15 @@ platform_timebase_freq(struct cpuref *cp return (PLATFORM_TIMEBASE_FREQ(plat_obj, cpu)); } +/* + * Put the current CPU, as last step in suspend, to sleep + */ +void +platform_sleep() +{ + PLATFORM_SLEEP(plat_obj); +} + int platform_smp_first_cpu(struct cpuref *cpu) { Modified: head/sys/powerpc/powerpc/platform_if.m ============================================================================== --- head/sys/powerpc/powerpc/platform_if.m Fri Jan 31 03:39:11 2014 (r261308) +++ head/sys/powerpc/powerpc/platform_if.m Fri Jan 31 03:55:34 2014 (r261309) @@ -210,3 +210,10 @@ METHOD void reset { platform_t _plat; }; +/** + * @brief Suspend the CPU + */ +METHOD void sleep { + platform_t _plat; +}; + From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 03:57:50 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 6046391E; Fri, 31 Jan 2014 03:57:50 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4C9A9157B; Fri, 31 Jan 2014 03:57:50 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V3voAL094876; Fri, 31 Jan 2014 03:57:50 GMT (envelope-from jmg@svn.freebsd.org) Received: (from jmg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V3voq1094875; Fri, 31 Jan 2014 03:57:50 GMT (envelope-from jmg@svn.freebsd.org) Message-Id: <201401310357.s0V3voq1094875@svn.freebsd.org> From: John-Mark Gurney Date: Fri, 31 Jan 2014 03:57:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261310 - head/share/man/man9 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 03:57:50 -0000 Author: jmg Date: Fri Jan 31 03:57:49 2014 New Revision: 261310 URL: http://svnweb.freebsd.org/changeset/base/261310 Log: add a few missing links... Submitted by: J David MFC after: 1 week Modified: head/share/man/man9/Makefile Modified: head/share/man/man9/Makefile ============================================================================== --- head/share/man/man9/Makefile Fri Jan 31 03:55:34 2014 (r261309) +++ head/share/man/man9/Makefile Fri Jan 31 03:57:49 2014 (r261310) @@ -1538,9 +1538,13 @@ MLINKS+=vslock.9 vsunlock.9 MLINKS+=zero_copy.9 zero_copy_sockets.9 MLINKS+=zone.9 uma.9 \ zone.9 uma_zalloc.9 \ + zone.9 uma_zalloc_arg.9 \ zone.9 uma_zcreate.9 \ zone.9 uma_zdestroy.9 \ zone.9 uma_zfree.9 \ + zone.9 uma_zfree_arg.9 \ + zone.9 uma_zone_get_cur.9 \ + zone.9 uma_zone_get_max.9 \ zone.9 uma_zone_set_max.9 .include From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 03:58:38 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8ABB2A57; Fri, 31 Jan 2014 03:58:38 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 734F7157F; Fri, 31 Jan 2014 03:58:38 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V3wcOZ095007; Fri, 31 Jan 2014 03:58:38 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V3wamb094996; Fri, 31 Jan 2014 03:58:36 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201401310358.s0V3wamb094996@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Fri, 31 Jan 2014 03:58:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261311 - stable/10/sys/fs/ext2fs X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 03:58:38 -0000 Author: pfg Date: Fri Jan 31 03:58:36 2014 New Revision: 261311 URL: http://svnweb.freebsd.org/changeset/base/261311 Log: MFC r260988, r261034, r261120, r261235: ext2fs: Properly the EXT4_EXTENTS and EXT4_INDEX to the inode flags. In order to support Ext4 extents we need to pass the Ext4 inode flags without interfering with the chflags. This is better done by using the i_flag field in the inode and doing proper translation to the linux ext4 equivalents. Solve a potential corruption issue in the dirindex code. The dirindex code can now be renabled as the problems related to it have been solved. Suggested by: bde Tested by: kevlo Modified: stable/10/sys/fs/ext2fs/ext2_bmap.c stable/10/sys/fs/ext2fs/ext2_dinode.h stable/10/sys/fs/ext2fs/ext2_htree.c stable/10/sys/fs/ext2fs/ext2_inode_cnv.c stable/10/sys/fs/ext2fs/ext2_lookup.c stable/10/sys/fs/ext2fs/ext2_subr.c stable/10/sys/fs/ext2fs/ext2_vfsops.c stable/10/sys/fs/ext2fs/ext2_vnops.c stable/10/sys/fs/ext2fs/inode.h Modified: stable/10/sys/fs/ext2fs/ext2_bmap.c ============================================================================== --- stable/10/sys/fs/ext2fs/ext2_bmap.c Fri Jan 31 03:57:49 2014 (r261310) +++ stable/10/sys/fs/ext2fs/ext2_bmap.c Fri Jan 31 03:58:36 2014 (r261311) @@ -74,7 +74,7 @@ ext2_bmap(struct vop_bmap_args *ap) if (ap->a_bnp == NULL) return (0); - if (VTOI(ap->a_vp)->i_flags & EXT4_EXTENTS) + if (VTOI(ap->a_vp)->i_flag & IN_E4EXTENTS) error = ext4_bmapext(ap->a_vp, ap->a_bn, &blkno, ap->a_runp, ap->a_runb); else Modified: stable/10/sys/fs/ext2fs/ext2_dinode.h ============================================================================== --- stable/10/sys/fs/ext2fs/ext2_dinode.h Fri Jan 31 03:57:49 2014 (r261310) +++ stable/10/sys/fs/ext2fs/ext2_dinode.h Fri Jan 31 03:58:36 2014 (r261311) @@ -50,22 +50,24 @@ /* * Inode flags - * The current implementation uses only EXT2_IMMUTABLE and EXT2_APPEND flags + * The system supports EXT2_IMMUTABLE, EXT2_APPEND and EXT2_NODUMP flags. + * The current implementation also uses EXT4_INDEX, EXT4_EXTENTS and + * EXT4_HUGE_FILE with some restrictions, imposed the lack of write + * support. */ #define EXT2_SECRM 0x00000001 /* Secure deletion */ #define EXT2_UNRM 0x00000002 /* Undelete */ #define EXT2_COMPR 0x00000004 /* Compress file */ #define EXT2_SYNC 0x00000008 /* Synchronous updates */ #define EXT2_IMMUTABLE 0x00000010 /* Immutable file */ -#define EXT2_APPEND 0x00000020 /* writes to file may only append */ -#define EXT2_NODUMP 0x00000040 /* do not dump file */ -#define EXT2_NOATIME 0x00000080 /* do not update atime */ - -#define EXT4_INDEX 0x00001000 /* hash-indexed directory */ +#define EXT2_APPEND 0x00000020 /* Writes to file may only append */ +#define EXT2_NODUMP 0x00000040 /* Do not dump file */ +#define EXT2_NOATIME 0x00000080 /* Do not update atime */ +#define EXT4_INDEX 0x00001000 /* Hash-indexed directory */ #define EXT4_IMAGIC 0x00002000 /* AFS directory */ -#define EXT4_JOURNAL_DATA 0x00004000 /* file data should be journaled */ -#define EXT4_NOTAIL 0x00008000 /* file tail should not be merged */ -#define EXT4_DIRSYNC 0x00010000 /* dirsync behaviour */ +#define EXT4_JOURNAL_DATA 0x00004000 /* File data should be journaled */ +#define EXT4_NOTAIL 0x00008000 /* File tail should not be merged */ +#define EXT4_DIRSYNC 0x00010000 /* Dirsync behaviour */ #define EXT4_TOPDIR 0x00020000 /* Top of directory hierarchies*/ #define EXT4_HUGE_FILE 0x00040000 /* Set to each huge file */ #define EXT4_EXTENTS 0x00080000 /* Inode uses extents */ Modified: stable/10/sys/fs/ext2fs/ext2_htree.c ============================================================================== --- stable/10/sys/fs/ext2fs/ext2_htree.c Fri Jan 31 03:57:49 2014 (r261310) +++ stable/10/sys/fs/ext2fs/ext2_htree.c Fri Jan 31 03:58:36 2014 (r261311) @@ -89,12 +89,10 @@ static int ext2_htree_writebuf(struct ex int ext2_htree_has_idx(struct inode *ip) { -#ifdef EXT2FS_HTREE if (EXT2_HAS_COMPAT_FEATURE(ip->i_e2fs, EXT2F_COMPAT_DIRHASHINDEX) && - ip->i_flags & EXT4_INDEX) + ip->i_flag & IN_E4INDEX) return (1); else -#endif return (0); } @@ -656,7 +654,7 @@ ext2_htree_create_index(struct vnode *vp ((char *)ep + ep->e2d_reclen); ep->e2d_reclen = buf1 + blksize - (char *)ep; - dp->i_flags |= EXT4_INDEX; + dp->i_flag |= IN_E4INDEX; /* * Initialize index root. Modified: stable/10/sys/fs/ext2fs/ext2_inode_cnv.c ============================================================================== --- stable/10/sys/fs/ext2fs/ext2_inode_cnv.c Fri Jan 31 03:57:49 2014 (r261310) +++ stable/10/sys/fs/ext2fs/ext2_inode_cnv.c Fri Jan 31 03:58:36 2014 (r261311) @@ -108,6 +108,8 @@ ext2_ei2i(struct ext2fs_dinode *ei, stru ip->i_flags |= (ei->e2di_flags & EXT2_APPEND) ? SF_APPEND : 0; ip->i_flags |= (ei->e2di_flags & EXT2_IMMUTABLE) ? SF_IMMUTABLE : 0; ip->i_flags |= (ei->e2di_flags & EXT2_NODUMP) ? UF_NODUMP : 0; + ip->i_flag |= (ei->e2di_flags & EXT4_INDEX) ? IN_E4INDEX : 0; + ip->i_flag |= (ei->e2di_flags & EXT4_EXTENTS) ? IN_E4EXTENTS : 0; ip->i_blocks = ei->e2di_nblock; if (E2DI_HAS_HUGE_FILE(ip)) { ip->i_blocks |= (uint64_t)ei->e2di_nblock_high << 32; @@ -156,6 +158,8 @@ ext2_i2ei(struct inode *ip, struct ext2f ei->e2di_flags |= (ip->i_flags & SF_APPEND) ? EXT2_APPEND: 0; ei->e2di_flags |= (ip->i_flags & SF_IMMUTABLE) ? EXT2_IMMUTABLE: 0; ei->e2di_flags |= (ip->i_flags & UF_NODUMP) ? EXT2_NODUMP: 0; + ei->e2di_flags |= (ip->i_flag & IN_E4INDEX) ? EXT4_INDEX: 0; + ei->e2di_flags |= (ip->i_flag & IN_E4EXTENTS) ? EXT4_EXTENTS: 0; ei->e2di_nblock = ip->i_blocks & 0xffffffff; ei->e2di_nblock_high = ip->i_blocks >> 32 & 0xffff; ei->e2di_gen = ip->i_gen; Modified: stable/10/sys/fs/ext2fs/ext2_lookup.c ============================================================================== --- stable/10/sys/fs/ext2fs/ext2_lookup.c Fri Jan 31 03:57:49 2014 (r261310) +++ stable/10/sys/fs/ext2fs/ext2_lookup.c Fri Jan 31 03:58:36 2014 (r261311) @@ -884,12 +884,11 @@ ext2_direnter(struct inode *ip, struct v bcopy(cnp->cn_nameptr, newdir.e2d_name, (unsigned)cnp->cn_namelen + 1); newentrysize = EXT2_DIR_REC_LEN(newdir.e2d_namlen); -#ifdef EXT2FS_HTREE if (ext2_htree_has_idx(dp)) { error = ext2_htree_add_entry(dvp, &newdir, cnp); if (error) { - dp->i_flags &= ~EXT4_INDEX; - dp->i_flags |= IN_CHANGE | IN_UPDATE; + dp->i_flag &= ~IN_E4INDEX; + dp->i_flag |= IN_CHANGE | IN_UPDATE; } return (error); } @@ -905,7 +904,6 @@ ext2_direnter(struct inode *ip, struct v return ext2_htree_create_index(dvp, cnp, &newdir); } } -#endif /* EXT2FS_HTREE */ if (dp->i_count == 0) { /* Modified: stable/10/sys/fs/ext2fs/ext2_subr.c ============================================================================== --- stable/10/sys/fs/ext2fs/ext2_subr.c Fri Jan 31 03:57:49 2014 (r261310) +++ stable/10/sys/fs/ext2fs/ext2_subr.c Fri Jan 31 03:58:36 2014 (r261311) @@ -82,10 +82,10 @@ ext2_blkatoff(struct vnode *vp, off_t of *bpp = NULL; /* - * The EXT4_EXTENTS requires special treatment, otherwise we can - * fall back to the normal path. + * IN_E4EXTENTS requires special treatment as we can otherwise fall + * back to the normal path. */ - if (!(ip->i_flags & EXT4_EXTENTS)) + if (!(ip->i_flag & IN_E4EXTENTS)) goto normal; memset(&path, 0, sizeof(path)); @@ -110,7 +110,7 @@ ext2_blkatoff(struct vnode *vp, off_t of if (res) *res = (char *)bp->b_data + blkoff(fs, offset); /* - * If EXT4_EXTENTS is enabled we would get a wrong offset so + * If IN_E4EXTENTS is enabled we would get a wrong offset so * reset b_offset here. */ bp->b_offset = lbn * bsize; Modified: stable/10/sys/fs/ext2fs/ext2_vfsops.c ============================================================================== --- stable/10/sys/fs/ext2fs/ext2_vfsops.c Fri Jan 31 03:57:49 2014 (r261310) +++ stable/10/sys/fs/ext2fs/ext2_vfsops.c Fri Jan 31 03:58:36 2014 (r261311) @@ -964,10 +964,10 @@ ext2_vget(struct mount *mp, ino_t ino, i * blocks are zeroed out - ext2_balloc depends on this * although for regular files and directories only * - * If EXT4_EXTENTS flag is enabled, unused blocks aren't - * zeroed out because we could corrupt the extent tree. + * If IN_E4EXTENTS is enabled, unused blocks are not zeroed + * out because we could corrupt the extent tree. */ - if (!(ip->i_flags & EXT4_EXTENTS) && + if (!(ip->i_flag & IN_E4EXTENTS) && (S_ISDIR(ip->i_mode) || S_ISREG(ip->i_mode))) { used_blocks = (ip->i_size+fs->e2fs_bsize-1) / fs->e2fs_bsize; for (i = used_blocks; i < EXT2_NDIR_BLOCKS; i++) Modified: stable/10/sys/fs/ext2fs/ext2_vnops.c ============================================================================== --- stable/10/sys/fs/ext2fs/ext2_vnops.c Fri Jan 31 03:57:49 2014 (r261310) +++ stable/10/sys/fs/ext2fs/ext2_vnops.c Fri Jan 31 03:58:36 2014 (r261311) @@ -1615,7 +1615,7 @@ ext2_read(struct vop_read_args *ap) ip = VTOI(vp); /*EXT4_EXT_LOCK(ip);*/ - if (ip->i_flags & EXT4_EXTENTS) + if (ip->i_flag & IN_E4EXTENTS) error = ext4_ext_read(ap); else error = ext2_ind_read(ap); Modified: stable/10/sys/fs/ext2fs/inode.h ============================================================================== --- stable/10/sys/fs/ext2fs/inode.h Fri Jan 31 03:57:49 2014 (r261310) +++ stable/10/sys/fs/ext2fs/inode.h Fri Jan 31 03:58:36 2014 (r261311) @@ -153,6 +153,13 @@ struct inode { #define IN_LAZYACCESS 0x0100 /* Process IN_ACCESS after the suspension finished */ +/* + * These are translation flags for some attributes that Ext4 + * passes as inode flags but that we cannot pass directly. + */ +#define IN_E4INDEX 0x010000 +#define IN_E4EXTENTS 0x020000 + #define i_devvp i_ump->um_devvp #ifdef _KERNEL From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 03:59:31 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 096D0B95; Fri, 31 Jan 2014 03:59:31 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E87301589; Fri, 31 Jan 2014 03:59:30 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V3xUKi095145; Fri, 31 Jan 2014 03:59:30 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V3xTfn095130; Fri, 31 Jan 2014 03:59:29 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201401310359.s0V3xTfn095130@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Fri, 31 Jan 2014 03:59:29 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261312 - stable/9/sys/fs/ext2fs X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 03:59:31 -0000 Author: pfg Date: Fri Jan 31 03:59:28 2014 New Revision: 261312 URL: http://svnweb.freebsd.org/changeset/base/261312 Log: MFC r260988, r261034, r261120, r261235: ext2fs: Properly the EXT4_EXTENTS and EXT4_INDEX to the inode flags. In order to support Ext4 extents we need to pass the Ext4 inode flags without interfering with the chflags. This is better done by using the i_flag field in the inode and doing proper translation to the linux ext4 equivalents. Solve a potential corruption issue in the dirindex code. The dirindex code can now be renabled as the problems related to it have been solved. Suggested by: bde Tested by: kevlo Modified: stable/9/sys/fs/ext2fs/ext2_bmap.c stable/9/sys/fs/ext2fs/ext2_dinode.h stable/9/sys/fs/ext2fs/ext2_htree.c stable/9/sys/fs/ext2fs/ext2_inode_cnv.c stable/9/sys/fs/ext2fs/ext2_lookup.c stable/9/sys/fs/ext2fs/ext2_subr.c stable/9/sys/fs/ext2fs/ext2_vfsops.c stable/9/sys/fs/ext2fs/ext2_vnops.c stable/9/sys/fs/ext2fs/inode.h Directory Properties: stable/9/sys/ (props changed) stable/9/sys/fs/ (props changed) Modified: stable/9/sys/fs/ext2fs/ext2_bmap.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_bmap.c Fri Jan 31 03:58:36 2014 (r261311) +++ stable/9/sys/fs/ext2fs/ext2_bmap.c Fri Jan 31 03:59:28 2014 (r261312) @@ -74,7 +74,7 @@ ext2_bmap(struct vop_bmap_args *ap) if (ap->a_bnp == NULL) return (0); - if (VTOI(ap->a_vp)->i_flags & EXT4_EXTENTS) + if (VTOI(ap->a_vp)->i_flag & IN_E4EXTENTS) error = ext4_bmapext(ap->a_vp, ap->a_bn, &blkno, ap->a_runp, ap->a_runb); else Modified: stable/9/sys/fs/ext2fs/ext2_dinode.h ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_dinode.h Fri Jan 31 03:58:36 2014 (r261311) +++ stable/9/sys/fs/ext2fs/ext2_dinode.h Fri Jan 31 03:59:28 2014 (r261312) @@ -50,22 +50,24 @@ /* * Inode flags - * The current implementation uses only EXT2_IMMUTABLE and EXT2_APPEND flags + * The system supports EXT2_IMMUTABLE, EXT2_APPEND and EXT2_NODUMP flags. + * The current implementation also uses EXT4_INDEX, EXT4_EXTENTS and + * EXT4_HUGE_FILE with some restrictions, imposed the lack of write + * support. */ #define EXT2_SECRM 0x00000001 /* Secure deletion */ #define EXT2_UNRM 0x00000002 /* Undelete */ #define EXT2_COMPR 0x00000004 /* Compress file */ #define EXT2_SYNC 0x00000008 /* Synchronous updates */ #define EXT2_IMMUTABLE 0x00000010 /* Immutable file */ -#define EXT2_APPEND 0x00000020 /* writes to file may only append */ -#define EXT2_NODUMP 0x00000040 /* do not dump file */ -#define EXT2_NOATIME 0x00000080 /* do not update atime */ - -#define EXT4_INDEX 0x00001000 /* hash-indexed directory */ +#define EXT2_APPEND 0x00000020 /* Writes to file may only append */ +#define EXT2_NODUMP 0x00000040 /* Do not dump file */ +#define EXT2_NOATIME 0x00000080 /* Do not update atime */ +#define EXT4_INDEX 0x00001000 /* Hash-indexed directory */ #define EXT4_IMAGIC 0x00002000 /* AFS directory */ -#define EXT4_JOURNAL_DATA 0x00004000 /* file data should be journaled */ -#define EXT4_NOTAIL 0x00008000 /* file tail should not be merged */ -#define EXT4_DIRSYNC 0x00010000 /* dirsync behaviour */ +#define EXT4_JOURNAL_DATA 0x00004000 /* File data should be journaled */ +#define EXT4_NOTAIL 0x00008000 /* File tail should not be merged */ +#define EXT4_DIRSYNC 0x00010000 /* Dirsync behaviour */ #define EXT4_TOPDIR 0x00020000 /* Top of directory hierarchies*/ #define EXT4_HUGE_FILE 0x00040000 /* Set to each huge file */ #define EXT4_EXTENTS 0x00080000 /* Inode uses extents */ Modified: stable/9/sys/fs/ext2fs/ext2_htree.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_htree.c Fri Jan 31 03:58:36 2014 (r261311) +++ stable/9/sys/fs/ext2fs/ext2_htree.c Fri Jan 31 03:59:28 2014 (r261312) @@ -89,12 +89,10 @@ static int ext2_htree_writebuf(struct ex int ext2_htree_has_idx(struct inode *ip) { -#ifdef EXT2FS_HTREE if (EXT2_HAS_COMPAT_FEATURE(ip->i_e2fs, EXT2F_COMPAT_DIRHASHINDEX) && - ip->i_flags & EXT4_INDEX) + ip->i_flag & IN_E4INDEX) return (1); else -#endif return (0); } @@ -656,7 +654,7 @@ ext2_htree_create_index(struct vnode *vp ((char *)ep + ep->e2d_reclen); ep->e2d_reclen = buf1 + blksize - (char *)ep; - dp->i_flags |= EXT4_INDEX; + dp->i_flag |= IN_E4INDEX; /* * Initialize index root. Modified: stable/9/sys/fs/ext2fs/ext2_inode_cnv.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_inode_cnv.c Fri Jan 31 03:58:36 2014 (r261311) +++ stable/9/sys/fs/ext2fs/ext2_inode_cnv.c Fri Jan 31 03:59:28 2014 (r261312) @@ -108,6 +108,8 @@ ext2_ei2i(struct ext2fs_dinode *ei, stru ip->i_flags |= (ei->e2di_flags & EXT2_APPEND) ? SF_APPEND : 0; ip->i_flags |= (ei->e2di_flags & EXT2_IMMUTABLE) ? SF_IMMUTABLE : 0; ip->i_flags |= (ei->e2di_flags & EXT2_NODUMP) ? UF_NODUMP : 0; + ip->i_flag |= (ei->e2di_flags & EXT4_INDEX) ? IN_E4INDEX : 0; + ip->i_flag |= (ei->e2di_flags & EXT4_EXTENTS) ? IN_E4EXTENTS : 0; ip->i_blocks = ei->e2di_nblock; if (E2DI_HAS_HUGE_FILE(ip)) { ip->i_blocks |= (uint64_t)ei->e2di_nblock_high << 32; @@ -156,6 +158,8 @@ ext2_i2ei(struct inode *ip, struct ext2f ei->e2di_flags |= (ip->i_flags & SF_APPEND) ? EXT2_APPEND: 0; ei->e2di_flags |= (ip->i_flags & SF_IMMUTABLE) ? EXT2_IMMUTABLE: 0; ei->e2di_flags |= (ip->i_flags & UF_NODUMP) ? EXT2_NODUMP: 0; + ei->e2di_flags |= (ip->i_flag & IN_E4INDEX) ? EXT4_INDEX: 0; + ei->e2di_flags |= (ip->i_flag & IN_E4EXTENTS) ? EXT4_EXTENTS: 0; ei->e2di_nblock = ip->i_blocks & 0xffffffff; ei->e2di_nblock_high = ip->i_blocks >> 32 & 0xffff; ei->e2di_gen = ip->i_gen; Modified: stable/9/sys/fs/ext2fs/ext2_lookup.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_lookup.c Fri Jan 31 03:58:36 2014 (r261311) +++ stable/9/sys/fs/ext2fs/ext2_lookup.c Fri Jan 31 03:59:28 2014 (r261312) @@ -884,12 +884,11 @@ ext2_direnter(struct inode *ip, struct v bcopy(cnp->cn_nameptr, newdir.e2d_name, (unsigned)cnp->cn_namelen + 1); newentrysize = EXT2_DIR_REC_LEN(newdir.e2d_namlen); -#ifdef EXT2FS_HTREE if (ext2_htree_has_idx(dp)) { error = ext2_htree_add_entry(dvp, &newdir, cnp); if (error) { - dp->i_flags &= ~EXT4_INDEX; - dp->i_flags |= IN_CHANGE | IN_UPDATE; + dp->i_flag &= ~IN_E4INDEX; + dp->i_flag |= IN_CHANGE | IN_UPDATE; } return (error); } @@ -905,7 +904,6 @@ ext2_direnter(struct inode *ip, struct v return ext2_htree_create_index(dvp, cnp, &newdir); } } -#endif /* EXT2FS_HTREE */ if (dp->i_count == 0) { /* Modified: stable/9/sys/fs/ext2fs/ext2_subr.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_subr.c Fri Jan 31 03:58:36 2014 (r261311) +++ stable/9/sys/fs/ext2fs/ext2_subr.c Fri Jan 31 03:59:28 2014 (r261312) @@ -82,10 +82,10 @@ ext2_blkatoff(struct vnode *vp, off_t of *bpp = NULL; /* - * The EXT4_EXTENTS requires special treatment, otherwise we can - * fall back to the normal path. + * IN_E4EXTENTS requires special treatment as we can otherwise fall + * back to the normal path. */ - if (!(ip->i_flags & EXT4_EXTENTS)) + if (!(ip->i_flag & IN_E4EXTENTS)) goto normal; memset(&path, 0, sizeof(path)); @@ -110,7 +110,7 @@ ext2_blkatoff(struct vnode *vp, off_t of if (res) *res = (char *)bp->b_data + blkoff(fs, offset); /* - * If EXT4_EXTENTS is enabled we would get a wrong offset so + * If IN_E4EXTENTS is enabled we would get a wrong offset so * reset b_offset here. */ bp->b_offset = lbn * bsize; Modified: stable/9/sys/fs/ext2fs/ext2_vfsops.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_vfsops.c Fri Jan 31 03:58:36 2014 (r261311) +++ stable/9/sys/fs/ext2fs/ext2_vfsops.c Fri Jan 31 03:59:28 2014 (r261312) @@ -973,10 +973,10 @@ ext2_vget(struct mount *mp, ino_t ino, i * blocks are zeroed out - ext2_balloc depends on this * although for regular files and directories only * - * If EXT4_EXTENTS flag is enabled, unused blocks aren't - * zeroed out because we could corrupt the extent tree. + * If IN_E4EXTENTS is enabled, unused blocks are not zeroed + * out because we could corrupt the extent tree. */ - if (!(ip->i_flags & EXT4_EXTENTS) && + if (!(ip->i_flag & IN_E4EXTENTS) && (S_ISDIR(ip->i_mode) || S_ISREG(ip->i_mode))) { used_blocks = (ip->i_size+fs->e2fs_bsize-1) / fs->e2fs_bsize; for (i = used_blocks; i < EXT2_NDIR_BLOCKS; i++) Modified: stable/9/sys/fs/ext2fs/ext2_vnops.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_vnops.c Fri Jan 31 03:58:36 2014 (r261311) +++ stable/9/sys/fs/ext2fs/ext2_vnops.c Fri Jan 31 03:59:28 2014 (r261312) @@ -1621,7 +1621,7 @@ ext2_read(struct vop_read_args *ap) ip = VTOI(vp); /*EXT4_EXT_LOCK(ip);*/ - if (ip->i_flags & EXT4_EXTENTS) + if (ip->i_flag & IN_E4EXTENTS) error = ext4_ext_read(ap); else error = ext2_ind_read(ap); Modified: stable/9/sys/fs/ext2fs/inode.h ============================================================================== --- stable/9/sys/fs/ext2fs/inode.h Fri Jan 31 03:58:36 2014 (r261311) +++ stable/9/sys/fs/ext2fs/inode.h Fri Jan 31 03:59:28 2014 (r261312) @@ -153,6 +153,13 @@ struct inode { #define IN_LAZYACCESS 0x0100 /* Process IN_ACCESS after the suspension finished */ +/* + * These are translation flags for some attributes that Ext4 + * passes as inode flags but that we cannot pass directly. + */ +#define IN_E4INDEX 0x010000 +#define IN_E4EXTENTS 0x020000 + #define i_devvp i_ump->um_devvp #ifdef _KERNEL From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 04:05:25 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AF561CE1; Fri, 31 Jan 2014 04:05:25 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 9A8E715F4; Fri, 31 Jan 2014 04:05:25 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V45PZ4098848; Fri, 31 Jan 2014 04:05:25 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V45PUu098847; Fri, 31 Jan 2014 04:05:25 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201401310405.s0V45PUu098847@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Fri, 31 Jan 2014 04:05:25 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261313 - stable/10/sys/fs/ext2fs X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 04:05:25 -0000 Author: pfg Date: Fri Jan 31 04:05:25 2014 New Revision: 261313 URL: http://svnweb.freebsd.org/changeset/base/261313 Log: MFC r261136: ext2fs: Re-enable reallocblk. The major corruption issues affecting this code have been fixed. Tested by: Mike Ma Modified: stable/10/sys/fs/ext2fs/ext2_alloc.c Modified: stable/10/sys/fs/ext2fs/ext2_alloc.c ============================================================================== --- stable/10/sys/fs/ext2fs/ext2_alloc.c Fri Jan 31 03:59:28 2014 (r261312) +++ stable/10/sys/fs/ext2fs/ext2_alloc.c Fri Jan 31 04:05:25 2014 (r261313) @@ -147,11 +147,11 @@ nospace: static SYSCTL_NODE(_vfs, OID_AUTO, ext2fs, CTLFLAG_RW, 0, "EXT2FS filesystem"); -static int doasyncfree = 0; +static int doasyncfree = 1; SYSCTL_INT(_vfs_ext2fs, OID_AUTO, doasyncfree, CTLFLAG_RW, &doasyncfree, 0, "Use asychronous writes to update block pointers when freeing blocks"); -static int doreallocblks = 0; +static int doreallocblks = 1; SYSCTL_INT(_vfs_ext2fs, OID_AUTO, doreallocblks, CTLFLAG_RW, &doreallocblks, 0, ""); int From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 04:06:01 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 098BCE1D; Fri, 31 Jan 2014 04:06:01 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E912915FE; Fri, 31 Jan 2014 04:06:00 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V460sL098975; Fri, 31 Jan 2014 04:06:00 GMT (envelope-from pfg@svn.freebsd.org) Received: (from pfg@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V460xF098974; Fri, 31 Jan 2014 04:06:00 GMT (envelope-from pfg@svn.freebsd.org) Message-Id: <201401310406.s0V460xF098974@svn.freebsd.org> From: "Pedro F. Giffuni" Date: Fri, 31 Jan 2014 04:06:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261314 - stable/9/sys/fs/ext2fs X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 04:06:01 -0000 Author: pfg Date: Fri Jan 31 04:06:00 2014 New Revision: 261314 URL: http://svnweb.freebsd.org/changeset/base/261314 Log: MFC r261136: ext2fs: Re-enable reallocblk. The major corruption issues affecting this code have been fixed. Tested by: Mike Ma Modified: stable/9/sys/fs/ext2fs/ext2_alloc.c Directory Properties: stable/9/sys/ (props changed) stable/9/sys/fs/ (props changed) Modified: stable/9/sys/fs/ext2fs/ext2_alloc.c ============================================================================== --- stable/9/sys/fs/ext2fs/ext2_alloc.c Fri Jan 31 04:05:25 2014 (r261313) +++ stable/9/sys/fs/ext2fs/ext2_alloc.c Fri Jan 31 04:06:00 2014 (r261314) @@ -147,11 +147,11 @@ nospace: static SYSCTL_NODE(_vfs, OID_AUTO, ext2fs, CTLFLAG_RW, 0, "EXT2FS filesystem"); -static int doasyncfree = 0; +static int doasyncfree = 1; SYSCTL_INT(_vfs_ext2fs, OID_AUTO, doasyncfree, CTLFLAG_RW, &doasyncfree, 0, "Use asychronous writes to update block pointers when freeing blocks"); -static int doreallocblks = 0; +static int doreallocblks = 1; SYSCTL_INT(_vfs_ext2fs, OID_AUTO, doreallocblks, CTLFLAG_RW, &doreallocblks, 0, ""); int From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 07:14:22 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8E6C16B5; Fri, 31 Jan 2014 07:14:22 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 7A5C111A6; Fri, 31 Jan 2014 07:14:22 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V7EMhg071452; Fri, 31 Jan 2014 07:14:22 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V7EM3p071451; Fri, 31 Jan 2014 07:14:22 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201401310714.s0V7EM3p071451@svn.freebsd.org> From: Hans Petter Selasky Date: Fri, 31 Jan 2014 07:14:22 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261315 - head/sys/dev/usb/input X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 07:14:22 -0000 Author: hselasky Date: Fri Jan 31 07:14:21 2014 New Revision: 261315 URL: http://svnweb.freebsd.org/changeset/base/261315 Log: Fix for unexpected selection with two fingers sometimes. Fix for unexpected scrolling when click with two fingers. Submitted by: Huang Wen Hui MFC after: 1 week Modified: head/sys/dev/usb/input/wsp.c Modified: head/sys/dev/usb/input/wsp.c ============================================================================== --- head/sys/dev/usb/input/wsp.c Fri Jan 31 04:06:00 2014 (r261314) +++ head/sys/dev/usb/input/wsp.c Fri Jan 31 07:14:21 2014 (r261315) @@ -605,7 +605,8 @@ struct wsp_softc { int dz_count; #define WSP_DZ_MAX_COUNT 32 int dt_sum; /* T-axis cumulative movement */ - + + uint8_t o_ntouch; /* old touch finger status */ uint8_t finger; /* 0 or 1 *, check which finger moving */ uint16_t intr_count; #define WSP_TAP_THRESHOLD 3 @@ -871,7 +872,6 @@ wsp_intr_callback(struct usb_xfer *xfer, int dx = 0; int dy = 0; int dz = 0; - int n = 0; int len; int i; @@ -936,13 +936,9 @@ wsp_intr_callback(struct usb_xfer *xfer, f[i].tool_major, f[i].tool_minor, f[i].orientation, f[i].touch_major, f[i].touch_minor, f[i].multi); - if (f[i].touch_major < tun.pressure_untouch_threshold) - continue; - - sc->pos_x[n] = f[i].abs_x; - sc->pos_y[n] = params->y.min + params->y.max - f[i].abs_y; - sc->index[n] = &f[i]; - n++; + sc->pos_x[i] = f[i].abs_x; + sc->pos_y[i] = params->y.min + params->y.max - f[i].abs_y; + sc->index[i] = &f[i]; } sc->sc_status.flags &= ~MOUSE_POSCHANGED; @@ -957,8 +953,8 @@ wsp_intr_callback(struct usb_xfer *xfer, if (h->q2 == 4) sc->intr_count++; - if (sc->ntaps < n) { - switch (n) { + if (sc->ntaps < ntouch) { + switch (ntouch) { case 1: if (f[0].touch_major > tun.pressure_tap_threshold) sc->ntaps = 1; @@ -978,7 +974,7 @@ wsp_intr_callback(struct usb_xfer *xfer, break; } } - if (n == 2) { + if (ntouch == 2) { sc->distance = max(sc->distance, max( abs(sc->pos_x[0] - sc->pos_x[1]), abs(sc->pos_y[0] - sc->pos_y[1]))); @@ -1050,15 +1046,34 @@ wsp_intr_callback(struct usb_xfer *xfer, if (sc->sc_touch == WSP_SECOND_TOUCH) sc->sc_touch = WSP_TOUCHING; - if (n != 0 && + if (ntouch != 0 && h->q2 == 4 && f[0].touch_major >= tun.pressure_touch_threshold) { dx = sc->pos_x[0] - sc->pre_pos_x; dy = sc->pos_y[0] - sc->pre_pos_y; - if (n == 2 && sc->sc_status.button != 0) { + + /* Ignore movement from ibt=1 to ibt=0 */ + if (sc->sc_status.obutton != 0 && + sc->sc_status.button == 0) { + dx = 0; + dy = 0; + } + /* Ignore movement if ntouch changed */ + if (sc->o_ntouch != ntouch) { + dx = 0; + dy = 0; + } + + if (ntouch == 2 && sc->sc_status.button != 0) { dx = sc->pos_x[sc->finger] - sc->pre_pos_x; dy = sc->pos_y[sc->finger] - sc->pre_pos_y; - if (f[0].origin == 0 || f[1].origin == 0) { + + /* + * Ignore movement of switch finger or + * movement from ibt=0 to ibt=1 + */ + if (f[0].origin == 0 || f[1].origin == 0 || + sc->sc_status.obutton != sc->sc_status.button) { dx = 0; dy = 0; sc->finger = 0; @@ -1092,7 +1107,7 @@ wsp_intr_callback(struct usb_xfer *xfer, sc->dx_sum += dx; sc->dy_sum += dy; - if (n == 2 && sc->sc_status.button == 0) { + if (ntouch == 2 && sc->sc_status.button == 0) { if (sc->scr_mode == WSP_SCR_NONE && abs(sc->dx_sum) + abs(sc->dy_sum) > 50) sc->scr_mode = abs(sc->dx_sum) > @@ -1134,10 +1149,12 @@ wsp_intr_callback(struct usb_xfer *xfer, sc->pre_pos_x = sc->pos_x[0]; sc->pre_pos_y = sc->pos_y[0]; - if (n == 2 && sc->sc_status.button != 0) { + if (ntouch == 2 && sc->sc_status.button != 0) { sc->pre_pos_x = sc->pos_x[sc->finger]; sc->pre_pos_y = sc->pos_y[sc->finger]; } + sc->o_ntouch = ntouch; + case USB_ST_SETUP: tr_setup: /* check if we can put more data into the FIFO */ From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 07:27:28 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D8FED1DC; Fri, 31 Jan 2014 07:27:28 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C43AB1277; Fri, 31 Jan 2014 07:27:28 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V7RSnx076254; Fri, 31 Jan 2014 07:27:28 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V7RS0U076253; Fri, 31 Jan 2014 07:27:28 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201401310727.s0V7RS0U076253@svn.freebsd.org> From: Xin LI Date: Fri, 31 Jan 2014 07:27:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261316 - vendor-sys/illumos/dist/uts/common/fs/zfs X-SVN-Group: vendor-sys MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 07:27:28 -0000 Author: delphij Date: Fri Jan 31 07:27:28 2014 New Revision: 261316 URL: http://svnweb.freebsd.org/changeset/base/261316 Log: 4504 traverse_visitbp: visit DMU_GROUPUSED_OBJECT before DMU_USERUSED_OBJECT illumos/illumos-gate@48f1b90e649df6b08a86b1f8128c2bdf4a617a5c Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/dmu_traverse.c Modified: vendor-sys/illumos/dist/uts/common/fs/zfs/dmu_traverse.c ============================================================================== --- vendor-sys/illumos/dist/uts/common/fs/zfs/dmu_traverse.c Fri Jan 31 07:14:21 2014 (r261315) +++ vendor-sys/illumos/dist/uts/common/fs/zfs/dmu_traverse.c Fri Jan 31 07:27:28 2014 (r261316) @@ -351,9 +351,9 @@ traverse_visitbp(traverse_data_t *td, co prefetch_dnode_metadata(td, dnp, zb->zb_objset, DMU_META_DNODE_OBJECT); if (arc_buf_size(buf) >= sizeof (objset_phys_t)) { - prefetch_dnode_metadata(td, &osp->os_userused_dnode, - zb->zb_objset, DMU_USERUSED_OBJECT); prefetch_dnode_metadata(td, &osp->os_groupused_dnode, + zb->zb_objset, DMU_GROUPUSED_OBJECT); + prefetch_dnode_metadata(td, &osp->os_userused_dnode, zb->zb_objset, DMU_USERUSED_OBJECT); } @@ -364,18 +364,18 @@ traverse_visitbp(traverse_data_t *td, co err = 0; } if (err == 0 && arc_buf_size(buf) >= sizeof (objset_phys_t)) { - dnp = &osp->os_userused_dnode; + dnp = &osp->os_groupused_dnode; err = traverse_dnode(td, dnp, zb->zb_objset, - DMU_USERUSED_OBJECT); + DMU_GROUPUSED_OBJECT); } if (err && hard) { lasterr = err; err = 0; } if (err == 0 && arc_buf_size(buf) >= sizeof (objset_phys_t)) { - dnp = &osp->os_groupused_dnode; + dnp = &osp->os_userused_dnode; err = traverse_dnode(td, dnp, zb->zb_objset, - DMU_GROUPUSED_OBJECT); + DMU_USERUSED_OBJECT); } } From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 07:56:05 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1B1F1AF4; Fri, 31 Jan 2014 07:56:05 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E13E2149B; Fri, 31 Jan 2014 07:56:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V7u450087730; Fri, 31 Jan 2014 07:56:04 GMT (envelope-from delphij@svn.freebsd.org) Received: (from delphij@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V7u4Qv087729; Fri, 31 Jan 2014 07:56:04 GMT (envelope-from delphij@svn.freebsd.org) Message-Id: <201401310756.s0V7u4Qv087729@svn.freebsd.org> From: Xin LI Date: Fri, 31 Jan 2014 07:56:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261317 - head/sys/cddl/contrib/opensolaris X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 07:56:05 -0000 Author: delphij Date: Fri Jan 31 07:56:04 2014 New Revision: 261317 URL: http://svnweb.freebsd.org/changeset/base/261317 Log: Note that r261316 is already done independently by avg@ in r260812. Modified: Directory Properties: head/sys/cddl/contrib/opensolaris/ (props changed) From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 08:48:26 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 56A0EB5D; Fri, 31 Jan 2014 08:48:26 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 2879917E3; Fri, 31 Jan 2014 08:48:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0V8mQTo008572; Fri, 31 Jan 2014 08:48:26 GMT (envelope-from maxim@svn.freebsd.org) Received: (from maxim@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0V8mQtU008571; Fri, 31 Jan 2014 08:48:26 GMT (envelope-from maxim@svn.freebsd.org) Message-Id: <201401310848.s0V8mQtU008571@svn.freebsd.org> From: Maxim Konovalov Date: Fri, 31 Jan 2014 08:48:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261318 - head/share/misc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 08:48:26 -0000 Author: maxim Date: Fri Jan 31 08:48:25 2014 New Revision: 261318 URL: http://svnweb.freebsd.org/changeset/base/261318 Log: o NetBSD 6.1.3 added. Modified: head/share/misc/bsd-family-tree Modified: head/share/misc/bsd-family-tree ============================================================================== --- head/share/misc/bsd-family-tree Fri Jan 31 07:56:04 2014 (r261317) +++ head/share/misc/bsd-family-tree Fri Jan 31 08:48:25 2014 (r261318) @@ -284,23 +284,17 @@ FreeBSD 5.2 | | | | 8.4 | | NetBSD 6.1.1 | | | | | | | | | | FreeBSD | | NetBSD 6.1.2 | | - | 9.2 Mac OS X | | | - | 10.9 | OpenBSD 5.4 | - | | | | DragonFly 3.6.0 + | 9.2 Mac OS X | | | | + | 10.9 | | OpenBSD 5.4 | + | | | | | DragonFly 3.6.0 + | | | | | | + *--FreeBSD | | NetBSD 6.1.3 | | + | 10.0 | | | | | | | | | | | | | | +FreeBSD 11 -current | NetBSD -current OpenBSD -current | | | | | | - | | | | | - | | NetBSD -current OpenBSD -current | - | | | | | - | v v v v - | - *--FreeBSD - | 10.0 - | - | -FreeBSD 11 -current - v + v v v v v Time ---------------- @@ -616,6 +610,7 @@ Mac OS X 10.9 2013-10-22 [APL] OpenBSD 5.4 2013-11-01 [OBD] DragonFly 3.6.0 2013-11-25 [DFB] FreeBSD 10.0 2014-01-20 [FBD] +NetBSD 6.1.3 2014-01-27 [NBD] Bibliography ------------------------ From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 12:26:32 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 56DE7FD9; Fri, 31 Jan 2014 12:26:32 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 40E0E1A42; Fri, 31 Jan 2014 12:26:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VCQWZA096055; Fri, 31 Jan 2014 12:26:32 GMT (envelope-from uqs@svn.freebsd.org) Received: (from uqs@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VCQVZW096049; Fri, 31 Jan 2014 12:26:31 GMT (envelope-from uqs@svn.freebsd.org) Message-Id: <201401311226.s0VCQVZW096049@svn.freebsd.org> From: Ulrich Spoerlein Date: Fri, 31 Jan 2014 12:26:31 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261319 - in head: contrib/groff/tmac gnu/usr.bin/groff/tmac X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 12:26:32 -0000 Author: uqs Date: Fri Jan 31 12:26:30 2014 New Revision: 261319 URL: http://svnweb.freebsd.org/changeset/base/261319 Log: Pull up vendor changes up to 2014-01-29 - move local overrides into mdoc.local - syncs us with git commit 819839b66c80e8dabe6cb24ea6319c26c9a2be14 Discussed with: ru MFC after: 2 weeks Modified: head/contrib/groff/tmac/doc-common head/contrib/groff/tmac/doc-syms head/contrib/groff/tmac/doc.tmac head/contrib/groff/tmac/groff_mdoc.man head/gnu/usr.bin/groff/tmac/mdoc.local Modified: head/contrib/groff/tmac/doc-common ============================================================================== --- head/contrib/groff/tmac/doc-common Fri Jan 31 08:48:25 2014 (r261318) +++ head/contrib/groff/tmac/doc-common Fri Jan 31 12:26:30 2014 (r261319) @@ -37,6 +37,7 @@ . .nr %A 1 .nr %B 1 +.nr %C 1 .nr %D 1 .nr %I 1 .nr %J 1 @@ -484,7 +485,15 @@ .ds doc-operating-system-NetBSD-5.0.1 5.0.1 .ds doc-operating-system-NetBSD-5.0.2 5.0.2 .ds doc-operating-system-NetBSD-5.1 5.1 +.ds doc-operating-system-NetBSD-5.1.2 5.1.2 +.ds doc-operating-system-NetBSD-5.1.3 5.1.3 +.ds doc-operating-system-NetBSD-5.2 5.2 +.ds doc-operating-system-NetBSD-5.2.1 5.2.1 .ds doc-operating-system-NetBSD-6.0 6.0 +.ds doc-operating-system-NetBSD-6.0.1 6.0.1 +.ds doc-operating-system-NetBSD-6.0.2 6.0.2 +.ds doc-operating-system-NetBSD-6.0.3 6.0.3 +.ds doc-operating-system-NetBSD-6.1 6.1 . .ds doc-operating-system-OpenBSD-2.0 2.0 .ds doc-operating-system-OpenBSD-2.1 2.1 @@ -517,6 +526,10 @@ .ds doc-operating-system-OpenBSD-4.8 4.8 .ds doc-operating-system-OpenBSD-4.9 4.9 .ds doc-operating-system-OpenBSD-5.0 5.0 +.ds doc-operating-system-OpenBSD-5.1 5.1 +.ds doc-operating-system-OpenBSD-5.2 5.2 +.ds doc-operating-system-OpenBSD-5.3 5.3 +.ds doc-operating-system-OpenBSD-5.4 5.4 . .ds doc-operating-system-FreeBSD-1.0 1.0 .ds doc-operating-system-FreeBSD-1.1 1.1 @@ -535,6 +548,7 @@ .ds doc-operating-system-FreeBSD-2.2.6 2.2.6 .ds doc-operating-system-FreeBSD-2.2.7 2.2.7 .ds doc-operating-system-FreeBSD-2.2.8 2.2.8 +.ds doc-operating-system-FreeBSD-2.2.9 2.2.9 .ds doc-operating-system-FreeBSD-3.0 3.0 .ds doc-operating-system-FreeBSD-3.1 3.1 .ds doc-operating-system-FreeBSD-3.2 3.2 @@ -575,6 +589,7 @@ .ds doc-operating-system-FreeBSD-8.1 8.1 .ds doc-operating-system-FreeBSD-8.2 8.2 .ds doc-operating-system-FreeBSD-9.0 9.0 +.ds doc-operating-system-FreeBSD-10.0 10.0 . .ds doc-operating-system-Darwin-8.0.0 8.0.0 .ds doc-operating-system-Darwin-8.1.0 8.1.0 @@ -613,21 +628,37 @@ .ds doc-operating-system-DragonFly-1.4 1.4 .ds doc-operating-system-DragonFly-1.5 1.5 .ds doc-operating-system-DragonFly-1.6 1.6 +.ds doc-operating-system-DragonFly-1.7 1.7 .ds doc-operating-system-DragonFly-1.8 1.8 .ds doc-operating-system-DragonFly-1.8.1 1.8.1 +.ds doc-operating-system-DragonFly-1.9 1.9 .ds doc-operating-system-DragonFly-1.10 1.10 +.ds doc-operating-system-DragonFly-1.11 1.11 .ds doc-operating-system-DragonFly-1.12 1.12 .ds doc-operating-system-DragonFly-1.12.2 1.12.2 +.ds doc-operating-system-DragonFly-1.13 1.13 .ds doc-operating-system-DragonFly-2.0 2.0 +.ds doc-operating-system-DragonFly-2.1 2.1 .ds doc-operating-system-DragonFly-2.2 2.2 +.ds doc-operating-system-DragonFly-2.3 2.3 .ds doc-operating-system-DragonFly-2.4 2.4 +.ds doc-operating-system-DragonFly-2.5 2.5 .ds doc-operating-system-DragonFly-2.6 2.6 +.ds doc-operating-system-DragonFly-2.7 2.7 .ds doc-operating-system-DragonFly-2.8 2.8 .ds doc-operating-system-DragonFly-2.9 2.9 .ds doc-operating-system-DragonFly-2.9.1 2.9.1 .ds doc-operating-system-DragonFly-2.10 2.10 .ds doc-operating-system-DragonFly-2.10.1 2.10.1 .ds doc-operating-system-DragonFly-2.11 2.11 +.ds doc-operating-system-DragonFly-3.0 3.0 +.ds doc-operating-system-DragonFly-3.1 3.1 +.ds doc-operating-system-DragonFly-3.2 3.2 +.ds doc-operating-system-DragonFly-3.3 3.3 +.ds doc-operating-system-DragonFly-3.4 3.4 +.ds doc-operating-system-DragonFly-3.5 3.5 +.ds doc-operating-system-DragonFly-3.6 3.6 +.ds doc-operating-system-DragonFly-3.7 3.7 . .de Os . ds doc-command-name Modified: head/contrib/groff/tmac/doc-syms ============================================================================== --- head/contrib/groff/tmac/doc-syms Fri Jan 31 08:48:25 2014 (r261318) +++ head/contrib/groff/tmac/doc-syms Fri Jan 31 12:26:30 2014 (r261319) @@ -812,7 +812,6 @@ .ds doc-str-Lb-librpcsec_gss RPC GSS-API Authentication Library (librpcsec_gss, \-lrpcsec_gss) .ds doc-str-Lb-librpcsvc RPC Service Library (librpcsvc, \-lrpcsvc) .ds doc-str-Lb-librt \*[Px] \*[doc-str-Lb]Real-time Library (librt, \-lrt) -.ds doc-str-Lb-libsbuf Safe String Composition Library (libsbuf, \-lsbuf) .ds doc-str-Lb-libsdp Bluetooth Service Discovery Protocol User Library (libsdp, \-lsdp) .ds doc-str-Lb-libssp Buffer Overflow Protection Library (libssp, \-lssp) .ds doc-str-Lb-libSystem System Library (libSystem, \-lSystem) Modified: head/contrib/groff/tmac/doc.tmac ============================================================================== --- head/contrib/groff/tmac/doc.tmac Fri Jan 31 08:48:25 2014 (r261318) +++ head/contrib/groff/tmac/doc.tmac Fri Jan 31 12:26:30 2014 (r261319) @@ -3423,6 +3423,8 @@ . . nr doc-book-count-saved \n[doc-book-count] . ds doc-book-name-saved "\*[doc-book-name] +. nr doc-city-count-saved \n[doc-city-count] +. ds doc-city-name-saved "\*[doc-city-name] . nr doc-date-count-saved \n[doc-date-count] . ds doc-date-saved "\*[doc-date] . nr doc-publisher-count-saved \n[doc-publisher-count] @@ -3565,6 +3567,8 @@ . . nr doc-book-count \n[doc-book-count-saved] . ds doc-book-name "\*[doc-book-name-saved] +. nr doc-city-count \n[doc-city-count-saved] +. ds doc-city-name "\*[doc-city-name-saved] . nr doc-date-count \n[doc-date-count-saved] . ds doc-date "\*[doc-date-saved] . nr doc-publisher-count \n[doc-publisher-count-saved] @@ -5190,6 +5194,8 @@ .\" NS doc-author-nameXXX .\" NS doc-book-count .\" NS doc-book-name +.\" NS doc-city-count +.\" NS doc-city-name .\" NS doc-corporate-count .\" NS doc-corporate-name .\" NS doc-date @@ -5228,6 +5234,7 @@ . nr doc-reference-title-count 0 . nr doc-url-count 0 . nr doc-volume-count 0 +. nr doc-city-count 0 . nr doc-date-count 0 . nr doc-page-number-count 0 . nr doc-book-count 0 @@ -5243,6 +5250,7 @@ . ds doc-reference-title-name-for-book . ds doc-url-name . ds doc-volume-name +. ds doc-city-name . ds doc-date . ds doc-page-number-string . ds doc-book-name @@ -5357,6 +5365,13 @@ . doc-finish-reference \n[doc-corporate-count] . \} . +. if \n[doc-city-count] \{\ +. unformat doc-city-name +. chop doc-city-name +. nop \*[doc-city-name]\c +. doc-finish-reference \n[doc-city-count] +. \} +. . if \n[doc-date-count] \{\ . unformat doc-date . chop doc-date @@ -5528,6 +5543,60 @@ .. . . +.\" NS doc-city-count global register +.\" NS counter of city references +. +.nr doc-city-count 0 +. +. +.\" NS doc-city-name global box +.\" NS string of collected city references +. +.ds doc-city-name +. +. +.\" NS %C user macro +.\" NS [reference] city +.\" NS +.\" NS modifies: +.\" NS doc-arg-ptr +.\" NS doc-curr-font +.\" NS doc-curr-size +.\" NS doc-city-count +.\" NS doc-macro-name +.\" NS doc-reference-count +.\" NS +.\" NS local variables: +.\" NS doc-env-%C +.\" NS +.\" NS width register `%C' set in doc-common +. +.de %C +. if (\n[doc-arg-limit] : (\n[.$] == 0)) \{\ +. tm Usage: .%C city_name ... (#\n[.c]) +. return +. \} +. +. nr doc-city-count +1 +. nr doc-reference-count +1 +. +. ds doc-macro-name %C +. doc-parse-args \$@ +. +. nr doc-arg-ptr +1 +. nr doc-curr-font \n[.f] +. nr doc-curr-size \n[.ps] +. +. \" append to reference box +. boxa doc-city-name +. ev doc-env-%C +. evc 0 +. in 0 +. nf +. doc-do-references +.. +. +. .\" NS doc-date-count global register .\" NS counter of date references . Modified: head/contrib/groff/tmac/groff_mdoc.man ============================================================================== --- head/contrib/groff/tmac/groff_mdoc.man Fri Jan 31 08:48:25 2014 (r261318) +++ head/contrib/groff/tmac/groff_mdoc.man Fri Jan 31 12:26:30 2014 (r261319) @@ -1,3 +1,4 @@ +.\" t .\" groff_mdoc.man .\" .\" A complete reference of the mdoc macro package for GNU troff. @@ -613,10 +614,10 @@ These commands identify the page and are The remaining items in the template are section headers .Pf ( Li .Sh ) ; of which -.Sx NAME , -.Sx SYNOPSIS , +.Em NAME , +.Em SYNOPSIS , and -.Sx DESCRIPTION +.Em DESCRIPTION are mandatory. The headers are discussed in .Sx "PAGE STRUCTURE DOMAIN" , @@ -723,34 +724,36 @@ Under .Tn \*[operating-system] , the following sections are defined: .Pp -.Bl -column LOCAL -offset indent -compact -.It Li 1 Ta "\*[volume-operating-system] \*[volume-ds-1]" -.It Li 2 Ta "\*[volume-operating-system] \*[volume-ds-2]" -.It Li 3 Ta "\*[volume-operating-system] \*[volume-ds-3]" -.It Li 4 Ta "\*[volume-operating-system] \*[volume-ds-4]" -.It Li 5 Ta "\*[volume-operating-system] \*[volume-ds-5]" -.It Li 6 Ta "\*[volume-operating-system] \*[volume-ds-6]" -.It Li 7 Ta "\*[volume-operating-system] \*[volume-ds-7]" -.It Li 8 Ta "\*[volume-operating-system] \*[volume-ds-8]" -.It Li 9 Ta "\*[volume-operating-system] \*[volume-ds-9]" -.El +.TS +l l l. +1 \*[volume-operating-system] \*[volume-ds-1] +2 \*[volume-operating-system] \*[volume-ds-2] +3 \*[volume-operating-system] \*[volume-ds-3] +4 \*[volume-operating-system] \*[volume-ds-4] +5 \*[volume-operating-system] \*[volume-ds-5] +6 \*[volume-operating-system] \*[volume-ds-6] +7 \*[volume-operating-system] \*[volume-ds-7] +8 \*[volume-operating-system] \*[volume-ds-8] +9 \*[volume-operating-system] \*[volume-ds-9] +.TE .Pp . A volume name may be arbitrary or one of the following: . .Pp -.Bl -column LOCAL -offset indent -compact -.It Li USD Ta "\*[volume-ds-USD]" -.It Li PS1 Ta "\*[volume-ds-PS1]" -.It Li AMD Ta "\*[volume-ds-AMD]" -.It Li SMM Ta "\*[volume-ds-SMM]" -.It Li URM Ta "\*[volume-ds-URM]" -.It Li PRM Ta "\*[volume-ds-PRM]" -.It Li KM Ta "\*[volume-ds-KM]" -.It Li IND Ta "\*[volume-ds-IND]" -.It Li LOCAL Ta "\*[volume-ds-LOCAL]" -.It Li CON Ta "\*[volume-ds-CON]" -.El +.TS +l l. +USD \*[volume-ds-USD] +PS1 \*[volume-ds-PS1] +AMD \*[volume-ds-AMD] +SMM \*[volume-ds-SMM] +URM \*[volume-ds-URM] +PRM \*[volume-ds-PRM] +KM \*[volume-ds-KM] +IND \*[volume-ds-IND] +LOCAL \*[volume-ds-LOCAL] +CON \*[volume-ds-CON] +.TE .Pp . For compatibility, @@ -1208,7 +1211,7 @@ documented, or the name of the author of The default width is 12n. .Pp In the -.Sx AUTHORS +.Em AUTHORS section, the .Ql .An command causes a line break allowing each new name to appear on its own @@ -1834,7 +1837,7 @@ then denotes the keyword to be used with macro. .Pp In the -.Sx LIBRARY +.Em LIBRARY section an .Ql .Lb command causes a line break before and after its arguments are printed. @@ -1882,7 +1885,7 @@ section. Note: A section two or three document function name is addressed with the .Ql .Nm in the -.Sx NAME +.Em NAME section, and with .Ql .Fn in the @@ -2398,20 +2401,20 @@ respectively. .if t \ . ne 10 . -.Bd -filled -offset 4n -.Bl -column "quote" "close" "open" "Angle Bracket Enclosure" "`string' or string" -.Em Quote Ta Em Open Ta Em Close Ta Em Function Ta Em Result -.No .Aq Ta .Ao Ta .Ac Ta "Angle Bracket Enclosure" Ta Ao string Ac -.No .Bq Ta .Bo Ta .Bc Ta "Bracket Enclosure" Ta Bo string Bc -.No .Brq Ta .Bro Ta .Brc Ta "Brace Enclosure" Ta Bro string Brc -.No .Dq Ta .Do Ta .Dc Ta "Double Quote" Ta Do string Dc -.No .Eq Ta .Eo Ta .Ec Ta "Enclose String (in XX)" Ta XXstringXX -.No .Pq Ta .Po Ta .Pc Ta "Parenthesis Enclosure" Ta Po string Pc -.No .Ql Ta Ta Ta "Quoted Literal" Ta So string Sc or Li string -.No .Qq Ta .Qo Ta .Qc Ta "Straight Double Quote" Ta Qo string Qc -.No .Sq Ta .So Ta .Sc Ta "Single Quote" Ta So string Sc -.El -.Ed +.TS +lb lb lb lb lb +l l l l l. +Quote Open Close Function Result +\&.Aq .Ao .Ac Angle Bracket Enclosure +\&.Bq .Bo .Bc Bracket Enclosure [string] +\&.Brq .Bro .Brc Brace Enclosure {string} +\&.Dq .Do .Dc Double Quote "string" +\&.Eq .Eo .Ec Enclose String (in XX) XXstring +\&.Pq .Po .Pc Parenthesis Enclosure (string) +\&.Ql Quoted Literal \*[Lq]string\*[Rq] or string +\&.Qq .Qo .Qc Straight Double Quote "string" +\&.Sq .So .Sc Single Quote 'string' +.TE .Pp All macros ending with .Sq q @@ -2634,7 +2637,7 @@ Reference author name; one name per invo .It Li .%B Book title. .It Li .%C -City/place (not implemented yet). +City/place. .It Li .%D Date. .It Li .%I @@ -2681,7 +2684,8 @@ Example: \&.%A "John Foo" \&.%T "Implementation Notes on foobar(1)" \&.%R "Technical Report ABC\-DE\-12\-345" -\&.%Q "Drofnats College, Nowhere" +\&.%Q "Drofnats College" +\&.%C "Nowhere" \&.%D "April 1991" \&.Re .Ed @@ -2694,7 +2698,8 @@ produces .%A "John Foo" .%T "Implementation Notes on foobar(1)" .%R "Technical Report ABC-DE-12-345" -.%Q "Drofnats College, Nowhere" +.%Q "Drofnats College" +.%C "Nowhere" .%D "April 1991" .Re .Ed @@ -2839,7 +2844,7 @@ macro is mandatory. If not specified, headers, footers and page layout defaults will not be set and things will be rather unpleasant. The -.Sx NAME +.Em NAME section consists of at least three items. The first is the .Ql .Nm @@ -2949,7 +2954,7 @@ They are listed in the order in which th .Bl -tag -width ".Li .Sh\ COMPATIBILITY" .It Li ".Sh ENVIRONMENT" The -.Sx ENVIRONMENT +.Em ENVIRONMENT section should reveal any related environment variables and clues to their behavior and/or usage. . @@ -2964,7 +2969,7 @@ section. .It Li ".Sh EXAMPLES" There are several ways to create examples. See the -.Sx EXAMPLES +.Em EXAMPLES section below for details. . .It Li ".Sh DIAGNOSTICS" @@ -3019,7 +3024,7 @@ or this should be noted here. If the command does not adhere to any standard, its history should be noted in the -.Sx HISTORY +.Em HISTORY section. . .It Li ".Sh HISTORY" @@ -4045,28 +4050,30 @@ It is neither callable nor parsed and ta . The following strings are predefined: .Pp -.Bl -column String infinity "Troff " "straight double quote" -offset indent -.It Sy String Ta Sy Nroff Ta Sy Troff Ta Sy Meaning -.It Li <= Ta <= Ta \*[<=] Ta "less equal" -.It Li >= Ta >= Ta \*[>=] Ta "greater equal" -.It Li Rq Ta '' Ta \*[Rq] Ta "right double quote" -.It Li Lq Ta `` Ta \*[Lq] Ta "left double quote" -.It Li ua Ta ^ Ta \*[ua] Ta "upwards arrow" -.It Li aa Ta \' Ta \*[aa] Ta "acute accent" -.It Li ga Ta \` Ta \*[ga] Ta "grave accent" -.It Li q Ta \&" Ta \*[q] Ta "straight double quote" -.It Li Pi Ta pi Ta \*[Pi] Ta "greek pi" -.It Li Ne Ta != Ta \*[Ne] Ta "not equal" -.It Li Le Ta <= Ta \*[Le] Ta "less equal" -.It Li Ge Ta >= Ta \*[Ge] Ta "greater equal" -.It Li Lt Ta < Ta \*[Lt] Ta "less than" -.It Li Gt Ta > Ta \*[Gt] Ta "greater than" -.It Li Pm Ta +\- Ta \*[Pm] Ta "plus minus" -.It Li If Ta infinity Ta \*[If] Ta "infinity" -.It Li Am Ta \*[Am] Ta \*[Am] Ta "ampersand" -.It Li Na Ta \*[Na] Ta \*[Na] Ta "not a number" -.It Li Ba Ta \*[Ba] Ta \*[Ba] Ta "vertical bar" -.El +.TS +lb lb lb lb +l l l l. +String Nroff Troff Meaning +<= <= \*[<=] less equal +>= >= \*[>=] greater equal +Rq '' \*[Rq] right double quote +Lq `` \*[Lq] left double quote +ua ^ \*[ua] upwards arrow +aa \' \*[aa] acute accent +ga \` \*[ga] grave accent +q \&" \*[q] straight double quote +Pi pi \*[Pi] greek pi +Ne != \*[Ne] not equal +Le <= \*[Le] less equal +Ge >= \*[Ge] greater equal +Lt < \*[Lt] less than +Gt > \*[Gt] greater than +Pm +\- \*[Pm] plus minus +If infinity \*[If] infinity +Am \*[Am] \*[Am] ampersand +Na \*[Na] \*[Na] not a number +Ba \*[Ba] \*[Ba] vertical bar +.TE .Pp The names of the columns .Sy Nroff @@ -4212,7 +4219,7 @@ Section 3f has not been added to the hea .Pp .Ql \&.Nm font should be changed in -.Sx NAME +.Em NAME section. .Pp .Ql \&.Fn Modified: head/gnu/usr.bin/groff/tmac/mdoc.local ============================================================================== --- head/gnu/usr.bin/groff/tmac/mdoc.local Fri Jan 31 08:48:25 2014 (r261318) +++ head/gnu/usr.bin/groff/tmac/mdoc.local Fri Jan 31 12:26:30 2014 (r261319) @@ -43,6 +43,7 @@ .ds doc-str-Lb-libproc Processor Monitoring and Analysis Library (libproc, \-lproc) .ds doc-str-Lb-libprocstat Process and Files Information Retrieval (libprocstat, \-lprocstat) .ds doc-str-Lb-librtld_db Run-time Linker Debugging Library (librtld_db, \-lrtld_db) +.ds doc-str-Lb-libsbuf Safe String Composition Library (libsbuf, \-lsbuf) .ds doc-str-Lb-libstdthreads C11 Threads Library (libstdthreads, \-lstdthreads) . .\" Default .Os value From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 12:28:57 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id AF0CD293; Fri, 31 Jan 2014 12:28:57 +0000 (UTC) Received: from cyrus.watson.org (cyrus.watson.org [198.74.231.69]) by mx1.freebsd.org (Postfix) with ESMTP id 6F8031A59; Fri, 31 Jan 2014 12:28:57 +0000 (UTC) Received: from fledge.watson.org (fledge.watson.org [198.74.231.63]) by cyrus.watson.org (Postfix) with ESMTPS id 0B80F46B20; Fri, 31 Jan 2014 07:28:57 -0500 (EST) Date: Fri, 31 Jan 2014 12:28:56 +0000 (GMT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Jamie Gritton Subject: Re: svn commit: r261266 - in head: sys/dev/drm sys/kern sys/sys usr.sbin/jail In-Reply-To: <201401291341.s0TDfDcB068211@svn.freebsd.org> Message-ID: References: <201401291341.s0TDfDcB068211@svn.freebsd.org> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 12:28:57 -0000 Hi Jamie: As these privileges basically allows root processes in jail to break out of jail, I think this needs a much more clear signpost that this is a very unsafe thing to turn on. I can imagine scenarios where this might be useful, but can't really imagine any where it is 'safe' with respect to the jail model. Can we put a very large and very clear warning in the jail(8) man page, as well as a comment in the kernel source code about this? Robert On Wed, 29 Jan 2014, Jamie Gritton wrote: > Author: jamie > Date: Wed Jan 29 13:41:13 2014 > New Revision: 261266 > URL: http://svnweb.freebsd.org/changeset/base/261266 > > Log: > Add a jail parameter, allow.kmem, which lets jailed processes access > /dev/kmem and related devices (i.e. grants PRIV_IO and PRIV_KMEM_WRITE). > This in conjunction with changing the drm driver's permission check from > PRIV_DRIVER to PRIV_KMEM_WRITE will allow a jailed Xorg server. > > Submitted by: netchild > MFC after: 1 week > > Modified: > head/sys/dev/drm/drmP.h > head/sys/kern/kern_jail.c > head/sys/sys/jail.h > head/usr.sbin/jail/jail.8 > > Modified: head/sys/dev/drm/drmP.h > ============================================================================== > --- head/sys/dev/drm/drmP.h Wed Jan 29 13:35:12 2014 (r261265) > +++ head/sys/dev/drm/drmP.h Wed Jan 29 13:41:13 2014 (r261266) > @@ -227,7 +227,9 @@ enum { > > #define PAGE_ALIGN(addr) round_page(addr) > /* DRM_SUSER returns true if the user is superuser */ > -#if __FreeBSD_version >= 700000 > +#if __FreeBSD_version >= 1000000 > +#define DRM_SUSER(p) (priv_check(p, PRIV_KMEM_WRITE) == 0) > +#elif __FreeBSD_version >= 700000 > #define DRM_SUSER(p) (priv_check(p, PRIV_DRIVER) == 0) > #else > #define DRM_SUSER(p) (suser(p) == 0) > > Modified: head/sys/kern/kern_jail.c > ============================================================================== > --- head/sys/kern/kern_jail.c Wed Jan 29 13:35:12 2014 (r261265) > +++ head/sys/kern/kern_jail.c Wed Jan 29 13:41:13 2014 (r261266) > @@ -208,6 +208,7 @@ static char *pr_allow_names[] = { > "allow.mount.zfs", > "allow.mount.procfs", > "allow.mount.tmpfs", > + "allow.kmem", > }; > const size_t pr_allow_names_size = sizeof(pr_allow_names); > > @@ -224,6 +225,7 @@ static char *pr_allow_nonames[] = { > "allow.mount.nozfs", > "allow.mount.noprocfs", > "allow.mount.notmpfs", > + "allow.nokmem", > }; > const size_t pr_allow_nonames_size = sizeof(pr_allow_nonames); > > @@ -3951,6 +3953,27 @@ prison_priv_check(struct ucred *cred, in > return (0); > > /* > + * Allow access to /dev/io in a jail if the non-jailed admin > + * requests this and if /dev/io exists in the jail. This > + * allows Xorg to probe a card. > + */ > + case PRIV_IO: > + if (cred->cr_prison->pr_allow & PR_ALLOW_KMEM) > + return (0); > + else > + return (EPERM); > + > + /* > + * Allow low level access to KMEM-like devices (e.g. to > + * allow Xorg to use DRI). > + */ > + case PRIV_KMEM_WRITE: > + if (cred->cr_prison->pr_allow & PR_ALLOW_KMEM) > + return (0); > + else > + return (EPERM); > + > + /* > * Allow jailed root to set loginclass. > */ > case PRIV_PROC_SETLOGINCLASS: > @@ -4384,6 +4407,8 @@ SYSCTL_JAIL_PARAM(_allow, quotas, CTLTYP > "B", "Jail may set file quotas"); > SYSCTL_JAIL_PARAM(_allow, socket_af, CTLTYPE_INT | CTLFLAG_RW, > "B", "Jail may create sockets other than just UNIX/IPv4/IPv6/route"); > +SYSCTL_JAIL_PARAM(_allow, kmem, CTLTYPE_INT | CTLFLAG_RW, > + "B", "Jail may access kmem-like devices (io, dri) if they exist"); > > SYSCTL_JAIL_PARAM_SUBNODE(allow, mount, "Jail mount/unmount permission flags"); > SYSCTL_JAIL_PARAM(_allow_mount, , CTLTYPE_INT | CTLFLAG_RW, > > Modified: head/sys/sys/jail.h > ============================================================================== > --- head/sys/sys/jail.h Wed Jan 29 13:35:12 2014 (r261265) > +++ head/sys/sys/jail.h Wed Jan 29 13:41:13 2014 (r261266) > @@ -228,7 +228,8 @@ struct prison_racct { > #define PR_ALLOW_MOUNT_ZFS 0x0200 > #define PR_ALLOW_MOUNT_PROCFS 0x0400 > #define PR_ALLOW_MOUNT_TMPFS 0x0800 > -#define PR_ALLOW_ALL 0x0fff > +#define PR_ALLOW_KMEM 0x1000 > +#define PR_ALLOW_ALL 0x1fff > > /* > * OSD methods > > Modified: head/usr.sbin/jail/jail.8 > ============================================================================== > --- head/usr.sbin/jail/jail.8 Wed Jan 29 13:35:12 2014 (r261265) > +++ head/usr.sbin/jail/jail.8 Wed Jan 29 13:41:13 2014 (r261266) > @@ -573,6 +573,17 @@ with non-jailed parts of the system. > Sockets within a jail are normally restricted to IPv4, IPv6, local > (UNIX), and route. This allows access to other protocol stacks that > have not had jail functionality added to them. > +.It Va allow.kmem > +Jailed processes may access > +.Pa /dev/kmem > +and similar devices (e.g. io, dri) if they have sufficient permission > +(via the usual file permissions). > +Note that the device files must exist within the jail for this parameter > +to be of any use; > +the default devfs ruleset for jails does not include any such devices. > +Giving a jail access to kernel memory obviates much of the security that > +jails offer, but can still be useful for other purposes. > +For example, this would allow the Xorg server to run inside a jail. > .El > .El > .Pp > From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 12:34:56 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 55C6893F; Fri, 31 Jan 2014 12:34:56 +0000 (UTC) Received: from cyrus.watson.org (cyrus.watson.org [198.74.231.69]) by mx1.freebsd.org (Postfix) with ESMTP id 2CA521AFD; Fri, 31 Jan 2014 12:34:56 +0000 (UTC) Received: from fledge.watson.org (fledge.watson.org [198.74.231.63]) by cyrus.watson.org (Postfix) with ESMTPS id 6038E46B1A; Fri, 31 Jan 2014 07:34:48 -0500 (EST) Date: Fri, 31 Jan 2014 12:34:48 +0000 (GMT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Alexander Leidinger Subject: Re: svn commit: r261266 - in head: sys/dev/drm sys/kern sys/sys usr.sbin/jail In-Reply-To: <20140129222210.0000711f@unknown> Message-ID: References: <201401291341.s0TDfDcB068211@svn.freebsd.org> <20140129134344.GW66160@FreeBSD.org> <52E906CD.9050202@freebsd.org> <20140129222210.0000711f@unknown> User-Agent: Alpine 2.00 (BSF 1167 2008-08-23) MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Gleb Smirnoff , src-committers@freebsd.org, James Gritton X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 12:34:56 -0000 On Wed, 29 Jan 2014, Alexander Leidinger wrote: >> It does. I included a warning in jail.8 that this will pretty much undo >> jail security. There are still reasons some may want to do this, but it's >> definitely not for everyone or even most people. > > It only "unjails" (= basically the same security level as the jail-host with > the added benefit of the flexibility of a jail like easy moving from one > system to another) the jail which has this flag set. All other jails without > the flag can not "escape" to the host. > > I also have to add that just setting this flag does not give access to the > host, you also have to configure a non-default devfs rule for this jail (to > have the devices appear in the jail). This is not correct: devices do not need to be delegated in devfs for PRIV_IO to allow bypass of the Jail security model, due to sysarch() and the Linux-emulated equivalent, which turn out direct I/O access from a user process without use of a device node. Frankly, I'd like to see this backed out and not reintroduced. If it must be retained, then it needs a much more clear warning that enabling this feature disables Jail's security model. Don't use the word 'obviate', instead explicitly state that root within the jail can escape the jail. Robert From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 13:12:03 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 26771352; Fri, 31 Jan 2014 13:12:03 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0DB2D1FA0; Fri, 31 Jan 2014 13:12:03 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VDC2el015433; Fri, 31 Jan 2014 13:12:02 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VDC2L9015431; Fri, 31 Jan 2014 13:12:02 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201401311312.s0VDC2L9015431@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Fri, 31 Jan 2014 13:12:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261320 - in head: crypto/openssh crypto/openssh/contrib/caldera crypto/openssh/contrib/cygwin crypto/openssh/contrib/redhat crypto/openssh/contrib/suse crypto/openssh/openbsd-compat cr... X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 13:12:03 -0000 Author: des Date: Fri Jan 31 13:12:02 2014 New Revision: 261320 URL: http://svnweb.freebsd.org/changeset/base/261320 Log: Upgrade to OpenSSH 6.5p1. Added: head/crypto/openssh/PROTOCOL.chacha20poly1305 - copied unchanged from r261287, vendor-crypto/openssh/dist/PROTOCOL.chacha20poly1305 head/crypto/openssh/PROTOCOL.key - copied unchanged from r261287, vendor-crypto/openssh/dist/PROTOCOL.key head/crypto/openssh/blocks.c - copied unchanged from r261287, vendor-crypto/openssh/dist/blocks.c head/crypto/openssh/chacha.c - copied unchanged from r261287, vendor-crypto/openssh/dist/chacha.c head/crypto/openssh/chacha.h - copied unchanged from r261287, vendor-crypto/openssh/dist/chacha.h head/crypto/openssh/cipher-chachapoly.c - copied unchanged from r261287, vendor-crypto/openssh/dist/cipher-chachapoly.c head/crypto/openssh/cipher-chachapoly.h - copied unchanged from r261287, vendor-crypto/openssh/dist/cipher-chachapoly.h head/crypto/openssh/crypto_api.h - copied unchanged from r261287, vendor-crypto/openssh/dist/crypto_api.h head/crypto/openssh/digest.c - copied unchanged from r261287, vendor-crypto/openssh/dist/digest.c head/crypto/openssh/digest.h - copied unchanged from r261287, vendor-crypto/openssh/dist/digest.h head/crypto/openssh/ed25519.c - copied unchanged from r261287, vendor-crypto/openssh/dist/ed25519.c head/crypto/openssh/fe25519.c - copied unchanged from r261287, vendor-crypto/openssh/dist/fe25519.c head/crypto/openssh/fe25519.h - copied unchanged from r261287, vendor-crypto/openssh/dist/fe25519.h head/crypto/openssh/ge25519.c - copied unchanged from r261287, vendor-crypto/openssh/dist/ge25519.c head/crypto/openssh/ge25519.h - copied unchanged from r261287, vendor-crypto/openssh/dist/ge25519.h head/crypto/openssh/ge25519_base.data - copied unchanged from r261287, vendor-crypto/openssh/dist/ge25519_base.data head/crypto/openssh/hash.c - copied unchanged from r261287, vendor-crypto/openssh/dist/hash.c head/crypto/openssh/kexc25519.c - copied unchanged from r261287, vendor-crypto/openssh/dist/kexc25519.c head/crypto/openssh/kexc25519c.c - copied unchanged from r261287, vendor-crypto/openssh/dist/kexc25519c.c head/crypto/openssh/kexc25519s.c - copied unchanged from r261287, vendor-crypto/openssh/dist/kexc25519s.c head/crypto/openssh/openbsd-compat/arc4random.c - copied unchanged from r261287, vendor-crypto/openssh/dist/openbsd-compat/arc4random.c head/crypto/openssh/openbsd-compat/bcrypt_pbkdf.c - copied unchanged from r261287, vendor-crypto/openssh/dist/openbsd-compat/bcrypt_pbkdf.c head/crypto/openssh/openbsd-compat/blf.h - copied unchanged from r261287, vendor-crypto/openssh/dist/openbsd-compat/blf.h head/crypto/openssh/openbsd-compat/blowfish.c - copied, changed from r261287, vendor-crypto/openssh/dist/openbsd-compat/blowfish.c head/crypto/openssh/openbsd-compat/chacha_private.h - copied unchanged from r261287, vendor-crypto/openssh/dist/openbsd-compat/chacha_private.h head/crypto/openssh/poly1305.c - copied unchanged from r261287, vendor-crypto/openssh/dist/poly1305.c head/crypto/openssh/poly1305.h - copied unchanged from r261287, vendor-crypto/openssh/dist/poly1305.h head/crypto/openssh/regress/setuid-allowed.c - copied unchanged from r261287, vendor-crypto/openssh/dist/regress/setuid-allowed.c head/crypto/openssh/regress/sftp-perm.sh - copied unchanged from r261287, vendor-crypto/openssh/dist/regress/sftp-perm.sh head/crypto/openssh/sandbox-capsicum.c - copied unchanged from r261287, vendor-crypto/openssh/dist/sandbox-capsicum.c head/crypto/openssh/sc25519.c - copied unchanged from r261287, vendor-crypto/openssh/dist/sc25519.c head/crypto/openssh/sc25519.h - copied unchanged from r261287, vendor-crypto/openssh/dist/sc25519.h head/crypto/openssh/smult_curve25519_ref.c - copied unchanged from r261287, vendor-crypto/openssh/dist/smult_curve25519_ref.c head/crypto/openssh/ssh-ed25519.c - copied unchanged from r261287, vendor-crypto/openssh/dist/ssh-ed25519.c head/crypto/openssh/verify.c - copied unchanged from r261287, vendor-crypto/openssh/dist/verify.c Deleted: head/crypto/openssh/openbsd-compat/bsd-arc4random.c Modified: head/crypto/openssh/ChangeLog head/crypto/openssh/Makefile.in head/crypto/openssh/PROTOCOL head/crypto/openssh/README head/crypto/openssh/aclocal.m4 head/crypto/openssh/addrmatch.c head/crypto/openssh/atomicio.c head/crypto/openssh/auth-krb5.c head/crypto/openssh/auth-options.c head/crypto/openssh/auth-pam.c head/crypto/openssh/auth2-hostbased.c head/crypto/openssh/auth2-pubkey.c head/crypto/openssh/authfd.c head/crypto/openssh/authfile.c head/crypto/openssh/authfile.h head/crypto/openssh/bufaux.c head/crypto/openssh/bufbn.c head/crypto/openssh/buffer.c head/crypto/openssh/buffer.h head/crypto/openssh/canohost.c head/crypto/openssh/channels.c head/crypto/openssh/cipher.c head/crypto/openssh/cipher.h head/crypto/openssh/clientloop.c head/crypto/openssh/compat.c head/crypto/openssh/compat.h head/crypto/openssh/config.h head/crypto/openssh/config.h.in head/crypto/openssh/configure head/crypto/openssh/configure.ac head/crypto/openssh/contrib/caldera/openssh.spec head/crypto/openssh/contrib/cygwin/ssh-host-config head/crypto/openssh/contrib/redhat/openssh.spec head/crypto/openssh/contrib/suse/openssh.spec head/crypto/openssh/defines.h head/crypto/openssh/dh.c head/crypto/openssh/dh.h head/crypto/openssh/gss-serv-krb5.c head/crypto/openssh/hostfile.c head/crypto/openssh/kex.c head/crypto/openssh/kex.h head/crypto/openssh/kexdh.c head/crypto/openssh/kexdhc.c head/crypto/openssh/kexdhs.c head/crypto/openssh/kexecdh.c head/crypto/openssh/kexecdhc.c head/crypto/openssh/kexecdhs.c head/crypto/openssh/kexgex.c head/crypto/openssh/kexgexc.c head/crypto/openssh/kexgexs.c head/crypto/openssh/key.c head/crypto/openssh/key.h head/crypto/openssh/loginrec.c head/crypto/openssh/mac.c head/crypto/openssh/mac.h head/crypto/openssh/match.c head/crypto/openssh/misc.c head/crypto/openssh/misc.h head/crypto/openssh/moduli.c head/crypto/openssh/monitor.c head/crypto/openssh/monitor_mm.c head/crypto/openssh/monitor_mm.h head/crypto/openssh/myproposal.h head/crypto/openssh/openbsd-compat/Makefile.in head/crypto/openssh/openbsd-compat/bsd-cygwin_util.h head/crypto/openssh/openbsd-compat/bsd-misc.c head/crypto/openssh/openbsd-compat/bsd-poll.c head/crypto/openssh/openbsd-compat/bsd-setres_id.c head/crypto/openssh/openbsd-compat/bsd-snprintf.c head/crypto/openssh/openbsd-compat/bsd-statvfs.c head/crypto/openssh/openbsd-compat/bsd-statvfs.h head/crypto/openssh/openbsd-compat/openbsd-compat.h head/crypto/openssh/openbsd-compat/openssl-compat.c head/crypto/openssh/openbsd-compat/openssl-compat.h head/crypto/openssh/openbsd-compat/setproctitle.c head/crypto/openssh/packet.c head/crypto/openssh/pathnames.h head/crypto/openssh/pkcs11.h head/crypto/openssh/platform.c head/crypto/openssh/platform.h head/crypto/openssh/progressmeter.c head/crypto/openssh/readconf.c head/crypto/openssh/readconf.h head/crypto/openssh/regress/Makefile head/crypto/openssh/regress/agent-ptrace.sh head/crypto/openssh/regress/agent.sh head/crypto/openssh/regress/cert-hostkey.sh head/crypto/openssh/regress/cert-userkey.sh head/crypto/openssh/regress/cipher-speed.sh head/crypto/openssh/regress/forward-control.sh head/crypto/openssh/regress/integrity.sh head/crypto/openssh/regress/kextype.sh head/crypto/openssh/regress/keytype.sh head/crypto/openssh/regress/krl.sh head/crypto/openssh/regress/modpipe.c head/crypto/openssh/regress/rekey.sh head/crypto/openssh/regress/scp-ssh-wrapper.sh head/crypto/openssh/regress/scp.sh head/crypto/openssh/regress/test-exec.sh head/crypto/openssh/regress/try-ciphers.sh head/crypto/openssh/roaming_client.c head/crypto/openssh/roaming_common.c head/crypto/openssh/sandbox-darwin.c head/crypto/openssh/sandbox-null.c head/crypto/openssh/sandbox-rlimit.c head/crypto/openssh/sandbox-seccomp-filter.c head/crypto/openssh/sandbox-systrace.c head/crypto/openssh/schnorr.c head/crypto/openssh/schnorr.h head/crypto/openssh/scp.0 head/crypto/openssh/scp.1 head/crypto/openssh/scp.c head/crypto/openssh/servconf.c head/crypto/openssh/servconf.h head/crypto/openssh/serverloop.c head/crypto/openssh/session.c head/crypto/openssh/session.h head/crypto/openssh/sftp-client.c head/crypto/openssh/sftp-client.h head/crypto/openssh/sftp-common.c head/crypto/openssh/sftp-glob.c head/crypto/openssh/sftp-server.0 head/crypto/openssh/sftp-server.8 head/crypto/openssh/sftp-server.c head/crypto/openssh/sftp.0 head/crypto/openssh/sftp.1 head/crypto/openssh/sftp.c head/crypto/openssh/ssh-add.0 head/crypto/openssh/ssh-add.1 head/crypto/openssh/ssh-add.c head/crypto/openssh/ssh-agent.0 head/crypto/openssh/ssh-agent.1 head/crypto/openssh/ssh-agent.c head/crypto/openssh/ssh-dss.c head/crypto/openssh/ssh-ecdsa.c head/crypto/openssh/ssh-keygen.0 head/crypto/openssh/ssh-keygen.1 head/crypto/openssh/ssh-keygen.c head/crypto/openssh/ssh-keyscan.0 head/crypto/openssh/ssh-keyscan.1 head/crypto/openssh/ssh-keyscan.c head/crypto/openssh/ssh-keysign.0 head/crypto/openssh/ssh-keysign.8 head/crypto/openssh/ssh-keysign.c head/crypto/openssh/ssh-pkcs11-helper.c head/crypto/openssh/ssh-pkcs11.c head/crypto/openssh/ssh-rsa.c head/crypto/openssh/ssh-sandbox.h head/crypto/openssh/ssh.0 head/crypto/openssh/ssh.1 head/crypto/openssh/ssh.c head/crypto/openssh/ssh_config head/crypto/openssh/ssh_config.0 head/crypto/openssh/ssh_config.5 head/crypto/openssh/ssh_namespace.h head/crypto/openssh/sshconnect.c head/crypto/openssh/sshconnect.h head/crypto/openssh/sshconnect1.c head/crypto/openssh/sshconnect2.c head/crypto/openssh/sshd.0 head/crypto/openssh/sshd.8 head/crypto/openssh/sshd.c head/crypto/openssh/sshd_config head/crypto/openssh/sshd_config.0 head/crypto/openssh/sshd_config.5 head/crypto/openssh/uidswap.c head/crypto/openssh/version.h head/crypto/openssh/xmalloc.c head/etc/rc.d/sshd head/secure/lib/libssh/Makefile head/secure/usr.sbin/sshd/Makefile Directory Properties: head/crypto/openssh/ (props changed) Modified: head/crypto/openssh/ChangeLog ============================================================================== --- head/crypto/openssh/ChangeLog Fri Jan 31 12:26:30 2014 (r261319) +++ head/crypto/openssh/ChangeLog Fri Jan 31 13:12:02 2014 (r261320) @@ -1,25 +1,1042 @@ -20131108 +20140130 + - (djm) [configure.ac] Only check for width-specified integer types + in headers that actually exist. patch from Tom G. Christensen; + ok dtucker@ + - (djm) [configure.ac atomicio.c] Kludge around NetBSD offering + different symbols for 'read' when various compiler flags are + in use, causing atomicio.c comparisons against it to break and + read/write operations to hang; ok dtucker + - (djm) Release openssh-6.5p1 + +20140129 + - (djm) [configure.ac] Fix broken shell test '==' vs '='; patch from + Tom G. Christensen + +20140128 + - (djm) [configure.ac] Search for inet_ntop in libnsl and libresovl; + ok dtucker + - (djm) [sshd.c] Use kill(0, ...) instead of killpg(0, ...); the + latter being specified to have undefined behaviour in SUSv3; + ok dtucker + - (tim) [regress/agent.sh regress/agent-ptrace.sh] Assign $? to a variable + when used as an error message inside an if statement so we display the + correct into. agent.sh patch from Petr Lautrbach. + +20140127 + - (dtucker) [Makefile.in] Remove trailing backslash which some make + implementations (eg older Solaris) do not cope with. + +20140126 + - OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2014/01/25 10:12:50 + [cipher.c cipher.h kex.c kex.h kexgexc.c] + Add a special case for the DH group size for 3des-cbc, which has an + effective strength much lower than the key size. This causes problems + with some cryptlib implementations, which don't support group sizes larger + than 4k but also don't use the largest group size it does support as + specified in the RFC. Based on a patch from Petr Lautrbach at Redhat, + reduced by me with input from Markus. ok djm@ markus@ + - markus@cvs.openbsd.org 2014/01/25 20:35:37 + [kex.c] + dh_need needs to be set to max(seclen, blocksize, ivlen, mac_len) + ok dtucker@, noted by mancha + - (djm) [configure.ac sandbox-capsicum.c sandbox-rlimit.c] Disable + RLIMIT_NOFILE pseudo-sandbox on FreeBSD. In some configurations, + libc will attempt to open additional file descriptors for crypto + offload and crash if they cannot be opened. + - (djm) [configure.ac] correct AC_DEFINE for previous. + +20140125 + - (djm) [configure.ac] Fix detection of capsicum sandbox on FreeBSD + - (djm) [configure.ac] Do not attempt to use capsicum sandbox unless + sys/capability.h exists and cap_rights_limit is in libc. Fixes + build on FreeBSD9x which provides the header but not the libc + support. + - (djm) [configure.ac] autoconf sets finds to 'yes' not '1', so test + against the correct thing. + +20140124 + - (djm) [Makefile.in regress/scp-ssh-wrapper.sh regress/scp.sh] Make + the scp regress test actually test the built scp rather than the one + in $PATH. ok dtucker@ + +20140123 + - (tim) [session.c] Improve error reporting on set_id(). + - (dtucker) [configure.ac] NetBSD's (and FreeBSD's) strnvis is gratuitously + incompatible with OpenBSD's despite post-dating it by more than a decade. + Declare it as broken, and document FreeBSD's as the same. ok djm@ + +20140122 + - (djm) [openbsd-compat/setproctitle.c] Don't fail to compile if a + platform that is expected to use the reuse-argv style setproctitle + hack surprises us by providing a setproctitle in libc; ok dtucker + - (djm) [configure.ac] Unless specifically requested, only attempt + to build Position Independent Executables on gcc >= 4.x; ok dtucker + - (djm) [configure.ac aclocal.m4] More tests to detect fallout from + platform hardening options: include some long long int arithmatic + to detect missing support functions for -ftrapv in libgcc and + equivalents, actually test linking when -ftrapv is supplied and + set either both -pie/-fPIE or neither. feedback and ok dtucker@ + +20140121 + - (dtucker) [configure.ac] Make PIE a configure-time option which defaults + to on platforms where it's known to be reliably detected and off elsewhere. + Works around platforms such as FreeBSD 9.1 where it does not interop with + -ftrapv (it seems to work but fails when trying to link ssh). ok djm@ + - (dtucker) [aclocal.m4] Differentiate between compile-time and link-time + tests in the configure output. ok djm. + - (tim) [platform.c session.c] Fix bug affecting SVR5 platforms introduced + with sftp chroot support. Move set_id call after chroot. + - (djm) [aclocal.m4] Flesh out the code run in the OSSH_CHECK_CFLAG_COMPILE + and OSSH_CHECK_LDFLAG_LINK tests to give them a better chance of + detecting toolchain-related problems; ok dtucker + +20140120 + - (dtucker) [gss-serv-krb5.c] Fall back to krb5_cc_gen_new if the Kerberos + implementation does not have krb5_cc_new_unique, similar to what we do + in auth-krb5.c. + - (djm) [regress/cert-hostkey.sh] Fix regress failure on platforms that + skip one or more key types (e.g. RHEL/CentOS 6.5); ok dtucker@ + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2014/01/20 00:08:48 + [digest.c] + memleak; found by Loganaden Velvindron @ AfriNIC; ok markus@ + +20140119 + - (dtucker) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2014/01/17 06:23:24 + [sftp-server.c] + fix log message statvfs. ok djm + - dtucker@cvs.openbsd.org 2014/01/18 09:36:26 + [session.c] + explicitly define USE_PIPES to 1 to prevent redefinition warnings in + portable on platforms that use pipes for everything. From vinschen at + redhat. + - dtucker@cvs.openbsd.org 2014/01/19 04:17:29 + [canohost.c addrmatch.c] + Cast socklen_t when comparing to size_t and use socklen_t to iterate over + the ip options, both to prevent signed/unsigned comparison warnings. + Patch from vinschen at redhat via portable openssh, begrudging ok deraadt. + - djm@cvs.openbsd.org 2014/01/19 04:48:08 + [ssh_config.5] + fix inverted meaning of 'no' and 'yes' for CanonicalizeFallbackLocal + - dtucker@cvs.openbsd.org 2014/01/19 11:21:51 + [addrmatch.c] + Cast the sizeof to socklen_t so it'll work even if the supplied len is + negative. Suggested by and ok djm, ok deraadt. + +20140118 + - (dtucker) [uidswap.c] Prevent unused variable warnings on Cygwin. Patch + from vinschen at redhat.com + - (dtucker) [openbsd-compat/bsd-cygwin_util.h] Add missing function + declarations that stopped being included when we stopped including + from openbsd-compat/bsd-cygwin_util.h. Patch from vinschen at + redhat.com. + - (dtucker) [configure.ac] On Cygwin the getopt variables (like optargs, + optind) are defined in getopt.h already. Unfortunately they are defined as + "declspec(dllimport)" for historical reasons, because the GNU linker didn't + allow auto-import on PE/COFF targets way back when. The problem is the + dllexport attributes collide with the definitions in the various source + files in OpenSSH, which obviousy define the variables without + declspec(dllimport). The least intrusive way to get rid of these warnings + is to disable warnings for GCC compiler attributes when building on Cygwin. + Patch from vinschen at redhat.com. + - (dtucker) [sandbox-capsicum.c] Correct some error messages and make the + return value check for cap_enter() consistent with the other uses in + FreeBSD. From by Loganaden Velvindron @ AfriNIC via bz#2140. + +20140117 + - (dtucker) [aclocal.m4 configure.ac] Add some additional compiler/toolchain + hardening flags including -fstack-protector-strong. These default to on + if the toolchain supports them, but there is a configure-time knob + (--without-hardening) to disable them if necessary. ok djm@ + - (djm) [sftp-client.c] signed/unsigned comparison fix + - (dtucker) [loginrec.c] Cast to the types specfied in the format + specification to prevent warnings. + - (dtucker) [crypto_api.h] Wrap stdlib.h include inside #ifdef HAVE_STDINT_H. + - (dtucker) [poly1305.c] Wrap stdlib.h include inside #ifdef HAVE_STDINT_H. + - (dtucker) [blocks.c fe25519.c ge25519.c hash.c sc25519.c verify.c] Include + includes.h to pull in all of the compatibility stuff. + - (dtucker) [openbsd-compat/bcrypt_pbkdf.c] Wrap stdlib.h include inside + #ifdef HAVE_STDINT_H. + - (dtucker) [defines.h] Add typedefs for uintXX_t types for platforms that + don't have them. + - (dtucker) [configure.ac] Split AC_CHECK_FUNCS for OpenSSL functions into + separate lines and alphabetize for easier diffing of changes. + - (dtucker) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2014/01/17 00:21:06 + [sftp-client.c] + signed/unsigned comparison warning fix; from portable (Id sync only) + - dtucker@cvs.openbsd.org 2014/01/17 05:26:41 + [digest.c] + remove unused includes. ok djm@ + - (djm) [Makefile.in configure.ac sandbox-capsicum.c sandbox-darwin.c] + [sandbox-null.c sandbox-rlimit.c sandbox-seccomp-filter.c] + [sandbox-systrace.c ssh-sandbox.h sshd.c] Support preauth sandboxing + using the Capsicum API introduced in FreeBSD 10. Patch by Dag-Erling + Smorgrav, updated by Loganaden Velvindron @ AfriNIC; ok dtucker@ + - (dtucker) [configure.ac digest.c openbsd-compat/openssl-compat.c + openbsd-compat/openssl-compat.h] Add compatibility layer for older + openssl versions. ok djm@ + - (dtucker) Fix typo in #ifndef. + - (dtucker) [configure.ac openbsd-compat/bsd-statvfs.c + openbsd-compat/bsd-statvfs.h] Implement enough of statvfs on top of statfs + to be useful (and for the regression tests to pass) on platforms that + have statfs and fstatfs. ok djm@ + - (dtucker) [openbsd-compat/bsd-statvfs.h] Only start including headers if we + need them to cut down on the name collisions. + - (dtucker) [configure.ac] Also look in inttypes.h for uintXX_t types. + - (dtucker) [configure.ac] Have --without-hardening not turn off + stack-protector since that has a separate flag that's been around a while. + - (dtucker) [readconf.c] Wrap paths.h inside an ifdef. Allows building on + Solaris. + - (dtucker) [defines.h] Move our definitions of uintXX_t types down to after + they're defined if we have to define them ourselves. Fixes builds on old + AIX. + +20140118 - (djm) OpenBSD CVS Sync - - markus@cvs.openbsd.org 2013/11/06 16:52:11 - [monitor_wrap.c] - fix rekeying for AES-GCM modes; ok deraadt + - djm@cvs.openbsd.org 2014/01/16 07:31:09 + [sftp-client.c] + needless and incorrect cast to size_t can break resumption of + large download; patch from tobias@ + - djm@cvs.openbsd.org 2014/01/16 07:32:00 + [version.h] + openssh-6.5 + - (djm) [contrib/caldera/openssh.spec contrib/redhat/openssh.spec] + [contrib/suse/openssh.spec] Crank RPM spec version numbers. + - (djm) [README] update release notes URL. + +20140112 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2014/01/10 05:59:19 + [sshd_config] + the /etc/ssh/ssh_host_ed25519_key is loaded by default too + - djm@cvs.openbsd.org 2014/01/12 08:13:13 + [bufaux.c buffer.h kex.c kex.h kexc25519.c kexc25519c.c kexc25519s.c] + [kexdhc.c kexdhs.c kexecdhc.c kexecdhs.c kexgexc.c kexgexs.c] + avoid use of OpenSSL BIGNUM type and functions for KEX with + Curve25519 by adding a buffer_put_bignum2_from_string() that stores + a string using the bignum encoding rules. Will make it easier to + build a reduced-feature OpenSSH without OpenSSL in the future; + ok markus@ + +20140110 + - (djm) OpenBSD CVS Sync + - tedu@cvs.openbsd.org 2014/01/04 17:50:55 + [mac.c monitor_mm.c monitor_mm.h xmalloc.c] + use standard types and formats for size_t like variables. ok dtucker + - guenther@cvs.openbsd.org 2014/01/09 03:26:00 + [sftp-common.c] + When formating the time for "ls -l"-style output, show dates in the future + with the year, and rearrange a comparison to avoid a potentional signed + arithmetic overflow that would give the wrong result. + ok djm@ + - djm@cvs.openbsd.org 2014/01/09 23:20:00 + [digest.c digest.h hostfile.c kex.c kex.h kexc25519.c kexc25519c.c] + [kexc25519s.c kexdh.c kexecdh.c kexecdhc.c kexecdhs.c kexgex.c kexgexc.c] + [kexgexs.c key.c key.h roaming_client.c roaming_common.c schnorr.c] + [schnorr.h ssh-dss.c ssh-ecdsa.c ssh-rsa.c sshconnect2.c] + Introduce digest API and use it to perform all hashing operations + rather than calling OpenSSL EVP_Digest* directly. Will make it easier + to build a reduced-feature OpenSSH without OpenSSL in future; + feedback, ok markus@ + - djm@cvs.openbsd.org 2014/01/09 23:26:48 + [sshconnect.c sshd.c] + ban clients/servers that suffer from SSH_BUG_DERIVEKEY, they are ancient, + deranged and might make some attacks on KEX easier; ok markus@ + +20140108 + - (djm) [regress/.cvsignore] Ignore regress test droppings; ok dtucker@ + +20131231 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/12/30 23:52:28 + [auth2-hostbased.c auth2-pubkey.c compat.c compat.h ssh-rsa.c] + [sshconnect.c sshconnect2.c sshd.c] + refuse RSA keys from old proprietary clients/servers that use the + obsolete RSA+MD5 signature scheme. it will still be possible to connect + with these clients/servers but only DSA keys will be accepted, and we'll + deprecate them entirely in a future release. ok markus@ + +20131229 + - (djm) [loginrec.c] Check for username truncation when looking up lastlog + entries + - (djm) [regress/Makefile] Add some generated files for cleaning + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/12/19 00:10:30 + [ssh-add.c] + skip requesting smartcard PIN when removing keys from agent; bz#2187 + patch from jay AT slushpupie.com; ok dtucker + - dtucker@cvs.openbsd.org 2013/12/19 00:19:12 + [serverloop.c] + Cast client_alive_interval to u_int64_t before assinging to + max_time_milliseconds to avoid potential integer overflow in the timeout. + bz#2170, patch from Loganaden Velvindron, ok djm@ + - djm@cvs.openbsd.org 2013/12/19 00:27:57 + [auth-options.c] + simplify freeing of source-address certificate restriction + - djm@cvs.openbsd.org 2013/12/19 01:04:36 + [channels.c] + bz#2147: fix multiple remote forwardings with dynamically assigned + listen ports. In the s->c message to open the channel we were sending + zero (the magic number to request a dynamic port) instead of the actual + listen port. The client therefore had no way of discriminating between + them. + + Diagnosis and fix by ronf AT timeheart.net + - djm@cvs.openbsd.org 2013/12/19 01:19:41 + [ssh-agent.c] + bz#2186: don't crash (NULL deref) when deleting PKCS#11 keys from an agent + that has a mix of normal and PKCS#11 keys; fix from jay AT slushpupie.com; + ok dtucker + - djm@cvs.openbsd.org 2013/12/19 22:57:13 + [poly1305.c poly1305.h] + use full name for author, with his permission + - tedu@cvs.openbsd.org 2013/12/21 07:10:47 + [ssh-keygen.1] + small typo + - djm@cvs.openbsd.org 2013/12/27 22:30:17 + [ssh-dss.c ssh-ecdsa.c ssh-rsa.c] + make the original RSA and DSA signing/verification code look more like + the ECDSA/Ed25519 ones: use key_type_plain() when checking the key type + rather than tediously listing all variants, use __func__ for debug/ + error messages + - djm@cvs.openbsd.org 2013/12/27 22:37:18 + [ssh-rsa.c] + correct comment + - djm@cvs.openbsd.org 2013/12/29 02:28:10 + [key.c] + allow ed25519 keys to appear as certificate authorities + - djm@cvs.openbsd.org 2013/12/29 02:37:04 + [key.c] + correct comment for key_to_certified() + - djm@cvs.openbsd.org 2013/12/29 02:49:52 + [key.c] + correct comment for key_drop_cert() + - djm@cvs.openbsd.org 2013/12/29 04:20:04 + [key.c] + to make sure we don't omit any key types as valid CA keys again, + factor the valid key type check into a key_type_is_valid_ca() + function + - djm@cvs.openbsd.org 2013/12/29 04:29:25 + [authfd.c] + allow deletion of ed25519 keys from the agent + - djm@cvs.openbsd.org 2013/12/29 04:35:50 + [authfile.c] + don't refuse to load Ed25519 certificates + - djm@cvs.openbsd.org 2013/12/29 05:42:16 + [ssh.c] + don't forget to load Ed25519 certs too + - djm@cvs.openbsd.org 2013/12/29 05:57:02 + [sshconnect.c] + when showing other hostkeys, don't forget Ed25519 keys + +20131221 + - (dtucker) [regress/keytype.sh] Actually test ecdsa key types. + +20131219 + - (dtucker) [configure.ac] bz#2178: Don't try to use BSM on Solaris versions + greater than 11 either rather than just 11. Patch from Tomas Kuthan. + - (dtucker) [auth-pam.c] bz#2163: check return value from pam_get_item(). + Patch from Loganaden Velvindron. + +20131218 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/12/07 08:08:26 + [ssh-keygen.1] + document -a and -o wrt new key format + - naddy@cvs.openbsd.org 2013/12/07 11:58:46 + [ssh-add.1 ssh-agent.1 ssh-keygen.1 ssh-keyscan.1 ssh-keysign.8 ssh.1] + [ssh_config.5 sshd.8 sshd_config.5] + add missing mentions of ed25519; ok djm@ + - dtucker@cvs.openbsd.org 2013/12/08 09:53:27 + [sshd_config.5] + Use a literal for the default value of KEXAlgorithms. ok deraadt jmc + - markus@cvs.openbsd.org 2013/12/09 11:03:45 + [blocks.c ed25519.c fe25519.c fe25519.h ge25519.c ge25519.h] + [ge25519_base.data hash.c sc25519.c sc25519.h verify.c] + Add Authors for the public domain ed25519/nacl code. + see also http://nacl.cr.yp.to/features.html + All of the NaCl software is in the public domain. + and http://ed25519.cr.yp.to/software.html + The Ed25519 software is in the public domain. + - markus@cvs.openbsd.org 2013/12/09 11:08:17 + [crypto_api.h] + remove unused defines + - pascal@cvs.openbsd.org 2013/12/15 18:17:26 + [ssh-add.c] + Make ssh-add also add .ssh/id_ed25519; fixes lie in manual page. + ok markus@ + - djm@cvs.openbsd.org 2013/12/15 21:42:35 + [cipher-chachapoly.c] + add some comments and constify a constant + - markus@cvs.openbsd.org 2013/12/17 10:36:38 + [crypto_api.h] + I've assempled the header file by cut&pasting from generated headers + and the source files. + +20131208 + - (djm) [openbsd-compat/bsd-setres_id.c] Missing header; from Corinna + Vinschen + - (djm) [Makefile.in regress/Makefile regress/agent-ptrace.sh] + [regress/setuid-allowed.c] Check that ssh-agent is not on a no-setuid + filesystem before running agent-ptrace.sh; ok dtucker + +20131207 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/12/05 22:59:45 + [sftp-client.c] + fix memory leak in error path in do_readdir(); pointed out by + Loganaden Velvindron @ AfriNIC in bz#2163 + - djm@cvs.openbsd.org 2013/12/06 03:40:51 + [ssh-keygen.c] + remove duplicated character ('g') in getopt() string; + document the (few) remaining option characters so we don't have to + rummage next time. + - markus@cvs.openbsd.org 2013/12/06 13:30:08 + [authfd.c key.c key.h ssh-agent.c] + move private key (de)serialization to key.c; ok djm + - markus@cvs.openbsd.org 2013/12/06 13:34:54 + [authfile.c authfile.h cipher.c cipher.h key.c packet.c ssh-agent.c] + [ssh-keygen.c PROTOCOL.key] new private key format, bcrypt as KDF by + default; details in PROTOCOL.key; feedback and lots help from djm; + ok djm@ + - markus@cvs.openbsd.org 2013/12/06 13:39:49 + [authfd.c authfile.c key.c key.h myproposal.h pathnames.h readconf.c] + [servconf.c ssh-agent.c ssh-keygen.c ssh-keyscan.1 ssh-keyscan.c] + [ssh-keysign.c ssh.c ssh_config.5 sshd.8 sshd.c verify.c ssh-ed25519.c] + [sc25519.h sc25519.c hash.c ge25519_base.data ge25519.h ge25519.c] + [fe25519.h fe25519.c ed25519.c crypto_api.h blocks.c] + support ed25519 keys (hostkeys and user identities) using the public + domain ed25519 reference code from SUPERCOP, see + http://ed25519.cr.yp.to/software.html + feedback, help & ok djm@ + - jmc@cvs.openbsd.org 2013/12/06 15:29:07 + [sshd.8] + missing comma; + - djm@cvs.openbsd.org 2013/12/07 00:19:15 + [key.c] + set k->cert = NULL after freeing it + - markus@cvs.openbsd.org 2013/12/06 13:52:46 + [regress/Makefile regress/agent.sh regress/cert-hostkey.sh] + [regress/cert-userkey.sh regress/keytype.sh] + test ed25519 support; from djm@ + - (djm) [blocks.c ed25519.c fe25519.c fe25519.h ge25519.c ge25519.h] + [ge25519_base.data hash.c sc25519.c sc25519.h verify.c] Fix RCS idents + - (djm) [Makefile.in] Add ed25519 sources + - (djm) [authfile.c] Conditionalise inclusion of util.h + - (djm) [configure.ac openbsd-compat/Makefile.in openbsd-compat/bcrypt_pbkdf.c] + [openbsd-compat/blf.h openbsd-compat/blowfish.c] + [openbsd-compat/openbsd-compat.h] Start at supporting bcrypt_pbkdf in + portable. + - (djm) [ed25519.c ssh-ed25519.c openbsd-compat/Makefile.in] + [openbsd-compat/bcrypt_pbkdf.c] Make ed25519/new key format compile on + Linux + - (djm) [regress/cert-hostkey.sh] Fix merge botch + - (djm) [Makefile.in] PATHSUBS and keygen bits for Ed25519; from + Loganaden Velvindron @ AfriNIC in bz#2179 + +20131205 + - (djm) OpenBSD CVS Sync + - jmc@cvs.openbsd.org 2013/11/21 08:05:09 + [ssh_config.5 sshd_config.5] + no need for .Pp before displays; + - deraadt@cvs.openbsd.org 2013/11/25 18:04:21 + [ssh.1 ssh.c] + improve -Q usage and such. One usage change is that the option is now + case-sensitive + ok dtucker markus djm + - jmc@cvs.openbsd.org 2013/11/26 12:14:54 + [ssh.1 ssh.c] + - put -Q in the right place + - Ar was a poor choice for the arguments to -Q. i've chosen an + admittedly equally poor Cm, at least consistent with the rest + of the docs. also no need for multiple instances + - zap a now redundant Nm + - usage() sync + - deraadt@cvs.openbsd.org 2013/11/26 19:15:09 + [pkcs11.h] + cleanup 1 << 31 idioms. Resurrection of this issue pointed out by + Eitan Adler ok markus for ssh, implies same change in kerberosV + - djm@cvs.openbsd.org 2013/12/01 23:19:05 + [PROTOCOL] + mention curve25519-sha256@libssh.org key exchange algorithm + - djm@cvs.openbsd.org 2013/12/02 02:50:27 + [PROTOCOL.chacha20poly1305] + typo; from Jon Cave + - djm@cvs.openbsd.org 2013/12/02 02:56:17 + [ssh-pkcs11-helper.c] + use-after-free; bz#2175 patch from Loganaden Velvindron @ AfriNIC + - djm@cvs.openbsd.org 2013/12/02 03:09:22 + [key.c] + make key_to_blob() return a NULL blob on failure; part of + bz#2175 from Loganaden Velvindron @ AfriNIC + - djm@cvs.openbsd.org 2013/12/02 03:13:14 + [cipher.c] + correct bzero of chacha20+poly1305 key context. bz#2177 from + Loganaden Velvindron @ AfriNIC + + Also make it a memset for consistency with the rest of cipher.c + - djm@cvs.openbsd.org 2013/12/04 04:20:01 + [sftp-client.c] + bz#2171: don't leak local_fd on error; from Loganaden Velvindron @ + AfriNIC + - djm@cvs.openbsd.org 2013/12/05 01:16:41 + [servconf.c servconf.h] + bz#2161 - fix AuthorizedKeysCommand inside a Match block and + rearrange things so the same error is harder to make next time; + with and ok dtucker@ + - (dtucker) [configure.ac] bz#2173: use pkg-config --libs to include correct + -L location for libedit. Patch from Serge van den Boom. + +20131121 + - (djm) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2013/11/08 11:15:19 + [bufaux.c bufbn.c buffer.c sftp-client.c sftp-common.c sftp-glob.c] + [uidswap.c] Include stdlib.h for free() as per the man page. + - markus@cvs.openbsd.org 2013/11/13 13:48:20 + [ssh-pkcs11.c] + add missing braces found by pedro + - djm@cvs.openbsd.org 2013/11/20 02:19:01 + [sshd.c] + delay closure of in/out fds until after "Bad protocol version + identification..." message, as get_remote_ipaddr/get_remote_port + require them open. + - deraadt@cvs.openbsd.org 2013/11/20 20:53:10 + [scp.c] + unsigned casts for ctype macros where neccessary + ok guenther millert markus + - deraadt@cvs.openbsd.org 2013/11/20 20:54:10 + [canohost.c clientloop.c match.c readconf.c sftp.c] + unsigned casts for ctype macros where neccessary + ok guenther millert markus + - djm@cvs.openbsd.org 2013/11/21 00:45:44 + [Makefile.in PROTOCOL PROTOCOL.chacha20poly1305 authfile.c chacha.c] + [chacha.h cipher-chachapoly.c cipher-chachapoly.h cipher.c cipher.h] + [dh.c myproposal.h packet.c poly1305.c poly1305.h servconf.c ssh.1] + [ssh.c ssh_config.5 sshd_config.5] Add a new protocol 2 transport + cipher "chacha20-poly1305@openssh.com" that combines Daniel + Bernstein's ChaCha20 stream cipher and Poly1305 MAC to build an + authenticated encryption mode. + + Inspired by and similar to Adam Langley's proposal for TLS: + http://tools.ietf.org/html/draft-agl-tls-chacha20poly1305-03 + but differs in layout used for the MAC calculation and the use of a + second ChaCha20 instance to separately encrypt packet lengths. + Details are in the PROTOCOL.chacha20poly1305 file. + + Feedback markus@, naddy@; manpage bits Loganden Velvindron @ AfriNIC + ok markus@ naddy@ + - naddy@cvs.openbsd.org 2013/11/18 05:09:32 + [regress/forward-control.sh] + bump timeout to 10 seconds to allow slow machines (e.g. Alpha PC164) + to successfully run this; ok djm@ + - djm@cvs.openbsd.org 2013/11/21 03:15:46 + [regress/krl.sh] + add some reminders for additional tests that I'd like to implement + - djm@cvs.openbsd.org 2013/11/21 03:16:47 + [regress/modpipe.c] + use unsigned long long instead of u_int64_t here to avoid warnings + on some systems portable OpenSSH is built on. + - djm@cvs.openbsd.org 2013/11/21 03:18:51 + [regress/cipher-speed.sh regress/integrity.sh regress/rekey.sh] + [regress/try-ciphers.sh] + use new "ssh -Q cipher-auth" query to obtain lists of authenticated + encryption ciphers instead of specifying them manually; ensures that + the new chacha20poly1305@openssh.com mode is tested; + + ok markus@ and naddy@ as part of the diff to add + chacha20poly1305@openssh.com + +20131110 + - (dtucker) [regress/keytype.sh] Populate ECDSA key types to be tested by + querying the ones that are compiled in. + +20131109 + - (dtucker) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2013/11/09 05:41:34 + [regress/test-exec.sh regress/rekey.sh] + Use smaller test data files to speed up tests. Grow test datafiles + where necessary for a specific test. + - (dtucker) [configure.ac kex.c key.c myproposal.h] Test for the presence of + NID_X9_62_prime256v1, NID_secp384r1 and NID_secp521r1 and test that the + latter actually works before using it. Fedora (at least) has NID_secp521r1 + that doesn't work (see https://bugzilla.redhat.com/show_bug.cgi?id=1021897). + - (dtucker) [configure.ac] Fix brackets in NID_secp521r1 test. + - (dtucker) [configure.ac] Add missing "test". + - (dtucker) [key.c] Check for the correct defines for NID_secp521r1. + +20131108 + - (dtucker) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2013/11/08 01:06:14 + [regress/rekey.sh] + Rekey less frequently during tests to speed them up + - (djm) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2013/11/07 11:58:27 + [cipher.c cipher.h kex.c kex.h mac.c mac.h servconf.c ssh.c] + Output the effective values of Ciphers, MACs and KexAlgorithms when + the default has not been overridden. ok markus@ - djm@cvs.openbsd.org 2013/11/08 00:39:15 [auth-options.c auth2-chall.c authfd.c channels.c cipher-3des1.c] [clientloop.c gss-genr.c monitor_mm.c packet.c schnorr.c umac.c] [sftp-client.c sftp-glob.c] use calloc for all structure allocations; from markus@ - - (djm) [README contrib/caldera/openssh.spec contrib/redhat/openssh.spec] - [contrib/suse/openssh.spec] update version numbers - djm@cvs.openbsd.org 2013/11/08 01:38:11 [version.h] openssh-6.4 - - (djm) Release 6.4p1 + - (djm) [README contrib/caldera/openssh.spec contrib/redhat/openssh.spec] + [contrib/suse/openssh.spec] Update version numbers following release. + - (dtucker) [openbsd-compat/openbsd-compat.h] Add null implementation of + arc4random_stir for platforms that have arc4random but don't have + arc4random_stir (right now this is only OpenBSD -current). + - (dtucker) [kex.c] Only enable CURVE25519_SHA256 if we actually have + EVP_sha256. + - (dtucker) [myproposal.h] Conditionally enable CURVE25519_SHA256. + - (dtucker) [openbsd-compat/bsd-poll.c] Add headers to prevent compile + warnings. + - (dtucker) [Makefile.in configure.ac] Set MALLOC_OPTIONS per platform + and pass in TEST_ENV. use stderr to get polluted + and the stderr-data test to fail. + - (dtucker) [contrib/cygwin/ssh-host-config] Simplify host key generation: + rather than testing and generating each key, call ssh-keygen -A. + Patch from vinschen at redhat.com. + - (dtucker) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2013/11/09 05:41:34 + [regress/test-exec.sh regress/rekey.sh] + Use smaller test data files to speed up tests. Grow test datafiles + where necessary for a specific test. + +20131107 + - (djm) [ssh-pkcs11.c] Bring back "non-constant initialiser" fix (rev 1.5) + that got lost in recent merge. + - (djm) [Makefile.in monitor.c] Missed chunks of curve25519 KEX diff + - (djm) [regress/modpipe.c regress/rekey.sh] Never intended to commit these + - (djm) [configure.ac defines.h] Skip arc4random_stir() calls on platforms + that lack it but have arc4random_uniform() + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2013/11/04 11:51:16 + [monitor.c] + fix rekeying for KEX_C25519_SHA256; noted by dtucker@ + RCSID sync only; I thought this was a merge botch and fixed it already + - markus@cvs.openbsd.org 2013/11/06 16:52:11 + [monitor_wrap.c] + fix rekeying for AES-GCM modes; ok deraadt + - djm@cvs.openbsd.org 2013/11/06 23:05:59 + [ssh-pkcs11.c] + from portable: s/true/true_val/ to avoid name collisions on dump platforms + RCSID sync only + - (dtucker) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/10/09 23:44:14 + [regress/Makefile] (ID sync only) + regression test for sftp request white/blacklisting and readonly mode. + - markus@cvs.openbsd.org 2013/11/02 22:39:53 + [regress/kextype.sh] + add curve25519-sha256@libssh.org + - dtucker@cvs.openbsd.org 2013/11/04 12:27:42 + [regress/rekey.sh] + Test rekeying with all KexAlgorithms. + - dtucker@cvs.openbsd.org 2013/11/07 00:12:05 + [regress/rekey.sh] + Test rekeying for every Cipher, MAC and KEX, plus test every KEX with + the GCM ciphers. + - dtucker@cvs.openbsd.org 2013/11/07 01:12:51 + [regress/rekey.sh] + Factor out the data transfer rekey tests + - dtucker@cvs.openbsd.org 2013/11/07 02:48:38 + [regress/integrity.sh regress/cipher-speed.sh regress/try-ciphers.sh] + Use ssh -Q instead of hardcoding lists of ciphers or MACs. + - dtucker@cvs.openbsd.org 2013/11/07 03:55:41 + [regress/kextype.sh] + Use ssh -Q to get kex types instead of a static list. + - dtucker@cvs.openbsd.org 2013/11/07 04:26:56 + [regress/kextype.sh] + trailing space + - (dtucker) [Makefile.in configure.ac] Remove TEST_SSH_SHA256 environment + variable. It's no longer used now that we get the supported MACs from + ssh -Q. -20130913 - - (djm) [channels.c] Fix unaligned access on sparc machines in SOCKS5 code; - ok dtucker@ - - (djm) [channels.c] sigh, typo s/buffet_/buffer_/ - - (djm) Release 6.3p1 +20131104 + - (djm) OpenBSD CVS Sync + - markus@cvs.openbsd.org 2013/11/02 20:03:54 + [ssh-pkcs11.c] + support pkcs#11 tokes that only provide x509 zerts instead of raw pubkeys; + fixes bz#1908; based on patch from Laurent Barbe; ok djm + - markus@cvs.openbsd.org 2013/11/02 21:59:15 + [kex.c kex.h myproposal.h ssh-keyscan.c sshconnect2.c sshd.c] + use curve25519 for default key exchange (curve25519-sha256@libssh.org); + initial patch from Aris Adamantiadis; ok djm@ + - markus@cvs.openbsd.org 2013/11/02 22:10:15 + [kexdhs.c kexecdhs.c] + no need to include monitor_wrap.h + - markus@cvs.openbsd.org 2013/11/02 22:24:24 + [kexdhs.c kexecdhs.c] + no need to include ssh-gss.h + - markus@cvs.openbsd.org 2013/11/02 22:34:01 + [auth-options.c] + no need to include monitor_wrap.h and ssh-gss.h + - markus@cvs.openbsd.org 2013/11/02 22:39:19 + [ssh_config.5 sshd_config.5] + the default kex is now curve25519-sha256@libssh.org + - djm@cvs.openbsd.org 2013/11/03 10:37:19 + [roaming_common.c] + fix a couple of function definitions foo() -> foo(void) + (-Wold-style-definition) + - (djm) [kexc25519.c kexc25519c.c kexc25519s.c] Import missed files from + KEX/curve25519 change + +20131103 + - (dtucker) [openbsd-compat/bsd-misc.c] Include time.h for nanosleep. + From OpenSMTPD where it prevents "implicit declaration" warnings (it's + a no-op in OpenSSH). From chl at openbsd. + - (dtucker) [openbsd-compat/setproctitle.c] Handle error case form the 2nd + vsnprintf. From eric at openbsd via chl@. + - (dtucker) [configure.ac defines.h] Add typedefs for intmax_t and uintmax_t + for platforms that don't have them. + +20131030 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/10/29 09:42:11 + [key.c key.h] + fix potential stack exhaustion caused by nested certificates; + report by Mateusz Kocielski; ok dtucker@ markus@ + - djm@cvs.openbsd.org 2013/10/29 09:48:02 + [servconf.c servconf.h session.c sshd_config sshd_config.5] + shd_config PermitTTY to disallow TTY allocation, mirroring the + longstanding no-pty authorized_keys option; + bz#2070, patch from Teran McKinney; ok markus@ + - jmc@cvs.openbsd.org 2013/10/29 18:49:32 + [sshd_config.5] + pty(4), not pty(7); + +20131026 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/10/25 23:04:51 + [ssh.c] + fix crash when using ProxyCommand caused by previous commit - was calling + freeaddrinfo(NULL); spotted by sthen@ and Tim Ruehsen, patch by sthen@ + +20131025 + - (djm) [ssh-keygen.c ssh-keysign.c sshconnect1.c sshd.c] Remove + unnecessary arc4random_stir() calls. The only ones left are to ensure + that the PRNG gets a different state after fork() for platforms that + have broken the API. + +20131024 + - (djm) [auth-krb5.c] bz#2032 - use local username in krb5_kuserok check + rather than full client name which may be of form user@REALM; + patch from Miguel Sanders; ok dtucker@ + - (djm) OpenBSD CVS Sync + - dtucker@cvs.openbsd.org 2013/10/23 05:40:58 + [servconf.c] + fix comment + - djm@cvs.openbsd.org 2013/10/23 23:35:32 + [sshd.c] + include local address and port in "Connection from ..." message (only + shown at loglevel>=verbose) + - dtucker@cvs.openbsd.org 2013/10/24 00:49:49 + [moduli.c] + Periodically print progress and, if possible, expected time to completion + when screening moduli for DH groups. ok deraadt djm + - dtucker@cvs.openbsd.org 2013/10/24 00:51:48 + [readconf.c servconf.c ssh_config.5 sshd_config.5] + Disallow empty Match statements and add "Match all" which matches + everything. ok djm, man page help jmc@ + - djm@cvs.openbsd.org 2013/10/24 08:19:36 + [ssh.c] + fix bug introduced in hostname canonicalisation commit: don't try to + resolve hostnames when a ProxyCommand is set unless the user has forced + canonicalisation; spotted by Iain Morgan + - (tim) [regress/sftp-perm.sh] We need a shell that understands "! somecmd" + +20131023 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/10/20 04:39:28 + [ssh_config.5] + document % expansions performed by "Match command ..." + - djm@cvs.openbsd.org 2013/10/20 06:19:28 + [readconf.c ssh_config.5] + rename "command" subclause of the recently-added "Match" keyword to + "exec"; it's shorter, clearer in intent and we might want to add the + ability to match against the command being executed at the remote end in + the future. + - djm@cvs.openbsd.org 2013/10/20 09:51:26 + [scp.1 sftp.1] + add canonicalisation options to -o lists + - jmc@cvs.openbsd.org 2013/10/20 18:00:13 + [ssh_config.5] + tweak the "exec" description, as worded by djm; + - djm@cvs.openbsd.org 2013/10/23 03:03:07 + [readconf.c] + Hostname may have %h sequences that should be expanded prior to Match + evaluation; spotted by Iain Morgan + - djm@cvs.openbsd.org 2013/10/23 03:05:19 + [readconf.c ssh.c] + comment + - djm@cvs.openbsd.org 2013/10/23 04:16:22 + [ssh-keygen.c] + Make code match documentation: relative-specified certificate expiry time + should be relative to current time and not the validity start time. + Reported by Petr Lautrbach; ok deraadt@ + +20131018 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/10/09 23:44:14 + [regress/Makefile regress/sftp-perm.sh] + regression test for sftp request white/blacklisting and readonly mode. + - jmc@cvs.openbsd.org 2013/10/17 07:35:48 + [sftp.1 sftp.c] + tweak previous; + - djm@cvs.openbsd.org 2013/10/17 22:08:04 + [sshd.c] + include remote port in bad banner message; bz#2162 + +20131017 + - (djm) OpenBSD CVS Sync + - jmc@cvs.openbsd.org 2013/10/15 14:10:25 + [ssh.1 ssh_config.5] + tweak previous; + - djm@cvs.openbsd.org 2013/10/16 02:31:47 + [readconf.c readconf.h roaming_client.c ssh.1 ssh.c ssh_config.5] + [sshconnect.c sshconnect.h] + Implement client-side hostname canonicalisation to allow an explicit + search path of domain suffixes to use to convert unqualified host names + to fully-qualified ones for host key matching. + This is particularly useful for host certificates, which would otherwise + need to list unqualified names alongside fully-qualified ones (and this + causes a number of problems). + "looks fine" markus@ + - jmc@cvs.openbsd.org 2013/10/16 06:42:25 + [ssh_config.5] + tweak previous; + - djm@cvs.openbsd.org 2013/10/16 22:49:39 + [readconf.c readconf.h ssh.1 ssh.c ssh_config.5] + s/canonicalise/canonicalize/ for consistency with existing spelling, + e.g. authorized_keys; pointed out by naddy@ + - djm@cvs.openbsd.org 2013/10/16 22:58:01 + [ssh.c ssh_config.5] + one I missed in previous: s/isation/ization/ + - djm@cvs.openbsd.org 2013/10/17 00:30:13 + [PROTOCOL sftp-client.c sftp-client.h sftp-server.c sftp.1 sftp.c] + fsync@openssh.com protocol extension for sftp-server + client support to allow calling fsync() faster successful transfer + patch mostly by imorgan AT nas.nasa.gov; bz#1798 + "fine" markus@ "grumble OK" deraadt@ "doesn't sound bad to me" millert@ + - djm@cvs.openbsd.org 2013/10/17 00:46:49 + [ssh.c] + rearrange check to reduce diff against -portable + (Id sync only) + +20131015 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/10/09 23:42:17 + [sftp-server.8 sftp-server.c] + Add ability to whitelist and/or blacklist sftp protocol requests by name. + Refactor dispatch loop and consolidate read-only mode checks. + Make global variables static, since sftp-server is linked into sshd(8). + ok dtucker@ + - djm@cvs.openbsd.org 2013/10/10 00:53:25 + [sftp-server.c] + add -Q, -P and -p to usage() before jmc@ catches me + - djm@cvs.openbsd.org 2013/10/10 01:43:03 + [sshd.c] + bz#2139: fix re-exec fallback by ensuring that startup_pipe is correctly + updated; ok dtucker@ + - djm@cvs.openbsd.org 2013/10/11 02:45:36 + [sftp-client.c] + rename flag arguments to be more clear and consistent. + reorder some internal function arguments to make adding additional flags + easier. + no functional change + - djm@cvs.openbsd.org 2013/10/11 02:52:23 + [sftp-client.c] + missed one arg reorder + - djm@cvs.openbsd.org 2013/10/11 02:53:45 + [sftp-client.h] + obsolete comment + - jmc@cvs.openbsd.org 2013/10/14 14:18:56 + [sftp-server.8 sftp-server.c] + tweak previous; + ok djm + - djm@cvs.openbsd.org 2013/10/14 21:20:52 + [session.c session.h] + Add logging of session starts in a useful format; ok markus@ feedback and + ok dtucker@ + - djm@cvs.openbsd.org 2013/10/14 22:22:05 + [readconf.c readconf.h ssh-keysign.c ssh.c ssh_config.5] + add a "Match" keyword to ssh_config that allows matching on hostname, + user and result of arbitrary commands. "nice work" markus@ + - djm@cvs.openbsd.org 2013/10/14 23:28:23 + [canohost.c misc.c misc.h readconf.c sftp-server.c ssh.c] + refactor client config code a little: + add multistate option partsing to readconf.c, similar to servconf.c's + existing code. + move checking of options that accept "none" as an argument to readconf.c + add a lowercase() function and use it instead of explicit tolower() in + loops + part of a larger diff that was ok markus@ + - djm@cvs.openbsd.org 2013/10/14 23:31:01 + [ssh.c] + whitespace at EOL; pointed out by markus@ + - [ssh.c] g/c unused variable. + +20131010 + - (dtucker) OpenBSD CVS Sync + - sthen@cvs.openbsd.org 2013/09/16 11:35:43 + [ssh_config] + Remove gssapi config parts from ssh_config, as was already done for + sshd_config. Req by/ok ajacoutot@ + ID SYNC ONLY for portable; kerberos/gssapi is still pretty popular + - djm@cvs.openbsd.org 2013/09/19 00:24:52 + [progressmeter.c] + store the initial file offset so the progress meter doesn't freak out + when resuming sftp transfers. bz#2137; patch from Iain Morgan; ok dtucker@` + - djm@cvs.openbsd.org 2013/09/19 00:49:12 + [sftp-client.c] + fix swapped pflag and printflag in sftp upload_dir; from Iain Morgan + - djm@cvs.openbsd.org 2013/09/19 01:24:46 + [channels.c] + bz#1297 - tell the client (via packet_send_debug) when their preferred + listen address has been overridden by the server's GatewayPorts; + ok dtucker@ + - djm@cvs.openbsd.org 2013/09/19 01:26:29 + [sshconnect.c] + bz#1211: make BindAddress work with UsePrivilegedPort=yes; patch from + swp AT swp.pp.ru; ok dtucker@ + - dtucker@cvs.openbsd.org 2013/10/08 11:42:13 + [dh.c dh.h] + Increase the size of the Diffie-Hellman groups requested for a each + symmetric key size. New values from NIST Special Publication 800-57 with + the upper limit specified by RFC4419. Pointed out by Peter Backes, ok + djm@. + +20131009 + - (djm) [openbsd-compat/arc4random.c openbsd-compat/chacha_private.h] Pull + in OpenBSD implementation of arc4random, shortly to replace the existing + bsd-arc4random.c + - (djm) [openbsd-compat/Makefile.in openbsd-compat/arc4random.c] + [openbsd-compat/bsd-arc4random.c] Replace old RC4-based arc4random + implementation with recent OpenBSD's ChaCha-based PRNG. ok dtucker@, + tested tim@ + +20130922 + - (dtucker) [platform.c platform.h sshd.c] bz#2156: restore Linux oom_adj + setting when handling SIGHUP to maintain behaviour over retart. Patch + from Matthew Ife. + +20130918 + - (dtucker) [sshd_config] Trailing whitespace; from jstjohn at purdue edu. + +20130914 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/08/22 19:02:21 + [sshd.c] + Stir PRNG after post-accept fork. The child gets a different PRNG state + anyway via rexec and explicit privsep reseeds, but it's good to be sure. + ok markus@ + - mikeb@cvs.openbsd.org 2013/08/28 12:34:27 + [ssh-keygen.c] + improve batch processing a bit by making use of the quite flag a bit + more often and exit with a non zero code if asked to find a hostname + in a known_hosts file and it wasn't there; + originally from reyk@, ok djm + - djm@cvs.openbsd.org 2013/08/31 00:13:54 + [sftp.c] + make ^w match ksh behaviour (delete previous word instead of entire line) + - deraadt@cvs.openbsd.org 2013/09/02 22:00:34 + [ssh-keygen.c sshconnect1.c sshd.c] + All the instances of arc4random_stir() are bogus, since arc4random() + does this itself, inside itself, and has for a very long time.. Actually, + this was probably reducing the entropy available. + ok djm + ID SYNC ONLY for portable; we don't trust other arc4random implementations + to do this right. + - sthen@cvs.openbsd.org 2013/09/07 13:53:11 + [sshd_config] + Remove commented-out kerberos/gssapi config options from sample config, + kerberos support is currently not enabled in ssh in OpenBSD. Discussed with + various people; ok deraadt@ + ID SYNC ONLY for portable; kerberos/gssapi is still pretty popular + - djm@cvs.openbsd.org 2013/09/12 01:41:12 + [clientloop.c] + fix connection crash when sending break (~B) on ControlPersist'd session; + ok dtucker@ + - djm@cvs.openbsd.org 2013/09/13 06:54:34 + [channels.c] + avoid unaligned access in code that reused a buffer to send a + struct in_addr in a reply; simpler just use use buffer_put_int(); + from portable; spotted by and ok dtucker@ + +20130828 + - (djm) [openbsd-compat/bsd-snprintf.c] teach our local snprintf code the + 'j' (intmax_t/uintmax_t) and 'z' (size_t/ssize_t) conversions in case we + start to use them in the future. + - (djm) [openbsd-compat/bsd-snprintf.c] #ifdef noytet for intmax_t bits + until we have configure support. + +20130821 + - (djm) OpenBSD CVS Sync + - djm@cvs.openbsd.org 2013/08/06 23:03:49 + [sftp.c] + fix some whitespace at EOL + make list of commands an enum rather than a long list of defines + add -a to usage() + - djm@cvs.openbsd.org 2013/08/06 23:05:01 + [sftp.1] *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 14:29:34 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C28B35A9; Fri, 31 Jan 2014 14:29:34 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id AEBEA159D; Fri, 31 Jan 2014 14:29:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VETYws043104; Fri, 31 Jan 2014 14:29:34 GMT (envelope-from tijl@svn.freebsd.org) Received: (from tijl@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VETYbe043103; Fri, 31 Jan 2014 14:29:34 GMT (envelope-from tijl@svn.freebsd.org) Message-Id: <201401311429.s0VETYbe043103@svn.freebsd.org> From: Tijl Coosemans Date: Fri, 31 Jan 2014 14:29:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261321 - head/sys/x86/include X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 14:29:34 -0000 Author: tijl Date: Fri Jan 31 14:29:34 2014 New Revision: 261321 URL: http://svnweb.freebsd.org/changeset/base/261321 Log: Rename the AMD MSR_PERFCTR[0-3] so the Pentium Pro MSR_PERFCTR[0-1] aren't redefined. Reported by: "Trivedi, Nishank" Discussed with: kib Modified: head/sys/x86/include/specialreg.h Modified: head/sys/x86/include/specialreg.h ============================================================================== --- head/sys/x86/include/specialreg.h Fri Jan 31 13:12:02 2014 (r261320) +++ head/sys/x86/include/specialreg.h Fri Jan 31 14:29:34 2014 (r261321) @@ -720,12 +720,10 @@ #define MSR_PERFEVSEL1 0xc0010001 #define MSR_PERFEVSEL2 0xc0010002 #define MSR_PERFEVSEL3 0xc0010003 -#undef MSR_PERFCTR0 -#undef MSR_PERFCTR1 -#define MSR_PERFCTR0 0xc0010004 -#define MSR_PERFCTR1 0xc0010005 -#define MSR_PERFCTR2 0xc0010006 -#define MSR_PERFCTR3 0xc0010007 +#define MSR_K7_PERFCTR0 0xc0010004 +#define MSR_K7_PERFCTR1 0xc0010005 +#define MSR_K7_PERFCTR2 0xc0010006 +#define MSR_K7_PERFCTR3 0xc0010007 #define MSR_SYSCFG 0xc0010010 #define MSR_HWCR 0xc0010015 #define MSR_IORRBASE0 0xc0010016 From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 15:38:07 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 584C6ED; Fri, 31 Jan 2014 15:38:07 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 38C3A1B32; Fri, 31 Jan 2014 15:38:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VFc7lf070772; Fri, 31 Jan 2014 15:38:07 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VFc632070765; Fri, 31 Jan 2014 15:38:06 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401311538.s0VFc632070765@svn.freebsd.org> From: Warner Losh Date: Fri, 31 Jan 2014 15:38:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261322 - head/sys/arm/at91 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 15:38:07 -0000 Author: imp Date: Fri Jan 31 15:38:05 2014 New Revision: 261322 URL: http://svnweb.freebsd.org/changeset/base/261322 Log: Switch to using PAs rather than VAs for the addresses we map for devices. This is a nop, except for what's reported by atmelbus for the resources. It would be nice if we could dymanically allocated these things, but the pmap_mapdev panics if we don't keep the static mappings, so we still need to play the carefully allocate VA space between all supported SoC game. User's with their own devices may need to make adjustments. Modified: head/sys/arm/at91/at91.c head/sys/arm/at91/at91_machdep.c head/sys/arm/at91/at91rm92reg.h head/sys/arm/at91/at91sam9g20reg.h head/sys/arm/at91/at91sam9g45reg.h Modified: head/sys/arm/at91/at91.c ============================================================================== --- head/sys/arm/at91/at91.c Fri Jan 31 14:29:34 2014 (r261321) +++ head/sys/arm/at91/at91.c Fri Jan 31 15:38:05 2014 (r261322) @@ -260,7 +260,6 @@ static int at91_attach(device_t dev) { struct at91_softc *sc = device_get_softc(dev); - const struct arm_devmap_entry *pdevmap; int i; arm_post_filter = at91_eoi; @@ -281,11 +280,15 @@ at91_attach(device_t dev) sc->sc_mem_rman.rm_descr = "AT91 Memory"; if (rman_init(&sc->sc_mem_rman) != 0) panic("at91_attach: failed to set up memory rman"); - for (pdevmap = at91_devmap; pdevmap->pd_va != 0; pdevmap++) { - if (rman_manage_region(&sc->sc_mem_rman, pdevmap->pd_va, - pdevmap->pd_va + pdevmap->pd_size - 1) != 0) - panic("at91_attach: failed to set up memory rman"); - } + /* + * Manage the physical space, defined as being everything that isn't + * DRAM. + */ + if (rman_manage_region(&sc->sc_mem_rman, 0, PHYSADDR - 1) != 0) + panic("at91_attach: failed to set up memory rman"); + if (rman_manage_region(&sc->sc_mem_rman, PHYSADDR + (256 << 20), + 0xfffffffful) != 0) + panic("at91_attach: failed to set up memory rman"); /* * Setup the interrupt table. @@ -330,6 +333,7 @@ at91_alloc_resource(device_t dev, device struct resource_list_entry *rle; struct at91_ivar *ivar = device_get_ivars(child); struct resource_list *rl = &ivar->resources; + bus_space_handle_t bsh; if (device_get_parent(child) != dev) return (BUS_ALLOC_RESOURCE(device_get_parent(dev), child, @@ -355,8 +359,10 @@ at91_alloc_resource(device_t dev, device rle->res = rman_reserve_resource(&sc->sc_mem_rman, start, end, count, flags, child); if (rle->res != NULL) { + bus_space_map(&at91_bs_tag, start, + rman_get_size(rle->res), 0, &bsh); rman_set_bustag(rle->res, &at91_bs_tag); - rman_set_bushandle(rle->res, start); + rman_set_bushandle(rle->res, bsh); } break; } @@ -538,8 +544,14 @@ at91_add_child(device_t dev, int prio, c bus_set_resource(kid, SYS_RES_IRQ, 1, irq1, 1); if (irq2 != 0) bus_set_resource(kid, SYS_RES_IRQ, 2, irq2, 1); - if (addr != 0 && addr < AT91_BASE) - addr += AT91_BASE; + /* + * Special case for on-board devices. These have their address + * defined relative to AT91_PA_BASE in all the register files we + * have. We could change this, but that's a lot of effort which + * will be obsoleted when FDT arrives. + */ + if (addr != 0 && addr < 0x10000000 && addr >= 0x0f000000) + addr += AT91_PA_BASE; if (addr != 0) bus_set_resource(kid, SYS_RES_MEMORY, 0, addr, size); } Modified: head/sys/arm/at91/at91_machdep.c ============================================================================== --- head/sys/arm/at91/at91_machdep.c Fri Jan 31 14:29:34 2014 (r261321) +++ head/sys/arm/at91/at91_machdep.c Fri Jan 31 15:38:05 2014 (r261322) @@ -146,6 +146,7 @@ const struct arm_devmap_entry at91_devma VM_PROT_READ|VM_PROT_WRITE, PTE_NOCACHE, }, + /* There's a notion that we should do the rest of these lazily. */ /* * We can't just map the OHCI registers VA == PA, because * AT91xx_xxx_BASE belongs to the userland address space. @@ -163,16 +164,16 @@ const struct arm_devmap_entry at91_devma * on this chip select for a VA/PA mapping. */ /* Internal Memory 1MB */ + AT91RM92_OHCI_VA_BASE, AT91RM92_OHCI_BASE, - AT91RM92_OHCI_PA_BASE, 0x00100000, VM_PROT_READ|VM_PROT_WRITE, PTE_NOCACHE, }, { /* CompactFlash controller. Portion of EBI CS4 1MB */ + AT91RM92_CF_VA_BASE, AT91RM92_CF_BASE, - AT91RM92_CF_PA_BASE, 0x00100000, VM_PROT_READ|VM_PROT_WRITE, PTE_NOCACHE, @@ -183,16 +184,16 @@ const struct arm_devmap_entry at91_devma */ { /* Internal Memory 1MB */ + AT91SAM9G20_OHCI_VA_BASE, AT91SAM9G20_OHCI_BASE, - AT91SAM9G20_OHCI_PA_BASE, 0x00100000, VM_PROT_READ|VM_PROT_WRITE, PTE_NOCACHE, }, { /* EBI CS3 256MB */ + AT91SAM9G20_NAND_VA_BASE, AT91SAM9G20_NAND_BASE, - AT91SAM9G20_NAND_PA_BASE, AT91SAM9G20_NAND_SIZE, VM_PROT_READ|VM_PROT_WRITE, PTE_NOCACHE, @@ -202,8 +203,8 @@ const struct arm_devmap_entry at91_devma */ { /* Internal Memory 1MB */ + AT91SAM9G45_OHCI_VA_BASE, AT91SAM9G45_OHCI_BASE, - AT91SAM9G45_OHCI_PA_BASE, 0x00100000, VM_PROT_READ|VM_PROT_WRITE, PTE_NOCACHE, Modified: head/sys/arm/at91/at91rm92reg.h ============================================================================== --- head/sys/arm/at91/at91rm92reg.h Fri Jan 31 14:29:34 2014 (r261321) +++ head/sys/arm/at91/at91rm92reg.h Fri Jan 31 15:38:05 2014 (r261322) @@ -255,12 +255,12 @@ * other * soc's so phyical and vm address * mapping are unique. XXX */ -#define AT91RM92_OHCI_BASE 0xdfe00000 -#define AT91RM92_OHCI_PA_BASE 0x00300000 +#define AT91RM92_OHCI_VA_BASE 0xdfe00000 +#define AT91RM92_OHCI_BASE 0x00300000 #define AT91RM92_OHCI_SIZE 0x00100000 -#define AT91RM92_CF_BASE 0xdfd00000 -#define AT91RM92_CF_PA_BASE 0x51400000 +#define AT91RM92_CF_VA_BASE 0xdfd00000 +#define AT91RM92_CF_BASE 0x51400000 #define AT91RM92_CF_SIZE 0x00100000 /* SDRAMC */ Modified: head/sys/arm/at91/at91sam9g20reg.h ============================================================================== --- head/sys/arm/at91/at91sam9g20reg.h Fri Jan 31 14:29:34 2014 (r261321) +++ head/sys/arm/at91/at91sam9g20reg.h Fri Jan 31 15:38:05 2014 (r261322) @@ -252,14 +252,13 @@ * other * soc's so phyical and vm address * mapping are unique. XXX */ -#define AT91SAM9G20_OHCI_BASE 0xdfc00000 -#define AT91SAM9G20_OHCI_PA_BASE 0x00500000 -#define AT91SAM9G20_OHCI_SIZE 0x00100000 - -#define AT91SAM9G20_NAND_BASE 0xe0000000 -#define AT91SAM9G20_NAND_PA_BASE 0x40000000 -#define AT91SAM9G20_NAND_SIZE 0x10000000 +#define AT91SAM9G20_OHCI_VA_BASE 0xdfc00000 +#define AT91SAM9G20_OHCI_BASE 0x00500000 +#define AT91SAM9G20_OHCI_SIZE 0x00100000 +#define AT91SAM9G20_NAND_VA_BASE 0xe0000000 +#define AT91SAM9G20_NAND_BASE 0x40000000 +#define AT91SAM9G20_NAND_SIZE 0x10000000 /* SDRAMC */ #define AT91SAM9G20_SDRAMC_BASE 0xfffea00 Modified: head/sys/arm/at91/at91sam9g45reg.h ============================================================================== --- head/sys/arm/at91/at91sam9g45reg.h Fri Jan 31 14:29:34 2014 (r261321) +++ head/sys/arm/at91/at91sam9g45reg.h Fri Jan 31 15:38:05 2014 (r261322) @@ -243,13 +243,13 @@ * other * soc's so phyical and vm address * mapping are unique. XXX */ -#define AT91SAM9G45_OHCI_BASE 0xdfb00000 -#define AT91SAM9G45_OHCI_PA_BASE 0x00700000 -#define AT91SAM9G45_OHCI_SIZE 0x00100000 +#define AT91SAM9G45_OHCI_VA_BASE 0xdfb00000 +#define AT91SAM9G45_OHCI_BASE 0x00700000 +#define AT91SAM9G45_OHCI_SIZE 0x00100000 -#define AT91SAM9G45_NAND_BASE 0xe0000000 -#define AT91SAM9G45_NAND_PA_BASE 0x40000000 -#define AT91SAM9G45_NAND_SIZE 0x10000000 +#define AT91SAM9G45_NAND_VA_BASE 0xe0000000 +#define AT91SAM9G45_NAND_BASE 0x40000000 +#define AT91SAM9G45_NAND_SIZE 0x10000000 /* DDRSDRC */ From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 16:27:06 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D113C42E; Fri, 31 Jan 2014 16:27:06 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BD24F10C2; Fri, 31 Jan 2014 16:27:06 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VGR6Uu090742; Fri, 31 Jan 2014 16:27:06 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VGR6tb090741; Fri, 31 Jan 2014 16:27:06 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201401311627.s0VGR6tb090741@svn.freebsd.org> From: Sergey Kandaurov Date: Fri, 31 Jan 2014 16:27:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261323 - head/share/man/man4 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 16:27:06 -0000 Author: pluknet Date: Fri Jan 31 16:27:06 2014 New Revision: 261323 URL: http://svnweb.freebsd.org/changeset/base/261323 Log: [mdoc] Avoid a line break. Modified: head/share/man/man4/rights.4 Modified: head/share/man/man4/rights.4 ============================================================================== --- head/share/man/man4/rights.4 Fri Jan 31 15:38:05 2014 (r261322) +++ head/share/man/man4/rights.4 Fri Jan 31 16:27:06 2014 (r261323) @@ -665,6 +665,7 @@ Support for capabilities and capabilitie .Tn TrustedBSD Project. .Sh AUTHORS +.An -nosplit This manual page was created by .An Pawel Jakub Dawidek Aq pawel@dawidek.net under sponsorship from the FreeBSD Foundation based on the From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 16:46:41 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2CEA68D3; Fri, 31 Jan 2014 16:46:41 +0000 (UTC) Received: from mail-wg0-x22d.google.com (mail-wg0-x22d.google.com [IPv6:2a00:1450:400c:c00::22d]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 291621231; Fri, 31 Jan 2014 16:46:40 +0000 (UTC) Received: by mail-wg0-f45.google.com with SMTP id n12so9498720wgh.24 for ; Fri, 31 Jan 2014 08:46:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:cc:content-type; bh=Sr9CDc63/esg010qVpfSOwyuWvOiQlFDG7tjZs2mGTk=; b=S4XEi2eFWMEB5tJ9l41GWhXu+ORdrL6WR1jKnTmMhh8nynlAX780g6Yp3H9Jsy1emJ nRH8RqX0KZv4vV1NgxKWSBgzTQvQwAQo1g2ls6HrBst01FXIztQf6qfi29a4eqMjCaJA B0jEl5GYnE8VcaolVf5Mdvw11/v3iw2D+EilIGUS4e3YJEszn7seJ32ir279ueFbXcGp qiK55jAmIVtadm84dNPyZ3ZKl58paniCfK3LfdIMvU21M+Azm0+WxE82SvEcLAdY7Krs e1FhW0KaxfWy7ALE4802BLM8kgLJn10ieaC6nxGdjwve5GmBGWt3muegPiQF8RVd9Qmn v2Jg== MIME-Version: 1.0 X-Received: by 10.194.175.66 with SMTP id by2mr2159194wjc.59.1391186798589; Fri, 31 Jan 2014 08:46:38 -0800 (PST) Sender: pluknet@gmail.com Received: by 10.194.81.39 with HTTP; Fri, 31 Jan 2014 08:46:38 -0800 (PST) In-Reply-To: <201401311226.s0VCQVZW096049@svn.freebsd.org> References: <201401311226.s0VCQVZW096049@svn.freebsd.org> Date: Fri, 31 Jan 2014 20:46:38 +0400 X-Google-Sender-Auth: ecxCwfphwnpoc_i-DGU1cbm_Lm4 Message-ID: Subject: Re: svn commit: r261319 - in head: contrib/groff/tmac gnu/usr.bin/groff/tmac From: Sergey Kandaurov To: Ulrich Spoerlein Content-Type: text/plain; charset=ISO-8859-1 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Ruslan Ermilov X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 16:46:41 -0000 On 31 January 2014 16:26, Ulrich Spoerlein wrote: > Author: uqs > Date: Fri Jan 31 12:26:30 2014 > New Revision: 261319 > URL: http://svnweb.freebsd.org/changeset/base/261319 > > Log: > Pull up vendor changes up to 2014-01-29 > > - move local overrides into mdoc.local > - syncs us with git commit 819839b66c80e8dabe6cb24ea6319c26c9a2be14 > > Discussed with: ru > MFC after: 2 weeks On a related note. We already reference .Nx 7.0 in numerous places. I have not found in svn history that mdoc.local was used ever to store .{Other}x macros there. Is it ok or is there a better way? Otherwise I would like to commit this patch: Index: gnu/usr.bin/groff/tmac/mdoc.local =================================================================== --- gnu/usr.bin/groff/tmac/mdoc.local (revision 261323) +++ gnu/usr.bin/groff/tmac/mdoc.local (working copy) @@ -58,6 +58,7 @@ .ds doc-operating-system-FreeBSD-9.2 9.2 .ds doc-operating-system-FreeBSD-10.0 10.0 .ds doc-operating-system-FreeBSD-11.0 11.0 +.ds doc-operating-system-NetBSD-7.0 7.0 . .\" Definitions not (yet) in doc-syms . Oh, or may be you could commit a corresponding change upstream yourself? :) So we could rather pull it downstream as is. -- wbr, pluknet From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 17:15:57 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 32DBC47E; Fri, 31 Jan 2014 17:15:57 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1DD4314F5; Fri, 31 Jan 2014 17:15:57 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VHFuDQ012067; Fri, 31 Jan 2014 17:15:56 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VHFu7t012066; Fri, 31 Jan 2014 17:15:56 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201401311715.s0VHFu7t012066@svn.freebsd.org> From: Sergey Kandaurov Date: Fri, 31 Jan 2014 17:15:56 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261324 - head/share/man/man4 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 17:15:57 -0000 Author: pluknet Date: Fri Jan 31 17:15:56 2014 New Revision: 261324 URL: http://svnweb.freebsd.org/changeset/base/261324 Log: Sort Xr's. Modified: head/share/man/man4/procdesc.4 Modified: head/share/man/man4/procdesc.4 ============================================================================== --- head/share/man/man4/procdesc.4 Fri Jan 31 16:27:06 2014 (r261323) +++ head/share/man/man4/procdesc.4 Fri Jan 31 17:15:56 2014 (r261324) @@ -62,11 +62,11 @@ Given a process descriptor, it is possib .Sh SEE ALSO .Xr fork 2 , .Xr kill 2 , -.Xr wait4 2 , .Xr pdfork 2 , .Xr pdgetpid 2 , .Xr pdkill 2 , .Xr pdwait4 2 , +.Xr wait4 2 , .Xr capsicum 4 .Sh HISTORY .Nm From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 17:26:15 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8C9E4E8E; Fri, 31 Jan 2014 17:26:15 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 78E331618; Fri, 31 Jan 2014 17:26:15 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VHQF1v016027; Fri, 31 Jan 2014 17:26:15 GMT (envelope-from jhb@svn.freebsd.org) Received: (from jhb@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VHQFx5016026; Fri, 31 Jan 2014 17:26:15 GMT (envelope-from jhb@svn.freebsd.org) Message-Id: <201401311726.s0VHQFx5016026@svn.freebsd.org> From: John Baldwin Date: Fri, 31 Jan 2014 17:26:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261325 - stable/10/sys/x86/acpica X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 17:26:15 -0000 Author: jhb Date: Fri Jan 31 17:26:15 2014 New Revision: 261325 URL: http://svnweb.freebsd.org/changeset/base/261325 Log: MFC 259823: Fix i386 build. Modified: stable/10/sys/x86/acpica/acpi_wakeup.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/x86/acpica/acpi_wakeup.c ============================================================================== --- stable/10/sys/x86/acpica/acpi_wakeup.c Fri Jan 31 17:15:56 2014 (r261324) +++ stable/10/sys/x86/acpica/acpi_wakeup.c Fri Jan 31 17:26:15 2014 (r261325) @@ -37,6 +37,7 @@ __FBSDID("$FreeBSD$"); #include #include #include +#include #include #include From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 17:28:50 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0549E421; Fri, 31 Jan 2014 17:28:50 +0000 (UTC) Received: from m2.gritton.org (gritton.org [199.192.164.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D12FC1666; Fri, 31 Jan 2014 17:28:49 +0000 (UTC) Received: from [192.168.0.34] (c-50-168-192-61.hsd1.ut.comcast.net [50.168.192.61]) (authenticated bits=0) by m2.gritton.org (8.14.7/8.14.7) with ESMTP id s0VHSg0J033456; Fri, 31 Jan 2014 10:28:42 -0700 (MST) (envelope-from jamie@freebsd.org) Message-ID: <52EBDD42.4020702@freebsd.org> Date: Fri, 31 Jan 2014 10:28:34 -0700 From: James Gritton User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Robert Watson , Alexander Leidinger Subject: Re: svn commit: r261266 - in head: sys/dev/drm sys/kern sys/sys usr.sbin/jail References: <201401291341.s0TDfDcB068211@svn.freebsd.org> <20140129134344.GW66160@FreeBSD.org> <52E906CD.9050202@freebsd.org> <20140129222210.0000711f@unknown> In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Gleb Smirnoff , src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 17:28:50 -0000 On 1/31/2014 5:34 AM, Robert Watson wrote: > On Wed, 29 Jan 2014, Alexander Leidinger wrote: > >>> It does. I included a warning in jail.8 that this will pretty much >>> undo jail security. There are still reasons some may want to do >>> this, but it's definitely not for everyone or even most people. >> >> It only "unjails" (= basically the same security level as the >> jail-host with the added benefit of the flexibility of a jail like >> easy moving from one system to another) the jail which has this flag >> set. All other jails without the flag can not "escape" to the host. >> >> I also have to add that just setting this flag does not give access >> to the host, you also have to configure a non-default devfs rule for >> this jail (to have the devices appear in the jail). > > This is not correct: devices do not need to be delegated in devfs for > PRIV_IO to allow bypass of the Jail security model, due to sysarch() > and the Linux-emulated equivalent, which turn out direct I/O access > from a user process without use of a device node. > > Frankly, I'd like to see this backed out and not reintroduced. If it > must be retained, then it needs a much more clear warning that > enabling this feature disables Jail's security model. Don't use the > word 'obviate', instead explicitly state that root within the jail can > escape the jail. > > Robert I'll do at least the next-best thing: back it out and hope to re-introduce it. Clearly it could use some further discussion. - Jamie From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 17:39:53 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 08295AFE; Fri, 31 Jan 2014 17:39:53 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D863F178F; Fri, 31 Jan 2014 17:39:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VHdqsY020197; Fri, 31 Jan 2014 17:39:52 GMT (envelope-from jamie@svn.freebsd.org) Received: (from jamie@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VHdq8r020193; Fri, 31 Jan 2014 17:39:52 GMT (envelope-from jamie@svn.freebsd.org) Message-Id: <201401311739.s0VHdq8r020193@svn.freebsd.org> From: Jamie Gritton Date: Fri, 31 Jan 2014 17:39:52 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261326 - in head: sys/dev/drm sys/kern sys/sys usr.sbin/jail X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 17:39:53 -0000 Author: jamie Date: Fri Jan 31 17:39:51 2014 New Revision: 261326 URL: http://svnweb.freebsd.org/changeset/base/261326 Log: Back out r261266 pending security buy-in. r261266: Add a jail parameter, allow.kmem, which lets jailed processes access /dev/kmem and related devices (i.e. grants PRIV_IO and PRIV_KMEM_WRITE). This in conjunction with changing the drm driver's permission check from PRIV_DRIVER to PRIV_KMEM_WRITE will allow a jailed Xorg server. Modified: head/sys/dev/drm/drmP.h head/sys/kern/kern_jail.c head/sys/sys/jail.h head/usr.sbin/jail/jail.8 Modified: head/sys/dev/drm/drmP.h ============================================================================== --- head/sys/dev/drm/drmP.h Fri Jan 31 17:26:15 2014 (r261325) +++ head/sys/dev/drm/drmP.h Fri Jan 31 17:39:51 2014 (r261326) @@ -227,9 +227,7 @@ enum { #define PAGE_ALIGN(addr) round_page(addr) /* DRM_SUSER returns true if the user is superuser */ -#if __FreeBSD_version >= 1000000 -#define DRM_SUSER(p) (priv_check(p, PRIV_KMEM_WRITE) == 0) -#elif __FreeBSD_version >= 700000 +#if __FreeBSD_version >= 700000 #define DRM_SUSER(p) (priv_check(p, PRIV_DRIVER) == 0) #else #define DRM_SUSER(p) (suser(p) == 0) Modified: head/sys/kern/kern_jail.c ============================================================================== --- head/sys/kern/kern_jail.c Fri Jan 31 17:26:15 2014 (r261325) +++ head/sys/kern/kern_jail.c Fri Jan 31 17:39:51 2014 (r261326) @@ -208,7 +208,6 @@ static char *pr_allow_names[] = { "allow.mount.zfs", "allow.mount.procfs", "allow.mount.tmpfs", - "allow.kmem", }; const size_t pr_allow_names_size = sizeof(pr_allow_names); @@ -225,7 +224,6 @@ static char *pr_allow_nonames[] = { "allow.mount.nozfs", "allow.mount.noprocfs", "allow.mount.notmpfs", - "allow.nokmem", }; const size_t pr_allow_nonames_size = sizeof(pr_allow_nonames); @@ -3953,27 +3951,6 @@ prison_priv_check(struct ucred *cred, in return (0); /* - * Allow access to /dev/io in a jail if the non-jailed admin - * requests this and if /dev/io exists in the jail. This - * allows Xorg to probe a card. - */ - case PRIV_IO: - if (cred->cr_prison->pr_allow & PR_ALLOW_KMEM) - return (0); - else - return (EPERM); - - /* - * Allow low level access to KMEM-like devices (e.g. to - * allow Xorg to use DRI). - */ - case PRIV_KMEM_WRITE: - if (cred->cr_prison->pr_allow & PR_ALLOW_KMEM) - return (0); - else - return (EPERM); - - /* * Allow jailed root to set loginclass. */ case PRIV_PROC_SETLOGINCLASS: @@ -4407,8 +4384,6 @@ SYSCTL_JAIL_PARAM(_allow, quotas, CTLTYP "B", "Jail may set file quotas"); SYSCTL_JAIL_PARAM(_allow, socket_af, CTLTYPE_INT | CTLFLAG_RW, "B", "Jail may create sockets other than just UNIX/IPv4/IPv6/route"); -SYSCTL_JAIL_PARAM(_allow, kmem, CTLTYPE_INT | CTLFLAG_RW, - "B", "Jail may access kmem-like devices (io, dri) if they exist"); SYSCTL_JAIL_PARAM_SUBNODE(allow, mount, "Jail mount/unmount permission flags"); SYSCTL_JAIL_PARAM(_allow_mount, , CTLTYPE_INT | CTLFLAG_RW, Modified: head/sys/sys/jail.h ============================================================================== --- head/sys/sys/jail.h Fri Jan 31 17:26:15 2014 (r261325) +++ head/sys/sys/jail.h Fri Jan 31 17:39:51 2014 (r261326) @@ -228,8 +228,7 @@ struct prison_racct { #define PR_ALLOW_MOUNT_ZFS 0x0200 #define PR_ALLOW_MOUNT_PROCFS 0x0400 #define PR_ALLOW_MOUNT_TMPFS 0x0800 -#define PR_ALLOW_KMEM 0x1000 -#define PR_ALLOW_ALL 0x1fff +#define PR_ALLOW_ALL 0x0fff /* * OSD methods Modified: head/usr.sbin/jail/jail.8 ============================================================================== --- head/usr.sbin/jail/jail.8 Fri Jan 31 17:26:15 2014 (r261325) +++ head/usr.sbin/jail/jail.8 Fri Jan 31 17:39:51 2014 (r261326) @@ -573,17 +573,6 @@ with non-jailed parts of the system. Sockets within a jail are normally restricted to IPv4, IPv6, local (UNIX), and route. This allows access to other protocol stacks that have not had jail functionality added to them. -.It Va allow.kmem -Jailed processes may access -.Pa /dev/kmem -and similar devices (e.g. io, dri) if they have sufficient permission -(via the usual file permissions). -Note that the device files must exist within the jail for this parameter -to be of any use; -the default devfs ruleset for jails does not include any such devices. -Giving a jail access to kernel memory obviates much of the security that -jails offer, but can still be useful for other purposes. -For example, this would allow the Xorg server to run inside a jail. .El .El .Pp From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 18:13:15 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8D4936EC; Fri, 31 Jan 2014 18:13:15 +0000 (UTC) Received: from mail-ob0-x230.google.com (mail-ob0-x230.google.com [IPv6:2607:f8b0:4003:c01::230]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1E37B1AB8; Fri, 31 Jan 2014 18:13:15 +0000 (UTC) Received: by mail-ob0-f176.google.com with SMTP id gq1so5365340obb.35 for ; Fri, 31 Jan 2014 10:13:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=4/gfGVND8kBUrrCHShn5Acpa/236tsuiUiJpuu0Fhn8=; b=hhmX2n0jLjGohVDGCighBPYzlFlF4mXp9S6j1yQHTdNWjg1LxUXhq2h2aS7HgaJCif Chlt+kcWDr5ubXkqIA1LhjP8xr6wQHmIZe7i5YEtXOpuzIxE4TvErcXhnOU7sCJjZjMc qSajkAAERUs7/Df2epVeUmCAcf5YG5BDJP7WRJHvX3b2+l/2xIk4epRrm6Dp1QIqA9eG KJRxc94G0AiF8GgH6ADmJGfUXkXpO4F2AB1G+E5cTz3cpU4bO9U+dWG8bZArsnz5Y40j dLq2RsCV2J/JX/ZXQVzxa9AyGHe3PiOgxfAsvxSECyOc7WgaePbhGfIA4bIbczmz1Syr fLqQ== MIME-Version: 1.0 X-Received: by 10.182.158.71 with SMTP id ws7mr17897805obb.6.1391191994356; Fri, 31 Jan 2014 10:13:14 -0800 (PST) Received: by 10.76.84.169 with HTTP; Fri, 31 Jan 2014 10:13:14 -0800 (PST) Received: by 10.76.84.169 with HTTP; Fri, 31 Jan 2014 10:13:14 -0800 (PST) In-Reply-To: References: <201401311226.s0VCQVZW096049@svn.freebsd.org> Date: Fri, 31 Jan 2014 19:13:14 +0100 Message-ID: Subject: Re: svn commit: r261319 - in head: contrib/groff/tmac gnu/usr.bin/groff/tmac From: =?UTF-8?Q?Ulrich_Sp=C3=B6rlein?= To: Sergey Kandaurov Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Ruslan Ermilov X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 18:13:15 -0000 I'd prefer to upstream these things in batches. So go ahead and add NetBSD 7.0 to our mdoc.local and I'll catch it the next time round. Cheers Uli From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 19:59:04 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2475251B; Fri, 31 Jan 2014 19:59:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0E5031367; Fri, 31 Jan 2014 19:59:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VJx4Y2074402; Fri, 31 Jan 2014 19:59:04 GMT (envelope-from uqs@svn.freebsd.org) Received: (from uqs@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VJx3rt074397; Fri, 31 Jan 2014 19:59:03 GMT (envelope-from uqs@svn.freebsd.org) Message-Id: <201401311959.s0VJx3rt074397@svn.freebsd.org> From: Ulrich Spoerlein Date: Fri, 31 Jan 2014 19:59:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261327 - vendor/mdocml/dist X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 19:59:04 -0000 Author: uqs Date: Fri Jan 31 19:59:03 2014 New Revision: 261327 URL: http://svnweb.freebsd.org/changeset/base/261327 Log: Import mdocml version 1.12.3 Added: vendor/mdocml/dist/NEWS vendor/mdocml/dist/gmdiff vendor/mdocml/dist/tbl.3 (contents, props changed) vendor/mdocml/dist/test-betoh64.c (contents, props changed) Modified: vendor/mdocml/dist/Makefile vendor/mdocml/dist/TODO vendor/mdocml/dist/apropos.1 vendor/mdocml/dist/apropos.c vendor/mdocml/dist/apropos_db.c vendor/mdocml/dist/arch.in vendor/mdocml/dist/catman.c vendor/mdocml/dist/cgi.c vendor/mdocml/dist/chars.c vendor/mdocml/dist/chars.in vendor/mdocml/dist/config.h.post vendor/mdocml/dist/demandoc.1 vendor/mdocml/dist/demandoc.c vendor/mdocml/dist/eqn.7 vendor/mdocml/dist/html.c vendor/mdocml/dist/html.h vendor/mdocml/dist/index.sgml vendor/mdocml/dist/lib.in vendor/mdocml/dist/libman.h vendor/mdocml/dist/libmandoc.h vendor/mdocml/dist/libmdoc.h vendor/mdocml/dist/libroff.h vendor/mdocml/dist/main.c vendor/mdocml/dist/man.7 vendor/mdocml/dist/man.c vendor/mdocml/dist/man.cgi.7 vendor/mdocml/dist/man.h vendor/mdocml/dist/man_html.c vendor/mdocml/dist/man_macro.c vendor/mdocml/dist/man_term.c vendor/mdocml/dist/man_validate.c vendor/mdocml/dist/mandoc.1 vendor/mdocml/dist/mandoc.3 vendor/mdocml/dist/mandoc.c vendor/mdocml/dist/mandoc.h vendor/mdocml/dist/mandoc_char.7 vendor/mdocml/dist/mandocdb.8 vendor/mdocml/dist/mandocdb.c vendor/mdocml/dist/mandocdb.h vendor/mdocml/dist/manpath.c vendor/mdocml/dist/manpath.h vendor/mdocml/dist/mdoc.7 vendor/mdocml/dist/mdoc.c vendor/mdocml/dist/mdoc.h vendor/mdocml/dist/mdoc_argv.c vendor/mdocml/dist/mdoc_html.c vendor/mdocml/dist/mdoc_macro.c vendor/mdocml/dist/mdoc_man.c vendor/mdocml/dist/mdoc_term.c vendor/mdocml/dist/mdoc_validate.c vendor/mdocml/dist/out.c vendor/mdocml/dist/preconv.1 vendor/mdocml/dist/preconv.c vendor/mdocml/dist/predefs.in vendor/mdocml/dist/read.c vendor/mdocml/dist/roff.7 vendor/mdocml/dist/roff.c vendor/mdocml/dist/st.in vendor/mdocml/dist/tbl.7 vendor/mdocml/dist/tbl.c vendor/mdocml/dist/tbl_data.c vendor/mdocml/dist/tbl_html.c vendor/mdocml/dist/tbl_layout.c vendor/mdocml/dist/tbl_term.c vendor/mdocml/dist/term.c vendor/mdocml/dist/term.h vendor/mdocml/dist/term_ascii.c vendor/mdocml/dist/test-mmap.c vendor/mdocml/dist/tree.c vendor/mdocml/dist/whatis.1 Modified: vendor/mdocml/dist/Makefile ============================================================================== --- vendor/mdocml/dist/Makefile Fri Jan 31 17:39:51 2014 (r261326) +++ vendor/mdocml/dist/Makefile Fri Jan 31 19:59:03 2014 (r261327) @@ -1,19 +1,15 @@ .PHONY: clean install installwww .SUFFIXES: .sgml .html .md5 .h .h.html .SUFFIXES: .1 .3 .7 .8 -.SUFFIXES: .1.txt .3.txt .7.txt .8.txt -.SUFFIXES: .1.pdf .3.pdf .7.pdf .8.pdf -.SUFFIXES: .1.ps .3.ps .7.ps .8.ps .SUFFIXES: .1.html .3.html .7.html .8.html -.SUFFIXES: .1.xhtml .3.xhtml .7.xhtml .8.xhtml # Specify this if you want to hard-code the operating system to appear # in the lower-left hand corner of -mdoc manuals. # -# CFLAGS += -DOSNAME="\"OpenBSD 4.5\"" +# CFLAGS += -DOSNAME="\"OpenBSD 5.4\"" -VERSION = 1.12.1 -VDATE = 23 March 2012 +VERSION = 1.12.3 +VDATE = 31 December 2013 # IFF your system supports multi-byte functions (setlocale(), wcwidth(), # putwchar()) AND has __STDC_ISO_10646__ (that is, wchar_t is simply a @@ -29,12 +25,13 @@ CFLAGS += -DUSE_WCHAR # variable. #CFLAGS += -DUSE_MANPATH -# If your system supports static binaries only, uncomment this. This -# appears only to be BSD UNIX systems (Mac OS X has no support and Linux -# requires -pthreads for static libdb). +# If your system does not support static binaries, comment this, +# for example on Mac OS X. STATIC = -static +# Linux requires -pthread to statically link with libdb. +#STATIC += -pthread -CFLAGS += -g -DHAVE_CONFIG_H -DVERSION="\"$(VERSION)\"" +CFLAGS += -g -DHAVE_CONFIG_H CFLAGS += -W -Wall -Wstrict-prototypes -Wno-unused-parameter -Wwrite-strings PREFIX = /usr/local WWWPREFIX = /var/www @@ -64,6 +61,7 @@ DBLN = llib-lapropos.ln llib-lmandocdb all: mandoc preconv demandoc $(DBBIN) SRCS = Makefile \ + NEWS \ TODO \ apropos.1 \ apropos.c \ @@ -92,6 +90,7 @@ SRCS = Makefile \ eqn_term.c \ example.style.css \ external.png \ + gmdiff \ html.c \ html.h \ index.css \ @@ -147,6 +146,7 @@ SRCS = Makefile \ st.c \ st.in \ style.css \ + tbl.3 \ tbl.7 \ tbl.c \ tbl_data.c \ @@ -158,6 +158,7 @@ SRCS = Makefile \ term.h \ term_ascii.c \ term_ps.c \ + test-betoh64.c \ test-fgetln.c \ test-getsubopt.c \ test-mmap.c \ @@ -173,10 +174,6 @@ LIBMAN_OBJS = man.o \ man_hash.o \ man_macro.o \ man_validate.o -LIBMAN_LNS = man.ln \ - man_hash.ln \ - man_macro.ln \ - man_validate.ln LIBMDOC_OBJS = arch.o \ att.o \ @@ -188,16 +185,6 @@ LIBMDOC_OBJS = arch.o \ mdoc_validate.o \ st.o \ vol.o -LIBMDOC_LNS = arch.ln \ - att.ln \ - lib.ln \ - mdoc.ln \ - mdoc_argv.ln \ - mdoc_hash.ln \ - mdoc_macro.ln \ - mdoc_validate.ln \ - st.ln \ - vol.ln LIBROFF_OBJS = eqn.o \ roff.o \ @@ -205,12 +192,6 @@ LIBROFF_OBJS = eqn.o \ tbl_data.o \ tbl_layout.o \ tbl_opts.o -LIBROFF_LNS = eqn.ln \ - roff.ln \ - tbl.ln \ - tbl_data.ln \ - tbl_layout.ln \ - tbl_opts.ln LIBMANDOC_OBJS = $(LIBMAN_OBJS) \ $(LIBMDOC_OBJS) \ @@ -219,52 +200,35 @@ LIBMANDOC_OBJS = $(LIBMAN_OBJS) \ mandoc.o \ msec.o \ read.o -LIBMANDOC_LNS = $(LIBMAN_LNS) \ - $(LIBMDOC_LNS) \ - $(LIBROFF_LNS) \ - chars.ln \ - mandoc.ln \ - msec.ln \ - read.ln COMPAT_OBJS = compat_fgetln.o \ compat_getsubopt.o \ compat_strlcat.o \ compat_strlcpy.o -COMPAT_LNS = compat_fgetln.ln \ - compat_getsubopt.ln \ - compat_strlcat.ln \ - compat_strlcpy.ln - -arch.o arch.ln: arch.in -att.o att.ln: att.in -chars.o chars.ln: chars.in -lib.o lib.ln: lib.in -msec.o msec.ln: msec.in -roff.o roff.ln: predefs.in -st.o st.ln: st.in -vol.o vol.ln: vol.in - -$(LIBMAN_OBJS) $(LIBMAN_LNS): libman.h -$(LIBMDOC_OBJS) $(LIBMDOC_LNS): libmdoc.h -$(LIBROFF_OBJS) $(LIBROFF_LNS): libroff.h -$(LIBMANDOC_OBJS) $(LIBMANDOC_LNS): mandoc.h mdoc.h man.h libmandoc.h config.h -$(COMPAT_OBJS) $(COMPAT_LNS): config.h +arch.o: arch.in +att.o: att.in +chars.o: chars.in +lib.o: lib.in +msec.o: msec.in +roff.o: predefs.in +st.o: st.in +vol.o: vol.in + +$(LIBMAN_OBJS): libman.h +$(LIBMDOC_OBJS): libmdoc.h +$(LIBROFF_OBJS): libroff.h +$(LIBMANDOC_OBJS): mandoc.h mdoc.h man.h libmandoc.h config.h +$(COMPAT_OBJS): config.h MANDOC_HTML_OBJS = eqn_html.o \ html.o \ man_html.o \ mdoc_html.o \ tbl_html.o -MANDOC_HTML_LNS = eqn_html.ln \ - html.ln \ - man_html.ln \ - mdoc_html.ln \ - tbl_html.ln +$(MANDOC_HTML_OBJS): html.h MANDOC_MAN_OBJS = mdoc_man.o -MANDOC_MAN_LNS = mdoc_man.ln MANDOC_TERM_OBJS = eqn_term.o \ man_term.o \ @@ -273,13 +237,7 @@ MANDOC_TERM_OBJS = eqn_term.o \ term_ascii.o \ term_ps.o \ tbl_term.o -MANDOC_TERM_LNS = eqn_term.ln \ - man_term.ln \ - mdoc_term.ln \ - term.ln \ - term_ascii.ln \ - term_ps.ln \ - tbl_term.ln +$(MANDOC_TERM_OBJS): term.h MANDOC_OBJS = $(MANDOC_HTML_OBJS) \ $(MANDOC_MAN_OBJS) \ @@ -287,31 +245,16 @@ MANDOC_OBJS = $(MANDOC_HTML_OBJS) \ main.o \ out.o \ tree.o -MANDOC_LNS = $(MANDOC_HTML_LNS) \ - $(MANDOC_MAN_LNS) \ - $(MANDOC_TERM_LNS) \ - main.ln \ - out.ln \ - tree.ln - -$(MANDOC_HTML_OBJS) $(MANDOC_HTML_LNS): html.h -$(MANDOC_TERM_OBJS) $(MANDOC_TERM_LNS): term.h -$(MANDOC_OBJS) $(MANDOC_LNS): main.h mandoc.h mdoc.h man.h config.h out.h +$(MANDOC_OBJS): main.h mandoc.h mdoc.h man.h config.h out.h MANDOCDB_OBJS = mandocdb.o manpath.o -MANDOCDB_LNS = mandocdb.ln manpath.ln - -$(MANDOCDB_OBJS) $(MANDOCDB_LNS): mandocdb.h mandoc.h mdoc.h man.h config.h manpath.h +$(MANDOCDB_OBJS): mandocdb.h mandoc.h mdoc.h man.h config.h manpath.h PRECONV_OBJS = preconv.o -PRECONV_LNS = preconv.ln - -$(PRECONV_OBJS) $(PRECONV_LNS): config.h +$(PRECONV_OBJS): config.h APROPOS_OBJS = apropos.o apropos_db.o manpath.o -APROPOS_LNS = apropos.ln apropos_db.ln manpath.ln - -$(APROPOS_OBJS) $(APROPOS_LNS): config.h mandoc.h apropos_db.h manpath.h mandocdb.h +$(APROPOS_OBJS): config.h mandoc.h apropos_db.h manpath.h mandocdb.h CGI_OBJS = $(MANDOC_HTML_OBJS) \ $(MANDOC_MAN_OBJS) \ @@ -321,103 +264,30 @@ CGI_OBJS = $(MANDOC_HTML_OBJS) \ manpath.o \ out.o \ tree.o - -CGI_LNS = $(MANDOC_HTML_LNS) \ - $(MANDOC_MAN_LNS) \ - $(MANDOC_TERM_LNS) \ - cgi.ln \ - apropos_db.ln \ - manpath.ln \ - out.ln \ - tree.ln - -$(CGI_OBJS) $(CGI_LNS): main.h mdoc.h man.h out.h config.h mandoc.h apropos_db.h manpath.h mandocdb.h +$(CGI_OBJS): main.h mdoc.h man.h out.h config.h mandoc.h apropos_db.h manpath.h mandocdb.h CATMAN_OBJS = catman.o manpath.o -CATMAN_LNS = catman.ln manpath.ln - -$(CATMAN_OBJS) $(CATMAN_LNS): config.h mandoc.h manpath.h mandocdb.h +$(CATMAN_OBJS): config.h mandoc.h manpath.h mandocdb.h DEMANDOC_OBJS = demandoc.o -DEMANDOC_LNS = demandoc.ln - -$(DEMANDOC_OBJS) $(DEMANDOC_LNS): config.h +$(DEMANDOC_OBJS): config.h INDEX_MANS = apropos.1.html \ - apropos.1.xhtml \ - apropos.1.ps \ - apropos.1.pdf \ - apropos.1.txt \ catman.8.html \ - catman.8.xhtml \ - catman.8.ps \ - catman.8.pdf \ - catman.8.txt \ demandoc.1.html \ - demandoc.1.xhtml \ - demandoc.1.ps \ - demandoc.1.pdf \ - demandoc.1.txt \ mandoc.1.html \ - mandoc.1.xhtml \ - mandoc.1.ps \ - mandoc.1.pdf \ - mandoc.1.txt \ whatis.1.html \ - whatis.1.xhtml \ - whatis.1.ps \ - whatis.1.pdf \ - whatis.1.txt \ mandoc.3.html \ - mandoc.3.xhtml \ - mandoc.3.ps \ - mandoc.3.pdf \ - mandoc.3.txt \ + tbl.3.html \ eqn.7.html \ - eqn.7.xhtml \ - eqn.7.ps \ - eqn.7.pdf \ - eqn.7.txt \ man.7.html \ - man.7.xhtml \ - man.7.ps \ - man.7.pdf \ - man.7.txt \ man.cgi.7.html \ - man.cgi.7.xhtml \ - man.cgi.7.ps \ - man.cgi.7.pdf \ - man.cgi.7.txt \ mandoc_char.7.html \ - mandoc_char.7.xhtml \ - mandoc_char.7.ps \ - mandoc_char.7.pdf \ - mandoc_char.7.txt \ mdoc.7.html \ - mdoc.7.xhtml \ - mdoc.7.ps \ - mdoc.7.pdf \ - mdoc.7.txt \ preconv.1.html \ - preconv.1.xhtml \ - preconv.1.ps \ - preconv.1.pdf \ - preconv.1.txt \ roff.7.html \ - roff.7.xhtml \ - roff.7.ps \ - roff.7.pdf \ - roff.7.txt \ tbl.7.html \ - tbl.7.xhtml \ - tbl.7.ps \ - tbl.7.pdf \ - tbl.7.txt \ - mandocdb.8.html \ - mandocdb.8.xhtml \ - mandocdb.8.ps \ - mandocdb.8.pdf \ - mandocdb.8.txt + mandocdb.8.html $(INDEX_MANS): mandoc @@ -430,38 +300,19 @@ INDEX_OBJS = $(INDEX_MANS) \ www: index.html -lint: llib-lmandoc.ln llib-lpreconv.ln llib-ldemandoc.ln $(DBLN) - clean: rm -f libmandoc.a $(LIBMANDOC_OBJS) - rm -f llib-llibmandoc.ln $(LIBMANDOC_LNS) rm -f mandocdb $(MANDOCDB_OBJS) - rm -f llib-lmandocdb.ln $(MANDOCDB_LNS) rm -f preconv $(PRECONV_OBJS) - rm -f llib-lpreconv.ln $(PRECONV_LNS) rm -f apropos whatis $(APROPOS_OBJS) - rm -f llib-lapropos.ln $(APROPOS_LNS) rm -f man.cgi $(CGI_OBJS) - rm -f llib-lman.cgi.ln $(CGI_LNS) rm -f catman $(CATMAN_OBJS) - rm -f llib-lcatman.ln $(CATMAN_LNS) rm -f demandoc $(DEMANDOC_OBJS) - rm -f llib-ldemandoc.ln $(DEMANDOC_LNS) rm -f mandoc $(MANDOC_OBJS) - rm -f llib-lmandoc.ln $(MANDOC_LNS) - rm -f config.h config.log $(COMPAT_OBJS) $(COMPAT_LNS) - rm -f mdocml.tar.gz mdocml-win32.zip mdocml-win64.zip mdocml-macosx.zip + rm -f config.h config.log $(COMPAT_OBJS) + rm -f mdocml.tar.gz rm -f index.html $(INDEX_OBJS) - rm -rf test-fgetln.dSYM - rm -rf test-strlcpy.dSYM - rm -rf test-strlcat.dSYM - rm -rf test-strptime.dSYM - rm -rf test-mmap.dSYM - rm -rf test-getsubopt.dSYM - rm -rf apropos.dSYM - rm -rf catman.dSYM - rm -rf mandocdb.dSYM - rm -rf whatis.dSYM + rm -rf *.dSYM install: all mkdir -p $(DESTDIR)$(BINDIR) @@ -475,7 +326,7 @@ install: all $(INSTALL_LIB) libmandoc.a $(DESTDIR)$(LIBDIR) $(INSTALL_LIB) man.h mdoc.h mandoc.h $(DESTDIR)$(INCLUDEDIR) $(INSTALL_MAN) mandoc.1 preconv.1 demandoc.1 $(DESTDIR)$(MANDIR)/man1 - $(INSTALL_MAN) mandoc.3 $(DESTDIR)$(MANDIR)/man3 + $(INSTALL_MAN) mandoc.3 tbl.3 $(DESTDIR)$(MANDIR)/man3 $(INSTALL_MAN) man.7 mdoc.7 roff.7 eqn.7 tbl.7 mandoc_char.7 $(DESTDIR)$(MANDIR)/man7 $(INSTALL_DATA) example.style.css $(DESTDIR)$(EXAMPLEDIR) @@ -500,54 +351,30 @@ installwww: www libmandoc.a: $(COMPAT_OBJS) $(LIBMANDOC_OBJS) $(AR) rs $@ $(COMPAT_OBJS) $(LIBMANDOC_OBJS) -llib-llibmandoc.ln: $(COMPAT_LNS) $(LIBMANDOC_LNS) - $(LINT) $(LINTFLAGS) -Clibmandoc $(COMPAT_LNS) $(LIBMANDOC_LNS) - mandoc: $(MANDOC_OBJS) libmandoc.a $(CC) $(LDFLAGS) -o $@ $(MANDOC_OBJS) libmandoc.a -llib-lmandoc.ln: $(MANDOC_LNS) llib-llibmandoc.ln - $(LINT) $(LINTFLAGS) -Cmandoc $(MANDOC_LNS) llib-llibmandoc.ln - mandocdb: $(MANDOCDB_OBJS) libmandoc.a $(CC) $(LDFLAGS) -o $@ $(MANDOCDB_OBJS) libmandoc.a $(DBLIB) -llib-lmandocdb.ln: $(MANDOCDB_LNS) llib-llibmandoc.ln - $(LINT) $(LINTFLAGS) -Cmandocdb $(MANDOCDB_LNS) llib-llibmandoc.ln - preconv: $(PRECONV_OBJS) $(CC) $(LDFLAGS) -o $@ $(PRECONV_OBJS) -llib-lpreconv.ln: $(PRECONV_LNS) llib-llibmandoc.ln - $(LINT) $(LINTFLAGS) -Cpreconv $(PRECONV_LNS) llib-llibmandoc.ln - whatis: apropos cp -f apropos whatis apropos: $(APROPOS_OBJS) libmandoc.a $(CC) $(LDFLAGS) -o $@ $(APROPOS_OBJS) libmandoc.a $(DBLIB) -llib-lapropos.ln: $(APROPOS_LNS) llib-llibmandoc.ln - $(LINT) $(LINTFLAGS) -Capropos $(APROPOS_LNS) llib-llibmandoc.ln - catman: $(CATMAN_OBJS) libmandoc.a $(CC) $(LDFLAGS) -o $@ $(CATMAN_OBJS) libmandoc.a $(DBLIB) -llib-lcatman.ln: $(CATMAN_LNS) llib-llibmandoc.ln - $(LINT) $(LINTFLAGS) -Ccatman $(CATMAN_LNS) llib-llibmandoc.ln - man.cgi: $(CGI_OBJS) libmandoc.a $(CC) $(LDFLAGS) $(STATIC) -o $@ $(CGI_OBJS) libmandoc.a $(DBLIB) -llib-lman.cgi.ln: $(CGI_LNS) llib-llibmandoc.ln - $(LINT) $(LINTFLAGS) -Cman.cgi $(CGI_LNS) llib-llibmandoc.ln - demandoc: $(DEMANDOC_OBJS) libmandoc.a $(CC) $(LDFLAGS) -o $@ $(DEMANDOC_OBJS) libmandoc.a -llib-ldemandoc.ln: $(DEMANDOC_LNS) llib-llibmandoc.ln - $(LINT) $(LINTFLAGS) -Cdemandoc $(DEMANDOC_LNS) llib-llibmandoc.ln - mdocml.md5: mdocml.tar.gz md5 mdocml.tar.gz >$@ @@ -557,67 +384,41 @@ mdocml.tar.gz: $(SRCS) ( cd .dist/ && tar zcf ../$@ ./ ) rm -rf .dist/ -mdocml-win32.zip: $(SRCS) - mkdir -p .win32/mdocml-$(VERSION)/ - $(INSTALL_SOURCE) $(SRCS) .win32 - cp .win32/Makefile .win32/Makefile.old - egrep -v -e DUSE_WCHAR -e ^DBBIN .win32/Makefile.old >.win32/Makefile - ( cd .win32; \ - CC=i686-w64-mingw32-gcc AR=i686-w64-mingw32-ar CFLAGS='-DOSNAME=\"Windows\"' make; \ - make install PREFIX=mdocml-$(VERSION) ; \ - zip -r ../$@ mdocml-$(VERSION) ) - rm -rf .win32 - -mdocml-win64.zip: $(SRCS) - mkdir -p .win64/mdocml-$(VERSION)/ - $(INSTALL_SOURCE) $(SRCS) .win64 - cp .win64/Makefile .win64/Makefile.old - egrep -v -e DUSE_WCHAR -e ^DBBIN .win64/Makefile.old >.win64/Makefile - ( cd .win64; \ - CC=x86_64-w64-mingw32-gcc AR=x86_64-w64-mingw32-ar CFLAGS='-DOSNAME=\"Windows\"' make; \ - make install PREFIX=mdocml-$(VERSION) ; \ - zip -r ../$@ mdocml-$(VERSION) ) - rm -rf .win64 - -mdocml-macosx.zip: $(SRCS) - mkdir -p .macosx/mdocml-$(VERSION)/ - $(INSTALL_SOURCE) $(SRCS) .macosx - ( cd .macosx; \ - CFLAGS="-arch i386 -arch x86_64 -arch ppc" LDFLAGS="-arch i386 -arch x86_64 -arch ppc" make; \ - make install PREFIX=mdocml-$(VERSION) ; \ - zip -r ../$@ mdocml-$(VERSION) ) - rm -rf .macosx - index.html: $(INDEX_OBJS) config.h: config.h.pre config.h.post rm -f config.log ( cat config.h.pre; \ echo; \ - if $(CC) $(CFLAGS) -Werror -o test-fgetln test-fgetln.c >> config.log 2>&1; then \ + echo '#define VERSION "$(VERSION)"'; \ + if $(CC) $(CFLAGS) -Werror -Wno-unused -o test-fgetln test-fgetln.c >> config.log 2>&1; then \ echo '#define HAVE_FGETLN'; \ rm test-fgetln; \ fi; \ - if $(CC) $(CFLAGS) -Werror -o test-strptime test-strptime.c >> config.log 2>&1; then \ + if $(CC) $(CFLAGS) -Werror -Wno-unused -o test-strptime test-strptime.c >> config.log 2>&1; then \ echo '#define HAVE_STRPTIME'; \ rm test-strptime; \ fi; \ - if $(CC) $(CFLAGS) -Werror -o test-getsubopt test-getsubopt.c >> config.log 2>&1; then \ + if $(CC) $(CFLAGS) -Werror -Wno-unused -o test-getsubopt test-getsubopt.c >> config.log 2>&1; then \ echo '#define HAVE_GETSUBOPT'; \ rm test-getsubopt; \ fi; \ - if $(CC) $(CFLAGS) -Werror -o test-strlcat test-strlcat.c >> config.log 2>&1; then \ + if $(CC) $(CFLAGS) -Werror -Wno-unused -o test-strlcat test-strlcat.c >> config.log 2>&1; then \ echo '#define HAVE_STRLCAT'; \ rm test-strlcat; \ fi; \ - if $(CC) $(CFLAGS) -Werror -o test-mmap test-mmap.c >> config.log 2>&1; then \ + if $(CC) $(CFLAGS) -Werror -Wno-unused -o test-mmap test-mmap.c >> config.log 2>&1; then \ echo '#define HAVE_MMAP'; \ rm test-mmap; \ fi; \ - if $(CC) $(CFLAGS) -Werror -o test-strlcpy test-strlcpy.c >> config.log 2>&1; then \ + if $(CC) $(CFLAGS) -Werror -Wno-unused -o test-strlcpy test-strlcpy.c >> config.log 2>&1; then \ echo '#define HAVE_STRLCPY'; \ rm test-strlcpy; \ fi; \ + if $(CC) $(CFLAGS) -Werror -Wno-unused -o test-betoh64 test-betoh64.c >> config.log 2>&1; then \ + echo '#define HAVE_BETOH64'; \ + rm test-betoh64; \ + fi; \ echo; \ cat config.h.post \ ) > $@ @@ -625,21 +426,9 @@ config.h: config.h.pre config.h.post .h.h.html: highlight -I $< >$@ -.1.1.txt .3.3.txt .7.7.txt .8.8.txt: - ./mandoc -Tascii -Wall,stop $< | col -b >$@ - .1.1.html .3.3.html .7.7.html .8.8.html: ./mandoc -Thtml -Wall,stop -Ostyle=style.css,man=%N.%S.html,includes=%I.html $< >$@ -.1.1.ps .3.3.ps .7.7.ps .8.8.ps: - ./mandoc -Tps -Wall,stop $< >$@ - -.1.1.xhtml .3.3.xhtml .7.7.xhtml .8.8.xhtml: - ./mandoc -Txhtml -Wall,stop -Ostyle=style.css,man=%N.%S.xhtml,includes=%I.html $< >$@ - -.1.1.pdf .3.3.pdf .7.7.pdf .8.8.pdf: - ./mandoc -Tpdf -Wall,stop $< >$@ - .sgml.html: validate --warn $< sed -e "s!@VERSION@!$(VERSION)!" -e "s!@VDATE@!$(VDATE)!" $< >$@ Added: vendor/mdocml/dist/NEWS ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ vendor/mdocml/dist/NEWS Fri Jan 31 19:59:03 2014 (r261327) @@ -0,0 +1,370 @@ +$Id: NEWS,v 1.3 2013/10/13 16:06:50 schwarze Exp $ + +This file lists the most important changes in the mdocml.bsd.lv distribution. + +Changes in version 1.12.3, released on December 31, 2013 + + * In the mdoc(7) SYNOPSIS, line breaks and hanging indentation + now work correctly for .Fo/.Fa/.Fc and .Fn blocks. + Thanks to Franco Fichtner for doing part of the work. + * The mdoc(7) .Bk macro got some addititonal bugfixes. + * In mdoc(7) macro arguments, double quotes can now be quoted + by doubling them, just like in man(7). + Thanks to Tsugutomo ENAMI for the patch. + * At the end of man(7) macro lines, end-of-sentence spacing + now works. Thanks to Franco Fichtner for the patch. + * For backward compatibility, the man(7) parser now supports the + man-ext .UR/.UE (uniform resource identifier) block macros. + * The man(7) parser now handles closing blocks that are not open + more gracefully. + * The man(7) parser now ignores blank lines right after .SH and .SS. + * In the man(7) formatter, reset indentation when leaving a block, + not just when entering the next one. + * The roff(7) .nr request now supports incrementing and decrementing + number registers and stops parsing the number right before the + first non-digit character. + * The roff(7) parser now supports the alternative escape sequence + syntax \C'uXXXX' for Unicode characters. + * The roff(7) parser now parses and ignores the .fam (font family) + and .hw (hyphenation points) requests and the \d and \u escape + sequences. + * The roff(7) manual got a new ESCAPE SEQUENCE REFERENCE. + +Changes in version 1.12.2, released on Oktober 5, 2013 + + * The mdoc(7) to man(7) converter, to be called as mandoc -Tman, + is now fully functional. + * The mandoc(1) utility now supports the -Ios (default operating system) + input option, and the -Tutf8 output mode now actually works. + * The mandocdb(8) utility no longer truncates existing databases when + starting to build new ones, but only replaces them when the build + actually succeeds. + * The man(7) parser now supports the PD macro (paragraph distance), + and (for GNU man-ext compatibility only) EX (example block) and EE + (example end). Plus several bugfixes regarding indentation, line + breaks, and vertical spacing, and regarding RS following TP. + * The roff(7) parser now supports the \f(BI (bold+italic) font escape, + the \z (zero cursor advance) escape and the cc (change control + character) and it (input line trap) requests. Plus bugfixes regarding + the \t (tab) escape, nested escape sequences, and conditional requests. + * In mdoc(7), several bugs were fixed related to UTF-8 output of quoting + enclosures, delimiter handling, list indentation and horizontal and + vertical spacing, formatting of the Lk, %U, and %C macros, plus some + bugfixes related to the handling of syntax errors like badly nested + font blocks, stray Ta macros outside column lists, unterminated It Xo + blocks, and non-text children of Nm blocks. + * In tbl(7), the width of horizontal spans and the vertical spacing + around tables was corrected, and in man(7) files, a crash was fixed + that was triggered by some particular unclosed T{ macros. + * For mandoc developers, we now provide a tbl(3) library manual and + gmdiff, a very small, very simplistic groff-versus-mandoc output + comparison tool. + * Provide this NEWS file. + +Changes in version 1.12.1, released on March 23, 2012 + + * Significant work on apropos(1) and mandocdb(8). These tools are now + much more robust. A whatis(1) implementation is now handled as an + apropos(1) mode. These tools are also able to minimally handle + pre-formatted pages, that is, those already formatted by another + utility such as GNU troff. + * The man.cgi(7) script is also now available for wider testing. + It interfaces with mandocdb(8) manuals cached by catman(8). + HTML output is generated on-the-fly by libmandoc or internal + methods to convert pre-formatted pages. + * The mailing list archive for the discuss and tech lists are being + hosted by Gmane at gmane.comp.tools.mdocml.user and + gmane.comp.tools.mdocml.devel, respectively. + +Changes in version 1.12.0, released on October 8, 2011 + + * This version features a new, work-in-progress mandoc(1) output mode: + -Tman. This mode allows a system maintainer to distribute man(7) + media for older systems that may not natively support mdoc(7), such + as old Solaris systems. + * The -Ofragment option was added to mandoc(1)'s -Thtml and -Txhtml modes. + * While adding features, an apropos(1) utility has been merged from the + mandoc-tools sandbox. This interfaces with mandocdb(8) for semantic + search of manual content. apropos(1) is different from the traditional + apropos primarily in allowing keyword search (such as for functions, + utilities, etc.) and regular expressions. Note that the calling + syntax for apropos is likely to change as it settles down. + * In documentation news, the mdoc(7) and man(7) manuals have been + made considerably more readable by adding MACRO OVERVIEW sections, by + moving the gory details of the LANGUAGE SYNTAX to the roff(7) manual, + and by moving the very technical MACRO SYNTAX sections down to the + bottom of the page. + * Furthermore, for tbl(7), the -Tascii mode horizontal spacing of tables + was rewritten completely. It is now compatible with groff(1), both + with and without frames and rulers. + * Nesting of indented blocks is now supported in man(7), and several + bugs were fixed regarding indentation and alignment. + * The page headers in mdoc(7) are now nicer for very long titles. + +Changes in version 1.11.7, released on September 2, 2011 + + * Added demandoc(1) utility for stripping away macros and escapes. + This replaces the historical deroff(1) utility. + * Also improved the mdoc(7) and man(7) manuals. + +Changes in version 1.11.6, released on August 16, 2011 + + * Handling of tr macro in roff(7) implemented. This makes Perl + documentation much more readable. Hyphenation is also now enabled in + man(7) format documents. Many other general improvements have been + implemented. + +Changes in version 1.11.5, released on July 24, 2011 + + * Significant eqn(7) improvements. mdocml can now parse arbitrary eqn + input (although few GNU extensions are accepted, nor is mixing + low-level roff with eqn). See the eqn(7) manual for details. + For the time being, equations are rendered as simple in-line text. + The equation parser satisfies the language specified in the + Second Edition User's Guide: + http://www.kohala.com/start/troff/v7man/eqn/eqn2e.ps + +Changes in version 1.11.4, released on July 12, 2011 + + * Bug-fixes and clean-ups across all systems, especially in mandocdb(8) + and the man(7) parser. This release was significantly assisted by + participants in OpenBSD's c2k11. Thanks! + +Changes in version 1.11.3, released on May 26, 2011 + + * Introduce locale-encoding of output with the -Tlocale output option and + Unicode escaped-character input. See mandoc(1) and mandoc_char(7), + respectively, for details. This allows for non-ASCII characters (e.g., + \[u5000]) to be rendered in the locale's encoding, if said environment + supports wide-character encoding (if it does not, -Tascii is used + instead). Locale support can be turned off at compile time by removing + -DUSE_WCHAR in the Makefile, in which case -Tlocale is always a synonym + for -Tascii. + * Furthermore, multibyte-encoded documents, such as those in UTF-8, may + be on-the-fly recoded into mandoc(1) input by using the newly-added + preconv(1) utility. Note: in the future, this feature may be + integrated into mandoc(1). + +Changes in version 1.11.2, released on May 12, 2011 + + * Corrected some installation issues in version 1.11.1. + * Further migration to libmandoc. + * Initial public release (this utility is very much under development) + of mandocdb(8). This utility produces keyword databases of manual + content, which features semantic querying of manual content. + +Changes in version 1.11.1, released on April 4, 2011 + + * The earlier libroff, libmdoc, and libman soup have been merged into + a single library, libmandoc, which manages all aspects of parsing + real manuals, from line-handling to tbl(7) parsing. + * As usual, many general fixes and improvements have also occurred. + In particular, a great deal of redundancy and superfluous code has + been removed with the merging of the backend libraries. + * see also the changes in 1.10.10 + +Changes in version 1.10.10, March 20, 2011, NOT released + + * Initial eqn(7) functionality is in place. For the time being, + this is limited to the recognition of equation blocks; + future version of mdocml will expand upon this framework. + +Changes in version 1.10.9, released on January 7, 2011 + + * Many back-end fixes have been implemented: argument handling (quoting), + man(7) improvements, error/warning classes, and many more. + * Initial tbl(7) functionality (see the "TS", "TE", and "T&" macros in + the roff(7) manual) has been merged from tbl.bsd.lv. Output is still + minimal, especially for -Thtml and -Txhtml, but manages to at least + display data. This means that mandoc(1) now has built-in support + for two troff preprocessors via libroff: soelim(1) and tbl(1). + +Changes in version 1.10.8, released on December 24, 2010 + + * Overhauled the -Thtml and -Txhtml output modes. They now display + readable output in arbitrary browsers, including text-based ones like + lynx(1). See HTML and XHTML manuals in the DOCUMENTATION section + for examples. Attention: available style-sheet classes have been + considerably changed! See the example.style.css file for details. + Lastly, libmdoc and libman have been cleaned up and reduced in size + and complexity. + * see also the changes in 1.10.7 + +Changes in version 1.10.7, December 6, 2010, NOT released + + Significant improvements merged from OpenBSD downstream, including: + * many new roff(7) components, + * in-line implementation of troff's soelim(1), + * broken-block handling, + * overhauled error classifications, and + * cleaned up handling of error conditions. + +Changes in version 1.10.6, released on September 27, 2010 + + * Calling conventions for mandoc(1) have changed: -W improved and -f + deprecated. + * Non-ASCII characters are also now uniformly discarded. + * Lots of documentation improvements. + * Many incremental fixes accomodating for groff's more interesting + productions. + * Lastly, pod2man(1) preambles are now fully accepted after some + considerable roff(7) and special character support. + +Changes in version 1.10.5, released on July 27, 2010 + + * Primarily a bug-fix and polish release, but including -Tpdf support + in mandoc(1) by way of "Summer of Code". Highlights: + * fix "Sm" and "Bd" handling + * fix end-of-sentence handling for embedded sentences + * polish man(7) documentation + * document all mdoc(7) macros + * polish mandoc(1) -Tps output + * lots of internal clean-ups in character escapes + * un-break literal contexts in man(7) documents + * improve -Thtml output for -man + * add mandoc(1) -Tpdf support + +Changes in version 1.10.4, released on July 12, 2010 + + * Lots of features developed during both "Summer of Code" and the + OpenBSD c2k10 hackathon: + * minimal "ds" roff(7) symbols are supported + * beautified SYNOPSIS section output + * acceptance of scope-block breakage in mdoc(7) + * clarify error message status + * many minor bug-fixes and formatting issues resolved + * see also changes in 1.10.3 + +Changes in version 1.10.3, June 29, 2010, NOT released + + * variable font-width and paper-size support in mandoc(1) -Tps output + * "Bk" mdoc(7) support + +Changes in version 1.10.2, released on June 19, 2010 + + * Small release featuring text-decoration in -Tps output, + a few minor relaxations of errors, and some optimisations. + +Changes in version 1.10.1, released on June 7, 2010 + + * This primarily focusses on the "Bl" and "It" macros described in + mdoc(7). Multi-line column support is now fully compatible with groff, + as are implicit list entries for columns. + * Removed manuals(7) in favour of http://manpages.bsd.lv. + * The way we handle the SYNOPSIS section (see the SYNOPSIS documentation + in MANUAL STRUCTURE) has also been considerably simplified compared + to groff's method. + * Furthermore, the -Owidth=width output option has been added to -Tascii, + see mandoc(1). + * Lastly, initial PostScript output has been added with the -Tps option + to mandoc(1). It's brutally simple at the moment: fixed-font, with no + font decorations. + +Changes in version 1.10.0, released on May 29, 2010 + + * Release consisting of the results from the m2k10 hackathon and up-merge + from OpenBSD. This requires a significant note of thanks to Ingo + Schwarze (OpenBSD) and Joerg Sonnenberger (NetBSD) for their hard work, + and again to Joerg for hosting m2k10. Highlights (mostly cribbed from + Ingo's m2k10 report) follow in no particular order: + * a libroff preprocessor in front of libmdoc and libman stripping out + roff(7) instructions; + * end-of-sentence (EOS) detection in free-form and macro lines; + * correct handling of tab-separated columnar lists in mdoc(7); + * improved main calling routines to optionally use mmap(3) for better + performance; + * cleaned up exiting when invoked as -Tlint or over multiple files + with -fign-errors; + * error and warning message handling re-written to be unified for + libroff, libmdoc, and libman; + * handling of badly-nested explicit-scoped macros; + * improved free-form text parsing in libman and libmdoc; + * significant GNU troff compatibility improvements in -Tascii, + largely in terms of spacing; + * a regression framework for making sure the many fragilities of GNU + troff aren't trampled in subsequent work; + * support for -Tascii breaking at hyphens encountered in free-form text; + * and many more minor fixes and improvements + +Changes in version 1.9.25, released on May 13, 2010 + + * Fixed handling of "\*(Ba" escape. + * Backed out -fno-ign-chars (pointless complexity). + * Fixed erroneous breaking of literal lines. + * Fixed SYNOPSIS breaking lines before non-initial macros. + * Changed default section ordering. + * Most importantly, the framework for end-of-sentence double-spacing is + in place, now implemented for the "end-of-sentence, end-of-line" rule. + * This is a stable roll-back point before the mandoc hackathon in Rostock! + +Changes in version 1.9.24, released on May 9, 2010 + + * Rolled back break-at-hyphen. + * -DUGLY is now the default (no feature splits!). + * Free-form text is not de-chunked any more: lines are passed + whole-sale into the front-end, including whitespace. + * Added mailing lists. + +Changes in version 1.9.23, released on April 7, 2010 + + * mdocml has been linked to the OpenBSD build. + * This version incorporates many small changes, mostly from patches + by OpenBSD, allowing crufty manuals to slip by with warnings instead + of erroring-out. + * Some subtle semantic issues, such as punctuation scope, have also + been fixed. + * Lastly, some issues with -Thtml have been fixed, which prompted an + update to the online manual pages style layout. + +Changes in version 1.9.22, released on March 31, 2010 + + * Adjusted merge of the significant work by Ingo Schwarze + in getting "Xo" blocks (block full implicit, e.g., "It" + for non-columnar lists) to work properly. This isn't + enabled by default: you must specify -DUGLY as a compiler + flag (see the Makefile for details). + +Changes in version 1.9.20, released on March 30, 2010 + + * More efforts to get roff instructions in man(7) documents under + control. Note that roff instructions embedded in line-scoped, + next-line macros (e.g. "B") are not supported. + * Leading punctuation for mdoc(7) macros, such as "Fl ( ( a", + are now correctly handled. + +Changes in version 1.9.18, released on March 27, 2010 + + * Many fixes (largely pertaining to scope) + and improvements (e.g., handling of apostrophe-control macros, + which fixes the strange "BR" seen in some macro output) + to handling roff instructions in man(7) documents. + +Changes in version 1.9.17, released on March 25, 2010 + + * Accept perlpod(1) standard preamble. + * Also accept (and discard) "de", "dei", "am", "ami", and "ig" + roff macro blocks. + +Changes in version 1.9.16, released on March 22, 2010 + + * Inspired by patches and bug reports by Ingo Schwarze, + allowed man(7) to accept non-printing elements to be nested + within next-line scopes, such as "br" within "B" or "TH", + which is valid roff. + * Longsoon architecture also noted and Makefile cleaned up. + +Changes in version 1.9.15, released on February 18, 2010 + + * Moved to our new BSD.lv home. + * XHTML is now an acceptable output mode for mandoc(1); + * "Xr" made more compatible with groff; + * "Vt" fixed when invoked in SYNOPSIS; + * "\\" escape removed; + * end-of-line white-space detected for all lines; + * subtle bug fixed in list display for some modes; + * compatibility layer checked in for compilation in diverse + UNIX systems; + * and column lengths handled correctly. + +For older releases, see the ChangeLog files +in http://mdocml.bsd.lv/snapshots/ . Modified: vendor/mdocml/dist/TODO ============================================================================== --- vendor/mdocml/dist/TODO Fri Jan 31 17:39:51 2014 (r261326) +++ vendor/mdocml/dist/TODO Fri Jan 31 19:59:03 2014 (r261327) @@ -1,25 +1,13 @@ ************************************************************************ * Official mandoc TODO. -* $Id: TODO,v 1.129 2012/03/04 23:53:37 schwarze Exp $ +* $Id: TODO,v 1.162 2013/12/25 14:40:34 schwarze Exp $ ************************************************************************ ************************************************************************ -* parser bugs +* crashes ************************************************************************ -- ".\}" on its own line gets translated to bare ".\&" - which forces pset() into man(7) - and then triggers an unknown macro error - reported by naddy@ Sun, 3 Jul 2011 21:52:24 +0200 - -************************************************************************ -* formatter bugs -************************************************************************ - -- tbl(7): Horizontal and vertical lines are formatted badly: - With the box option, there is too much white space at the end of cells. - Horizontal lines from "=" lines are a bit too long. - yuri dot pankov at gmail dot com Thu, 14 Apr 2011 05:45:26 +0400 +None known. ************************************************************************ * missing features @@ -27,15 +15,11 @@ --- missing roff features ---------------------------------------------- -- The pod2man preamble wants \h'...' with quoted numerical arguments, - see for example AUTHORS in MooseX::Getopt.3p, p5-MooseX-Getopt. +- roff.c should treat \n(.H>23 and \n(.V>19 in the pod2man(1) + preamble as true, see for example AUTHORS in MooseX::Getopt.3p reported by Andreas Voegele Tue, 22 Nov 2011 15:34:47 +0100 on ports@ -- .if n \{ - .br\} - should cause an extra space to be raised. - - .ad (adjust margins) .ad l -- adjust left margin only (flush left) .ad r -- adjust right margin only (flush right) @@ -45,19 +29,46 @@ .ad -- re-enable adjustment without changing the mode Adjustment mode is ignored while in no-fill mode (.nf). -- .it (line traps) occur in mysql(1), yasm_arch(7) - generated by DocBook XSL Stylesheets v1.71.1 - reported by brad@ Sat, 15 Jan 2011 15:48:18 -0500 +- .as (append to string) + found by jca@ in ratpoison(1) Sun, 30 Jun 2013 12:01:09 +0200 + +- .ce (center N lines) + found by naddy@ in xloadimage(1) + found by Juan Francisco Cantero Hurtado + in lang/racket(1) Thu, 20 Jun 2013 03:19:11 +0200 + +- .fc (field control) + found by naddy@ in xloadimage(1) + +- .ll (line length) + found by naddy@ in textproc/enchant(1) Sat, 12 Oct 2013 03:27:10 +0200 + +- .nr third argument (auto-increment step size, requires \n+) + found by bentley@ in sbcl(1) Mon, 9 Dec 2013 18:36:57 -0700 - .ns (no-space mode) occurs in xine-config(1) reported by brad@ Sat, 15 Jan 2011 15:45:23 -0500 *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 20:00:01 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F3CD168F; Fri, 31 Jan 2014 20:00:00 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C6E2E1383; Fri, 31 Jan 2014 20:00:00 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VK00bO074655; Fri, 31 Jan 2014 20:00:00 GMT (envelope-from uqs@svn.freebsd.org) Received: (from uqs@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VK00q7074650; Fri, 31 Jan 2014 20:00:00 GMT (envelope-from uqs@svn.freebsd.org) Message-Id: <201401312000.s0VK00q7074650@svn.freebsd.org> From: Ulrich Spoerlein Date: Fri, 31 Jan 2014 20:00:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261328 - vendor/mdocml/1.12.3 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 20:00:01 -0000 Author: uqs Date: Fri Jan 31 20:00:00 2014 New Revision: 261328 URL: http://svnweb.freebsd.org/changeset/base/261328 Log: Tag mdocml 1.12.3 Added: vendor/mdocml/1.12.3/ - copied from r261327, vendor/mdocml/dist/ From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 20:52:09 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7A4DB5F7; Fri, 31 Jan 2014 20:52:09 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 65CF41840; Fri, 31 Jan 2014 20:52:09 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VKq9eM097259; Fri, 31 Jan 2014 20:52:09 GMT (envelope-from rmh@svn.freebsd.org) Received: (from rmh@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VKq92Z097258; Fri, 31 Jan 2014 20:52:09 GMT (envelope-from rmh@svn.freebsd.org) Message-Id: <201401312052.s0VKq92Z097258@svn.freebsd.org> From: Robert Millan Date: Fri, 31 Jan 2014 20:52:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261329 - stable/10/sys/kern X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 20:52:09 -0000 Author: rmh Date: Fri Jan 31 20:52:08 2014 New Revision: 261329 URL: http://svnweb.freebsd.org/changeset/base/261329 Log: MFC r261138: Accept O_CLOEXEC in shm_open(). Modified: stable/10/sys/kern/uipc_shm.c Directory Properties: stable/10/ (props changed) Modified: stable/10/sys/kern/uipc_shm.c ============================================================================== --- stable/10/sys/kern/uipc_shm.c Fri Jan 31 20:00:00 2014 (r261328) +++ stable/10/sys/kern/uipc_shm.c Fri Jan 31 20:52:08 2014 (r261329) @@ -704,7 +704,7 @@ sys_shm_open(struct thread *td, struct s (uap->flags & O_ACCMODE) != O_RDWR) return (EINVAL); - if ((uap->flags & ~(O_ACCMODE | O_CREAT | O_EXCL | O_TRUNC)) != 0) + if ((uap->flags & ~(O_ACCMODE | O_CREAT | O_EXCL | O_TRUNC | O_CLOEXEC)) != 0) return (EINVAL); fdp = td->td_proc->p_fd; From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 21:30:36 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3EEF0645; Fri, 31 Jan 2014 21:30:36 +0000 (UTC) Received: from mail.ebusiness-leidinger.de (mail.ebusiness-leidinger.de [217.11.53.44]) by mx1.freebsd.org (Postfix) with ESMTP id E05AA1B2F; Fri, 31 Jan 2014 21:30:35 +0000 (UTC) Received: from outgoing.leidinger.net (p57A386D8.dip0.t-ipconnect.de [87.163.134.216]) by mail.ebusiness-leidinger.de (Postfix) with ESMTPSA id 717FE8447C2; Fri, 31 Jan 2014 22:30:14 +0100 (CET) Received: from unknown (Titan.Leidinger.net [192.168.1.17]) by outgoing.leidinger.net (Postfix) with ESMTP id 852093D50; Fri, 31 Jan 2014 22:30:11 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=leidinger.net; s=outgoing-alex; t=1391203811; bh=eDtmS/aadUuBeSVAxDn09mbw/LQQRvS6zUf7C9jzC6Y=; h=Date:From:To:Cc:Subject:In-Reply-To:References; b=1P1T9EDeHYDqwdsqUOvPY24oqJkcPWDibwh80KPE2NnIOBcioMDsfICaL8/r5pSNO IhJPBBsaB9t/HYgeQuvmU+kCGSYk3K+kHyfHtuF46Klmr0wY5U689Yx8Y7718j/wub fEvQf5eny8wTjU8PVLTJ0IfXz2Y+tQZiCU+AevzqZnFGVPCnDvysRhaCtwdHeYvrYm huZsXULuE2cqW1qqMiuFYYRCL6iZx6G/A1xYBIv/uWuMiNWH7I7aloaSm336yi9Wn7 yOsZ6WXLwtAtUyq7aR8Z+EQr1nLn4IWbvSQFKA78azbJcHLvC9YWa6E1FNPhjKGYQA WeH24hs3CLiQA== Date: Fri, 31 Jan 2014 22:30:11 +0100 From: Alexander Leidinger To: Robert Watson Subject: Re: svn commit: r261266 - in head: sys/dev/drm sys/kern sys/sys usr.sbin/jail Message-ID: <20140131223011.0000163b@unknown> In-Reply-To: References: <201401291341.s0TDfDcB068211@svn.freebsd.org> <20140129134344.GW66160@FreeBSD.org> <52E906CD.9050202@freebsd.org> <20140129222210.0000711f@unknown> X-Mailer: Claws Mail 3.9.2-55-g74b05b (GTK+ 2.16.6; i586-pc-mingw32msvc) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-EBL-MailScanner-Information: Please contact the ISP for more information X-EBL-MailScanner-ID: 717FE8447C2.A1587 X-EBL-MailScanner: Found to be clean X-EBL-MailScanner-SpamCheck: not spam, spamhaus-ZEN, SpamAssassin (not cached, score=-1.059, required 6, autolearn=disabled, ALL_TRUSTED -1.00, AWL -0.11, DKIM_SIGNED 0.10, DKIM_VALID -0.10, DKIM_VALID_AU -0.10, RP_MATCHES_RCVD -0.00, TW_EV 0.08, TW_SV 0.08) X-EBL-MailScanner-From: alexander@leidinger.net X-EBL-MailScanner-Watermark: 1391808614.88144@go6+FBEnTfXX/mVxxtfMbQ X-EBL-Spam-Status: No Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Gleb Smirnoff , src-committers@freebsd.org, James Gritton X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 21:30:36 -0000 On Fri, 31 Jan 2014 12:34:48 +0000 (GMT) Robert Watson wrote: > On Wed, 29 Jan 2014, Alexander Leidinger wrote: > > >> It does. I included a warning in jail.8 that this will pretty > >> much undo jail security. There are still reasons some may want to > >> do this, but it's definitely not for everyone or even most people. > > > > It only "unjails" (= basically the same security level as the > > jail-host with the added benefit of the flexibility of a jail like > > easy moving from one system to another) the jail which has this > > flag set. All other jails without the flag can not "escape" to the > > host. > > > > I also have to add that just setting this flag does not give access > > to the host, you also have to configure a non-default devfs rule > > for this jail (to have the devices appear in the jail). > > This is not correct: devices do not need to be delegated in devfs for > PRIV_IO to allow bypass of the Jail security model, due to sysarch() > and the Linux-emulated equivalent, which turn out direct I/O access > from a user process without use of a device node. Ok, then it is just the non-default flag, not the additional devfs part. I agree with your other post that we are better of to document better what it means if an admin allows kmem access for a specific jail. Bye, Alexander. -- http://www.Leidinger.net Alexander @ Leidinger.net: PGP ID = B0063FE7 http://www.FreeBSD.org netchild @ FreeBSD.org : PGP ID = 72077137 From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 22:01:59 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 74B35FA1; Fri, 31 Jan 2014 22:01:59 +0000 (UTC) Received: from felyko.com (felyko.com [IPv6:2607:f2f8:a528::3:1337:ca7]) by mx1.freebsd.org (Postfix) with ESMTP id 576511E43; Fri, 31 Jan 2014 22:01:59 +0000 (UTC) Received: from [IPv6:2601:9:8280:43f:a524:b1d1:7a02:1bae] (unknown [IPv6:2601:9:8280:43f:a524:b1d1:7a02:1bae]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by felyko.com (Postfix) with ESMTPSA id C9FD339828; Fri, 31 Jan 2014 14:01:57 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=felyko.com; s=mail; t=1391205718; bh=ocKGIO+rUJ0tW5lOSyzXKyf8PjxeFGAshPrd/TO/JbI=; h=Subject:From:In-Reply-To:Date:Cc:References:To; b=OShvCPKbZhh12WbERfCrR492lZQjGAlOjHHBC0K3nGtwHB2YxbNooCy0b3NeoEb+S vqGhT6K9pBYAX5hf2zTgJTX0YyYUGrhB/T73tdTyF9RpJRFnbiJAem5TyoKjCk6WeW yxJ1OaWWCIb41oG8N/OyW/VWM4GIYqlmDfg9a1dQ= Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 7.1 \(1827\)) Subject: Re: svn commit: r260888 - in head/sys: amd64/conf i386/conf From: Rui Paulo In-Reply-To: <201401191846.s0JIkdvw046339@svn.freebsd.org> Date: Fri, 31 Jan 2014 14:01:52 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: <65D0418F-A3F2-490E-8A7E-E2212BB7F2F8@felyko.com> References: <201401191846.s0JIkdvw046339@svn.freebsd.org> To: Ed Maste X-Mailer: Apple Mail (2.1827) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 22:01:59 -0000 On 19 Jan 2014, at 10:46, Ed Maste wrote: > Author: emaste > Date: Sun Jan 19 18:46:38 2014 > New Revision: 260888 > URL: http://svnweb.freebsd.org/changeset/base/260888 >=20 > Log: > Add VT kernel configuration to ease testing of vt(9), aka Newcons I thought there was consensus that adding these amd64/i386 configuration = files to the repository was not good idea. =20 Is this something that helps a lot of people? Are you thinking of = removing it later? Can't they co-exist based on a tunable? -- Rui Paulo From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 22:04:14 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id F191D184; Fri, 31 Jan 2014 22:04:13 +0000 (UTC) Received: from felyko.com (felyko.com [IPv6:2607:f2f8:a528::3:1337:ca7]) by mx1.freebsd.org (Postfix) with ESMTP id D36451E56; Fri, 31 Jan 2014 22:04:13 +0000 (UTC) Received: from [IPv6:2601:9:8280:43f:a524:b1d1:7a02:1bae] (unknown [IPv6:2601:9:8280:43f:a524:b1d1:7a02:1bae]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by felyko.com (Postfix) with ESMTPSA id 80B5F39828; Fri, 31 Jan 2014 14:04:06 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=felyko.com; s=mail; t=1391205847; bh=4enUGQMaHyIg+tcL6aufi6UQzuwSmLKQTHj2jZWzJmg=; h=Subject:From:In-Reply-To:Date:Cc:References:To; b=InxC7eF6/KIkHa2ogjM8ofxZHuFmvxdVgVvjjbyeDhAK9+aFc94C520rpLpjNDKcD lWNRpxurxmcRt+ILUjF1fg1ZJpQvKwml71Opzo2Qee2afMlWZHLbGHu1ES1gy9cWxi 2yEpRQsBSVEjQrsaSFbMxYmEPYKBidE9salFiKRA= Content-Type: text/plain; charset=us-ascii Mime-Version: 1.0 (Mac OS X Mail 7.1 \(1827\)) Subject: Re: svn commit: r260927 - head/release/doc/en_US.ISO8859-1/relnotes From: Rui Paulo In-Reply-To: <201401202149.s0KLnxwQ099689@svn.freebsd.org> Date: Fri, 31 Jan 2014 14:04:02 -0800 Content-Transfer-Encoding: quoted-printable Message-Id: <41A37346-1D5A-4644-974E-F41AB1575221@felyko.com> References: <201401202149.s0KLnxwQ099689@svn.freebsd.org> To: Glen Barber X-Mailer: Apple Mail (2.1827) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 22:04:14 -0000 On 20 Jan 2014, at 13:49, Glen Barber wrote: > Author: gjb > Date: Mon Jan 20 21:49:59 2014 > New Revision: 260927 > URL: http://svnweb.freebsd.org/changeset/base/260927 >=20 > Log: > Trim copyright years. > Add missing punctuation. > Use in place of literal quotes. >=20 > Sponsored by: The FreeBSD Foundation >=20 > Modified: > head/release/doc/en_US.ISO8859-1/relnotes/article.xml >=20 > Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml > = =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D > --- head/release/doc/en_US.ISO8859-1/relnotes/article.xml Mon Jan = 20 20:56:09 2014 (r260926) > +++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml Mon Jan = 20 21:49:59 2014 (r260927) > @@ -12,20 +12,6 @@ > $FreeBSD$ >=20 > > - 2000 > - 2001 > - 2002 > - 2003 > - 2004 > - 2005 > - 2006 > - 2007 > - 2008 > - 2009 > - 2010 > - 2011 > - 2012 > - 2013 > 2014 Is this a good idea? I've heard arguments that keeping all these years = is the right approach, but at least we should have 2000-2014, no? -- Rui Paulo From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 22:07:32 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 04C8B3CA; Fri, 31 Jan 2014 22:07:32 +0000 (UTC) Received: from mail0.glenbarber.us (mail0.glenbarber.us [208.86.227.67]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C8FC11E74; Fri, 31 Jan 2014 22:07:31 +0000 (UTC) Received: from glenbarber.us (unknown [IPv6:2001:470:8:1205:2:2:ff:100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by mail0.glenbarber.us (Postfix) with ESMTPSA id 013E816803; Fri, 31 Jan 2014 22:07:29 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.8.3 mail0.glenbarber.us 013E816803 Authentication-Results: mail0.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Fri, 31 Jan 2014 17:07:27 -0500 From: Glen Barber To: Rui Paulo Subject: Re: svn commit: r260888 - in head/sys: amd64/conf i386/conf Message-ID: <20140131220727.GN1740@glenbarber.us> References: <201401191846.s0JIkdvw046339@svn.freebsd.org> <65D0418F-A3F2-490E-8A7E-E2212BB7F2F8@felyko.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="E187YRO8KGM40JwS" Content-Disposition: inline In-Reply-To: <65D0418F-A3F2-490E-8A7E-E2212BB7F2F8@felyko.com> X-Operating-System: FreeBSD 11.0-CURRENT amd64 User-Agent: Mutt/1.5.22 (2013-10-16) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, Ed Maste X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 22:07:32 -0000 --E187YRO8KGM40JwS Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jan 31, 2014 at 02:01:52PM -0800, Rui Paulo wrote: > On 19 Jan 2014, at 10:46, Ed Maste wrote: >=20 > > Author: emaste > > Date: Sun Jan 19 18:46:38 2014 > > New Revision: 260888 > > URL: http://svnweb.freebsd.org/changeset/base/260888 > >=20 > > Log: > > Add VT kernel configuration to ease testing of vt(9), aka Newcons >=20 > I thought there was consensus that adding these amd64/i386 configuration = files to the repository was not good idea. =20 >=20 > Is this something that helps a lot of people? Are you thinking of removi= ng it later? Can't they co-exist based on a tunable? >=20 It is easier to build images with non-GENERIC default kernels this way. The installer does not currently allow selecting a kernel to install, even if multiple exist on the medium. For example, see: http://ftp.freebsd.org/pub/FreeBSD/snapshots/amd64/amd64/ISO-IMAGES/11.= 0/ Glen --E187YRO8KGM40JwS Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (FreeBSD) iQIcBAEBCAAGBQJS7B6fAAoJELls3eqvi17QdpsP/1jXtT4Q4yb8GRXGGMXRKHlW m+puiFjPKflEFlMR8vO/z0MOWRummrJp3Xag6ftl/qHTo3hHPg06VxXMoWJOVN9G qmv7LkmQLFYPVv0UfQMmNJUWMEurmxjUj/yHjOUlkjo92yRwCAKOD+z6RtyGJyt+ arZlSBnbe/dMG4eNGECLfK6GL2Je2Je4gAICkzHUNUh4L8IwK+tVnawO7/lcuSDC YaNa5WkZCYu0gSDQBDQ2b98shA2onWgvIhlHz0KzuDGXB4tmJJg0DBLwKF2iXaci FzMP2KqWgtD5umrtPV3BPa8spLH+rSOPCgh/IIzhoPu9Jc4o095mSa4z8XVmWR/O bQqTFQAndvyOZeliHb9z+RWy0Ty3xbCK2brQe1TY3PPUmzcifeN96odv/ZQUCzxM PUEBq215dsKItrxaaw2fbpYuGhC2fbZMz0TQUal5x+0nin5HM7AD2QhuclL2Gubf lf7arJn/9KeURuoyty8nXjpwnV3CfJ5eCyuzRuGV+rDFn+LlJz2hpftuVKY8bS0E sSVwlGVy2eOlbKB7su4wO7a03TbPmtZKgsO2FHB/JIJprvS+pwdRvSUrufMVjisY xHKkiSC+O05s+xmGUce4ARev6Sesh3Frq29lI8b/qdUdjd/Ae0+n4v6zh9F/oySw JGDPjEVkABsLAhYFkN9I =tEZj -----END PGP SIGNATURE----- --E187YRO8KGM40JwS-- From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 22:11:02 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7CFF5590; Fri, 31 Jan 2014 22:11:02 +0000 (UTC) Received: from mail0.glenbarber.us (mail0.glenbarber.us [208.86.227.67]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 39A2F1EE2; Fri, 31 Jan 2014 22:11:01 +0000 (UTC) Received: from glenbarber.us (unknown [IPv6:2001:470:8:1205:2:2:ff:100]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) (Authenticated sender: gjb) by mail0.glenbarber.us (Postfix) with ESMTPSA id 868161684D; Fri, 31 Jan 2014 22:11:00 +0000 (UTC) DKIM-Filter: OpenDKIM Filter v2.8.3 mail0.glenbarber.us 868161684D Authentication-Results: mail0.glenbarber.us; dkim=none reason="no signature"; dkim-adsp=none Date: Fri, 31 Jan 2014 17:10:58 -0500 From: Glen Barber To: Rui Paulo Subject: Re: svn commit: r260927 - head/release/doc/en_US.ISO8859-1/relnotes Message-ID: <20140131221058.GO1740@glenbarber.us> References: <201401202149.s0KLnxwQ099689@svn.freebsd.org> <41A37346-1D5A-4644-974E-F41AB1575221@felyko.com> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="DBUa/BSa4z6QPQv1" Content-Disposition: inline In-Reply-To: <41A37346-1D5A-4644-974E-F41AB1575221@felyko.com> X-Operating-System: FreeBSD 11.0-CURRENT amd64 User-Agent: Mutt/1.5.22 (2013-10-16) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 22:11:02 -0000 --DBUa/BSa4z6QPQv1 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Fri, Jan 31, 2014 at 02:04:02PM -0800, Rui Paulo wrote: > On 20 Jan 2014, at 13:49, Glen Barber wrote: >=20 > > Author: gjb > > Date: Mon Jan 20 21:49:59 2014 > > New Revision: 260927 > > URL: http://svnweb.freebsd.org/changeset/base/260927 > >=20 > > Log: > > Trim copyright years. > > Add missing punctuation. > > Use in place of literal quotes. > >=20 > > Sponsored by: The FreeBSD Foundation > >=20 > > Modified: > > head/release/doc/en_US.ISO8859-1/relnotes/article.xml > >=20 > > Modified: head/release/doc/en_US.ISO8859-1/relnotes/article.xml > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D > > --- head/release/doc/en_US.ISO8859-1/relnotes/article.xml Mon Jan 20 20= :56:09 2014 (r260926) > > +++ head/release/doc/en_US.ISO8859-1/relnotes/article.xml Mon Jan 20 21= :49:59 2014 (r260927) > > @@ -12,20 +12,6 @@ > > $FreeBSD$ > >=20 > > > > - 2000 > > - 2001 > > - 2002 > > - 2003 > > - 2004 > > - 2005 > > - 2006 > > - 2007 > > - 2008 > > - 2009 > > - 2010 > > - 2011 > > - 2012 > > - 2013 > > 2014 >=20 > Is this a good idea? I've heard arguments that keeping all these > years is the right approach, but at least we should have 2000-2014, > no? >=20 There are a number of problems with these documents at this point. To be honest, the copyright years in the document really are the least of my concerns with them right now. But, are the release notes for a specific version of FreeBSD copyrighted for the entirety of the Project as a whole, or the year(s) the release in question was in the release cycle? I do not know the answer. Similar was done for 9.2-RELEASE, and I think 8.4-RELEASE, fwiw. Glen --DBUa/BSa4z6QPQv1 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.22 (FreeBSD) iQIcBAEBCAAGBQJS7B9yAAoJELls3eqvi17QiHMP/0sXZqxiomyFqyGecxsfdU8P EUPLGwRvfxglys/zsYbzhN0GgKe3dTECa+CqzW4S5KCSryNH7SEVVeP0vHbxy4kN D0mUCwr2KpeAKkA3osUeSKuSJ6qVsdirXvQOZsa4nSnTyIXIgh5TuAHZ9mb1D/v1 eLQT9d4t9ClLJt2Me9I3esNoPfX6YtJI6/s0F1c1yn2Lic2rVGepQ9VromyUmc0d fO/60rSrjmvXa1/3jjVHeIsSMBMdnAJDuv5VXLl82uJLU7Cv9U+LwFVqYFSOJjNj 0GNT15m2aza7uhkIysC5JumS5xTPyT2/aw/tD40l94r64rKjlxNBsB8c48XCcet0 cCRRk/Hd9NHdtnFcp99yysxVwNJJPg2qQxesNHpDIG8xmX67rOV8DyBSGQXVCAKY Ln6a14Oo8Du5virBBWpPuViefwVhRdxTk855nyPCLe5t2OAruyee4l8YS0zoifbb WHFlQsoQBMsHDuh+BRgEMLwhB6uxbwNuKov28V42rF7jkXwptbQiRcQBhkvUhlfp WV19HO1gqAsidHbInHz6z1AJtieBLX07LUd2VrZaTOmiQdR4trmZGA5qbE+jlaeQ c49SfoCk6DE3voFaL4Eew/zaRneQXJsBtlLQofjRfJOd5xffivEbyP9s2I8OJ/DW 8fyZWreCJLYmNT3lELsb =03Tv -----END PGP SIGNATURE----- --DBUa/BSa4z6QPQv1-- From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 22:42:27 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 612ABC9E; Fri, 31 Jan 2014 22:42:27 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4CFC81115; Fri, 31 Jan 2014 22:42:27 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VMgRsm041017; Fri, 31 Jan 2014 22:42:27 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VMgR9k041016; Fri, 31 Jan 2014 22:42:27 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201401312242.s0VMgR9k041016@svn.freebsd.org> From: Hans Petter Selasky Date: Fri, 31 Jan 2014 22:42:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261330 - head/sys/dev/usb/wlan X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 22:42:27 -0000 Author: hselasky Date: Fri Jan 31 22:42:26 2014 New Revision: 261330 URL: http://svnweb.freebsd.org/changeset/base/261330 Log: Fix a range check for maximum transmit length. The existing code was off by 4 bytes in one case. Approved by: kevlo @ MFC after: 2 weeks Modified: head/sys/dev/usb/wlan/if_run.c Modified: head/sys/dev/usb/wlan/if_run.c ============================================================================== --- head/sys/dev/usb/wlan/if_run.c Fri Jan 31 20:52:08 2014 (r261329) +++ head/sys/dev/usb/wlan/if_run.c Fri Jan 31 22:42:26 2014 (r261330) @@ -3070,10 +3070,10 @@ tr_setup: STAILQ_REMOVE_HEAD(&pq->tx_qh, next); m = data->m; - size = (sc->mac_ver == 0x5592) ? - RUN_MAX_TXSZ + sizeof(uint32_t) : RUN_MAX_TXSZ; + size = (sc->mac_ver == 0x5592) ? + sizeof(data->desc) + sizeof(uint32_t) : sizeof(data->desc); if ((m->m_pkthdr.len + - sizeof(data->desc) + 3 + 8) > size) { + size + 3 + 8) > RUN_MAX_TXSZ) { DPRINTF("data overflow, %u bytes\n", m->m_pkthdr.len); @@ -3085,8 +3085,6 @@ tr_setup: } pc = usbd_xfer_get_frame(xfer, 0); - size = (sc->mac_ver == 0x5592) ? - sizeof(data->desc) + sizeof(uint32_t) : sizeof(data->desc); usbd_copy_in(pc, 0, &data->desc, size); usbd_m_copy_in(pc, size, m, 0, m->m_pkthdr.len); size += m->m_pkthdr.len; From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 23:04:20 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5136E4A1; Fri, 31 Jan 2014 23:04:20 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 23393129F; Fri, 31 Jan 2014 23:04:20 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VN4K0h049123; Fri, 31 Jan 2014 23:04:20 GMT (envelope-from uqs@svn.freebsd.org) Received: (from uqs@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VN4J0w049118; Fri, 31 Jan 2014 23:04:19 GMT (envelope-from uqs@svn.freebsd.org) Message-Id: <201401312304.s0VN4J0w049118@svn.freebsd.org> From: Ulrich Spoerlein Date: Fri, 31 Jan 2014 23:04:19 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261331 - vendor/mdocml/dist X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 23:04:20 -0000 Author: uqs Date: Fri Jan 31 23:04:19 2014 New Revision: 261331 URL: http://svnweb.freebsd.org/changeset/base/261331 Log: Really import mdocml version 1.12.3 and not a preliminary tarball. Modified: vendor/mdocml/dist/mandoc.c vendor/mdocml/dist/mandoc.h vendor/mdocml/dist/roff.c Modified: vendor/mdocml/dist/mandoc.c ============================================================================== --- vendor/mdocml/dist/mandoc.c Fri Jan 31 22:42:26 2014 (r261330) +++ vendor/mdocml/dist/mandoc.c Fri Jan 31 23:04:19 2014 (r261331) @@ -1,4 +1,4 @@ -/* $Id: mandoc.c,v 1.73 2013/12/26 02:55:28 schwarze Exp $ */ +/* $Id: mandoc.c,v 1.74 2013/12/30 18:30:32 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons * Copyright (c) 2011, 2012, 2013 Ingo Schwarze @@ -40,7 +40,7 @@ static char *time2a(time_t); enum mandoc_esc -mandoc_escape(const char const **end, const char const **start, int *sz) +mandoc_escape(const char **end, const char **start, int *sz) { const char *local_start; int local_sz; Modified: vendor/mdocml/dist/mandoc.h ============================================================================== --- vendor/mdocml/dist/mandoc.h Fri Jan 31 22:42:26 2014 (r261330) +++ vendor/mdocml/dist/mandoc.h Fri Jan 31 23:04:19 2014 (r261331) @@ -1,4 +1,4 @@ -/* $Id: mandoc.h,v 1.111 2013/10/05 20:30:05 schwarze Exp $ */ +/* $Id: mandoc.h,v 1.112 2013/12/30 18:30:32 schwarze Exp $ */ /* * Copyright (c) 2010, 2011 Kristaps Dzonsons * Copyright (c) 2012, 2013 Ingo Schwarze @@ -400,8 +400,7 @@ struct man; __BEGIN_DECLS void *mandoc_calloc(size_t, size_t); -enum mandoc_esc mandoc_escape(const char const **, - const char const **, int *); +enum mandoc_esc mandoc_escape(const char **, const char **, int *); void *mandoc_malloc(size_t); void *mandoc_realloc(void *, size_t); char *mandoc_strdup(const char *); Modified: vendor/mdocml/dist/roff.c ============================================================================== --- vendor/mdocml/dist/roff.c Fri Jan 31 22:42:26 2014 (r261330) +++ vendor/mdocml/dist/roff.c Fri Jan 31 23:04:19 2014 (r261331) @@ -1,4 +1,4 @@ -/* $Id: roff.c,v 1.188 2013/12/25 00:50:05 schwarze Exp $ */ +/* $Id: roff.c,v 1.189 2013/12/30 18:44:06 schwarze Exp $ */ /* * Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons * Copyright (c) 2010, 2011, 2012, 2013 Ingo Schwarze @@ -646,8 +646,7 @@ roff_parsetext(char **bufp, size_t *szp, if ('\\' == *p) { /* Skip over escapes. */ p++; - esc = mandoc_escape - ((const char const **)&p, NULL, NULL); + esc = mandoc_escape((const char **)&p, NULL, NULL); if (ESCAPE_ERROR == esc) break; continue; From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 23:05:07 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 516575CD; Fri, 31 Jan 2014 23:05:07 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 23D1F12A4; Fri, 31 Jan 2014 23:05:07 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VN57Ng049306; Fri, 31 Jan 2014 23:05:07 GMT (envelope-from uqs@svn.freebsd.org) Received: (from uqs@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VN574l049305; Fri, 31 Jan 2014 23:05:07 GMT (envelope-from uqs@svn.freebsd.org) Message-Id: <201401312305.s0VN574l049305@svn.freebsd.org> From: Ulrich Spoerlein Date: Fri, 31 Jan 2014 23:05:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261332 - vendor/mdocml/1.12.3/dist X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 23:05:07 -0000 Author: uqs Date: Fri Jan 31 23:05:06 2014 New Revision: 261332 URL: http://svnweb.freebsd.org/changeset/base/261332 Log: Tag the correct version 1.12.3 for mdocml Added: vendor/mdocml/1.12.3/dist/ - copied from r261331, vendor/mdocml/dist/ From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 23:08:33 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 03E6F72B; Fri, 31 Jan 2014 23:08:33 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CC55412C1; Fri, 31 Jan 2014 23:08:32 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VN8WpO049802; Fri, 31 Jan 2014 23:08:32 GMT (envelope-from uqs@svn.freebsd.org) Received: (from uqs@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VN8W6J049801; Fri, 31 Jan 2014 23:08:32 GMT (envelope-from uqs@svn.freebsd.org) Message-Id: <201401312308.s0VN8W6J049801@svn.freebsd.org> From: Ulrich Spoerlein Date: Fri, 31 Jan 2014 23:08:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261333 - vendor/mdocml/1.12.3/dist X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 23:08:33 -0000 Author: uqs Date: Fri Jan 31 23:08:32 2014 New Revision: 261333 URL: http://svnweb.freebsd.org/changeset/base/261333 Log: Undo wrongly copied mdocml tag. This is not my day ... Deleted: vendor/mdocml/1.12.3/dist/ From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 23:13:27 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 89AA3967; Fri, 31 Jan 2014 23:13:27 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5C878133D; Fri, 31 Jan 2014 23:13:27 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VNDR4r053275; Fri, 31 Jan 2014 23:13:27 GMT (envelope-from uqs@svn.freebsd.org) Received: (from uqs@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VNDR2U053274; Fri, 31 Jan 2014 23:13:27 GMT (envelope-from uqs@svn.freebsd.org) Message-Id: <201401312313.s0VNDR2U053274@svn.freebsd.org> From: Ulrich Spoerlein Date: Fri, 31 Jan 2014 23:13:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261334 - vendor/mdocml/1.12.3 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 23:13:27 -0000 Author: uqs Date: Fri Jan 31 23:13:26 2014 New Revision: 261334 URL: http://svnweb.freebsd.org/changeset/base/261334 Log: Remove wrongly tagged mdocml version 1.12.3 Deleted: vendor/mdocml/1.12.3/ From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 23:14:09 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1BB09AA4; Fri, 31 Jan 2014 23:14:09 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E24941346; Fri, 31 Jan 2014 23:14:08 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VNE82O053417; Fri, 31 Jan 2014 23:14:08 GMT (envelope-from uqs@svn.freebsd.org) Received: (from uqs@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VNE8cw053416; Fri, 31 Jan 2014 23:14:08 GMT (envelope-from uqs@svn.freebsd.org) Message-Id: <201401312314.s0VNE8cw053416@svn.freebsd.org> From: Ulrich Spoerlein Date: Fri, 31 Jan 2014 23:14:08 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Subject: svn commit: r261335 - vendor/mdocml/1.12.3 X-SVN-Group: vendor MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 23:14:09 -0000 Author: uqs Date: Fri Jan 31 23:14:08 2014 New Revision: 261335 URL: http://svnweb.freebsd.org/changeset/base/261335 Log: Tag mdocml 1.12.3 correctly and the right version this time. Added: vendor/mdocml/1.12.3/ - copied from r261334, vendor/mdocml/dist/ From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 23:16:44 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D12E0C36; Fri, 31 Jan 2014 23:16:44 +0000 (UTC) Received: from mail-ob0-x234.google.com (mail-ob0-x234.google.com [IPv6:2607:f8b0:4003:c01::234]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 7653B1360; Fri, 31 Jan 2014 23:16:41 +0000 (UTC) Received: by mail-ob0-f180.google.com with SMTP id wp4so5601479obc.25 for ; Fri, 31 Jan 2014 15:16:40 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:content-type; bh=ruxAUoPcWsGCMQjuf3X7IrgOmuWSNUYLTIs+rELcbuI=; b=Syc7k5xvJ/G99BTFMLz3wkB+NCZm+3+nl+gYPHacuZqSLjdtlBxIKq4tDvsezAnMn0 Phl+4rFodMLDUBv2G6oFOLTbO98poJdjnlnvEGcoyIbqhwc4/lqD4eGT3bzuvv+Y4sxW ibrPqfcC+YD8JmdyuBABJ1CwuJJfND5TToTVXmwrATBqxXNUQdzhpRkeMlXYHGUc7KZ9 m8PdXlbXGK1xalzJwx3cax9FMb4YPjaULkeCK1m+1DQozhL2KimQ0zY9lG66IGkf3UPa K5OLoJTI6onfxQ8RX1740VQIDAN4zkdSE5Oa4DpSmIxf68s/4nfRPiOnPYzZJv2Y+NYo bmXw== MIME-Version: 1.0 X-Received: by 10.60.159.133 with SMTP id xc5mr18899146oeb.37.1391210200787; Fri, 31 Jan 2014 15:16:40 -0800 (PST) Sender: uspoerlein@gmail.com Received: by 10.76.84.169 with HTTP; Fri, 31 Jan 2014 15:16:40 -0800 (PST) In-Reply-To: <201401312314.s0VNE8cw053416@svn.freebsd.org> References: <201401312314.s0VNE8cw053416@svn.freebsd.org> Date: Sat, 1 Feb 2014 00:16:40 +0100 X-Google-Sender-Auth: ntiYXATRxiF6zI-ose7Sq02-kso Message-ID: Subject: Re: svn commit: r261335 - vendor/mdocml/1.12.3 From: =?UTF-8?Q?Ulrich_Sp=C3=B6rlein?= To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-vendor@freebsd.org Content-Type: text/plain; charset=UTF-8 X-Content-Filtered-By: Mailman/MimeDel 2.1.17 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 23:16:44 -0000 Sorry for the mess. I'd like to have a chat with whoever thought it a good idea to implement tagging via copy commands ... Regards, Uli 2014-02-01 Ulrich Spoerlein : > Author: uqs > Date: Fri Jan 31 23:14:08 2014 > New Revision: 261335 > URL: http://svnweb.freebsd.org/changeset/base/261335 > > Log: > Tag mdocml 1.12.3 correctly and the right version this time. > > Added: > vendor/mdocml/1.12.3/ > - copied from r261334, vendor/mdocml/dist/ > From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 23:18:31 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2D692E01; Fri, 31 Jan 2014 23:18:31 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1A0711374; Fri, 31 Jan 2014 23:18:31 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VNIU3u053956; Fri, 31 Jan 2014 23:18:30 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VNIUR0053955; Fri, 31 Jan 2014 23:18:30 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401312318.s0VNIUR0053955@svn.freebsd.org> From: Warner Losh Date: Fri, 31 Jan 2014 23:18:30 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261336 - head/sys/arm/arm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 23:18:31 -0000 Author: imp Date: Fri Jan 31 23:18:30 2014 New Revision: 261336 URL: http://svnweb.freebsd.org/changeset/base/261336 Log: Fix silly typo... Modified: head/sys/arm/arm/locore.S Modified: head/sys/arm/arm/locore.S ============================================================================== --- head/sys/arm/arm/locore.S Fri Jan 31 23:14:08 2014 (r261335) +++ head/sys/arm/arm/locore.S Fri Jan 31 23:18:30 2014 (r261336) @@ -265,9 +265,9 @@ mmu_init_table: MMU_INIT(PHYSADDR, PHYSADDR, 64, L1_TYPE_S|L1_S_C|L1_S_AP(AP_KRW)) /* map VA 0xc0000000..0xc3ffffff to PA */ MMU_INIT(KERNBASE, PHYSADDR, 64, L1_TYPE_S|L1_S_C|L1_S_AP(AP_KRW)) -#if defined(SOCDEV_PA) && defined(SOCKDEV_VA) +#if defined(SOCDEV_PA) && defined(SOCDEV_VA) /* Map in 0x04000000 worth of the SoC's devices for bootstrap debugging */ - MMU_INIT(SOCKDEV_VA, SOCDEV_PA, 64, L1_TYPE_S|L1_S_C|L1_S_AP(AP_KRW)) + MMU_INIT(SOCDEV_VA, SOCDEV_PA, 64, L1_TYPE_S|L1_S_C|L1_S_AP(AP_KRW)) #endif #else MMU_INIT(PHYSADDR, PHYSADDR , 64, L1_TYPE_S|L1_SHARED|L1_S_C|L1_S_AP(AP_KRW)) From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 23:28:19 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 2BD5D237; Fri, 31 Jan 2014 23:28:19 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 181D3147B; Fri, 31 Jan 2014 23:28:19 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VNSI3T057776; Fri, 31 Jan 2014 23:28:18 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VNSIwL057775; Fri, 31 Jan 2014 23:28:18 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401312328.s0VNSIwL057775@svn.freebsd.org> From: Warner Losh Date: Fri, 31 Jan 2014 23:28:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261337 - head/sys/arm/at91 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 23:28:19 -0000 Author: imp Date: Fri Jan 31 23:28:18 2014 New Revision: 261337 URL: http://svnweb.freebsd.org/changeset/base/261337 Log: Minor cleanup of comments. Modified: head/sys/arm/at91/at91_machdep.c Modified: head/sys/arm/at91/at91_machdep.c ============================================================================== --- head/sys/arm/at91/at91_machdep.c Fri Jan 31 23:18:30 2014 (r261336) +++ head/sys/arm/at91/at91_machdep.c Fri Jan 31 23:28:18 2014 (r261337) @@ -131,15 +131,12 @@ struct pv_addr kernelstack; /* Static device mappings. */ const struct arm_devmap_entry at91_devmap[] = { /* - * Map the on-board devices VA == PA so that we can access them - * with the MMU on or off. + * Map the critical on-board devices. The interrupt vector at + * 0xffff0000 makes it impossible to map them PA == VA, so we map all + * 0xfffxxxxx addresses to 0xdffxxxxx. This covers all critical devices + * on all members of the AT91SAM9 and AT91RM9200 families. */ { - /* - * This at least maps the interrupt controller, the UART - * and the timer. Other devices should use newbus to - * map their memory anyway. - */ 0xdff00000, 0xfff00000, 0x00100000, From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 23:38:06 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 71C1652A; Fri, 31 Jan 2014 23:38:06 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5E2E71534; Fri, 31 Jan 2014 23:38:06 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VNc69S061528; Fri, 31 Jan 2014 23:38:06 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VNc6hv061527; Fri, 31 Jan 2014 23:38:06 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201401312338.s0VNc6hv061527@svn.freebsd.org> From: Warner Losh Date: Fri, 31 Jan 2014 23:38:06 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261338 - head/sys/arm/at91 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 23:38:06 -0000 Author: imp Date: Fri Jan 31 23:38:05 2014 New Revision: 261338 URL: http://svnweb.freebsd.org/changeset/base/261338 Log: Move these for diff reduction against FDT work. Modified: head/sys/arm/at91/at91_machdep.c Modified: head/sys/arm/at91/at91_machdep.c ============================================================================== --- head/sys/arm/at91/at91_machdep.c Fri Jan 31 23:28:18 2014 (r261337) +++ head/sys/arm/at91/at91_machdep.c Fri Jan 31 23:38:05 2014 (r261338) @@ -116,18 +116,6 @@ extern u_int undefined_handler_address; struct pv_addr kernel_pt_table[NUM_KERNEL_PTS]; -/* Physical and virtual addresses for some global pages */ - -vm_paddr_t phys_avail[10]; -vm_paddr_t dump_avail[4]; - -struct pv_addr systempage; -struct pv_addr msgbufpv; -struct pv_addr irqstack; -struct pv_addr undstack; -struct pv_addr abtstack; -struct pv_addr kernelstack; - /* Static device mappings. */ const struct arm_devmap_entry at91_devmap[] = { /* @@ -209,6 +197,18 @@ const struct arm_devmap_entry at91_devma { 0, 0, 0, 0, 0, } }; +/* Physical and virtual addresses for some global pages */ + +vm_paddr_t phys_avail[10]; +vm_paddr_t dump_avail[4]; + +struct pv_addr systempage; +struct pv_addr msgbufpv; +struct pv_addr irqstack; +struct pv_addr undstack; +struct pv_addr abtstack; +struct pv_addr kernelstack; + #ifdef LINUX_BOOT_ABI extern int membanks; extern int memstart[]; From owner-svn-src-all@FreeBSD.ORG Fri Jan 31 23:44:55 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1F924733; Fri, 31 Jan 2014 23:44:55 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 0BA1015D8; Fri, 31 Jan 2014 23:44:55 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s0VNisCX064858; Fri, 31 Jan 2014 23:44:54 GMT (envelope-from brueffer@svn.freebsd.org) Received: (from brueffer@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s0VNisl4064857; Fri, 31 Jan 2014 23:44:54 GMT (envelope-from brueffer@svn.freebsd.org) Message-Id: <201401312344.s0VNisl4064857@svn.freebsd.org> From: Christian Brueffer Date: Fri, 31 Jan 2014 23:44:54 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261339 - head/share/man/man4 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 31 Jan 2014 23:44:55 -0000 Author: brueffer Date: Fri Jan 31 23:44:54 2014 New Revision: 261339 URL: http://svnweb.freebsd.org/changeset/base/261339 Log: MLINK ixgbe.4 to {if_ix.4, ix.4}. An update for ixgbe.4 which deals with the "ix prefix being shared by two drivers" situation is forthcoming. Thanks to dwhite for the ixgbe history lesson. MFC after: 1 week Modified: head/share/man/man4/Makefile Modified: head/share/man/man4/Makefile ============================================================================== --- head/share/man/man4/Makefile Fri Jan 31 23:38:05 2014 (r261338) +++ head/share/man/man4/Makefile Fri Jan 31 23:44:54 2014 (r261339) @@ -642,6 +642,8 @@ MLINKS+=ipw.4 if_ipw.4 MLINKS+=iwi.4 if_iwi.4 MLINKS+=iwn.4 if_iwn.4 MLINKS+=ixgb.4 if_ixgb.4 +MLINKS+=ixgbe.4 ix.4 +MLINKS+=ixgbe.4 if_ix.4 MLINKS+=ixgbe.4 if_ixgbe.4 MLINKS+=jme.4 if_jme.4 MLINKS+=kue.4 if_kue.4 From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 00:07:17 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 925B4EEE; Sat, 1 Feb 2014 00:07:17 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 7EAA51764; Sat, 1 Feb 2014 00:07:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s1107Hsb073722; Sat, 1 Feb 2014 00:07:17 GMT (envelope-from des@svn.freebsd.org) Received: (from des@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s1107GIp073719; Sat, 1 Feb 2014 00:07:16 GMT (envelope-from des@svn.freebsd.org) Message-Id: <201402010007.s1107GIp073719@svn.freebsd.org> From: Dag-Erling Smørgrav Date: Sat, 1 Feb 2014 00:07:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261340 - head/crypto/openssh X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 00:07:17 -0000 Author: des Date: Sat Feb 1 00:07:16 2014 New Revision: 261340 URL: http://svnweb.freebsd.org/changeset/base/261340 Log: Turn sandboxing on by default. Modified: head/crypto/openssh/servconf.c head/crypto/openssh/sshd_config head/crypto/openssh/sshd_config.5 Modified: head/crypto/openssh/servconf.c ============================================================================== --- head/crypto/openssh/servconf.c Fri Jan 31 23:44:54 2014 (r261339) +++ head/crypto/openssh/servconf.c Sat Feb 1 00:07:16 2014 (r261340) @@ -314,7 +314,7 @@ fill_default_server_options(ServerOption options->version_addendum = xstrdup(SSH_VERSION_FREEBSD); /* Turn privilege separation on by default */ if (use_privsep == -1) - use_privsep = PRIVSEP_NOSANDBOX; + use_privsep = PRIVSEP_ON; #ifndef HAVE_MMAP if (use_privsep && options->compression == 1) { Modified: head/crypto/openssh/sshd_config ============================================================================== --- head/crypto/openssh/sshd_config Fri Jan 31 23:44:54 2014 (r261339) +++ head/crypto/openssh/sshd_config Sat Feb 1 00:07:16 2014 (r261340) @@ -110,7 +110,7 @@ #PrintLastLog yes #TCPKeepAlive yes #UseLogin no -#UsePrivilegeSeparation yes +#UsePrivilegeSeparation sandbox #PermitUserEnvironment no #Compression delayed #ClientAliveInterval 0 Modified: head/crypto/openssh/sshd_config.5 ============================================================================== --- head/crypto/openssh/sshd_config.5 Fri Jan 31 23:44:54 2014 (r261339) +++ head/crypto/openssh/sshd_config.5 Sat Feb 1 00:07:16 2014 (r261340) @@ -1227,7 +1227,7 @@ the privilege of the authenticated user. The goal of privilege separation is to prevent privilege escalation by containing any corruption within the unprivileged processes. The default is -.Dq yes . +.Dq sandbox . If .Cm UsePrivilegeSeparation is set to From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 01:28:37 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0392AAEC; Sat, 1 Feb 2014 01:28:37 +0000 (UTC) Received: from m2.gritton.org (gritton.org [199.192.164.235]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id B69741D30; Sat, 1 Feb 2014 01:28:36 +0000 (UTC) Received: from [192.168.0.34] (c-50-168-192-61.hsd1.ut.comcast.net [50.168.192.61]) (authenticated bits=0) by m2.gritton.org (8.14.7/8.14.7) with ESMTP id s111SZZH057284; Fri, 31 Jan 2014 18:28:35 -0700 (MST) (envelope-from jamie@freebsd.org) Message-ID: <52EC4DBB.50804@freebsd.org> Date: Fri, 31 Jan 2014 18:28:27 -0700 From: James Gritton User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 MIME-Version: 1.0 To: Alexander Leidinger , Robert Watson Subject: Re: svn commit: r261266 - in head: sys/dev/drm sys/kern sys/sys usr.sbin/jail References: <201401291341.s0TDfDcB068211@svn.freebsd.org> <20140129134344.GW66160@FreeBSD.org> <52E906CD.9050202@freebsd.org> <20140129222210.0000711f@unknown> <20140131223011.0000163b@unknown> In-Reply-To: <20140131223011.0000163b@unknown> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, Gleb Smirnoff , src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 01:28:37 -0000 On 1/31/2014 2:30 PM, Alexander Leidinger wrote: > On Fri, 31 Jan 2014 12:34:48 +0000 (GMT) > Robert Watson wrote: >> On Wed, 29 Jan 2014, Alexander Leidinger wrote: >>>> It does. I included a warning in jail.8 that this will pretty >>>> much undo jail security. There are still reasons some may want to >>>> do this, but it's definitely not for everyone or even most people. >>> >>> It only "unjails" (= basically the same security level as the >>> jail-host with the added benefit of the flexibility of a jail like >>> easy moving from one system to another) the jail which has this >>> flag set. All other jails without the flag can not "escape" to the >>> host. >>> >>> I also have to add that just setting this flag does not give access >>> to the host, you also have to configure a non-default devfs rule >>> for this jail (to have the devices appear in the jail). >> >> This is not correct: devices do not need to be delegated in devfs for >> PRIV_IO to allow bypass of the Jail security model, due to sysarch() >> and the Linux-emulated equivalent, which turn out direct I/O access >> from a user process without use of a device node. > > Ok, then it is just the non-default flag, not the additional devfs part. > > I agree with your other post that we are better of to document better > what it means if an admin allows kmem access for a specific jail. I second the documentation route. Yes, it's true that this option makes a totally insecure jail - at least one lacking the expected jail security additions. But I think that while security is one of the primary purposes of jails, it's not the only purpose. It should be possible to have a trusted "master jail" that still takes advantage of the encapsulation while allowing otherwise unsupported features such as a desktop. The distinction of whether certain devices are required to break out of a jail with allow.kmem is something of a red herring - the fact is that anyone who wants this level of access is going to have the devices in place anyway. I suppose "obviate" wasn't the best word for the situation. Maybe something that starts with "WARNING: ..." is in order. I'd like to re-submit the patch with only the documentation changed (unless someone knows of something that would accomplish the same goals with different code). But I'll run it by secteam@ first, and abide by the consensus there. - Jamie From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 02:03:52 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C91A1FC8; Sat, 1 Feb 2014 02:03:52 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A8DA51F48; Sat, 1 Feb 2014 02:03:52 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s1123qMI019161; Sat, 1 Feb 2014 02:03:52 GMT (envelope-from jhibbits@svn.freebsd.org) Received: (from jhibbits@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s1123pjF019150; Sat, 1 Feb 2014 02:03:51 GMT (envelope-from jhibbits@svn.freebsd.org) Message-Id: <201402010203.s1123pjF019150@svn.freebsd.org> From: Justin Hibbits Date: Sat, 1 Feb 2014 02:03:51 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261342 - in head: lib/libpmc sys/conf sys/dev/hwpmc sys/powerpc/include sys/sys X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 02:03:53 -0000 Author: jhibbits Date: Sat Feb 1 02:03:50 2014 New Revision: 261342 URL: http://svnweb.freebsd.org/changeset/base/261342 Log: Add hwpmc(4) support for the PowerPC 970 class processors, direct events. This also fixes asserts on removal of the module for the mpc74xx. The PowerPC 970 processors have two different types of events: direct events and indirect events. Thus far only direct events are supported. I included some documentation in the driver on how indirect events work, but support is for the future. MFC after: 1 month Added: head/sys/dev/hwpmc/hwpmc_ppc970.c (contents, props changed) Modified: head/lib/libpmc/libpmc.c head/sys/conf/files.powerpc head/sys/dev/hwpmc/hwpmc_mpc7xxx.c head/sys/dev/hwpmc/hwpmc_powerpc.c head/sys/dev/hwpmc/hwpmc_powerpc.h head/sys/dev/hwpmc/pmc_events.h head/sys/powerpc/include/pmc_mdep.h head/sys/powerpc/include/spr.h head/sys/sys/pmc.h Modified: head/lib/libpmc/libpmc.c ============================================================================== --- head/lib/libpmc/libpmc.c Sat Feb 1 01:30:46 2014 (r261341) +++ head/lib/libpmc/libpmc.c Sat Feb 1 02:03:50 2014 (r261342) @@ -28,6 +28,7 @@ __FBSDID("$FreeBSD$"); #include +#include #include #include #include @@ -85,7 +86,7 @@ static int soft_allocate_pmc(enum pmc_ev struct pmc_op_pmcallocate *_pmc_config); #if defined(__powerpc__) -static int ppc7450_allocate_pmc(enum pmc_event _pe, char* ctrspec, +static int powerpc_allocate_pmc(enum pmc_event _pe, char* ctrspec, struct pmc_op_pmcallocate *_pmc_config); #endif /* __powerpc__ */ @@ -156,6 +157,7 @@ PMC_CLASSDEP_TABLE(mips24k, MIPS24K); PMC_CLASSDEP_TABLE(octeon, OCTEON); PMC_CLASSDEP_TABLE(ucf, UCF); PMC_CLASSDEP_TABLE(ppc7450, PPC7450); +PMC_CLASSDEP_TABLE(ppc970, PPC970); static struct pmc_event_descr soft_event_table[PMC_EV_DYN_COUNT]; @@ -262,6 +264,7 @@ PMC_MDEP_TABLE(xscale, XSCALE, PMC_CLASS PMC_MDEP_TABLE(mips24k, MIPS24K, PMC_CLASS_SOFT, PMC_CLASS_MIPS24K); PMC_MDEP_TABLE(octeon, OCTEON, PMC_CLASS_SOFT, PMC_CLASS_OCTEON); PMC_MDEP_TABLE(ppc7450, PPC7450, PMC_CLASS_SOFT, PMC_CLASS_PPC7450); +PMC_MDEP_TABLE(ppc970, PPC970, PMC_CLASS_SOFT, PMC_CLASS_PPC970); PMC_MDEP_TABLE(generic, SOFT, PMC_CLASS_SOFT); static const struct pmc_event_descr tsc_event_table[] = @@ -322,7 +325,8 @@ PMC_CLASS_TABLE_DESC(mips24k, MIPS24K, m PMC_CLASS_TABLE_DESC(octeon, OCTEON, octeon, mips); #endif /* __mips__ */ #if defined(__powerpc__) -PMC_CLASS_TABLE_DESC(ppc7450, PPC7450, ppc7450, ppc7450); +PMC_CLASS_TABLE_DESC(ppc7450, PPC7450, ppc7450, powerpc); +PMC_CLASS_TABLE_DESC(ppc970, PPC970, ppc970, powerpc); #endif static struct pmc_class_descr soft_class_table_descr = @@ -2404,13 +2408,19 @@ static struct pmc_event_alias ppc7450_al EV_ALIAS(NULL, NULL) }; -#define PPC7450_KW_OS "os" -#define PPC7450_KW_USR "usr" -#define PPC7450_KW_ANYTHREAD "anythread" +static struct pmc_event_alias ppc970_aliases[] = { + EV_ALIAS("instructions", "INSTR_COMPLETED"), + EV_ALIAS("cycles", "CYCLES"), + EV_ALIAS(NULL, NULL) +}; + +#define POWERPC_KW_OS "os" +#define POWERPC_KW_USR "usr" +#define POWERPC_KW_ANYTHREAD "anythread" static int -ppc7450_allocate_pmc(enum pmc_event pe, char *ctrspec __unused, - struct pmc_op_pmcallocate *pmc_config __unused) +powerpc_allocate_pmc(enum pmc_event pe, char *ctrspec __unused, + struct pmc_op_pmcallocate *pmc_config __unused) { char *p; @@ -2419,11 +2429,11 @@ ppc7450_allocate_pmc(enum pmc_event pe, pmc_config->pm_caps |= (PMC_CAP_READ | PMC_CAP_WRITE); while ((p = strsep(&ctrspec, ",")) != NULL) { - if (KWMATCH(p, PPC7450_KW_OS)) + if (KWMATCH(p, POWERPC_KW_OS)) pmc_config->pm_caps |= PMC_CAP_SYSTEM; - else if (KWMATCH(p, PPC7450_KW_USR)) + else if (KWMATCH(p, POWERPC_KW_USR)) pmc_config->pm_caps |= PMC_CAP_USER; - else if (KWMATCH(p, PPC7450_KW_ANYTHREAD)) + else if (KWMATCH(p, POWERPC_KW_ANYTHREAD)) pmc_config->pm_caps |= (PMC_CAP_USER | PMC_CAP_SYSTEM); else return (-1); @@ -2431,6 +2441,7 @@ ppc7450_allocate_pmc(enum pmc_event pe, return (0); } + #endif /* __powerpc__ */ @@ -2830,6 +2841,10 @@ pmc_event_names_of_class(enum pmc_class ev = ppc7450_event_table; count = PMC_EVENT_TABLE_SIZE(ppc7450); break; + case PMC_CLASS_PPC970: + ev = ppc970_event_table; + count = PMC_EVENT_TABLE_SIZE(ppc970); + break; case PMC_CLASS_SOFT: ev = soft_event_table; count = soft_event_info.pm_nevent; @@ -3100,6 +3115,10 @@ pmc_init(void) PMC_MDEP_INIT(ppc7450); pmc_class_table[n] = &ppc7450_class_table_descr; break; + case PMC_CPU_PPC_970: + PMC_MDEP_INIT(ppc970); + pmc_class_table[n] = &ppc970_class_table_descr; + break; #endif default: /* @@ -3270,6 +3289,9 @@ _pmc_name_of_event(enum pmc_event pe, en } else if (pe >= PMC_EV_PPC7450_FIRST && pe <= PMC_EV_PPC7450_LAST) { ev = ppc7450_event_table; evfence = ppc7450_event_table + PMC_EVENT_TABLE_SIZE(ppc7450); + } else if (pe >= PMC_EV_PPC970_FIRST && pe <= PMC_EV_PPC970_LAST) { + ev = ppc970_event_table; + evfence = ppc970_event_table + PMC_EVENT_TABLE_SIZE(ppc970); } else if (pe == PMC_EV_TSC_TSC) { ev = tsc_event_table; evfence = tsc_event_table + PMC_EVENT_TABLE_SIZE(tsc); Modified: head/sys/conf/files.powerpc ============================================================================== --- head/sys/conf/files.powerpc Sat Feb 1 01:30:46 2014 (r261341) +++ head/sys/conf/files.powerpc Sat Feb 1 02:03:50 2014 (r261342) @@ -31,6 +31,7 @@ dev/fb/fb.c optional sc dev/fdt/fdt_powerpc.c optional fdt dev/hwpmc/hwpmc_powerpc.c optional hwpmc dev/hwpmc/hwpmc_mpc7xxx.c optional hwpmc +dev/hwpmc/hwpmc_ppc970.c optional hwpmc dev/iicbus/ad7417.c optional ad7417 powermac dev/iicbus/ds1631.c optional ds1631 powermac dev/iicbus/ds1775.c optional ds1775 powermac Modified: head/sys/dev/hwpmc/hwpmc_mpc7xxx.c ============================================================================== --- head/sys/dev/hwpmc/hwpmc_mpc7xxx.c Sat Feb 1 01:30:46 2014 (r261341) +++ head/sys/dev/hwpmc/hwpmc_mpc7xxx.c Sat Feb 1 02:03:50 2014 (r261342) @@ -69,10 +69,10 @@ __FBSDID("$FreeBSD$"); * specifically). */ -struct powerpc_event_code_map { +struct mpc7xxx_event_code_map { enum pmc_event pe_ev; /* enum value */ uint8_t pe_counter_mask; /* Which counter this can be counted in. */ - uint8_t pe_code; /* numeric code */ + uint8_t pe_code; /* numeric code */ }; #define PPC_PMC_MASK1 0 @@ -85,7 +85,7 @@ struct powerpc_event_code_map { #define PMC_POWERPC_EVENT(id, mask, number) \ { .pe_ev = PMC_EV_PPC7450_##id, .pe_counter_mask = mask, .pe_code = number } -static struct powerpc_event_code_map powerpc_event_codes[] = { +static struct mpc7xxx_event_code_map mpc7xxx_event_codes[] = { PMC_POWERPC_EVENT(CYCLE,PPC_PMC_MASK_ALL, 1), PMC_POWERPC_EVENT(INSTR_COMPLETED, 0x0f, 2), PMC_POWERPC_EVENT(TLB_BIT_TRANSITIONS, 0x0f, 3), @@ -311,8 +311,8 @@ static struct powerpc_event_code_map pow PMC_POWERPC_EVENT(PREFETCH_ENGINE_FULL, 0x20, 57) }; -const size_t powerpc_event_codes_size = - sizeof(powerpc_event_codes) / sizeof(powerpc_event_codes[0]); +const size_t mpc7xxx_event_codes_size = + sizeof(mpc7xxx_event_codes) / sizeof(mpc7xxx_event_codes[0]); static pmc_value_t mpc7xxx_pmcn_read(unsigned int pmc) @@ -565,6 +565,7 @@ mpc7xxx_pcpu_init(struct pmc_mdep *md, i M_WAITOK|M_ZERO); pac->pc_ppcpmcs = malloc(sizeof(struct pmc_hw) * MPC7XXX_MAX_PMCS, M_PMC, M_WAITOK|M_ZERO); + pac->pc_class = PMC_CLASS_PPC7450; pc = pmc_pcpu[cpu]; first_ri = md->pmd_classdep[PMC_MDEP_CLASS_INDEX_PPC7450].pcd_ri; KASSERT(pc != NULL, ("[powerpc,%d] NULL per-cpu pointer", __LINE__)); @@ -611,14 +612,14 @@ mpc7xxx_allocate_pmc(int cpu, int ri, st caps = a->pm_caps; pe = a->pm_ev; - for (i = 0; i < powerpc_event_codes_size; i++) { - if (powerpc_event_codes[i].pe_ev == pe) { - config = powerpc_event_codes[i].pe_code; - counter = powerpc_event_codes[i].pe_counter_mask; + for (i = 0; i < mpc7xxx_event_codes_size; i++) { + if (mpc7xxx_event_codes[i].pe_ev == pe) { + config = mpc7xxx_event_codes[i].pe_code; + counter = mpc7xxx_event_codes[i].pe_counter_mask; break; } } - if (i == powerpc_event_codes_size) + if (i == mpc7xxx_event_codes_size) return (EINVAL); if ((counter & (1 << ri)) == 0) @@ -724,6 +725,8 @@ pmc_mpc7xxx_initialize(struct pmc_mdep * { struct pmc_classdep *pcd; + pmc_mdep->pmd_cputype = PMC_CPU_PPC_7450; + pcd = &pmc_mdep->pmd_classdep[PMC_MDEP_CLASS_INDEX_PPC7450]; pcd->pcd_caps = POWERPC_PMC_CAPS; pcd->pcd_class = PMC_CLASS_PPC7450; @@ -735,6 +738,8 @@ pmc_mpc7xxx_initialize(struct pmc_mdep * pcd->pcd_config_pmc = mpc7xxx_config_pmc; pcd->pcd_pcpu_fini = mpc7xxx_pcpu_fini; pcd->pcd_pcpu_init = mpc7xxx_pcpu_init; + pcd->pcd_describe = powerpc_describe; + pcd->pcd_get_config = powerpc_get_config; pcd->pcd_read_pmc = mpc7xxx_read_pmc; pcd->pcd_release_pmc = mpc7xxx_release_pmc; pcd->pcd_start_pmc = mpc7xxx_start_pmc; @@ -742,7 +747,7 @@ pmc_mpc7xxx_initialize(struct pmc_mdep * pcd->pcd_write_pmc = mpc7xxx_write_pmc; pmc_mdep->pmd_npmc += MPC7XXX_MAX_PMCS; - pmc_mdep->pmd_intr = mpc7xxx_intr; + pmc_mdep->pmd_intr = mpc7xxx_intr; - return 0; + return (0); } Modified: head/sys/dev/hwpmc/hwpmc_powerpc.c ============================================================================== --- head/sys/dev/hwpmc/hwpmc_powerpc.c Sat Feb 1 01:30:46 2014 (r261341) +++ head/sys/dev/hwpmc/hwpmc_powerpc.c Sat Feb 1 02:03:50 2014 (r261342) @@ -96,7 +96,7 @@ powerpc_describe(int cpu, int ri, struct if ((error = copystr(powerpc_name, pi->pm_name, PMC_NAME_MAX, NULL)) != 0) return error; - pi->pm_class = PMC_CLASS_PPC7450; + pi->pm_class = powerpc_pcpu[cpu]->pc_class; if (phw->phw_state & PMC_PHW_FLAG_IS_ENABLED) { pi->pm_enabled = TRUE; *ppmc = phw->phw_pmc; @@ -133,8 +133,6 @@ pmc_md_initialize() /* Just one class */ pmc_mdep = pmc_mdep_alloc(1); - pmc_mdep->pmd_cputype = PMC_CPU_PPC_7450; - vers = mfpvr() >> 16; pmc_mdep->pmd_switch_in = powerpc_switch_in; @@ -151,6 +149,8 @@ pmc_md_initialize() case IBM970: case IBM970FX: case IBM970MP: + error = pmc_ppc970_initialize(pmc_mdep); + break; default: error = -1; break; @@ -159,7 +159,6 @@ pmc_md_initialize() if (error != 0) { pmc_mdep_free(pmc_mdep); pmc_mdep = NULL; - return NULL; } return (pmc_mdep); @@ -168,7 +167,9 @@ pmc_md_initialize() void pmc_md_finalize(struct pmc_mdep *md) { - free(md, M_PMC); + + free(powerpc_pcpu, M_PMC); + powerpc_pcpu = NULL; } int Modified: head/sys/dev/hwpmc/hwpmc_powerpc.h ============================================================================== --- head/sys/dev/hwpmc/hwpmc_powerpc.h Sat Feb 1 01:30:46 2014 (r261341) +++ head/sys/dev/hwpmc/hwpmc_powerpc.h Sat Feb 1 02:03:50 2014 (r261342) @@ -46,11 +46,13 @@ struct powerpc_cpu { struct pmc_hw *pc_ppcpmcs; + enum pmc_class pc_class; }; extern struct powerpc_cpu **powerpc_pcpu; extern int pmc_mpc7xxx_initialize(struct pmc_mdep *pmc_mdep); +extern int pmc_ppc970_initialize(struct pmc_mdep *pmc_mdep); extern int powerpc_describe(int cpu, int ri, struct pmc_info *pi, struct pmc **ppmc); extern int powerpc_get_config(int cpu, int ri, struct pmc **ppm); Added: head/sys/dev/hwpmc/hwpmc_ppc970.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/dev/hwpmc/hwpmc_ppc970.c Sat Feb 1 02:03:50 2014 (r261342) @@ -0,0 +1,689 @@ +/*- + * Copyright (c) 2013 Justin Hibbits + * All rights reserved. + * + * 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. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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. + * + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include + +#include +#include +#include + +#include "hwpmc_powerpc.h" + +#define PPC970_MAX_PMCS 8 + +/* MMCR0, PMC1 is 8 bytes in, PMC2 is 1 byte in. */ +#define PPC970_SET_MMCR0_PMCSEL(r, x, i) \ + ((r & ~(0x1f << (7 * (1 - i) + 1))) | (x << (7 * (1 - i) + 1))) +/* MMCR1 has 6 PMC*SEL items (PMC3->PMC8), in sequence. */ +#define PPC970_SET_MMCR1_PMCSEL(r, x, i) \ + ((r & ~(0x1f << (5 * (7 - i) + 2))) | (x << (5 * (7 - i) + 2))) + +#define PPC970_PMC_HAS_OVERFLOWED(x) (ppc970_pmcn_read(x) & (0x1 << 31)) + +/* How PMC works on PPC970: + * + * Any PMC can count a direct event. Indirect events are handled specially. + * Direct events: As published. + * + * Encoding 00 000 -- Add byte lane bit counters + * MMCR1[24:31] -- select bit matching PMC being an adder. + * Bus events: + * PMCxSEL: 1x -- select from byte lane: 10 == lower lane (0/1), 11 == upper + * lane (2/3). + * PMCxSEL[2:4] -- bit in the byte lane selected. + * + * PMC[1,2,5,6] == lane 0/lane 2 + * PMC[3,4,7,8] == lane 1,3 + * + * + * Lanes: + * Lane 0 -- TTM0(FPU,ISU,IFU,VPU) + * TTM1(IDU,ISU,STS) + * LSU0 byte 0 + * LSU1 byte 0 + * Lane 1 -- TTM0 + * TTM1 + * LSU0 byte 1 + * LSU1 byte 1 + * Lane 2 -- TTM0 + * TTM1 + * LSU0 byte 2 + * LSU1 byte 2 or byte 6 + * Lane 3 -- TTM0 + * TTM1 + * LSU0 byte 3 + * LSU1 byte 3 or byte 7 + * + * Adders: + * Add byte lane for PMC (above), bit 0+4, 1+5, 2+6, 3+7 + */ + +struct pmc_ppc970_event { + enum pmc_event pe_event; + uint32_t pe_flags; +#define PMC_PPC970_FLAG_PMCS 0x000000ff +#define PMC_PPC970_FLAG_PMC1 0x01 +#define PMC_PPC970_FLAG_PMC2 0x02 +#define PMC_PPC970_FLAG_PMC3 0x04 +#define PMC_PPC970_FLAG_PMC4 0x08 +#define PMC_PPC970_FLAG_PMC5 0x10 +#define PMC_PPC970_FLAG_PMC6 0x20 +#define PMC_PPC970_FLAG_PMC7 0x40 +#define PMC_PPC970_FLAG_PMC8 0x80 + uint32_t pe_code; +}; + +static struct pmc_ppc970_event ppc970_event_codes[] = { + {PMC_EV_PPC970_INSTR_COMPLETED, + .pe_flags = PMC_PPC970_FLAG_PMCS, + .pe_code = 0x09 + }, + {PMC_EV_PPC970_MARKED_GROUP_DISPATCH, + .pe_flags = PMC_PPC970_FLAG_PMC1, + .pe_code = 0x2 + }, + {PMC_EV_PPC970_MARKED_STORE_COMPLETED, + .pe_flags = PMC_PPC970_FLAG_PMC1, + .pe_code = 0x03 + }, + {PMC_EV_PPC970_GCT_EMPTY, + .pe_flags = PMC_PPC970_FLAG_PMC1, + .pe_code = 0x04 + }, + {PMC_EV_PPC970_RUN_CYCLES, + .pe_flags = PMC_PPC970_FLAG_PMC1, + .pe_code = 0x05 + }, + {PMC_EV_PPC970_OVERFLOW, + .pe_flags = PMC_PPC970_FLAG_PMCS, + .pe_code = 0x0a + }, + {PMC_EV_PPC970_CYCLES, + .pe_flags = PMC_PPC970_FLAG_PMCS, + .pe_code = 0x0f + }, + {PMC_EV_PPC970_THRESHOLD_TIMEOUT, + .pe_flags = PMC_PPC970_FLAG_PMC2, + .pe_code = 0x3 + }, + {PMC_EV_PPC970_GROUP_DISPATCH, + .pe_flags = PMC_PPC970_FLAG_PMC2, + .pe_code = 0x4 + }, + {PMC_EV_PPC970_BR_MARKED_INSTR_FINISH, + .pe_flags = PMC_PPC970_FLAG_PMC2, + .pe_code = 0x5 + }, + {PMC_EV_PPC970_GCT_EMPTY_BY_SRQ_FULL, + .pe_flags = PMC_PPC970_FLAG_PMC2, + .pe_code = 0xb + }, + {PMC_EV_PPC970_STOP_COMPLETION, + .pe_flags = PMC_PPC970_FLAG_PMC3, + .pe_code = 0x1 + }, + {PMC_EV_PPC970_LSU_EMPTY, + .pe_flags = PMC_PPC970_FLAG_PMC3, + .pe_code = 0x2 + }, + {PMC_EV_PPC970_MARKED_STORE_WITH_INTR, + .pe_flags = PMC_PPC970_FLAG_PMC3, + .pe_code = 0x3 + }, + {PMC_EV_PPC970_CYCLES_IN_SUPER, + .pe_flags = PMC_PPC970_FLAG_PMC3, + .pe_code = 0x4 + }, + {PMC_EV_PPC970_VPU_MARKED_INSTR_COMPLETED, + .pe_flags = PMC_PPC970_FLAG_PMC3, + .pe_code = 0x5 + }, + {PMC_EV_PPC970_FXU0_IDLE_FXU1_BUSY, + .pe_flags = PMC_PPC970_FLAG_PMC4, + .pe_code = 0x2 + }, + {PMC_EV_PPC970_SRQ_EMPTY, + .pe_flags = PMC_PPC970_FLAG_PMC4, + .pe_code = 0x3 + }, + {PMC_EV_PPC970_MARKED_GROUP_COMPLETED, + .pe_flags = PMC_PPC970_FLAG_PMC4, + .pe_code = 0x4 + }, + {PMC_EV_PPC970_CR_MARKED_INSTR_FINISH, + .pe_flags = PMC_PPC970_FLAG_PMC4, + .pe_code = 0x5 + }, + {PMC_EV_PPC970_DISPATCH_SUCCESS, + .pe_flags = PMC_PPC970_FLAG_PMC5, + .pe_code = 0x1 + }, + {PMC_EV_PPC970_FXU0_IDLE_FXU1_IDLE, + .pe_flags = PMC_PPC970_FLAG_PMC5, + .pe_code = 0x2 + }, + {PMC_EV_PPC970_ONE_PLUS_INSTR_COMPLETED, + .pe_flags = PMC_PPC970_FLAG_PMC5, + .pe_code = 0x3 + }, + {PMC_EV_PPC970_GROUP_MARKED_IDU, + .pe_flags = PMC_PPC970_FLAG_PMC5, + .pe_code = 0x4 + }, + {PMC_EV_PPC970_MARKED_GROUP_COMPLETE_TIMEOUT, + .pe_flags = PMC_PPC970_FLAG_PMC5, + .pe_code = 0x5 + }, + {PMC_EV_PPC970_FXU0_BUSY_FXU1_BUSY, + .pe_flags = PMC_PPC970_FLAG_PMC6, + .pe_code = 0x2 + }, + {PMC_EV_PPC970_MARKED_STORE_SENT_TO_STS, + .pe_flags = PMC_PPC970_FLAG_PMC6, + .pe_code = 0x3 + }, + {PMC_EV_PPC970_FXU_MARKED_INSTR_FINISHED, + .pe_flags = PMC_PPC970_FLAG_PMC6, + .pe_code = 0x4 + }, + {PMC_EV_PPC970_MARKED_GROUP_ISSUED, + .pe_flags = PMC_PPC970_FLAG_PMC6, + .pe_code = 0x5 + }, + {PMC_EV_PPC970_FXU0_BUSY_FXU1_IDLE, + .pe_flags = PMC_PPC970_FLAG_PMC7, + .pe_code = 0x2 + }, + {PMC_EV_PPC970_GROUP_COMPLETED, + .pe_flags = PMC_PPC970_FLAG_PMC7, + .pe_code = 0x3 + }, + {PMC_EV_PPC970_FPU_MARKED_INSTR_COMPLETED, + .pe_flags = PMC_PPC970_FLAG_PMC7, + .pe_code = 0x4 + }, + {PMC_EV_PPC970_MARKED_INSTR_FINISH_ANY_UNIT, + .pe_flags = PMC_PPC970_FLAG_PMC7, + .pe_code = 0x5 + }, + {PMC_EV_PPC970_EXTERNAL_INTERRUPT, + .pe_flags = PMC_PPC970_FLAG_PMC8, + .pe_code = 0x2 + }, + {PMC_EV_PPC970_GROUP_DISPATCH_REJECT, + .pe_flags = PMC_PPC970_FLAG_PMC8, + .pe_code = 0x3 + }, + {PMC_EV_PPC970_LSU_MARKED_INSTR_FINISH, + .pe_flags = PMC_PPC970_FLAG_PMC8, + .pe_code = 0x4 + }, + {PMC_EV_PPC970_TIMEBASE_EVENT, + .pe_flags = PMC_PPC970_FLAG_PMC8, + .pe_code = 0x5 + }, +#if 0 + {PMC_EV_PPC970_LSU_COMPLETION_STALL, }, + {PMC_EV_PPC970_FXU_COMPLETION_STALL, }, + {PMC_EV_PPC970_DCACHE_MISS_COMPLETION_STALL, }, + {PMC_EV_PPC970_FPU_COMPLETION_STALL, }, + {PMC_EV_PPC970_FXU_LONG_INSTR_COMPLETION_STALL, }, + {PMC_EV_PPC970_REJECT_COMPLETION_STALL, }, + {PMC_EV_PPC970_FPU_LONG_INSTR_COMPLETION_STALL, }, + {PMC_EV_PPC970_GCT_EMPTY_BY_ICACHE_MISS, }, + {PMC_EV_PPC970_REJECT_COMPLETION_STALL_ERAT_MISS, }, + {PMC_EV_PPC970_GCT_EMPTY_BY_BRANCH_MISS_PREDICT, }, +#endif +}; +static size_t ppc970_event_codes_size = nitems(ppc970_event_codes); + +static pmc_value_t +ppc970_pmcn_read(unsigned int pmc) +{ + pmc_value_t val; + + switch (pmc) { + case 0: + val = mfspr(SPR_970PMC1); + break; + case 1: + val = mfspr(SPR_970PMC2); + break; + case 2: + val = mfspr(SPR_970PMC3); + break; + case 3: + val = mfspr(SPR_970PMC4); + break; + case 4: + val = mfspr(SPR_970PMC5); + break; + case 5: + val = mfspr(SPR_970PMC6); + break; + case 6: + val = mfspr(SPR_970PMC7); + break; + case 7: + val = mfspr(SPR_970PMC8); + break; + default: + panic("Invalid PMC number: %d\n", pmc); + } + + return (val); +} + +static void +ppc970_pmcn_write(unsigned int pmc, uint32_t val) +{ + switch (pmc) { + case 0: + mtspr(SPR_970PMC1, val); + break; + case 1: + mtspr(SPR_970PMC2, val); + break; + case 2: + mtspr(SPR_970PMC3, val); + break; + case 3: + mtspr(SPR_970PMC4, val); + break; + case 4: + mtspr(SPR_970PMC5, val); + break; + case 5: + mtspr(SPR_970PMC6, val); + break; + case 6: + mtspr(SPR_970PMC7, val); + break; + case 7: + mtspr(SPR_970PMC8, val); + break; + default: + panic("Invalid PMC number: %d\n", pmc); + } +} + +static int +ppc970_config_pmc(int cpu, int ri, struct pmc *pm) +{ + struct pmc_hw *phw; + + PMCDBG(MDP,CFG,1, "cpu=%d ri=%d pm=%p", cpu, ri, pm); + + KASSERT(cpu >= 0 && cpu < pmc_cpu_max(), + ("[powerpc,%d] illegal CPU value %d", __LINE__, cpu)); + KASSERT(ri >= 0 && ri < PPC970_MAX_PMCS, + ("[powerpc,%d] illegal row-index %d", __LINE__, ri)); + + phw = &powerpc_pcpu[cpu]->pc_ppcpmcs[ri]; + + KASSERT(pm == NULL || phw->phw_pmc == NULL, + ("[powerpc,%d] pm=%p phw->pm=%p hwpmc not unconfigured", + __LINE__, pm, phw->phw_pmc)); + + phw->phw_pmc = pm; + + return 0; +} + +static int +ppc970_set_pmc(int cpu, int ri, int config) +{ + struct pmc *pm; + struct pmc_hw *phw; + register_t pmc_mmcr; + + phw = &powerpc_pcpu[cpu]->pc_ppcpmcs[ri]; + pm = phw->phw_pmc; + + /* + * Disable the PMCs. + */ + switch (ri) { + case 0: + case 1: + pmc_mmcr = mfspr(SPR_970MMCR0); + pmc_mmcr = PPC970_SET_MMCR0_PMCSEL(pmc_mmcr, config, ri); + mtspr(SPR_970MMCR0, pmc_mmcr); + break; + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + pmc_mmcr = mfspr(SPR_970MMCR1); + pmc_mmcr = PPC970_SET_MMCR1_PMCSEL(pmc_mmcr, config, ri); + mtspr(SPR_970MMCR1, pmc_mmcr); + break; + } + return 0; +} + +static int +ppc970_start_pmc(int cpu, int ri) +{ + struct pmc *pm; + struct pmc_hw *phw; + register_t pmc_mmcr; + uint32_t config; + int error; + + phw = &powerpc_pcpu[cpu]->pc_ppcpmcs[ri]; + pm = phw->phw_pmc; + config = pm->pm_md.pm_powerpc.pm_powerpc_evsel & ~POWERPC_PMC_ENABLE; + + error = ppc970_set_pmc(cpu, ri, config); + + /* The mask is inverted (enable is 1) compared to the flags in MMCR0, which + * are Freeze flags. + */ + config = ~pm->pm_md.pm_powerpc.pm_powerpc_evsel & POWERPC_PMC_ENABLE; + + pmc_mmcr = mfspr(SPR_970MMCR0); + pmc_mmcr &= ~SPR_MMCR0_FC; + pmc_mmcr |= config; + mtspr(SPR_970MMCR0, pmc_mmcr); + + return 0; +} + +static int +ppc970_stop_pmc(int cpu, int ri) +{ + return ppc970_set_pmc(cpu, ri, PMC970N_NONE); +} + +static int +ppc970_read_pmc(int cpu, int ri, pmc_value_t *v) +{ + struct pmc *pm; + pmc_value_t tmp; + + KASSERT(cpu >= 0 && cpu < pmc_cpu_max(), + ("[powerpc,%d] illegal CPU value %d", __LINE__, cpu)); + KASSERT(ri >= 0 && ri < PPC970_MAX_PMCS, + ("[powerpc,%d] illegal row index %d", __LINE__, ri)); + + pm = powerpc_pcpu[cpu]->pc_ppcpmcs[ri].phw_pmc; + KASSERT(pm, + ("[core,%d] cpu %d ri %d pmc not configured", __LINE__, cpu, + ri)); + + tmp = ppc970_pmcn_read(ri); + PMCDBG(MDP,REA,2,"ppc-read id=%d -> %jd", ri, tmp); + if (PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) + *v = POWERPC_PERFCTR_VALUE_TO_RELOAD_COUNT(tmp); + else + *v = tmp; + + return 0; +} + +static int +ppc970_write_pmc(int cpu, int ri, pmc_value_t v) +{ + struct pmc *pm; + + KASSERT(cpu >= 0 && cpu < pmc_cpu_max(), + ("[powerpc,%d] illegal CPU value %d", __LINE__, cpu)); + KASSERT(ri >= 0 && ri < PPC970_MAX_PMCS, + ("[powerpc,%d] illegal row-index %d", __LINE__, ri)); + + pm = powerpc_pcpu[cpu]->pc_ppcpmcs[ri].phw_pmc; + + if (PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) + v = POWERPC_RELOAD_COUNT_TO_PERFCTR_VALUE(v); + + PMCDBG(MDP,WRI,1,"powerpc-write cpu=%d ri=%d v=%jx", cpu, ri, v); + + ppc970_pmcn_write(ri, v); + + return 0; +} + +static int +ppc970_intr(int cpu, struct trapframe *tf) +{ + struct pmc *pm; + struct powerpc_cpu *pac; + pmc_value_t v; + uint32_t config; + int i, error, retval; + + KASSERT(cpu >= 0 && cpu < pmc_cpu_max(), + ("[powerpc,%d] out of range CPU %d", __LINE__, cpu)); + + PMCDBG(MDP,INT,1, "cpu=%d tf=%p um=%d", cpu, (void *) tf, + TRAPF_USERMODE(tf)); + + retval = 0; + + pac = powerpc_pcpu[cpu]; + + /* + * look for all PMCs that have interrupted: + * - look for a running, sampling PMC which has overflowed + * and which has a valid 'struct pmc' association + * + * If found, we call a helper to process the interrupt. + */ + + config = mfspr(SPR_970MMCR0); + mtspr(SPR_970MMCR0, config | SPR_MMCR0_FC); + for (i = 0; i < PPC970_MAX_PMCS; i++) { + if ((pm = pac->pc_ppcpmcs[i].phw_pmc) == NULL || + !PMC_IS_SAMPLING_MODE(PMC_TO_MODE(pm))) { + continue; + } + + if (!PPC970_PMC_HAS_OVERFLOWED(i)) + continue; + + retval = 1; /* Found an interrupting PMC. */ + + if (pm->pm_state != PMC_STATE_RUNNING) + continue; + + /* Stop the PMC, reload count. */ + v = pm->pm_sc.pm_reloadcount; + + ppc970_pmcn_write(i, v); + + /* Restart the counter if logging succeeded. */ + error = pmc_process_interrupt(cpu, PMC_HR, pm, tf, + TRAPF_USERMODE(tf)); + mtspr(SPR_970MMCR0, config); + if (error != 0) + ppc970_stop_pmc(cpu, i); + atomic_add_int(retval ? &pmc_stats.pm_intr_processed : + &pmc_stats.pm_intr_ignored, 1); + + } + + /* Re-enable PERF exceptions. */ + mtspr(SPR_970MMCR0, mfspr(SPR_970MMCR0) | SPR_MMCR0_PMXE); + + return (retval); +} + +static int +ppc970_pcpu_init(struct pmc_mdep *md, int cpu) +{ + struct pmc_cpu *pc; + struct powerpc_cpu *pac; + struct pmc_hw *phw; + int first_ri, i; + + KASSERT(cpu >= 0 && cpu < pmc_cpu_max(), + ("[powerpc,%d] wrong cpu number %d", __LINE__, cpu)); + PMCDBG(MDP,INI,1,"powerpc-init cpu=%d", cpu); + + powerpc_pcpu[cpu] = pac = malloc(sizeof(struct powerpc_cpu), M_PMC, + M_WAITOK|M_ZERO); + pac->pc_ppcpmcs = malloc(sizeof(struct pmc_hw) * PPC970_MAX_PMCS, + M_PMC, M_WAITOK|M_ZERO); + pac->pc_class = PMC_CLASS_PPC970; + + pc = pmc_pcpu[cpu]; + first_ri = md->pmd_classdep[PMC_MDEP_CLASS_INDEX_PPC970].pcd_ri; + KASSERT(pc != NULL, ("[powerpc,%d] NULL per-cpu pointer", __LINE__)); + + for (i = 0, phw = pac->pc_ppcpmcs; i < PPC970_MAX_PMCS; i++, phw++) { + phw->phw_state = PMC_PHW_FLAG_IS_ENABLED | + PMC_PHW_CPU_TO_STATE(cpu) | PMC_PHW_INDEX_TO_STATE(i); + phw->phw_pmc = NULL; + pc->pc_hwpmcs[i + first_ri] = phw; + } + + /* Clear the MMCRs, and set FC, to disable all PMCs. */ + /* 970 PMC is not counted when set to 0x08 */ + mtspr(SPR_970MMCR0, SPR_MMCR0_FC | SPR_MMCR0_PMXE | SPR_MMCR0_PMC1CE | + SPR_MMCR0_PMCNCE | SPR_970MMCR0_PMC1SEL(0x8) | SPR_970MMCR0_PMC2SEL(0x8)); + mtspr(SPR_970MMCR1, 0x4218420); + + return 0; +} + +static int +ppc970_pcpu_fini(struct pmc_mdep *md, int cpu) +{ + register_t mmcr0 = mfspr(SPR_MMCR0); + + mmcr0 |= SPR_MMCR0_FC; + mmcr0 &= ~SPR_MMCR0_PMXE; + mtspr(SPR_MMCR0, mmcr0); + free(powerpc_pcpu[cpu]->pc_ppcpmcs, M_PMC); + free(powerpc_pcpu[cpu], M_PMC); + return 0; +} + +static int +ppc970_allocate_pmc(int cpu, int ri, struct pmc *pm, + const struct pmc_op_pmcallocate *a) +{ + enum pmc_event pe; + uint32_t caps, config = 0, counter = 0; + int i; + + KASSERT(cpu >= 0 && cpu < pmc_cpu_max(), + ("[powerpc,%d] illegal CPU value %d", __LINE__, cpu)); + KASSERT(ri >= 0 && ri < PPC970_MAX_PMCS, + ("[powerpc,%d] illegal row index %d", __LINE__, ri)); + + caps = a->pm_caps; + + pe = a->pm_ev; + + if (pe < PMC_EV_PPC970_FIRST || pe > PMC_EV_PPC970_LAST) + return (EINVAL); + + for (i = 0; i < ppc970_event_codes_size; i++) { + if (ppc970_event_codes[i].pe_event == pe) { + config = ppc970_event_codes[i].pe_code; + counter = ppc970_event_codes[i].pe_flags; + break; + } + } + if (i == ppc970_event_codes_size) + return (EINVAL); + + if ((counter & (1 << ri)) == 0) + return (EINVAL); + + if (caps & PMC_CAP_SYSTEM) + config |= POWERPC_PMC_KERNEL_ENABLE; + if (caps & PMC_CAP_USER) + config |= POWERPC_PMC_USER_ENABLE; + if ((caps & (PMC_CAP_USER | PMC_CAP_SYSTEM)) == 0) + config |= POWERPC_PMC_ENABLE; + + pm->pm_md.pm_powerpc.pm_powerpc_evsel = config; + + PMCDBG(MDP,ALL,2,"powerpc-allocate ri=%d -> config=0x%x", ri, config); + + return 0; +} + +static int +ppc970_release_pmc(int cpu, int ri, struct pmc *pmc) +{ + struct pmc_hw *phw; + + KASSERT(cpu >= 0 && cpu < pmc_cpu_max(), + ("[powerpc,%d] illegal CPU value %d", __LINE__, cpu)); + KASSERT(ri >= 0 && ri < PPC970_MAX_PMCS, + ("[powerpc,%d] illegal row-index %d", __LINE__, ri)); + + phw = &powerpc_pcpu[cpu]->pc_ppcpmcs[ri]; + KASSERT(phw->phw_pmc == NULL, + ("[powerpc,%d] PHW pmc %p non-NULL", __LINE__, phw->phw_pmc)); + + return 0; +} + +int +pmc_ppc970_initialize(struct pmc_mdep *pmc_mdep) +{ + struct pmc_classdep *pcd; + + pmc_mdep->pmd_cputype = PMC_CPU_PPC_970; + + pcd = &pmc_mdep->pmd_classdep[PMC_MDEP_CLASS_INDEX_PPC970]; + pcd->pcd_caps = POWERPC_PMC_CAPS; + pcd->pcd_class = PMC_CLASS_PPC970; + pcd->pcd_num = PPC970_MAX_PMCS; + pcd->pcd_ri = pmc_mdep->pmd_npmc; + pcd->pcd_width = 32; + + pcd->pcd_allocate_pmc = ppc970_allocate_pmc; + pcd->pcd_config_pmc = ppc970_config_pmc; + pcd->pcd_pcpu_fini = ppc970_pcpu_fini; + pcd->pcd_pcpu_init = ppc970_pcpu_init; + pcd->pcd_describe = powerpc_describe; + pcd->pcd_get_config = powerpc_get_config; + pcd->pcd_read_pmc = ppc970_read_pmc; + pcd->pcd_release_pmc = ppc970_release_pmc; + pcd->pcd_start_pmc = ppc970_start_pmc; + pcd->pcd_stop_pmc = ppc970_stop_pmc; + pcd->pcd_write_pmc = ppc970_write_pmc; + + pmc_mdep->pmd_npmc += PPC970_MAX_PMCS; + pmc_mdep->pmd_intr = ppc970_intr; + + return (0); +} Modified: head/sys/dev/hwpmc/pmc_events.h ============================================================================== --- head/sys/dev/hwpmc/pmc_events.h Sat Feb 1 01:30:46 2014 (r261341) +++ head/sys/dev/hwpmc/pmc_events.h Sat Feb 1 02:03:50 2014 (r261342) @@ -4749,6 +4749,61 @@ __PMC_EV_ALIAS("IMPC_C0H_TRK_REQUEST.ALL #define PMC_EV_PPC7450_FIRST PMC_EV_PPC7450_CYCLE #define PMC_EV_PPC7450_LAST PMC_EV_PPC7450_PREFETCH_ENGINE_FULL +#define __PMC_EV_PPC970() \ + __PMC_EV(PPC970, INSTR_COMPLETED) \ + __PMC_EV(PPC970, MARKED_GROUP_DISPATCH) \ + __PMC_EV(PPC970, MARKED_STORE_COMPLETED) \ + __PMC_EV(PPC970, GCT_EMPTY) \ + __PMC_EV(PPC970, RUN_CYCLES) \ + __PMC_EV(PPC970, OVERFLOW) \ + __PMC_EV(PPC970, CYCLES) \ + __PMC_EV(PPC970, THRESHOLD_TIMEOUT) \ + __PMC_EV(PPC970, GROUP_DISPATCH) \ + __PMC_EV(PPC970, BR_MARKED_INSTR_FINISH) \ + __PMC_EV(PPC970, GCT_EMPTY_BY_SRQ_FULL) \ *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 06:58:17 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 704F39F6; Sat, 1 Feb 2014 06:58:17 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 5B9E414BF; Sat, 1 Feb 2014 06:58:17 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s116wHgW028631; Sat, 1 Feb 2014 06:58:17 GMT (envelope-from hselasky@svn.freebsd.org) Received: (from hselasky@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s116wHvn028630; Sat, 1 Feb 2014 06:58:17 GMT (envelope-from hselasky@svn.freebsd.org) Message-Id: <201402010658.s116wHvn028630@svn.freebsd.org> From: Hans Petter Selasky Date: Sat, 1 Feb 2014 06:58:17 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261343 - head/sys/dev/usb/input X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 06:58:17 -0000 Author: hselasky Date: Sat Feb 1 06:58:16 2014 New Revision: 261343 URL: http://svnweb.freebsd.org/changeset/base/261343 Log: Add a comment about the origin of some structures, defines and so on. MFC after: 1 week Modified: head/sys/dev/usb/input/wsp.c Modified: head/sys/dev/usb/input/wsp.c ============================================================================== --- head/sys/dev/usb/input/wsp.c Sat Feb 1 02:03:50 2014 (r261342) +++ head/sys/dev/usb/input/wsp.c Sat Feb 1 06:58:16 2014 (r261343) @@ -123,6 +123,25 @@ SYSCTL_INT(_hw_usb_wsp, OID_AUTO, scr_ho #define WSP_IFACE_INDEX 1 +/* + * Some tables, structures, definitions and initialisation values for + * the touchpad protocol has been copied from Linux's + * "drivers/input/mouse/bcm5974.c" which has the following copyright + * holders under GPLv2. All device specific code in this driver has + * been written from scratch. The decoding algorithm is based on + * output from usbdump. + * + * Copyright (C) 2008 Henrik Rydberg (rydberg@euromail.se) + * Copyright (C) 2008 Scott Shawcroft (scott.shawcroft@gmail.com) + * Copyright (C) 2001-2004 Greg Kroah-Hartman (greg@kroah.com) + * Copyright (C) 2005 Johannes Berg (johannes@sipsolutions.net) + * Copyright (C) 2005 Stelian Pop (stelian@popies.net) + * Copyright (C) 2005 Frank Arnold (frank@scirocco-5v-turbo.de) + * Copyright (C) 2005 Peter Osterlund (petero2@telia.com) + * Copyright (C) 2005 Michael Hanselmann (linux-kernel@hansmi.ch) + * Copyright (C) 2006 Nicolas Boichat (nicolas@boichat.ch) + */ + /* button data structure */ struct bt_data { uint8_t unknown1; /* constant */ From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 09:28:00 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 04C66533; Sat, 1 Feb 2014 09:28:00 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E226B1E5D; Sat, 1 Feb 2014 09:27:59 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s119RxWC086310; Sat, 1 Feb 2014 09:27:59 GMT (envelope-from uqs@svn.freebsd.org) Received: (from uqs@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s119RwMm086298; Sat, 1 Feb 2014 09:27:58 GMT (envelope-from uqs@svn.freebsd.org) Message-Id: <201402010927.s119RwMm086298@svn.freebsd.org> From: Ulrich Spoerlein Date: Sat, 1 Feb 2014 09:27:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261344 - in head: contrib/mdocml lib/libmandoc usr.bin/mandoc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 09:28:00 -0000 Author: uqs Date: Sat Feb 1 09:27:57 2014 New Revision: 261344 URL: http://svnweb.freebsd.org/changeset/base/261344 Log: Merge mdocml v1.12.3 into head MFC after: 2 weeks Added: head/contrib/mdocml/NEWS - copied unchanged from r261328, vendor/mdocml/dist/NEWS head/contrib/mdocml/TODO - copied unchanged from r261328, vendor/mdocml/dist/TODO Modified: head/contrib/mdocml/arch.in head/contrib/mdocml/chars.c head/contrib/mdocml/chars.in head/contrib/mdocml/config.h head/contrib/mdocml/eqn.7 head/contrib/mdocml/html.c head/contrib/mdocml/html.h head/contrib/mdocml/lib.in head/contrib/mdocml/libman.h head/contrib/mdocml/libmandoc.h head/contrib/mdocml/libmdoc.h head/contrib/mdocml/libroff.h head/contrib/mdocml/main.c head/contrib/mdocml/man.7 head/contrib/mdocml/man.c head/contrib/mdocml/man.h head/contrib/mdocml/man_html.c head/contrib/mdocml/man_macro.c head/contrib/mdocml/man_term.c head/contrib/mdocml/man_validate.c head/contrib/mdocml/mandoc.1 head/contrib/mdocml/mandoc.3 head/contrib/mdocml/mandoc.c head/contrib/mdocml/mandoc.h head/contrib/mdocml/mandoc_char.7 head/contrib/mdocml/mdoc.7 head/contrib/mdocml/mdoc.c head/contrib/mdocml/mdoc.h head/contrib/mdocml/mdoc_argv.c head/contrib/mdocml/mdoc_html.c head/contrib/mdocml/mdoc_macro.c head/contrib/mdocml/mdoc_man.c head/contrib/mdocml/mdoc_term.c head/contrib/mdocml/mdoc_validate.c head/contrib/mdocml/out.c head/contrib/mdocml/predefs.in head/contrib/mdocml/read.c head/contrib/mdocml/roff.7 head/contrib/mdocml/roff.c head/contrib/mdocml/st.in head/contrib/mdocml/tbl.7 head/contrib/mdocml/tbl.c head/contrib/mdocml/tbl_data.c head/contrib/mdocml/tbl_html.c head/contrib/mdocml/tbl_layout.c head/contrib/mdocml/tbl_term.c head/contrib/mdocml/term.c head/contrib/mdocml/term.h head/contrib/mdocml/term_ascii.c head/contrib/mdocml/tree.c head/lib/libmandoc/Makefile head/usr.bin/mandoc/Makefile Directory Properties: head/contrib/mdocml/ (props changed) Copied: head/contrib/mdocml/NEWS (from r261328, vendor/mdocml/dist/NEWS) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/mdocml/NEWS Sat Feb 1 09:27:57 2014 (r261344, copy of r261328, vendor/mdocml/dist/NEWS) @@ -0,0 +1,370 @@ +$Id: NEWS,v 1.3 2013/10/13 16:06:50 schwarze Exp $ + +This file lists the most important changes in the mdocml.bsd.lv distribution. + +Changes in version 1.12.3, released on December 31, 2013 + + * In the mdoc(7) SYNOPSIS, line breaks and hanging indentation + now work correctly for .Fo/.Fa/.Fc and .Fn blocks. + Thanks to Franco Fichtner for doing part of the work. + * The mdoc(7) .Bk macro got some addititonal bugfixes. + * In mdoc(7) macro arguments, double quotes can now be quoted + by doubling them, just like in man(7). + Thanks to Tsugutomo ENAMI for the patch. + * At the end of man(7) macro lines, end-of-sentence spacing + now works. Thanks to Franco Fichtner for the patch. + * For backward compatibility, the man(7) parser now supports the + man-ext .UR/.UE (uniform resource identifier) block macros. + * The man(7) parser now handles closing blocks that are not open + more gracefully. + * The man(7) parser now ignores blank lines right after .SH and .SS. + * In the man(7) formatter, reset indentation when leaving a block, + not just when entering the next one. + * The roff(7) .nr request now supports incrementing and decrementing + number registers and stops parsing the number right before the + first non-digit character. + * The roff(7) parser now supports the alternative escape sequence + syntax \C'uXXXX' for Unicode characters. + * The roff(7) parser now parses and ignores the .fam (font family) + and .hw (hyphenation points) requests and the \d and \u escape + sequences. + * The roff(7) manual got a new ESCAPE SEQUENCE REFERENCE. + +Changes in version 1.12.2, released on Oktober 5, 2013 + + * The mdoc(7) to man(7) converter, to be called as mandoc -Tman, + is now fully functional. + * The mandoc(1) utility now supports the -Ios (default operating system) + input option, and the -Tutf8 output mode now actually works. + * The mandocdb(8) utility no longer truncates existing databases when + starting to build new ones, but only replaces them when the build + actually succeeds. + * The man(7) parser now supports the PD macro (paragraph distance), + and (for GNU man-ext compatibility only) EX (example block) and EE + (example end). Plus several bugfixes regarding indentation, line + breaks, and vertical spacing, and regarding RS following TP. + * The roff(7) parser now supports the \f(BI (bold+italic) font escape, + the \z (zero cursor advance) escape and the cc (change control + character) and it (input line trap) requests. Plus bugfixes regarding + the \t (tab) escape, nested escape sequences, and conditional requests. + * In mdoc(7), several bugs were fixed related to UTF-8 output of quoting + enclosures, delimiter handling, list indentation and horizontal and + vertical spacing, formatting of the Lk, %U, and %C macros, plus some + bugfixes related to the handling of syntax errors like badly nested + font blocks, stray Ta macros outside column lists, unterminated It Xo + blocks, and non-text children of Nm blocks. + * In tbl(7), the width of horizontal spans and the vertical spacing + around tables was corrected, and in man(7) files, a crash was fixed + that was triggered by some particular unclosed T{ macros. + * For mandoc developers, we now provide a tbl(3) library manual and + gmdiff, a very small, very simplistic groff-versus-mandoc output + comparison tool. + * Provide this NEWS file. + +Changes in version 1.12.1, released on March 23, 2012 + + * Significant work on apropos(1) and mandocdb(8). These tools are now + much more robust. A whatis(1) implementation is now handled as an + apropos(1) mode. These tools are also able to minimally handle + pre-formatted pages, that is, those already formatted by another + utility such as GNU troff. + * The man.cgi(7) script is also now available for wider testing. + It interfaces with mandocdb(8) manuals cached by catman(8). + HTML output is generated on-the-fly by libmandoc or internal + methods to convert pre-formatted pages. + * The mailing list archive for the discuss and tech lists are being + hosted by Gmane at gmane.comp.tools.mdocml.user and + gmane.comp.tools.mdocml.devel, respectively. + +Changes in version 1.12.0, released on October 8, 2011 + + * This version features a new, work-in-progress mandoc(1) output mode: + -Tman. This mode allows a system maintainer to distribute man(7) + media for older systems that may not natively support mdoc(7), such + as old Solaris systems. + * The -Ofragment option was added to mandoc(1)'s -Thtml and -Txhtml modes. + * While adding features, an apropos(1) utility has been merged from the + mandoc-tools sandbox. This interfaces with mandocdb(8) for semantic + search of manual content. apropos(1) is different from the traditional + apropos primarily in allowing keyword search (such as for functions, + utilities, etc.) and regular expressions. Note that the calling + syntax for apropos is likely to change as it settles down. + * In documentation news, the mdoc(7) and man(7) manuals have been + made considerably more readable by adding MACRO OVERVIEW sections, by + moving the gory details of the LANGUAGE SYNTAX to the roff(7) manual, + and by moving the very technical MACRO SYNTAX sections down to the + bottom of the page. + * Furthermore, for tbl(7), the -Tascii mode horizontal spacing of tables + was rewritten completely. It is now compatible with groff(1), both + with and without frames and rulers. + * Nesting of indented blocks is now supported in man(7), and several + bugs were fixed regarding indentation and alignment. + * The page headers in mdoc(7) are now nicer for very long titles. + +Changes in version 1.11.7, released on September 2, 2011 + + * Added demandoc(1) utility for stripping away macros and escapes. + This replaces the historical deroff(1) utility. + * Also improved the mdoc(7) and man(7) manuals. + +Changes in version 1.11.6, released on August 16, 2011 + + * Handling of tr macro in roff(7) implemented. This makes Perl + documentation much more readable. Hyphenation is also now enabled in + man(7) format documents. Many other general improvements have been + implemented. + +Changes in version 1.11.5, released on July 24, 2011 + + * Significant eqn(7) improvements. mdocml can now parse arbitrary eqn + input (although few GNU extensions are accepted, nor is mixing + low-level roff with eqn). See the eqn(7) manual for details. + For the time being, equations are rendered as simple in-line text. + The equation parser satisfies the language specified in the + Second Edition User's Guide: + http://www.kohala.com/start/troff/v7man/eqn/eqn2e.ps + +Changes in version 1.11.4, released on July 12, 2011 + + * Bug-fixes and clean-ups across all systems, especially in mandocdb(8) + and the man(7) parser. This release was significantly assisted by + participants in OpenBSD's c2k11. Thanks! + +Changes in version 1.11.3, released on May 26, 2011 + + * Introduce locale-encoding of output with the -Tlocale output option and + Unicode escaped-character input. See mandoc(1) and mandoc_char(7), + respectively, for details. This allows for non-ASCII characters (e.g., + \[u5000]) to be rendered in the locale's encoding, if said environment + supports wide-character encoding (if it does not, -Tascii is used + instead). Locale support can be turned off at compile time by removing + -DUSE_WCHAR in the Makefile, in which case -Tlocale is always a synonym + for -Tascii. + * Furthermore, multibyte-encoded documents, such as those in UTF-8, may + be on-the-fly recoded into mandoc(1) input by using the newly-added + preconv(1) utility. Note: in the future, this feature may be + integrated into mandoc(1). + +Changes in version 1.11.2, released on May 12, 2011 + + * Corrected some installation issues in version 1.11.1. + * Further migration to libmandoc. + * Initial public release (this utility is very much under development) + of mandocdb(8). This utility produces keyword databases of manual + content, which features semantic querying of manual content. + +Changes in version 1.11.1, released on April 4, 2011 + + * The earlier libroff, libmdoc, and libman soup have been merged into + a single library, libmandoc, which manages all aspects of parsing + real manuals, from line-handling to tbl(7) parsing. + * As usual, many general fixes and improvements have also occurred. + In particular, a great deal of redundancy and superfluous code has + been removed with the merging of the backend libraries. + * see also the changes in 1.10.10 + +Changes in version 1.10.10, March 20, 2011, NOT released + + * Initial eqn(7) functionality is in place. For the time being, + this is limited to the recognition of equation blocks; + future version of mdocml will expand upon this framework. + +Changes in version 1.10.9, released on January 7, 2011 + + * Many back-end fixes have been implemented: argument handling (quoting), + man(7) improvements, error/warning classes, and many more. + * Initial tbl(7) functionality (see the "TS", "TE", and "T&" macros in + the roff(7) manual) has been merged from tbl.bsd.lv. Output is still + minimal, especially for -Thtml and -Txhtml, but manages to at least + display data. This means that mandoc(1) now has built-in support + for two troff preprocessors via libroff: soelim(1) and tbl(1). + +Changes in version 1.10.8, released on December 24, 2010 + + * Overhauled the -Thtml and -Txhtml output modes. They now display + readable output in arbitrary browsers, including text-based ones like + lynx(1). See HTML and XHTML manuals in the DOCUMENTATION section + for examples. Attention: available style-sheet classes have been + considerably changed! See the example.style.css file for details. + Lastly, libmdoc and libman have been cleaned up and reduced in size + and complexity. + * see also the changes in 1.10.7 + +Changes in version 1.10.7, December 6, 2010, NOT released + + Significant improvements merged from OpenBSD downstream, including: + * many new roff(7) components, + * in-line implementation of troff's soelim(1), + * broken-block handling, + * overhauled error classifications, and + * cleaned up handling of error conditions. + +Changes in version 1.10.6, released on September 27, 2010 + + * Calling conventions for mandoc(1) have changed: -W improved and -f + deprecated. + * Non-ASCII characters are also now uniformly discarded. + * Lots of documentation improvements. + * Many incremental fixes accomodating for groff's more interesting + productions. + * Lastly, pod2man(1) preambles are now fully accepted after some + considerable roff(7) and special character support. + +Changes in version 1.10.5, released on July 27, 2010 + + * Primarily a bug-fix and polish release, but including -Tpdf support + in mandoc(1) by way of "Summer of Code". Highlights: + * fix "Sm" and "Bd" handling + * fix end-of-sentence handling for embedded sentences + * polish man(7) documentation + * document all mdoc(7) macros + * polish mandoc(1) -Tps output + * lots of internal clean-ups in character escapes + * un-break literal contexts in man(7) documents + * improve -Thtml output for -man + * add mandoc(1) -Tpdf support + +Changes in version 1.10.4, released on July 12, 2010 + + * Lots of features developed during both "Summer of Code" and the + OpenBSD c2k10 hackathon: + * minimal "ds" roff(7) symbols are supported + * beautified SYNOPSIS section output + * acceptance of scope-block breakage in mdoc(7) + * clarify error message status + * many minor bug-fixes and formatting issues resolved + * see also changes in 1.10.3 + +Changes in version 1.10.3, June 29, 2010, NOT released + + * variable font-width and paper-size support in mandoc(1) -Tps output + * "Bk" mdoc(7) support + +Changes in version 1.10.2, released on June 19, 2010 + + * Small release featuring text-decoration in -Tps output, + a few minor relaxations of errors, and some optimisations. + +Changes in version 1.10.1, released on June 7, 2010 + + * This primarily focusses on the "Bl" and "It" macros described in + mdoc(7). Multi-line column support is now fully compatible with groff, + as are implicit list entries for columns. + * Removed manuals(7) in favour of http://manpages.bsd.lv. + * The way we handle the SYNOPSIS section (see the SYNOPSIS documentation + in MANUAL STRUCTURE) has also been considerably simplified compared + to groff's method. + * Furthermore, the -Owidth=width output option has been added to -Tascii, + see mandoc(1). + * Lastly, initial PostScript output has been added with the -Tps option + to mandoc(1). It's brutally simple at the moment: fixed-font, with no + font decorations. + +Changes in version 1.10.0, released on May 29, 2010 + + * Release consisting of the results from the m2k10 hackathon and up-merge + from OpenBSD. This requires a significant note of thanks to Ingo + Schwarze (OpenBSD) and Joerg Sonnenberger (NetBSD) for their hard work, + and again to Joerg for hosting m2k10. Highlights (mostly cribbed from + Ingo's m2k10 report) follow in no particular order: + * a libroff preprocessor in front of libmdoc and libman stripping out + roff(7) instructions; + * end-of-sentence (EOS) detection in free-form and macro lines; + * correct handling of tab-separated columnar lists in mdoc(7); + * improved main calling routines to optionally use mmap(3) for better + performance; + * cleaned up exiting when invoked as -Tlint or over multiple files + with -fign-errors; + * error and warning message handling re-written to be unified for + libroff, libmdoc, and libman; + * handling of badly-nested explicit-scoped macros; + * improved free-form text parsing in libman and libmdoc; + * significant GNU troff compatibility improvements in -Tascii, + largely in terms of spacing; + * a regression framework for making sure the many fragilities of GNU + troff aren't trampled in subsequent work; + * support for -Tascii breaking at hyphens encountered in free-form text; + * and many more minor fixes and improvements + +Changes in version 1.9.25, released on May 13, 2010 + + * Fixed handling of "\*(Ba" escape. + * Backed out -fno-ign-chars (pointless complexity). + * Fixed erroneous breaking of literal lines. + * Fixed SYNOPSIS breaking lines before non-initial macros. + * Changed default section ordering. + * Most importantly, the framework for end-of-sentence double-spacing is + in place, now implemented for the "end-of-sentence, end-of-line" rule. + * This is a stable roll-back point before the mandoc hackathon in Rostock! + +Changes in version 1.9.24, released on May 9, 2010 + + * Rolled back break-at-hyphen. + * -DUGLY is now the default (no feature splits!). + * Free-form text is not de-chunked any more: lines are passed + whole-sale into the front-end, including whitespace. + * Added mailing lists. + +Changes in version 1.9.23, released on April 7, 2010 + + * mdocml has been linked to the OpenBSD build. + * This version incorporates many small changes, mostly from patches + by OpenBSD, allowing crufty manuals to slip by with warnings instead + of erroring-out. + * Some subtle semantic issues, such as punctuation scope, have also + been fixed. + * Lastly, some issues with -Thtml have been fixed, which prompted an + update to the online manual pages style layout. + +Changes in version 1.9.22, released on March 31, 2010 + + * Adjusted merge of the significant work by Ingo Schwarze + in getting "Xo" blocks (block full implicit, e.g., "It" + for non-columnar lists) to work properly. This isn't + enabled by default: you must specify -DUGLY as a compiler + flag (see the Makefile for details). + +Changes in version 1.9.20, released on March 30, 2010 + + * More efforts to get roff instructions in man(7) documents under + control. Note that roff instructions embedded in line-scoped, + next-line macros (e.g. "B") are not supported. + * Leading punctuation for mdoc(7) macros, such as "Fl ( ( a", + are now correctly handled. + +Changes in version 1.9.18, released on March 27, 2010 + + * Many fixes (largely pertaining to scope) + and improvements (e.g., handling of apostrophe-control macros, + which fixes the strange "BR" seen in some macro output) + to handling roff instructions in man(7) documents. + +Changes in version 1.9.17, released on March 25, 2010 + + * Accept perlpod(1) standard preamble. + * Also accept (and discard) "de", "dei", "am", "ami", and "ig" + roff macro blocks. + +Changes in version 1.9.16, released on March 22, 2010 + + * Inspired by patches and bug reports by Ingo Schwarze, + allowed man(7) to accept non-printing elements to be nested + within next-line scopes, such as "br" within "B" or "TH", + which is valid roff. + * Longsoon architecture also noted and Makefile cleaned up. + +Changes in version 1.9.15, released on February 18, 2010 + + * Moved to our new BSD.lv home. + * XHTML is now an acceptable output mode for mandoc(1); + * "Xr" made more compatible with groff; + * "Vt" fixed when invoked in SYNOPSIS; + * "\\" escape removed; + * end-of-line white-space detected for all lines; + * subtle bug fixed in list display for some modes; + * compatibility layer checked in for compilation in diverse + UNIX systems; + * and column lengths handled correctly. + +For older releases, see the ChangeLog files +in http://mdocml.bsd.lv/snapshots/ . Copied: head/contrib/mdocml/TODO (from r261328, vendor/mdocml/dist/TODO) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/contrib/mdocml/TODO Sat Feb 1 09:27:57 2014 (r261344, copy of r261328, vendor/mdocml/dist/TODO) @@ -0,0 +1,330 @@ +************************************************************************ +* Official mandoc TODO. +* $Id: TODO,v 1.162 2013/12/25 14:40:34 schwarze Exp $ +************************************************************************ + +************************************************************************ +* crashes +************************************************************************ + +None known. + +************************************************************************ +* missing features +************************************************************************ + +--- missing roff features ---------------------------------------------- + +- roff.c should treat \n(.H>23 and \n(.V>19 in the pod2man(1) + preamble as true, see for example AUTHORS in MooseX::Getopt.3p + reported by Andreas Voegele + Tue, 22 Nov 2011 15:34:47 +0100 on ports@ + +- .ad (adjust margins) + .ad l -- adjust left margin only (flush left) + .ad r -- adjust right margin only (flush right) + .ad c -- center text on line + .ad b -- adjust both margins (alias: .ad n) + .na -- temporarily disable adjustment without changing the mode + .ad -- re-enable adjustment without changing the mode + Adjustment mode is ignored while in no-fill mode (.nf). + +- .as (append to string) + found by jca@ in ratpoison(1) Sun, 30 Jun 2013 12:01:09 +0200 + +- .ce (center N lines) + found by naddy@ in xloadimage(1) + found by Juan Francisco Cantero Hurtado + in lang/racket(1) Thu, 20 Jun 2013 03:19:11 +0200 + +- .fc (field control) + found by naddy@ in xloadimage(1) + +- .ll (line length) + found by naddy@ in textproc/enchant(1) Sat, 12 Oct 2013 03:27:10 +0200 + +- .nr third argument (auto-increment step size, requires \n+) + found by bentley@ in sbcl(1) Mon, 9 Dec 2013 18:36:57 -0700 + +- .ns (no-space mode) occurs in xine-config(1) + reported by brad@ Sat, 15 Jan 2011 15:45:23 -0500 + +- .ta (tab settings) occurs in ircbug(1) and probably gnats(1) + reported by brad@ Sat, 15 Jan 2011 15:50:51 -0500 + +- .ti (temporary indent) + found by naddy@ in xloadimage(1) + found by bentley@ in nmh(1) Mon, 23 Apr 2012 13:38:28 -0600 + +- .while and .shift + found by jca@ in ratpoison(1) Sun, 30 Jun 2013 12:01:09 +0200 + +- \c (interrupted text) should prevent the line break + even inside .Bd literal; that occurs in chat(8) + also found in cclive(1) - DocBook output + +- \h horizontal move + found in cclive(1) DocBook output + Anthony J. Bentley on discuss@ Sat, 21 Sep 2013 22:29:34 -0600 + +- \n+ and \n- numerical register increment and decrement + found by bentley@ in sbcl(1) Mon, 9 Dec 2013 18:36:57 -0700 + +- using undefined strings or macros defines them to be empty + wl@ Mon, 14 Nov 2011 14:37:01 +0000 + +--- missing mdoc features ---------------------------------------------- + +- fix bad block nesting involving multiple identical explicit blocks + see the OpenBSD mdoc_macro.c 1.47 commit message + +- .Bl -column .Xo support is missing + ultimate goal: + restore .Xr and .Dv to + lib/libc/compat-43/sigvec.3 + lib/libc/gen/signal.3 + lib/libc/sys/sigaction.2 + +- edge case: decide how to deal with blk_full bad nesting, e.g. + .Sh .Nm .Bk .Nm .Ek .Sh found by jmc@ in ssh-keygen(1) + from jmc@ Wed, 14 Jul 2010 18:10:32 +0100 + +- \\ is now implemented correctly + * when defining strings and macros using .ds and .de + * when parsing roff(7) and man(7) macro arguments + It does not yet work in mdoc(7) macro arguments + because libmdoc does not yet use mandoc_getarg(). + Also check what happens in plain text, it must be identical to \e. + +- .Bd -filled should not be the same as .Bd -ragged, but align both + the left and right margin. In groff, it is implemented in terms + of .ad b, which we don't have either. Found in cksum(1). + +- implement blank `Bl -column', such as + .Bl -column + .It foo Ta bar + .El + +- explicitly disallow nested `Bl -column', which would clobber internal + flags defined for struct mdoc_macro + +- In .Bl -column .It, the end of the line probably has to be regarded + as an implicit .Ta, if there could be one, see the following mildly + ugly code from login.conf(5): + .Bl -column minpasswordlen program xetcxmotd + .It path Ta path Ta value of Dv _PATH_DEFPATH + .br + Default search path. + reported by Michal Mazurek + via jmc@ Thu, 7 Apr 2011 16:00:53 +0059 + +- inside `.Bl -column' phrases, punctuation is handled like normal + text, e.g. `.Bl -column .It Fl x . Ta ...' should give "-x -." + +- inside `.Bl -column' phrases, TERMP_IGNDELIM handling by `Pf' + is not safe, e.g. `.Bl -column .It Pf a b .' gives "ab." + but should give "ab ." + +- set a meaningful default if no `Bl' list type is assigned + +- have a blank `It' head for `Bl -tag' not puke + +- prohibit `Nm' from having non-text HEAD children + (e.g., NetBSD mDNSShared/dns-sd.1) + (mdoc_html.c and mdoc_term.c `Nm' handlers can be slightly simplified) + +- When there is free text in the SYNOPSIS and that free text contains + the .Nm macro, groff somehow understands to treat the .Nm as an in-line + macro, while mandoc treats it as a block macro and breaks the line. + No idea how the logic for distinguishing in-line and block instances + should be, needs investigation. + uqs@ Thu, 2 Jun 2011 11:03:51 +0200 + uqs@ Thu, 2 Jun 2011 11:33:35 +0200 + +--- missing man features ----------------------------------------------- + +- groff an-ext.tmac macros (.UR, .UE) occur in xine(5) + reported by brad@ Sat, 15 Jan 2011 15:45:23 -0500 + also occur in freeciv-client(6) freeciv-server(6) freeciv-modpack(6) + reported by bentley@ Tue, 30 Oct 2012 01:05:57 -0600 + +- -T[x]html doesn't stipulate non-collapsing spaces in literal mode + +--- missing tbl features ----------------------------------------------- + +- implement basic non-parametric .de to support e.g. sox(1) + reported by naddy@ Sat, 16 Oct 2010 23:51:57 +0200 + *** sox(1) still doesn't work, tbl(1) errors need investigation + +- allow standalone `.' to be interpreted as an end-of-layout + delimiter instead of being thrown away as a no-op roff line + reported by Yuri Pankov, Wed 18 May 2011 11:34:59 CEST + +--- missing misc features ---------------------------------------------- + +- italic correction (\/) in PostScript mode + Werner LEMBERG on groff at gnu dot org Sun, 10 Nov 2013 12:47:46 + +- The whatis(1) utility looks for whole words in Nm. + If the file name of a page does not agree with the contents of any + of its Nm macros (e.g. pool(9)), add the file name as an Nm entry + to the mandoc.db as well, such that whatis(1) finds it. + If there is a page with a file name that does not appear as a substring + neither in Nm nor in Nd, the same fix would allow finding that page + with apropos(1) using the file name as a key, as well. + Issue reported by tedu@ Fri, 05 Jul 2013 21:15:23 -0400 + +- clean up escape sequence handling, creating three classes: + (1) fully implemented, or parsed and ignored without loss of content + (2) unimplemented, potentially causing loss of content + or serious mangling of formatting (e.g. \n) -> ERROR + see textproc/mgdiff(1) for nice examples + (3) undefined, just output the character -> perhaps WARNING + +- look at pages generated from reStructeredText, e.g. devel/mercurial hg(1) + These are a weird mixture of man(7) and custom autogenerated low-level + roff stuff. Figure out to what extent we can cope. + For details, see http://docutils.sourceforge.net/rst.html + noted by stsp@ Sat, 24 Apr 2010 09:17:55 +0200 + reminded by nicm@ Mon, 3 May 2010 09:52:41 +0100 + +- look at pages generated from Texinfo source by yat2m, e.g. security/gnupg + First impression is not that bad. + +- check compatibility with Plan9: + http://swtch.com/usr/local/plan9/tmac/tmac.an + http://swtch.com/plan9port/man/man7/man.html + "Anthony J. Bentley" 28 Dec 2010 21:58:40 -0700 + +************************************************************************ +* formatting issues: ugly output +************************************************************************ + +- a column list with blank `Ta' cells triggers a spurrious + start-with-whitespace printing of a newline + +- In .Bl -column, + .It Em AuthenticationKey Length + ought to render "Key Length" with emphasis, too, + see OpenBSD iked.conf(5). + reported again Nicolas Joly via wiz@ Wed, 12 Oct 2011 00:20:00 +0200 + +- empty phrases in .Bl column produce too few blanks + try e.g. .Bl -column It Ta Ta + reported by millert Fri, 02 Apr 2010 16:13:46 -0400 + +- .%T can have trailing punctuation. Currently, it puts the trailing + punctuation into a trailing MDOC_TEXT element inside its own scope. + That element should rather be outside its scope, such that the + punctuation does not get underlines. This is not trivial to + implement because .%T then needs some features of in_line_eoln() - + slurp all arguments into one single text element - and one feature + of in_line() - put trailing punctuation out of scope. + Found in mount_nfs(8) and exports(5), search for "Appendix". + +- Trailing punctuation after .%T triggers EOS spacing, at least + outside .Rs (eek!). Simply setting ARGSFL_DELIM for .%T is not + the right solution, it sends mandoc into an endless loop. + reported by Nicolas Joly Sat, 17 Nov 2012 11:49:54 +0100 + +- in enclosures, mandoc sometimes fancies a bogus end of sentence + reminded by jmc@ Thu, 23 Sep 2010 18:13:39 +0059 + +- formatting /usr/local/man/man1/latex2man.1 with groff and mandoc + reveals lots of bugs both in groff and mandoc... + reported by bentley@ Wed, 22 May 2013 23:49:30 -0600 + +************************************************************************ +* formatting issues: gratuitous differences +************************************************************************ + +- .Rv (and probably .Ex) print different text if an `Nm' has been named + or not (run a manual without `Nm blah' to see this). I'm not sure + that this exists in the wild, but it's still an error. + +- In .Bl -bullet, the groff bullet is "+\b+\bo\bo", the mandoc bullet + is just "o\bo". + see for example OpenBSD ksh(1) + +- .Pp between two .It in .Bl -column should produce one, + not two blank lines, see e.g. login.conf(5). + reported by jmc@ Sun, 17 Apr 2011 14:04:58 +0059 + reported again by sthen@ Wed, 18 Jan 2012 02:09:39 +0000 (UTC) + +- If the *first* line after .It is .Pp, break the line right after + the tag, do not pad with space characters before breaking. + See the description of the a, c, and i commands in sed(1). + +- If the first line after .It is .D1, do not assert a blank line + in between, see for example tmux(1). + reported by nicm@ 13 Jan 2011 00:18:57 +0000 + +- Trailing punctuation after .It should trigger EOS spacing. + reported by Nicolas Joly Sat, 17 Nov 2012 11:49:54 +0100 + Probably, this should be fixed somewhere in termp_it_pre(), not sure. + +- .Nx 1.0a + should be "NetBSD 1.0A", not "NetBSD 1.0a", + see OpenBSD ccdconfig(8). + +- In .Bl -tag, if a tag exceeds the right margin and must be continued + on the next line, it must be indented by -width, not width+1; + see "rule block|pass" in OpenBSD ifconfig(8). + +- When the -width string contains macros, the macros must be rendered + before measuring the width, for example + .Bl -tag -width ".Dv message" + in magic(5), located in src/usr.bin/file, is the same + as -width 7n, not -width 11n. + The same applies to .Bl -column column widths; + reported again by Nicolas Joly Thu, 1 Mar 2012 13:41:26 +0100 via wiz@ 5 Mar + reported again by Franco Fichtner Fri, 27 Sep 2013 21:02:28 +0200 + An easy partial fix would be to just skip the first word if it starts + with a dot, including any following white space, when measuring. + +- The \& zero-width character counts as output. + That is, when it is alone on a line between two .Pp, + we want three blank lines, not two as in mandoc. + +- Header lines of excessive length: + Port OpenBSD man_term.c rev. 1.25 to mdoc_term.c + and document it in mdoc(7) and man(7) COMPATIBILITY + found while talking to Chris Bennett + +- trailing whitespace must be ignored even when followed by a font escape, + see for example + makes + \fBdig \fR + operate in batch mode + in dig(1). + +************************************************************************ +* performance issues +************************************************************************ + +Several areas can be cleaned up to make mandoc even faster. These are + +- improve hashing mechanism for macros (quite important: performance) + +- improve hashing mechanism for characters (not as important) + +- the PDF file is HUGE: this can be reduced by using relative offsets + +- instead of re-initialising the roff predefined-strings set before each + parse, create a read-only version the first time and copy it + +************************************************************************ +* structural issues +************************************************************************ + +- We use the input line number at several places to distinguish + same-line from different-line input. That plainly doesn't work + with user-defined macros, leading to random breakage. + +- Find better ways to prevent endless loops + in roff(7) macro and string expansion. + +- Finish cleanup of date handling. + Decide which formats should be recognized where. + Update both mdoc(7) and man(7) documentation. + Triggered by Tim van der Molen Tue, 22 Feb 2011 20:30:45 +0100 Modified: head/contrib/mdocml/arch.in ============================================================================== --- head/contrib/mdocml/arch.in Sat Feb 1 06:58:16 2014 (r261343) +++ head/contrib/mdocml/arch.in Sat Feb 1 09:27:57 2014 (r261344) @@ -1,4 +1,4 @@ -/* $Id: arch.in,v 1.12 2012/01/28 14:02:17 joerg Exp $ */ +/* $Id: arch.in,v 1.14 2013/09/16 22:12:57 schwarze Exp $ */ /* * Copyright (c) 2009 Kristaps Dzonsons * @@ -38,9 +38,9 @@ LINE("arm", "ARM") LINE("arm26", "ARM26") LINE("arm32", "ARM32") LINE("armish", "ARMISH") +LINE("armv7", "ARMv7") LINE("aviion", "AViiON") LINE("atari", "ATARI") -LINE("beagle", "Beagle") LINE("bebox", "BeBox") LINE("cats", "cats") LINE("cesfic", "CESFIC") @@ -81,6 +81,7 @@ LINE("netwinder", "NetWinder") LINE("news68k", "NeWS68k") LINE("newsmips", "NeWSMIPS") LINE("next68k", "NeXT68k") +LINE("octeon", "OCTEON") LINE("ofppc", "OFPPC") LINE("palm", "Palm") LINE("pc532", "PC532") Modified: head/contrib/mdocml/chars.c ============================================================================== --- head/contrib/mdocml/chars.c Sat Feb 1 06:58:16 2014 (r261343) +++ head/contrib/mdocml/chars.c Sat Feb 1 09:27:57 2014 (r261344) @@ -1,4 +1,4 @@ -/* $Id: chars.c,v 1.52 2011/11/08 00:15:23 kristaps Exp $ */ +/* $Id: chars.c,v 1.54 2013/06/20 22:39:30 schwarze Exp $ */ /* * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons * Copyright (c) 2011 Ingo Schwarze @@ -37,7 +37,7 @@ struct ln { int unicode; }; -#define LINES_MAX 328 +#define LINES_MAX 329 #define CHAR(in, ch, code) \ { NULL, (in), (ch), (code) }, @@ -77,7 +77,7 @@ mchars_alloc(void) */ tab = mandoc_malloc(sizeof(struct mchars)); - htab = mandoc_calloc(PRINT_HI - PRINT_LO + 1, sizeof(struct ln **)); + htab = mandoc_calloc(PRINT_HI - PRINT_LO + 1, sizeof(struct ln *)); for (i = 0; i < LINES_MAX; i++) { hash = (int)lines[i].code[0] - PRINT_LO; Modified: head/contrib/mdocml/chars.in ============================================================================== --- head/contrib/mdocml/chars.in Sat Feb 1 06:58:16 2014 (r261343) +++ head/contrib/mdocml/chars.in Sat Feb 1 09:27:57 2014 (r261344) @@ -1,4 +1,4 @@ -/* $Id: chars.in,v 1.42 2011/10/02 10:02:26 kristaps Exp $ */ +/* $Id: chars.in,v 1.43 2013/06/20 22:39:30 schwarze Exp $ */ /* * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons * @@ -42,6 +42,7 @@ CHAR("&", "", 0) CHAR("^", "", 0) CHAR("|", "", 0) CHAR("}", "", 0) +CHAR("t", "", 0) /* Accents. */ CHAR("a\"", "\"", 779) Modified: head/contrib/mdocml/config.h ============================================================================== --- head/contrib/mdocml/config.h Sat Feb 1 06:58:16 2014 (r261343) +++ head/contrib/mdocml/config.h Sat Feb 1 09:27:57 2014 (r261344) @@ -7,6 +7,7 @@ #include +#define VERSION "1.12.3" #define HAVE_FGETLN #define HAVE_STRPTIME #define HAVE_GETSUBOPT @@ -31,14 +32,16 @@ # endif #endif -#if defined(__APPLE__) -# define htobe32(x) OSSwapHostToBigInt32(x) -# define betoh32(x) OSSwapBigToHostInt32(x) -# define htobe64(x) OSSwapHostToBigInt64(x) -# define betoh64(x) OSSwapBigToHostInt64(x) -#elif defined(__linux__) -# define betoh32(x) be32toh(x) -# define betoh64(x) be64toh(x) +#ifndef HAVE_BETOH64 +# if defined(__APPLE__) +# define betoh64(x) OSSwapBigToHostInt64(x) +# define htobe64(x) OSSwapHostToBigInt64(x) +# elif defined(__sun) +# define betoh64(x) BE_64(x) +# define htobe64(x) BE_64(x) +# else +# define betoh64(x) be64toh(x) +# endif #endif #ifndef HAVE_STRLCAT Modified: head/contrib/mdocml/eqn.7 ============================================================================== --- head/contrib/mdocml/eqn.7 Sat Feb 1 06:58:16 2014 (r261343) +++ head/contrib/mdocml/eqn.7 Sat Feb 1 09:27:57 2014 (r261344) @@ -1,4 +1,4 @@ -.\" $Id: eqn.7,v 1.28 2011/09/25 18:37:09 schwarze Exp $ +.\" $Id: eqn.7,v 1.29 2013/07/13 19:41:16 schwarze Exp $ .\" .\" Copyright (c) 2011 Kristaps Dzonsons .\" @@ -14,7 +14,7 @@ .\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF .\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. .\" -.Dd $Mdocdate: September 25 2011 $ +.Dd $Mdocdate: July 13 2013 $ .Dt EQN 7 .Os .Sh NAME @@ -276,5 +276,4 @@ was added in 2011. This .Nm reference was written by -.An Kristaps Dzonsons , -.Mt kristaps@bsd.lv . +.An Kristaps Dzonsons Aq Mt kristaps@bsd.lv . Modified: head/contrib/mdocml/html.c ============================================================================== --- head/contrib/mdocml/html.c Sat Feb 1 06:58:16 2014 (r261343) +++ head/contrib/mdocml/html.c Sat Feb 1 09:27:57 2014 (r261344) @@ -1,7 +1,7 @@ -/* $Id: html.c,v 1.150 2011/10/05 21:35:17 kristaps Exp $ */ +/* $Id: html.c,v 1.152 2013/08/08 20:07:47 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons - * Copyright (c) 2011 Ingo Schwarze + * Copyright (c) 2011, 2012, 2013 Ingo Schwarze * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above @@ -235,6 +235,9 @@ print_metaf(struct html *h, enum mandoc_ case (ESCAPE_FONTBOLD): font = HTMLFONT_BOLD; break; + case (ESCAPE_FONTBI): + font = HTMLFONT_BI; + break; case (ESCAPE_FONT): /* FALLTHROUGH */ case (ESCAPE_FONTROMAN): @@ -253,17 +256,27 @@ print_metaf(struct html *h, enum mandoc_ h->metal = h->metac; h->metac = font; - if (HTMLFONT_NONE != font) - h->metaf = HTMLFONT_BOLD == font ? - print_otag(h, TAG_B, 0, NULL) : - print_otag(h, TAG_I, 0, NULL); + switch (font) { + case (HTMLFONT_ITALIC): + h->metaf = print_otag(h, TAG_I, 0, NULL); + break; + case (HTMLFONT_BOLD): + h->metaf = print_otag(h, TAG_B, 0, NULL); + break; + case (HTMLFONT_BI): + h->metaf = print_otag(h, TAG_B, 0, NULL); + print_otag(h, TAG_I, 0, NULL); + break; + default: + break; + } } int html_strlen(const char *cp) { - int ssz, sz; - const char *seq, *p; + size_t rsz; + int skip, sz; /* * Account for escaped sequences within string length @@ -274,10 +287,21 @@ html_strlen(const char *cp) */ sz = 0; - while (NULL != (p = strchr(cp, '\\'))) { - sz += (int)(p - cp); - ++cp; - switch (mandoc_escape(&cp, &seq, &ssz)) { + skip = 0; + while (1) { + rsz = strcspn(cp, "\\"); + if (rsz) { + cp += rsz; + if (skip) { + skip = 0; + rsz--; + } + sz += rsz; + } + if ('\0' == *cp) + break; + cp++; + switch (mandoc_escape(&cp, NULL, NULL)) { case (ESCAPE_ERROR): return(sz); case (ESCAPE_UNICODE): @@ -285,15 +309,19 @@ html_strlen(const char *cp) case (ESCAPE_NUMBERED): /* FALLTHROUGH */ case (ESCAPE_SPECIAL): - sz++; + if (skip) + skip = 0; + else + sz++; + break; + case (ESCAPE_SKIPCHAR): + skip = 1; break; default: break; } } - - assert(sz >= 0); - return(sz + strlen(cp)); + return(sz); } static int @@ -308,6 +336,12 @@ print_encode(struct html *h, const char nospace = 0; while ('\0' != *p) { + if (HTML_SKIPCHAR & h->flags && '\\' != *p) { + h->flags &= ~HTML_SKIPCHAR; + p++; + continue; + } + sz = strcspn(p, rejs); fwrite(p, 1, sz, stdout); @@ -338,6 +372,33 @@ print_encode(struct html *h, const char break; switch (esc) { + case (ESCAPE_FONT): + /* FALLTHROUGH */ + case (ESCAPE_FONTPREV): + /* FALLTHROUGH */ + case (ESCAPE_FONTBOLD): + /* FALLTHROUGH */ + case (ESCAPE_FONTITALIC): + /* FALLTHROUGH */ + case (ESCAPE_FONTBI): + /* FALLTHROUGH */ + case (ESCAPE_FONTROMAN): + if (0 == norecurse) + print_metaf(h, esc); + continue; + case (ESCAPE_SKIPCHAR): + h->flags |= HTML_SKIPCHAR; + continue; + default: + break; + } + + if (h->flags & HTML_SKIPCHAR) { + h->flags &= ~HTML_SKIPCHAR; + continue; + } + + switch (esc) { case (ESCAPE_UNICODE): /* Skip passed "u" header. */ c = mchars_num2uc(seq + 1, len - 1); @@ -356,19 +417,6 @@ print_encode(struct html *h, const char else if (-1 == c && 1 == len) putchar((int)*seq); break; - case (ESCAPE_FONT): - /* FALLTHROUGH */ - case (ESCAPE_FONTPREV): - /* FALLTHROUGH */ - case (ESCAPE_FONTBOLD): - /* FALLTHROUGH */ - case (ESCAPE_FONTITALIC): - /* FALLTHROUGH */ - case (ESCAPE_FONTROMAN): *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 10:36:35 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A9D45106; Sat, 1 Feb 2014 10:36:35 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 95D07128B; Sat, 1 Feb 2014 10:36:35 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11AaZph013406; Sat, 1 Feb 2014 10:36:35 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11AaZMg013405; Sat, 1 Feb 2014 10:36:35 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201402011036.s11AaZMg013405@svn.freebsd.org> From: Sergey Kandaurov Date: Sat, 1 Feb 2014 10:36:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261345 - head/gnu/usr.bin/groff/tmac X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 10:36:35 -0000 Author: pluknet Date: Sat Feb 1 10:36:35 2014 New Revision: 261345 URL: http://svnweb.freebsd.org/changeset/base/261345 Log: Add definition for NetBSD 7.0, which is referenced in several manpages. Discussed with: uqs MFC after: 5 days Modified: head/gnu/usr.bin/groff/tmac/mdoc.local Modified: head/gnu/usr.bin/groff/tmac/mdoc.local ============================================================================== --- head/gnu/usr.bin/groff/tmac/mdoc.local Sat Feb 1 09:27:57 2014 (r261344) +++ head/gnu/usr.bin/groff/tmac/mdoc.local Sat Feb 1 10:36:35 2014 (r261345) @@ -58,6 +58,7 @@ .ds doc-operating-system-FreeBSD-9.2 9.2 .ds doc-operating-system-FreeBSD-10.0 10.0 .ds doc-operating-system-FreeBSD-11.0 11.0 +.ds doc-operating-system-NetBSD-7.0 7.0 . .\" Definitions not (yet) in doc-syms . From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 10:41:26 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B81B9335; Sat, 1 Feb 2014 10:41:26 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id A42AD12F9; Sat, 1 Feb 2014 10:41:26 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11AfQ8n016563; Sat, 1 Feb 2014 10:41:26 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11AfQrZ016562; Sat, 1 Feb 2014 10:41:26 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201402011041.s11AfQrZ016562@svn.freebsd.org> From: Sergey Kandaurov Date: Sat, 1 Feb 2014 10:41:26 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261346 - stable/10/contrib/libc-vis X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 10:41:26 -0000 Author: pluknet Date: Sat Feb 1 10:41:26 2014 New Revision: 261346 URL: http://svnweb.freebsd.org/changeset/base/261346 Log: MFC r261261: Restore the Nx macro. PR: 186205 Submitted by: naddy Modified: stable/10/contrib/libc-vis/vis.3 Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/libc-vis/vis.3 ============================================================================== --- stable/10/contrib/libc-vis/vis.3 Sat Feb 1 10:36:35 2014 (r261345) +++ stable/10/contrib/libc-vis/vis.3 Sat Feb 1 10:41:26 2014 (r261346) @@ -510,6 +510,7 @@ The buffer size limited versions of the and .Fn strsnvisx Pc appeared in +.Nx 6.0 and .Fx 9.2 . Myltibyte character support was added in From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 10:42:16 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 92E2646B; Sat, 1 Feb 2014 10:42:16 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 7E49C12FF; Sat, 1 Feb 2014 10:42:16 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11AgGCt016694; Sat, 1 Feb 2014 10:42:16 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11AgGOJ016693; Sat, 1 Feb 2014 10:42:16 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201402011042.s11AgGOJ016693@svn.freebsd.org> From: Sergey Kandaurov Date: Sat, 1 Feb 2014 10:42:16 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261347 - stable/9/contrib/libc-vis X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 10:42:16 -0000 Author: pluknet Date: Sat Feb 1 10:42:15 2014 New Revision: 261347 URL: http://svnweb.freebsd.org/changeset/base/261347 Log: MFC r261261: Restore the Nx macro. PR: 186205 Submitted by: naddy Modified: stable/9/contrib/libc-vis/vis.3 Directory Properties: stable/9/contrib/libc-vis/ (props changed) Modified: stable/9/contrib/libc-vis/vis.3 ============================================================================== --- stable/9/contrib/libc-vis/vis.3 Sat Feb 1 10:41:26 2014 (r261346) +++ stable/9/contrib/libc-vis/vis.3 Sat Feb 1 10:42:15 2014 (r261347) @@ -510,6 +510,7 @@ The buffer size limited versions of the and .Fn strsnvisx Pc appeared in +.Nx 6.0 and .Fx 9.2 . Myltibyte character support was added in From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 10:48:28 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9DE14602; Sat, 1 Feb 2014 10:48:28 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 890101317; Sat, 1 Feb 2014 10:48:28 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11AmSxb017545; Sat, 1 Feb 2014 10:48:28 GMT (envelope-from pluknet@svn.freebsd.org) Received: (from pluknet@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11AmSvB017544; Sat, 1 Feb 2014 10:48:28 GMT (envelope-from pluknet@svn.freebsd.org) Message-Id: <201402011048.s11AmSvB017544@svn.freebsd.org> From: Sergey Kandaurov Date: Sat, 1 Feb 2014 10:48:28 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261348 - stable/10/gnu/usr.bin/groff/tmac X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 10:48:28 -0000 Author: pluknet Date: Sat Feb 1 10:48:28 2014 New Revision: 261348 URL: http://svnweb.freebsd.org/changeset/base/261348 Log: MFC r261267: Add libexecinfo. Modified: stable/10/gnu/usr.bin/groff/tmac/mdoc.local Directory Properties: stable/10/ (props changed) Modified: stable/10/gnu/usr.bin/groff/tmac/mdoc.local ============================================================================== --- stable/10/gnu/usr.bin/groff/tmac/mdoc.local Sat Feb 1 10:42:15 2014 (r261347) +++ stable/10/gnu/usr.bin/groff/tmac/mdoc.local Sat Feb 1 10:48:28 2014 (r261348) @@ -37,6 +37,7 @@ .ds doc-str-Lb-libedit Line Editor and History Library (libedit, \-ledit) .ds doc-str-Lb-libefi EFI Runtime Services Library (libefi, \-lefi) .ds doc-str-Lb-libelf ELF Parsing Library (libelf, \-lelf) +.ds doc-str-Lb-libexecinfo Backtrace Access Library (libexecinfo, \-lexecinfo) .ds doc-str-Lb-libfetch File Transfer Library (libfetch, \-lfetch) .ds doc-str-Lb-libpmc Performance Monitoring Counters Interface Library (libpmc, \-lpmc) .ds doc-str-Lb-libproc Processor Monitoring and Analysis Library (libproc, \-lproc) From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 12:30:00 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A3498D47; Sat, 1 Feb 2014 12:30:00 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 90AB71988; Sat, 1 Feb 2014 12:30:00 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11CU0gr057342; Sat, 1 Feb 2014 12:30:00 GMT (envelope-from brueffer@svn.freebsd.org) Received: (from brueffer@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11CU0K1057341; Sat, 1 Feb 2014 12:30:00 GMT (envelope-from brueffer@svn.freebsd.org) Message-Id: <201402011230.s11CU0K1057341@svn.freebsd.org> From: Christian Brueffer Date: Sat, 1 Feb 2014 12:30:00 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261349 - head/sbin/casperd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 12:30:00 -0000 Author: brueffer Date: Sat Feb 1 12:30:00 2014 New Revision: 261349 URL: http://svnweb.freebsd.org/changeset/base/261349 Log: Bring the exit status wording closer to what .Ex would produce. Fixes a typo in the process. MFC after: 1 week Modified: head/sbin/casperd/casperd.8 Modified: head/sbin/casperd/casperd.8 ============================================================================== --- head/sbin/casperd/casperd.8 Sat Feb 1 10:48:28 2014 (r261348) +++ head/sbin/casperd/casperd.8 Sat Feb 1 12:30:00 2014 (r261349) @@ -109,7 +109,10 @@ The default location of the PID file. .El .Sh EXIT STATUS -Exit status is 0 on success, and > 0 of an error occurs. +The +.Nm +daemon exits 0 on success, and >0 if an error occurs. +.Ex -std .Sh SEE ALSO .Xr cap_enter 2 , .Xr libcapsicum 3 , From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 12:33:58 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E213CF82; Sat, 1 Feb 2014 12:33:58 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CEB701A13; Sat, 1 Feb 2014 12:33:58 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11CXwDt060404; Sat, 1 Feb 2014 12:33:58 GMT (envelope-from brueffer@svn.freebsd.org) Received: (from brueffer@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11CXwuO060403; Sat, 1 Feb 2014 12:33:58 GMT (envelope-from brueffer@svn.freebsd.org) Message-Id: <201402011233.s11CXwuO060403@svn.freebsd.org> From: Christian Brueffer Date: Sat, 1 Feb 2014 12:33:58 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261350 - head/sbin/casperd X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 12:33:59 -0000 Author: brueffer Date: Sat Feb 1 12:33:58 2014 New Revision: 261350 URL: http://svnweb.freebsd.org/changeset/base/261350 Log: Remove the .Ex macro that I used for testing. Pointy hat: brueffer Modified: head/sbin/casperd/casperd.8 Modified: head/sbin/casperd/casperd.8 ============================================================================== --- head/sbin/casperd/casperd.8 Sat Feb 1 12:30:00 2014 (r261349) +++ head/sbin/casperd/casperd.8 Sat Feb 1 12:33:58 2014 (r261350) @@ -112,7 +112,6 @@ PID file. The .Nm daemon exits 0 on success, and >0 if an error occurs. -.Ex -std .Sh SEE ALSO .Xr cap_enter 2 , .Xr libcapsicum 3 , From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 17:17:38 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A71418E1; Sat, 1 Feb 2014 17:17:38 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 77C991E52; Sat, 1 Feb 2014 17:17:38 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11HHcMh073282; Sat, 1 Feb 2014 17:17:38 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11HHaHD073266; Sat, 1 Feb 2014 17:17:36 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201402011717.s11HHaHD073266@svn.freebsd.org> From: Nathan Whitehorn Date: Sat, 1 Feb 2014 17:17:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261351 - in head/sys: arm/arm arm/mv dev/fdt dev/ofw powerpc/ofw powerpc/powerpc powerpc/pseries X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 17:17:38 -0000 Author: nwhitehorn Date: Sat Feb 1 17:17:35 2014 New Revision: 261351 URL: http://svnweb.freebsd.org/changeset/base/261351 Log: Open Firmware interrupt specifiers can consist of arbitrary-length byte strings and include arbitrary information (IRQ line/domain/sense). When the ofw_bus_map_intr() API was introduced, it assumed that, as on most systems, these were either 1 cell, containing an interrupt line, or 2, containing a line number plus a sense code. It turns out a non-negligible number of ARM systems use 3 (or even 4!) cells for interrupts, so make this more general. Modified: head/sys/arm/arm/nexus.c head/sys/arm/mv/mv_pci.c head/sys/dev/fdt/fdt_common.c head/sys/dev/ofw/ofw_bus.h head/sys/dev/ofw/ofw_bus_if.m head/sys/dev/ofw/ofw_nexus.c head/sys/powerpc/ofw/ofw_pci.c head/sys/powerpc/ofw/ofw_pcib_pci.c head/sys/powerpc/ofw/ofw_pcibus.c head/sys/powerpc/powerpc/nexus.c head/sys/powerpc/pseries/vdevice.c Modified: head/sys/arm/arm/nexus.c ============================================================================== --- head/sys/arm/arm/nexus.c Sat Feb 1 12:33:58 2014 (r261350) +++ head/sys/arm/arm/nexus.c Sat Feb 1 17:17:35 2014 (r261351) @@ -98,7 +98,7 @@ static int nexus_teardown_intr(device_t, #ifdef FDT static int nexus_ofw_map_intr(device_t dev, device_t child, phandle_t iparent, - int irq); + int icells, pcell_t *intr); #endif static device_method_t nexus_methods[] = { @@ -339,15 +339,16 @@ nexus_deactivate_resource(device_t bus, #ifdef FDT static int -nexus_ofw_map_intr(device_t dev, device_t child, phandle_t iparent, int irq) +nexus_ofw_map_intr(device_t dev, device_t child, phandle_t iparent, int icells, + pcell_t *intr) { - pcell_t intr[2]; fdt_pic_decode_t intr_decode; phandle_t intr_offset; int i, rv, interrupt, trig, pol; intr_offset = OF_xref_phandle(iparent); - intr[0] = cpu_to_fdt32(irq); + for (i = 0; i < icells; i++) + intr[i] = cpu_to_fdt32(intr[i]); for (i = 0; fdt_pic_table[i] != NULL; i++) { intr_decode = fdt_pic_table[i]; @@ -355,13 +356,13 @@ nexus_ofw_map_intr(device_t dev, device_ if (rv == 0) { /* This was recognized as our PIC and decoded. */ - interrupt = FDT_MAP_IRQ(intr_parent, interrupt); + interrupt = FDT_MAP_IRQ(intr_parent, intr[0]); return (interrupt); } } /* Not in table, so guess */ - interrupt = FDT_MAP_IRQ(intr_parent, fdt32_to_cpu(*intr)); + interrupt = FDT_MAP_IRQ(intr_parent, intr[0]); return (interrupt); } Modified: head/sys/arm/mv/mv_pci.c ============================================================================== --- head/sys/arm/mv/mv_pci.c Sat Feb 1 12:33:58 2014 (r261350) +++ head/sys/arm/mv/mv_pci.c Sat Feb 1 17:17:35 2014 (r261351) @@ -1050,7 +1050,8 @@ mv_pcib_route_interrupt(device_t bus, de { struct mv_pcib_softc *sc; struct ofw_pci_register reg; - uint32_t pintr, mintr; + uint32_t pintr, mintr[4]; + int icells; phandle_t iparent; sc = device_get_softc(bus); @@ -1062,10 +1063,11 @@ mv_pcib_route_interrupt(device_t bus, de (pci_get_slot(dev) << OFW_PCI_PHYS_HI_DEVICESHIFT) | (pci_get_function(dev) << OFW_PCI_PHYS_HI_FUNCTIONSHIFT); - if (ofw_bus_lookup_imap(ofw_bus_get_node(dev), &sc->sc_pci_iinfo, ®, - sizeof(reg), &pintr, sizeof(pintr), &mintr, sizeof(mintr), - &iparent)) - return (ofw_bus_map_intr(dev, iparent, mintr)); + icells = ofw_bus_lookup_imap(ofw_bus_get_node(dev), &sc->sc_pci_iinfo, + ®, sizeof(reg), &pintr, sizeof(pintr), mintr, sizeof(mintr), + &iparent); + if (icells > 0) + return (ofw_bus_map_intr(dev, iparent, icells, mintr)); /* Maybe it's a real interrupt, not an intpin */ if (pin > 4) Modified: head/sys/dev/fdt/fdt_common.c ============================================================================== --- head/sys/dev/fdt/fdt_common.c Sat Feb 1 12:33:58 2014 (r261350) +++ head/sys/dev/fdt/fdt_common.c Sat Feb 1 17:17:35 2014 (r261351) @@ -501,11 +501,9 @@ fdt_intr_to_rl(device_t dev, phandle_t n icells = 1; } for (i = 0, k = 0; i < nintr; i += icells, k++) { - intr[i] = ofw_bus_map_intr(dev, iparent, intr[i]); + intr[i] = ofw_bus_map_intr(dev, iparent, icells, intr); resource_list_add(rl, SYS_RES_IRQ, k, intr[i], intr[i], 1); - if (icells > 1) - ofw_bus_config_intr(dev, intr[i], intr[i+1]); } free(intr, M_OFWPROP); } Modified: head/sys/dev/ofw/ofw_bus.h ============================================================================== --- head/sys/dev/ofw/ofw_bus.h Sat Feb 1 12:33:58 2014 (r261350) +++ head/sys/dev/ofw/ofw_bus.h Sat Feb 1 17:17:35 2014 (r261351) @@ -71,15 +71,9 @@ ofw_bus_get_type(device_t dev) } static __inline int -ofw_bus_map_intr(device_t dev, phandle_t iparent, int irq) +ofw_bus_map_intr(device_t dev, phandle_t iparent, int icells, pcell_t *intr) { - return (OFW_BUS_MAP_INTR(dev, dev, iparent, irq)); -} - -static __inline int -ofw_bus_config_intr(device_t dev, int irq, int sense) -{ - return (OFW_BUS_CONFIG_INTR(dev, dev, irq, sense)); + return (OFW_BUS_MAP_INTR(dev, dev, iparent, icells, intr)); } #endif /* !_DEV_OFW_OFW_BUS_H_ */ Modified: head/sys/dev/ofw/ofw_bus_if.m ============================================================================== --- head/sys/dev/ofw/ofw_bus_if.m Sat Feb 1 12:33:58 2014 (r261350) +++ head/sys/dev/ofw/ofw_bus_if.m Sat Feb 1 17:17:35 2014 (r261351) @@ -57,7 +57,6 @@ CODE { static ofw_bus_get_node_t ofw_bus_default_get_node; static ofw_bus_get_type_t ofw_bus_default_get_type; static ofw_bus_map_intr_t ofw_bus_default_map_intr; - static ofw_bus_config_intr_t ofw_bus_default_config_intr; static const struct ofw_bus_devinfo * ofw_bus_default_get_devinfo(device_t bus, device_t dev) @@ -103,27 +102,15 @@ CODE { int ofw_bus_default_map_intr(device_t bus, device_t dev, phandle_t iparent, - int irq) + int icells, pcell_t *interrupt) { /* Propagate up the bus hierarchy until someone handles it. */ if (device_get_parent(bus) != NULL) return OFW_BUS_MAP_INTR(device_get_parent(bus), dev, - iparent, irq); + iparent, icells, interrupt); /* If that fails, then assume a one-domain system */ - return (irq); - } - - int - ofw_bus_default_config_intr(device_t bus, device_t dev, int irq, - int sense) - { - /* Propagate up the bus hierarchy until someone handles it. */ - if (device_get_parent(bus) != NULL) - return OFW_BUS_CONFIG_INTR(device_get_parent(bus), dev, - irq, sense); - - return (ENXIO); + return (interrupt[0]); } }; @@ -172,20 +159,14 @@ METHOD const char * get_type { } DEFAULT ofw_bus_default_get_type; # Map an (interrupt parent, IRQ) pair to a unique system-wide interrupt number. +# If the interrupt encoding includes a sense field, the interrupt sense will +# also be configured. METHOD int map_intr { device_t bus; device_t dev; phandle_t iparent; - int irq; + int icells; + pcell_t *interrupt; } DEFAULT ofw_bus_default_map_intr; -# Configure an interrupt using the device-tree encoded sense key (the second -# value in the interrupts property if interrupt-cells is 2). IRQ should be -# encoded as from ofw_bus_map_intr(). -METHOD int config_intr { - device_t bus; - device_t dev; - int irq; - int sense; -} DEFAULT ofw_bus_default_config_intr; Modified: head/sys/dev/ofw/ofw_nexus.c ============================================================================== --- head/sys/dev/ofw/ofw_nexus.c Sat Feb 1 12:33:58 2014 (r261350) +++ head/sys/dev/ofw/ofw_nexus.c Sat Feb 1 17:17:35 2014 (r261351) @@ -467,11 +467,10 @@ nexus_setup_dinfo(device_t dev, phandle_ OF_searchencprop(OF_xref_phandle(iparent), "#interrupt-cells", &icells, sizeof(icells)); for (i = 0; i < nintr; i+= icells) { - intr[i] = ofw_bus_map_intr(dev, iparent, intr[i]); + intr[i] = ofw_bus_map_intr(dev, iparent, icells, + &intr[i]); resource_list_add(&ndi->ndi_rl, SYS_RES_IRQ, i, intr[i], intr[i], 1); - if (icells > 1) - ofw_bus_config_intr(dev, intr[i], intr[i+1]); } free(intr, M_OFWPROP); } Modified: head/sys/powerpc/ofw/ofw_pci.c ============================================================================== --- head/sys/powerpc/ofw/ofw_pci.c Sat Feb 1 12:33:58 2014 (r261350) +++ head/sys/powerpc/ofw/ofw_pci.c Sat Feb 1 17:17:35 2014 (r261351) @@ -273,9 +273,7 @@ ofw_pci_route_interrupt(device_t bus, de &sc->sc_pci_iinfo, ®, sizeof(reg), &pintr, sizeof(pintr), mintr, sizeof(mintr), &iparent); if (intrcells) { - pintr = ofw_bus_map_intr(dev, iparent, mintr[0]); - if (intrcells == 2) - ofw_bus_config_intr(dev, pintr, mintr[1]); + pintr = ofw_bus_map_intr(dev, iparent, intrcells, mintr); return (pintr); } Modified: head/sys/powerpc/ofw/ofw_pcib_pci.c ============================================================================== --- head/sys/powerpc/ofw/ofw_pcib_pci.c Sat Feb 1 12:33:58 2014 (r261350) +++ head/sys/powerpc/ofw/ofw_pcib_pci.c Sat Feb 1 17:17:35 2014 (r261351) @@ -158,10 +158,8 @@ ofw_pcib_pci_route_interrupt(device_t br * it again on higher levels - that causes problems * in some cases, and never seems to be required. */ - mintr[0] = ofw_bus_map_intr(dev, iparent, mintr[0]); - if (intrcells == 2) - ofw_bus_config_intr(dev, mintr[0], mintr[1]); - + mintr[0] = ofw_bus_map_intr(dev, iparent, intrcells, + mintr); return (mintr[0]); } } else if (intpin >= 1 && intpin <= 4) { Modified: head/sys/powerpc/ofw/ofw_pcibus.c ============================================================================== --- head/sys/powerpc/ofw/ofw_pcibus.c Sat Feb 1 12:33:58 2014 (r261350) +++ head/sys/powerpc/ofw/ofw_pcibus.c Sat Feb 1 17:17:35 2014 (r261351) @@ -216,13 +216,9 @@ ofw_pcibus_enum_devtree(device_t dev, u_ "#interrupt-cells", &icells, sizeof(icells)); intr[0] = ofw_bus_map_intr(dev, iparent, - intr[0]); + icells, intr); } - if (iparent != 0 && icells > 1) - ofw_bus_config_intr(dev, intr[0], - intr[1]); - resource_list_add(&dinfo->opd_dinfo.resources, SYS_RES_IRQ, 0, intr[0], intr[0], 1); } @@ -309,18 +305,18 @@ ofw_pcibus_child_pnpinfo_str_method(devi static int ofw_pcibus_assign_interrupt(device_t dev, device_t child) { - ofw_pci_intr_t intr; + ofw_pci_intr_t intr[2]; phandle_t node, iparent; - int isz; + int isz, icells; node = ofw_bus_get_node(child); if (node == -1) { /* Non-firmware enumerated child, use standard routing */ - intr = pci_get_intpin(child); + intr[0] = pci_get_intpin(child); return (PCIB_ROUTE_INTERRUPT(device_get_parent(dev), child, - intr)); + intr[0])); } /* @@ -331,24 +327,28 @@ ofw_pcibus_assign_interrupt(device_t dev iparent = -1; if (OF_getprop(node, "interrupt-parent", &iparent, sizeof(iparent)) < 0) iparent = -1; + icells = 1; + if (iparent != -1) + OF_getprop(OF_xref_phandle(iparent), "#interrupt-cells", + &icells, sizeof(icells)); /* * Any AAPL,interrupts property gets priority and is * fully specified (i.e. does not need routing) */ - isz = OF_getprop(node, "AAPL,interrupts", &intr, sizeof(intr)); - if (isz == sizeof(intr)) - return ((iparent == -1) ? intr : ofw_bus_map_intr(dev, iparent, - intr)); + isz = OF_getprop(node, "AAPL,interrupts", intr, sizeof(intr)); + if (isz == sizeof(intr[0])*icells) + return ((iparent == -1) ? intr[0] : ofw_bus_map_intr(dev, + iparent, icells, intr)); - isz = OF_getprop(node, "interrupts", &intr, sizeof(intr)); - if (isz == sizeof(intr)) { + isz = OF_getprop(node, "interrupts", intr, sizeof(intr)); + if (isz == sizeof(intr[0])*icells) { if (iparent != -1) - intr = ofw_bus_map_intr(dev, iparent, intr); + intr[0] = ofw_bus_map_intr(dev, iparent, icells, intr); } else { /* No property: our best guess is the intpin. */ - intr = pci_get_intpin(child); + intr[0] = pci_get_intpin(child); } /* @@ -361,7 +361,7 @@ ofw_pcibus_assign_interrupt(device_t dev * will always use the route_interrupt method, and treat exceptions * on the level they become apparent. */ - return (PCIB_ROUTE_INTERRUPT(device_get_parent(dev), child, intr)); + return (PCIB_ROUTE_INTERRUPT(device_get_parent(dev), child, intr[0])); } static const struct ofw_bus_devinfo * Modified: head/sys/powerpc/powerpc/nexus.c ============================================================================== --- head/sys/powerpc/powerpc/nexus.c Sat Feb 1 12:33:58 2014 (r261350) +++ head/sys/powerpc/powerpc/nexus.c Sat Feb 1 17:17:35 2014 (r261351) @@ -75,7 +75,6 @@ static bus_bind_intr_t nexus_bind_intr; #endif static bus_config_intr_t nexus_config_intr; static ofw_bus_map_intr_t nexus_ofw_map_intr; -static ofw_bus_config_intr_t nexus_ofw_config_intr; static device_method_t nexus_methods[] = { /* Bus interface */ @@ -90,7 +89,6 @@ static device_method_t nexus_methods[] = /* ofw_bus interface */ DEVMETHOD(ofw_bus_map_intr, nexus_ofw_map_intr), - DEVMETHOD(ofw_bus_config_intr, nexus_ofw_config_intr), DEVMETHOD_END }; @@ -157,19 +155,16 @@ nexus_config_intr(device_t dev, int irq, } static int -nexus_ofw_map_intr(device_t dev, device_t child, phandle_t iparent, int irq) +nexus_ofw_map_intr(device_t dev, device_t child, phandle_t iparent, int icells, + pcell_t *irq) { - return (MAP_IRQ(iparent, irq)); + u_int intr = MAP_IRQ(iparent, irq[0]); + if (icells > 1) + powerpc_fw_config_intr(irq[0], irq[1]); + return (intr); } static int -nexus_ofw_config_intr(device_t dev, device_t child, int irq, int sense) -{ - - return (powerpc_fw_config_intr(irq, sense)); -} - -static int nexus_activate_resource(device_t bus __unused, device_t child __unused, int type, int rid __unused, struct resource *r) { Modified: head/sys/powerpc/pseries/vdevice.c ============================================================================== --- head/sys/powerpc/pseries/vdevice.c Sat Feb 1 12:33:58 2014 (r261350) +++ head/sys/powerpc/pseries/vdevice.c Sat Feb 1 17:17:35 2014 (r261351) @@ -157,7 +157,7 @@ vdevice_attach(device_t dev) u_int irq = intr[i]; if (iparent != -1) irq = ofw_bus_map_intr(dev, iparent, - intr[i]); + icells, &intr[i]); resource_list_add(&dinfo->mdi_resources, SYS_RES_IRQ, i, irq, irq, i); From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 17:41:56 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5CD89E11; Sat, 1 Feb 2014 17:41:56 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3C6461FEE; Sat, 1 Feb 2014 17:41:56 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11HfuHK085327; Sat, 1 Feb 2014 17:41:56 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11HftLN085317; Sat, 1 Feb 2014 17:41:55 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201402011741.s11HftLN085317@svn.freebsd.org> From: Nathan Whitehorn Date: Sat, 1 Feb 2014 17:41:55 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261352 - in head/sys: conf dev/fdt mips/beri X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 17:41:56 -0000 Author: nwhitehorn Date: Sat Feb 1 17:41:54 2014 New Revision: 261352 URL: http://svnweb.freebsd.org/changeset/base/261352 Log: Provide a simpler and more standards-compliant simplebus implementation to get the Routerboard 800 up and running with the vendor device tree. This does not implement some BERI-specific features (which hopefully won't be necessary soon), so move the old code to mips/beri, with a higher attach priority when built, until MIPS interrupt domain support is rearranged. Added: head/sys/mips/beri/beri_simplebus.c - copied, changed from r261350, head/sys/dev/fdt/simplebus.c head/sys/mips/beri/fdt_ic_if.m - copied unchanged from r261350, head/sys/dev/fdt/fdt_ic_if.m Deleted: head/sys/dev/fdt/fdt_ic_if.m Modified: head/sys/conf/files head/sys/dev/fdt/simplebus.c head/sys/mips/beri/files.beri Modified: head/sys/conf/files ============================================================================== --- head/sys/conf/files Sat Feb 1 17:17:35 2014 (r261351) +++ head/sys/conf/files Sat Feb 1 17:41:54 2014 (r261352) @@ -1367,7 +1367,6 @@ dev/fb/fbd.c optional fbd | vt dev/fb/fb_if.m standard dev/fb/splash.c optional sc splash dev/fdt/fdt_common.c optional fdt -dev/fdt/fdt_ic_if.m optional fdt dev/fdt/fdt_slicer.c optional fdt cfi | fdt nand dev/fdt/fdt_static_dtb.S optional fdt fdt_dtb_static \ dependency "$S/boot/fdt/dts/${FDT_DTS_FILE}" Modified: head/sys/dev/fdt/simplebus.c ============================================================================== --- head/sys/dev/fdt/simplebus.c Sat Feb 1 17:17:35 2014 (r261351) +++ head/sys/dev/fdt/simplebus.c Sat Feb 1 17:41:54 2014 (r261352) @@ -1,10 +1,7 @@ /*- - * Copyright (c) 2009-2010 The FreeBSD Foundation + * Copyright (c) 2013 Nathan Whitehorn * All rights reserved. * - * This software was developed by Semihalf under sponsorship from - * the FreeBSD Foundation. - * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: @@ -17,7 +14,7 @@ * THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR OR CONTRIBUTORS BE LIABLE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR 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) @@ -29,95 +26,85 @@ #include __FBSDID("$FreeBSD$"); - -#include "opt_platform.h" #include #include -#include -#include #include #include +#include +#include #include -#include +#include #include #include -#include -#include "fdt_common.h" -#include "fdt_ic_if.h" -#include "ofw_bus_if.h" - -#ifdef DEBUG -#define debugf(fmt, args...) do { printf("%s(): ", __func__); \ - printf(fmt,##args); } while (0) -#else -#define debugf(fmt, args...) -#endif - -static MALLOC_DEFINE(M_SIMPLEBUS, "simplebus", "simplebus devices information"); +struct simplebus_range { + uint64_t bus; + uint64_t host; + uint64_t size; +}; struct simplebus_softc { - int sc_addr_cells; - int sc_size_cells; + device_t dev; + phandle_t node; + + struct simplebus_range *ranges; + int nranges; + + pcell_t acells, scells; }; struct simplebus_devinfo { - struct ofw_bus_devinfo di_ofw; - struct resource_list di_res; - - /* Interrupts sense-level info for this device */ - struct fdt_sense_level di_intr_sl[DI_MAX_INTR_NUM]; + struct ofw_bus_devinfo obdinfo; + struct resource_list rl; }; /* - * Prototypes. + * Bus interface. */ -static int simplebus_probe(device_t); -static int simplebus_attach(device_t); - -static int simplebus_print_child(device_t, device_t); -static int simplebus_setup_intr(device_t, device_t, struct resource *, int, - driver_filter_t *, driver_intr_t *, void *, void **); -static int simplebus_teardown_intr(device_t, device_t, struct resource *, - void *); - -static int simplebus_activate_resource(device_t, device_t, int, int, - struct resource *); +static int simplebus_probe(device_t dev); +static int simplebus_attach(device_t dev); static struct resource *simplebus_alloc_resource(device_t, device_t, int, int *, u_long, u_long, u_long, u_int); -static int simplebus_deactivate_resource(device_t, device_t, int, int, - struct resource *); -static int simplebus_release_resource(device_t, device_t, int, int, - struct resource *); -static device_t simplebus_get_interrupt_parent(device_t); -static struct resource_list *simplebus_get_resource_list(device_t, device_t); +static void simplebus_probe_nomatch(device_t bus, device_t child); +static int simplebus_print_child(device_t bus, device_t child); -static ofw_bus_get_devinfo_t simplebus_get_devinfo; +/* + * ofw_bus interface + */ +static const struct ofw_bus_devinfo *simplebus_get_devinfo(device_t bus, + device_t child); /* - * Bus interface definition. + * local methods */ -static device_method_t simplebus_methods[] = { + +static int simplebus_fill_ranges(phandle_t node, + struct simplebus_softc *sc); +static struct simplebus_devinfo *simplebus_setup_dinfo(device_t dev, + phandle_t node); + +/* + * Driver methods. + */ +static device_method_t simplebus_methods[] = { /* Device interface */ DEVMETHOD(device_probe, simplebus_probe), DEVMETHOD(device_attach, simplebus_attach), - DEVMETHOD(device_detach, bus_generic_detach), - DEVMETHOD(device_shutdown, bus_generic_shutdown), - DEVMETHOD(device_suspend, bus_generic_suspend), - DEVMETHOD(device_resume, bus_generic_resume), /* Bus interface */ DEVMETHOD(bus_print_child, simplebus_print_child), + DEVMETHOD(bus_probe_nomatch, simplebus_probe_nomatch), + DEVMETHOD(bus_setup_intr, bus_generic_setup_intr), + DEVMETHOD(bus_teardown_intr, bus_generic_teardown_intr), DEVMETHOD(bus_alloc_resource, simplebus_alloc_resource), - DEVMETHOD(bus_release_resource, simplebus_release_resource), - DEVMETHOD(bus_activate_resource, simplebus_activate_resource), - DEVMETHOD(bus_deactivate_resource, simplebus_deactivate_resource), - DEVMETHOD(bus_setup_intr, simplebus_setup_intr), - DEVMETHOD(bus_teardown_intr, simplebus_teardown_intr), - DEVMETHOD(bus_get_resource_list, simplebus_get_resource_list), + DEVMETHOD(bus_release_resource, bus_generic_release_resource), + DEVMETHOD(bus_activate_resource, bus_generic_activate_resource), + DEVMETHOD(bus_deactivate_resource, bus_generic_deactivate_resource), + DEVMETHOD(bus_adjust_resource, bus_generic_adjust_resource), + DEVMETHOD(bus_child_pnpinfo_str, ofw_bus_gen_child_pnpinfo_str), - /* OFW bus interface */ + /* ofw_bus interface */ DEVMETHOD(ofw_bus_get_devinfo, simplebus_get_devinfo), DEVMETHOD(ofw_bus_get_compat, ofw_bus_gen_get_compat), DEVMETHOD(ofw_bus_get_model, ofw_bus_gen_get_model), @@ -125,7 +112,7 @@ static device_method_t simplebus_methods DEVMETHOD(ofw_bus_get_node, ofw_bus_gen_get_node), DEVMETHOD(ofw_bus_get_type, ofw_bus_gen_get_type), - { 0, 0 } + DEVMETHOD_END }; static driver_t simplebus_driver = { @@ -133,18 +120,16 @@ static driver_t simplebus_driver = { simplebus_methods, sizeof(struct simplebus_softc) }; - -devclass_t simplebus_devclass; - +static devclass_t simplebus_devclass; DRIVER_MODULE(simplebus, nexus, simplebus_driver, simplebus_devclass, 0, 0); -DRIVER_MODULE(simplebus, simplebus, simplebus_driver, simplebus_devclass, 0, - 0); static int simplebus_probe(device_t dev) { - - if (!ofw_bus_is_compatible(dev, "simple-bus")) + + if (!ofw_bus_is_compatible(dev, "simple-bus") && + (ofw_bus_get_type(dev) == NULL || strcmp(ofw_bus_get_type(dev), + "soc") != 0)) return (ENXIO); device_set_desc(dev, "Flattened device tree simple bus"); @@ -155,102 +140,188 @@ simplebus_probe(device_t dev) static int simplebus_attach(device_t dev) { - device_t dev_child; - struct simplebus_devinfo *di; - struct simplebus_softc *sc; - phandle_t dt_node, dt_child; + struct simplebus_softc *sc; + struct simplebus_devinfo *di; + phandle_t node; + device_t cdev; + node = ofw_bus_get_node(dev); sc = device_get_softc(dev); + sc->dev = dev; + sc->node = node; + /* - * Walk simple-bus and add direct subordinates as our children. + * Some important numbers */ - dt_node = ofw_bus_get_node(dev); - for (dt_child = OF_child(dt_node); dt_child != 0; - dt_child = OF_peer(dt_child)) { - - /* Check and process 'status' property. */ - if (!(fdt_is_enabled(dt_child))) - continue; + sc->acells = 2; + OF_getencprop(node, "#address-cells", &sc->acells, sizeof(sc->acells)); + sc->scells = 1; + OF_getencprop(node, "#size-cells", &sc->scells, sizeof(sc->scells)); - if (!(fdt_pm_is_enabled(dt_child))) - continue; + if (simplebus_fill_ranges(node, sc) < 0) { + device_printf(dev, "could not get ranges\n"); + return (ENXIO); + } - di = malloc(sizeof(*di), M_SIMPLEBUS, M_WAITOK | M_ZERO); + /* + * In principle, simplebus could have an interrupt map, but ignore that + * for now + */ - if (ofw_bus_gen_setup_devinfo(&di->di_ofw, dt_child) != 0) { - free(di, M_SIMPLEBUS); - device_printf(dev, "could not set up devinfo\n"); + for (node = OF_child(node); node > 0; node = OF_peer(node)) { + if ((di = simplebus_setup_dinfo(dev, node)) == NULL) continue; - } - - resource_list_init(&di->di_res); - if (fdt_reg_to_rl(dt_child, &di->di_res)) { - device_printf(dev, - "%s: could not process 'reg' " - "property\n", di->di_ofw.obd_name); - ofw_bus_gen_destroy_devinfo(&di->di_ofw); - free(di, M_SIMPLEBUS); + cdev = device_add_child(dev, NULL, -1); + if (cdev == NULL) { + device_printf(dev, "<%s>: device_add_child failed\n", + di->obdinfo.obd_name); + resource_list_free(&di->rl); + ofw_bus_gen_destroy_devinfo(&di->obdinfo); + free(di, M_DEVBUF); continue; } + device_set_ivars(cdev, di); + } - if (fdt_intr_to_rl(dev, dt_child, &di->di_res, di->di_intr_sl)) { - device_printf(dev, "%s: could not process " - "'interrupts' property\n", di->di_ofw.obd_name); - resource_list_free(&di->di_res); - ofw_bus_gen_destroy_devinfo(&di->di_ofw); - free(di, M_SIMPLEBUS); - continue; - } + return (bus_generic_attach(dev)); +} - /* Add newbus device for this FDT node */ - dev_child = device_add_child(dev, NULL, -1); - if (dev_child == NULL) { - device_printf(dev, "could not add child: %s\n", - di->di_ofw.obd_name); - resource_list_free(&di->di_res); - ofw_bus_gen_destroy_devinfo(&di->di_ofw); - free(di, M_SIMPLEBUS); - continue; +static int +simplebus_fill_ranges(phandle_t node, struct simplebus_softc *sc) +{ + int host_address_cells; + cell_t *base_ranges; + ssize_t nbase_ranges; + int err; + int i, j, k; + + err = OF_searchencprop(OF_parent(node), "#address-cells", + &host_address_cells, sizeof(host_address_cells)); + if (err <= 0) + return (-1); + + nbase_ranges = OF_getproplen(node, "ranges"); + if (nbase_ranges < 0) + return (-1); + sc->nranges = nbase_ranges / sizeof(cell_t) / + (sc->acells + host_address_cells + sc->scells); + if (sc->nranges == 0) + return (0); + + sc->ranges = malloc(sc->nranges * sizeof(sc->ranges[0]), + M_DEVBUF, M_WAITOK); + base_ranges = malloc(nbase_ranges, M_DEVBUF, M_WAITOK); + OF_getencprop(node, "ranges", base_ranges, nbase_ranges); + + for (i = 0, j = 0; i < sc->nranges; i++) { + sc->ranges[i].bus = 0; + for (k = 0; k < sc->acells; k++) { + sc->ranges[i].bus <<= 32; + sc->ranges[i].bus |= base_ranges[j++]; + } + sc->ranges[i].host = 0; + for (k = 0; k < host_address_cells; k++) { + sc->ranges[i].host <<= 32; + sc->ranges[i].host |= base_ranges[j++]; + } + sc->ranges[i].size = 0; + for (k = 0; k < sc->scells; k++) { + sc->ranges[i].size <<= 32; + sc->ranges[i].size |= base_ranges[j++]; } -#ifdef DEBUG - device_printf(dev, "added child: %s\n\n", di->di_ofw.obd_name); -#endif - device_set_ivars(dev_child, di); } - return (bus_generic_attach(dev)); + free(base_ranges, M_DEVBUF); + return (sc->nranges); } -static int -simplebus_print_child(device_t dev, device_t child) +static struct simplebus_devinfo * +simplebus_setup_dinfo(device_t dev, phandle_t node) { - device_t ip; - struct simplebus_devinfo *di; - struct resource_list *rl; - int rv; + struct simplebus_softc *sc; + struct simplebus_devinfo *ndi; + uint32_t *reg, *intr, icells; + uint64_t phys, size; + phandle_t iparent; + int i, j, k; + int nintr; + int nreg; - di = device_get_ivars(child); - rl = &di->di_res; + sc = device_get_softc(dev); - rv = 0; - rv += bus_print_child_header(dev, child); - rv += resource_list_print_type(rl, "mem", SYS_RES_MEMORY, "%#lx"); - rv += resource_list_print_type(rl, "irq", SYS_RES_IRQ, "%ld"); - if ((ip = simplebus_get_interrupt_parent(child)) != NULL) - rv += printf(" (%s)", device_get_nameunit(ip)); - rv += bus_print_child_footer(dev, child); + ndi = malloc(sizeof(*ndi), M_DEVBUF, M_WAITOK | M_ZERO); + if (ofw_bus_gen_setup_devinfo(&ndi->obdinfo, node) != 0) { + free(ndi, M_DEVBUF); + return (NULL); + } - return (rv); + resource_list_init(&ndi->rl); + nreg = OF_getencprop_alloc(node, "reg", sizeof(*reg), (void **)®); + if (nreg == -1) + nreg = 0; + if (nreg % (sc->acells + sc->scells) != 0) { + if (bootverbose) + device_printf(dev, "Malformed reg property on <%s>\n", + ndi->obdinfo.obd_name); + nreg = 0; + } + + for (i = 0, k = 0; i < nreg; i += sc->acells + sc->scells, k++) { + phys = size = 0; + for (j = 0; j < sc->acells; j++) { + phys <<= 32; + phys |= reg[i + j]; + } + for (j = 0; j < sc->scells; j++) { + size <<= 32; + size |= reg[i + sc->acells + j]; + } + + resource_list_add(&ndi->rl, SYS_RES_MEMORY, k, + phys, phys + size - 1, size); + } + free(reg, M_OFWPROP); + + nintr = OF_getencprop_alloc(node, "interrupts", sizeof(*intr), + (void **)&intr); + if (nintr > 0) { + iparent = 0; + OF_searchencprop(node, "interrupt-parent", &iparent, + sizeof(iparent)); + OF_searchencprop(OF_xref_phandle(iparent), "#interrupt-cells", + &icells, sizeof(icells)); + for (i = 0, k = 0; i < nintr; i += icells, k++) { + intr[i] = ofw_bus_map_intr(dev, iparent, icells, + &intr[i]); + resource_list_add(&ndi->rl, SYS_RES_IRQ, k, intr[i], + intr[i], 1); + } + free(intr, M_OFWPROP); + } + + return (ndi); +} + +static const struct ofw_bus_devinfo * +simplebus_get_devinfo(device_t bus __unused, device_t child) +{ + struct simplebus_devinfo *ndi; + + ndi = device_get_ivars(child); + return (&ndi->obdinfo); } static struct resource * simplebus_alloc_resource(device_t bus, device_t child, int type, int *rid, u_long start, u_long end, u_long count, u_int flags) { - device_t ic; + struct simplebus_softc *sc; struct simplebus_devinfo *di; struct resource_list_entry *rle; + int j; + + sc = device_get_softc(bus); /* * Request for the default allocation with a given rid: use resource @@ -263,7 +334,7 @@ simplebus_alloc_resource(device_t bus, d if (type == SYS_RES_IOPORT) type = SYS_RES_MEMORY; - rle = resource_list_find(&di->di_res, type, *rid); + rle = resource_list_find(&di->rl, type, *rid); if (rle == NULL) { if (bootverbose) device_printf(bus, "no default resources for " @@ -273,153 +344,69 @@ simplebus_alloc_resource(device_t bus, d start = rle->start; end = rle->end; count = rle->count; - } + } - if (type == SYS_RES_IRQ && - (ic = simplebus_get_interrupt_parent(child)) != NULL) - return(FDT_IC_ALLOC_INTR(ic, child, rid, start, flags)); + if (type == SYS_RES_MEMORY) { + /* Remap through ranges property */ + for (j = 0; j < sc->nranges; j++) { + if (start >= sc->ranges[j].bus && end < + sc->ranges[j].bus + sc->ranges[j].size) { + start -= sc->ranges[j].bus; + start += sc->ranges[j].host; + end -= sc->ranges[j].bus; + end += sc->ranges[j].host; + break; + } + } + if (j == sc->nranges && sc->nranges != 0) { + if (bootverbose) + device_printf(bus, "Could not map resource " + "%#lx-%#lx\n", start, end); + + return (NULL); + } + } return (bus_generic_alloc_resource(bus, child, type, rid, start, end, count, flags)); } static int -simplebus_activate_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) -{ - device_t ic; - - if (type == SYS_RES_IRQ && - (ic = simplebus_get_interrupt_parent(child)) != NULL) - return (FDT_IC_ACTIVATE_INTR(ic, r)); - - return (bus_generic_activate_resource(dev, child, type, rid, r)); -} - -static int -simplebus_deactivate_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) -{ - device_t ic; - - if (type == SYS_RES_IRQ && - (ic = simplebus_get_interrupt_parent(child)) != NULL) - return (FDT_IC_DEACTIVATE_INTR(ic, r)); - - return (bus_generic_deactivate_resource(dev, child, type, rid, r)); -} - -static int -simplebus_release_resource(device_t dev, device_t child, int type, int rid, - struct resource *r) -{ - device_t ic; - - if (type == SYS_RES_IRQ && - (ic = simplebus_get_interrupt_parent(child)) != NULL) - return (FDT_IC_RELEASE_INTR(ic, r)); - - return (bus_generic_release_resource(dev, child, type, rid, r)); -} - -static struct resource_list * -simplebus_get_resource_list(device_t bus, device_t child) -{ - struct simplebus_devinfo *di; - - di = device_get_ivars(child); - return (&di->di_res); -} - -static device_t -simplebus_get_interrupt_parent(device_t dev) +simplebus_print_res(struct simplebus_devinfo *di) { - struct simplebus_devinfo *di; - struct fdt_ic *ic; - device_t ip; - phandle_t ph, iph; - - ip = NULL; - - di = device_get_ivars(dev); - if (di == NULL) - return (NULL); + int rv; - if (OF_getencprop(di->di_ofw.obd_node, "interrupt-parent", &iph, - sizeof(iph)) > 0) { - ph = OF_xref_phandle(iph); - SLIST_FOREACH(ic, &fdt_ic_list_head, fdt_ics) { - if (ic->iph == ph) { - ip = ic->dev; - break; - } - } - } - return (ip); + rv = 0; + rv += resource_list_print_type(&di->rl, "mem", SYS_RES_MEMORY, "%#lx"); + rv += resource_list_print_type(&di->rl, "irq", SYS_RES_IRQ, "%ld"); + return (rv); } -static int -simplebus_setup_intr(device_t bus, device_t child, struct resource *res, - int flags, driver_filter_t *filter, driver_intr_t *ihand, void *arg, - void **cookiep) +static void +simplebus_probe_nomatch(device_t bus, device_t child) { - struct simplebus_devinfo *di; - device_t ic; - enum intr_trigger trig; - enum intr_polarity pol; - int error, irq, rid; + const char *name, *type; - di = device_get_ivars(child); - if (di == NULL) - return (ENXIO); - - if (res == NULL) - return (EINVAL); + if (!bootverbose) + return; - rid = rman_get_rid(res); - if (rid >= DI_MAX_INTR_NUM) - return (ENOENT); - - ic = simplebus_get_interrupt_parent(child); - - trig = di->di_intr_sl[rid].trig; - pol = di->di_intr_sl[rid].pol; - if (trig != INTR_TRIGGER_CONFORM || pol != INTR_POLARITY_CONFORM) { - irq = rman_get_start(res); - if (ic != NULL) - error = FDT_IC_CONFIG_INTR(ic, irq, trig, pol); - else - error = bus_generic_config_intr(bus, irq, trig, pol); - if (error) - return (error); - } + name = ofw_bus_get_name(child); + type = ofw_bus_get_type(child); - if (ic != NULL) - error = FDT_IC_SETUP_INTR(ic, child, res, flags, filter, - ihand, arg, cookiep); - else - error = bus_generic_setup_intr(bus, child, res, flags, filter, - ihand, arg, cookiep); - return (error); + device_printf(bus, "<%s>", name != NULL ? name : "unknown"); + simplebus_print_res(device_get_ivars(child)); + printf(" type %s (no driver attached)\n", + type != NULL ? type : "unknown"); } static int -simplebus_teardown_intr(device_t bus, device_t child, struct resource *res, - void *cookie) +simplebus_print_child(device_t bus, device_t child) { - device_t ic; - - if ((ic = simplebus_get_interrupt_parent(child)) != NULL) - return (FDT_IC_TEARDOWN_INTR(ic, child, res, cookie)); + int rv; - return (bus_generic_teardown_intr(bus, child, res, cookie)); + rv = bus_print_child_header(bus, child); + rv += simplebus_print_res(device_get_ivars(child)); + rv += bus_print_child_footer(bus, child); + return (rv); } -static const struct ofw_bus_devinfo * -simplebus_get_devinfo(device_t bus, device_t child) -{ - struct simplebus_devinfo *di; - - di = device_get_ivars(child); - return (&di->di_ofw); -} Copied and modified: head/sys/mips/beri/beri_simplebus.c (from r261350, head/sys/dev/fdt/simplebus.c) ============================================================================== --- head/sys/dev/fdt/simplebus.c Sat Feb 1 12:33:58 2014 (r261350, copy source) +++ head/sys/mips/beri/beri_simplebus.c Sat Feb 1 17:41:54 2014 (r261352) @@ -44,7 +44,7 @@ __FBSDID("$FreeBSD$"); #include #include -#include "fdt_common.h" +#include #include "fdt_ic_if.h" #include "ofw_bus_if.h" @@ -149,7 +149,7 @@ simplebus_probe(device_t dev) device_set_desc(dev, "Flattened device tree simple bus"); - return (BUS_PROBE_GENERIC); + return (BUS_PROBE_SPECIFIC); } static int Copied: head/sys/mips/beri/fdt_ic_if.m (from r261350, head/sys/dev/fdt/fdt_ic_if.m) ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sys/mips/beri/fdt_ic_if.m Sat Feb 1 17:41:54 2014 (r261352, copy of r261350, head/sys/dev/fdt/fdt_ic_if.m) @@ -0,0 +1,266 @@ +#- +# Copyright (c) 2013 SRI International +# Copyright (c) 1998-2004 Doug Rabson +# All rights reserved. +# +# 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. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR 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 AUTHOR 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$ +# + +#include +#include +#include + +/** + * @defgroup FST_IC fdt_ic - KObj methods for interrupt controllers + * @brief A set of methods required device drivers that are interrupt + * controllers. Derived from sys/kern/bus_if.m. + * @{ + */ +INTERFACE fdt_ic; + +/** + * @brief Allocate an interrupt resource + * + * This method is called by child devices of an interrupt controller to + * allocate an interrup. The meaning of the resource-ID field varies + * from bus to bus and is opaque to the interrupt controller. If a + * resource was allocated and the caller did not use the RF_ACTIVE + * to specify that it should be activated immediately, the caller is + * responsible for calling FDT_IC_ACTIVATE_INTR() when it actually uses + * the interupt. + * + * @param _dev the interrupt-parent device of @p _child + * @param _child the device which is requesting an allocation + * @param _rid a pointer to the resource identifier + * @param _irq interrupt source to allocate + * @param _flags any extra flags to control the resource + * allocation - see @c RF_XXX flags in + * for details + * + * @returns the interrupt which was allocated or @c NULL if no + * resource could be allocated + */ +METHOD struct resource * alloc_intr { + device_t _dev; + device_t _child; + int *_rid; + u_long _irq; + u_int _flags; +}; + +/** + * @brief Activate an interrupt + * + * Activate an interrupt previously allocated with FDT_IC_ALLOC_INTR(). + * + * @param _dev the parent device of @p _child + * @param _r interrupt to activate + */ +METHOD int activate_intr { + device_t _dev; + struct resource *_r; +}; + +/** + * @brief Deactivate an interrupt + * + * Deactivate a resource previously allocated with FDT_IC_ALLOC_INTR(). + * + * @param _dev the parent device of @p _child + * @param _r the interrupt to deactivate + */ +METHOD int deactivate_intr { + device_t _dev; + struct resource *_r; +}; + +/** + * @brief Release an interrupt + * + * Free an interupt allocated by the FDT_IC_ALLOC_INTR. + * + * @param _dev the parent device of @p _child + * @param _r the resource to release + */ +METHOD int release_intr { + device_t _dev; + struct resource *_res; +}; + +/** + * @brief Install an interrupt handler + * + * This method is used to associate an interrupt handler function with + * an irq resource. When the interrupt triggers, the function @p _intr + * will be called with the value of @p _arg as its single + * argument. The value returned in @p *_cookiep is used to cancel the + * interrupt handler - the caller should save this value to use in a + * future call to FDT_IC_TEARDOWN_INTR(). + * + * @param _dev the interrupt-parent device of @p _child + * @param _child the device which allocated the resource + * @param _irq the resource representing the interrupt + * @param _flags a set of bits from enum intr_type specifying + * the class of interrupt + * @param _intr the function to call when the interrupt + * triggers + * @param _arg a value to use as the single argument in calls + * to @p _intr + * @param _cookiep a pointer to a location to recieve a cookie + * value that may be used to remove the interrupt + * handler + */ +METHOD int setup_intr { + device_t _dev; + device_t _child; + struct resource *_irq; + int _flags; + driver_filter_t *_filter; + driver_intr_t *_intr; + void *_arg; + void **_cookiep; +}; + +/** + * @brief Uninstall an interrupt handler + * + * This method is used to disassociate an interrupt handler function + * with an irq resource. The value of @p _cookie must be the value + * returned from a previous call to FDT_IC_SETUP_INTR(). + * + * @param _dev the interrupt-parent device of @p _child + * @param _child the device which allocated the resource + * @param _irq the resource representing the interrupt + * @param _cookie the cookie value returned when the interrupt + * was originally registered + */ +METHOD int teardown_intr { + device_t _dev; + device_t _child; + struct resource *_irq; + void *_cookie; +}; + +/** + * @brief Allow drivers to request that an interrupt be bound to a specific + * CPU. + * + * @param _dev the interrupt-parent device of @p _child + * @param _child the device which allocated the resource + * @param _irq the resource representing the interrupt + * @param _cpu the CPU to bind the interrupt to + */ +METHOD int bind_intr { + device_t _dev; + device_t _child; + struct resource *_irq; + int _cpu; +}; + +/** + * @brief Allow drivers to specify the trigger mode and polarity + * of the specified interrupt. + * + * @param _dev the interrupt-parent device + * @param _irq the interrupt number to modify + * @param _trig the trigger mode required + * @param _pol the interrupt polarity required + */ +METHOD int config_intr { + device_t _dev; + int _irq; + enum intr_trigger _trig; + enum intr_polarity _pol; +}; + +/** + * @brief Allow drivers to associate a description with an active + * interrupt handler. + * + * @param _dev the interrupt-parent device of @p _child + * @param _child the device which allocated the resource + * @param _irq the resource representing the interrupt + * @param _cookie the cookie value returned when the interrupt + * was originally registered + * @param _descr the description to associate with the interrupt + */ +METHOD int describe_intr { + device_t _dev; + device_t _child; + struct resource *_irq; + void *_cookie; + const char *_descr; +}; + +/** + * @brief Notify an ic that specified child's IRQ should be remapped. + * + * @param _dev the interrupt-parent device + * @param _child the child device + * @param _irq the irq number + */ +METHOD int remap_intr { + device_t _dev; + device_t _child; + u_int _irq; +}; + +/** + * @brief Enable an IPI source. + * + * @param _dev the interrupt controller + * @param _tid the thread ID (relative to the interrupt controller) + * to enable IPIs for + * @param _ipi_irq hardware IRQ to send IPIs to + */ +METHOD void setup_ipi { + device_t _dev; + u_int _tid; + u_int _irq; +}; + +/** + * @brief Send an IPI to the specified thread. + * + * @param _dev the interrupt controller + * @param _tid the thread ID (relative to the interrupt controller) + * to send IPIs to + */ +METHOD void send_ipi { + device_t _dev; + u_int _tid; +}; + +/** + * @brief Clear the IPI on the specfied thread. Only call with the + * local hardware thread or interrupts may be lost! + * + * @param _dev the interrupt controller + * @param _tid the thread ID (relative to the interrupt controller) + * to clear the IPI on + */ +METHOD void clear_ipi { + device_t _dev; + u_int _tid; +}; Modified: head/sys/mips/beri/files.beri ============================================================================== --- head/sys/mips/beri/files.beri Sat Feb 1 17:17:35 2014 (r261351) +++ head/sys/mips/beri/files.beri Sat Feb 1 17:41:54 2014 (r261352) @@ -18,5 +18,7 @@ dev/terasic/mtl/terasic_mtl_syscons.c op dev/terasic/mtl/terasic_mtl_text.c optional terasic_mtl mips/beri/beri_machdep.c standard mips/beri/beri_pic.c optional fdt +mips/beri/beri_simplebus.c optional fdt +mips/beri/fdt_ic_if.m optional fdt mips/mips/intr_machdep.c standard mips/mips/tick.c standard From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 17:53:36 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 801211A2; Sat, 1 Feb 2014 17:53:36 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6CF1410CE; Sat, 1 Feb 2014 17:53:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11HrapM090550; Sat, 1 Feb 2014 17:53:36 GMT (envelope-from imp@svn.freebsd.org) Received: (from imp@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11HraPB090548; Sat, 1 Feb 2014 17:53:36 GMT (envelope-from imp@svn.freebsd.org) Message-Id: <201402011753.s11HraPB090548@svn.freebsd.org> From: Warner Losh Date: Sat, 1 Feb 2014 17:53:36 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261353 - head/sys/arm/at91 X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 17:53:36 -0000 Author: imp Date: Sat Feb 1 17:53:35 2014 New Revision: 261353 URL: http://svnweb.freebsd.org/changeset/base/261353 Log: Fix AT91SAM9260 to work with PA rather than VA device addresses. Modified: head/sys/arm/at91/at91sam9260reg.h Modified: head/sys/arm/at91/at91sam9260reg.h ============================================================================== --- head/sys/arm/at91/at91sam9260reg.h Sat Feb 1 17:41:54 2014 (r261352) +++ head/sys/arm/at91/at91sam9260reg.h Sat Feb 1 17:53:35 2014 (r261353) @@ -251,12 +251,12 @@ * other * soc's so phyical and vm address * mapping are unique. XXX */ -#define AT91SAM9260_OHCI_BASE 0xdfc00000 -#define AT91SAM9260_OHCI_PA_BASE 0x00500000 +#define AT91SAM9260_OHCI_VA_BASE 0xdfc00000 +#define AT91SAM9260_OHCI_BASE 0x00500000 #define AT91SAM9260_OHCI_SIZE 0x00100000 -#define AT91SAM9260_NAND_BASE 0xe0000000 -#define AT91SAM9260_NAND_PA_BASE 0x40000000 +#define AT91SAM9260_NAND_VA_BASE 0xe0000000 +#define AT91SAM9260_NAND_BASE 0x40000000 #define AT91SAM9260_NAND_SIZE 0x10000000 From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 18:13:18 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id CD0384C0; Sat, 1 Feb 2014 18:13:18 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id B9701120F; Sat, 1 Feb 2014 18:13:18 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11IDIsh000628; Sat, 1 Feb 2014 18:13:18 GMT (envelope-from kib@svn.freebsd.org) Received: (from kib@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11IDIl7000627; Sat, 1 Feb 2014 18:13:18 GMT (envelope-from kib@svn.freebsd.org) Message-Id: <201402011813.s11IDIl7000627@svn.freebsd.org> From: Konstantin Belousov Date: Sat, 1 Feb 2014 18:13:18 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261354 - head/lib/libthr/thread X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 18:13:18 -0000 Author: kib Date: Sat Feb 1 18:13:18 2014 New Revision: 261354 URL: http://svnweb.freebsd.org/changeset/base/261354 Log: In _pthread_kill(), if passed pthread is current thread, do not send the signal second time, by adding the missed else before if statement. While there, postpone initializing local curthread variable until passed signal number is checked for validity. Submitted by: John Wolfe PR: threads/186309 MFC after: 1 week Modified: head/lib/libthr/thread/thr_kill.c Modified: head/lib/libthr/thread/thr_kill.c ============================================================================== --- head/lib/libthr/thread/thr_kill.c Sat Feb 1 17:53:35 2014 (r261353) +++ head/lib/libthr/thread/thr_kill.c Sat Feb 1 18:13:18 2014 (r261354) @@ -42,24 +42,27 @@ __weak_reference(_pthread_kill, pthread_ int _pthread_kill(pthread_t pthread, int sig) { - struct pthread *curthread = _get_curthread(); + struct pthread *curthread; int ret; /* Check for invalid signal numbers: */ if (sig < 0 || sig > _SIG_MAXSIG) /* Invalid signal: */ - ret = EINVAL; + return (EINVAL); + + curthread = _get_curthread(); + /* * Ensure the thread is in the list of active threads, and the * signal is valid (signal 0 specifies error checking only) and * not being ignored: */ - else if (curthread == pthread) { + if (curthread == pthread) { if (sig > 0) _thr_send_sig(pthread, sig); ret = 0; - } if ((ret = _thr_find_thread(curthread, pthread, /*include dead*/0)) - == 0) { + } else if ((ret = _thr_find_thread(curthread, pthread, + /*include dead*/0)) == 0) { if (sig > 0) _thr_send_sig(pthread, sig); THR_THREAD_UNLOCK(curthread, pthread); From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 19:25:15 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 9F5AAACB; Sat, 1 Feb 2014 19:25:15 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8B8F61749; Sat, 1 Feb 2014 19:25:15 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11JPFBZ029419; Sat, 1 Feb 2014 19:25:15 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11JPFNr029418; Sat, 1 Feb 2014 19:25:15 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201402011925.s11JPFNr029418@svn.freebsd.org> From: Nathan Whitehorn Date: Sat, 1 Feb 2014 19:25:15 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261355 - head/sys/powerpc/powerpc X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 19:25:15 -0000 Author: nwhitehorn Date: Sat Feb 1 19:25:15 2014 New Revision: 261355 URL: http://svnweb.freebsd.org/changeset/base/261355 Log: Fix typo. Modified: head/sys/powerpc/powerpc/nexus.c Modified: head/sys/powerpc/powerpc/nexus.c ============================================================================== --- head/sys/powerpc/powerpc/nexus.c Sat Feb 1 18:13:18 2014 (r261354) +++ head/sys/powerpc/powerpc/nexus.c Sat Feb 1 19:25:15 2014 (r261355) @@ -160,7 +160,7 @@ nexus_ofw_map_intr(device_t dev, device_ { u_int intr = MAP_IRQ(iparent, irq[0]); if (icells > 1) - powerpc_fw_config_intr(irq[0], irq[1]); + powerpc_fw_config_intr(intr, irq[1]); return (intr); } From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 20:06:53 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 7943128A; Sat, 1 Feb 2014 20:06:53 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 646ED19D8; Sat, 1 Feb 2014 20:06:53 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11K6rbR044894; Sat, 1 Feb 2014 20:06:53 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11K6rLv044893; Sat, 1 Feb 2014 20:06:53 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201402012006.s11K6rLv044893@svn.freebsd.org> From: Nathan Whitehorn Date: Sat, 1 Feb 2014 20:06:53 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261356 - head/sys/powerpc/booke X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 20:06:53 -0000 Author: nwhitehorn Date: Sat Feb 1 20:06:52 2014 New Revision: 261356 URL: http://svnweb.freebsd.org/changeset/base/261356 Log: Avoid spurious compiler warning about an uninitialized variable. Modified: head/sys/powerpc/booke/pmap.c Modified: head/sys/powerpc/booke/pmap.c ============================================================================== --- head/sys/powerpc/booke/pmap.c Sat Feb 1 19:25:15 2014 (r261355) +++ head/sys/powerpc/booke/pmap.c Sat Feb 1 20:06:52 2014 (r261356) @@ -2051,7 +2051,7 @@ mmu_booke_sync_icache(mmu_t mmu, pmap_t pmap_t pmap; vm_page_t m; vm_offset_t addr; - vm_paddr_t pa; + vm_paddr_t pa = 0; int active, valid; va = trunc_page(va); From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 20:46:36 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 454D69A8; Sat, 1 Feb 2014 20:46:36 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 30B521D3A; Sat, 1 Feb 2014 20:46:36 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11Kka4o060103; Sat, 1 Feb 2014 20:46:36 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11KkZq6060101; Sat, 1 Feb 2014 20:46:35 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201402012046.s11KkZq6060101@svn.freebsd.org> From: Nathan Whitehorn Date: Sat, 1 Feb 2014 20:46:35 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261357 - head/sys/kern X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 20:46:36 -0000 Author: nwhitehorn Date: Sat Feb 1 20:46:35 2014 New Revision: 261357 URL: http://svnweb.freebsd.org/changeset/base/261357 Log: ULE works on Book-E since r258002, so remove statements to the contrary. Modified: head/sys/kern/sched_ule.c Modified: head/sys/kern/sched_ule.c ============================================================================== --- head/sys/kern/sched_ule.c Sat Feb 1 20:06:52 2014 (r261356) +++ head/sys/kern/sched_ule.c Sat Feb 1 20:46:35 2014 (r261357) @@ -76,10 +76,6 @@ dtrace_vtime_switch_func_t dtrace_vtime_ #include #include -#if defined(__powerpc__) && defined(BOOKE_E500) -#error "This architecture is not currently compatible with ULE" -#endif - #define KTR_ULE 0 #define TS_NAME_LEN (MAXCOMLEN + sizeof(" td ") + sizeof(__XSTRING(UINT_MAX))) From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 20:56:51 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4B433F1D; Sat, 1 Feb 2014 20:56:51 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 374361DDF; Sat, 1 Feb 2014 20:56:51 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11Kupp2063899; Sat, 1 Feb 2014 20:56:51 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11Kuod4063897; Sat, 1 Feb 2014 20:56:50 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <201402012056.s11Kuod4063897@svn.freebsd.org> From: Nathan Whitehorn Date: Sat, 1 Feb 2014 20:56:50 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r261358 - head/sys/powerpc/conf X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 20:56:51 -0000 Author: nwhitehorn Date: Sat Feb 1 20:56:50 2014 New Revision: 261358 URL: http://svnweb.freebsd.org/changeset/base/261358 Log: Switch default Book-E scheduler to ULE, which works now, and enable CAPABILITIES stuff required to make ssh work. Hopefully, Book-E can eventually be added to GENERIC, which would avoid this kind of issue with bitrot. That will require figuring out how to link Book-E and AIM kernels at the same address, however... Modified: head/sys/powerpc/conf/GENERIC head/sys/powerpc/conf/MPC85XX Modified: head/sys/powerpc/conf/GENERIC ============================================================================== --- head/sys/powerpc/conf/GENERIC Sat Feb 1 20:46:35 2014 (r261357) +++ head/sys/powerpc/conf/GENERIC Sat Feb 1 20:56:50 2014 (r261358) @@ -133,6 +133,11 @@ device scc device uart device uart_z8530 +# FireWire support +device firewire # FireWire bus code +device sbp # SCSI over FireWire (Requires scbus and da) +device fwe # Ethernet over FireWire (non-standard!) + # PCI Ethernet NICs that use the common MII bus controller code. device miibus # MII bus support device bge # Broadcom BCM570xx Gigabit Ethernet Modified: head/sys/powerpc/conf/MPC85XX ============================================================================== --- head/sys/powerpc/conf/MPC85XX Sat Feb 1 20:46:35 2014 (r261357) +++ head/sys/powerpc/conf/MPC85XX Sat Feb 1 20:56:50 2014 (r261358) @@ -48,7 +48,9 @@ options NFSCL options NFSLOCKD options PROCFS options PSEUDOFS -options SCHED_4BSD +options SCHED_ULE +options CAPABILITIES +options CAPABILITY_MODE options SMP options SYSVMSG options SYSVSEM @@ -64,6 +66,7 @@ device cryptodev device da device ds1553 device em +device alc device ether device fxp device iic From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 22:05:39 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 62477A9C; Sat, 1 Feb 2014 22:05:39 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 4D2051206; Sat, 1 Feb 2014 22:05:39 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11M5dLS090859; Sat, 1 Feb 2014 22:05:39 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11M5dle090858; Sat, 1 Feb 2014 22:05:39 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012205.s11M5dle090858@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 22:05:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261359 - stable/10/contrib/sendmail X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 22:05:39 -0000 Author: gshapiro Date: Sat Feb 1 22:05:38 2014 New Revision: 261359 URL: http://svnweb.freebsd.org/changeset/base/261359 Log: MFC: Update link to vendor import instructions Modified: stable/10/contrib/sendmail/FREEBSD-upgrade Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/sendmail/FREEBSD-upgrade ============================================================================== --- stable/10/contrib/sendmail/FREEBSD-upgrade Sat Feb 1 20:56:50 2014 (r261358) +++ stable/10/contrib/sendmail/FREEBSD-upgrade Sat Feb 1 22:05:38 2014 (r261359) @@ -9,7 +9,7 @@ For the import of sendmail, the followin Imported using the instructions at: -http://wiki.freebsd.org/SubversionPrimer/VendorImports +http://www.freebsd.org/doc/en_US.ISO8859-1/articles/committers-guide/subversion-primer.html Then merged using: From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 22:06:02 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 8F27ABCA; Sat, 1 Feb 2014 22:06:02 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 7A6A7120B; Sat, 1 Feb 2014 22:06:02 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11M62jH090964; Sat, 1 Feb 2014 22:06:02 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11M62Wq090963; Sat, 1 Feb 2014 22:06:02 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012206.s11M62Wq090963@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 22:06:02 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261360 - stable/9/contrib/sendmail X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 22:06:02 -0000 Author: gshapiro Date: Sat Feb 1 22:06:02 2014 New Revision: 261360 URL: http://svnweb.freebsd.org/changeset/base/261360 Log: MFC: Update link to vendor import instructions Modified: stable/9/contrib/sendmail/FREEBSD-upgrade Directory Properties: stable/9/contrib/sendmail/ (props changed) Modified: stable/9/contrib/sendmail/FREEBSD-upgrade ============================================================================== --- stable/9/contrib/sendmail/FREEBSD-upgrade Sat Feb 1 22:05:38 2014 (r261359) +++ stable/9/contrib/sendmail/FREEBSD-upgrade Sat Feb 1 22:06:02 2014 (r261360) @@ -9,7 +9,7 @@ For the import of sendmail, the followin Imported using the instructions at: -http://wiki.freebsd.org/SubversionPrimer/VendorImports +http://www.freebsd.org/doc/en_US.ISO8859-1/articles/committers-guide/subversion-primer.html Then merged using: From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 22:06:24 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C8EDECFA; Sat, 1 Feb 2014 22:06:24 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id B3F35120D; Sat, 1 Feb 2014 22:06:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11M6OP0091060; Sat, 1 Feb 2014 22:06:24 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11M6O58091059; Sat, 1 Feb 2014 22:06:24 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012206.s11M6O58091059@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 22:06:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-8@freebsd.org Subject: svn commit: r261361 - stable/8/contrib/sendmail X-SVN-Group: stable-8 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 22:06:24 -0000 Author: gshapiro Date: Sat Feb 1 22:06:24 2014 New Revision: 261361 URL: http://svnweb.freebsd.org/changeset/base/261361 Log: MFC: Update link to vendor import instructions Modified: stable/8/contrib/sendmail/FREEBSD-upgrade Directory Properties: stable/8/contrib/sendmail/ (props changed) Modified: stable/8/contrib/sendmail/FREEBSD-upgrade ============================================================================== --- stable/8/contrib/sendmail/FREEBSD-upgrade Sat Feb 1 22:06:02 2014 (r261360) +++ stable/8/contrib/sendmail/FREEBSD-upgrade Sat Feb 1 22:06:24 2014 (r261361) @@ -9,7 +9,7 @@ For the import of sendmail, the followin Imported using the instructions at: -http://wiki.freebsd.org/SubversionPrimer/VendorImports +http://www.freebsd.org/doc/en_US.ISO8859-1/articles/committers-guide/subversion-primer.html Then merged using: From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 22:06:39 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id C2B30DE1; Sat, 1 Feb 2014 22:06:39 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id AE2E1120F; Sat, 1 Feb 2014 22:06:39 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11M6dOf091130; Sat, 1 Feb 2014 22:06:39 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11M6dfF091129; Sat, 1 Feb 2014 22:06:39 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012206.s11M6dfF091129@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 22:06:39 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-7@freebsd.org Subject: svn commit: r261362 - stable/7/contrib/sendmail X-SVN-Group: stable-7 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 22:06:39 -0000 Author: gshapiro Date: Sat Feb 1 22:06:39 2014 New Revision: 261362 URL: http://svnweb.freebsd.org/changeset/base/261362 Log: MFC: Update link to vendor import instructions Modified: stable/7/contrib/sendmail/FREEBSD-upgrade Directory Properties: stable/7/contrib/sendmail/ (props changed) Modified: stable/7/contrib/sendmail/FREEBSD-upgrade ============================================================================== --- stable/7/contrib/sendmail/FREEBSD-upgrade Sat Feb 1 22:06:24 2014 (r261361) +++ stable/7/contrib/sendmail/FREEBSD-upgrade Sat Feb 1 22:06:39 2014 (r261362) @@ -9,7 +9,7 @@ For the import of sendmail, the followin Imported using the instructions at: -http://wiki.freebsd.org/SubversionPrimer/VendorImports +http://www.freebsd.org/doc/en_US.ISO8859-1/articles/committers-guide/subversion-primer.html Then merged using: From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 22:27:49 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 0D2BB24B; Sat, 1 Feb 2014 22:27:49 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id E7411131C; Sat, 1 Feb 2014 22:27:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11MRmJO099785; Sat, 1 Feb 2014 22:27:48 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11MRfxe099742; Sat, 1 Feb 2014 22:27:41 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012227.s11MRfxe099742@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 22:27:41 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261363 - in stable/10/contrib/sendmail: . cf cf/cf cf/domain cf/feature cf/hack cf/m4 cf/mailer cf/ostype cf/sh contrib doc/op editmap include/libmilter include/libsmdb include/sendmai... X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 22:27:49 -0000 Author: gshapiro Date: Sat Feb 1 22:27:40 2014 New Revision: 261363 URL: http://svnweb.freebsd.org/changeset/base/261363 Log: MFC: Merge sendmail 8.14.8 Added: stable/10/contrib/sendmail/libsm/inet6_ntop.c - copied unchanged from r261194, head/contrib/sendmail/libsm/inet6_ntop.c stable/10/contrib/sendmail/libsm/t-inet6_ntop.c - copied unchanged from r261194, head/contrib/sendmail/libsm/t-inet6_ntop.c Modified: stable/10/contrib/sendmail/LICENSE stable/10/contrib/sendmail/PGPKEYS stable/10/contrib/sendmail/README stable/10/contrib/sendmail/RELEASE_NOTES stable/10/contrib/sendmail/cf/README stable/10/contrib/sendmail/cf/cf/chez.cs.mc stable/10/contrib/sendmail/cf/cf/clientproto.mc stable/10/contrib/sendmail/cf/cf/cs-hpux10.mc stable/10/contrib/sendmail/cf/cf/cs-hpux9.mc stable/10/contrib/sendmail/cf/cf/cs-osf1.mc stable/10/contrib/sendmail/cf/cf/cs-solaris2.mc stable/10/contrib/sendmail/cf/cf/cs-sunos4.1.mc stable/10/contrib/sendmail/cf/cf/cs-ultrix4.mc stable/10/contrib/sendmail/cf/cf/generic-bsd4.4.mc stable/10/contrib/sendmail/cf/cf/generic-hpux10.mc stable/10/contrib/sendmail/cf/cf/generic-hpux9.mc stable/10/contrib/sendmail/cf/cf/generic-linux.mc stable/10/contrib/sendmail/cf/cf/generic-mpeix.mc stable/10/contrib/sendmail/cf/cf/generic-nextstep3.3.mc stable/10/contrib/sendmail/cf/cf/generic-osf1.mc stable/10/contrib/sendmail/cf/cf/generic-solaris.mc stable/10/contrib/sendmail/cf/cf/generic-sunos4.1.mc stable/10/contrib/sendmail/cf/cf/generic-ultrix4.mc stable/10/contrib/sendmail/cf/cf/huginn.cs.mc stable/10/contrib/sendmail/cf/cf/knecht.mc stable/10/contrib/sendmail/cf/cf/mail.cs.mc stable/10/contrib/sendmail/cf/cf/mail.eecs.mc stable/10/contrib/sendmail/cf/cf/mailspool.cs.mc stable/10/contrib/sendmail/cf/cf/python.cs.mc stable/10/contrib/sendmail/cf/cf/s2k-osf1.mc stable/10/contrib/sendmail/cf/cf/s2k-ultrix4.mc stable/10/contrib/sendmail/cf/cf/submit.cf stable/10/contrib/sendmail/cf/cf/submit.mc stable/10/contrib/sendmail/cf/cf/tcpproto.mc stable/10/contrib/sendmail/cf/cf/ucbarpa.mc stable/10/contrib/sendmail/cf/cf/ucbvax.mc stable/10/contrib/sendmail/cf/cf/uucpproto.mc stable/10/contrib/sendmail/cf/cf/vangogh.cs.mc stable/10/contrib/sendmail/cf/domain/Berkeley.EDU.m4 stable/10/contrib/sendmail/cf/domain/CS.Berkeley.EDU.m4 stable/10/contrib/sendmail/cf/domain/EECS.Berkeley.EDU.m4 stable/10/contrib/sendmail/cf/domain/S2K.Berkeley.EDU.m4 stable/10/contrib/sendmail/cf/domain/berkeley-only.m4 stable/10/contrib/sendmail/cf/domain/generic.m4 stable/10/contrib/sendmail/cf/feature/accept_unqualified_senders.m4 stable/10/contrib/sendmail/cf/feature/accept_unresolvable_domains.m4 stable/10/contrib/sendmail/cf/feature/access_db.m4 stable/10/contrib/sendmail/cf/feature/allmasquerade.m4 stable/10/contrib/sendmail/cf/feature/always_add_domain.m4 stable/10/contrib/sendmail/cf/feature/authinfo.m4 stable/10/contrib/sendmail/cf/feature/badmx.m4 stable/10/contrib/sendmail/cf/feature/bestmx_is_local.m4 stable/10/contrib/sendmail/cf/feature/bitdomain.m4 stable/10/contrib/sendmail/cf/feature/blacklist_recipients.m4 stable/10/contrib/sendmail/cf/feature/block_bad_helo.m4 stable/10/contrib/sendmail/cf/feature/compat_check.m4 stable/10/contrib/sendmail/cf/feature/conncontrol.m4 stable/10/contrib/sendmail/cf/feature/delay_checks.m4 stable/10/contrib/sendmail/cf/feature/dnsbl.m4 stable/10/contrib/sendmail/cf/feature/domaintable.m4 stable/10/contrib/sendmail/cf/feature/enhdnsbl.m4 stable/10/contrib/sendmail/cf/feature/generics_entire_domain.m4 stable/10/contrib/sendmail/cf/feature/genericstable.m4 stable/10/contrib/sendmail/cf/feature/greet_pause.m4 stable/10/contrib/sendmail/cf/feature/ldap_routing.m4 stable/10/contrib/sendmail/cf/feature/limited_masquerade.m4 stable/10/contrib/sendmail/cf/feature/local_lmtp.m4 stable/10/contrib/sendmail/cf/feature/local_no_masquerade.m4 stable/10/contrib/sendmail/cf/feature/local_procmail.m4 stable/10/contrib/sendmail/cf/feature/lookupdotdomain.m4 stable/10/contrib/sendmail/cf/feature/loose_relay_check.m4 stable/10/contrib/sendmail/cf/feature/mailertable.m4 stable/10/contrib/sendmail/cf/feature/masquerade_entire_domain.m4 stable/10/contrib/sendmail/cf/feature/masquerade_envelope.m4 stable/10/contrib/sendmail/cf/feature/msp.m4 stable/10/contrib/sendmail/cf/feature/mtamark.m4 stable/10/contrib/sendmail/cf/feature/no_default_msa.m4 stable/10/contrib/sendmail/cf/feature/nocanonify.m4 stable/10/contrib/sendmail/cf/feature/notsticky.m4 stable/10/contrib/sendmail/cf/feature/nouucp.m4 stable/10/contrib/sendmail/cf/feature/nullclient.m4 stable/10/contrib/sendmail/cf/feature/preserve_local_plus_detail.m4 stable/10/contrib/sendmail/cf/feature/preserve_luser_host.m4 stable/10/contrib/sendmail/cf/feature/promiscuous_relay.m4 stable/10/contrib/sendmail/cf/feature/queuegroup.m4 stable/10/contrib/sendmail/cf/feature/ratecontrol.m4 stable/10/contrib/sendmail/cf/feature/redirect.m4 stable/10/contrib/sendmail/cf/feature/relay_based_on_MX.m4 stable/10/contrib/sendmail/cf/feature/relay_entire_domain.m4 stable/10/contrib/sendmail/cf/feature/relay_hosts_only.m4 stable/10/contrib/sendmail/cf/feature/relay_local_from.m4 stable/10/contrib/sendmail/cf/feature/relay_mail_from.m4 stable/10/contrib/sendmail/cf/feature/require_rdns.m4 stable/10/contrib/sendmail/cf/feature/smrsh.m4 stable/10/contrib/sendmail/cf/feature/stickyhost.m4 stable/10/contrib/sendmail/cf/feature/use_client_ptr.m4 stable/10/contrib/sendmail/cf/feature/use_ct_file.m4 stable/10/contrib/sendmail/cf/feature/use_cw_file.m4 stable/10/contrib/sendmail/cf/feature/uucpdomain.m4 stable/10/contrib/sendmail/cf/feature/virtuser_entire_domain.m4 stable/10/contrib/sendmail/cf/feature/virtusertable.m4 stable/10/contrib/sendmail/cf/hack/cssubdomain.m4 stable/10/contrib/sendmail/cf/m4/cf.m4 stable/10/contrib/sendmail/cf/m4/cfhead.m4 stable/10/contrib/sendmail/cf/m4/proto.m4 stable/10/contrib/sendmail/cf/m4/version.m4 stable/10/contrib/sendmail/cf/mailer/cyrus.m4 stable/10/contrib/sendmail/cf/mailer/cyrusv2.m4 stable/10/contrib/sendmail/cf/mailer/fax.m4 stable/10/contrib/sendmail/cf/mailer/local.m4 stable/10/contrib/sendmail/cf/mailer/mail11.m4 stable/10/contrib/sendmail/cf/mailer/phquery.m4 stable/10/contrib/sendmail/cf/mailer/pop.m4 stable/10/contrib/sendmail/cf/mailer/procmail.m4 stable/10/contrib/sendmail/cf/mailer/qpage.m4 stable/10/contrib/sendmail/cf/mailer/smtp.m4 stable/10/contrib/sendmail/cf/mailer/usenet.m4 stable/10/contrib/sendmail/cf/mailer/uucp.m4 stable/10/contrib/sendmail/cf/ostype/a-ux.m4 stable/10/contrib/sendmail/cf/ostype/aix3.m4 stable/10/contrib/sendmail/cf/ostype/aix4.m4 stable/10/contrib/sendmail/cf/ostype/aix5.m4 stable/10/contrib/sendmail/cf/ostype/altos.m4 stable/10/contrib/sendmail/cf/ostype/amdahl-uts.m4 stable/10/contrib/sendmail/cf/ostype/bsd4.3.m4 stable/10/contrib/sendmail/cf/ostype/bsd4.4.m4 stable/10/contrib/sendmail/cf/ostype/bsdi.m4 stable/10/contrib/sendmail/cf/ostype/bsdi1.0.m4 stable/10/contrib/sendmail/cf/ostype/bsdi2.0.m4 stable/10/contrib/sendmail/cf/ostype/darwin.m4 stable/10/contrib/sendmail/cf/ostype/dgux.m4 stable/10/contrib/sendmail/cf/ostype/domainos.m4 stable/10/contrib/sendmail/cf/ostype/dragonfly.m4 stable/10/contrib/sendmail/cf/ostype/dynix3.2.m4 stable/10/contrib/sendmail/cf/ostype/freebsd4.m4 stable/10/contrib/sendmail/cf/ostype/freebsd5.m4 stable/10/contrib/sendmail/cf/ostype/freebsd6.m4 stable/10/contrib/sendmail/cf/ostype/gnu.m4 stable/10/contrib/sendmail/cf/ostype/hpux10.m4 stable/10/contrib/sendmail/cf/ostype/hpux11.m4 stable/10/contrib/sendmail/cf/ostype/hpux9.m4 stable/10/contrib/sendmail/cf/ostype/irix4.m4 stable/10/contrib/sendmail/cf/ostype/irix5.m4 stable/10/contrib/sendmail/cf/ostype/irix6.m4 stable/10/contrib/sendmail/cf/ostype/isc4.1.m4 stable/10/contrib/sendmail/cf/ostype/linux.m4 stable/10/contrib/sendmail/cf/ostype/maxion.m4 stable/10/contrib/sendmail/cf/ostype/mklinux.m4 stable/10/contrib/sendmail/cf/ostype/mpeix.m4 stable/10/contrib/sendmail/cf/ostype/nextstep.m4 stable/10/contrib/sendmail/cf/ostype/openbsd.m4 stable/10/contrib/sendmail/cf/ostype/osf1.m4 stable/10/contrib/sendmail/cf/ostype/powerux.m4 stable/10/contrib/sendmail/cf/ostype/ptx2.m4 stable/10/contrib/sendmail/cf/ostype/qnx.m4 stable/10/contrib/sendmail/cf/ostype/riscos4.5.m4 stable/10/contrib/sendmail/cf/ostype/sco-uw-2.1.m4 stable/10/contrib/sendmail/cf/ostype/sco3.2.m4 stable/10/contrib/sendmail/cf/ostype/sinix.m4 stable/10/contrib/sendmail/cf/ostype/solaris11.m4 stable/10/contrib/sendmail/cf/ostype/solaris2.m4 stable/10/contrib/sendmail/cf/ostype/solaris2.ml.m4 stable/10/contrib/sendmail/cf/ostype/solaris2.pre5.m4 stable/10/contrib/sendmail/cf/ostype/solaris8.m4 stable/10/contrib/sendmail/cf/ostype/sunos3.5.m4 stable/10/contrib/sendmail/cf/ostype/sunos4.1.m4 stable/10/contrib/sendmail/cf/ostype/svr4.m4 stable/10/contrib/sendmail/cf/ostype/ultrix4.m4 stable/10/contrib/sendmail/cf/ostype/unicos.m4 stable/10/contrib/sendmail/cf/ostype/unicosmk.m4 stable/10/contrib/sendmail/cf/ostype/unicosmp.m4 stable/10/contrib/sendmail/cf/ostype/unixware7.m4 stable/10/contrib/sendmail/cf/ostype/unknown.m4 stable/10/contrib/sendmail/cf/ostype/uxpds.m4 stable/10/contrib/sendmail/cf/sendmail.schema stable/10/contrib/sendmail/cf/sh/makeinfo.sh stable/10/contrib/sendmail/contrib/dnsblaccess.m4 stable/10/contrib/sendmail/contrib/link_hash.sh stable/10/contrib/sendmail/contrib/qtool.8 stable/10/contrib/sendmail/contrib/qtool.pl stable/10/contrib/sendmail/doc/op/op.me stable/10/contrib/sendmail/editmap/editmap.8 stable/10/contrib/sendmail/editmap/editmap.c stable/10/contrib/sendmail/include/libmilter/mfapi.h stable/10/contrib/sendmail/include/libmilter/mfdef.h stable/10/contrib/sendmail/include/libmilter/milter.h stable/10/contrib/sendmail/include/libsmdb/smdb.h stable/10/contrib/sendmail/include/sendmail/mailstats.h stable/10/contrib/sendmail/include/sendmail/pathnames.h stable/10/contrib/sendmail/include/sendmail/sendmail.h stable/10/contrib/sendmail/include/sm/assert.h stable/10/contrib/sendmail/include/sm/bdb.h stable/10/contrib/sendmail/include/sm/bitops.h stable/10/contrib/sendmail/include/sm/cdefs.h stable/10/contrib/sendmail/include/sm/cf.h stable/10/contrib/sendmail/include/sm/clock.h stable/10/contrib/sendmail/include/sm/conf.h stable/10/contrib/sendmail/include/sm/config.h stable/10/contrib/sendmail/include/sm/debug.h stable/10/contrib/sendmail/include/sm/errstring.h stable/10/contrib/sendmail/include/sm/exc.h stable/10/contrib/sendmail/include/sm/fdset.h stable/10/contrib/sendmail/include/sm/gen.h stable/10/contrib/sendmail/include/sm/heap.h stable/10/contrib/sendmail/include/sm/io.h stable/10/contrib/sendmail/include/sm/ldap.h stable/10/contrib/sendmail/include/sm/limits.h stable/10/contrib/sendmail/include/sm/mbdb.h stable/10/contrib/sendmail/include/sm/misc.h stable/10/contrib/sendmail/include/sm/os/sm_os_aix.h stable/10/contrib/sendmail/include/sm/os/sm_os_dragonfly.h stable/10/contrib/sendmail/include/sm/os/sm_os_freebsd.h stable/10/contrib/sendmail/include/sm/os/sm_os_hp.h stable/10/contrib/sendmail/include/sm/os/sm_os_irix.h stable/10/contrib/sendmail/include/sm/os/sm_os_linux.h stable/10/contrib/sendmail/include/sm/os/sm_os_mpeix.h stable/10/contrib/sendmail/include/sm/os/sm_os_next.h stable/10/contrib/sendmail/include/sm/os/sm_os_openbsd.h stable/10/contrib/sendmail/include/sm/os/sm_os_openunix.h stable/10/contrib/sendmail/include/sm/os/sm_os_osf1.h stable/10/contrib/sendmail/include/sm/os/sm_os_qnx.h stable/10/contrib/sendmail/include/sm/os/sm_os_sunos.h stable/10/contrib/sendmail/include/sm/os/sm_os_ultrix.h stable/10/contrib/sendmail/include/sm/os/sm_os_unicos.h stable/10/contrib/sendmail/include/sm/os/sm_os_unicosmk.h stable/10/contrib/sendmail/include/sm/os/sm_os_unicosmp.h stable/10/contrib/sendmail/include/sm/os/sm_os_unixware.h stable/10/contrib/sendmail/include/sm/path.h stable/10/contrib/sendmail/include/sm/rpool.h stable/10/contrib/sendmail/include/sm/sem.h stable/10/contrib/sendmail/include/sm/sendmail.h stable/10/contrib/sendmail/include/sm/setjmp.h stable/10/contrib/sendmail/include/sm/shm.h stable/10/contrib/sendmail/include/sm/signal.h stable/10/contrib/sendmail/include/sm/string.h stable/10/contrib/sendmail/include/sm/sysexits.h stable/10/contrib/sendmail/include/sm/test.h stable/10/contrib/sendmail/include/sm/time.h stable/10/contrib/sendmail/include/sm/types.h stable/10/contrib/sendmail/include/sm/varargs.h stable/10/contrib/sendmail/include/sm/xtrap.h stable/10/contrib/sendmail/libmilter/Makefile.m4 stable/10/contrib/sendmail/libmilter/comm.c stable/10/contrib/sendmail/libmilter/docs/api.html stable/10/contrib/sendmail/libmilter/docs/design.html stable/10/contrib/sendmail/libmilter/docs/index.html stable/10/contrib/sendmail/libmilter/docs/installation.html stable/10/contrib/sendmail/libmilter/docs/other.html stable/10/contrib/sendmail/libmilter/docs/overview.html stable/10/contrib/sendmail/libmilter/docs/sample.html stable/10/contrib/sendmail/libmilter/docs/smfi_addheader.html stable/10/contrib/sendmail/libmilter/docs/smfi_addrcpt.html stable/10/contrib/sendmail/libmilter/docs/smfi_addrcpt_par.html stable/10/contrib/sendmail/libmilter/docs/smfi_chgfrom.html stable/10/contrib/sendmail/libmilter/docs/smfi_chgheader.html stable/10/contrib/sendmail/libmilter/docs/smfi_delrcpt.html stable/10/contrib/sendmail/libmilter/docs/smfi_getpriv.html stable/10/contrib/sendmail/libmilter/docs/smfi_getsymval.html stable/10/contrib/sendmail/libmilter/docs/smfi_insheader.html stable/10/contrib/sendmail/libmilter/docs/smfi_main.html stable/10/contrib/sendmail/libmilter/docs/smfi_opensocket.html stable/10/contrib/sendmail/libmilter/docs/smfi_progress.html stable/10/contrib/sendmail/libmilter/docs/smfi_quarantine.html stable/10/contrib/sendmail/libmilter/docs/smfi_register.html stable/10/contrib/sendmail/libmilter/docs/smfi_replacebody.html stable/10/contrib/sendmail/libmilter/docs/smfi_setbacklog.html stable/10/contrib/sendmail/libmilter/docs/smfi_setconn.html stable/10/contrib/sendmail/libmilter/docs/smfi_setdbg.html stable/10/contrib/sendmail/libmilter/docs/smfi_setmlreply.html stable/10/contrib/sendmail/libmilter/docs/smfi_setpriv.html stable/10/contrib/sendmail/libmilter/docs/smfi_setreply.html stable/10/contrib/sendmail/libmilter/docs/smfi_setsymlist.html stable/10/contrib/sendmail/libmilter/docs/smfi_settimeout.html stable/10/contrib/sendmail/libmilter/docs/smfi_stop.html stable/10/contrib/sendmail/libmilter/docs/smfi_version.html stable/10/contrib/sendmail/libmilter/docs/xxfi_abort.html stable/10/contrib/sendmail/libmilter/docs/xxfi_body.html stable/10/contrib/sendmail/libmilter/docs/xxfi_close.html stable/10/contrib/sendmail/libmilter/docs/xxfi_connect.html stable/10/contrib/sendmail/libmilter/docs/xxfi_data.html stable/10/contrib/sendmail/libmilter/docs/xxfi_envfrom.html stable/10/contrib/sendmail/libmilter/docs/xxfi_envrcpt.html stable/10/contrib/sendmail/libmilter/docs/xxfi_eoh.html stable/10/contrib/sendmail/libmilter/docs/xxfi_eom.html stable/10/contrib/sendmail/libmilter/docs/xxfi_header.html stable/10/contrib/sendmail/libmilter/docs/xxfi_helo.html stable/10/contrib/sendmail/libmilter/docs/xxfi_negotiate.html stable/10/contrib/sendmail/libmilter/docs/xxfi_unknown.html stable/10/contrib/sendmail/libmilter/engine.c stable/10/contrib/sendmail/libmilter/example.c stable/10/contrib/sendmail/libmilter/handler.c stable/10/contrib/sendmail/libmilter/libmilter.h stable/10/contrib/sendmail/libmilter/listener.c stable/10/contrib/sendmail/libmilter/main.c stable/10/contrib/sendmail/libmilter/monitor.c stable/10/contrib/sendmail/libmilter/signal.c stable/10/contrib/sendmail/libmilter/sm_gethost.c stable/10/contrib/sendmail/libmilter/smfi.c stable/10/contrib/sendmail/libmilter/worker.c stable/10/contrib/sendmail/libsm/Makefile.m4 stable/10/contrib/sendmail/libsm/README stable/10/contrib/sendmail/libsm/assert.c stable/10/contrib/sendmail/libsm/b-strcmp.c stable/10/contrib/sendmail/libsm/b-strl.c stable/10/contrib/sendmail/libsm/cf.c stable/10/contrib/sendmail/libsm/clock.c stable/10/contrib/sendmail/libsm/clrerr.c stable/10/contrib/sendmail/libsm/config.c stable/10/contrib/sendmail/libsm/debug.c stable/10/contrib/sendmail/libsm/errstring.c stable/10/contrib/sendmail/libsm/exc.c stable/10/contrib/sendmail/libsm/fclose.c stable/10/contrib/sendmail/libsm/feof.c stable/10/contrib/sendmail/libsm/ferror.c stable/10/contrib/sendmail/libsm/fflush.c stable/10/contrib/sendmail/libsm/fget.c stable/10/contrib/sendmail/libsm/findfp.c stable/10/contrib/sendmail/libsm/flags.c stable/10/contrib/sendmail/libsm/fopen.c stable/10/contrib/sendmail/libsm/fpos.c stable/10/contrib/sendmail/libsm/fprintf.c stable/10/contrib/sendmail/libsm/fpurge.c stable/10/contrib/sendmail/libsm/fput.c stable/10/contrib/sendmail/libsm/fread.c stable/10/contrib/sendmail/libsm/fscanf.c stable/10/contrib/sendmail/libsm/fseek.c stable/10/contrib/sendmail/libsm/fvwrite.c stable/10/contrib/sendmail/libsm/fvwrite.h stable/10/contrib/sendmail/libsm/fwalk.c stable/10/contrib/sendmail/libsm/fwrite.c stable/10/contrib/sendmail/libsm/get.c stable/10/contrib/sendmail/libsm/glue.h stable/10/contrib/sendmail/libsm/heap.c stable/10/contrib/sendmail/libsm/ldap.c stable/10/contrib/sendmail/libsm/local.h stable/10/contrib/sendmail/libsm/makebuf.c stable/10/contrib/sendmail/libsm/match.c stable/10/contrib/sendmail/libsm/mbdb.c stable/10/contrib/sendmail/libsm/memstat.c stable/10/contrib/sendmail/libsm/mpeix.c stable/10/contrib/sendmail/libsm/niprop.c stable/10/contrib/sendmail/libsm/path.c stable/10/contrib/sendmail/libsm/put.c stable/10/contrib/sendmail/libsm/refill.c stable/10/contrib/sendmail/libsm/rewind.c stable/10/contrib/sendmail/libsm/rpool.c stable/10/contrib/sendmail/libsm/sem.c stable/10/contrib/sendmail/libsm/setvbuf.c stable/10/contrib/sendmail/libsm/shm.c stable/10/contrib/sendmail/libsm/signal.c stable/10/contrib/sendmail/libsm/smstdio.c stable/10/contrib/sendmail/libsm/snprintf.c stable/10/contrib/sendmail/libsm/sscanf.c stable/10/contrib/sendmail/libsm/stdio.c stable/10/contrib/sendmail/libsm/strcasecmp.c stable/10/contrib/sendmail/libsm/strdup.c stable/10/contrib/sendmail/libsm/strerror.c stable/10/contrib/sendmail/libsm/strexit.c stable/10/contrib/sendmail/libsm/string.c stable/10/contrib/sendmail/libsm/stringf.c stable/10/contrib/sendmail/libsm/strio.c stable/10/contrib/sendmail/libsm/strl.c stable/10/contrib/sendmail/libsm/strrevcmp.c stable/10/contrib/sendmail/libsm/strto.c stable/10/contrib/sendmail/libsm/syslogio.c stable/10/contrib/sendmail/libsm/t-cf.c stable/10/contrib/sendmail/libsm/t-event.c stable/10/contrib/sendmail/libsm/t-exc.c stable/10/contrib/sendmail/libsm/t-fget.c stable/10/contrib/sendmail/libsm/t-float.c stable/10/contrib/sendmail/libsm/t-fopen.c stable/10/contrib/sendmail/libsm/t-heap.c stable/10/contrib/sendmail/libsm/t-match.c stable/10/contrib/sendmail/libsm/t-memstat.c stable/10/contrib/sendmail/libsm/t-path.c stable/10/contrib/sendmail/libsm/t-qic.c stable/10/contrib/sendmail/libsm/t-rpool.c stable/10/contrib/sendmail/libsm/t-scanf.c stable/10/contrib/sendmail/libsm/t-sem.c stable/10/contrib/sendmail/libsm/t-shm.c stable/10/contrib/sendmail/libsm/t-smstdio.c stable/10/contrib/sendmail/libsm/t-string.c stable/10/contrib/sendmail/libsm/t-strio.c stable/10/contrib/sendmail/libsm/t-strl.c stable/10/contrib/sendmail/libsm/t-strrevcmp.c stable/10/contrib/sendmail/libsm/t-types.c stable/10/contrib/sendmail/libsm/test.c stable/10/contrib/sendmail/libsm/ungetc.c stable/10/contrib/sendmail/libsm/util.c stable/10/contrib/sendmail/libsm/vasprintf.c stable/10/contrib/sendmail/libsm/vfprintf.c stable/10/contrib/sendmail/libsm/vfscanf.c stable/10/contrib/sendmail/libsm/vprintf.c stable/10/contrib/sendmail/libsm/vsnprintf.c stable/10/contrib/sendmail/libsm/wbuf.c stable/10/contrib/sendmail/libsm/wsetup.c stable/10/contrib/sendmail/libsm/xtrap.c stable/10/contrib/sendmail/libsmdb/smdb.c stable/10/contrib/sendmail/libsmdb/smdb1.c stable/10/contrib/sendmail/libsmdb/smdb2.c stable/10/contrib/sendmail/libsmdb/smndbm.c stable/10/contrib/sendmail/libsmutil/cf.c stable/10/contrib/sendmail/libsmutil/debug.c stable/10/contrib/sendmail/libsmutil/err.c stable/10/contrib/sendmail/libsmutil/lockfile.c stable/10/contrib/sendmail/libsmutil/safefile.c stable/10/contrib/sendmail/libsmutil/snprintf.c stable/10/contrib/sendmail/mail.local/mail.local.8 stable/10/contrib/sendmail/mail.local/mail.local.c stable/10/contrib/sendmail/mailstats/mailstats.8 stable/10/contrib/sendmail/mailstats/mailstats.c stable/10/contrib/sendmail/makemap/makemap.8 stable/10/contrib/sendmail/makemap/makemap.c stable/10/contrib/sendmail/praliases/praliases.8 stable/10/contrib/sendmail/praliases/praliases.c stable/10/contrib/sendmail/rmail/rmail.8 stable/10/contrib/sendmail/rmail/rmail.c stable/10/contrib/sendmail/smrsh/smrsh.8 stable/10/contrib/sendmail/smrsh/smrsh.c stable/10/contrib/sendmail/src/Makefile.m4 stable/10/contrib/sendmail/src/README stable/10/contrib/sendmail/src/SECURITY stable/10/contrib/sendmail/src/TRACEFLAGS stable/10/contrib/sendmail/src/TUNING stable/10/contrib/sendmail/src/alias.c stable/10/contrib/sendmail/src/aliases.5 stable/10/contrib/sendmail/src/arpadate.c stable/10/contrib/sendmail/src/bf.c stable/10/contrib/sendmail/src/bf.h stable/10/contrib/sendmail/src/collect.c stable/10/contrib/sendmail/src/conf.c stable/10/contrib/sendmail/src/conf.h stable/10/contrib/sendmail/src/control.c stable/10/contrib/sendmail/src/convtime.c stable/10/contrib/sendmail/src/daemon.c stable/10/contrib/sendmail/src/daemon.h stable/10/contrib/sendmail/src/deliver.c stable/10/contrib/sendmail/src/domain.c stable/10/contrib/sendmail/src/envelope.c stable/10/contrib/sendmail/src/err.c stable/10/contrib/sendmail/src/headers.c stable/10/contrib/sendmail/src/helpfile stable/10/contrib/sendmail/src/macro.c stable/10/contrib/sendmail/src/mailq.1 stable/10/contrib/sendmail/src/main.c stable/10/contrib/sendmail/src/map.c stable/10/contrib/sendmail/src/map.h stable/10/contrib/sendmail/src/mci.c stable/10/contrib/sendmail/src/milter.c stable/10/contrib/sendmail/src/mime.c stable/10/contrib/sendmail/src/newaliases.1 stable/10/contrib/sendmail/src/parseaddr.c stable/10/contrib/sendmail/src/queue.c stable/10/contrib/sendmail/src/ratectrl.c stable/10/contrib/sendmail/src/readcf.c stable/10/contrib/sendmail/src/recipient.c stable/10/contrib/sendmail/src/sasl.c stable/10/contrib/sendmail/src/savemail.c stable/10/contrib/sendmail/src/sendmail.8 stable/10/contrib/sendmail/src/sendmail.h stable/10/contrib/sendmail/src/sfsasl.c stable/10/contrib/sendmail/src/sfsasl.h stable/10/contrib/sendmail/src/shmticklib.c stable/10/contrib/sendmail/src/sm_resolve.c stable/10/contrib/sendmail/src/sm_resolve.h stable/10/contrib/sendmail/src/srvrsmtp.c stable/10/contrib/sendmail/src/stab.c stable/10/contrib/sendmail/src/stats.c stable/10/contrib/sendmail/src/statusd_shm.h stable/10/contrib/sendmail/src/sysexits.c stable/10/contrib/sendmail/src/timers.c stable/10/contrib/sendmail/src/timers.h stable/10/contrib/sendmail/src/tls.c stable/10/contrib/sendmail/src/trace.c stable/10/contrib/sendmail/src/udb.c stable/10/contrib/sendmail/src/usersmtp.c stable/10/contrib/sendmail/src/util.c stable/10/contrib/sendmail/src/version.c stable/10/contrib/sendmail/test/README stable/10/contrib/sendmail/test/t_dropgid.c stable/10/contrib/sendmail/test/t_exclopen.c stable/10/contrib/sendmail/test/t_pathconf.c stable/10/contrib/sendmail/test/t_seteuid.c stable/10/contrib/sendmail/test/t_setgid.c stable/10/contrib/sendmail/test/t_setreuid.c stable/10/contrib/sendmail/test/t_setuid.c stable/10/contrib/sendmail/test/t_snprintf.c stable/10/contrib/sendmail/vacation/vacation.1 stable/10/contrib/sendmail/vacation/vacation.c Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/sendmail/LICENSE ============================================================================== --- stable/10/contrib/sendmail/LICENSE Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/LICENSE Sat Feb 1 22:27:40 2014 (r261363) @@ -1,9 +1,9 @@ SENDMAIL LICENSE -The following license terms and conditions apply, unless a redistribution -agreement or other license is obtained from Sendmail, Inc., 6475 Christie -Ave, Third Floor, Emeryville, CA 94608, USA, or by electronic mail at -license@sendmail.com. +The following license terms and conditions apply, unless a redistribution +agreement or other license is obtained from Proofpoint, Inc., 892 +Ross Street, Sunnyvale, CA, 94089, USA, or by electronic mail at +sendmail-license@proofpoint.com. License Terms: @@ -35,12 +35,12 @@ each of the following conditions is met: forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: - "Copyright (c) 1998-2012 Sendmail, Inc. All rights reserved." + "Copyright (c) 1998-2013 Proofpoint, Inc. All rights reserved." -4. Neither the name of Sendmail, Inc. nor the University of California nor +4. Neither the name of Proofpoint, Inc. nor the University of California nor names of their contributors may be used to endorse or promote products derived from this software without specific prior written - permission. The name "sendmail" is a trademark of Sendmail, Inc. + permission. The name "sendmail" is a trademark of Proofpoint, Inc. 5. All redistributions must comply with the conditions imposed by the University of California on certain embedded code, which copyright @@ -78,4 +78,4 @@ each of the following conditions is met: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. -$Revision: 8.18 $, Last updated $Date: 2012/05/15 21:49:03 $, Document 139848.1 +$Revision: 8.22 $, Last updated $Date: 2013/11/23 04:37:36 $, Document 139848.1 Modified: stable/10/contrib/sendmail/PGPKEYS ============================================================================== --- stable/10/contrib/sendmail/PGPKEYS Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/PGPKEYS Sat Feb 1 22:27:40 2014 (r261363) @@ -142,6 +142,184 @@ gpExpdV7qPrw9k01j5rod5PjZlG8zV0= -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use +pub 2048 E2763A73 2014-01-02 ------- RSA Sign & Encrypt +fingerprint: 49F6 A8BE 8473 3949 5191 6F3B 61DE 11EC E276 3A73 +uid Sendmail Signing Key/2014 + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1 + +mQENBFLGB58BCADFOlIYbhlAZ1URaoyfEHLgrm/bHeZufZO3jp2eeuDIkt4Z8csa +eLkwomo/UtmUNXkn5rlUacRjyuhrDgVyuhYVeqq+tVbGccrjq4TM+5dkDTtQvLE5 +sEF3pbNYiPNJwPnqMfGTVmSouR9gGJGgttPubFDp/2jTpuFYZbcDSo+hoI9m5RAH +aWe+MhFC0r7RZTv5pY1CG3GSODaoz2XIQ/dDJ4WKZFeEvDPQnpLY4t0cb0hVcxYO +XVZZs1YmS2sEJirwJ+rpxivX4eyVKSO9Vjidh6cvmg2UdKfNoXXd+G9r0DR5FSo7 +hQHlOCrLFQQ5YJ3thGNl/fw7wVXVs34Nj7QfABEBAAG0MVNlbmRtYWlsIFNpZ25p +bmcgS2V5LzIwMTQgPHNlbmRtYWlsQFNlbmRtYWlsLk9SRz6JATgEEwECACIFAlLG +B58CGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEGHeEezidjpzcRgIAJUZ +4J6yvykcpgrIS8ZjDz1ab2sXtBx0ZjI5TxxnIwg9RQb5YkEk2/9tPo0ZwNUTDwz6 +eVENR++Bv3VXs32RnRiFNy1Mm2hhULh4ifgqT6Sy7zRk/kwiKuj6xkjAGZV71QmD +ukFIpVaWAQwiFkDgqM3LbxZ1sisbvvA8M/zJq66uGg09Lu9CKcwjKDfy+UW1E8Ub +SRzStTRrpvCH400q/Pwv3mOA43+H6Un4fZfCOcZeo22rSgT6D/FEY4LMdNnMLYuU +zPkpx7cKvQa/AcMdjoGu38g364JxlDjxjE6M+XBym8Tx6j4res7o0W8TGW5g+rEv +8X9i7uxdnEfYBlNAElGJARwEEAECAAYFAlLGCCIACgkQPWiyXVIHytM4QggAtF+W +cXu8pJi3+OAoPmj+etgIuLhJ2GOp8qNK8yvwTEwiNwtenjennlW3ETHiCbtfQ0/T +Z9rq5elhANsfp8LsXGoJ4ic6KJlDEhCrKa76jwEeECI74E60TpG0z64pHMmUhk7l +eAUckCOvW7iHIBJVA7ZM8oII04ipPz6qJfJrUWkJbfZh8VV5DRp7zKAFT+URgSUc +bdAbLjyC7AohynNVxir90UoT+wo06GPMDpeA5+fS0VZxKAwKv2P0mRZAK63yzEJz ++VK3GCHLPCWJvHoqx4KSutk2mIpZ406T/BJEphkGN0BHHiUmIr9qfX/87klA4i9K +dHvzFr6qFBxD78XfuIkBHAQQAQIABgUCUsYIMAAKCRCOWun7zu70Ox9XB/9IP99U +LScSFiDgoZQr3eMztpc2NLIS2bGO1iX7L+9VInPCob7Se53MpaFrDWNna53Xehwf +NbaqsCQrG+OIMMwhRc0x3QCoXQUchA/JyAUIojfOyoFUZvlyZStRGOp2TBRrJnmb +l3iWz3pStqqtvqag2d3YxowqGqUvlRzAXTFmgjcnfMcJrxb9f3n6Nf84QpxLHxB2 +MgOgxUCHXMtJ4WxFHAoINize+P/P99U9mpyn4ewTnSaFzcmemqoVT9yZUDYUYrap +Bm4Xp0Y92IzoNpJgKBZLwXihisuI4alY/hBopo5L89vms2BwesQuh/4Tr6SELwFx +zX63E++tz1TqHleWiQEcBBABAgAGBQJSxghsAAoJEDmkx32peISwXiIH/3suKuiQ ++KqQT10UdBoNg6m0XinG4IG2MghRRcdg2Q8ncCfMFJPsKQcPdjiUuuUIYtD7CE+O +SwQ9N+6vZlsk3Zq2I8rPEwrUTmZ1gDcMK93MafNS32Xt7FmCY6wpMCkpmCLd9sjb +7rj3uZdv/aI6Is76z6dKTfxJWBrbsUQNncASn5JyCXrYj9eeGP8gHX2KCkyPBF4u +kHFPgdzYevCfZeP/+f/cdRwF6bAVaHiEZ2S/Vg6r3Z89vgd+wNKnNsljEiacYWuS +zxouEn0eWQj9kC3bXJgqXH+HLrEY8NAQ5EQWjd8bzIhzCTA9MtL+N1b0Ep36gNiw +YFB5b/b7KlbEPsSJARwEEAECAAYFAlLGCG8ACgkQYE378oVBCr4XDAf/auf1ljzq +w2khe1L/1ANvtnugMP3sVJEPU2nDUnCK2+c0G5INnWc+c7DEFsaLHgcs2eN/w80a +adInDn9lFw7DtcvZr3xL8q+b6j4i4jucjT5WVfYHbvc0xcKfpEjRge4oV3XR73SU +ztdTWZZAlds4Xvh9pojjM90fBu5uDqfpRM3/vNTQ9EWvjcCGKusWRTwgdfF94cHN +CeSe8PCo7sil6MtBBoujmLldCKZaLC08NLPX3yTGzNmuLyNZj9WgwPoK++XTxJly +0j9EJsO28ZxmNCxsZyGA+1D1NuRurQ5FXIUHUfz6taP8FHSDt95cOiirmCMOAjT4 +UFtGAZFlbhzxroicBBABAgAGBQJSxghyAAoJEBKJbpunfyQpyFwD/1fp8qgb6zvn +dIoTUoVWahI41Clt65cA2d1Ib1IbJJ4ms9cxNbFMTvbpPQ4AXOz1t7x2uS3YDmq5 +IxdWLr6YPSMkGmtpF2CD1HwSLcUwtKcIFrb8a0EN8Z+sRKu7yYg1vMxc7LmmOBUX +x+j9fm/1OFGIHYnUEb9GeKFf91cK0VAIiJwEEAECAAYFAlLGCHUACgkQ2Krwyvaz +BylxvAP+JuZQFPnk6l4SKHR/3ZWz56fOqZ6Qv8cgUCFY5AY9OdSE7aU2zVjZTjd1 +dJzVD7xc/9h8OW4HakfwcNnfAqdQ4eNdox5+uydXwU0CXJqU8QxGPaCSRkB1Thb5 +aMik5S01lzra4s6dF0iMC15I5v0PAznykJO9Sq4qhMLUCYTxFiqInAQQAQIABgUC +UsYIeAAKCRCXQwEYcJO4QeDXBAC2hVO1j2dyQfkHr8eLAg/P+2qwZ1ZaG4jxItol +vF91lfGNCaG3RWB9iPRIkz5B+lSoh4mSPGzJ3cFDgB53rRMpFUa0qhiUpVaNuPMY +BSrkxYb00amJcFoXX+yE8soeu6BZ1cazg8GEkbjFbboqJMts2M39dD3c4ikbU4Op +v9ag1YicBBABAgAGBQJSxgh7AAoJEB57s8ivlZYl1w0D/1AySnzhz5PKQo4Wh9QX +qX+yMVBT3rgVO6EgR8ShsyMhZX8GwEEGPueDAh8MLGPqQZbjXq81QMeVk6TSUCQx +XbhHxyGJJTVDxxJxFJZ7f8y05PjppTA6TL2aKYsZLkWUPEq5vKocE2VAmYldwvRS +Ez4oNLWQD5dw05DPzVsJ2/49iJwEEAECAAYFAlLGCH4ACgkQcKAkTR75klFOVwP/ +fxmc8/ckreAjz7C3oarAHlWgAUHrJAAtG1MEgXN6FtzGZyzj7jsC4HI8A5nfwIWx +A67jktU+6OpySrvIv3gRF1OAV168Q9IE8KszvnJgl6Gknf/KuiwpthWHpKztn9lF +vealu7JKqI+3D5m33SqcWUg8SThfnGBoZOZGOnGrw4aInAQQAQIABgUCUsYIggAK +CRDI1e0plfYXcf9oA/44QISEfFkqab+NIIgKW0SHqJDmI5QvVkcCO1Ct+/TkhGVO +I68XKLMaNbzerl+BF26gU2IYCs0axa9hlkl8IJLokZhEPSRPDuSP2PG3GjaFsgnE +5OK6aaVvjrEwaXe8v6rOYLmavnhZtOKg3H8pOl74KhFy1i/ZwM9oVfD4sfLhxIic +BBABAgAGBQJSxgiFAAoJECGD4bE5bweJnYsEAJUX07KH5tI+OfmhQ+WCFuU2as+r +I39oH1BB0W44fEhTj/yJFVqGSt4e3OBlP+SYqIM4DxPttxNtfQ9448rbzWLCdL0c +KGOM2y9NT/LoDi1JQ/IVLYvuIyNnPViAF5JQ96NrmJH+3SaC6goK6HY6D2Oh3iyO +1VGIhjOWyJr2+5ZjiJwEEAECAAYFAlLGCIwACgkQiWliuGeMCgNvkwQAjrrAjFyh +pMepbLnRlxi2gcLqdmLcaub6AaRzCGDaYQxNFtBd+vLt0CtgY7sILahcMX6hLT53 +z4zCHoM93DM3jBoJehC0lH6/qd3ZAcW9vcSxk5ws97K6sbMXWIfqDgTUXaArOvKG +GHE3vsgaLvAQ8nz0QaVkwgSIQfz+vBDjlM6InAQQAQIABgUCUsYIjwAKCRA4IttH +zDdPLdPdBACoapJIpeNLyL9szztPzznIIxNbeuFJVfJRAE+pZ08y5YKVtGWArUcb +GBXlZC5FrVTqV3ptIa72ALApIZ/M4Awnk3C3XyjMioKemv7I+cOj5DqRgkR/hsAF +7YSAg718twgv8W2Ssy8i2vOlAoazxzN9bhVl5cSny5aeUnpLwK0WMYicBBABAgAG +BQJSxgiSAAoJEJwcveLjXFY1DnoD/iFZ3zhzwIyWUl17pESa7H79tbcpmRyelH5M +vH51sEBl27yRRKrsx4oayaumUT7W4JVoQTEYH54unN6fSBqKK9VyxzlA+v8PJjTG +43MhtMG5lc5B1fKXFer1SpxuoR5h3Qdi4KSz3yh8K8g5KKtciPBx5kEXSTm6Nycu +wkrCRYZLiJwEEAECAAYFAlLGCJcACgkQb1KT2KObplUY2QP/T2Zt5U2cl0usnYck +wmMF3ZAzmcfhsxMkVgxxL9AkVJh9dHhLSYFWN6qhlkZwiW6UhhKoINfEpb8gOcBz +rdb4u8yrWqIS726GqE/gnjYUf5CX22mOPWry8CPuWesRVpr832TzS5wxlBQzRMSS +MVn39IPfIQnC6UQ3tPChruwwZh2InAQQAQIABgUCUsYImgAKCRDvWJZk1DLhnUOZ +A/4qp/HD/+V1zpewexP4wL+bLA9Y6X+y2UWAh7eZCBQvXOhVAYcHxpmWgEfHuS+c +iHYqCc7hz+1AiKV8AfVk6RX0k9Oli/IMbM3ijv3uIl+5JF765oXUAB3RWg6V+MlJ +VhOVkBHXmBuhFnfVPeR5wNPpQ58d9LwsZtU11/Y76xzOUYicBBABAgAGBQJSxgie +AAoJEMGcHSUS00YdL7MEAK/BtyOdoFA/8SBA+8EOG8nd5NSlGNZUBnTlpWqdphkR +SLRrb1gLGr41ND2yvg/ElTti7m1D7+7VUnwCXM5wUO/RZuZx2uDYRCdDXj5WBhcg +3wsHO3IPGGTbCukp9fLcthBQ46PDewlUVo6gPWhjWG/oC04XYeB3+f1f1zGAai+s +iJwEEAECAAYFAlLGCKMACgkQwCnKQBb0zOm0CAQAhwRycBvn1kZB8cjBVw0a74Xu +rjQrMVqmKM0LW/UzoVscB0W2KxZnvCLcw8N87CnnoSAO3MSnb/vPPhtnQxVe0IBA +4yoe9acWJvmtIjw4JFDKioVPtEy+pcg5EDlyqNHj0He/Cmbirxbvy2XiGB/Y/lxu +t1kad5ZYY/F5+X4hbyOIRgQQEQIABgUCUsYIsQAKCRAY9QOAJMJ4ArQbAJ414QQw +60cTU3tVbBTT/l/sRysTXACg1ggZJszRL0P8Yy6WOryQ+r5Fg8yInAQQAQIABgUC +UsYItwAKCRB8S2dtoA4VY3VvA/4i7bKzYElfVdTIj0IgHfd1zneeDjJoJP5tmf7F +ElWIkENFVkKQ+tUBO2d/qMK8h+aj3brDcve5A1LUIsD5leE+igke8SjVF9/fwN4U +8Mpqrvaw+CX7zGMnt6J075OD7mfU7hZkSpDhmOEMaEzaviei2rovBgaNv7tOlgrk +J5nCo4icBBABAgAGBQJSxgi8AAoJENbgof5PvirdqiMEAKp3kzOjTetlDWAqK0BY +u1kSTCLzO8jFIq620dT0BqorZ5nvxwKovog/FgrZ0LlywsjlwOGCAFo3aW7WTEyt +7AwlQvUScAbPuZZcyZxKwQ9h2O6C2K2RPVIIHQusLRVcr+oGgqMoNjpSxOOxfJuj +hT6fXHK5SayZSQEiZyeKme12iEYEEBECAAYFAlLGCMEACgkQIfnFvPdqm/UiSwCf +d7Y5AR2m6vK5drJEaqbnv2tmXzcAoMhOg7eUPnYXr0Uwpo/61oHAPUTwiJwEEAEC +AAYFAlLGCMcACgkQvdqP1j/qff1p6QP/TkEC+SJr4YUPy/0cLsSr9j0uPfvke+Qx +U0RWynv4BMU05TKaBeZiVG25iFsGERW0drxiisPkcgMTq98wE7Q23Qtk+Fg8amDn +6c0qEj0S4xd/DfHPhcznHjjkhiTftSmeMGHDMF8M5+ZBSlJyM6M1dtTlceU88ZYu +Vv89Iz9nnmaJARwEEAECAAYFAlLGCMsACgkQvSdtLm/PqIVOHwgAvKy116ykGuvC +LlxCVx+RfIjhaXa5OTtZhLc7YkXgaNr4UmcvNZtGwQLUEjDO4fVCF/7bSrryZ6Fr +PZBNTKQRwbqH8UksQ+6hIbTBb5ZGcpKQPdIqEWjRjCoDah2EI1ln/JI8WY5NoA+V +iuBd07msr49qevHgGEex5dX7NKOu6nuvefaasVDODNsiMp2QZmIlP7XJw7VKkiEx +ov93DGImxD4o8r2Etzo1Lt5/soNzw26etSRFhoGHRdW2mlS5QFjebV+PNAxwvRrI +a+5CjoA/vFfwxV+RZlvCLhzuEsBIzw6yenfNEd37bzqJq/7Jp7kQCe463o7ujG00 +k+ObGvq/YokBNwQTAQIAIQIbAwIeAQIXgAUCUsYZQgYLCQgHAwIGFQgCCQoLAxYC +AQAKCRBh3hHs4nY6c/AjB/4rt17ezRHDxuDuS7+waPC9N6eXAQCbwdvkYd/v0bWe +5jHgknMHR9OyGU9JKA4boJCtJNUvceAmzBtynqxy4hR6rmCwCmFW3AIK31iu3frz +Zqq84XK791voKMMrvnux0OHqq2l2mYOSNXUeVNQeyDE6HbKXFUiWhRZl36UndVaE +XhdDnKpxseMpYZsECW1+x1GxbUHFRx6tSiqzgLSNU/SsgwgttHwyqEdW0sr63r66 +7XSoMKvEgIhb36hJ7AIaFNWasLnnLOTOWR74IHnJ68FpordYm7lnmT5Vg/ju9y29 +JDwfOcNroCao6tTjyXcM6KmIssQPavTDLK/I6XgVr9QziQEcBBABAgAGBQJSxwGo +AAoJEBCQryClqlvmWGgH/3CsqpTEKQW3FL/jughz3Yt8vmgqmlj7ZbTaVehIKRU4 +iL2XOlgAu3JISxCLPkdz79qcMSkZsOJtTGwA1yjvw/yx7oSznvW+jgNZ+fNOuT9w +c6YKGSm0KbGGOFzjzoCsnIpoVEVuJwOS/zqGY349WR5dyaY4pEL42StfqLLtHO7I +IJMKRcubedgZSogT9iwhin+sAGi60Wjq0pX240UQG0bgSB7n+/+7NT64u9yRyPwZ +9B7Y11smlCw0jIlJD/P51rFgFciG/BdYyPfRHToe5CjOI+1sFxJYuOQI25o9/Syg +7MMzp3ym2IEjIi3poBwfqZRlPDb5nHfu4vnSntPrwcWJAhwEEAEKAAYFAlLHCkcA +CgkQ8Ar26sJF0gu9AA/9EXGIp5BwAYXNtlrI66nuPBwbPXHIVXocnlu2O2Kfzc9W +Lvl3e5eSi61/TCOPNM4ParKUT9utxq9Sd01WO4GuepQFOiSfhMfKb7ORd0cKfWuM +9shAKHsTbuAopO9R43jv1QnE+yL1xpM85JaGxI2pWf4XIpL32ZZ0s7s3x1fklNMG +7ObB5dHr66M/V/GXZSx6rTBWhODm34W07HcXqDdwjVT8J/fo+3kkY9eXYuVfpl8t +bVV6g8DK1zMkQiQBHpN0DCZUYB9WoJgCKFsTvVUElRyMY5sd2bkyAktA2df1EBSH +kMXzqn3py+n3YzRY3VpsNUV3WkDRfU9SIdJd8g88muZeL9namSr/3eHTjdaMoCyL +GyyUpy5LrD56k3QWeXDWVynU9lXuxaiJDntP6A81d6vaIBtm8AFVihtJFoufHot4 +crmPqKtH+MQ9G6xwN5Az9okXKg7HGG9ZD82s4D/X5plN0OH5pMeYLrOQI+oEhjn2 +uK67y0Zl/eqoQcnVDy9PFrynuSVBC5/BTGNbebQrTDrIsQo0m0LMYO3mUzMBA7SO +j9iA0vmXxIGsPzf8lRu26odcahKWswRE492MZiTJlul+HWYmun1b0XJz/4YDWL5l ++kUVLnl53o2aHVlTkmPEMg/mwufkxTayJrtl3kL6oun7e6jUjaCRao9eLFZWtGWI +mwQQAQIABgUCUscuQwAKCRBfHshviAyeVYy3A/ig6XKOyU+RC/+4HtFxvL5osE9T +w/9JlY78umlNish7CJo0Sbka4nFipd6Iw/xcYiAQ06TuS5NDwdmcuoZoUpDAqbLP +r/pWpBy9IAUIzAa1UnyvYTDBp2NS3nxcWnzEpXk/dDyYMKX0gUsrDjE9ZTpsKeMq +70Kgq7lPtH6EfekmiQIcBBABAgAGBQJSx12BAAoJEG8PnXiV/JnUMB4QAJu5xu2F +ej5QSiIXlZw8LD/uzx3UEQocQy4eGPtwTxeYogt9FtbdblRYb6Y8qc+Uyk6fLBxB +E+gclk3I2GnKnpqjtdG5utJnAbvynqfgoE81tuC7hjxKYPaqGTJotwX4IsV8MZZN +D6hduw1hxCWsnckS/6jnVrJxThKqlKEnnFqLE14W1WTnKIqh+dXYdnqn+MEMXZhK +7z68TLteASvT1S9i91Kof7gmfe6hL2wbzPAtils6+gJr0ZfxxUTDzFL5hFulypzX +GgW4VemsZLRz6hhevPiWSRIGCG6xO/boGPnlOQt6Fv2mReBiuIidSia9S1G7G8KF +36ya41RrS6157dgAeSGGUOAzGkvamqlJozlTo1dl8eD08x5G2cHKL/H2oviaE1hr +CgZypLuhPisW2Yd99WMndMV+jrbkNXcORVdYQO/T0aP0vA7zNrTv96shcpNoT3q7 +nWDuGvxjOic8sSX/MxR7F+4UqZO9eZGziPnKDrv1fp17CWWmBBvJHWhFXfPF9nPu +vej6q3Eq49pq3oDuIbtV+1GaMKLre1fzMzqyz1hQ+esByOKi/cAH+QzkbXUC4KyL +q45O/UfNR3hYZms36n05729qF+hW6tO2ZGd43k7kSVgYHj55BIr942dzWMvg7BUY +aWQqYiahIfDxfBXz+WvW5gihr8In24L6dYXDiEYEEBECAAYFAlLHhgUACgkQCaei +StHlggeAhgCdG3L6GRFUho2VtUOx+uaGsvj7vvUAoIahAtf5fb8mSfzceNr5neXd +FgnpiEYEEBECAAYFAlLINaMACgkQxLEHmIV5aiNLbgCgoJYeWDcldLWYU1MH+uvo +Ll4ThV0An0PZNMtCd6gwGGhGd9iMRqHzVpQQiQIcBBABCAAGBQJSyoYqAAoJEIvo +ebAocx4cLO8P/jO9GWX7PSI+k21P4NIjSc6VHYv8MMa5H36NWe8wnoUSUr8FKvUh +uLOI1bDamRZBdCWSuMf3gcWNiwVi3FKJqH/tAdjD4Mc9NaL2DJwKgHH3IlSwV+jF +Hz9OvkEzfo8RT0zVkbt61tMhrNCK7wRw/QrjchixNyJH9YIifV2huppwbgHl5YH7 +7wYJ1thhIgyw8kSSKHFi3yJzy2q1qZ6hwcCCkUw2K9VgYV+0Y2plSkkc/OsoBUsU +JSNdCOSAzpwAmFuSpT3YVlwWnknJu0vV5BPUL/dJTeYLbhyxfXWiWDiF1tiBWHMS +KvUJowbW9r2CZ/FQx4V5hXKMfCupuDJpmCvIiDfRPGfuD4+4vJ+EhAp2TEyRL3HX +7BAlQ/95TiS22AhcFqn7Zl+9tS1vUcj4xLmakPQ2REKgBqiUrVDu+GvzZY0A6V6k +J6LNc+ncaLX+B9lYqqMQmxLyRK3JySpHWgC2ZPoyje8GR4ksf0IlvrRufFMj1Qyt +/a8Jc1Z2mXJR3PRrsL7EBDdp7Xl8BGqnjShZgIvKPDt6+nCIqsv13OjWaUBl+CKg +eZcDMt2nZGUfu4KJD6ktJ9nvthrocWxL4dRhFM7s/R9ad1IdmySoBH9SnUuMgM8e +bKQ5FnVqNiy1Z+JrsigPvb671KJ1MA9n2rPaBhY1cNYaaavIbKkBzDDTuQENBFLG +B58BCACe6UEcbxy5q6rIPXZikT4WCg6bw3AtdT/MeLUCmxWhhP9g+T3i0t7zU6bu +Zcw1uFxjnKsMEeDBHwdI0Bg9r5EVtp77GVf1EGrveKvISURlktkBtcezTVRfukEM +mTXBt/3vMGLg+AadFGZTU2ciKdO22AxLBZWVgz0ICoO/ljtvEFokrrzwDoF6ySHX +3Taiq/aMqI/RjIRXXMq6u+/oVC6droj10eZRYXGPMl7og5MRSUU8waV2fYgtfLmw +BtVEFbd0LPO5L1BNgIIMBx1X/QzMeBTldT+XcDSYh9ELfMJoynnVz0smZbeQ2PZ/ +DhGsVsLvJc+cx5cDnBKsPrejCTXBABEBAAGJAR8EGAECAAkFAlLGB58CGwwACgkQ +Yd4R7OJ2OnMzXAf+LxzrPplcEyIDKOoGW21320AwH5NqjInqj49K0gGhOL/xNkfs +C1wsiFFESdN7eL1+aDdk68CF1ClJagDKkH3U5o5PiPSjCsGBoGpdI6f7mRlxbUT2 +jQv0QC9Qav+9t4QcyBC/1BvwO1e7fgrpFLvBrXJpj4utHBP/R3WUo04kAp+sPbVk +tOEByvXAHkDDe0KAG2G9A0dLqF7kfydoSaioFmoJlkAu7LCwFLFbFZ3JRFAaYEQO +DfwkgPDDOA6k9Y1o+nbk/TgyEj7PtpzkiWh0aK5BRI8mjA/s0XNZKpuY1sghyASo +XvRQkAGPLcqS1D4k+kW3MLWpxjbSwGi8FCdsfg== +=d3FT +-----END PGP PUBLIC KEY BLOCK----- + +Type Bits KeyID Created Expires Algorithm Use pub 2048 5207CAD3 2013-01-02 ------- RSA Sign & Encrypt fingerprint: B87D 4569 86F1 9484 07E5 CCB4 3D68 B25D 5207 CAD3 uid Sendmail Signing Key/2013 @@ -2435,4 +2613,4 @@ DnF3FZZEzV7oqPwC2jzv/1dD6GFhtgy0cnyoPGUJ =nES8 -----END PGP PUBLIC KEY BLOCK----- -$Revision: 8.43 $, Last updated $Date: 2013/01/18 17:40:21 $ +$Revision: 8.46 $, Last updated $Date: 2014/01/18 00:20:24 $ Modified: stable/10/contrib/sendmail/README ============================================================================== --- stable/10/contrib/sendmail/README Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/README Sat Feb 1 22:27:40 2014 (r261363) @@ -1,7 +1,7 @@ SENDMAIL RELEASE 8 -This directory has the latest sendmail(TM) software from Sendmail, Inc. +This directory has the latest sendmail(TM) software from Proofpoint, Inc. Report any bugs to sendmail-bugs-YYYY@support.sendmail.org where YYYY is the current year, e.g., 2005. @@ -37,7 +37,7 @@ the latest updates. 4. Read cf/README. -Sendmail is a trademark of Sendmail, Inc. +Sendmail is a trademark of Proofpoint, Inc. US Patent Numbers 6865671, 6986037. +-----------------------+ @@ -465,4 +465,4 @@ sendmail Source for the sendmail program test Some test scripts (currently only for compilation aids). vacation Source for the vacation program. NOT PART OF SENDMAIL! -$Revision: 8.95 $, Last updated $Date: 2009/04/10 17:49:18 $ +$Revision: 8.96 $, Last updated $Date: 2013/11/22 20:51:01 $ Modified: stable/10/contrib/sendmail/RELEASE_NOTES ============================================================================== --- stable/10/contrib/sendmail/RELEASE_NOTES Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/RELEASE_NOTES Sat Feb 1 22:27:40 2014 (r261363) @@ -1,11 +1,58 @@ SENDMAIL RELEASE NOTES - $Id: RELEASE_NOTES,v 8.2024 2013/04/19 15:01:58 ca Exp $ + $Id: RELEASE_NOTES,v 8.2043 2014/01/23 20:27:19 ca Exp $ This listing shows the version of the sendmail binary, the version of the sendmail configuration files, the date of release, and a summary of the changes in that release. +8.14.8/8.14.8 2014/01/26 + Properly initialize all OpenSSL algorithms for versions before + OpenSSL 0.9.8o. Without this SHA2 algorithms may not + work properly, causing for example failures for certs + that use sha256WithRSAEncryption as signature algorithm. + When looking up hostnames, ensure only to return those records + for the requested family (AF_INET or AF_INET6). + On system that have NEEDSGETIPNODE and NETINET6 + this may have failed and cause delivery problems. + Problem noted by Kees Cook. + A new mailer flag '!' is available to suppress an MH hack + that drops an explicit From: header if it is the + same as what sendmail would generate. + Add an FFR (for future release) to use uncompressed IPv6 addresses, + i.e., they will not contain "::". For example, instead + of ::1 it will be 0:0:0:0:0:0:0:1. This means that + configuration data (including maps, files, classes, + custom ruleset, etc) have to use the same format. + This will be turned on in 8.15. It can be enabled in 8.14 + by compiling with: + APPENDDEF(`conf_sendmail_ENVDEF', `-D_FFR_IPV6_FULL') + in your devtools/Site/site.config.m4 file. + Add an additional case for the WorkAroundBrokenAAAA check when + dealing with broken nameservers by ignoring SERVFAIL + errors returned on T_AAAA (IPv6) lookups at delivery time. + Problem noted by Pavel Timofeev of OCS. + If available, pass LOGIN_SETCPUMASK and LOGIN_SETLOGINCLASS to + setusercontext() on deliveries as a different user. + Patch from Edward Tomasz Napierala from FreeBSD. + Avoid compiler warnings from a change in Cyrus-SASL 2.1.25. + Patch from Hajimu UMEMOTO from FreeBSD. + Add support for DHParameters 2048-bit primes. + CONFIG: Accept IPv6 literals when evaluating the HELO/EHLO argument + in FEATURE(`block_bad_helo'). Suggested by Andrey Chernov. + LIBSMDB: Add a missing check for malloc() in libsmdb/smndbm.c. + Patch from Bill Parker. + LIBSMDB: Fix minor memory leaks in libsmdb/ if allocations + fail. Patch from John Beck of Oracle. + Portability: + Add support for Darwin 12.x and 13.x (Mac OS X 10.8 and 10.9). + On Linux use socklen_t as the type for the 3rd argument + for getsockname/getpeername if the glibc version is at + least 2.1. + Added Files: + devtools/OS/Darwin.12.x + devtools/OS/Darwin.13.x + 8.14.7/8.14.7 2013/04/21 Drop support for IPv4-mapped IPv6 addresses to prevent the MTA from using a mapped address over a legitimate IPv6 address @@ -80,9 +127,12 @@ summary of the changes in that release. the reason for the failure in a single log line. Suggested by James Carey of Boeing. Portability: - Add support for Darwin 11.x and 12.x (Mac OS X 10.7 and 10.8). + Add support for Darwin 11.x (Mac OS X 10.7). Add support for SunOS 5.12 (aka Solaris 12). Patch from John Beck of Oracle. + Added Files: + devtools/OS/Darwin.11.x + devtools/OS/SunOS.5.12 8.14.5/8.14.5 2011/05/17 Do not cache SMTP extensions across connections as the cache Modified: stable/10/contrib/sendmail/cf/README ============================================================================== --- stable/10/contrib/sendmail/cf/README Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/README Sat Feb 1 22:27:40 2014 (r261363) @@ -77,7 +77,7 @@ Let's examine a typical .mc file: divert(-1) # - # Copyright (c) 1998-2005 Sendmail, Inc. and its suppliers. + # Copyright (c) 1998-2005 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -1402,6 +1402,9 @@ preserve_local_plus_detail that address will be looked up in the alias file; user+* and user will not be looked up). Only use if the local delivery agent in use supports +detail addressing. + Moreover, this will most likely not work if the 'w' flag + for the local mailer is set as the entire local address + including +detail is passed to the user lookup function. compat_check Enable ruleset check_compat to look up pairs of addresses with the Compat: tag -- Compat:sender<@>recipient -- in the @@ -4701,4 +4704,4 @@ M4 DIVERSIONS 8 DNS based blacklists 9 special local rulesets (1 and 2) -$Revision: 8.728 $, Last updated $Date: 2012/09/07 16:29:13 $ +$Revision: 8.730 $, Last updated $Date: 2014/01/16 15:55:51 $ Modified: stable/10/contrib/sendmail/cf/cf/chez.cs.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/chez.cs.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/chez.cs.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: chez.cs.mc,v 8.14 1999/02/07 07:25:59 gshapiro Exp $') +VERSIONID(`$Id: chez.cs.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`LOCAL_RELAY', vangogh.CS.Berkeley.EDU)dnl Modified: stable/10/contrib/sendmail/cf/cf/clientproto.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/clientproto.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/clientproto.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2000 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: clientproto.mc,v 8.16 2000/03/21 21:05:26 ca Exp $') +VERSIONID(`$Id: clientproto.mc,v 8.17 2013/11/22 20:51:08 ca Exp $') OSTYPE(unknown) FEATURE(nullclient, mailhost.$m) Modified: stable/10/contrib/sendmail/cf/cf/cs-hpux10.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/cs-hpux10.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/cs-hpux10.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-hpux10.mc,v 8.13 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-hpux10.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux10)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`MAIL_HUB', mailspool.CS.Berkeley.EDU)dnl Modified: stable/10/contrib/sendmail/cf/cf/cs-hpux9.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/cs-hpux9.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/cs-hpux9.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-hpux9.mc,v 8.14 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-hpux9.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux9)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`MAIL_HUB', mailspool.CS.Berkeley.EDU)dnl Modified: stable/10/contrib/sendmail/cf/cf/cs-osf1.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/cs-osf1.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/cs-osf1.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-osf1.mc,v 8.13 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-osf1.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(osf1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/cs-solaris2.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/cs-solaris2.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/cs-solaris2.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-solaris2.mc,v 8.12 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-solaris2.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') OSTYPE(solaris2)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/cs-sunos4.1.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/cs-sunos4.1.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/cs-sunos4.1.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-sunos4.1.mc,v 8.13 1999/02/07 07:26:01 gshapiro Exp $') +VERSIONID(`$Id: cs-sunos4.1.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(sunos4.1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/cs-ultrix4.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/cs-ultrix4.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/cs-ultrix4.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-ultrix4.mc,v 8.13 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: cs-ultrix4.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/generic-bsd4.4.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/generic-bsd4.4.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/generic-bsd4.4.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -21,7 +21,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-bsd4.4.mc,v 8.10 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-bsd4.4.mc,v 8.11 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/generic-hpux10.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/generic-hpux10.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/generic-hpux10.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999, 2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999, 2001 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-hpux10.mc,v 8.13 2001/05/29 17:29:52 ca Exp $') +VERSIONID(`$Id: generic-hpux10.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux10)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/generic-hpux9.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/generic-hpux9.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/generic-hpux9.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-hpux9.mc,v 8.11 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-hpux9.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux9)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/generic-linux.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/generic-linux.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/generic-linux.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-linux.mc,v 8.1 1999/09/24 22:48:05 gshapiro Exp $') +VERSIONID(`$Id: generic-linux.mc,v 8.2 2013/11/22 20:51:08 ca Exp $') OSTYPE(linux)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/generic-mpeix.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/generic-mpeix.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/generic-mpeix.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 2001 Proofpoint, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set @@ -17,7 +17,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-mpeix.mc,v 8.1 2001/12/13 23:56:37 gshapiro Exp $') +VERSIONID(`$Id: generic-mpeix.mc,v 8.2 2013/11/22 20:51:08 ca Exp $') OSTYPE(mpeix)dnl DOMAIN(generic)dnl define(`confFORWARD_PATH', `$z/.forward')dnl Modified: stable/10/contrib/sendmail/cf/cf/generic-nextstep3.3.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/generic-nextstep3.3.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/generic-nextstep3.3.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-nextstep3.3.mc,v 8.10 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-nextstep3.3.mc,v 8.11 2013/11/22 20:51:08 ca Exp $') OSTYPE(nextstep)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/generic-osf1.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/generic-osf1.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/generic-osf1.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-osf1.mc,v 8.11 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-osf1.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(osf1)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/generic-solaris.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/generic-solaris.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/generic-solaris.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999, 2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999, 2001 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-solaris.mc,v 8.13 2001/06/27 21:46:30 gshapiro Exp $') +VERSIONID(`$Id: generic-solaris.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(solaris2)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/generic-sunos4.1.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/generic-sunos4.1.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/generic-sunos4.1.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-sunos4.1.mc,v 8.11 1999/02/07 07:26:03 gshapiro Exp $') +VERSIONID(`$Id: generic-sunos4.1.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(sunos4.1)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/generic-ultrix4.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/generic-ultrix4.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/generic-ultrix4.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-ultrix4.mc,v 8.11 1999/02/07 07:26:03 gshapiro Exp $') +VERSIONID(`$Id: generic-ultrix4.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/huginn.cs.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/huginn.cs.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/huginn.cs.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: huginn.cs.mc,v 8.15 1999/02/07 07:26:03 gshapiro Exp $') +VERSIONID(`$Id: huginn.cs.mc,v 8.16 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux9)dnl DOMAIN(CS.Berkeley.EDU)dnl MASQUERADE_AS(CS.Berkeley.EDU)dnl Modified: stable/10/contrib/sendmail/cf/cf/knecht.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/knecht.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/knecht.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2001, 2004, 2005 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2001, 2004, 2005 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -19,7 +19,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: knecht.mc,v 8.62 2006/09/27 19:48:59 eric Exp $') +VERSIONID(`$Id: knecht.mc,v 8.63 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4) DOMAIN(generic) Modified: stable/10/contrib/sendmail/cf/cf/mail.cs.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/mail.cs.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/mail.cs.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: mail.cs.mc,v 8.18 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: mail.cs.mc,v 8.19 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(Berkeley.EDU)dnl MASQUERADE_AS(CS.Berkeley.EDU)dnl Modified: stable/10/contrib/sendmail/cf/cf/mail.eecs.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/mail.eecs.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/mail.eecs.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: mail.eecs.mc,v 8.18 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: mail.eecs.mc,v 8.19 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(EECS.Berkeley.EDU)dnl MASQUERADE_AS(EECS.Berkeley.EDU)dnl Modified: stable/10/contrib/sendmail/cf/cf/mailspool.cs.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/mailspool.cs.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/mailspool.cs.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: mailspool.cs.mc,v 8.12 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: mailspool.cs.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') OSTYPE(sunos4.1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/python.cs.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/python.cs.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/python.cs.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: python.cs.mc,v 8.12 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: python.cs.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`LOCAL_RELAY', vangogh.CS.Berkeley.EDU)dnl Modified: stable/10/contrib/sendmail/cf/cf/s2k-osf1.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/s2k-osf1.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/s2k-osf1.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: s2k-osf1.mc,v 8.13 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: s2k-osf1.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(osf1)dnl DOMAIN(S2K.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/s2k-ultrix4.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/s2k-ultrix4.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/s2k-ultrix4.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: s2k-ultrix4.mc,v 8.13 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: s2k-ultrix4.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(S2K.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/submit.cf ============================================================================== --- stable/10/contrib/sendmail/cf/cf/submit.cf Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/submit.cf Sat Feb 1 22:27:40 2014 (r261363) @@ -1,5 +1,5 @@ # -# Copyright (c) 1998-2004, 2009, 2010 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2004, 2009, 2010 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983, 1995 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -16,8 +16,8 @@ ##### ##### SENDMAIL CONFIGURATION FILE ##### -##### built by ca@wiz.smi.sendmail.com on Fri Apr 19 08:04:44 PDT 2013 -##### in /extra/home/ca/sm-8.14.7/OpenSource/sendmail-8.14.7/cf/cf +##### built by ca@lab.smi.sendmail.com on Thu Jan 23 12:29:13 PST 2014 +##### in /home/ca/sm8-rel/sm-8.14.8/OpenSource/sendmail-8.14.8/cf/cf ##### using ../ as configuration include directory ##### ###################################################################### @@ -27,15 +27,15 @@ ###################################################################### ###################################################################### -##### $Id: cfhead.m4,v 8.121 2010/01/07 18:20:19 ca Exp $ ##### -##### $Id: cf.m4,v 8.32 1999/02/07 07:26:14 gshapiro Exp $ ##### -##### $Id: submit.mc,v 8.14 2006/04/05 05:54:41 ca Exp $ ##### -##### $Id: msp.m4,v 1.33 2004/02/09 22:32:38 ca Exp $ ##### +##### $Id: cfhead.m4,v 8.122 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: cf.m4,v 8.33 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: submit.mc,v 8.15 2013/11/22 20:51:08 ca Exp $ ##### +##### $Id: msp.m4,v 1.34 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: no_default_msa.m4,v 8.2 2001/02/14 05:03:22 gshapiro Exp $ ##### +##### $Id: no_default_msa.m4,v 8.3 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ ##### +##### $Id: proto.m4,v 8.762 2013/11/22 20:51:13 ca Exp $ ##### # level 10 config file format V10/Berkeley @@ -114,7 +114,7 @@ D{MTAHost}[127.0.0.1] # Configuration version number -DZ8.14.7/Submit +DZ8.14.8/Submit ############### @@ -1299,7 +1299,7 @@ R$* $#relay $@ ${MTAHost} $: $1 < @ $j ### Local and Program Mailer specification ### ################################################## -##### $Id: local.m4,v 8.59 2004/11/23 00:37:25 ca Exp $ ##### +##### $Id: local.m4,v 8.60 2013/11/22 20:51:14 ca Exp $ ##### # # Envelope sender rewriting @@ -1351,7 +1351,7 @@ Mprog, P=[IPC], F=lmDFMuXk5, S=EnvFromL ### SMTP Mailer specification ### ##################################### -##### $Id: smtp.m4,v 8.65 2006/07/12 21:08:10 ca Exp $ ##### +##### $Id: smtp.m4,v 8.66 2013/11/22 20:51:14 ca Exp $ ##### # # common sender and masquerading recipient rewriting @@ -1442,7 +1442,7 @@ Mrelay, P=[IPC], F=mDFMuXa8k, S=EnvFrom ### submit.mc ### # divert(-1) # # -# # Copyright (c) 2001-2003 Sendmail, Inc. and its suppliers. +# # Copyright (c) 2001-2003 Proofpoint, Inc. and its suppliers. # # All rights reserved. # # # # By using this file, you agree to the terms and conditions set @@ -1457,7 +1457,7 @@ Mrelay, P=[IPC], F=mDFMuXa8k, S=EnvFrom # # # # divert(0)dnl -# VERSIONID(`$Id: submit.mc,v 8.14 2006/04/05 05:54:41 ca Exp $') +# VERSIONID(`$Id: submit.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') # define(`confCF_VERSION', `Submit')dnl # define(`__OSTYPE__',`')dnl dirty hack to keep proto.m4 from complaining # define(`_USE_DECNET_SYNTAX_', `1')dnl support DECnet Modified: stable/10/contrib/sendmail/cf/cf/submit.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/submit.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/submit.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 2001-2003 Sendmail, Inc. and its suppliers. +# Copyright (c) 2001-2003 Proofpoint, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set @@ -15,7 +15,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: submit.mc,v 8.14 2006/04/05 05:54:41 ca Exp $') +VERSIONID(`$Id: submit.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') define(`confCF_VERSION', `Submit')dnl define(`__OSTYPE__',`')dnl dirty hack to keep proto.m4 from complaining define(`_USE_DECNET_SYNTAX_', `1')dnl support DECnet Modified: stable/10/contrib/sendmail/cf/cf/tcpproto.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/tcpproto.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/tcpproto.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2000 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -26,7 +26,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: tcpproto.mc,v 8.14 2000/08/03 15:26:50 ca Exp $') +VERSIONID(`$Id: tcpproto.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') OSTYPE(`unknown') FEATURE(`nouucp', `reject') MAILER(`local') Modified: stable/10/contrib/sendmail/cf/cf/ucbarpa.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/ucbarpa.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/ucbarpa.mc Sat Feb 1 22:27:40 2014 (r261363) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -21,7 +21,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: ucbarpa.mc,v 8.12 1999/02/07 07:26:05 gshapiro Exp $') +VERSIONID(`$Id: ucbarpa.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') DOMAIN(CS.Berkeley.EDU)dnl OSTYPE(bsd4.4)dnl MAILER(local)dnl Modified: stable/10/contrib/sendmail/cf/cf/ucbvax.mc ============================================================================== --- stable/10/contrib/sendmail/cf/cf/ucbvax.mc Sat Feb 1 22:06:39 2014 (r261362) +++ stable/10/contrib/sendmail/cf/cf/ucbvax.mc Sat Feb 1 22:27:40 2014 (r261363) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 22:29:05 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 3277B38B; Sat, 1 Feb 2014 22:29:05 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1DAEB1327; Sat, 1 Feb 2014 22:29:05 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11MT4T5099977; Sat, 1 Feb 2014 22:29:04 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11MT4rw099976; Sat, 1 Feb 2014 22:29:04 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012229.s11MT4rw099976@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 22:29:04 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261364 - stable/10/lib/libsm X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 22:29:05 -0000 Author: gshapiro Date: Sat Feb 1 22:29:04 2014 New Revision: 261364 URL: http://svnweb.freebsd.org/changeset/base/261364 Log: MFC: Add new sendmail 8.14.8 file Modified: stable/10/lib/libsm/Makefile Directory Properties: stable/10/ (props changed) Modified: stable/10/lib/libsm/Makefile ============================================================================== --- stable/10/lib/libsm/Makefile Sat Feb 1 22:27:40 2014 (r261363) +++ stable/10/lib/libsm/Makefile Sat Feb 1 22:29:04 2014 (r261364) @@ -31,7 +31,7 @@ SRCS+= assert.c debug.c errstring.c exc. wbuf.c wsetup.c string.c stringf.c \ xtrap.c strto.c test.c path.c strcasecmp.c strrevcmp.c \ signal.c clock.c config.c sem.c shm.c mbdb.c strexit.c cf.c ldap.c \ - niprop.c mpeix.c memstat.c util.c + niprop.c mpeix.c memstat.c util.c inet6_ntop.c CLEANFILES+=sm_os.h INTERNALLIB= From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 22:32:45 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id EAF884CA; Sat, 1 Feb 2014 22:32:45 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D59171390; Sat, 1 Feb 2014 22:32:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11MWjER003158; Sat, 1 Feb 2014 22:32:45 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11MWjqc003157; Sat, 1 Feb 2014 22:32:45 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012232.s11MWjqc003157@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 22:32:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261365 - stable/10/contrib/sendmail/include/sm/os X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 22:32:46 -0000 Author: gshapiro Date: Sat Feb 1 22:32:45 2014 New Revision: 261365 URL: http://svnweb.freebsd.org/changeset/base/261365 Log: MFC: Remove local FreeBSD workaround now that upstream project has a better fix. Modified: stable/10/contrib/sendmail/include/sm/os/sm_os_freebsd.h Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/sendmail/include/sm/os/sm_os_freebsd.h ============================================================================== --- stable/10/contrib/sendmail/include/sm/os/sm_os_freebsd.h Sat Feb 1 22:29:04 2014 (r261364) +++ stable/10/contrib/sendmail/include/sm/os/sm_os_freebsd.h Sat Feb 1 22:32:45 2014 (r261365) @@ -39,7 +39,3 @@ #ifndef SM_CONF_MSG # define SM_CONF_MSG 1 #endif /* SM_CONF_MSG */ - -#ifndef SM_IPNODEBYNAME_FLAGS -# define SM_IPNODEBYNAME_FLAGS AI_DEFAULT|AI_ALL -#endif /* SM_IPNODEBYNAME_FLAGS */ From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 22:33:59 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 514365FC; Sat, 1 Feb 2014 22:33:59 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3C3C01398; Sat, 1 Feb 2014 22:33:59 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11MXxD7003373; Sat, 1 Feb 2014 22:33:59 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11MXxAC003372; Sat, 1 Feb 2014 22:33:59 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012233.s11MXxAC003372@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 22:33:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261366 - stable/10/contrib/sendmail X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 22:33:59 -0000 Author: gshapiro Date: Sat Feb 1 22:33:58 2014 New Revision: 261366 URL: http://svnweb.freebsd.org/changeset/base/261366 Log: MFC: Update for sendmail 8.14.8 import Modified: stable/10/contrib/sendmail/FREEBSD-upgrade Directory Properties: stable/10/ (props changed) Modified: stable/10/contrib/sendmail/FREEBSD-upgrade ============================================================================== --- stable/10/contrib/sendmail/FREEBSD-upgrade Sat Feb 1 22:32:45 2014 (r261365) +++ stable/10/contrib/sendmail/FREEBSD-upgrade Sat Feb 1 22:33:58 2014 (r261366) @@ -1,6 +1,6 @@ $FreeBSD$ -sendmail 8.14.7 +sendmail 8.14.8 originals can be found at: ftp://ftp.sendmail.org/pub/sendmail/ For the import of sendmail, the following directories were renamed: @@ -97,4 +97,4 @@ infrastructure in FreeBSD: usr.sbin/mailwrapper/Makefile gshapiro@FreeBSD.org -21-April-2013 +26-January-2014 From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 22:35:13 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4887372E; Sat, 1 Feb 2014 22:35:13 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 1A2E3139F; Sat, 1 Feb 2014 22:35:13 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11MZC8G003595; Sat, 1 Feb 2014 22:35:12 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11MZC12003594; Sat, 1 Feb 2014 22:35:12 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012235.s11MZC12003594@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 22:35:12 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261367 - stable/10/contrib/sendmail/libsm X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 22:35:13 -0000 Author: gshapiro Date: Sat Feb 1 22:35:12 2014 New Revision: 261367 URL: http://svnweb.freebsd.org/changeset/base/261367 Log: MFC: Add missing svn:keywords property to new files Modified: Directory Properties: stable/10/ (props changed) stable/10/contrib/sendmail/libsm/inet6_ntop.c (props changed) stable/10/contrib/sendmail/libsm/t-fget.c (props changed) stable/10/contrib/sendmail/libsm/t-inet6_ntop.c (props changed) From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 22:36:47 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 4D6A4865; Sat, 1 Feb 2014 22:36:47 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 3837613A9; Sat, 1 Feb 2014 22:36:47 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11MalMv003866; Sat, 1 Feb 2014 22:36:47 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11Mak9u003864; Sat, 1 Feb 2014 22:36:46 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012236.s11Mak9u003864@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 22:36:46 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261368 - stable/10/etc/sendmail X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 22:36:47 -0000 Author: gshapiro Date: Sat Feb 1 22:36:46 2014 New Revision: 261368 URL: http://svnweb.freebsd.org/changeset/base/261368 Log: MFC: Minor changes to force commit these files so new freebsd*.cf files are built to use the new sendmail-8.14.8/cf tree. Modified: stable/10/etc/sendmail/freebsd.mc stable/10/etc/sendmail/freebsd.submit.mc Directory Properties: stable/10/ (props changed) Modified: stable/10/etc/sendmail/freebsd.mc ============================================================================== --- stable/10/etc/sendmail/freebsd.mc Sat Feb 1 22:35:12 2014 (r261367) +++ stable/10/etc/sendmail/freebsd.mc Sat Feb 1 22:36:46 2014 (r261368) @@ -33,6 +33,7 @@ divert(-1) # SUCH DAMAGE. # + # # This is a generic configuration file for FreeBSD 6.X and later systems. # If you want to customize it, copy it to a name appropriate for your Modified: stable/10/etc/sendmail/freebsd.submit.mc ============================================================================== --- stable/10/etc/sendmail/freebsd.submit.mc Sat Feb 1 22:35:12 2014 (r261367) +++ stable/10/etc/sendmail/freebsd.submit.mc Sat Feb 1 22:36:46 2014 (r261368) @@ -9,6 +9,7 @@ divert(-1) # # + # # This is the FreeBSD configuration for a set-group-ID sm-msp sendmail # that acts as a initial mail submission program. From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 22:38:34 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id D41589AC; Sat, 1 Feb 2014 22:38:34 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BEC6F13B8; Sat, 1 Feb 2014 22:38:34 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11McYDR004100; Sat, 1 Feb 2014 22:38:34 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11McY4Z004099; Sat, 1 Feb 2014 22:38:34 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012238.s11McY4Z004099@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 22:38:34 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-10@freebsd.org Subject: svn commit: r261369 - stable/10/release/doc/en_US.ISO8859-1/relnotes X-SVN-Group: stable-10 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 22:38:34 -0000 Author: gshapiro Date: Sat Feb 1 22:38:34 2014 New Revision: 261369 URL: http://svnweb.freebsd.org/changeset/base/261369 Log: MFC: Note merge of sendmail 8.14.8. Modified: stable/10/release/doc/en_US.ISO8859-1/relnotes/article.xml Directory Properties: stable/10/ (props changed) Modified: stable/10/release/doc/en_US.ISO8859-1/relnotes/article.xml ============================================================================== --- stable/10/release/doc/en_US.ISO8859-1/relnotes/article.xml Sat Feb 1 22:36:46 2014 (r261368) +++ stable/10/release/doc/en_US.ISO8859-1/relnotes/article.xml Sat Feb 1 22:38:34 2014 (r261369) @@ -687,6 +687,9 @@ hv_vmbus_load="YES" Al &man.nvi.1; supports wide character locales. + + sendmail has been + updated from 8.14.7 to 8.14.8. From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 23:37:11 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id A89766FE; Sat, 1 Feb 2014 23:37:11 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 8E928180C; Sat, 1 Feb 2014 23:37:11 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11NbBpi026992; Sat, 1 Feb 2014 23:37:11 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11Nb3LQ026942; Sat, 1 Feb 2014 23:37:03 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012337.s11Nb3LQ026942@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 23:37:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261370 - in stable/9/contrib/sendmail: . cf cf/cf cf/domain cf/feature cf/hack cf/m4 cf/mailer cf/ostype cf/sh contrib doc/op editmap include/libmilter include/libsmdb include/sendmail... X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 23:37:11 -0000 Author: gshapiro Date: Sat Feb 1 23:37:03 2014 New Revision: 261370 URL: http://svnweb.freebsd.org/changeset/base/261370 Log: MFC: Merge sendmail 8.14.8 Added: stable/9/contrib/sendmail/libsm/inet6_ntop.c - copied unchanged from r261194, head/contrib/sendmail/libsm/inet6_ntop.c stable/9/contrib/sendmail/libsm/t-inet6_ntop.c - copied unchanged from r261194, head/contrib/sendmail/libsm/t-inet6_ntop.c Modified: stable/9/contrib/sendmail/LICENSE stable/9/contrib/sendmail/PGPKEYS stable/9/contrib/sendmail/README stable/9/contrib/sendmail/RELEASE_NOTES stable/9/contrib/sendmail/cf/README stable/9/contrib/sendmail/cf/cf/chez.cs.mc stable/9/contrib/sendmail/cf/cf/clientproto.mc stable/9/contrib/sendmail/cf/cf/cs-hpux10.mc stable/9/contrib/sendmail/cf/cf/cs-hpux9.mc stable/9/contrib/sendmail/cf/cf/cs-osf1.mc stable/9/contrib/sendmail/cf/cf/cs-solaris2.mc stable/9/contrib/sendmail/cf/cf/cs-sunos4.1.mc stable/9/contrib/sendmail/cf/cf/cs-ultrix4.mc stable/9/contrib/sendmail/cf/cf/generic-bsd4.4.mc stable/9/contrib/sendmail/cf/cf/generic-hpux10.mc stable/9/contrib/sendmail/cf/cf/generic-hpux9.mc stable/9/contrib/sendmail/cf/cf/generic-linux.mc stable/9/contrib/sendmail/cf/cf/generic-mpeix.mc stable/9/contrib/sendmail/cf/cf/generic-nextstep3.3.mc stable/9/contrib/sendmail/cf/cf/generic-osf1.mc stable/9/contrib/sendmail/cf/cf/generic-solaris.mc stable/9/contrib/sendmail/cf/cf/generic-sunos4.1.mc stable/9/contrib/sendmail/cf/cf/generic-ultrix4.mc stable/9/contrib/sendmail/cf/cf/huginn.cs.mc stable/9/contrib/sendmail/cf/cf/knecht.mc stable/9/contrib/sendmail/cf/cf/mail.cs.mc stable/9/contrib/sendmail/cf/cf/mail.eecs.mc stable/9/contrib/sendmail/cf/cf/mailspool.cs.mc stable/9/contrib/sendmail/cf/cf/python.cs.mc stable/9/contrib/sendmail/cf/cf/s2k-osf1.mc stable/9/contrib/sendmail/cf/cf/s2k-ultrix4.mc stable/9/contrib/sendmail/cf/cf/submit.cf stable/9/contrib/sendmail/cf/cf/submit.mc stable/9/contrib/sendmail/cf/cf/tcpproto.mc stable/9/contrib/sendmail/cf/cf/ucbarpa.mc stable/9/contrib/sendmail/cf/cf/ucbvax.mc stable/9/contrib/sendmail/cf/cf/uucpproto.mc stable/9/contrib/sendmail/cf/cf/vangogh.cs.mc stable/9/contrib/sendmail/cf/domain/Berkeley.EDU.m4 stable/9/contrib/sendmail/cf/domain/CS.Berkeley.EDU.m4 stable/9/contrib/sendmail/cf/domain/EECS.Berkeley.EDU.m4 stable/9/contrib/sendmail/cf/domain/S2K.Berkeley.EDU.m4 stable/9/contrib/sendmail/cf/domain/berkeley-only.m4 stable/9/contrib/sendmail/cf/domain/generic.m4 stable/9/contrib/sendmail/cf/feature/accept_unqualified_senders.m4 stable/9/contrib/sendmail/cf/feature/accept_unresolvable_domains.m4 stable/9/contrib/sendmail/cf/feature/access_db.m4 stable/9/contrib/sendmail/cf/feature/allmasquerade.m4 stable/9/contrib/sendmail/cf/feature/always_add_domain.m4 stable/9/contrib/sendmail/cf/feature/authinfo.m4 stable/9/contrib/sendmail/cf/feature/badmx.m4 stable/9/contrib/sendmail/cf/feature/bestmx_is_local.m4 stable/9/contrib/sendmail/cf/feature/bitdomain.m4 stable/9/contrib/sendmail/cf/feature/blacklist_recipients.m4 stable/9/contrib/sendmail/cf/feature/block_bad_helo.m4 stable/9/contrib/sendmail/cf/feature/compat_check.m4 stable/9/contrib/sendmail/cf/feature/conncontrol.m4 stable/9/contrib/sendmail/cf/feature/delay_checks.m4 stable/9/contrib/sendmail/cf/feature/dnsbl.m4 stable/9/contrib/sendmail/cf/feature/domaintable.m4 stable/9/contrib/sendmail/cf/feature/enhdnsbl.m4 stable/9/contrib/sendmail/cf/feature/generics_entire_domain.m4 stable/9/contrib/sendmail/cf/feature/genericstable.m4 stable/9/contrib/sendmail/cf/feature/greet_pause.m4 stable/9/contrib/sendmail/cf/feature/ldap_routing.m4 stable/9/contrib/sendmail/cf/feature/limited_masquerade.m4 stable/9/contrib/sendmail/cf/feature/local_lmtp.m4 stable/9/contrib/sendmail/cf/feature/local_no_masquerade.m4 stable/9/contrib/sendmail/cf/feature/local_procmail.m4 stable/9/contrib/sendmail/cf/feature/lookupdotdomain.m4 stable/9/contrib/sendmail/cf/feature/loose_relay_check.m4 stable/9/contrib/sendmail/cf/feature/mailertable.m4 stable/9/contrib/sendmail/cf/feature/masquerade_entire_domain.m4 stable/9/contrib/sendmail/cf/feature/masquerade_envelope.m4 stable/9/contrib/sendmail/cf/feature/msp.m4 stable/9/contrib/sendmail/cf/feature/mtamark.m4 stable/9/contrib/sendmail/cf/feature/no_default_msa.m4 stable/9/contrib/sendmail/cf/feature/nocanonify.m4 stable/9/contrib/sendmail/cf/feature/notsticky.m4 stable/9/contrib/sendmail/cf/feature/nouucp.m4 stable/9/contrib/sendmail/cf/feature/nullclient.m4 stable/9/contrib/sendmail/cf/feature/preserve_local_plus_detail.m4 stable/9/contrib/sendmail/cf/feature/preserve_luser_host.m4 stable/9/contrib/sendmail/cf/feature/promiscuous_relay.m4 stable/9/contrib/sendmail/cf/feature/queuegroup.m4 stable/9/contrib/sendmail/cf/feature/ratecontrol.m4 stable/9/contrib/sendmail/cf/feature/redirect.m4 stable/9/contrib/sendmail/cf/feature/relay_based_on_MX.m4 stable/9/contrib/sendmail/cf/feature/relay_entire_domain.m4 stable/9/contrib/sendmail/cf/feature/relay_hosts_only.m4 stable/9/contrib/sendmail/cf/feature/relay_local_from.m4 stable/9/contrib/sendmail/cf/feature/relay_mail_from.m4 stable/9/contrib/sendmail/cf/feature/require_rdns.m4 stable/9/contrib/sendmail/cf/feature/smrsh.m4 stable/9/contrib/sendmail/cf/feature/stickyhost.m4 stable/9/contrib/sendmail/cf/feature/use_client_ptr.m4 stable/9/contrib/sendmail/cf/feature/use_ct_file.m4 stable/9/contrib/sendmail/cf/feature/use_cw_file.m4 stable/9/contrib/sendmail/cf/feature/uucpdomain.m4 stable/9/contrib/sendmail/cf/feature/virtuser_entire_domain.m4 stable/9/contrib/sendmail/cf/feature/virtusertable.m4 stable/9/contrib/sendmail/cf/hack/cssubdomain.m4 stable/9/contrib/sendmail/cf/m4/cf.m4 stable/9/contrib/sendmail/cf/m4/cfhead.m4 stable/9/contrib/sendmail/cf/m4/proto.m4 stable/9/contrib/sendmail/cf/m4/version.m4 stable/9/contrib/sendmail/cf/mailer/cyrus.m4 stable/9/contrib/sendmail/cf/mailer/cyrusv2.m4 stable/9/contrib/sendmail/cf/mailer/fax.m4 stable/9/contrib/sendmail/cf/mailer/local.m4 stable/9/contrib/sendmail/cf/mailer/mail11.m4 stable/9/contrib/sendmail/cf/mailer/phquery.m4 stable/9/contrib/sendmail/cf/mailer/pop.m4 stable/9/contrib/sendmail/cf/mailer/procmail.m4 stable/9/contrib/sendmail/cf/mailer/qpage.m4 stable/9/contrib/sendmail/cf/mailer/smtp.m4 stable/9/contrib/sendmail/cf/mailer/usenet.m4 stable/9/contrib/sendmail/cf/mailer/uucp.m4 stable/9/contrib/sendmail/cf/ostype/a-ux.m4 stable/9/contrib/sendmail/cf/ostype/aix3.m4 stable/9/contrib/sendmail/cf/ostype/aix4.m4 stable/9/contrib/sendmail/cf/ostype/aix5.m4 stable/9/contrib/sendmail/cf/ostype/altos.m4 stable/9/contrib/sendmail/cf/ostype/amdahl-uts.m4 stable/9/contrib/sendmail/cf/ostype/bsd4.3.m4 stable/9/contrib/sendmail/cf/ostype/bsd4.4.m4 stable/9/contrib/sendmail/cf/ostype/bsdi.m4 stable/9/contrib/sendmail/cf/ostype/bsdi1.0.m4 stable/9/contrib/sendmail/cf/ostype/bsdi2.0.m4 stable/9/contrib/sendmail/cf/ostype/darwin.m4 stable/9/contrib/sendmail/cf/ostype/dgux.m4 stable/9/contrib/sendmail/cf/ostype/domainos.m4 stable/9/contrib/sendmail/cf/ostype/dragonfly.m4 stable/9/contrib/sendmail/cf/ostype/dynix3.2.m4 stable/9/contrib/sendmail/cf/ostype/freebsd4.m4 stable/9/contrib/sendmail/cf/ostype/freebsd5.m4 stable/9/contrib/sendmail/cf/ostype/freebsd6.m4 stable/9/contrib/sendmail/cf/ostype/gnu.m4 stable/9/contrib/sendmail/cf/ostype/hpux10.m4 stable/9/contrib/sendmail/cf/ostype/hpux11.m4 stable/9/contrib/sendmail/cf/ostype/hpux9.m4 stable/9/contrib/sendmail/cf/ostype/irix4.m4 stable/9/contrib/sendmail/cf/ostype/irix5.m4 stable/9/contrib/sendmail/cf/ostype/irix6.m4 stable/9/contrib/sendmail/cf/ostype/isc4.1.m4 stable/9/contrib/sendmail/cf/ostype/linux.m4 stable/9/contrib/sendmail/cf/ostype/maxion.m4 stable/9/contrib/sendmail/cf/ostype/mklinux.m4 stable/9/contrib/sendmail/cf/ostype/mpeix.m4 stable/9/contrib/sendmail/cf/ostype/nextstep.m4 stable/9/contrib/sendmail/cf/ostype/openbsd.m4 stable/9/contrib/sendmail/cf/ostype/osf1.m4 stable/9/contrib/sendmail/cf/ostype/powerux.m4 stable/9/contrib/sendmail/cf/ostype/ptx2.m4 stable/9/contrib/sendmail/cf/ostype/qnx.m4 stable/9/contrib/sendmail/cf/ostype/riscos4.5.m4 stable/9/contrib/sendmail/cf/ostype/sco-uw-2.1.m4 stable/9/contrib/sendmail/cf/ostype/sco3.2.m4 stable/9/contrib/sendmail/cf/ostype/sinix.m4 stable/9/contrib/sendmail/cf/ostype/solaris11.m4 stable/9/contrib/sendmail/cf/ostype/solaris2.m4 stable/9/contrib/sendmail/cf/ostype/solaris2.ml.m4 stable/9/contrib/sendmail/cf/ostype/solaris2.pre5.m4 stable/9/contrib/sendmail/cf/ostype/solaris8.m4 stable/9/contrib/sendmail/cf/ostype/sunos3.5.m4 stable/9/contrib/sendmail/cf/ostype/sunos4.1.m4 stable/9/contrib/sendmail/cf/ostype/svr4.m4 stable/9/contrib/sendmail/cf/ostype/ultrix4.m4 stable/9/contrib/sendmail/cf/ostype/unicos.m4 stable/9/contrib/sendmail/cf/ostype/unicosmk.m4 stable/9/contrib/sendmail/cf/ostype/unicosmp.m4 stable/9/contrib/sendmail/cf/ostype/unixware7.m4 stable/9/contrib/sendmail/cf/ostype/unknown.m4 stable/9/contrib/sendmail/cf/ostype/uxpds.m4 stable/9/contrib/sendmail/cf/sendmail.schema stable/9/contrib/sendmail/cf/sh/makeinfo.sh stable/9/contrib/sendmail/contrib/dnsblaccess.m4 stable/9/contrib/sendmail/contrib/link_hash.sh stable/9/contrib/sendmail/contrib/qtool.8 stable/9/contrib/sendmail/contrib/qtool.pl stable/9/contrib/sendmail/doc/op/op.me stable/9/contrib/sendmail/editmap/editmap.8 stable/9/contrib/sendmail/editmap/editmap.c stable/9/contrib/sendmail/include/libmilter/mfapi.h stable/9/contrib/sendmail/include/libmilter/mfdef.h stable/9/contrib/sendmail/include/libmilter/milter.h stable/9/contrib/sendmail/include/libsmdb/smdb.h stable/9/contrib/sendmail/include/sendmail/mailstats.h stable/9/contrib/sendmail/include/sendmail/pathnames.h stable/9/contrib/sendmail/include/sendmail/sendmail.h stable/9/contrib/sendmail/include/sm/assert.h stable/9/contrib/sendmail/include/sm/bdb.h stable/9/contrib/sendmail/include/sm/bitops.h stable/9/contrib/sendmail/include/sm/cdefs.h stable/9/contrib/sendmail/include/sm/cf.h stable/9/contrib/sendmail/include/sm/clock.h stable/9/contrib/sendmail/include/sm/conf.h stable/9/contrib/sendmail/include/sm/config.h stable/9/contrib/sendmail/include/sm/debug.h stable/9/contrib/sendmail/include/sm/errstring.h stable/9/contrib/sendmail/include/sm/exc.h stable/9/contrib/sendmail/include/sm/fdset.h stable/9/contrib/sendmail/include/sm/gen.h stable/9/contrib/sendmail/include/sm/heap.h stable/9/contrib/sendmail/include/sm/io.h stable/9/contrib/sendmail/include/sm/ldap.h stable/9/contrib/sendmail/include/sm/limits.h stable/9/contrib/sendmail/include/sm/mbdb.h stable/9/contrib/sendmail/include/sm/misc.h stable/9/contrib/sendmail/include/sm/os/sm_os_aix.h stable/9/contrib/sendmail/include/sm/os/sm_os_dragonfly.h stable/9/contrib/sendmail/include/sm/os/sm_os_freebsd.h stable/9/contrib/sendmail/include/sm/os/sm_os_hp.h stable/9/contrib/sendmail/include/sm/os/sm_os_irix.h stable/9/contrib/sendmail/include/sm/os/sm_os_linux.h stable/9/contrib/sendmail/include/sm/os/sm_os_mpeix.h stable/9/contrib/sendmail/include/sm/os/sm_os_next.h stable/9/contrib/sendmail/include/sm/os/sm_os_openbsd.h stable/9/contrib/sendmail/include/sm/os/sm_os_openunix.h stable/9/contrib/sendmail/include/sm/os/sm_os_osf1.h stable/9/contrib/sendmail/include/sm/os/sm_os_qnx.h stable/9/contrib/sendmail/include/sm/os/sm_os_sunos.h stable/9/contrib/sendmail/include/sm/os/sm_os_ultrix.h stable/9/contrib/sendmail/include/sm/os/sm_os_unicos.h stable/9/contrib/sendmail/include/sm/os/sm_os_unicosmk.h stable/9/contrib/sendmail/include/sm/os/sm_os_unicosmp.h stable/9/contrib/sendmail/include/sm/os/sm_os_unixware.h stable/9/contrib/sendmail/include/sm/path.h stable/9/contrib/sendmail/include/sm/rpool.h stable/9/contrib/sendmail/include/sm/sem.h stable/9/contrib/sendmail/include/sm/sendmail.h stable/9/contrib/sendmail/include/sm/setjmp.h stable/9/contrib/sendmail/include/sm/shm.h stable/9/contrib/sendmail/include/sm/signal.h stable/9/contrib/sendmail/include/sm/string.h stable/9/contrib/sendmail/include/sm/sysexits.h stable/9/contrib/sendmail/include/sm/test.h stable/9/contrib/sendmail/include/sm/time.h stable/9/contrib/sendmail/include/sm/types.h stable/9/contrib/sendmail/include/sm/varargs.h stable/9/contrib/sendmail/include/sm/xtrap.h stable/9/contrib/sendmail/libmilter/Makefile.m4 stable/9/contrib/sendmail/libmilter/comm.c stable/9/contrib/sendmail/libmilter/docs/api.html stable/9/contrib/sendmail/libmilter/docs/design.html stable/9/contrib/sendmail/libmilter/docs/index.html stable/9/contrib/sendmail/libmilter/docs/installation.html stable/9/contrib/sendmail/libmilter/docs/other.html stable/9/contrib/sendmail/libmilter/docs/overview.html stable/9/contrib/sendmail/libmilter/docs/sample.html stable/9/contrib/sendmail/libmilter/docs/smfi_addheader.html stable/9/contrib/sendmail/libmilter/docs/smfi_addrcpt.html stable/9/contrib/sendmail/libmilter/docs/smfi_addrcpt_par.html stable/9/contrib/sendmail/libmilter/docs/smfi_chgfrom.html stable/9/contrib/sendmail/libmilter/docs/smfi_chgheader.html stable/9/contrib/sendmail/libmilter/docs/smfi_delrcpt.html stable/9/contrib/sendmail/libmilter/docs/smfi_getpriv.html stable/9/contrib/sendmail/libmilter/docs/smfi_getsymval.html stable/9/contrib/sendmail/libmilter/docs/smfi_insheader.html stable/9/contrib/sendmail/libmilter/docs/smfi_main.html stable/9/contrib/sendmail/libmilter/docs/smfi_opensocket.html stable/9/contrib/sendmail/libmilter/docs/smfi_progress.html stable/9/contrib/sendmail/libmilter/docs/smfi_quarantine.html stable/9/contrib/sendmail/libmilter/docs/smfi_register.html stable/9/contrib/sendmail/libmilter/docs/smfi_replacebody.html stable/9/contrib/sendmail/libmilter/docs/smfi_setbacklog.html stable/9/contrib/sendmail/libmilter/docs/smfi_setconn.html stable/9/contrib/sendmail/libmilter/docs/smfi_setdbg.html stable/9/contrib/sendmail/libmilter/docs/smfi_setmlreply.html stable/9/contrib/sendmail/libmilter/docs/smfi_setpriv.html stable/9/contrib/sendmail/libmilter/docs/smfi_setreply.html stable/9/contrib/sendmail/libmilter/docs/smfi_setsymlist.html stable/9/contrib/sendmail/libmilter/docs/smfi_settimeout.html stable/9/contrib/sendmail/libmilter/docs/smfi_stop.html stable/9/contrib/sendmail/libmilter/docs/smfi_version.html stable/9/contrib/sendmail/libmilter/docs/xxfi_abort.html stable/9/contrib/sendmail/libmilter/docs/xxfi_body.html stable/9/contrib/sendmail/libmilter/docs/xxfi_close.html stable/9/contrib/sendmail/libmilter/docs/xxfi_connect.html stable/9/contrib/sendmail/libmilter/docs/xxfi_data.html stable/9/contrib/sendmail/libmilter/docs/xxfi_envfrom.html stable/9/contrib/sendmail/libmilter/docs/xxfi_envrcpt.html stable/9/contrib/sendmail/libmilter/docs/xxfi_eoh.html stable/9/contrib/sendmail/libmilter/docs/xxfi_eom.html stable/9/contrib/sendmail/libmilter/docs/xxfi_header.html stable/9/contrib/sendmail/libmilter/docs/xxfi_helo.html stable/9/contrib/sendmail/libmilter/docs/xxfi_negotiate.html stable/9/contrib/sendmail/libmilter/docs/xxfi_unknown.html stable/9/contrib/sendmail/libmilter/engine.c stable/9/contrib/sendmail/libmilter/example.c stable/9/contrib/sendmail/libmilter/handler.c stable/9/contrib/sendmail/libmilter/libmilter.h stable/9/contrib/sendmail/libmilter/listener.c stable/9/contrib/sendmail/libmilter/main.c stable/9/contrib/sendmail/libmilter/monitor.c stable/9/contrib/sendmail/libmilter/signal.c stable/9/contrib/sendmail/libmilter/sm_gethost.c stable/9/contrib/sendmail/libmilter/smfi.c stable/9/contrib/sendmail/libmilter/worker.c stable/9/contrib/sendmail/libsm/Makefile.m4 stable/9/contrib/sendmail/libsm/README stable/9/contrib/sendmail/libsm/assert.c stable/9/contrib/sendmail/libsm/b-strcmp.c stable/9/contrib/sendmail/libsm/b-strl.c stable/9/contrib/sendmail/libsm/cf.c stable/9/contrib/sendmail/libsm/clock.c stable/9/contrib/sendmail/libsm/clrerr.c stable/9/contrib/sendmail/libsm/config.c stable/9/contrib/sendmail/libsm/debug.c stable/9/contrib/sendmail/libsm/errstring.c stable/9/contrib/sendmail/libsm/exc.c stable/9/contrib/sendmail/libsm/fclose.c stable/9/contrib/sendmail/libsm/feof.c stable/9/contrib/sendmail/libsm/ferror.c stable/9/contrib/sendmail/libsm/fflush.c stable/9/contrib/sendmail/libsm/fget.c stable/9/contrib/sendmail/libsm/findfp.c stable/9/contrib/sendmail/libsm/flags.c stable/9/contrib/sendmail/libsm/fopen.c stable/9/contrib/sendmail/libsm/fpos.c stable/9/contrib/sendmail/libsm/fprintf.c stable/9/contrib/sendmail/libsm/fpurge.c stable/9/contrib/sendmail/libsm/fput.c stable/9/contrib/sendmail/libsm/fread.c stable/9/contrib/sendmail/libsm/fscanf.c stable/9/contrib/sendmail/libsm/fseek.c stable/9/contrib/sendmail/libsm/fvwrite.c stable/9/contrib/sendmail/libsm/fvwrite.h stable/9/contrib/sendmail/libsm/fwalk.c stable/9/contrib/sendmail/libsm/fwrite.c stable/9/contrib/sendmail/libsm/get.c stable/9/contrib/sendmail/libsm/glue.h stable/9/contrib/sendmail/libsm/heap.c stable/9/contrib/sendmail/libsm/ldap.c stable/9/contrib/sendmail/libsm/local.h stable/9/contrib/sendmail/libsm/makebuf.c stable/9/contrib/sendmail/libsm/match.c stable/9/contrib/sendmail/libsm/mbdb.c stable/9/contrib/sendmail/libsm/memstat.c stable/9/contrib/sendmail/libsm/mpeix.c stable/9/contrib/sendmail/libsm/niprop.c stable/9/contrib/sendmail/libsm/path.c stable/9/contrib/sendmail/libsm/put.c stable/9/contrib/sendmail/libsm/refill.c stable/9/contrib/sendmail/libsm/rewind.c stable/9/contrib/sendmail/libsm/rpool.c stable/9/contrib/sendmail/libsm/sem.c stable/9/contrib/sendmail/libsm/setvbuf.c stable/9/contrib/sendmail/libsm/shm.c stable/9/contrib/sendmail/libsm/signal.c stable/9/contrib/sendmail/libsm/smstdio.c stable/9/contrib/sendmail/libsm/snprintf.c stable/9/contrib/sendmail/libsm/sscanf.c stable/9/contrib/sendmail/libsm/stdio.c stable/9/contrib/sendmail/libsm/strcasecmp.c stable/9/contrib/sendmail/libsm/strdup.c stable/9/contrib/sendmail/libsm/strerror.c stable/9/contrib/sendmail/libsm/strexit.c stable/9/contrib/sendmail/libsm/string.c stable/9/contrib/sendmail/libsm/stringf.c stable/9/contrib/sendmail/libsm/strio.c stable/9/contrib/sendmail/libsm/strl.c stable/9/contrib/sendmail/libsm/strrevcmp.c stable/9/contrib/sendmail/libsm/strto.c stable/9/contrib/sendmail/libsm/syslogio.c stable/9/contrib/sendmail/libsm/t-cf.c stable/9/contrib/sendmail/libsm/t-event.c stable/9/contrib/sendmail/libsm/t-exc.c stable/9/contrib/sendmail/libsm/t-fget.c stable/9/contrib/sendmail/libsm/t-float.c stable/9/contrib/sendmail/libsm/t-fopen.c stable/9/contrib/sendmail/libsm/t-heap.c stable/9/contrib/sendmail/libsm/t-match.c stable/9/contrib/sendmail/libsm/t-memstat.c stable/9/contrib/sendmail/libsm/t-path.c stable/9/contrib/sendmail/libsm/t-qic.c stable/9/contrib/sendmail/libsm/t-rpool.c stable/9/contrib/sendmail/libsm/t-scanf.c stable/9/contrib/sendmail/libsm/t-sem.c stable/9/contrib/sendmail/libsm/t-shm.c stable/9/contrib/sendmail/libsm/t-smstdio.c stable/9/contrib/sendmail/libsm/t-string.c stable/9/contrib/sendmail/libsm/t-strio.c stable/9/contrib/sendmail/libsm/t-strl.c stable/9/contrib/sendmail/libsm/t-strrevcmp.c stable/9/contrib/sendmail/libsm/t-types.c stable/9/contrib/sendmail/libsm/test.c stable/9/contrib/sendmail/libsm/ungetc.c stable/9/contrib/sendmail/libsm/util.c stable/9/contrib/sendmail/libsm/vasprintf.c stable/9/contrib/sendmail/libsm/vfprintf.c stable/9/contrib/sendmail/libsm/vfscanf.c stable/9/contrib/sendmail/libsm/vprintf.c stable/9/contrib/sendmail/libsm/vsnprintf.c stable/9/contrib/sendmail/libsm/wbuf.c stable/9/contrib/sendmail/libsm/wsetup.c stable/9/contrib/sendmail/libsm/xtrap.c stable/9/contrib/sendmail/libsmdb/smdb.c stable/9/contrib/sendmail/libsmdb/smdb1.c stable/9/contrib/sendmail/libsmdb/smdb2.c stable/9/contrib/sendmail/libsmdb/smndbm.c stable/9/contrib/sendmail/libsmutil/cf.c stable/9/contrib/sendmail/libsmutil/debug.c stable/9/contrib/sendmail/libsmutil/err.c stable/9/contrib/sendmail/libsmutil/lockfile.c stable/9/contrib/sendmail/libsmutil/safefile.c stable/9/contrib/sendmail/libsmutil/snprintf.c stable/9/contrib/sendmail/mail.local/mail.local.8 stable/9/contrib/sendmail/mail.local/mail.local.c stable/9/contrib/sendmail/mailstats/mailstats.8 stable/9/contrib/sendmail/mailstats/mailstats.c stable/9/contrib/sendmail/makemap/makemap.8 stable/9/contrib/sendmail/makemap/makemap.c stable/9/contrib/sendmail/praliases/praliases.8 stable/9/contrib/sendmail/praliases/praliases.c stable/9/contrib/sendmail/rmail/rmail.8 stable/9/contrib/sendmail/rmail/rmail.c stable/9/contrib/sendmail/smrsh/smrsh.8 stable/9/contrib/sendmail/smrsh/smrsh.c stable/9/contrib/sendmail/src/Makefile.m4 stable/9/contrib/sendmail/src/README stable/9/contrib/sendmail/src/SECURITY stable/9/contrib/sendmail/src/TRACEFLAGS stable/9/contrib/sendmail/src/TUNING stable/9/contrib/sendmail/src/alias.c stable/9/contrib/sendmail/src/aliases.5 stable/9/contrib/sendmail/src/arpadate.c stable/9/contrib/sendmail/src/bf.c stable/9/contrib/sendmail/src/bf.h stable/9/contrib/sendmail/src/collect.c stable/9/contrib/sendmail/src/conf.c stable/9/contrib/sendmail/src/conf.h stable/9/contrib/sendmail/src/control.c stable/9/contrib/sendmail/src/convtime.c stable/9/contrib/sendmail/src/daemon.c stable/9/contrib/sendmail/src/daemon.h stable/9/contrib/sendmail/src/deliver.c stable/9/contrib/sendmail/src/domain.c stable/9/contrib/sendmail/src/envelope.c stable/9/contrib/sendmail/src/err.c stable/9/contrib/sendmail/src/headers.c stable/9/contrib/sendmail/src/helpfile stable/9/contrib/sendmail/src/macro.c stable/9/contrib/sendmail/src/mailq.1 stable/9/contrib/sendmail/src/main.c stable/9/contrib/sendmail/src/map.c stable/9/contrib/sendmail/src/map.h stable/9/contrib/sendmail/src/mci.c stable/9/contrib/sendmail/src/milter.c stable/9/contrib/sendmail/src/mime.c stable/9/contrib/sendmail/src/newaliases.1 stable/9/contrib/sendmail/src/parseaddr.c stable/9/contrib/sendmail/src/queue.c stable/9/contrib/sendmail/src/ratectrl.c stable/9/contrib/sendmail/src/readcf.c stable/9/contrib/sendmail/src/recipient.c stable/9/contrib/sendmail/src/sasl.c stable/9/contrib/sendmail/src/savemail.c stable/9/contrib/sendmail/src/sendmail.8 stable/9/contrib/sendmail/src/sendmail.h stable/9/contrib/sendmail/src/sfsasl.c stable/9/contrib/sendmail/src/sfsasl.h stable/9/contrib/sendmail/src/shmticklib.c stable/9/contrib/sendmail/src/sm_resolve.c stable/9/contrib/sendmail/src/sm_resolve.h stable/9/contrib/sendmail/src/srvrsmtp.c stable/9/contrib/sendmail/src/stab.c stable/9/contrib/sendmail/src/stats.c stable/9/contrib/sendmail/src/statusd_shm.h stable/9/contrib/sendmail/src/sysexits.c stable/9/contrib/sendmail/src/timers.c stable/9/contrib/sendmail/src/timers.h stable/9/contrib/sendmail/src/tls.c stable/9/contrib/sendmail/src/trace.c stable/9/contrib/sendmail/src/udb.c stable/9/contrib/sendmail/src/usersmtp.c stable/9/contrib/sendmail/src/util.c stable/9/contrib/sendmail/src/version.c stable/9/contrib/sendmail/test/README stable/9/contrib/sendmail/test/t_dropgid.c stable/9/contrib/sendmail/test/t_exclopen.c stable/9/contrib/sendmail/test/t_pathconf.c stable/9/contrib/sendmail/test/t_seteuid.c stable/9/contrib/sendmail/test/t_setgid.c stable/9/contrib/sendmail/test/t_setreuid.c stable/9/contrib/sendmail/test/t_setuid.c stable/9/contrib/sendmail/test/t_snprintf.c stable/9/contrib/sendmail/vacation/vacation.1 stable/9/contrib/sendmail/vacation/vacation.c Directory Properties: stable/9/contrib/sendmail/ (props changed) Modified: stable/9/contrib/sendmail/LICENSE ============================================================================== --- stable/9/contrib/sendmail/LICENSE Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/LICENSE Sat Feb 1 23:37:03 2014 (r261370) @@ -1,9 +1,9 @@ SENDMAIL LICENSE -The following license terms and conditions apply, unless a redistribution -agreement or other license is obtained from Sendmail, Inc., 6475 Christie -Ave, Third Floor, Emeryville, CA 94608, USA, or by electronic mail at -license@sendmail.com. +The following license terms and conditions apply, unless a redistribution +agreement or other license is obtained from Proofpoint, Inc., 892 +Ross Street, Sunnyvale, CA, 94089, USA, or by electronic mail at +sendmail-license@proofpoint.com. License Terms: @@ -35,12 +35,12 @@ each of the following conditions is met: forth as paragraph 6 below, in the documentation and/or other materials provided with the distribution. For the purposes of binary distribution the "Copyright Notice" refers to the following language: - "Copyright (c) 1998-2012 Sendmail, Inc. All rights reserved." + "Copyright (c) 1998-2013 Proofpoint, Inc. All rights reserved." -4. Neither the name of Sendmail, Inc. nor the University of California nor +4. Neither the name of Proofpoint, Inc. nor the University of California nor names of their contributors may be used to endorse or promote products derived from this software without specific prior written - permission. The name "sendmail" is a trademark of Sendmail, Inc. + permission. The name "sendmail" is a trademark of Proofpoint, Inc. 5. All redistributions must comply with the conditions imposed by the University of California on certain embedded code, which copyright @@ -78,4 +78,4 @@ each of the following conditions is met: (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. -$Revision: 8.18 $, Last updated $Date: 2012/05/15 21:49:03 $, Document 139848.1 +$Revision: 8.22 $, Last updated $Date: 2013/11/23 04:37:36 $, Document 139848.1 Modified: stable/9/contrib/sendmail/PGPKEYS ============================================================================== --- stable/9/contrib/sendmail/PGPKEYS Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/PGPKEYS Sat Feb 1 23:37:03 2014 (r261370) @@ -142,6 +142,184 @@ gpExpdV7qPrw9k01j5rod5PjZlG8zV0= -----END PGP PUBLIC KEY BLOCK----- Type Bits KeyID Created Expires Algorithm Use +pub 2048 E2763A73 2014-01-02 ------- RSA Sign & Encrypt +fingerprint: 49F6 A8BE 8473 3949 5191 6F3B 61DE 11EC E276 3A73 +uid Sendmail Signing Key/2014 + +-----BEGIN PGP PUBLIC KEY BLOCK----- +Version: GnuPG v1 + +mQENBFLGB58BCADFOlIYbhlAZ1URaoyfEHLgrm/bHeZufZO3jp2eeuDIkt4Z8csa +eLkwomo/UtmUNXkn5rlUacRjyuhrDgVyuhYVeqq+tVbGccrjq4TM+5dkDTtQvLE5 +sEF3pbNYiPNJwPnqMfGTVmSouR9gGJGgttPubFDp/2jTpuFYZbcDSo+hoI9m5RAH +aWe+MhFC0r7RZTv5pY1CG3GSODaoz2XIQ/dDJ4WKZFeEvDPQnpLY4t0cb0hVcxYO +XVZZs1YmS2sEJirwJ+rpxivX4eyVKSO9Vjidh6cvmg2UdKfNoXXd+G9r0DR5FSo7 +hQHlOCrLFQQ5YJ3thGNl/fw7wVXVs34Nj7QfABEBAAG0MVNlbmRtYWlsIFNpZ25p +bmcgS2V5LzIwMTQgPHNlbmRtYWlsQFNlbmRtYWlsLk9SRz6JATgEEwECACIFAlLG +B58CGwMGCwkIBwMCBhUIAgkKCwQWAgMBAh4BAheAAAoJEGHeEezidjpzcRgIAJUZ +4J6yvykcpgrIS8ZjDz1ab2sXtBx0ZjI5TxxnIwg9RQb5YkEk2/9tPo0ZwNUTDwz6 +eVENR++Bv3VXs32RnRiFNy1Mm2hhULh4ifgqT6Sy7zRk/kwiKuj6xkjAGZV71QmD +ukFIpVaWAQwiFkDgqM3LbxZ1sisbvvA8M/zJq66uGg09Lu9CKcwjKDfy+UW1E8Ub +SRzStTRrpvCH400q/Pwv3mOA43+H6Un4fZfCOcZeo22rSgT6D/FEY4LMdNnMLYuU +zPkpx7cKvQa/AcMdjoGu38g364JxlDjxjE6M+XBym8Tx6j4res7o0W8TGW5g+rEv +8X9i7uxdnEfYBlNAElGJARwEEAECAAYFAlLGCCIACgkQPWiyXVIHytM4QggAtF+W +cXu8pJi3+OAoPmj+etgIuLhJ2GOp8qNK8yvwTEwiNwtenjennlW3ETHiCbtfQ0/T +Z9rq5elhANsfp8LsXGoJ4ic6KJlDEhCrKa76jwEeECI74E60TpG0z64pHMmUhk7l +eAUckCOvW7iHIBJVA7ZM8oII04ipPz6qJfJrUWkJbfZh8VV5DRp7zKAFT+URgSUc +bdAbLjyC7AohynNVxir90UoT+wo06GPMDpeA5+fS0VZxKAwKv2P0mRZAK63yzEJz ++VK3GCHLPCWJvHoqx4KSutk2mIpZ406T/BJEphkGN0BHHiUmIr9qfX/87klA4i9K +dHvzFr6qFBxD78XfuIkBHAQQAQIABgUCUsYIMAAKCRCOWun7zu70Ox9XB/9IP99U +LScSFiDgoZQr3eMztpc2NLIS2bGO1iX7L+9VInPCob7Se53MpaFrDWNna53Xehwf +NbaqsCQrG+OIMMwhRc0x3QCoXQUchA/JyAUIojfOyoFUZvlyZStRGOp2TBRrJnmb +l3iWz3pStqqtvqag2d3YxowqGqUvlRzAXTFmgjcnfMcJrxb9f3n6Nf84QpxLHxB2 +MgOgxUCHXMtJ4WxFHAoINize+P/P99U9mpyn4ewTnSaFzcmemqoVT9yZUDYUYrap +Bm4Xp0Y92IzoNpJgKBZLwXihisuI4alY/hBopo5L89vms2BwesQuh/4Tr6SELwFx +zX63E++tz1TqHleWiQEcBBABAgAGBQJSxghsAAoJEDmkx32peISwXiIH/3suKuiQ ++KqQT10UdBoNg6m0XinG4IG2MghRRcdg2Q8ncCfMFJPsKQcPdjiUuuUIYtD7CE+O +SwQ9N+6vZlsk3Zq2I8rPEwrUTmZ1gDcMK93MafNS32Xt7FmCY6wpMCkpmCLd9sjb +7rj3uZdv/aI6Is76z6dKTfxJWBrbsUQNncASn5JyCXrYj9eeGP8gHX2KCkyPBF4u +kHFPgdzYevCfZeP/+f/cdRwF6bAVaHiEZ2S/Vg6r3Z89vgd+wNKnNsljEiacYWuS +zxouEn0eWQj9kC3bXJgqXH+HLrEY8NAQ5EQWjd8bzIhzCTA9MtL+N1b0Ep36gNiw +YFB5b/b7KlbEPsSJARwEEAECAAYFAlLGCG8ACgkQYE378oVBCr4XDAf/auf1ljzq +w2khe1L/1ANvtnugMP3sVJEPU2nDUnCK2+c0G5INnWc+c7DEFsaLHgcs2eN/w80a +adInDn9lFw7DtcvZr3xL8q+b6j4i4jucjT5WVfYHbvc0xcKfpEjRge4oV3XR73SU +ztdTWZZAlds4Xvh9pojjM90fBu5uDqfpRM3/vNTQ9EWvjcCGKusWRTwgdfF94cHN +CeSe8PCo7sil6MtBBoujmLldCKZaLC08NLPX3yTGzNmuLyNZj9WgwPoK++XTxJly +0j9EJsO28ZxmNCxsZyGA+1D1NuRurQ5FXIUHUfz6taP8FHSDt95cOiirmCMOAjT4 +UFtGAZFlbhzxroicBBABAgAGBQJSxghyAAoJEBKJbpunfyQpyFwD/1fp8qgb6zvn +dIoTUoVWahI41Clt65cA2d1Ib1IbJJ4ms9cxNbFMTvbpPQ4AXOz1t7x2uS3YDmq5 +IxdWLr6YPSMkGmtpF2CD1HwSLcUwtKcIFrb8a0EN8Z+sRKu7yYg1vMxc7LmmOBUX +x+j9fm/1OFGIHYnUEb9GeKFf91cK0VAIiJwEEAECAAYFAlLGCHUACgkQ2Krwyvaz +BylxvAP+JuZQFPnk6l4SKHR/3ZWz56fOqZ6Qv8cgUCFY5AY9OdSE7aU2zVjZTjd1 +dJzVD7xc/9h8OW4HakfwcNnfAqdQ4eNdox5+uydXwU0CXJqU8QxGPaCSRkB1Thb5 +aMik5S01lzra4s6dF0iMC15I5v0PAznykJO9Sq4qhMLUCYTxFiqInAQQAQIABgUC +UsYIeAAKCRCXQwEYcJO4QeDXBAC2hVO1j2dyQfkHr8eLAg/P+2qwZ1ZaG4jxItol +vF91lfGNCaG3RWB9iPRIkz5B+lSoh4mSPGzJ3cFDgB53rRMpFUa0qhiUpVaNuPMY +BSrkxYb00amJcFoXX+yE8soeu6BZ1cazg8GEkbjFbboqJMts2M39dD3c4ikbU4Op +v9ag1YicBBABAgAGBQJSxgh7AAoJEB57s8ivlZYl1w0D/1AySnzhz5PKQo4Wh9QX +qX+yMVBT3rgVO6EgR8ShsyMhZX8GwEEGPueDAh8MLGPqQZbjXq81QMeVk6TSUCQx +XbhHxyGJJTVDxxJxFJZ7f8y05PjppTA6TL2aKYsZLkWUPEq5vKocE2VAmYldwvRS +Ez4oNLWQD5dw05DPzVsJ2/49iJwEEAECAAYFAlLGCH4ACgkQcKAkTR75klFOVwP/ +fxmc8/ckreAjz7C3oarAHlWgAUHrJAAtG1MEgXN6FtzGZyzj7jsC4HI8A5nfwIWx +A67jktU+6OpySrvIv3gRF1OAV168Q9IE8KszvnJgl6Gknf/KuiwpthWHpKztn9lF +vealu7JKqI+3D5m33SqcWUg8SThfnGBoZOZGOnGrw4aInAQQAQIABgUCUsYIggAK +CRDI1e0plfYXcf9oA/44QISEfFkqab+NIIgKW0SHqJDmI5QvVkcCO1Ct+/TkhGVO +I68XKLMaNbzerl+BF26gU2IYCs0axa9hlkl8IJLokZhEPSRPDuSP2PG3GjaFsgnE +5OK6aaVvjrEwaXe8v6rOYLmavnhZtOKg3H8pOl74KhFy1i/ZwM9oVfD4sfLhxIic +BBABAgAGBQJSxgiFAAoJECGD4bE5bweJnYsEAJUX07KH5tI+OfmhQ+WCFuU2as+r +I39oH1BB0W44fEhTj/yJFVqGSt4e3OBlP+SYqIM4DxPttxNtfQ9448rbzWLCdL0c +KGOM2y9NT/LoDi1JQ/IVLYvuIyNnPViAF5JQ96NrmJH+3SaC6goK6HY6D2Oh3iyO +1VGIhjOWyJr2+5ZjiJwEEAECAAYFAlLGCIwACgkQiWliuGeMCgNvkwQAjrrAjFyh +pMepbLnRlxi2gcLqdmLcaub6AaRzCGDaYQxNFtBd+vLt0CtgY7sILahcMX6hLT53 +z4zCHoM93DM3jBoJehC0lH6/qd3ZAcW9vcSxk5ws97K6sbMXWIfqDgTUXaArOvKG +GHE3vsgaLvAQ8nz0QaVkwgSIQfz+vBDjlM6InAQQAQIABgUCUsYIjwAKCRA4IttH +zDdPLdPdBACoapJIpeNLyL9szztPzznIIxNbeuFJVfJRAE+pZ08y5YKVtGWArUcb +GBXlZC5FrVTqV3ptIa72ALApIZ/M4Awnk3C3XyjMioKemv7I+cOj5DqRgkR/hsAF +7YSAg718twgv8W2Ssy8i2vOlAoazxzN9bhVl5cSny5aeUnpLwK0WMYicBBABAgAG +BQJSxgiSAAoJEJwcveLjXFY1DnoD/iFZ3zhzwIyWUl17pESa7H79tbcpmRyelH5M +vH51sEBl27yRRKrsx4oayaumUT7W4JVoQTEYH54unN6fSBqKK9VyxzlA+v8PJjTG +43MhtMG5lc5B1fKXFer1SpxuoR5h3Qdi4KSz3yh8K8g5KKtciPBx5kEXSTm6Nycu +wkrCRYZLiJwEEAECAAYFAlLGCJcACgkQb1KT2KObplUY2QP/T2Zt5U2cl0usnYck +wmMF3ZAzmcfhsxMkVgxxL9AkVJh9dHhLSYFWN6qhlkZwiW6UhhKoINfEpb8gOcBz +rdb4u8yrWqIS726GqE/gnjYUf5CX22mOPWry8CPuWesRVpr832TzS5wxlBQzRMSS +MVn39IPfIQnC6UQ3tPChruwwZh2InAQQAQIABgUCUsYImgAKCRDvWJZk1DLhnUOZ +A/4qp/HD/+V1zpewexP4wL+bLA9Y6X+y2UWAh7eZCBQvXOhVAYcHxpmWgEfHuS+c +iHYqCc7hz+1AiKV8AfVk6RX0k9Oli/IMbM3ijv3uIl+5JF765oXUAB3RWg6V+MlJ +VhOVkBHXmBuhFnfVPeR5wNPpQ58d9LwsZtU11/Y76xzOUYicBBABAgAGBQJSxgie +AAoJEMGcHSUS00YdL7MEAK/BtyOdoFA/8SBA+8EOG8nd5NSlGNZUBnTlpWqdphkR +SLRrb1gLGr41ND2yvg/ElTti7m1D7+7VUnwCXM5wUO/RZuZx2uDYRCdDXj5WBhcg +3wsHO3IPGGTbCukp9fLcthBQ46PDewlUVo6gPWhjWG/oC04XYeB3+f1f1zGAai+s +iJwEEAECAAYFAlLGCKMACgkQwCnKQBb0zOm0CAQAhwRycBvn1kZB8cjBVw0a74Xu +rjQrMVqmKM0LW/UzoVscB0W2KxZnvCLcw8N87CnnoSAO3MSnb/vPPhtnQxVe0IBA +4yoe9acWJvmtIjw4JFDKioVPtEy+pcg5EDlyqNHj0He/Cmbirxbvy2XiGB/Y/lxu +t1kad5ZYY/F5+X4hbyOIRgQQEQIABgUCUsYIsQAKCRAY9QOAJMJ4ArQbAJ414QQw +60cTU3tVbBTT/l/sRysTXACg1ggZJszRL0P8Yy6WOryQ+r5Fg8yInAQQAQIABgUC +UsYItwAKCRB8S2dtoA4VY3VvA/4i7bKzYElfVdTIj0IgHfd1zneeDjJoJP5tmf7F +ElWIkENFVkKQ+tUBO2d/qMK8h+aj3brDcve5A1LUIsD5leE+igke8SjVF9/fwN4U +8Mpqrvaw+CX7zGMnt6J075OD7mfU7hZkSpDhmOEMaEzaviei2rovBgaNv7tOlgrk +J5nCo4icBBABAgAGBQJSxgi8AAoJENbgof5PvirdqiMEAKp3kzOjTetlDWAqK0BY +u1kSTCLzO8jFIq620dT0BqorZ5nvxwKovog/FgrZ0LlywsjlwOGCAFo3aW7WTEyt +7AwlQvUScAbPuZZcyZxKwQ9h2O6C2K2RPVIIHQusLRVcr+oGgqMoNjpSxOOxfJuj +hT6fXHK5SayZSQEiZyeKme12iEYEEBECAAYFAlLGCMEACgkQIfnFvPdqm/UiSwCf +d7Y5AR2m6vK5drJEaqbnv2tmXzcAoMhOg7eUPnYXr0Uwpo/61oHAPUTwiJwEEAEC +AAYFAlLGCMcACgkQvdqP1j/qff1p6QP/TkEC+SJr4YUPy/0cLsSr9j0uPfvke+Qx +U0RWynv4BMU05TKaBeZiVG25iFsGERW0drxiisPkcgMTq98wE7Q23Qtk+Fg8amDn +6c0qEj0S4xd/DfHPhcznHjjkhiTftSmeMGHDMF8M5+ZBSlJyM6M1dtTlceU88ZYu +Vv89Iz9nnmaJARwEEAECAAYFAlLGCMsACgkQvSdtLm/PqIVOHwgAvKy116ykGuvC +LlxCVx+RfIjhaXa5OTtZhLc7YkXgaNr4UmcvNZtGwQLUEjDO4fVCF/7bSrryZ6Fr +PZBNTKQRwbqH8UksQ+6hIbTBb5ZGcpKQPdIqEWjRjCoDah2EI1ln/JI8WY5NoA+V +iuBd07msr49qevHgGEex5dX7NKOu6nuvefaasVDODNsiMp2QZmIlP7XJw7VKkiEx +ov93DGImxD4o8r2Etzo1Lt5/soNzw26etSRFhoGHRdW2mlS5QFjebV+PNAxwvRrI +a+5CjoA/vFfwxV+RZlvCLhzuEsBIzw6yenfNEd37bzqJq/7Jp7kQCe463o7ujG00 +k+ObGvq/YokBNwQTAQIAIQIbAwIeAQIXgAUCUsYZQgYLCQgHAwIGFQgCCQoLAxYC +AQAKCRBh3hHs4nY6c/AjB/4rt17ezRHDxuDuS7+waPC9N6eXAQCbwdvkYd/v0bWe +5jHgknMHR9OyGU9JKA4boJCtJNUvceAmzBtynqxy4hR6rmCwCmFW3AIK31iu3frz +Zqq84XK791voKMMrvnux0OHqq2l2mYOSNXUeVNQeyDE6HbKXFUiWhRZl36UndVaE +XhdDnKpxseMpYZsECW1+x1GxbUHFRx6tSiqzgLSNU/SsgwgttHwyqEdW0sr63r66 +7XSoMKvEgIhb36hJ7AIaFNWasLnnLOTOWR74IHnJ68FpordYm7lnmT5Vg/ju9y29 +JDwfOcNroCao6tTjyXcM6KmIssQPavTDLK/I6XgVr9QziQEcBBABAgAGBQJSxwGo +AAoJEBCQryClqlvmWGgH/3CsqpTEKQW3FL/jughz3Yt8vmgqmlj7ZbTaVehIKRU4 +iL2XOlgAu3JISxCLPkdz79qcMSkZsOJtTGwA1yjvw/yx7oSznvW+jgNZ+fNOuT9w +c6YKGSm0KbGGOFzjzoCsnIpoVEVuJwOS/zqGY349WR5dyaY4pEL42StfqLLtHO7I +IJMKRcubedgZSogT9iwhin+sAGi60Wjq0pX240UQG0bgSB7n+/+7NT64u9yRyPwZ +9B7Y11smlCw0jIlJD/P51rFgFciG/BdYyPfRHToe5CjOI+1sFxJYuOQI25o9/Syg +7MMzp3ym2IEjIi3poBwfqZRlPDb5nHfu4vnSntPrwcWJAhwEEAEKAAYFAlLHCkcA +CgkQ8Ar26sJF0gu9AA/9EXGIp5BwAYXNtlrI66nuPBwbPXHIVXocnlu2O2Kfzc9W +Lvl3e5eSi61/TCOPNM4ParKUT9utxq9Sd01WO4GuepQFOiSfhMfKb7ORd0cKfWuM +9shAKHsTbuAopO9R43jv1QnE+yL1xpM85JaGxI2pWf4XIpL32ZZ0s7s3x1fklNMG +7ObB5dHr66M/V/GXZSx6rTBWhODm34W07HcXqDdwjVT8J/fo+3kkY9eXYuVfpl8t +bVV6g8DK1zMkQiQBHpN0DCZUYB9WoJgCKFsTvVUElRyMY5sd2bkyAktA2df1EBSH +kMXzqn3py+n3YzRY3VpsNUV3WkDRfU9SIdJd8g88muZeL9namSr/3eHTjdaMoCyL +GyyUpy5LrD56k3QWeXDWVynU9lXuxaiJDntP6A81d6vaIBtm8AFVihtJFoufHot4 +crmPqKtH+MQ9G6xwN5Az9okXKg7HGG9ZD82s4D/X5plN0OH5pMeYLrOQI+oEhjn2 +uK67y0Zl/eqoQcnVDy9PFrynuSVBC5/BTGNbebQrTDrIsQo0m0LMYO3mUzMBA7SO +j9iA0vmXxIGsPzf8lRu26odcahKWswRE492MZiTJlul+HWYmun1b0XJz/4YDWL5l ++kUVLnl53o2aHVlTkmPEMg/mwufkxTayJrtl3kL6oun7e6jUjaCRao9eLFZWtGWI +mwQQAQIABgUCUscuQwAKCRBfHshviAyeVYy3A/ig6XKOyU+RC/+4HtFxvL5osE9T +w/9JlY78umlNish7CJo0Sbka4nFipd6Iw/xcYiAQ06TuS5NDwdmcuoZoUpDAqbLP +r/pWpBy9IAUIzAa1UnyvYTDBp2NS3nxcWnzEpXk/dDyYMKX0gUsrDjE9ZTpsKeMq +70Kgq7lPtH6EfekmiQIcBBABAgAGBQJSx12BAAoJEG8PnXiV/JnUMB4QAJu5xu2F +ej5QSiIXlZw8LD/uzx3UEQocQy4eGPtwTxeYogt9FtbdblRYb6Y8qc+Uyk6fLBxB +E+gclk3I2GnKnpqjtdG5utJnAbvynqfgoE81tuC7hjxKYPaqGTJotwX4IsV8MZZN +D6hduw1hxCWsnckS/6jnVrJxThKqlKEnnFqLE14W1WTnKIqh+dXYdnqn+MEMXZhK +7z68TLteASvT1S9i91Kof7gmfe6hL2wbzPAtils6+gJr0ZfxxUTDzFL5hFulypzX +GgW4VemsZLRz6hhevPiWSRIGCG6xO/boGPnlOQt6Fv2mReBiuIidSia9S1G7G8KF +36ya41RrS6157dgAeSGGUOAzGkvamqlJozlTo1dl8eD08x5G2cHKL/H2oviaE1hr +CgZypLuhPisW2Yd99WMndMV+jrbkNXcORVdYQO/T0aP0vA7zNrTv96shcpNoT3q7 +nWDuGvxjOic8sSX/MxR7F+4UqZO9eZGziPnKDrv1fp17CWWmBBvJHWhFXfPF9nPu +vej6q3Eq49pq3oDuIbtV+1GaMKLre1fzMzqyz1hQ+esByOKi/cAH+QzkbXUC4KyL +q45O/UfNR3hYZms36n05729qF+hW6tO2ZGd43k7kSVgYHj55BIr942dzWMvg7BUY +aWQqYiahIfDxfBXz+WvW5gihr8In24L6dYXDiEYEEBECAAYFAlLHhgUACgkQCaei +StHlggeAhgCdG3L6GRFUho2VtUOx+uaGsvj7vvUAoIahAtf5fb8mSfzceNr5neXd +FgnpiEYEEBECAAYFAlLINaMACgkQxLEHmIV5aiNLbgCgoJYeWDcldLWYU1MH+uvo +Ll4ThV0An0PZNMtCd6gwGGhGd9iMRqHzVpQQiQIcBBABCAAGBQJSyoYqAAoJEIvo +ebAocx4cLO8P/jO9GWX7PSI+k21P4NIjSc6VHYv8MMa5H36NWe8wnoUSUr8FKvUh +uLOI1bDamRZBdCWSuMf3gcWNiwVi3FKJqH/tAdjD4Mc9NaL2DJwKgHH3IlSwV+jF +Hz9OvkEzfo8RT0zVkbt61tMhrNCK7wRw/QrjchixNyJH9YIifV2huppwbgHl5YH7 +7wYJ1thhIgyw8kSSKHFi3yJzy2q1qZ6hwcCCkUw2K9VgYV+0Y2plSkkc/OsoBUsU +JSNdCOSAzpwAmFuSpT3YVlwWnknJu0vV5BPUL/dJTeYLbhyxfXWiWDiF1tiBWHMS +KvUJowbW9r2CZ/FQx4V5hXKMfCupuDJpmCvIiDfRPGfuD4+4vJ+EhAp2TEyRL3HX +7BAlQ/95TiS22AhcFqn7Zl+9tS1vUcj4xLmakPQ2REKgBqiUrVDu+GvzZY0A6V6k +J6LNc+ncaLX+B9lYqqMQmxLyRK3JySpHWgC2ZPoyje8GR4ksf0IlvrRufFMj1Qyt +/a8Jc1Z2mXJR3PRrsL7EBDdp7Xl8BGqnjShZgIvKPDt6+nCIqsv13OjWaUBl+CKg +eZcDMt2nZGUfu4KJD6ktJ9nvthrocWxL4dRhFM7s/R9ad1IdmySoBH9SnUuMgM8e +bKQ5FnVqNiy1Z+JrsigPvb671KJ1MA9n2rPaBhY1cNYaaavIbKkBzDDTuQENBFLG +B58BCACe6UEcbxy5q6rIPXZikT4WCg6bw3AtdT/MeLUCmxWhhP9g+T3i0t7zU6bu +Zcw1uFxjnKsMEeDBHwdI0Bg9r5EVtp77GVf1EGrveKvISURlktkBtcezTVRfukEM +mTXBt/3vMGLg+AadFGZTU2ciKdO22AxLBZWVgz0ICoO/ljtvEFokrrzwDoF6ySHX +3Taiq/aMqI/RjIRXXMq6u+/oVC6droj10eZRYXGPMl7og5MRSUU8waV2fYgtfLmw +BtVEFbd0LPO5L1BNgIIMBx1X/QzMeBTldT+XcDSYh9ELfMJoynnVz0smZbeQ2PZ/ +DhGsVsLvJc+cx5cDnBKsPrejCTXBABEBAAGJAR8EGAECAAkFAlLGB58CGwwACgkQ +Yd4R7OJ2OnMzXAf+LxzrPplcEyIDKOoGW21320AwH5NqjInqj49K0gGhOL/xNkfs +C1wsiFFESdN7eL1+aDdk68CF1ClJagDKkH3U5o5PiPSjCsGBoGpdI6f7mRlxbUT2 +jQv0QC9Qav+9t4QcyBC/1BvwO1e7fgrpFLvBrXJpj4utHBP/R3WUo04kAp+sPbVk +tOEByvXAHkDDe0KAG2G9A0dLqF7kfydoSaioFmoJlkAu7LCwFLFbFZ3JRFAaYEQO +DfwkgPDDOA6k9Y1o+nbk/TgyEj7PtpzkiWh0aK5BRI8mjA/s0XNZKpuY1sghyASo +XvRQkAGPLcqS1D4k+kW3MLWpxjbSwGi8FCdsfg== +=d3FT +-----END PGP PUBLIC KEY BLOCK----- + +Type Bits KeyID Created Expires Algorithm Use pub 2048 5207CAD3 2013-01-02 ------- RSA Sign & Encrypt fingerprint: B87D 4569 86F1 9484 07E5 CCB4 3D68 B25D 5207 CAD3 uid Sendmail Signing Key/2013 @@ -2435,4 +2613,4 @@ DnF3FZZEzV7oqPwC2jzv/1dD6GFhtgy0cnyoPGUJ =nES8 -----END PGP PUBLIC KEY BLOCK----- -$Revision: 8.43 $, Last updated $Date: 2013/01/18 17:40:21 $ +$Revision: 8.46 $, Last updated $Date: 2014/01/18 00:20:24 $ Modified: stable/9/contrib/sendmail/README ============================================================================== --- stable/9/contrib/sendmail/README Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/README Sat Feb 1 23:37:03 2014 (r261370) @@ -1,7 +1,7 @@ SENDMAIL RELEASE 8 -This directory has the latest sendmail(TM) software from Sendmail, Inc. +This directory has the latest sendmail(TM) software from Proofpoint, Inc. Report any bugs to sendmail-bugs-YYYY@support.sendmail.org where YYYY is the current year, e.g., 2005. @@ -37,7 +37,7 @@ the latest updates. 4. Read cf/README. -Sendmail is a trademark of Sendmail, Inc. +Sendmail is a trademark of Proofpoint, Inc. US Patent Numbers 6865671, 6986037. +-----------------------+ @@ -465,4 +465,4 @@ sendmail Source for the sendmail program test Some test scripts (currently only for compilation aids). vacation Source for the vacation program. NOT PART OF SENDMAIL! -$Revision: 8.95 $, Last updated $Date: 2009/04/10 17:49:18 $ +$Revision: 8.96 $, Last updated $Date: 2013/11/22 20:51:01 $ Modified: stable/9/contrib/sendmail/RELEASE_NOTES ============================================================================== --- stable/9/contrib/sendmail/RELEASE_NOTES Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/RELEASE_NOTES Sat Feb 1 23:37:03 2014 (r261370) @@ -1,11 +1,58 @@ SENDMAIL RELEASE NOTES - $Id: RELEASE_NOTES,v 8.2024 2013/04/19 15:01:58 ca Exp $ + $Id: RELEASE_NOTES,v 8.2043 2014/01/23 20:27:19 ca Exp $ This listing shows the version of the sendmail binary, the version of the sendmail configuration files, the date of release, and a summary of the changes in that release. +8.14.8/8.14.8 2014/01/26 + Properly initialize all OpenSSL algorithms for versions before + OpenSSL 0.9.8o. Without this SHA2 algorithms may not + work properly, causing for example failures for certs + that use sha256WithRSAEncryption as signature algorithm. + When looking up hostnames, ensure only to return those records + for the requested family (AF_INET or AF_INET6). + On system that have NEEDSGETIPNODE and NETINET6 + this may have failed and cause delivery problems. + Problem noted by Kees Cook. + A new mailer flag '!' is available to suppress an MH hack + that drops an explicit From: header if it is the + same as what sendmail would generate. + Add an FFR (for future release) to use uncompressed IPv6 addresses, + i.e., they will not contain "::". For example, instead + of ::1 it will be 0:0:0:0:0:0:0:1. This means that + configuration data (including maps, files, classes, + custom ruleset, etc) have to use the same format. + This will be turned on in 8.15. It can be enabled in 8.14 + by compiling with: + APPENDDEF(`conf_sendmail_ENVDEF', `-D_FFR_IPV6_FULL') + in your devtools/Site/site.config.m4 file. + Add an additional case for the WorkAroundBrokenAAAA check when + dealing with broken nameservers by ignoring SERVFAIL + errors returned on T_AAAA (IPv6) lookups at delivery time. + Problem noted by Pavel Timofeev of OCS. + If available, pass LOGIN_SETCPUMASK and LOGIN_SETLOGINCLASS to + setusercontext() on deliveries as a different user. + Patch from Edward Tomasz Napierala from FreeBSD. + Avoid compiler warnings from a change in Cyrus-SASL 2.1.25. + Patch from Hajimu UMEMOTO from FreeBSD. + Add support for DHParameters 2048-bit primes. + CONFIG: Accept IPv6 literals when evaluating the HELO/EHLO argument + in FEATURE(`block_bad_helo'). Suggested by Andrey Chernov. + LIBSMDB: Add a missing check for malloc() in libsmdb/smndbm.c. + Patch from Bill Parker. + LIBSMDB: Fix minor memory leaks in libsmdb/ if allocations + fail. Patch from John Beck of Oracle. + Portability: + Add support for Darwin 12.x and 13.x (Mac OS X 10.8 and 10.9). + On Linux use socklen_t as the type for the 3rd argument + for getsockname/getpeername if the glibc version is at + least 2.1. + Added Files: + devtools/OS/Darwin.12.x + devtools/OS/Darwin.13.x + 8.14.7/8.14.7 2013/04/21 Drop support for IPv4-mapped IPv6 addresses to prevent the MTA from using a mapped address over a legitimate IPv6 address @@ -80,9 +127,12 @@ summary of the changes in that release. the reason for the failure in a single log line. Suggested by James Carey of Boeing. Portability: - Add support for Darwin 11.x and 12.x (Mac OS X 10.7 and 10.8). + Add support for Darwin 11.x (Mac OS X 10.7). Add support for SunOS 5.12 (aka Solaris 12). Patch from John Beck of Oracle. + Added Files: + devtools/OS/Darwin.11.x + devtools/OS/SunOS.5.12 8.14.5/8.14.5 2011/05/17 Do not cache SMTP extensions across connections as the cache Modified: stable/9/contrib/sendmail/cf/README ============================================================================== --- stable/9/contrib/sendmail/cf/README Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/README Sat Feb 1 23:37:03 2014 (r261370) @@ -77,7 +77,7 @@ Let's examine a typical .mc file: divert(-1) # - # Copyright (c) 1998-2005 Sendmail, Inc. and its suppliers. + # Copyright (c) 1998-2005 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -1402,6 +1402,9 @@ preserve_local_plus_detail that address will be looked up in the alias file; user+* and user will not be looked up). Only use if the local delivery agent in use supports +detail addressing. + Moreover, this will most likely not work if the 'w' flag + for the local mailer is set as the entire local address + including +detail is passed to the user lookup function. compat_check Enable ruleset check_compat to look up pairs of addresses with the Compat: tag -- Compat:sender<@>recipient -- in the @@ -4701,4 +4704,4 @@ M4 DIVERSIONS 8 DNS based blacklists 9 special local rulesets (1 and 2) -$Revision: 8.728 $, Last updated $Date: 2012/09/07 16:29:13 $ +$Revision: 8.730 $, Last updated $Date: 2014/01/16 15:55:51 $ Modified: stable/9/contrib/sendmail/cf/cf/chez.cs.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/chez.cs.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/chez.cs.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: chez.cs.mc,v 8.14 1999/02/07 07:25:59 gshapiro Exp $') +VERSIONID(`$Id: chez.cs.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`LOCAL_RELAY', vangogh.CS.Berkeley.EDU)dnl Modified: stable/9/contrib/sendmail/cf/cf/clientproto.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/clientproto.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/clientproto.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2000 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: clientproto.mc,v 8.16 2000/03/21 21:05:26 ca Exp $') +VERSIONID(`$Id: clientproto.mc,v 8.17 2013/11/22 20:51:08 ca Exp $') OSTYPE(unknown) FEATURE(nullclient, mailhost.$m) Modified: stable/9/contrib/sendmail/cf/cf/cs-hpux10.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/cs-hpux10.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/cs-hpux10.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-hpux10.mc,v 8.13 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-hpux10.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux10)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`MAIL_HUB', mailspool.CS.Berkeley.EDU)dnl Modified: stable/9/contrib/sendmail/cf/cf/cs-hpux9.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/cs-hpux9.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/cs-hpux9.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-hpux9.mc,v 8.14 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-hpux9.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux9)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`MAIL_HUB', mailspool.CS.Berkeley.EDU)dnl Modified: stable/9/contrib/sendmail/cf/cf/cs-osf1.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/cs-osf1.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/cs-osf1.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-osf1.mc,v 8.13 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-osf1.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(osf1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/cs-solaris2.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/cs-solaris2.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/cs-solaris2.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-solaris2.mc,v 8.12 1999/02/07 07:26:00 gshapiro Exp $') +VERSIONID(`$Id: cs-solaris2.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') OSTYPE(solaris2)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/cs-sunos4.1.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/cs-sunos4.1.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/cs-sunos4.1.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-sunos4.1.mc,v 8.13 1999/02/07 07:26:01 gshapiro Exp $') +VERSIONID(`$Id: cs-sunos4.1.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(sunos4.1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/cs-ultrix4.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/cs-ultrix4.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/cs-ultrix4.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: cs-ultrix4.mc,v 8.13 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: cs-ultrix4.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/generic-bsd4.4.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/generic-bsd4.4.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/generic-bsd4.4.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -21,7 +21,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-bsd4.4.mc,v 8.10 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-bsd4.4.mc,v 8.11 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/generic-hpux10.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/generic-hpux10.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/generic-hpux10.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999, 2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999, 2001 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-hpux10.mc,v 8.13 2001/05/29 17:29:52 ca Exp $') +VERSIONID(`$Id: generic-hpux10.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux10)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/generic-hpux9.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/generic-hpux9.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/generic-hpux9.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-hpux9.mc,v 8.11 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-hpux9.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux9)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/generic-linux.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/generic-linux.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/generic-linux.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-linux.mc,v 8.1 1999/09/24 22:48:05 gshapiro Exp $') +VERSIONID(`$Id: generic-linux.mc,v 8.2 2013/11/22 20:51:08 ca Exp $') OSTYPE(linux)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/generic-mpeix.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/generic-mpeix.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/generic-mpeix.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 2001 Proofpoint, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set @@ -17,7 +17,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-mpeix.mc,v 8.1 2001/12/13 23:56:37 gshapiro Exp $') +VERSIONID(`$Id: generic-mpeix.mc,v 8.2 2013/11/22 20:51:08 ca Exp $') OSTYPE(mpeix)dnl DOMAIN(generic)dnl define(`confFORWARD_PATH', `$z/.forward')dnl Modified: stable/9/contrib/sendmail/cf/cf/generic-nextstep3.3.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/generic-nextstep3.3.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/generic-nextstep3.3.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-nextstep3.3.mc,v 8.10 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-nextstep3.3.mc,v 8.11 2013/11/22 20:51:08 ca Exp $') OSTYPE(nextstep)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/generic-osf1.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/generic-osf1.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/generic-osf1.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-osf1.mc,v 8.11 1999/02/07 07:26:02 gshapiro Exp $') +VERSIONID(`$Id: generic-osf1.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(osf1)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/generic-solaris.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/generic-solaris.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/generic-solaris.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999, 2001 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999, 2001 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-solaris.mc,v 8.13 2001/06/27 21:46:30 gshapiro Exp $') +VERSIONID(`$Id: generic-solaris.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(solaris2)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/generic-sunos4.1.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/generic-sunos4.1.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/generic-sunos4.1.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-sunos4.1.mc,v 8.11 1999/02/07 07:26:03 gshapiro Exp $') +VERSIONID(`$Id: generic-sunos4.1.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(sunos4.1)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/generic-ultrix4.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/generic-ultrix4.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/generic-ultrix4.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -20,7 +20,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: generic-ultrix4.mc,v 8.11 1999/02/07 07:26:03 gshapiro Exp $') +VERSIONID(`$Id: generic-ultrix4.mc,v 8.12 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(generic)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/huginn.cs.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/huginn.cs.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/huginn.cs.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: huginn.cs.mc,v 8.15 1999/02/07 07:26:03 gshapiro Exp $') +VERSIONID(`$Id: huginn.cs.mc,v 8.16 2013/11/22 20:51:08 ca Exp $') OSTYPE(hpux9)dnl DOMAIN(CS.Berkeley.EDU)dnl MASQUERADE_AS(CS.Berkeley.EDU)dnl Modified: stable/9/contrib/sendmail/cf/cf/knecht.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/knecht.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/knecht.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2001, 2004, 2005 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2001, 2004, 2005 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -19,7 +19,7 @@ divert(-1) # divert(0) -VERSIONID(`$Id: knecht.mc,v 8.62 2006/09/27 19:48:59 eric Exp $') +VERSIONID(`$Id: knecht.mc,v 8.63 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4) DOMAIN(generic) Modified: stable/9/contrib/sendmail/cf/cf/mail.cs.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/mail.cs.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/mail.cs.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: mail.cs.mc,v 8.18 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: mail.cs.mc,v 8.19 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(Berkeley.EDU)dnl MASQUERADE_AS(CS.Berkeley.EDU)dnl Modified: stable/9/contrib/sendmail/cf/cf/mail.eecs.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/mail.eecs.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/mail.eecs.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -22,7 +22,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: mail.eecs.mc,v 8.18 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: mail.eecs.mc,v 8.19 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(EECS.Berkeley.EDU)dnl MASQUERADE_AS(EECS.Berkeley.EDU)dnl Modified: stable/9/contrib/sendmail/cf/cf/mailspool.cs.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/mailspool.cs.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/mailspool.cs.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: mailspool.cs.mc,v 8.12 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: mailspool.cs.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') OSTYPE(sunos4.1)dnl DOMAIN(CS.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/python.cs.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/python.cs.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/python.cs.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -24,7 +24,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: python.cs.mc,v 8.12 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: python.cs.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') OSTYPE(bsd4.4)dnl DOMAIN(CS.Berkeley.EDU)dnl define(`LOCAL_RELAY', vangogh.CS.Berkeley.EDU)dnl Modified: stable/9/contrib/sendmail/cf/cf/s2k-osf1.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/s2k-osf1.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/s2k-osf1.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: s2k-osf1.mc,v 8.13 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: s2k-osf1.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(osf1)dnl DOMAIN(S2K.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/s2k-ultrix4.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/s2k-ultrix4.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/s2k-ultrix4.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -23,7 +23,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: s2k-ultrix4.mc,v 8.13 1999/02/07 07:26:04 gshapiro Exp $') +VERSIONID(`$Id: s2k-ultrix4.mc,v 8.14 2013/11/22 20:51:08 ca Exp $') OSTYPE(ultrix4)dnl DOMAIN(S2K.Berkeley.EDU)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/submit.cf ============================================================================== --- stable/9/contrib/sendmail/cf/cf/submit.cf Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/submit.cf Sat Feb 1 23:37:03 2014 (r261370) @@ -1,5 +1,5 @@ # -# Copyright (c) 1998-2004, 2009, 2010 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2004, 2009, 2010 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983, 1995 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -16,8 +16,8 @@ ##### ##### SENDMAIL CONFIGURATION FILE ##### -##### built by ca@wiz.smi.sendmail.com on Fri Apr 19 08:04:44 PDT 2013 -##### in /extra/home/ca/sm-8.14.7/OpenSource/sendmail-8.14.7/cf/cf +##### built by ca@lab.smi.sendmail.com on Thu Jan 23 12:29:13 PST 2014 +##### in /home/ca/sm8-rel/sm-8.14.8/OpenSource/sendmail-8.14.8/cf/cf ##### using ../ as configuration include directory ##### ###################################################################### @@ -27,15 +27,15 @@ ###################################################################### ###################################################################### -##### $Id: cfhead.m4,v 8.121 2010/01/07 18:20:19 ca Exp $ ##### -##### $Id: cf.m4,v 8.32 1999/02/07 07:26:14 gshapiro Exp $ ##### -##### $Id: submit.mc,v 8.14 2006/04/05 05:54:41 ca Exp $ ##### -##### $Id: msp.m4,v 1.33 2004/02/09 22:32:38 ca Exp $ ##### +##### $Id: cfhead.m4,v 8.122 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: cf.m4,v 8.33 2013/11/22 20:51:13 ca Exp $ ##### +##### $Id: submit.mc,v 8.15 2013/11/22 20:51:08 ca Exp $ ##### +##### $Id: msp.m4,v 1.34 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: no_default_msa.m4,v 8.2 2001/02/14 05:03:22 gshapiro Exp $ ##### +##### $Id: no_default_msa.m4,v 8.3 2013/11/22 20:51:11 ca Exp $ ##### -##### $Id: proto.m4,v 8.760 2012/09/07 16:30:15 ca Exp $ ##### +##### $Id: proto.m4,v 8.762 2013/11/22 20:51:13 ca Exp $ ##### # level 10 config file format V10/Berkeley @@ -114,7 +114,7 @@ D{MTAHost}[127.0.0.1] # Configuration version number -DZ8.14.7/Submit +DZ8.14.8/Submit ############### @@ -1299,7 +1299,7 @@ R$* $#relay $@ ${MTAHost} $: $1 < @ $j ### Local and Program Mailer specification ### ################################################## -##### $Id: local.m4,v 8.59 2004/11/23 00:37:25 ca Exp $ ##### +##### $Id: local.m4,v 8.60 2013/11/22 20:51:14 ca Exp $ ##### # # Envelope sender rewriting @@ -1351,7 +1351,7 @@ Mprog, P=[IPC], F=lmDFMuXk5, S=EnvFromL ### SMTP Mailer specification ### ##################################### -##### $Id: smtp.m4,v 8.65 2006/07/12 21:08:10 ca Exp $ ##### +##### $Id: smtp.m4,v 8.66 2013/11/22 20:51:14 ca Exp $ ##### # # common sender and masquerading recipient rewriting @@ -1442,7 +1442,7 @@ Mrelay, P=[IPC], F=mDFMuXa8k, S=EnvFrom ### submit.mc ### # divert(-1) # # -# # Copyright (c) 2001-2003 Sendmail, Inc. and its suppliers. +# # Copyright (c) 2001-2003 Proofpoint, Inc. and its suppliers. # # All rights reserved. # # # # By using this file, you agree to the terms and conditions set @@ -1457,7 +1457,7 @@ Mrelay, P=[IPC], F=mDFMuXa8k, S=EnvFrom # # # # divert(0)dnl -# VERSIONID(`$Id: submit.mc,v 8.14 2006/04/05 05:54:41 ca Exp $') +# VERSIONID(`$Id: submit.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') # define(`confCF_VERSION', `Submit')dnl # define(`__OSTYPE__',`')dnl dirty hack to keep proto.m4 from complaining # define(`_USE_DECNET_SYNTAX_', `1')dnl support DECnet Modified: stable/9/contrib/sendmail/cf/cf/submit.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/submit.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/submit.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 2001-2003 Sendmail, Inc. and its suppliers. +# Copyright (c) 2001-2003 Proofpoint, Inc. and its suppliers. # All rights reserved. # # By using this file, you agree to the terms and conditions set @@ -15,7 +15,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: submit.mc,v 8.14 2006/04/05 05:54:41 ca Exp $') +VERSIONID(`$Id: submit.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') define(`confCF_VERSION', `Submit')dnl define(`__OSTYPE__',`')dnl dirty hack to keep proto.m4 from complaining define(`_USE_DECNET_SYNTAX_', `1')dnl support DECnet Modified: stable/9/contrib/sendmail/cf/cf/tcpproto.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/tcpproto.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/tcpproto.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998-2000 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998-2000 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -26,7 +26,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: tcpproto.mc,v 8.14 2000/08/03 15:26:50 ca Exp $') +VERSIONID(`$Id: tcpproto.mc,v 8.15 2013/11/22 20:51:08 ca Exp $') OSTYPE(`unknown') FEATURE(`nouucp', `reject') MAILER(`local') Modified: stable/9/contrib/sendmail/cf/cf/ucbarpa.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/ucbarpa.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/ucbarpa.mc Sat Feb 1 23:37:03 2014 (r261370) @@ -1,6 +1,6 @@ divert(-1) # -# Copyright (c) 1998, 1999 Sendmail, Inc. and its suppliers. +# Copyright (c) 1998, 1999 Proofpoint, Inc. and its suppliers. # All rights reserved. # Copyright (c) 1983 Eric P. Allman. All rights reserved. # Copyright (c) 1988, 1993 @@ -21,7 +21,7 @@ divert(-1) # divert(0)dnl -VERSIONID(`$Id: ucbarpa.mc,v 8.12 1999/02/07 07:26:05 gshapiro Exp $') +VERSIONID(`$Id: ucbarpa.mc,v 8.13 2013/11/22 20:51:08 ca Exp $') DOMAIN(CS.Berkeley.EDU)dnl OSTYPE(bsd4.4)dnl MAILER(local)dnl Modified: stable/9/contrib/sendmail/cf/cf/ucbvax.mc ============================================================================== --- stable/9/contrib/sendmail/cf/cf/ucbvax.mc Sat Feb 1 22:38:34 2014 (r261369) +++ stable/9/contrib/sendmail/cf/cf/ucbvax.mc Sat Feb 1 23:37:03 2014 (r261370) *** DIFF OUTPUT TRUNCATED AT 1000 LINES *** From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 23:39:04 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1ACB183C; Sat, 1 Feb 2014 23:39:04 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 05BAB1816; Sat, 1 Feb 2014 23:39:04 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11Nd336027246; Sat, 1 Feb 2014 23:39:03 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11Nd3mJ027245; Sat, 1 Feb 2014 23:39:03 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012339.s11Nd3mJ027245@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 23:39:03 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261371 - stable/9/lib/libsm X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 23:39:04 -0000 Author: gshapiro Date: Sat Feb 1 23:39:03 2014 New Revision: 261371 URL: http://svnweb.freebsd.org/changeset/base/261371 Log: MFC: Add new sendmail 8.14.8 file Modified: stable/9/lib/libsm/Makefile Directory Properties: stable/9/lib/libsm/ (props changed) Modified: stable/9/lib/libsm/Makefile ============================================================================== --- stable/9/lib/libsm/Makefile Sat Feb 1 23:37:03 2014 (r261370) +++ stable/9/lib/libsm/Makefile Sat Feb 1 23:39:03 2014 (r261371) @@ -31,7 +31,7 @@ SRCS+= assert.c debug.c errstring.c exc. wbuf.c wsetup.c string.c stringf.c \ xtrap.c strto.c test.c path.c strcasecmp.c strrevcmp.c \ signal.c clock.c config.c sem.c shm.c mbdb.c strexit.c cf.c ldap.c \ - niprop.c mpeix.c memstat.c util.c + niprop.c mpeix.c memstat.c util.c inet6_ntop.c CLEANFILES+=sm_os.h INTERNALLIB= From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 23:39:59 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id B287C971; Sat, 1 Feb 2014 23:39:59 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 96BC3181D; Sat, 1 Feb 2014 23:39:59 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11Ndx4N027376; Sat, 1 Feb 2014 23:39:59 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11Ndxjl027375; Sat, 1 Feb 2014 23:39:59 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012339.s11Ndxjl027375@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 23:39:59 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261372 - stable/9/contrib/sendmail/include/sm/os X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 23:39:59 -0000 Author: gshapiro Date: Sat Feb 1 23:39:59 2014 New Revision: 261372 URL: http://svnweb.freebsd.org/changeset/base/261372 Log: MFC: Remove local FreeBSD workaround now that upstream project has a better fix. Modified: stable/9/contrib/sendmail/include/sm/os/sm_os_freebsd.h Directory Properties: stable/9/contrib/sendmail/ (props changed) Modified: stable/9/contrib/sendmail/include/sm/os/sm_os_freebsd.h ============================================================================== --- stable/9/contrib/sendmail/include/sm/os/sm_os_freebsd.h Sat Feb 1 23:39:03 2014 (r261371) +++ stable/9/contrib/sendmail/include/sm/os/sm_os_freebsd.h Sat Feb 1 23:39:59 2014 (r261372) @@ -39,7 +39,3 @@ #ifndef SM_CONF_MSG # define SM_CONF_MSG 1 #endif /* SM_CONF_MSG */ - -#ifndef SM_IPNODEBYNAME_FLAGS -# define SM_IPNODEBYNAME_FLAGS AI_DEFAULT|AI_ALL -#endif /* SM_IPNODEBYNAME_FLAGS */ From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 23:40:24 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 5E5BAAA1; Sat, 1 Feb 2014 23:40:24 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 49A751821; Sat, 1 Feb 2014 23:40:24 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11NeOmA027559; Sat, 1 Feb 2014 23:40:24 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11NeO7D027558; Sat, 1 Feb 2014 23:40:24 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012340.s11NeO7D027558@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 23:40:24 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261373 - stable/9/contrib/sendmail X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 23:40:24 -0000 Author: gshapiro Date: Sat Feb 1 23:40:23 2014 New Revision: 261373 URL: http://svnweb.freebsd.org/changeset/base/261373 Log: MFC: Update for sendmail 8.14.8 import Modified: stable/9/contrib/sendmail/FREEBSD-upgrade Directory Properties: stable/9/contrib/sendmail/ (props changed) Modified: stable/9/contrib/sendmail/FREEBSD-upgrade ============================================================================== --- stable/9/contrib/sendmail/FREEBSD-upgrade Sat Feb 1 23:39:59 2014 (r261372) +++ stable/9/contrib/sendmail/FREEBSD-upgrade Sat Feb 1 23:40:23 2014 (r261373) @@ -1,6 +1,6 @@ $FreeBSD$ -sendmail 8.14.7 +sendmail 8.14.8 originals can be found at: ftp://ftp.sendmail.org/pub/sendmail/ For the import of sendmail, the following directories were renamed: @@ -97,4 +97,4 @@ infrastructure in FreeBSD: usr.sbin/mailwrapper/Makefile gshapiro@FreeBSD.org -21-April-2013 +26-January-2014 From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 23:40:49 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 017CEBCF; Sat, 1 Feb 2014 23:40:49 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BBB1F1823; Sat, 1 Feb 2014 23:40:48 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11Nem0X028181; Sat, 1 Feb 2014 23:40:48 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11Nem42028180; Sat, 1 Feb 2014 23:40:48 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012340.s11Nem42028180@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 23:40:48 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261374 - stable/9/contrib/sendmail/libsm X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 23:40:49 -0000 Author: gshapiro Date: Sat Feb 1 23:40:48 2014 New Revision: 261374 URL: http://svnweb.freebsd.org/changeset/base/261374 Log: MFC: Add missing svn:keywords property to new files Modified: Directory Properties: stable/9/contrib/sendmail/ (props changed) stable/9/contrib/sendmail/libsm/inet6_ntop.c (props changed) stable/9/contrib/sendmail/libsm/t-fget.c (props changed) stable/9/contrib/sendmail/libsm/t-inet6_ntop.c (props changed) From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 23:44:11 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 57463E17; Sat, 1 Feb 2014 23:44:11 +0000 (UTC) Received: from mail-wg0-x232.google.com (mail-wg0-x232.google.com [IPv6:2a00:1450:400c:c00::232]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6E5621899; Sat, 1 Feb 2014 23:44:10 +0000 (UTC) Received: by mail-wg0-f50.google.com with SMTP id l18so10672202wgh.5 for ; Sat, 01 Feb 2014 15:44:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-type:content-disposition:in-reply-to:user-agent; bh=hwWkqK7O3nx0iSxrzzae4dpJLtQvOyupJZmlewWYpRw=; b=y+TLW1ILGu9bmWoYhMIMFCTEO3pZON8gxicH1gmpRYDRuqk7rNFopxYaCKCidD2vI8 Tq/TLbUARPxYlnwGrw9UIiBf0os9+ZY7U9O0OefBg4Rh4ZrRp5F37W0bfCkRSEEI4+wB jru5je/icLK+RkTVQ7RJKkVUVooS6Uxq0w2uKBmQCoeTJ/i1as2U5DdtWcx7mH1XHh5U O8rmJpMna4P7KotM9btYquQqH6QlmZiuKlUjdPvR0DDMUUftpYC6EEEQPkyfxAT+g0xt aMsc5JURCZ0qDjomcpajFkiBQ6w9KTHSE4a+tzpgJ2z47KGjmRWt5lkth/q5hWqkF25y uCYg== X-Received: by 10.194.123.201 with SMTP id mc9mr842229wjb.43.1391298248927; Sat, 01 Feb 2014 15:44:08 -0800 (PST) Received: from ithaqua.etoilebsd.net (ithaqua.etoilebsd.net. [37.59.37.188]) by mx.google.com with ESMTPSA id uq2sm30825549wjc.5.2014.02.01.15.44.07 for (version=TLSv1 cipher=RC4-SHA bits=128/128); Sat, 01 Feb 2014 15:44:07 -0800 (PST) Sender: Baptiste Daroussin Date: Sun, 2 Feb 2014 00:44:05 +0100 From: Baptiste Daroussin To: Kai Wang Subject: Re: svn commit: r261246 - in head: . cddl/contrib/opensolaris/tools/ctf/cvt contrib/elftoolchain lib/libdwarf lib/libelf sys/sys Message-ID: <20140201234405.GO54904@ithaqua.etoilebsd.net> References: <201401282138.s0SLcsVV085769@svn.freebsd.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="Pk/CTwBz1VvfPIDp" Content-Disposition: inline In-Reply-To: <201401282138.s0SLcsVV085769@svn.freebsd.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 23:44:11 -0000 --Pk/CTwBz1VvfPIDp Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Tue, Jan 28, 2014 at 09:38:54PM +0000, Kai Wang wrote: > Author: kaiw > Date: Tue Jan 28 21:38:54 2014 > New Revision: 261246 > URL: http://svnweb.freebsd.org/changeset/base/261246 >=20 > Log: > Merge from projects/elftoolchain: Upgrade libelf and libdwarf to newer > versions from elftoolchain upstream (r2974). Convert ctfconvert to > use the APIs from the new libdwarf and make ctfconvert work with Clang > 3.4. > =20 > __FreeBSD_version is bumped to 1100006. > =20 Thanks for this update, I just want to remind something to everyone, becaus= e it happened a lot recently. Before breaking any ABI (SHLIB num bumped here in this case) all committers should first talk to portmgr sync with them and then commit (and send a hea= sup to portmgr saying the commit has been done) Why so? just because we are trying to provide packages for head, that means= that before the commit we need to know it will happen and we have time available= to upgrade the build jail for head, then once we know we would be able handle = the upgrade of the jail in a good timeframe, then the heads up mail allows us to know that the upgrade should actually be done (svn up will get the modifica= tion) So next rebuild of packages will be done from scratch instead of incrementa= l. We are putting a lot of effort in trying to get packages working for head, = this small 2 mails will save us a lot of time, and a lot of stress. regards, Bapt I think we should really mark this has a policy in the committer handbook. --Pk/CTwBz1VvfPIDp Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.15 (FreeBSD) iEYEARECAAYFAlLthsUACgkQ8kTtMUmk6Ew4gACeJX7Cz8+/8NAz0zGdvftMhsqp IcYAn1WNDb+HADaiH0IvmpulVzJuef1+ =2536 -----END PGP SIGNATURE----- --Pk/CTwBz1VvfPIDp-- From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 23:44:27 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 76342BE; Sat, 1 Feb 2014 23:44:27 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id 6178018A2; Sat, 1 Feb 2014 23:44:27 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11NiRNq030815; Sat, 1 Feb 2014 23:44:27 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11NiRCb030813; Sat, 1 Feb 2014 23:44:27 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012344.s11NiRCb030813@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 23:44:27 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261375 - stable/9/etc/sendmail X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 23:44:27 -0000 Author: gshapiro Date: Sat Feb 1 23:44:26 2014 New Revision: 261375 URL: http://svnweb.freebsd.org/changeset/base/261375 Log: MFC: Minor changes to force commit these files so new freebsd*.cf files are built to use the new sendmail-8.14.8/cf tree. Modified: stable/9/etc/sendmail/freebsd.mc stable/9/etc/sendmail/freebsd.submit.mc Directory Properties: stable/9/etc/ (props changed) Modified: stable/9/etc/sendmail/freebsd.mc ============================================================================== --- stable/9/etc/sendmail/freebsd.mc Sat Feb 1 23:40:48 2014 (r261374) +++ stable/9/etc/sendmail/freebsd.mc Sat Feb 1 23:44:26 2014 (r261375) @@ -33,6 +33,7 @@ divert(-1) # SUCH DAMAGE. # + # # This is a generic configuration file for FreeBSD 6.X and later systems. # If you want to customize it, copy it to a name appropriate for your Modified: stable/9/etc/sendmail/freebsd.submit.mc ============================================================================== --- stable/9/etc/sendmail/freebsd.submit.mc Sat Feb 1 23:40:48 2014 (r261374) +++ stable/9/etc/sendmail/freebsd.submit.mc Sat Feb 1 23:44:26 2014 (r261375) @@ -9,6 +9,7 @@ divert(-1) # # + # # This is the FreeBSD configuration for a set-group-ID sm-msp sendmail # that acts as a initial mail submission program. From owner-svn-src-all@FreeBSD.ORG Sat Feb 1 23:47:45 2014 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E58553C6; Sat, 1 Feb 2014 23:47:45 +0000 (UTC) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id D051718BC; Sat, 1 Feb 2014 23:47:45 +0000 (UTC) Received: from svn.freebsd.org ([127.0.1.70]) by svn.freebsd.org (8.14.7/8.14.7) with ESMTP id s11NljPX031386; Sat, 1 Feb 2014 23:47:45 GMT (envelope-from gshapiro@svn.freebsd.org) Received: (from gshapiro@localhost) by svn.freebsd.org (8.14.7/8.14.7/Submit) id s11NljbF031385; Sat, 1 Feb 2014 23:47:45 GMT (envelope-from gshapiro@svn.freebsd.org) Message-Id: <201402012347.s11NljbF031385@svn.freebsd.org> From: Gregory Neil Shapiro Date: Sat, 1 Feb 2014 23:47:45 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-9@freebsd.org Subject: svn commit: r261376 - stable/9/release/doc/en_US.ISO8859-1/relnotes X-SVN-Group: stable-9 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Feb 2014 23:47:46 -0000 Author: gshapiro Date: Sat Feb 1 23:47:45 2014 New Revision: 261376 URL: http://svnweb.freebsd.org/changeset/base/261376 Log: MFC: Note merge of sendmail 8.14.8. Modified: stable/9/release/doc/en_US.ISO8859-1/relnotes/article.xml Modified: stable/9/release/doc/en_US.ISO8859-1/relnotes/article.xml ============================================================================== --- stable/9/release/doc/en_US.ISO8859-1/relnotes/article.xml Sat Feb 1 23:44:26 2014 (r261375) +++ stable/9/release/doc/en_US.ISO8859-1/relnotes/article.xml Sat Feb 1 23:47:45 2014 (r261376) @@ -1168,7 +1168,7 @@ been updated to version 0.9.8x. The sendmail - (&man.sendmail.8;) utility has been updated to version 8.14.7. + (&man.sendmail.8;) utility has been updated to version 8.14.8. The tcpdump (&man.tcpdump.1;) utility has been updated to version 4.2.1.