![]() |
Commande !tcl publique sécurisée - 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 : Commande !tcl publique sécurisée (/showthread.php?tid=905) Pages :
1
2
|
Commande !tcl publique sécurisée - djkenny - 07/03/2011 salut, ce script a pour but de fournir un accès publique pour tous (et biensur sécurisée) à la commande !tcl. Il crée un interpréteur sécurisé (commande "interp create -safe") ce qui isole complétement les commandes exécutées par le script de celle de votre eggdrop. liste des commandes présente par défaut dans un interp safe tcl
Il est possible de configurer des aliases afin de pouvoir utiliser les commandes eggdrop (putserv isop .....) [attachment=171] vous aurez aussi besoin du package timing que j'ai créé [attachment=172] RE: Commande !tcl publique sécurisée - CrazyCat - 07/03/2011 Merci, ce sera certainement fort utile. RE: Commande !tcl publique sécurisée - Asylum - 07/03/2011 Super TcL. Merci Dj_KennY c'est toi le meilleur :D RE: Commande !tcl publique sécurisée - djkenny - 07/03/2011 salut, j ai oublié de préciser que certaine commandes eggdrop tel que putserv, putquick, puthelp... (bref les commandes qui permettent d envoyer des messages au serveur) pourrais poser problème par exemple si quelqu'un tape Code : !tcl putserv "QUIT :" certaine commandes de boucle peuvent aussi poser problème lors de création de boucles infini j ai corrigé le problème en ajoutant une variable permettant de désactiver certaine commandes je penses créer une commande pour activer/désactiver les commandes sans avoir besoin de rehash RE: Commande !tcl publique sécurisée - djkenny - 07/03/2011 ajout des commandes: !hide <cmd> ?cmd1 ...? supprime l accès à une (plusieurs) commande !expose <cmd> ?cmd1 ...? ajoute l accès à une (plusieurs) commande biensur pour exécuter ces 2 commandes il faut être admin (+n) RE: Commande !tcl publique sécurisée - djkenny - 08/03/2011 bon voila la version final j'y ai ajouté une limite de temps d'exécution (en secondes) dans l'interp histoire de ne pas bloquer sur une boucle infinie RE: Commande !tcl publique sécurisée - aliasangelius - 31/03/2011 Salut, hmm dit moi si ont tape !tcl botnick ou !tcl $::botnick ceci doit retourner le pseudo de l'eggdrop non ? RE: Commande !tcl publique sécurisée - CrazyCat - 31/03/2011 Est-ce que .tcl $::botnick affiche le pseudo ? Non, ça te dira "Tcl error: invalid command name "Machin"" Je pense que !tcl putserv "PRIVMSG #chan :$::botnick" fonctionnera mieux. RE: Commande !tcl publique sécurisée - aliasangelius - 31/03/2011 oui sauf que la ça dit "Tcl error: invalid command name "$::botnick"" alors que si j'utilise mon ex système de .tcl sa me dira pareil sauf avec l'exemple que tu as donner. RE: Commande !tcl publique sécurisée - CrazyCat - 31/03/2011 Bien sûr, la commande !tcl n'est en fait qu'un alias (protégé) vers le .tcl, pour éviter d'aller en party-line pour tester une commande tcl ou un code. Sauf qu'avec les protections, il y a certaines choses que tu ne pourras pas faire. Ce script est fort utile lorsque tu veux montrer en direct quelque chose, sans avoir à copier/coller ce que tu fais en party-line. RE: Commande !tcl publique sécurisée - djkenny - 31/03/2011 salut, en réalité ce script est assez différent de la commande .tcl de la pl il crée un un interpréteur sécurisé, bien distinct de l interpréteur de l'eggdrop. Ce nouvel interpréteur (appelé (slave) esclave) ne partage ni les variables ni les procédures (sauf exception ajoutée dans la conf) de l’interpréteur eggdrop de base il n'a que les commande (considéré sécurisée) de TCL (cf la liste de commande placé au début du poste) au niveau variable il ne contient que les variables d environnement et global classique de tcl Code : % info global RE: Commande !tcl publique sécurisée - djkenny - 31/03/2011 le code qui permet de copier la commande .tcl de la pl est tcl
comme tu peux voir il est très différent @CrasyCat: Citation :Ce script est fort utile lorsque tu veux montrer en direct quelque chose, sans avoir à copier/coller ce que tu fais en party-line.en réalité (meme si tu n'as pas tout a fait tord) c'était plutôt dans l esprit de procurer une commande publique accessible à tous les users (ou une partie selon le % de boulets présent :p ) permettant donc de tester publiquement son code (par exemple sur un chan réserve au tcl ou à eggdrop) sans avoir besoin de ramener le bot ou de faire des c/c a rallonge. RE: Commande !tcl publique sécurisée - CrazyCat - 01/04/2011 djkenny a écrit :en réalité (meme si tu n'as pas tout a fait tord) c'était plutôt dans l esprit de procurer une commande publique accessible à tous les users (ou une partie selon le % de boulets présent :p ) permettant donc de tester publiquement son code (par exemple sur un chan réserve au tcl ou à eggdrop) sans avoir besoin de ramener le bot ou de faire des c/c a rallonge. Oui oui, j'avais très simplifié l'explication, mais j'avais bien compris le but du tcl :) RE: Commande !tcl publique sécurisée - aliasangelius - 01/04/2011 Ok bah après c'est une question de goût aussi.. Moi personellement je préfére le !tcl de base que celui sécurisé. car si je veux savoir à quoi correspond $::botnick sur un salon sans aller en PL bah je préfére. Ensuite les boulets ne peuvent pas l'utilisé sauf s'il sont le flag adéquat donc +n sa reste dans le contexte plus ou moins sécurisé. Sinon oui c'est sympa mais pour moi et l'utilité que j'utilise certaine chose pour mon projet actuel cette source ne peux pas me convenir :) RE: Commande !tcl publique sécurisée - CrazyCat - 01/04/2011 Ben si ça ne te convient pas, tu n'utilise pas, et puis c'est tout. |