X-Git-Url: http://gb7djk.dxcluster.net/gitweb/gitweb.cgi?a=blobdiff_plain;f=perl%2Fcreate_sysop.pl;h=c0ac9e3afc7d8557803a71fc146e65a72fc09349;hb=ab811a0c902225075a9bd69749f65594079433a9;hp=95fc063600d588abccc944741b82b2731291734f;hpb=8ac487c0c3297023df07493b11fe166d4c857081;p=spider.git diff --git a/perl/create_sysop.pl b/perl/create_sysop.pl index 95fc0636..c0ac9e3a 100755 --- a/perl/create_sysop.pl +++ b/perl/create_sysop.pl @@ -6,7 +6,7 @@ # # Copyright (c) 1998 Dirk Koopman G1TLH # -# $Id$ +# # # make sure that modules are searched in the order local then perl @@ -23,25 +23,25 @@ use DXUser; sub delete_it { - system("rm -f $userfn*"); + DXUser->del_file($userfn); } sub create_it { - my $ref = DXUser->get($mycall); + my $ref = DXUser::get(uc $mycall); $ref->del() if $ref; - my $self = DXUser->new($mycall); - $self->{alias} = $myalias; + my $self = DXUser->new(uc $mycall); + $self->{alias} = uc $myalias; $self->{name} = $myname; $self->{qth} = $myqth; - $self->{qra} = $mylocator; + $self->{qra} = uc $mylocator; $self->{lat} = $mylatitude; $self->{long} = $mylongitude; $self->{email} = $myemail; $self->{bbsaddr} = $mybbsaddr; - $self->{homenode} = $mycall; - $self->{sort} = 'A'; # C - Console user, S - Spider cluster, A - AK1A, U - User, B - BBS + $self->{homenode} = uc $mycall; + $self->{sort} = 'S'; # C - Console user, S - Spider cluster, A - AK1A, U - User, B - BBS $self->{priv} = 9; # 0 - 9 - with 9 being the highest $self->{lastin} = 0; $self->{dxok} = 1; @@ -51,31 +51,43 @@ sub create_it $self->close(); # now do one for the alias - $ref = DXUser->get($myalias); + $ref = DXUser::get(uc $myalias); $ref->del() if $ref; - $self = DXUser->new($myalias); + $self = DXUser->new(uc $myalias); $self->{name} = $myname; $self->{qth} = $myqth; - $self->{qra} = $mylocator; + $self->{qra} = uc $mylocator; $self->{lat} = $mylatitude; $self->{long} = $mylongitude; $self->{email} = $myemail; $self->{bbsaddr} = $mybbsaddr; - $self->{homenode} = $mycall; + $self->{homenode} = uc $mycall; $self->{sort} = 'U'; # C - Console user, S - Spider cluster, A - AK1A, U - User, B - BBS $self->{priv} = 9; # 0 - 9 - with 9 being the highest $self->{lastin} = 0; $self->{dxok} = 1; $self->{annok} = 1; $self->{lang} = 'en'; + $self->{group} = [qw(local #9000)]; # write it away $self->close(); } -if (-e "$userfn") { +$lockfn = "$root/local/cluster.lck"; # lock file name +if (-e $lockfn) { + open(CLLOCK, "$lockfn") or die "Can't open Lockfile ($lockfn) $!"; + my $pid = ; + chomp $pid; + die "Sorry, Lockfile ($lockfn) and process $pid exist, a cluster is running\n" if kill 0, $pid; + close CLLOCK; +} + +$DXUser::v3 = 1; + +if (-e "$userfn.v2" || -e "$userfn.v3") { print "Do you wish to destroy your user database (THINK!!!) [y/N]: "; $ans = ; if ($ans =~ /^[Yy]/) {