Provided by: libglobus-gsi-credential-doc_6.0-2_all bug

NAME

       Credential Operations -

   Read Credential
       globus_result_t globus_gsi_cred_read (globus_gsi_cred_handle_t handle, X509_NAME *desired_subject)

   Reading Proxy Credentials
       globus_result_t globus_gsi_cred_read_proxy (globus_gsi_cred_handle_t handle, const char *proxy_filename)
       globus_result_t globus_gsi_cred_read_proxy_bio (globus_gsi_cred_handle_t handle, BIO *bio)

   Read Key
       globus_result_t globus_gsi_cred_read_key (globus_gsi_cred_handle_t handle, char *key_filename,
           int(*pw_cb)())

   Read Cert and chain from file
       globus_result_t globus_gsi_cred_read_cert (globus_gsi_cred_handle_t handle, char *cert_filename)

   Read Cert and chain from BIO stream
       globus_result_t globus_gsi_cred_read_cert_bio (globus_gsi_cred_handle_t handle, BIO *bio)

   Read Cert and chain from a buffer
       globus_result_t globus_gsi_cred_read_cert_buffer (char *pem_buf, globus_gsi_cred_handle_t *out_handle,
           X509 **out_cert, STACK_OF(X509)**out_cert_chain, char **out_subject)

   Read Cert & Key in PKCS12 Format
       globus_result_t globus_gsi_cred_read_pkcs12 (globus_gsi_cred_handle_t handle, char *pkcs12_filename)

   Write Credential
       globus_result_t globus_gsi_cred_write (globus_gsi_cred_handle_t handle, BIO *bio)
       globus_result_t globus_gsi_cred_write_proxy (globus_gsi_cred_handle_t handle, char *proxy_filename)

   Get the X509 certificate type (EEC, CA, proxy type, etc.)
       globus_result_t globus_gsi_cred_get_cert_type (globus_gsi_cred_handle_t handle,
           globus_gsi_cert_utils_cert_type_t *type)

Detailed Description

       Read/Write a GSI Credential Handle.

       This section defines operations to read and write GSI Credential handles.

