aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog24
-rw-r--r--Makeconfig4
-rw-r--r--crypt/Makefile33
-rw-r--r--crypt/Versions (renamed from md5-crypt/Versions)0
-rw-r--r--crypt/crypt-entry.c (renamed from crypt/sysdeps/unix/crypt-entry.c)0
-rw-r--r--crypt/crypt-private.h (renamed from crypt/sysdeps/unix/crypt-private.h)0
-rw-r--r--crypt/crypt.c (renamed from crypt/sysdeps/unix/crypt.c)0
-rw-r--r--crypt/crypt.h (renamed from crypt/sysdeps/unix/crypt.h)0
-rw-r--r--crypt/crypt_util.c (renamed from crypt/sysdeps/unix/crypt_util.c)5
-rw-r--r--crypt/md5-crypt.c (renamed from md5-crypt/md5-crypt.c)0
-rw-r--r--crypt/md5.c (renamed from md5-crypt/md5.c)0
-rw-r--r--crypt/md5.h (renamed from md5-crypt/md5.h)0
-rw-r--r--crypt/md5c-test.c (renamed from md5-crypt/md5c-test.c)0
-rw-r--r--crypt/md5test.c (renamed from md5-crypt/md5test.c)0
-rw-r--r--crypt/sysdeps/mach/hurd/Implies2
-rw-r--r--crypt/sysdeps/unix/Makefile4
-rw-r--r--crypt/sysdeps/unix/patchlevel.h25
-rw-r--r--crypt/ufc-crypt.h (renamed from crypt/sysdeps/unix/ufc-crypt.h)0
-rw-r--r--md5-crypt/Makefile83
-rw-r--r--md5-crypt/onlymd5-entry.c1
-rw-r--r--sunrpc/des_impl.c (renamed from crypt/sysdeps/unix/des_impl.c)0
-rw-r--r--sysdeps/generic/crypt-entry.c72
-rw-r--r--sysdeps/generic/crypt.h59
-rw-r--r--sysdeps/generic/des_impl.c30
24 files changed, 51 insertions, 291 deletions
diff --git a/ChangeLog b/ChangeLog
index 7cbabb0..a0d47fb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,27 @@
+2000-03-03 Geoff Keating <geoffk@cygnus.com>
+
+ * Makeconfig (rpath-dirs): Add crypt.
+ (all-subdirs): Remove md5crypt.
+ * crypt/sysdeps/unix/crypt.c: Move to crypt/.
+ * crypt/sysdeps/unix/crypt-entry.c: Move to crypt/.
+ * sysdeps/generic/crypt-entry.c: Delete.
+ * crypt/sysdeps/unix/crypt.h: Move to crypt/.
+ * sysdeps/generic/crypt.h: Delete.
+ * crypt/sysdeps/unix/crypt-private.h: Move to crypt/.
+ * crypt/sysdeps/unix/crypt_util.c: Move to crypt/.
+ * crypt/sysdeps/unix/des_impl.c: Move to sunrpc/.
+ * sysdeps/generic/des_impl.c: Delete.
+ * crypt/sysdeps/unix/ufc-crypt.h: Move to crypt/.
+ * crypt/sysdeps: Delete.
+ * crypt/crypt_util.c: Don't use `patchlevel.h'.
+ * md5-crypt/Versions: Move to crypt/.
+ * md5-crypt/md5-crypt.c: Move to crypt/.
+ * md5-crypt/md5.c: Move to crypt/.
+ * md5-crypt/md5c-test.c: Move to crypt/.
+ * md5-crypt/md5test.c: Move to crypt/.
+ * md5-crypt: Delete.
+ * crypt/Makefile: Adjust for new structure.
+
2000-03-03 Paul Eggert <eggert@twinsun.com>
* posix/regex.c (MB_LEN_MAX): Include <limits.h> to define;
diff --git a/Makeconfig b/Makeconfig
index 285b747..6d87892 100644
--- a/Makeconfig
+++ b/Makeconfig
@@ -414,7 +414,7 @@ link-libc = -Wl,-rpath-link=$(rpath-link) \
$(common-objpfx)libc.so$(libc.so-version) \
$(common-objpfx)$(patsubst %,$(libtype.oS),c) $(gnulib)
# This is how to find at build-time things that will be installed there.
-rpath-dirs = math elf dlfcn nss nis rt resolv
+rpath-dirs = math elf dlfcn nss nis rt resolv crypt
rpath-link = \
$(common-objdir):$(subst $(empty) ,:,$(patsubst ../$(subdir),.,$(rpath-dirs:%=$(common-objpfx)%)))
elfobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)elf)
@@ -781,7 +781,7 @@ endif
all-subdirs = csu assert ctype locale intl catgets math setjmp signal \
stdlib stdio-common $(stdio) malloc string wcsmbs time dirent \
grp pwd posix io termios resource misc socket sysvipc gmon \
- gnulib iconv iconvdata wctype manual shadow md5-crypt po argp \
+ gnulib iconv iconvdata wctype manual shadow po argp \
crypt $(add-ons) nss localedata timezone rt debug \
$(sysdep-subdirs) $(dlfcn) $(binfmt-subdir)
all-subdirs := $(filter-out $(sysdep-inhibit-subdirs),$(all-subdirs))
diff --git a/crypt/Makefile b/crypt/Makefile
index 1be33be..a9ce7da 100644
--- a/crypt/Makefile
+++ b/crypt/Makefile
@@ -1,4 +1,4 @@
-# Copyright (C) 1996 Free Software Foundation, Inc.
+# Copyright (C) 1996, 2000 Free Software Foundation, Inc.
# This file is part of the GNU C Library.
# The GNU C Library is free software; you can redistribute it and/or
@@ -17,20 +17,35 @@
# Boston, MA 02111-1307, USA.
#
-# Sub-makefile for DES crypt portion of the library.
+# Sub-makefile for crypt() portion of the library.
#
subdir := crypt
-tests = cert
+headers := crypt.h
+
+distribute := md5.h
+
+extra-libs := libcrypt
+extra-libs-others := $(extra-libs)
+
+libcrypt-routines := crypt-entry md5-crypt md5 crypt crypt_util
+
+tests = cert md5test md5c-test
include ../Makeconfig
-rpath-dirs += md5-crypt
+ifeq ($(crypt-in-libc),yes)
+routines += $(libcrypt-routines)
+endif
+
+$(objpfx)md5test: $(objpfx)md5.o
include ../Rules
-ifeq ($(build-shared),yes)
-$(objpfx)cert: $(common-objpfx)md5-crypt/libcrypt.so$(libcrypt.so-version)
-else
-$(objpfx)cert: $(common-objpfx)md5-crypt/libcrypt.a
-endif
+LDLIBS-cert = crypt/libcrypt
+LDLIBS-md5c-test = crypt/libcrypt
+
+# Depend on libc.so so a DT_NEEDED is generated in the shared objects.
+# This ensures they will load libc.so for needed symbols if loaded by
+# a statically-linked program that hasn't already loaded it.
+$(objpfx)libcrypt.so: $(common-objpfx)libc.so
diff --git a/md5-crypt/Versions b/crypt/Versions
index 389e7d5..389e7d5 100644
--- a/md5-crypt/Versions
+++ b/crypt/Versions
diff --git a/crypt/sysdeps/unix/crypt-entry.c b/crypt/crypt-entry.c
index 9d99c53..9d99c53 100644
--- a/crypt/sysdeps/unix/crypt-entry.c
+++ b/crypt/crypt-entry.c
diff --git a/crypt/sysdeps/unix/crypt-private.h b/crypt/crypt-private.h
index 130cccd..130cccd 100644
--- a/crypt/sysdeps/unix/crypt-private.h
+++ b/crypt/crypt-private.h
diff --git a/crypt/sysdeps/unix/crypt.c b/crypt/crypt.c
index 8e2a576..8e2a576 100644
--- a/crypt/sysdeps/unix/crypt.c
+++ b/crypt/crypt.c
diff --git a/crypt/sysdeps/unix/crypt.h b/crypt/crypt.h
index 7018cb1..7018cb1 100644
--- a/crypt/sysdeps/unix/crypt.h
+++ b/crypt/crypt.h
diff --git a/crypt/sysdeps/unix/crypt_util.c b/crypt/crypt_util.c
index 671571c..1eb2d4c 100644
--- a/crypt/sysdeps/unix/crypt_util.c
+++ b/crypt/crypt_util.c
@@ -1,7 +1,7 @@
/*
* UFC-crypt: ultra fast crypt(3) implementation
*
- * Copyright (C) 1991, 92, 93, 96, 97, 98 Free Software Foundation, Inc.
+ * Copyright (C) 1991, 92, 93, 96, 97, 98, 2000 Free Software Foundation, Inc.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Library General Public
@@ -34,7 +34,6 @@
#endif
#ifndef DOS
-#include "patchlevel.h"
#include "ufc-crypt.h"
#else
/*
@@ -61,8 +60,6 @@ STATIC void shuffle_sb (long64 *k, ufc_long saltbits);
#endif
-static const char patchlevel_str[] = PATCHLEVEL;
-
/*
* Permutation done once on the 56 bit
* key derived from the original 8 byte ASCII key.
diff --git a/md5-crypt/md5-crypt.c b/crypt/md5-crypt.c
index 1261035..1261035 100644
--- a/md5-crypt/md5-crypt.c
+++ b/crypt/md5-crypt.c
diff --git a/md5-crypt/md5.c b/crypt/md5.c
index 478429f..478429f 100644
--- a/md5-crypt/md5.c
+++ b/crypt/md5.c
diff --git a/md5-crypt/md5.h b/crypt/md5.h
index fbc2bdbf..fbc2bdbf 100644
--- a/md5-crypt/md5.h
+++ b/crypt/md5.h
diff --git a/md5-crypt/md5c-test.c b/crypt/md5c-test.c
index f56d0eb..f56d0eb 100644
--- a/md5-crypt/md5c-test.c
+++ b/crypt/md5c-test.c
diff --git a/md5-crypt/md5test.c b/crypt/md5test.c
index cfd9605..cfd9605 100644
--- a/md5-crypt/md5test.c
+++ b/crypt/md5test.c
diff --git a/crypt/sysdeps/mach/hurd/Implies b/crypt/sysdeps/mach/hurd/Implies
deleted file mode 100644
index 03a7725..0000000
--- a/crypt/sysdeps/mach/hurd/Implies
+++ /dev/null
@@ -1,2 +0,0 @@
-# The Hurd uses Unix like DES crypto function.
-unix
diff --git a/crypt/sysdeps/unix/Makefile b/crypt/sysdeps/unix/Makefile
deleted file mode 100644
index 6581048..0000000
--- a/crypt/sysdeps/unix/Makefile
+++ /dev/null
@@ -1,4 +0,0 @@
-ifeq ($(subdir),md5-crypt)
-libcrypt-routines += crypt crypt_util
-dont_distribute += crypt.c crypt_util.c
-endif
diff --git a/crypt/sysdeps/unix/patchlevel.h b/crypt/sysdeps/unix/patchlevel.h
deleted file mode 100644
index 450c091..0000000
--- a/crypt/sysdeps/unix/patchlevel.h
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * UFC-crypt: ultra fast crypt(3) implementation
- *
- * Copyright (C) 1991, 1992, 1993, 1996 Free Software Foundation, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with this library; see the file COPYING.LIB. If not,
- * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- *
- * @(#)patchlevel.h 1.13 9/10/96
- *
- */
-
-#define PATCHLEVEL "UFC-crypt, patchlevel 1e, @(#)patchlevel.h 1.13 9/10/96"
diff --git a/crypt/sysdeps/unix/ufc-crypt.h b/crypt/ufc-crypt.h
index 879211a..879211a 100644
--- a/crypt/sysdeps/unix/ufc-crypt.h
+++ b/crypt/ufc-crypt.h
diff --git a/md5-crypt/Makefile b/md5-crypt/Makefile
deleted file mode 100644
index 40186ec..0000000
--- a/md5-crypt/Makefile
+++ /dev/null
@@ -1,83 +0,0 @@
-# Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
-# This file is part of the GNU C Library.
-
-# The GNU C Library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Library General Public License as
-# published by the Free Software Foundation; either version 2 of the
-# License, or (at your option) any later version.
-
-# The GNU C Library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Library General Public License for more details.
-
-# You should have received a copy of the GNU Library General Public
-# License along with the GNU C Library; see the file COPYING.LIB. If not,
-# write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-# Boston, MA 02111-1307, USA.
-
-#
-# Sub-makefile for MD5 crypt portion of the library.
-#
-subdir := md5-crypt
-
-headers := crypt.h
-
-distribute := md5.h
-
-tests := md5test md5c-test
-
-extra-libs := libcrypt
-extra-libs-others := $(extra-libs)
-
-md5-routines := crypt-entry md5-crypt md5
-libcrypt-routines := $(md5-routines)
-
-onlymd5-routines := onlymd5-entry md5-crypt md5
-distribute += onlymd5-entry.c
-extra-objs = $(patsubst %,onlymd5-entry%,$(object-suffixes))
-
-include ../Makeconfig
-
-rpath-dirs += md5-crypt
-
-ifeq ($(crypt-in-libc),yes)
-routines += $(libcrypt-routines)
-endif
-
-$(objpfx)md5test: $(objpfx)md5.o
-
-include ../Rules
-
-ifeq ($(build-shared),yes)
-libdepend = $(common-objpfx)md5-crypt/libcrypt.so$(libcrypt.so-version)
-else
-libdepend = $(common-objpfx)md5-crypt/libcrypt.a
-endif
-
-$(objpfx)md5test $(objpfx)md5c-test: $(libdepend)
-
-.PHONY: libmd5crypt
-libmd5crypt: $(foreach o,$(object-suffixes), \
- $(addprefix $(objpfx),$(patsubst %,$(libtype$o),md5crypt)))
-ifeq ($(build-shared),yes)
-libmd5crypt: $(objpfx)libmd5crypt.so
-# Use the same soname as the real libcrypt, so that it can be used as a
-# drop in replacement.
-LDFLAGS-md5crypt.so = -Wl,-soname=lib$(libprefix)crypt.so$(libcrypt.so-version)
-# We also use the same version script.
-libmd5crypt-map := $(common-objpfx)libcrypt.map
-endif
-
-define o-iterator-doit
-$(objpfx)$(patsubst %,$(libtype$o),md5crypt): \
- $(onlymd5-routines:%=$(objpfx)%$o); $$(build-extra-lib)
-endef
-object-suffixes-left = $(object-suffixes)
-include $(patsubst %,$(..)o-iterator.mk,$(object-suffixes))
-
-# Depend on libc.so so a DT_NEEDED is generated in the shared objects.
-# This ensures they will load libc.so for needed symbols if loaded by
-# a statically-linked program that hasn't already loaded it.
-$(objpfx)libcrypt.so: $(common-objpfx)libc.so
-$(objpfx)libmd5crypt.so: $(common-objpfx)libc.so
diff --git a/md5-crypt/onlymd5-entry.c b/md5-crypt/onlymd5-entry.c
deleted file mode 100644
index d03fae9..0000000
--- a/md5-crypt/onlymd5-entry.c
+++ /dev/null
@@ -1 +0,0 @@
-#include <sysdeps/generic/crypt-entry.c>
diff --git a/crypt/sysdeps/unix/des_impl.c b/sunrpc/des_impl.c
index f4fee72..f4fee72 100644
--- a/crypt/sysdeps/unix/des_impl.c
+++ b/sunrpc/des_impl.c
diff --git a/sysdeps/generic/crypt-entry.c b/sysdeps/generic/crypt-entry.c
deleted file mode 100644
index 8248ed9..0000000
--- a/sysdeps/generic/crypt-entry.c
+++ /dev/null
@@ -1,72 +0,0 @@
-/* Wrapper around MD5 sum replacement for crypt function.
- Copyright (C) 1996, 1997, 1998 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
- Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public License as
- published by the Free Software Foundation; either version 2 of the
- License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public
- License along with the GNU C Library; see the file COPYING.LIB. If not,
- write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
-
-#include <crypt.h>
-#include <errno.h>
-#include <string.h>
-
-
-/* Define our magic string to mark salt for MD5 encryption
- replacement. This is meant to be the same as for other MD5 based
- encryption implementations. */
-static const char md5_salt_prefix[] = "$1$";
-
-
-/* Prototypes for the MD5 encryption replacement functions. */
-extern char *__md5_crypt_r (const char *key, const char *salt, char *buffer,
- int buflen);
-extern char *__md5_crypt (const char *key, const char *salt);
-
-extern char *__crypt_r (const char *key, const char *salt,
- struct crypt_data *__restrict data);
-
-/* We recognize an intended call of the MD5 crypt replacement function
- by the first 3 characters of the salt string. If they match the
- MD5 magic string we want MD5 encryption replacement. */
-char *
-__crypt_r (key, salt, data)
- const char *key;
- const char *salt;
- struct crypt_data *__restrict data;
-{
- if (strncmp (md5_salt_prefix, salt, sizeof (md5_salt_prefix) - 1) == 0)
- return __md5_crypt_r (key, salt, (char *) data,
- sizeof (struct crypt_data));
-
- /* We don't have DES encryption. */
- __set_errno (EOPNOTSUPP);
- return NULL;
-}
-weak_alias (__crypt_r, crypt_r)
-
-
-/* The same here, only we call the non-reentrant version. */
-char *
-crypt (key, salt)
- const char *key;
- const char *salt;
-{
- if (strncmp (md5_salt_prefix, salt, sizeof (md5_salt_prefix) - 1) == 0)
- return __md5_crypt (key, salt);
-
- /* We don't have DES encryption. */
- __set_errno (EOPNOTSUPP);
- return NULL;
-}
diff --git a/sysdeps/generic/crypt.h b/sysdeps/generic/crypt.h
deleted file mode 100644
index 0713e95..0000000
--- a/sysdeps/generic/crypt.h
+++ /dev/null
@@ -1,59 +0,0 @@
-/*
- * UFC-crypt: ultra fast crypt(3) implementation
- *
- * Copyright (C) 1991, 92, 93, 96, 97, 98 Free Software Foundation, Inc.
- *
- * This library is free software; you can redistribute it and/or
- * modify it under the terms of the GNU Library General Public
- * License as published by the Free Software Foundation; either
- * version 2 of the License, or (at your option) any later version.
- *
- * This library is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- * Library General Public License for more details.
- *
- * You should have received a copy of the GNU Library General Public
- * License along with the GNU C Library; see the file COPYING.LIB. If not,
- * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- * Boston, MA 02111-1307, USA.
- *
- * @(#)crypt.h 1.3 16 Sep 1996
- *
- */
-
-#ifndef _CRYPT_H
-
-#define _CRYPT_H 1
-#include <features.h>
-
-__BEGIN_DECLS
-
-/* Encrypt at most 8 characters from KEY using salt to perturb DES. */
-extern char *crypt __P ((__const char *__key, __const char *__salt));
-
-
-#ifdef __USE_GNU
-/* Reentrant versions of the functions above. The additional argument
- points to a structure where the results are placed in. */
-struct crypt_data
- {
- char keysched[16 * 8];
- char sb0[32768];
- char sb1[32768];
- char sb2[32768];
- char sb3[32768];
- /* end-of-alignment-critical-data */
- char crypt_3_buf[14];
- char current_salt[2];
- long int current_saltbits;
- int direction, initialized;
- };
-
-extern char *crypt_r __P ((__const char *__key, __const char *__salt,
- struct crypt_data *__restrict __data));
-#endif
-
-__END_DECLS
-
-#endif /* crypt.h */
diff --git a/sysdeps/generic/des_impl.c b/sysdeps/generic/des_impl.c
deleted file mode 100644
index f801a84..0000000
--- a/sysdeps/generic/des_impl.c
+++ /dev/null
@@ -1,30 +0,0 @@
-/* Copyright (C) 1997 Free Software Foundation, Inc.
- This file is part of the GNU C Library.
-
- The GNU C Library is free software; you can redistribute it and/or
- modify it under the terms of the GNU Library General Public License as
- published by the Free Software Foundation; either version 2 of the
- License, or (at your option) any later version.
-
- The GNU C Library is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
- Library General Public License for more details.
-
- You should have received a copy of the GNU Library General Public
- License along with the GNU C Library; see the file COPYING.LIB. If not,
- write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
- Boston, MA 02111-1307, USA. */
-
-/* We must not distribute the DES implementation as part of the glibc.
- So we have to provide a dummy version here. */
-#include <des.h>
-
-int
-_des_crypt (char *buf, unsigned len, struct desparams *desp)
-{
- return 0;
-}
-
-stub_warning (_des_crypt)
-#include <stub-tag.h>