patch v1 add restrict to Linux netdb.h

Joel Sherrill joel.sherrill@oarcorp.com
Fri Jul 19 13:39:00 GMT 2013


Hi

Attached is a patch to make the netdb.h prototypes
in libc/sys/linux match glibc and SUS.

2013-07-19 Sahil Patnayakuni <sahilp@rtems.org>

     * libc/sys/linux/include/netdb.h, libc/sys/linux/net/getaddrinfo.c,
     libc/sys/linux/net/getnameinfo.c: Add restrict keyword to getnameinfo()
     and getaddrinfo() to increase standards compliance and match glibc.

OK to apply?

-- 
Joel Sherrill, Ph.D.             Director of Research & Development
joel.sherrill@OARcorp.com        On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
Support Available                (256) 722-9985

-------------- next part --------------
2013-07-19 Sahil Patnayakuni <sahilp@rtems.org>

	* libc/sys/linux/include/netdb.h, libc/sys/linux/net/getaddrinfo.c,
	libc/sys/linux/net/getnameinfo.c: Add restrict keyword to getnameinfo()
	and getaddrinfo() to increase standards compliance and match glibc.

Index: libc/sys/linux/include/netdb.h
===================================================================
RCS file: /cvs/src/src/newlib/libc/sys/linux/include/netdb.h,v
retrieving revision 1.2
diff -u -r1.2 netdb.h
--- libc/sys/linux/include/netdb.h	22 May 2008 21:30:23 -0000	1.2
+++ libc/sys/linux/include/netdb.h	19 Jul 2013 13:33:55 -0000
@@ -256,10 +256,12 @@
 /* void		sethostfile(const char *); */
 void		setnetent(int);
 void		setprotoent(int);
-int		getaddrinfo(const char *, const char *,
-			    const struct addrinfo *, struct addrinfo **);
-int		getnameinfo(const struct sockaddr *, socklen_t, char *,
-			    socklen_t, char *, socklen_t, unsigned int);
+int		getaddrinfo(const char *__restrict, const char *__restrict,
+			    const struct addrinfo *__restrict,
+			    struct addrinfo **__restrict);
+int		getnameinfo(const struct sockaddr *__restrict, socklen_t,
+			    char *__restrict, socklen_t, char *__restrict,
+			    socklen_t, unsigned int);
 void		freeaddrinfo(struct addrinfo *);
 char		*gai_strerror(int);
 int		setnetgrent(const char *);
Index: libc/sys/linux/net/getaddrinfo.c
===================================================================
RCS file: /cvs/src/src/newlib/libc/sys/linux/net/getaddrinfo.c,v
retrieving revision 1.3
diff -u -r1.3 getaddrinfo.c
--- libc/sys/linux/net/getaddrinfo.c	8 Sep 2008 22:25:14 -0000	1.3
+++ libc/sys/linux/net/getaddrinfo.c	19 Jul 2013 13:33:56 -0000
@@ -1473,8 +1473,9 @@
 
 
 int
-getaddrinfo (const char *name, const char *service,
-	     const struct addrinfo *hints, struct addrinfo **pai)
+getaddrinfo (const char *__restrict name, const char *__restrict service,
+	     const struct addrinfo *__restrict hints,
+	     struct addrinfo **__restrict pai)
 {
   int i = 0, j = 0, last_i = 0;
   int nresults = 0;
Index: libc/sys/linux/net/getnameinfo.c
===================================================================
RCS file: /cvs/src/src/newlib/libc/sys/linux/net/getnameinfo.c,v
retrieving revision 1.2
diff -u -r1.2 getnameinfo.c
--- libc/sys/linux/net/getnameinfo.c	22 May 2008 21:30:27 -0000	1.2
+++ libc/sys/linux/net/getnameinfo.c	19 Jul 2013 13:33:56 -0000
@@ -160,9 +160,9 @@
 
 
 int
-getnameinfo (const struct sockaddr *sa, socklen_t addrlen, char *host,
-	     socklen_t hostlen, char *serv, socklen_t servlen,
-	     unsigned int flags)
+getnameinfo (const struct sockaddr *__restrict sa, socklen_t addrlen,
+	     char *__restrict host, socklen_t hostlen, char *__restrict serv,
+	     socklen_t servlen, unsigned int flags)
 {
   int serrno = errno;
   int tmpbuflen = 1024;


More information about the Newlib mailing list