diff --git a/openbsc/src/gsm_04_08.c b/openbsc/src/gsm_04_08.c index 03fe01058..3e6c149ae 100644 --- a/openbsc/src/gsm_04_08.c +++ b/openbsc/src/gsm_04_08.c @@ -331,6 +331,8 @@ static int authorize_subscriber(struct gsm_loc_updating_operation *loc, case GSM_AUTH_POLICY_CLOSED: return subscriber->authorized; case GSM_AUTH_POLICY_TOKEN: + if (subscriber->authorized) + return subscriber->authorized; return (subscriber->flags & GSM_SUBSCRIBER_FIRST_CONTACT); case GSM_AUTH_POLICY_ACCEPT_ALL: return 1;