#include #include "conn.h" uint8_t * conn_q_get_packet(struct conn * conn) { struct timespec timespec; clock_gettime(CLOCK_REALTIME,×pec); timespec.tv_sec++; // sem_wait(&conn->q_sem); if (sem_timedwait(&conn->q_sem,×pec)==-1){ return NULL; }; int qrpos = conn->qrpos+1; if (qrpos==conn->qsize) qrpos=0; conn->qrpos=qrpos; return conn->q[qrpos]; /* uint8_t * packet = conn->q[qrpos]+4; int len = *( (uint32_t*)(conn->q[qrpos])); conn_process_packet(conn->conn,packet,len); // free(conn->q[qrpos]); */ }