+/*
+static int my_poll (struct pollfd *fds, nfds_t nfds, struct timeval *timeout) {
+
+ int ret, rem=-1;
+ struct timeval start, stop;
+
+
+ if ( timeout!=NULL ) {
+ if ( timeout->tv_sec<0 || timeout->tv_usec<0 ) rem=0;
+ else rem=timeout->tv_sec*1000+timeout->tv_usec/1000;
+ }
+
+ gettimeofday(&start, NULL);
+ ret=poll(fds, nfds, rem);
+ gettimeofday(&stop, NULL);
+
+ if ( timeout!=NULL ) {
+ rem-=(stop.tv_sec-start.tv_sec)*1000+(stop.tv_usec-start.tv_usec)/1000;
+ if ( ret<=0 || rem<0 ) rem=0;
+ printf("tv_sec = %i, tv_usec = %i\n", start.tv_sec, start.tv_usec);
+ printf("tv_sec = %i, tv_usec = %i\n", stop.tv_sec, stop.tv_usec);
+ printf("rem = %i\n", rem);
+ timeout->tv_sec=rem/1000;
+ timeout->tv_usec=(rem%1000)*1000;
+ }
+
+
+ return ret;
+
+}
+*/
+