projects
/
proxmark3-svn
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ADD: more keys
[proxmark3-svn]
/
client
/
proxmark3.c
diff --git
a/client/proxmark3.c
b/client/proxmark3.c
index 21108cd54e5a0cdc94f5df8df576308b0d7ad4b0..0fa554259425274419a0f45bc0836c04ad257259 100644
(file)
--- a/
client/proxmark3.c
+++ b/
client/proxmark3.c
@@
-127,8
+127,8
@@
static void *main_loop(void *targ) {
while(1) {
// If there is a script file
while(1) {
// If there is a script file
- if (script_file)
- {
+ if (script_file)
{
+
if (!fgets(script_cmd_buf, sizeof(script_cmd_buf), script_file)) {
fclose(script_file);
script_file = NULL;
if (!fgets(script_cmd_buf, sizeof(script_cmd_buf), script_file)) {
fclose(script_file);
script_file = NULL;
@@
-142,9
+142,10
@@
static void *main_loop(void *targ) {
if (nl)
*nl = '\0';
if (nl)
*nl = '\0';
-
- if ((cmd = (char*) malloc(strlen(script_cmd_buf) + 1)) != NULL) {
- memset(cmd, 0, strlen(script_cmd_buf));
+
+ int newlen = strlen(script_cmd_buf);
+ if ((cmd = (char*) malloc( newlen + 1)) != NULL) {
+ memset(cmd, 0x00, newlen);
strcpy(cmd, script_cmd_buf);
printf("%s\n", cmd);
}
strcpy(cmd, script_cmd_buf);
printf("%s\n", cmd);
}
@@
-153,6
+154,8
@@
static void *main_loop(void *targ) {
cmd = readline(PROXPROMPT);
}
cmd = readline(PROXPROMPT);
}
+ // this one should pick up all non-null cmd...
+ // why is there a
if (cmd) {
while(cmd[strlen(cmd) - 1] == ' ')
if (cmd) {
while(cmd[strlen(cmd) - 1] == ' ')
@@
-166,26
+169,29
@@
static void *main_loop(void *targ) {
if (ret == 99)
break;
}
if (ret == 99)
break;
}
+ free(cmd);
+ cmd = 0;
} else {
printf("\n");
break;
}
}
} else {
printf("\n");
break;
}
}
-
+
+ if (script_file) {
+ fclose(script_file);
+ script_file = NULL;
+ }
+
write_history(".history");
free(cmd);
write_history(".history");
free(cmd);
+ cmd = 0;
if (arg->usb_present == 1) {
rarg.run = 0;
pthread_join(reader_thread, NULL);
}
if (arg->usb_present == 1) {
rarg.run = 0;
pthread_join(reader_thread, NULL);
}
- if (script_file) {
- fclose(script_file);
- script_file = NULL;
- }
-
ExitGraphics();
pthread_exit(NULL);
return NULL;
ExitGraphics();
pthread_exit(NULL);
return NULL;
@@
-278,6
+284,6
@@
int main(int argc, char* argv[]) {
// clean up mutex
pthread_mutex_destroy(&print_lock);
// clean up mutex
pthread_mutex_destroy(&print_lock);
-
+
exit(0);
}
exit(0);
}
Impressum
,
Datenschutz