client: Allow specification of clientId / slotNr as command line arguments
Change-Id: I0a96a49af8bceb5f14db056f11619a12ef42f4f1
diff --git a/src/remsim_client.c b/src/remsim_client.c
index 2469ac5..38092b4 100644
--- a/src/remsim_client.c
+++ b/src/remsim_client.c
@@ -174,7 +174,7 @@
" -i --server-ip A.B.C.D remsim-server IP address\n"
" -p --server-port 13245 remsim-server TCP port\n"
" -i --client-id <0-65535> RSPRO ClientId of this client\n"
- " -s --client-slot <0-65535> RSPRO SlotNr of this client\n"
+ " -n --client-slot <0-65535> RSPRO SlotNr of this client\n"
);
}
@@ -187,11 +187,11 @@
{ "server-ip", 1, 0, 'i' },
{ "server-port", 1, 0, 'p' },
{ "client-id", 1, 0, 'c' },
- { "client-slot", 1, 0, 's' },
+ { "client-slot", 1, 0, 'n' },
{ 0, 0, 0, 0 }
};
- c = getopt_long(argc, argv, "hi:p:c:s:",
+ c = getopt_long(argc, argv, "hi:p:c:n:",
long_options, &option_index);
if (c == -1)
break;
diff --git a/src/simtrace2-remsim_client.c b/src/simtrace2-remsim_client.c
index ca1751c..3555ced 100644
--- a/src/simtrace2-remsim_client.c
+++ b/src/simtrace2-remsim_client.c
@@ -693,6 +693,8 @@
{
printf( "\t-s\t--server-host HOST\n"
"\t-p\t--bankd-port PORT\n"
+ "\t-c\t--client-id <0-65535>\n"
+ "\t-n\t--slot-nr <0-65535>\n"
"\t-h\t--help\n"
"\t-i\t--gsmtap-ip\tA.B.C.D\n"
"\t-k\t--keep-running\n"
@@ -711,6 +713,8 @@
static const struct option opts[] = {
{ "server-host", 1, 0, 's' },
{ "server-port", 1, 0, 'p' },
+ { "client-id", 1, 0, 'c' },
+ { "client-slot", 1, 0, 'n' },
{ "help", 0, 0, 'h' },
{ "gsmtap-ip", 1, 0, 'i' },
{ "keep-running", 0, 0, 'k' },
@@ -736,6 +740,7 @@
int server_port = 9998;
int if_num = 0, vendor_id = -1, product_id = -1;
int config_id = -1, altsetting = 0, addr = -1;
+ int client_id = -1, client_slot = -1;
char *server_host = "127.0.0.1";
char *path = NULL;
uint8_t atr_data[33] = { 0x3B, 0x00 }; // the shortest simplest ATR possible
@@ -746,7 +751,7 @@
while (1) {
int option_index = 0;
- c = getopt_long(argc, argv, "s:p:hi:kV:P:C:I:S:A:H:a:", opts, &option_index);
+ c = getopt_long(argc, argv, "s:p:c:n:hi:kV:P:C:I:S:A:H:a:", opts, &option_index);
if (c == -1)
break;
switch (c) {
@@ -756,6 +761,12 @@
case 'p':
server_port = atoi(optarg);
break;
+ case 'c':
+ client_id = atoi(optarg);
+ break;
+ case 'n':
+ client_slot = atoi(optarg);
+ break;
case 'h':
print_help();
exit(0);
@@ -827,6 +838,15 @@
g_client = talloc_zero(g_tall_ctx, struct bankd_client);
+ if (client_id != -1) {
+ /* default to client slot 0 */
+ if (client_slot == -1)
+ client_slot = 0;
+ g_client->srv_conn.clslot = talloc_zero(g_client, ClientSlot_t);
+ g_client->srv_conn.clslot->clientId = client_id;
+ g_client->srv_conn.clslot->slotNr = client_slot;
+ }
+
srvc = &g_client->srv_conn;
srvc->server_host = server_host;
srvc->server_port = server_port;