1 #ifndef _OSMOCORE_GSM48_IE_H
2 #define _OSMOCORE_GSM48_IE_H
8 #include <osmocom/core/msgb.h>
10 #include <osmocom/gsm/mncc.h>
11 #include <osmocom/gsm/protocol/gsm_04_08.h>
14 int gsm48_decode_bcd_number(
char *output,
int output_len,
15 const uint8_t *bcd_lv,
int h_len);
18 int gsm48_encode_bcd_number(uint8_t *bcd_lv, uint8_t max_len,
19 int h_len,
const char *input);
24 int gsm48_encode_bearer_cap(
struct msgb *msg,
int lv_only,
27 int gsm48_decode_cccap(
struct gsm_mncc_cccap *ccap,
const uint8_t *lv);
29 int gsm48_encode_cccap(
struct msgb *msg,
35 int gsm48_encode_called(
struct msgb *msg,
41 int gsm48_encode_callerid(
struct msgb *msg,
int ie,
int max_len,
47 int gsm48_encode_cause(
struct msgb *msg,
int lv_only,
53 int gsm48_encode_calling(
struct msgb *msg,
59 int gsm48_encode_connected(
struct msgb *msg,
65 int gsm48_encode_redirecting(
struct msgb *msg,
71 int gsm48_encode_facility(
struct msgb *msg,
int lv_only,
74 int gsm48_decode_notify(
int *notify,
const uint8_t *v);
76 int gsm48_encode_notify(
struct msgb *msg,
int notify);
78 int gsm48_decode_signal(
int *signal,
const uint8_t *v);
80 int gsm48_encode_signal(
struct msgb *msg,
int signal);
82 int gsm48_decode_keypad(
int *keypad,
const uint8_t *lv);
84 int gsm48_encode_keypad(
struct msgb *msg,
int keypad);
89 int gsm48_encode_progress(
struct msgb *msg,
int lv_only,
95 int gsm48_encode_useruser(
struct msgb *msg,
int lv_only,
101 int gsm48_encode_ssversion(
struct msgb *msg,
105 int gsm48_encode_more(
struct msgb *msg);
115 uint8_t len, uint8_t mask, uint8_t frqt);