diff options
author | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2007-08-28 21:14:03 +0000 |
---|---|---|
committer | joey <joey@0fa5a96a-9a0e-0410-b3b2-a0fd24251071> | 2007-08-28 21:14:03 +0000 |
commit | 58318b3ef9f827425d0e1d44676f1b6b016cb413 (patch) | |
tree | 4f2e9cadc44e4896246f87c53273adba4cf86660 | |
parent | fe316c44347f190c2e3e7443661cc1537ffb8fd3 (diff) |
* Allow -cgi -wrapper to be passed on the command line to generate a
wrapper.
* Fix some taint issues with generating wrappers using the command line.
-rw-r--r-- | debian/changelog | 5 | ||||
-rw-r--r-- | doc/w3mmode/ikiwiki.setup | 2 | ||||
-rwxr-xr-x | ikiwiki.in | 18 |
3 files changed, 16 insertions, 9 deletions
diff --git a/debian/changelog b/debian/changelog index 7b8e956e0..63b03ef3b 100644 --- a/debian/changelog +++ b/debian/changelog @@ -6,8 +6,11 @@ ikiwiki (2.7) UNRELEASED; urgency=low function. * Split out smiley underlay files into a separate underlay, so if the plugin isn't used, the wiki isn't bloated with all those files. + * Allow -cgi -wrapper to be passed on the command line to generate a + wrapper. + * Fix some taint issues with generating wrappers using the command line. - -- Joey Hess <joeyh@debian.org> Mon, 27 Aug 2007 20:48:51 -0400 + -- Joey Hess <joeyh@debian.org> Tue, 28 Aug 2007 17:11:30 -0400 ikiwiki (2.6.1) unstable; urgency=low diff --git a/doc/w3mmode/ikiwiki.setup b/doc/w3mmode/ikiwiki.setup index d71221a8f..8cddec40b 100644 --- a/doc/w3mmode/ikiwiki.setup +++ b/doc/w3mmode/ikiwiki.setup @@ -21,6 +21,8 @@ use IkiWiki::Setup::Standard { { # The cgi wrapper. cgi => 1, + # This path can't be changed, since + # ikiwiki-w3m.cgi only looks in this one location. wrapper => "$ENV{HOME}/.ikiwiki/wrappers/ikiwiki.cgi", wrappermode => "0755", }, diff --git a/ikiwiki.in b/ikiwiki.in index 6242865ee..2aeaf94ec 100755 --- a/ikiwiki.in +++ b/ikiwiki.in @@ -30,7 +30,6 @@ sub getconfig () { #{{{ "wrappers!" => \$config{wrappers}, "usedirs!" => \$config{usedirs}, "getctime" => \$config{getctime}, - "wrappermode=i" => \$config{wrappermode}, "numbacklinks=i" => \$config{numbacklinks}, "rcs=s" => \$config{rcs}, "no-rcs" => sub { $config{rcs}="" }, @@ -64,7 +63,10 @@ sub getconfig () { #{{{ $config{underlaydir}=possibly_foolish_untaint($_[1]) }, "wrapper:s" => sub { - $config{wrapper}=$_[1] ? $_[1] : "ikiwiki-wrap" + $config{wrapper}=$_[1] ? possibly_foolish_untaint($_[1]) : "ikiwiki-wrap" + }, + "wrappermode=i" => sub { + $config{wrappermode}=possibly_foolish_untaint($_[1]) }, "plugin=s@" => sub { push @{$config{plugin}}, $_[1]; @@ -111,12 +113,7 @@ sub getconfig () { #{{{ sub main () { #{{{ getconfig(); - if ($config{cgi}) { - loadindex(); - require IkiWiki::CGI; - cgi(); - } - elsif ($config{setup}) { + if ($config{setup}) { require IkiWiki::Setup; setup(); } @@ -125,6 +122,11 @@ sub main () { #{{{ require IkiWiki::Wrapper; gen_wrapper(); } + elsif ($config{cgi}) { + loadindex(); + require IkiWiki::CGI; + cgi(); + } elsif ($config{render}) { require IkiWiki::Render; commandline_render(); |