SCM Repository
[smlnj] / sml / trunk / src / runtime / c-libs / smlnj-sockets / ctlRCVBUF.c |
View of /sml/trunk/src/runtime/c-libs/smlnj-sockets/ctlRCVBUF.c
Parent Directory
|
Revision Log
Revision 1489 -
(download)
(as text)
(annotate)
Tue May 11 19:31:06 2004 UTC (15 years, 7 months ago) by mblume
File size: 902 byte(s)
Tue May 11 19:31:06 2004 UTC (15 years, 7 months ago) by mblume
File size: 902 byte(s)
added missing socket-functionality for win32
/* ctlRCVBUF.c * * COPYRIGHT (c) 1995 AT&T Bell Laboratories. */ #include "sockets-osdep.h" #include INCLUDE_SOCKET_H #include "ml-base.h" #include "ml-values.h" #include "ml-objects.h" #include "ml-c.h" #include "cfun-proto-list.h" #include "sock-util.h" /* _ml_Sock_ctlRCVBUF : (sock * int option) -> int */ ml_val_t _ml_Sock_ctlRCVBUF (ml_state_t *msp, ml_val_t arg) { int sock = REC_SELINT(arg, 0); ml_val_t ctl = REC_SEL(arg, 1); int sz, sts; if (ctl == OPTION_NONE) { int optSz = sizeof(int); sts = getsockopt (sock, SOL_SOCKET, SO_RCVBUF, (sockoptval_t)&sz, &optSz); ASSERT((sts < 0) || (optSz == sizeof(int))); } else { sz = INT_MLtoC(OPTION_get(ctl)); sts = setsockopt (sock, SOL_SOCKET, SO_RCVBUF, (sockoptval_t)&sz, sizeof(int)); } if (sts < 0) return RAISE_SYSERR(msp, sts); else return INT_CtoML(sz); } /* end of _ml_Sock_ctlRCVBUF */
root@smlnj-gforge.cs.uchicago.edu | ViewVC Help |
Powered by ViewVC 1.0.0 |