]> jfr.im git - irc/SurrealServices/srsv.git/commitdiff
Fix stuff like sending hashes instead of nicks
authorerry <redacted>
Thu, 28 Jul 2011 13:51:09 +0000 (13:51 +0000)
committererry <redacted>
Thu, 28 Jul 2011 13:51:09 +0000 (13:51 +0000)
git-svn-id: http://svn.tabris.net/repos/srsv@3548 70d4eda1-72e9-0310-a436-91e5bd24443c

branches/0.5.0/SrSv/IRCd/Validate.pm
branches/0.5.0/SrSv/Log.pm
branches/0.5.0/SrSv/Unreal/Send.pm
branches/0.5.0/SrSv/User.pm
branches/0.5.0/modules/services.pm
branches/0.5.0/modules/serviceslibs/nickserv.pm

index 3f28a486faaaa0188d6da13c6cb4044723aa512c..1906838b9a6d5522a4c4f6dd9638ad55c5792a8b 120000 (symlink)
@@ -1 +1 @@
-/home/errietta/srsv/branches/0.5.0/SrSv/Unreal/Validate.pm
\ No newline at end of file
+/home/errietta/0.5.0/SrSv/Unreal/Validate.pm
\ No newline at end of file
index a0c297193c5e16892b901da375e2180b21cd013d..0b5877e073e87b04796e803129733d92eeb4fc8d 100644 (file)
@@ -62,6 +62,7 @@ open_log('diag', 'services.log');
 open_log('netdump', 'netdump.log') if main::NETDUMP();
 
 sub wlog($$$) {
+       
        my ($service, $level, $text) = @_;
 
        my $prefix;
index 7e0a161a387d53be6923b87968790e7677768d0e..1973513960d1d8755bf7068af55f86251ef1e59b 100644 (file)
@@ -541,7 +541,7 @@ sub irckill($$$) {
        my $targetN = $target->{NICK};
        return 0 unless update_userkill($targetN);
        ircsendimm(":$srcN KILL $targetN ($reason)");
-       callfuncs('KILL', 0, 1, [$srcN, $targetN, $srcN, $reason]);
+       callfuncs('KILL', 0, 1, [$src, $target, $srcN, $reason]);
 }
 
 sub svssno($$$) {
@@ -728,13 +728,15 @@ sub unqline($) {
 }
 
 sub svskill($$$) {
-       my ($src, $target, $reason) = @_;
+       my ($srcUser, $targetUser, $reason) = @_;
        # SVSKILL requires a src, it will NOT work w/o one.
        # not sure if it'll accept a servername or not.
        # consider defaulting to ServServ
-       die('svskill called w/o $src') unless $src;
-       ircsend(':'.$src.' SVSKILL '.$target.' :'.$reason);
-       callfuncs('QUIT', 0, undef, [$target, $reason]);
+       my $srcN = $srcUser -> {NICK};
+       my $targetN = $targetUser -> {NICK};
+       die('svskill called w/o $srcUser') unless $srcUser;
+       ircsend(':'.$srcN.' SVSKILL '.$targetN.' :'.$reason);
+       callfuncs('QUIT', 0, undef, [$targetUser, $reason]);
 }
 
 sub version($) {
index 1f08425ed3f1474c56d5b52f6f1115cdc92761d4..673d9f5876609121c74b92fae01391ed47743b4b 100644 (file)
@@ -344,7 +344,7 @@ sub get_host($) {
        my ($user) = @_;
 
        my $id;
-       if(ref($user)) {
+       if(ref($user) eq "HASH") {
                $id = get_user_id($user);
        } else {
                $id = get_user_id({ NICK => $user });
index 377b9ebbc3be7dc4926ab15c8155ec71e43c8620..d54455e73fa59cea7a2970ebefcc8e83166e6d43 100644 (file)
@@ -170,10 +170,10 @@ addhandler('PRIVMSG', undef, lc services_conf_hostserv, 'hostserv::dispatch') if
 # $nick should be a registered root nick, if applicable
 # $src is the nick or nickid that sent the command
 sub ulog($$$$;$$) {
+       
        my ($service, $level, $text) = splice(@_, 0, 3);
        
        my $hostmask = nickserv::get_hostmask($_[0]);
-
        # TODO - Record this in the database
        
        wlog($service, $level, "$hostmask - $text");
index ffd1b21bcc120682d396e793acc3f9e5ffd7aeda..e5565b5914ab3b2e1508e6f6fa41c5e48a611f2d 100644 (file)
@@ -1110,7 +1110,7 @@ sub ns_register($$$) {
                }
                
                $id_update->execute($src, $uid); $id_update->finish();
-               services::ulog($nsuser, LOG_INFO(), "registered $src (email: $email)".
+               services::ulog($nsnick, LOG_INFO(), "registered $src (email: $email)".
                        (services_conf_validate_email ? ' requires email validation code' : ''),
                        $src);
        } else {
@@ -2705,8 +2705,12 @@ sub authcode($;$$) {
 sub get_hostmask($) {
        my ($user) = @_;
        my ($ident, $host);
-       my $src = get_user_nick($user);
-       
+       my $src;
+       if (ref ($user) eq "HASH") {
+               print "WTF\n"; 
+               $src = get_user_nick($user);
+       }
+       else { $src = $user; }
        ($ident, $host) = get_host($user);
 
        return "$src!$ident\@$host";