X-Git-Url: http://git.pk910.de/?p=PHP-P10.git;a=blobdiff_plain;f=Bots%2FIPv6.class.php;h=d30ee5398c7db3a55b353525ba620c6f59f96ec4;hp=36c6989dd9fb04c942b6d78b6b2405f74ec40d1c;hb=811bc0c7a1f583fb624a0f8c3601146e063c5a25;hpb=9db307dc221fbc76673fcc6ca866df117aa30003 diff --git a/Bots/IPv6.class.php b/Bots/IPv6.class.php index 36c6989..d30ee53 100644 --- a/Bots/IPv6.class.php +++ b/Bots/IPv6.class.php @@ -1,28 +1,25 @@ . * * * ************************************************************************ * - * Bots/ModManager.class.php + * Bots/IPv6.class.php * - * module manager bot... + * IPv6 bot... * */ @@ -39,7 +36,7 @@ class {$_NAME} extends Bot { if(!$old) { $nick = "IPv6"; $ident = "ipv6"; - $ip = "fd00::C0CA:C01A:ADD5:11FE"; //coca cola adds life maybe someone undestands it :D + $ip = "fd00::c0ca:c01a:add5:11fe"; //coca cola adds life maybe someone undestands it :D $host = $ip; $realname = "IPv6"; $modes = "ioknISD"; @@ -53,7 +50,7 @@ class {$_NAME} extends Bot { } ModCMD::bind($this, BIND_JOIN, "recive_join"); - ModCMD::bind($this, BIND_MODE, "recive_mode"); + ModCMD::bind($this, BIND_CHANMODE, "recive_mode"); ModCMD::bind($this, BIND_KICK, "recive_kick"); ModCMD::bind($this, BIND_QUIT, "recive_quit"); } @@ -79,18 +76,11 @@ class {$_NAME} extends Bot { return ($privs & P10_Channel::USERPRIV_OPED); } - public function receive_join($user, $channel) { + public function recive_join($user, $channel, $isBurst) { if(!$this->botOppedOnChannel($channel)) return false; - $ipv6 = '/^((([0-9A-Fa-f]{1,4}:){7}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}:[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){5}:([0-9A-Fa-f]{1,4}:)?[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){4}:([0-9A-Fa-f]{1,4}:){0,2}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){3}:([0-9A-Fa-f]{1,4}:){0,3}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){2}:([0-9A-Fa-f]{1,4}:){0,4}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){6}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(([0-9A-Fa-f]{1,4}:){0,5}:((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|(::([0-9A-Fa-f]{1,4}:){0,5}((\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b)\.){3}(\b((25[0-5])|(1\d{2})|(2[0-4]\d)|(\d{1,2}))\b))|([0-9A-Fa-f]{1,4}::([0-9A-Fa-f]{1,4}:){0,5}[0-9A-Fa-f]{1,4})|(::([0-9A-Fa-f]{1,4}:){0,6}[0-9A-Fa-f]{1,4})|(([0-9A-Fa-f]{1,4}:){1,7}:))(|\/[0-9]{1,3})$/'; - if(preg_match($ipv6, $user->getIP())) { - $privs = $channel->getUserPrivs($user); - $privs |= (P10_Channel::USERPRIV_OPED | P10_Channel::USERPRIV_VOICE); - $channel->setUserPrivs($user, $privs); + if($user->getIP()->isIPv6()) { $this->uplink->mode($this->ipv6, $channel, "+ov ".$user->getNumeric()." ".$user->getNumeric()); } else { - $privs = $channel->getUserPrivs($user); - $privs |= (P10_Channel::USERPRIV_VOICE); - $channel->setUserPrivs($user, $privs); $this->uplink->mode($this->ipv6, $channel, "+v ".$user->getNumeric()); } }