summaryrefslogtreecommitdiff
path: root/src/nshd
AgeCommit message (Collapse)Author
2016-06-17rearrange the go packages a bitLuke Shumaker
2016-06-17simplify licenses to match what LICENSE.txt saysLuke Shumaker
2016-06-17copyright yearsLuke Shumaker
2016-06-17lise libgnulinux cryptLuke Shumaker
2016-06-15better debuggingLuke Shumaker
2016-06-15nshd: use meta-catLuke Shumaker
2016-06-15I'm a moron.Luke Shumaker
All these months, I thought you couldn't extend existing groups.
2016-06-14drop inotify, we can just rely on SIGHUP.Luke Shumaker
much simple. very kiss.
2015-11-08gofmtLuke Shumaker
2015-11-07use the separate packages from lukeshu.com, clean up the MakefileLuke Shumaker
2015-10-07db_pam: I had "0" in the array of possible characters twiceLuke Shumaker
2015-09-18Massive documentation and copyright clean-up.Luke Shumaker
2015-09-12gofmt, use make(chan) without a number argument where possibleLuke Shumaker
2015-09-12Derp, channels and goroutines are enumeratorsLuke Shumaker
2015-09-12Clean up log messagesLuke Shumaker
2015-09-12Add an inotify watcher utility using channels; use it.Luke Shumaker
The interface of inotify/inutil.Watcher more resembles golang.org/x/exp/inotify; with it using channels instead of repeated calls to Read(). In my use-case, this is useful because it allows implementing a "read" (select, really) that doesn't block Close(); which is required to handle the TERM signal correctly.
2015-09-12hackers_watch: fix double-lock errorLuke Shumaker
2015-09-11fix several all*Enumerator initializersLuke Shumaker
2015-09-11tidyLuke Shumaker
2015-09-11Have nslcd_systemd manage the backend lifecycleLuke Shumaker
2015-09-08I am dumb, fix inotify bindingsLuke Shumaker
2015-09-08oopsLuke Shumaker
2015-09-07implement db_groupLuke Shumaker
2015-09-07clean upLuke Shumaker
2015-09-07Pull the mucking with getgrnam into a getgr package.Luke Shumaker
2015-09-07clean up gofmt differencesLuke Shumaker
2015-09-07manage each users list of groups as a set instead of a listLuke Shumaker
2015-09-05track group membershipLuke Shumaker
2015-09-05minor tidy upLuke Shumaker
2015-09-05hackers_git:parse_user_yaml(): prune duplicate group namesLuke Shumaker
2015-09-05clean up load_yaml_file loggingLuke Shumaker
2015-09-05tidy up hackers_gitLuke Shumaker
2015-09-05inotify: Avoid most of the race conditions, get rid of CintLuke Shumaker
There's still a condition that could be a race with fd-reuse, if one goroutine is calling inotify.{AddWatch,RmWatch,Read}(); another goroutine is calling inotify.Close(), and several things happen between loadFd() running and the add_watch/rm_watch/read syscall launching: - syscall.Close() returns - syscall.Open() reuses the filedescriptor A B syscall(loadFd()) inotify.Close(); syscall.Open() ---------------------------------------------------------- loadFd() syscall.Close() syscall.Open() syscall() Given that Read() can't be allowed to block Close() from running, I'm not sure there's a way to fix this.
2015-09-05The way nslcd_proto's GenericGetNext was designed, nil checks didn't workLuke Shumaker
2015-09-05error handling fixesLuke Shumaker
2015-09-05nslcd_h: each of the custom types should have kind==struct, to make io easyLuke Shumaker
2015-09-05clean up loggingLuke Shumaker
2015-09-04fix filename2uid()Luke Shumaker
2015-09-04fix password loadingLuke Shumaker
2015-09-03Use a defer/recover block to have the exit status on panic match LSB.Luke Shumaker
2015-09-03The comment at the bottom of hackers_watch.go was wrong; fix the race.Luke Shumaker
The actual determinant was this race main worker ------------------- Close() Read() Exit() If Read() returned between when Close() happened and when Exit() happened, then the code ran. It doesn't *really* matter if the code runs, but for predictability, set up a wait group to have Close() block until the worker exits.
2015-09-03fix bugs in code calling inotifyLuke Shumaker
2015-09-03tidyLuke Shumaker
2015-09-03Fix issues in inotify bindingsLuke Shumaker
2015-09-03Use systemd/lsb exit codes, consistentlyLuke Shumaker
2015-09-02clean up formattingLuke Shumaker
2015-09-02Implement all of hackers.git, except the group DBLuke Shumaker
2015-09-02Clean upLuke Shumaker
2015-09-02Turn on C warnings/errorsLuke Shumaker
2015-09-01Finish the hackers.git parserLuke Shumaker