OPENSSL_SA
void ossl_sa_free(OPENSSL_SA *sa)
void ossl_sa_free_leaves(OPENSSL_SA *sa)
void ossl_sa_doall(const OPENSSL_SA *sa, void (*leaf)(ossl_uintmax_t, void *))
void ossl_sa_doall_arg(const OPENSSL_SA *sa,
size_t ossl_sa_num(const OPENSSL_SA *sa)
void *ossl_sa_get(const OPENSSL_SA *sa, ossl_uintmax_t n)
int ossl_sa_set(OPENSSL_SA *sa, ossl_uintmax_t posn, void *val)
OPENSSL_SA *ossl_sa_new(void)
OPENSSL_SA *res = OPENSSL_zalloc(sizeof(*res));
static void sa_doall(const OPENSSL_SA *sa, void (*node)(void **),
ossl_sa_free((OPENSSL_SA *)sa); \
ossl_sa_free_leaves((OPENSSL_SA *)sa); \
return ossl_sa_num((OPENSSL_SA *)sa); \
ossl_sa_doall((OPENSSL_SA *)sa, \
ossl_sa_doall_arg((OPENSSL_SA *)sa, \
return (type *)ossl_sa_get((OPENSSL_SA *)sa, n); \
return ossl_sa_set((OPENSSL_SA *)sa, n, (void *)val); \
OPENSSL_SA *ossl_sa_new(void);
void ossl_sa_free(OPENSSL_SA *sa);
void ossl_sa_free_leaves(OPENSSL_SA *sa);
size_t ossl_sa_num(const OPENSSL_SA *sa);
void ossl_sa_doall(const OPENSSL_SA *sa, void (*leaf)(ossl_uintmax_t, void *));
void ossl_sa_doall_arg(const OPENSSL_SA *sa,
void *ossl_sa_get(const OPENSSL_SA *sa, ossl_uintmax_t n);
int ossl_sa_set(OPENSSL_SA *sa, ossl_uintmax_t n, void *val);