diff options
Diffstat (limited to 'src/cracha.go')
-rw-r--r-- | src/cracha.go | 152 |
1 files changed, 76 insertions, 76 deletions
diff --git a/src/cracha.go b/src/cracha.go index df92704..c162e96 100644 --- a/src/cracha.go +++ b/src/cracha.go @@ -13,7 +13,7 @@ import ( "fiinha" "golite" - "guuid" + "uuid" "scrypt" g "gobang" ) @@ -61,26 +61,26 @@ type queryT struct{ } type queriesT struct{ - register func(guuid.UUID, string, []byte, []byte) (userT, error) - sendToken func(guuid.UUID, string) error - confirm func(string, guuid.UUID) (sessionT, error) + register func(uuid.UUID, string, []byte, []byte) (userT, error) + sendToken func(uuid.UUID, string) error + confirm func(string, uuid.UUID) (sessionT, error) byEmail func(string) (userT, error) - userByUUID func(guuid.UUID) (userT, error) - login func(guuid.UUID, guuid.UUID) (sessionT, error) - refresh func(guuid.UUID, guuid.UUID) (sessionT, error) - reset func(int64, []byte, guuid.UUID) (sessionT, error) - change func(guuid.UUID, []byte) (sessionT, error) - byUUID func(guuid.UUID) (sessionT, error) - logout func(guuid.UUID) error - outOthers func(guuid.UUID) error - outAll func(guuid.UUID) error + userByUUID func(uuid.UUID) (userT, error) + login func(uuid.UUID, uuid.UUID) (sessionT, error) + refresh func(uuid.UUID, uuid.UUID) (sessionT, error) + reset func(int64, []byte, uuid.UUID) (sessionT, error) + change func(uuid.UUID, []byte) (sessionT, error) + byUUID func(uuid.UUID) (sessionT, error) + logout func(uuid.UUID) error + outOthers func(uuid.UUID) error + outAll func(uuid.UUID) error close func() error } type userT struct{ id int64 timestamp time.Time - uuid guuid.UUID + uuid uuid.UUID email string salt []byte pwhash []byte @@ -88,20 +88,20 @@ type userT struct{ } type User struct{ - UUID guuid.UUID + UUID uuid.UUID Confirmed bool } type sessionT struct{ id int64 timestamp time.Time - uuid guuid.UUID - userID guuid.UUID + uuid uuid.UUID + userID uuid.UUID revoked_at *time.Time } type Session struct{ - UUID guuid.UUID + UUID uuid.UUID } type consumerT struct{ @@ -124,8 +124,8 @@ type IAuth interface{ LoginEmail(string, string) (Session, error) ForgotPassword(string) error Refresh(Session) (Session, error) - ResetPassword(guuid.UUID, string, string) (Session, error) - ChangePassword(guuid.UUID, string, string, string) (Session, error) + ResetPassword(uuid.UUID, string, string) (Session, error) + ChangePassword(uuid.UUID, string, string, string) (Session, error) Logout(Session) error LogoutOthers(Session) error LogoutAll(Session) error @@ -367,7 +367,7 @@ func registerSQL(prefix string) queryT { func registerStmt( cfg dbconfigT, ) ( - func(guuid.UUID, string, []byte, []byte) (userT, error), + func(uuid.UUID, string, []byte, []byte) (userT, error), func() error, error, ) { @@ -384,7 +384,7 @@ func registerStmt( } fn := func( - userID guuid.UUID, + userID uuid.UUID, email string, salt []byte, pwhash []byte, @@ -439,7 +439,7 @@ func sendTokenSQL(prefix string) queryT { func sendTokenStmt( cfg dbconfigT, -) (func(guuid.UUID, string) error, func() error, error) { +) (func(uuid.UUID, string) error, func() error, error) { q := sendTokenSQL(cfg.prefix) writeStmt, err := cfg.shared.Prepare(q.write) @@ -447,7 +447,7 @@ func sendTokenStmt( return nil, nil, err } - fn := func(userID guuid.UUID, token string) error { + fn := func(userID uuid.UUID, token string) error { user_id_bytes := userID[:] _, err := writeStmt.Exec(user_id_bytes, token) return err @@ -493,7 +493,7 @@ func confirmSQL(prefix string) queryT { func confirmStmt( cfg dbconfigT, -) (func(string, guuid.UUID) (sessionT, error), func() error, error) { +) (func(string, uuid.UUID) (sessionT, error), func() error, error) { q := confirmSQL(cfg.prefix) writeStmt, err := cfg.shared.Prepare(q.write) @@ -515,7 +515,7 @@ func confirmStmt( ) } - fn := func(token string, sessionID guuid.UUID) (sessionT, error) { + fn := func(token string, sessionID uuid.UUID) (sessionT, error) { session := sessionT{ uuid: sessionID, } @@ -533,7 +533,7 @@ func confirmStmt( if err != nil { return sessionT{}, err } - session.userID = guuid.UUID(user_id_bytes) + session.userID = uuid.UUID(user_id_bytes) _, err = writeStmt.Exec(user_id, attempt_id) if err != nil { @@ -619,7 +619,7 @@ func byEmailStmt( if err != nil { return userT{}, err } - user.uuid = guuid.UUID(user_id_bytes) + user.uuid = uuid.UUID(user_id_bytes) user.timestamp, err = time.Parse(time.RFC3339Nano,timestr) if err != nil { @@ -654,7 +654,7 @@ func userByUUIDSQL(prefix string) queryT { func userByUUIDStmt( cfg dbconfigT, -) (func(guuid.UUID) (userT, error), func() error, error) { +) (func(uuid.UUID) (userT, error), func() error, error) { q := userByUUIDSQL(cfg.prefix) readStmt, err := cfg.shared.Prepare(q.read) @@ -662,7 +662,7 @@ func userByUUIDStmt( return nil, nil, err } - fn := func(userID guuid.UUID) (userT, error) { + fn := func(userID uuid.UUID) (userT, error) { user := userT{ uuid: userID, } @@ -706,7 +706,7 @@ func loginSQL(prefix string) queryT { func loginStmt( cfg dbconfigT, -) (func(guuid.UUID, guuid.UUID) (sessionT, error), func() error, error) { +) (func(uuid.UUID, uuid.UUID) (sessionT, error), func() error, error) { q := loginSQL(cfg.prefix) sessionStmt, err := cfg.shared.Prepare(q.session) @@ -714,7 +714,7 @@ func loginStmt( return nil, nil, err } - fn := func(userID guuid.UUID, sessionID guuid.UUID) (sessionT, error) { + fn := func(userID uuid.UUID, sessionID uuid.UUID) (sessionT, error) { session := sessionT{ uuid: sessionID, userID: userID, @@ -775,7 +775,7 @@ func refreshSQL(prefix string) queryT { func refreshStmt( cfg dbconfigT, -) (func(guuid.UUID, guuid.UUID) (sessionT, error), func() error, error) { +) (func(uuid.UUID, uuid.UUID) (sessionT, error), func() error, error) { q := refreshSQL(cfg.prefix) writeStmt, err := cfg.shared.Prepare(q.write) @@ -784,8 +784,8 @@ func refreshStmt( } fn := func( - sessionID guuid.UUID, - newSessionID guuid.UUID, + sessionID uuid.UUID, + newSessionID uuid.UUID, ) (sessionT, error) { session := sessionT{ uuid: newSessionID, @@ -805,7 +805,7 @@ func refreshStmt( if err != nil { return sessionT{}, err } - session.userID = guuid.UUID(user_id_bytes) + session.userID = uuid.UUID(user_id_bytes) session.timestamp, err = time.Parse(time.RFC3339Nano, timestr) if err != nil { @@ -829,7 +829,7 @@ func resetSQL(prefix string) queryT { func resetStmt( cfg dbconfigT, -) (func(int64, []byte, guuid.UUID) (sessionT, error), func() error, error) { +) (func(int64, []byte, uuid.UUID) (sessionT, error), func() error, error) { q := resetSQL(cfg.prefix) writeStmt, err := cfg.shared.Prepare(q.write) @@ -837,7 +837,7 @@ func resetStmt( return nil, nil, err } - fn := func(id int64, pwhash []byte, token guuid.UUID) (sessionT, error) { + fn := func(id int64, pwhash []byte, token uuid.UUID) (sessionT, error) { var session sessionT err := writeStmt.QueryRow(id, pwhash, token).Scan(&session) if err != nil { @@ -860,7 +860,7 @@ func changeSQL(prefix string) queryT { func changeStmt( cfg dbconfigT, -) (func(guuid.UUID, []byte) (sessionT, error), func() error, error) { +) (func(uuid.UUID, []byte) (sessionT, error), func() error, error) { q := changeSQL(cfg.prefix) writeStmt, err := cfg.shared.Prepare(q.write) @@ -868,7 +868,7 @@ func changeStmt( return nil, nil, err } - fn := func(uuid guuid.UUID, pwhash []byte) (sessionT, error) { + fn := func(uuid uuid.UUID, pwhash []byte) (sessionT, error) { var session sessionT err := writeStmt.QueryRow(uuid, pwhash).Scan(&session) if err != nil { @@ -891,7 +891,7 @@ func byUUIDSQL(prefix string) queryT { func byUUIDStmt( cfg dbconfigT, -) (func(guuid.UUID) (sessionT, error), func() error, error) { +) (func(uuid.UUID) (sessionT, error), func() error, error) { q := byUUIDSQL(cfg.prefix) readStmt, err := cfg.shared.Prepare(q.read) @@ -899,7 +899,7 @@ func byUUIDStmt( return nil, nil, err } - fn := func(sessionID guuid.UUID) (sessionT, error) { + fn := func(sessionID uuid.UUID) (sessionT, error) { var session sessionT err := readStmt.QueryRow(sessionID).Scan(&session) if err != nil { @@ -922,7 +922,7 @@ func logoutSQL(prefix string) queryT { func logoutStmt( cfg dbconfigT, -) (func(guuid.UUID) error, func() error, error) { +) (func(uuid.UUID) error, func() error, error) { q := logoutSQL(cfg.prefix) writeStmt, err := cfg.shared.Prepare(q.write) @@ -930,7 +930,7 @@ func logoutStmt( return nil, nil, err } - fn := func(sessionID guuid.UUID) error { + fn := func(sessionID uuid.UUID) error { _, err := writeStmt.Exec(sessionID) return err } @@ -949,7 +949,7 @@ func outOthersSQL(prefix string) queryT { func outOthersStmt( cfg dbconfigT, -) (func(guuid.UUID) error, func() error, error) { +) (func(uuid.UUID) error, func() error, error) { q := outOthersSQL(cfg.prefix) writeStmt, err := cfg.shared.Prepare(q.write) @@ -957,7 +957,7 @@ func outOthersStmt( return nil, nil, err } - fn := func(sessionID guuid.UUID) error { + fn := func(sessionID uuid.UUID) error { _, err := writeStmt.Exec(sessionID) return err } @@ -976,7 +976,7 @@ func outAllSQL(prefix string) queryT { func outAllStmt( cfg dbconfigT, -) (func(guuid.UUID) error, func() error, error) { +) (func(uuid.UUID) error, func() error, error) { q := outAllSQL(cfg.prefix) writeStmt, err := cfg.shared.Prepare(q.write) @@ -984,7 +984,7 @@ func outAllStmt( return nil, nil, err } - fn := func(sessionID guuid.UUID) error { + fn := func(sessionID uuid.UUID) error { _, err := writeStmt.Exec(sessionID) return err } @@ -1068,7 +1068,7 @@ func initDB( var connMutex sync.RWMutex return queriesT{ register: func( - a guuid.UUID, + a uuid.UUID, b string, c []byte, d []byte, @@ -1077,12 +1077,12 @@ func initDB( defer connMutex.RUnlock() return register(a, b, c, d) }, - sendToken: func(a guuid.UUID, b string) error { + sendToken: func(a uuid.UUID, b string) error { connMutex.RLock() defer connMutex.RUnlock() return sendToken(a, b) }, - confirm: func(a string, b guuid.UUID) (sessionT, error) { + confirm: func(a string, b uuid.UUID) (sessionT, error) { connMutex.RLock() defer connMutex.RUnlock() return confirm(a, b) @@ -1092,47 +1092,47 @@ func initDB( defer connMutex.RUnlock() return byEmail(a) }, - userByUUID: func(a guuid.UUID) (userT, error) { + userByUUID: func(a uuid.UUID) (userT, error) { connMutex.RLock() defer connMutex.RUnlock() return userByUUID(a) }, - login: func(a guuid.UUID, b guuid.UUID) (sessionT, error) { + login: func(a uuid.UUID, b uuid.UUID) (sessionT, error) { connMutex.RLock() defer connMutex.RUnlock() return login(a, b) }, - refresh: func(a guuid.UUID, b guuid.UUID) (sessionT, error) { + refresh: func(a uuid.UUID, b uuid.UUID) (sessionT, error) { connMutex.RLock() defer connMutex.RUnlock() return refresh(a, b) }, - reset: func(a int64, b []byte, c guuid.UUID) (sessionT, error) { + reset: func(a int64, b []byte, c uuid.UUID) (sessionT, error) { connMutex.RLock() defer connMutex.RUnlock() return reset(a, b, c) }, - change: func(a guuid.UUID, b []byte) (sessionT, error) { + change: func(a uuid.UUID, b []byte) (sessionT, error) { connMutex.RLock() defer connMutex.RUnlock() return change(a, b) }, - byUUID: func(a guuid.UUID) (sessionT, error) { + byUUID: func(a uuid.UUID) (sessionT, error) { connMutex.RLock() defer connMutex.RUnlock() return byUUID(a) }, - logout: func(a guuid.UUID) error { + logout: func(a uuid.UUID) error { connMutex.RLock() defer connMutex.RUnlock() return logout(a) }, - outOthers: func(a guuid.UUID) error { + outOthers: func(a uuid.UUID) error { connMutex.RLock() defer connMutex.RUnlock() return outOthers(a) }, - outAll: func(a guuid.UUID) error { + outAll: func(a uuid.UUID) error { connMutex.RLock() defer connMutex.RUnlock() return outAll(a) @@ -1385,7 +1385,7 @@ func (auth authT) Register( / FIXME: how so? */ - flowID := guuid.New() + flowID := uuid.New() waiter := auth.queue.WaitFor(NEW_USER, flowID, "register") defer waiter.Close() @@ -1417,7 +1417,7 @@ func (auth authT) Register( func sendConfirmationMessage( email string, - flowID guuid.UUID, + flowID uuid.UUID, ) (fiinha.UnsentMessage, error) { data := make(map[string]interface{}) data["email"] = email @@ -1434,7 +1434,7 @@ func sendConfirmationMessage( } func (auth authT) ResendConfirmation(email string) error { - unsent, err := sendConfirmationMessage(email, guuid.New()) + unsent, err := sendConfirmationMessage(email, uuid.New()) if err != nil { return err } @@ -1461,7 +1461,7 @@ func asPublicSession(session sessionT) (Session, error) { } func (auth authT) ConfirmEmail(token string) (Session, error) { - session, err := auth.queries.confirm("token FIXME", guuid.New()) + session, err := auth.queries.confirm("token FIXME", uuid.New()) if err != nil { return Session{}, err } @@ -1502,7 +1502,7 @@ func (auth authT) LoginEmail( return Session{}, ErrUnconfirmed } - session, err := auth.queries.login(user.uuid, guuid.New()) + session, err := auth.queries.login(user.uuid, uuid.New()) if err != nil { return Session{}, err } @@ -1512,7 +1512,7 @@ func (auth authT) LoginEmail( func forgotPasswordMessage( email string, - flowID guuid.UUID, + flowID uuid.UUID, ) (fiinha.UnsentMessage, error) { data := make(map[string]interface{}) data["email"] = email @@ -1535,7 +1535,7 @@ func (auth authT) ForgotPassword(email string) error { return err } - unsent, err := forgotPasswordMessage(user.email, guuid.New()) + unsent, err := forgotPasswordMessage(user.email, uuid.New()) if err != nil { return err } @@ -1558,7 +1558,7 @@ func checkSession(session sessionT, now time.Time) error { } func validateSession( - lookupFn func(guuid.UUID) (sessionT, error), + lookupFn func(uuid.UUID) (sessionT, error), session sessionT, ) error { dbSession, err := lookupFn(session.uuid) @@ -1578,8 +1578,8 @@ func (auth authT) Refresh(session Session) (Session, error) { } */ - // return auth.queries.refresh(session.uuid, guuid.New()) - newSession, err := auth.queries.refresh(session.UUID, guuid.New()) + // return auth.queries.refresh(session.uuid, uuid.New()) + newSession, err := auth.queries.refresh(session.UUID, uuid.New()) if err != nil { return Session{}, err } @@ -1588,7 +1588,7 @@ func (auth authT) Refresh(session Session) (Session, error) { } func (auth authT) ResetPassword( - token guuid.UUID, + token uuid.UUID, password string, confirmPassword string, ) (Session, error) { @@ -1619,7 +1619,7 @@ func (auth authT) ResetPassword( } else { nextFn = func() (sessionT, error) { // return auth.queries.confirm(user.id, pwhash, token) - return auth.queries.confirm("token FIXME", guuid.New()) + return auth.queries.confirm("token FIXME", uuid.New()) } } @@ -1632,7 +1632,7 @@ func (auth authT) ResetPassword( } func (auth authT) ChangePassword( - userID guuid.UUID, + userID uuid.UUID, currentPassword string, newPassword string, confirmNewPassword string, @@ -1672,9 +1672,9 @@ func (auth authT) ChangePassword( } func runLogout( - lookupFn func(guuid.UUID) (sessionT, error), - sessionID guuid.UUID, - queryFn func(guuid.UUID) error, + lookupFn func(uuid.UUID) (sessionT, error), + sessionID uuid.UUID, + queryFn func(uuid.UUID) error, ) error { /* err := validateSession(lookupFn, session) |