> That is hard for me, to decide. My main motivation was, that It looks > a bit odd to me, that we first assemble a complete packet for network. > But, one step before sending it out, we have to parse it again, to get > some values.
The packet has to be parsed because the values in the packet are authoritative. INSTEAD, with your proposal those values are now cached in a seperate place, and if ever high-level code change forgets to keep them syncronized, there will be problems, but only in a few drivers. Rare-use caches are dangerous design. I bet you it takes less than 5 years before someone developer forgets to keep these variables syncronized.
