Rev 4578 | Rev 4704 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 4578 | Rev 4589 | ||
---|---|---|---|
Line 39... | Line 39... | ||
39 | #include <sys/types.h> |
39 | #include <sys/types.h> |
40 | 40 | ||
41 | #include "../include/in.h" |
41 | #include "../include/in.h" |
42 | #include "../include/device.h" |
42 | #include "../include/device.h" |
43 | 43 | ||
- | 44 | #include "../structures/dynamic_fifo.h" |
|
44 | #include "../structures/int_map.h" |
45 | #include "../structures/int_map.h" |
45 | #include "../structures/packet/packet.h" |
46 | #include "../structures/packet/packet.h" |
46 | 47 | ||
- | 48 | #define SOCKET_INITIAL_RECEIVED_SIZE 4 |
|
- | 49 | #define SOCKET_MAX_RECEIVED_SIZE 64 |
|
- | 50 | ||
- | 51 | #define SOCKET_INITIAL_ACCEPTED_SIZE 1 |
|
- | 52 | #define SOCKET_MAX_ACCEPTEDED_SIZE 64 |
|
- | 53 | ||
47 | typedef struct socket_core socket_core_t; |
54 | typedef struct socket_core socket_core_t; |
48 | typedef socket_core_t * socket_core_ref; |
55 | typedef socket_core_t * socket_core_ref; |
49 | 56 | ||
50 | struct socket_core{ |
57 | struct socket_core{ |
51 | int socket_id; |
58 | int socket_id; |
52 | int phone; |
59 | int phone; |
53 | int port; |
60 | int port; |
54 | int * connected; |
- | |
55 | size_t connect_size; |
61 | int data_fragment_size; |
56 | packet_id_t * received; |
- | |
57 | size_t receive_size; |
- | |
58 | size_t mtu; |
- | |
59 | device_id_t device_id; |
62 | device_id_t device_id; |
60 | struct sockaddr_in * peer_addr; |
63 | struct sockaddr_in * peer_addr; |
- | 64 | dyn_fifo_t received; |
|
- | 65 | dyn_fifo_t accepted; |
|
61 | }; |
66 | }; |
62 | 67 | ||
63 | INT_MAP_DECLARE( socket_cores, socket_core_t ); |
68 | INT_MAP_DECLARE( socket_cores, socket_core_t ); |
64 | 69 | ||
65 | INT_MAP_DECLARE( socket_ports, socket_core_ref ); |
70 | INT_MAP_DECLARE( socket_ports, socket_core_ref ); |
66 | 71 | ||
67 | int socket_bind( socket_cores_ref local_sockets, socket_ports_ref global_sockets, int socket_id, void * addr, size_t addrlen ); |
72 | int socket_bind( socket_cores_ref local_sockets, socket_ports_ref global_sockets, int socket_id, void * addr, size_t addrlen ); |
68 | int socket_create( socket_cores_ref local_sockets, int app_phone ); |
73 | int socket_create( socket_cores_ref local_sockets, int app_phone, int * socket_id ); |
69 | int socket_destroy( int packet_phone, int socket_id, socket_cores_ref local_sockets, socket_ports_ref global_sockets ); |
74 | int socket_destroy( int packet_phone, int socket_id, socket_cores_ref local_sockets, socket_ports_ref global_sockets ); |
70 | 75 | ||
71 | #endif |
76 | #endif |
72 | 77 | ||
73 | /** @} |
78 | /** @} |