summaryrefslogtreecommitdiffstats
path: root/sys/netinet/sctp_peeloff.c
diff options
context:
space:
mode:
authorrrs <rrs@FreeBSD.org>2007-05-02 12:50:13 +0000
committerrrs <rrs@FreeBSD.org>2007-05-02 12:50:13 +0000
commit803b9be8be0827d6f2fde839f6dcd9225a2609be (patch)
tree93ea4f957056813b10463b788259dc0304a365e3 /sys/netinet/sctp_peeloff.c
parent78898ea5a86dc4f5a06f63d1f2c50c2c6497bef9 (diff)
downloadFreeBSD-src-803b9be8be0827d6f2fde839f6dcd9225a2609be.zip
FreeBSD-src-803b9be8be0827d6f2fde839f6dcd9225a2609be.tar.gz
- Somehow the disable fragment option got lost. We could
set/clear it but would not do it. Now we will. - Moved to latest socket api for extended sndrcv info struct. - Moved to support all new levels of fragment interleave (0-2). - Codenomicon security test updates - length checks and such. - Bug in stream reset (2 actually). - setpeerprimary could unlock a null pointer, fixed. - Added a flag in the pcb so netstat can see if we are listening easier. Obtained from: (some of the Listen changes from Weongyo Jeong)
Diffstat (limited to 'sys/netinet/sctp_peeloff.c')
-rw-r--r--sys/netinet/sctp_peeloff.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/netinet/sctp_peeloff.c b/sys/netinet/sctp_peeloff.c
index 81f3924..35696fd 100644
--- a/sys/netinet/sctp_peeloff.c
+++ b/sys/netinet/sctp_peeloff.c
@@ -99,7 +99,7 @@ sctp_do_peeloff(struct socket *head, struct socket *so, sctp_assoc_t assoc_id)
*/
sctp_move_pcb_and_assoc(inp, n_inp, stcb);
- sctp_pull_off_control_to_new_inp(inp, n_inp, stcb);
+ sctp_pull_off_control_to_new_inp(inp, n_inp, stcb, M_WAITOK);
SCTP_TCB_UNLOCK(stcb);
return (0);
@@ -196,7 +196,7 @@ sctp_get_peeloff(struct socket *head, sctp_assoc_t assoc_id, int *error)
* And now the final hack. We move data in the pending side i.e.
* head to the new socket buffer. Let the GRUBBING begin :-0
*/
- sctp_pull_off_control_to_new_inp(inp, n_inp, stcb);
+ sctp_pull_off_control_to_new_inp(inp, n_inp, stcb, M_WAITOK);
SCTP_TCB_UNLOCK(stcb);
return (newso);
OpenPOWER on IntegriCloud