Upcoming Features

Gog

GogExtra's On=...;

GogExtra must have an On=...; avp to tell which gop type the avps are to be copied from

GogIdleTimeout

A Gog should be released after a while if its Gops do not get any more pdus assigned to them.

GogAbsoluteTimeout

A Gop should autorelease itself after a certain time has passed since it has been created.

merge Gogs with common keys

Gop

FullStop={TRUE|FALSE}

Attribute to GopDef, GopStop, and GopExtra to indicate that the key should be removed once the GopStop arrives, that way no more GopKey matching Pdus will be assigned to the Gop.

Pre-Started Gops

(./) Whenever a Pdu matches a GopKey of a Gop that has not being given an explicit GopStart, And the key exists already as a GogKey, that Pdu should become part of an auto-started Gop that automagically belongs to the Gog that has that GogKey.

TO DO: These Gops should have the lifetime of the Gog they belong to, not infinite.

Transform

Transform's Mode=Map;

A Mapped version of transforms should exist where a fixed set of matching keys maps using a hash a fixed set of AVPLs to either be Inserted or Replace the matching set. This will save a lot of time for very long sequences of transformations.

Transformation AVP Operations

Create a set of operations for the insert/replace part of a Transform.

Internal Features

avp_subscribe, avp_unsubscribe

internal optimization to save space and accelerate avpl ops. It eases memory management as well.

avpl to string to use a static buffer

Memory management

Known Bugs

Those that are there to stay

There cannot be two identical AVPs in the same AVPL

This is not really a BUG. It is a deliberate choice taken in the very beginning in order to avoid AVPL match operations becoming too complex. This might become obnoxious. But that's how it is. If it is a problem not having more than one copy, your configuration must workaround it.

Example Workaround: add port=0; when both ports are equal and only one port; is inserted into the AVPL.

# transformations stop at the fisrt good match
# do nothing (insert an empty avpl) if both ports are defined  
Action=Transform; Name=Fix_same_port; Mode=Insert; Match=Strict; port; port;
# insert a port=0; so that both ports are defined  
Action=Transform; Name=Fix_same_port; Mode=Insert; Match=Every; port; .port=0;

Action=PduTransform; For=xxx_pdu; Name=Fix_same_port;

Those that have to go

The Gog Mechanism does not get propperly reinitialized

It works OK at the first run it doesn't in the following ones.

Workarround: Restart wireshark.

(./) Fix: fixed in svn rev 13318.

Some AVPL operations make wireshark crash when the operand avpl is empty

In some ocasions an operation on an empty AVPL might cause wireshark to crash.

Workarround: Avoid empty AVPLs as operations the configuration. (Insert an empty AVPL works OK)

Fix: We need to be able to reproduce the condition (used config & capture file).

Some incorrect/incomplete GoG configurations cause wireshark to crash

It works fine if the config is correct. But in some cases You'll get a crash report instead of an error message.

Workarround: None Known. You got to fix that config anyway, don't you?

(./) Fix: fixed in svn rev 13318

Gops with no GopStart might be or not be created

After reinitialization Gops with no GopStart might be or not be created, this happens in an apparently random fashion (some get created some don't, not always the same though)

Workarround: None Known.

Fix: none yet.

Mate/Discussion (last edited 2008-04-12 17:50:11 by localhost)