Rev 4578 | Rev 4700 | 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 | /** @} |