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. Ci sono altre nuove opzioni socket specifiche del protocollo disponibili nell'allegato Protocol-Specific. Un elenco completo delle opzioni socket per Windows Sockets è disponibile nel riferimento winsock.

Per un riepilogo di alcuni degli Ioctls Winsock, vedere Riepilogo di Socket Ioctl Opcodes. Un elenco completo di IOCTLs Winsock sono disponibili nel riferimento 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

Digitare

Significato

Default

Nota

SO_ACCEPTCONN

BOOL

Socket in ascolto.

FALSE a meno che non sia stata eseguita unaWSPListen.

SO_BROADCAST

BOOL

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

FALSO

SO_DEBUG

BOOL

Il debug è abilitato.

FALSO

(i)

SO_DONTLINGER

BOOL

Se true, l'opzione SO_LINGER è disabilitata.

VERO

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

FALSO

(i)

SO_ERROR

Int

Recupera lo stato degli errori e cancella.

0

SO_GROUP_ID

GRUPPO

Riservato.

NULLO

Ottenere solo

SO_GROUP_PRIORITY

Int

Riservato.

0

SO_KEEPALIVE

BOOL

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

FALSO

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

FALSO

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_REUSEADDR

BOOL

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

FALSO

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 per l'invio dell'unione.

Implementazione dipendente

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

 

opzioni socket

opzioni socketSOL_SOCKET

IPPROTO_TCP Opzioni socket

opzioni socketIPPROTO_UDP

IOCTLs Winsock