Retransmettre l'erreur à l'appliation au dess
razuki
Messages postés
293
Statut
Membre
-
razuki Messages postés 293 Statut Membre -
razuki Messages postés 293 Statut Membre -
Bonjour,
je développe une brique sécurisée entre TCP et une appli.
Quand ma fonction de chargement de certificat echoue, en l'occurence la clef privée ne correspond pas au certificat, j'obtiens l'erreur :
En effet, afin d'obtenir le résultat ci-dessus, j'ai fait :
Ma question :
Je ne veux pas traiter moi même ce qu'il faut faire si une telle erreur se produit. Je veux juste retransmettre l'erreur au programmeur de l'appli ( qui utilisera donc ma brique ), pour qu'il puisse faire :
En gros, comment faire correspondre PVKEY_DOES_NOT_MATCH_WITH_CERT à mon type d'erreur.
PS: je suis débutant en C/C++
Merci d'avance
je développe une brique sécurisée entre TCP et une appli.
Quand ma fonction de chargement de certificat echoue, en l'occurence la clef privée ne correspond pas au certificat, j'obtiens l'erreur :
error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch
En effet, afin d'obtenir le résultat ci-dessus, j'ai fait :
1. err = ERR_get_error(); // cette fonction récupère la dernière erreur arrivée sur la pile. 2. ERR_error_string_n(ERR_get_error(), sizeof(buf));// traduit l'erreur en string pour que je puisse comprendre ce qui s'était passé.
Ma question :
Je ne veux pas traiter moi même ce qu'il faut faire si une telle erreur se produit. Je veux juste retransmettre l'erreur au programmeur de l'appli ( qui utilisera donc ma brique ), pour qu'il puisse faire :
1. if(err = PVKEY_DOES_NOT_MATCH_WITH_CERT) {
2. //traiter ici ce qu'il faut faire
3. }
En gros, comment faire correspondre PVKEY_DOES_NOT_MATCH_WITH_CERT à mon type d'erreur.
PS: je suis débutant en C/C++
Merci d'avance
A voir également:
- Retransmettre l'erreur à l'appliation au dess
- Dans la table des matières du document à télécharger, le chapitre 6 et ses 2 sections n'apparaissent pas. trouvez l'erreur dans la structure du document et corrigez-la. mettez à jour la table des matières. quel est le mot formé par les lettres en majuscules de la table des matières après sa mise à jour ? - Forum Word
- Erreur t32 ✓ - Forum Livebox
- Une erreur s'est produite instagram ✓ - Forum Instagram
- Erreur 3000 france tv - Forum Lecteurs et supports vidéo
- Erreur au lancement du player vidéo upes 197 ✓ - Forum Lecteurs et supports vidéo
1 réponse
En fait, le gars qui a développé la couche avant moi a déjà crée un enum contenant les codes d'erreurs :
Le problème c'est que je ne sais pas comment intégrer mon code d'erreur à cet enum. En effet, err = ERR_get_error() donne 185073780 à l'execution et ERR_error_string_n(ERR_get_error(), sizeof(buf)); m'affiche "error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch"
Je ne sais pas si ceci a un sens :
ou
typedef enum LAB_ERRORS_ {
LAB_ERROR_NOERROR = 0,
LAB_ERROR_SUCCESS = 0,
LAB_ERROR_BASE = 0x0D430000,
/* generic errors */
LAB_ERROR_BUFFERTOOSMALL,
LAB_ERROR_TIMEOUT,
LAB_ERROR_OUTOFMEMORY,
LAB_ERROR_SOCKETERROR,
LAB_ERROR_OS,
/* network errors */
LAB_ERROR_NETWORK = (LAB_ERROR_BASE + 0x1000),
LAB_ERROR_CONNECTIONREFUSED,
LAB_ERROR_PACKETTOOLARGE,
/*security errors */
LAB_ERROR_SEC = (LAB_ERROR_BASE + 0x2000),
LAB_ERROR_KEYSUNAVAILABLE,
LAB_ERROR_REVOKEDCERTIFICATE,
LAB_ERROR_CERTIFICATENOTLOADED
} LAB_ERRORS;
Le problème c'est que je ne sais pas comment intégrer mon code d'erreur à cet enum. En effet, err = ERR_get_error() donne 185073780 à l'execution et ERR_error_string_n(ERR_get_error(), sizeof(buf)); m'affiche "error:0B080074:x509 certificate routines:X509_check_private_key:key values mismatch"
Je ne sais pas si ceci a un sens :
PVKEY_DOES_NOT_MATCH_WITH_CERT 0B080074
ou
PVKEY_DOES_NOT_MATCH_WITH_CERT 185073780