Hi Sven, hi all,
On Sun, Jun 12, 2011 at 11:52:00AM +0200, Sven Eckelmann wrote:
Hi,
just looked a little bit closer at your tt_query implementation and was reminded that we had a small discussion in IRC some weeks ago.
<ecsv> can those flags be mixed? <ordex> mixed? in which way? <ecsv> request | table -> still a valid package <ecsv> sry, packet <ordex> yes it is, because it means "I'm requesting a full table" <ordex> all the combinations are valid
This sounds wrong when I look at the tt_query packet. There we have a tt_data field which can used used exclusive by either TT_REQUEST (x)or TT_RESPONSE. Therefore, it is not possible to use both flags at the same time. Can you please explain how this is handled or otherwise change it so that only one bit in flags is used to decide if it is an response or a request.
At the beginning we had one bit only with this meaning:
0 => TT_REQUEST 1 => TT_RESPONSE
But then we had a disussion about: 1) what will we do if we want to add more packet types in the future? 2) is it correct or not to use 0x0 as flag?
Regarding 1) I thought that using a "two bits flag" could help in reserving two configurations more for the future (0x0 and 0x3).
Regarding 2) we switched to TT_REQ = 0x01 and TT_RESP = 0x2.
In my opinion, leaving tt_req = 0x0 and tt_resp = 0x1 would be better, but it seemed to be not so correct.
I hope my explanation is clear. Morover I think that someone should explain me if using 0x0 as a meaningful flag is correct or not :P (I know that field & 0x0 will always be false :P)
Maybe this was the result of the discussion with Marek about the roaming stuff
- but i don't think that it applies here.
No, this is not related to the roaming stuff.
Regards,