ASN1_STRING_LENGTH(3ssl) OpenSSL ASN1_STRING_LENGTH(3ssl) NUME ASN1_STRING_dup, ASN1_STRING_cmp, ASN1_STRING_set, ASN1_STRING_length, ASN1_STRING_type, ASN1_STRING_get0_data, ASN1_STRING_data, ASN1_STRING_to_UTF8 - funcii utilitare ASN1_STRING SINOPSIS #include int ASN1_STRING_length(ASN1_STRING *x); const unsigned char *ASN1_STRING_get0_data(const ASN1_STRING *x); unsigned char *ASN1_STRING_data(ASN1_STRING *x); ASN1_STRING *ASN1_STRING_dup(const ASN1_STRING *a); int ASN1_STRING_cmp(ASN1_STRING *a, ASN1_STRING *b); int ASN1_STRING_set(ASN1_STRING *str, const void *data, int len); int ASN1_STRING_type(const ASN1_STRING *x); int ASN1_STRING_to_UTF8(unsigned char **out, const ASN1_STRING *in); DESCRIERE Aceste funcii permit manipularea unei structuri ASN1_STRING. ASN1_STRING_length() returneaza lungimea coninutului x. x NU TREBUIE sa fie NULL. ASN1_STRING_get0_data() returneaza un indicator intern catre datele din x. Deoarece acesta este un indicator intern, el nu trebuie eliberat sau modificat in niciun fel. x NU TREBUIE sa fie NULL. ASN1_STRING_data() este similara cu ASN1_STRING_get0_data(), cu excepia faptului ca valoarea returnata nu este constanta. Aceasta funcie este depreciata: aplicaiile ar trebui sa utilizeze in schimb ASN1_STRING_get0_data(). ASN1_STRING_dup() returneaza o copie a structurii a. ASN1_STRING_cmp() compara a i b, returnand 0 daca cele doua sunt identice. Se compara tipurile i coninutul irurilor. ASN1_STRING_set() stabilete datele irului str in tamponul data sau lungimea len. Datele furnizate sunt copiate. Daca len este -1, atunci lungimea este determinata de strlen(data). ASN1_STRING_type() returneaza tipul lui x, utilizand constante standard precum V_ASN1_OCTET_STRING. ASN1_STRING_to_UTF8() convertete irul in in format UTF8, datele convertite fiind alocate intr-un tampon in *out. Se returneaza lungimea out sau un cod de eroare negativ. Tamponul *out trebuie eliberat folosind OPENSSL_free(). NOTE Aproape toate tipurile ASN1 din OpenSSL sunt reprezentate ca o structura ASN1_STRING. Alte tipuri, cum ar fi ASN1_OCTET_STRING, sunt pur i simplu ,,tipedef"-ate la ASN1_STRING, iar funciile apeleaza echivalentele ASN1_STRING. ASN1_STRING este utilizat i pentru unele tipuri CHOICE care constau in intregime din tipuri de iruri primitive, cum ar fi DirectoryString i Time. Aceste funcii nu trebuie utilizate pentru a examina sau modifica tipurile ASN1_INTEGER sau ASN1_ENUMERATED: in schimb, trebuie utilizate funciile utilitare relevante INTEGER sau ENUMERATED. In general, nu se poate presupune ca datele returnate de ASN1_STRING_data() sunt terminate cu null sau nu conin null-uri incorporate. Formatul real al datelor va depinde de tipul real al irului in sine: de exemplu, pentru un IA5String, datele vor fi ASCII, pentru un BMPString, vor fi doi octei per caracter in format big endian, iar pentru un UTF8String, vor fi in format UTF8. Trebuie sa se acorde o atenie similara pentru a se asigura ca datele sunt in formatul corect atunci cand se apeleaza ASN1_STRING_set(). VALORI RETURNATE ASN1_STRING_length() returneaza lungimea coninutului x. ASN1_STRING_get0_data() i ASN1_STRING_data() returneaza un indicator intern catre datele din x. ASN1_STRING_dup() returneaza o structura ASN1_STRING valida sau NULL daca a aparut o eroare. ASN1_STRING_cmp() returneaza un numar intreg mai mare, egal sau mai mic decat 0, in funcie de faptul daca a este mai mare, egal sau mai mic decat b. ASN1_STRING_set() returneaza 1 in caz de succes sau 0 in caz de eroare. ASN1_STRING_type() returneaza tipul lui x. ASN1_STRING_to_UTF8() returneaza numarul de octei din irul de ieire out sau o valoare negativa daca a aparut o eroare. CONSULTAI I ERR_get_error(3) DREPTURI DE AUTOR Drepturi de autor 2002-2020 The OpenSSL Project Authors. Toate drepturile rezervate. Liceniat sub Licena Apache 2.0 (,,License"). Nu avei voie sa utilizai acest fiier decat in conformitate cu licena. Putei obine o copie din fiierul LICENSE din distribuia sursei sau de la . TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . 3.5.2 5 august 2025 ASN1_STRING_LENGTH(3ssl)