Provided by: manpages-fr-extra_20151231_all bug

NOM

       X509_NAME_add_entry_by_txt, X509_NAME_add_entry_by_OBJ, X509_NAME_add_entry_by_NID,
       X509_NAME_add_entry, X509_NAME_delete_entry - Fonctions de modification des structures
       X509_NAME

SYNOPSIS

        #include <openssl/x509.h>

        int X509_NAME_add_entry_by_txt(X509_NAME *nom, const char *champ, int type, const
       unsigned char *bytes, int len, int loc, int set);

        int X509_NAME_add_entry_by_OBJ(X509_NAME *nom, ASN1_OBJECT *obj, int type, unsigned char
       *bytes, int len, int loc, int set);

        int X509_NAME_add_entry_by_NID(X509_NAME *nom, int nid, int type, unsigned char *bytes,
       int len, int loc, int set);

        int X509_NAME_add_entry(X509_NAME *nom,X509_NAME_ENTRY *ne, int loc, int set);

        X509_NAME_ENTRY *X509_NAME_delete_entry(X509_NAME *nom, int loc);

DESCRIPTION

       X509_NAME_add_entry_by_txt(), X509_NAME_add_entry_by_OBJ() et X509_NAME_add_entry_by_NID()
       ajoutent un champ dont le nom est défini par une chaîne champ, un objet obj ou un NID nid
       respectivement. La valeur du champ à ajouter est dans bytes de longueur len. Si len est
       -1, alors la longueur du champ est calculé en interne à l'aide de strlen(bytes).

       Le type de champ est déterminé par type qui peut être soit une définition du type de bytes
       (tel que MBSTRING_ASC) ou un type ASN1 standard (tel que V_ASN1_IA5STRING). La nouvelle
       entrée est ajoutée à une position déterminée par loc et set.

       X509_NAME_add_entry() ajoute une copie de la structure X509_NAME_ENTRY ne à nom. La
       nouvelle entrée est ajoutée à une position déterminée par loc et set. Puisqu'une copie de
       ne est ajoutée, ne doit être libéré après l'appel.

       X509_NAME_delete_entry() supprime une entrée de nom à la position loc. L'entrée supprimée
       est renvoyée et doit être libérée.

NOTES

       L'utilisation des types chaîne telles que MBSTRING_ASC ou MBSTRING_UTF8 est vivement
       recommandée pour le paramètre type. Cela permet au code interne de déterminer correctement
       le type de champ et d'appliquer des contrôles de longueur selon les normes en vigueur.
       Cela est fait en utilisant ASN1_STRING_set_by_NID().

       Si un type ASN1 est utilisé à la place, alors aucun contrôle n'est effectué et les données
       dans bytes sont utilisées directement.

       Dans X509_NAME_add_entry_by_txt() la chaîne field représente le nom du champ à l'aide de
       OBJ_txt2obj(champ, 0).

       Les paramètres loc et set déterminent où une nouvelle entrée devrait être ajoutée. Pour la
       quasi-totalité des applications loc peut être réglé à -1 et set à 0. Cela ajoute une
       nouvelle entrée à la fin de nom comme une valeur unique de « RelativeDistinguishedName »
       (RDN).

       loc détermine en fait l'index où la nouvelle entrée est insérée : s’il vaut -1, elle est
       ajoutée à la fin.

       set détermine comment le nouveau type est ajouté. S’il vaut zéro, un nouveau RDN est créé.

       Si set est -1 ou 1, il est ajouté respectivement à la structure RDN précédente ou
       suivante. Ce sera alors un RDN multi-valeur : comme les RDN multi-valeur sont très
       rarement utilisés, set est presque toujours mis à zéro.

EXEMPLES

       Créer une structure X509_NAME :

       "C=FR, O=Organisation désorganisée, CN=Joe Bloggs"

        X509_NAME *nm;
        nm = X509_NAME_new();
        if (nm == NULL)
               /* Une erreur*/
        if S<( X509_NAME_add_entry_by_txt(nm,> "C", MBSTRING_ASC,
                               "FR", -1, -1, 0))
               /* Erreur */
        if S<( !X509_NAME_add_entry_by_txt(nm,> "O", MBSTRING_ASC,
                               "Organisation désorganisée", -1, -1, 0))
               /* Erreur */
        if S<( !X509_NAME_add_entry_by_txt(nm,> "CN", MBSTRING_ASC,
                               "Joe Bloggs", -1, -1, 0))
               /* Erreur */

VALEURS DE RETOUR

       X509_NAME_add_entry_by_txt(), X509_NAME_add_entry_by_OBJ(), X509_NAME_add_entry_by_NID()
       et X509_NAME_add_entry() renvoient 1 en cas de succès et 0 si une erreur s'est produite.

       X509_NAME_delete_entry() renvoie soit la structure X509_NAME_ENTRY supprimée ou NULL si
       une erreur s'est produite.

BOGUES

       type peut être positionné à V_ASN1_APP_CHOOSE pour utiliser un algorithme différent pour
       déterminer les types de champ. Puisque cette forme ne peut pas comprendre les types
       multi-caractères, qu'elle n'effectue aucune vérification de longueur et qu'elle peut
       entraîner des types de champs non valables, son utilisation est fortement déconseillée.

VOIR AUSSI

       ERR_get_error(3), d2i_X509_NAME(3)

HISTORIQUE

TRADUCTION

       La traduction de cette page de manuel est maintenue par les membres de la liste
       <debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler toute erreur de
       traduction par un rapport de bogue sur le paquet manpages-fr-extra.

1.0.2a 1.0.2c                               2015-12-3fr::crypto::X509_NAME_add_entry_by_txt(3SSL)