GSUP: add Message Class IE

osmo-msc and osmo-hlr have distinct subsystems handling incoming GSUP messages.
So far we decide entirely by message type which code path should handle a GSUP
message. Thus no GSUP message type may be re-used across subsystems.

If we add a GSUP message to indicate a routing error, it would have to be a
distinct message type for subscriber management, another one for SMS, another
one for USSD...

To allow introducing common message types, introduce a GSUP Message Class IE.

In the presence of this IE, GSUP handlers can trivially direct a received
message to the right code path. If it is missing, handlers can fall back to the
previous switch(message_type) method.

Change-Id: Ic397a9f2c4a7224e47cab944c72e75ca5592efef
diff --git a/tests/gsup/gsup_test.c b/tests/gsup/gsup_test.c
index 4ad7431..0631a51 100644
--- a/tests/gsup/gsup_test.c
+++ b/tests/gsup/gsup_test.c
@@ -11,6 +11,7 @@
 
 #define TEST_IMSI_IE 0x01, 0x08, 0x21, 0x43, 0x65, 0x87, 0x09, 0x21, 0x43, 0xf5
 #define TEST_IMSI_STR "123456789012345"
+#define TEST_CLASS_SUBSCR_IE 0xa, 0x1, 0x1
 
 static void test_gsup_messages_dec_enc(void)
 {
@@ -20,7 +21,8 @@
 
 	static const uint8_t send_auth_info_req[] = {
 		0x08,
-		TEST_IMSI_IE
+		TEST_IMSI_IE,
+		TEST_CLASS_SUBSCR_IE
 	};
 
 	static const uint8_t send_auth_info_err[] = {