# HG changeset patch # User Mychaela Falconia # Date 1615008266 0 # Node ID 2545dd27ca380f49b5bbea6cfee6709116d67ba7 # Parent f4edccd4b583e5448843db7db9a0469d4c4fe3dd fc-simtool write-imsi-sh command implemented diff -r f4edccd4b583 -r 2545dd27ca38 simtool/dispatch.c --- a/simtool/dispatch.c Sat Mar 06 05:07:46 2021 +0000 +++ b/simtool/dispatch.c Sat Mar 06 05:24:26 2021 +0000 @@ -98,6 +98,7 @@ extern int cmd_write_iccid_sh18(); extern int cmd_write_iccid_sh19(); extern int cmd_write_imsi(); +extern int cmd_write_imsi_sh(); extern int current_ef_inval(); extern int current_ef_rehab(); @@ -224,6 +225,7 @@ {"write-iccid-sh18", 1, 1, 0, cmd_write_iccid_sh18}, {"write-iccid-sh19", 1, 1, 0, cmd_write_iccid_sh19}, {"write-imsi", 1, 1, 0, cmd_write_imsi}, + {"write-imsi-sh", 1, 1, 0, cmd_write_imsi_sh}, {0, 0, 0, 0, 0} }; diff -r f4edccd4b583 -r 2545dd27ca38 simtool/miscadm.c --- a/simtool/miscadm.c Sat Mar 06 05:07:46 2021 +0000 +++ b/simtool/miscadm.c Sat Mar 06 05:24:26 2021 +0000 @@ -120,3 +120,18 @@ pack_reversed_nibbles(nibbles, binrec + 1, 8); return write_imsi_bin(binrec); } + +cmd_write_imsi_sh(argc, argv) + char **argv; +{ + int rc; + u_char nibbles[16], binrec[9]; + + rc = parse_decimal_shorthand(argv[1], nibbles + 1, 15); + if (rc < 0) + return(rc); + nibbles[0] = 9; + binrec[0] = 8; + pack_reversed_nibbles(nibbles, binrec + 1, 8); + return write_imsi_bin(binrec); +}