]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
Update.
authorUlrich Drepper <drepper@redhat.com>
Mon, 19 Oct 1998 15:22:14 +0000 (15:22 +0000)
committerUlrich Drepper <drepper@redhat.com>
Mon, 19 Oct 1998 15:22:14 +0000 (15:22 +0000)
1998-10-19  Ulrich Drepper  <drepper@cygnus.com>

* include/ldsodefs.h: New file.

* iconv/gconv.c: Include ldsodefs.h, not elf/ldsodefs.h.
Remove change to avoid using _CALL_DL_FCT.
* iconv/gconv_db.c: Likewise.
* iconv/gconv_dl.c: Likewise.
* iconv/skeleton.c: Likewise, here for DL_CALL_FCT.
* malloc/mtrace.c: Include ldsodefs.h, not elf/ldsodefs.h.
* nss/nsswitch.c: Likewise.
* nss/nsswitch.h: Likewise.

1998-10-19  Philip Blundell  <pb@nexus.co.uk>

* sunrpc/Makefile (otherlibs): If static NSS is in use, set to the
required libraries.
* login/Makefile (otherlibs): Likewise.
* nscd/Makefile (otherlibs): Likewise.
* Makeconfig (link-libc) [! build_shared]: Add $(otherlibs).

* debug/Makefile (install-bin): Only build catchsegv if using ELF.

* inet/Makefile: Add -DSTATIC_NSS to CFLAGS.

1998-10-19  Philip Blundell  <pb@nexus.co.uk>

* sysdeps/unix/sysv/linux/arm/syscalls.list: Added setfsgid
and setfsuid.

1998-10-19  Andreas Jaeger  <aj@arthur.rhein-neckar.de>

* nscd/connections.c: Fix typos in comments and strings.

* nscd/nscd.conf: Update according to recent changes to nscd.

* nscd/cache.c (prune_cache): Remove wrong comment.

copy_posix.mask for copy instruction.

19 files changed:
ChangeLog
Makeconfig
debug/Makefile
iconv/gconv.c
iconv/gconv_db.c
iconv/gconv_dl.c
iconv/skeleton.c
include/ldsodefs.h [new file with mode: 0644]
inet/Makefile
login/Makefile
malloc/mtrace.c
nscd/Makefile
nscd/cache.c
nscd/connections.c
nscd/nscd.conf
nss/nsswitch.c
nss/nsswitch.h
sunrpc/Makefile
sysdeps/unix/sysv/linux/arm/syscalls.list

index 726fee9ace6a0f5da8718350579528f44da7fd23..410a6572ae58aae1067701008de37064e3828d58 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,41 @@
+1998-10-19  Ulrich Drepper  <drepper@cygnus.com>
+
+       * include/ldsodefs.h: New file.
+
+       * iconv/gconv.c: Include ldsodefs.h, not elf/ldsodefs.h.
+       Remove change to avoid using _CALL_DL_FCT.
+       * iconv/gconv_db.c: Likewise.
+       * iconv/gconv_dl.c: Likewise.
+       * iconv/skeleton.c: Likewise, here for DL_CALL_FCT.
+       * malloc/mtrace.c: Include ldsodefs.h, not elf/ldsodefs.h.
+       * nss/nsswitch.c: Likewise.
+       * nss/nsswitch.h: Likewise.
+
+1998-10-19  Philip Blundell  <pb@nexus.co.uk>
+
+       * sunrpc/Makefile (otherlibs): If static NSS is in use, set to the
+       required libraries.
+       * login/Makefile (otherlibs): Likewise.
+       * nscd/Makefile (otherlibs): Likewise.
+       * Makeconfig (link-libc) [! build_shared]: Add $(otherlibs).
+
+       * debug/Makefile (install-bin): Only build catchsegv if using ELF.
+
+       * inet/Makefile: Add -DSTATIC_NSS to CFLAGS.
+
+1998-10-19  Philip Blundell  <pb@nexus.co.uk>
+
+       * sysdeps/unix/sysv/linux/arm/syscalls.list: Added setfsgid
+       and setfsuid.
+
+1998-10-19  Andreas Jaeger  <aj@arthur.rhein-neckar.de>
+
+       * nscd/connections.c: Fix typos in comments and strings.
+
+       * nscd/nscd.conf: Update according to recent changes to nscd.
+
+       * nscd/cache.c (prune_cache): Remove wrong comment.
+
 1998-10-19 13:24  Ulrich Drepper  <drepper@cygnus.com>
 
        * locale/programs/ld-collate.c (collate_startup): Clear bit for this
