|   | 1 |  initial version  | 
How many times does tcp_dissect_pdus get called in this case?
As many times as is necessary.
Your get_message_len routine should be prepared to be called an arbitrary number of times during the process of reassembling a packet, with arbitrary tvbuff and offset arguments. It must not maintain any state.