]> Cypherpunks repositories - gostls13.git/commit
net: separate unix pollster initialization from network file descriptor allocation
authorMikio Hara <mikioh.mikioh@gmail.com>
Fri, 9 Aug 2013 00:02:27 +0000 (09:02 +0900)
committerMikio Hara <mikioh.mikioh@gmail.com>
Fri, 9 Aug 2013 00:02:27 +0000 (09:02 +0900)
commit554d47ecb5f35dd5bb850f5e20dde978bea37061
tree5cacb6671678ad701876c863cb076cb9e7cdfa73
parent654f35865fbbb595593e245887e58ba50d213f9c
net: separate unix pollster initialization from network file descriptor allocation

Unlike the existing net package own pollster, runtime-integrated
network pollster on BSD variants, actually kqueue, requires a socket
that has beed passed to syscall.Listen previously for a stream
listener.

This CL separates pollDesc.Init of Unix network pollster from newFD
to avoid any breakages in the transition from Unix network pollster
to runtime-integrated pollster. Upcoming CLs will rearrange the call
order of pollster and syscall functions like the following;

- For dialers that open active connections, pollDesc.Init will be
  called in between syscall.Bind and syscall.Connect.

- For stream listeners that open passive stream connections,
  pollDesc.Init will be called just after syscall.Listen.

- For datagram listeners that open datagram connections,
  pollDesc.Init will be called just after syscall.Bind.

This is in preparation for runtime-integrated network pollster for BSD
variants.

Update #5199

R=dvyukov, bradfitz
CC=golang-dev
https://golang.org/cl/12663043
src/pkg/net/fd_poll_unix.go