X-Git-Url: http://git.tuebingen.mpg.de/?p=paraslash.git;a=blobdiff_plain;f=command.c;h=24ddf7897d81e3b27c6f1777f975da49ca31ee52;hp=57e851f938c700044be20b62226dc07fae63c07e;hb=3fe80106bf0dc11987be660db2a39f2cc0a692a4;hpb=db1a8e68e58a03bcf06ccc91e78c4da94e7b9144 diff --git a/command.c b/command.c index 57e851f9..24ddf789 100644 --- a/command.c +++ b/command.c @@ -37,6 +37,7 @@ #include "afs_command_list.h" #include "sched.h" #include "signal.h" +#include "version.h" /** Commands including options must be shorter than this. */ #define MAX_COMMAND_LEN 32768 @@ -255,7 +256,8 @@ int com_si(struct rc4_context *rc4c, int argc, __a_unused char * const * argv) free(info); } ut = uptime_str(); - ret = rc4_send_va_buffer(rc4c, "up: %s\nplayed: %u\n" + ret = rc4_send_va_buffer(rc4c, "version: " GIT_VERSION "\n" + "up: %s\nplayed: %u\n" "server_pid: %d\n" "afs_pid: %d\n" "connections (active/accepted/total): %u/%u/%u\n" @@ -458,10 +460,8 @@ int com_help(struct rc4_context *rc4c, int argc, char * const * argv) } /* argument given for help */ cmd = get_cmd_ptr(argv[1], &handler); - if (!cmd) { - free(handler); + if (!cmd) return -E_BAD_CMD; - } perms = cmd_perms_itohuman(cmd->perms); ret = rc4_send_va_buffer(rc4c, "%s - %s\n\n" @@ -745,24 +745,24 @@ __noreturn void handle_connect(int fd, const char *peername) /* we need a blocking fd here as recv() might return EAGAIN otherwise. */ ret = mark_fd_blocking(fd); if (ret < 0) - goto err_out; + goto net_err; /* send Welcome message */ ret = send_va_buffer(fd, "This is para_server, version " PACKAGE_VERSION ".\n" ); if (ret < 0) - goto err_out; + goto net_err; /* recv auth request line */ ret = recv_buffer(fd, buf, sizeof(buf)); if (ret < 0) - goto err_out; + goto net_err; if (ret < 10) { ret = -E_AUTH_REQUEST; - goto err_out; + goto net_err; } numbytes = ret; ret = -E_AUTH_REQUEST; if (strncmp(buf, AUTH_REQUEST_MSG, strlen(AUTH_REQUEST_MSG))) - goto err_out; + goto net_err; p = buf + strlen(AUTH_REQUEST_MSG); PARA_DEBUG_LOG("received auth request for user %s\n", p); ret = -E_BAD_USER; @@ -772,7 +772,7 @@ __noreturn void handle_connect(int fd, const char *peername) ret = para_encrypt_buffer(u->rsa, rand_buf, sizeof(rand_buf), (unsigned char *)buf); if (ret < 0) - goto err_out; + goto net_err; numbytes = ret; } else { /*