Date: Mon, 24 Mar 2008 15:40:03 GMT From: Jaakko Heinonen <jh@saunalahti.fi> To: freebsd-bugs@FreeBSD.org Subject: Re: bin/121502: option -P appears to be broken in restore(8) since FreeBSD 6.3 (regression) Message-ID: <200803241540.m2OFe3lO016598@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
The following reply was made to PR bin/121502; it has been noted by GNATS. From: Jaakko Heinonen <jh@saunalahti.fi> To: Derek =?utf-8?B?S3VsacWEc2tp?= <takeda@takeda.tk> Cc: bug-followup@FreeBSD.org Subject: Re: bin/121502: option -P appears to be broken in restore(8) since FreeBSD 6.3 (regression) Date: Mon, 24 Mar 2008 17:35:23 +0200 --Q68bSM7Ycu6FN28Q Content-Type: text/plain; charset=utf-8 Content-Disposition: inline Content-Transfer-Encoding: 8bit On 2008-03-23, Derek KuliĆski wrote: > I would never thought that gzip was to blame for that... Although this not a regression in restore(8) I think it's a bug in it. restore(8) has a special block reading code for pipes. This code handles short reads from pipes. However the code is only enabled if your source file name is "-" (stdin) not when you use the -P switch. Could you try the attached patch which enables the special handling for pipes when using the -P switch? -- Jaakko --Q68bSM7Ycu6FN28Q Content-Type: text/x-diff; charset=us-ascii Content-Disposition: attachment; filename="restore-pipeincmd-as-pipe.diff" Index: tape.c =================================================================== RCS file: /home/ncvs/src/sbin/restore/tape.c,v retrieving revision 1.49 diff -p -u -r1.49 tape.c --- tape.c 6 Mar 2007 08:13:20 -0000 1.49 +++ tape.c 24 Mar 2008 10:51:49 -0000 @@ -134,9 +134,10 @@ setinput(char *source, int ispipecommand newtapebuf(NTREC > HIGHDENSITYTREC ? NTREC : HIGHDENSITYTREC); terminal = stdin; - if (ispipecommand) + if (ispipecommand) { pipecmdin++; - else + pipein++; + } else #ifdef RRESTORE if (strchr(source, ':')) { host = source; --Q68bSM7Ycu6FN28Q--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200803241540.m2OFe3lO016598>