共用方式為


套接字選項和IOCTL

下表摘要說明 Windows Sockets 2 的一些套接字選項。 WSPGetSockOpt 和/或 WSPSetSockOpt下第 4 節會提供更詳細的資訊。 其他新的通訊協定特定套接字選項可在 Protocol-Specific 附件中找到。 Winsock 參考中提供 Windows 套接字套接字選項的完整清單。

如需一些 Winsock Ioctls 的摘要,請參閱套接字 Ioctl Opcodes 摘要。 Winsock 參考中提供 Winsock IOCTLs 的完整清單。

通用套接字選項的摘要

Winsock 服務提供者必須辨識所有這些選項,而且 (針對 WSPGetSockOpt)會針對每個選項傳回合理的值。 下表顯示每個選項的預設值。

價值

類型

意義

違約

注意

SO_ACCEPTCONN

BOOL

套接字正在接聽。

FALSE,除非已執行 WSPListen

SO_BROADCAST

BOOL

套接字已設定為廣播訊息的傳輸和接收。

SO_DEBUG

BOOL

已啟用偵錯。

(i)

SO_DONTLINGER

BOOL

如果為 true,則會停用SO_LINGER選項。

SO_DONTROUTE

BOOL

路由已停用。 成功,但在AF_INET套接字上會被忽略;在具有 WSAENOPROTOOPT的AF_INET6套接字上失敗。 ATM 套接字不支援 (導致錯誤)。

(i)

SO_ERROR

int

擷取錯誤狀態並清除。

0

SO_GROUP_ID

保留。

僅取得

SO_GROUP_PRIORITY

int

保留。

0

SO_KEEPALIVE

BOOL

正在傳送 Keepalives。 ATM 套接字不支援 (導致錯誤)。

(i)

SO_LINGER

結構揮之不去

傳回目前的揮之不去選項。

l_onoff為 0

SO_MAX_MSG_SIZE

int

訊息套接字類型的訊息輸出大小上限。 沒有布建可判斷輸入訊息大小上限。 對數據流導向套接字沒有任何意義。

相依實作

僅取得

SO_OOBINLINE

BOOL

OOB 數據正在一般數據流中接收。

SO_PROTOCOL_INFOW

structure WSAPROTOCOL_INFO

系結至此套接字之通訊協議的通訊協議資訊描述。

通訊協定相依

僅取得

SO_RCVBUF

int

保留給接收的每個套接字緩衝區空間總計。 這與SO_MAX_MSG_SIZE無關,不一定對應至 TCP 接收視窗的大小。

相依實作

(i)

SO_REUSEADDR

BOOL

此套接字所系結的位址可供其他人使用。 不適用於 ATM 套接字。

SO_SNDBUF

int

保留給傳送的每個套接字緩衝區空間總計。 這與SO_MAX_MSG_SIZE無關,不一定對應至 TCP 傳送視窗的大小。

相依實作

(i)

SO_TYPE

int

套接字的類型(例如,SOCK_STREAM)。

透過套接字建立時。

PVD_CONFIG

char FAR *

不透明的數據結構物件,其中包含服務提供者的組態資訊。

相依實作

TCP_NODELAY

BOOL

停用用於傳送聯合的 Nagle 演算法。

相依實作

(i) 服務提供者可能會在 WSPSetSockOpt 上以無訊息方式忽略這個選項,並傳回 WSPGetSockOpt的常數值,或接受 WSPSetSockOpt 的值,並在 WSPGetSockOpt 中傳回對應的值,而不需以任何方式使用該值。

 

套接字選項

SOL_SOCKET 套接字選項

IPPROTO_TCP 套接字選項

IPPROTO_UDP 套接字選項

Winsock IOCTLs