Fix vty warnings for GEA0

Previously vty always used additional checks even for GEA0 (no
encryption) which resulted in misleading warnings. Fix this by
adding explicit check for GEA0.

Related: SYS#3610
Change-Id: I1ee468ab3298076d4cb5c7b1f6293c07e272417b
diff --git a/openbsc/src/gprs/sgsn_vty.c b/openbsc/src/gprs/sgsn_vty.c
index d42a165..e09a029 100644
--- a/openbsc/src/gprs/sgsn_vty.c
+++ b/openbsc/src/gprs/sgsn_vty.c
@@ -619,17 +619,18 @@
       "Use GEA0 (no encryption)\n"
       "Use GEA1\nUse GEA2\nUse GEA3\nUse GEA4\n")
 {
-	if (!g_cfg->require_authentication) {
-		vty_out(vty, "%% unable to use encryption without "
-			"authentication: adjust auth-policy%s", VTY_NEWLINE);
-		return CMD_WARNING;
-	}
-
 	enum gprs_ciph_algo c = get_string_value(gprs_cipher_names, argv[0]);
-	if (!gprs_cipher_supported(c)) {
-		vty_out(vty, "%% cipher %s is unsupported in current version%s",
-			argv[0], VTY_NEWLINE);
-		return CMD_WARNING;
+	if (c != GPRS_ALGO_GEA0) {
+		if (!gprs_cipher_supported(c)) {
+			vty_out(vty, "%% cipher %s is unsupported in current version%s", argv[0], VTY_NEWLINE);
+			return CMD_WARNING;
+		}
+
+		if (!g_cfg->require_authentication) {
+			vty_out(vty, "%% unable to use encryption %s without authentication: please adjust auth-policy%s",
+				argv[0], VTY_NEWLINE);
+			return CMD_WARNING;
+		}
 	}
 
 	g_cfg->cipher = c;