libosmogsm 1.9.0.196-9975
Osmocom GSM library
#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. More...
 
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. More...
 
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. More...
 

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 []