func (s *SignupEngine) join(a libkb.LoginContext, username, email, inviteCode string, skipMail bool) error { joinEngine := NewSignupJoinEngine(s.G()) arg := SignupJoinEngineRunArg{ Username: username, Email: email, InviteCode: inviteCode, PWHash: s.ppStream.PWHash(), PWSalt: s.pwsalt, SkipMail: skipMail, } res := joinEngine.Run(a, arg) if res.Err != nil { return res } s.ppStream.SetGeneration(res.PpGen) a.CreateStreamCache(s.tsec, s.ppStream) s.uid = res.UID s.G().Log.Debug("contextified: %v\n", s.G()) user, err := libkb.LoadUser(libkb.LoadUserArg{Self: true, UID: res.UID, PublicKeyOptional: true, Contextified: libkb.NewContextified(s.G())}) if err != nil { return err } s.me = user return nil }