Author: arekm                        Date: Sat Jul 25 21:14:39 2009 GMT
Module: packages                      Tag: HEAD
---- Log message:
Disable upgrade command. Won't work due to forwardfix no longer maintained 
upstream. We now maintain it.
Proper regexp for nicknames.
Update info about maintainence.

---- Files affected:
packages/irssi-scripts:
   forwardfix.pl (1.1 -> 1.2) 

---- Diffs:

================================================================
Index: packages/irssi-scripts/forwardfix.pl
diff -u packages/irssi-scripts/forwardfix.pl:1.1 
packages/irssi-scripts/forwardfix.pl:1.2
--- packages/irssi-scripts/forwardfix.pl:1.1    Sat Jul 25 23:06:30 2009
+++ packages/irssi-scripts/forwardfix.pl        Sat Jul 25 23:14:34 2009
@@ -1,21 +1,22 @@
 # This script is possibly buggy, but i haven't got much time
 # to test it. Use at your own risk.
 # a g a r a n   a t   p l d   d a s h   l i n u x   d o t   o r g
+#
+# Now maintained at 
http://cvs.pld-linux.org/cgi-bin/cvsweb/packages/irssi-scripts/forwardfix.pl
 
 
 use strict;
 use Irssi;
 use vars qw($VERSION %IRSSI);
 
-$VERSION = '0.01';
+$VERSION = '0.02';
 
 %IRSSI = (
                authors => 'Maciej \'agaran\' Pijanka',
                contact => '[email protected]',
                name => 'forwardfix',
                description => 'hides crossnetwork channel joining',
-               license => 'GPL',
-               url => 'http://netx.waw.pl/~agaran/forwardfix.pl'
+               license => 'GPL'
 );
 
 #### Interface ###
@@ -23,9 +24,6 @@
 #
 #
 
-# /upgrade_ffix
-# dont do it, may harm your childrens, blow your drives and so on
-
 # VARIABLES
 # =========
 
@@ -36,8 +34,8 @@
 Irssi::settings_add_bool("forward","forward_addnet",1);
 Irssi::settings_add_str("forward", "forward_sep",'$');
 
