aboutsummaryrefslogtreecommitdiffstats
path: root/openbsc/src/gsm_data.c
diff options
context:
space:
mode:
authorHarald Welte (local) <laflocal@hanuman.gnumonks.org>2009-08-12 14:42:23 +0200
committerHarald Welte <laforge@gnumonks.org>2009-08-12 20:53:36 +0200
commit69de397ff406acb8a6ea23811c50d3af3a53acb0 (patch)
treeda064ee8fbb467f6ebcd4196265c39e3409fff26 /openbsc/src/gsm_data.c
parenta29216b1e1a56867b6da2b5526b0bd44ea6c2c05 (diff)
add a authorization policy field to the network and VTY
this is not being used yet
Diffstat (limited to 'openbsc/src/gsm_data.c')
-rw-r--r--openbsc/src/gsm_data.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/openbsc/src/gsm_data.c b/openbsc/src/gsm_data.c
index edf1b3d05..22e842280 100644
--- a/openbsc/src/gsm_data.c
+++ b/openbsc/src/gsm_data.c
@@ -320,3 +320,26 @@ enum gsm_band gsm_band_parse(const char* mhz)
}
}
+static const char *gsm_auth_policy_names[] = {
+ [GSM_AUTH_POLICY_CLOSED] = "closed",
+ [GSM_AUTH_POLICY_ACCEPT_ALL] = "accept-all",
+ [GSM_AUTH_POLICY_TOKEN] = "token",
+};
+
+enum gsm_auth_policy gsm_auth_policy_parse(const char *arg)
+{
+ int i;
+ for (i = 0; i < ARRAY_SIZE(gsm_auth_policy_names); i++) {
+ if (!strcmp(arg, gsm_auth_policy_names[i]))
+ return i;
+ }
+ return GSM_AUTH_POLICY_CLOSED;
+}
+
+const char *gsm_auth_policy_name(enum gsm_auth_policy policy)
+{
+ if (policy > ARRAY_SIZE(gsm_auth_policy_names))
+ return "undefined";
+ return gsm_auth_policy_names[policy];
+}
+