]> git.wh0rd.org - dump.git/commitdiff
Fixed dumping of dangling symlinks.
authorStelian Pop <stelian@popies.net>
Fri, 7 Mar 2003 09:15:44 +0000 (09:15 +0000)
committerStelian Pop <stelian@popies.net>
Fri, 7 Mar 2003 09:15:44 +0000 (09:15 +0000)
CHANGES
THANKS
dump/main.c

diff --git a/CHANGES b/CHANGES
index f48efa33334a749a6905a96c9cc88e09ed4f6f98..e42879b32d6f9c81d4608c9673ff2adfd490f218 100644 (file)
--- a/CHANGES
+++ b/CHANGES
@@ -1,4 +1,4 @@
-$Id: CHANGES,v 1.219 2003/03/06 14:35:48 stelian Exp $
+$Id: CHANGES,v 1.220 2003/03/07 09:15:44 stelian Exp $
 
 Changes between versions 0.4b33 and 0.4b34 (released ?????????????????)
 =======================================================================
 
 Changes between versions 0.4b33 and 0.4b34 (released ?????????????????)
 =======================================================================
@@ -37,6 +37,13 @@ Changes between versions 0.4b33 and 0.4b34 (released ?????????????????)
        between the dumps. Thanks to Philippe Troin <phil@fifi.org> for
        the bug report and the patch.
 
        between the dumps. Thanks to Philippe Troin <phil@fifi.org> for
        the bug report and the patch.
 
+9.     Fixed a bug encountered when dumping individual files (not full
+       filesystems or directories) and dangling symbolic links happen
+       to be in the list of files. For as far as dump is concerned,
+       dangling symbolic links are allowed, and are dumped as is.
+       Thanks to Jin-su Ahn <jsahn@ee.snu.ac.kr> for reporting the
+       bug and providing the fix.
+
 Changes between versions 0.4b32 and 0.4b33 (released February 10, 2003)
 =======================================================================
 
 Changes between versions 0.4b32 and 0.4b33 (released February 10, 2003)
 =======================================================================
 
diff --git a/THANKS b/THANKS
index 6dfef716482b7d7abb7c9602ebb831e765da0267..9bb35e552b33d53b3fd79153e8144e8d3a794886 100644 (file)
--- a/THANKS
+++ b/THANKS
@@ -1,4 +1,4 @@
-$Id: THANKS,v 1.77 2003/02/11 12:43:44 stelian Exp $
+$Id: THANKS,v 1.78 2003/03/07 09:15:46 stelian Exp $
 
 Dump and restore were written by the people of the CSRG at the University
 of California, Berkeley.
 
 Dump and restore were written by the people of the CSRG at the University
 of California, Berkeley.
@@ -21,6 +21,7 @@ Thanks to people who reported problems with the port, sent patches, and
 suggested various improvements.
 Here is a partial list of them (if I have forgotten someone, please complain):
 John Adams             johna@onevista.com
 suggested various improvements.
 Here is a partial list of them (if I have forgotten someone, please complain):
 John Adams             johna@onevista.com
+Jin-su Ahn             jsahn@ee.snu.ac.kr
 Eros Albertazzi                eros@lamel.bo.cnr.it
 Matthias Andree                matthias.andree@stud.uni-dortmund.de
 Andrea Arcangeli       andrea@suse.de
 Eros Albertazzi                eros@lamel.bo.cnr.it
 Matthias Andree                matthias.andree@stud.uni-dortmund.de
 Andrea Arcangeli       andrea@suse.de
index 45e525bbd165632c3de8f9d34fcd363b0504df0c..610410f353c0c291fac837da0a314efb1d539f27 100644 (file)
@@ -41,7 +41,7 @@
 
 #ifndef lint
 static const char rcsid[] =
 
 #ifndef lint
 static const char rcsid[] =
-       "$Id: main.c,v 1.81 2003/01/21 10:42:27 stelian Exp $";
+       "$Id: main.c,v 1.82 2003/03/07 09:15:50 stelian Exp $";
 #endif /* not lint */
 
 #include <config.h>
 #endif /* not lint */
 
 #include <config.h>
@@ -772,7 +772,7 @@ main(int argc, char *argv[])
        if (directory[0] == 0)
                anydirskipped = mapfiles(maxino, &tapesize);
        else {
        if (directory[0] == 0)
                anydirskipped = mapfiles(maxino, &tapesize);
        else {
-               if (STAT(pathname, &statbuf) == -1) {
+               if (LSTAT(pathname, &statbuf) == -1) {
                        msg("File cannot be accessed (%s).\n", pathname);
                        msg("The ENTIRE dump is aborted.\n");
                        exit(X_STARTUP);
                        msg("File cannot be accessed (%s).\n", pathname);
                        msg("The ENTIRE dump is aborted.\n");
                        exit(X_STARTUP);
@@ -789,7 +789,7 @@ main(int argc, char *argv[])
                int anydirskipped2;
                char *p = *argv;
                /* check if file is available */
                int anydirskipped2;
                char *p = *argv;
                /* check if file is available */
-               if (STAT(p, &statbuf) == -1) {
+               if (LSTAT(p, &statbuf) == -1) {
                        msg("File cannot be accessed (%s).\n", p);
                        msg("The ENTIRE dump is aborted.\n");
                        exit(X_STARTUP);
                        msg("File cannot be accessed (%s).\n", p);
                        msg("The ENTIRE dump is aborted.\n");
                        exit(X_STARTUP);