aboutsummaryrefslogtreecommitdiffstats
path: root/src/libvlr/vlr.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/libvlr/vlr.c')
-rw-r--r--src/libvlr/vlr.c16
1 files changed, 14 insertions, 2 deletions
diff --git a/src/libvlr/vlr.c b/src/libvlr/vlr.c
index d95d1b7ec..a5ea0f6d1 100644
--- a/src/libvlr/vlr.c
+++ b/src/libvlr/vlr.c
@@ -28,8 +28,6 @@
#include <openbsc/gsm_subscriber.h>
#include <openbsc/gsup_client.h>
#include <openbsc/vlr.h>
-#include <openbsc/gprs_sgsn.h>
-#include <openbsc/gprs_utils.h>
#include <openbsc/debug.h>
#include <openssl/rand.h>
@@ -438,6 +436,20 @@ int vlr_subscr_changed(struct vlr_subscr *vsub)
* PDP context data
***********************************************************************/
+#define GSM_APN_LENGTH 102
+
+/* see GSM 09.02, 17.7.1, PDP-Context and GPRSSubscriptionData */
+/* see GSM 09.02, B.1, gprsSubscriptionData */
+struct sgsn_subscriber_pdp_data {
+ struct llist_head list;
+
+ unsigned int context_id;
+ uint16_t pdp_type;
+ char apn_str[GSM_APN_LENGTH];
+ uint8_t qos_subscribed[20];
+ size_t qos_subscribed_len;
+};
+
struct sgsn_subscriber_pdp_data *
vlr_subscr_pdp_data_alloc(struct vlr_subscr *vsub)
{