socket Struct Reference
[Sockets]

Socket specific data. More...

Collaboration diagram for socket:
Collaboration graph
[legend]

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.

Detailed Description

Socket specific data.

Each socket lock locks only its structure part and any number of them may be locked simultaneously.


Field Documentation

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().

The number of blocked functions called.

Used while waiting for the received packets or accepted sockets.

Referenced by accept(), closesocket(), and recvfrom_core().

Packet data fragment size.

Sending optimalization.

Referenced by accept(), sendto_core(), socket(), and socket_connection().

Underlying protocol header size.

Sending and receiving optimalization.

Referenced by sendto_core(), and socket().

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

The documentation for this struct was generated from the following file:

Generated on Thu Mar 11 20:48:30 2010 for Networking and TCP/IP stack for HelenOS system by  doxygen 1.6.1