libosmogsm: Add OSMO_ASSERT() to ensure correct algorithm

Let's make sure that nobody ever ends up calling the algo_impl
call-backs with data of a non-matching algorithm.  This should
never happen at all, as all normal users should go through
the auth_core.c:osmo_auth_gen_vec* API, which dispatches based
on algorithm.

Change-Id: I22b504b6cffb4999b2f14772fffcb2f6f02c198c
diff --git a/src/gsm/auth_xor.c b/src/gsm/auth_xor.c
index 3552568..c94b02f 100644
--- a/src/gsm/auth_xor.c
+++ b/src/gsm/auth_xor.c
@@ -50,6 +50,8 @@
 	uint8_t ak[6], xmac[8];
 	int i;
 
+	OSMO_ASSERT(aud->algo == OSMO_AUTH_ALG_XOR_3G);
+
 	/* Step 1: xdout = (ki or k) ^ rand */
 	if (aud->type == OSMO_AUTH_TYPE_GSM)
 		xor(xdout, aud->u.gsm.ki, _rand, sizeof(xdout));
@@ -134,6 +136,8 @@
 	uint8_t ak[6], xmac[8];
 	uint8_t sqnms[6];
 
+	OSMO_ASSERT(aud->algo == OSMO_AUTH_ALG_XOR_3G);
+
 	/* Step 1: xdout = (ki or k) ^ rand */
 	if (aud->type == OSMO_AUTH_TYPE_GSM)
 		xor(xdout, aud->u.gsm.ki, _rand, sizeof(xdout));