xref: /plan9/sys/src/ape/lib/bsd/sendto.c (revision 219b2ee8daee37f4aad58d63f21287faa8e4ffdc)
1*219b2ee8SDavid du Colombier /* posix */
2*219b2ee8SDavid du Colombier #include <sys/types.h>
3*219b2ee8SDavid du Colombier #include <unistd.h>
4*219b2ee8SDavid du Colombier #include <fcntl.h>
5*219b2ee8SDavid du Colombier #include <errno.h>
6*219b2ee8SDavid du Colombier 
7*219b2ee8SDavid du Colombier /* bsd extensions */
8*219b2ee8SDavid du Colombier #include <sys/uio.h>
9*219b2ee8SDavid du Colombier #include <sys/socket.h>
10*219b2ee8SDavid du Colombier 
11*219b2ee8SDavid du Colombier #include "priv.h"
12*219b2ee8SDavid du Colombier 
13*219b2ee8SDavid du Colombier int
14*219b2ee8SDavid du Colombier sendto(int fd, void *a, int n, int flags,
15*219b2ee8SDavid du Colombier 	void *to, int tolen)
16*219b2ee8SDavid du Colombier {
17*219b2ee8SDavid du Colombier 	/* actually, should do connect if not done already */
18*219b2ee8SDavid du Colombier 	return send(fd, a, n, flags);
19*219b2ee8SDavid du Colombier }
20*219b2ee8SDavid du Colombier 
21*219b2ee8SDavid du Colombier int
22*219b2ee8SDavid du Colombier recvfrom(int fd, void *a, int n, int flags,
23*219b2ee8SDavid du Colombier 	void *from, int *fromlen)
24*219b2ee8SDavid du Colombier {
25*219b2ee8SDavid du Colombier 	if(getsockname(fd, from, fromlen) < 0)
26*219b2ee8SDavid du Colombier 		return -1;
27*219b2ee8SDavid du Colombier 	return recv(fd, a, n, flags);
28*219b2ee8SDavid du Colombier }
29