Deleted Added
full compact
uipc_syscalls.c (69781) uipc_syscalls.c (70254)
1/*
2 * Copyright (c) 1982, 1986, 1989, 1990, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * sendfile(2) and related extensions:
6 * Copyright (c) 1998, David Greenman. All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 20 unchanged lines hidden (view full) ---

29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 * SUCH DAMAGE.
35 *
36 * @(#)uipc_syscalls.c 8.4 (Berkeley) 2/21/94
1/*
2 * Copyright (c) 1982, 1986, 1989, 1990, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * sendfile(2) and related extensions:
6 * Copyright (c) 1998, David Greenman. All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 20 unchanged lines hidden (view full) ---

29 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
30 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
31 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
32 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
33 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
34 * SUCH DAMAGE.
35 *
36 * @(#)uipc_syscalls.c 8.4 (Berkeley) 2/21/94
37 * $FreeBSD: head/sys/kern/uipc_syscalls.c 69781 2000-12-08 21:51:06Z dwmalone $
37 * $FreeBSD: head/sys/kern/uipc_syscalls.c 70254 2000-12-21 21:44:31Z bmilekic $
38 */
39
40#include "opt_compat.h"
41#include "opt_ktrace.h"
42
43#include <sys/param.h>
44#include <sys/systm.h>
45#include <sys/kernel.h>

--- 497 unchanged lines hidden (view full) ---

543 error = sockargs(&control, mp->msg_control,
544 mp->msg_controllen, MT_CONTROL);
545 if (error)
546 goto bad;
547#ifdef COMPAT_OLDSOCK
548 if (mp->msg_flags == MSG_COMPAT) {
549 register struct cmsghdr *cm;
550
38 */
39
40#include "opt_compat.h"
41#include "opt_ktrace.h"
42
43#include <sys/param.h>
44#include <sys/systm.h>
45#include <sys/kernel.h>

--- 497 unchanged lines hidden (view full) ---

543 error = sockargs(&control, mp->msg_control,
544 mp->msg_controllen, MT_CONTROL);
545 if (error)
546 goto bad;
547#ifdef COMPAT_OLDSOCK
548 if (mp->msg_flags == MSG_COMPAT) {
549 register struct cmsghdr *cm;
550
551 M_PREPEND(control, sizeof(*cm), M_WAIT);
551 M_PREPEND(control, sizeof(*cm), M_TRYWAIT);
552 if (control == 0) {
553 error = ENOBUFS;
554 goto bad;
555 } else {
556 cm = mtod(control, struct cmsghdr *);
557 cm->cmsg_len = control->m_len;
558 cm->cmsg_level = SOL_SOCKET;
559 cm->cmsg_type = SCM_RIGHTS;

--- 766 unchanged lines hidden (view full) ---

1326 if ((u_int)buflen > MLEN) {
1327#ifdef COMPAT_OLDSOCK
1328 if (type == MT_SONAME && (u_int)buflen <= 112)
1329 buflen = MLEN; /* unix domain compat. hack */
1330 else
1331#endif
1332 return (EINVAL);
1333 }
552 if (control == 0) {
553 error = ENOBUFS;
554 goto bad;
555 } else {
556 cm = mtod(control, struct cmsghdr *);
557 cm->cmsg_len = control->m_len;
558 cm->cmsg_level = SOL_SOCKET;
559 cm->cmsg_type = SCM_RIGHTS;

--- 766 unchanged lines hidden (view full) ---

1326 if ((u_int)buflen > MLEN) {
1327#ifdef COMPAT_OLDSOCK
1328 if (type == MT_SONAME && (u_int)buflen <= 112)
1329 buflen = MLEN; /* unix domain compat. hack */
1330 else
1331#endif
1332 return (EINVAL);
1333 }
1334 m = m_get(M_WAIT, type);
1334 m = m_get(M_TRYWAIT, type);
1335 if (m == NULL)
1336 return (ENOBUFS);
1337 m->m_len = buflen;
1338 error = copyin(buf, mtod(m, caddr_t), (u_int)buflen);
1339 if (error)
1340 (void) m_free(m);
1341 else {
1342 *mp = m;

--- 354 unchanged lines hidden (view full) ---

1697 */
1698
1699 sf = sf_buf_alloc();
1700 sf->m = pg;
1701 pmap_qenter(sf->kva, &pg, 1);
1702 /*
1703 * Get an mbuf header and set it up as having external storage.
1704 */
1335 if (m == NULL)
1336 return (ENOBUFS);
1337 m->m_len = buflen;
1338 error = copyin(buf, mtod(m, caddr_t), (u_int)buflen);
1339 if (error)
1340 (void) m_free(m);
1341 else {
1342 *mp = m;

--- 354 unchanged lines hidden (view full) ---

1697 */
1698
1699 sf = sf_buf_alloc();
1700 sf->m = pg;
1701 pmap_qenter(sf->kva, &pg, 1);
1702 /*
1703 * Get an mbuf header and set it up as having external storage.
1704 */
1705 MGETHDR(m, M_WAIT, MT_DATA);
1705 MGETHDR(m, M_TRYWAIT, MT_DATA);
1706 if (m == NULL) {
1707 error = ENOBUFS;
1708 sf_buf_free((void *)sf->kva, NULL);
1709 goto done;
1710 }
1711 /*
1712 * Setup external storage for mbuf.
1713 */

--- 91 unchanged lines hidden ---
1706 if (m == NULL) {
1707 error = ENOBUFS;
1708 sf_buf_free((void *)sf->kva, NULL);
1709 goto done;
1710 }
1711 /*
1712 * Setup external storage for mbuf.
1713 */

--- 91 unchanged lines hidden ---