X-Git-Url: http://git.tuebingen.mpg.de/?a=blobdiff_plain;f=command.c;h=928990e6911a8cb5b52b2a0ed6f3aea41bf611e1;hb=1446f99e3adc59d868726382a2ac7cec105372a7;hp=acd539693748deebb035ba08e07b9bb49394bd1f;hpb=6aa6fcd54de730b4dfc75ca60f8c21009d60da0d;p=paraslash.git diff --git a/command.c b/command.c index acd53969..928990e6 100644 --- a/command.c +++ b/command.c @@ -74,12 +74,12 @@ static char *vss_status_tohuman(unsigned int flags) */ char *cmd_perms_itohuman(unsigned int perms) { - char *msg = para_malloc(7 * sizeof(char)); + char *msg = para_malloc(5 * sizeof(char)); - msg[0] = perms & DB_READ? 'd' : '-'; - msg[1] = perms & DB_WRITE? 'D' : '-'; - msg[2] = perms & VSS_READ? 'a' : '-'; - msg[3] = perms & VSS_WRITE? 'A' : '-'; + msg[0] = perms & DB_READ? 'a' : '-'; + msg[1] = perms & DB_WRITE? 'A' : '-'; + msg[2] = perms & VSS_READ? 'v' : '-'; + msg[3] = perms & VSS_WRITE? 'V' : '-'; msg[4] = '\0'; return msg; } @@ -462,9 +462,9 @@ static int send_list_of_commands(int fd, struct server_command *cmd, /* always returns string that must be freed by the caller in handler */ static struct server_command *get_cmd_ptr(char *name, char **handler) { - struct server_command *cmd = cmd_struct; + struct server_command *cmd; - for (cmd = cmd_struct; cmd->name; cmd++) + for (cmd = server_cmds; cmd->name; cmd++) if (!strcmp(cmd->name, name)) { if (handler) *handler = para_strdup("para_server"); /* server commands */ @@ -492,7 +492,7 @@ int com_help(int fd, int argc, char **argv) if (argc < 2) { /* no argument given, print list of commands */ - if ((ret = send_list_of_commands(fd, cmd_struct, "server")) < 0) + if ((ret = send_list_of_commands(fd, server_cmds, "server")) < 0) return ret; mmd_lock(); handler = para_strdup(selectors[mmd->selector_num].name); @@ -510,20 +510,17 @@ int com_help(int fd, int argc, char **argv) } perms = cmd_perms_itohuman(cmd->perms); ret = send_va_buffer(fd, - "NAME\n\t%s - %s\n" - "SYNOPSIS\n\t para_client %s\n" - "DESCRIPTION\n%s\n" - "HANDLER\n" - "This command is handled by %s.\n\n" - "PERMISSIONS\n" - "Needed privileges for %s: %s\n", + "%s - %s\n\n" + "handler: %s\n" + "permissions: %s\n" + "usage: %s\n\n" + "%s\n", argv[1], cmd->description, - cmd->synopsis, - cmd->help, handler, - argv[1], - perms + perms, + cmd->usage, + cmd->help ); free(perms); free(handler);