Socket specific data. More...

Data Fields | |
| int | socket_id |
| Socket identifier. | |
| int | phone |
| Parent module phone. | |
| services_t | service |
| Parent module service. | |
| size_t | header_size |
| Underlying protocol header size. | |
| size_t | data_fragment_size |
| Packet data fragment size. | |
| fibril_rwlock_t | sending_lock |
| Sending safety lock. | |
| dyn_fifo_t | received |
| Received packets queue. | |
| fibril_mutex_t | receive_lock |
| Received packets safety lock. | |
| fibril_condvar_t | receive_signal |
| Received packets signaling. | |
| dyn_fifo_t | accepted |
| Waiting sockets queue. | |
| fibril_mutex_t | accept_lock |
| Waiting sockets safety lock. | |
| fibril_condvar_t | accept_signal |
| Waiting sockets signaling. | |
| int | blocked |
| The number of blocked functions called. | |
Socket specific data.
Each socket lock locks only its structure part and any number of them may be locked simultaneously.
| fibril_mutex_t socket::accept_lock |
Waiting sockets safety lock.
Used for accepting and accept notifications. Locks the accepted attribute.
Referenced by accept(), socket_connection(), and socket_initialize().
| fibril_condvar_t socket::accept_signal |
Waiting sockets signaling.
Signaled upon accept notification.
Referenced by accept(), socket_connection(), and socket_initialize().
Waiting sockets queue.
Referenced by accept(), socket(), socket_connection(), socket_destroy(), and socket_initialize().
| int socket::blocked |
The number of blocked functions called.
Used while waiting for the received packets or accepted sockets.
Referenced by accept(), closesocket(), and recvfrom_core().
| size_t socket::data_fragment_size |
Packet data fragment size.
Sending optimalization.
Referenced by accept(), sendto_core(), socket(), and socket_connection().
| size_t socket::header_size |
Underlying protocol header size.
Sending and receiving optimalization.
Referenced by sendto_core(), and socket().
| int socket::phone |
Parent module phone.
Referenced by accept(), closesocket(), getsockopt(), listen(), recvfrom_core(), sendto_core(), socket_initialize(), and socket_send_data().
| fibril_mutex_t socket::receive_lock |
Received packets safety lock.
Used for receiving and receive notifications. Locks the received attribute.
Referenced by recvfrom_core(), socket_connection(), and socket_initialize().
| fibril_condvar_t socket::receive_signal |
Received packets signaling.
Signaled upon receive notification.
Referenced by recvfrom_core(), socket_connection(), and socket_initialize().
Received packets queue.
Referenced by recvfrom_core(), socket(), socket_connection(), socket_destroy(), and socket_initialize().
| fibril_rwlock_t socket::sending_lock |
Sending safety lock.
Locks the header_size and data_fragment_size attributes.
Referenced by sendto_core(), socket_connection(), and socket_initialize().
| services_t socket::service |
Parent module service.
Referenced by accept(), closesocket(), getsockopt(), listen(), recvfrom_core(), sendto_core(), socket_initialize(), and socket_send_data().
Socket identifier.
Referenced by accept(), closesocket(), getsockopt(), listen(), recvfrom_core(), sendto_core(), socket_destroy(), socket_initialize(), and socket_send_data().
1.6.1