Salut,
alors voilà je suis en train de faire un script qui permet d'afficher les status d'un eggdrop dans un botnet (bon en fait presque fini à part ce problème).
Sauf qu'en fait mon script réponds à une requette à la seconde (pour transmettre le status mon script réponds à une requette HTTP).
Comment je peux faire pour qu'une socket accepte plusieurs connections en même temps ? :D
alors voilà je suis en train de faire un script qui permet d'afficher les status d'un eggdrop dans un botnet (bon en fait presque fini à part ce problème).
Sauf qu'en fait mon script réponds à une requette à la seconde (pour transmettre le status mon script réponds à une requette HTTP).
Comment je peux faire pour qu'une socket accepte plusieurs connections en même temps ? :D
tcl
variable sockserv [socket -server "::checker::status" $port];
proc status {sock addr port} {
global botnet-nick;
fconfigure $sock -translation binary -blocking 0;
set f [open "scripts/checker/bots.txt" "r"]
set bots [gets $f];
close $f;
set bot [lindex [set args [split [lindex [split [gets $sock]] 1] !]] 1];
if {[lsearch [concat [bots] [set botnet-nick]] $bot]>-1} {
set f [open "scripts/checker/on.gif" "r"];
} else {
#[...] même genre d'instructions que dans le if ci-dessus
}
fconfigure $f -translation binary;
set file [read -nonewline $f];
close $f;
puts $sock "HTTP/1.1 200 OK\nContent-Length: [string length $file]\nContent-Type: image/gif\n\n$file";
close $sock;
}