nat: sizeof char * != sizeof char[], make the code work on 64bit systems

The test cases were failing on 64bit systems because the sizeof
code operated on the pointer size which is 8 and longer than the
size that was intended to be used for comparing it.
This commit is contained in:
Holger Hans Peter Freyther 2012-11-07 11:36:58 +01:00
parent e2f34d588c
commit 3dfe8a1705
2 changed files with 12 additions and 6 deletions

6
debian/changelog vendored
View File

@ -1,3 +1,9 @@
openbsc (0.12.0+git26-7) unstable; urgency=low
* 64bit fix for the MGCP rewriting
-- Holger Hans Peter Freyther <holger@freyther.de> Wed, 07 Nov 2012 11:39:34 +0100
openbsc (0.12.0+git26-6) precise; urgency=low
* Added init script for osmocom-sgsn.

View File

@ -557,13 +557,13 @@ static void patch_mgcp(struct msgb *output, const char *op, const char *tok,
/* we need to replace some strings... */
struct msgb *bsc_mgcp_rewrite(char *input, int length, int endpoint, const char *ip, int port)
{
static const char *crcx_str = "CRCX ";
static const char *dlcx_str = "DLCX ";
static const char *mdcx_str = "MDCX ";
static const char crcx_str[] = "CRCX ";
static const char dlcx_str[] = "DLCX ";
static const char mdcx_str[] = "MDCX ";
static const char *ip_str = "c=IN IP4 ";
static const char *aud_str = "m=audio ";
static const char *fmt_str = "a=fmtp: ";
static const char ip_str[] = "c=IN IP4 ";
static const char aud_str[] = "m=audio ";
static const char fmt_str[] = "a=fmtp:";
char buf[128];
char *running, *token;