diff --git a/include/osmocom/gprs/gprs_ns.h b/include/osmocom/gprs/gprs_ns.h
index 4fb9f58..b368ad9 100644
--- a/include/osmocom/gprs/gprs_ns.h
+++ b/include/osmocom/gprs/gprs_ns.h
@@ -194,7 +194,7 @@
 int gprs_ns_vty_init(struct gprs_ns_inst *nsi);
 
 /* Resturn peer info as string (NOTE: the buffer is allocated statically) */
-const char *gprs_ns_ll_str(struct gprs_nsvc *nsvc);
+const char *gprs_ns_ll_str(const struct gprs_nsvc *nsvc);
 
 /* Copy the link layer info from other into nsvc */
 void gprs_ns_ll_copy(struct gprs_nsvc *nsvc, struct gprs_nsvc *other);
diff --git a/src/gb/gprs_ns.c b/src/gb/gprs_ns.c
index 679b59d..a00c8e5 100644
--- a/src/gb/gprs_ns.c
+++ b/src/gb/gprs_ns.c
@@ -1170,7 +1170,7 @@
 	return rc;
 }
 
-const char *gprs_ns_ll_str(struct gprs_nsvc *nsvc)
+const char *gprs_ns_ll_str(const struct gprs_nsvc *nsvc)
 {
 	static char buf[80];
 
diff --git a/src/gb/gprs_ns_vty.c b/src/gb/gprs_ns_vty.c
index a3f7b2b..e8ef2a2 100644
--- a/src/gb/gprs_ns_vty.c
+++ b/src/gb/gprs_ns_vty.c
@@ -156,7 +156,7 @@
 	return CMD_SUCCESS;
 }
 
-static void dump_nse(struct vty *vty, struct gprs_nsvc *nsvc, bool stats, bool persistent_only)
+static void dump_nse(struct vty *vty, const struct gprs_nsvc *nsvc, bool stats, bool persistent_only)
 {
 	if (persistent_only)
 		if (!nsvc->persistent)
@@ -186,7 +186,7 @@
 	}
 }
 
-static void dump_ns(struct vty *vty, struct gprs_ns_inst *nsi, bool stats, bool persistent_only)
+static void dump_ns(struct vty *vty, const struct gprs_ns_inst *nsi, bool stats, bool persistent_only)
 {
 	struct gprs_nsvc *nsvc;
 	struct in_addr ia;
