libosmogsm 1.13.1.1-afb4 Osmocom GSM library

Functions | Variables
gsm48_ie.c File Reference

GSM Mobile Radio Interface Layer 3 messages. More...

`#include <stdint.h>`
`#include <string.h>`
`#include <errno.h>`
`#include <osmocom/core/utils.h>`
`#include <osmocom/core/msgb.h>`
`#include <osmocom/gsm/tlv.h>`
`#include <osmocom/gsm/mncc.h>`
`#include <osmocom/core/bitvec.h>`
`#include <osmocom/gsm/protocol/gsm_04_08.h>`
`#include <osmocom/gsm/gsm48_ie.h>`

## Functions
int | gsm48_decode_bcd_number (char *output, int output_len, const uint8_t *bcd_lv, int h_len)
| Like gsm48_decode_bcd_number2() but with less airtight bounds checking. More...
int | gsm48_decode_bcd_number2 (char *output, size_t output_len, const uint8_t *bcd_lv, size_t input_len, size_t h_len)
| Decode a 'called/calling/connect party BCD number' as in 10.5.4.7. More...
static int | asc_to_bcd (const char asc)
| convert a single ASCII character to call-control BCD More...
int | gsm48_encode_bcd_number (uint8_t *bcd_lv, uint8_t max_len, int h_len, const char *input)
| convert a ASCII phone number to 'called/calling/connect party BCD number' More...
int | gsm48_decode_bearer_cap (struct gsm_mncc_bearer_cap *bcap, const uint8_t *lv)
| Decode TS 04.08 Bearer Capability IE (10.5.4.5) More...
int | gsm48_encode_bearer_cap (struct msgb *msg, int lv_only, const struct gsm_mncc_bearer_cap *bcap)
| Encode TS 04.08 Bearer Capability IE (10.5.4.5) More...
int | gsm48_decode_cccap (struct gsm_mncc_cccap *ccap, const uint8_t *lv)
| Decode TS 04.08 Call Control Capabilities IE (10.5.4.5a) More...
int | gsm48_encode_cccap (struct msgb *msg, const struct gsm_mncc_cccap *ccap)
| Encodoe TS 04.08 Call Control Capabilities (10.5.4.5a) More...
int | gsm48_decode_called (struct gsm_mncc_number *called, const uint8_t *lv)
| Decode TS 04.08 Called Party BCD Number IE (10.5.4.7) More...
int | gsm48_encode_called (struct msgb *msg, const struct gsm_mncc_number *called)
| Encode TS 04.08 Called Party IE (10.5.4.7) More...
int | gsm48_decode_callerid (struct gsm_mncc_number *callerid, const uint8_t *lv)
| Decode TS 04.08 Caller ID. More...
int | gsm48_encode_callerid (struct msgb *msg, int ie, int max_len, const struct gsm_mncc_number *callerid)
| Encode TS 04.08 Caller ID IE. More...
int | gsm48_decode_cause (struct gsm_mncc_cause *cause, const uint8_t *lv)
| Decode TS 04.08 Cause IE (10.5.4.11) More...
int | gsm48_encode_cause (struct msgb *msg, int lv_only, const struct gsm_mncc_cause *cause)
| Encode TS 04.08 Cause IE (10.5.4.11) More...
int | gsm48_decode_calling (struct gsm_mncc_number *calling, const uint8_t *lv)
| Decode TS 04.08 Calling Number IE (10.5.4.9) More...
int | gsm48_encode_calling (struct msgb *msg, const struct gsm_mncc_number *calling)
| Encode TS 04.08 Calling Number IE (10.5.4.9) More...
int | gsm48_decode_connected (struct gsm_mncc_number *connected, const uint8_t *lv)
| Decode TS 04.08 Connected Number IE (10.5.4.13) More...
int | gsm48_encode_connected (struct msgb *msg, const struct gsm_mncc_number *connected)
| Encode TS 04.08 Connected Number IE (10.5.4.13) More...
int | gsm48_decode_redirecting (struct gsm_mncc_number *redirecting, const uint8_t *lv)
| Decode TS 04.08 Redirecting Number IE (10.5.4.21b) More...
int | gsm48_encode_redirecting (struct msgb *msg, const struct gsm_mncc_number *redirecting)
| Encode TS 04.08 Redirecting Number IE (10.5.4.21b) More...
int | gsm48_decode_facility (struct gsm_mncc_facility *facility, const uint8_t *lv)
| Decode TS 04.08 Facility IE (10.5.4.15) More...
int | gsm48_encode_facility (struct msgb *msg, int lv_only, const struct gsm_mncc_facility *facility)
| Encode TS 04.08 Facility IE (10.5.4.15) More...
int | gsm48_decode_notify (int *notify, const uint8_t *v)
| Decode TS 04.08 Notify IE (10.5.4.20) More...
int | gsm48_encode_notify (struct msgb *msg, int notify)
| Encode TS 04.08 Notify IE (10.5.4.20) More...
int | gsm48_decode_signal (int *signal, const uint8_t *v)
| Decode TS 04.08 Signal IE (10.5.4.23) More...
int | gsm48_encode_signal (struct msgb *msg, int signal)
| Encode TS 04.08 Signal IE (10.5.4.23) More...
int | gsm48_decode_keypad (int *keypad, const uint8_t *lv)
| Decode TS 04.08 Keypad IE (10.5.4.17) More...
int | gsm48_encode_keypad (struct msgb *msg, int keypad)
| Encode TS 04.08 Keypad IE (10.5.4.17) More...
int | gsm48_decode_progress (struct gsm_mncc_progress *progress, const uint8_t *lv)
| Decode TS 04.08 Progress IE (10.5.4.21) More...
int | gsm48_encode_progress (struct msgb *msg, int lv_only, const struct gsm_mncc_progress *p)
| Encode TS 04.08 Progress IE (10.5.4.21) More...
int | gsm48_decode_useruser (struct gsm_mncc_useruser *uu, const uint8_t *lv)
| Decode TS 04.08 User-User IE (10.5.4.25) More...
int | gsm48_encode_useruser (struct msgb *msg, int lv_only, const struct gsm_mncc_useruser *uu)
| Encode TS 04.08 User-User IE (10.5.4.25) More...
int | gsm48_decode_ssversion (struct gsm_mncc_ssversion *ssv, const uint8_t *lv)
| Decode TS 04.08 SS Version IE (10.5.4.24) More...
int | gsm48_encode_ssversion (struct msgb *msg, const struct gsm_mncc_ssversion *ssv)
| Encode TS 04.08 SS Version IE (10.5.4.24) More...
int | gsm48_encode_more (struct msgb *msg)
| Encode TS 04.08 More Data IE (10.5.4.19) More...
static int32_t | smod (int32_t n, int32_t m)
int | gsm48_decode_freq_list (struct gsm_sysinfo_freq *f, const uint8_t *cd, uint8_t len, uint8_t mask, uint8_t frqt)
| Decode TS 04.08 Cell Channel Description IE (10.5.2.1b) and other frequency lists. More...
int | gsm48_decode_classmark3 (struct gsm48_classmark3 *classmark3_out, const uint8_t *classmark3, size_t classmark3_len)
| Decode 3GPP TS 24.008 Mobile Station Classmark 3 (10.5.1.7). More...

## Variables
static const char | bcd_num_digits []

## Detailed Description

GSM Mobile Radio Interface Layer 3 messages.

3GPP TS 04.08 version 7.21.0 Release 1998 / ETSI TS 100 940 V7.21.0.