View | Details | Raw Unified | Return to bug 44394 | Differences between
and this patch

Collapse All | Expand All

(-)lib/libc/sys/accept.2 (-1 / +1 lines)
Lines 44-50 Link Here
44
.In sys/types.h
44
.In sys/types.h
45
.In sys/socket.h
45
.In sys/socket.h
46
.Ft int
46
.Ft int
47
.Fn accept "int s" "struct sockaddr *addr" "socklen_t *addrlen"
47
.Fn accept "int s" "struct sockaddr * restrict addr" "socklen_t * restrict addrlen"
48
.Sh DESCRIPTION
48
.Sh DESCRIPTION
49
The argument
49
The argument
50
.Fa s
50
.Fa s
(-)lib/libc/sys/getpeername.2 (-1 / +1 lines)
Lines 44-50 Link Here
44
.In sys/types.h
44
.In sys/types.h
45
.In sys/socket.h
45
.In sys/socket.h
46
.Ft int
46
.Ft int
47
.Fn getpeername "int s" "struct sockaddr *name" "socklen_t *namelen"
47
.Fn getpeername "int s" "struct sockaddr * restrict name" "socklen_t * restrict namelen"
48
.Sh DESCRIPTION
48
.Sh DESCRIPTION
49
The
49
The
50
.Fn getpeername
50
.Fn getpeername
(-)lib/libc/sys/getsockname.2 (-1 / +1 lines)
Lines 44-50 Link Here
44
.In sys/types.h
44
.In sys/types.h
45
.In sys/socket.h
45
.In sys/socket.h
46
.Ft int
46
.Ft int
47
.Fn getsockname "int s" "struct sockaddr *name" "socklen_t *namelen"
47
.Fn getsockname "int s" "struct sockaddr * restrict name" "socklen_t * restrict namelen"
48
.Sh DESCRIPTION
48
.Sh DESCRIPTION
49
The
49
The
50
.Fn getsockname
50
.Fn getsockname
(-)lib/libc/sys/getsockopt.2 (-1 / +1 lines)
Lines 45-51 Link Here
45
.In sys/types.h
45
.In sys/types.h
46
.In sys/socket.h
46
.In sys/socket.h
47
.Ft int
47
.Ft int
48
.Fn getsockopt "int s" "int level" "int optname" "void *optval" "socklen_t *optlen"
48
.Fn getsockopt "int s" "int level" "int optname" "void * restrict optval" "socklen_t * restrict optlen"
49
.Ft int
49
.Ft int
50
.Fn setsockopt "int s" "int level" "int optname" "const void *optval" "socklen_t optlen"
50
.Fn setsockopt "int s" "int level" "int optname" "const void *optval" "socklen_t optlen"
51
.Sh DESCRIPTION
51
.Sh DESCRIPTION
(-)lib/libc/sys/recv.2 (-1 / +1 lines)
Lines 48-54 Link Here
48
.Ft ssize_t
48
.Ft ssize_t
49
.Fn recv "int s" "void *buf" "size_t len" "int flags"
49
.Fn recv "int s" "void *buf" "size_t len" "int flags"
50
.Ft ssize_t
50
.Ft ssize_t
51
.Fn recvfrom "int s" "void *buf" "size_t len" "int flags" "struct sockaddr *from" "socklen_t *fromlen"
51
.Fn recvfrom "int s" "void * restrict buf" "size_t len" "int flags" "struct sockaddr * restrict from" "socklen_t * restrict fromlen"
52
.Ft ssize_t
52
.Ft ssize_t
53
.Fn recvmsg "int s" "struct msghdr *msg" "int flags"
53
.Fn recvmsg "int s" "struct msghdr *msg" "int flags"
54
.Sh DESCRIPTION
54
.Sh DESCRIPTION
(-)sys/kern/syscalls.master (-5 / +7 lines)
Lines 84-93 Link Here
84
27	MSTD	BSD	{ int recvmsg(int s, struct msghdr *msg, int flags); }
84
27	MSTD	BSD	{ int recvmsg(int s, struct msghdr *msg, int flags); }
85
28	MSTD	BSD	{ int sendmsg(int s, caddr_t msg, int flags); }
85
28	MSTD	BSD	{ int sendmsg(int s, caddr_t msg, int flags); }
86
29	MSTD	BSD	{ int recvfrom(int s, caddr_t buf, size_t len, \
86
29	MSTD	BSD	{ int recvfrom(int s, caddr_t buf, size_t len, \
87
			    int flags, caddr_t from, int *fromlenaddr); }
87
			    int flags, struct sockaddr * __restrict from, \
88
30	MSTD	BSD	{ int accept(int s, caddr_t name, int *anamelen); }
88
			    __socklen_t * __restrict fromlenaddr); }
