diff options
author | Ivan Kluchnikov <kluchnikovi@gmail.com> | 2015-07-21 11:40:08 +0300 |
---|---|---|
committer | Ivan Kluchnikov <kluchnikovi@gmail.com> | 2015-07-22 21:32:10 +0300 |
commit | 85439534961c34f620117979d658bdbb760bafb3 (patch) | |
tree | 1e3aaa5d50a689d03590c8533d3a1b8a5c5ddf1b /openbsc/include/openbsc | |
parent | 3cc7d2b50d8e6d8834135adbb984c90500cacaae (diff) |
sub: Add the ability to set prefix for randomly generated extensions
Prefix is added before randomly generated extension.
Prefix is useful in case of "accept-all" authentication mode is used
and routing based on number prefix is used.
Added optional configuration parameter "extension-prefix".
Diffstat (limited to 'openbsc/include/openbsc')
-rw-r--r-- | openbsc/include/openbsc/db.h | 4 | ||||
-rw-r--r-- | openbsc/include/openbsc/gsm_data.h | 1 |
2 files changed, 3 insertions, 2 deletions
diff --git a/openbsc/include/openbsc/db.h b/openbsc/include/openbsc/db.h index 6699a8600..acaf62a99 100644 --- a/openbsc/include/openbsc/db.h +++ b/openbsc/include/openbsc/db.h @@ -35,13 +35,13 @@ int db_prepare(void); int db_fini(void); /* subscriber management */ -struct gsm_subscriber *db_create_subscriber(const char *imsi); +struct gsm_subscriber *db_create_subscriber(const char *imsi, uint64_t prefix); struct gsm_subscriber *db_get_subscriber(enum gsm_subscriber_field field, const char *subscr); int db_sync_subscriber(struct gsm_subscriber *subscriber); int db_subscriber_expire(void *priv, void (*callback)(void *priv, long long unsigned int id)); int db_subscriber_alloc_tmsi(struct gsm_subscriber *subscriber); -int db_subscriber_alloc_exten(struct gsm_subscriber *subscriber); +int db_subscriber_alloc_exten(struct gsm_subscriber *subscriber, uint64_t prefix); int db_subscriber_alloc_token(struct gsm_subscriber *subscriber, uint32_t* token); int db_subscriber_assoc_imei(struct gsm_subscriber *subscriber, char *imei); int db_subscriber_delete(struct gsm_subscriber *subscriber); diff --git a/openbsc/include/openbsc/gsm_data.h b/openbsc/include/openbsc/gsm_data.h index 6f7c8dd2a..b67b8c6b9 100644 --- a/openbsc/include/openbsc/gsm_data.h +++ b/openbsc/include/openbsc/gsm_data.h @@ -280,6 +280,7 @@ struct gsm_network { int create_subscriber; struct gsm_subscriber_group *subscr_group; struct gsm_sms_queue *sms_queue; + uint64_t exten_prefix; /* control interface */ struct ctrl_handle *ctrl; |