- if (ber_pvt_sb_in_use(sb)) {
-#if HAVE_FCNTL
- int flags = fcntl(ber_pvt_sb_get_desc(sb), F_GETFL);
- flags |= O_NONBLOCK;
- return fcntl(ber_pvt_sb_get_desc(sb), F_SETFL, flags);
-
-#elif defined( FIONBIO )
- /* WINSOCK requires the status to be a long */
- ioctl_t status = (nb!=0);
- return ioctl( ber_pvt_sb_get_desc(sb), FIONBIO, &status );
-#endif /* FIONBIO */
- }
- return 0;
+ if (ber_pvt_sb_in_use(sb)) {
+ return ber_pvt_socket_set_nonblock(
+ ber_pvt_sb_get_desc(sb), nb );
+ }
+ return 0;