taldir

Directory service to resolve wallet mailboxes by messenger addresses
Log | Files | Refs | Submodules | README | LICENSE

krb.go (815B)


      1 package pq
      2 
      3 // NewGSSFunc creates a GSS authentication provider, for use with
      4 // RegisterGSSProvider.
      5 type NewGSSFunc func() (GSS, error)
      6 
      7 var newGss NewGSSFunc
      8 
      9 // RegisterGSSProvider registers a GSS authentication provider. For example, if
     10 // you need to use Kerberos to authenticate with your server, add this to your
     11 // main package:
     12 //
     13 //	import "github.com/lib/pq/auth/kerberos"
     14 //
     15 //	func init() {
     16 //		pq.RegisterGSSProvider(func() (pq.GSS, error) { return kerberos.NewGSS() })
     17 //	}
     18 func RegisterGSSProvider(newGssArg NewGSSFunc) {
     19 	newGss = newGssArg
     20 }
     21 
     22 // GSS provides GSSAPI authentication (e.g., Kerberos).
     23 type GSS interface {
     24 	GetInitToken(host string, service string) ([]byte, error)
     25 	GetInitTokenFromSpn(spn string) ([]byte, error)
     26 	Continue(inToken []byte) (done bool, outToken []byte, err error)
     27 }