Bonjour,
j'ai un programme perl qui se décompose en plusieurs script/module:
D'un côté un module sys.pm qui contient un ensemble de fonction système qui appelle des fonctions clients.
De l'autre j'ai un script client.pl qui apelle le module sys.pm (use sys). Dans le script client.pl, on ne peut définir que certaines fonctions qui sont limitées au niveau utilisation. Dans le module sys.pm, j'appelle pas mal de modules (threads,Handle,...). Je souhaite bloquer dans le script client.pl pas mal de fonctions prédéfinies telles que system exec open ... Pour cela, j'ai redéfini dans ces fonctions dans un module appelé redef.pm que j'apelle dans client.pl.
Ce qui donne:
A priori, j'arrive à utiliser la vrai fonction system dans sys.pm et system redéfinie dans client.pl. Je voudrai savoir si cette méthode est fiable.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 use sys; #system non bloqué use redef; sub client1{ ....# system bloqué } while(1){};
D'autre part, je voudrai que dans le script client.pl, après use et use redef, le mot clé use soit bloqué. Tout simplement pour pas qu'une personne puisse appelé un module dans son code par la suite.
Du genre:
voilà.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 use sys; #system non bloqué use redef; #use inpossible!!!!! sub client1{ ....# system bloqué } while(1){};
Merci par avance
Partager