Add support for uClibc with no l64a().
This commit is contained in:
parent
e0edb7db17
commit
f55e00dc4e
@ -1,3 +1,9 @@
|
|||||||
|
2007-11-16 Nicolas François <nicolas.francois@centraliens.net>
|
||||||
|
|
||||||
|
* configure.in: Check if the l64a function exists instead of a64l
|
||||||
|
which we do not use.
|
||||||
|
* libmisc/salt.c: Add support for uClibc with no l64a().
|
||||||
|
|
||||||
2007-11-16 Nicolas François <nicolas.francois@centraliens.net>
|
2007-11-16 Nicolas François <nicolas.francois@centraliens.net>
|
||||||
|
|
||||||
* configure.in: Check if the netdb.h header file and the innetgr
|
* configure.in: Check if the netdb.h header file and the innetgr
|
||||||
|
1
NEWS
1
NEWS
@ -19,6 +19,7 @@ shadow-4.0.18.1 -> shadow-4.0.18.2 UNRELEASED
|
|||||||
systems, username with an @ will be treated like any other username
|
systems, username with an @ will be treated like any other username
|
||||||
(i.e. lookup in the local database for an user with an @). Thanks to
|
(i.e. lookup in the local database for an user with an @). Thanks to
|
||||||
Mike Frysinger for the patch.
|
Mike Frysinger for the patch.
|
||||||
|
- Add support for uClibc with no l64a().
|
||||||
|
|
||||||
shadow-4.0.18.1 -> shadow-4.0.18.2 28-10-2007
|
shadow-4.0.18.1 -> shadow-4.0.18.2 28-10-2007
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ AC_CHECK_HEADERS(errno.h fcntl.h limits.h unistd.h sys/time.h utmp.h \
|
|||||||
utime.h ulimit.h sys/resource.h gshadow.h shadow.h lastlog.h \
|
utime.h ulimit.h sys/resource.h gshadow.h shadow.h lastlog.h \
|
||||||
locale.h rpc/key_prot.h netdb.h)
|
locale.h rpc/key_prot.h netdb.h)
|
||||||
|
|
||||||
AC_CHECK_FUNCS(a64l fchmod fchown fsync getgroups gethostname getspnam \
|
AC_CHECK_FUNCS(l64a fchmod fchown fsync getgroups gethostname getspnam \
|
||||||
gettimeofday getusershell getutent initgroups lchown lckpwdf lstat \
|
gettimeofday getusershell getutent initgroups lchown lckpwdf lstat \
|
||||||
memcpy memset setgroups sigaction strchr updwtmp updwtmpx innetgr)
|
memcpy memset setgroups sigaction strchr updwtmp updwtmpx innetgr)
|
||||||
AC_SYS_LARGEFILE
|
AC_SYS_LARGEFILE
|
||||||
|
@ -3,6 +3,8 @@
|
|||||||
*
|
*
|
||||||
* Written by Marek Michalkiewicz <marekm@i17linuxb.ists.pwr.wroc.pl>,
|
* Written by Marek Michalkiewicz <marekm@i17linuxb.ists.pwr.wroc.pl>,
|
||||||
* public domain.
|
* public domain.
|
||||||
|
*
|
||||||
|
* l64a was Written by J.T. Conklin <jtc@netbsd.org>. Public domain.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include <config.h>
|
#include <config.h>
|
||||||
@ -14,6 +16,42 @@
|
|||||||
#include "prototypes.h"
|
#include "prototypes.h"
|
||||||
#include "defines.h"
|
#include "defines.h"
|
||||||
#include "getdef.h"
|
#include "getdef.h"
|
||||||
|
|
||||||
|
#ifndef HAVE_L64A
|
||||||
|
char *l64a(long value)
|
||||||
|
{
|
||||||
|
static char buf[8];
|
||||||
|
char *s = buf;
|
||||||
|
int digit;
|
||||||
|
int i;
|
||||||
|
|
||||||
|
if (value < 0) {
|
||||||
|
errno = EINVAL;
|
||||||
|
return(NULL);
|
||||||
|
}
|
||||||
|
|
||||||
|
for (i = 0; value != 0 && i < 6; i++) {
|
||||||
|
digit = value & 0x3f;
|
||||||
|
|
||||||
|
if (digit < 2)
|
||||||
|
*s = digit + '.';
|
||||||
|
else if (digit < 12)
|
||||||
|
*s = digit + '0' - 2;
|
||||||
|
else if (digit < 38)
|
||||||
|
*s = digit + 'A' - 12;
|
||||||
|
else
|
||||||
|
*s = digit + 'a' - 38;
|
||||||
|
|
||||||
|
value >>= 6;
|
||||||
|
s++;
|
||||||
|
}
|
||||||
|
|
||||||
|
*s = '\0';
|
||||||
|
|
||||||
|
return(buf);
|
||||||
|
}
|
||||||
|
#endif /* !HAVE_L64A */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Generate 8 base64 ASCII characters of random salt. If MD5_CRYPT_ENAB
|
* Generate 8 base64 ASCII characters of random salt. If MD5_CRYPT_ENAB
|
||||||
* in /etc/login.defs is "yes", the salt string will be prefixed by "$1$"
|
* in /etc/login.defs is "yes", the salt string will be prefixed by "$1$"
|
||||||
|
Loading…
Reference in New Issue
Block a user