EXTRA_DLL_OFILES:=${addsuffix .o,${basename ${notdir ${wildcard $(CONFIG_DIR)/*.c}}}}
-EXTRA_OFILES=$(bupdir1)/libiberty/random.o
+EXTRA_OFILES:=
-MALLOC_OFILES=@MALLOC_OFILES@
+MALLOC_OFILES:=@MALLOC_OFILES@
DLL_IMPORTS:=$(w32api_lib)/libkernel32.a $(w32api_lib)/libadvapi32.a $(w32api_lib)/libntdll.a
grp.o heap.o hookapi.o inet_addr.o inet_network.o init.o ioctl.o ipc.o \
localtime.o lsearch.o malloc_wrapper.o memmem.o minires-os-if.o \
minires.o miscfuncs.o mktemp.o mmap.o msg.o net.o netdb.o nftw.o \
- passwd.o path.o pinfo.o pipe.o poll.o posix_ipc.o pthread.o regcomp.o \
- regerror.o regexec.o regfree.o registry.o resource.o rexec.o rcmd.o \
- scandir.o sched.o sec_acl.o sec_helper.o security.o select.o sem.o \
- shared.o shm.o sigfe.o signal.o sigproc.o smallprint.o spawn.o strace.o \
- strptime.o strsep.o strsig.o sync.o syscalls.o sysconf.o syslog.o \
- termios.o thread.o timelocal.o timer.o times.o tty.o uinfo.o uname.o \
- v8_regexp.o v8_regerror.o v8_regsub.o wait.o wincap.o window.o winf.o \
- xsique.o \
+ passwd.o path.o pinfo.o pipe.o poll.o posix_ipc.o pthread.o random.o \
+ regcomp.o regerror.o regexec.o regfree.o registry.o resource.o rexec.o \
+ rcmd.o scandir.o sched.o sec_acl.o sec_helper.o security.o select.o \
+ sem.o shared.o shm.o sigfe.o signal.o sigproc.o smallprint.o spawn.o \
+ strace.o strptime.o strsep.o strsig.o sync.o syscalls.o sysconf.o \
+ syslog.o termios.o thread.o timelocal.o timer.o times.o tty.o uinfo.o \
+ uname.o v8_regexp.o v8_regerror.o v8_regsub.o wait.o wincap.o window.o \
+ winf.o xsique.o \
$(EXTRA_DLL_OFILES) $(EXTRA_OFILES) $(MALLOC_OFILES) $(MT_SAFE_OBJECTS)
GMON_OFILES:=gmon.o mcount.o profil.o
* SUCH DAMAGE.
*/
+extern "C" {
#if defined(LIBC_SCCS) && !defined(lint)
static char sccsid[] = "@(#)random.c 8.2 (Berkeley) 5/19/95";
#endif /* LIBC_SCCS and not lint */
#include <sys/cdefs.h>
__FBSDID("$FreeBSD: src/lib/libc/stdlib/random.c,v 1.25 2007/01/09 00:28:10 imp Exp $");
-#include "namespace.h"
#include <sys/time.h> /* for srandomdev() */
#include <fcntl.h> /* for srandomdev() */
#include <stdint.h>
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h> /* for srandomdev() */
-#include "un-namespace.h"
/*
* random.c:
static int rand_sep = SEP_3;
static uint32_t *end_ptr = &randtbl[DEG_3 + 1];
-static inline uint32_t good_rand(int32_t);
-
-static inline uint32_t good_rand (x)
- int32_t x;
+static inline uint32_t good_rand (int32_t x)
{
#ifdef USE_WEAK_SEEDING
/*
* for default usage relies on values produced by this routine.
*/
void
-srandom(x)
- unsigned long x;
+srandom(unsigned x)
{
int i, lim;
(void)random();
}
+/* Avoid a compiler warning when we really want to get at the junk in
+ an uninitialized variable. */
+static unsigned long
+dummy (unsigned long *x)
+{
+ return *x;
+}
+
/*
* srandomdev:
*
len = rand_deg * sizeof state[0];
done = 0;
- fd = _open("/dev/random", O_RDONLY, 0);
+ fd = open("/dev/random", O_RDONLY, 0);
if (fd >= 0) {
- if (_read(fd, (void *) state, len) == (ssize_t) len)
+ if (read(fd, (void *) state, len) == (ssize_t) len)
done = 1;
- _close(fd);
+ close(fd);
}
if (!done) {
unsigned long junk;
gettimeofday(&tv, NULL);
- srandom((getpid() << 16) ^ tv.tv_sec ^ tv.tv_usec ^ junk);
+ srandom((getpid() << 16) ^ tv.tv_sec ^ tv.tv_usec ^ dummy(&junk));
return;
}
* complain about mis-alignment, but you should disregard these messages.
*/
char *
-initstate(seed, arg_state, n)
- unsigned long seed; /* seed for R.N.G. */
- char *arg_state; /* pointer to state array */
- long n; /* # bytes of state info */
+initstate(unsigned long seed, /* seed for R.N.G. */
+ char *arg_state, /* pointer to state array */
+ long n) /* # bytes of state info */
{
char *ostate = (char *)(&state[-1]);
uint32_t *int_arg_state = (uint32_t *)arg_state;
* complain about mis-alignment, but you should disregard these messages.
*/
char *
-setstate(arg_state)
- char *arg_state; /* pointer to state array */
+setstate(char *arg_state /* pointer to state array */)
{
uint32_t *new_state = (uint32_t *)arg_state;
uint32_t type = new_state[0] % MAX_TYPES;
}
return((long)i);
}
+}