]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - ikiwiki-update-wikilist
Exclude working directory from library path (CVE-2016-1238)
[git.ikiwiki.info.git] / ikiwiki-update-wikilist
index 0b52543cda5bdfb3a1b1e6bbd03a0a697210a141..2807e6be682e23dc7f29764c2670b890baa42016 100755 (executable)
@@ -1,6 +1,7 @@
 #!/usr/bin/perl -t
 # Add a user to the system wide wikilist.
-# This script can safely be made suid.
+# This script can safely be made suid or put in /etc/sudoers.
+no lib '.';
 use warnings;
 use strict;
 use English;
@@ -30,6 +31,9 @@ while (<$list>) {
                                $seen=1;
                                push @lines, $_;
                        }
+                       else {
+                               $changed=1;
+                       }
                }
                else {
                        push @lines, $_;
@@ -45,7 +49,7 @@ if (! $seen && ! $remove) {
 }
 if ($changed) {
        close $list || die "ikiwiki-update-wikilist: error reading $list: $!\n";
-       open ($list, ">$wikilist") || die "ikiwiki-update-wikilist: error writing $wikilist: $!\n";
+       open ($list, ">$wikilist") || die "ikiwiki-update-wikilist: cannot write to $wikilist\n";
        foreach (@lines) {
                print $list "$_\n";
        }