gprs_ns2: const the return value of gprs_ns2_ip_vc_sockaddr / gprs_ns2_ip_bind_sockaddr

The sockaddr should not be changed.
free and create the bind/nsvc if the address should be changed.

Change-Id: I371ac2361b569e36722b02fc9cd82ec8da2fa9e3
diff --git a/src/gb/gprs_ns2_sns.c b/src/gb/gprs_ns2_sns.c
index fabc134..2756226 100644
--- a/src/gb/gprs_ns2_sns.c
+++ b/src/gb/gprs_ns2_sns.c
@@ -473,7 +473,7 @@
 	struct gprs_ns2_nse *nse = nse_inst_from_fi(fi);
 	struct gprs_ns2_vc *nsvc;
 	struct osmo_sockaddr sa = {};
-	struct osmo_sockaddr *remote;
+	const struct osmo_sockaddr *remote;
 	uint8_t new_signal;
 	uint8_t new_data;
 
@@ -533,7 +533,7 @@
 	struct ns2_sns_state *gss = (struct ns2_sns_state *) fi->priv;
 	struct gprs_ns2_nse *nse = nse_inst_from_fi(fi);
 	struct gprs_ns2_vc *nsvc, *tmp;
-	struct osmo_sockaddr *remote;
+	const struct osmo_sockaddr *remote;
 	struct osmo_sockaddr sa = {};
 
 	if (ip4) {
@@ -1239,7 +1239,9 @@
 	struct gprs_ns_ie_ip6_elem *ip6_elems;
 	struct gprs_ns2_vc_bind *bind;
 	struct gprs_ns2_inst *nsi = nse->nsi;
-	struct osmo_sockaddr *sa, local;
+	const struct osmo_sockaddr *sa;
+	struct osmo_sockaddr local;
+
 	gss->ip = remote->u.sa.sa_family == AF_INET ? IPv4 : IPv6;
 
 	gss->initial = *remote;