mIRC Home    About    Download    Register    News    Help

Print Thread
#74015 06/03/04 12:45 PM
Joined: Feb 2003
Posts: 307
T
tontito Offline OP
Fjord artisan
OP Offline
Fjord artisan
T
Joined: Feb 2003
Posts: 307
Hello, in one of my addon where i use a socket to listen for connections, after i update to mirc 6.14 sometimes the command $portfree(N) returns true when i don't have no socket open in that port.

I used netstat -a to make sure.
If i put the socket in listen mode i get no errors so it realy must be a $portfree problem...


by the way, i still get the bug in "on *:sockwrite:" that sometimes triggers, one or more times together, when $sock($sockname).sent == 0
from mirc help: "The sockwrite event is triggered when mIRC has finished sending all of the info which you previously queued for sending."

Last edited by tontito; 06/03/04 12:56 PM.
#74016 08/03/04 03:15 PM
Joined: Feb 2003
Posts: 307
T
tontito Offline OP
Fjord artisan
OP Offline
Fjord artisan
T
Joined: Feb 2003
Posts: 307
ok i am going to provide a better report.
with this demo addon:

on 1:socklisten:hwww: {
var %n = $sock(hwww).mark
if (!%n || %n > 65000) { %n = 0 }
inc %n | sockmark hwww %n
sockaccept hww_ $+ %n
}

on 1:sockwrite:hww_*:{
if ($sock($sockname).sent == 0) { echo got the sockwrite event with no data sent $sock($sockname).sent ... $sock($sockname).sq | return }
else { sockclose $sockname }
}

on 1:sockread:hww_*: {
sockwrite $sockname #####################$$$$$$$$$$$$$$$$$$$$$zzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz

var %i = 0
while (%i < 1000) { inc %i }
;#loop to cause 100% cpu use
}

alias startListen { socklisten hwww 80 }

type startListen and with Shadow Security Scanner make a DOS check.

you will get the output :
got the sockwrite event with no data sent 0 ... 0

i think this proves my point.
i belive mirc somehow, gets confused when cpu is been used at 100% and sends a false sockwrite

thanks for the interess


Link Copied to Clipboard