Stop counting handlers before terminating.

The requirement to do so is obsolete and has already been removed from
other pluggable transports.

https://bugs.torproject.org/32046
This commit is contained in:
David Fifield 2019-10-11 16:50:25 -06:00
parent d8d3170af8
commit b4f4b29a03
4 changed files with 5 additions and 68 deletions

View file

@ -184,8 +184,6 @@ func main() {
}
pt.CmethodsDone()
var numHandlers int
var sig os.Signal
sigChan := make(chan os.Signal, 1)
signal.Notify(sigChan, syscall.SIGTERM)
@ -202,22 +200,12 @@ func main() {
}
// keep track of handlers and wait for a signal
sig = nil
for sig == nil {
select {
case n := <-sf.HandlerChan:
numHandlers += n
case sig = <-sigChan:
}
}
<-sigChan
// signal received, shut down
for _, ln := range listeners {
ln.Close()
}
snowflakes.End()
for numHandlers > 0 {
numHandlers += <-sf.HandlerChan
}
log.Println("snowflake is done.")
}