Provided by: libglobus-gsi-proxy-core-doc_9.8-3_all bug

NAME

       globus_gsi_proxy_handle - Handle Management

        - Create/Destroy/Modify a GSI Proxy Handle.

SYNOPSIS

   Typedefs
       typedef struct globus_l_gsi_proxy_handle_s * globus_gsi_proxy_handle_t
           GSI Proxy Handle.

   Functions
       globus_result_t globus_gsi_proxy_handle_init (globus_gsi_proxy_handle_t *handle,
           globus_gsi_proxy_handle_attrs_t handle_attrs)
           Initialize a GSI Proxy handle.
       globus_result_t globus_gsi_proxy_handle_get_req (globus_gsi_proxy_handle_t handle,
           X509_REQ **req)
           Get the certificate request from a GSI Proxy handle.
       globus_result_t globus_gsi_proxy_handle_get_private_key (globus_gsi_proxy_handle_t handle,
           EVP_PKEY **proxy_key)
           Get the private key from a GSI Proxy handle.
       globus_result_t globus_gsi_proxy_handle_get_type (globus_gsi_proxy_handle_t handle,
           globus_gsi_cert_utils_cert_type_t *type)
           Get Proxy Type.
       globus_result_t globus_gsi_proxy_handle_set_type (globus_gsi_proxy_handle_t handle,
           globus_gsi_cert_utils_cert_type_t type)
           Get Proxy Type.
       globus_result_t globus_gsi_proxy_handle_set_policy (globus_gsi_proxy_handle_t handle,
           const unsigned char *policy_data, int policy_length, int policy_language_NID)
           Set Policy.
       globus_result_t globus_gsi_proxy_handle_get_policy (globus_gsi_proxy_handle_t handle,
           unsigned char **policy_data, int *policy_length, int *policy_NID)
           Get Policy.
       globus_result_t globus_gsi_proxy_handle_add_extension (globus_gsi_proxy_handle_t handle,
           X509_EXTENSION *ext)
           Add X.509 Extensions.
       globus_result_t globus_gsi_proxy_handle_set_extensions (globus_gsi_proxy_handle_t handle,
           STACK_OF(X509_EXTENSION) *exts)
           Set X.509 Extensions.
       globus_result_t globus_gsi_proxy_handle_get_extensions (globus_gsi_proxy_handle_t handle,
           STACK_OF(X509_EXTENSION) **exts)
           Get X.509 Extensions.
       globus_result_t globus_gsi_proxy_handle_set_pathlen (globus_gsi_proxy_handle_t handle,
           long pathlen)
           Set Path Length.
       globus_result_t globus_gsi_proxy_handle_get_pathlen (globus_gsi_proxy_handle_t handle, int
           *pathlen)
           Get Path Length.
       globus_result_t globus_gsi_proxy_handle_get_time_valid (globus_gsi_proxy_handle_t handle,
           int *time_valid)
           Get Time Valid.
       globus_result_t globus_gsi_proxy_handle_set_time_valid (globus_gsi_proxy_handle_t handle,
           int time_valid)
           Set Time Valid.
       globus_result_t globus_gsi_proxy_handle_clear_cert_info (globus_gsi_proxy_handle_t handle)
           Clear Cert Info.
       globus_result_t globus_gsi_proxy_handle_get_proxy_cert_info_openssl
           (globus_gsi_proxy_handle_t handle, PROXY_CERT_INFO_EXTENSION **pci)
           Get Cert Info.
       globus_result_t globus_gsi_proxy_handle_set_proxy_cert_info_openssl
           (globus_gsi_proxy_handle_t handle, PROXY_CERT_INFO_EXTENSION *pci)
           Set Cert Info.
       globus_result_t globus_gsi_proxy_handle_get_signing_algorithm (globus_gsi_proxy_handle_t
           handle, const EVP_MD **signing_algorithm)
           Get Signing Algorithm.
       globus_result_t globus_gsi_proxy_handle_get_keybits (globus_gsi_proxy_handle_t handle, int
           *key_bits)
           Get Key Bits.
       globus_result_t globus_gsi_proxy_handle_get_init_prime (globus_gsi_proxy_handle_t handle,
           int *init_prime)
           Get Init Prime.
       globus_result_t globus_gsi_proxy_handle_get_clock_skew_allowable
           (globus_gsi_proxy_handle_t handle, int *skew)
           Get Clock Skew <>
       globus_result_t globus_gsi_proxy_handle_get_key_gen_callback (globus_gsi_proxy_handle_t
           handle, void(**callback)(int, int, void *))
           Get Callback for Creating Keys.
       globus_result_t globus_gsi_proxy_handle_get_common_name (globus_gsi_proxy_handle_t handle,
           char **common_name)
           Get/Set Proxy Common Name.
       globus_result_t globus_gsi_proxy_handle_set_is_limited (globus_gsi_proxy_handle_t handle,
           globus_bool_t is_limited)
           Set/Check Proxy Is Limited.