89
31	MSTD	BSD	{ int getpeername(int fdes, caddr_t asa, int *alen); }
89
30	MSTD	BSD	{ int accept(int s, struct sockaddr * __restrict name, __socklen_t *__restrict anamelen); }
90
32	MSTD	BSD	{ int getsockname(int fdes, caddr_t asa, int *alen); }
90
31	MSTD	BSD	{ int getpeername(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
91
32	MSTD	BSD	{ int getsockname(int fdes, struct sockaddr * __restrict asa, __socklen_t * __restrict alen); }
91
33	STD	POSIX	{ int access(char *path, int flags); }
92
33	STD	POSIX	{ int access(char *path, int flags); }
92
34	STD	BSD	{ int chflags(char *path, int flags); }
93
34	STD	BSD	{ int chflags(char *path, int flags); }
93
35	STD	BSD	{ int fchflags(int fd, int flags); }
94
35	STD	BSD	{ int fchflags(int fd, int flags); }
Lines 197-203 Link Here
197
			    struct timezone *tzp); }
198
			    struct timezone *tzp); }
198
117	MSTD	BSD	{ int getrusage(int who, struct rusage *rusage); }
199
117	MSTD	BSD	{ int getrusage(int who, struct rusage *rusage); }
199
118	MSTD	BSD	{ int getsockopt(int s, int level, int name, \
200
118	MSTD	BSD	{ int getsockopt(int s, int level, int name, \
200
			    caddr_t val, int *avalsize); }
201
			    void * __restrict val, \
202
			    __socklen_t * __restrict avalsize); }
