projects
/
unix-history
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
tags
|
clone url
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
put vax headers in their place
[unix-history]
/
usr
/
src
/
sys
/
kern
/
uipc_syscalls.c
diff --git
a/usr/src/sys/kern/uipc_syscalls.c
b/usr/src/sys/kern/uipc_syscalls.c
index
d88be06
..
1be3f8b
100644
(file)
--- a/
usr/src/sys/kern/uipc_syscalls.c
+++ b/
usr/src/sys/kern/uipc_syscalls.c
@@
-1,4
+1,4
@@
-/* uipc_syscalls.c 4.
28 82/10/05
*/
+/* uipc_syscalls.c 4.
30 82/10/09
*/
#include "../h/param.h"
#include "../h/systm.h"
#include "../h/param.h"
#include "../h/systm.h"
@@
-12,8
+12,6
@@
#include "../h/protosw.h"
#include "../h/socket.h"
#include "../h/socketvar.h"
#include "../h/protosw.h"
#include "../h/socket.h"
#include "../h/socketvar.h"
-#include "../net/in.h"
-#include "../net/in_systm.h"
#include "../h/descrip.h"
#include "../h/uio.h"
#include "../h/descrip.h"
#include "../h/uio.h"
@@
-79,10
+77,11
@@
bind()
u.u_error = sockopt(&aopt, uap->opt);
if (u.u_error) {
m_freem(nam);
u.u_error = sockopt(&aopt, uap->opt);
if (u.u_error) {
m_freem(nam);
-
return
;
+
goto freeopt
;
}
u.u_error = sobind(fp->f_socket, nam, &aopt);
m_freem(nam);
}
u.u_error = sobind(fp->f_socket, nam, &aopt);
m_freem(nam);
+freeopt:
if (uap->opt)
m_free(dtom(aopt.so_optdata));
}
if (uap->opt)
m_free(dtom(aopt.so_optdata));
}
@@
-194,7
+193,6
@@
noname:
fp->f_socket = so;
ret:
nam = m_get(M_WAIT);
fp->f_socket = so;
ret:
nam = m_get(M_WAIT);
- nam->m_off = MMINOFF;
soaccept(so, nam, &aopt);
if (uap->name) {
if (namelen > nam->m_len)
soaccept(so, nam, &aopt);
if (uap->name) {
if (namelen > nam->m_len)
@@
-305,7
+303,7
@@
sendto()
u.u_error = sockname(&to, uap->to, uap->tolen);
if (u.u_error)
goto bad;
u.u_error = sockname(&to, uap->to, uap->tolen);
if (u.u_error)
goto bad;
- u.u_error = sosend(fp->f_socket, to, &auio);
+ u.u_error = sosend(fp->f_socket, to, &auio
, uap->flags
);
bad:
m_freem(to);
}
bad:
m_freem(to);
}
@@
-343,7
+341,7
@@
send()
}
if (u.u_error)
return;
}
if (u.u_error)
return;
- u.u_error = sosend(fp->f_socket, (struct mbuf *)0, &auio);
+ u.u_error = sosend(fp->f_socket, (struct mbuf *)0, &auio
, uap->flags
);
}
recvfrom()
}
recvfrom()
@@
-385,7
+383,7
@@
recvfrom()
return;
}
from = 0;
return;
}
from = 0;
- u.u_error = soreceive(fp->f_socket, &from, &auio);
+ u.u_error = soreceive(fp->f_socket, &from, &auio
, uap->flags
);
if (u.u_error)
goto bad;
if (from == 0)
if (u.u_error)
goto bad;
if (from == 0)
@@
-440,7
+438,7
@@
recv()
u.u_error = EFAULT;
return;
}
u.u_error = EFAULT;
return;
}
- u.u_error = soreceive(fp->f_socket, (struct mbuf *)0, &auio);
+ u.u_error = soreceive(fp->f_socket, (struct mbuf *)0, &auio
, uap->flags
);
u.u_r.r_val1 = uap->len - auio.uio_resid;
}
u.u_r.r_val1 = uap->len - auio.uio_resid;
}
@@
-548,7
+546,6
@@
sockname(aname, name, namelen)
if (namelen > MLEN)
return (EINVAL);
m = m_get(M_WAIT);
if (namelen > MLEN)
return (EINVAL);
m = m_get(M_WAIT);
- m->m_off = MMINOFF;
m->m_len = namelen;
if (copyin(name, mtod(m, caddr_t), namelen)) {
(void) m_free(m);
m->m_len = namelen;
if (copyin(name, mtod(m, caddr_t), namelen)) {
(void) m_free(m);
@@
-574,7
+571,6
@@
sockopt(so, opt)
if (so->so_optlen < 0 || so->so_optlen > MLEN)
return (EINVAL);
m = m_get(M_WAIT);
if (so->so_optlen < 0 || so->so_optlen > MLEN)
return (EINVAL);
m = m_get(M_WAIT);
- m->m_off = MMINOFF;
m->m_len = so->so_optlen;
if (copyin(so->so_optdata, mtod(m, caddr_t), m->m_len)) {
(void) m_free(m);
m->m_len = so->so_optlen;
if (copyin(so->so_optdata, mtod(m, caddr_t), m->m_len)) {
(void) m_free(m);