GPRS: clarify ip/frgre union use

* add comment about underlying assumption that structs in ip/frgre union
  members in gprs_nsvc struct have the same memory layout
* remove such assumption from gprs_ns_ll_str()
* use gprs_ns_ll_str() for NSE dump

Change-Id: Idcb912b7b3f7460fd2b058e16650c0bde8f757ee
diff --git a/include/osmocom/gprs/gprs_ns.h b/include/osmocom/gprs/gprs_ns.h
index 2d2f86e..4fb9f58 100644
--- a/include/osmocom/gprs/gprs_ns.h
+++ b/include/osmocom/gprs/gprs_ns.h
@@ -140,6 +140,8 @@
 	/*! which link-layer are we based on? */
 	enum gprs_ns_ll ll;
 
+	/*! make sure to always keep bts_addr as first struct member to not break the assumption
+	  that those structs are similar */
 	union {
 		struct {
 			struct sockaddr_in bts_addr;