* chore: migrate https://github.com/valyala/tcplisten
* chore: merge upstream PR #6 from valyala/tcplisten: Backport TCP backlog size update of uint16->uint32 with Linux
* chore: merge upstream PR #10 from valyala/tcplisten: add support for dual-stack socket
* refactor: update to modern Go syntax
* doc: update README.md
* refactor: replace valyala/tcplisten package with custom implementation
* fix: the goroutine calls T.Fatalf, which must be called in the same goroutine as the test
* fix: golangci-lint
* fix: add windows fallback
* fix: prevent integer overflow
* test: skip TestConfigDeferAccept, TestConfigFastOpen, TestConfigAll on non-linux OS
* fix: resolve overflow security issue and use wrapped error
* refactor: migrate from syscall to golang.org/x/sys/unix for better compatibility
* chore: merge upstream PR #8 from valyala/tcplisten: z/OS Compatibility
* refactor: rename tcplisten_bsd.go to tscplisten_other.go
* Update Go Version to Go1.19.x And add cache
* Fix CI Line endings
* Update test CI Go Version to Go1.19.x And add cache
* Update Gosec Security Scanner CI to securego/gosec@v2.12.0
* Format comment
Go 1.19 adds support for links, lists, and clearer headings in doc comments. As part of this change, gofmt now reformats doc comments to make their rendered meaning clearer. See “Go Doc Comments” for syntax details and descriptions of common mistakes now highlighted by gofmt. As another part of this change, the new package go/doc/comment provides parsing and reformatting of doc comments as well as support for rendering them to HTML, Markdown, and text.
ref: https://tip.golang.org/doc/go1.19
ref: https://tip.golang.org/doc/comment
* Fix doc structure
* Fix windows tests
Just ignore /../ tests on windows until we have proper suppor.
* Remove useless test code
This code was basically just testing if tcp works. To test if
SO_REUSEPORT works we only have to try to listen on the same addr:port
twice.
* Fix test
If closing of an underlying File returns error, a Listener will not
be returned to a user and will not be closed as well.
Signed-off-by: Anton Tiurin <noxiouz@yandex.ru>