diff --git a/.cvsignore b/.gitignore similarity index 100% rename from .cvsignore rename to .gitignore diff --git a/Makefile b/Makefile deleted file mode 100644 index 4e25e0a..0000000 --- a/Makefile +++ /dev/null @@ -1,21 +0,0 @@ -# Makefile for source rpm: attr -# $Id: Makefile,v 1.1 2004/09/09 03:14:35 cvsdist Exp $ -NAME := attr -SPECFILE = $(firstword $(wildcard *.spec)) - -define find-makefile-common -for d in common ../common ../../common ; do if [ -f $$d/Makefile.common ] ; then if [ -f $$d/CVS/Root -a -w $$/Makefile.common ] ; then cd $$d ; cvs -Q update ; fi ; echo "$$d/Makefile.common" ; break ; fi ; done -endef - -MAKEFILE_COMMON := $(shell $(find-makefile-common)) - -ifeq ($(MAKEFILE_COMMON),) -# attempt a checkout -define checkout-makefile-common -test -f CVS/Root && { cvs -Q -d $$(cat CVS/Root) checkout common && echo "common/Makefile.common" ; } || { echo "ERROR: I can't figure out how to checkout the 'common' module." ; exit -1 ; } >&2 -endef - -MAKEFILE_COMMON := $(shell $(checkout-makefile-common)) -endif - -include $(MAKEFILE_COMMON) diff --git a/attr-2.4.43-leak.patch b/attr-2.4.43-leak.patch new file mode 100644 index 0000000..f7fb16c --- /dev/null +++ b/attr-2.4.43-leak.patch @@ -0,0 +1,33 @@ +diff -up attr-2.4.43/libattr/attr_copy_action.c.leak attr-2.4.43/libattr/attr_copy_action.c +--- attr-2.4.43/libattr/attr_copy_action.c.leak 2008-06-30 07:22:50.000000000 +0200 ++++ attr-2.4.43/libattr/attr_copy_action.c 2009-02-17 09:50:38.000000000 +0100 +@@ -53,7 +53,7 @@ free_attr_actions(void) + static int + attr_parse_attr_conf(struct error_context *ctx) + { +- char *text, *t; ++ char *text = NULL, *t; + size_t size_guess = 4096, len; + FILE *file; + char *pattern = NULL; +@@ -64,15 +64,16 @@ attr_parse_attr_conf(struct error_contex + return 0; + + repeat: +- text = malloc(size_guess + 1); +- if (!text) +- goto fail; +- + if ((file = fopen(ATTR_CONF, "r")) == NULL) { + if (errno == ENOENT) + return 0; + goto fail; + } ++ ++ text = malloc(size_guess + 1); ++ if (!text) ++ goto fail; ++ + len = fread(text, 1, size_guess, file); + if (ferror(file)) + goto fail; diff --git a/attr.spec b/attr.spec index 4a30535..5ad8425 100644 --- a/attr.spec +++ b/attr.spec @@ -1,12 +1,13 @@ Summary: Utilities for managing filesystem extended attributes Name: attr Version: 2.4.43 -Release: 1%{?dist} +Release: 2%{?dist} Conflicts: xfsdump < 2.0.0 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) Source: ftp://oss.sgi.com/projects/xfs/cmd_tars/attr_%{version}-1.tar.gz Patch1: attr-2.2.0-multilib.patch Patch2: attr-2.4.32-build.patch +Patch3: attr-2.4.43-leak.patch License: GPLv2+ URL: http://oss.sgi.com/projects/xfs/ Group: System Environment/Base @@ -56,6 +57,7 @@ you'll also want to install attr. # figure out how to chmod and how to install perl. :-) %patch1 -p1 -b .multilib %patch2 -p1 -b .build +%patch3 -p1 -b .leak autoconf @@ -110,6 +112,9 @@ rm -rf $RPM_BUILD_ROOT /%{_lib}/libattr.so.* %changelog +* Wed Feb 18 2009 Zdenek Prikryl 2.4.43-2 +- Fixed memory leaks (#485473) + * Wed Jul 16 2008 Zdenek Prikryl 2.4.43-1 - New version 2.4.43