* 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.
master
joey 2007-08-28 21:14:03 +00:00
parent fe316c4434
commit 58318b3ef9
3 changed files with 16 additions and 9 deletions

5
debian/changelog vendored
View File

@ -6,8 +6,11 @@ ikiwiki (2.7) UNRELEASED; urgency=low
function. function.
* Split out smiley underlay files into a separate underlay, so if the plugin * 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. 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 ikiwiki (2.6.1) unstable; urgency=low

View File

@ -21,6 +21,8 @@ use IkiWiki::Setup::Standard {
{ {
# The cgi wrapper. # The cgi wrapper.
cgi => 1, 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", wrapper => "$ENV{HOME}/.ikiwiki/wrappers/ikiwiki.cgi",
wrappermode => "0755", wrappermode => "0755",
}, },

View File

@ -30,7 +30,6 @@ sub getconfig () { #{{{
"wrappers!" => \$config{wrappers}, "wrappers!" => \$config{wrappers},
"usedirs!" => \$config{usedirs}, "usedirs!" => \$config{usedirs},
"getctime" => \$config{getctime}, "getctime" => \$config{getctime},
"wrappermode=i" => \$config{wrappermode},
"numbacklinks=i" => \$config{numbacklinks}, "numbacklinks=i" => \$config{numbacklinks},
"rcs=s" => \$config{rcs}, "rcs=s" => \$config{rcs},
"no-rcs" => sub { $config{rcs}="" }, "no-rcs" => sub { $config{rcs}="" },
@ -64,7 +63,10 @@ sub getconfig () { #{{{
$config{underlaydir}=possibly_foolish_untaint($_[1]) $config{underlaydir}=possibly_foolish_untaint($_[1])
}, },
"wrapper:s" => sub { "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 { "plugin=s@" => sub {
push @{$config{plugin}}, $_[1]; push @{$config{plugin}}, $_[1];
@ -111,12 +113,7 @@ sub getconfig () { #{{{
sub main () { #{{{ sub main () { #{{{
getconfig(); getconfig();
if ($config{cgi}) { if ($config{setup}) {
loadindex();
require IkiWiki::CGI;
cgi();
}
elsif ($config{setup}) {
require IkiWiki::Setup; require IkiWiki::Setup;
setup(); setup();
} }
@ -125,6 +122,11 @@ sub main () { #{{{
require IkiWiki::Wrapper; require IkiWiki::Wrapper;
gen_wrapper(); gen_wrapper();
} }
elsif ($config{cgi}) {
loadindex();
require IkiWiki::CGI;
cgi();
}
elsif ($config{render}) { elsif ($config{render}) {
require IkiWiki::Render; require IkiWiki::Render;
commandline_render(); commandline_render();