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 protokollspezifischen Anhang 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 in der Zusammenfassung von Socket Ioctl Opcodes. Eine vollständige Liste der Winsock IOCTLs finden Sie in der Winsock-Referenz.
Zusammenfassung der allgemeinen Socketoptionen
Ein Winsock-Dienstanbieter muss alle diese Optionen erkennen und (für WSPGetSockOpt) plausible Werte für jede zurückgeben. Der Standardwert für jede Option wird in der folgenden Tabelle angezeigt.
Wert
Typ
Bedeutung
Standard
Hinweis
SO_ACCEPTCONN
BOOL
Socket überwacht.
FALSE, es sei denn, es wurde ein WSPListen ausgeführt.
SO_BROADCAST
BOOL
Socket ist für die Übertragung und den Empfang von Übertragungsnachrichten konfiguriert.
FALSE
SO_DEBUG
BOOL
Debugging ist aktiviert.
FALSE
(i)
SO_DONTLINGER
BOOL
Falls „true“ ist die Option SO_LINGER deaktiviert.
TRUE
SO_DONTROUTE
BOOL
Routing ist deaktiviert. Erfolgreich, wird jedoch bei AF_INET Sockets ignoriert; schlägt bei AF_INET6 Sockets mit WSAENOPROTOOPT fehl. Wird für ATM-Sockets nicht unterstützt (führt zu einem Fehler).
FALSE
(i)
SO_ERROR
INT
Ruft den Fehlerstatus ab und löscht ihn.
0
SO_GROUP_ID
GROUP
Reserviert.
NULL
Nur Abruf
SO_GROUP_PRIORITY
INT
Reserviert.
0
BOOL
Keepalives werden gesendet. Wird für ATM-Sockets nicht unterstützt (führt zu einem Fehler).
FALSE
(i)
SO_LINGER
Struktur verweilt
Gibt die aktuellen Verweiloptionen zurück.
l_onoff is 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.
Abhängig von der Implementierung
Nur Abruf
SO_OOBINLINE
BOOL
OOB-Daten werden im normalen Datenstrom empfangen.
FALSE
SO_PROTOCOL_INFOW
structure WSAPROTOCOL_INFO
Beschreibung der Protokollinformationen für das Protokoll, das an diesen Socket gebunden ist.
Protokollabhängig
Nur Abruf
SO_RCVBUF
INT
Der Gesamtspeicher pro Socketpuffer, der für das Empfangen reserviert ist. Dieser ist nicht mit SO_MAX_MSG_SIZE verbunden und entspricht nicht unbedingt der Größe des TCP-Empfangsfensters.
Abhängig von der Implementierung
(i)
SO_REUSEADDR
BOOL
Die Adresse, an die dieser Socket gebunden ist, kann von anderen verwendet werden. Gilt nicht für ATM-Sockets.
FALSE
SO_SNDBUF
INT
Der Gesamtspeicher pro Socketpuffer, der für das Senden reserviert ist. Dieser ist nicht mit SO_MAX_MSG_SIZE verbunden und entspricht nicht unbedingt der Größe eines TCP-Sendefensters.
Abhängig von der Implementierung
(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.
Abhängig von der Implementierung
TCP_NODELAY
BOOL
Deaktiviert den Nagle-Algorithmus für Sammelsendungen.
Abhängig von der Implementierung
(i) Ein Dienstanbieter kann diese Option auf WSPSetSockOpt im Hintergrund 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.
Zugehörige Themen