2 * UFC-crypt: ultra fast crypt(3) implementation
4 * Copyright (C) 1991-2021 Free Software Foundation, Inc.
6 * The GNU C Library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Lesser General Public
8 * License as published by the Free Software Foundation; either
9 * version 2.1 of the License, or (at your option) any later version.
11 * The GNU C Library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
16 * You should have received a copy of the GNU Lesser General Public
17 * License along with the GNU C Library; if not, see
18 * <https://www.gnu.org/licenses/>.
20 * @(#)crypt-private.h 1.4 12/20/96
23 /* Prototypes for local functions in libcrypt.a. */
25 #ifndef CRYPT_PRIVATE_H
26 #define CRYPT_PRIVATE_H 1
32 #include "ufc-crypt.h"
35 * Thanks to greg%wind@plains.NoDak.edu (Greg W. Wettstein)
44 extern void _ufc_doit_r (ufc_long itr
, struct crypt_data
* __restrict __data
,
49 extern void __init_des_r (struct crypt_data
* __restrict __data
);
50 extern void __init_des (void);
52 extern bool _ufc_setup_salt_r (const char *s
,
53 struct crypt_data
* __restrict __data
);
54 extern void _ufc_mk_keytab_r (const char *key
,
55 struct crypt_data
* __restrict __data
);
56 extern void _ufc_dofinalperm_r (ufc_long
*res
,
57 struct crypt_data
* __restrict __data
);
58 extern void _ufc_output_conversion_r (ufc_long v1
, ufc_long v2
,
60 struct crypt_data
* __restrict __data
);
62 extern void __setkey_r (const char *__key
,
63 struct crypt_data
* __restrict __data
);
64 extern void __encrypt_r (char * __restrict __block
, int __edflag
,
65 struct crypt_data
* __restrict __data
);
68 extern char *__crypt_r (const char *__key
, const char *__salt
,
69 struct crypt_data
* __restrict __data
);
70 extern char *fcrypt (const char *key
, const char *salt
);
72 extern void __b64_from_24bit (char **cp
, int *buflen
,
73 unsigned int b2
, unsigned int b1
, unsigned int b0
,
76 #endif /* crypt-private.h */