diff options
Diffstat (limited to 'debian/patches/package-versioning.patch')
-rw-r--r-- | debian/patches/package-versioning.patch | 61 |
1 files changed, 61 insertions, 0 deletions
diff --git a/debian/patches/package-versioning.patch b/debian/patches/package-versioning.patch new file mode 100644 index 000000000..db144f505 --- /dev/null +++ b/debian/patches/package-versioning.patch | |||
@@ -0,0 +1,61 @@ | |||
1 | From 52359fc0d6ee73ee6e24332b2777dc8abdaed652 Mon Sep 17 00:00:00 2001 | ||
2 | From: Matthew Vernon <matthew@debian.org> | ||
3 | Date: Sun, 9 Feb 2014 16:10:05 +0000 | ||
4 | Subject: Include the Debian version in our identification | ||
5 | |||
6 | This makes it easier to audit networks for versions patched against security | ||
7 | vulnerabilities. It has little detrimental effect, as attackers will | ||
8 | generally just try attacks rather than bothering to scan for | ||
9 | vulnerable-looking version strings. (However, see debian-banner.patch.) | ||
10 | |||
11 | Forwarded: not-needed | ||
12 | Last-Update: 2017-10-04 | ||
13 | |||
14 | Patch-Name: package-versioning.patch | ||
15 | --- | ||
16 | sshconnect.c | 2 +- | ||
17 | sshd.c | 2 +- | ||
18 | version.h | 7 ++++++- | ||
19 | 3 files changed, 8 insertions(+), 3 deletions(-) | ||
20 | |||
21 | diff --git a/sshconnect.c b/sshconnect.c | ||
22 | index 58f9eac8..15d8b807 100644 | ||
23 | --- a/sshconnect.c | ||
24 | +++ b/sshconnect.c | ||
25 | @@ -638,7 +638,7 @@ send_client_banner(int connection_out, int minor1) | ||
26 | { | ||
27 | /* Send our own protocol version identification. */ | ||
28 | xasprintf(&client_version_string, "SSH-%d.%d-%.100s\r\n", | ||
29 | - PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_VERSION); | ||
30 | + PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_RELEASE); | ||
31 | if (atomicio(vwrite, connection_out, client_version_string, | ||
32 | strlen(client_version_string)) != strlen(client_version_string)) | ||
33 | fatal("write: %.100s", strerror(errno)); | ||
34 | diff --git a/sshd.c b/sshd.c | ||
35 | index 6d911c19..9a7f5495 100644 | ||
36 | --- a/sshd.c | ||
37 | +++ b/sshd.c | ||
38 | @@ -384,7 +384,7 @@ sshd_exchange_identification(struct ssh *ssh, int sock_in, int sock_out) | ||
39 | char remote_version[256]; /* Must be at least as big as buf. */ | ||
40 | |||
41 | xasprintf(&server_version_string, "SSH-%d.%d-%.100s%s%s\r\n", | ||
42 | - PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_VERSION, | ||
43 | + PROTOCOL_MAJOR_2, PROTOCOL_MINOR_2, SSH_RELEASE, | ||
44 | *options.version_addendum == '\0' ? "" : " ", | ||
45 | options.version_addendum); | ||
46 | |||
47 | diff --git a/version.h b/version.h | ||
48 | index ea52b26f..a3fa6e0b 100644 | ||
49 | --- a/version.h | ||
50 | +++ b/version.h | ||
51 | @@ -3,4 +3,9 @@ | ||
52 | #define SSH_VERSION "OpenSSH_7.7" | ||
53 | |||
54 | #define SSH_PORTABLE "p1" | ||
55 | -#define SSH_RELEASE SSH_VERSION SSH_PORTABLE | ||
56 | +#define SSH_RELEASE_MINIMUM SSH_VERSION SSH_PORTABLE | ||
57 | +#ifdef SSH_EXTRAVERSION | ||
58 | +#define SSH_RELEASE SSH_RELEASE_MINIMUM " " SSH_EXTRAVERSION | ||
59 | +#else | ||
60 | +#define SSH_RELEASE SSH_RELEASE_MINIMUM | ||
61 | +#endif | ||