gnutls_x509_crt_list_verify(3)
π gnutls_x509_crt_list_verify(3) π
okay bestie, sit down, hydrate, because we're about to verify a whole list of certificates and honestly? it's giving main character energy. this one lives in the gnutls manual and it's literally the API function that goes "hey, do these certs actually check out?" π¦
β¨ NAME β¨
gnutls_x509_crt_list_verify β API function
like, that's it, that's the whole name, she's an API function and she's booked and busy π
β¨ SYNOPSIS β¨
#include <gnutls/x509.h>
int gnutls_x509_crt_list_verify(const gnutls_x509_crt_t * cert_list,
unsigned cert_list_length, const gnutls_x509_crt_t * CA_list, unsigned
CA_list_length, const gnutls_x509_crl_t * CRL_list, unsigned
CRL_list_length, unsigned int flags, unsigned int * verify);
look at all those parameters, she's high maintenance but worth it π
β¨ ARGUMENTS β¨
const gnutls_x509_crt_t * cert_listβ the certificate list that's getting verified. the star of the show. the one under the microscope πunsigned cert_list_lengthβ how many certs are chillin' incert_list. yes bestie, you have to count them yourself, that's the vibe.const gnutls_x509_crt_t * CA_listβ the CA list that's gonna be used in verification. these are the trust anchors, the adults in the room πunsigned CA_list_lengthβ how many CA certificates are inCA_list. count again, sorry, that's just how it is.const gnutls_x509_crl_t * CRL_listβ holds a list of CRLs. (certificate revocation lists, iykyk)unsigned CRL_list_lengthβ the length of the CRL list. yes, a third count. we're counting, we're counting π§unsigned int flagsβ flags that may be used to change the verification algorithm. use OR of thegnutls_certificate_verify_flagsenumerations. that's your little knobs-and-dials moment, go wild β¨unsigned int * verifyβ will hold the certificate verification output. this is where the tea gets spilled, lowkey β
β¨ DESCRIPTION β¨
so this function will try to verify the given certificate list and return its status. that's the whole assignment. the details of the verification are the same as in gnutls_x509_trust_list_verify_crt2(), so if you've met that one, you already know her sister πΈ
bestie, listen. you must check the peer's name in order to check if the verified certificate belongs to the actual peer. like, verifying the chain is NOT the same as knowing who you're talking to. do not skip this. this is the part people forget and then it's a whole situation π
the certificate verification output will be put in verify and will be one or more of the gnutls_certificate_status_t enumerated elements bitwise or'd. so it's a little combo platter of statuses π
for a more detailed verification status, use gnutls_x509_crt_verify() per list element. like, one by one, individually, with care. that's the deluxe treatment π
β¨ RETURNS β¨
on success, GNUTLS_E_SUCCESS (0) is returned. otherwise a negative error value. so like, if it's negative, something's not slaying, and you should go read up on your error codes π«Ά
β¨ REPORTING BUGS β¨
found a bug? don't just subtweet it, actually report it to <bugs@gnutls.org>.
home page: https://www.gnutls.org
β¨ COPYRIGHT β¨
Copyright Β© 2001-2023 Free Software Foundation, Inc., and others.
copying and distribution of this file, with or without modification, are permitted in any medium without royalty provided the copyright notice and this notice are preserved. so yes, share it, remix it, pass it to the group chat, just keep the receipts π
β¨ SEE ALSO β¨
the full documentation for gnutls is maintained as a Texinfo manual. if the /usr/share/doc/gnutls/ directory does not contain the HTML form, visit
https://www.gnutls.org/manual/
and that's the whole page bestie!! π this was gnutls version 3.8.13, page gnutls_x509_crt_list_verify(3), and honestly? she ate. go forth, verify those certificate lists, check those peer names, and stay iconic πβ¨π¦
π¦ where this page comes from
- alpine 3.22: gnutls-doc 3.8.13-r0 Β· LGPL-2.1-or-later
- alpine 3.23: gnutls-doc 3.8.13-r0 Β· LGPL-2.1-or-later
- alpine 3.24: gnutls-doc 3.8.13-r0 Β· LGPL-2.1-or-later
- arch rolling: gnutls 3.8.13-3 Β· GPL-3.0-or-later AND LGPL-2.1-or-later
- fedora 43: gnutls-devel 3.8.13-1.fc43 Β· GPL-3.0-or-later AND LGPL-2.1-or-later
- fedora 43: gnutls-devel 3.8.13-1.fc43 Β· GPL-3.0-or-later AND LGPL-2.1-or-later
- fedora 44: gnutls-devel 3.8.13-1.fc44 Β· GPL-3.0-or-later AND LGPL-2.1-or-later
- fedora 44: gnutls-devel 3.8.13-1.fc44 Β· GPL-3.0-or-later AND LGPL-2.1-or-later
- ubuntu stonking: gnutls-doc 3.8.13-1ubuntu1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms