Hide symbols in DES
authorjoshua <joshua@openbsd.org>
Fri, 29 Mar 2024 01:47:29 +0000 (01:47 +0000)
committerjoshua <joshua@openbsd.org>
Fri, 29 Mar 2024 01:47:29 +0000 (01:47 +0000)
ok jsing beck

22 files changed:
lib/libcrypto/Symbols.namespace
lib/libcrypto/des/cbc_cksm.c
lib/libcrypto/des/cfb64ede.c
lib/libcrypto/des/cfb64enc.c
lib/libcrypto/des/cfb_enc.c
lib/libcrypto/des/des_enc.c
lib/libcrypto/des/ecb3_enc.c
lib/libcrypto/des/ecb_enc.c
lib/libcrypto/des/ede_cbcm_enc.c
lib/libcrypto/des/enc_read.c
lib/libcrypto/des/enc_writ.c
lib/libcrypto/des/fcrypt.c
lib/libcrypto/des/ncbc_enc.c
lib/libcrypto/des/ofb64ede.c
lib/libcrypto/des/ofb64enc.c
lib/libcrypto/des/ofb_enc.c
lib/libcrypto/des/pcbc_enc.c
lib/libcrypto/des/qud_cksm.c
lib/libcrypto/des/set_key.c
lib/libcrypto/des/str2key.c
lib/libcrypto/des/xcbc_enc.c
lib/libcrypto/hidden/openssl/des.h [new file with mode: 0644]

index 48dfbe5..336989e 100644 (file)
@@ -2549,3 +2549,38 @@ _libre_RIPEMD160_Update
 _libre_RIPEMD160_Final
 _libre_RIPEMD160
 _libre_RIPEMD160_Transform
+_libre_DES_ecb3_encrypt
+_libre_DES_cbc_cksum
+_libre_DES_cbc_encrypt
+_libre_DES_ncbc_encrypt
+_libre_DES_xcbc_encrypt
+_libre_DES_cfb_encrypt
+_libre_DES_ecb_encrypt
+_libre_DES_encrypt1
+_libre_DES_encrypt2
+_libre_DES_encrypt3
+_libre_DES_decrypt3
+_libre_DES_ede3_cbc_encrypt
+_libre_DES_ede3_cbcm_encrypt
+_libre_DES_ede3_cfb64_encrypt
+_libre_DES_ede3_cfb_encrypt
+_libre_DES_ede3_ofb64_encrypt
+_libre_DES_enc_read
+_libre_DES_enc_write
+_libre_DES_fcrypt
+_libre_DES_crypt
+_libre_DES_ofb_encrypt
+_libre_DES_pcbc_encrypt
+_libre_DES_quad_cksum
+_libre_DES_random_key
+_libre_DES_set_odd_parity
+_libre_DES_check_key_parity
+_libre_DES_is_weak_key
+_libre_DES_set_key
+_libre_DES_key_sched
+_libre_DES_set_key_checked
+_libre_DES_set_key_unchecked
+_libre_DES_string_to_key
+_libre_DES_string_to_2keys
+_libre_DES_cfb64_encrypt
+_libre_DES_ofb64_encrypt
index afa3f03..acb0bac 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: cbc_cksm.c,v 1.10 2023/07/08 07:34:34 jsing Exp $ */
+/* $OpenBSD: cbc_cksm.c,v 1.11 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -103,3 +103,4 @@ DES_cbc_cksum(const unsigned char *in, DES_cblock *output,
            ((tout1 << 24L) & 0xFF000000);
        return (tout1);
 }
+LCRYPTO_ALIAS(DES_cbc_cksum);
index e91dbbf..69a6c25 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: cfb64ede.c,v 1.12 2023/07/08 07:34:34 jsing Exp $ */
+/* $OpenBSD: cfb64ede.c,v 1.13 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -125,6 +125,7 @@ DES_ede3_cfb64_encrypt(const unsigned char *in, unsigned char *out,
        v0 = v1 = ti[0] = ti[1] = c = cc = 0;
        *num = n;
 }
+LCRYPTO_ALIAS(DES_ede3_cfb64_encrypt);
 
 /* This is compatible with the single key CFB-r for DES, even thought that's
  * not what EVP needs.
@@ -238,3 +239,4 @@ DES_ede3_cfb_encrypt(const unsigned char *in, unsigned char *out,
        l2c(v1, iv);
        v0 = v1 = d0 = d1 = ti[0] = ti[1] = 0;
 }
+LCRYPTO_ALIAS(DES_ede3_cfb_encrypt);
index d7434b9..d2d0dad 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: cfb64enc.c,v 1.8 2023/07/08 07:11:07 beck Exp $ */
+/* $OpenBSD: cfb64enc.c,v 1.9 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -120,3 +120,4 @@ DES_cfb64_encrypt(const unsigned char *in, unsigned char *out,
        v0 = v1 = ti[0] = ti[1] = c = cc = 0;
        *num = n;
 }
+LCRYPTO_ALIAS(DES_cfb64_encrypt);
index dac8675..ae41c9d 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: cfb_enc.c,v 1.16 2023/07/08 07:11:07 beck Exp $ */
+/* $OpenBSD: cfb_enc.c,v 1.17 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -187,3 +187,4 @@ DES_cfb_encrypt(const unsigned char *in, unsigned char *out, int numbits,
        l2c(v1, iv);
        v0 = v1 = d0 = d1 = ti[0] = ti[1] = 0;
 }
+LCRYPTO_ALIAS(DES_cfb_encrypt);
index 7319639..f332b9a 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: des_enc.c,v 1.15 2023/07/08 07:34:34 jsing Exp $ */
+/* $OpenBSD: des_enc.c,v 1.16 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -150,6 +150,7 @@ DES_encrypt1(DES_LONG *data, DES_key_schedule *ks, int enc)
        data[1] = r;
        l = r = t = u = 0;
 }
+LCRYPTO_ALIAS(DES_encrypt1);
 
 void
 DES_encrypt2(DES_LONG *data, DES_key_schedule *ks, int enc)
@@ -233,6 +234,7 @@ DES_encrypt2(DES_LONG *data, DES_key_schedule *ks, int enc)
        data[1] = ROTATE(r, 3) & 0xffffffffL;
        l = r = t = u = 0;
 }
+LCRYPTO_ALIAS(DES_encrypt2);
 
 #endif /* OPENBSD_DES_ASM */
 
