summaryrefslogtreecommitdiffstats
path: root/include/osmocom/gsm/gsm0480.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/osmocom/gsm/gsm0480.h')
-rw-r--r--include/osmocom/gsm/gsm0480.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/include/osmocom/gsm/gsm0480.h b/include/osmocom/gsm/gsm0480.h
index b1281629..deac3225 100644
--- a/include/osmocom/gsm/gsm0480.h
+++ b/include/osmocom/gsm/gsm0480.h
@@ -1,19 +1,33 @@
#pragma once
+#include <osmocom/core/defs.h>
#include <osmocom/core/msgb.h>
#include <osmocom/gsm/protocol/gsm_04_08.h>
#include <osmocom/gsm/protocol/gsm_04_80.h>
#define MAX_LEN_USSD_STRING 31
+/* deprecated */
struct ussd_request {
char text[MAX_LEN_USSD_STRING + 1];
uint8_t transaction_id;
uint8_t invoke_id;
};
+/* deprecated */
int gsm0480_decode_ussd_request(const struct gsm48_hdr *hdr, uint16_t len,
- struct ussd_request *request);
+ struct ussd_request *request) OSMO_DEPRECATED("Use gsm0480_decode_ss_request() instead");
+
+struct ss_request {
+ uint8_t opcode;
+ uint8_t ss_code;
+ uint8_t ussd_text[MAX_LEN_USSD_STRING + 1];
+ uint8_t transaction_id;
+ uint8_t invoke_id;
+};
+
+int gsm0480_decode_ss_request(const struct gsm48_hdr *hdr, uint16_t len,
+ struct ss_request *request);
struct msgb *gsm0480_create_ussd_resp(uint8_t invoke_id, uint8_t trans_id, const char *text);
struct msgb *gsm0480_create_unstructuredSS_Notify(int alertPattern, const char *text);