Bonjour
Ma question apparaitra surement triviale à la plupart des spécialistes Tcl, mais je suis débutant en tcl et je dois utiliser une lib aes pour chiffrer /déchiffrer des mots de passe. J'ai copié la lib dans le même répertoire ou se trouvent mes autres libs (/usr/share/tcl8.4)
ls /usr/share/tcl8.4/aes
aes.bench aes.man aes.pcx aes.tcl aes.test ChangeLog pkgIndex.tcl
Voici un extrait du code. J'ai fait afficher la valeur d'un certain nombre de variables, pour aider au debug:
Affiche ceci:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 puts "tcl_library : $tcl_library" puts "tcl_pkgPath : $tcl_pkgPath" puts "auto_path : $auto_path" set package_list [package names] puts $package_list puts $auto_path set libraries [info library] puts "libs: $libraries" package provide aes 1.0.2 package require aes set present [package present aes] puts $present ... # plus loin dans le code set user_pwd [aes::aes -hex -mode ecb -dir decrypt -key [binary format H* $aes_key] -- [binary format H* $aes_user_pwd]] ...
tcl_library : /usr/share/tcl8.4
tcl_pkgPath : /usr/lib64 /usr/share
auto_path : /usr/share/tcl8.4 /usr/share /usr/lib64
Tcl
/usr/share/tcl8.4 /usr/share /usr/lib64
libs: /usr/share/tcl8.4
1.0.2
...
invalid command name "aes::aes"
while executing
"aes::aes -hex -mode ecb -dir decrypt -key [binary format H* $aes_key] -- [binary format H* $aes_user_pwd]"
(procedure "set_person_password" line 71)
invoked from within
...
Puisqu'apparemment le package a bien été trouvé (il affiche bien 1.0.2, la version de la lib) je ne comprends pas pourquoi j'ai ce "invalid command" quand il tente d'appeler la fonction aes du package aes. Auriez-vous une idée ?
Partager