BOOLGetSockOpt (IntnOptionName,Void *LpOptionValue,Int *LpOptionLen,IntnLevelSOL_SOCKET=);
Rückgabewert
Ungleich NULL, wenn die Funktion erfolgreich ist; Ansonsten können 0 und einem bestimmten Fehlercode durch einen Aufruf der GetLastErrorabgerufen werden. Wenn eine Option mit SetSockOptnie festgelegt wurde, gibt GetSockOpt den Standardwert für die Option. Wenden Sie die folgenden Fehler auf dieser Member-Funktion:
Parameter
nOptionName
Die Socket-Option, für die der Wert abgerufen werden soll.
lpOptionValue
Ein Zeiger auf den Puffer, in dem der Wert für die angeforderte Option zurückgegeben werden soll. Die ausgewählte Option zugeordnete Wert wird in den Puffer LpOptionValuezurückgegeben. Die Ganzzahl, auf die LpOptionLen sollte ursprünglich die Größe dieses Puffers in Byte enthalten; und bei Rückgabe wird es auf die Größe des zurückgegebenen Werts festgelegt werden. SO_LINGERwerden dies die Größe des eine Struktur LINGER ; für alle anderen Optionen werden die Größe einer BOOL oder Int, je nach Option. Finden Sie in der Liste der Optionen und ihre Größen im Abschnitt Hinweise.
lpOptionLen
Ein Zeiger auf die Größe des Puffers in Bytes lpOptionValue.
nLevel
Die Höhe, an der die Option definiert ist; die einzigen unterstützten Ebenen sind SOL_SOCKET und IPPROTO_TCP.
Bemerkungen
Rufen Sie diese Memberfunktion um eine Socket-Option abzurufen. GetSockOpt Ruft den aktuellen Wert für eine Socket-Option ein Socket jeglicher Art, in jedem Zustand zugeordnet und speichert das Ergebnis in LpOptionValue. Optionen beeinflussen Socketoperationen, wie das routing von Paketen, Out-of-Band Datenübertragung, usw.
Die folgenden Optionen sind für GetSockOptunterstützt. Der Typ gibt den Typ der Daten durch LpOptionValuebehoben. Die TCP_NODELAY -Option verwendet Ebene IPPROTO_TCP; alle anderen Optionen verwenden Ebene SOL_SOCKET.
| Wert | Typ | Bedeutung |
| SO_ACCEPTCONN | BOOL | Socket überwacht. |
| SO_BROADCAST | BOOL | Socket ist für die Übertragung von broadcast-Nachrichten konfiguriert. |
| SO_DEBUG | BOOL | Debuggen ist aktiviert. |
| SO_DONTLINGER | BOOL | Wenn true, ist die SO_LINGER -Option deaktiviert. |
| SO_DONTROUTE | BOOL | Routing deaktiviert ist. |
| SO_ERROR | int | Fehler-Status abrufen und löschen. |
| SO_KEEPALIVE | BOOL | -Keep-Alives werden verschickt. |
| SO_LINGER | struct LINGER | Gibt die aktuellen Optionen linger. |
| SO_OOBINLINE | BOOL | Out-of-Band-Daten werden in den normalen Datenstrom empfangen. |
| SO_RCVBUF | int | Puffergröße für erhält. |
| SO_REUSEADDR | BOOL | Der Socket kann an eine Adresse gebunden werden, die bereits in Gebrauch ist. |
| SO_SNDBUF | int | Puffergröße für sendet. |
| SO_TYPE | int | Der Typ des Socket (z. B. SOCK_STREAM). |
| TCP_NODELAY | BOOL | Deaktiviert den Nagle-Algorithmus für senden Koaleszenz. |
Berkeley Software Distribution (BSD) Optionen für GetSockOpt nicht unterstützt werden:
| Wert | Typ | Bedeutung |
| SO_RCVLOWAT | int | Niedrigwasser Zeichen empfangen. |
| SO_RCVTIMEO | int | Timeout erhalten. |
| SO_SNDLOWAT | int | Untergrenzenmarkierung senden. |
| SO_SNDTIMEO | int | Senden Sie timeout. |
| IP_OPTIONS | Erhalten Sie Optionen im IP-header. | |
| TCP_MAXSEG | int | Erhalten Sie maximale TCP-Segmentgröße. |
Aufruf von GetSockOpt mit eine nicht unterstützte Option führt zu WSAENOPROTOOPT Rückgabe von GetLastError den Fehlercode.
CAsyncSocket Übersicht |nbsp; Member der Klasse | Hierarchiediagramm
Siehe auch&Nbsp;CAsyncSocket::SetSockOpt