2020-02-04 00:49:27 +00:00
|
|
|
#pragma warning disable CS1591
|
|
|
|
#pragma warning disable SA1600
|
|
|
|
|
2019-01-13 20:02:23 +00:00
|
|
|
using System;
|
2019-07-07 19:03:26 +00:00
|
|
|
using System.Net;
|
2018-12-27 23:27:57 +00:00
|
|
|
using System.Threading;
|
|
|
|
using System.Threading.Tasks;
|
|
|
|
|
|
|
|
namespace MediaBrowser.Model.Net
|
|
|
|
{
|
|
|
|
/// <summary>
|
|
|
|
/// Provides a common interface across platforms for UDP sockets used by this SSDP implementation.
|
|
|
|
/// </summary>
|
|
|
|
public interface ISocket : IDisposable
|
|
|
|
{
|
2019-07-07 19:03:26 +00:00
|
|
|
IPAddress LocalIPAddress { get; }
|
2018-12-27 23:27:57 +00:00
|
|
|
|
|
|
|
Task<SocketReceiveResult> ReceiveAsync(byte[] buffer, int offset, int count, CancellationToken cancellationToken);
|
|
|
|
|
|
|
|
IAsyncResult BeginReceive(byte[] buffer, int offset, int count, AsyncCallback callback);
|
|
|
|
SocketReceiveResult EndReceive(IAsyncResult result);
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
/// Sends a UDP message to a particular end point (uni or multicast).
|
|
|
|
/// </summary>
|
2019-07-07 19:03:26 +00:00
|
|
|
Task SendToAsync(byte[] buffer, int offset, int bytes, IPEndPoint endPoint, CancellationToken cancellationToken);
|
2018-12-27 23:27:57 +00:00
|
|
|
}
|
2019-01-13 19:31:15 +00:00
|
|
|
}
|