new upstream release: attr-2.4.45

This commit is contained in:
Kamil Dudka 2011-04-19 08:57:06 +02:00
parent 343104e626
commit c8f3fff143
8 changed files with 22 additions and 166 deletions

1
.gitignore vendored
View File

@ -1 +1,2 @@
attr-2.4.44.src.tar.gz
/attr-2.4.45.src.tar.gz

View File

@ -1,34 +0,0 @@
diff --git a/libattr/attr_copy_action.c b/libattr/attr_copy_action.c
index 0d7aca5..dc94224 100644
--- a/libattr/attr_copy_action.c
+++ b/libattr/attr_copy_action.c
@@ -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_context *ctx)
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;

View File

@ -1,34 +0,0 @@
From 846ca47a2411f33c8ca0572b0e565664d851fee4 Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka@redhat.com>
Date: Fri, 19 Nov 2010 12:40:11 +0100
Subject: [PATCH] setfattr.1: document supported encodings of values
reported by Tomasz Kepczynski at https://bugzilla.redhat.com/58751
---
man/man1/setfattr.1 | 10 +++++++++-
1 files changed, 9 insertions(+), 1 deletions(-)
diff --git a/man/man1/setfattr.1 b/man/man1/setfattr.1
index c36b024..2d33f50 100644
--- a/man/man1/setfattr.1
+++ b/man/man1/setfattr.1
@@ -46,7 +46,15 @@ for each specified file.
Specifies the name of the extended attribute to set.
.TP
.BR \-v " \f2value\f1, " \-\-value "=\f2value\f1"
-Specifies the new value for the extended attribute.
+Specifies the new value of the extended attribute. There are three methods
+available for encoding the value. If the given string is enclosed in double
+quotes, the inner string is treated as text. In that case, backslashes and
+double quotes have special meanings and need to be escaped by a preceding
+backslash. Any control characters can be encoded as a backslash followed by
+three digits as its ASCII code in octal. If the given string begins with 0x or
+0X, it expresses a hexadecimal number. If the given string begins with 0s or
+0S, base64 encoding is expected. See also the \-\-encoding option of
+getfattr(1).
.TP
.BR \-x " \f2name\f1, " \-\-remove "=\f2name\f1"
Remove the named extended attribute entirely.
--
1.7.3.3

View File