@@ -256,6 +258,7 @@ DES_encrypt3(DES_LONG *data, DES_key_schedule *ks1,
        data[0] = l;
        data[1] = r;
 }
+LCRYPTO_ALIAS(DES_encrypt3);
 
 void
 DES_decrypt3(DES_LONG *data, DES_key_schedule *ks1,
@@ -277,6 +280,7 @@ DES_decrypt3(DES_LONG *data, DES_key_schedule *ks1,
        data[0] = l;
        data[1] = r;
 }
+LCRYPTO_ALIAS(DES_decrypt3);
 
 #ifndef DES_DEFAULT_OPTIONS
 
@@ -388,5 +392,6 @@ DES_ede3_cbc_encrypt(const unsigned char *input, unsigned char *output,
        tin0 = tin1 = tout0 = tout1 = xor0 = xor1 = 0;
        tin[0] = tin[1] = 0;
 }
+LCRYPTO_ALIAS(DES_ede3_cbc_encrypt);
 
 #endif /* DES_DEFAULT_OPTIONS */
index 129b5fa..2aa6372 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ecb3_enc.c,v 1.9 2023/07/08 07:11:07 beck Exp $ */
+/* $OpenBSD: ecb3_enc.c,v 1.10 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -82,3 +82,4 @@ DES_ecb3_encrypt(const_DES_cblock *input, DES_cblock *output,
        l2c(l0, out);
        l2c(l1, out);
 }
+LCRYPTO_ALIAS(DES_ecb3_encrypt);
index 3599fb8..2491c43 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ecb_enc.c,v 1.19 2023/07/31 05:04:06 tb Exp $ */
+/* $OpenBSD: ecb_enc.c,v 1.20 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -80,3 +80,4 @@ DES_ecb_encrypt(const_DES_cblock *input, DES_cblock *output,
        l2c(l, out);
        l = ll[0] = ll[1] = 0;
 }
+LCRYPTO_ALIAS(DES_ecb_encrypt);
index eb6fd4f..979600e 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ede_cbcm_enc.c,v 1.9 2023/07/08 07:34:34 jsing Exp $ */
+/* $OpenBSD: ede_cbcm_enc.c,v 1.10 2024/03/29 01:47:29 joshua Exp $ */
 /* Written by Ben Laurie <ben@algroup.co.uk> for the OpenSSL
  * project 13 Feb 1999.
  */
@@ -186,4 +186,5 @@ DES_ede3_cbcm_encrypt(const unsigned char *in, unsigned char *out,
        tin0 = tin1 = tout0 = tout1 = xor0 = xor1 = 0;
        tin[0] = tin[1] = 0;
 }
+LCRYPTO_ALIAS(DES_ede3_cbcm_encrypt);
 #endif
index 8095f26..d52489e 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: enc_read.c,v 1.17 2023/07/08 07:11:07 beck Exp $ */
+/* $OpenBSD: enc_read.c,v 1.18 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -220,3 +220,4 @@ DES_enc_read(int fd, void *buf, int len, DES_key_schedule *sched,
        }
        return num;
 }
+LCRYPTO_ALIAS(DES_enc_read);
index 3def8a8..39c6139 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: enc_writ.c,v 1.17 2023/07/08 07:34:34 jsing Exp $ */
+/* $OpenBSD: enc_writ.c,v 1.18 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -165,3 +165,4 @@ DES_enc_write(int fd, const void *_buf, int len,
 
        return (len);
 }
+LCRYPTO_ALIAS(DES_enc_write);
index b183cee..5bdf09b 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: fcrypt.c,v 1.15 2023/07/08 07:34:34 jsing Exp $ */
+/* $OpenBSD: fcrypt.c,v 1.16 2024/03/29 01:47:29 joshua Exp $ */
 
 #include <stdio.h>
 
@@ -58,6 +58,7 @@ DES_crypt(const char *buf, const char *salt)
 
        return (DES_fcrypt(buf, salt, buff));
 }
