3 Commits
8.76 ... 8.77

3 changed files with 12 additions and 2 deletions

View File

@@ -317,6 +317,7 @@ sub prep {
my $line=<$changelog>; my $line=<$changelog>;
if ($line=~/^[^ ]+\s+\(([^)]+)\)\s/) { if ($line=~/^[^ ]+\s+\(([^)]+)\)\s/) {
my $version=$1; my $version=$1;
$version=~s/\s+//; # ensure no whitespace
if ($version=~/(.*)-(.*)/) { if ($version=~/(.*)-(.*)/) {
$version=$1; $version=$1;
$this->release($2); $this->release($2);

View File

@@ -239,6 +239,9 @@ sub unpack {
while (<GETPERMS>) { while (<GETPERMS>) {
chomp; chomp;
my ($mode, $owner, $group, $file) = split(/ /, $_, 4); my ($mode, $owner, $group, $file) = split(/ /, $_, 4);
next if -l "$workdir/$file";
$mode = $mode & 07777; # remove filetype $mode = $mode & 07777; # remove filetype
my $uid = getpwnam($owner); my $uid = getpwnam($owner);
if (! defined $uid || $uid != 0) { if (! defined $uid || $uid != 0) {
@@ -258,12 +261,10 @@ sub unpack {
if (defined($owninfo{$file}) && ($mode & 07000 > 0)) { if (defined($owninfo{$file}) && ($mode & 07000 > 0)) {
$modeinfo{$file} = sprintf "%lo", $mode; $modeinfo{$file} = sprintf "%lo", $mode;
} }
next unless -e "$workdir/$file"; # skip broken links
if ($> == 0) { if ($> == 0) {
$this->do("chown", "$uid:$gid", "$workdir/$file") $this->do("chown", "$uid:$gid", "$workdir/$file")
|| die "failed chowning $file to $uid\:$gid\: $!"; || die "failed chowning $file to $uid\:$gid\: $!";
} }
next if -l "$workdir/$file"; # skip links
$this->do("chmod", sprintf("%lo", $mode), "$workdir/$file") $this->do("chmod", sprintf("%lo", $mode), "$workdir/$file")
|| die "failed changing mode of $file to $mode\: $!"; || die "failed changing mode of $file to $mode\: $!";
} }

8
debian/changelog vendored
View File

@@ -1,3 +1,11 @@
alien (8.77) unstable; urgency=low
* Don't allow whitespace in package version when parsing debian/changelog.
* In rpm permission fixup code, avoid processing symlinks since that
would result in the file the link points to being "fixed". Closes: #535586
-- Joey Hess <joeyh@debian.org> Mon, 06 Jul 2009 13:37:01 -0400
alien (8.76) unstable; urgency=low alien (8.76) unstable; urgency=low
* Avoid using hostname -f for portability to unix systems, * Avoid using hostname -f for portability to unix systems,