



@deftypefun {int} {gnutls_x509_crq_get_tlsfeatures} (gnutls_x509_crq_t @var{crq}, gnutls_x509_tlsfeatures_t @var{features}, unsigned int @var{flags}, unsigned int * @var{critical})
@var{crq}: An X.509 certificate request

@var{features}: If the function succeeds, the
features will be stored in this variable.

@var{flags}: zero or @code{GNUTLS_EXT_FLAG_APPEND} 

@var{critical}: the extension status

This function will get the X.509 TLS features
extension structure from the certificate request.
The returned structure needs to be freed using
@code{gnutls_x509_tlsfeatures_deinit()} .

When the  @code{flags} is set to @code{GNUTLS_EXT_FLAG_APPEND} ,
then if the  @code{features} structure is empty this function will behave
identically as if the flag was not set. Otherwise if there are elements 
in the  @code{features} structure then they will be merged with.

Note that  @code{features} must be initialized prior to calling this function.

@strong{Returns:} On success, @code{GNUTLS_E_SUCCESS}  (0) is returned,
otherwise a negative error value.

@strong{Since:} 3.5.1
@end deftypefun
