Ethereal-dev: [Ethereal-dev] Some problems with dissect_rpc_opaque_data

Note: This archive is from the project's previous web site, ethereal.com. This list is no longer active.

From: Richard Sharpe <rsharpe@xxxxxxxxxxxxxxxxx>
Date: Tue, 20 May 2003 21:05:27 -0700 (PDT)
Hi,

I wonder if we can simplify the signature for dissect_rpc_opaque_data.

Here is its signature:

int
dissect_rpc_opaque_data(tvbuff_t *tvb, int offset,
    proto_tree *tree,
    packet_info *pinfo,
    int hfindex,
    gboolean fixed_length, guint32 length,
    gboolean string_data, char **string_buffer_ret,
    dissect_function_t *dissect_it)

Now, it seems that fixed_len is redundent, since of length == 0, then it 
is variable length, and if length > 0, fixed.

Secondly, string_data is also redundent, since if string_data_ret is not 
NULL, then the caller wants the string data back. 

There is however, an issue, since there is no way to pass back the actual 
length of the string or whatever is returned.

It seems as if dissect_rpc_opaque_data is doing too much.

Does anyone object if I simplify it?

Regards
-----
Richard Sharpe, rsharpe[at]ns.aus.com, rsharpe[at]samba.org, 
sharpe[at]ethereal.com, http://www.richardsharpe.com