globus_gram_client_attr(3)

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

πŸ’– NAME πŸ’–

globus_gram_client_attr β€” GRAM Client Attribute Functions.

okay so real talk, this whole page is about GRAM client attributes: the little bundle of settings you attach to GRAM client operations when you don't want the defaults. The page header calls it globus_gram_client_attr(3) and it lives in the Library Functions Manual. And yes the name section literally just says "GRAM Client Attribute Functions" β€” twice, basically. We love a concise queen. πŸ’…


✨ SYNOPSIS ✨

πŸŽ€ Macros

  • #define GLOBUS_GRAM_CLIENT_NO_ATTR β€” Default GRAM client operation attribute.

πŸ¦‹ Typedefs

  • typedef void * globus_gram_client_attr_t β€” GRAM client operation attribute.

🌸 Functions

  • int globus_gram_client_attr_init (globus_gram_client_attr_t *attr) β€” Initialize a GRAM client attribute.
  • int globus_gram_client_attr_destroy (globus_gram_client_attr_t *attr) β€” Destroy a GRAM client attribute.
  • int globus_gram_client_attr_set_credential (globus_gram_client_attr_t attr, gss_cred_id_t credential) β€” Set a GRAM client attribute's security credential.
  • int globus_gram_client_attr_get_credential (globus_gram_client_attr_t attr, gss_cred_id_t *credential) β€” Get a GRAM client attribute's security credential.
  • int globus_gram_client_attr_set_delegation_mode (globus_gram_client_attr_t attr, globus_io_secure_delegation_mode_t mode) β€” Set a GRAM client attribute's delegation mode.
  • int globus_gram_client_attr_get_delegation_mode (globus_gram_client_attr_t attr, globus_io_secure_delegation_mode_t *mode) β€” Get a GRAM client attribute's security credential.

🌈 Detailed Description 🌈

GRAM Client Attribute Functions.

like. that's it. that's the detailed description. iconic minimalism honestly. 🫢


⭐ Macro Definition Documentation ⭐

#define GLOBUS_GRAM_CLIENT_NO_ATTR

Default GRAM client operation attribute. The GLOBUS_GRAM_CLIENT_NO_ATTR macro defines a constant for use when a user of the GRAM client API does not want to specify any non-default GRAM attributes.

tl;dr: you're not customizing anything, you just want the standard behavior? Pass this and vibe. 🧚


πŸ’œ Typedef Documentation πŸ’œ

typedef void* globus_gram_client_attr_t

GRAM client operation attribute. The globus_gram_client_attr_t type is an opaque type describing GRAM attributes. It can be accessed or modified by functions in the GRAM Client Attribute Functions documentation.

bestie it's opaque β€” meaning you don't poke at its insides directly, you go through the functions on this very page. hands off the goods, use the API. πŸ™ˆ


πŸ”₯ Function Documentation πŸ”₯

int globus_gram_client_attr_destroy (globus_gram_client_attr_t * attr)

Destroy a GRAM client attribute. The globus_gram_client_attr_destroy() function destroys and frees a GRAM client attribute.

After this function returns, the value pointed to by attr is no longer valid and must not be used. do NOT touch it. it's gone. it's in the wind. πŸ’€

Parameters

  • attr β€” A pointer to the attribute to destroy. All data associated with the attribute will be freed and it will be an invalid attribute.

Returns

Upon success, globus_gram_client_attr_destroy() destroys the attribute pointed to by the attr parameter and sets it to an invalid state. If an error occurs, globus_gram_client_attr_destroy() returns an integer error code and value of attr is unchanged.

Return values

  • GLOBUS_SUCCESS β€” Success
  • GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR β€” Invalid attribute

See also

globus_gram_client_attr_init()


int globus_gram_client_attr_get_credential (globus_gram_client_attr_t attr, gss_cred_id_t * credential)

Get a GRAM client attribute's security credential. The globus_gram_client_attr_get_credential() function gets the value of the credential in an attribute and modifies the credential parameter to point to it.

This is a shallow copy. not a deep copy, not a clone, just a lil pointer situation. noted. πŸ“

Parameters

  • attr β€” The attribute set to query for its credential.
  • credential β€” An output parameter that will be initialized to point to the GSSAPI credential which the attr is currently using.

Returns

Upon success, globus_gram_client_attr_get_credential() modifies the the value pointed to by the credential parameter to be the same credential as that being used by the attribute named by the attr parameter and returns GLOBUS_SUCCESS. If an error occurs, globus_gram_client_attr_get_credential() returns an integer error code and the value pointed to by the credential parameter is undefined.

Return values

  • GLOBUS_SUCCESS β€” Success
  • GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR β€” Invalid attribute
  • GLOBUS_GRAM_PROTOCOL_ERROR_NULL_PARAMETER β€” Null parameter

See also

globus_gram_client_attr_set_credential()


int globus_gram_client_attr_get_delegation_mode (globus_gram_client_attr_t attr, globus_io_secure_delegation_mode_t * mode)

