cp metadata error fix.



On Fri, 2005-05-20 at 01:53 -0400, Nat Friedman wrote:

> It's a pretty scary set of warnings.  It would be much nicer if cp said
> 
>         Warning: /media/USB_DISK does not support extended attributes;
>         metadata will be lost.
>         
> instead of printing one warning per EA.  We should follow up with the
> fileutils people.

s/fileutils/coreutils, these days.

Anyhow, I looked into it.  The error is actually generated in the
libattr function attr_copy_file().

I fixed it.  We now have

        $ cp x /var/tmp
        cp: Metadata will be lost, setting attributes for `/var/tmp/x':
        Operation not supported

Instead of

        $ cp x /var/tmp
        cp: setting attribute `user.Beagle.Uid' for `/var/tmp/x':
        Operation not supported
        cp: setting attribute `user.Beagle.MTime' for `/var/tmp/x':
        Operation not supported
        cp: setting attribute `user.Beagle.IndexTime' for `/var/tmp/x':
        Operation not supported
        cp: setting attribute `user.Beagle.Fingerprint' for
        `/var/tmp/x': Operation not supported

Find a patch to libattr attached.

I also built updated packages for SUSE 9.3, because I love you all:

	http://primates.ximian.com/~rml/misc/attr/

Best,

	Robert Love

 libattr/attr_copy_file.c |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)

--- attr-2.4.22/libattr/attr_copy_file.c	2004-11-30 08:34:47.000000000 -0500
+++ attr/libattr/attr_copy_file.c	2005-05-20 11:49:25.000000000 -0400
@@ -138,9 +138,9 @@
 		if (lsetxattr (dst_path, name, value, size, 0) != 0)
 		{
 			const char *qpath = quote (ctx, dst_path);
-			if (errno == ENOSYS) {
-				error (ctx, _("setting attributes for %s"),
-				       qpath);
+			if (errno == ENOSYS || errno == EOPNOTSUPP) {
+				error (ctx, _("setting attributes for %s; "
+				       "metadata will be lost"), qpath);
 				ret = -1;
 				break;  /* no hope of getting any further */
 			} else {


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]