ipa: Properly parse LV stream of a ID_GET request

For some reason the structure is closer to be a LV (length
and value). The value is actually a tag but it is counted
inside the length. Introduce an overload of the parse function
to provide an offset for the length. This will be taken from
the returned length.
diff --git a/include/osmocom/gsm/ipa.h b/include/osmocom/gsm/ipa.h
index 1227ee1..0bb01c5 100644
--- a/include/osmocom/gsm/ipa.h
+++ b/include/osmocom/gsm/ipa.h
@@ -27,6 +27,9 @@
 /* parse a buffer of ID tags into a osmocom TLV style representation */
 int ipa_ccm_idtag_parse(struct tlv_parsed *dec, unsigned char *buf, int len);
 
+/* Is the TAG included in the length field? */
+int ipa_ccm_idtag_parse_off(struct tlv_parsed *dec, unsigned char *buf, int len, const int len_offset);
+
 /* parse an Unit ID in string format into the 'ipaccess_unit' data structure */
 int ipa_parse_unitid(const char *str, struct ipaccess_unit *unit_data);