Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 22 Jan 1999 18:47:24 -0500 (EST)
From:      Luoqi Chen <luoqi@watermarkgroup.com>
To:        luoqi@watermarkgroup.com, mark@grondar.za
Cc:        brandon@whistle.com, current@FreeBSD.ORG
Subject:   Re: world broken
Message-ID:  <199901222347.SAA21980@lor.watermarkgroup.com>

next in thread | raw e-mail | index | archive | help
> Luoqi Chen wrote:
> > I spend half night yesterday to sort this mess out. If no one objects,
> > I'll commit my fixes. (anyone volunteers to make the hat?)
> 
> I know who gets the hat; please cool it on the fixes until the original
> committer has finished.
> 
> I'm watching this one closely, and I need to track it on Internat
> as well. Not long now.
> 
> M
> --
> Mark Murray
> Join the anti-SPAM movement: http://www.cauce.org
> 
Ok, I'll let the original committer do it. For those who can't wait to try
Matt's new VM system, the following diff will help you get by. After applied
the patch, mv/cp/ln secure/lib/libcrypt/crypt.c to crypt-des.c in the same
directory. (I hope this patch doesn't reveal any information that would
harm national security :-)

-lq


Index: lib/Makefile
===================================================================
RCS file: /home/ncvs/src/lib/Makefile,v
retrieving revision 1.87
diff -u -r1.87 Makefile
--- Makefile	1998/12/17 23:02:11	1.87
+++ Makefile	1999/01/21 20:22:54
@@ -39,9 +39,7 @@
 
 # Build both libraries. They have different names, so no harm,
 # and this avoids having stale libscrypt.*
-.if exists(${.CURDIR}/../secure) && !defined(NOSECURE) && !defined(NOCRYPT)
-_libcrypt=	../secure/lib/libcrypt libcrypt
-.else
+.if !defined(NOCRYPT)
 _libcrypt=	libcrypt
 .endif
 
Index: secure/lib/libcrypt/crypt.c
===================================================================
RCS file: /home/ncvs/src/secure/lib/libcrypt/crypt.c,v
retrieving revision 1.9
diff -u -r1.9 crypt.c
--- crypt.c	1997/02/22 14:40:30	1.9
+++ crypt.c	1999/01/22 23:38:24
@@ -59,9 +59,8 @@
 #include <sys/param.h>
 #include <pwd.h>
 #include <string.h>
+#include "crypt.h"
 
-char *crypt_md5(const char *pw, const char *salt);
-
 /* We can't always assume gcc */
 #ifdef __GNUC__
 #define INLINE inline
@@ -578,20 +577,26 @@
 	return(retval);
 }
 
-char *
-crypt(char *key, char *setting)
+char *                                  
+crypt_des(pw, pl, sp, sl, passwd, token)
+	const unsigned char *pw;
+	const unsigned int pl;
+	const unsigned char *sp;
+	const unsigned int sl;
+	char * passwd;
+	char * token;
 {
-	int		i;
-	u_long		count, salt, l, r0, r1, keybuf[2];
-	u_char		*p, *q;
-	static u_char	output[21];
+	int	i;
+	u_long	count, salt, l, r0, r1, keybuf[2];
+	u_char	*p, *q;
+	u_char	*key = pw, *setting = sp;
+	u_char	*output = (u_char *)passwd;
 
-	if (!strncmp(setting, "$1$", 3))
-		return crypt_md5(key, setting);
+	if (!*setting)
+		    setting = key;
 
 	if (!des_initialised)
 		des_init();
-
 
 	/*
 	 * Copy the key, shifting each character up by one bit

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199901222347.SAA21980>