diff --git a/lib/ff_veth.c b/lib/ff_veth.c index 778dd4997..3e70ac83e 100644 --- a/lib/ff_veth.c +++ b/lib/ff_veth.c @@ -448,8 +448,9 @@ void * ff_mbuf_mtod(void* bsd_mbuf) void* ff_rte_frm_extcl(void* mbuf) { struct mbuf *bsd_mbuf = mbuf; - - if ( bsd_mbuf->m_ext.ext_type==EXT_DISPOSABLE && bsd_mbuf->m_ext.ext_free==ff_mbuf_ext_free ){ + + if ( (bsd_mbuf->m_flags & M_EXT) && + bsd_mbuf->m_ext.ext_type == EXT_DISPOSABLE && bsd_mbuf->m_ext.ext_free == ff_mbuf_ext_free ) { return bsd_mbuf->m_ext.ext_arg1; } else