summaryrefslogtreecommitdiff
path: root/nslcd_systemd/nslcd_systemd.go
AgeCommit message (Collapse)Author
2017-12-19nslcd_{systemd,server}: log more thingsLuke Shumaker
2017-12-18nslcd_systemd: make the connection a param in the handler closureLuke Shumaker
This isn't the source of a problem, since conn is declared inside the loop, so instances of it aren't shared. But, make that clearer.
2017-12-18nslcd_systemd: give each connection a unique ID prefix for loggingLuke Shumaker
2017-12-18use contexts for loggingLuke Shumaker
2017-12-18nslcd_{server,systemd}: BREAKING CHANGE: use contextsLuke Shumaker
2017-12-18nslcd_systemd: return EXIT_NETWORK for network errorsLuke Shumaker
2017-12-18nslcd_systemd: don't call err.Error() unnecessarilyLuke Shumaker
2017-09-08nslcd_systemd: add `import "os"` to the example in the docsLuke Shumaker
2017-09-08nslcd_{server,systemd}: FIX, BREAKING CHANGE: add limitsLuke Shumaker
Added types: nslcd_server: type Limits struct { ...} nslcd_server: type Conn interface{ ... } // a subset of net.Conn nslcd_server.HandleRequest() signature change: -func HandleRequest(backend Backend, in io.Reader, out io.Writer, cred unix.Ucred) (err error) { +func HandleRequest(backend Backend, limits Limits, conn Conn, cred unix.Ucred) (err error) { The `limits Limits` argument is added, and `conn Conn` replaces `in io.Reader` and `out io.Writer`. nslcd_systemd.Main() signature change: -func Main(backend Backend) uint8 { +func Main(backend Backend, limits nslcd_server.Limits) uint8 { The `limits Limits` argument is added.
2017-09-08nslcd_systemd: FIX: avoid a race conditionLuke Shumaker
Spawn handler goroutines from listener goroutine. This fixes a race condition where main | listener ----------+----------------- | conn = accept() return | | sock <- conn and the connection is *not* handled (despite being accepted).
2017-09-08nslcd_systemd: say "temporary error" when logging a temporary net errorLuke Shumaker
2017-09-08nslcd_systemd: backoff on temporary net errorsLuke Shumaker
The logic for backof size is based on the net/http server.
2017-09-08nslcd_systemd: Don't spew errors about "closed network socket" while stoppingLuke Shumaker
2017-09-08nslcd_systemd: Allow permanent network errors to make us exitLuke Shumaker
2017-09-08nslcd_systemd: Use go 1.9 syscall.RawConn to implement getpeercred()Luke Shumaker
Eh. I'm not really sure how I feel about this change. I feel better about the syscalls that the program makes. But the code is longer. There's more boilerplate. I wish syscall.RawConn let our function return an error that would bubble up.
2017-09-08nslcd_systemd: log a notice when reloadingLuke Shumaker
2017-09-04add canonical import pathsLuke Shumaker
2017-05-14remove dead assignmentsLuke Shumaker
2017-01-18Update for change in sd_notify.Luke Shumaker
2017-01-14Rename packages: lukeshu.com/git/go/*.git -> git.lukeshu.com/go/*Luke Shumaker
2017-01-01Update for new libsystemd.Luke Shumaker
2016-12-19Use x/sys/unix instead of the deprecated syscall. BREAKING CHANGE.Luke Shumaker
This is just a search/replace s/syscall/unix/g in the broken code.
2016-12-18Rename packages to make goimports happy. BREAKING CHANGE.Luke Shumaker