From owner-svn-ports-head@FreeBSD.ORG Thu Sep 5 11:39:58 2013 Return-Path: Delivered-To: svn-ports-head@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 ESMTP id 30F13C36; Thu, 5 Sep 2013 11:39:58 +0000 (UTC) (envelope-from bdrewery@FreeBSD.org) 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 0399526AF; Thu, 5 Sep 2013 11:39: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 r85BdvGS065075; Thu, 5 Sep 2013 11:39:57 GMT (envelope-from bdrewery@svn.freebsd.org) Received: (from bdrewery@localhost) by svn.freebsd.org (8.14.7/8.14.5/Submit) id r85BdvVW065070; Thu, 5 Sep 2013 11:39:57 GMT (envelope-from bdrewery@svn.freebsd.org) Message-Id: <201309051139.r85BdvVW065070@svn.freebsd.org> From: Bryan Drewery Date: Thu, 5 Sep 2013 11:39:57 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r326389 - in head/ports-mgmt/pkg: . files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the ports tree for head List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 05 Sep 2013 11:39:58 -0000 Author: bdrewery Date: Thu Sep 5 11:39:57 2013 New Revision: 326389 URL: http://svnweb.freebsd.org/changeset/ports/326389 Log: - Fix crash when registering some linux ports, such as games/linux-candycruncher-demo With hat: portmgr Reported by: mva Modified: head/ports-mgmt/pkg/Makefile head/ports-mgmt/pkg/files/patch-libpkg__pkg_elf.c Modified: head/ports-mgmt/pkg/Makefile ============================================================================== --- head/ports-mgmt/pkg/Makefile Thu Sep 5 11:39:11 2013 (r326388) +++ head/ports-mgmt/pkg/Makefile Thu Sep 5 11:39:57 2013 (r326389) @@ -2,7 +2,7 @@ PORTNAME= pkg DISTVERSION= 1.1.4 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= ports-mgmt MASTER_SITES= http://files.etoilebsd.net/pkg/ \ http://mirror.shatow.net/freebsd/${PORTNAME}/ \ Modified: head/ports-mgmt/pkg/files/patch-libpkg__pkg_elf.c ============================================================================== --- head/ports-mgmt/pkg/files/patch-libpkg__pkg_elf.c Thu Sep 5 11:39:11 2013 (r326388) +++ head/ports-mgmt/pkg/files/patch-libpkg__pkg_elf.c Thu Sep 5 11:39:57 2013 (r326389) @@ -1,8 +1,17 @@ -diff --git libpkg/pkg_elf.c libpkg/pkg_elf.c -index 8ac65ba..2abfc0e 100644 ---- libpkg/pkg_elf.c -+++ libpkg/pkg_elf.c -@@ -484,7 +484,7 @@ pkg_get_myarch(char *dest, size_t sz) +--- ./libpkg/pkg_elf.c.orig 2013-07-06 05:48:19.000000000 -0500 ++++ ./libpkg/pkg_elf.c 2013-09-05 06:33:00.416129335 -0500 +@@ -271,6 +271,10 @@ + ret = EPKG_END; /* Some error occurred, ignore this file */ + goto cleanup; + } ++ if (data->d_buf == NULL) { ++ ret = EPKG_END; /* No osname available */ ++ goto cleanup; ++ } + osname = (const char *) data->d_buf + sizeof(Elf_Note); + if (strncasecmp(osname, "freebsd", sizeof("freebsd")) != 0 && + strncasecmp(osname, "dragonfly", sizeof("dragonfly")) != 0) { +@@ -484,7 +488,7 @@ uint32_t version = 0; int ret = EPKG_OK; int i; @@ -11,7 +20,7 @@ index 8ac65ba..2abfc0e 100644 if (elf_version(EV_CURRENT) == EV_NONE) { pkg_emit_error("ELF library initialization failed: %s", -@@ -569,10 +569,28 @@ pkg_get_myarch(char *dest, size_t sz) +@@ -569,10 +573,28 @@ endian_corres_str = elf_corres_to_string(endian_corres, (int)elfhdr.e_ident[EI_DATA]);