aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDarien Spencer <cusneud@mail.com>2018-08-18 13:37:21 +0300
committerAnders Broman <a.broman58@gmail.com>2018-08-18 21:42:03 +0000
commit1b97441da0cf727be860a041980599f537a54e58 (patch)
treed5536f9410fe6a6d409c9a14d12ad4d1ecb47375
parent08c4919de0e33dd722db9103dd14eed85240befd (diff)
AT: Add CGSN/GSN Commands
Change-Id: Ie383c0de07e4114f00e6c8833b6c18fcbaa4a07f Reviewed-on: https://code.wireshark.org/review/29185 Reviewed-by: Alexis La Goutte <alexis.lagoutte@gmail.com> Petri-Dish: Alexis La Goutte <alexis.lagoutte@gmail.com> Tested-by: Petri Dish Buildbot Reviewed-by: Anders Broman <a.broman58@gmail.com>
-rw-r--r--epan/dissectors/packet-at.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/epan/dissectors/packet-at.c b/epan/dissectors/packet-at.c
index be6cc874f0..4f4c627036 100644
--- a/epan/dissectors/packet-at.c
+++ b/epan/dissectors/packet-at.c
@@ -433,6 +433,12 @@ static gboolean check_cgmm(gint role, guint16 type) {
return FALSE;
}
+static gboolean check_cgsn(gint role, guint16 type) {
+ if (role == ROLE_DTE && (type == TYPE_ACTION_SIMPLY || type == TYPE_TEST)) return TRUE;
+
+ return FALSE;
+}
+
static gboolean check_chld(gint role, guint16 type) {
if (role == ROLE_DTE && (type == TYPE_ACTION || type == TYPE_TEST)) return TRUE;
if (role == ROLE_DCE && type == TYPE_RESPONSE) return TRUE;
@@ -529,6 +535,12 @@ static gboolean check_csim(gint role, guint16 type) {
return FALSE;
}
+static gboolean check_gsn(gint role, guint16 type) {
+ if (role == ROLE_DTE && (type == TYPE_ACTION_SIMPLY || type == TYPE_TEST)) return TRUE;
+
+ return FALSE;
+}
+
static gboolean check_vts(gint role, guint16 type) {
if (role == ROLE_DTE && (type == TYPE_ACTION || type == TYPE_TEST)) return TRUE;
if (role == ROLE_DCE && type == TYPE_RESPONSE) return TRUE;
@@ -1228,6 +1240,7 @@ static const at_cmd_t at_cmds[] = {
{ "+CCWA", "Call Waiting Notification", check_ccwa, dissect_ccwa_parameter },
{ "+CFUN", "Set Phone Functionality", check_cfun, dissect_cfun_parameter },
{ "+CGMM", "Request model identification", check_cgmm, dissect_cgmm_parameter },
+ { "+CGSN", "Request Product Serial Number Identification (ESN/IMEI)", check_cgsn, dissect_no_parameter },
{ "+CHLD", "Call Hold and Multiparty Handling", check_chld, dissect_chld_parameter },
{ "+CHUP", "Call Hang-up", check_chup, dissect_no_parameter },
{ "+CIEV", "Indicator Events Reporting", check_ciev, dissect_ciev_parameter },
@@ -1243,6 +1256,7 @@ static const at_cmd_t at_cmds[] = {
{ "+COPS", "Reading Network Operator", check_cops, dissect_cops_parameter },
{ "+CPMS", "Preferred Message Storage", check_cpms, dissect_cpms_parameter },
{ "+CSIM", "Generic SIM access", check_csim, dissect_csim_parameter },
+ { "+GSN", "Request Product Serial Number Identification (ESN/IMEI)", check_gsn, dissect_no_parameter },
{ "+VTS", "DTMF and tone generation", check_vts, dissect_vts_parameter },
{ "ERROR", "ERROR", check_only_dce_role, dissect_no_parameter },
{ "RING", "Incoming Call Indication", check_only_dce_role, dissect_no_parameter },