summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2007-03-21 18:52:56 +0000
committerjoey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071>2007-03-21 18:52:56 +0000
commitc8b4ba354f82fbbcebbbfca65b40a047f9920525 (patch)
tree6dd5bd85031e42da9a3c65d1c5c3f9bfacfdfcda
parent829d097dc52b6a8f50297406affc67fbc08dccb7 (diff)
* Fix a security hole that allowed insertion of unsafe content via the meta
plugins's support for inserting html link and meta tags. Now such content is passed through the htmlscrubber like everything else. * Unfortunatly, that means that some valid uses of those tags are no longer usable, and special case methods needed to be added for including stylesheets, and for doing openid delegation. If you use either of these in your wiki, it will need to be modified. See the meta plugin docs for details.
-rw-r--r--IkiWiki/Plugin/meta.pm41
-rw-r--r--debian/NEWS10
-rw-r--r--debian/changelog13
-rw-r--r--doc/css_market.mdwn4
-rw-r--r--doc/openid.mdwn4
-rw-r--r--doc/plugins/meta.mdwn45
-rw-r--r--doc/security.mdwn11
-rw-r--r--po/bg.po26
-rw-r--r--po/cs.po26
-rw-r--r--po/es.po26
-rw-r--r--po/fr.po21
-rw-r--r--po/gu.po26
-rw-r--r--po/ikiwiki.pot6
-rw-r--r--po/pl.po26
-rw-r--r--po/sv.po26
-rw-r--r--po/vi.po26
16 files changed, 236 insertions, 101 deletions
diff --git a/IkiWiki/Plugin/meta.pm b/IkiWiki/Plugin/meta.pm
index f71b80fb9..ec7a2d081 100644
--- a/IkiWiki/Plugin/meta.pm
+++ b/IkiWiki/Plugin/meta.pm
@@ -26,6 +26,15 @@ sub filter (@) { #{{{
return $params{content};
} # }}}
+sub scrub ($) { #{{{
+ if (IkiWiki::Plugin::htmlscrubber->can("sanitize")) {
+ return IkiWiki::Plugin::htmlscrubber::sanitize(content => shift);
+ }
+ else {
+ return shift;
+ }
+} #}}}
+
sub preprocess (@) { #{{{
if (! @_) {
return "";
@@ -46,9 +55,9 @@ sub preprocess (@) { #{{{
if ($key eq 'link') {
if (%params) {
- $meta{$page}.="<link href=\"".encode_entities($value)."\" ".
+ $meta{$page}.=scrub("<link href=\"".encode_entities($value)."\" ".
join(" ", map { encode_entities($_)."=\"".encode_entities(decode_entities($params{$_}))."\"" } keys %params).
- " />\n";
+ " />\n");
}
else {
# hidden WikiLink
@@ -60,7 +69,7 @@ sub preprocess (@) { #{{{
}
elsif ($key eq 'permalink') {
$permalink{$page}=$value;
- $meta{$page}.="<link rel=\"bookmark\" href=\"".encode_entities($value)."\" />\n";
+ $meta{$page}.=scrub("<link rel=\"bookmark\" href=\"".encode_entities($value)."\" />\n");
}
elsif ($key eq 'date') {
eval q{use Date::Parse};
@@ -69,9 +78,31 @@ sub preprocess (@) { #{{{
$IkiWiki::pagectime{$page}=$time if defined $time;
}
}
+ elsif ($key eq 'stylesheet') {
+ my $rel=exists $params{rel} ? $params{rel} : "alternate stylesheet";
+ my $title=exists $params{title} ? $params{title} : $value;
+ # adding .css to the value prevents using any old web
+ # editable page as a stylesheet
+ my $stylesheet=bestlink($page, $value.".css");
+ if (! length $stylesheet) {
+ return "[[meta ".gettext("stylesheet not found")."]]";
+ }
+ $meta{$page}.='<link href="'.$stylesheet.
+ '" rel="'.encode_entities($rel).
+ '" title="'.encode_entities($title).
+ "style=\"text/css\" />\n";
+ }
+ elsif ($key eq 'openid') {
+ if (exists $params{server}) {
+ $meta{$page}.='<link href="'.encode_entities($params{server}).
+ "\" rel=\"openid.server\" />\n";
+ }
+ $meta{$page}.='<link href="'.encode_entities($value).
+ "\" rel=\"openid.delegate\" />\n";
+ }
else {
- $meta{$page}.="<meta name=\"".encode_entities($key).
- "\" content=\"".encode_entities($value)."\" />\n";
+ $meta{$page}.=scrub("<meta name=\"".encode_entities($key).
+ "\" content=\"".encode_entities($value)."\" />\n");
if ($key eq 'author') {
$author{$page}=$value;
}
diff --git a/debian/NEWS b/debian/NEWS
index 69cbbbd88..9ee20b00a 100644
--- a/debian/NEWS
+++ b/debian/NEWS
@@ -1,3 +1,13 @@
+ikiwiki (1.47) unstable; urgency=low
+
+ Due to a security fix, wikis that have the htmlscrubber enabled can no
+ longer use the meta plugin to insert html link and meta tags.
+
+ Some special case methods have been added for safely including stylesheets,
+ and for doing openid delegation. See the meta plugin docs for details.
+
+ -- Joey Hess <joeyh@debian.org> Wed, 21 Mar 2007 14:18:40 -0400
+
ikiwiki (1.45) unstable; urgency=low
Wikis need to be rebuilt on upgrade to this version. If you listed your wiki
diff --git a/debian/changelog b/debian/changelog
index 976143aee..42b23945a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,16 @@
+ikiwiki (1.47) UNRELEASED; urgency=low
+
+ * Fix a security hole that allowed insertion of unsafe content via the meta
+ plugins's support for inserting html link and meta tags. Now such content
+ is passed through the htmlscrubber like everything else.
+ * Unfortunatly, that means that some valid uses of those tags are no longer
+ usable, and special case methods needed to be added for including
+ stylesheets, and for doing openid delegation. If you use either of these
+ in your wiki, it will need to be modified. See the meta plugin docs
+ for details.
+
+ -- Joey Hess <joeyh@debian.org> Wed, 21 Mar 2007 14:05:00 -0400
+
ikiwiki (1.46) unstable; urgency=low
* Fix a bug with inlined create page links, including Discussion links on
diff --git a/doc/css_market.mdwn b/doc/css_market.mdwn
index 39e04e2d9..15cd6e4c9 100644
--- a/doc/css_market.mdwn
+++ b/doc/css_market.mdwn
@@ -7,13 +7,13 @@ files..)
* **[[css_market/zack.css]]**, contributed by [[StefanoZacchiroli]],
customized mostly for *blogging purposes*, can be seen in action on
[zack's blog](http://www.bononia.it/~zack/blog/)
- [[meta link="css_market/zack.css" rel="alternate stylesheet" title="zack" type="text/css"]]
+ [[meta stylesheet="zack"]]
* **[[css_market/kirkambar.css]]**, contributed by [[Roktas]]. This far from perfect
stylesheet follows a [Gitweb](http://www.kernel.org/git/?p=git/git.git;a=tree;f=gitweb)
like theme, so it may provide a consistent look'n feel along with the [[git]] backend. ;-)
You can see it in action on [kirkambar](http://kirkambar.net/) (Turkish content).
- [[meta link="css_market/kirkambar.css" rel="alternate stylesheet" title="kirkambar" type="text/css"]]
+ [[meta stylesheet="kirkambar"]]
If your web browser allows selecting between multiple stylesheets, this
page can be viewed using any of the stylesheets above. For example, if
diff --git a/doc/openid.mdwn b/doc/openid.mdwn
index 5037ac4f7..a8ce46f08 100644
--- a/doc/openid.mdwn
+++ b/doc/openid.mdwn
@@ -28,5 +28,5 @@ registration process when using OpenID.
It's also possible to make a page in the wiki usable as an OpenID url,
by delegating it to an openid server. Here's an example of how to do that:
- \[[meta link="http://www.myopenid.com/server" rel="openid.server"]]
- \[[meta link="http://yourid.myopenid.com/" rel="openid.delegate"]]
+ \\[[meta openid="http://yourid.myopenid.com/"
+ server="http://www.myopenid.com/server"]]
diff --git a/doc/plugins/meta.mdwn b/doc/plugins/meta.mdwn
index 5c3098e56..cebe11f56 100644
--- a/doc/plugins/meta.mdwn
+++ b/doc/plugins/meta.mdwn
@@ -10,21 +10,25 @@ Enter the metadata as follows:
The first form sets a given field to a given value, while the second form
also specifies some additional sub-parameters.
+The field values are treated as HTML entity-escaped text, so you can include
+a quote in the text by writing `&quot;` and so on.
+
You can use any field names you like, but here are some predefined ones:
* link
- Specifies a link to another page. This is used to generate a html
- &lt;link&gt; tag, and also as a way to make the wiki treat one page as
- linking to another without displaying a user-visible link. The latter
- can be useful when using links to categorise pages. A html link tag
- would look like this:
+ Specifies a link to another page. This can be used as a way to make the
+ wiki treat one page as linking to another without displaying a user-visible
+ [[WikiLink]]:
+
+ \[[meta link=otherpage]]
- \[[meta link="foo.css" rel="stylesheet" type="text/css"]]
+ It can also be used to insert a html &lt;link&gt; tag. For example:
- A non-user-visible [[WikiLink]] would instead look like this:
+ \[[meta link="http://joeyh.myopenid.com/" rel="openid.delegate"]]
- \[[meta link=otherpage]]
+ However, this latter syntax won't be allowed if the [[htmlscrubber]] is
+ enabled, since it can be used to insert unsafe content.
* title
@@ -53,9 +57,24 @@ You can use any field names you like, but here are some predefined ones:
Specifies the creation date of the page. The date can be entered in
nearly any format, since it's parsed by [[cpan TimeDate]].
-If the field is not treated specially (as the link and title fields are),
-the metadata will be written to the generated html page as a &lt;meta&gt;
-header.
+* stylesheet
-The field value is treated as HTML entity-escaped text, so you can include
-a quote in the text by writing `&quot;` and so on.
+ Adds a stylesheet to a page. The stylesheet is treated as a wiki link to
+ a `.css` file in the wiki, so it cannot be used to add links to external
+ stylesheets. Example:
+
+ \[[meta stylesheet=somestyle rel="alternate stylesheet"
+ title="somestyle"]]
+
+* openid
+
+ Adds html &lt;link&gt; tags to perform OpenID delegation to an external
+ OpenID server. This lets you use an ikiwiki page as your OpenID. Example:
+
+ \\[[meta openid="http://joeyh.myopenid.com/"
+ server="http://www.myopenid.com/server"]]
+
+If the field is not one of the above predefined fields, the metadata will be
+written to the generated html page as a &lt;meta&gt; header. However, this
+won't be allowed if the [[htmlscrubber]] is enabled, since it can be used to
+insert unsafe content.
diff --git a/doc/security.mdwn b/doc/security.mdwn
index 9b561a13e..b1e8d03f6 100644
--- a/doc/security.mdwn
+++ b/doc/security.mdwn
@@ -304,3 +304,14 @@ This hole was discovered on 21 March 2007 and fixed the same day (er, hour)
with the release of ikiwiki 1.46. A fix was also backported to Debian etch,
as version 1.33.2. I recommend upgrading to one of these versions if your
wiki allows web editing or aggregates feeds.
+
+## javascript insertion via meta tags
+
+It was possible to use the meta plugin's meta tags to insert arbitrary
+url contents, which could be used to insert stylesheet information
+containing javascript. This was fixed by sanitising meta tags.
+
+This hole was discovered on 21 March 2007 and fixed the same day
+with the release of ikiwiki 1.47. A fix was also backported to Debian etch,
+as version 1.33.3. I recommend upgrading to one of these versions if your
+wiki can be edited by third parties.
diff --git a/po/bg.po b/po/bg.po
index 526edcf3b..71831b25f 100644
--- a/po/bg.po
+++ b/po/bg.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ikiwiki-bg\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-10 21:24-0500\n"
+"POT-Creation-Date: 2007-03-21 14:36-0400\n"
"PO-Revision-Date: 2007-01-12 01:19+0200\n"
"Last-Translator: Damyan Ivanov <dam@modsodtsys.com>\n"
"Language-Team: Bulgarian <dict@fsa-bg.org>\n"
@@ -24,33 +24,34 @@ msgstr "Първо трябва да влезете."
msgid "Preferences saved."
msgstr "Предпочитанията са запазени."
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:339
#, perl-format
msgid "%s is not an editable page"
msgstr ""
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:418 ../IkiWiki/Plugin/brokenlinks.pm:24
#: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
#: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
#: ../IkiWiki/Render.pm:165
msgid "discussion"
msgstr "дискусия"
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:464
#, perl-format
msgid "creating %s"
msgstr "създаване на %s"
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:481 ../IkiWiki/CGI.pm:496 ../IkiWiki/CGI.pm:507
+#: ../IkiWiki/CGI.pm:533 ../IkiWiki/CGI.pm:577
#, perl-format
msgid "editing %s"
msgstr "промяна на %s"
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:674
msgid "You are banned."
msgstr "Достъпът ви е забранен."
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:706
msgid "login failed, perhaps you need to turn on cookies?"
msgstr ""
@@ -185,6 +186,11 @@ msgstr ""
"грешка при зареждането на perl-модула „Markdown.pm” (%s) или „/usr/bin/"
"markdown” (%s)"
+#: ../IkiWiki/Plugin/meta.pm:88
+#, fuzzy
+msgid "stylesheet not found"
+msgstr "шаблонът „%s” не е намерен"
+
#: ../IkiWiki/Plugin/mirrorlist.pm:23
msgid "Mirrors"
msgstr "Огледала"
@@ -488,15 +494,15 @@ msgstr "грешка при четене на „%s”: %s"
msgid "generating wrappers.."
msgstr "генериране на обвивки..."
-#: ../IkiWiki/Setup/Standard.pm:71
+#: ../IkiWiki/Setup/Standard.pm:72
msgid "rebuilding wiki.."
msgstr "обновяване на уики..."
-#: ../IkiWiki/Setup/Standard.pm:74
+#: ../IkiWiki/Setup/Standard.pm:75
msgid "refreshing wiki.."
msgstr "осъвременяване на уики..."
-#: ../IkiWiki/Setup/Standard.pm:83
+#: ../IkiWiki/Setup/Standard.pm:84
msgid "done"
msgstr "готово"
diff --git a/po/cs.po b/po/cs.po
index ad2e8f7e1..d34644d33 100644
--- a/po/cs.po
+++ b/po/cs.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ikiwiki\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-10 21:24-0500\n"
+"POT-Creation-Date: 2007-03-21 14:36-0400\n"
"PO-Revision-Date: 2007-02-17 12:07+0100\n"
"Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
@@ -23,33 +23,34 @@ msgstr "Nejprve se musíte přihlásit."
msgid "Preferences saved."
msgstr "Nastavení uloženo."
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:339
#, perl-format
msgid "%s is not an editable page"
msgstr "%s není editovatelná stránka"
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:418 ../IkiWiki/Plugin/brokenlinks.pm:24
#: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
#: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
#: ../IkiWiki/Render.pm:165
msgid "discussion"
msgstr "diskuse"
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:464
#, perl-format
msgid "creating %s"
msgstr "vytvářím %s"
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:481 ../IkiWiki/CGI.pm:496 ../IkiWiki/CGI.pm:507
+#: ../IkiWiki/CGI.pm:533 ../IkiWiki/CGI.pm:577
#, perl-format
msgid "editing %s"
msgstr "upravuji %s"
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:674
msgid "You are banned."
msgstr "Jste vyhoštěni."
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:706
msgid "login failed, perhaps you need to turn on cookies?"
msgstr "přihlášení selhalo; možná si musíte povolit cookies?"
@@ -180,6 +181,11 @@ msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
"selhalo nahrání perlového modulu Markdown.pm (%s) nebo /usr/bin/markdown (%s)"
+#: ../IkiWiki/Plugin/meta.pm:88
+#, fuzzy
+msgid "stylesheet not found"
+msgstr "šablona %s nebyla nalezena"
+
#: ../IkiWiki/Plugin/mirrorlist.pm:23
msgid "Mirrors"
msgstr "Zrcadla"
@@ -483,15 +489,15 @@ msgstr "nemohu číst %s: %s"
msgid "generating wrappers.."
msgstr "generuji obaly..."
-#: ../IkiWiki/Setup/Standard.pm:71
+#: ../IkiWiki/Setup/Standard.pm:72
msgid "rebuilding wiki.."
msgstr "znovu vytvářím wiki..."
-#: ../IkiWiki/Setup/Standard.pm:74
+#: ../IkiWiki/Setup/Standard.pm:75
msgid "refreshing wiki.."
msgstr "obnovuji wiki..."
-#: ../IkiWiki/Setup/Standard.pm:83
+#: ../IkiWiki/Setup/Standard.pm:84
msgid "done"
msgstr "hotovo"
diff --git a/po/es.po b/po/es.po
index d6bc597e0..ef5fe0884 100644
--- a/po/es.po
+++ b/po/es.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: es\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-10 21:24-0500\n"
+"POT-Creation-Date: 2007-03-21 14:36-0400\n"
"PO-Revision-Date: 2007-02-12 10:31+0100\n"
"Last-Translator: Víctor Moral <victor@taquiones.net>\n"
"Language-Team: spanish <es@li.org>\n"
@@ -24,33 +24,34 @@ msgstr "Antes es necesario identificarse."
msgid "Preferences saved."
msgstr "Las preferencias se han guardado."
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:339
#, perl-format
msgid "%s is not an editable page"
msgstr "la página %s no es modificable"
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:418 ../IkiWiki/Plugin/brokenlinks.pm:24
#: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
#: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
#: ../IkiWiki/Render.pm:165
msgid "discussion"
msgstr "comentarios"
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:464
#, perl-format
msgid "creating %s"
msgstr "creando página %s"
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:481 ../IkiWiki/CGI.pm:496 ../IkiWiki/CGI.pm:507
+#: ../IkiWiki/CGI.pm:533 ../IkiWiki/CGI.pm:577
#, perl-format
msgid "editing %s"
msgstr "modificando página %s"
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:674
msgid "You are banned."
msgstr "Ha sido expulsado."
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:706
msgid "login failed, perhaps you need to turn on cookies?"
msgstr ""
"registro fallido, ¿ tal vez es necesario activar las cookies en el "
@@ -187,6 +188,11 @@ msgstr ""
"no he podido cargar el módulo Perl Markdown.pm (%s) ó no he podido ejecutar "
"el programa /usr/bin/markdown (%s)"
+#: ../IkiWiki/Plugin/meta.pm:88
+#, fuzzy
+msgid "stylesheet not found"
+msgstr "no he encontrado la plantilla %s"
+
#: ../IkiWiki/Plugin/mirrorlist.pm:23
msgid "Mirrors"
msgstr "Réplicas"
@@ -492,15 +498,15 @@ msgstr "no puedo leer el archivo %s: %s"
msgid "generating wrappers.."
msgstr "generando programas auxiliares.."
-#: ../IkiWiki/Setup/Standard.pm:71
+#: ../IkiWiki/Setup/Standard.pm:72
msgid "rebuilding wiki.."
msgstr "reconstruyendo el wiki.."
-#: ../IkiWiki/Setup/Standard.pm:74
+#: ../IkiWiki/Setup/Standard.pm:75
msgid "refreshing wiki.."
msgstr "actualizando el wiki.."
-#: ../IkiWiki/Setup/Standard.pm:83
+#: ../IkiWiki/Setup/Standard.pm:84
msgid "done"
msgstr "completado"
diff --git a/po/fr.po b/po/fr.po
index 3932129ab..7d97d2b02 100644
--- a/po/fr.po
+++ b/po/fr.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ikiwiki\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-17 19:21-0400\n"
+"POT-Creation-Date: 2007-03-21 14:36-0400\n"
"PO-Revision-Date: 2007-03-08 21:18+0100\n"
"Last-Translator: Jean-Luc Coulon (f5ibh) <jean-luc.coulon@wanadoo.fr>\n"
"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
@@ -42,17 +42,17 @@ msgstr "Discussion"
msgid "creating %s"
msgstr "Création de %s"
-#: ../IkiWiki/CGI.pm:481 ../IkiWiki/CGI.pm:496 ../IkiWiki/CGI.pm:518
-#: ../IkiWiki/CGI.pm:562
+#: ../IkiWiki/CGI.pm:481 ../IkiWiki/CGI.pm:496 ../IkiWiki/CGI.pm:507
+#: ../IkiWiki/CGI.pm:533 ../IkiWiki/CGI.pm:577
#, perl-format
msgid "editing %s"
msgstr "Édition de %s"
-#: ../IkiWiki/CGI.pm:659
+#: ../IkiWiki/CGI.pm:674
msgid "You are banned."
msgstr "Vous avez été banni."
-#: ../IkiWiki/CGI.pm:691
+#: ../IkiWiki/CGI.pm:706
msgid "login failed, perhaps you need to turn on cookies?"
msgstr ""
"Échec de l'identification, vous devriez peut-être autoriser les cookies."
@@ -187,6 +187,11 @@ msgstr ""
"Échec de chargement du module perl Markdown.pm (%s) ou de /usr/bin/markdown "
"(%s)"
+#: ../IkiWiki/Plugin/meta.pm:88
+#, fuzzy
+msgid "stylesheet not found"
+msgstr "Patron %s introuvable "
+
#: ../IkiWiki/Plugin/mirrorlist.pm:23
msgid "Mirrors"
msgstr "Miroirs"
@@ -488,15 +493,15 @@ msgstr "Lecture impossible de %s : %s"
msgid "generating wrappers.."
msgstr "Création des enrobages..."
-#: ../IkiWiki/Setup/Standard.pm:71
+#: ../IkiWiki/Setup/Standard.pm:72
msgid "rebuilding wiki.."
msgstr "Reconstruction du wiki..."
-#: ../IkiWiki/Setup/Standard.pm:74
+#: ../IkiWiki/Setup/Standard.pm:75
msgid "refreshing wiki.."
msgstr "Rafraîchissement du wiki..."
-#: ../IkiWiki/Setup/Standard.pm:83
+#: ../IkiWiki/Setup/Standard.pm:84
msgid "done"
msgstr "Terminé"
diff --git a/po/gu.po b/po/gu.po
index d5e1f33e2..bf72eb2b6 100644
--- a/po/gu.po
+++ b/po/gu.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ikiwiki-gu\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-10 21:24-0500\n"
+"POT-Creation-Date: 2007-03-21 14:36-0400\n"
"PO-Revision-Date: 2007-01-11 16:05+0530\n"
"Last-Translator: Kartik Mistry <kartik.mistry@gmail.com>\n"
"Language-Team: Gujarati <team@utkarsh.org>\n"
@@ -23,33 +23,34 @@ msgstr "તમારે પ્રથમ લોગ ઇન થવું પડશ
msgid "Preferences saved."
msgstr "પ્રાથમિકતાઓ સંગ્રહાઇ."
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:339
#, perl-format
msgid "%s is not an editable page"
msgstr ""
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:418 ../IkiWiki/Plugin/brokenlinks.pm:24
#: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
#: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
#: ../IkiWiki/Render.pm:165
msgid "discussion"
msgstr "ચર્ચા"
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:464
#, perl-format
msgid "creating %s"
msgstr "%s બનાવે છે"
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:481 ../IkiWiki/CGI.pm:496 ../IkiWiki/CGI.pm:507
+#: ../IkiWiki/CGI.pm:533 ../IkiWiki/CGI.pm:577
#, perl-format
msgid "editing %s"
msgstr "%s સુધારે છે"
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:674
msgid "You are banned."
msgstr "તમારા પર પ્રતિબંધ છે."
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:706
msgid "login failed, perhaps you need to turn on cookies?"
msgstr ""
@@ -179,6 +180,11 @@ msgstr "%s એ %s દ્વારા તાળું મરાયેલ છે
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr "Markdown.pm પર્લ મોડ્યુલ (%s) અથવા /usr/bin/markdown (%s) લાવવામાં નિષ્ફળ"
+#: ../IkiWiki/Plugin/meta.pm:88
+#, fuzzy
+msgid "stylesheet not found"
+msgstr "ટેમ્પલેટ %s મળ્યું નહી"
+
#: ../IkiWiki/Plugin/mirrorlist.pm:23
msgid "Mirrors"
msgstr "મિરરો"
@@ -480,15 +486,15 @@ msgstr "વાંચી શકાતી નથી %s: %s"
msgid "generating wrappers.."
msgstr "આવરણ બનાવે છે.."
-#: ../IkiWiki/Setup/Standard.pm:71
+#: ../IkiWiki/Setup/Standard.pm:72
msgid "rebuilding wiki.."
msgstr "વીકી ફરીથી બનાવે છે.."
-#: ../IkiWiki/Setup/Standard.pm:74
+#: ../IkiWiki/Setup/Standard.pm:75
msgid "refreshing wiki.."
msgstr "વીકીને તાજી કરે છે.."
-#: ../IkiWiki/Setup/Standard.pm:83
+#: ../IkiWiki/Setup/Standard.pm:84
msgid "done"
msgstr "સંપૂર્ણ"
diff --git a/po/ikiwiki.pot b/po/ikiwiki.pot
index 2af2804ae..961023b2b 100644
--- a/po/ikiwiki.pot
+++ b/po/ikiwiki.pot
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-21 02:42-0400\n"
+"POT-Creation-Date: 2007-03-21 14:47-0400\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
@@ -179,6 +179,10 @@ msgstr ""
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr ""
+#: ../IkiWiki/Plugin/meta.pm:88
+msgid "stylesheet not found"
+msgstr ""
+
#: ../IkiWiki/Plugin/mirrorlist.pm:23
msgid "Mirrors"
msgstr ""
diff --git a/po/pl.po b/po/pl.po
index 06ec6af15..46ca71dcf 100644
--- a/po/pl.po
+++ b/po/pl.po
@@ -8,7 +8,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ikiwiki 1.37\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-10 21:24-0500\n"
+"POT-Creation-Date: 2007-03-21 14:36-0400\n"
"PO-Revision-Date: 2007-01-05 16:33+100\n"
"Last-Translator: Paweł Tęcza <ptecza@net.icm.edu.pl>\n"
"Language-Team: Debian L10n Polish <debian-l10n-polish@lists.debian.org>\n"
@@ -24,33 +24,34 @@ msgstr "Konieczne jest zalogowanie się."
msgid "Preferences saved."
msgstr "Ustawienia zostały zapisane."
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:339
#, perl-format
msgid "%s is not an editable page"
msgstr ""
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:418 ../IkiWiki/Plugin/brokenlinks.pm:24
#: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
#: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
#: ../IkiWiki/Render.pm:165
msgid "discussion"
msgstr "dyskusja"
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:464
#, perl-format
msgid "creating %s"
msgstr "tworzenie strony %s"
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:481 ../IkiWiki/CGI.pm:496 ../IkiWiki/CGI.pm:507
+#: ../IkiWiki/CGI.pm:533 ../IkiWiki/CGI.pm:577
#, perl-format
msgid "editing %s"
msgstr "edycja strony %s"
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:674
msgid "You are banned."
msgstr "Dostęp został zabroniony przez administratora."
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:706
msgid "login failed, perhaps you need to turn on cookies?"
msgstr ""
@@ -188,6 +189,11 @@ msgstr ""
"Awaria w trakcie ładowania perlowego modułu Markdown.pm (%s) lub "
"uruchamiania programu /usr/bin/markdown (%s)"
+#: ../IkiWiki/Plugin/meta.pm:88
+#, fuzzy
+msgid "stylesheet not found"
+msgstr "nieznaleziony szablon %s"
+
#: ../IkiWiki/Plugin/mirrorlist.pm:23
msgid "Mirrors"
msgstr "Kopie lustrzane"
@@ -492,15 +498,15 @@ msgstr "awaria w trakcie czytania strony %s: %s"
msgid "generating wrappers.."
msgstr "tworzenie osłon..."
-#: ../IkiWiki/Setup/Standard.pm:71
+#: ../IkiWiki/Setup/Standard.pm:72
msgid "rebuilding wiki.."
msgstr "przebudowywanie wiki..."
-#: ../IkiWiki/Setup/Standard.pm:74
+#: ../IkiWiki/Setup/Standard.pm:75
msgid "refreshing wiki.."
msgstr "odświeżanie wiki..."
-#: ../IkiWiki/Setup/Standard.pm:83
+#: ../IkiWiki/Setup/Standard.pm:84
msgid "done"
msgstr "gotowe"
diff --git a/po/sv.po b/po/sv.po
index e6b0bc585..2b2c85d0f 100644
--- a/po/sv.po
+++ b/po/sv.po
@@ -7,7 +7,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ikiwiki\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-10 21:24-0500\n"
+"POT-Creation-Date: 2007-03-21 14:36-0400\n"
"PO-Revision-Date: 2007-01-10 23:47+0100\n"
"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
"Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n"
@@ -23,33 +23,34 @@ msgstr "Du måste logga in först."
msgid "Preferences saved."
msgstr "Inställningar sparades."
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:339
#, perl-format
msgid "%s is not an editable page"
msgstr ""
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:418 ../IkiWiki/Plugin/brokenlinks.pm:24
#: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
#: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
#: ../IkiWiki/Render.pm:165
msgid "discussion"
msgstr "diskussion"
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:464
#, perl-format
msgid "creating %s"
msgstr "skapar %s"
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:481 ../IkiWiki/CGI.pm:496 ../IkiWiki/CGI.pm:507
+#: ../IkiWiki/CGI.pm:533 ../IkiWiki/CGI.pm:577
#, perl-format
msgid "editing %s"
msgstr "redigerar %s"
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:674
msgid "You are banned."
msgstr "Du är bannlyst."
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:706
msgid "login failed, perhaps you need to turn on cookies?"
msgstr ""
@@ -181,6 +182,11 @@ msgstr ""
"misslyckades med att läsa in Perl-modulen Markdown.pm (%s) eller /usr/bin/"
"markdown (%s)"
+#: ../IkiWiki/Plugin/meta.pm:88
+#, fuzzy
+msgid "stylesheet not found"
+msgstr "mallen %s hittades inte"
+
#: ../IkiWiki/Plugin/mirrorlist.pm:23
msgid "Mirrors"
msgstr "Speglar"
@@ -484,15 +490,15 @@ msgstr "kan inte läsa %s: %s"
msgid "generating wrappers.."
msgstr "genererar wrappers.."
-#: ../IkiWiki/Setup/Standard.pm:71
+#: ../IkiWiki/Setup/Standard.pm:72
msgid "rebuilding wiki.."
msgstr "bygger om wiki.."
-#: ../IkiWiki/Setup/Standard.pm:74
+#: ../IkiWiki/Setup/Standard.pm:75
msgid "refreshing wiki.."
msgstr "uppdaterar wiki.."
-#: ../IkiWiki/Setup/Standard.pm:83
+#: ../IkiWiki/Setup/Standard.pm:84
msgid "done"
msgstr "klar"
diff --git a/po/vi.po b/po/vi.po
index 8442a2006..4816d55f7 100644
--- a/po/vi.po
+++ b/po/vi.po
@@ -6,7 +6,7 @@ msgid ""
msgstr ""
"Project-Id-Version: ikiwiki\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2007-03-10 21:24-0500\n"
+"POT-Creation-Date: 2007-03-21 14:36-0400\n"
"PO-Revision-Date: 2007-01-13 15:31+1030\n"
"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
@@ -24,33 +24,34 @@ msgstr "Trước tiên bạn cần phải đăng nhập."
msgid "Preferences saved."
msgstr "Tùy thích đã được lưu."
-#: ../IkiWiki/CGI.pm:340
+#: ../IkiWiki/CGI.pm:339
#, perl-format
msgid "%s is not an editable page"
msgstr ""
-#: ../IkiWiki/CGI.pm:427 ../IkiWiki/Plugin/brokenlinks.pm:24
+#: ../IkiWiki/CGI.pm:418 ../IkiWiki/Plugin/brokenlinks.pm:24
#: ../IkiWiki/Plugin/inline.pm:172 ../IkiWiki/Plugin/opendiscussion.pm:17
#: ../IkiWiki/Plugin/orphans.pm:28 ../IkiWiki/Render.pm:97
#: ../IkiWiki/Render.pm:165
msgid "discussion"
msgstr "thảo luận"
-#: ../IkiWiki/CGI.pm:473
+#: ../IkiWiki/CGI.pm:464
#, perl-format
msgid "creating %s"
msgstr "đang tạo %s"
-#: ../IkiWiki/CGI.pm:490 ../IkiWiki/CGI.pm:526 ../IkiWiki/CGI.pm:570
+#: ../IkiWiki/CGI.pm:481 ../IkiWiki/CGI.pm:496 ../IkiWiki/CGI.pm:507
+#: ../IkiWiki/CGI.pm:533 ../IkiWiki/CGI.pm:577
#, perl-format
msgid "editing %s"
msgstr "đang sửa %s"
-#: ../IkiWiki/CGI.pm:667
+#: ../IkiWiki/CGI.pm:674
msgid "You are banned."
msgstr "Bạn bị cấm ra."
-#: ../IkiWiki/CGI.pm:699
+#: ../IkiWiki/CGI.pm:706
msgid "login failed, perhaps you need to turn on cookies?"
msgstr ""
@@ -182,6 +183,11 @@ msgstr "%s bị %s khoá nên không thể sửa được"
msgid "failed to load Markdown.pm perl module (%s) or /usr/bin/markdown (%s)"
msgstr "lỗi nạp mô-đun perl Markdown.pm (%s) hay « /usr/bin/markdown » (%s)"
+#: ../IkiWiki/Plugin/meta.pm:88
+#, fuzzy
+msgid "stylesheet not found"
+msgstr "không tìm thấy mẫu %s"
+
#: ../IkiWiki/Plugin/mirrorlist.pm:23
msgid "Mirrors"
msgstr "Nhân bản"
@@ -484,15 +490,15 @@ msgstr "không thể đọc %s: %s"
msgid "generating wrappers.."
msgstr "đang tạo ra các bộ bao bọc.."
-#: ../IkiWiki/Setup/Standard.pm:71
+#: ../IkiWiki/Setup/Standard.pm:72
msgid "rebuilding wiki.."
msgstr "đang xây dựng lại wiki.."
-#: ../IkiWiki/Setup/Standard.pm:74
+#: ../IkiWiki/Setup/Standard.pm:75
msgid "refreshing wiki.."
msgstr "đang làm tươi wiki.."
-#: ../IkiWiki/Setup/Standard.pm:83
+#: ../IkiWiki/Setup/Standard.pm:84
msgid "done"
msgstr "xong"