X-Git-Url: https://hackdaworld.org/gitweb/?a=blobdiff_plain;f=src%2Fnetwork.h;h=25a9891522eeca8b64295d819ae7f3bbcb99fd71;hb=25e53b7c9b49f76c122a7425f6533de17810759b;hp=274811ebfbc9286296130b4fa8ceb882a67fa39b;hpb=c8c162c2b1f82f32160bcaa4159ea8735a8582c5;p=my-code%2Fivac.git diff --git a/src/network.h b/src/network.h index 274811e..25a9891 100644 --- a/src/network.h +++ b/src/network.h @@ -25,34 +25,33 @@ #define C_ESTABL (1<<3) #define C_HANGUP (1<<4) -#define CHAR_N_UNAME 32 - #define SEND_N_MAX 128 -#define SEND_N_NAME 'n' -#define SEND_N_G_CAP 'g' -#define SEND_N_AV_CAP 'c' #define N_SUCCESS 1 #define N_ERROR -1 +#define N_E_IN_USE -2 +#define N_E_NO_INFO -3 +#define N_E_CLOSE -4 +#define N_E_CONNECT -5 +#define N_E_NC -6 +#define N_E_ACCEPT -7 +#define N_E_MAXC -8 #define MAX_LISTEN_QUEUE 32 /* net specific variables */ typedef struct s_connection { int fd; - char name[CHAR_N_UNAME]; char ip[IP_DIGITS]; in_port_t port; unsigned char status; - unsigned char cap; /* general capabilities */ - unsigned short avcap; /* audio/video capabilities */ + unsigned short cap; /* capabilities */ } t_connection; typedef struct s_net { int l_fd; /* listen file descriptor */ in_port_t l_port; - unsigned char cap; - unsigned short avcap; + unsigned short cap; /* limited connections by now -- replaced by list management later */ int c_count; t_connection connection[MAX_CONNECTIONS]; @@ -64,10 +63,14 @@ int network_init(t_net *net); int network_shutdown(t_net *net); int network_set_listen_port(t_net *net,in_port_t port); int network_manage_connection(t_net *net); +int network_connect(t_net *net,int channel); +int network_close(t_net *net,int channel); +int network_close_all(t_net *net); +int network_set_connection_info(t_net *net,int channel,char *ip,int port); +int network_select(t_net *net,int channel); +int network_deselect(t_net *net,int channel); int network_manage_incoming(t_net *net); int network_send(int fd,unsigned char *data,int datasize); int network_receive(int fd,unsigned char *data,int datasize); -int send_info(int channel,t_net *net,char *name); -int receive_info(int channel,t_net *net); #endif