Ark Server API (ASE) - Wiki
Loading...
Searching...
No Matches
async.h File Reference
#include <stdlib.h>
#include <openssl/asyncerr.h>
+ Include dependency graph for async.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define OSSL_ASYNC_FD   int
 
#define OSSL_BAD_ASYNC_FD   -1
 
#define ASYNC_ERR   0
 
#define ASYNC_NO_JOBS   1
 
#define ASYNC_PAUSE   2
 
#define ASYNC_FINISH   3
 

Typedefs

typedef struct async_job_st ASYNC_JOB
 
typedef struct async_wait_ctx_st ASYNC_WAIT_CTX
 

Functions

int ASYNC_init_thread (size_t max_size, size_t init_size)
 
void ASYNC_cleanup_thread (void)
 
ASYNC_WAIT_CTXASYNC_WAIT_CTX_new (void)
 
void ASYNC_WAIT_CTX_free (ASYNC_WAIT_CTX *ctx)
 
int ASYNC_WAIT_CTX_set_wait_fd (ASYNC_WAIT_CTX *ctx, const void *key, OSSL_ASYNC_FD fd, void *custom_data, void(*cleanup)(ASYNC_WAIT_CTX *, const void *, OSSL_ASYNC_FD, void *))
 
int ASYNC_WAIT_CTX_get_fd (ASYNC_WAIT_CTX *ctx, const void *key, OSSL_ASYNC_FD *fd, void **custom_data)
 
int ASYNC_WAIT_CTX_get_all_fds (ASYNC_WAIT_CTX *ctx, OSSL_ASYNC_FD *fd, size_t *numfds)
 
int ASYNC_WAIT_CTX_get_changed_fds (ASYNC_WAIT_CTX *ctx, OSSL_ASYNC_FD *addfd, size_t *numaddfds, OSSL_ASYNC_FD *delfd, size_t *numdelfds)
 
int ASYNC_WAIT_CTX_clear_fd (ASYNC_WAIT_CTX *ctx, const void *key)
 
int ASYNC_is_capable (void)
 
int ASYNC_start_job (ASYNC_JOB **job, ASYNC_WAIT_CTX *ctx, int *ret, int(*func)(void *), void *args, size_t size)
 
int ASYNC_pause_job (void)
 
ASYNC_JOBASYNC_get_current_job (void)
 
ASYNC_WAIT_CTXASYNC_get_wait_ctx (ASYNC_JOB *job)
 
void ASYNC_block_pause (void)
 
void ASYNC_unblock_pause (void)
 

Macro Definition Documentation

◆ ASYNC_ERR

#define ASYNC_ERR   0

Definition at line 35 of file async.h.

◆ ASYNC_FINISH

#define ASYNC_FINISH   3

Definition at line 38 of file async.h.

◆ ASYNC_NO_JOBS

#define ASYNC_NO_JOBS   1

Definition at line 36 of file async.h.

◆ ASYNC_PAUSE

#define ASYNC_PAUSE   2

Definition at line 37 of file async.h.

◆ OSSL_ASYNC_FD

#define OSSL_ASYNC_FD   int

Definition at line 22 of file async.h.

◆ OSSL_BAD_ASYNC_FD

#define OSSL_BAD_ASYNC_FD   -1

Definition at line 23 of file async.h.

Typedef Documentation

◆ ASYNC_JOB

typedef struct async_job_st ASYNC_JOB

Definition at line 32 of file async.h.

◆ ASYNC_WAIT_CTX

typedef struct async_wait_ctx_st ASYNC_WAIT_CTX

Definition at line 33 of file async.h.

Function Documentation

◆ ASYNC_block_pause()

void ASYNC_block_pause ( void )

◆ ASYNC_cleanup_thread()

void ASYNC_cleanup_thread ( void )

◆ ASYNC_get_current_job()

ASYNC_JOB * ASYNC_get_current_job ( void )

◆ ASYNC_get_wait_ctx()

ASYNC_WAIT_CTX * ASYNC_get_wait_ctx ( ASYNC_JOB * job)

◆ ASYNC_init_thread()

int ASYNC_init_thread ( size_t max_size,
size_t init_size )

◆ ASYNC_is_capable()

int ASYNC_is_capable ( void )

◆ ASYNC_pause_job()

int ASYNC_pause_job ( void )

◆ ASYNC_start_job()

int ASYNC_start_job ( ASYNC_JOB ** job,
ASYNC_WAIT_CTX * ctx,
int * ret,
int(*)(void *) func,
void * args,
size_t size )

◆ ASYNC_unblock_pause()

void ASYNC_unblock_pause ( void )

◆ ASYNC_WAIT_CTX_clear_fd()

int ASYNC_WAIT_CTX_clear_fd ( ASYNC_WAIT_CTX * ctx,
const void * key )

◆ ASYNC_WAIT_CTX_free()

void ASYNC_WAIT_CTX_free ( ASYNC_WAIT_CTX * ctx)

◆ ASYNC_WAIT_CTX_get_all_fds()

int ASYNC_WAIT_CTX_get_all_fds ( ASYNC_WAIT_CTX * ctx,
OSSL_ASYNC_FD * fd,
size_t * numfds )

◆ ASYNC_WAIT_CTX_get_changed_fds()

int ASYNC_WAIT_CTX_get_changed_fds ( ASYNC_WAIT_CTX * ctx,
OSSL_ASYNC_FD * addfd,
size_t * numaddfds,
OSSL_ASYNC_FD * delfd,
size_t * numdelfds )

◆ ASYNC_WAIT_CTX_get_fd()

int ASYNC_WAIT_CTX_get_fd ( ASYNC_WAIT_CTX * ctx,
const void * key,
OSSL_ASYNC_FD * fd,
void ** custom_data )

◆ ASYNC_WAIT_CTX_new()

ASYNC_WAIT_CTX * ASYNC_WAIT_CTX_new ( void )

◆ ASYNC_WAIT_CTX_set_wait_fd()

int ASYNC_WAIT_CTX_set_wait_fd ( ASYNC_WAIT_CTX * ctx,
const void * key,
OSSL_ASYNC_FD fd,
void * custom_data,
void(*)(ASYNC_WAIT_CTX *, const void *, OSSL_ASYNC_FD, void *) cleanup )