![]() |
Bug TCL sur un bind raw - Version imprimable +- Communauté Eggdrop (https://forum.eggdrop.fr) +-- Forum : Eggdrop et scripts (https://forum.eggdrop.fr/forumdisplay.php?fid=8) +--- Forum : Scripts (https://forum.eggdrop.fr/forumdisplay.php?fid=4) +--- Sujet : Bug TCL sur un bind raw (/showthread.php?tid=315) |
Bug TCL sur un bind raw - Gro_MiNeT - 04/01/2009 Ola, J'ai un bug tcl que je n'arrive pas à résoudre sur un bind raw - notice. Mon egg est sous une oline, il scan les connexions entrantes. Il agit sur une blacklist, badidents, badhosts et badnicks. Le problème, c'est que dès que je load les scripts tcl, il me plante l'identification EOF de la partyline. c'est à dire, dès que je fais un /CHAT bot ou /CTCP CHAT bot, au niveau de taper le pass, bah plus rien, c'est figé, puis au bout de quelques secondes vient bien sur le 'Timeout of ident' . Alors est ce que ca vient des boucles (while, foreach) que j'utilise dans mes tcl ou du scan des scripts qui fait lager le bots. J'ai tester sans les tcl , le bot ne plante pas rien que sous sa oline. Si quelqu'un a déjà rencontrer un problème de ce genre, qu'il m'éclaircisse volontier ! Gro_MiNeT RE: Bug TCL sur un bind raw - CrazyCat - 04/01/2009 A mon avis, c'est bien le tcl qui fait foirer l'eggdrop: peut-être qu'il est surchargé par les messages (notices serveur) et ne peut pas tout gérer. Tu devrais nous mettre ton TCL ici pour vérifier ça RE: Bug TCL sur un bind raw - Gro_MiNeT - 04/01/2009 tcl
RE: Bug TCL sur un bind raw - Gro_MiNeT - 04/01/2009 C'est quoi vos balises pour éditer le tcl que je viens de poster, sinon ça va ronchonner ?! ;) GM RE: Bug TCL sur un bind raw - Merwin - 04/01/2009 Ne lis pas le fichier à chaque notice, ouvres le fichier au lancement du script, place sont contenu dans une variable avec [read]. Ensuite analyse ta variable, tu auras un temps d'éxécution 100x meilleur, sans un seul while. RE: Bug TCL sur un bind raw - BdS - 04/01/2009 Gro_MiNeT a écrit :C'est quoi vos balises pour éditer le tcl que je viens de poster, sinon ça va ronchonner ?! ;) Code :
RE: Bug TCL sur un bind raw - CrazyCat - 04/01/2009 Merwin a écrit :Ne lis pas le fichier à chaque notice, ouvres le fichier au lancement du script, place sont contenu dans une variable avec [read].Tout à fait d'accord avec Merwin sur ce coup là. Surtout que dans le cas "normal", tu parcoures les 2 fichiers pour rien. RE: Bug TCL sur un bind raw - Gro_MiNeT - 05/01/2009 Oué, mais je dois utiliser une boucle pour rechercher mon premier argument dans le fichier avant de le comparer et surtout ligne par ligne. GM RE: Bug TCL sur un bind raw - CrazyCat - 05/01/2009 Je ne comprends pas ce que tu veux dire... Au début, tu charges tes fichiers dans des variables de type liste, et ensuite tu peux utiliser [lsearch] par exemple pour savoir si l'host est dans l'une ou l'autre des variables. RE: Bug TCL sur un bind raw - Merwin - 05/01/2009 tcl
Et plus loin dans ton code: tcl
Nb: Le \ ; -> Supprime le. RE: Bug TCL sur un bind raw - Gro_MiNeT - 05/01/2009 d'accord, que signifie le "\n" je l'ai déjà vu à plusieurs reprises dans des codes ? RE: Bug TCL sur un bind raw - djkenny - 05/01/2009 Salut Gro_MiNet comment va depuis le temps?? déjà tu as une erreure a cette ligne (je pense) tcl
ca ne devrais pas étres plutot sans le S de exempt_masks tcl
(je ne pense pas que l erreur vienne de la) ensuite tu devrais close les fichier avant de return 0 sinon au bou de 50 notice il y auras 50 fichiers ouvert ou tu peu remplacer le return 0 par un break (qui a pour effet de stopper la boucle et continue de lire la suite de la procédure) l'idée de Merwin est pas mal du tout mais cela ne vient pas de la. \n signifie un retour a la ligne ("putlog 1\n2" renvera 2 ligne "1 et 2") j pense que tu devrais ajouter des putlog et return a chaque condition pour voir ou le tcl se bloque (que tu deplacera au fur et a mesure) tcl
le return aura pour effet d arreter la proc donc tu le place au debut, tu test et si ca marche tu le deplace dans la contition suivante. RE: Bug TCL sur un bind raw - djkenny - 05/01/2009 tcl
qui a pour effet de déboguer les "{ [ " ] }" édit: a parement le forum n aime pas mon code set text [string map {"\\" "\\\\" "\{" "\\\{" "\}" "\\\}" "\[" "\\\[" "\]" "\\\]" "\"" "\\\""} $arg] RE: Bug TCL sur un bind raw - Gro_MiNeT - 05/01/2009 Oh djkenny ca fait longtemps, ca fait plaisir !!! Moi depuis le temps tout va bien, je me remets au tcl petit à petit à mes heures perdues lol ;) Oué c'est ca qui fait planter le bot le fait d'ouvrir 50 000 fichiers , je suis d'accord aussi pour 'break', là je viens de finir de modifier la tcl avec l'idée de Merwin et j'attends un moment qu il y est plusieurs connexion serveur pour voir si la PL ne plante pas. Je repasse en soirée. à+ GM RE: Bug TCL sur un bind raw - djkenny - 05/01/2009 pour afficher la liste des fichiers ouvert tcl
|