chiark / gitweb /
srcdump_vcsscript: make into a single hash, not a bevy of separate settings
[cgi-auth-flexible.git] / cgi-auth-flexible.pm
index ccce71c66d3d3f2f7d3657ed051d20a9cb7202ca..4b4823a7362df6dd3bc4733e7796eb1fb4c15aca 100644 (file)
@@ -282,8 +282,9 @@ sub srcdump_novcs ($$$$$) {
 sub srcdump_byvcs ($$$$$$) {
     my ($c, $v, $dumpdir, $dir, $outfn, $vcs) = @_;
 #print STDERR "BYVCS GIT $dir\n";
 sub srcdump_byvcs ($$$$$$) {
     my ($c, $v, $dumpdir, $dir, $outfn, $vcs) = @_;
 #print STDERR "BYVCS GIT $dir\n";
-    return srcdump_dir_cpio($c,$v,$dumpdir,$dir,$outfn,$vcs,
-                           $v->{S}{"srcdump_vcsscript_$vcs"});
+    my $script = $v->{S}{"srcdump_vcsscript"}{$vcs};
+    die "no script for vcs $vcs" unless defined $script;
+    return srcdump_dir_cpio($c,$v,$dumpdir,$dir,$outfn,$vcs,$script);
 }
 
 sub srcdump_file ($$$$) {
 }
 
 sub srcdump_file ($$$$) {
@@ -454,7 +455,6 @@ sub new_verifier {
             username_password_error => sub { die },
            is_logout => sub { $_[1]->has_a_param('logout_param_names') },
            is_loggedout => sub { $_[1]->has_a_param('loggedout_param_names') },
             username_password_error => sub { die },
            is_logout => sub { $_[1]->has_a_param('logout_param_names') },
            is_loggedout => sub { $_[1]->has_a_param('loggedout_param_names') },
-           is_page => sub { return 1 },
            handle_divert => sub { return 0 },
            do_redirect => \&do_redirect_cgi, # this hook is allowed to throw
            cookie_path => "/",
            handle_divert => sub { return 0 },
            do_redirect => \&do_redirect_cgi, # this hook is allowed to throw
            cookie_path => "/",
@@ -478,16 +478,12 @@ sub new_verifier {
                $_[2] =~ m#^/etc/|^/usr/(?!local/)(?!lib/cgi)#;
            },
            srcdump_process_item => \&srcdump_process_item,
                $_[2] =~ m#^/etc/|^/usr/(?!local/)(?!lib/cgi)#;
            },
            srcdump_process_item => \&srcdump_process_item,
-           srcdump_vcs_dirs => [qw(.git .hg .bzr .svn CVS)],
-           srcdump_vcsscript_git => "
+           srcdump_vcs_dirs => [qw(.git .hg .bzr .svn)],
+           srcdump_vcsscript => [git => "
                  git ls-files -z
                  git ls-files -z --others --exclude-from=.gitignore
                  find .git -print0
                  git ls-files -z
                  git ls-files -z --others --exclude-from=.gitignore
                  find .git -print0
-                            ",
-           srcdump_vcsscript_hg => "false hg",
-           srcdump_vcsscript_bzr => "false bzr",
-           srcdump_vcsscript_svn => "false svn",
-           srcdump_vcsscript_cvs => "false cvs",
+                            "],
            srcdump_byvcs => \&srcdump_byvcs,
            srcdump_novcs => \&srcdump_novcs,
            srcdump_excludes => [qw(*~ *.bak *.tmp), '#*#'],
            srcdump_byvcs => \&srcdump_byvcs,
            srcdump_novcs => \&srcdump_novcs,
            srcdump_excludes => [qw(*~ *.bak *.tmp), '#*#'],