diff --git a/libmariadb/ma_context.c b/libmariadb/ma_context.c index 30c03930..222dbe28 100644 --- a/libmariadb/ma_context.c +++ b/libmariadb/ma_context.c @@ -30,6 +30,9 @@ #endif #ifdef MY_CONTEXT_USE_UCONTEXT + +typedef void (*uc_func_t)(void); + /* The makecontext() only allows to pass integers into the created context :-( We want to pass pointers, so we do it this kinda hackish way. @@ -100,7 +103,7 @@ my_context_spawn(struct my_context *c, void (*f)(void *), void *d) c->user_data= d; c->active= 1; u.p= c; - makecontext(&c->spawned_context, my_context_spawn_internal, 2, + makecontext(&c->spawned_context, (uc_func_t)my_context_spawn_internal, 2, u.a[0], u.a[1]); return my_context_continue(c); diff --git a/libmariadb/ma_net.c b/libmariadb/ma_net.c index 35301090..2e932b17 100644 --- a/libmariadb/ma_net.c +++ b/libmariadb/ma_net.c @@ -292,7 +292,7 @@ static int ma_net_write_buff(NET *net,const char *packet, size_t len) return 0; } -unsigned char *mysql_net_store_length(unsigned char *packet, size_t length); +unsigned char *mysql_net_store_length(unsigned char *packet, ulonglong length); /* Read and write using timeouts */ diff --git a/plugins/auth/my_auth.c b/plugins/auth/my_auth.c index e9feff03..72773079 100644 --- a/plugins/auth/my_auth.c +++ b/plugins/auth/my_auth.c @@ -12,7 +12,7 @@ static int dummy_fallback_auth_client(MYSQL_PLUGIN_VIO *vio, MYSQL *mysql __attr extern void read_user_name(char *name); extern char *ma_send_connect_attr(MYSQL *mysql, unsigned char *buffer); extern int ma_read_ok_packet(MYSQL *mysql, uchar *pos, ulong length); -extern unsigned char *mysql_net_store_length(unsigned char *packet, size_t length); +extern unsigned char *mysql_net_store_length(unsigned char *packet, ulonglong length); typedef struct { int (*read_packet)(struct st_plugin_vio *vio, uchar **buf);