diff --git a/src/hnbgw_cn.c b/src/hnbgw_cn.c
index f97f627..0e993e2 100644
--- a/src/hnbgw_cn.c
+++ b/src/hnbgw_cn.c
@@ -235,7 +235,7 @@
 			      data, len, 0, 0);
 	if (dec_ret.code != RC_OK) {
 		LOGP(DRANAP, LOGL_ERROR, "Error in RANAP ASN.1 decode\n");
-		return rc;
+		return -1;
 	}
 
 	rc = _cn_ranap_rx(cnlink, pdu, data, len);
diff --git a/src/hnbgw_hnbap.c b/src/hnbgw_hnbap.c
index 59150c9..0473482 100644
--- a/src/hnbgw_hnbap.c
+++ b/src/hnbgw_hnbap.c
@@ -568,7 +568,7 @@
 			      msg->data, msgb_length(msg), 0, 0);
 	if (dec_ret.code != RC_OK) {
 		LOGP(DHNBAP, LOGL_ERROR, "Error in ASN.1 decode\n");
-		return rc;
+		return -1;
 	}
 
 	rc = _hnbgw_hnbap_rx(hnb, pdu);
diff --git a/src/hnbgw_ranap.c b/src/hnbgw_ranap.c
index 7a505a5..7fd6d0a 100644
--- a/src/hnbgw_ranap.c
+++ b/src/hnbgw_ranap.c
@@ -218,7 +218,7 @@
 			      data, len, 0, 0);
 	if (dec_ret.code != RC_OK) {
 		LOGP(DRANAP, LOGL_ERROR, "Error in RANAP ASN.1 decode\n");
-		return rc;
+		return -1;
 	}
 
 	rc = _hnbgw_ranap_rx(msg->dst, pdu);
diff --git a/src/hnbgw_rua.c b/src/hnbgw_rua.c
index ca745b1..2c34421 100644
--- a/src/hnbgw_rua.c
+++ b/src/hnbgw_rua.c
@@ -537,7 +537,7 @@
 			      msg->data, msgb_length(msg), 0, 0);
 	if (dec_ret.code != RC_OK) {
 		LOGP(DRUA, LOGL_ERROR, "Error in ASN.1 decode\n");
-		return rc;
+		return -1;
 	}
 
 	rc = _hnbgw_rua_rx(msg, pdu);
diff --git a/src/ranap_common_cn.c b/src/ranap_common_cn.c
index 3736dce..d02eb37 100644
--- a/src/ranap_common_cn.c
+++ b/src/ranap_common_cn.c
@@ -296,7 +296,7 @@
 			      data, len, 0, 0);
 	if (dec_ret.code != RC_OK) {
 		LOGP(DRANAP, LOGL_ERROR, "Error in RANAP ASN.1 decode\n");
-		return rc;
+		return -1;
 	}
 
 	message.direction = pdu->present;
@@ -525,7 +525,7 @@
 			      data, len, 0, 0);
 	if (dec_ret.code != RC_OK) {
 		LOGP(DRANAP, LOGL_ERROR, "Error in RANAP ASN.1 decode\n");
-		return rc;
+		return -1;
 	}
 
 	message.direction = pdu->present;
