ISslConnectionBase.cs 678 B

12345678910111213141516171819202122232425
  1. using Ryujinx.HLE.HOS.Services.Sockets.Bsd;
  2. using System;
  3. using System.Net.Sockets;
  4. namespace Ryujinx.HLE.HOS.Services.Ssl.SslService
  5. {
  6. interface ISslConnectionBase: IDisposable
  7. {
  8. int SocketFd { get; }
  9. ISocket Socket { get; }
  10. ResultCode Handshake(string hostName);
  11. ResultCode GetServerCertificate(string hostname, Span<byte> certificates, out uint storageSize, out uint certificateCount);
  12. ResultCode Write(out int writtenCount, ReadOnlyMemory<byte> buffer);
  13. ResultCode Read(out int readCount, Memory<byte> buffer);
  14. ResultCode Peek(out int peekCount, Memory<byte> buffer);
  15. int Pending();
  16. }
  17. }