From owner-freebsd-ports-bugs@FreeBSD.ORG Tue Mar 13 07:00:04 2012 Return-Path: Delivered-To: freebsd-ports-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 2FFFF1065674 for ; Tue, 13 Mar 2012 07:00:04 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 07D4C8FC15 for ; Tue, 13 Mar 2012 07:00:04 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q2D703bF095444 for ; Tue, 13 Mar 2012 07:00:03 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q2D703HO095443; Tue, 13 Mar 2012 07:00:03 GMT (envelope-from gnats) Resent-Date: Tue, 13 Mar 2012 07:00:03 GMT Resent-Message-Id: <201203130700.q2D703HO095443@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Stanislav Sedov Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A7FA11065673 for ; Tue, 13 Mar 2012 06:50:18 +0000 (UTC) (envelope-from stas@springdaemons.com) Received: from mx0.deglitch.com (cl-414.sto-01.se.sixxs.net [IPv6:2001:16d8:ff00:19d::2]) by mx1.freebsd.org (Postfix) with ESMTP id 5B9458FC1D for ; Tue, 13 Mar 2012 06:50:17 +0000 (UTC) Received: from orion.SpringDaemons.com (c-98-234-218-159.hsd1.ca.comcast.net [98.234.218.159]) by mx0.deglitch.com (Postfix) with ESMTPA id 508BF8FC27; Tue, 13 Mar 2012 10:50:16 +0400 (MSK) Received: by orion.SpringDaemons.com (Postfix, from userid 1024) id 7BECB39F1C; Mon, 12 Mar 2012 22:52:06 -0700 (PDT) Message-Id: <20120313055206.7BECB39F1C@orion.SpringDaemons.com> Date: Mon, 12 Mar 2012 22:52:06 -0700 (PDT) From: Stanislav Sedov To: FreeBSD-gnats-submit@FreeBSD.org X-Send-Pr-Version: 3.113 Cc: dgerow@afflictions.org Subject: ports/165997: [PATCH] security/openconnect: fix on FreeBSD 10.0 X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 13 Mar 2012 07:00:04 -0000 >Number: 165997 >Category: ports >Synopsis: [PATCH] security/openconnect: fix on FreeBSD 10.0 >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Tue Mar 13 07:00:03 UTC 2012 >Closed-Date: >Last-Modified: >Originator: Stanislav Sedov >Release: FreeBSD 10.0-CURRENT amd64 >Organization: Deglitch Networks >Environment: System: FreeBSD orion.SpringDaemons.com 10.0-CURRENT FreeBSD 10.0-CURRENT #11 r232841M: Sun Mar 11 17:06:29 PDT >Description: - The SIOCSIFADDR ioctl was dropped on FreeBSD 10.0. Use SIOCAIFADDR instead. This PR depends on ports/165992. Added file(s): - files/patch-tun.c Port maintainer (dgerow@afflictions.org) is cc'd. Generated with FreeBSD Port Tools 0.99_4 (mode: change, diff: suffix) >How-To-Repeat: >Fix: --- openconnect-3.15_1.patch begins here --- diff -ruN --exclude=CVS ../openconnect.orig/Makefile ./Makefile --- ../openconnect.orig/Makefile 2012-03-12 22:48:24.000000000 -0700 +++ ./Makefile 2012-03-12 22:48:42.000000000 -0700 @@ -7,7 +7,7 @@ PORTNAME= openconnect PORTVERSION= 3.15 -PORTREVISION= 0 +PORTREVISION= 1 CATEGORIES= security MASTER_SITES= ftp://ftp.infradead.org/pub/openconnect/ \ CRITICAL diff -ruN --exclude=CVS ../openconnect.orig/files/patch-tun.c ./files/patch-tun.c --- ../openconnect.orig/files/patch-tun.c 1969-12-31 16:00:00.000000000 -0800 +++ ./files/patch-tun.c 2012-03-12 22:46:33.000000000 -0700 @@ -0,0 +1,56 @@ +--- tun.c.orig 2011-11-24 08:18:34.000000000 -0800 ++++ tun.c 2012-03-12 22:46:30.000000000 -0700 +@@ -38,6 +38,9 @@ + #include + #include + #include ++#if defined(__FreeBSD__) ++#include /* For __FreeBSD_version */ ++#endif + #if defined(__sun__) + #include + #include +@@ -109,9 +112,43 @@ + + addr.sin_family = AF_INET; + addr.sin_addr.s_addr = inet_addr(vpninfo->vpn_addr); ++ ++ /* ++ * SIOCSIFADDR ioctl was dropped in FreeBSD 10.0 ++ */ ++#if defined(__FreeBSD__) && __FreeBSD_version > 1000004 ++ { ++ struct ifaliasreq ifra; ++ struct sockaddr_in *sin; ++ ++ memset(&ifra, 0, sizeof(ifra)); ++ strncpy(ifra.ifra_name, vpninfo->ifname, sizeof(ifra.ifra_name) - 1); ++ ++ /* Set source address. */ ++ sin = (struct sockaddr_in *)&(ifra.ifra_addr); ++ memcpy(sin, &addr, sizeof(struct sockaddr_in)); ++ sin->sin_len = sizeof(*sin); ++ ++ /* Set destination address. */ ++ sin = (struct sockaddr_in *)&(ifra.ifra_broadaddr); ++ memcpy(sin, &addr, sizeof(struct sockaddr_in)); ++ sin->sin_len = sizeof(*sin); ++ ++ /* Set mask address. */ ++ sin = (struct sockaddr_in *)&(ifra.ifra_mask); ++ addr.sin_family = AF_INET; ++ addr.sin_addr.s_addr = 0xffffffff; ++ memcpy(sin, &addr, sizeof(struct sockaddr_in)); ++ sin->sin_len = sizeof(*sin); ++ ++ if (ioctl(net_fd, SIOCAIFADDR, &ifra) < 0) ++ perror(_("SIOCAIFADDR")); ++ } ++#else + memcpy(&ifr.ifr_addr, &addr, sizeof(addr)); + if (ioctl(net_fd, SIOCSIFADDR, &ifr) < 0) + perror(_("SIOCSIFADDR")); ++#endif + } + + ifr.ifr_mtu = vpninfo->mtu; --- openconnect-3.15_1.patch ends here --- >Release-Note: >Audit-Trail: >Unformatted: