diff options
Diffstat (limited to 'src/sms_delete.c')
-rw-r--r-- | src/sms_delete.c | 18 |
1 files changed, 17 insertions, 1 deletions
diff --git a/src/sms_delete.c b/src/sms_delete.c index b45546e..34a0655 100644 --- a/src/sms_delete.c +++ b/src/sms_delete.c @@ -141,6 +141,7 @@ int sms_delete(int argc, char **argv) int option_index; int ret; int fd; + int tmp, ret_3gpp, ret_3gpp2 = false; while ((i = getopt_long(argc, argv, short_options, long_options, &option_index)) >= 0) { switch (i) { @@ -165,7 +166,22 @@ int sms_delete(int argc, char **argv) return false; } - ret = do_delete(fd, argc, argv); + // LNA7 with Verizon SIM SMS 3GPP, 3GPP2 WORKAROUND + if (is_vzw_lna7()) { + tmp = atcmd_plus_qcfg_write(fd, SMS_FORMAT_3GPP); + if (tmp == 0) { + ret_3gpp = do_delete(fd, argc, argv); + } + + tmp = atcmd_plus_qcfg_write(fd, SMS_FORMAT_3GPP2); + if (tmp == 0) { + ret_3gpp2 = do_delete(fd, argc, argv); + } + + ret = (ret_3gpp || ret_3gpp2); + } else { + ret = do_delete(fd, argc, argv); + } sms_device_close(fd); |