diff --git a/src/shared/hfp.c b/src/shared/hfp.c
index 7cc9a30..d7cca32 100644
--- a/src/shared/hfp.c
+++ b/src/shared/hfp.c
return true;
}
+bool hfp_gw_result_open_container(struct hfp_gw_result *result)
+{
+ skip_whitespace(result);
+
+ /* The list shall be preceded by a left parenthesis "(") */
+ if (result->data[result->offset] != '(')
+ return false;
+
+ result->offset++;
+
+ return true;
+}
+
+bool hfp_gw_result_close_container(struct hfp_gw_result *result)
+{
+ skip_whitespace(result);
+
+ /* The list shall be followed by a right parenthesis (")" V250 5.7.3.1*/
+ if (result->data[result->offset] != ')')
+ return false;
+
+ result->offset++;
+
+ return true;
+}
+
static void process_input(struct hfp_gw *hfp)
{
char *str, *ptr;
diff --git a/src/shared/hfp.h b/src/shared/hfp.h
index 40adcb6..00905de 100644
--- a/src/shared/hfp.h
+++ b/src/shared/hfp.h
bool hfp_gw_unregister(struct hfp_gw *hfp, const char *prefix);
bool hfp_gw_result_get_number(struct hfp_gw_result *result, unsigned int *val);
+bool hfp_gw_result_open_container(struct hfp_gw_result *result);
+bool hfp_gw_result_close_container(struct hfp_gw_result *result);