• Mikio Hara's avatar
    net: separate pollster initialization from network file descriptor allocation · 6a76bca3
    Mikio Hara authored
    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 (actually runtime_pollOpen) from newFD
    to allow control of each state of sockets and adds init method to netFD
    instead. Upcoming CLs will rearrange the call order of runtime-integrated
    pollster and syscall functions like the following;
    
    - For dialers that open active connections, runtime_pollOpen will be
      called in between syscall.Bind and syscall.Connect.
    
    - For stream listeners that open passive stream connections,
      runtime_pollOpen will be called just after syscall.Listen.
    
    - For datagram listeners that open datagram connections,
      runtime_pollOpen will be called just after syscall.Bind.
    
    This is in preparation for runtime-integrated network pollster for BSD
    variants.
    
    Update #5199
    
    R=dvyukov, alex.brainman, minux.ma
    CC=golang-dev
    https://golang.org/cl/8608044
    6a76bca3
Name
Last commit
Last update
..
archive Loading commit data...
bufio Loading commit data...
builtin Loading commit data...
bytes Loading commit data...
compress Loading commit data...
container Loading commit data...
crypto Loading commit data...
database/sql Loading commit data...
debug Loading commit data...
encoding Loading commit data...
errors Loading commit data...
expvar Loading commit data...
flag Loading commit data...
fmt Loading commit data...
go Loading commit data...
hash Loading commit data...
html Loading commit data...
image Loading commit data...
index/suffixarray Loading commit data...
io Loading commit data...
log Loading commit data...
math Loading commit data...
mime Loading commit data...
net Loading commit data...
os Loading commit data...
path Loading commit data...
reflect Loading commit data...
regexp Loading commit data...
runtime Loading commit data...
sort Loading commit data...
strconv Loading commit data...
strings Loading commit data...
sync Loading commit data...
syscall Loading commit data...
testing Loading commit data...
text Loading commit data...
time Loading commit data...
unicode Loading commit data...
unsafe Loading commit data...