wireshark/epan/dissectors/asn1/rtse/rtse.cnf

187 lines
5.4 KiB
INI

#.EXPORTS
RTORQapdu
RTOACapdu
RTORJapdu
RTABapdu
#.NO_EMIT ONLY_VALS
RTSE-apdus
#.FN_BODY RTORJapdu/userDataRJ
struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE*)actx->private_data;
const char *oid = NULL;
switch(app_proto) {
case 1: /* mts-transfer-protocol-1984 */
oid = "applicationProtocol.1";
break;
case 12: /* mts-transfer-protocol */
oid = "applicationProtocol.12";
break;
default:
if(session && session->pres_ctx_id)
oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id);
break;
}
if(!oid) /* XXX: problem here is we haven't decoded the applicationProtocol yet - so we make assumptions! */
oid = "applicationProtocol.12";
if(oid) {
if(session != NULL)
session->ros_op = (ROS_OP_BIND | ROS_OP_ERROR);
offset = call_rtse_oid_callback(oid, tvb, offset, actx->pinfo, top_tree ? top_tree : tree, session);
}
#.FN_BODY RTABapdu/userdataAB
/*XXX not implemented yet */
#.FN_BODY RTORQapdu
struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE*)actx->private_data;
if(session != NULL)
session->ros_op = (ROS_OP_BIND | ROS_OP_ARGUMENT);
open_request=TRUE;
%(DEFAULT_BODY)s
open_request=FALSE;
#.FN_BODY RTOACapdu
struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE*)actx->private_data;
if(session != NULL)
session->ros_op = (ROS_OP_BIND | ROS_OP_RESULT);
%(DEFAULT_BODY)s
#.FN_BODY ConnectionData/open
struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE*)actx->private_data;
const char *oid = NULL;
switch(app_proto) {
case 1: /* mts-transfer-protocol-1984 */
oid = "applicationProtocol.1";
break;
case 12: /* mts-transfer-protocol */
oid = "applicationProtocol.12";
break;
default:
if(session && session->pres_ctx_id)
oid = find_oid_by_pres_ctx_id(actx->pinfo, session->pres_ctx_id);
break;
}
if(!oid) /* XXX: problem here is we haven't decoded the applicationProtocol yet - so we make assumptions! */
oid = "applicationProtocol.12";
if(oid) {
offset = call_rtse_oid_callback(oid, tvb, offset, actx->pinfo, top_tree ? top_tree : tree, session);
}
/* else XXX: need to flag we can't find the presentation context */
#.FN_BODY RTTRapdu
tvbuff_t *next_tvb = NULL;
struct SESSION_DATA_STRUCTURE* session = (struct SESSION_DATA_STRUCTURE*)actx->private_data;
offset = dissect_ber_octet_string(FALSE, actx, tree, tvb, offset, hf_index, &next_tvb);
if(next_tvb) {
/* XXX: we should check is this is an EXTERNAL first */
/* ROS won't do this for us */
if(session)
session->ros_op = (ROS_OP_INVOKE | ROS_OP_ARGUMENT);
offset = dissect_ber_external_type(FALSE, tree, next_tvb, 0, actx, -1, call_rtse_external_type_callback);
}
#.FN_BODY RTORQapdu/applicationProtocol
offset = dissect_ber_integer(TRUE, actx, tree, tvb, offset, hf_index, &app_proto);
#.FN_BODY SessionConnectionIdentifier
if(open_request){
col_append_str(actx->pinfo->cinfo, COL_INFO, "Recover");
}
%(DEFAULT_BODY)s
#.END
#.FN_BODY CallingSSuserReference/t61String VAL_PTR=&string
tvbuff_t *string = NULL;
%(DEFAULT_BODY)s
if(open_request && string)
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", tvb_get_string_enc(actx->pinfo->pool, string, 0,
tvb_reported_length(string), ENC_T61));
#.TYPE_ATTR
CallingSSuserReference/t61String DISPLAY = BASE_NONE
#.FN_PARS CommonReference
VAL_PTR=&string
#.FN_BODY CommonReference
tvbuff_t *string = NULL;
%(DEFAULT_BODY)s
if(open_request && string)
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", tvb_format_text(actx->pinfo->pool, string, 0, tvb_reported_length(string)));
#.END
#.FN_BODY CallingSSuserReference/octetString VAL_PTR=&string
tvbuff_t *string = NULL;
%(DEFAULT_BODY)s
if(open_request && string)
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " %%s", tvb_format_text(actx->pinfo->pool, string, 0, tvb_reported_length(string)));
#.FN_BODY RTTPapdu VAL_PTR=&priority
int priority = -1;
col_append_str(actx->pinfo->cinfo, COL_INFO, "Turn-Please");
%(DEFAULT_BODY)s
if(priority != -1)
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (%%d)", priority);
#.FN_BODY RTORJapdu
col_append_str(actx->pinfo->cinfo, COL_INFO, "Refuse");
%(DEFAULT_BODY)s
#.FN_PARS RefuseReason
VAL_PTR=&reason
#.FN_BODY RefuseReason
int reason = -1;
%(DEFAULT_BODY)s
if(reason != -1)
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (%%s)", val_to_str(reason, rtse_RefuseReason_vals, "reason(%%d)"));
#.FN_BODY RTABapdu
col_append_str(actx->pinfo->cinfo, COL_INFO, "Abort");
%(DEFAULT_BODY)s
#.FN_PARS AbortReason
VAL_PTR=&reason
#.FN_BODY AbortReason
int reason = -1;
%(DEFAULT_BODY)s
if(reason != -1)
col_append_fstr(actx->pinfo->cinfo, COL_INFO, " (%%s)", val_to_str(reason, rtse_AbortReason_vals, "reason(%%d)"));
#.TYPE_ATTR
AdditionalReferenceInformation DISPLAY = BASE_NONE
#.END