summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Johnston <matt@ucc.asn.au>2014-07-27 22:06:26 +0800
committerMatt Johnston <matt@ucc.asn.au>2014-07-27 22:06:26 +0800
commitb4e713e50ea9fd2fe234bd8bc6c414f8ec648b72 (patch)
treec2cc42986c4d17ad4723d1b58a9bc8ba22fd8380
parent2bddd34a4ddeb0c45c05be848e9b6158fba55979 (diff)
downloaddropbear-b4e713e50ea9fd2fe234bd8bc6c414f8ec648b72.tar.gz
Add '-V' for version
-h should exit with success Update manpages
-rw-r--r--cli-runopts.c5
-rw-r--r--common-runopts.c5
-rw-r--r--dbclient.18
-rw-r--r--dropbear.89
-rw-r--r--runopts.h2
-rw-r--r--svr-runopts.c7
6 files changed, 29 insertions, 7 deletions
diff --git a/cli-runopts.c b/cli-runopts.c
index f8e289b..5f36f7c 100644
--- a/cli-runopts.c
+++ b/cli-runopts.c
@@ -90,6 +90,7 @@ static void printhelp() {
"-c <cipher list> Specify preferred ciphers ('-c help' to list options)\n"
"-m <MAC list> Specify preferred MACs for packet verification (or '-m help')\n"
#endif
+ "-V Version\n"
#ifdef DEBUG_TRACE
"-v verbose (compiled with DEBUG_TRACE)\n"
#endif
@@ -324,6 +325,10 @@ void cli_getopts(int argc, char ** argv) {
#ifndef ENABLE_CLI_LOCALTCPFWD
case 'L':
#endif
+ case 'V':
+ print_version();
+ exit(EXIT_SUCCESS);
+ break;
case 'o':
case 'b':
next = &dummy;
diff --git a/common-runopts.c b/common-runopts.c
index 699ebda..cdac77e 100644
--- a/common-runopts.c
+++ b/common-runopts.c
@@ -106,3 +106,8 @@ parse_ciphers_macs()
}
#endif
+void print_version(const char* name) {
+ fprintf(stderr, "Dropbear %s v%s\n", name, DROPBEAR_VERSION);
+}
+
+
diff --git a/dbclient.1 b/dbclient.1
index a6dff62..4502b23 100644
--- a/dbclient.1
+++ b/dbclient.1
@@ -19,8 +19,7 @@ dbclient \- lightweight SSH client
.SH DESCRIPTION
.B dbclient
-is a SSH client designed to be small enough to be used in small memory
-environments, while still being functional and secure enough for general use.
+is a small SSH client
.SH OPTIONS
.TP
.B \-p \fIport
@@ -98,7 +97,7 @@ Ensure that traffic is transmitted at a certain interval in seconds. This is
useful for working around firewalls or routers that drop connections after
a certain period of inactivity. The trade-off is that a session may be
closed if there is a temporary lapse of network connectivity. A setting
-if 0 disables keepalives.
+if 0 disables keepalives. If no response is received for 3 consecutive keepalives the connection will be closed.
.TP
.B \-I \fIidle_timeout
Disconnect the session if no traffic is transmitted or received for \fIidle_timeout\fR seconds.
@@ -121,6 +120,9 @@ Specify a comma separated list of authentication MACs to enable. Use \fI-m help\
.TP
.B \-s
The specified command will be requested as a subsystem, used for sftp. Dropbear doesn't implement sftp itself but the OpenSSH sftp client can be used eg \fIsftp -S dbclient user@host\fR
+.TP
+.B \-V
+Print the version
.SH MULTI-HOP
Dropbear will also allow multiple "hops" to be specified, separated by commas. In
diff --git a/dropbear.8 b/dropbear.8
index 032e4ce..42f8ddb 100644
--- a/dropbear.8
+++ b/dropbear.8
@@ -10,8 +10,7 @@ dropbear \- lightweight SSH server
.IR [address:]port ]
.SH DESCRIPTION
.B dropbear
-is a SSH server designed to be small enough to be used in small memory
-environments, while still being functional and secure enough for general use.
+is a small SSH server
.SH OPTIONS
.TP
.B \-b \fIbanner
@@ -88,10 +87,14 @@ Ensure that traffic is transmitted at a certain interval in seconds. This is
useful for working around firewalls or routers that drop connections after
a certain period of inactivity. The trade-off is that a session may be
closed if there is a temporary lapse of network connectivity. A setting
-if 0 disables keepalives.
+if 0 disables keepalives. If no response is received for 3 consecutive keepalives the connection will be closed.
.TP
.B \-I \fIidle_timeout
Disconnect the session if no traffic is transmitted or received for \fIidle_timeout\fR seconds.
+.TP
+.B \-V
+Print the version
+
.SH FILES
.TP
diff --git a/runopts.h b/runopts.h
index f3d784c..28a50dd 100644
--- a/runopts.h
+++ b/runopts.h
@@ -164,4 +164,6 @@ void cli_getopts(int argc, char ** argv);
void parse_ciphers_macs();
#endif
+void print_version(const char* name);
+
#endif /* _RUNOPTS_H_ */
diff --git a/svr-runopts.c b/svr-runopts.c
index 414cb45..ad946bc 100644
--- a/svr-runopts.c
+++ b/svr-runopts.c
@@ -92,6 +92,7 @@ static void printhelp(const char * progname) {
"-W <receive_window_buffer> (default %d, larger may be faster, max 1MB)\n"
"-K <keepalive> (0 is never, default %d, in seconds)\n"
"-I <idle_timeout> (0 is never, default %d, in seconds)\n"
+ "-V Version\n"
#ifdef DEBUG_TRACE
"-v verbose (compiled with DEBUG_TRACE)\n"
#endif
@@ -256,7 +257,7 @@ void svr_getopts(int argc, char ** argv) {
#endif
case 'h':
printhelp(argv[0]);
- exit(EXIT_FAILURE);
+ exit(EXIT_SUCCESS);
break;
case 'u':
/* backwards compatibility with old urandom option */
@@ -266,6 +267,10 @@ void svr_getopts(int argc, char ** argv) {
debug_trace = 1;
break;
#endif
+ case 'V':
+ print_version("server");
+ exit(EXIT_SUCCESS);
+ break;
default:
fprintf(stderr, "Unknown argument %s\n", argv[i]);
printhelp(argv[0]);