размер не известен в belle_sip
документации как я понимаю нет к этой библиотеке и примеров. есть только тесты. и приходится разбираться с библиотекой вручную. так вот. есть структура belle_sip_auth_event_t. она не доступна в *.h, только в исходниках, а в .h указано так.
listener.h:typedef struct belle_sip_auth_event belle_sip_auth_event_t;
я не могу создать эту структуру, хотя функции для неё есть. вот.
cf@cf:~/git/belle-sip/include/belle-sip$ egrep -ri 'belle_sip_auth_event' *
http-listener.h: void (*process_auth_requested)(argT *user_ctx, belle_sip_auth_event_t *event);
listener.h:typedef struct belle_sip_auth_event belle_sip_auth_event_t;
listener.h: void (*process_auth_requested)(belle_sip_listener_t *user_ctx, belle_sip_auth_event_t *event);
listener.h:BELLESIP_EXPORT void belle_sip_auth_event_destroy(belle_sip_auth_event_t* event);
listener.h:BELLESIP_EXPORT const char* belle_sip_auth_event_get_username(const belle_sip_auth_event_t* event);
listener.h:BELLESIP_EXPORT void belle_sip_auth_event_set_username(belle_sip_auth_event_t* event, const char* value);
listener.h:BELLESIP_EXPORT const char* belle_sip_auth_event_get_userid(const belle_sip_auth_event_t* event);
listener.h:BELLESIP_EXPORT void belle_sip_auth_event_set_userid(belle_sip_auth_event_t* event, const char* value);
listener.h:BELLESIP_EXPORT const char* belle_sip_auth_event_get_realm(const belle_sip_auth_event_t* event);
listener.h:BELLESIP_EXPORT void belle_sip_auth_event_set_realm(belle_sip_auth_event_t* event, const char* value);
listener.h:BELLESIP_EXPORT const char* belle_sip_auth_event_get_algorithm(const belle_sip_auth_event_t* event);
listener.h:BELLESIP_EXPORT void belle_sip_auth_event_set_algorithm(belle_sip_auth_event_t* event, const char* value);
listener.h:BELLESIP_EXPORT const char* belle_sip_auth_event_get_domain(const belle_sip_auth_event_t* event);
listener.h:BELLESIP_EXPORT void belle_sip_auth_event_set_domain(belle_sip_auth_event_t* event, const char* value);
listener.h:BELLESIP_EXPORT const char* belle_sip_auth_event_get_passwd(const belle_sip_auth_event_t* event);
listener.h:BELLESIP_EXPORT void belle_sip_auth_event_set_passwd(belle_sip_auth_event_t* event, const char* value);
listener.h:BELLESIP_EXPORT const char* belle_sip_auth_event_get_ha1(const belle_sip_auth_event_t* event);
listener.h:BELLESIP_EXPORT void belle_sip_auth_event_set_ha1(belle_sip_auth_event_t* event, const char* value);
listener.h:BELLESIP_EXPORT belle_sip_auth_mode_t belle_sip_auth_event_get_mode(const belle_sip_auth_event_t* event);
listener.h:BELLESIP_EXPORT const char* belle_sip_auth_event_get_distinguished_name(const belle_sip_auth_event_t* event);
listener.h:BELLESIP_EXPORT belle_sip_certificates_chain_t* belle_sip_auth_event_get_client_certificates_chain(const belle_sip_auth_event_t* event);
listener.h: * set client certificate to be sent in answer to the certificate request issued by the server for the DN belle_sip_auth_event_get_distinguished_name() name
listener.h:BELLESIP_EXPORT void belle_sip_auth_event_set_client_certificates_chain(belle_sip_auth_event_t* event, belle_sip_certificates_chain_t* value);
listener.h:BELLESIP_EXPORT belle_sip_signing_key_t* belle_sip_auth_event_get_signing_key(const belle_sip_auth_event_t* event);
listener.h: * @param event belle_sip_auth_event_t
listener.h:BELLESIP_EXPORT void belle_sip_auth_event_set_signing_key(belle_sip_auth_event_t* event, belle_sip_signing_key_t* value);
listener.h: void (*process_auth_requested)(void *user_ctx, belle_sip_auth_event_t *auth_event);
refresher.h: * Get current list of auth info if any. Contains the list of filled #belle_sip_auth_event_t in case of a 401 or 407 is repported to the #belle_sip_refresher_listener_t ;