Update.
authorUlrich Drepper <drepper@redhat.com>
Tue, 18 Feb 2003 03:46:54 +0000 (03:46 +0000)
committerUlrich Drepper <drepper@redhat.com>
Tue, 18 Feb 2003 03:46:54 +0000 (03:46 +0000)
2003-02-17  Ulrich Drepper  <drepper@redhat.com>

* sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
TTY_NAME_MAX and not the _POSIX_* minimal value macros.
* sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
and LOGIN_NAME_MAX.

ChangeLog
nptl/sysdeps/unix/sysv/linux/pthread_kill.c
sysdeps/posix/sysconf.c

index 5ca66fe..fcaa26c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2003-02-17  Ulrich Drepper  <drepper@redhat.com>
+
+       * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
+       TTY_NAME_MAX and not the _POSIX_* minimal value macros.
+       * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
+       and LOGIN_NAME_MAX.
+
 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
            Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
 
index 0fce02a..e1c79e7 100644 (file)
@@ -34,7 +34,11 @@ __pthread_kill (threadid, signo)
   /* We have a special syscall to do the work.  */
   INTERNAL_SYSCALL_DECL (err);
 
-  int val = INTERNAL_SYSCALL (tkill, err, 2, pd->tid, signo);
+  /* The kernel returns EINVAL for PIDs <= 0.  This is not nice since
+     the user would expect ESRCH.  Correct it here.  */
+  int val = (pd->tid > 0
+            ? INTERNAL_SYSCALL (tkill, err, 2, pd->tid, signo)
+            : ESRCH);
 
   return (INTERNAL_SYSCALL_ERROR_P (val, err)
          ? INTERNAL_SYSCALL_ERRNO (val, err) : 0);
index 1700ed0..7ad8ac7 100644 (file)
@@ -515,15 +515,15 @@ __sysconf (name)
       return NSS_BUFLEN_PASSWD;
 
     case _SC_LOGIN_NAME_MAX:
-#ifdef _POSIX_LOGIN_NAME_MAX
-      return _POSIX_LOGIN_NAME_MAX;
+#ifdef LOGIN_NAME_MAX
+      return LOGIN_NAME_MAX;
 #else
       return -1;
 #endif
 
     case _SC_TTY_NAME_MAX:
-#ifdef _POSIX_TTY_NAME_MAX
-      return _POSIX_TTY_NAME_MAX;
+#ifdef TTY_NAME_MAX
+      return TTY_NAME_MAX;
 #else
       return -1;
 #endif