diff options
-rw-r--r-- | sys/netinet/ip_dummynet.c | 2 | ||||
-rw-r--r-- | sys/netinet/ip_dummynet.h | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/sys/netinet/ip_dummynet.c b/sys/netinet/ip_dummynet.c index 4a407d1..49f58fc 100644 --- a/sys/netinet/ip_dummynet.c +++ b/sys/netinet/ip_dummynet.c @@ -1246,7 +1246,7 @@ dropit: if (q) q->drops++ ; m_freem(m); - return ENOBUFS ; + return ( (fs && (fs->flags_fs & DN_NOERROR)) ? 0 : ENOBUFS); } /* diff --git a/sys/netinet/ip_dummynet.h b/sys/netinet/ip_dummynet.h index 30c5f6f..e8ae0e9 100644 --- a/sys/netinet/ip_dummynet.h +++ b/sys/netinet/ip_dummynet.h @@ -259,6 +259,7 @@ struct dn_flow_set { #define DN_IS_RED 0x0002 #define DN_IS_GENTLE_RED 0x0004 #define DN_QSIZE_IS_BYTES 0x0008 /* queue size is measured in bytes */ +#define DN_NOERROR 0x0010 /* do not report ENOBUFS on drops */ #define DN_IS_PIPE 0x4000 #define DN_IS_QUEUE 0x8000 |