Hi,
> Looking at the trace I have
> http://www.ethereal.com/lists/ethereal-users/200506/msg00263.html
> it seems like the context defenition is set up with two items
> one to ACSE
> and the second one pointing out the CMIP protocol. Further
> looking into the code of ACSE
> it does keep track of the Presentation context and uses that
> for certain SES PDU types(Data).
The ACSE dissector seems to keep track of the ACSE OIDS not the
presentation context OIDs (it doesn't have access to that information).
> It would be no problem to register the CMIP dissector with
> two OID's if thet's the right thing to do and
> let the PRES dissector keep track of the presentation
> context's and call the apropriate OID dissector.
It would do no harm to register the dissector on the AC, but I don't think
it should be called.
The AC indicates to the responder what sort protocol it is proposing (e.g.
P1) whilst the PCs
indicate how the individual operations will be encoded (e.g. ROS over RTS,
RTS) - which tells you how to dissect them.
I do the following in my P1 dissector (which uses two abstract syntaxes in
addition to ACSE):
/* provide a nice name for the P1 AC */
register_ber_oid_name("2.6.0.1.6", "id-ac-mts-transfer");
/* we register RTSE with BER (which is used by ACSE) for the AS */
if(handle = find_dissector("rtse")) {
register_ber_oid_dissector_handle("2.6.0.2.12", handle, 0 ,
"id-as-mta-rtse");
register_ber_oid_dissector_handle("2.6.0.2.7", handle, 0 ,
"id-as-mtse");
}
I think there should also be a registration/dispatch for ACSE on the acse
presentation context (in the acse handoff),
but I haven't investigated that yet.
This can lead to multiple dissectors being registered on the same PC (OID) -
so I now have
register_rtse_oid_dissector() and register_ros_oid_dissector() to enable the
dissection of each wrapper based on the same PC.
> I'm not that familiar with the ITU-T X/ISO protocols so I
> don't know if ther'd be any pitfalls with this method.
It's a while since I was looking at this level, but I think dispatching of
the presentation context is correct.
Graeme