+Thu Oct 26 23:11:11 1995 Ulrich Drepper <drepper@ipd.info.uni-karlsruhe.de>
+
+ * sysdeps/unix/sysv/linux/poll.c: Don't define as stub. Use
+ simulation of system call using select.
+
+ * sysdeps/unix/sysv/linux/signal.c: Use POSIX implementation.
+
+ * sysdeps/unix/sysv/linux/statbuf.h: Define _STAT_VER.
+
+ * sysdeps/unix/sysv/linux/i386/sigaction.c: Correct parameter
+ name usage (new->act, old->oact).
+ Correct asm statement because of gcc strangeness.
+
+ * sysdeps/i386/i586/strchr.S: Correct typos: cmp -> cmpb.
+
+ * sunrpc/clnt_perr.c: Remove declaration of sys_errlist. They
+ conflict with the ones in stdio.h.
+
+ * string/tester.c: %Z is no complete format. Change to %Zd.
+
Thu Oct 26 18:13:33 1995 Miles Bader <miles@gnu.ai.mit.edu>
* sysdeps/mach/hurd/bind.c (bind): Swap args to dir_link.
* sysdeps/mach/hurd/link.c (__link): Ditto.
+ * sysdeps/mach/hurd/symlink.c (__symlink): Ditto.
* sysdeps/mach/hurd/mknod.c (__mknod): Ditto.
Include "stdio-common/_itoa.h" instead of "stdio/_itoa.h".
- * sysdeps/mach/hurd/symlink.c (__symlink): Ditto.
-
Thu Oct 26 00:11:13 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>
* sysdeps/unix/sysv/linux/i386/sigaction.c: New file.
(void) strcpy(one, "abc");
(void) strncpy(one, "xyz", 0); /* Zero-length copy. */
- equal(one, "abc", 10);
+ equal(one, "abc", 10);
(void) strncpy(one, "", 2); /* Zero-length source. */
equal(one, "", 11);
- equal(one+1, "", 12);
+ equal(one+1, "", 12);
equal(one+2, "c", 13);
(void) strcpy(one, "hi there");
else
{
status = EXIT_FAILURE;
- printf("%Z errors.\n", errors);
+ printf("%Zd errors.\n", errors);
}
exit(status);
}
#include <rpc/auth.h>
#include <rpc/clnt.h>
-extern char *sys_errlist[];
+/* extern char *sys_errlist[]; --drepper@gnu */
/* extern char *sprintf(); --roland@gnu */
static char *auth_errmsg();
char *s;
{
extern int sys_nerr;
- extern char *sys_errlist[];
+ /* extern char *sys_errlist[]; --drepper@gnu */
char *str = _buf();
if (str == 0)
je L2 /* aligned => return pointer */
- cmp $0, %cl /* is byte NUL? */
+ cmpb $0, %cl /* is byte NUL? */
je L3 /* yes => return NULL */
incl %eax /* increment pointer */
je L2 /* aligned => return pointer */
- cmp $0, %cl /* is byte NUL? */
+ cmpb $0, %cl /* is byte NUL? */
je L3 /* yes => return NULL */
incl %eax /* increment pointer */
je L2 /* aligned => return pointer */
- cmp $0, %cl /* is byte NUL? */
+ cmpb $0, %cl /* is byte NUL? */
je L3 /* yes => return NULL */
incl %eax /* increment pointer */
struct sigaction newact;
int result;
- if (new)
+ if (act)
{
- newact = *new;
- new = &newact;
- new->sa_restorer = ((new->sa_flags & SA_NOMASK)
- ? &&restore_nomask : &&restore);
+ newact = *act;
+ newact.sa_restorer = ((act->sa_flags & SA_NOMASK)
+ ? &&restore_nomask : &&restore);
+ act = &newact;
}
asm volatile ("pushl %%ebx\n"
- "movl %1, %%ebx\n"
+ "movl %2, %%ebx\n"
"int $0x80\n"
"popl %%ebx"
: "=a" (result)
- : "0" (SYS_ify (sigaction)), "g" (sig), "c" (new), "d" (old));
+ : "0" (SYS_ify (sigaction)), "g" (sig), "c" (act), "d" (oact));
if (result < 0)
{
restore:
asm (
#ifdef PIC
- " pushl %ebx\n"
+ " pushl %%ebx\n"
" call 0f\n"
- "0: popl %ebx\n"
- " addl $_GLOBAL_OFFSET_TABLE_+[.-0b],%ebx\n"
+ "0: popl %%ebx\n"
+ " addl $_GLOBAL_OFFSET_TABLE_+[.-0b], %%ebx\n"
" addl $8, %%esp\n"
" call __sigsetmask@PLT\n"
" addl $8, %%esp\n"
- " popl %ebx\n"
+ " popl %%ebx\n"
#else
" addl $4, %%esp\n"
" call __sigsetmask\n"
" addl $4, %%esp\n"
#endif
- "popl %eax\n"
- "popl %ecx\n"
- "popl %edx\n"
- "popf\n"
- "ret");
+ " popl %%eax\n"
+ " popl %%ecx\n"
+ " popl %%edx\n"
+ " popf\n"
+ " ret"
+ : : );
restore_nomask:
- asm ("addl $4, %esp\n"
- "popl %eax\n"
- "popl %ecx\n"
- "popl %edx\n"
- "popf\n"
- "ret");
+ asm (" addl $4, %%esp\n"
+ " popl %%eax\n"
+ " popl %%ecx\n"
+ " popl %%edx\n"
+ " popf\n"
+ " ret"
+ : : );
+ /* NOTREACHED */
}
weak_alias (__sigaction, sigaction)
-#include <sysdeps/stub/poll.c>
+#include <sysdeps/unix/bsd/poll.c>
--- /dev/null
+#include <sysdeps/posix/signal.c>
#ifndef _STATBUF_H
#define _STATBUF_H
+/* Current version of stat system call. */
+#define _STAT_VER 1
+
+
struct stat
{
short int st_dev; /* Device. */