aboutsummaryrefslogtreecommitdiffstats
path: root/sgsnemu/sgsnemu.c
diff options
context:
space:
mode:
Diffstat (limited to 'sgsnemu/sgsnemu.c')
-rw-r--r--sgsnemu/sgsnemu.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/sgsnemu/sgsnemu.c b/sgsnemu/sgsnemu.c
index ecf8ee8..53a1cc0 100644
--- a/sgsnemu/sgsnemu.c
+++ b/sgsnemu/sgsnemu.c
@@ -374,7 +374,9 @@ int process_options(int argc, char **argv) {
printf("Invalid IMSI\n");
return -1;
}
- options.imsi = ((uint64_t) (args_info.imsi_arg[ 0]-48));
+
+ options.imsi = 0xf000000000000000;
+ options.imsi |= ((uint64_t) (args_info.imsi_arg[ 0]-48));
options.imsi |= ((uint64_t) (args_info.imsi_arg[ 1]-48)) << 4;
options.imsi |= ((uint64_t) (args_info.imsi_arg[ 2]-48)) << 8;
options.imsi |= ((uint64_t) (args_info.imsi_arg[ 3]-48)) << 12;
@@ -655,6 +657,8 @@ int imsi_add(uint64_t src, uint64_t *dst, int add) {
i64 = i64 / 10;
}
+ *dst |= 0xf000000000000000;
+
return 0;
}