@ -1,77 +0,0 @@
From 7fed4441e12dc794c5eb6ae1798c8338548042ac Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka@redhat.com>
Date: Mon, 8 Nov 2010 10:17:02 -0500
Subject: [PATCH 1/2] getfattr: encode NULs properly with --encoding=text
reported by Paul Bolle at https://bugzilla.redhat.com/650539
---
getfattr/getfattr.c | 6 ++++--
1 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/getfattr/getfattr.c b/getfattr/getfattr.c
index cae9c3f..9c3de32 100644
--- a/getfattr/getfattr.c
+++ b/getfattr/getfattr.c
@@ -133,7 +133,7 @@ const char *encode(const char *value, size_t *size)
size_t n, extra = 0;
for (e=(char *)value; e < value + *size; e++) {
- if (*e == '\n' || *e == '\r')
+ if (*e == '\0' || *e == '\n' || *e == '\r')
extra += 4;
else if (*e == '\\' || *e == '"')
extra++;
@@ -147,7 +147,9 @@ const char *encode(const char *value, size_t *size)
e = encoded;
*e++='"';
for (n = 0; n < *size; n++, value++) {
- if (*value == '\n' || *value == '\r') {
+ if (*value == '\0' && n + 1 == *size)
+ break;
+ if (*value == '\0' || *value == '\n' || *value == '\r') {
*e++ = '\\';
*e++ = '0' + ((unsigned char)*value >> 6);
*e++ = '0' + (((unsigned char)*value & 070) >> 3);
--
1.7.3.3
From 0a2d62b62a3aef601228232ee2e0133a3bbc510b Mon Sep 17 00:00:00 2001
From: Andreas Gruenbacher <agruen@suse.de>
Date: Tue, 23 Nov 2010 16:44:55 +0100
Subject: [PATCH 2/2] OPTIONS in man pages should be a section heading, not a subsection heading
---
man/man1/getfattr.1 | 2 +-
man/man1/setfattr.1 | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/man/man1/getfattr.1 b/man/man1/getfattr.1
index 40f735d..53beb84 100644
--- a/man/man1/getfattr.1
+++ b/man/man1/getfattr.1
@@ -59,7 +59,7 @@ The remaining lines (lines 2 to 4 above) show the
and
.I value
pairs associated with the specified file.
-.SS OPTIONS
+.SH OPTIONS
.TP 4
.BR \-n " \f2name\f1, " \-\-name "=\f2name\f1"
Dump the value of the named extended attribute extended attribute.
diff --git a/man/man1/setfattr.1 b/man/man1/setfattr.1
index 2d33f50..ee54e06 100644
--- a/man/man1/setfattr.1
+++ b/man/man1/setfattr.1
@@ -40,7 +40,7 @@ command associates a new
with an extended attribute
.IR name
for each specified file.
-.SS OPTIONS
+.SH OPTIONS
.TP 4
.BR \-n " \f2name\f1, " \-\-name "=\f2name\f1"
Specifies the name of the extended attribute to set.
--
1.7.3.3

View File

@ -1,3 +1,9 @@
From b01c9a5805632167acc4c669852093555bfc10ae Mon Sep 17 00:00:00 2001
From: Kamil Dudka <kdudka@redhat.com>
Date: Tue, 19 Apr 2011 08:48:53 +0200
Subject: [PATCH] fix compile-time warnings in attr-2.4.45
---
attr/attr.c | 10 ++++++++--
getfattr/getfattr.c | 6 ++++--
libmisc/quote.c | 1 +
@ -35,10 +41,10 @@ index e4a8272..2b1ba6a 100644
printf("\n");
}
diff --git a/getfattr/getfattr.c b/getfattr/getfattr.c
index cae9c3f..1f2afe3 100644
index 9c3de32..7ced700 100644
--- a/getfattr/getfattr.c
+++ b/getfattr/getfattr.c
@@ -272,8 +272,10 @@ int print_attribute(const char *path, const char *name, int *header_printed)
@@ -274,8 +274,10 @@ int print_attribute(const char *path, const char *name, int *header_printed)
*header_printed = 1;
}
@ -52,7 +58,7 @@ index cae9c3f..1f2afe3 100644
const char *enc = encode(value, &length);
diff --git a/libmisc/quote.c b/libmisc/quote.c
index f98c887..c7a1e75 100644
index bf8f9eb..8835af4 100644
--- a/libmisc/quote.c
+++ b/libmisc/quote.c
@@ -19,6 +19,7 @@
@ -61,13 +67,13 @@ index f98c887..c7a1e75 100644
#include <stdlib.h>
+#include <string.h>
#include <ctype.h>
#include <string.h>
#include "misc.h"
diff --git a/libmisc/walk_tree.c b/libmisc/walk_tree.c
index 2777145..b82a301 100644
index 30ff92a..b87c35c 100644
--- a/libmisc/walk_tree.c
+++ b/libmisc/walk_tree.c
@@ -98,8 +98,8 @@ static int walk_tree_rec(const char *path, int walk_flags,
@@ -100,8 +100,8 @@ static int walk_tree_rec(const char *path, int walk_flags,
* a dir not from a symlink
* a link and follow_symlinks
*/
@ -78,3 +84,6 @@ index 2777145..b82a301 100644
((flags & WALK_TREE_SYMLINK) && follow_symlinks)) {
struct dirent *entry;
--
1.7.4.2

BIN
attr-2.4.45.src.tar.gz.sig Normal file

Binary file not shown.

View File

@ -1,7 +1,7 @@
Summary: Utilities for managing filesystem extended attributes
Name: attr
Version: 2.4.44
Release: 8%{?dist}
Version: 2.4.45
Release: 1%{?dist}
Conflicts: xfsdump < 2.0.0
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
Source: http://download.savannah.gnu.org/releases-noredirect/attr/attr-%{version}.src.tar.gz
@ -12,21 +12,12 @@ Source2: sort-getfattr-output
# make it ready for rpmbuild
Patch1: attr-2.4.32-build.patch
# bz #485473
Patch2: attr-2.4.43-leak.patch
# prepare the test-suite for SELinux
Patch3: attr-2.4.44-tests.patch
# silence compile-time warnings
Patch4: attr-2.4.44-warnings.patch
# setfattr.1: document supported encodings of values (#587516)
Patch5: attr-2.4.44-bz587516.patch
# getfattr: encode NULs properly with --encoding=text (#650539)
Patch6: attr-2.4.44-bz650539.patch
# getfattr: return non-zero exit code on failure (#660619)
Patch7: attr-2.4.44-bz660619.patch
@ -82,11 +73,8 @@ you'll also want to install attr.
%prep
%setup -q
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1
%patch8 -p1
%patch9 -p1
@ -167,6 +155,9 @@ rm -rf $RPM_BUILD_ROOT
/%{_lib}/libattr.so.*
%changelog
* Tue Apr 19 2011 Kamil Dudka <kdudka@redhat.com> 2.4.45-1
- new upstream release
* Tue Mar 29 2011 Kamil Dudka <kdudka@redhat.com> 2.2.44-8
- fix typos in attr(1) man page (#669095)

View File

@ -1 +1 @@
d132c119831c27350e10b9f885711adc attr-2.4.44.src.tar.gz
039736319461e84c975b264e9c0ffd72 attr-2.4.45.src.tar.gz