y_socket: refactor and try to debug kill all

This commit is contained in:
2025-10-15 22:56:16 +02:00
parent 4c1fc03d0c
commit 1ca0eeaf69
15 changed files with 461 additions and 254 deletions
@@ -4,7 +4,7 @@
#include "y_socket_t/y_socket_t.h"
#include "y_socket_t/y_node_t.h"
#include "y_socket_t/y_list_string.h"
#include "y_socket_t/y_list_var_tool.h"
#include "y_worker_t/y_worker_t.h"
#include "y_worker_t/y_task_t.h"
@@ -21,6 +21,7 @@ struct arg_send_file{
y_NODE_T node;
char * filename;
struct main_list_y_ptr_HEADER_T *m_ok_head_l_t;
struct main_list_y_ptr_VARIABLE *m_var;
};
void* y_socket_send_file_for_all_nodes(void* arg);
@@ -73,7 +74,7 @@ GEN_HEAD_PTR_LIST(y_ptr_HEADER_T)
size_t set_tempAddr_from_node(char *tempAddr, y_NODE_T node);
//void receve_from_node(struct pollfd *fds, char *msg, size_t count);
void receve_from_node(struct pollfd *fds, struct main_list_y_ptr_HEADER_T *m_head_l_t, struct main_list_y_ptr_STRING *m_str, y_NODE_T node /* char * srcAddr*/, char *filename);
void receve_from_node(struct pollfd *fds, struct main_list_y_ptr_HEADER_T *m_head_l_t, struct main_list_y_ptr_VARIABLE *m_var, struct main_list_y_ptr_STRING *m_str, y_NODE_T node /* char * srcAddr*/, char *filename);
long y_append_to_ok_header_l_(struct main_list_y_ptr_HEADER_T *m_ok_head_l_t, char *nameid );
#endif /*Y_FILE_HANDLER_T_H__C*/
@@ -1,26 +0,0 @@
/*file: include/y_socket_t/y_list_string.h */
#ifndef Y_PTR_STRING_T_H__C
#define Y_PTR_STRING_T_H__C
#include <string.h>
#include "list_t/list_t.h"
struct y_string{
char * buf;
size_t size;
};
typedef struct y_string * y_ptr_STRING;
struct y_string * create_y_ptr_STRING(const char *buf, size_t size);
GENERATE_LIST_ALL(y_ptr_STRING)
GEN_HEAD_PTR_LIST(y_ptr_STRING)
size_t total_size_list_y_ptr_STRING(struct main_list_y_ptr_STRING *mstr);
size_t copy_list_y_ptr_STRING_to_one_string(char **p_dst_str, struct main_list_y_ptr_STRING *mstr);
struct main_list_y_ptr_STRING * split_str_to_main_list_y_ptr_STRING(char *str_org, char sep, size_t limit_size_str_org);
#endif /* Y_PTR_STRING_T_H__C */
@@ -0,0 +1,44 @@
/*file: include/y_socket_t/y_list_var_tool.h */
#ifndef Y_PTR_VAR_TOOL_H__C
#define Y_PTR_VAR_TOOL_H__C
#include <string.h>
#include "list_t/list_t.h"
long long_time_id();
struct y_variable{
char * name;
size_t size_name;
void * value;
size_t size_value;
long time_l;
char src[64];/* */
};
typedef struct y_variable * y_ptr_VARIABLE;
struct y_variable * create_y_ptr_VARIABLE(const char *name, size_t size_name, void * value, size_t size_value, char * src);
GENERATE_LIST_ALL(y_ptr_VARIABLE)
GEN_HEAD_PTR_LIST(y_ptr_VARIABLE)
void update_list_y_ptr_VARIABLE(struct main_list_y_ptr_VARIABLE *listVariables, y_ptr_VARIABLE var);
struct y_string{
char * buf;
size_t size;
};
typedef struct y_string * y_ptr_STRING;
struct y_string * create_y_ptr_STRING(const char *buf, size_t size);
GENERATE_LIST_ALL(y_ptr_STRING)
GEN_HEAD_PTR_LIST(y_ptr_STRING)
size_t total_size_list_y_ptr_STRING(struct main_list_y_ptr_STRING *mstr);
size_t copy_list_y_ptr_STRING_to_one_string(char **p_dst_str, struct main_list_y_ptr_STRING *mstr);
struct main_list_y_ptr_STRING * split_str_to_main_list_y_ptr_STRING(char *str_org, char sep, size_t limit_size_str_org);
#endif /* Y_PTR_VAR_TOOL_H__C */
+6 -3
View File
@@ -27,13 +27,16 @@ void init_len_list_y_NODE_T(struct main_list_y_NODE_T *listNodes);
int y_NODE_T_cmp(y_NODE_T nodeA, y_NODE_T nodeB);
struct list_y_NODE_T * search_node_in_list_y_NODE_T(struct main_list_y_NODE_T *listNodes, y_NODE_T node);
int set_addr_y_NODE_T(y_NODE_T *node, char * addrStr);
void set_port_y_NODE_T(y_NODE_T *node, int port);
void set_str_port_y_NODE_T(y_NODE_T *node, char *str_port);
int set_addr_y_NODE_T_from_str_addr(y_NODE_T *node, char * addrStr);
void set_port_y_NODE_T_from_int_port(y_NODE_T *node, int port);
void set_port_y_NODE_T_from_str_port(y_NODE_T *node, char *str_port);
size_t set_addr_str_from_node(char *tempAddr, y_NODE_T node);
const char * put_y_NODE_T_in_string(y_NODE_T *node, char * dst);
void update_nodes(y_NODE_T node, struct main_list_y_NODE_T *nodes);
void * remove_node_from_nodes(void* arg);
void * add_node_to_nodes(void* arg);
int export_nodes_to_file(char * file_nodes_name, struct main_list_y_NODE_T *nodes);
int import_nodes_from_file(char * file_nodes_name, int int_port, struct main_list_y_NODE_T *nodes);
#endif /* __Y_NODE_T_H__C */
+33 -32
View File
@@ -31,7 +31,7 @@
#include "y_worker_t/y_worker_t.h"
#include "y_worker_t/y_task_t.h"
#include "y_socket_t/y_list_string.h"
#include "y_socket_t/y_list_var_tool.h"
#include "json_t/json_t.h"
@@ -47,37 +47,6 @@ enum ipVersions{
extern const int af_array[nbIpVersion];//={AF_INET, AF_INET6};
/* y_ptr_STRING */
#if 0
struct y_string{
char * buf;
size_t size;
};
typedef struct y_string * y_ptr_STRING;
struct y_string * create_y_ptr_STRING(const char *buf, size_t size);
GENERATE_LIST_ALL(y_ptr_STRING)
GEN_HEAD_PTR_LIST(y_ptr_STRING)
size_t total_size_list_y_ptr_STRING(struct main_list_y_ptr_STRING *mstr);
size_t copy_list_y_ptr_STRING_to_one_string(char **p_dst_str, struct main_list_y_ptr_STRING *mstr);
#endif /* y_ptr_STRING */
struct y_variable{
char * name;
void * value;
};
typedef struct y_variable * y_ptr_VARIABLE;
struct y_variable * create_y_ptr_VARIABLE(const char *name, size_t size_value);
GENERATE_LIST_ALL(y_ptr_VARIABLE)
GEN_HEAD_PTR_LIST(y_ptr_VARIABLE)
struct y_socket_t{
struct pollfd *fds;
size_t size_fds;
@@ -111,6 +80,38 @@ void *threadFuncSend(void *arg);
#define GET_IN_type_ADDR(PointerSockAddr,type) \
((struct sockaddr_in##type *)(PointerSockAddr))->sin##type##_addr.s##type##_addr
#if 0
/* y_ptr_STRING */
struct y_string{
char * buf;
size_t size;
};
typedef struct y_string * y_ptr_STRING;
struct y_string * create_y_ptr_STRING(const char *buf, size_t size);
GENERATE_LIST_ALL(y_ptr_STRING)
GEN_HEAD_PTR_LIST(y_ptr_STRING)
size_t total_size_list_y_ptr_STRING(struct main_list_y_ptr_STRING *mstr);
size_t copy_list_y_ptr_STRING_to_one_string(char **p_dst_str, struct main_list_y_ptr_STRING *mstr);
#endif /* y_ptr_STRING */
/* y_ptr_VARIABLE */
#if 0
struct y_variable{
char * name;
void * value;
};
typedef struct y_variable * y_ptr_VARIABLE;
struct y_variable * create_y_ptr_VARIABLE(const char *name, size_t size_value);
GENERATE_LIST_ALL(y_ptr_VARIABLE)
GEN_HEAD_PTR_LIST(y_ptr_VARIABLE)
#endif /* y_ptr_VARIABLE */
#endif /* Y_SOCKET_T_H__C */