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

◆ GetSocketOption() [1/3]

object? System.Net.Sockets.Socket.GetSocketOption ( SocketOptionLevel optionLevel,
SocketOptionName optionName )
inline

Definition at line 2235 of file Socket.cs.

2236 {
2238 if (optionLevel == SocketOptionLevel.Socket && optionName == SocketOptionName.Linger)
2239 {
2240 return GetLingerOpt();
2241 }
2242 if (optionLevel == SocketOptionLevel.IP && (optionName == SocketOptionName.AddMembership || optionName == SocketOptionName.DropMembership))
2243 {
2245 }
2246 if (optionLevel == SocketOptionLevel.IPv6 && (optionName == SocketOptionName.AddMembership || optionName == SocketOptionName.DropMembership))
2247 {
2249 }
2250 int optionValue = 0;
2251 SocketError sockOpt = SocketPal.GetSockOpt(_handle, optionLevel, optionName, out optionValue);
2252 if (System.Net.NetEventSource.Log.IsEnabled())
2253 {
2254 System.Net.NetEventSource.Info(this, $"GetSockOpt returns errorCode:{sockOpt}", "GetSocketOption");
2255 }
2256 if (sockOpt != 0)
2257 {
2259 }
2260 return optionValue;
2261 }
static readonly System.Net.NetEventSource Log
static void Info(object thisOrContextObject, FormattableString formattableString=null, [CallerMemberName] string memberName=null)
LingerOption GetLingerOpt()
Definition Socket.cs:3547
SafeSocketHandle _handle
Definition Socket.cs:533
void UpdateStatusAfterSocketErrorAndThrowException(SocketError error, [CallerMemberName] string callerName=null)
Definition Socket.cs:3715
IPv6MulticastOption GetIPv6MulticastOpt(SocketOptionName optionName)
Definition Socket.cs:3577
MulticastOption GetMulticastOpt(SocketOptionName optionName)
Definition Socket.cs:3562

References System.Net.Sockets.Socket._handle, System.Net.Sockets.Socket.GetIPv6MulticastOpt(), System.Net.Sockets.Socket.GetLingerOpt(), System.Net.Sockets.Socket.GetMulticastOpt(), System.Net.Sockets.SocketPal.GetSockOpt(), System.Net.NetEventSource.Info(), System.Net.NetEventSource.Log, System.Net.Sockets.Socket.ThrowIfDisposed(), and System.Net.Sockets.Socket.UpdateStatusAfterSocketErrorAndThrowException().