@@ -14,7 +52,7 @@
        (main): Before processing copy list add &copy_posix to copy_list.
        * locale/programs/locales.h: Add definition of copy_def_list_t.
        * locale/programs/locfile.c: Clear bit for appropriate category in
-       case of an copy instruction.
+       copy_posix.mask for copy instruction.
 
 1998-10-19  Ulrich Drepper  <drepper@cygnus.com>
 
index 18773ff4f72549e3e90474130f11ffcd10d5c878..237f48f4df8f59367fc90621b655f1e210a0f361 100644 (file)
@@ -417,7 +417,9 @@ $(common-objdir):$(subst $(empty) ,:,$(patsubst ../$(subdir),.,$(rpath-dirs:%=$(
 elfobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)elf)
 dbobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)db2)
 else
-link-libc = $(common-objpfx)libc.a $(gnulib) $(common-objpfx)libc.a
+nssobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)nss)
+resolvobjdir := $(patsubst ../$(subdir),.,$(common-objpfx)resolv)
+link-libc = $(common-objpfx)libc.a $(otherlibs) $(gnulib) $(common-objpfx)libc.a
 endif
 endif
 
index 698ad07d126775891c802a2295751480dce231ae..e9f085c96611f3d4064359271967354946579aef 100644 (file)
@@ -36,8 +36,12 @@ extra-libs-others = $(extra-libs)
 libSegFault-routines = segfault
 libSegFault-inhibit-o = $(filter-out .os,$(object-suffixes))
 
+include ../Makeconfig
+
 distribute += catchsegv.sh
+ifeq ($(elf),yes)
 install-bin = catchsegv
+endif
 generated = catchsegv
 
 include ../Rules
index ceefffcc8755b0618344f816fc9ed1d249334826..cc61e03954c917fdf1550351f7ecd552155fcd0b 100644 (file)
@@ -23,9 +23,7 @@
 #include <gconv.h>
 #include <sys/param.h>
 
-#ifndef STATIC_GCONV
-# include <elf/ldsodefs.h>
-#endif
+#include <ldsodefs.h>
 
 int
 internal_function
