]> git.donarmstrong.com Git - infobot.git/commitdiff
DCC fixed
authordms <dms@c11ca15a-4712-0410-83d8-924469b57eb5>
Fri, 29 Sep 2000 15:03:46 +0000 (15:03 +0000)
committerdms <dms@c11ca15a-4712-0410-83d8-924469b57eb5>
Fri, 29 Sep 2000 15:03:46 +0000 (15:03 +0000)
git-svn-id: https://svn.code.sf.net/p/infobot/code/trunk/blootbot@144 c11ca15a-4712-0410-83d8-924469b57eb5

src/IRC/IrcHooks.pl

index 52d2c60e3dc988b6ae786159ed1b88a3256c42b5..deff4f3935f951daadb9f62a3575068c47037b92 100644 (file)
@@ -150,10 +150,23 @@ sub on_dcc {
     # pity Net::IRC doesn't store nuh. Here's a hack :)
     $self->whois($nick);
 
-    if ($type eq 'SEND') {
+    if ($type eq 'SEND') {     # GET for us.
        # incoming DCC SEND. we're receiving a file.
-       $self->new_get($event, \*FH);
+       my $get = ($event->args)[2];
+       open(DCCGET,">$get");
+
+       $self->new_get($nick,
+               ($event->args)[2],
+               ($event->args)[3],
+               ($event->args)[4],
+               ($event->args)[5],
+               \*DCCGET
+       );
+    } elsif ($type eq 'GET') { # SEND for us?
+       &DEBUG("starting get.");
+       $self->new_send($event->args);
     } elsif ($type eq 'CHAT') {
+       &DEBUG("starting chat.");
        $self->new_chat($event);
     } else {
        &status("${b_green}DCC $type$ob unknown ...");
@@ -203,6 +216,11 @@ sub on_dcc_open {
        } else {
            $self->privmsg($sock,"Welcome to blootbot DCC CHAT interface, $userHandle.");
        }
+    } elsif ($type eq 'SEND') {
+       &DEBUG("Starting DCC receive.");
+       foreach ($event->args) {
+           &DEBUG("  => '$_'.");
+       }
     } else {
        &status("${b_green}DCC $type$ob unknown ...");
     }