CrossroadsIO.Interop.SocketProxy.GetSocketOption C# (CSharp) Method

GetSocketOption() public method

public GetSocketOption ( int option, byte &value ) : int
option int
value byte
return int
        public int GetSocketOption(int option, out byte[] value)
        {
            using (var optionLength = new DisposableIntPtr(IntPtr.Size))
            using (var optionValue = new DisposableIntPtr(MaxBinaryOptionSize))
            {
                Marshal.WriteInt32(optionLength, MaxBinaryOptionSize);

                int rc = RetryIfInterrupted(() => LibXs.xs_getsockopt(SocketHandle, option, optionValue, optionLength));

                value = new byte[Marshal.ReadInt32(optionLength)];
                Marshal.Copy(optionValue, value, 0, value.Length);

                return rc;
            }
        }

Same methods

SocketProxy::GetSocketOption ( int option, int &value ) : int
SocketProxy::GetSocketOption ( int option, long &value ) : int
SocketProxy::GetSocketOption ( int option, ulong &value ) : int