Detailed Description

       Create/Destroy/Modify a GSI Proxy Handle.

       Within the Globus GSI Proxy Library, all proxy operations require a handle parameter.
       Currently, only one proxy operation may be in progress at once per proxy handle.

       This section defines operations to create, modify and destroy GSI Proxy handles.

Typedef Documentation

   typedef struct globus_l_gsi_proxy_handle_s* globus_gsi_proxy_handle_t
       GSI Proxy Handle. An GSI Proxy handle is used to associate state with a group of
       operations. Handles can have immutable attributes associated with them. All proxy
       operations  take a handle pointer as a parameter.

       See also
           globus_gsi_proxy_handle_init(), globus_gsi_proxy_handle_destroy(), Handle Attributes

Function Documentation

   globus_result_t globus_gsi_proxy_handle_add_extension (globus_gsi_proxy_handle_t handle,
       X509_EXTENSION * ext)
       Add X.509 Extensions. Add an X.509 extension to the GSI Proxy handle to be added to
       certificate

       This function adds a X.509 extension to the proxy certificate.

       Parameters
           handle The handle for the proxy to which the extension should be added.
           ext The extension to be added.

       Returns
           GLOBUS_SUCCESS if the addition was successful, otherwise an error is returned.

       See also
           globus_gsi_proxy_handle_get_extensions()

           globus_gsi_proxy_handle_set_extensions()

   globus_result_t globus_gsi_proxy_handle_clear_cert_info (globus_gsi_proxy_handle_t handle)
       Clear Cert Info. Clear the proxy cert info extension stored in the GSI Proxy handle.

       This function clears proxy cert info extension related setting in the GSI Proxy handle.

       Parameters
           handle The handle for which to clear the proxy cert info extension.

       Returns
           GLOBUS_SUCCESS if the handle is valid, otherwise an error is returned

   globus_result_t globus_gsi_proxy_handle_get_clock_skew_allowable (globus_gsi_proxy_handle_t
       handle, int * skew)
       Get Clock Skew <> Get the clock skew of the proxy handle

       Parameters
           handle The handle to get the clock skew of
           skew The resulting clock skew

       Returns
           GLOBUS_SUCCESS unless an error occurred, in which case an error object identifier (in
           the form of a globus_result_t) is returned

   globus_result_t globus_gsi_proxy_handle_get_common_name (globus_gsi_proxy_handle_t handle,
       char ** common_name)
       Get/Set Proxy Common Name. Get the proxy common name stored in the GSI Proxy handle.

       This function retrieves the proxy common name from the GSI Proxy handle. The common name
       only impacts draft compliant proxies.

       Parameters
           handle The handle from which to get the proxy common name.
           common_name Contains the proxy common name upon successful return. If the handle does
           not contain a common name, this parameter will be NULL upon return.

       Returns
           GLOBUS_SUCCESS upon success GLOBUS_GSI_PROXY_ERROR_WITH_HANDLE if handle is invalid

   globus_result_t globus_gsi_proxy_handle_get_extensions (globus_gsi_proxy_handle_t handle,
       STACK_OF(X509_EXTENSION) ** exts)
       Get X.509 Extensions. Get the X.509 extensions from a GSI Proxy handle

       This function returns the X.509 extensions from the proxy certificate.

       Parameters
           handle The handle for the proxy from which the extensions should be retrieved.
           exts The variable to hold the extensions. The caller is responsible for freeing the
           extensions with sk_X509_EXTENSION_free() when they are done with them.

       Returns
           GLOBUS_SUCCESS if the retrieval was successful, otherwise an error is returned.

       See also
           globus_gsi_proxy_handle_add_extension()

           globus_gsi_proxy_handle_set_extensions()

   globus_result_t globus_gsi_proxy_handle_get_init_prime (globus_gsi_proxy_handle_t handle, int
       * init_prime)
       Get Init Prime. Get the init prime of the proxy handle

       Parameters
           handle The handle to get the init prime used in generating the key pair
           init_prime The resulting init prime

       Returns
           GLOBUS_SUCCESS unless an error occurred, in which case an error object identifier (in
           the form of a globus_result_t) is returned

   globus_result_t globus_gsi_proxy_handle_get_key_gen_callback (globus_gsi_proxy_handle_t
       handle, void(**)(int, int, void *) callback)
       Get Callback for Creating Keys. Get the callback for creating the public/private key pair

       Parameters
           handle The proxy handle to get the callback from
           callback Parameter used for returning the callback

       Returns
           GLOBUS_SUCCESS or an error object identifier

   globus_result_t globus_gsi_proxy_handle_get_keybits (globus_gsi_proxy_handle_t handle, int *
       key_bits)
       Get Key Bits. Get the key bits used for the pub/private key pair of the proxy

       Parameters
           handle The proxy handle to get the key bits of
           key_bits key bits of the proxy handle

       Returns
           GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is
           returned GLOBUS_SUCCESS

   globus_result_t globus_gsi_proxy_handle_get_pathlen (globus_gsi_proxy_handle_t handle, int *
       pathlen)
       Get Path Length. Get the path length from the GSI Proxy handle.

       This function gets the path length that is being used in the proxy cert info extension.

       Parameters
           handle The handle to be interrogated.
           pathlen The maximum allowable path length

       Returns
           GLOBUS_SUCCESS if the handle is valid, otherwise an error is returned

       See also
           globus_gsi_proxy_handle_set_pathlen()

   globus_result_t globus_gsi_proxy_handle_get_policy (globus_gsi_proxy_handle_t handle, unsigned
       char ** policy_data, int * policy_length, int * policy_NID)
       Get Policy. Get the policy from the GSI Proxy handle.

       This function gets the policy that is being used in the proxy cert info extension.

       Parameters
           handle The handle to be interrogated.
           policy_data The policy data.
           policy_length The length of the returned policy
           policy_NID The NID of the policy language.

       Returns
           GLOBUS_SUCCESS if the handle is valid, otherwise an error is returned

       See also
           globus_gsi_proxy_handle_set_policy()

   globus_result_t globus_gsi_proxy_handle_get_private_key (globus_gsi_proxy_handle_t handle,
       EVP_PKEY ** proxy_key)
       Get the private key from a GSI Proxy handle. Copies the private key associated with the
       proxy handle to the value pointed to by the proxy_key parameter.

       Parameters
           handle The handle from which to get the private key
           proxy_key Parameter used to return the key. It is the users responsibility to free the
           returned key by calling EVP_PKEY_free().

       Returns
           GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is
           returned

       See also
           globus_gsi_proxy_handle_set_private_key()

   globus_result_t globus_gsi_proxy_handle_get_proxy_cert_info_openssl (globus_gsi_proxy_handle_t
       handle, PROXY_CERT_INFO_EXTENSION ** pci)
       Get Cert Info. Get the proxy cert info extension stored in the GSI Proxy handle.

       This function retrieves the proxy cert info extension from the GSI Proxy handle.

       Parameters
           handle The handle from which to get the proxy cert info extension.
           pci Contains the proxy cert info extension upon successful return. If the handle does
           not contain a pci extension, this parameter will be NULL upon return.

       Returns
           GLOBUS_SUCCESS upon success GLOBUS_GSI_PROXY_ERROR_WITH_HANDLE if handle is invalid
           GLOBUS_GSI_PROXY_ERROR_WITH_PROXYCERTINFO if the pci pointer is invalid or if the get
           failed.

   globus_result_t globus_gsi_proxy_handle_get_req (globus_gsi_proxy_handle_t handle, X509_REQ **
       req)
       Get the certificate request from a GSI Proxy handle. Copies the certificate request
       associated with the proxy handle to the req parameter.

       Parameters
           handle The handle from which to get the certificate request
           req Parameter used to return the request. It is the users responsibility to free the
           returned request.

       Returns
           GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is
           returned

       See also
           globus_gsi_proxy_handle_set_req()

   globus_result_t globus_gsi_proxy_handle_get_signing_algorithm (globus_gsi_proxy_handle_t
       handle, const EVP_MD ** signing_algorithm)
       Get Signing Algorithm. Get the signing algorithm used to sign the proxy cert request

       Parameters
           handle The proxy handle containing the type of signing algorithm used
           signing_algorithm signing algorithm of the proxy handle

       Return values
           GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is
           returned

   globus_result_t globus_gsi_proxy_handle_get_time_valid (globus_gsi_proxy_handle_t handle, int
       * time_valid)
       Get Time Valid. Get the validity time of the proxy

       Parameters
           handle The proxy handle to get the expiration date of
           time_valid expiration date of the proxy handle

       Returns
           GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is
           returned

   globus_result_t globus_gsi_proxy_handle_get_type (globus_gsi_proxy_handle_t handle,
       globus_gsi_cert_utils_cert_type_t * type)
       Get Proxy Type. Determine the type of proxy that will be generated when using this handle.

       Parameters
           handle The handle from which to get the type
           type Parameter used to return the type.

       Returns
           GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is
           returned

       See also
           globus_gsi_proxy_handle_set_type()

   globus_result_t globus_gsi_proxy_handle_init (globus_gsi_proxy_handle_t * handle,
       globus_gsi_proxy_handle_attrs_t handle_attrs)
       Initialize a GSI Proxy handle. Initialize a proxy handle which can be used in subsequent
       operations. The handle may only be used in one sequence of operations at a time.

       Parameters
           handle A pointer to the handle to be initialized. If the handle is originally NULL,
           space is allocated for it. Otherwise, the current values of the handle are
           overwritten.
           handle_attrs Initial attributes to be used to create this handle.

       Returns
           GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is
           returned

       See also
           globus_gsi_proxy_handle_destroy()

   globus_result_t globus_gsi_proxy_handle_set_extensions (globus_gsi_proxy_handle_t handle,
       STACK_OF(X509_EXTENSION) * exts)
       Set X.509 Extensions. Set the X.509 extensions from a GSI Proxy handle

       This function sets the X.509 extensions for a proxy certificate.

       Parameters
           handle The handle for the proxy from which the extension should be set.
           exts The extensions to be set. Can be NULL to clear extensions.

       Returns
           GLOBUS_SUCCESS if the addition was successful, otherwise an error is returned.

       See also
           globus_gsi_proxy_handle_add_extension()

           globus_gsi_proxy_handle_get_extensions()

   globus_result_t globus_gsi_proxy_handle_set_is_limited (globus_gsi_proxy_handle_t handle,
       globus_bool_t is_limited)
       Set/Check Proxy Is Limited. Set the limited proxy flag on the proxy handle

       Parameters
           handle the proxy handle
           is_limited boolean value to set on the proxy handle

       Returns
           GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is
           returned

   globus_result_t globus_gsi_proxy_handle_set_pathlen (globus_gsi_proxy_handle_t handle, long
       pathlen)
       Set Path Length. Set the path length to be used in the GSI Proxy handle.

       This function sets the path length to be used in the proxy cert info extension.

       Parameters
           handle The handle to be modified.
           pathlen The maximum allowable path length

       Returns
           GLOBUS_SUCCESS if the handle is valid, otherwise an error is returned

       See also
           globus_gsi_proxy_handle_get_pathlen()

   globus_result_t globus_gsi_proxy_handle_set_policy (globus_gsi_proxy_handle_t handle, const
       unsigned char * policy_data, int policy_length, int policy_language_NID)
       Set Policy. Set the policy to be used in the GSI Proxy handle.

       This function sets the policy to be used in the proxy cert info extension.

       Parameters
           handle The handle to be modified.
           policy_data The policy data.
           policy_length The length of the policy data
           policy_language_NID The NID of the policy language.

       Returns
           GLOBUS_SUCCESS if the handle and its associated fields are valid otherwise an error is
           returned

       See also
           globus_gsi_proxy_handle_get_policy()

   globus_result_t globus_gsi_proxy_handle_set_proxy_cert_info_openssl (globus_gsi_proxy_handle_t
       handle, PROXY_CERT_INFO_EXTENSION * pci)
       Set Cert Info. Set the proxy cert info extension stored in the GSI Proxy handle.

       This function sets the proxy cert info extension in the GSI Proxy handle.

       Parameters
           handle The handle for which to set the proxy cert info extension.
           pci The proxy cert info extension to set.

       Return values
           GLOBUS_SUCCESS Success
           GLOBUS_GSI_PROXY_ERROR_WITH_HANDLE Handle is invalid
           GLOBUS_GSI_PROXY_ERROR_WITH_PROXYCERTINFO pci pointer is invalid or if the set failed.

   globus_result_t globus_gsi_proxy_handle_set_time_valid (globus_gsi_proxy_handle_t handle, int
       time_valid)
       Set Time Valid. Set the validity time of the proxy

       Parameters
           handle The proxy handle to set the expiration date for
           time_valid desired expiration date of the proxy

       Returns
           GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is
           returned GLOBUS_SUCCESS

   globus_result_t globus_gsi_proxy_handle_set_type (globus_gsi_proxy_handle_t handle,
       globus_gsi_cert_utils_cert_type_t type)
       Get Proxy Type. Set the type of proxy that will be generated when using this handle. Note
       that this will have no effect when generating a proxy from a proxy. In that case the
       generated proxy will inherit the type of the parent.

       Parameters
           handle The handle for which to set the type
           type Parameter used to pass the type.

       Returns
           GLOBUS_SUCCESS unless an error occurred, in which case, a globus error object ID is
           returned

       See also
           globus_gsi_proxy_handle_set_type()

Author

       Generated automatically by Doxygen for globus_gsi_proxy_core from the source code.