components/openssh/patches/033-without_cast128.patch
author Tomas Kuthan <tomas.kuthan@oracle.com>
Thu, 29 Oct 2015 02:40:10 -0700
changeset 5026 12114fad0da4
child 5223 66bb65945d8f
permissions -rw-r--r--
22018764 remove cast128-cbc from OpenSSH
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5026
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
     1
#
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
     2
# Removes cast128-cbc support.
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
     3
#
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
     4
# At this moment this algorithm is not listed in Approved Security
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
     5
# Technologies: Standards Details at all. Eventually it will be added as
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
     6
# deprecated.
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
     7
#
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
     8
# SunSSH did not support cast128-cbc. In this respect removing cast128-cbc from
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
     9
# OpenSSH doesn't constitute a regression in functionality from SunSSH.
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    10
#
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    11
# Interoperability gain provided by cast128-cbc is negligible, because all
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    12
# relevant ssh implementations also provide several more common encryption
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    13
# algorithms (aes256-ctr, aes128-cbc, ...) on top of cast128-cbc.
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    14
#
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    15
# This is a Solaris specific patch and it is not likely to be accepted upstream.
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    16
#
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    17
diff -pur old/cipher.c new/cipher.c
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    18
--- old/cipher.c
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    19
+++ new/cipher.c
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    20
@@ -88,8 +88,10 @@ static const struct sshcipher ciphers[]
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    21
 	{ "3des-cbc",	SSH_CIPHER_SSH2, 8, 24, 0, 0, 0, 1, EVP_des_ede3_cbc },
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    22
 	{ "blowfish-cbc",
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    23
 			SSH_CIPHER_SSH2, 8, 16, 0, 0, 0, 1, EVP_bf_cbc },
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    24
+#ifndef WITHOUT_CAST128
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    25
 	{ "cast128-cbc",
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    26
 			SSH_CIPHER_SSH2, 8, 16, 0, 0, 0, 1, EVP_cast5_cbc },
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    27
+#endif
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    28
 	{ "arcfour",	SSH_CIPHER_SSH2, 8, 16, 0, 0, 0, 0, EVP_rc4 },
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    29
 	{ "arcfour128",	SSH_CIPHER_SSH2, 8, 16, 0, 0, 1536, 0, EVP_rc4 },
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    30
 	{ "arcfour256",	SSH_CIPHER_SSH2, 8, 32, 0, 0, 1536, 0, EVP_rc4 },
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    31
diff -pur old/myproposal.h new/myproposal.h
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    32
--- old/myproposal.h
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    33
+++ new/myproposal.h
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    34
@@ -119,9 +119,16 @@
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    35
 	"aes128-ctr,aes192-ctr,aes256-ctr" \
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    36
 	AESGCM_CIPHER_MODES
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    37
 
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    38
+#ifdef WITHOUT_CAST128
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    39
+# define CAST128
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    40
+#else
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    41
+# define CAST128 "cast128-cbc"
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    42
+#endif
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    43
+
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    44
 #define KEX_CLIENT_ENCRYPT KEX_SERVER_ENCRYPT "," \
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    45
 	"arcfour256,arcfour128," \
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    46
-	"aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc," \
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    47
+	"aes128-cbc,3des-cbc,blowfish-cbc," \
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    48
+	CAST128 \
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    49
 	"aes192-cbc,aes256-cbc,arcfour,[email protected]"
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    50
 
12114fad0da4 22018764 remove cast128-cbc from OpenSSH
Tomas Kuthan <tomas.kuthan@oracle.com>
parents:
diff changeset
    51
 #define KEX_SERVER_MAC \