src/solaris/native/java/net/bsd_close.c

Print this page




 280         errno = EBADF;                          \
 281         return -1;                              \
 282     }                                           \
 283     do {                                        \
 284         startOp(fdEntry, &self);                \
 285         ret = FUNC;                             \
 286         endOp(fdEntry, &self);                  \
 287     } while (ret == -1 && errno == EINTR);      \
 288     return ret;                                 \
 289 }
 290 
 291 int NET_Read(int s, void* buf, size_t len) {
 292     BLOCKING_IO_RETURN_INT( s, recv(s, buf, len, 0) );
 293 }
 294 
 295 int NET_ReadV(int s, const struct iovec * vector, int count) {
 296     BLOCKING_IO_RETURN_INT( s, readv(s, vector, count) );
 297 }
 298 
 299 int NET_RecvFrom(int s, void *buf, int len, unsigned int flags,
 300        struct sockaddr *from, int *fromlen) {
 301     /* casting int *fromlen -> socklen_t* Both are ints */
 302     BLOCKING_IO_RETURN_INT( s, recvfrom(s, buf, len, flags, from, (socklen_t *)fromlen) );
 303 }
 304 
 305 int NET_Send(int s, void *msg, int len, unsigned int flags) {
 306     BLOCKING_IO_RETURN_INT( s, send(s, msg, len, flags) );
 307 }
 308 
 309 int NET_WriteV(int s, const struct iovec * vector, int count) {
 310     BLOCKING_IO_RETURN_INT( s, writev(s, vector, count) );
 311 }
 312 
 313 int NET_SendTo(int s, const void *msg, int len,  unsigned  int
 314        flags, const struct sockaddr *to, int tolen) {
 315     BLOCKING_IO_RETURN_INT( s, sendto(s, msg, len, flags, to, tolen) );
 316 }
 317 
 318 int NET_Accept(int s, struct sockaddr *addr, int *addrlen) {
 319     socklen_t len = *addrlen;
 320     int error = accept(s, addr, &len);
 321     if (error != -1)
 322         *addrlen = (int)len;
 323     BLOCKING_IO_RETURN_INT( s, error );
 324 }
 325 
 326 int NET_Connect(int s, struct sockaddr *addr, int addrlen) {
 327     BLOCKING_IO_RETURN_INT( s, connect(s, addr, addrlen) );
 328 }
 329 
 330 #ifndef USE_SELECT
 331 int NET_Poll(struct pollfd *ufds, unsigned int nfds, int timeout) {
 332     BLOCKING_IO_RETURN_INT( ufds[0].fd, poll(ufds, nfds, timeout) );
 333 }
 334 #else
 335 int NET_Select(int s, fd_set *readfds, fd_set *writefds,
 336                fd_set *exceptfds, struct timeval *timeout) {
 337     BLOCKING_IO_RETURN_INT( s-1,
 338                             select(s, readfds, writefds, exceptfds, timeout) );
 339 }
 340 #endif
 341 
 342 /*
 343  * Wrapper for select(s, timeout). We are using select() on Mac OS due to Bug 7131399.




 280         errno = EBADF;                          \
 281         return -1;                              \
 282     }                                           \
 283     do {                                        \
 284         startOp(fdEntry, &self);                \
 285         ret = FUNC;                             \
 286         endOp(fdEntry, &self);                  \
 287     } while (ret == -1 && errno == EINTR);      \
 288     return ret;                                 \
 289 }
 290 
 291 int NET_Read(int s, void* buf, size_t len) {
 292     BLOCKING_IO_RETURN_INT( s, recv(s, buf, len, 0) );
 293 }
 294 
 295 int NET_ReadV(int s, const struct iovec * vector, int count) {
 296     BLOCKING_IO_RETURN_INT( s, readv(s, vector, count) );
 297 }
 298 
 299 int NET_RecvFrom(int s, void *buf, int len, unsigned int flags,
 300        struct sockaddr *from, socklen_t *fromlen) {
 301     BLOCKING_IO_RETURN_INT( s, recvfrom(s, buf, len, flags, from, fromlen) );

 302 }
 303 
 304 int NET_Send(int s, void *msg, int len, unsigned int flags) {
 305     BLOCKING_IO_RETURN_INT( s, send(s, msg, len, flags) );
 306 }
 307 
 308 int NET_WriteV(int s, const struct iovec * vector, int count) {
 309     BLOCKING_IO_RETURN_INT( s, writev(s, vector, count) );
 310 }
 311 
 312 int NET_SendTo(int s, const void *msg, int len,  unsigned  int
 313        flags, const struct sockaddr *to, int tolen) {
 314     BLOCKING_IO_RETURN_INT( s, sendto(s, msg, len, flags, to, tolen) );
 315 }
 316 
 317 int NET_Accept(int s, struct sockaddr *addr, socklen_t *addrlen) {
 318     BLOCKING_IO_RETURN_INT( s, accept(s, addr, addrlen) );




 319 }
 320 
 321 int NET_Connect(int s, struct sockaddr *addr, int addrlen) {
 322     BLOCKING_IO_RETURN_INT( s, connect(s, addr, addrlen) );
 323 }
 324 
 325 #ifndef USE_SELECT
 326 int NET_Poll(struct pollfd *ufds, unsigned int nfds, int timeout) {
 327     BLOCKING_IO_RETURN_INT( ufds[0].fd, poll(ufds, nfds, timeout) );
 328 }
 329 #else
 330 int NET_Select(int s, fd_set *readfds, fd_set *writefds,
 331                fd_set *exceptfds, struct timeval *timeout) {
 332     BLOCKING_IO_RETURN_INT( s-1,
 333                             select(s, readfds, writefds, exceptfds, timeout) );
 334 }
 335 #endif
 336 
 337 /*
 338  * Wrapper for select(s, timeout). We are using select() on Mac OS due to Bug 7131399.