diff options
author | Ulrich Drepper <drepper@redhat.com> | 1997-02-22 01:07:27 +0000 |
---|---|---|
committer | Ulrich Drepper <drepper@redhat.com> | 1997-02-22 01:07:27 +0000 |
commit | 655fe3107058017a6d4e618be03b91b119457354 (patch) | |
tree | ce2ab74f39dec280e51e6cb3b34dcd231f85d47d | |
parent | 9652be3de8913e528f86d9d4d2643db6c472f9fe (diff) | |
download | glibc-655fe3107058017a6d4e618be03b91b119457354.tar.gz glibc-655fe3107058017a6d4e618be03b91b119457354.tar.xz glibc-655fe3107058017a6d4e618be03b91b119457354.zip |
update from main archive 970221
-rw-r--r-- | ChangeLog | 45 | ||||
-rw-r--r-- | inet/Makefile | 2 | ||||
-rw-r--r-- | shadow/sgetspent_r.c | 9 | ||||
-rw-r--r-- | stdio-common/test-fseek.c | 22 | ||||
-rw-r--r-- | sunrpc/rpc/rpc_msg.h | 2 | ||||
-rw-r--r-- | sysdeps/unix/bsd/sigsuspend.c | 30 | ||||
-rw-r--r-- | sysdeps/unix/bsd/syscalls.list | 1 | ||||
-rw-r--r-- | sysdeps/unix/mman/syscalls.list | 6 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/net/if_arp.h | 1 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/netinet/if_ether.h | 112 |
10 files changed, 189 insertions, 41 deletions
diff --git a/ChangeLog b/ChangeLog index 3ddd6e90d7..d4ac15862e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,48 @@ +1997-02-20 17:51 Ulrich Drepper <drepper@cygnus.com> + + * sysdeps/generic/netinet/in.h: Protect contents using + __BEGIN/END_DECLS. Reported by a sun <asun@zoology.washington.edu>. + + * inet/net/ethernet.h: Move to sysdeps/unix/sysv/linux/net. + * inet/Makefile (headers): Remove net/ethernet.h. + * sysdeps/unix/sysv/linux/Makefile: Install net/ethernet.h. + * sysdeps/unix/sysv/linux/Dist: Distribute net/ethernet.h. + +1997-02-20 19:19 Ulrich Drepper <drepper@cygnus.com> + + * sysdeps/unix/mman/syscalls.list: Explain msync interface. + * sysdeps/unix/bsd/syscalls.list: Add msync with two parameters. + +1997-02-19 01:37 Erik Troan <ewt@redhat.com> + + * shadow/sgetspent_r.c: Accept empty third, fourth and fifth fields. + +1997-02-20 14:44 Andreas Jaeger <aj@arthur.pfalz.de> + + * stdio-common/test-fseek.c: Remove temporary file, add + copyright. + +1997-02-19 01:02 Ulrich Drepper <drepper@cygnus.com> + + * sysdeps/unix/mman/syscalls.list: msync takes 3 arguments. + Reported by Andreas Jaeger <aj@arthur.pfalz.de>. + +1997-02-19 00:29 Ulrich Drepper <drepper@cygnus.com> + + * sysdeps/unix/bsd/sigsuspend.c: Call __sigpause with needed + additional argument. + +1997-02-18 22:13 Ulrich Drepper <drepper@cygnus.com> + + * inet/net/ethernet.h: New file. + * sysdeps/unix/sysv/linux/netinet/if_ether.c: Add BSD compatibility. + * sysdeps/unix/sysv/linux/net/if_slip.h: New file. + Contributed by a sun <asun@zoology.washington.edu>. + + * sysdeps/unix/sysv/linux/net/if_arp.h: Include <sys/socket.h>. + * sunrpc/rpc/rpc_msg.h: Include <rpc/clnt.h>. + Reported by a sun <asun@zoology.washington.edu>. + 1997-02-18 03:28 Ulrich Drepper <drepper@cygnus.com> * stdio-common/bug10.c (main): Correct parameter. diff --git a/inet/Makefile b/inet/Makefile index e965390a63..74a6741b79 100644 --- a/inet/Makefile +++ b/inet/Makefile @@ -23,7 +23,7 @@ subdir := inet headers := netinet/ether.h netinet/in.h netinet/if_ether.h \ netinet/tcp.h netinet/ip.h $(wildcard arpa/*.h protocols/*.h) \ - aliases.h + aliases.h net/ethernet.h distribute := netgroup.h diff --git a/shadow/sgetspent_r.c b/shadow/sgetspent_r.c index ba2e8186bc..8678ac816a 100644 --- a/shadow/sgetspent_r.c +++ b/shadow/sgetspent_r.c @@ -51,9 +51,12 @@ LINE_PARSER else { STRING_FIELD (result->sp_pwdp, ISCOLON, 0); - INT_FIELD (result->sp_lstchg, ISCOLON, 0, 10, (long int)); - INT_FIELD (result->sp_min, ISCOLON, 0, 10, (long int)); - INT_FIELD (result->sp_max, ISCOLON, 0, 10, (long int)); + INT_FIELD_MAYBE_NULL (result->sp_lstchg, ISCOLON, 0, 10, (long int), + (long int) -1); + INT_FIELD_MAYBE_NULL (result->sp_min, ISCOLON, 0, 10, (long int), + (long int) -1); + INT_FIELD_MAYBE_NULL (result->sp_max, ISCOLON, 0, 10, (long int), + (long int -1); while (isspace (*line)) ++line; if (*line == '\0') diff --git a/stdio-common/test-fseek.c b/stdio-common/test-fseek.c index d56c669a54..e736ed7cdc 100644 --- a/stdio-common/test-fseek.c +++ b/stdio-common/test-fseek.c @@ -1,10 +1,27 @@ -#include <ansidecl.h> +/* Copyright (C) 1991, 1992, 1996, 1997 Free Software Foundation, Inc. + This file is part of the GNU C Library. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public License as + published by the Free Software Foundation; either version 2 of the + License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. + + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + #include <stdio.h> #define TESTFILE "/tmp/test.dat" int -main __P((void)) +main (void) { FILE *fp; int i, j; @@ -61,6 +78,7 @@ main __P((void)) } } fclose (fp); + remove (TESTFILE); puts ((i > 255) ? "Test succeeded." : "Test FAILED!"); return (i > 255) ? 0 : 1; diff --git a/sunrpc/rpc/rpc_msg.h b/sunrpc/rpc/rpc_msg.h index 48ae1f988d..8f6b6a9da4 100644 --- a/sunrpc/rpc/rpc_msg.h +++ b/sunrpc/rpc/rpc_msg.h @@ -33,6 +33,8 @@ #define _RPC_MSG_H 1 #include <sys/cdefs.h> +#include <rpc/clnt.h> + /* * rpc_msg.h * rpc message definition diff --git a/sysdeps/unix/bsd/sigsuspend.c b/sysdeps/unix/bsd/sigsuspend.c index 4c045aa663..d416a5f6c7 100644 --- a/sysdeps/unix/bsd/sigsuspend.c +++ b/sysdeps/unix/bsd/sigsuspend.c @@ -1,20 +1,20 @@ -/* Copyright (C) 1991, 1996 Free Software Foundation, Inc. -This file is part of the GNU C Library. +/* Copyright (C) 1991, 1996, 1997 Free Software Foundation, Inc. + This file is part of the GNU C Library. -The GNU C Library is free software; you can redistribute it and/or -modify it under the terms of the GNU Library General Public License as -published by the Free Software Foundation; either version 2 of the -License, or (at your option) any later version. + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public License as + published by the Free Software Foundation; either version 2 of the + License, or (at your option) any later version. -The GNU C Library is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -Library General Public License for more details. + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. -You should have received a copy of the GNU Library General Public -License along with the GNU C Library; see the file COPYING.LIB. If -not, write to the Free Software Foundation, Inc., 675 Mass Ave, -Cambridge, MA 02139, USA. */ + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ #include <errno.h> #include <signal.h> @@ -42,5 +42,5 @@ sigsuspend (set) if (__sigismember (set, sig)) mask |= sigmask (sig); - return __sigpause (mask); + return __sigpause (mask, 0); } diff --git a/sysdeps/unix/bsd/syscalls.list b/sysdeps/unix/bsd/syscalls.list index e84819dc1f..086bf4fb45 100644 --- a/sysdeps/unix/bsd/syscalls.list +++ b/sysdeps/unix/bsd/syscalls.list @@ -5,6 +5,7 @@ getdents - getdirentries 4 __getdirentries getdirentries getdtsz - getdtablesize 0 __getdtablesize getdtablesize getpagesize - getpagesize 0 __getpagesize getpagesize killpg - killpg 2 killpg +msync - msync 2 __libc_msync msync sigblock - sigblock 1 __sigblock sigblock sigpause - sigpause 1 __sigpause sigpause sigsetmask - sigsetmask 1 __sigsetmask sigsetmask diff --git a/sysdeps/unix/mman/syscalls.list b/sysdeps/unix/mman/syscalls.list index a5f44e465b..1d3173eafd 100644 --- a/sysdeps/unix/mman/syscalls.list +++ b/sysdeps/unix/mman/syscalls.list @@ -1,7 +1,11 @@ +# This interface desciption corresponds to the POSIX.1 description. The +# 4.4BSD interface is slightly different since the `msync' function takes +# only 2 arguments. + # File name Caller Syscall name # args Strong name Weak names madvise - madvise 3 madvise mmap - mmap 6 __mmap mmap mprotect - mprotect 3 __mprotect mprotect -msync - msync 2 __libc_msync msync +msync - msync 3 __libc_msync msync munmap - munmap 2 __munmap munmap diff --git a/sysdeps/unix/sysv/linux/net/if_arp.h b/sysdeps/unix/sysv/linux/net/if_arp.h index cf48f10f79..b1cd18360e 100644 --- a/sysdeps/unix/sysv/linux/net/if_arp.h +++ b/sysdeps/unix/sysv/linux/net/if_arp.h @@ -26,6 +26,7 @@ #include <sys/cdefs.h> #include <sys/types.h> +#include <sys/socket.h> __BEGIN_DECLS diff --git a/sysdeps/unix/sysv/linux/netinet/if_ether.h b/sysdeps/unix/sysv/linux/netinet/if_ether.h index 0da5a5aea9..7194490f53 100644 --- a/sysdeps/unix/sysv/linux/netinet/if_ether.h +++ b/sysdeps/unix/sysv/linux/netinet/if_ether.h @@ -1,35 +1,109 @@ -/* Copyright (C) 1996 Free Software Foundation, Inc. -This file is part of the GNU C Library. +/* Copyright (C) 1996, 1997 Free Software Foundation, Inc. + This file is part of the GNU C Library. -The GNU C Library is free software; you can redistribute it and/or -modify it under the terms of the GNU Library General Public License as -published by the Free Software Foundation; either version 2 of the -License, or (at your option) any later version. + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Library General Public License as + published by the Free Software Foundation; either version 2 of the + License, or (at your option) any later version. -The GNU C Library is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -Library General Public License for more details. + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Library General Public License for more details. -You should have received a copy of the GNU Library General Public -License along with the GNU C Library; see the file COPYING.LIB. If -not, write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, -Boston, MA 02111-1307, USA. */ + You should have received a copy of the GNU Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ #ifndef __NETINET_IF_ETHER_H #define __NETINET_IF_ETHER_H 1 #include <features.h> +#include <sys/types.h> /* Get definitions from kernel header file. */ #include <linux/if_ether.h> +#ifdef __USE_BSD +/* + * Copyright (c) 1982, 1986, 1993 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. All advertising materials mentioning features or use of this software + * must display the following acknowledgement: + * This product includes software developed by the University of + * California, Berkeley and its contributors. + * 4. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)if_ether.h 8.3 (Berkeley) 5/2/95 + * $FreeBSD$ + */ -/* This is a name for the 48 bit ethernet address available on many - systems. */ -struct ether_addr -{ - unsigned char ether_addr_octet[ETH_ALEN]; +#include <net/ethernet.h> +#include <net/if_arp.h> + +__BEGIN_DECLS +/* + * Ethernet Address Resolution Protocol. + * + * See RFC 826 for protocol description. Structure below is adapted + * to resolving internet addresses. Field names used correspond to + * RFC 826. + */ +struct ether_arp { + struct arphdr ea_hdr; /* fixed-size header */ + u_int8_t arp_sha[ETH_ALEN]; /* sender hardware address */ + u_int8_t arp_spa[4]; /* sender protocol address */ + u_int8_t arp_tha[ETH_ALEN]; /* target hardware address */ + u_int8_t arp_tpa[4]; /* target protocol address */ }; +#define arp_hrd ea_hdr.ar_hrd +#define arp_pro ea_hdr.ar_pro +#define arp_hln ea_hdr.ar_hln +#define arp_pln ea_hdr.ar_pln +#define arp_op ea_hdr.ar_op + +/* + * Macro to map an IP multicast address to an Ethernet multicast address. + * The high-order 25 bits of the Ethernet address are statically assigned, + * and the low-order 23 bits are taken from the low end of the IP address. + */ +#define ETHER_MAP_IP_MULTICAST(ipaddr, enaddr) \ + /* struct in_addr *ipaddr; */ \ + /* u_char enaddr[ETH_ALEN]; */ \ +{ \ + (enaddr)[0] = 0x01; \ + (enaddr)[1] = 0x00; \ + (enaddr)[2] = 0x5e; \ + (enaddr)[3] = ((u_int8_t *)ipaddr)[1] & 0x7f; \ + (enaddr)[4] = ((u_int8_t *)ipaddr)[2]; \ + (enaddr)[5] = ((u_int8_t *)ipaddr)[3]; \ +} + +__END_DECLS +#endif /* __USE_BSD */ #endif /* netinet/if_ether.h */ |