Bug 36606 - Adding packages with sysinstall failes after
Summary: Adding packages with sysinstall failes after
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: conf (show other bugs)
Version: 4.5-STABLE
Hardware: Any Any
: Normal Affects Only Me
Assignee: Murray Stokely
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2002-04-01 06:40 UTC by Mark Fullmer
Modified: 2002-04-14 14:26 UTC (History)
0 users

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Fullmer 2002-04-01 06:40:01 UTC
pkg_add fails when the package is delivered via stdin (pkg_add -).  This
appears to have been triggered by gnu/30876, but the problem seems to
be in pkg_add itself.  sysinstall can no longer install packages.

How-To-Repeat: Before the buffer.c patch to tar in gnu/30876:
char:/tmp# pkg_add - < zoo-2.10.1.tgz   

gzip: stdin: unexpected end of file
tar: child returned status 1
The package is successfully installed though.

After the buffer.c patch:

char:/tmp# pkg_add - < zoo-2.10.1.tgz   

gzip: stdin: unexpected end of file
tar: child returned status 1
pkg_add: tar extract of - failed!
pkg_add: unable to extract `-'!
Comment 1 Murray Stokely freebsd_committer freebsd_triage 2002-04-02 13:29:24 UTC
State Changed
From-To: open->analyzed

David O'Brien and I spent time analyzing this.  I have a fix that I 
will commit to -CURRENT momentarily. 



Comment 2 Murray Stokely freebsd_committer freebsd_triage 2002-04-02 13:29:24 UTC
Responsible Changed
From-To: freebsd-bugs->murray

David O'Brien and I spent time analyzing this.  I have a fix that I 
will commit to -CURRENT momentarily.
Comment 3 Murray Stokely freebsd_committer freebsd_triage 2002-04-02 13:53:31 UTC
  Attached is a patch against -STABLE.  Can you please confirm that
this solves the problems you are experiencing?  The has already been
applied to -CURRENT.

Index: perform.c
===================================================================
RCS file: /a/ncvs/src/usr.sbin/pkg_install/add/perform.c,v
retrieving revision 1.57.2.8
diff -u -r1.57.2.8 perform.c
--- perform.c	23 Oct 2001 09:16:03 -0000	1.57.2.8
+++ perform.c	2 Apr 2002 11:51:13 -0000
@@ -189,7 +189,7 @@
 	     * compress an average of 75%, so multiply by 4 for good measure.
 	     */
 
-	    if (!inPlace && min_free(playpen) < sb.st_size * 4) {
+	    if (!extract && !inPlace && min_free(playpen) < sb.st_size * 4) {
 		warnx("projected size of %qd exceeds available free space.\n"
 "Please set your PKG_TMPDIR variable to point to a location with more\n"
 		       "free space and try again", (long long)sb.st_size * 4);
@@ -202,8 +202,9 @@
 	    if (inPlace && Fake)
 		goto success;
 
-	    /* Finally unpack the whole mess */
-	    if (unpack(pkg_fullname, NULL)) {
+	    /* Finally unpack the whole mess.  If extract is null we
+	       already + did so so don't bother doing it again. */
+	    if (extract && unpack(pkg_fullname, NULL)) {
 		warnx("unable to extract `%s'!", pkg_fullname);
 		goto bomb;
 	    }




On Tue, Apr 02, 2002 at 04:29:58AM -0800, murray@FreeBSD.org wrote:
> Synopsis: Adding packages with sysinstall failes after
> 
> State-Changed-From-To: open->analyzed
> State-Changed-By: murray
> State-Changed-When: Tue Apr 2 04:29:24 PST 2002
> State-Changed-Why: 
> David O'Brien and I spent time analyzing this.  I have a fix that I
> will commit to -CURRENT momentarily.
> 
> 
> 
> Responsible-Changed-From-To: freebsd-bugs->murray
> Responsible-Changed-By: murray
> Responsible-Changed-When: Tue Apr 2 04:29:24 PST 2002
> Responsible-Changed-Why: 
> David O'Brien and I spent time analyzing this.  I have a fix that I
> will commit to -CURRENT momentarily.
> 
> 
> http://www.freebsd.org/cgi/query-pr.cgi?pr=36606
> 
> To Unsubscribe: send mail to majordomo@FreeBSD.org
> with "unsubscribe freebsd-bugs" in the body of the message
Comment 4 Murray Stokely freebsd_committer freebsd_triage 2002-04-14 14:16:21 UTC
State Changed
From-To: analyzed->closed

This has been fixed in both -CURRENT and -STABLE, FreeBSD 4.6 will not 
have this problem.  Thanks for the submission!