diff --git a/src/libosmo-mgcp/mgcp_protocol.c b/src/libosmo-mgcp/mgcp_protocol.c
index cb2c965..7f4a7b8 100644
--- a/src/libosmo-mgcp/mgcp_protocol.c
+++ b/src/libosmo-mgcp/mgcp_protocol.c
@@ -674,6 +674,30 @@
 	return 534;
 }
 
+static bool parse_x_osmo_ign(struct mgcp_endpoint *endp, char *line)
+{
+	char *saveptr = NULL;
+
+	if (strncmp(line, MGCP_X_OSMO_IGN_HEADER, strlen(MGCP_X_OSMO_IGN_HEADER)))
+		return false;
+	line += strlen(MGCP_X_OSMO_IGN_HEADER);
+
+	while (1) {
+		char *token = strtok_r(line, " ", &saveptr);
+		line = NULL;
+		if (!token)
+			break;
+
+		if (!strcmp(token, "C"))
+			endp->x_osmo_ign |= MGCP_X_OSMO_IGN_CALLID;
+		else
+			LOGP(DLMGCP, LOGL_ERROR, "endpoint %x: received unknown X-Osmo-IGN item '%s'\n",
+			     ENDPOINT_NUMBER(endp), token);
+	}
+
+	return true;
+}
+
 /* CRCX command handler, processes the received command */
 static struct msgb *handle_create_con(struct mgcp_parse_data *p)
 {
@@ -723,22 +747,9 @@
 				break;
 			}
 
-			/* Parse X-Osmo-IGN header */
-			if (!strncmp(line, MGCP_X_OSMO_IGN_HEADER,
-					    strlen(MGCP_X_OSMO_IGN_HEADER))) {
-				int i;
-				int line_len = strlen(line);
-				for (i = strlen(MGCP_X_OSMO_IGN_HEADER); i < line_len; i++) {
-					switch (line[i]) {
-					case 'C':
-						endp->x_osmo_ign |= MGCP_X_OSMO_IGN_CALLID;
-						break;
-					default:
-						break;
-					}
-				}
+			if (parse_x_osmo_ign(endp, line))
 				break;
-			}
+
 			/* Ignore unknown X-headers */
 			break;
 		case '\0':
diff --git a/tests/mgcp/mgcp_test.c b/tests/mgcp/mgcp_test.c
index 2d1e28a..f8f701e 100644
--- a/tests/mgcp/mgcp_test.c
+++ b/tests/mgcp/mgcp_test.c
@@ -314,7 +314,7 @@
 	"M: recvonly\r\n" \
 	"C: 2\r\n" \
 	"L: p:20\r\n" \
-	"X-Osmo-IGN: C\r\n" \
+	"X-Osmo-IGN: C foo\r\n" \
 	"\r\n" \
 	"v=0\r\n" \
 	"c=IN IP4 123.12.12.123\r\n" \
diff --git a/tests/mgcp/mgcp_test.ok b/tests/mgcp/mgcp_test.ok
index bdaf5d7..fcad85a 100644
--- a/tests/mgcp/mgcp_test.ok
+++ b/tests/mgcp/mgcp_test.ok
Binary files differ
