BOOL Operacji GetSockOpt ( int nOptionName, void * lpOptionValue, int * lpOptionLen, int nLevel = SOL_SOCKET );
Wartość zwracany
Niezerowa, jeśli funkcja jest skuteczne; w przeciwnym razie 0 i kod błędu mogą być pobierane przez wywołanie GetLastError. Jeśli opcja nigdy nie została ustawiona z SetSockOpt, operacji GetSockOpt zwraca domyślną wartość dla opcji. Następujące błędy stosuje się do tej funkcji członek:
Parametry
nOptionName
Opcja gniazda, dla którego wartość ma być pobierane.
lpOptionValue
Wskaźnik do buforu, w którym wartość dla żądanej opcji jest zwracane. Wartości skojarzonej z wybraną opcję jest zwracany w buforze lpOptionValue. Całkowitą wskazywanego przez lpOptionLen pierwotnie powinien zawierać rozmiar ten bufor bajtów; i zwrot, zostanie ustawiony na rozmiar wartość zwracany. Dla SO_LINGERto będzie mieć rozmiar struktury LINGER ; wszystkie inne opcje będzie rozmiar BOOL lub int, w zależności od opcji. Zapoznaj się z listą opcji i ich rozmiary w sekcji uwagi.
lpOptionLen
Wskaźnik rozmiar buforu lpOptionValue w bajtach.
nLevel
Poziom, na którym zdefiniowano opcję; tylko poziomy obsługiwane są SOL_SOCKET i IPPROTO_TCP.
Uwagi
Wywołanie tej funkcji Państwa pobrać opcji gniazda. Podczas operacji GetSockOpt pobiera bieżącą wartość dla opcji gniazda skojarzone z gniazda dowolnego typu, w każdym Państwie and stores the result w lpOptionValue. Opcje wpływają na operacje gniazda, takich jak kierowanie pakietów, transfer danych z pozapasmowego i tak dalej.
Dla operacji GetSockOptobsługiwane są poniższe opcje. Typ identyfikuje typ danych, kierowane przez lpOptionValue. Opcja TCP_NODELAY używa poziomu IPPROTO_TCP; wszystkie inne opcje Użyj poziomu SOL_SOCKET.
| Wartość | Typ | Znaczenie |
| SO_ACCEPTCONN | BOOL | Nasłuchuje gniazda. |
| SO_BROADCAST | BOOL | Gniazdo jest skonfigurowany do przesyłania wiadomości emisji. |
| SO_DEBUG | BOOL | Debugowanie jest włączone. |
| SO_DONTLINGER | BOOL | Jeśli ma wartość true, ta opcja SO_LINGER jest wyłączona. |
| SO_DONTROUTE | BOOL | Routingu jest wyłączona. |
| SO_ERROR | int | Pobierz stan błędu i wyczyść. |
| SO_KEEPALIVE | BOOL | Utrzymywanie aktywności są wysyłane. |
| SO_LINGER | struct LINGER | Zwraca bieżące opcje linger. |
| SO_OOBINLINE | BOOL | Dane z pozapasmowego jest odbierany w strumieniu danych normalne. |
| SO_RCVBUF | int | Rozmiar buforu dla odbiera. |
| SO_REUSEADDR | BOOL | Gniazda mogą być powiązane z adresu, który jest już w użyciu. |
| SO_SNDBUF | int | Rozmiar buforu dla wysyła. |
| SO_TYPE | int | Typ gniazda (na przykład SOCK_STREAM). |
| TCP_NODELAY | BOOL | Wyłącza Algorytm Nagle'a dla wysyłania on skupianiu. |
Dostępne są opcje dystrybucji oprogramowania Berkeley (BSD) nie są obsługiwane dla operacji GetSockOpt:
| Wartość | Typ | Znaczenie |
| SO_RCVLOWAT | int | Odbieranie znaku niskiej wody. |
| SO_RCVTIMEO | int | Odbieranie limit czasu. |
| SO_SNDLOWAT | int | Wyślij znaku niskiej wody. |
| SO_SNDTIMEO | int | Limit czasu wysyłania. |
| IP_OPTIONS | Pobierz opcje w nagłówku IP. | |
| TCP_MAXSEG | int | Pobierz rozmiar maksymalny segmentu TCP. |
Wywołanie operacji GetSockOpt z Nieobsługiwana opcja spowoduje błąd o kodzie WSAENOPROTOOPT zwracane z GetLastError.
Omówienie CAsyncSocket |nbsp; Klasa członków | Wykres hierarchii
Zobacz też CAsyncSocket::SetSockOpt