sgsn: Replace subscr.authenticate by global require_authentication flag

Currently the flag 'authenticate' is managed per subscriber.

This patch replaces that flag by a global cfg.require_authentication
flag that enables/disables the use of the Auth & Ciph procedure for
every subscriber. The flag is set by the VTY, if and only if the
authorization policy is 'remote'.

The VTY command

  - update-subscriber imsi IMSI insert authenticate <0-1>

is removed.

Sponsored-by: On-Waves ehf
diff --git a/openbsc/src/gprs/sgsn_auth.c b/openbsc/src/gprs/sgsn_auth.c
index 3755a51..83372e8 100644
--- a/openbsc/src/gprs/sgsn_auth.c
+++ b/openbsc/src/gprs/sgsn_auth.c
@@ -110,7 +110,7 @@
 		if (mmctx->subscr->flags & GPRS_SUBSCRIBER_UPDATE_PENDING_MASK)
 			return mmctx->auth_state;
 
-		if (mmctx->subscr->sgsn_data->authenticate &&
+		if (sgsn->cfg.require_authentication &&
 		    (!mmctx->is_authenticated ||
 		     mmctx->subscr->sgsn_data->auth_triplets_updated))
 			return SGSN_AUTH_AUTHENTICATE;
@@ -171,7 +171,7 @@
 
 	OSMO_ASSERT(mmctx->subscr != NULL);
 
-	if (mmctx->subscr->sgsn_data->authenticate && !mmctx->is_authenticated) {
+	if (sgsn->cfg.require_authentication && !mmctx->is_authenticated) {
 		/* Find next tuple */
 		at = sgsn_auth_get_tuple(mmctx, mmctx->auth_triplet.key_seq);