Yes the data is null terminated. I am able to read the entire data, irrespective of its length. However I am unable to take any action on other incoming data, since the address of the node of the global linked list gets lost after reading. So, instead of being able to read incoming data indefinitely, my read thread can only read once(when incoming data is > 256 bytes). please help...