libosmogsm 1.9.0.196-9975
Osmocom GSM library
gsm48_ie.h File Reference
#include <stdint.h>
#include <string.h>
#include <errno.h>
#include <osmocom/core/msgb.h>
#include <osmocom/core/defs.h>
#include <osmocom/gsm/tlv.h>
#include <osmocom/gsm/mncc.h>
#include <osmocom/gsm/protocol/gsm_04_08.h>

Go to the source code of this file.

Data Structures

struct  gsm_sysinfo_freq
 

Functions

int gsm48_decode_bcd_number (char *output, int output_len, const uint8_t *bcd_lv, int h_len) OSMO_DEPRECATED_OUTSIDE("Use gsm48_decode_bcd_number2() for improved bounds checking")
 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...
 
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...
 
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...