here, before we might move the stack.
(posixland_init): Set __libc_argc, __libc_argc, and __environ here.
(init1): And not here.
* sysdeps/i386/dl-machine.h (RTLD_START): Fix code broken by last
change, to restore argc value in call-clobbered register after
RTLD_START_SPECIAL_INIT, which will contain a call.
* elf/dl-deps.c (_dl_map_object_deps): Fix size calculations for
allocating and initializing L->l_initfini.
* resolv/Makefile (headers): Add bits/netdb.h, so it gets installed.
+2000-04-03 Roland McGrath <roland@baalperazim.frob.com>
+
+ * sysdeps/mach/hurd/i386/init-first.c (init): Don't set __environ
+ here, before we might move the stack.
+ (posixland_init): Set __libc_argc, __libc_argc, and __environ here.
+ (init1): And not here.
+
+ * sysdeps/i386/dl-machine.h (RTLD_START): Fix code broken by last
+ change, to restore argc value in call-clobbered register after
+ RTLD_START_SPECIAL_INIT, which will contain a call.
+
+ * elf/dl-deps.c (_dl_map_object_deps): Fix size calculations for
+ allocating and initializing L->l_initfini.
+
+ * resolv/Makefile (headers): Add bits/netdb.h, so it gets installed.
+
2000-04-03 Ulrich Drepper <drepper@redhat.com>
* elf/dl-load.c (_dl_init_paths): Use (void*) -1 to signal non-existing
{
needed[nneeded++] = NULL;
- l->l_initfini =
- (struct link_map **) malloc (nneeded * sizeof (struct link_map));
+ l->l_initfini = malloc (nneeded * sizeof needed[0]);
if (l->l_initfini == NULL)
_dl_signal_error (ENOMEM, map->l_name,
"cannot allocate dependency list");
- memcpy (l->l_initfini, needed, nneeded * sizeof (struct link_map));
+ memcpy (l->l_initfini, needed, nneeded * sizeof needed[0]);
}
/* If we have no auxiliary objects just go on to the next map. */
#
subdir := resolv
-headers := resolv.h netdb.h arpa/nameser.h arpa/nameser_compat.h \
+headers := resolv.h \
+ netdb.h bits/netdb.h \
+ arpa/nameser.h arpa/nameser_compat.h \
sys/bitypes.h
distribute := ../conf/portability.h mapv4v6addr.h mapv4v6hostent.h \
Banner res_hconf.h res_debug.h
" RTLD_START_SPECIAL_INIT "\n\
# Load the parameters again.\n\
# (eax, edx, ecx, *--esp) = (_dl_loaded, argc, argv, envp)\n\
+ movl (%esp), %edx\n\
movl _dl_loaded@GOT(%ebx), %esi\n\
leal 8(%esp,%edx,4), %eax\n\
leal 4(%esp), %ecx\n\