FIFO queue implementation in C