diff --git a/src/mncc.c b/src/mncc.c index f2e2579..16eed96 100644 --- a/src/mncc.c +++ b/src/mncc.c @@ -472,7 +472,7 @@ static void check_setup(struct mncc_connection *conn, const char *buf, int rc) struct call *call; struct mncc_call_leg *leg; - if (rc != sizeof(*data)) { + if (rc < sizeof(*data)) { LOGP(DMNCC, LOGL_ERROR, "gsm_mncc of wrong size %d vs. %zu\n", rc, sizeof(*data)); return close_connection(conn); @@ -548,7 +548,7 @@ static struct mncc_call_leg *find_leg(struct mncc_connection *conn, { struct mncc_call_leg *leg; - if (rc != sizeof(**mncc)) { + if (rc < sizeof(**mncc)) { LOGP(DMNCC, LOGL_ERROR, "gsm_mncc of wrong size %d vs. %zu\n", rc, sizeof(**mncc)); close_connection(conn);