dane_verify_session_crt(3)

✨ NAME ✨

dane_verify_session_crt β€” bestie, it's an API function πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

#include <gnutls/dane.h>

int dane_verify_session_crt(dane_state_t s, gnutls_session_t session,
const char * hostname, const char * proto, unsigned int port, unsigned
int sflags, unsigned int vflags, unsigned int * verify);

🌸 ARGUMENTS 🌸

okay so here's what you're feeding it, one by one, no skipping 🫢

  • dane_state_t s β€” a DANE state structure (and yeah, it's allowed to be NULL, she's flexible like that)
  • gnutls_session_t session β€” a gnutls session. the main character, literally
  • const char * hostname β€” the hostname that's associated with the chain
  • const char * proto β€” the protocol of the service that's connecting (think tcp, iykyk)
  • unsigned int port β€” the port of the service that's connecting (like, say, 443 πŸ‘€)
  • unsigned int sflags β€” flags for the initialization of s (only matters if it's NULL, bestie)
  • unsigned int vflags β€” verification flags; an OR'ed list of dane_verify_flags_t
  • unsigned int * verify β€” an OR'ed list of dane_verify_status_t. this is where the receipts go 🧾

πŸ’– DESCRIPTION πŸ’–

so what does she actually do? this function will verify the session's certificate chain against the CA constrains and/or the certificate available via DANE. that's the whole vibe. for more info, go read dane_verify_crt() β€” she's the older sister, she explains everything 🌈

⚠️ ok important: this will not verify the chain for validity. unless the DANE verification is restricted to end certificates, that has to be performed separately using gnutls_certificate_verify_peers3(). do not skip this step, I'm begging πŸ™ˆ

πŸ”₯ RETURNS πŸ”₯

  • a negative error code on error 😭
  • DANE_E_SUCCESS (0) when the DANE entries were successfully parsed β€” and no, that's irrespective of whether they were verified (check verify for that tea β˜•)
  • and if no usable entries were encountered, you get DANE_E_REQUESTED_DATA_NOT_AVAILABLE. it's giving "nothing to see here" πŸ’€

πŸŽ€ REPORTING BUGS πŸŽ€

found a bug? don't be shy, report it to <bugs@gnutls.org>. πŸ’Œ

Home page: https://www.gnutls.org


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. slay, and also legally binding πŸ’…


⭐ 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 3.8.13, manual page dane_verify_session_crt(3) β€” go forth and verify those chains, you absolute icon πŸ’–πŸ¦‹

πŸ“¦ where this page comes from