static int settimeout(int socket, int option, int timeout) { #if defined(_WIN32) return setintsockopt(socket, SOL_SOCKET, option, timeout); #else struct timeval value; milliseconds_to_timeval(timeout, &value); return setsockopt(socket, SOL_SOCKET, option, (void*)&value, sizeof(value)); #endif }
static int settimeout(int socket, int option, int timeout) { #if defined(_WIN32) return setintsockopt(socket, SOL_SOCKET, option, timeout); #else int seconds; struct timeval value; seconds = timeout / 1000; if(seconds > 0) timeout-=(seconds*1000); value.tv_sec = seconds; value.tv_usec = timeout * 1000; return setsockopt(socket, SOL_SOCKET, option, (void*)&value, sizeof(value)); #endif }
/* * Class: es_tid_rocksaw_net_RawSocket * Method: __setReceiveBufferSize * Signature: (II)I */ JNIEXPORT jint JNICALL Java_es_tid_rocksaw_net_RawSocket__1_1setReceiveBufferSize (JNIEnv *env, jclass cls, jint socket, jint size) { return setintsockopt(socket, SOL_SOCKET, SO_RCVBUF, size); }
/* * Class: es_tid_rocksaw_net_RawSocket * Method: __setIPHeaderInclude * Signature: (IZ)I */ JNIEXPORT jint JNICALL Java_es_tid_rocksaw_net_RawSocket__1_1setIPHeaderInclude (JNIEnv *env, jclass cls, jint socket, jboolean on) { return setintsockopt(socket, IPPROTO_IP, IP_HDRINCL, on); }
/* * Class: com_savarese_rocksaw_net_RawSocket * Method: __setSendBufferSize * Signature: (II)I */ JNIEXPORT jint JNICALL Java_com_savarese_rocksaw_net_RawSocket__1_1setSendBufferSize (JNIEnv *env, jclass cls, jint socket, jint size) { return setintsockopt(socket, SOL_SOCKET, SO_SNDBUF, size); }