Function Documentation

   globus_result_t globus_gsi_cred_read (globus_gsi_cred_handle_thandle, X509_NAME *desired_subject)
       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 using
           globus_gsi_cred_handle_init.
           desired_subject The subject to check for when reading in a credential. The desired_subject should be
           either a exact match of the read cert's subject or should just contain the /CN entry. 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 occured, 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.

       References GLOBUS_GSI_CRED_ERROR_KEY_IS_PASS_PROTECTED, GLOBUS_GSI_CRED_ERROR_NO_CRED_FOUND,
       GLOBUS_GSI_CRED_ERROR_READING_CRED, GLOBUS_GSI_CRED_ERROR_READING_HOST_CRED,
       GLOBUS_GSI_CRED_ERROR_READING_PROXY_CRED, GLOBUS_GSI_CRED_ERROR_READING_SERVICE_CRED,
       GLOBUS_GSI_CRED_ERROR_WITH_CRED, globus_gsi_cred_get_lifetime(), globus_gsi_cred_get_X509_subject_name(),
       globus_gsi_cred_read_cert(), globus_gsi_cred_read_key(), globus_gsi_cred_read_proxy(), and
       GLOBUS_GSI_CREDENTIAL_MODULE.

   globus_result_t globus_gsi_cred_read_proxy (globus_gsi_cred_handle_thandle, const char *proxy_filename)
       Read a proxy from a PEM file.

       Parameters:
           handle The credential handle to set based on the proxy credential read from the file
           proxy_filename The file containing the proxy credential

       Returns:
           GLOBUS_SUCCESS or an error object identifier

       References GLOBUS_GSI_CRED_ERROR_READING_PROXY_CRED, and globus_gsi_cred_read_proxy_bio().

   globus_result_t globus_gsi_cred_read_proxy_bio (globus_gsi_cred_handle_thandle, BIO *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

       Parameters:
           handle The credential handle to set. The credential should handle be initialized (i.e. not NULL).
           bio The stream to read the credential from

       Returns:
           GLOBUS_SUCCESS unless an error occurred, in which case an error object is returned

       References GLOBUS_GSI_CRED_ERROR_READING_PROXY_CRED, and GLOBUS_GSI_CRED_ERROR_WITH_CRED.

   globus_result_t globus_gsi_cred_read_key (globus_gsi_cred_handle_thandle, char *key_filename, int(*)()pw_cb)
       Read a key from a PEM file.

       Parameters:
           handle the handle to set based on the key that is read
           key_filename the filename of the key to read
           pw_cb the callback for obtaining a password for decrypting the key.

       Returns:
           GLOBUS_SUCCESS or an error object identifier

       References GLOBUS_GSI_CRED_ERROR_KEY_IS_PASS_PROTECTED, and GLOBUS_GSI_CRED_ERROR_READING_CRED.

   globus_result_t globus_gsi_cred_read_cert (globus_gsi_cred_handle_thandle, char *cert_filename)
       Read a cert from a file. 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 read
           cert_filename the filename of the certificate to read

       Returns:
           GLOBUS_SUCCESS or an error object identifier

       References GLOBUS_GSI_CRED_ERROR_READING_CRED, and globus_gsi_cred_read_cert_bio().

   globus_result_t globus_gsi_cred_read_cert_bio (globus_gsi_cred_handle_thandle, BIO *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 read
           bio the bio to read the certificate from

       Returns:
           GLOBUS_SUCCESS or an error object identifier

       References GLOBUS_GSI_CRED_ERROR_READING_CRED, GLOBUS_GSI_CRED_ERROR_READING_PROXY_CRED, and
       GLOBUS_GSI_CRED_ERROR_WITH_CRED.

   globus_result_t globus_gsi_cred_read_cert_buffer (char *pem_buf, globus_gsi_cred_handle_t *out_handle, X509
       **out_cert, STACK_OF(X509)**out_cert_chain, char **out_subject)
       Read a cert from a buffer. Cert should be in PEM format. Will also read additional certificates as chain
       if present. Any paramter besides pem_buf may be NULL.

       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 with X509_free().
           out_cert_chain The X509 certificate chain. This should be freed with sk_X509_free().
           out_subject The identity name of the cert. This should be freed with OPENSSL_free().

       Returns:
           GLOBUS_SUCCESS or an error object identifier

       References GLOBUS_GSI_CRED_ERROR_READING_CRED, globus_gsi_cred_get_cert(),
       globus_gsi_cred_get_cert_chain(), globus_gsi_cred_get_identity_name(), globus_gsi_cred_handle_destroy(),
       globus_gsi_cred_handle_init(), and globus_gsi_cred_read_cert_bio().

   globus_result_t globus_gsi_cred_read_pkcs12 (globus_gsi_cred_handle_thandle, char *pkcs12_filename)
       Read a cert & key from a file. The file should be in PKCS12 format.

       Parameters:
           handle the handle to populate with the read credential
           pkcs12_filename the filename containing the credential to read

       Returns:
           GLOBUS_SUCCESS or an error object identifier

       References GLOBUS_GSI_CRED_ERROR_READING_CRED, and GLOBUS_GSI_CRED_ERROR_WITH_CRED.

   globus_result_t globus_gsi_cred_write (globus_gsi_cred_handle_thandle, BIO *bio)
       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 out
           bio The BIO stream to write out to

       Returns:
           GLOBUS_SUCCESS unless an error occurred, in which case an error object ID is returned.

       References GLOBUS_GSI_CRED_ERROR_WRITING_CRED.

   globus_result_t globus_gsi_cred_write_proxy (globus_gsi_cred_handle_thandle, char *proxy_filename)
       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 out
           proxy_filename The file to write out to

       Returns:
           GLOBUS_SUCCESS unless an error occurred, in which case an error object ID is returned.

       References GLOBUS_GSI_CRED_ERROR_WRITING_PROXY_CRED, and globus_gsi_cred_write().

   globus_result_t globus_gsi_cred_get_cert_type (globus_gsi_cred_handle_thandle,
       globus_gsi_cert_utils_cert_type_t *type)
       Determine the type of the given X509 certificate For the list of possible values returned, see
       globus_gsi_cert_utils_cert_type_t.

       Parameters:
           handle The credential handle containing the certificate
           type The returned X509 certificate type

       Returns:
           GLOBUS_SUCCESS or an error captured in a globus_result_t

       References GLOBUS_GSI_CRED_ERROR_WITH_CRED_CERT.

Author

       Generated automatically by Doxygen for globus gsi credential from the source code.

Version 6.0                                      Fri Dec 6 2013                         Credential Operations(3)