DragonFlyBSD Kernel Audit
DF-2001 / fix.diff
← back to finding ↓ download raw
diff --git a/sys/dev/netif/ic/if_ic.c b/sys/dev/netif/ic/if_ic.c
--- a/sys/dev/netif/ic/if_ic.c
+++ b/sys/dev/netif/ic/if_ic.c
@@ -264,6 +264,8 @@
 
 	case INTR_GENERAL:
 	case INTR_START:
+		if (sc->ic_ifbuf == NULL)
+			break;
 		sc->ic_cp = sc->ic_ifbuf;
 		sc->ic_xfercnt = 0;
 		break;
@@ -302,6 +304,8 @@
 	  break;
 
 	case INTR_RECEIVE:
+		if (sc->ic_cp == NULL)
+			break;
 		if (sc->ic_xfercnt >= sc->ic_if.if_mtu+ICHDRLEN) {
 			sc->ic_iferrs ++;