-Irssi::print("Its, beta, dont rely on it \nif something like forwardfix-debug: 
[something]\nhappens, please let me know");
-Irssi::print("-- agaran (20060902-2050) ");
+Irssi::print("Its, beta, dont rely on it \nif something like forwardfix-debug: 
[something]\nhappens report at http://bugs.pld-linux.org";);
+Irssi::print("-- agaran ");
 
 our %crude_hack = ();
 
@@ -51,6 +49,12 @@
        my $sep = Irssi::settings_get_str("forward_sep");
        my $dash = Irssi::settings_get_bool("forward_dash");
        my $targetl = lc $target;
+       # RFC2812
+       #  nickname   =  ( letter / special ) *8( letter / digit / special / 
"-" )
+       #  letter     =  %x41-5A / %x61-7A       ; A-Z / a-z
+       #  digit      =  %x30-39                 ; 0-9
+       #  special    =  %x5B-60 / %x7B-7D       ; "[", "]", "\", "`", "_", 
"^", "{", "|", "}"
+       my $re_nick = qr/[A-Za-z0-9\[\]\\\`\_\^\{\|\}\-]+/o;
 
        map { split /:/,$_; $chanset->{lc $_[0]} = lc $_[1]; } split /[ 
,]+/,Irssi::settings_get_str("forward_chanset");
        map { split /:/,$_; $netmap->{lc $_[0]} = $_[1]; } split /[ 
,]+/,Irssi::settings_get_str("forward_netmap");
@@ -63,7 +67,7 @@
        }
 
        if (defined $chanset->{$targetl} && (lc $nick eq $chanset->{$targetl} 
|| ($dash && lc $nick eq $chanset->{$targetl}.'-' ))) {
-               if($text =~ /^\(?([a-zA-Z\-_0-9\`\^|]+)?\@([A-Z]+)\) (.*)$/) 
{ # maska maska maska
+               if($text =~ /^\(?($re_nick)?\@([A-Z]+)\) (.*)$/) { # maska 
maska maska
                        ($nick,$fwd,$text) = ($1,$2,$3);
                        $text .= " [$fwd]" if($addnet);
 
@@ -75,13 +79,13 @@
                                Irssi::signal_emit("event privmsg", $server, 
"$target :$text", $nick, $nick.'@'.$fwd);
                        }
 
-               } elsif ($text =~ /^\* 
\(?([a-zA-Z\-_0-9\`\^\|]+)?\@([A-Z]+)\) (.*)$/) { 
+               } elsif ($text =~ /^\* \(?($re_nick)?\@([A-Z]+)\) (.*)$/) { 
                        ($nick,$fwd,$text) = ($1,$2,$3);
                        $text .= " [$fwd]" if($addnet);
                        Irssi::signal_stop();
                        Irssi::signal_emit("event privmsg", $server, "$target 
:ACTION $text", $nick, $nick.'@'.$fwd);
                        
-               } elsif ($text =~ /^\*\*\* Join ([a-zA-Z\-_0-9\`\]\[\^\|]+) 
\(([a-z\/\=+\~^A-Z\[\-_0-9\^:\...@\.]+)\) on (.*)$/ ) {
+               } elsif ($text =~ /^\*\*\* Join ($re_nick) 
\(([a-z\/\=+\~^A-Z\[\-_0-9\^:\...@\.]+)\) on (.*)$/ ) {
                        ($nick,$text,$fwd) = ($1,$2,$3);
 
                        $fn = $netmap->{lc $fwd} if(defined $netmap->{lc $fwd});
@@ -92,7 +96,7 @@
                                Irssi::signal_emit("event join", $server, 
":$target", $nick.$sep.$fn, $text);
                        }
                        
-               } elsif ($text =~ /^\*\*\* Part ([a-zA-Z\-_0-9\`\]\[\^\|]+) 
\(([a-z\/\=+\~^A-Z\[\-_0-9\^:\...@\.]+)\) on (.*)$/ ) {
+               } elsif ($text =~ /^\*\*\* Part ($re_nick) 
\(([a-z\/\=+\~^A-Z\[\-_0-9\^:\...@\.]+)\) on (.*)$/ ) {
                        ($nick,$text,$fwd) = ($1,$2,$3);
                        
                        $fn = $netmap->{lc $fwd} if(defined $netmap->{lc $fwd});
@@ -102,7 +106,7 @@
                                Irssi::signal_emit("event part", $server, 
"$target :", $nick.$sep.$fn, $text);
                        }
 
-               } elsif ($text =~ /^\*\*\* \[signoff\/#[a-zA-Z0-9\|]+\] 
([a-zA-Z\/\=\-_0-9\`\]\^|]+) \((.*)\) on (.*)$/ ) {
+               } elsif ($text =~ /^\*\*\* \[signoff\/#$re_nick\] 
([a-zA-Z\/\=\-_0-9\`\]\^|]+) \((.*)\) on (.*)$/ ) {
 
                        ($nick,$text,$fwd) = ($1,$2,$3);
 
@@ -116,7 +120,7 @@
                                }
                        }
                        
-               } elsif ($text =~ /^\*\*\* \[mode\/#[a-zA-Z0-9]+\(([\+\-vo]+) 
([a-zA-Z\-\+_0-9\`\^\[\]\|\ ]+)\)\] by ([a-zA-Z\.\*\-_0-9\`\^\|]+) on (.*)$/ ) {
+               } elsif ($text =~ /^\*\*\* \[mode\/#[a-zA-Z0-9]+\(([\+\-vo]+) 
($re_nick)\)\] by ($re_nick) on (.*)$/ ) {
                        my ($ml,$or,$nl);
                        ($ml,$nl,$or,$fwd) = ($1,$2,$3,$4);
                        
@@ -129,7 +133,7 @@
                                Irssi::signal_emit("event mode",$server, 
"$target $ml $nl",$or.$sep.$fn,$or.'@'.$fwd);
                        }
                        # mody dalsze
-               } elsif ($text =~ /^\*\*\* \[mode\/#[a-zA-Z0-9]+\(([\+\-ben]+) 
([a-za-z\-\!\?...@\.\+_0-9|\^\`\ ]+)\)\] by ([a-zA-Z\-_0-9\`\^|]+) on (.*)$/ ) {
+               } elsif ($text =~ /^\*\*\* \[mode\/#[a-zA-Z0-9]+\(([\+\-ben]+) 
($re_nick)\)\] by ($re_nick) on (.*)$/ ) {
                        my ($ml,$or,$nl);
                        ($ml,$nl,$or,$fwd) = ($1,$2,$3,$4);
                        
@@ -139,7 +143,7 @@
                                Irssi::signal_stop();
                                Irssi::signal_emit("event mode",$server, 
"$target $ml $nl",$or.$sep.$fn,$or.'@'.$fwd);
                        }
-               } elsif ($text =~ /^\*\*\*  Nick Change: 
([a-zA-Z\-_0-9\`\]\^|]+) is now ([a-zA-Z\-_0-9\`\]\^|]+) on (.*)$/ ) {
+               } elsif ($text =~ /^\*\*\*  Nick Change: ($re_nick) is now 
($re_nick) on (.*)$/ ) {
                        my ($n1,$n2);
                        ($n1,$n2,$fwd) = ($1,$2,$3);
                        
@@ -149,7 +153,7 @@
                                Irssi::signal_stop();
                                Irssi::signal_emit("event nick", $server, 
':'.$n2.$sep.$fn, $n1.$sep.$fn);
                        }
-               } elsif ($text =~ /^\*\*\* ([a-zA-Z\-_0-9\`\]\^|]+) was kicked 
off (#[a-zA-Z0-9]+) by ([a-zA-Z\-_0-9\`\]\^|]+) on ([a-zA-Z]+) \((.*)\)$/) {
+               } elsif ($text =~ /^\*\*\* ($re_nick) was kicked off 
(#[a-zA-Z0-9]+) by ($re_nick) on ([a-zA-Z]+) \((.*)\)$/) {
                        my ($n1,$n2,$fwd,$reason) = ($1,$3,$4,$5);
 
                        $fn = $netmap->{lc $fwd} if(defined $netmap->{lc $fwd});
@@ -162,18 +166,6 @@
                        printf("forwardfix-debug: [$text]");
                }
        }
-};
-
-Irssi::command_bind "upgrade_ffix", sub {
-               my $dir = Irssi::get_irssi_dir;
-               open P,'wget -O '.$dir.'/scripts/forwardfix.pl 
http://netx.waw.pl/~agaran/forwardfix.pl 2>&1|';
-               my $q = '';
-               while (not eof P) {
-                               $q .= <P>;
-               }
-               close P;
-               $q =~ s/%7E/~/g;
-               Irssi::print($q);
 };
 
 Irssi::print("ForwardFIX Init Done");
================================================================

---- CVS-web:
    
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/irssi-scripts/forwardfix.pl?r1=1.1&r2=1.2&f=u

_______________________________________________
pld-cvs-commit mailing list
[email protected]
http://lists.pld-linux.org/mailman/listinfo/pld-cvs-commit

Reply via email to