=pod =head1 NAME X509_verify_cert - discover and verify X509 certificate chain =head1 SYNOPSIS #include <openssl/x509.h> int X509_verify_cert(X509_STORE_CTX *ctx); =head1 DESCRIPTION The X509_verify_cert() function attempts to discover and validate a certificate chain based on parameters in B<ctx>. A complete description of the process is contained in the L<verify(1)> manual page. =head1 RETURN VALUES If a complete chain can be built and validated this function returns 1, otherwise it return zero, in exceptional circumstances it can also return a negative code. If the function fails additional error information can be obtained by examining B<ctx> using, for example X509_STORE_CTX_get_error(). =head1 NOTES Applications rarely call this function directly but it is used by OpenSSL internally for certificate validation, in both the S/MIME and SSL/TLS code. A negative return value from X509_verify_cert() can occur if it is invoked incorrectly, such as with no certificate set in B<ctx>, or when it is called twice in succession without reinitialising B<ctx> for the second call. A negative return value can also happen due to internal resource problems or if a retry operation is requested during internal lookups (which never happens with standard lookup methods). Applications must check for <= 0 return value on error. =head1 BUGS This function uses the header B<x509.h> as opposed to most chain verification functions which use B<x509_vfy.h>. =head1 SEE ALSO L<X509_STORE_CTX_get_error(3)> =head1 COPYRIGHT Copyright 2009-2016 The OpenSSL Project Authors. All Rights Reserved. Licensed under the OpenSSL license (the "License"). You may not use this file except in compliance with the License. You can obtain a copy in the file LICENSE in the source distribution or at L<https://www.openssl.org/source/license.html>. =cut |