mirror of
https://git.libssh.org/projects/libssh.git
synced 2025-11-30 13:01:23 +03:00
Implemented the noop and native pointers
This commit is contained in:
@@ -255,8 +255,27 @@ LIBSSH_API int ssh_set_callbacks(ssh_session session, ssh_callbacks cb);
|
||||
*/
|
||||
|
||||
typedef int (*ssh_thread_callback) (void **lock);
|
||||
|
||||
/**
|
||||
* @brief Type of the threading solution implemented behind
|
||||
* these callbacks
|
||||
*/
|
||||
enum ssh_threads_type_e {
|
||||
/** The thread callbacks do nothing */
|
||||
ssh_threads_type_noop,
|
||||
/** The thread callbacks use pthread */
|
||||
ssh_threads_type_pthread,
|
||||
/** The thread callbacks use win32 threads */
|
||||
ssh_threads_type_win32,
|
||||
/** The thread callbacks use pth */
|
||||
ssh_threads_type_pth,
|
||||
/** The thread callbacks are unknown or different */
|
||||
ssh_threads_type_other
|
||||
};
|
||||
|
||||
typedef unsigned long (*ssh_thread_id_callback) (void);
|
||||
struct ssh_threads_callbacks_struct {
|
||||
enum ssh_threads_type_e type;
|
||||
ssh_thread_callback mutex_init;
|
||||
ssh_thread_callback mutex_destroy;
|
||||
ssh_thread_callback mutex_lock;
|
||||
@@ -277,7 +296,9 @@ struct ssh_threads_callbacks_struct {
|
||||
LIBSSH_API int ssh_threads_set_callbacks(struct ssh_threads_callbacks_struct
|
||||
*cb);
|
||||
|
||||
extern struct ssh_threads_callbacks_struct ssh_pthread_callbacks;
|
||||
extern struct ssh_threads_callbacks_struct ssh_threads_pthread;
|
||||
extern struct ssh_threads_callbacks_struct ssh_threads_noop;
|
||||
extern struct ssh_threads_callbacks_struct ssh_threads_native;
|
||||
|
||||
/** @} */
|
||||
#ifdef __cplusplus
|
||||
|
||||
Reference in New Issue
Block a user