projects
/
proxmark3-svn
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ADD: added the nonce_struct needed for @marshmellow42 's enhanced "sim x" attack.
[proxmark3-svn]
/
client
/
cmdparser.c
diff --git
a/client/cmdparser.c
b/client/cmdparser.c
index 3820de1769852ba5350998d8a277acee62246db3..b622df4f700d7dad3d438e7c58fc841c7e54ec92 100644
(file)
--- a/
client/cmdparser.c
+++ b/
client/cmdparser.c
@@
-22,32
+22,28
@@
void CmdsHelp(const command_t Commands[])
int i = 0;
while (Commands[i].Name)
{
int i = 0;
while (Commands[i].Name)
{
- if(Commands[i].Offline)
- {
- PrintAndLog("%-16s \t%s", Commands[i].Name, Commands[i].Help);
- }else
- {
- PrintAndLog("%-16s @\t%s", Commands[i].Name, Commands[i].Help);
- }
+ if (!offline || Commands[i].Offline)
+ PrintAndLog("%-16s %s", Commands[i].Name, Commands[i].Help);
++i;
}
}
++i;
}
}
-void CmdsParse(const command_t Commands[], const char *Cmd)
+
+int CmdsParse(const command_t Commands[], const char *Cmd)
{
if(strcmp( Cmd, "XX_internal_command_dump_XX") == 0)
{// Help dump children
dumpCommandsRecursive(Commands, 0);
{
if(strcmp( Cmd, "XX_internal_command_dump_XX") == 0)
{// Help dump children
dumpCommandsRecursive(Commands, 0);
-
return
;
+
return 0
;
}
if(strcmp( Cmd, "XX_internal_command_dump_markdown_XX") == 0)
{// Markdown help dump children
dumpCommandsRecursive(Commands, 1);
}
if(strcmp( Cmd, "XX_internal_command_dump_markdown_XX") == 0)
{// Markdown help dump children
dumpCommandsRecursive(Commands, 1);
-
return
;
+
return 0
;
}
char cmd_name[32];
int len = 0;
}
char cmd_name[32];
int len = 0;
- memset(cmd_name, 0,
32
);
+ memset(cmd_name, 0,
sizeof(cmd_name)
);
sscanf(Cmd, "%31s%n", cmd_name, &len);
int i = 0;
while (Commands[i].Name && strcmp(Commands[i].Name, cmd_name))
sscanf(Cmd, "%31s%n", cmd_name, &len);
int i = 0;
while (Commands[i].Name && strcmp(Commands[i].Name, cmd_name))
@@
-70,11
+66,13
@@
void CmdsParse(const command_t Commands[], const char *Cmd)
if (Commands[i].Name) {
while (Cmd[len] == ' ')
++len;
if (Commands[i].Name) {
while (Cmd[len] == ' ')
++len;
- Commands[i].Parse(Cmd + len);
+
return
Commands[i].Parse(Cmd + len);
} else {
// show help for selected hierarchy or if command not recognised
CmdsHelp(Commands);
}
} else {
// show help for selected hierarchy or if command not recognised
CmdsHelp(Commands);
}
+
+ return 0;
}
char pparent[512] = {0};
}
char pparent[512] = {0};
@@
-91,8
+89,8
@@
void dumpCommandsRecursive(const command_t cmds[], int markdown)
// First, dump all single commands, which are not a container for
// other commands
if (markdown) {
// First, dump all single commands, which are not a container for
// other commands
if (markdown) {
- printf("
command|offline|description\
n");
- printf("
-------|-------|-----------\n
");
+ printf("
|%-*s|%-*s|%s\n",w_cmd,"command",w_off,"offline","descriptio
n");
+ printf("
|%-*s|%-*s|%s\n",w_cmd,"-------",w_off,"-------","-----------
");
} else {
printf("%-*s|%-*s|%s\n",w_cmd,"command",w_off,"offline","description");
printf("%-*s|%-*s|%s\n",w_cmd,"-------",w_off,"-------","-----------");
} else {
printf("%-*s|%-*s|%s\n",w_cmd,"command",w_off,"offline","description");
printf("%-*s|%-*s|%s\n",w_cmd,"-------",w_off,"-------","-----------");
@@
-105,7
+103,7
@@
void dumpCommandsRecursive(const command_t cmds[], int markdown)
if ( cmds[i].Offline) cmd_offline = "Y";
if (markdown)
if ( cmds[i].Offline) cmd_offline = "Y";
if (markdown)
- printf("|`%s%
s`|%s|`%s`|\n", parent, cmds[i].Name,
cmd_offline, cmds[i].Help);
+ printf("|`%s%
-*s`|%-*s|`%s`\n", parent, w_cmd-(int)strlen(parent)-2, cmds[i].Name, w_off,
cmd_offline, cmds[i].Help);
else
printf("%s%-*s|%-*s|%s\n", parent, w_cmd-(int)strlen(parent), cmds[i].Name, w_off, cmd_offline, cmds[i].Help);
++i;
else
printf("%s%-*s|%-*s|%s\n", parent, w_cmd-(int)strlen(parent), cmds[i].Name, w_off, cmd_offline, cmds[i].Help);
++i;
Impressum
,
Datenschutz