diff --git a/openbsc/tests/gbproxy/gbproxy_test.c b/openbsc/tests/gbproxy/gbproxy_test.c
index 0c18ab7..0fc8af2 100644
--- a/openbsc/tests/gbproxy/gbproxy_test.c
+++ b/openbsc/tests/gbproxy/gbproxy_test.c
@@ -956,7 +956,7 @@
 int gprs_ns_callback(enum gprs_ns_evt event, struct gprs_nsvc *nsvc,
 			 struct msgb *msg, uint16_t bvci)
 {
-	printf("CALLBACK, event %d, msg length %ld, bvci 0x%04x\n%s\n\n",
+	printf("CALLBACK, event %d, msg length %d, bvci 0x%04x\n%s\n\n",
 			event, msgb_bssgp_len(msg), bvci,
 			osmo_hexdump(msgb_l2(msg), msgb_l2len(msg)));
 
@@ -983,15 +983,15 @@
 		real_sendto = dlsym(RTLD_NEXT, "sendto");
 
 	if (dest_host == REMOTE_BSS_ADDR)
-		printf("MESSAGE to BSS at 0x%08x:%d, msg length %zu\n%s\n\n",
+		printf("MESSAGE to BSS at 0x%08x:%d, msg length %d\n%s\n\n",
 		       dest_host, dest_port,
 		       len, osmo_hexdump(buf, len));
 	else if (dest_host == REMOTE_SGSN_ADDR)
-		printf("MESSAGE to SGSN at 0x%08x:%d, msg length %zu\n%s\n\n",
+		printf("MESSAGE to SGSN at 0x%08x:%d, msg length %d\n%s\n\n",
 		       dest_host, dest_port,
 		       len, osmo_hexdump(buf, len));
 	else if (dest_host == REMOTE_SGSN2_ADDR)
-		printf("MESSAGE to SGSN 2 at 0x%08x:%d, msg length %zu\n%s\n\n",
+		printf("MESSAGE to SGSN 2 at 0x%08x:%d, msg length %d\n%s\n\n",
 		       dest_host, dest_port,
 		       len, osmo_hexdump(buf, len));
 	else
@@ -1015,15 +1015,15 @@
 
 	if (nsei == SGSN_NSEI)
 		printf("NS UNITDATA MESSAGE to SGSN, BVCI 0x%04x, "
-		       "msg length %zu (%s)\n",
+		       "msg length %d (%s)\n",
 		       bvci, len, __func__);
 	else if (nsei == SGSN2_NSEI)
 		printf("NS UNITDATA MESSAGE to SGSN 2, BVCI 0x%04x, "
-		       "msg length %zu (%s)\n",
+		       "msg length %d (%s)\n",
 		       bvci, len, __func__);
 	else
 		printf("NS UNITDATA MESSAGE to BSS, BVCI 0x%04x, "
-		       "msg length %zu (%s)\n",
+		       "msg length %d (%s)\n",
 		       bvci, len, __func__);
 
 	if (received_messages) {
@@ -1253,7 +1253,7 @@
 	struct msgb *msg;
 	int ret;
 	if (data_len > NS_ALLOC_SIZE - NS_ALLOC_HEADROOM) {
-		fprintf(stderr, "message too long: %zu\n", data_len);
+		fprintf(stderr, "message too long: %d\n", data_len);
 		return -1;
 	}
 