@@ -43,12 +41,8 @@ __gconv (gconv_t cd, const char **inbuf, const char *inbufend, char **outbuf,
 
   if (inbuf == NULL || *inbuf == NULL)
     /* We just flush.  */
-#ifdef _CALL_DL_FCT
     result = _CALL_DL_FCT (cd->steps->fct,
                           (cd->steps, cd->data, NULL, NULL, converted, 1));
-#else
-    result = cd->steps->fct (cd->steps, cd->data, NULL, NULL, converted, 1);
-#endif
   else
     {
       const char *last_start;
@@ -60,14 +54,9 @@ __gconv (gconv_t cd, const char **inbuf, const char *inbufend, char **outbuf,
       do
        {
          last_start = *inbuf;
-#ifdef _CALL_DL_FCT
          result = _CALL_DL_FCT (cd->steps->fct,
                                 (cd->steps, cd->data, inbuf, inbufend,
                                  converted, 0));
-#else
-         result = cd->steps->fct (cd->steps, cd->data, inbuf, inbufend,
-                                  converted, 0);
-#endif
        }
       while (result == GCONV_EMPTY_INPUT && last_start != *inbuf
             && *inbuf + cd->steps->min_needed_from <= inbufend);
index cbaaf18339ade0f232da8d7dcb8317405cad3af4..443e5bf87810771369e83b805b145e1fa1d44481 100644 (file)
 #include <string.h>
 #include <bits/libc-lock.h>
 
-#ifndef STATIC_GCONV
-# include <elf/ldsodefs.h>
-#endif
-
+#include <ldsodefs.h>
 #include <gconv_int.h>
 
 
@@ -158,11 +155,7 @@ free_derivation (void *p)
 
   for (cnt = 0; cnt < deriv->nsteps; ++cnt)
     if (deriv->steps[cnt].end_fct)
-#ifdef _CALL_DL_FCT
       _CALL_DL_FCT (deriv->steps[cnt].end_fct, (&deriv->steps[cnt]));
-#else
-      deriv->steps[cnt].end_fct (&deriv->steps[cnt]);
-#endif
 
   free ((struct gconv_step *) deriv->steps);
   free (deriv);
@@ -228,11 +221,7 @@ gen_steps (struct derivation_step *best, const char *toset,
 
          /* Call the init function.  */
          if (result[step_cnt].init_fct != NULL)
-#ifdef _CALL_DL_FCT
            _CALL_DL_FCT (result[step_cnt].init_fct, (&result[step_cnt]));
-#else
-           result[step_cnt].init_fct (&result[step_cnt]);
-#endif
 
          current = current->last;
        }
@@ -243,11 +232,7 @@ gen_steps (struct derivation_step *best, const char *toset,
          while (++step_cnt < *nsteps)
            {
              if (result[step_cnt].end_fct != NULL)
-#ifdef _CALL_DL_FCT
                _CALL_DL_FCT (result[step_cnt].end_fct, (&result[step_cnt]));
-#else
-               result[step_cnt].end_fct (&result[step_cnt]);
-#endif
 #ifndef STATIC_GCONV
              __gconv_release_shlib (result[step_cnt].shlib_handle);
 #endif
index 1c04dee16955e4d0c7e5f012cb05eef7c036d464..7c64a912d93084de0d86ac5fcbcbe5dba36d83d5 100644 (file)
@@ -24,9 +24,9 @@
 #include <stdlib.h>
 #include <string.h>
 #include <bits/libc-lock.h>
-#include <elf/ldsodefs.h>
 #include <sys/param.h>
 
+#include <ldsodefs.h>
 #include <gconv_int.h>
 
 
index bae82be3eda80ad26e8087fa61f3681755ce49ba..b1e96ebbcb724265ce90c64632a0b2b715e97539 100644 (file)
@@ -85,8 +85,8 @@
 
 #ifndef STATIC_GCONV
 # include <dlfcn.h>
-# include <elf/ldsodefs.h>
 #endif
+#include <ldsodefs.h>
 
 
 /* The direction objects.  */
@@ -222,15 +222,9 @@ FUNCTION_NAME (struct gconv_step *step, struct gconv_step_data *data,
 
          if (status == GCONV_OK)
 #endif
-           {
-             /* Give the modules below the same chance.  */
-#ifdef DL_CALL_FCT
-             status = DL_CALL_FCT (fct, (next_step, next_data, NULL, NULL,
-                                         written, 1));
-#else
-             status = (*fct) (next_step, next_data, NULL, NULL, written, 1);
-#endif
-           }
+           /* Give the modules below the same chance.  */
+           status = DL_CALL_FCT (fct, (next_step, next_data, NULL, NULL,
+                                       written, 1));
        }
     }
   else
@@ -296,13 +290,8 @@ FUNCTION_NAME (struct gconv_step *step, struct gconv_step_data *data,
              const char *outerr = data->outbuf;
              int result;
 
-#ifdef DL_CALL_FCT
              result = DL_CALL_FCT (fct, (next_step, next_data, &outerr,
                                          outbuf, written, 0));
-#else
-             result = (*fct) (next_step, next_data, &outerr, outbuf,
-                              written, 0);
-#endif
 
              if (result != GCONV_EMPTY_INPUT)
                {
diff --git a/include/ldsodefs.h b/include/ldsodefs.h
new file mode 100644 (file)
index 0000000..ffc7b3c
--- /dev/null
@@ -0,0 +1,15 @@
+/* We must use the appropriate version for the system.  */
+#ifdef __ELF__
+# include <elf/ldsodefs.h>
+#else
+/* We have no dynamic loading.  Define the macros we need here as dummy
+   versions.  */
+# ifndef _LDSODEFS_H
+# define _LDSODEFS_H   1
+
+/* Call a function through a pointer.  */
+# define _CALL_DL_FCT(fctp, args) (*fctp) args
+# define CALL_DL_FCT(fctp, args) (*fctp) args
+
+# endif        /* ldsodefs.h */
+#endif
index d1b984a4f5a2afc54880a0e693af6e1e680cf513..d37cfc7e718be78346a6db5a70d73ffc8e8b3aaf 100644 (file)
@@ -62,3 +62,7 @@ CFLAGS-gethstbynm_r.c = -DUSE_NSCD=1
 CFLAGS-gethstbynm2_r.c = -DUSE_NSCD=1
 
 endif
+
+ifeq ($(build-static-nss),yes)
+CFLAGS += -DSTATIC_NSS
+endif
index f6dc62f5242d8615688316cb6539d7b8c1679ccb..638421eca5c54422bb526f2b6bdbee387c50adce 100644 (file)
@@ -53,6 +53,11 @@ libutil-routines:= login login_tty logout logwtmp openpty forkpty
 
 include ../Rules
 
+ifeq (yes,$(build-static-nss))
+otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \
+            $(resolvobjdir)/libresolv.a $(common-objpfx)libc.a
+endif
+
 # pt_chown needs to be setuid root.
 $(inst_libexecdir)/pt_chown: $(objpfx)pt_chown $(+force)
        $(make-target-directory)
index ec551ff49e68b8660c13ca6b2892768463d2a9fb..57c9dffd5829d2c0325eff58caede032251915ac 100644 (file)
@@ -28,9 +28,7 @@
 #include <bits/libc-lock.h>
 #endif
 
-#ifdef HAVE_ELF
-#include <elf/ldsodefs.h>
-#endif
+#include <ldsodefs.h>
 
 #include <stdio.h>
 
index 278bca6bbed6e84ec4c5e4369a43d3a4a7f34649..d915aa70f4a803a5ca84e86e2d4b6dbbcf677451 100644 (file)
@@ -38,6 +38,11 @@ extra-objs := $(nscd-modules:=.o)
 
 endif
 
+ifeq (yes,$(build-static-nss))
+otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \
+            $(resolvobjdir)/libresolv.a
+endif
+
 distribute := nscd.h nscd-client.h dbg_log.h \
              $(nscd-modules:=.c) TODO nscd.conf nscd.init \
              nscd_proto.h
index e957a577c01ce822b89ed014af6cec8bb6062aeb..4ab83db6e2d52845a1f769098ff6ec6ba0dbb923 100644 (file)
@@ -118,9 +118,7 @@ cache_add (int type, void *key, size_t len, const void *packet, size_t total,
    must be invalidated and remember them.  Then we get the lock and
    actually remove them.  This is complicated by the way we have to
    free the data structures since some hash table entries share the same
-   data.
-
-   This function must be called with the write-lock held.  */
+   data.  */
 void
 prune_cache (struct database *table, time_t now)
 {
index 5ef13bf85053ed6b2f941d7483137c68d391e78c..591e30051156c8fac1f587882d2a05f305131269 100644 (file)
@@ -197,7 +197,7 @@ static void
 handle_request (int fd, request_header *req, void *key)
 {
   if (debug_level > 0)
-    dbg_log (_("handle_requests: request received (Version = %d)"),
+    dbg_log (_("handle_request: request received (Version = %d)"),
             req->version);
 
   if (req->version != NSCD_VERSION)
@@ -219,7 +219,7 @@ cannot handle old request version %d; current version is %d"),
       /* Is this service enabled?  */
       if (!db->enabled)
        {
-         /* No sent the prepared record.  */
+         /* No, sent the prepared record.  */
          if (TEMP_FAILURE_RETRY (write (fd, db->disabled_iov->iov_base,
                                         db->disabled_iov->iov_len))
              != db->disabled_iov->iov_len)
@@ -372,7 +372,7 @@ nscd_run (void *p)
             to 1kb.  */
          if (req.key_len < 0 || req.key_len > 1024)
            {
-             dbg_log (_("key length in request to long: %Zd"), req.key_len);
+             dbg_log (_("key length in request too long: %Zd"), req.key_len);
              close (fd);
              continue;
            }
index 5e327e86fe09fa3b7f4f0578f75efb717fa874f8..d2b53a7aa372f0b607d03db7b00e09efd8f420a8 100644 (file)
@@ -7,6 +7,7 @@
 #
 #      logfile                 <file>
 #      debug-level             <level>
+#      threads                 <#threads to use>
 #
 #       enable-cache           <service> <yes|no>
 #      positive-time-to-live   <service> <time in seconds>
 #       suggested-size         <service> <prime number>
 #      check-files             <service> <yes|no>
 #
-# Currently supported cache names (services): passwd, group
+# Currently supported cache names (services): passwd, group, hosts
 #
 
 
 #      logfile                 /var/adm/nscd.log
+#      threads                 6
 
        debug-level             0
 
index b3b540917e90c7a8e15d5b597011ed8c10ae75ca..b6720fd62eba58d574217bbf60b7a6886f351e1b 100644 (file)
@@ -26,7 +26,7 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <string.h>
-#include <elf/ldsodefs.h>      /* We need some help from ld.so.  */
+#include <ldsodefs.h>          /* We need some help from ld.so.  */
 
 #if !defined DO_STATIC_NSS || defined PIC
 # include <gnu/lib-names.h>
index cb16fe1542f422b8110b94fe2da15f324aec1b9b..ecb2b1bde29cd8188dbaa7580ea45d178dfd0ef2 100644 (file)
@@ -26,7 +26,7 @@
 #include <nss.h>
 #include <resolv.h>
 #include <search.h>
-#include <elf/ldsodefs.h>
+#include <ldsodefs.h>
 
 
 /* Actions performed after lookup finished.  */
index c96fe4fa6424bb93a6f3ecffac2c9256c76ccfa1..2a6614c97737da322d8c56c4da3dafc555a0b994 100644 (file)
@@ -84,6 +84,11 @@ all: # Make this the default target; it will be defined in Rules.
 
 include ../Makeconfig
 
+ifeq (yes,$(build-static-nss))
+otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \
+            $(resolvobjdir)/libresolv.a
+endif
+
 ifeq (no,$(cross-compiling))
 # We can only build this library if we can run the rpcgen we build.
 headers += $(rpcsvc:%.x=rpcsvc/%.h)
index 3adc087d15ac59a3d79727b537dcca77ee686e20..e3fe1d7b8dd049b4d687623a28874504b73cde8d 100644 (file)
@@ -2,10 +2,12 @@
 
 s_getgroups    getgroups getgroups     2       __syscall_getgroups
 s_llseek       llseek  _llseek         5       __sys_llseek
+s_setfsgid     setfsgid setfsgid       1       __syscall_setfsgid
+s_setfsuid     setfsuid setfsuid       1       __syscall_setfsuid
 s_setgid       setgid  setgid          1       __syscall_setgid
 s_setgroups    setgroups setgroups     2       __syscall_setgroups
-s_setresuid    setresuid setresuid     3       __syscall_setresuid
 s_setresgid    setresgid setresgid     3       __syscall_setresgid
+s_setresuid    setresuid setresuid     3       __syscall_setresuid
 s_setuid       setuid  setuid          1       __syscall_setuid
-vm86           -       vm86            1       __vm86          vm86
 syscall                -       syscall         5       syscall
+vm86           -       vm86            1       __vm86          vm86