WFP callout problem


Im currently doing a small projekt trying to implement a WFP TCP traffic shaping driver for Vista.
Im using a token bucket architecture. I have registered a callout on the FWPM_LAYER_INBOUND_TRANSPORT_V4 layer and a FWPM_CONDITION_IP_PROTOCOL filter on protocol number 6 (ie TCP). The callout uses OOB injection from a worker thread.
By default i permit packages until the token bucket is empty. When empty i clone the packets and place them in a linked list which acts as a buffer, any overflow is dropped ie. action block. The worker thread injects the buffer packages when tokens become available.

Now im experiencing a very weird problem. When the Callout is active ie. receiving incomming traffic, all outgoing UDP traffic is blocked until incomming traffic stops. Outgoing TCP traffic is not affected.

Does anyone have any idea to what the problem can be??? cause im lost.