libosmogsm
1.9.0.17-a59e8.202310212026
Osmocom GSM library
|
Functions | |
static | LLIST_HEAD (gprs_ciphers) |
int | gprs_cipher_register (struct gprs_cipher_impl *ciph) |
int | gprs_cipher_load (const char *path) |
int | gprs_cipher_run (uint8_t *out, uint16_t len, enum gprs_ciph_algo algo, uint8_t *kc, uint32_t iv, enum gprs_cipher_direction dir) |
unsigned | gprs_cipher_key_length (enum gprs_ciph_algo algo) |
Obtain key lenght for given GPRS cipher. More... | |
int | gprs_cipher_supported (enum gprs_ciph_algo algo) |
uint32_t | gprs_cipher_gen_input_ui (uint32_t iov_ui, uint8_t sapi, uint32_t lfn, uint32_t oc) |
uint32_t | gprs_cipher_gen_input_i (uint32_t iov_i, uint32_t lfn, uint32_t oc) |
static | __attribute__ ((constructor)) |
Variables | |
static struct gprs_cipher_impl * | selected_ciphers [_GPRS_ALGO_NUM] |
const struct value_string | gprs_cipher_names [] |
static struct gprs_cipher_impl | gea3_impl |
static struct gprs_cipher_impl | gea4_impl |
|
static |
References gprs_cipher_register().
uint32_t gprs_cipher_gen_input_i | ( | uint32_t | iov_i, |
uint32_t | lfn, | ||
uint32_t | oc | ||
) |
uint32_t gprs_cipher_gen_input_ui | ( | uint32_t | iov_ui, |
uint8_t | sapi, | ||
uint32_t | lfn, | ||
uint32_t | oc | ||
) |
unsigned gprs_cipher_key_length | ( | enum gprs_ciph_algo | algo | ) |
Obtain key lenght for given GPRS cipher.
[in] | algo | Enum representive GPRS cipher |
References GPRS_ALGO_GEA0, GPRS_ALGO_GEA1, GPRS_ALGO_GEA2, GPRS_ALGO_GEA3, and GPRS_ALGO_GEA4.
Referenced by gea3().
int gprs_cipher_load | ( | const char * | path | ) |
References osmo_plugin_load_all().
int gprs_cipher_register | ( | struct gprs_cipher_impl * | ciph | ) |
References gprs_cipher_impl::algo, ARRAY_SIZE, gprs_cipher_impl::list, llist_add_tail(), and gprs_cipher_impl::priority.
Referenced by __attribute__().
int gprs_cipher_run | ( | uint8_t * | out, |
uint16_t | len, | ||
enum gprs_ciph_algo | algo, | ||
uint8_t * | kc, | ||
uint32_t | iv, | ||
enum gprs_cipher_direction | dir | ||
) |
References ARRAY_SIZE, GSM0464_CIPH_MAX_BLOCK, and gprs_cipher_impl::run.
int gprs_cipher_supported | ( | enum gprs_ciph_algo | algo | ) |
References ARRAY_SIZE.
|
static |
|
static |
|
static |
const struct value_string gprs_cipher_names[] |
|
static |