DF-0248 / fix.diff
diff --git a/sys/kern/uipc_accf.c b/sys/kern/uipc_accf.c --- a/sys/kern/uipc_accf.c +++ b/sys/kern/uipc_accf.c @@ -101,11 +101,13 @@ { struct accept_filter *p; + crit_enter(); SLIST_FOREACH(p, &accept_filtlsthd, accf_next) if (strcmp(p->accf_name, name) == 0) - return (p); + break; + crit_exit(); - return (NULL); + return ((p != NULL && strcmp(p->accf_name, name) == 0) ? p : NULL); } int |