32 lines
855 B
C
32 lines
855 B
C
/* GPRS subscriber details for use in SGSN land */
|
|
#pragma once
|
|
|
|
#include <stdint.h>
|
|
|
|
#include <osmocom/core/linuxlist.h>
|
|
#include <osmocom/gsm/protocol/gsm_23_003.h>
|
|
|
|
extern struct llist_head * const gprs_subscribers;
|
|
|
|
struct gprs_subscr {
|
|
struct llist_head entry;
|
|
int use_count;
|
|
|
|
char imsi[GSM23003_IMSI_MAX_DIGITS+1];
|
|
uint32_t tmsi;
|
|
char imei[GSM23003_IMEISV_NUM_DIGITS+1];
|
|
bool authorized;
|
|
bool keep_in_ram;
|
|
uint32_t flags;
|
|
uint16_t lac;
|
|
|
|
struct sgsn_subscriber_data *sgsn_data;
|
|
};
|
|
|
|
struct gprs_subscr *_gprs_subscr_get(struct gprs_subscr *gsub,
|
|
const char *file, int line);
|
|
struct gprs_subscr *_gprs_subscr_put(struct gprs_subscr *gsub,
|
|
const char *file, int line);
|
|
#define gprs_subscr_get(gsub) _gprs_subscr_get(gsub, __BASE_FILE__, __LINE__)
|
|
#define gprs_subscr_put(gsub) _gprs_subscr_put(gsub, __BASE_FILE__, __LINE__)
|