y_socket: arg_var and extern_handler to accept bash_arg
This commit is contained in:
@@ -55,10 +55,11 @@ struct arg_var_{
|
|||||||
struct main_list_y_ptr_HEADER_T *m_ok_head_l_t;
|
struct main_list_y_ptr_HEADER_T *m_ok_head_l_t;
|
||||||
pthread_mutex_t *mut_var;
|
pthread_mutex_t *mut_var;
|
||||||
pthread_cond_t *cond_var;
|
pthread_cond_t *cond_var;
|
||||||
void (*extern_socket_handler)(char*,int);
|
void* bash_arg;
|
||||||
|
void (*extern_socket_handler)(char*,int, void*);
|
||||||
};
|
};
|
||||||
|
|
||||||
struct arg_var_ * create_arg_var_(void (*extern_socket_handler)(char*,int));
|
struct arg_var_ * create_arg_var_(void (*extern_socket_handler)(char*,int, void*), void* bash_arg);
|
||||||
void set_up_arg_var_init_(struct arg_var_ *var, struct y_socket_t * argSock, struct main_list_TYPE_PTR * list_arg, struct argExecTasQ *argx , struct main_list_y_ptr_HEADER_T *m_ok_head_l_t);
|
void set_up_arg_var_init_(struct arg_var_ *var, struct y_socket_t * argSock, struct main_list_TYPE_PTR * list_arg, struct argExecTasQ *argx , struct main_list_y_ptr_HEADER_T *m_ok_head_l_t);
|
||||||
void free_arg_var_(struct arg_var_ *var);
|
void free_arg_var_(struct arg_var_ *var);
|
||||||
void wait_var_set_up_value_not_equal(struct arg_var_ *var, int value_set_up);
|
void wait_var_set_up_value_not_equal(struct arg_var_ *var, int value_set_up);
|
||||||
|
|||||||
@@ -12,7 +12,7 @@ void handle_input_cmd(char * buf, int buf_len, struct arg_var_ *var);
|
|||||||
//struct y_socket_t * argSock, struct main_list_TYPE_PTR * list_arg, struct argExecTasQ *argx , struct main_list_y_ptr_HEADER_T *m_ok_head_l_t);
|
//struct y_socket_t * argSock, struct main_list_TYPE_PTR * list_arg, struct argExecTasQ *argx , struct main_list_y_ptr_HEADER_T *m_ok_head_l_t);
|
||||||
|
|
||||||
|
|
||||||
struct arg_var_ * create_arg_var_(void (*extern_socket_handler)(char*,int)){
|
struct arg_var_ * create_arg_var_(void (*extern_socket_handler)(char*,int, void*), void *bash_arg){
|
||||||
struct arg_var_ * new_var=malloc(sizeof(struct arg_var_));
|
struct arg_var_ * new_var=malloc(sizeof(struct arg_var_));
|
||||||
new_var->set_up = 0;
|
new_var->set_up = 0;
|
||||||
new_var->mut_var = malloc(sizeof(pthread_mutex_t));
|
new_var->mut_var = malloc(sizeof(pthread_mutex_t));
|
||||||
@@ -25,6 +25,7 @@ struct arg_var_ * create_arg_var_(void (*extern_socket_handler)(char*,int)){
|
|||||||
new_var->argx = NULL;
|
new_var->argx = NULL;
|
||||||
new_var->m_ok_head_l_t = NULL;
|
new_var->m_ok_head_l_t = NULL;
|
||||||
new_var->extern_socket_handler = extern_socket_handler;
|
new_var->extern_socket_handler = extern_socket_handler;
|
||||||
|
new_var->bash_arg=bash_arg;
|
||||||
|
|
||||||
return new_var;
|
return new_var;
|
||||||
}
|
}
|
||||||
@@ -600,7 +601,7 @@ if(buf_len>6){
|
|||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
if(var->extern_socket_handler){
|
if(var->extern_socket_handler){
|
||||||
var->extern_socket_handler(buf,buf_len);
|
var->extern_socket_handler(buf,buf_len,var->bash_arg);
|
||||||
}else{
|
}else{
|
||||||
printf("debug: No extern_socket_handler in var\n");
|
printf("debug: No extern_socket_handler in var\n");
|
||||||
}
|
}
|
||||||
@@ -613,7 +614,7 @@ if(buf_len>6){
|
|||||||
pthread_mutex_unlock(argSock->mut_go_on);
|
pthread_mutex_unlock(argSock->mut_go_on);
|
||||||
}else{
|
}else{
|
||||||
if(var->extern_socket_handler){
|
if(var->extern_socket_handler){
|
||||||
var->extern_socket_handler(buf,buf_len);
|
var->extern_socket_handler(buf,buf_len,var->bash_arg);
|
||||||
}else{
|
}else{
|
||||||
printf("debug: No extern_socket_handler in var\n");
|
printf("debug: No extern_socket_handler in var\n");
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -181,7 +181,7 @@ TEST(import_nodes){
|
|||||||
|
|
||||||
|
|
||||||
TEST(pollThread){
|
TEST(pollThread){
|
||||||
struct arg_var_ * var = create_arg_var_(NULL);
|
struct arg_var_ * var = create_arg_var_(NULL, NULL);
|
||||||
struct y_socket_t *argS=y_socket_create("1600", 2, 3, var);
|
struct y_socket_t *argS=y_socket_create("1600", 2, 3, var);
|
||||||
|
|
||||||
pthread_t pollTh;
|
pthread_t pollTh;
|
||||||
|
|||||||
Reference in New Issue
Block a user