actually only one packet is managed at a time,
then a packetin+packetout buffer area has been created for IPv6 packets.
Upper layers can then access this data by means of pointer,
avoiding further allocations on the stack.
Obviously, packetin is read-only (eg. upper layers can only read it)