Socketoptionen und IOCTLs
Einige der Socketoptionen für Windows Sockets 2 sind in der folgenden Tabelle zusammengefasst. Ausführlichere Informationen finden Sie in Abschnitt 4 unter WSPGetSockOpt und/oder WSPSetSockOpt-. Es gibt weitere protokollspezifische Socketoptionen, die im Anhang Protocol-Specific zu finden sind. Eine vollständige Liste der Socketoptionen für Windows Sockets finden Sie in der Winsock-Referenz.
Eine Zusammenfassung einiger Winsock Ioctls finden Sie unter Zusammenfassung von Socket Ioctl Opcodes. Eine vollständige Liste der Winsock IOCTLs sind in der Winsock-Referenz verfügbar.
Zusammenfassung der allgemeinen Socketoptionen
Ein Winsock-Dienstanbieter muss alle diese Optionen erkennen, und (für WSPGetSockOpt) sind für jeden Wert plausible Werte zurückgegeben. Der Standardwert für jede Option wird in der folgenden Tabelle angezeigt.
Wert
Art
Bedeutung
Vorgabe
Anmerkung
SO_ACCEPTCONN
BOOL
Socket überwacht.
FALSE, es sei denn, ein WSPListen- wurde ausgeführt.
SO_BROADCAST
BOOL
Socket ist für die Übertragung und den Empfang von Übertragungsnachrichten konfiguriert.
FALSCH
SO_DEBUG
BOOL
Das Debuggen ist aktiviert.
FALSCH
(i)
SO_DONTLINGER
BOOL
Bei "true" ist die Option "SO_LINGER" deaktiviert.
STIMMT
SO_DONTROUTE
BOOL
Routing ist deaktiviert. Erfolgreich, wird jedoch bei AF_INET Sockets ignoriert; schlägt bei AF_INET6 Sockets mit WSAENOPROTOOPTfehl. Wird für ATM-Sockets nicht unterstützt (führt zu einem Fehler).
FALSCH
(i)
SO_ERROR
Int
Ruft den Fehlerstatus ab und löscht sie.
0
SO_GROUP_ID
GRUPPE
Reserviert.
NULL
Nur abrufen
SO_GROUP_PRIORITY
Int
Reserviert.
0
BOOL
Keepalives werden gesendet. Wird für ATM-Sockets nicht unterstützt (führt zu einem Fehler).
FALSCH
(i)
SO_LINGER
Struktur bleibt bestehen
Gibt die aktuellen Optionen für das Anhalten zurück.
l_onoff ist 0
SO_MAX_MSG_SIZE
Int
Maximale ausgehende Größe einer Nachricht für Nachrichtensockettypen. Es gibt keine Bereitstellung, um die maximale Größe eingehender Nachrichten zu ermitteln. Hat keine Bedeutung für streamorientierte Sockets.
Implementierung abhängig
Nur abrufen
SO_OOBINLINE
BOOL
OOB-Daten werden im normalen Datenstrom empfangen.
FALSCH
SO_PROTOCOL_INFOW
struktur WSAPROTOCOL_INFO
Beschreibung der Protokollinformationen für das Protokoll, das an diesen Socket gebunden ist.
Protokollabhängig
Nur abrufen
SO_RCVBUF
Int
Der Gesamtspeicher pro Socketpuffer, der für Empfänge reserviert ist. Dies ist nicht mit SO_MAX_MSG_SIZE verbunden und entspricht nicht unbedingt der Größe des TCP-Empfangsfensters.
Implementierung abhängig
(i)
SO_REUSEADDR
BOOL
Die Adresse, an die dieser Socket gebunden ist, kann von anderen verwendet werden. Gilt nicht für ATM-Sockets.
FALSCH
SO_SNDBUF
Int
Der gesamt für Sendesendungen reservierte Pufferspeicher pro Socket. Dies ist nicht mit SO_MAX_MSG_SIZE verbunden und entspricht nicht unbedingt der Größe eines TCP-Sendefensters.
Implementierung abhängig
(i)
SO_TYPE
Int
Der Typ des Sockets (z. B. SOCK_STREAM).
Wie über Socket erstellt.
PVD_CONFIG
char FAR *
Ein undurchsichtiges Datenstrukturobjekt, das Konfigurationsinformationen des Dienstanbieters enthält.
Implementierung abhängig
TCP_NODELAY
BOOL
Deaktiviert den Nagle-Algorithmus für das Zusammenwachsen.
Implementierung abhängig
(i) Ein Dienstanbieter kann diese Option für WSPSetSockOpt- ignorieren und einen Konstantenwert für WSPGetSockOpt-zurückgeben oder einen Wert für WSPSetSockOpt akzeptieren und den entsprechenden Wert in WSPGetSockOpt zurückgeben, ohne den Wert auf irgendeine Weise zu verwenden.
Verwandte Themen