GLOBUS_GSI_CALLBACK_GET_EXTENSION_CB(3)

πŸ“¦
version 6.2 Β· 6 versions
, in fedora 43, fedora 44, ubuntu resolute, ubuntu stonking

okay so bestie, you clicked on globus_gsi_callback_data(3) and honestly? iconic choice πŸ’… this is the page for the callback data crew in the Globus GSI library β€” all the little getters and setters that hold state for the path validation callback. it's giving "behind the scenes but absolutely carrying the whole show". grab a snack, there's a lot of functions, and we're doing them all. no skips. periodt.


✨ NAME ✨

globus_gsi_callback_data β€” Callback Data Functions.

(yes the original says "Callback Data Functions" twice. we love a queen who knows what she wants πŸŽ€)


🌸 SYNOPSIS 🌸

πŸ’– Typedefs

  • typedef struct globus_l_gsi_callback_data_s * globus_gsi_callback_data_t β€” the callback data type itself πŸ¦‹

πŸ’– Functions

  • globus_result_t globus_gsi_callback_data_init (globus_gsi_callback_data_t *callback_data) β€” Initialize a callback data structure.
  • globus_result_t globus_gsi_callback_data_destroy (globus_gsi_callback_data_t callback_data) β€” Initialize a callback data structure.
  • globus_result_t globus_gsi_callback_data_copy (globus_gsi_callback_data_t source, globus_gsi_callback_data_t *dest) β€” Copy a callback data structure.
  • globus_result_t globus_gsi_callback_get_cert_depth (globus_gsi_callback_data_t callback_data, int *cert_depth) β€” Getting the certificate chain depth.
  • globus_result_t globus_gsi_callback_set_cert_depth (globus_gsi_callback_data_t callback_data, int cert_depth) β€” Set the certificate chain depth.
  • globus_result_t globus_gsi_callback_get_proxy_depth (globus_gsi_callback_data_t callback_data, int *proxy_depth) β€” Get the proxy chain "depth".
  • globus_result_t globus_gsi_callback_set_proxy_depth (globus_gsi_callback_data_t callback_data, int proxy_depth) β€” Set the proxy chain "depth".
  • globus_result_t globus_gsi_callback_get_cert_type (globus_gsi_callback_data_t callback_data, globus_gsi_cert_utils_cert_type_t *cert_type) β€” Get the certificate type.
  • globus_result_t globus_gsi_callback_set_cert_type (globus_gsi_callback_data_t callback_data, globus_gsi_cert_utils_cert_type_t cert_type) β€” Set the certificate type.
  • globus_result_t globus_gsi_callback_get_cert_chain (globus_gsi_callback_data_t callback_data, STACK_OF(X509) **cert_chain) β€” Get the certificate chain.
  • globus_result_t globus_gsi_callback_set_cert_chain (globus_gsi_callback_data_t callback_data, STACK_OF(X509) *cert_chain) β€” Set the certificate chain.
  • globus_result_t globus_gsi_callback_get_multiple_limited_proxy_ok (globus_gsi_callback_data_t callback_data, int *multiple_limited_proxy_ok) β€” Get the limited proxy handling setting.
  • globus_result_t globus_gsi_callback_set_multiple_limited_proxy_ok (globus_gsi_callback_data_t callback_data, int multiple_limited_proxy_ok) β€” Set the limited proxy handling setting.
  • globus_result_t globus_gsi_callback_get_extension_oids (globus_gsi_callback_data_t callback_data, void **extension_oids) β€” Get X.509 extension OIDs.
  • globus_result_t globus_gsi_callback_set_extension_oids (globus_gsi_callback_data_t callback_data, void *extension_oids) β€” Set X.509 extension OIDs.
  • globus_result_t globus_gsi_callback_get_cert_dir (globus_gsi_callback_data_t callback_data, char **cert_dir) β€” Get the trusted certificate directory.
  • globus_result_t globus_gsi_callback_set_cert_dir (globus_gsi_callback_data_t callback_data, char *cert_dir) β€” Set the trusted certificate directory.
  • globus_result_t globus_gsi_callback_get_extension_cb (globus_gsi_callback_data_t callback_data, globus_gsi_extension_callback_t *extension_cb) β€” Get the unknown X.509 extension callback.
  • globus_result_t globus_gsi_callback_set_extension_cb (globus_gsi_callback_data_t callback_data, globus_gsi_extension_callback_t extension_cb) β€” (no lil blurb here, she's mysterious like that πŸ™ˆ)
  • globus_result_t globus_gsi_callback_get_error (globus_gsi_callback_data_t callback_data, globus_result_t *error) β€” Get error status.
  • globus_result_t globus_gsi_callback_set_error (globus_gsi_callback_data_t callback_data, globus_result_t error) β€” Set error status.
  • globus_result_t globus_gsi_callback_get_check_policy_for_self_signed_certs (globus_gsi_callback_data_t callback_data, globus_bool_t *check) β€” Get the self-signed policy checking flag.
  • globus_result_t globus_gsi_callback_set_check_policy_for_self_signed_certs (globus_gsi_callback_data_t callback_data, globus_bool_t check) β€” Set the self-signed policy checking flag.
  • globus_result_t globus_gsi_callback_get_allow_missing_signing_policy (globus_gsi_callback_data_t callback_data, globus_bool_t *allow) β€” Get the "allow missing signing policy" flag.
  • globus_result_t globus_gsi_callback_set_allow_missing_signing_policy (globus_gsi_callback_data_t callback_data, globus_bool_t allow) β€” Set the "allow missing signing policy" flag.

πŸ¦‹ Detailed Description πŸ¦‹

Callback Data Functions.

Functions that deal with the data structure that contains state associated with the path validation callback.

like, that's the whole vibe. it's a lil state bag that the path validation callback carries around so it remembers stuff between calls. main character energy fr fr πŸ‘‘


πŸŽ€ Typedef Documentation πŸŽ€

typedef struct globus_l_gsi_callback_data_s* globus_gsi_callback_data_t

Callback data typedef. that's it, that's the whole girl. she's opaque, she's mysterious, you just pass her around and trust the process ✨


πŸ’œ Function Documentation πŸ’œ

globus_gsi_callback_data_copy 🫢

globus_result_t globus_gsi_callback_data_copy (globus_gsi_callback_data_t source, globus_gsi_callback_data_t * dest)

Copy a callback data structure. This function copies a globus_gsi_callback_data_t. dupe her, she won't mind πŸ’…

Parameters

  • source β€” The structure to be copied
  • dest β€” The destination of the copy

Returns

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


globus_gsi_callback_data_destroy 🌈

globus_result_t globus_gsi_callback_data_destroy (globus_gsi_callback_data_t callback_data)

Initialize a callback data structure. This function destroys a globus_gsi_callback_data_t.

(no bestie, the blurb really does say "initialize" on the destroy function. the manpage said what it said and we are not editing her πŸ’€)

Parameters

  • callback_data β€” The structure to be destroyed

Returns

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


globus_gsi_callback_data_init 🌟

globus_result_t globus_gsi_callback_data_init (globus_gsi_callback_data_t * callback_data)

Initialize a callback data structure. This function initializes a globus_gsi_callback_data_t. fresh out the box, brand new, no notes πŸ’–

Parameters

  • callback_data β€” Reference to the structure to be initialized

Returns

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


globus_gsi_callback_get_allow_missing_signing_policy πŸ“

globus_result_t globus_gsi_callback_get_allow_missing_signing_policy (globus_gsi_callback_data_t callback_data, globus_bool_t * allow)

Get the "allow missing signing policy" flag. This function gets the value of the "allow missing signing policy" flag in the callback data. If this is TRUE then the CA signing policy need not be present.

so basically: is it chill if the signing policy just… isn't there? this function tells you what the flag says 🧚

Parameters

  • callback_data β€” The globus_gsi_callback_data_t to get the error from
  • allow β€” Contains the value of the flag upon successful return.

Returns

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

Since

Globus Toolkit 5.2.0


globus_gsi_callback_get_cert_chain πŸ”₯

globus_result_t globus_gsi_callback_get_cert_chain (globus_gsi_callback_data_t callback_data, STACK_OF(X509) ** cert_chain)

Get the certificate chain. This function returns the certificate chain associated with the callback data.

the whole squad, in order, all linked up πŸ’«

Parameters

  • callback_data β€” The globus_gsi_callback_data_t to retrieve the certificate chain from.
  • cert_chain β€” Contains the certificate chain upon successful return

Returns

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


globus_gsi_callback_get_cert_depth 🌸

globus_result_t globus_gsi_callback_get_cert_depth (globus_gsi_callback_data_t callback_data, int * cert_depth)

Getting the certificate chain depth. This function returns the certificate chain depth.

how deep are we in this chain bestie. very "how many layers of the onion" of it πŸ§…

Parameters

  • callback_data β€” The globus_gsi_callback_data_t to retrieve the depth from
  • cert_depth β€” The returned certificate chain depth

Returns

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


globus_gsi_callback_get_cert_dir πŸŽ€

globus_result_t globus_gsi_callback_get_cert_dir (globus_gsi_callback_data_t callback_data, char ** cert_dir)

Get the trusted certificate directory. This function gets the trusted certificate directory from the callback data.

where the trusted certs live. their lil home 🏠

Parameters

  • callback_data β€” The globus_gsi_callback_data_t to get the trusted certificates directory from.
  • cert_dir β€” Contains the path to the trusted certificate directory upon successful return.

Returns

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


globus_gsi_callback_get_cert_type πŸ’…

globus_result_t globus_gsi_callback_get_cert_type (globus_gsi_callback_data_t callback_data, globus_gsi_cert_utils_cert_type_t * cert_type)

Get the certificate type. This function returns the certificate type of the certificate currently being processed.

what kind of cert is she. what's her genre. this tells you 🎡

Parameters

  • callback_data β€” The globus_gsi_callback_data_t to retrieve the certificate type from
  • cert_type β€” Variable containing the certificate type on return

Returns

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


globus_gsi_callback_get_check_policy_for_self_signed_certs πŸ‘‘

globus_result_t globus_gsi_callback_get_check_policy_for_self_signed_certs (globus_gsi_callback_data_t callback_data, globus_bool_t * check)

Get the self-signed policy checking flag. This function gets the value of the "check policy for self-signed certificates flag" in the callback data. If this is set than the CA signing policy for a self-signed certificate must include a policy line that allows it to sign itself.

translation: if this flag is on, a self-signed cert's CA signing policy has to actually say "yeah I'm allowed to sign myself" β€” she needs written permission to vouch for her own self 😀 self-love but make it policy.

Parameters

  • callback_data β€” The globus_gsi_callback_data_t to get the error from
  • check β€” Contains the value of the flag upon successful return.

Returns

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

Since

Globus Toolkit 4.2.1


globus_gsi_callback_get_error 😭

globus_result_t globus_gsi_callback_get_error (globus_gsi_callback_data_t callback_data, globus_result_t * error)

Get error status. This function gets the error status stored in the callback data.

something went wrong somewhere and this is where the receipts are kept 🧾

Parameters

  • callback_data β€” The globus_gsi_callback_data_t to get the error from
  • error β€” Contains the error upon successful return.

Returns

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


globus_gsi_callback_get_extension_cb πŸ¦‹

globus_result_t globus_gsi_callback_get_extension_cb (globus_gsi_callback_data_t callback_data, globus_gsi_extension_callback_t * extension_cb)

Get the unknown X.509 extension callback. This function gets the callback that is called for unknown X.509 extensions.

when an extension shows up and nobody knows her, this is the callback that gets summoned πŸ’«

Parameters

  • callback_data β€” The globus_gsi_callback_data_t to get the callback information from
  • extension_cb β€” Contains the extension callback upon successful return.

Returns

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


globus_gsi_callback_get_extension_oids ⭐

globus_result_t globus_gsi_callback_get_extension_oids (globus_gsi_callback_data_t callback_data, void ** extension_oids)

Get X.509 extension OIDs. This function gets a list of X.509 extension OIDs that may be used by the extensions callback to allow or disallow certain extensions.

Parameters

  • callback_data β€” the globus_gsi_callback_data_t we're pulling the array of extension OIDs out of πŸ’…
  • extension_oids β€” on a successful return, this is where the list of extension OIDs lands ✨

Returns

GLOBUS_SUCCESS β€” unless something went wrong, in which case you get a globus error object ID back instead 😭


globus_result_t globus_gsi_callback_get_multiple_limited_proxy_ok(globus_gsi_callback_data_t callback_data, int * multiple_limited_proxy_ok)

Get the limited proxy handling setting. Bestie, this one reads back the value of the limited proxy handling setting. And what does that setting even do? It decides whether path validation is gonna be chill about limited proxies that got delegated even further, aka certificate chains where a limited proxy is followed by more proxies after it. πŸ‘‘

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to get the limited proxy setting from
  • multiple_limited_proxy_ok β€” on a successful return, this holds the value of the setting 🫢

Returns

GLOBUS_SUCCESS β€” unless an error happened, and then it's a globus error object ID, periodt


globus_result_t globus_gsi_callback_get_proxy_depth(globus_gsi_callback_data_t callback_data, int * proxy_depth)

Get the "proxy chain" depth. This one literally just hands you the number of proxies chilling in the certificate chain. That's it, that's the whole job. πŸ’œ

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to retrieve the depth from
  • proxy_depth β€” the returned "proxy chain" depth 🌈

Returns

GLOBUS_SUCCESS β€” unless an error occurred, in which case a globus error object ID is what you get πŸ’€


globus_result_t globus_gsi_callback_set_allow_missing_signing_policy(globus_gsi_callback_data_t callback_data, globus_bool_t allow)

Set the "allow missing signing policy" flag. This function sets the value of the "allow missing signing policy" flag inside the callback data. And the tea is: if this is TRUE, then the CA signing policy doesn't have to be there at all. No policy? No problem. πŸ™ˆ

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to set the error on
  • allow β€” the new value of the flag

Returns

GLOBUS_SUCCESS β€” unless an error occurred, in which case a globus error object ID is returned

Since

Globus Toolkit 5.2.0 ⭐


globus_result_t globus_gsi_callback_set_cert_chain(globus_gsi_callback_data_t callback_data, STACK_OF(X509) * cert_chain)

Set the certificate chain. This function sets the certificate chain that's associated with the callback data. Attach the chain, done. πŸ”₯

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to set the certificate chain on
  • cert_chain β€” the certificate chain

Returns

GLOBUS_SUCCESS β€” unless an error occurred, in which case, a globus error object ID is returned


globus_result_t globus_gsi_callback_set_cert_depth(globus_gsi_callback_data_t callback_data, int cert_depth)

Set the certificate chain depth. Yep, it sets the certificate chain depth. Short king of a function, honestly. πŸ‘‘

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to retrieve the depth from
  • cert_depth β€” the certificate chain depth

Returns

GLOBUS_SUCCESS β€” unless an error occurred, in which case, a globus error object ID is returned


globus_result_t globus_gsi_callback_set_cert_dir(globus_gsi_callback_data_t callback_data, char * cert_dir)

Set the trusted certificate directory. This one sets the trusted certificate directory onto the callback data. Point it at your trusted certs and vibe. πŸ¦‹

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to set the trusted certificates directory on.
  • cert_dir β€” the path to the trusted certificate directory

Returns

GLOBUS_SUCCESS β€” unless an error occurred, in which case, a globus error object ID is returned


globus_result_t globus_gsi_callback_set_cert_type(globus_gsi_callback_data_t callback_data, globus_gsi_cert_utils_cert_type_t cert_type)

Set the certificate type. This function sets the certificate type of the certificate that's currently being processed. Main character certificate energy only. ✨

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to set the certificate type on
  • cert_type β€” the certificate type

Returns

GLOBUS_SUCCESS β€” unless an error occurred, in which case, a globus error object ID is returned


globus_result_t globus_gsi_callback_set_check_policy_for_self_signed_certs(globus_gsi_callback_data_t callback_data, globus_bool_t check)

Set the self-signed policy checking flag. This function sets the value of the "check policy for self-signedcertificates flag" in the callback data. If it's set, then the CA signing policy for a self-signed certificate must include a policy line that allows it to sign itself. Like, it has to give itself permission. Iconic, honestly. πŸ’…

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to set the error on
  • check β€” the new value of the flag

Returns

GLOBUS_SUCCESS β€” unless an error occurred, in which case, a globus error object ID is returned

Since

Globus Toolkit 4.2.1 ⭐


globus_result_t globus_gsi_callback_set_error(globus_gsi_callback_data_t callback_data, globus_result_t error)

Set error status. This function sets the error status that's stored in the callback data. Yep β€” it stores the error. For when things are giving chaos. πŸ’€

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to set the error on
  • error β€” the error

Returns

GLOBUS_SUCCESS β€” unless an error occurred, in which case, a globus error object ID is returned


globus_result_t globus_gsi_callback_set_extension_cb(globus_gsi_callback_data_t callback_data, globus_gsi_extension_callback_t extension_cb)

Set the unknown X.509 extension callback.

This function sets the callback that gets called for unknown X.509 extensions. Mystery extension shows up? The callback handles it. πŸ•΅οΈβ€β™€οΈ

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to set the callback information on
  • extension_cb β€” the extension callback

Returns

GLOBUS_SUCCESS β€” unless an error occurred, in which case, a globus error object ID is returned


globus_result_t globus_gsi_callback_set_extension_oids(globus_gsi_callback_data_t callback_data, void * extension_oids)

Set X.509 extension OIDs. This function sets a list of X.509 extension OIDs that the extensions callback might use to allow or disallow certain extensions. Allow list, deny list, you decide bestie. πŸŽ€

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to get the array of extension OIDs from.
  • extension_oids β€” the list of extension OIDs

Returns

GLOBUS_SUCCESS β€” unless an error occurred, in which case, a globus error object ID is returned


globus_result_t globus_gsi_callback_set_multiple_limited_proxy_ok(globus_gsi_callback_data_t callback_data, int multiple_limited_proxy_ok)

Set the limited proxy handling setting. This function sets the value of the limited proxy handling setting, which decides whether path validation will accept limited proxies that have been further delegated β€” aka certificate chains with a limited proxy followed by further proxies. Setting the vibe for the whole chain fr fr. πŸ”₯

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to set the limited proxy setting on
  • multiple_limited_proxy_ok β€” the value of the setting

Returns

GLOBUS_SUCCESS β€” unless an error occurred, in which case, a globus error object ID is returned


globus_result_t globus_gsi_callback_set_proxy_depth(globus_gsi_callback_data_t callback_data, int proxy_depth)

Set the "proxy chain" depth. This function sets the number of proxies in the certificate chain. Depth, but make it proxy. 🌸

Parameters

  • callback_data β€” the globus_gsi_callback_data_t to retrieve the depth from
  • proxy_depth β€” the "proxy chain" depth

Returns

GLOBUS_SUCCESS β€” unless an error occurred, in which case, a globus error object ID is returned


πŸ‘‘ Author πŸ‘‘

Generated automatically by Doxygen for globus_gsi_callback from the source code. Not a human writing this, just a machine doing its little thing. Respect. 🫢


And that's the whole page, bestie!! This came from the globus_gsi_callback source, Version 6.2, and it's the globus_gsi_callback_data(3) manual page. Go forth and callback responsibly. πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from