Condividi tramite


Opzioni socket e IOCTLs

Alcune delle opzioni socket per Windows Sockets 2 sono riepilogate nella tabella seguente. Le informazioni più dettagliate sono disponibili nella sezione 4 in WSPGetSockOpt e/o WSPSetSockOpt. Esistono altre nuove opzioni socket specifiche del protocollo disponibili nell'allegato specifico del protocollo. Un elenco completo delle opzioni socket per Windows Sockets è disponibile nel riferimento a Winsock.

Per un riepilogo di alcuni degli Ioctls Winsock, vedere Riepilogo di Socket Ioctl Opcodes. Un elenco completo di IOCTLs winsock è disponibile nel riferimento a Winsock.

Riepilogo delle opzioni socket comuni

Un provider di servizi Winsock deve riconoscere tutte queste opzioni e (per WSPGetSockOpt) restituisce valori plausibili per ognuno di essi. Il valore predefinito per ogni opzione è illustrato nella tabella seguente.

Valore

Digita

Significato

Impostazione predefinita

Nota

SO_ACCEPTCONN

BOOL

Socket in ascolto.

FAL edizione Standard a meno che non sia stato eseguito un WSPListen.

SO_BROADCAST

BOOL

Il socket è configurato per la trasmissione e la ricezione di messaggi trasmessi.

FALSE

SO_DEBUG

BOOL

Il debug è abilitato.

FALSE

(i)

SO_DONTLINGER

BOOL

Se true, l'opzione SO_LINGER è disabilitata.

TRUE

SO_DONTROUTE

BOOL

Il routing è disabilitato. Ha esito positivo ma viene ignorato nei socket AF_INET; ha esito negativo sui socket AF_INET6 con WSAENOPROTOOPT. Non supportato nei socket ATM (genera un errore).

FALSE

(i)

SO_ERROR

int

Recupera lo stato degli errori e cancella.

0

SO_GROUP_ID

GROUP

Riservato.

NULL

Ottenere solo

SO_GROUP_PRIORITY

int

Riservato.

0

SO_Kedizione Enterprise PALIVE

BOOL

I keepalives vengono inviati. Non supportato nei socket ATM (genera un errore).

FALSE

(i)

SO_LINGER

Ritardo struttura

Restituisce le opzioni correnti del ritardo.

l_onoff è 0

SO_MAX_MSG_SIZE

int

Dimensioni massime in uscita di un messaggio per i tipi di socket del messaggio. Non è previsto alcun provisioning per determinare la dimensione massima dei messaggi in ingresso. Non ha alcun significato per i socket orientati al flusso.

Implementazione dipendente

Ottenere solo

SO_OOBINLINE

BOOL

I dati OOB sono ricevuti nel normale flusso di dati.

FALSE

SO_PROTOCOL_INFOW

struttura WSAPROTOCOL_INFO

Descrizione delle informazioni sul protocollo per il protocollo associato a questo socket.

Dipendente dal protocollo

Ottenere solo

SO_RCVBUF

int

Spazio totale del buffer per socket riservato per le ricevute. Non è correlato a SO_MAX_MSG_SIZE e non corrisponde necessariamente alle dimensioni della finestra di ricezione TCP.

Implementazione dipendente

(i)

SO_REUedizione Standard ADDR

BOOL

L'indirizzo a cui è associato questo socket può essere utilizzato da altri utenti. Non applicabile ai socket ATM.

FALSE

SO_SNDBUF

int

Spazio totale del buffer per socket riservato per gli invii. Non è correlato a SO_MAX_MSG_SIZE e non corrisponde necessariamente alle dimensioni di una finestra di trasmissione TCP.

Implementazione dipendente

(i)

SO_TYPE

int

Tipo del socket (ad esempio, SOCK_STREAM).

Come creato tramite socket.

PVD_CONFIG

char FAR *

Oggetto struttura di dati opaca contenente informazioni di configurazione del provider di servizi.

Implementazione dipendente

TCP_NODELAY

BOOL

Disabilita l'algoritmo Nagle di unione dei pacchetti in invio.

Implementazione dipendente

(i) Un provider di servizi può ignorare automaticamente questa opzione in WSPSetSockOpt e restituire un valore costante per WSPGetSockOpt oppure può accettare un valore per WSPSetSockOpt e restituire il valore corrispondente in WSPGetSockOpt senza usare il valore in alcun modo.

 

Opzioni socket

Opzioni socket SOL_SOCKET

Opzioni socket IPPROTO_TCP

Opzioni socket IPPROTO_UDP

Winsock IOCTLs