Re: Exclusions not working

2000-11-04 Thread Bernhard R. Erdmann

On Thu, Nov 02, 2000 at 07:09:55PM -0500, John Goerzen wrote:
 Hi,
 
 In my exclude rules for the /var filesystem backup, I have some lines
 like this:
 
 ./spool/postfix/private/*
 ./lib/lists-archives/archives/*
 
 Which, according to the docs, are the right way to do this (there are
 sockets in those directories which cause gtar warnings.)  However,
 they are ignored!  Also, lines like:

Did you install the exclude list as defined in the appropriate
dumptype on the client? Is the file read by Amanda/tar? (Check the
access time with "ls -lu".)



Re: Exclusions not working (FIX)

2000-11-04 Thread John Goerzen

Alexandre Oliva requested that I post this message to amanda-users.
This is regarding the tar problem that I wrote here about.
Here is the message I got from the GNU tar folks, along with a patch.
Note that he couldn't duplicate it on Solaris (which doesn't use GNU
libc) but that it occured for me on two glibc platforms.

-- John

- Forwarded message from Paul Eggert [EMAIL PROTECTED] -

X-Addr-Extension: saved
Delivered-To: [EMAIL PROTECTED]
Resent-To: [EMAIL PROTECTED]
Resent-From: John Goerzen [EMAIL PROTECTED]
Resent-Date: 04 Nov 2000 11:10:44 -0500
X-Addr-Extension: 
Delivered-To: [EMAIL PROTECTED]
Date: Fri, 3 Nov 2000 09:39:38 -0800 (PST)
From: Paul Eggert [EMAIL PROTECTED]
To: [EMAIL PROTECTED]
Cc: [EMAIL PROTECTED]
In-reply-to: [EMAIL PROTECTED]
([EMAIL PROTECTED])
Subject: Re: Exclusions not working
Resent-Message-Id: [EMAIL PROTECTED]

I can't reproduce the problem on Solaris with GNU tar 1.13.18 using
the following scenario.  Is this scenario the right one?

   $ mkdir -p spool/postfix/private
   $ touch spool/postfix/private/file
   $ echo './spool/postfix/private/*' x
   $ gtar -cf /tmp/tar --exclude-from=x .
   $ gtar -tvf /tmp/tar
   drwxrwxr-x eggert/eggert 0 2000-11-03 09:29:33 ./
   drwxrwxr-x eggert/eggert 0 2000-11-03 09:27:41 ./spool/
   drwxrwxr-x eggert/eggert 0 2000-11-03 09:27:41 ./spool/postfix/
   drwxrwxr-x eggert/eggert 0 2000-11-03 09:27:49 ./spool/postfix/private/
   -rw-rw-r-- eggert/eggert26 2000-11-03 09:28:01 ./x

Possibly that is a bug in your GNU C library.  Please try using GNU
tar 1.13.18 ftp://alpha.gnu.org/gnu/tar/ with the following patch;
it works around the glibc bug.  If that doesn't work, please send a
standalone test case.

2000-11-02  Paul Eggert  [EMAIL PROTECTED]

* lib/fnmatch.c: Do not comment out all the code if we are
using the GNU C library, because in some cases we are
replacing buggy code in the GNU C library itself.

2000-10-30  Paul Eggert  [EMAIL PROTECTED]

* lib/fnmatch.c (FOLD): Do not assume that characters are unsigned.

===
RCS file: lib/fnmatch.c,v
retrieving revision 1.2
retrieving revision 1.4
diff -pu -r1.2 -r1.4
--- lib/fnmatch.c   2000/10/24 06:18:37 1.2
+++ lib/fnmatch.c   2000/11/03 00:23:21 1.4
@@ -27,22 +27,10 @@
 #include fnmatch.h
 #include ctype.h
 
-
-/* Comment out all this code if we are using the GNU C Library, and are not
-   actually compiling the library itself.  This code is part of the GNU C
-   Library, but also included in many other GNU distributions.  Compiling
-   and linking in this code is a waste when using the GNU C library
-   (especially if it is a shared library).  Rather than having every GNU
-   program understand `configure --with-gnu-libc' and omit the object files,
-   it is simpler to just do this in the source for each such file.  */
-
-#if defined _LIBC || !defined __GNU_LIBRARY__
-
-
 # if defined STDC_HEADERS || !defined isascii
 #  define IN_CTYPE_DOMAIN(c) 1
 # else
-#  define IN_CTYPE_DOMAIN(c) isascii(c)
+#  define IN_CTYPE_DOMAIN(c) isascii (c)
 # endif
 
 # define ISUPPER(c) (IN_CTYPE_DOMAIN (c)  isupper (c))
@@ -61,7 +49,9 @@ fnmatch (const char *pattern, const char
   register char c;
A
 
 /* Note that this evaluates C many times.  */
-# define FOLD(c) ((flags  FNM_CASEFOLD)  ISUPPER (c) ? tolower (c) : (c))
+# define FOLD(c) ((flags  FNM_CASEFOLD)  ISUPPER ((unsigned char) (c)) \
+  ? tolower ((unsigned char) (c)) \
+  : (c))
 
   while ((c = *p++) != '\0')
 {
@@ -238,5 +228,3 @@ fnmatch (const char *pattern, const char
 
 # undef FOLD
 }
-
-#endif /* _LIBC or not __GNU_LIBRARY__.  */



- End forwarded message -

-- 
A
John Goerzen [EMAIL PROTECTED]   www.complete.org
Sr. Software Developer, Progeny Linux Systems, Inc.www.progenylinux.com
#include std_disclaimer.h [EMAIL PROTECTED]



Re: Exclusions not working

2000-11-04 Thread John Goerzen

Alexandre Oliva [EMAIL PROTECTED] writes:

 On Nov  4, 2000, John Goerzen [EMAIL PROTECTED] wrote:
 
  Apparently, there is a bug in glibc that is triggered by the pattern
  patching code in tar.  They gave me a tar patch that works around it,
  and this solved my problem!
 
 You may want to post the patch here, for the record :-)

OK, I've forwarded along the message from the GNU tar people...

-- John

-- 
John Goerzen [EMAIL PROTECTED]   www.complete.org
Sr. Software Developer, Progeny Linux Systems, Inc.www.progenylinux.com
#include std_disclaimer.h [EMAIL PROTECTED]



Exclusions not working

2000-11-02 Thread John Goerzen

Hi,

In my exclude rules for the /var filesystem backup, I have some lines
like this:

./spool/postfix/private/*
./lib/lists-archives/archives/*

Which, according to the docs, are the right way to do this (there are
sockets in those directories which cause gtar warnings.)  However,
they are ignored!  Also, lines like:

*/no-backup/*

are ignored -- even though this is basically EXACTLY like an example
in the book chapter.  However:

no-backup

works.  (Although it totally excludes the directory and not just its
contents).  Also, likes like this work:

It seems that everything with asterisks is broken.  Patterns without
wildcards, eg:

./lib

correctly exclude the directory.

I have GNU tar 1.13.17, Amanda 2.4.1p1, running on a set of Debian
GNU/Linux systems.

Thanks!
-- John

-- 
John Goerzen [EMAIL PROTECTED]   www.complete.org
Sr. Software Developer, Progeny Linux Systems, Inc.www.progenylinux.com
#include std_disclaimer.h [EMAIL PROTECTED]