<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-gb">
	<link rel="self" type="application/atom+xml" href="https://forum.eggheads.org/app.php/feed/topic/21295" />

	<title>egghelp/eggheads community</title>
	<subtitle>Discussion of eggdrop bots, shell accounts and tcl scripts.</subtitle>
	<link href="https://forum.eggheads.org/index.php" />
	<updated>2023-06-28T00:35:58-04:00</updated>

	<author><name><![CDATA[egghelp/eggheads community]]></name></author>
	<id>https://forum.eggheads.org/app.php/feed/topic/21295</id>

		<entry>
		<author><name><![CDATA[RoKiTo]]></name></author>
		<updated>2023-06-28T00:35:58-04:00</updated>

		<published>2023-06-28T00:35:58-04:00</published>
		<id>https://forum.eggheads.org/viewtopic.php?p=112023#p112023</id>
		<link href="https://forum.eggheads.org/viewtopic.php?p=112023#p112023"/>
		<title type="html"><![CDATA[Help plis]]></title>

		
		<content type="html" xml:base="https://forum.eggheads.org/viewtopic.php?p=112023#p112023"><![CDATA[
Good afternoon, morning or evening, it is possible that an extra command will be added, for example:<div class="codebox"><p>Code: </p><pre><code>admin: !portall 192.168.10.10portbot: Resolved ip: 192.168.10.10 Ports open: [22 6668 6667 6697] </code></pre></div>I hope the experts help me  <img class="smilies" src="https://forum.eggheads.org/images/smilies/icon_redface.gif" width="15" height="15" alt=":oops:" title="Embarassed"><div class="codebox"><p>Code: </p><pre><code>######################################## DCC .portchk &lt;host/ip&gt; &lt;port&gt;    #### PUB !port &lt;host/ip&gt; &lt;port&gt;       ####.chanset &lt;channel&gt; +portchk       ########################################set portchk_setting(flag) "mn|-"set portchk_setting(cmd_pub) "!port"set portchk_setting(cmd_dcc) "portchk"set portchk_setting(read) 1set portchk_setting(onjoin) 1set portchk_setting(ports) "21 22 23 25 53 80 81 110 113 135 137 138 139 143 443 445 1080 3128 3306 5900 6660 6661 6662 6663 6665 6666 6667 6668 6669 7000 8080 10000 31337 64501 65500 65501"set portchk_setting(autoban_svr) 0set portchk_setting(autoban_list) 0set portchk_setting(global) 0set portchk_setting(bantime) 0set portchk_setting(onotice) 1set portchk_setting(bold) 1set portchk_setting(portchk:) 1#############################################################################   PLEASE DO NOT EDIT ANYTHING BELOW UNLESS YOU KNOW WHAT YOU ARE DOING   ############################### Script Begin #################################if {![string match 1.8.* $version]} {#   putlog "\002portchk:\002 \002CRITICAL ERROR\002 portchk.tcl requires eggdrop 1.6.x to run."#   die "\002portchk:\002 \002CRITICAL ERROR\002 portchk.tcl requires eggdrop 1.6.x to run."#}bind pub $portchk_setting(flag) $portchk_setting(cmd_pub) portchk_scan_pubbind dcc $portchk_setting(flag) $portchk_setting(cmd_dcc) portchk_scan_dccbind join - * portchk_onjoin_scansetudef flag portchkproc portchk_dopre {} {   global portchk_setting   if {!$portchk_setting(portchk:)} {      return ""   } elseif {!$portchk_setting(bold)} {      return "portchk: "   } else {      return "\002portchk:\002 "   }}proc portchk_onjoin_scan {nick uhost hand chan} {   global portchk_setting   if {($portchk_setting(onjoin)) &amp;&amp; ($portchk_setting(ports) != "")} {      foreach i [channel info $chan] {         if {([string match "+portchk" $i]) &amp;&amp; ([botisop $chan])} {            set host [lindex [split $uhost @] 1]            foreach p $portchk_setting(ports) {               if {![catch {set sock [socket -async $host $p]} error]} {                  set timerid [utimer 15 [list portchk_timeout_join $sock]]                  fileevent $sock writable [list portchk_connected_join $nick $chan $sock $host $p $timerid]               }            }            break         }      }   }}proc portchk_scan_pub {nick uhost hand chan text} {   global portchk_setting   set host [lindex [split $text] 0]   set port [lindex [split $text] 1]   if {$port == ""} {      putquick "NOTICE $nick :Usage: $portchk_setting(cmd_pub) &lt;host&gt; &lt;port&gt;"   } else {      if {[catch {set sock [socket -async $host $port]} error]} {         putquick "PRIVMSG $chan :15\[portchk4!15\] Connection to $host \($port\) was refused."      } else {         set timerid [utimer 15 [list portchk_timeout_pub $chan $sock $host $port]]         fileevent $sock writable [list portchk_connected_pub $chan $sock $host $port $timerid]      }   }}proc portchk_scan_dcc {hand idx text} {   global portchk_setting   set host [lindex [split $text] 0]   set port [lindex [split $text] 1]   if {$port == ""} {      putdcc $idx "[portchk_dopre]Usage: .$portchk_setting(cmd_dcc) &lt;host&gt; &lt;port&gt;"   } else {      if {[catch {set sock [socket -async $host $port]} error]} {         putdcc $idx "[portchk_dopre]Connection to $host \($port\) was refused."      } else {         set timerid [utimer 15 [list portchk_timeout $idx $sock $host $port]]         fileevent $sock writable [list portchk_connected $idx $sock $host $port $timerid]      }   }}proc portchk_connected {idx sock host port timerid} {   killutimer $timerid   set error [fconfigure $sock -error]   if {$error != ""} {      close $sock      putdcc $idx "[portchk_dopre]Connection to $host \($port\) failed. \([string totitle $error]\)"   } else {      fileevent $sock writable {}      fileevent $sock readable [list portchk_read $idx $sock $host $port]      putdcc $idx "[portchk_dopre]Connection to $host \($port\) accepted."   }}proc portchk_timeout {idx sock host port} {   close $sock   putdcc $idx "[portchk_dopre]Connection to $host \($port\) timed out."}proc portchk_read {idx sock host port} {   global portchk_setting   if {$portchk_setting(read)} {      if {[gets $sock read] == -1} {         putdcc $idx "[portchk_dopre]EOF On Connection To $host \($port\). Socket Closed."         close $sock      } else {         putdcc $idx "[portchk_dopre]$host \($port\) &gt; $read"      }   } else {      close $sock   }}proc portchk_connected_pub {chan sock host port timerid} {   killutimer $timerid   set error [fconfigure $sock -error]   if {$error != ""} {      close $sock      putquick "PRIVMSG $chan :15\[portchk4!15\] Connection to $host \($port\) failed. \([string totitle $error]\)"   } else {      fileevent $sock writable {}      fileevent $sock readable [list portchk_read_pub $chan $sock $host $port]      putquick "PRIVMSG $chan :15\[portchk4!15\] Connection to $host \($port\) accepted."   }}proc portchk_timeout_pub {chan sock host port} {   close $sock   putquick "PRIVMSG $chan :15\[portchk4!15\] Connection to $host \($port\) timed out."}proc portchk_connected_join {nick chan sock host port timerid} {   global portchk_setting botnick   killutimer $timerid   set error [fconfigure $sock -error]   if {$error != ""} {      close $sock   } else {      fileevent $sock writable {}      fileevent $sock readable [list portchk_read_join $sock]      if {$portchk_setting(onotice)} {         foreach i [chanlist $chan] {            if {([isop $i $chan]) &amp;&amp; ($i != $botnick)} {               putserv "NOTICE $i :Port $port was found open on $nick's host. \($host\)"            }         }      }      if {$portchk_setting(autoban_svr)} {         putserv "MODE $chan +b *!*@$host"         putserv "KICK $chan $nick :One of the ports open on your host is banned."         timer $portchk_setting(bantime) [list portchk_unsvrban $chan $host]      } elseif {$portchk_setting(autoban_list)} {         if {$portchk_setting(global)} {            newban *!*@$host portchk "One of the ports open on your machine is banned." $portchk_setting(bantime)         } else {            newchanban $chan *!*@$host portchk "One of the ports open on your machine is banned." $portchk_setting(bantime)         }      }   }}proc portchk_timeout_join {sock} {   close $sock}proc portchk_read_join {sock} {   close $sock}proc portchk_read_pub {sock} {   global portchk_setting   if {!$portchk_setting(read)} {      close $sock   } elseif {[gets $sock read] == -1} {      putquick "PRIVMSG $chan :EOF On Connection To $host \($port\). Socket Closed."      close $sock   }}proc portchk_unsvrban {chan host} {   putserv "MODE $chan -b *!*@$host"}putlog "Portchk Addon TCL Modifed By MoBi ? Succesfully Loaded..."</code></pre></div><p>Statistics: Posted by <a href="https://forum.eggheads.org/memberlist.php?mode=viewprofile&amp;u=12930">RoKiTo</a> — Wed Jun 28, 2023 12:35 am</p><hr />
]]></content>
	</entry>
	</feed>
