/usr/share/perl5/Debconf/Format/822.pm is in debconf 1.5.56+deb8u1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 | #!/usr/bin/perl -w
# This file was preprocessed, do not edit!
package Debconf::Format::822;
use strict;
use base 'Debconf::Format';
sub beginfile {}
sub endfile {}
sub read {
my $this=shift;
my $fh=shift;
local $/="\n";
my $name;
my %ret=(
owners => {},
fields => {},
variables => {},
flags => {},
);
my $invars=0;
my $line;
while ($line = <$fh>) {
chomp $line;
last if $line eq ''; # blank line is our record delimiter
if ($invars) {
if ($line =~ /^\s/) {
$line =~ s/^\s+//;
my ($var, $value)=split(/\s*=\s?/, $line, 2);
$value=~s/\\n/\n/g;
$ret{variables}->{$var}=$value;
next;
}
else {
$invars=0;
}
}
my ($key, $value)=split(/:\s?/, $line, 2);
$key=lc($key);
if ($key eq 'owners') {
foreach my $owner (split(/,\s+/, $value)) {
$ret{owners}->{$owner}=1;
}
}
elsif ($key eq 'flags') {
foreach my $flag (split(/,\s+/, $value)) {
$ret{flags}->{$flag}='true';
}
}
elsif ($key eq 'variables') {
$invars=1;
}
elsif ($key eq 'name') {
$name=$value;
}
elsif (length $key) {
$value=~s/\\n/\n/g;
$ret{fields}->{$key}=$value;
}
}
return unless defined $name;
return $name, \%ret;
}
sub write {
my $this=shift;
my $fh=shift;
my %data=%{shift()};
my $name=shift;
print $fh "Name: $name\n" or return undef;
foreach my $field (sort keys %{$data{fields}}) {
my $val=$data{fields}->{$field};
$val=~s/\n/\\n/g;
print $fh ucfirst($field).": $val\n" or return undef;
}
if (keys %{$data{owners}}) {
print $fh "Owners: ".join(", ", sort keys(%{$data{owners}}))."\n"
or return undef;
}
if (grep { $data{flags}->{$_} eq 'true' } keys %{$data{flags}}) {
print $fh "Flags: ".join(", ",
grep { $data{flags}->{$_} eq 'true' }
sort keys(%{$data{flags}}))."\n"
or return undef;
}
if (keys %{$data{variables}}) {
print $fh "Variables:\n" or return undef;
foreach my $var (sort keys %{$data{variables}}) {
my $val=$data{variables}->{$var};
$val=~s/\n/\\n/g;
print $fh " $var = $val\n" or return undef;
}
}
print $fh "\n" or return undef; # end of record delimiter
return 1;
}
1
|