summaryrefslogtreecommitdiff
path: root/usr.sbin
diff options
context:
space:
mode:
authorMarc Espie <espie@cvs.openbsd.org>2014-01-07 17:33:54 +0000
committerMarc Espie <espie@cvs.openbsd.org>2014-01-07 17:33:54 +0000
commit90e52fd7547711d7145035c68e374c7a7c3caf4f (patch)
tree0975a580e49385f98fff2b6a4f012e791c38773c /usr.sbin
parente51e51a57642cbf68309e265e3a2ec33dba590d3 (diff)
even if Ustar handles fifo and stuff gracefully, pkg contents should be more
limited...
Diffstat (limited to 'usr.sbin')
-rw-r--r--usr.sbin/pkg_add/OpenBSD/Add.pm6
1 files changed, 4 insertions, 2 deletions
diff --git a/usr.sbin/pkg_add/OpenBSD/Add.pm b/usr.sbin/pkg_add/OpenBSD/Add.pm
index 292b2659c1d..05bf93964af 100644
--- a/usr.sbin/pkg_add/OpenBSD/Add.pm
+++ b/usr.sbin/pkg_add/OpenBSD/Add.pm
@@ -1,5 +1,5 @@
# ex:ts=8 sw=4:
-# $OpenBSD: Add.pm,v 1.138 2014/01/07 13:31:35 espie Exp $
+# $OpenBSD: Add.pm,v 1.139 2014/01/07 17:33:53 espie Exp $
#
# Copyright (c) 2003-2007 Marc Espie <espie@openbsd.org>
#
@@ -403,7 +403,6 @@ sub install
}
} else {
my $file = $self->prepare_to_extract($state);
-
$state->say("extracting #1", $destdir.$fullname)
if $state->verbose >= 5;
if ($state->{not}) {
@@ -449,6 +448,9 @@ sub prepare_to_extract
$state->fatal("archive hardlink does not match #1 != #2",
$file->{linkname}, $self->{link});
}
+ } elsif (!$file->isFile) {
+ $state->fatal("archive content for #1 should be file",
+ $self->name);
}
if (!$file->verify_modes($self)) {
$state->fatal("can't continue");