201
119	UNIMPL	NOHIDE	resuba (BSD/OS 2.x)
203
119	UNIMPL	NOHIDE	resuba (BSD/OS 2.x)
202
120	MSTD	BSD	{ int readv(int fd, struct iovec *iovp, u_int iovcnt); }
204
120	MSTD	BSD	{ int readv(int fd, struct iovec *iovp, u_int iovcnt); }
203
121	MSTD	BSD	{ int writev(int fd, struct iovec *iovp, \
205
121	MSTD	BSD	{ int writev(int fd, struct iovec *iovp, \
(-)sys/kern/uipc_syscalls.c (-19 / +24 lines)
Lines 233-247 Link Here
233
	struct thread *td;
235
	struct thread *td;
234
	register struct accept_args /* {
236
	register struct accept_args /* {
235
		int	s;
237
		int	s;
236
		caddr_t	name;
238
		struct sockaddr	* __restrict name;
237
		int	*anamelen;
239
		socklen_t	* __restrict anamelen;
238
	} */ *uap;
240
	} */ *uap;
239
	int compat;
241
	int compat;
240
{
242
{
241
	struct filedesc *fdp;
243
	struct filedesc *fdp;
242
	struct file *nfp = NULL;
244
	struct file *nfp = NULL;
243
	struct sockaddr *sa;
245
	struct sockaddr *sa;
244
	int namelen, error, s;
246
	socklen_t namelen;
247
	int error, s;
245
	struct socket *head, *so;
248
	struct socket *head, *so;
246
	int fd;
249
	int fd;
247
	u_int fflag;
250
	u_int fflag;
Lines 876-882 Link Here
876
	struct uio auio;
879
	struct uio auio;
877
	register struct iovec *iov;
880
	register struct iovec *iov;
878
	register int i;
881
	register int i;
879
	int len, error;
882
	socklen_t len;
883
	int error;
880
	struct mbuf *m, *control = 0;
884
	struct mbuf *m, *control = 0;
881
	caddr_t ctlbuf;
885
	caddr_t ctlbuf;
882
	struct socket *so;
886
	struct socket *so;
Lines 925-931 Link Here
925
	    (struct mbuf **)0, mp->msg_control ? &control : (struct mbuf **)0,
929
	    (struct mbuf **)0, mp->msg_control ? &control : (struct mbuf **)0,
926
	    &mp->msg_flags);
930
	    &mp->msg_flags);
927
	if (error) {
931
	if (error) {
928
		if (auio.uio_resid != len && (error == ERESTART ||
932
		if (auio.uio_resid != (int)len && (error == ERESTART ||
929
		    error == EINTR || error == EWOULDBLOCK))
933
		    error == EINTR || error == EWOULDBLOCK))
930
			error = 0;
934
			error = 0;
931
	}
935
	}
Lines 933-939 Link Here
933
	if (ktriov != NULL) {
937
	if (ktriov != NULL) {
934
		if (error == 0) {
938
		if (error == 0) {
935
			ktruio.uio_iov = ktriov;
939
			ktruio.uio_iov = ktriov;
936
			ktruio.uio_resid = len - auio.uio_resid;
940
			ktruio.uio_resid = (int)len - auio.uio_resid;
937
			ktrgenio(s, UIO_READ, &ktruio, error);
941
			ktrgenio(s, UIO_READ, &ktruio, error);
938
		}
942
		}
939
		FREE(ktriov, M_TEMP);
943
		FREE(ktriov, M_TEMP);
Lines 941-947 Link Here
941
#endif
945
#endif
942
	if (error)
946
	if (error)
943
		goto out;
947
		goto out;
944
	td->td_retval[0] = len - auio.uio_resid;
948
	td->td_retval[0] = (int)len - auio.uio_resid;
945
	if (mp->msg_name) {
949
	if (mp->msg_name) {
946
		len = mp->msg_namelen;
950
		len = mp->msg_namelen;
947
		if (len <= 0 || fromsa == 0)
951
		if (len <= 0 || fromsa == 0)
Lines 963-969 Link Here
963
		}
967
		}
964
		mp->msg_namelen = len;
968
		mp->msg_namelen = len;
965
		if (namelenp &&
969
		if (namelenp &&
966
		    (error = copyout(&len, namelenp, sizeof (int)))) {
970
		    (error = copyout(&len, namelenp, sizeof (socklen_t)))) {
967
#ifdef COMPAT_OLDSOCK
971
#ifdef COMPAT_OLDSOCK
968
			if (mp->msg_flags & MSG_COMPAT)
972
			if (mp->msg_flags & MSG_COMPAT)
969
				error = 0;	/* old recvfrom didn't check */
973
				error = 0;	/* old recvfrom didn't check */
Lines 1038-1045 Link Here
1038
		caddr_t	buf;
1042
		caddr_t	buf;
1039
		size_t	len;
1043
		size_t	len;
1040
		int	flags;
1044
		int	flags;
1041
		caddr_t	from;
1045
		struct sockaddr * __restrict	from;
1042
		int	*fromlenaddr;
1046
		socklen_t * __restrict fromlenaddr;
1043
	} */ *uap;
1047
	} */ *uap;
1044
{
1048
{
1045
	struct msghdr msg;
1049
	struct msghdr msg;
Lines 1301-1311 Link Here
1301
		int	s;
1305
		int	s;
1302
		int	level;
1306
		int	level;
1303
		int	name;
1307
		int	name;
1304
		caddr_t	val;
1308
		void * __restrict	val;
1305
		int	*avalsize;
1309
		socklen_t * __restrict avalsize;
1306
	} */ *uap;
1310
	} */ *uap;
1307
{
1311
{
1308
	int	valsize, error;
1312
	socklen_t valsize;
1313
	int	error;
1309
	struct  socket *so;
1314
	struct  socket *so;
1310
	struct	sockopt sopt;
1315
	struct	sockopt sopt;
1311
1316
Lines 1354-1367 Link Here
1354
	struct thread *td;
1359
	struct thread *td;
1355
	register struct getsockname_args /* {
1360
	register struct getsockname_args /* {
1356
		int	fdes;
1361
		int	fdes;
1357
		caddr_t	asa;
1362
		struct sockaddr * __restrict asa;
1358
		int	*alen;
1363
		socklen_t * __restrict alen;
1359
	} */ *uap;
1364
	} */ *uap;
1360
	int compat;
1365
	int compat;
1361
{
1366
{
1362
	struct socket *so;
1367
	struct socket *so;
1363
	struct sockaddr *sa;
1368
	struct sockaddr *sa;
1364
	int len, error;
1369
	socklen_t len;
1370
	int error;
1365
1371
1366
	mtx_lock(&Giant);
1372
	mtx_lock(&Giant);
1367
	if ((error = fgetsock(td, uap->fdes, &so, NULL)) != 0)
1373
	if ((error = fgetsock(td, uap->fdes, &so, NULL)) != 0)
Lines 1438-1451 Link Here
1438
	struct thread *td;
1444
	struct thread *td;
1439
	register struct getpeername_args /* {
1445
	register struct getpeername_args /* {
1440
		int	fdes;
1446
		int	fdes;
1441
		caddr_t	asa;
1447
		struct sockaddr * __restrict	asa;
1442
		int	*alen;
1448
		socklen_t * __restrict	alen;
1443
	} */ *uap;
1449
	} */ *uap;
1444
	int compat;
1450
	int compat;
1445
{
1451
{
1446
	struct socket *so;
1452
	struct socket *so;
1447
	struct sockaddr *sa;
1453
	struct sockaddr *sa;
1448
	int len, error;
1454
	socklen_t len;
1455
	int error;
1449
1456
1450
	mtx_lock(&Giant);
1457
	mtx_lock(&Giant);
1451
	if ((error = fgetsock(td, uap->fdes, &so, NULL)) != 0)
1458
	if ((error = fgetsock(td, uap->fdes, &so, NULL)) != 0)
(-)sys/sys/socket.h (-8 / +5 lines)
Lines 513-530 Link Here
513
#include <sys/cdefs.h>
513
#include <sys/cdefs.h>
514
514
515
__BEGIN_DECLS
515
__BEGIN_DECLS
516
/*
516
int	accept(int, struct sockaddr * __restrict, socklen_t * __restrict);
517
 * XXX functions missing restrict type-qualifiers.
518
 */
519
int	accept(int, struct sockaddr *, socklen_t *);
520
int	bind(int, const struct sockaddr *, socklen_t);
517
int	bind(int, const struct sockaddr *, socklen_t);
521
int	connect(int, const struct sockaddr *, socklen_t);
518
int	connect(int, const struct sockaddr *, socklen_t);
522
int	getpeername(int, struct sockaddr *, socklen_t *);
519
int	getpeername(int, struct sockaddr * __restrict, socklen_t * __restrict);
523
int	getsockname(int, struct sockaddr *, socklen_t *);
520
int	getsockname(int, struct sockaddr * __restrict, socklen_t * __restrict);
524
int	getsockopt(int, int, int, void *, socklen_t *);
521
int	getsockopt(int, int, int, void * __restrict, socklen_t * __restrict);
525
int	listen(int, int);
522
int	listen(int, int);
526
ssize_t	recv(int, void *, size_t, int);
523
ssize_t	recv(int, void *, size_t, int);
527
ssize_t	recvfrom(int, void *, size_t, int, struct sockaddr *, socklen_t *);
524
ssize_t	recvfrom(int, void *, size_t, int, struct sockaddr * __restrict, socklen_t * __restrict);
528
ssize_t	recvmsg(int, struct msghdr *, int);
525
ssize_t	recvmsg(int, struct msghdr *, int);
529
ssize_t	send(int, const void *, size_t, int);
526
ssize_t	send(int, const void *, size_t, int);
530
ssize_t	sendto(int, const void *,
527
ssize_t	sendto(int, const void *,

Return to bug 44394