if_atmsubr.c (59633) | if_atmsubr.c (69152) |
---|---|
1/* $NetBSD: if_atmsubr.c,v 1.10 1997/03/11 23:19:51 chuck Exp $ */ 2 3/* 4 * 5 * Copyright (c) 1996 Charles D. Cranor and Washington University. 6 * All rights reserved. 7 * 8 * Redistribution and use in source and binary forms, with or without --- 17 unchanged lines hidden (view full) --- 26 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 27 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 28 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 29 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 30 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 31 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 32 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33 * | 1/* $NetBSD: if_atmsubr.c,v 1.10 1997/03/11 23:19:51 chuck Exp $ */ 2 3/* 4 * 5 * Copyright (c) 1996 Charles D. Cranor and Washington University. 6 * All rights reserved. 7 * 8 * Redistribution and use in source and binary forms, with or without --- 17 unchanged lines hidden (view full) --- 26 * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, 27 * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT 28 * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 29 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 30 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 31 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 32 * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33 * |
34 * $FreeBSD: head/sys/net/if_atmsubr.c 59633 2000-04-26 02:40:33Z kjc $ | 34 * $FreeBSD: head/sys/net/if_atmsubr.c 69152 2000-11-25 07:35:38Z jlemon $ |
35 */ 36 37/* 38 * if_atmsubr.c 39 */ 40 41#include "opt_inet.h" 42#include "opt_inet6.h" --- 155 unchanged lines hidden (view full) --- 198 bcopy(llc_hdr, atmllc, sizeof(struct atmllc)); 199 } 200 } 201 202 /* 203 * Queue message on interface, and start output if interface 204 * not yet active. 205 */ | 35 */ 36 37/* 38 * if_atmsubr.c 39 */ 40 41#include "opt_inet.h" 42#include "opt_inet6.h" --- 155 unchanged lines hidden (view full) --- 198 bcopy(llc_hdr, atmllc, sizeof(struct atmllc)); 199 } 200 } 201 202 /* 203 * Queue message on interface, and start output if interface 204 * not yet active. 205 */ |
206 s = splimp(); 207 if (IF_QFULL(&ifp->if_snd)) { 208 IF_DROP(&ifp->if_snd); 209 splx(s); 210 senderr(ENOBUFS); 211 } 212 ifp->if_obytes += m->m_pkthdr.len; 213 IF_ENQUEUE(&ifp->if_snd, m); 214 if ((ifp->if_flags & IFF_OACTIVE) == 0) 215 (*ifp->if_start)(ifp); 216 splx(s); | 206 if (! IF_HANDOFF(&ifp->if_snd, m, ifp)) 207 return (ENOBUFS); |
217 return (error); 218 219bad: 220 if (m) 221 m_freem(m); 222 return (error); 223} 224 --- 71 unchanged lines hidden (view full) --- 296 break; 297#endif 298 default: 299 m_freem(m); 300 return; 301 } 302 } 303 | 208 return (error); 209 210bad: 211 if (m) 212 m_freem(m); 213 return (error); 214} 215 --- 71 unchanged lines hidden (view full) --- 287 break; 288#endif 289 default: 290 m_freem(m); 291 return; 292 } 293 } 294 |
304 s = splimp(); 305 if (IF_QFULL(inq)) { 306 IF_DROP(inq); 307 m_freem(m); 308 } else 309 IF_ENQUEUE(inq, m); 310 splx(s); | 295 (void) IF_HANDOFF(inq, m, NULL); |
311} 312 313/* 314 * Perform common duties while attaching to interface list 315 */ 316void 317atm_ifattach(ifp) 318 register struct ifnet *ifp; --- 31 unchanged lines hidden --- | 296} 297 298/* 299 * Perform common duties while attaching to interface list 300 */ 301void 302atm_ifattach(ifp) 303 register struct ifnet *ifp; --- 31 unchanged lines hidden --- |