From 8a0c4da87113c0aaec4cbe4e34cdb393797c8ff0 Mon Sep 17 00:00:00 2001 From: Robert Watson Date: Thu, 12 Aug 2004 18:31:36 +0000 Subject: [PATCH] When allocating the IPv6 header to stick in front of raw packet being sent via a raw IPv6 socket, use M_DONTWAIT not M_TRYWAIT, as we're holding the raw pcb mutex. Reported, tested by: kuriyama --- sys/netinet6/raw_ip6.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/sys/netinet6/raw_ip6.c b/sys/netinet6/raw_ip6.c index 204ec2905f7..202cdd691e6 100644 --- a/sys/netinet6/raw_ip6.c +++ b/sys/netinet6/raw_ip6.c @@ -377,7 +377,11 @@ rip6_output(m, va_alist) code = icmp6->icmp6_code; } - M_PREPEND(m, sizeof(*ip6), M_TRYWAIT); + M_PREPEND(m, sizeof(*ip6), M_DONTWAIT); + if (m == NULL) { + error = ENOBUFS; + goto bad; + } ip6 = mtod(m, struct ip6_hdr *); /*