+LCRYPTO_ALIAS(DES_crypt);
 
 char *
 DES_fcrypt(const char *buf, const char *salt, char *ret)
@@ -123,3 +124,4 @@ r=(r+7)/8;
        ret[13] = '\0';
        return (ret);
 }
+LCRYPTO_ALIAS(DES_fcrypt);
index c4da94c..1a49126 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ncbc_enc.c,v 1.10 2023/07/08 07:34:34 jsing Exp $ */
+/* $OpenBSD: ncbc_enc.c,v 1.11 2024/03/29 01:47:29 joshua Exp $ */
 /*
  * #included by:
  *    cbc_enc.c  (DES_cbc_encrypt)
@@ -153,3 +153,8 @@ DES_ncbc_encrypt(const unsigned char *in, unsigned char *out, long length,
        tin0 = tin1 = tout0 = tout1 = xor0 = xor1 = 0;
        tin[0] = tin[1] = 0;
 }
+#ifdef CBC_ENC_C__DONT_UPDATE_IV
+LCRYPTO_ALIAS(DES_cbc_encrypt);
+#else
+LCRYPTO_ALIAS(DES_ncbc_encrypt);
+#endif
index 2922fc7..949b220 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ofb64ede.c,v 1.8 2023/07/08 07:11:07 beck Exp $ */
+/* $OpenBSD: ofb64ede.c,v 1.9 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -110,3 +110,4 @@ DES_ede3_ofb64_encrypt(const unsigned char *in,
        v0 = v1 = ti[0] = ti[1] = 0;
        *num = n;
 }
+LCRYPTO_ALIAS(DES_ede3_ofb64_encrypt);
index c3b1b8a..5e524dd 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ofb64enc.c,v 1.8 2023/07/08 07:11:07 beck Exp $ */
+/* $OpenBSD: ofb64enc.c,v 1.9 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -107,3 +107,4 @@ DES_ofb64_encrypt(const unsigned char *in,
        t = v0 = v1 = ti[0] = ti[1] = 0;
        *num = n;
 }
+LCRYPTO_ALIAS(DES_ofb64_encrypt);
index 990b927..96dc25e 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: ofb_enc.c,v 1.8 2023/07/08 07:11:07 beck Exp $ */
+/* $OpenBSD: ofb_enc.c,v 1.9 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -131,3 +131,4 @@ DES_ofb_encrypt(const unsigned char *in, unsigned char *out, int numbits,
        l2c(v1, iv);
        v0 = v1 = d0 = d1 = ti[0] = ti[1] = vv0 = vv1 = 0;
 }
+LCRYPTO_ALIAS(DES_ofb_encrypt);
index 3a420f0..defd628 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: pcbc_enc.c,v 1.9 2023/07/08 07:34:34 jsing Exp $ */
+/* $OpenBSD: pcbc_enc.c,v 1.10 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -114,3 +114,4 @@ DES_pcbc_encrypt(const unsigned char *input, unsigned char *output,
        tin[0] = tin[1] = 0;
        sin0 = sin1 = xor0 = xor1 = tout0 = tout1 = 0;
 }
+LCRYPTO_ALIAS(DES_pcbc_encrypt);
index ab28668..4ded2a0 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: qud_cksm.c,v 1.10 2023/07/08 07:34:34 jsing Exp $ */
+/* $OpenBSD: qud_cksm.c,v 1.11 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -123,3 +123,4 @@ DES_quad_cksum(const unsigned char *input, DES_cblock output[],
        }
        return (z0);
 }
+LCRYPTO_ALIAS(DES_quad_cksum);
index 8ae40a8..0e7aab6 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: set_key.c,v 1.26 2023/12/20 06:30:04 tb Exp $ */
+/* $OpenBSD: set_key.c,v 1.27 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -91,6 +91,7 @@ DES_set_odd_parity(DES_cblock *key)
        for (i = 0; i < DES_KEY_SZ; i++)
                (*key)[i] = odd_parity[(*key)[i]];
 }
+LCRYPTO_ALIAS(DES_set_odd_parity);
 
 int
 DES_check_key_parity(const_DES_cblock *key)
@@ -103,6 +104,7 @@ DES_check_key_parity(const_DES_cblock *key)
        }
        return (1);
 }
+LCRYPTO_ALIAS(DES_check_key_parity);
 
 /* Weak and semi weak keys as taken from
  * %A D.W. Davies
@@ -145,6 +147,7 @@ DES_is_weak_key(const_DES_cblock *key)
                        return 1;
        return 0;
 }
+LCRYPTO_ALIAS(DES_is_weak_key);
 
 /* NOW DEFINED IN des_local.h
  * See ecb_encrypt.c for a pseudo description of these macros.
@@ -314,6 +317,7 @@ DES_set_key(const_DES_cblock *key, DES_key_schedule *schedule)
                return 0;
        }
 }
+LCRYPTO_ALIAS(DES_set_key);
 
 /* return 0 if key parity is odd (correct),
  * return -1 if key parity error,
@@ -329,6 +333,7 @@ DES_set_key_checked(const_DES_cblock *key, DES_key_schedule *schedule)
        DES_set_key_unchecked(key, schedule);
        return 0;
 }
+LCRYPTO_ALIAS(DES_set_key_checked);
 
 void
 DES_set_key_unchecked(const_DES_cblock *key, DES_key_schedule *schedule)
@@ -388,12 +393,14 @@ DES_set_key_unchecked(const_DES_cblock *key, DES_key_schedule *schedule)
                *(k++) = ROTATE(t2, 26) & 0xffffffffL;
        }
 }
+LCRYPTO_ALIAS(DES_set_key_unchecked);
 
 int
 DES_key_sched(const_DES_cblock *key, DES_key_schedule *schedule)
 {
        return (DES_set_key(key, schedule));
 }
+LCRYPTO_ALIAS(DES_key_sched);
 
 int
 DES_random_key(DES_cblock *ret)
@@ -404,3 +411,4 @@ DES_random_key(DES_cblock *ret)
        } while (DES_is_weak_key(ret));
        return (1);
 }
+LCRYPTO_ALIAS(DES_random_key);
index dd17a44..cc5bc91 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: str2key.c,v 1.13 2023/07/08 07:34:34 jsing Exp $ */
+/* $OpenBSD: str2key.c,v 1.14 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -97,6 +97,7 @@ DES_string_to_key(const char *str, DES_cblock *key)
        explicit_bzero(&ks, sizeof(ks));
        DES_set_odd_parity(key);
 }
+LCRYPTO_ALIAS(DES_string_to_key);
 
 void
 DES_string_to_2keys(const char *str, DES_cblock *key1, DES_cblock *key2)
@@ -164,3 +165,4 @@ DES_string_to_2keys(const char *str, DES_cblock *key1, DES_cblock *key2)
        DES_set_odd_parity(key1);
        DES_set_odd_parity(key2);
 }
+LCRYPTO_ALIAS(DES_string_to_2keys);
index 87f348a..90607ca 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: xcbc_enc.c,v 1.12 2023/07/08 07:34:34 jsing Exp $ */
+/* $OpenBSD: xcbc_enc.c,v 1.13 2024/03/29 01:47:29 joshua Exp $ */
 /* Copyright (C) 1995-1998 Eric Young (eay@cryptsoft.com)
  * All rights reserved.
  *
@@ -151,3 +151,4 @@ DES_xcbc_encrypt(const unsigned char *in, unsigned char *out,
        inW0 = inW1 = outW0 = outW1 = 0;
        tin[0] = tin[1] = 0;
 }
+LCRYPTO_ALIAS(DES_xcbc_encrypt);
diff --git a/lib/libcrypto/hidden/openssl/des.h b/lib/libcrypto/hidden/openssl/des.h
new file mode 100644 (file)
index 0000000..9f6ea9c
--- /dev/null
@@ -0,0 +1,64 @@
+/* $OpenBSD: des.h,v 1.1 2024/03/29 01:47:29 joshua Exp $ */
+/*
+ * Copyright (c) 2024 Joshua Sing <joshua@joshuasing.dev>
+ *
+ * Permission to use, copy, modify, and distribute this software for any
+ * purpose with or without fee is hereby granted, provided that the above
+ * copyright notice and this permission notice appear in all copies.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+ * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+ * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
+ * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+ * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
+ * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
+ * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifndef _LIBCRYPTO_DES_H
+#define _LIBCRYPTO_DES_H
+
+#ifndef _MSC_VER
+#include_next <openssl/des.h>
+#else
+#include "../include/openssl/des.h"
+#endif
+#include "crypto_namespace.h"
+
+LCRYPTO_USED(DES_ecb3_encrypt);
+LCRYPTO_USED(DES_cbc_cksum);
+LCRYPTO_USED(DES_cbc_encrypt);
+LCRYPTO_USED(DES_ncbc_encrypt);
+LCRYPTO_USED(DES_xcbc_encrypt);
+LCRYPTO_USED(DES_cfb_encrypt);
+LCRYPTO_USED(DES_ecb_encrypt);
+LCRYPTO_USED(DES_encrypt1);
+LCRYPTO_USED(DES_encrypt2);
+LCRYPTO_USED(DES_encrypt3);
+LCRYPTO_USED(DES_decrypt3);
+LCRYPTO_USED(DES_ede3_cbc_encrypt);
+LCRYPTO_USED(DES_ede3_cbcm_encrypt);
+LCRYPTO_USED(DES_ede3_cfb64_encrypt);
+LCRYPTO_USED(DES_ede3_cfb_encrypt);
+LCRYPTO_USED(DES_ede3_ofb64_encrypt);
+LCRYPTO_USED(DES_enc_read);
+LCRYPTO_USED(DES_enc_write);
+LCRYPTO_USED(DES_fcrypt);
+LCRYPTO_USED(DES_crypt);
+LCRYPTO_USED(DES_ofb_encrypt);
+LCRYPTO_USED(DES_pcbc_encrypt);
+LCRYPTO_USED(DES_quad_cksum);
+LCRYPTO_USED(DES_random_key);
+LCRYPTO_USED(DES_set_odd_parity);
+LCRYPTO_USED(DES_check_key_parity);
+LCRYPTO_USED(DES_is_weak_key);
+LCRYPTO_USED(DES_set_key);
+LCRYPTO_USED(DES_key_sched);
+LCRYPTO_USED(DES_set_key_checked);
+LCRYPTO_USED(DES_set_key_unchecked);
+LCRYPTO_USED(DES_string_to_key);
+LCRYPTO_USED(DES_string_to_2keys);
+LCRYPTO_USED(DES_cfb64_encrypt);
+LCRYPTO_USED(DES_ofb64_encrypt);
+
+#endif /* _LIBCRYPTO_DES_H */