gnutls\_x509\_crt\_check\_key\_purpose(3) gnutls gnutls\_x509\_crt\_check\_key\_purpose(3)

# [NAME](#NAME)

gnutls\_x509\_crt\_check\_key\_purpose - API function

# [SYNOPSIS](#SYNOPSIS)

**#include &lt;gnutls/x509.h&gt;**

**unsigned gnutls\_x509\_crt\_check\_key\_purpose(gnutls\_x509\_crt\_t cert, const char * purpose, unsigned flags);**

# [ARGUMENTS](#ARGUMENTS)

[gnutls\_x509\_crt\_t cert](#gnutls_x509_crt_t)

should contain a **gnutls\_x509\_crt\_t** type

[const char * purpose](#const)

a key purpose OID (e.g., **GNUTLS\_KP\_CODE\_SIGNING**)

[unsigned flags](#unsigned)

zero or **GNUTLS\_KP\_FLAG\_DISALLOW\_ANY**

# [DESCRIPTION](#DESCRIPTION)

This function will check whether the given certificate matches the provided key purpose. If *flags* contains **GNUTLS\_KP\_FLAG\_ALLOW\_ANY** then it a certificate marked for any purpose will not match.

# [RETURNS](#RETURNS)

zero if the key purpose doesn't match, and non-zero otherwise.

# [SINCE](#SINCE)

3.5.6

# [REPORTING BUGS](#REPORTING_BUGS)

Report bugs to &lt;bugs@gnutls.org&gt;.  
Home page: https://www.gnutls.org

# [COPYRIGHT](#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.

# [SEE ALSO](#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/](https://www.gnutls.org/manual/)

3.8.13 gnutls

---

Document: gnutls_x509_crt_check_key_purpose(3) from gnutls 3.8.13-r3 (Chainguard OS)
Source: https://gitlab.com/gnutls/gnutls
