.TH "globus_gsi_cert_utils" 3 "Wed Feb 27 2019" "Version 10.2" "globus_gsi_cert_utils" \" -*- nroff -*- .ad l .nh .SH NAME globus_gsi_cert_utils \- Globus GSI Certificate Handling Utilities\&. .SH SYNOPSIS .br .PP .SS "Modules" .in +1c .ti -1c .RI "\fBActivation\fP" .br .RI "Activation\&. " .ti -1c .RI "\fBCert Utils Constants\fP" .br .RI "Cert Utils Constants\&. " .in -1c .SS "Functions" .in +1c .ti -1c .RI "globus_result_t \fBglobus_gsi_cert_utils_make_time\fP (const ASN1_UTCTIME *ctm, time_t *newtime)" .br .RI "Convert ASN1_UTCTIME to time_t\&. " .ti -1c .RI "globus_result_t \fBglobus_gsi_cert_utils_get_cert_type\fP (X509 *cert, \fBglobus_gsi_cert_utils_cert_type_t\fP *type)" .br .RI "Get the X509 certificate type\&. " .ti -1c .RI "globus_result_t \fBglobus_gsi_cert_utils_get_x509_name\fP (const char *subject_string, int length, X509_NAME *x509_name)" .br .RI "Get the certificate name\&. " .ti -1c .RI "globus_result_t \fBglobus_gsi_cert_utils_get_base_name\fP (X509_NAME *subject, STACK_OF(X509) *cert_chain)" .br .RI "Get the base certificate name from a certificate chain\&. " .ti -1c .RI "globus_result_t \fBglobus_gsi_cert_utils_get_eec\fP (STACK_OF(X509) *cert_chain, X509 **eec)" .br .RI "Get the end-entity certificate from a certificate chain\&. " .ti -1c .RI "globus_result_t \fBglobus_gsi_cert_utils_get_identity_cert\fP (STACK_OF(X509) *cert_chain, X509 **identity_cert)" .br .RI "Get the identity certificate from a certificate chain\&. " .in -1c .SH "Detailed Description" .PP Globus GSI Certificate Handling Utilities\&. The Globus GSI Certificate Handling Utilities library\&. This library contains helper functions for dealing with certificates\&. .PP .IP "\(bu" 2 \fBActivation\fP .IP "\(bu" 2 \fBGlobus GSI Certificate Handling Utilities\fP .IP "\(bu" 2 \fBCert Utils Constants\fP .PP .SH "Function Documentation" .PP .SS "globus_result_t globus_gsi_cert_utils_get_base_name (X509_NAME * subject, STACK_OF(X509) * cert_chain)" .PP Get the base certificate name from a certificate chain\&. Get the base name of a proxy certificate\&. Given an X509 name, strip off the proxy related /CN components to get the base name of the certificate's subject .PP \fBParameters:\fP .RS 4 \fIsubject\fP Pointer to an X509_NAME object which gets stripped .br \fIcert_chain\fP The certificate chain used to detect the number of CNs to strip\&. This is done by figuring out the number of proxies in the chain\&. .RE .PP \fBReturns:\fP .RS 4 GLOBUS_SUCCESS .RE .PP .SS "globus_result_t globus_gsi_cert_utils_get_cert_type (X509 * cert, \fBglobus_gsi_cert_utils_cert_type_t\fP * type)" .PP Get the X509 certificate type\&. Determine the type of the given X509 certificate For the list of possible values returned, see globus_gsi_cert_utils_cert_type_t\&. .PP \fBParameters:\fP .RS 4 \fIcert\fP The X509 certificate .br \fItype\fP The returned X509 certificate type .RE .PP \fBReturns:\fP .RS 4 GLOBUS_SUCCESS or an error captured in a globus_result_t .RE .PP .SS "globus_result_t globus_gsi_cert_utils_get_eec (STACK_OF(X509) * cert_chain, X509 ** eec)" .PP Get the end-entity certificate from a certificate chain\&. Get the end-entity certificate associated with a certificate chain .PP \fBParameters:\fP .RS 4 \fIcert_chain\fP Certificate chain to inspect\&. .br \fIeec\fP Pointer to be set to the EEC value from within the cert chain\&. Must freed by the caller\&. .RE .PP .SS "globus_result_t globus_gsi_cert_utils_get_identity_cert (STACK_OF(X509) * cert_chain, X509 ** identity_cert)" .PP Get the identity certificate from a certificate chain\&. Get the identity-providing certificate associated with a certificate chain\&. This may be an independent proxy or a end-entity certificate\&. .PP \fBParameters:\fP .RS 4 \fIcert_chain\fP Certificate chain to inspect\&. .br \fIidentity_cert\fP Pointer to be set to the certificate value from within the cert chain\&. Must freed by the caller\&. .RE .PP .SS "globus_result_t globus_gsi_cert_utils_get_x509_name (const char * subject_string, int length, X509_NAME * x509_name)" .PP Get the certificate name\&. Get the X509_NAME from a subject string\&. OpenSSL doesn't provide this function, probably because it shouldn't be used\&. If you are getting an X509_NAME from just a string, its impossible to verify its integrity\&. .PP \fBParameters:\fP .RS 4 \fIsubject_string\fP The subject in the format: '/O=Grid/OU=\&.\&.\&.' .br \fIlength\fP The length of the subject string .br \fIx509_name\fP The resulting X509_NAME object .RE .PP \fBReturns:\fP .RS 4 GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is returned .RE .PP .SS "globus_result_t globus_gsi_cert_utils_make_time (const ASN1_UTCTIME * ctm, time_t * newtime)" .PP Convert ASN1_UTCTIME to time_t\&. Convert a ASN1_UTCTIME structure to a time_t .PP \fBParameters:\fP .RS 4 \fIctm\fP The ASN1_UTCTIME to convert .br \fInewtime\fP The converted time .RE .PP \fBReturns:\fP .RS 4 GLOBUS_SUCCESS or an error captured in a globus_result_t .RE .PP .SH "Author" .PP Generated automatically by Doxygen for globus_gsi_cert_utils from the source code\&.