aboutsummaryrefslogtreecommitdiffstats
path: root/german/security/copyadvisory.pl
blob: 497f3b0d9742572e2cfd4e1a74f9843a8f819973 (plain) (blame)
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
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
#!/usr/bin/perl -w

# This script copies a security advisory named on the command line, and adds
# the translation-check header to it. It also will create the
# destination directory if necessary, and copy the Makefile from the source.

# Written in 2000-2006 by Peter Karlsson <peterk@debian.org>
# © Copyright 2000-2005 Software in the public interest, Inc.
# This program is released under the GNU General Public License, v2.

# $Id$

# Get command line
$number = $ARGV[0];

use FindBin;
use lib "$FindBin::Bin/../../Perl";
use Local::VCS;

# Check usage.
unless ($number)
{
	print "Usage: $0 advisorynumber\n\n";
	print "Copies the advisory from the English directory to the local one and adds\n";
	print "the translation-check header\n";
	exit;
}

# Locate advisory
$number = "dsa-" . $number if $number !~ /^dsa-/;
$year = 2006;
YEAR: while (-d "../../english/security/$year")
{
	last YEAR if -e "../../english/security/$year/$number.wml";
	$year ++;
}

# Create needed file and directory names
$srcdir = "../../english/security/$year";
die "Unable to locate English version of advisory $number.\n"
	if ! -d $srcdir;
$srcfile= "$srcdir/$number.wml";
$dstdir = "./$year";
$dstfile= "$dstdir/$number.wml";

# Sanity checks
die "File $srcfile does not exist\n"     unless -e $srcfile;
die "File $dstfile already exists\n"     if     -e $dstfile;
mkdir $dstdir, 0755                      unless -d $dstdir;

my $VCS = Local::VCS->new();
my %file_info = $VCS->file_info($srcfile);
$revision = $file_info{'cmt_rev'};
unless ($revision)
{
	die "Could not get revision number - bug in script?\n";
}

# Open the files
open SRC, $srcfile
	or die "Could not read $srcfile ($!)\n";

open DST, ">$dstfile"
	or die "Could not create $dstfile ($!)\n";

