Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ GetSockOpt() [2/2]

static unsafe SocketError System.Net.Sockets.SocketPal.GetSockOpt ( SafeSocketHandle handle,
SocketOptionLevel optionLevel,
SocketOptionName optionName,
out int optionValue )
inlinestatic

Definition at line 579 of file SocketPal.cs.

580 {
581 if (optionLevel == SocketOptionLevel.Tcp && (optionName == SocketOptionName.TypeOfService || optionName == SocketOptionName.BlockSource) && IOControlKeepAlive.IsNeeded)
582 {
583 optionValue = IOControlKeepAlive.Get(handle, optionName);
584 return SocketError.Success;
585 }
586 int optionLength = 4;
587 int num = 0;
588 SocketError socketError = global::Interop.Winsock.getsockopt(handle, optionLevel, optionName, (byte*)(&num), ref optionLength);
589 optionValue = num;
590 if (socketError != SocketError.SocketError)
591 {
592 return SocketError.Success;
593 }
594 return GetLastSocketError();
595 }
static SocketError GetLastSocketError()
Definition SocketPal.cs:22

References System.Net.Sockets.IOControlKeepAlive.Get(), System.Net.Sockets.SocketPal.GetLastSocketError(), System.handle, and System.Net.Sockets.IOControlKeepAlive.IsNeeded.

Referenced by System.Net.Sockets.Socket.GetSocketOption(), System.Net.Sockets.Socket.GetSocketOption(), System.Net.Sockets.Socket.GetSocketOption(), and System.Net.Sockets.Socket.LoadSocketTypeFromHandle().