Loading...
Searching...
No Matches
rlp.h File Reference
GSM RLP (Radio Link Protocol) as used in CSD (3GPP TS 24.022)
`#include <stdint.h>`
`#include <stdbool.h>`
`#include <osmocom/core/utils.h>`

Go to the source code of this file.

## Data Structures

struct | osmo_rlp_frame_decoded
| Data structure representing one decoded RLP frame. More...

## Enumerations

enum | osmo_rlp_ftype { OSMO_RLP_FT_U , OSMO_RLP_FT_S , OSMO_RLP_FT_IS }
| RLP frame type as per 3GPP TS 24.022 Section 5.2.1. More...
enum | osmo_rlp_u_ftype { OSMO_RLP_U_FT_SABM = 0x07 , OSMO_RLP_U_FT_UA = 0x0c , OSMO_RLP_U_FT_DISC = 0x08 , OSMO_RLP_U_FT_DM = 0x03 , OSMO_RLP_U_FT_NULL = 0x0f , OSMO_RLP_U_FT_UI = 0x00 , OSMO_RLP_U_FT_XID = 0x17 , OSMO_RLP_U_FT_TEST = 0x1c , OSMO_RLP_U_FT_REMAP = 0x11 }
| RLP U-Frame Type as per 3GPP TS 24.022 Section 5.2.1. More...
enum | osmo_rlp_s_ftype { OSMO_RLP_S_FT_RR = 0 , OSMO_RLP_S_FT_REJ = 2 , OSMO_RLP_S_FT_RNR = 1 , OSMO_RLP_S_FT_SREJ = 3 }
| RLP S-Frame type as per 3GPP TS 24.022 Section 5.2.1. More...

## Functions

int | osmo_rlp_decode (struct osmo_rlp_frame_decoded *out, uint8_t version, const uint8_t *data, size_t data_len)
| decode a RLP frame into its abstract representation.
int | osmo_rlp_encode (uint8_t *out, size_t out_size, const struct osmo_rlp_frame_decoded *in)
| encode a RLP frame from its abstract representation.
uint32_t | osmo_rlp_fcs_compute (const uint8_t *in, size_t in_len)
| compute RLP FCS according to 3GPP TS 24.022 Section 4.4.

## Variables

const struct value_string | osmo_rlp_ftype_vals []
const struct value_string | osmo_rlp_ftype_u_vals []
const struct value_string | osmo_rlp_ftype_s_vals []