public SocketProxy(IntPtr socketHandle) { if (socketHandle == IntPtr.Zero) { throw new ArgumentException("Socket handle must be a valid pointer.", "socketHandle"); } SocketHandle = socketHandle; _message = Marshal.AllocHGlobal(LibXs.XsMsgTSize); }