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

◆ ReceiveMessageFrom() [1/2]

int System.Net.Sockets.Socket.ReceiveMessageFrom ( byte[] buffer,
int offset,
int size,
ref SocketFlags socketFlags,
ref EndPoint remoteEP,
out IPPacketInformation ipPacketInformation )
inline

Definition at line 1877 of file Socket.cs.

1878 {
1882 SocketPal.CheckDualModeReceiveSupport(this);
1884 EndPoint remoteEP2 = remoteEP;
1886 System.Net.Internals.SocketAddress socketAddress2 = IPEndPointExtensions.Serialize(remoteEP2);
1889 int bytesTransferred;
1890 SocketError socketError = SocketPal.ReceiveMessageFrom(this, _handle, buffer, offset, size, ref socketFlags, socketAddress, out receiveAddress, out ipPacketInformation, out bytesTransferred);
1892 if (socketError != 0 && socketError != SocketError.MessageSize)
1893 {
1895 }
1896 else if (SocketsTelemetry.Log.IsEnabled())
1897 {
1898 SocketsTelemetry.Log.BytesReceived(bytesTransferred);
1899 if (socketError == SocketError.Success && SocketType == SocketType.Dgram)
1900 {
1901 SocketsTelemetry.Log.DatagramReceived();
1902 }
1903 }
1904 if (!socketAddress2.Equals(receiveAddress))
1905 {
1906 try
1907 {
1909 }
1910 catch
1911 {
1912 }
1913 if (_rightEndPoint == null)
1914 {
1916 }
1917 }
1918 if (System.Net.NetEventSource.Log.IsEnabled())
1919 {
1920 System.Net.NetEventSource.Error(this, socketError, "ReceiveMessageFrom");
1921 }
1922 return bytesTransferred;
1923 }
static readonly System.Net.NetEventSource Log
static void Error(object thisOrContextObject, FormattableString formattableString, [CallerMemberName] string memberName=null)
System.Net.Internals.SocketAddress Serialize(ref EndPoint remoteEP)
Definition Socket.cs:3225
void ValidateReceiveFromEndpointAndState(EndPoint remoteEndPoint, string remoteEndPointArgumentName)
Definition Socket.cs:3757
void UpdateReceiveSocketErrorForDisposed(ref SocketError socketError, int bytesTransferred)
Definition Socket.cs:3790
static void ValidateBufferArguments(byte[] buffer, int offset, int size)
Definition Socket.cs:4250
void SetReceivingPacketInformation()
Definition Socket.cs:3450
SafeSocketHandle _handle
Definition Socket.cs:533
void UpdateStatusAfterSocketErrorAndThrowException(SocketError error, [CallerMemberName] string callerName=null)
Definition Socket.cs:3715

References System.Net.Sockets.Socket._handle, System.Net.Sockets.Socket._rightEndPoint, System.buffer, System.Net.Sockets.SocketPal.CheckDualModeReceiveSupport(), System.Net.NetEventSource.Error(), System.Net.NetEventSource.Log, System.Net.Sockets.SocketsTelemetry.Log, System.offset, System.Net.Sockets.SocketPal.ReceiveMessageFrom(), System.Net.Sockets.IPEndPointExtensions.Serialize(), System.Net.Sockets.Socket.Serialize(), System.Net.Sockets.Socket.SetReceivingPacketInformation(), System.Net.Sockets.Socket.ThrowIfDisposed(), System.Net.Sockets.Socket.UpdateReceiveSocketErrorForDisposed(), System.Net.Sockets.Socket.UpdateStatusAfterSocketErrorAndThrowException(), System.Net.Sockets.Socket.ValidateBlockingMode(), System.Net.Sockets.Socket.ValidateBufferArguments(), and System.Net.Sockets.Socket.ValidateReceiveFromEndpointAndState().