GLOBUS_GSI_CERT_UTILS_ERROR_T(3)

πŸ’– NAME πŸ’–

globus_gsi_cert_utils_constants β€” Cert Utils Constants ✨

okay bestie, this one's literally just the constants page, and yeah it's giving "boring enum dump" energy but it's actually the whole vibe of globus_gsi_cert_utils. This is from the Library Functions Manual for globus_gsi...s_constants(3), and we're gonna walk it together, no cap πŸ’…

  • Cert Utils Constants.

✨ SYNOPSIS ✨

Typedefs

typedef enum globus_gsi_cert_utils_cert_type_e
    globus_gsi_cert_utils_cert_type_t

Enumerations

enum globus_gsi_cert_utils_error_t { GLOBUS_GSI_CERT_UTILS_ERROR_SUCCESS
    = 0, GLOBUS_GSI_CERT_UTILS_ERROR_GETTING_NAME_ENTRY_OF_SUBJECT = 1,
    GLOBUS_GSI_CERT_UTILS_ERROR_COPYING_SUBJECT = 2,
    GLOBUS_GSI_CERT_UTILS_ERROR_GETTING_CN_ENTRY = 3,
    GLOBUS_GSI_CERT_UTILS_ERROR_ADDING_CN_TO_SUBJECT = 4,
    GLOBUS_GSI_CERT_UTILS_ERROR_OUT_OF_MEMORY = 5,
    GLOBUS_GSI_CERT_UTILS_ERROR_UNEXPECTED_FORMAT = 6,
    GLOBUS_GSI_CERT_UTILS_ERROR_NON_COMPLIANT_PROXY = 7,
    GLOBUS_GSI_CERT_UTILS_ERROR_DETERMINING_CERT_TYPE = 8,
    GLOBUS_GSI_CERT_UTILS_ERROR_LAST = 9 }
enum globus_gsi_cert_utils_cert_type_e {
    GLOBUS_GSI_CERT_UTILS_TYPE_DEFAULT = 0,
    GLOBUS_GSI_CERT_UTILS_TYPE_EEC = (1 << 0),
    GLOBUS_GSI_CERT_UTILS_TYPE_CA = (1 << 1),
    GLOBUS_GSI_CERT_UTILS_TYPE_GSI_2 = (1 << 2),
    GLOBUS_GSI_CERT_UTILS_TYPE_GSI_3 = (1 << 3),
    GLOBUS_GSI_CERT_UTILS_TYPE_RFC = (1 << 4),
    GLOBUS_GSI_CERT_UTILS_TYPE_FORMAT_MASK,
    GLOBUS_GSI_CERT_UTILS_TYPE_IMPERSONATION_PROXY = (1 << 5),
    GLOBUS_GSI_CERT_UTILS_TYPE_LIMITED_PROXY = (1 << 6),
    GLOBUS_GSI_CERT_UTILS_TYPE_RESTRICTED_PROXY = (1 << 7),
    GLOBUS_GSI_CERT_UTILS_TYPE_INDEPENDENT_PROXY = (1 << 8),
    GLOBUS_GSI_CERT_UTILS_TYPE_PROXY_MASK,
    GLOBUS_GSI_CERT_UTILS_TYPE_GSI_3_IMPERSONATION_PROXY,
    GLOBUS_GSI_CERT_UTILS_TYPE_GSI_3_INDEPENDENT_PROXY,
    GLOBUS_GSI_CERT_UTILS_TYPE_GSI_3_LIMITED_PROXY,
    GLOBUS_GSI_CERT_UTILS_TYPE_GSI_3_RESTRICTED_PROXY,
    GLOBUS_GSI_CERT_UTILS_TYPE_GSI_2_PROXY,
    GLOBUS_GSI_CERT_UTILS_TYPE_GSI_2_LIMITED_PROXY,
    GLOBUS_GSI_CERT_UTILS_TYPE_RFC_IMPERSONATION_PROXY,
    GLOBUS_GSI_CERT_UTILS_TYPE_RFC_INDEPENDENT_PROXY,
    GLOBUS_GSI_CERT_UTILS_TYPE_RFC_LIMITED_PROXY,
    GLOBUS_GSI_CERT_UTILS_TYPE_RFC_RESTRICTED_PROXY }

πŸ¦‹ DETAILED DESCRIPTION πŸ¦‹

Cert Utils Constants. that's it, that's the whole description, they really said "keep it brief" πŸ™ˆ


πŸŽ€ TYPEDEF DOCUMENTATION πŸŽ€

typedef enum globus_gsi_cert_utils_cert_type_e globus_gsi_cert_utils_cert_type_t

Certificate Types. πŸ’–

so these certificate types are the little labels that describe some properties of a certificate AND tell the proxy core code what kind of proxy it should generate. two jobs, main character energy honestly πŸ‘‘

There are two non-proxy types of certificates that Globus understands: EEC (End-Entity Certificate) and CA (Certificate Authority Certificates). then there are three proxy formats: GSI 2 "legacy" proxies, GSI 3 "Draft" proxies, and RFC 3820-compliant proxies. and then four types of proxy: limited, impersonation "full", restricted, and independent. 🫢

heads up bestie: the latter two types (restricted and independent) are not expressible in the GSI 2 format. so like, don't try it. fr fr.

On top of the enumerations for the concrete renderings of certificate format + type combined, there are also default, formats-without-types and types-without-formats, so that application logic using the proxy library can request default proxy formats that are compatible with the issuing certificate. it's giving "flexible, adaptable, iconic" ✨


🌸 ENUMERATION TYPE DOCUMENTATION 🌸

enum globus_gsi_cert_utils_cert_type_e

Certificate Types. πŸ’–

again for the people in the back: these certificate types describe some properties of a certificate and specify what type of proxy should be generated in the proxy core code. two non-proxy types understood by Globus: EEC (End-Entity Certificate) and CA (Certificate Authority Certificates). three proxy formats: GSI 2 "legacy" proxies, GSI 3 "Draft" proxies, and RFC 3820-compliant proxies. four types of proxy: limited, impersonation "full", restricted, and independent. and the last two are not expressible in the GSI 2 format, periodt.

Plus the default / formats-without-types / types-without-formats situation so app logic using the proxy library can request default proxy formats compatible with the issuing certificate 🌈

Enumerator

  • GLOBUS_GSI_CERT_UTILS_TYPE_DEFAULT β€” Default proxy type
  • GLOBUS_GSI_CERT_UTILS_TYPE_EEC β€” A end entity certificate
  • GLOBUS_GSI_CERT_UTILS_TYPE_CA β€” A CA certificate
  • GLOBUS_GSI_CERT_UTILS_TYPE_GSI_2 β€” Legacy Proxy Format
  • GLOBUS_GSI_CERT_UTILS_TYPE_GSI_3 β€” X.509 Proxy Certificate Profile (draft) Proxy Format
  • GLOBUS_GSI_CERT_UTILS_TYPE_RFC β€” X.509 Proxy Certificate Profile Compliant Proxy Format
  • GLOBUS_GSI_CERT_UTILS_TYPE_FORMAT_MASK β€” Proxy certificate formats mask
  • GLOBUS_GSI_CERT_UTILS_TYPE_IMPERSONATION_PROXY β€” Impersonation proxy type
  • GLOBUS_GSI_CERT_UTILS_TYPE_LIMITED_PROXY β€” Limited proxy type
  • GLOBUS_GSI_CERT_UTILS_TYPE_RESTRICTED_PROXY β€” Restricted proxy type
  • GLOBUS_GSI_CERT_UTILS_TYPE_INDEPENDENT_PROXY β€” Independent proxy type
  • GLOBUS_GSI_CERT_UTILS_TYPE_PROXY_MASK β€” Proxy types mask
  • GLOBUS_GSI_CERT_UTILS_TYPE_GSI_3_IMPERSONATION_PROXY β€” A X.509 Proxy Certificate Profile (pre-RFC) compliant impersonation proxy
  • GLOBUS_GSI_CERT_UTILS_TYPE_GSI_3_INDEPENDENT_PROXY β€” A X.509 Proxy Certificate Profile (pre-RFC) compliant independent proxy
  • GLOBUS_GSI_CERT_UTILS_TYPE_GSI_3_LIMITED_PROXY β€” A X.509 Proxy Certificate Profile (pre-RFC) compliant limited proxy
  • GLOBUS_GSI_CERT_UTILS_TYPE_GSI_3_RESTRICTED_PROXY β€” A X.509 Proxy Certificate Profile (pre-RFC) compliant restricted proxy
  • GLOBUS_GSI_CERT_UTILS_TYPE_GSI_2_PROXY β€” A legacy Globus impersonation proxy
  • GLOBUS_GSI_CERT_UTILS_TYPE_GSI_2_LIMITED_PROXY β€” A legacy Globus limited impersonation proxy
  • GLOBUS_GSI_CERT_UTILS_TYPE_RFC_IMPERSONATION_PROXY β€” A X.509 Proxy Certificate Profile RFC compliant impersonation proxy
  • GLOBUS_GSI_CERT_UTILS_TYPE_RFC_INDEPENDENT_PROXY β€” A X.509 Proxy Certificate Profile RFC compliant independent proxy
  • GLOBUS_GSI_CERT_UTILS_TYPE_RFC_LIMITED_PROXY β€” A X.509 Proxy Certificate Profile RFC compliant limited proxy
  • GLOBUS_GSI_CERT_UTILS_TYPE_RFC_RESTRICTED_PROXY β€” A X.509 Proxy Certificate Profile RFC compliant restricted proxy

enum globus_gsi_cert_utils_error_t

Cert Utils Error Codes. 😭

the error roster, aka the "what went wrong" mood board. every single one, no skipping πŸ’…

Enumerator

  • GLOBUS_GSI_CERT_UTILS_ERROR_SUCCESS β€” Success - never used
  • GLOBUS_GSI_CERT_UTILS_ERROR_GETTING_NAME_ENTRY_OF_SUBJECT β€” Failed to retrieve a subcomponent of the subject
  • GLOBUS_GSI_CERT_UTILS_ERROR_COPYING_SUBJECT β€” A error occurred while trying to copy a X.509 subject
  • GLOBUS_GSI_CERT_UTILS_ERROR_GETTING_CN_ENTRY β€” Failed to retrieve a CN subcomponent of the subject
  • GLOBUS_GSI_CERT_UTILS_ERROR_ADDING_CN_TO_SUBJECT β€” Failed to add a CN component to a X.509 subject name
  • GLOBUS_GSI_CERT_UTILS_ERROR_OUT_OF_MEMORY β€” Out of memory
  • GLOBUS_GSI_CERT_UTILS_ERROR_UNEXPECTED_FORMAT β€” Something unexpected happen while converting a string subject to a X509_NAME structure
  • GLOBUS_GSI_CERT_UTILS_ERROR_NON_COMPLIANT_PROXY β€” Proxy does not comply with the expected format
  • GLOBUS_GSI_CERT_UTILS_ERROR_DETERMINING_CERT_TYPE β€” Couldn't dtermine the certificate type
  • GLOBUS_GSI_CERT_UTILS_ERROR_LAST β€” Last marker - never used

🌟 AUTHOR 🌟

Generated automatically by Doxygen for globus_gsi_cert_utils from the source code. so nobody hand-wrote this one, the robots did it πŸ€–βœ¨


okay and for the cute sign-off: this lil page is from globus_gsi_cert_utils, Version 10.11, living under the name globus_gsi...s_constants(3) β€” shoutout to Doxygen for generating it, and shoutout to you for reading all the way to the bottom bestie, you ate that πŸ’…πŸ«Ά