I need some help and advice on display filters because I’m new to the codebase. 
I’m trying to add the capability where a ‘http contains blah’ filter searches 
uncompressed HTTP content. I’m adding because we use ‘Frame contains’ and ‘http 
contains’ in our workflow to find items of interest in the traffic. There are 
items in the compressed data that we would like to find using the contains 
operator. 

I see how the ‘http contains’ filter works and how HTTP decompression works 
however I cannot figure out how to add the decompressed data to the link list 
used for display filtering. 

I believe it will work if the decompressed buffer was added to the list_a link 
list in dfvm.c. The list_a link list only has the raw HTTP packet data and the 
next pointer is NULL when protocol ID is http. It would seem to work if the 
uncompressed data pointer was added to the end of the list_a link list in the 
read_tree method. 

Thoughts/guidance?

static gboolean
any_test(dfilter_t *df, FvalueCmpFunc cmp, int reg1, int reg2)
{
        GList   *list_a, *list_b;

        list_a = df->registers[reg1];

        while (list_a) {
                list_b = df->registers[reg2];
                while (list_b) {
                        if (cmp((fvalue_t *)list_a->data, (fvalue_t 
*)list_b->data)) {
                                return TRUE;
                        }
                        list_b = g_list_next(list_b);
                }
                list_a = g_list_next(list_a);
        }
        return FALSE;
}
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <[email protected]>
Archives:    https://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://wireshark.org/mailman/options/wireshark-dev
             mailto:[email protected]?subject=unsubscribe

Reply via email to