chiark / gitweb /
print doms
[d.git] / fyvzl
diff --git a/fyvzl b/fyvzl
index 97b1d9b4e7dca71e2d9bb72a96e046445be592a1..3ccae97d32d6bf2cf8d6b69ba1bf4ac14ecad376 100755 (executable)
--- a/fyvzl
+++ b/fyvzl
@@ -1,6 +1,6 @@
 #!/usr/bin/perl -w
 #
-# usage: ../fyvzl [-lLENGTH] [-mMAXPERUSER] [-qQUALDOM] DATABASE-FILE ACTION ARG
+# usage: ../fyvzl [-lLENGTH] [-mMAXPERUSER] [-dDOM] [-qQUALDOM] DATABASE-FILE ACTION ARG
 # actions
 #   create [REDIRECT-TO]
 #   update LOCAL-PART REDIRECT-TO
@@ -22,6 +22,7 @@ our $randlength = 6;
 our $maxperuser = 10000;
 our $qualdom;
 our $dbh;
+our $dom;
 our $user;
 our $priv;
 
@@ -53,10 +54,12 @@ sub prow ($) {
        print "# user $u ".(isdisabled($u) ? 'disabled' : 'enabled')."\n";
        $last_u = $u;
     }
+    my $pa = $row->{'localpart'};
+    $pa .= '@'.$dom if defined $dom;
     if (defined $row->{'redirect'}) {
-       print "$row->{'localpart'}: $row->{'redirect'}\n";
+       print "$pa: $row->{'redirect'}\n";
     } else {
-       print "# reject $row->{'localpart'}\n";
+       print "# reject $pa\n";
     }
 }
 
@@ -216,6 +219,8 @@ while (@ARGV) {
        $randlength = $1;
     } elsif (m/^-m(\d+)$/) {
        $maxperuser = $1;
+    } elsif (m/^-d(\S+)$/) {
+       $dom = $1;
     } elsif (m/^-q(\S+)$/) {
        $qualdom = $1;
     } else {