fix bug in parse_cell_id_ci_list()

Cell ID lists with CI were misparsed because parse_cell_id_ci_list()
failed to report the amount of consumed bytes to its caller.

Also add a regression test which uncovered the bug.

Change-Id: Ife4e485e2b86c6f3321c9700611700115ad247b2
Depends: If6b941720de33dca66b6b1aa2cb95a3275708b7f
Related: OS#2847
diff --git a/src/gsm/gsm0808_utils.c b/src/gsm/gsm0808_utils.c
index ac1e852..0165e8a 100644
--- a/src/gsm/gsm0808_utils.c
+++ b/src/gsm/gsm0808_utils.c
@@ -756,7 +756,7 @@
 		if (i >= GSM0808_CELL_ID_LIST2_MAXLEN)
 			return -ENOSPC;
 		cil->id_list[i++].ci = osmo_load16be(ci_be++);
-		consumed += elemlen;
+		*consumed += elemlen;
 		remain -= elemlen;
 	}
 	return i;