# Copy the file
while (<SRC>)
{
	#next if /\$Id/;

	s/cross-site scripting/Site-übergreifendes Skripting/;
	s/[sS]everal security related problems have been discovered in/Mehrere sicherheitsbezogene Probleme wurden in/;
	s/^(<p>)?A problem has been discovered in\b/$1Ein Problem wurde in entdeckt/;
	s/^(<p>)?It was discovered that\b/$1Es wurde entdeckt, dass/;
	s/\bdiscovered a problem in\b/entdeckte ein Problem in/;
	s/\bdiscovered an?/entdeckte ein/;
	s/\bdiscovered that\b/entdeckte, dass/;
	s/discovered/entdeckte/;
	s/traversal/Überschreitung/;
	s/^(<p>)?A vulnerability was discovered in\b/$1Eine Verwundbarkeit wurde in entdeckt/;
	s/^(<p>)?Two vulnerabilities were discovered in\b/$1Zwei Verwundbarkeiten wurden in entdeckt/;
	s/Common Vulnerabilities and Exposures project/<q>Common Vulnerabilities and Exposures<\/q>-Projekt/;
	s/which could lead to the execution of arbitrary code/Dies kann zur Ausführung beliebigen Codes führen/;
	s/which may lead to the execution of arbitrary code/Dies kann zur Ausführung beliebigen Codes führen/;
	s/We recommend that you upgrade your (.*) package immediately/Wir empfehlen Ihnen, Ihr $1-Paket zu aktualisieren/;
	s/We recommend that you upgrade your (.*) packages immediately/Wir empfehlen Ihnen, Ihre $1-Pakete zu aktualisieren/;
	s/We recommend that you upgrade your (.*) and (.*) packages/Wir empfehlen Ihnen, Ihre $1- und $2-Pakete zu aktualisieren/;
	s/We recommend that you upgrade your (.*) packages/Wir empfehlen Ihnen, Ihre $1-Pakete zu aktualisieren/;
	s/We recommend that you upgrade your (.*) package/Wir empfehlen Ihnen, Ihr $1-Paket zu aktualisieren/;
	s/We recommend that you update your (.*) package immediately/Wir empfehlen Ihnen, Ihr $1-Paket zu aktualisieren/;
	s/We recommend that you update your (.*) packages immediately/Wir empfehlen Ihnen, Ihre $1-Pakete zu aktualisieren/;
	s/We recommend that you update your (.*) packages/Wir empfehlen Ihnen, Ihre $1-Pakete zu aktualisieren/;
	s/We recommend that you update your (.*) package/Wir empfehlen Ihnen, Ihr $1-Paket zu aktualisieren/;
	s/denial of service/Diensteverweigerung (<q>denial of service<\/q>)/;
	s/Several remote vulnerabilities have been/Mehrere entfernt ausnutzbare Verwundbarkeiten wurden in/;
	s/buffer overflows/Pufferüberläufe/;
	s/buffer overflow/Pufferüberlauf/;
	s/integer overflow/Integer-Überlauf/;
	s/(sql|SQL) injection/SQL-Einschleusung/;
	s/format string vulnerability/Formatierungszeichenkettenverwundbarkeit/;
	s/format string vulnerabilities/Formatierungszeichenkettenverwundbarkeiten/;
	s/insecure temporary files/unsichere temporäre Dateien/;
	s/>insecure temporary file creation</>Unsichere Erstellung temporärer Dateien</;
	s/>local root exploit</>Lokale root-Ausnutzung</;
	s/>remote root exploit</>Entfernte root-Ausnutzung</;
	s/>symlink attack</>Symlink-Angriff</;
	s/>remote exploit</>entfernter Exploit</;
	s/>missing input sanitising</>Fehlende Eingabebereinigung</;
	s/insufficient/unzureichende/;
	s/sanitising/Bereinigung/;
	s/>programming error</>Programmierfehler</;
	s/Several vulnerabilities/Mehrere Verwundbarkeiten/;
	s/several vulnerabilities/mehrere Verwundbarkeiten/;
	s/Multiple vulnerabilities/Mehrere Verwundbarkeiten/;
	s/vulnerability/Verwundbarkeit/;
	s/vulnerabilities/Verwundbarkeiten/;
	s/>several</>mehrere</;
	s/>unsanitise</>Fehlende Entschärfung</;
	s/ identifies the following problems:/ identifiziert die folgenden Probleme:/;
	s/The following matrix explains which kernel version for which architecture/The following matrix explains which kernel version for which architecture/;
	s/fix the problems mentioned above:/fix the problems mentioned above:/;
	s/fix the problem mentioned above:/fix the problem mentioned above:/;
	s/This has been fixed in version/This has been fixed in version/;
	s/(<td>.*) architecture/$1 architecture/;
	s/The following matrix lists additional packages that were rebuilt for/The following matrix lists additional packages that were rebuilt for/;
	s/compatibility with or to take advantage of this update:/compatibility with or to take advantage of this update:/;
	s/(?:,)?( )?this problem has been fixed in/$1wurde dieses Problem in/;
	s/(?:,)?( )?this problem has been fixed$/$1wurde dieses Problem/;
	s/(?:,)?( )?this problem has(?: been)?$/$1this problem has/;
	s/This problem has been fixed/This problem has been fixed/;
	s/(?:,)?( )?this problem is fixed in/$1this problem is fixed in/;
	s/(?:,)?( )?this problem is fixed/$1this problem is fixed/;
	s/These problems have been fixed/diese Probleme wurden in behoben/;
	s/(?:,)?( )?these problems have been fixed in/$1wurden diese Probleme in Version behoben/;
	s/(?:,)?( )?these problems have been fixed$/$1wurden diese Probleme behoben/;
	s/(?:,)?( )?these problems have(?: been)?$/$1diese Probleme wurden/;
	s/(?:,)?( )?these probleme are fixed in/$1diese Probleme wurden in behoben/;
	s/(?:,)?( )?these probleme are fixed/wurden diese Probleme behoben/;
	s/(?:,)?( )?these problems will be fixed soon/diese Probleme werden bald behoben sein/;
	s/(?:been )?fixed in version/wurde in Version behoben/;
	s/\bin version\b/in Version/;
	s/of the Debian package/des Debian-Pakets/;
	s/upstream version/Originalversion/;
	s/([Ff])or the oldstable distribution/$1ür die alte Stable-Distribution/;
	s/([Ff])or the oldstable/$1ür die alte Stable/;
	s/([Ff])or the old stable distribution/$1ür die alte Stable-Distribution/;
	s/([Ff])or the old stable/$1ür die alte Stable/;
	s/([Ff])or the current stable distribution/$1ür die aktuelle Stable-Distribution/;
	s/([Ff])or the current stable/$1ür die aktuelle Stable/;
	s/([Ff])or the upcoming stable distribution/$1ür die kommende Stable-Distribution/;
	s/([Ff])or the upcoming stable/$1ür die kommende Stable/;
	s/([Ff])or the Debian stable distribution/$1ür die Debian-Stable-Distribution/;
	s/([Ff])or the stable distribution/$1ür die Stable-Distribution/;
	s/([Ff])or the stable/$1ür die Stable/;
	s/([Ff])or the testing distribution/$1ür die Testing-Distribution/;
	s/([Ff])or the Debian unstable distribution/$1ür die Debian-Unstable-Distribution/;
	s/([Ff])or the unstable distribution/$1ür die Unstable-Distribution/;
	s/([Ff])or the unstable/$1ür die Unstable/;
	s/current stable distribution/aktuelle Stable-Distribution/;
	s/unstable distribution/Unstable-Distribution/;
	s/The old stable distribution/Die alte Stable-Distribution/;
	s/The oldstable distribution/Die alte Stable-Distribution/;
	s/^oldstable distribution/alte Stable-Distribution/;
	s/^stable distribution/Stable-Distribution/;
	s/^unstable distribution/Unstable-Distribution/;
	s/does(?: not|n't) contain a(?:ny)? ([^ ]) package/enthält kein $1-Paket/;
	s/distribution (\(potato|woody|sarge\))/Distribution $1/;
	s/privilege escalation/Privilegienerweiterung/;
	s/cross site/Site-übergreifend/;
	s/\bis not affected/ist nicht betroffen/;
	s/\bisn't affected by this problem/ist von diesem Problem nicht betroffen/;
	s/does not contain ([[:word:]]*) packages?/enthält kein(e) $1-Paket(e)/;
	s/does not contain a(?:ny)? ([[:word:]]*) packages/enthält keine $1-Pakete/;
	s/does not contain a(?:ny)? ([[:word:]]*) package/enthält kein $1-Paket/;
	s/this problem will be fixed soon/wird dieses Problem bald behoben sein/;
	s/\(potato\)/(Potato)/;
	s/\(woody\)/(Woody)/;
	s/\(sarge\)/(Sarge)/;
	s/\(etch\)/(Etch)/;
	s/\(lenny\)/(Lenny)/;
	s/\(squeeze\)/(Squeeze)/;
	s/\(sid\)/(Sid)/;
	s/Refer to Debian (<.*>)?bug #([0-9]+)</Verweisen auf $1 Debian-Fehler #$2</;
	s/(of|from) the Debian Security Audit (Project|Team)/vom Debian-Sicherheits-Audit-$2/;
	s/(of|from) Debian Security Audit (project|team)/vom Debian-Sicherheits-Audit-$2/;
	s/dissector/Sezierer (<q>dissector<\/q>)/;
	s/disclosure/Enthüllung/;

	print DST $_;
}

# Insert the revision number
print DST qq'#use wml::debian::translation-check translation="$revision"\n';

close SRC;
close DST;

# We're done
print "Copying done, remember to edit $dstfile\n";

© 2014-2024 Faster IT GmbH | imprint | privacy policy