diff options
author | Harald Welte <laforge@gnumonks.org> | 2018-10-21 11:56:05 +0200 |
---|---|---|
committer | Harald Welte <laforge@gnumonks.org> | 2018-10-21 11:56:05 +0200 |
commit | 0479b2a15f58c4a999584d1da92f88815700f314 (patch) | |
tree | e0981ad9e5d54179b17a005b883cf1688dfddb2a /src | |
parent | ff6606cacb18985b5583e2a96bb36664d7c0e1f3 (diff) |
check_rtp_origin(): Don't memcmp sockadd_in and in_addr
We were comparing 16 bytes (sockaddr_in) in memcmp() rather than using
four bytes (struct in_addr in mgcp conn end).
This is a good example why we should actually simply use the == (equals)
operator rather than using memcmp which treats everything as void.
Change-Id: Ic64256619ef893d625400e8b1b573ea2c629ed9c
Fixes: Coverity CID#188874
Diffstat (limited to 'src')
-rw-r--r-- | src/libosmo-mgcp/mgcp_network.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libosmo-mgcp/mgcp_network.c b/src/libosmo-mgcp/mgcp_network.c index d769ef383..fe63f1e1a 100644 --- a/src/libosmo-mgcp/mgcp_network.c +++ b/src/libosmo-mgcp/mgcp_network.c @@ -874,7 +874,7 @@ static int check_rtp_origin(struct mgcp_conn_rtp *conn, endp = conn->conn->endp; struct sockaddr_in zero_addr = {}; - if (memcmp(&zero_addr, &conn->end.addr, sizeof(zero_addr)) == 0) { + if (memcmp(&zero_addr.sin_addr, &conn->end.addr, sizeof(zero_addr.sin_addr)) == 0) { switch (conn->conn->mode) { case MGCP_CONN_LOOPBACK: /* HACK: for IuUP, we want to reply with an IuUP Initialization ACK upon the first RTP |