package nslcd_proto import "io" type NslcdError string func (o NslcdError) Error() string { return string(o) } func Write(fd io.Writer, data interface{}) (err error) { err = nil defer func() { if r := recover(); r != nil { switch r := r.(type) { case error: err = r default: panic(r) } } }() write(fd, data) return } func Read(fd io.Reader, data interface{}) (err error) { err = nil defer func() { if r := recover(); r != nil { switch r := r.(type) { case error: err = r default: panic(r) } } }() read(fd, data) return } func HandleRequest(backend Backend, in io.Reader, out io.Writer, cred Ucred) (err error) { err = nil defer func() { if r := recover(); r != nil { switch r := r.(type) { case error: err = r default: panic(r) } } }() handleRequest(backend, in, out, cred) return }