Partager via


Options de socket et IOCTL

Certaines des options de socket pour Windows Sockets 2 sont résumées dans le tableau suivant. Des informations plus détaillées sont fournies dans la section 4 sous WSPGetSockOpt et/ou WSPSetSockOpt. Il existe d’autres options de socket propres au protocole que vous trouverez dans l’annexe propre au protocole. Une liste complète des options de socket pour Windows Sockets est disponible dans les informations de référence Winsock.

Pour obtenir un résumé de certains Ioctl Winsock, consultez Résumé des opcodes ioctl Socket. Une liste complète des IOCTL Winsock est disponible dans les informations de référence Winsock.

Résumé des options de socket courantes

Un fournisseur de services Winsock doit reconnaître toutes ces options et (pour WSPGetSockOpt) retourner des valeurs plausibles pour chacune d’elles. La valeur par défaut de chaque option est indiquée dans le tableau suivant.

Valeur

Type

Signification

Par défaut

Remarque

SO_ACCEPTCONN

BOOL

Le socket est à l’écoute.

Valeur FALSE, sauf si une opération WSPListen a été effectuée.

SO_BROADCAST

BOOL

Le socket est configuré pour la transmission et la réception des messages de diffusion.

FAUX

SO_DEBUG

BOOL

Le débogage est activé.

FAUX

(i)

SO_DONTLINGER

BOOL

Si la valeur est true, l’option SO_LINGER est désactivée.

VRAI

SO_DONTROUTE

BOOL

Le routage est désactivé. Aboutit mais est ignoré sur les sockets AF_INET ; échoue sur les sockets AF_INET6 avec WSAENOPROTOOPT. Non pris en charge sur les sockets ATM (entraîne une erreur).

FAUX

(i)

SO_ERROR

int

Récupère l’état d’erreur et efface.

0

SO_GROUP_ID

GROUP

Réservé.

NULL

Get uniquement

SO_GROUP_PRIORITY

int

Réservé.

0

SO_KEEPALIVE

BOOL

Les keepalives sont envoyés. Non pris en charge sur les sockets ATM (entraîne une erreur).

FAUX

(i)

SO_LINGER

Persistance de la structure

Retourne les options de persistance actuelles.

l_onoff a la valeur 0

SO_MAX_MSG_SIZE

int

Taille maximale d’un message sortant pour les types de socket de message. Il n’existe aucune disposition pour déterminer la taille maximale des messages entrants. N’a aucune signification pour les sockets orientés flux.

Dépendant de l’implémentation

Get uniquement

SO_OOBINLINE

BOOL

Les données OOB sont reçues dans le flux de données normal.

FAUX

SO_PROTOCOL_INFOW

structure WSAPROTOCOL_INFO

Description des informations de protocole pour le protocole lié à ce socket.

Dépendant du protocole

Get uniquement

SO_RCVBUF

int

Espace total de mémoire tampon par socket réservé aux réceptions. Cela n’est pas lié à SO_MAX_MSG_SIZE et ne correspond pas nécessairement à la taille de la fenêtre de réception TCP.

Dépendant de l’implémentation

(i)

SO_REUSEADDR

BOOL

L’adresse à laquelle ce socket est lié peut être utilisée par d’autres personnes. Non applicable sur les sockets ATM.

FAUX

SO_SNDBUF

int

Espace total de mémoire tampon par socket réservé aux envois. Cela n’est pas lié à SO_MAX_MSG_SIZE et ne correspond pas nécessairement à la taille de la fenêtre d’envoi TCP.

Dépendant de l’implémentation

(i)

SO_TYPE

int

Type du socket (par exemple, SOCK_STREAM).

Tel que créé via le socket.

PVD_CONFIG

char FAR *

Objet de structure de données opaque contenant les informations de configuration du fournisseur de services.

Dépendant de l’implémentation

TCP_NODELAY

BOOL

Désactive l'algorithme Nagle pour la fusion des envois.

Dépendant de l’implémentation

(i) Un fournisseur de services peut ignorer cette option en mode silencieux sur WSPSetSockOpt et retourner une valeur constante pour WSPGetSockOpt, ou il peut accepter une valeur pour WSPSetSockOpt et retourner la valeur correspondante dans WSPGetSockOpt sans utiliser la valeur de quelque manière que ce soit.

 

Options de socket

Options de socket SOL_SOCKET

Options de socket IPPROTO_TCP

Options de socket IPPROTO_UDP

IOCTL Winsock