aboutsummaryrefslogtreecommitdiffstats
path: root/sgsnemu/sgsnemu.c
diff options
context:
space:
mode:
authorHarald Welte <laforge@gnumonks.org>2017-09-24 11:50:20 +0800
committerHarald Welte <laforge@gnumonks.org>2017-09-24 23:10:05 +0800
commitfbb9c7f59a7f112608b59c7692c1fddd1a5e8c23 (patch)
treeb54b7db8798e9d4a49fe608d41e038d70f147eab /sgsnemu/sgsnemu.c
parent93fed3bc510563e7d88cadafa7eada2ae4182213 (diff)
sgsnemu: Add --no-tx-gpdu-seq option to suppress transmission of G-PDU sequence numbers
Diffstat (limited to 'sgsnemu/sgsnemu.c')
-rw-r--r--sgsnemu/sgsnemu.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/sgsnemu/sgsnemu.c b/sgsnemu/sgsnemu.c
index 2bfe801..4cc2021 100644
--- a/sgsnemu/sgsnemu.c
+++ b/sgsnemu/sgsnemu.c
@@ -117,6 +117,7 @@ struct {
int imeisv_given;
struct ul16_t msisdn;
int norecovery_given;
+ int tx_gpdu_seq;
} options;
/* Definitions to use for PING. Most of the ping code was derived from */
@@ -297,6 +298,7 @@ int process_options(int argc, char **argv)
printf("pingcount: %d\n", args_info.pingcount_arg);
printf("pingquiet: %d\n", args_info.pingquiet_flag);
printf("norecovery: %d\n", args_info.norecovery_flag);
+ printf("no-tx-gpdu-seq: %d\n", args_info.no_tx_gpdu_seq_flag);
}
/* Try out our new parser */
@@ -354,6 +356,7 @@ int process_options(int argc, char **argv)
printf("pingcount: %d\n", args_info.pingcount_arg);
printf("pingquiet: %d\n", args_info.pingquiet_flag);
printf("norecovery: %d\n", args_info.norecovery_flag);
+ printf("no-tx-gpdu-seq: %d\n", args_info.no_tx_gpdu_seq_flag);
}
}
@@ -918,6 +921,11 @@ int process_options(int argc, char **argv)
/* norecovery */
options.norecovery_given = args_info.norecovery_flag;
+ if (args_info.no_tx_gpdu_seq_flag)
+ options.tx_gpdu_seq = 0;
+ else
+ options.tx_gpdu_seq = 1;
+
return 0;
}
@@ -1591,6 +1599,8 @@ int main(int argc, char **argv)
pdp->cch_pdp = options.cch; /* 2048 = Normal, 1024 = Prepaid,
512 = Flat rate, 256 = Hot billing */
+ pdp->tx_gpdu_seq = options.tx_gpdu_seq;
+
/* Create context */
/* We send this of once. Retransmissions are handled by gtplib */
gtp_create_context_req(gsn, pdp, &iparr[n]);