ng_pptpgre.c (239007) | ng_pptpgre.c (243882) |
---|---|
1/* 2 * ng_pptpgre.c 3 */ 4 5/*- 6 * Copyright (c) 1996-1999 Whistle Communications, Inc. 7 * All rights reserved. 8 * --- 23 unchanged lines hidden (view full) --- 32 * SERVICES, LOSS OF USE, DATA OR PROFITS, HOWEVER CAUSED AND UNDER ANY 33 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 34 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 35 * THIS SOFTWARE, EVEN IF WHISTLE COMMUNICATIONS IS ADVISED OF THE POSSIBILITY 36 * OF SUCH DAMAGE. 37 * 38 * Author: Archie Cobbs <archie@freebsd.org> 39 * | 1/* 2 * ng_pptpgre.c 3 */ 4 5/*- 6 * Copyright (c) 1996-1999 Whistle Communications, Inc. 7 * All rights reserved. 8 * --- 23 unchanged lines hidden (view full) --- 32 * SERVICES, LOSS OF USE, DATA OR PROFITS, HOWEVER CAUSED AND UNDER ANY 33 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 34 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 35 * THIS SOFTWARE, EVEN IF WHISTLE COMMUNICATIONS IS ADVISED OF THE POSSIBILITY 36 * OF SUCH DAMAGE. 37 * 38 * Author: Archie Cobbs <archie@freebsd.org> 39 * |
40 * $FreeBSD: head/sys/netgraph/ng_pptpgre.c 239007 2012-08-03 12:55:31Z mav $ | 40 * $FreeBSD: head/sys/netgraph/ng_pptpgre.c 243882 2012-12-05 08:04:20Z glebius $ |
41 * $Whistle: ng_pptpgre.c,v 1.7 1999/12/08 00:10:06 archie Exp $ 42 */ 43 44/* 45 * PPTP/GRE netgraph node type. 46 * 47 * This node type does the GRE encapsulation as specified for the PPTP 48 * protocol (RFC 2637, section 4). This includes sequencing and --- 544 unchanged lines hidden (view full) --- 593 hpriv->xmitAck = hpriv->recvSeq; 594 if (hpriv->conf.enableDelayedAck) 595 ng_uncallout(&hpriv->sackTimer, hpriv->node); 596 } 597 598 /* Prepend GRE header to outgoing frame */ 599 grelen = sizeof(*gre) + sizeof(u_int32_t) * (gre->hasSeq + gre->hasAck); 600 if (m == NULL) { | 41 * $Whistle: ng_pptpgre.c,v 1.7 1999/12/08 00:10:06 archie Exp $ 42 */ 43 44/* 45 * PPTP/GRE netgraph node type. 46 * 47 * This node type does the GRE encapsulation as specified for the PPTP 48 * protocol (RFC 2637, section 4). This includes sequencing and --- 544 unchanged lines hidden (view full) --- 593 hpriv->xmitAck = hpriv->recvSeq; 594 if (hpriv->conf.enableDelayedAck) 595 ng_uncallout(&hpriv->sackTimer, hpriv->node); 596 } 597 598 /* Prepend GRE header to outgoing frame */ 599 grelen = sizeof(*gre) + sizeof(u_int32_t) * (gre->hasSeq + gre->hasAck); 600 if (m == NULL) { |
601 MGETHDR(m, M_DONTWAIT, MT_DATA); | 601 MGETHDR(m, M_NOWAIT, MT_DATA); |
602 if (m == NULL) { 603 priv->stats.memoryFailures++; 604 ERROUT(ENOBUFS); 605 } 606 m->m_len = m->m_pkthdr.len = grelen; 607 m->m_pkthdr.rcvif = NULL; 608 } else { | 602 if (m == NULL) { 603 priv->stats.memoryFailures++; 604 ERROUT(ENOBUFS); 605 } 606 m->m_len = m->m_pkthdr.len = grelen; 607 m->m_pkthdr.rcvif = NULL; 608 } else { |
609 M_PREPEND(m, grelen, M_DONTWAIT); | 609 M_PREPEND(m, grelen, M_NOWAIT); |
610 if (m == NULL || (m->m_len < grelen 611 && (m = m_pullup(m, grelen)) == NULL)) { 612 priv->stats.memoryFailures++; 613 ERROUT(ENOBUFS); 614 } 615 } 616 bcopy(gre, mtod(m, u_char *), grelen); 617 --- 366 unchanged lines hidden --- | 610 if (m == NULL || (m->m_len < grelen 611 && (m = m_pullup(m, grelen)) == NULL)) { 612 priv->stats.memoryFailures++; 613 ERROUT(ENOBUFS); 614 } 615 } 616 bcopy(gre, mtod(m, u_char *), grelen); 617 --- 366 unchanged lines hidden --- |