Corrected Gunther Reiszig's contact information.
-$Id: CHANGES,v 1.214 2003/02/11 09:56:46 stelian Exp $
+$Id: CHANGES,v 1.215 2003/02/11 12:43:44 stelian Exp $
Changes between versions 0.4b33 and 0.4b34 (released ?????????????????)
=======================================================================
3. Fixed restore to correctly ignore sockets when comparing
a dump (as socket cannot be properly restored anyway). Thanks
- to <gunther@mit.edu> for reporting the bug.
+ to Gunther Reiszig <gunther@mit.edu> for reporting the bug.
+
+4. Fixed restore to correctly access the archive file (-A argument)
+ even when using a remote tape. Thanks to Fabrice Bellet
+ <fabrice@bellet.info> for reporting the bug.
Changes between versions 0.4b32 and 0.4b33 (released February 10, 2003)
=======================================================================
-$Id: THANKS,v 1.76 2003/02/11 09:26:35 stelian Exp $
+$Id: THANKS,v 1.77 2003/02/11 12:43:44 stelian Exp $
Dump and restore were written by the people of the CSRG at the University
of California, Berkeley.
Andrea Arcangeli andrea@suse.de
Stephen Atwell satwell@urbana.css.mot.com
Gerd Bavendiek bav@epost.de
+Fabrice Bellet fabrice@bellet.info
Stan Bubrouski satan@fastdial.net
Stephen Carr sgcarr@civeng.adelaide.edu.au
Rob Cermak cermak@ahab.rutgers.edu
Kenneth Porter shiva@well.com
Eric S. Raymond esr@minx.thyrsus.com
Graham Reed greed@users.sourceforge.net
+Gunther Reiszig gunther@mit.edu
David Ronis ronis@ronispc.chem.mcgill.ca
Bernhard Sadlowski sadlowsk@Mathematik.Uni-Bielefeld.DE
Peter Samuel peters@e-smith.com
#ifndef lint
static const char rcsid[] =
- "$Id: tape.c,v 1.68 2003/02/11 09:56:48 stelian Exp $";
+ "$Id: tape.c,v 1.69 2003/02/11 12:43:45 stelian Exp $";
#endif /* not lint */
#include <config.h>
temptape = magtape;
#ifdef RRESTORE
- if (host)
+ if (!Afile && host)
mt = rmtopen(temptape, O_RDONLY);
else
#endif
else
mt = OPEN(temptape, O_RDONLY, 0);
if (mt < 0)
- err(1, "%s", magtape);
+ err(1, "%s", temptape);
if (!Afile) {
volno = 1;
setmagtapein();
return;
}
closemt();
+
+ /*
+ * if using an archive file, reset its name so readtape()
+ * could properly use remote access.
+ */
+ Afile = NULL;
+
if (Mflag) {
snprintf(magtape, MAXPATHLEN, "%s%03ld", magtapeprefix, newvol);
magtape[MAXPATHLEN - 1] = '\0';
#endif
getmore:
#ifdef RRESTORE
- if (host)
+ if (!Afile && host)
i = rmtread(&tapebuf[rd], cnt);
else
#endif
i = ntrec * TP_BSIZE;
memset(tapebuf, 0, (size_t)i);
#ifdef RRESTORE
- if (host)
+ if (!Afile && host)
seek_failed = (rmtseek(i, 1) < 0);
else
#endif
size = len;
while (size > 0) {
#ifdef RRESTORE
- if (host)
+ if (!Afile && host)
i = rmtread(buf, size);
else
#endif
if (mt < 0)
return;
#ifdef RRESTORE
- if (host)
+ if (!Afile && host)
rmtclose();
else
#endif