mirror of
https://git.FreeBSD.org/src.git
synced 2025-01-13 14:40:22 +00:00
Avoid an interaction between syncache and accept filters. The syncache
code only passed up the connection to the tcp stack when it was complete, so it went directly into the so_comp (complete) queue. However, with accept filters, there is an additional phase before calling it "complete". Reviewed by: jlemon
This commit is contained in:
parent
1630647fc3
commit
205b2b6107
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=88329
@ -225,6 +225,8 @@ sonewconn(head, connstatus)
|
||||
so = soalloc(0);
|
||||
if (so == NULL)
|
||||
return ((struct socket *)0);
|
||||
if ((head->so_options & SO_ACCEPTFILTER) != 0)
|
||||
connstatus = 0;
|
||||
so->so_head = head;
|
||||
so->so_type = head->so_type;
|
||||
so->so_options = head->so_options &~ SO_ACCEPTCONN;
|
||||
|
@ -225,6 +225,8 @@ sonewconn(head, connstatus)
|
||||
so = soalloc(0);
|
||||
if (so == NULL)
|
||||
return ((struct socket *)0);
|
||||
if ((head->so_options & SO_ACCEPTFILTER) != 0)
|
||||
connstatus = 0;
|
||||
so->so_head = head;
|
||||
so->so_type = head->so_type;
|
||||
so->so_options = head->so_options &~ SO_ACCEPTCONN;
|
||||
|
Loading…
Reference in New Issue
Block a user