table of contents
- trixie-backports 4.28.0-2~bpo13+2
- testing 4.28.0-2
- unstable 4.28.0-2
| BIO_NEW_CMS(3SSL) | OpenSSL | BIO_NEW_CMS(3SSL) |
NUME¶
BIO_new_CMS - filtru de transmisie în flux CMS BIO
SINOPSIS¶
#include <openssl/cms.h> BIO *BIO_new_CMS(BIO *out, CMS_ContentInfo *cms);
DESCRIERE¶
BIO_new_CMS() returnează un lanț BIO de filtrare a transmisiei în flux bazată pe cms. Rezultatul filtrării este scris în out. Orice date scrise în lanț sunt traduse automat într-o structură CMS în format BER de tipul corespunzător.
NOTE¶
Lanțul returnat de această funcție se comportă ca un filtru BIO standard. Acesta acceptă In/Ieș fără blocare. Conținutul este procesat și transmis în timp real și nu este stocat în memorie în întregime: astfel, este posibilă codificarea structurilor foarte mari. După ce tot conținutul a fost scris prin lanț, trebuie apelată funcția BIO_flush() pentru a finaliza structura.
Fanionul CMS_STREAM trebuie inclus în parametrul flags corespunzător al funcției de creare cms.
Dacă o aplicație dorește să scrie date suplimentare în out, BIO-urile trebuie eliminate din lanț folosind BIO_pop() și eliberate cu BIO_free() până când se ajunge la out. Dacă nu este necesară scrierea de date suplimentare, se poate apela BIO_free_all() pentru a elibera întregul lanț.
Orice conținut scris prin filtru este utilizat literal: nu se efectuează nicio traducere canonică.
Este posibil să se conecteze mai multe BIO-uri pentru a crea, de exemplu, o structură triplă învelită, semnată și sigilată. În acest caz, aplicațiile au responsabilitatea de a defini tipul de conținut intern al oricărei structuri CMS_ContentInfo externe.
Trebuie evitate scrierile mici în număr mare prin lanț, deoarece acestea vor produce o ieșire formată din multe structuri OCTET STRING. Adăugarea unui tampon BIO BIO_f_buffer() va preveni acest lucru.
ERORI¶
În prezent nu există o funcție inversă corespondentă: adică unul care poate decoda o structură CMS în timp real.
VALORI RETURNATE¶
BIO_new_CMS() returnează un lanț BIO în cazul unui rezultat pozitiv sau NULL în cazul apariției unei erori. Eroarea poate fi obținută din ERR_get_error(3).
CONSULTAȚI ȘI¶
ISTORIC¶
Funcția BIO_new_CMS() a fost adăugată în OpenSSL 1.0.0.
DREPTURI DE AUTOR¶
Drepturi de autor 2008-2016 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.
| 10 august 2025 | 3.5.2 |