HRESULT Library_spot_net_native_Microsoft_SPOT_Net_SocketNative::listen___STATIC__VOID__OBJECT__I4( CLR_RT_StackFrame& stack ) { NATIVE_PROFILE_CLR_NETWORK(); TINYCLR_HEADER(); CLR_RT_HeapBlock* socket = stack.Arg0().Dereference(); CLR_INT32 handle; CLR_INT32 backlog = stack.Arg1().NumericByRef().s4; CLR_INT32 ret; FAULT_ON_NULL(socket); handle = socket[ FIELD__m_Handle ].NumericByRef().s4; ret = SOCK_listen( handle, backlog ); TINYCLR_CHECK_HRESULT(ThrowOnError( stack, ret )); TINYCLR_NOCLEANUP(); }
int listen(int s, int backlog) { struct SocketSettings *lss; register StdFileDes *fp; int rc; if ((fp=_lx_fhfromfd(s))) { switch (lss=_lx_get_socket_settings(),lss->lx_network_type) { case LX_AS225: rc = SOCK_listen(fp->lx_sock, backlog); break; case LX_AMITCP: rc = TCP_Listen(fp->lx_sock, backlog); break; default: rc = -1; break; } } else rc = -1; return rc; }