Scroll to navigation

SMIME_READ_CMS(3SSL) OpenSSL SMIME_READ_CMS(3SSL)

NUME

SMIME_read_CMS_ex, SMIME_read_CMS - analizează mesajul S/MIME

SINOPSIS

 #include <openssl/cms.h>
 CMS_ContentInfo *SMIME_read_CMS_ex(BIO *bio, int flags, BIO **bcont,
                                    CMS_ContentInfo **cms);
 CMS_ContentInfo *SMIME_read_CMS(BIO *in, BIO **bcont);

DESCRIERE

SMIME_read_CMS() analizează un mesaj în format S/MIME.

in este un BIO din care se citește mesajul.

Dacă se utilizează semnarea în text clar, conținutul este salvat într-o memorie bio care este scrisă în *bcont, altfel *bcont este definit ca NULL.

Structura CMS_ContentInfo analizată este returnată sau NULL dacă a apărut o eroare.

SMIME_read_CMS_ex() este similară cu SMIME_read_CMS(), dar opțional poate fi furnizat un obiect cms CMS_ContentInfo creat anterior, precum și unele flags. Pentru a crea un obiect cms, utilizați CMS_ContentInfo_new_ex(3). Dacă argumentul flags conține CMS_BINARY, se presupune că intrarea este în format binar și nu este tradusă în formă canonică. Dacă, în plus, este activat SMIME_ASCIICRLF, se presupune că intrarea binară este urmată de caracterele CR și LF, altfel doar de un caracter LF. Dacă flags este 0 și cms este NULL, atunci este identică cu SMIME_read_CMS().

NOTE

Dacă *bcont nu este NULL, atunci mesajul este semnat în text clar. *bcont poate fi apoi transmis către CMS_verify() cu fanionul CMS_DETACHED activat.

În caz contrar, tipul structurii returnate poate fi determinat folosind CMS_get0_type().

Pentru a oferi suport pentru funcționalități viitoare, dacă bcont nu este NULL, *bcont trebuie inițializat la NULL. De exemplu:

 BIO *cont = NULL;
 CMS_ContentInfo *cms;
 cms = SMIME_read_CMS(in, &cont);

ERORI

Analizatorul MIME utilizat de SMIME_read_CMS() este oarecum primitiv. Deși va gestiona majoritatea mesajelor S/MIME, formatele compuse mai complexe ar putea să nu funcționeze.

Analizatorul presupune că structura CMS_ContentInfo este întotdeauna codificată în format base64 și nu va trata cazul în care aceasta este în format binar sau utilizează formatul „quoted printable”.

Utilizarea unui BIO de memorie pentru a stoca conținutul semnat limitează dimensiunea mesajului care poate fi procesat din cauza restricțiilor de memorie: ar trebui să fie disponibilă o opțiune de flux cu o singură pasare.

VALORI RETURNATE

SMIME_read_CMS_ex() și SMIME_read_CMS() returnează o structură CMS_ContentInfo validă sau NULL dacă a apărut o eroare. Eroarea poate fi obținută din ERR_get_error(3).

CONSULTAȚI ȘI

ERR_get_error(3), CMS_sign(3), CMS_verify(3), CMS_encrypt(3), CMS_decrypt(3)

ISTORIC

Funcția SMIME_read_CMS_ex() a fost adăugată în OpenSSL 3.0.

DREPTURI DE AUTOR

Drepturi de autor 2008-2021 The OpenSSL Project Authors. Toate drepturile rezervate.

Licențiat sub Licența Apache 2.0 („License”). Nu aveți voie să utilizați acest fișier decât în conformitate cu licența. Puteți obține o copie din fișierul LICENSE din distribuția sursei sau de la <https://www.openssl.org/source/license.html>.

TRADUCERE

Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>

Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.

Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.

12 iulie 2025 3.5.1