Get a GRAM client attribute's security credential. The globus_gram_client_attr_get_delegation_mode() function gets the value of the delegation_mode in an attribute and modifies the mode parameter to point to its value.

not me pointing out that the short description literally says "security credential" for the delegation mode getter. that's what the docs say, bestie, I'm just the messenger 🫠

Parameters

  • attr β€” The attribute set to query for its delegation_mode.
  • mode β€” An output parameter that will be set to point to the delegation mode which the attr is currently using.

Returns

Upon success, globus_gram_client_attr_get_delegation_mode() modifies the the value pointed to by the mode parameter as described above and returns GLOBUS_SUCCESS. If an error occurs, globus_gram_client_attr_get_delegation_mode() returns an integer error code and the value pointed to by the mode parameter is undefined.

Return values

  • GLOBUS_SUCCESS β€” Success
  • GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR β€” Invalid attribute
  • GLOBUS_GRAM_PROTOCOL_ERROR_NULL_PARAMETER β€” Null parameter

See also

globus_gram_client_attr_get_delegation_mode()

(and yes, it references itself. the doc said what it said, I'm not editing it. πŸ’€)


int globus_gram_client_attr_init (globus_gram_client_attr_t * attr)

Initialize a GRAM client attribute. The globus_gram_client_attr_init() function creates a new opaque structure that can be used to specify custom attributes for performing GRAM client operations.

Parameters

  • attr β€” An output parameter which will be set to the newly initialized attribute.

Returns

Upon success, globus_gram_client_attr_init() modifies the attr parameter to point to a new GRAM client attribute and returns GLOBUS_SUCCESS. If an error occurs, globus_gram_client_attr_init() returns an integer error code and value of attr is undefined.

Return values

  • GLOBUS_SUCCESS β€” Success
  • GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR β€” Invalid attribute
  • GLOBUS_GRAM_PROTOCOL_ERROR_MALLOC_FAILED β€” Out of memory

See also

globus_gram_client_attr_destroy()


int globus_gram_client_attr_set_credential (globus_gram_client_attr_t attr, gss_cred_id_t credential)

Set a GRAM client attribute's security credential. The globus_gram_client_attr_set_credential() function sets the value of the credential in an attribute to the GSSAPI credential named by the credential parameter.

This is done as a shallow copy, so the value of credential must not be freed until the attribute will no longer be used. do not free it early, I am begging you 😭

Parameters

  • attr β€” The attribute set to modify to use the credential named by the credential parameter.
  • credential β€” The GSSAPI credential to use with the attribute named by the attr parameter. This may be GSS_C_NO_CREDENTIAL to set the attribute to use the default security credential.

Returns

Upon success, globus_gram_client_attr_set_credential() modifies the the attribute pointed to by the attr parameter to use the credential specified by the credential parameter and returns GLOBUS_SUCCESS. If an error occurs, globus_gram_client_attr_set_credential() returns an integer error code and the attribute named by attr is unchanged.

Return values

  • GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR β€” An invalid attribute set was passed to this function.

See also

globus_gram_client_attr_get_credential()


int globus_gram_client_attr_set_delegation_mode (globus_gram_client_attr_t attr, globus_io_secure_delegation_mode_t mode)

Set a GRAM client attribute's delegation mode. The globus_gram_client_attr_set_delegation_mode() function sets the value of the delegation_mode in an attribute to the delegation mode in the mode parameter.

The GRAM client supports the following delegation modes:

  • GLOBUS_IO_SECURE_DELEGATION_MODE_LIMITED_PROXY
  • GLOBUS_IO_SECURE_DELEGATION_MODE_FULL_PROXY

Parameters

  • attr β€” The attribute set to modify to use the delegation mode in the mode parameter.
  • mode β€” The new value of the delegation mode.

Returns

Upon success, globus_gram_client_attr_set_delegation_mode() modifies the the attribute named by the attr parameter to use the delegation mode in the mode parameter and returns GLOBUS_SUCCESS. If an error occurs, globus_gram_client_attr_set_delegation_mode() returns an integer error code and the delegation_mode attribute value is unchanged.

Return values

  • GLOBUS_SUCCESS β€” Success
  • GLOBUS_GRAM_PROTOCOL_ERROR_INVALID_ATTR β€” Invalid attribute

See also

globus_gram_client_attr_get_delegation_mode()


πŸŽ€ Author πŸŽ€

Generated automatically by Doxygen for globus_gram_client from the source code.

(so like, nobody hand-wrote this, a robot did it, and honestly? the robot ate. πŸ‘‘)


okay bestie that's the whole page, every flag, every parameter, every return value, every see-also, all of it, no cap. this was globus_gram_client_attr(3) from globus_gram_client, Version 14.7, brought to you by the globus_gram_client manual. go forth and set your attributes responsibly. periodt. πŸ’–βœ¨πŸŽ€πŸ¦‹πŸŒΈπŸ’…πŸ«Ά