Add SDU length for an NSE (== BSSGP PDU size)
Prepare tracking the SDU from NS. Initialize with a conservative default.
The value is not yet updated, that will happen in a later patch.
Related: OS#4889
Depends: I5016b295db6185ec131d83089cf6c806e34ef1b6 (libosmocore.git)
Depends: I9bb82ead27366b7370c9ff968e03ca2113ec11f0 (libosmocore.git)
Change-Id: Ic1080abde942ec5a2ae7cdee0ffe716a2fbddb1e
diff --git a/include/osmocom/sgsn/gb_proxy.h b/include/osmocom/sgsn/gb_proxy.h
index a36f305..c9d2fca 100644
--- a/include/osmocom/sgsn/gb_proxy.h
+++ b/include/osmocom/sgsn/gb_proxy.h
@@ -11,6 +11,7 @@
#include <osmocom/gsm/gsm48.h>
#include <osmocom/gsm/protocol/gsm_23_003.h>
+#include <osmocom/gprs/frame_relay.h>
#include <osmocom/gprs/gprs_ns2.h>
#include <osmocom/vty/command.h>
@@ -21,6 +22,9 @@
#define GBPROXY_INIT_VU_GEN_TX 256
#define GBPROXY_MAX_NR_SGSN 16
+/* Set conservative default BSSGP SDU (FR SDU - size of NS UNITDATA IEs) */
+#define DEFAULT_NSE_SDU (FRAME_RELAY_SDU - 4)
+
/* BVCI uses 16 bits */
#define BVC_LOG_CTX_FLAG (1<<17)
@@ -161,6 +165,9 @@
/* NSEI of the NSE */
uint16_t nsei;
+ /* Maximum side of the NS-UNITDATA NS SDU that can be transported by the NSE */
+ uint16_t max_sdu_len;
+
/* Are we facing towards a SGSN (true) or BSS (false) */
bool sgsn_facing;