globus_gsi...operations(3)
π globus_gsi_cred_operations β Credential Operations π
okay bestie, welcome to the Library Functions Manual page for globus_gsi_cred_operations, and no cap this one is the whole read/write your GSI credential saga. grab a strawberry drink π and let's go.
πΈ NAME πΈ
globus_gsi_cred_operations β Credential Operations
- Credential Operations.
that's it, that's the name. iconic. π
β¨ SYNOPSIS β¨
Functions
globus_result_t globus_gsi_cred_read (globus_gsi_cred_handle_t handle,
X509_NAME *desired_subject)
Read a credential.
globus_result_t globus_gsi_cred_read_proxy (globus_gsi_cred_handle_t
handle, const char *proxy_filename)
Read proxy credential.
globus_result_t globus_gsi_cred_read_proxy_bio (globus_gsi_cred_handle_t
handle, BIO *bio)
Read proxy credential from a BIO.
globus_result_t globus_gsi_cred_read_key (globus_gsi_cred_handle_t
handle, const char *key_filename, pem_password_cb *pw_cb)
Read a private key.
globus_result_t globus_gsi_cred_read_cert (globus_gsi_cred_handle_t
handle, const char *cert_filename)
Read a certificate chain from a file.
globus_result_t globus_gsi_cred_read_cert_bio (globus_gsi_cred_handle_t
handle, BIO *bio)
Read a certificate chain from a BIO.
globus_result_t globus_gsi_cred_read_cert_buffer (const char *pem_buf,
globus_gsi_cred_handle_t *out_handle, X509 **out_cert,
STACK_OF(X509) **out_cert_chain, char **out_subject)
Read certificate chain from a buffer.
globus_result_t globus_gsi_cred_read_pkcs12 (globus_gsi_cred_handle_t
handle, const char *pkcs12_filename)
Read certificate and key from a PKCS12 file.
globus_result_t globus_gsi_cred_write (globus_gsi_cred_handle_t handle,
BIO *bio)
Write Credential.
globus_result_t globus_gsi_cred_write_proxy (globus_gsi_cred_handle_t
handle, const char *proxy_filename)
Write a proxy credential.
globus_result_t globus_gsi_cred_get_cert_type (globus_gsi_cred_handle_t
handle, globus_gsi_cert_utils_cert_type_t *type)
Get the X.509 certificate type.
π¦ Detailed Description π¦
Credential Operations.
Read/Write a GSI Credential Handle.
This section defines operations to read and write GSI Credential handles. periodt. π
π Function Documentation π
π globus_result_t globus_gsi_cred_get_cert_type (globus_gsi_cred_handle_t handle, globus_gsi_cert_utils_cert_type_t * type)
Get the X.509 certificate type. it literally figures out the type of the given X509 certificate for you. For the list of possible values returned, see globus_gsi_cert_utils_cert_type_t. iykyk.
Parameters
handleβ The credential handle containing the certificatetypeβ The returned X509 certificate type
Returns
GLOBUS_SUCCESS or an error captured in a globus_result_t
π globus_result_t globus_gsi_cred_read (globus_gsi_cred_handle_t handle, X509_NAME * desired_subject)
Read a credential. Read a credential from a filesystem location. The credential to read will be determined by the search order specified in the handle attributes.
Parameters
handleβ The credential handle to set. This credential handle should already be initialized usingglobus_gsi_cred_handle_init.desired_subjectβ The subject to check for when reading in a credential. Thedesired_subjectshould be either a exact match of the read cert's subject or should just contain the/CNentry. If null, the credential read in is the first match based on the system configuration (paths and environment variables)
Returns
GLOBUS_SUCCESS if no errors occurred, otherwise, an error object identifier is returned.
See also
globus_gsi_cred_read_proxy()
globus_gsi_cred_read_cert_and_key()
Note
This function always searches for the desired credential. If you don't want to perform a search, then don't use this function. The search goes in the order of the handle attributes' search order.
β globus_result_t globus_gsi_cred_read_cert (globus_gsi_cred_handle_t handle, const char * cert_filename)
Read a certificate chain from a file. Read a cert from a file. Cert should be in PEM format. Will also read additional certificates as chain if present. slay.
Parameters
handleβ the handle to set based on the certificate that is readcert_filenameβ the filename of the certificate to read
Returns
GLOBUS_SUCCESS or an error object identifier
π globus_result_t globus_gsi_cred_read_cert_bio (globus_gsi_cred_handle_t handle, BIO * bio)
Read a certificate chain from a BIO. Read a cert from a BIO. Cert should be in PEM format. Will also read additional certificates as chain if present.
Parameters
handleβ the handle to set based on the certificate that is readbioβ the bio to read the certificate from
Returns
GLOBUS_SUCCESS or an error object identifier
π§ globus_result_t globus_gsi_cred_read_cert_buffer (const char * pem_buf, globus_gsi_cred_handle_t * out_handle, X509 ** out_cert, STACK_OF(X509) ** out_cert_chain, char ** out_subject)
Read certificate chain from a buffer. Read a cert from a buffer. Cert should be in PEM format. Will also read additional certificates as chain if present. Any parameter besides pem_buf may be NULL. yes bestie, everything except the buffer is optional.
Parameters
pem_bufβ The buffer containing the PEM formatted cert and chain.out_handleβ The handle to initialize and set cert on.out_certβ The X509 certificate. This should be freed withX509_free().out_cert_chainβ The X509 certificate chain. This should be freed withsk_X509_free().out_subjectβ The identity name of the cert. This should be freed withOPENSSL_free().
Returns
GLOBUS_SUCCESS or an error object identifier
okay so those free() calls? not optional, bestie. free your memory or the leak is on you. π«Ά
π globus_result_t globus_gsi_cred_read_key (globus_gsi_cred_handle_t handle, const char * key_filename, pem_password_cb * pw_cb)
Read a private key. Read a key from a PEM file.
Parameters
handleβ the handle to set based on the key that is readkey_filenameβ the filename of the key to readpw_cbβ the callback for obtaining a password for decrypting the key.
Returns
GLOBUS_SUCCESS or an error object identifier
π globus_result_t globus_gsi_cred_read_pkcs12 (globus_gsi_cred_handle_t handle, const char * pkcs12_filename)
Read certificate and key from a PKCS12 file. Read a cert and key from a file. The file should be in PKCS12 format.
Parameters
handleβ the handle to populate with the read credentialpkcs12_filenameβ the filename containing the credential to read
Returns
GLOBUS_SUCCESS or an error object identifier
πΈ globus_result_t globus_gsi_cred_read_proxy (globus_gsi_cred_handle_t handle, const char * proxy_filename)
Read proxy credential. Read a proxy from a PEM file.
Parameters
handleβ The credential handle to set based on the proxy credential read from the fileproxy_filenameβ The file containing the proxy credential
Returns
GLOBUS_SUCCESS or an error object identifier
π¦ globus_result_t globus_gsi_cred_read_proxy_bio (globus_gsi_cred_handle_t handle, BIO * bio)
Read proxy credential from a BIO. Read a Proxy Credential from a BIO stream and set the credential handle to represent the read credential. The values read from the stream, in order, will be the signed certificate, the private key, and the certificate chain. order matters, no cap. π₯
Parameters
handleβ The credential handle to set. The credential should handle be initialized (i.e. notNULL).bioβ The stream to read the credential from
Returns
GLOBUS_SUCCESS unless an error occurred, in which case an error object is returned
β¨ globus_result_t globus_gsi_cred_write (globus_gsi_cred_handle_t handle, BIO * bio)
Write Credential. Write out a credential to a BIO. The credential parameters written, in order, are the signed certificate, the RSA private key, and the certificate chain (a set of X509 certificates). the credential is written out in PEM format.
Parameters
handleβ The credential to write outbioβ The BIO stream to write out to
Returns
GLOBUS_SUCCESS unless an error occurred, in which case an error object ID is returned.
π globus_result_t globus_gsi_cred_write_proxy (globus_gsi_cred_handle_t handle, const char * proxy_filename)
Write a proxy credential. Write out a credential to a file. The credential parameters written, in order, are the signed certificate, the RSA private key, and the certificate chain (a set of X509 certificates). the credential is written out in PEM format.
Parameters
handleβ The credential to write outproxy_filenameβ The file to write out to
Returns
GLOBUS_SUCCESS unless an error occurred, in which case an error object ID is returned.
π Author π
Generated automatically by Doxygen for globus_gsi_credential from the source code. (not a human, not a vibe, just doxygen doing its thing π)
okay that's the whole page bestie, you ate it, go read and write some credentials responsibly πβ¨
this lil manual moment came to you courtesy of globus_gsi_credential, Version 8.5 β mwah, bye ππ
π¦ where this page comes from
- epel 10: globus-gsi-credential-doc 8.5-1.el10_2 Β· Apache-2.0
- fedora 43: globus-gsi-credential-doc 8.5-1.fc43 Β· Apache-2.0
- fedora 44: globus-gsi-credential-doc 8.5-2.fc44 Β· Apache-2.0
- ubuntu resolute: libglobus-gsi-credential-doc 8.5-1 Β· Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms