Go to the documentation of this file.
65 #include "../asn1/internal.h"
71 return sk_X509_ATTRIBUTE_num(
x);
95 n = sk_X509_ATTRIBUTE_num(sk);
96 for (; lastpos <
n; lastpos++) {
97 ex = sk_X509_ATTRIBUTE_value(sk, lastpos);
106 if (
x == NULL ||
loc < 0 || sk_X509_ATTRIBUTE_num(
x) <= (
size_t)
loc)
109 return sk_X509_ATTRIBUTE_value(
x,
loc);
116 if (
x == NULL ||
loc < 0 || sk_X509_ATTRIBUTE_num(
x) <= (
size_t)
loc)
118 ret = sk_X509_ATTRIBUTE_delete(
x,
loc);
134 if ((sk = sk_X509_ATTRIBUTE_new_null()) == NULL)
141 if (!sk_X509_ATTRIBUTE_push(sk, new_attr))
149 if (new_attr != NULL)
152 sk_X509_ATTRIBUTE_free(sk);
159 const unsigned char *
bytes,
174 const unsigned char *
bytes,
190 const unsigned char *
bytes,
204 int attrtype,
const void *
data,
219 int attrtype,
const void *
data,
224 if ((
attr == NULL) || (*
attr == NULL)) {
237 if ((
attr != NULL) && (*
attr == NULL))
248 const unsigned char *
bytes,
267 if ((
attr == NULL) || (
obj == NULL))
290 }
else if (
len != -1) {
315 if (!sk_ASN1_TYPE_push(
attr->set, ttmp))
327 return sk_ASN1_TYPE_num(
attr->set);
338 int attrtype,
void *unused)
357 return sk_ASN1_TYPE_value(
attr->set,
idx);
OPENSSL_EXPORT X509_ATTRIBUTE * X509_ATTRIBUTE_dup(X509_ATTRIBUTE *xa)
OPENSSL_EXPORT const ASN1_OBJECT * obj
#define asn1_type_value_as_pointer
int X509at_get_attr_by_OBJ(const STACK_OF(X509_ATTRIBUTE) *sk, const ASN1_OBJECT *obj, int lastpos)
#define X509at_add1_attr_by_txt
#define OPENSSL_PUT_ERROR(library, reason)
#define X509_ATTRIBUTE_free
#define ASN1_STRING_type_new
OPENSSL_EXPORT X509_EXTENSION int loc
OPENSSL_EXPORT X509_EXTENSION * ex
int X509at_get_attr_by_NID(const STACK_OF(X509_ATTRIBUTE) *x, int nid, int lastpos)
X509_ATTRIBUTE * X509_ATTRIBUTE_create_by_NID(X509_ATTRIBUTE **attr, int nid, int attrtype, const void *data, int len)
#define X509at_add1_attr_by_NID
#define X509_R_UNKNOWN_NID
X509_ATTRIBUTE * X509_ATTRIBUTE_create_by_OBJ(X509_ATTRIBUTE **attr, const ASN1_OBJECT *obj, int attrtype, const void *data, int len)
#define X509_R_WRONG_TYPE
OPENSSL_EXPORT const char * attrname
#define ERR_R_PASSED_NULL_PARAMETER
OPENSSL_EXPORT void ASN1_TYPE_free(ASN1_TYPE *a)
ASN1_TYPE * X509_ATTRIBUTE_get0_type(X509_ATTRIBUTE *attr, int idx)
X509_ATTRIBUTE * X509_ATTRIBUTE_create_by_txt(X509_ATTRIBUTE **attr, const char *attrname, int type, const unsigned char *bytes, int len)
#define X509_R_INVALID_FIELD_NAME
#define ASN1_STRING_set_by_NID
int X509at_get_attr_count(const STACK_OF(X509_ATTRIBUTE) *x)
#define X509at_add1_attr_by_OBJ
#define X509_ATTRIBUTE_new
int X509_ATTRIBUTE_set1_data(X509_ATTRIBUTE *attr, int attrtype, const void *data, int len)
X509_ATTRIBUTE * X509at_delete_attr(STACK_OF(X509_ATTRIBUTE) *x, int loc)
OPENSSL_EXPORT X509_ATTRIBUTE * attr
int X509_ATTRIBUTE_count(const X509_ATTRIBUTE *attr)
UniquePtr< SSL_SESSION > ret
ASN1_OBJECT * X509_ATTRIBUTE_get0_object(X509_ATTRIBUTE *attr)
#define ERR_add_error_data
int X509_ATTRIBUTE_set1_object(X509_ATTRIBUTE *attr, const ASN1_OBJECT *obj)
OPENSSL_EXPORT ASN1_TYPE * ASN1_TYPE_new(void)
#define ERR_R_MALLOC_FAILURE
X509_ATTRIBUTE * X509at_get_attr(const STACK_OF(X509_ATTRIBUTE) *x, int loc)
void * X509_ATTRIBUTE_get0_data(X509_ATTRIBUTE *attr, int idx, int attrtype, void *unused)
grpc
Author(s):
autogenerated on Fri May 16 2025 03:00:55