engine

package
v0.0.0-...-34cb6d9 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 18, 2024 License: BSD-3-Clause Imports: 49 Imported by: 168

Documentation

Overview

This engine enters a user into the reset pipeline.

PaperKeyPrimary creates the initial paper backup key for a user. It differs from the PaperKey engine in that it already knows the signing key and it doesn't offer to revoke any devices, plus it uses a different UI call to display the phrase.

PerUserKeyRoll creates a new per-user-key for the active user. This can be the first per-user-key for the user.

PerUserKeyUpgrade creates a per-user-key for the active user if they do not already have one. It adds a per-user-key link to the sigchain and adds the key to the local keyring.

PerUserKeyUpkeep rolls the user's per-user-key if the last PUK was added by a now-revoked device. Does not add a first per-user-key. Use PerUserKeyUpgrade for that. This engine makes up for the fact that after a self-deprovision the latest PUK for a user was generated on the very machine they wanted to deprovision. This will not notice if a device revoked another device but neglected to roll the PUK. No clients should do that.

Index

Constants

This section is empty.

Variables

View Source
var BoxAuditRetryBackgroundSettings = BackgroundTaskSettings{
	Start:        2 * time.Minute,
	StartStagger: 1 * time.Minute,
	WakeUp:       1 * time.Minute,
	Interval:     7 * time.Hour,
	Limit:        15 * time.Minute,
}
View Source
var BoxAuditSchedulerBackgroundSettings = BackgroundTaskSettings{
	Start:        2 * time.Minute,
	StartStagger: 2 * time.Minute,
	WakeUp:       1 * time.Minute,
	Interval:     27 * time.Hour,
	Limit:        15 * time.Minute,
}
View Source
var ContactSyncBackgroundSettings = BackgroundTaskSettings{
	Start: 5 * time.Second,

	MobileForegroundStartAddition: 1 * time.Minute,
	StartStagger:                  5 * time.Second,
	WakeUp:                        15 * time.Second,
	Interval:                      1 * time.Hour,
	Limit:                         5 * time.Minute,
}
View Source
var ErrKeyGenArgNoDefNoCustom = errors.New("invalid args:  NoDefPGPUid set, but no custom PGPUids")
View Source
var InviteFriendsPollBackgroundSettings = BackgroundTaskSettings{
	Start:                         5 * time.Second,
	MobileForegroundStartAddition: 30 * time.Second,
	StartStagger:                  5 * time.Second,
	WakeUp:                        15 * time.Second,
	Interval:                      1 * time.Hour,
	Limit:                         5 * time.Minute,
}
View Source
var MerkleAuditSettings = BackgroundTaskSettings{
	Start:        5 * time.Minute,
	StartStagger: 1 * time.Hour,
	Interval:     24 * time.Hour,
	Limit:        1 * time.Minute,
}
View Source
var PerUserKeyUpgradeBackgroundSettings = BackgroundTaskSettings{
	Start:        30 * time.Second,
	StartStagger: 10 * time.Second,
	WakeUp:       10 * time.Second,
	Interval:     1 * time.Hour,
	Limit:        5 * time.Minute,
}
View Source
var PerUserKeyUpkeepBackgroundSettings = BackgroundTaskSettings{
	Start:        20 * time.Second,
	StartStagger: 20 * time.Second,
	WakeUp:       15 * time.Second,
	Interval:     6 * time.Hour,
	Limit:        5 * time.Minute,
}
View Source
var WalletUpkeepBackgroundSettings = BackgroundTaskSettings{
	Start:        40 * time.Second,
	StartStagger: 20 * time.Second,
	WakeUp:       20 * time.Second,
	Interval:     24 * time.Hour,
	Limit:        10 * time.Minute,
}

Functions

func BoxAuditRetryBackgroundRound

func BoxAuditRetryBackgroundRound(mctx libkb.MetaContext) error

func BoxAuditSchedulerBackgroundRound

func BoxAuditSchedulerBackgroundRound(mctx libkb.MetaContext) error

func ContactSyncBackgroundRound

func ContactSyncBackgroundRound(mctx libkb.MetaContext) error

func GetMySecretKey

func GetMySecretKey(ctx context.Context, g *libkb.GlobalContext, secretKeyType libkb.SecretKeyType, reason string) (libkb.GenericKey, error)

GetMySecretKey uses ActiveDevice to get a secret key for the current user.

It used to have functionality to load the user and prompt for a passphrase to unlock the keys, but that is outdated now. Either you are logged in and have your device keys cached, or you aren't.

If the key isn't found in the ActiveDevice cache, this will return LoginRequiredError.

func GetMySecretKeyWithUID

func GetMySecretKeyWithUID(ctx context.Context, g *libkb.GlobalContext, uid keybase1.UID, secretKeyType libkb.SecretKeyType, reason string) (libkb.GenericKey, error)

GetMySecretKeyWithUID is like GetMySecretKey but returns an error if uid is not active.

func GetPGPExportPassphrase

func GetPGPExportPassphrase(m libkb.MetaContext, ui libkb.SecretUI, desc string) (keybase1.GetPassphraseRes, error)

func InviteFriendsPollBackgroundRound

func InviteFriendsPollBackgroundRound(mctx libkb.MetaContext) error

func LoadScanProofsIgnore

func LoadScanProofsIgnore(filepath string) ([]string, error)

LoadScanProofsIgnore loads an ignore file and returns the list of proofids to ignore.

func MerkleAuditRound

func MerkleAuditRound(m libkb.MetaContext) (err error)

func NewSaltpackUserKeyfinderAsInterface

NewSaltpackUserKeyfinderAsInterface creates a SaltpackUserKeyfinder engine.

func OutputSignatureNonKeybase

func OutputSignatureNonKeybase(m libkb.MetaContext, keyID uint64, signatureTime time.Time, warnings libkb.HashSecurityWarnings) error

OutputSignatureNonKeybase prints the details of signature verification when signing key is not known to keybase.

func OutputSignatureSuccess

func OutputSignatureSuccess(m libkb.MetaContext, fingerprint libkb.PGPFingerprint, owner *libkb.User, signatureTime time.Time, warnings libkb.HashSecurityWarnings) error

OutputSignatureSuccess prints the details of a successful verification.

func PGPCheckMulti

func PGPCheckMulti(me *libkb.User, allowMulti bool) (err error)

func PerUserKeyUpgradeBackgroundRound

func PerUserKeyUpgradeBackgroundRound(m libkb.MetaContext) error

func PerUserKeyUpkeepBackgroundRound

func PerUserKeyUpkeepBackgroundRound(m libkb.MetaContext) error

func ResolveAndCheck

func ResolveAndCheck(m libkb.MetaContext, s string, useTracking bool) (ret keybase1.UserPlusKeysV2, err error)

ResolveAndCheck takes as input a name (joe), social assertion (joe@twitter) or compound assertion (joe+joe@twitter+3883883773222@pgp) and resolves it to a user, verifying the result. Pass into it a MetaContext without any UIs set, since it is meant to run without any UI interaction. Tracking statements are optionally taken into account (see flag). No ID2-specific caching will be used, but the UPAK cache will be used, and busted with ForceRepoll semantics. The output, on success, is a populated UserPlusKeysV2.

func RunEngine2

func RunEngine2(m libkb.MetaContext, e Engine2) (err error)

func SignED25519

SignED25519 signs the given message with the current user's private signing key.

func SignED25519ForKBFS

SignED25519ForKBFS signs the given message with the current user's private signing key on behalf of KBFS.

func SignToString

func SignToString(ctx context.Context, g *libkb.GlobalContext, arg keybase1.SignToStringArg) (sig string, err error)

SignToString signs the given message with the current user's private signing key and outputs the serialized NaclSigInfo string.

func UnboxBytes32

func UnboxBytes32(ctx context.Context, g *libkb.GlobalContext, arg keybase1.UnboxBytes32Arg) (bytes32 keybase1.Bytes32, err error)

UnboxBytes32 decrypts the given message with the current user's private encryption key and the given nonce and peer public key.

func UnboxBytes32Any

func UnboxBytes32Any(m libkb.MetaContext, getSecretUI func() libkb.SecretUI, arg keybase1.UnboxBytes32AnyArg) (res keybase1.UnboxAnyRes, err error)

UnboxBytes32Any will decrypt any of the KID, ciphertext, nonce bundles in arg.Bundles. Key preference order: cached device keys, cached paper keys, local device key, user-entered paper key. It returns the KID and bundle index along with the plaintext.

func WalletUpkeepBackgroundRound

func WalletUpkeepBackgroundRound(m libkb.MetaContext) error

Types

type AccountDelete

type AccountDelete struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

AccountDelete is an engine.

func NewAccountDelete

func NewAccountDelete(g *libkb.GlobalContext, passphrase *string) *AccountDelete

NewAccountDelete creates a AccountDelete engine.

func (*AccountDelete) Name

func (e *AccountDelete) Name() string

Name is the unique engine name.

func (*AccountDelete) Prereqs

func (e *AccountDelete) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*AccountDelete) RequiredUIs

func (e *AccountDelete) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*AccountDelete) Run

Run starts the engine.

func (*AccountDelete) SubConsumers

func (e *AccountDelete) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type AccountReset

type AccountReset struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

AccountReset is an engine.

func NewAccountReset

func NewAccountReset(g *libkb.GlobalContext, username string) *AccountReset

NewAccountReset creates a AccountReset engine.

func (*AccountReset) Name

func (e *AccountReset) Name() string

Name is the unique engine name.

func (*AccountReset) Prereqs

func (e *AccountReset) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*AccountReset) RequiredUIs

func (e *AccountReset) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*AccountReset) ResetComplete

func (e *AccountReset) ResetComplete() bool

func (*AccountReset) ResetPending

func (e *AccountReset) ResetPending() bool

func (*AccountReset) Run

func (e *AccountReset) Run(mctx libkb.MetaContext) (err error)

Run starts the engine.

func (*AccountReset) SetPassphrase

func (e *AccountReset) SetPassphrase(passphrase string)

SetPassphrase lets a caller add a passphrase

func (*AccountReset) SubConsumers

func (e *AccountReset) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type BackgroundTask

type BackgroundTask struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

BackgroundTask is an engine.

func NewBackgroundTask

func NewBackgroundTask(g *libkb.GlobalContext, args *BackgroundTaskArgs) *BackgroundTask

NewBackgroundTask creates a BackgroundTask engine.

func (*BackgroundTask) Name

func (e *BackgroundTask) Name() string

Name is the unique engine name.

func (*BackgroundTask) Prereqs

func (e *BackgroundTask) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*BackgroundTask) RequiredUIs

func (e *BackgroundTask) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*BackgroundTask) Run

func (e *BackgroundTask) Run(m libkb.MetaContext) (err error)

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*BackgroundTask) Shutdown

func (e *BackgroundTask) Shutdown()

func (*BackgroundTask) SubConsumers

func (e *BackgroundTask) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type BackgroundTaskArgs

type BackgroundTaskArgs struct {
	Name     string
	F        TaskFunc
	Settings BackgroundTaskSettings
	// contains filtered or unexported fields
}

type BackgroundTaskSettings

type BackgroundTaskSettings struct {
	Start time.Duration // Wait after starting the app
	// Additional wait after starting the mobile app, but only on foreground
	// (i.e., does not get triggered when service starts during background fetch/BACKGROUND_ACTIVE mode)
	MobileForegroundStartAddition time.Duration
	StartStagger                  time.Duration // Wait an additional random amount.
	// When waking up on mobile lots of timers will go off at once. We wait an additional
	// delay so as not to add to that herd and slow down the mobile experience when opening the app.
	WakeUp   time.Duration
	Interval time.Duration // Wait between runs
	Limit    time.Duration // Time limit on each round
}

type Bootstrap

type Bootstrap struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

Bootstrap is an engine.

func NewBootstrap

func NewBootstrap(g *libkb.GlobalContext) *Bootstrap

NewBootstrap creates a Bootstrap engine.

func (*Bootstrap) Name

func (e *Bootstrap) Name() string

Name is the unique engine name.

func (*Bootstrap) Prereqs

func (e *Bootstrap) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Bootstrap) RequiredUIs

func (e *Bootstrap) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Bootstrap) Run

func (e *Bootstrap) Run(m libkb.MetaContext) error

Run starts the engine.

func (*Bootstrap) Status

func (e *Bootstrap) Status() keybase1.BootstrapStatus

func (*Bootstrap) SubConsumers

func (e *Bootstrap) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type BoxAuditRetryBackground

type BoxAuditRetryBackground struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

func NewBoxAuditRetryBackground

func NewBoxAuditRetryBackground(g *libkb.GlobalContext) *BoxAuditRetryBackground

func (*BoxAuditRetryBackground) Name

func (e *BoxAuditRetryBackground) Name() string

func (*BoxAuditRetryBackground) Prereqs

func (e *BoxAuditRetryBackground) Prereqs() Prereqs

func (*BoxAuditRetryBackground) RequiredUIs

func (e *BoxAuditRetryBackground) RequiredUIs() []libkb.UIKind

func (*BoxAuditRetryBackground) Run

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*BoxAuditRetryBackground) Shutdown

func (e *BoxAuditRetryBackground) Shutdown()

func (*BoxAuditRetryBackground) SubConsumers

func (e *BoxAuditRetryBackground) SubConsumers() []libkb.UIConsumer

type BoxAuditSchedulerBackground

type BoxAuditSchedulerBackground struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

func NewBoxAuditSchedulerBackground

func NewBoxAuditSchedulerBackground(g *libkb.GlobalContext) *BoxAuditSchedulerBackground

func (*BoxAuditSchedulerBackground) Name

func (*BoxAuditSchedulerBackground) Prereqs

func (e *BoxAuditSchedulerBackground) Prereqs() Prereqs

func (*BoxAuditSchedulerBackground) RequiredUIs

func (e *BoxAuditSchedulerBackground) RequiredUIs() []libkb.UIKind

func (*BoxAuditSchedulerBackground) Run

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*BoxAuditSchedulerBackground) Shutdown

func (e *BoxAuditSchedulerBackground) Shutdown()

func (*BoxAuditSchedulerBackground) SubConsumers

func (e *BoxAuditSchedulerBackground) SubConsumers() []libkb.UIConsumer

type CheckError

type CheckError struct {
	// contains filtered or unexported fields
}

func (CheckError) Error

func (e CheckError) Error() string

type ContactSyncBackground

type ContactSyncBackground struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

func NewContactSyncBackground

func NewContactSyncBackground(g *libkb.GlobalContext) *ContactSyncBackground

func (*ContactSyncBackground) Name

func (e *ContactSyncBackground) Name() string

func (*ContactSyncBackground) Prereqs

func (e *ContactSyncBackground) Prereqs() Prereqs

func (*ContactSyncBackground) RequiredUIs

func (e *ContactSyncBackground) RequiredUIs() []libkb.UIKind

func (*ContactSyncBackground) Run

func (e *ContactSyncBackground) Run(m libkb.MetaContext) (err error)

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*ContactSyncBackground) Shutdown

func (e *ContactSyncBackground) Shutdown()

func (*ContactSyncBackground) SubConsumers

func (e *ContactSyncBackground) SubConsumers() []libkb.UIConsumer

type CryptocurrencyEngine

type CryptocurrencyEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func (*CryptocurrencyEngine) Name

func (e *CryptocurrencyEngine) Name() string

func (*CryptocurrencyEngine) Prereqs

func (e *CryptocurrencyEngine) Prereqs() Prereqs

func (*CryptocurrencyEngine) RequiredUIs

func (e *CryptocurrencyEngine) RequiredUIs() []libkb.UIKind

func (*CryptocurrencyEngine) Result

func (*CryptocurrencyEngine) Run

func (e *CryptocurrencyEngine) Run(m libkb.MetaContext) (err error)

func (*CryptocurrencyEngine) SubConsumers

func (e *CryptocurrencyEngine) SubConsumers() []libkb.UIConsumer

type DeprovisionEngine

type DeprovisionEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

XXX: THIS ENGINE DELETES SECRET KEYS. Deleting the wrong secret keys can make you lose all your data forever. Apart from `keybase deprovision`, which shows a ton of SCARY ALL CAPS prompts to the user, we probably never want to use this engine.

func NewDeprovisionEngine

func NewDeprovisionEngine(g *libkb.GlobalContext, username string, doRevoke bool, logoutOptions libkb.LogoutOptions) *DeprovisionEngine

func (*DeprovisionEngine) Name

func (e *DeprovisionEngine) Name() string

func (*DeprovisionEngine) Prereqs

func (e *DeprovisionEngine) Prereqs() Prereqs

func (*DeprovisionEngine) RequiredUIs

func (e *DeprovisionEngine) RequiredUIs() []libkb.UIKind

func (*DeprovisionEngine) Run

func (e *DeprovisionEngine) Run(m libkb.MetaContext) (err error)

func (*DeprovisionEngine) SubConsumers

func (e *DeprovisionEngine) SubConsumers() []libkb.UIConsumer

type DevList

type DevList struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

DevList is an engine that gets a list of all the user's devices.

func NewDevList

func NewDevList(g *libkb.GlobalContext) *DevList

NewDevList creates a DevList engine.

func (*DevList) List

func (d *DevList) List() []keybase1.Device

List returns the devices for a user.

func (*DevList) Name

func (d *DevList) Name() string

func (*DevList) Prereqs

func (d *DevList) Prereqs() Prereqs

func (*DevList) RequiredUIs

func (d *DevList) RequiredUIs() []libkb.UIKind

func (*DevList) Run

func (d *DevList) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*DevList) SubConsumers

func (d *DevList) SubConsumers() []libkb.UIConsumer

type DeviceAdd

type DeviceAdd struct {
	libkb.Contextified
}

DeviceAdd is an engine.

func NewDeviceAdd

func NewDeviceAdd(g *libkb.GlobalContext) *DeviceAdd

NewDeviceAdd creates a DeviceAdd engine.

func (*DeviceAdd) Name

func (e *DeviceAdd) Name() string

Name is the unique engine name.

func (*DeviceAdd) Prereqs

func (e *DeviceAdd) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*DeviceAdd) RequiredUIs

func (e *DeviceAdd) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*DeviceAdd) Run

func (e *DeviceAdd) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*DeviceAdd) SubConsumers

func (e *DeviceAdd) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type DeviceHistory

type DeviceHistory struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

DeviceHistory is an engine.

func NewDeviceHistory

func NewDeviceHistory(g *libkb.GlobalContext, username string) *DeviceHistory

NewDeviceHistory creates a DeviceHistory engine to lookup the device history for username.

func NewDeviceHistorySelf

func NewDeviceHistorySelf(g *libkb.GlobalContext) *DeviceHistory

NewDeviceHistorySelf creates a DeviceHistory engine to lookup the device history of the current user.

func (*DeviceHistory) Devices

func (e *DeviceHistory) Devices() []keybase1.DeviceDetail

func (*DeviceHistory) Name

func (e *DeviceHistory) Name() string

Name is the unique engine name.

func (*DeviceHistory) Prereqs

func (e *DeviceHistory) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*DeviceHistory) RequiredUIs

func (e *DeviceHistory) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*DeviceHistory) Run

Run starts the engine.

func (*DeviceHistory) SubConsumers

func (e *DeviceHistory) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type DeviceKeygen

type DeviceKeygen struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewDeviceKeygen

func NewDeviceKeygen(g *libkb.GlobalContext, args *DeviceKeygenArgs) *DeviceKeygen

NewDeviceKeygen creates a DeviceKeygen engine.

func (*DeviceKeygen) EncryptionKey

func (e *DeviceKeygen) EncryptionKey() libkb.NaclDHKeyPair

func (*DeviceKeygen) Name

func (e *DeviceKeygen) Name() string

Name is the unique engine name.

func (*DeviceKeygen) Prereqs

func (e *DeviceKeygen) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*DeviceKeygen) Push

func (e *DeviceKeygen) Push(m libkb.MetaContext, pargs *DeviceKeygenPushArgs) (err error)

Push pushes the generated keys to the api server and stores the local key security server half on the api server as well.

func (*DeviceKeygen) RequiredUIs

func (e *DeviceKeygen) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*DeviceKeygen) Run

func (e *DeviceKeygen) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*DeviceKeygen) SigningKey

func (e *DeviceKeygen) SigningKey() libkb.NaclKeyPair

func (*DeviceKeygen) SigningKeyPublic

func (e *DeviceKeygen) SigningKeyPublic() (kbcrypto.NaclSigningKeyPublic, error)

func (*DeviceKeygen) SubConsumers

func (e *DeviceKeygen) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type DeviceKeygenArgs

type DeviceKeygenArgs struct {
	Me              *libkb.User
	DeviceID        keybase1.DeviceID
	DeviceName      string
	DeviceType      keybase1.DeviceTypeV2
	Lks             *libkb.LKSec
	IsEldest        bool
	IsSelfProvision bool
	PerUserKeyring  *libkb.PerUserKeyring
	EkReboxer       *ephemeralKeyReboxer
	// contains filtered or unexported fields
}

type DeviceKeygenPushArgs

type DeviceKeygenPushArgs struct {
	SkipSignerPush bool
	Signer         libkb.GenericKey
	EldestKID      keybase1.KID
	User           *libkb.User // optional
}

DeviceKeygenPushArgs determines how the push will run. There are currently three different paths it can take:

1. this device is the eldest device: pushes eldest signing key, encryption subkey. (IsEldest => true)

2. this device is a sibling (but we're not in a key exchange scenario): pushes sibkey signing key, encryption subkey. (IsEldest => False, SkipSignerPush => false, Signer != nil, EldestKID != nil)

3. this device is a sibling, but another device pushed the signing key, so skip that part. (IsEldest => False, SkipSignerPush => true, Signer != nil, EldestKID != nil)

The User argument is optional, but it is necessary if the user's sigchain changes between key generation and key push.

type DeviceWrap

type DeviceWrap struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

DeviceWrap is an engine that wraps DeviceRegister and DeviceKeygen.

func NewDeviceWrap

func NewDeviceWrap(g *libkb.GlobalContext, args *DeviceWrapArgs) *DeviceWrap

NewDeviceWrap creates a DeviceWrap engine.

func (*DeviceWrap) DeviceID

func (e *DeviceWrap) DeviceID() keybase1.DeviceID

func (*DeviceWrap) EncryptionKey

func (e *DeviceWrap) EncryptionKey() libkb.NaclDHKeyPair

func (*DeviceWrap) Name

func (e *DeviceWrap) Name() string

Name is the unique engine name.

func (*DeviceWrap) Prereqs

func (e *DeviceWrap) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*DeviceWrap) RequiredUIs

func (e *DeviceWrap) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*DeviceWrap) Run

func (e *DeviceWrap) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*DeviceWrap) SigningKey

func (e *DeviceWrap) SigningKey() libkb.GenericKey

func (*DeviceWrap) SubConsumers

func (e *DeviceWrap) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*DeviceWrap) SwitchConfigAndActiveDevice

func (e *DeviceWrap) SwitchConfigAndActiveDevice(m libkb.MetaContext) (err error)

SwitchConfigAndActiveDevice changes active device to the one generated by DeviceWrap. It switches UserConfig and sets global ActiveDevice.

type DeviceWrapArgs

type DeviceWrapArgs struct {
	Me              *libkb.User
	DeviceName      string
	DeviceType      keybase1.DeviceTypeV2
	Lks             *libkb.LKSec
	IsEldest        bool
	IsSelfProvision bool
	Signer          libkb.GenericKey
	EldestKID       keybase1.KID
	PerUserKeyring  *libkb.PerUserKeyring
	EkReboxer       *ephemeralKeyReboxer
	DeviceID        keybase1.DeviceID
	// contains filtered or unexported fields
}

type EmailChange

type EmailChange struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

EmailChange is an engine that changes a user's email via signed statement.

func NewEmailChange

func NewEmailChange(g *libkb.GlobalContext, a *keybase1.EmailChangeArg) *EmailChange

NewEmailChange creates a new engine for changing a user's email address via signature (and therefore without passphrase required)

func (*EmailChange) Name

func (c *EmailChange) Name() string

Name provides the name of the engine for the engine interface

func (*EmailChange) Prereqs

func (c *EmailChange) Prereqs() Prereqs

Prereqs returns engine prereqs

func (*EmailChange) RequiredUIs

func (c *EmailChange) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*EmailChange) Run

func (c *EmailChange) Run(m libkb.MetaContext) (err error)

Run the engine

func (*EmailChange) SubConsumers

func (c *EmailChange) SubConsumers() []libkb.UIConsumer

SubConsumers requires the other UI consumers of this engine

type Engine2

type Engine2 = libkb.Engine2

type FavoriteAdd

type FavoriteAdd struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

FavoriteAdd is an engine.

func NewFavoriteAdd

func NewFavoriteAdd(g *libkb.GlobalContext, arg *keybase1.FavoriteAddArg) *FavoriteAdd

NewFavoriteAdd creates a FavoriteAdd engine.

func (*FavoriteAdd) Name

func (e *FavoriteAdd) Name() string

Name is the unique engine name.

func (*FavoriteAdd) Prereqs

func (e *FavoriteAdd) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*FavoriteAdd) RequiredUIs

func (e *FavoriteAdd) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*FavoriteAdd) Run

func (e *FavoriteAdd) Run(m libkb.MetaContext) error

Run starts the engine.

func (*FavoriteAdd) SubConsumers

func (e *FavoriteAdd) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*FavoriteAdd) Wait

func (e *FavoriteAdd) Wait()

Wait until the checkInviteNeeded goroutine is done.

func (*FavoriteAdd) WantDelegate

func (e *FavoriteAdd) WantDelegate(kind libkb.UIKind) bool

type FavoriteIgnore

type FavoriteIgnore struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

FavoriteIgnore is an engine.

func NewFavoriteIgnore

func NewFavoriteIgnore(g *libkb.GlobalContext, arg *keybase1.FavoriteIgnoreArg) *FavoriteIgnore

NewFavoriteIgnore creates a FavoriteIgnore engine.

func (*FavoriteIgnore) Name

func (e *FavoriteIgnore) Name() string

Name is the unique engine name.

func (*FavoriteIgnore) Prereqs

func (e *FavoriteIgnore) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*FavoriteIgnore) RequiredUIs

func (e *FavoriteIgnore) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*FavoriteIgnore) Run

Run starts the engine.

func (*FavoriteIgnore) SubConsumers

func (e *FavoriteIgnore) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type FavoriteList

type FavoriteList struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

FavoriteList is an engine.

func NewFavoriteList

func NewFavoriteList(g *libkb.GlobalContext) *FavoriteList

NewFavoriteList creates a FavoriteList engine.

func (*FavoriteList) Name

func (e *FavoriteList) Name() string

Name is the unique engine name.

func (*FavoriteList) Prereqs

func (e *FavoriteList) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*FavoriteList) RequiredUIs

func (e *FavoriteList) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*FavoriteList) Result

Favorites returns the list of favorites that Run generated.

func (*FavoriteList) Run

func (e *FavoriteList) Run(m libkb.MetaContext) error

Run starts the engine.

func (*FavoriteList) SubConsumers

func (e *FavoriteList) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type FavoritesAPIResult

type FavoritesAPIResult struct {
	Status    libkb.AppStatus   `json:"status"`
	Favorites []keybase1.Folder `json:"favorites"`
	Ignored   []keybase1.Folder `json:"ignored"`
	New       []keybase1.Folder `json:"new"`
}

func (*FavoritesAPIResult) GetAppStatus

func (f *FavoritesAPIResult) GetAppStatus() *libkb.AppStatus

type GPGExportingError

type GPGExportingError struct {
	// contains filtered or unexported fields
}

func (GPGExportingError) Error

func (e GPGExportingError) Error() string

type GPGImportKeyArg

type GPGImportKeyArg struct {
	Query                string
	Signer               libkb.GenericKey
	AllowMulti           bool
	SkipImport           bool
	OnlyImport           bool
	HasProvisionedDevice bool
	Me                   *libkb.User
	Lks                  *libkb.LKSec
}

type GPGImportKeyEngine

type GPGImportKeyEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewGPGImportKeyEngine

func NewGPGImportKeyEngine(g *libkb.GlobalContext, arg *GPGImportKeyArg) *GPGImportKeyEngine

func (*GPGImportKeyEngine) LastKey

func (e *GPGImportKeyEngine) LastKey() *libkb.PGPKeyBundle

func (*GPGImportKeyEngine) Name

func (e *GPGImportKeyEngine) Name() string

func (*GPGImportKeyEngine) Prereqs

func (e *GPGImportKeyEngine) Prereqs() Prereqs

func (*GPGImportKeyEngine) RequiredUIs

func (e *GPGImportKeyEngine) RequiredUIs() []libkb.UIKind

func (*GPGImportKeyEngine) Run

func (e *GPGImportKeyEngine) Run(mctx libkb.MetaContext) (err error)

func (*GPGImportKeyEngine) SubConsumers

func (e *GPGImportKeyEngine) SubConsumers() []libkb.UIConsumer

func (*GPGImportKeyEngine) WantsGPG

func (e *GPGImportKeyEngine) WantsGPG(mctx libkb.MetaContext) (bool, error)

type HasServerKeys

type HasServerKeys struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

HasServerKeys is an engine.

func NewHasServerKeys

func NewHasServerKeys(g *libkb.GlobalContext) *HasServerKeys

NewHasServerKeys creates a HasServerKeys engine.

func (*HasServerKeys) GetResult

func (e *HasServerKeys) GetResult() keybase1.HasServerKeysRes

func (*HasServerKeys) Name

func (e *HasServerKeys) Name() string

Name is the unique engine name.

func (*HasServerKeys) Prereqs

func (e *HasServerKeys) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*HasServerKeys) RequiredUIs

func (e *HasServerKeys) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*HasServerKeys) Run

Run starts the engine.

func (*HasServerKeys) SubConsumers

func (e *HasServerKeys) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type Identify2TestStats

type Identify2TestStats struct {
	// contains filtered or unexported fields
}

type Identify2WithUID

type Identify2WithUID struct {
	libkb.Contextified

	// If we just resolved a user, then we can plumb this through to loadUser()
	ResolveBody *jsonw.Wrapper
	// contains filtered or unexported fields
}

Identify2WithUID is the Identify engine used in KBFS, chat, and as a subroutine of command-line crypto.

func (*Identify2WithUID) CCLCheckCompleted

func (e *Identify2WithUID) CCLCheckCompleted(lcr *libkb.LinkCheckResult)

CCLCheckCompleted is triggered whenever a remote proof check completes. We get these calls as a result of being a "CheckCompletedListener". When each result comes in, we check against our pool of needed remote assertions. If the set is complete, or if one that we need errors, we can unblock the caller.

func (*Identify2WithUID) ConfirmResult

func (e *Identify2WithUID) ConfirmResult() keybase1.ConfirmResult

func (*Identify2WithUID) FullMeUser

func (e *Identify2WithUID) FullMeUser() *libkb.User

func (*Identify2WithUID) FullThemUser

func (e *Identify2WithUID) FullThemUser() *libkb.User

func (*Identify2WithUID) GetIdentifyOutcome

func (e *Identify2WithUID) GetIdentifyOutcome() *libkb.IdentifyOutcome

func (*Identify2WithUID) GetProofSet

func (e *Identify2WithUID) GetProofSet() *libkb.ProofSet

func (*Identify2WithUID) Name

func (e *Identify2WithUID) Name() string

Name is the unique engine name.

func (*Identify2WithUID) Prereqs

func (e *Identify2WithUID) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Identify2WithUID) RequiredUIs

func (e *Identify2WithUID) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Identify2WithUID) Result

Result will return (non-nil,nil) on success, and (nil,non-nil) on failure.

func (*Identify2WithUID) Run

func (e *Identify2WithUID) Run(m libkb.MetaContext) (err error)

Run then engine

func (*Identify2WithUID) SetResponsibleGregorItem

func (e *Identify2WithUID) SetResponsibleGregorItem(item gregor.Item)

func (*Identify2WithUID) SubConsumers

func (e *Identify2WithUID) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*Identify2WithUID) TrackToken

func (e *Identify2WithUID) TrackToken() keybase1.TrackToken

func (*Identify2WithUID) WantDelegate

func (e *Identify2WithUID) WantDelegate(k libkb.UIKind) bool

type Identify2WithUIDTestArgs

type Identify2WithUIDTestArgs struct {
	// contains filtered or unexported fields
}

type InviteFriendsPollBackground

type InviteFriendsPollBackground struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

func NewInviteFriendsPollBackground

func NewInviteFriendsPollBackground(g *libkb.GlobalContext) *InviteFriendsPollBackground

func (*InviteFriendsPollBackground) Name

func (*InviteFriendsPollBackground) Prereqs

func (e *InviteFriendsPollBackground) Prereqs() Prereqs

func (*InviteFriendsPollBackground) RequiredUIs

func (e *InviteFriendsPollBackground) RequiredUIs() []libkb.UIKind

func (*InviteFriendsPollBackground) Run

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*InviteFriendsPollBackground) Shutdown

func (e *InviteFriendsPollBackground) Shutdown()

func (*InviteFriendsPollBackground) SubConsumers

func (e *InviteFriendsPollBackground) SubConsumers() []libkb.UIConsumer

type Kex2Provisionee

type Kex2Provisionee struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

Kex2Provisionee is an engine.

func NewKex2Provisionee

func NewKex2Provisionee(g *libkb.GlobalContext, device *libkb.Device, secret kex2.Secret,
	expectedUID keybase1.UID, salt []byte) *Kex2Provisionee

NewKex2Provisionee creates a Kex2Provisionee engine.

func (*Kex2Provisionee) AddSecret

func (e *Kex2Provisionee) AddSecret(s kex2.Secret)

AddSecret inserts a received secret into the provisionee's secret channel.

func (*Kex2Provisionee) Cancel

func (e *Kex2Provisionee) Cancel()

Cancel cancels the kex2 run if it is running.

func (*Kex2Provisionee) Device

func (e *Kex2Provisionee) Device() *libkb.Device

Device returns the new device struct.

func (*Kex2Provisionee) EncryptionKey

func (e *Kex2Provisionee) EncryptionKey() (libkb.NaclDHKeyPair, error)

func (*Kex2Provisionee) GetLKSec

func (e *Kex2Provisionee) GetLKSec() *libkb.LKSec

func (*Kex2Provisionee) GetLogFactory

func (e *Kex2Provisionee) GetLogFactory() rpc.LogFactory

GetLogFactory implements GetLogFactory in kex2.Provisionee.

func (*Kex2Provisionee) GetName

func (e *Kex2Provisionee) GetName() string

GetName implements libkb.UserBasic interface.

func (*Kex2Provisionee) GetNetworkInstrumenter

func (e *Kex2Provisionee) GetNetworkInstrumenter() rpc.NetworkInstrumenterStorage

GetNetworkInstrumenter implements GetNetworkInstrumenter in kex2.Provisionee.

func (*Kex2Provisionee) GetUID

func (e *Kex2Provisionee) GetUID() keybase1.UID

GetUID implements libkb.UserBasic interface.

func (*Kex2Provisionee) HandleDidCounterSign

func (e *Kex2Provisionee) HandleDidCounterSign(_ context.Context, sig []byte) (err error)

HandleDidCounterSign implements HandleDidCounterSign in kex2.Provisionee interface.

func (*Kex2Provisionee) HandleDidCounterSign2

func (e *Kex2Provisionee) HandleDidCounterSign2(_ context.Context, arg keybase1.DidCounterSign2Arg) (err error)

func (*Kex2Provisionee) HandleHello

func (e *Kex2Provisionee) HandleHello(_ context.Context, harg keybase1.HelloArg) (res keybase1.HelloRes, err error)

HandleHello implements HandleHello in kex2.Provisionee.

func (*Kex2Provisionee) HandleHello2

func (e *Kex2Provisionee) HandleHello2(_ context.Context, harg keybase1.Hello2Arg) (res keybase1.Hello2Res, err error)

HandleHello2 implements HandleHello2 in kex2.Provisionee.

func (*Kex2Provisionee) Name

func (e *Kex2Provisionee) Name() string

Name is the unique engine name.

func (*Kex2Provisionee) Prereqs

func (e *Kex2Provisionee) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Kex2Provisionee) RequiredUIs

func (e *Kex2Provisionee) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Kex2Provisionee) Run

Run starts the engine.

func (*Kex2Provisionee) SigningKey

func (e *Kex2Provisionee) SigningKey() (libkb.GenericKey, error)

func (*Kex2Provisionee) SubConsumers

func (e *Kex2Provisionee) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*Kex2Provisionee) Tokens

func (e *Kex2Provisionee) Tokens() (token, csrf string)

Tokens implements the APITokener interface. This is the only implementer, but it's a pretty unusual case --- the provisioned device is giving us, the provisionee, a session and CSRF token to use for the server.

type Kex2Provisioner

type Kex2Provisioner struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

Kex2Provisioner is an engine.

func NewKex2Provisioner

func NewKex2Provisioner(g *libkb.GlobalContext, secret kex2.Secret, pps *libkb.PassphraseStream) *Kex2Provisioner

NewKex2Provisioner creates a Kex2Provisioner engine.

func (*Kex2Provisioner) AddSecret

func (e *Kex2Provisioner) AddSecret(s kex2.Secret)

AddSecret inserts a received secret into the provisioner's secret channel.

func (*Kex2Provisioner) CounterSign

func (e *Kex2Provisioner) CounterSign(input keybase1.HelloRes) (sig []byte, err error)

CounterSign implements CounterSign in kex2.Provisioner.

func (*Kex2Provisioner) CounterSign2

func (e *Kex2Provisioner) CounterSign2(input keybase1.Hello2Res) (output keybase1.DidCounterSign2Arg, err error)

CounterSign2 implements CounterSign in kex2.Provisioner.

func (*Kex2Provisioner) GetHello2Arg

func (e *Kex2Provisioner) GetHello2Arg() (arg2 keybase1.Hello2Arg, err error)

GetHello2Arg implements GetHello2Arg in kex2.Provisioner.

func (*Kex2Provisioner) GetHelloArg

func (e *Kex2Provisioner) GetHelloArg() (arg keybase1.HelloArg, err error)

GetHelloArg implements GetHelloArg in kex2.Provisioner.

func (*Kex2Provisioner) GetLogFactory

func (e *Kex2Provisioner) GetLogFactory() rpc.LogFactory

GetLogFactory implements GetLogFactory in kex2.Provisioner.

func (*Kex2Provisioner) GetNetworkInstrumenter

func (e *Kex2Provisioner) GetNetworkInstrumenter() rpc.NetworkInstrumenterStorage

GetNetworkInstrumenter implements GetNetworkInstrumenter in kex2.Provisioner.

func (*Kex2Provisioner) Name

func (e *Kex2Provisioner) Name() string

Name is the unique engine name.

func (*Kex2Provisioner) Prereqs

func (e *Kex2Provisioner) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Kex2Provisioner) RequiredUIs

func (e *Kex2Provisioner) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Kex2Provisioner) Run

Run starts the provisioner engine.

func (*Kex2Provisioner) SubConsumers

func (e *Kex2Provisioner) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type ListTrackersUnverifiedEngine

type ListTrackersUnverifiedEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func (*ListTrackersUnverifiedEngine) GetResults

func (*ListTrackersUnverifiedEngine) Name

Name is the unique engine name.

func (*ListTrackersUnverifiedEngine) Prereqs

func (*ListTrackersUnverifiedEngine) RequiredUIs

func (e *ListTrackersUnverifiedEngine) RequiredUIs() []libkb.UIKind

func (*ListTrackersUnverifiedEngine) Run

func (*ListTrackersUnverifiedEngine) SubConsumers

func (e *ListTrackersUnverifiedEngine) SubConsumers() []libkb.UIConsumer

type ListTrackersUnverifiedEngineArg

type ListTrackersUnverifiedEngineArg struct {
	UID        keybase1.UID
	Assertion  string
	CachedOnly bool
}

If a UID is given, the engine will list its trackers If an Assertion is given, the engine will try to resolve it to a UID via remote unless CachedOnly is true. Otherwise, the logged-in uid is used. If no user is logged in, NoUIDError is returned.

type ListTrackingEngine

type ListTrackingEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

ListTrackingEngine loads the follows of the given user using their sigchain, but relies on the server to filter out users who have reset after the follow statement.

func (*ListTrackingEngine) JSONResult

func (e *ListTrackingEngine) JSONResult() string

func (*ListTrackingEngine) Name

func (e *ListTrackingEngine) Name() string

func (*ListTrackingEngine) Prereqs

func (e *ListTrackingEngine) Prereqs() Prereqs

func (*ListTrackingEngine) RequiredUIs

func (e *ListTrackingEngine) RequiredUIs() []libkb.UIKind

func (*ListTrackingEngine) Run

func (e *ListTrackingEngine) Run(m libkb.MetaContext) (err error)

func (*ListTrackingEngine) SubConsumers

func (e *ListTrackingEngine) SubConsumers() []libkb.UIConsumer

func (*ListTrackingEngine) TableResult

func (e *ListTrackingEngine) TableResult() keybase1.UserSummarySet

type ListTrackingEngineArg

type ListTrackingEngineArg struct {
	Assertion  string
	UID        keybase1.UID
	CachedOnly bool

	// If CachedOnly is set and StalenessWindow is non-nil, will load with
	// StaleOK and use the relaxed CachedOnlyStalenessWindow instead.
	CachedOnlyStalenessWindow *time.Duration

	JSON    bool
	Verbose bool
	Filter  string
}

type Login

type Login struct {
	libkb.Contextified

	// Used for non-interactive provisioning
	PaperKey   string
	DeviceName string
	// contains filtered or unexported fields
}

Login is an engine.

func NewLogin

func NewLogin(g *libkb.GlobalContext, deviceType keybase1.DeviceTypeV2, username string, ct keybase1.ClientType) *Login

NewLogin creates a Login engine. username is optional. deviceType should be keybase1.DeviceTypeV2_DESKTOP or keybase1.DeviceTypeV2_MOBILE.

func NewLoginWithUserSwitch

func NewLoginWithUserSwitch(g *libkb.GlobalContext, deviceType keybase1.DeviceTypeV2, username string, ct keybase1.ClientType, doUserSwitch bool) *Login

NewLoginWithUserSwitch creates a Login engine. username is optional. deviceType should be keybase1.DeviceTypeV2_DESKTOP or keybase1.DeviceTypeV2_MOBILE. You can also specify a bool to say whether you'd like to doUserSwitch or not. By default, this flag is off (see above), but as we roll out user switching, we can start to turn this on in more places.

func (*Login) Name

func (e *Login) Name() string

Name is the unique engine name.

func (*Login) Prereqs

func (e *Login) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Login) RequiredUIs

func (e *Login) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Login) Run

func (e *Login) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*Login) SubConsumers

func (e *Login) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type LoginOffline

type LoginOffline struct {
	libkb.Contextified
}

func NewLoginOffline

func NewLoginOffline(g *libkb.GlobalContext) *LoginOffline

func (*LoginOffline) Name

func (e *LoginOffline) Name() string

Name is the unique engine name.

func (*LoginOffline) Prereqs

func (e *LoginOffline) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*LoginOffline) RequiredUIs

func (e *LoginOffline) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*LoginOffline) Run

func (e *LoginOffline) Run(m libkb.MetaContext) error

func (*LoginOffline) SubConsumers

func (e *LoginOffline) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type LoginOneshot

type LoginOneshot struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

"Oneshot login" is a login that works only once, say in an ephemeral context like a docker image. Bootstrap such a session with a paperkey, but the existence of the login won't hit the user's sigchain.

func (*LoginOneshot) Name

func (e *LoginOneshot) Name() string

func (*LoginOneshot) Prereqs

func (e *LoginOneshot) Prereqs() Prereqs

func (*LoginOneshot) RequiredUIs

func (e *LoginOneshot) RequiredUIs() []libkb.UIKind

func (*LoginOneshot) Run

func (e *LoginOneshot) Run(m libkb.MetaContext) (err error)

func (*LoginOneshot) SubConsumers

func (e *LoginOneshot) SubConsumers() []libkb.UIConsumer

type LoginProvisionedDevice

type LoginProvisionedDevice struct {
	libkb.Contextified

	SecretStoreOnly bool // this should only be set by the service on its startup login attempt
	// contains filtered or unexported fields
}

LoginProvisionedDevice is an engine that tries to login using the current device, if there is an existing provisioned device.

func NewLoginProvisionedDevice

func NewLoginProvisionedDevice(g *libkb.GlobalContext, username string) *LoginProvisionedDevice

newLoginCurrentDevice creates a loginProvisionedDevice engine.

func (*LoginProvisionedDevice) GetUsername

Returns the username that the user typed during the engine's execution

func (*LoginProvisionedDevice) Name

func (e *LoginProvisionedDevice) Name() string

Name is the unique engine name.

func (*LoginProvisionedDevice) Prereqs

func (e *LoginProvisionedDevice) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*LoginProvisionedDevice) RequiredUIs

func (e *LoginProvisionedDevice) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*LoginProvisionedDevice) Run

func (*LoginProvisionedDevice) SubConsumers

func (e *LoginProvisionedDevice) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type LoginWithPaperKey

type LoginWithPaperKey struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

LoginWithPaperKey is an engine.

func NewLoginWithPaperKey

func NewLoginWithPaperKey(g *libkb.GlobalContext, username string) *LoginWithPaperKey

NewLoginWithPaperKey creates a LoginWithPaperKey engine. Uses the paperkey to log in and unlock LKS.

func (*LoginWithPaperKey) Name

func (e *LoginWithPaperKey) Name() string

Name is the unique engine name.

func (*LoginWithPaperKey) Prereqs

func (e *LoginWithPaperKey) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*LoginWithPaperKey) RequiredUIs

func (e *LoginWithPaperKey) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*LoginWithPaperKey) Run

func (e *LoginWithPaperKey) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*LoginWithPaperKey) SubConsumers

func (e *LoginWithPaperKey) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type LogoutEngine

type LogoutEngine struct {
	// contains filtered or unexported fields
}

func NewLogout

func NewLogout(options libkb.LogoutOptions) *LogoutEngine

func (*LogoutEngine) Name

func (e *LogoutEngine) Name() string

func (*LogoutEngine) Prereqs

func (e *LogoutEngine) Prereqs() Prereqs

func (*LogoutEngine) RequiredUIs

func (e *LogoutEngine) RequiredUIs() []libkb.UIKind

func (*LogoutEngine) Run

func (e *LogoutEngine) Run(mctx libkb.MetaContext) (err error)

func (*LogoutEngine) SubConsumers

func (e *LogoutEngine) SubConsumers() []libkb.UIConsumer

type LoopbackIdentifyUI

type LoopbackIdentifyUI struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

func (*LoopbackIdentifyUI) Cancel

func (*LoopbackIdentifyUI) Confirm

func (*LoopbackIdentifyUI) Dismiss

func (*LoopbackIdentifyUI) DisplayCryptocurrency

func (b *LoopbackIdentifyUI) DisplayCryptocurrency(m libkb.MetaContext, c keybase1.Cryptocurrency) error

func (*LoopbackIdentifyUI) DisplayKey

func (*LoopbackIdentifyUI) DisplayStellarAccount

func (b *LoopbackIdentifyUI) DisplayStellarAccount(libkb.MetaContext, keybase1.StellarAccount) error

func (*LoopbackIdentifyUI) DisplayTLFCreateWithInvite

func (*LoopbackIdentifyUI) DisplayTrackStatement

func (b *LoopbackIdentifyUI) DisplayTrackStatement(m libkb.MetaContext, s string) error

func (*LoopbackIdentifyUI) DisplayUserCard

func (b *LoopbackIdentifyUI) DisplayUserCard(m libkb.MetaContext, c keybase1.UserCard) error

func (*LoopbackIdentifyUI) Finish

func (*LoopbackIdentifyUI) FinishSocialProofCheck

func (*LoopbackIdentifyUI) FinishWebProofCheck

func (*LoopbackIdentifyUI) LaunchNetworkChecks

func (b *LoopbackIdentifyUI) LaunchNetworkChecks(m libkb.MetaContext, i *keybase1.Identity, u *keybase1.User) error

func (*LoopbackIdentifyUI) ReportLastTrack

func (b *LoopbackIdentifyUI) ReportLastTrack(m libkb.MetaContext, s *keybase1.TrackSummary) error

func (*LoopbackIdentifyUI) ReportTrackToken

func (b *LoopbackIdentifyUI) ReportTrackToken(m libkb.MetaContext, t keybase1.TrackToken) error

func (*LoopbackIdentifyUI) Start

type MerkleAudit

type MerkleAudit struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

MerkleAudit is an engine.

func NewMerkleAudit

func NewMerkleAudit(g *libkb.GlobalContext, args *MerkleAuditArgs) *MerkleAudit

NewMerkleAudit creates a new MerkleAudit engine.

func (*MerkleAudit) Name

func (e *MerkleAudit) Name() string

Name is the unique engine name.

func (*MerkleAudit) Prereqs

func (e *MerkleAudit) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*MerkleAudit) RequiredUIs

func (e *MerkleAudit) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*MerkleAudit) Run

func (e *MerkleAudit) Run(mctx libkb.MetaContext) (err error)

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*MerkleAudit) Shutdown

func (e *MerkleAudit) Shutdown(mctx libkb.MetaContext) error

func (*MerkleAudit) SubConsumers

func (e *MerkleAudit) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type MerkleAuditArgs

type MerkleAuditArgs struct {
	// contains filtered or unexported fields
}

type PGPDecrypt

type PGPDecrypt struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PGPDecrypt decrypts data read from source into sink for the logged in user.

func NewPGPDecrypt

func NewPGPDecrypt(g *libkb.GlobalContext, arg *PGPDecryptArg) *PGPDecrypt

NewPGPDecrypt creates a PGPDecrypt engine.

func (*PGPDecrypt) Name

func (e *PGPDecrypt) Name() string

Name is the unique engine name.

func (*PGPDecrypt) Prereqs

func (e *PGPDecrypt) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PGPDecrypt) RequiredUIs

func (e *PGPDecrypt) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PGPDecrypt) Run

func (e *PGPDecrypt) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*PGPDecrypt) SignatureStatus

func (e *PGPDecrypt) SignatureStatus() *libkb.SignatureStatus

func (*PGPDecrypt) Signer

func (e *PGPDecrypt) Signer() *libkb.User

func (*PGPDecrypt) SubConsumers

func (e *PGPDecrypt) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PGPDecryptArg

type PGPDecryptArg struct {
	Source       io.Reader
	Sink         io.WriteCloser
	AssertSigned bool
	SignedBy     string
}

type PGPEncrypt

type PGPEncrypt struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PGPEncrypt encrypts data read from a source into a sink for a set of users. It will track them if necessary.

func NewPGPEncrypt

func NewPGPEncrypt(g *libkb.GlobalContext, arg *PGPEncryptArg) *PGPEncrypt

NewPGPEncrypt creates a PGPEncrypt engine.

func (*PGPEncrypt) Name

func (e *PGPEncrypt) Name() string

Name is the unique engine name.

func (*PGPEncrypt) Prereqs

func (e *PGPEncrypt) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PGPEncrypt) RequiredUIs

func (e *PGPEncrypt) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PGPEncrypt) Run

func (e *PGPEncrypt) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PGPEncrypt) SubConsumers

func (e *PGPEncrypt) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PGPEncryptArg

type PGPEncryptArg struct {
	Recips       []string // user assertions
	Source       io.Reader
	Sink         io.WriteCloser
	NoSign       bool
	NoSelf       bool
	BinaryOutput bool
	KeyQuery     string
}

type PGPImportStubbedError

type PGPImportStubbedError struct {
	KeyIDString string
}

func (PGPImportStubbedError) Error

func (e PGPImportStubbedError) Error() string

type PGPKeyExportEngine

type PGPKeyExportEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func (*PGPKeyExportEngine) Name

func (e *PGPKeyExportEngine) Name() string

func (*PGPKeyExportEngine) Prereqs

func (e *PGPKeyExportEngine) Prereqs() Prereqs

func (*PGPKeyExportEngine) RequiredUIs

func (e *PGPKeyExportEngine) RequiredUIs() []libkb.UIKind

func (*PGPKeyExportEngine) Results

func (e *PGPKeyExportEngine) Results() []keybase1.KeyInfo

func (*PGPKeyExportEngine) Run

func (e *PGPKeyExportEngine) Run(m libkb.MetaContext) (err error)

func (*PGPKeyExportEngine) SubConsumers

func (e *PGPKeyExportEngine) SubConsumers() []libkb.UIConsumer

type PGPKeyGen

type PGPKeyGen struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PGPKeyGen is an engine.

func NewPGPKeyGen

NewPGPKeyGen creates a PGPKeyGen engine.

func (*PGPKeyGen) Name

func (e *PGPKeyGen) Name() string

Name is the unique engine name.

func (*PGPKeyGen) Prereqs

func (e *PGPKeyGen) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PGPKeyGen) RequiredUIs

func (e *PGPKeyGen) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PGPKeyGen) Run

func (e *PGPKeyGen) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PGPKeyGen) SubConsumers

func (e *PGPKeyGen) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PGPKeyImportEngine

type PGPKeyImportEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewPGPKeyImportEngineFromBytes

func NewPGPKeyImportEngineFromBytes(g *libkb.GlobalContext, key []byte, pushPrivate bool) (eng *PGPKeyImportEngine, err error)

func (*PGPKeyImportEngine) GetKID

func (e *PGPKeyImportEngine) GetKID() (kid keybase1.KID)

func (*PGPKeyImportEngine) Name

func (e *PGPKeyImportEngine) Name() string

func (*PGPKeyImportEngine) Prereqs

func (e *PGPKeyImportEngine) Prereqs() Prereqs

func (*PGPKeyImportEngine) RequiredUIs

func (e *PGPKeyImportEngine) RequiredUIs() []libkb.UIKind

func (*PGPKeyImportEngine) Run

func (e *PGPKeyImportEngine) Run(m libkb.MetaContext) (err error)

func (*PGPKeyImportEngine) SubConsumers

func (e *PGPKeyImportEngine) SubConsumers() []libkb.UIConsumer

type PGPKeyImportEngineArg

type PGPKeyImportEngineArg struct {
	Gen              *libkb.PGPGenArg
	Pregen           *libkb.PGPKeyBundle
	SigningKey       libkb.GenericKey
	Me               *libkb.User
	Lks              *libkb.LKSec
	NoSave           bool
	PushSecret       bool
	OnlySave         bool
	AllowMulti       bool
	DoExport         bool // export to GPG keychain?
	ExportEncrypted  bool // encrypt secret key before exporting to GPG?
	DoUnlock         bool
	GPGFallback      bool
	PreloadTsec      libkb.Triplesec
	PreloadStreamGen libkb.PassphraseGeneration
}

func ImportPGPKeyImportEngineArg

func ImportPGPKeyImportEngineArg(a keybase1.PGPKeyGenArg) (ret PGPKeyImportEngineArg)

func (*PGPKeyImportEngineArg) Export

func (a *PGPKeyImportEngineArg) Export() (ret keybase1.PGPKeyGenArg)

type PGPKeyfinder

type PGPKeyfinder struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PGPKeyfinder is an engine to find PGP Keys for users (loaded by assertions), possibly tracking them if necessary.

func NewPGPKeyfinder

func NewPGPKeyfinder(g *libkb.GlobalContext, arg *PGPKeyfinderArg) *PGPKeyfinder

NewPGPKeyfinder creates a PGPKeyfinder engine.

func (*PGPKeyfinder) Name

func (e *PGPKeyfinder) Name() string

Name is the unique engine name.

func (*PGPKeyfinder) Prereqs

func (e *PGPKeyfinder) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PGPKeyfinder) RequiredUIs

func (e *PGPKeyfinder) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PGPKeyfinder) Run

func (e *PGPKeyfinder) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PGPKeyfinder) SubConsumers

func (e *PGPKeyfinder) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*PGPKeyfinder) UsersPlusKeys

func (e *PGPKeyfinder) UsersPlusKeys() []*UserPlusKeys

UsersPlusKeys returns the users found while running the engine, plus their pgp keys.

type PGPKeyfinderArg

type PGPKeyfinderArg struct {
	Usernames []string // must be keybase usernames
}

type PGPNotActiveForLocalImport

type PGPNotActiveForLocalImport struct {
	// contains filtered or unexported fields
}

func (PGPNotActiveForLocalImport) Error

type PGPPullEngine

type PGPPullEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewPGPPullEngine

func NewPGPPullEngine(g *libkb.GlobalContext, arg *PGPPullEngineArg) *PGPPullEngine

func (*PGPPullEngine) Name

func (e *PGPPullEngine) Name() string

func (*PGPPullEngine) Prereqs

func (e *PGPPullEngine) Prereqs() Prereqs

func (*PGPPullEngine) RequiredUIs

func (e *PGPPullEngine) RequiredUIs() []libkb.UIKind

func (*PGPPullEngine) Run

func (*PGPPullEngine) SubConsumers

func (e *PGPPullEngine) SubConsumers() []libkb.UIConsumer

type PGPPullEngineArg

type PGPPullEngineArg struct {
	UserAsserts []string
}

type PGPPullPrivate

type PGPPullPrivate struct {
	// contains filtered or unexported fields
}

func NewPGPPullPrivate

func NewPGPPullPrivate(arg keybase1.PGPPullPrivateArg) *PGPPullPrivate

func (*PGPPullPrivate) Name

func (e *PGPPullPrivate) Name() string

func (*PGPPullPrivate) Prereqs

func (e *PGPPullPrivate) Prereqs() Prereqs

func (*PGPPullPrivate) RequiredUIs

func (e *PGPPullPrivate) RequiredUIs() []libkb.UIKind

func (*PGPPullPrivate) Run

func (e *PGPPullPrivate) Run(m libkb.MetaContext) (err error)

func (*PGPPullPrivate) SubConsumers

func (e *PGPPullPrivate) SubConsumers() []libkb.UIConsumer

type PGPPurge

type PGPPurge struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PGPPurge is an engine.

func NewPGPPurge

func NewPGPPurge(g *libkb.GlobalContext, arg keybase1.PGPPurgeArg) *PGPPurge

NewPGPPurge creates a PGPPurge engine.

func (*PGPPurge) KeyFiles

func (e *PGPPurge) KeyFiles() []string

KeyFiles returns the filenames of the exported keys.

func (*PGPPurge) Name

func (e *PGPPurge) Name() string

Name is the unique engine name.

func (*PGPPurge) Prereqs

func (e *PGPPurge) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PGPPurge) RequiredUIs

func (e *PGPPurge) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PGPPurge) Run

func (e *PGPPurge) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PGPPurge) SubConsumers

func (e *PGPPurge) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PGPPushPrivate

type PGPPushPrivate struct {
	// contains filtered or unexported fields
}

func NewPGPPushPrivate

func NewPGPPushPrivate(arg keybase1.PGPPushPrivateArg) *PGPPushPrivate

func (*PGPPushPrivate) Name

func (e *PGPPushPrivate) Name() string

func (*PGPPushPrivate) Prereqs

func (e *PGPPushPrivate) Prereqs() Prereqs

func (*PGPPushPrivate) RequiredUIs

func (e *PGPPushPrivate) RequiredUIs() []libkb.UIKind

func (*PGPPushPrivate) Run

func (e *PGPPushPrivate) Run(m libkb.MetaContext) (err error)

func (*PGPPushPrivate) SubConsumers

func (e *PGPPushPrivate) SubConsumers() []libkb.UIConsumer

type PGPSignArg

type PGPSignArg struct {
	Sink   io.WriteCloser
	Source io.ReadCloser
	Opts   keybase1.PGPSignOptions
}

type PGPSignEngine

type PGPSignEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewPGPSignEngine

func NewPGPSignEngine(g *libkb.GlobalContext, arg *PGPSignArg) *PGPSignEngine

func (*PGPSignEngine) Name

func (p *PGPSignEngine) Name() string

func (*PGPSignEngine) Prereqs

func (p *PGPSignEngine) Prereqs() Prereqs

func (*PGPSignEngine) RequiredUIs

func (p *PGPSignEngine) RequiredUIs() []libkb.UIKind

func (*PGPSignEngine) Run

func (p *PGPSignEngine) Run(m libkb.MetaContext) (err error)

func (*PGPSignEngine) SubConsumers

func (p *PGPSignEngine) SubConsumers() []libkb.UIConsumer

type PGPUpdateEngine

type PGPUpdateEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewPGPUpdateEngine

func NewPGPUpdateEngine(g *libkb.GlobalContext, fingerprints []string, all bool) *PGPUpdateEngine

func (*PGPUpdateEngine) Name

func (e *PGPUpdateEngine) Name() string

func (*PGPUpdateEngine) Prereqs

func (e *PGPUpdateEngine) Prereqs() Prereqs

func (*PGPUpdateEngine) RequiredUIs

func (e *PGPUpdateEngine) RequiredUIs() []libkb.UIKind

func (*PGPUpdateEngine) Run

func (*PGPUpdateEngine) SubConsumers

func (e *PGPUpdateEngine) SubConsumers() []libkb.UIConsumer

type PGPVerify

type PGPVerify struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PGPVerify is an engine.

func NewPGPVerify

func NewPGPVerify(g *libkb.GlobalContext, arg *PGPVerifyArg) *PGPVerify

NewPGPVerify creates a PGPVerify engine.

func (*PGPVerify) Name

func (e *PGPVerify) Name() string

Name is the unique engine name.

func (*PGPVerify) Prereqs

func (e *PGPVerify) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PGPVerify) RequiredUIs

func (e *PGPVerify) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PGPVerify) Run

func (e *PGPVerify) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PGPVerify) SignatureStatus

func (e *PGPVerify) SignatureStatus() *libkb.SignatureStatus

func (*PGPVerify) Signer

func (e *PGPVerify) Signer() *libkb.User

func (*PGPVerify) SubConsumers

func (e *PGPVerify) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PGPVerifyArg

type PGPVerifyArg struct {
	Source    io.Reader
	Signature []byte
	SignedBy  string
}

type PaperKey

type PaperKey struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PaperKey is an engine.

func NewPaperKey

func NewPaperKey(g *libkb.GlobalContext) *PaperKey

NewPaperKey creates a PaperKey engine.

func (*PaperKey) DeviceID

func (e *PaperKey) DeviceID() keybase1.DeviceID

func (*PaperKey) EncKey

func (e *PaperKey) EncKey() libkb.GenericKey

func (*PaperKey) Name

func (e *PaperKey) Name() string

Name is the unique engine name.

func (*PaperKey) Passphrase

func (e *PaperKey) Passphrase() string

func (*PaperKey) Prereqs

func (e *PaperKey) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PaperKey) RequiredUIs

func (e *PaperKey) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PaperKey) Run

func (e *PaperKey) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PaperKey) SigKey

func (e *PaperKey) SigKey() libkb.GenericKey

func (*PaperKey) SubConsumers

func (e *PaperKey) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PaperKeyGen

type PaperKeyGen struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PaperKeyGen is an engine.

func NewPaperKeyGen

func NewPaperKeyGen(g *libkb.GlobalContext, arg *PaperKeyGenArg) *PaperKeyGen

NewPaperKeyGen creates a PaperKeyGen engine.

func (*PaperKeyGen) DeviceID

func (e *PaperKeyGen) DeviceID() keybase1.DeviceID

func (*PaperKeyGen) DeviceWithKeys

func (e *PaperKeyGen) DeviceWithKeys() *libkb.DeviceWithKeys

func (*PaperKeyGen) EncKey

func (e *PaperKeyGen) EncKey() libkb.NaclDHKeyPair

func (*PaperKeyGen) Name

func (e *PaperKeyGen) Name() string

Name is the unique engine name.

func (*PaperKeyGen) Prereqs

func (e *PaperKeyGen) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PaperKeyGen) RequiredUIs

func (e *PaperKeyGen) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PaperKeyGen) Run

func (e *PaperKeyGen) Run(m libkb.MetaContext) error

Run starts the engine.

func (*PaperKeyGen) SigKey

func (e *PaperKeyGen) SigKey() libkb.GenericKey

func (*PaperKeyGen) SubConsumers

func (e *PaperKeyGen) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PaperKeyGenArg

type PaperKeyGenArg struct {
	Passphrase libkb.PaperKeyPhrase
	SkipPush   bool

	// One of Me or UID is required
	// Me is required if not SkipPush
	Me  *libkb.User
	UID keybase1.UID

	SigningKey     libkb.GenericKey      // optional
	EncryptionKey  libkb.NaclDHKeyPair   // optional
	PerUserKeyring *libkb.PerUserKeyring // optional
	IsEldest       bool
}

type PaperKeyPrimary

type PaperKeyPrimary struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PaperKeyPrimary is an engine.

func NewPaperKeyPrimary

func NewPaperKeyPrimary(g *libkb.GlobalContext, args *PaperKeyPrimaryArgs) *PaperKeyPrimary

NewPaperKeyPrimary creates a PaperKeyPrimary engine.

func (*PaperKeyPrimary) Name

func (e *PaperKeyPrimary) Name() string

Name is the unique engine name.

func (*PaperKeyPrimary) Prereqs

func (e *PaperKeyPrimary) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PaperKeyPrimary) RequiredUIs

func (e *PaperKeyPrimary) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PaperKeyPrimary) Run

Run starts the engine.

func (*PaperKeyPrimary) SubConsumers

func (e *PaperKeyPrimary) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PaperKeyPrimaryArgs

type PaperKeyPrimaryArgs struct {
	SigningKey     libkb.GenericKey
	EncryptionKey  libkb.NaclDHKeyPair
	Me             *libkb.User
	PerUserKeyring *libkb.PerUserKeyring // optional
}

type PaperKeySubmit

type PaperKeySubmit struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PaperKeySubmit is an engine.

func NewPaperKeySubmit

func NewPaperKeySubmit(g *libkb.GlobalContext, paperPhrase string) *PaperKeySubmit

NewPaperKeySubmit creates a PaperKeySubmit engine.

func (*PaperKeySubmit) Name

func (e *PaperKeySubmit) Name() string

Name is the unique engine name.

func (*PaperKeySubmit) Prereqs

func (e *PaperKeySubmit) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*PaperKeySubmit) RequiredUIs

func (e *PaperKeySubmit) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PaperKeySubmit) Run

Run starts the engine.

func (*PaperKeySubmit) SubConsumers

func (e *PaperKeySubmit) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PaperProvisionEngine

type PaperProvisionEngine struct {
	libkb.Contextified
	Username   string
	DeviceName string
	PaperKey   string

	User *libkb.User
	// contains filtered or unexported fields
}

func NewPaperProvisionEngine

func NewPaperProvisionEngine(g *libkb.GlobalContext, username, deviceName,
	paperKey string) *PaperProvisionEngine

func (*PaperProvisionEngine) Name

func (e *PaperProvisionEngine) Name() string

func (*PaperProvisionEngine) Prereqs

func (e *PaperProvisionEngine) Prereqs() Prereqs

func (*PaperProvisionEngine) RequiredUIs

func (e *PaperProvisionEngine) RequiredUIs() []libkb.UIKind

func (*PaperProvisionEngine) Result

func (e *PaperProvisionEngine) Result() error

func (*PaperProvisionEngine) Run

func (e *PaperProvisionEngine) Run(m libkb.MetaContext) (err error)

func (*PaperProvisionEngine) SubConsumers

func (e *PaperProvisionEngine) SubConsumers() []libkb.UIConsumer

type PassphraseChange

type PassphraseChange struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PassphraseChange engine is used for changing the user's passphrase, either by replacement or by force.

func NewPassphraseChange

NewPassphraseChange creates a new engine for changing user passphrases, either if the current passphrase is known, or in "force" mode

func (*PassphraseChange) Name

func (c *PassphraseChange) Name() string

Name provides the name of the engine for the engine interface

func (*PassphraseChange) Prereqs

func (c *PassphraseChange) Prereqs() Prereqs

Prereqs returns engine prereqs

func (*PassphraseChange) RequiredUIs

func (c *PassphraseChange) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PassphraseChange) Run

func (c *PassphraseChange) Run(m libkb.MetaContext) (err error)

Run the engine

func (*PassphraseChange) SubConsumers

func (c *PassphraseChange) SubConsumers() []libkb.UIConsumer

SubConsumers requires the other UI consumers of this engine

type PassphraseCheck

type PassphraseCheck struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PassphraseCheck is an engine that checks if given passphrase matches current user's passphrase.

func (*PassphraseCheck) GetResult

func (c *PassphraseCheck) GetResult() bool

GetResult returns result of passphrase check, if Run() ran without errors. False means passphrase was incorrect, true means it was correct.

func (*PassphraseCheck) Name

func (c *PassphraseCheck) Name() string

Name provides the name of the engine for the engine interface

func (*PassphraseCheck) Prereqs

func (c *PassphraseCheck) Prereqs() Prereqs

Prereqs returns engine prereqs

func (*PassphraseCheck) RequiredUIs

func (c *PassphraseCheck) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PassphraseCheck) Run

func (c *PassphraseCheck) Run(mctx libkb.MetaContext) (err error)

Run the engine

func (*PassphraseCheck) SubConsumers

func (c *PassphraseCheck) SubConsumers() []libkb.UIConsumer

SubConsumers requires the other UI consumers of this engine

type PassphraseRecover

type PassphraseRecover struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

PassphraseRecover is an engine that implements the "password recovery" flow, where the user is shown instructions on how to either change their password on other devices or allows them to change the password using a paper key.

func (*PassphraseRecover) Name

func (e *PassphraseRecover) Name() string

Name provides the name of the engine for the engine interface

func (*PassphraseRecover) Prereqs

func (e *PassphraseRecover) Prereqs() Prereqs

Prereqs returns engine prereqs

func (*PassphraseRecover) RequiredUIs

func (e *PassphraseRecover) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PassphraseRecover) Run

func (e *PassphraseRecover) Run(mctx libkb.MetaContext) (err error)

Run the engine

func (*PassphraseRecover) SubConsumers

func (e *PassphraseRecover) SubConsumers() []libkb.UIConsumer

SubConsumers requires the other UI consumers of this engine

type PerUserKeyRoll

type PerUserKeyRoll struct {
	libkb.Contextified

	DidNewKey bool
	// contains filtered or unexported fields
}

PerUserKeyRoll is an engine.

func NewPerUserKeyRoll

func NewPerUserKeyRoll(g *libkb.GlobalContext, args *PerUserKeyRollArgs) *PerUserKeyRoll

NewPerUserKeyRoll creates a PerUserKeyRoll engine.

func (*PerUserKeyRoll) Name

func (e *PerUserKeyRoll) Name() string

Name is the unique engine name.

func (*PerUserKeyRoll) Prereqs

func (e *PerUserKeyRoll) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PerUserKeyRoll) RequiredUIs

func (e *PerUserKeyRoll) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PerUserKeyRoll) Run

func (e *PerUserKeyRoll) Run(mctx libkb.MetaContext) (err error)

Run starts the engine.

func (*PerUserKeyRoll) SubConsumers

func (e *PerUserKeyRoll) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PerUserKeyRollArgs

type PerUserKeyRollArgs struct {
	Me *libkb.User // optional
}

type PerUserKeyUpgrade

type PerUserKeyUpgrade struct {
	libkb.Contextified

	DidNewKey bool
	// contains filtered or unexported fields
}

PerUserKeyUpgrade is an engine.

func NewPerUserKeyUpgrade

func NewPerUserKeyUpgrade(g *libkb.GlobalContext, args *PerUserKeyUpgradeArgs) *PerUserKeyUpgrade

NewPerUserKeyUpgrade creates a PerUserKeyUpgrade engine.

func (*PerUserKeyUpgrade) Name

func (e *PerUserKeyUpgrade) Name() string

Name is the unique engine name.

func (*PerUserKeyUpgrade) Prereqs

func (e *PerUserKeyUpgrade) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PerUserKeyUpgrade) RequiredUIs

func (e *PerUserKeyUpgrade) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PerUserKeyUpgrade) Run

func (e *PerUserKeyUpgrade) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*PerUserKeyUpgrade) SubConsumers

func (e *PerUserKeyUpgrade) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PerUserKeyUpgradeArgs

type PerUserKeyUpgradeArgs struct{}

type PerUserKeyUpgradeBackground

type PerUserKeyUpgradeBackground struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

PerUserKeyUpgradeBackground is an engine.

func NewPerUserKeyUpgradeBackground

func NewPerUserKeyUpgradeBackground(g *libkb.GlobalContext, args *PerUserKeyUpgradeBackgroundArgs) *PerUserKeyUpgradeBackground

NewPerUserKeyUpgradeBackground creates a PerUserKeyUpgradeBackground engine.

func (*PerUserKeyUpgradeBackground) Name

Name is the unique engine name.

func (*PerUserKeyUpgradeBackground) Prereqs

func (e *PerUserKeyUpgradeBackground) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PerUserKeyUpgradeBackground) RequiredUIs

func (e *PerUserKeyUpgradeBackground) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PerUserKeyUpgradeBackground) Run

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*PerUserKeyUpgradeBackground) Shutdown

func (e *PerUserKeyUpgradeBackground) Shutdown()

func (*PerUserKeyUpgradeBackground) SubConsumers

func (e *PerUserKeyUpgradeBackground) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PerUserKeyUpgradeBackgroundArgs

type PerUserKeyUpgradeBackgroundArgs struct {
	// contains filtered or unexported fields
}

type PerUserKeyUpkeep

type PerUserKeyUpkeep struct {
	libkb.Contextified

	DidRollKey bool
	// contains filtered or unexported fields
}

PerUserKeyUpkeep is an engine.

func NewPerUserKeyUpkeep

func NewPerUserKeyUpkeep(g *libkb.GlobalContext, args *PerUserKeyUpkeepArgs) *PerUserKeyUpkeep

NewPerUserKeyUpkeep creates a PerUserKeyUpkeep engine.

func (*PerUserKeyUpkeep) Name

func (e *PerUserKeyUpkeep) Name() string

Name is the unique engine name.

func (*PerUserKeyUpkeep) Prereqs

func (e *PerUserKeyUpkeep) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PerUserKeyUpkeep) RequiredUIs

func (e *PerUserKeyUpkeep) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PerUserKeyUpkeep) Run

func (e *PerUserKeyUpkeep) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*PerUserKeyUpkeep) SubConsumers

func (e *PerUserKeyUpkeep) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PerUserKeyUpkeepArgs

type PerUserKeyUpkeepArgs struct{}

type PerUserKeyUpkeepBackground

type PerUserKeyUpkeepBackground struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

PerUserKeyUpkeepBackground is an engine.

func NewPerUserKeyUpkeepBackground

func NewPerUserKeyUpkeepBackground(g *libkb.GlobalContext, args *PerUserKeyUpkeepBackgroundArgs) *PerUserKeyUpkeepBackground

NewPerUserKeyUpkeepBackground creates a PerUserKeyUpkeepBackground engine.

func (*PerUserKeyUpkeepBackground) Name

Name is the unique engine name.

func (*PerUserKeyUpkeepBackground) Prereqs

func (e *PerUserKeyUpkeepBackground) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*PerUserKeyUpkeepBackground) RequiredUIs

func (e *PerUserKeyUpkeepBackground) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*PerUserKeyUpkeepBackground) Run

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*PerUserKeyUpkeepBackground) Shutdown

func (e *PerUserKeyUpkeepBackground) Shutdown()

func (*PerUserKeyUpkeepBackground) SubConsumers

func (e *PerUserKeyUpkeepBackground) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type PerUserKeyUpkeepBackgroundArgs

type PerUserKeyUpkeepBackgroundArgs struct {
	// contains filtered or unexported fields
}

type Prereqs

type Prereqs = libkb.EnginePrereqs

type ProfileEdit

type ProfileEdit struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func (*ProfileEdit) Name

func (e *ProfileEdit) Name() string

Name is the unique engine name.

func (*ProfileEdit) Prereqs

func (e *ProfileEdit) Prereqs() Prereqs

GetPrereqs returns the engine prereqs (none).

func (*ProfileEdit) RequiredUIs

func (e *ProfileEdit) RequiredUIs() []libkb.UIKind

func (*ProfileEdit) Run

func (e *ProfileEdit) Run(m libkb.MetaContext) (err error)

func (*ProfileEdit) SubConsumers

func (e *ProfileEdit) SubConsumers() []libkb.UIConsumer

type Prove

type Prove struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

Prove is an engine used for proving ownership of remote accounts, like Twitter, GitHub, etc.

func NewProve

func NewProve(g *libkb.GlobalContext, arg *keybase1.StartProofArg) *Prove

NewProve makes a new Prove Engine given an RPC-friendly ProveArg.

func (*Prove) Name

func (p *Prove) Name() string

Name provides the name of this engine for the engine interface contract

func (*Prove) Prereqs

func (p *Prove) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Prove) RequiredUIs

func (p *Prove) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Prove) Run

func (p *Prove) Run(m libkb.MetaContext) (err error)

Run runs the Prove engine, performing all steps of the proof process.

func (*Prove) SigID

func (p *Prove) SigID() keybase1.SigID

SigID returns the signature id of the proof posted to the server.

func (*Prove) SubConsumers

func (p *Prove) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type ProveCheck

type ProveCheck struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

ProveCheck is an engine.

func NewProveCheck

func NewProveCheck(g *libkb.GlobalContext, sigID keybase1.SigID) *ProveCheck

NewProveCheck creates a ProveCheck engine.

func (*ProveCheck) Name

func (e *ProveCheck) Name() string

Name is the unique engine name.

func (*ProveCheck) Prereqs

func (e *ProveCheck) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*ProveCheck) RequiredUIs

func (e *ProveCheck) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*ProveCheck) Results

func (e *ProveCheck) Results() (found bool, status keybase1.ProofStatus, state keybase1.ProofState, proofText string)

func (*ProveCheck) Run

func (e *ProveCheck) Run(m libkb.MetaContext) error

Run starts the engine.

func (*ProveCheck) SubConsumers

func (e *ProveCheck) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type ResolveThenIdentify2

type ResolveThenIdentify2 struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func (*ResolveThenIdentify2) ConfirmResult

func (e *ResolveThenIdentify2) ConfirmResult() keybase1.ConfirmResult

func (*ResolveThenIdentify2) GetIdentifyOutcome

func (e *ResolveThenIdentify2) GetIdentifyOutcome() *libkb.IdentifyOutcome

func (*ResolveThenIdentify2) GetProofSet

func (e *ResolveThenIdentify2) GetProofSet() *libkb.ProofSet

func (*ResolveThenIdentify2) Name

func (e *ResolveThenIdentify2) Name() string

Name is the unique engine name.

func (*ResolveThenIdentify2) Prereqs

func (e *ResolveThenIdentify2) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*ResolveThenIdentify2) RequiredUIs

func (e *ResolveThenIdentify2) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*ResolveThenIdentify2) Result

func (*ResolveThenIdentify2) Run

func (e *ResolveThenIdentify2) Run(m libkb.MetaContext) (err error)

func (*ResolveThenIdentify2) SetResponsibleGregorItem

func (e *ResolveThenIdentify2) SetResponsibleGregorItem(item gregor.Item)

func (*ResolveThenIdentify2) SubConsumers

func (e *ResolveThenIdentify2) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*ResolveThenIdentify2) TrackToken

func (e *ResolveThenIdentify2) TrackToken() keybase1.TrackToken

type RevokeDeviceEngineArgs

type RevokeDeviceEngineArgs struct {
	ID                   keybase1.DeviceID
	ForceSelf            bool
	ForceLast            bool
	SkipUserEKForTesting bool
}

type RevokeEngine

type RevokeEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewRevokeDeviceEngine

func NewRevokeDeviceEngine(g *libkb.GlobalContext, args RevokeDeviceEngineArgs) *RevokeEngine

func NewRevokeKeyEngine

func NewRevokeKeyEngine(g *libkb.GlobalContext, kid keybase1.KID) *RevokeEngine

func (*RevokeEngine) Name

func (e *RevokeEngine) Name() string

func (*RevokeEngine) Prereqs

func (e *RevokeEngine) Prereqs() Prereqs

func (*RevokeEngine) RequiredUIs

func (e *RevokeEngine) RequiredUIs() []libkb.UIKind

func (*RevokeEngine) Run

func (e *RevokeEngine) Run(mctx libkb.MetaContext) (err error)

func (*RevokeEngine) SubConsumers

func (e *RevokeEngine) SubConsumers() []libkb.UIConsumer

type RevokeMode

type RevokeMode int
const (
	RevokeKey RevokeMode = iota
	RevokeDevice
)

type RevokeSigsEngine

type RevokeSigsEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewRevokeSigsEngine

func NewRevokeSigsEngine(g *libkb.GlobalContext, sigIDQueries []string) *RevokeSigsEngine

func (*RevokeSigsEngine) Name

func (e *RevokeSigsEngine) Name() string

func (*RevokeSigsEngine) Prereqs

func (e *RevokeSigsEngine) Prereqs() Prereqs

func (*RevokeSigsEngine) RequiredUIs

func (e *RevokeSigsEngine) RequiredUIs() []libkb.UIKind

func (*RevokeSigsEngine) Run

func (*RevokeSigsEngine) SubConsumers

func (e *RevokeSigsEngine) SubConsumers() []libkb.UIConsumer

type SaltpackDecrypt

type SaltpackDecrypt struct {
	// contains filtered or unexported fields
}

SaltpackDecrypt decrypts data read from a source into a sink.

func NewSaltpackDecrypt

func NewSaltpackDecrypt(arg *SaltpackDecryptArg, pnymResolver saltpack.SymmetricKeyResolver) *SaltpackDecrypt

NewSaltpackDecrypt creates a SaltpackDecrypt engine.

func (*SaltpackDecrypt) MessageInfo

func (*SaltpackDecrypt) Name

func (e *SaltpackDecrypt) Name() string

Name is the unique engine name.

func (*SaltpackDecrypt) Prereqs

func (e *SaltpackDecrypt) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*SaltpackDecrypt) RequiredUIs

func (e *SaltpackDecrypt) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SaltpackDecrypt) Run

func (e *SaltpackDecrypt) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*SaltpackDecrypt) SubConsumers

func (e *SaltpackDecrypt) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SaltpackDecryptArg

type SaltpackDecryptArg struct {
	Source io.Reader
	Sink   io.WriteCloser
	Opts   keybase1.SaltpackDecryptOptions
}

type SaltpackEncrypt

type SaltpackEncrypt struct {

	// keep track if an SBS recipient was used so callers can tell the user
	UsedSBS      bool
	SBSAssertion string
	// contains filtered or unexported fields
}

SaltpackEncrypt encrypts data read from a source into a sink for a set of users. It will track them if necessary.

func NewSaltpackEncrypt

NewSaltpackEncrypt creates a SaltpackEncrypt engine.

func (*SaltpackEncrypt) Name

func (e *SaltpackEncrypt) Name() string

Name is the unique engine name.

func (*SaltpackEncrypt) Prereqs

func (e *SaltpackEncrypt) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*SaltpackEncrypt) RequiredUIs

func (e *SaltpackEncrypt) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SaltpackEncrypt) Run

func (e *SaltpackEncrypt) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*SaltpackEncrypt) SubConsumers

func (e *SaltpackEncrypt) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SaltpackEncryptArg

type SaltpackEncryptArg struct {
	Opts   keybase1.SaltpackEncryptOptions
	Source io.Reader
	Sink   io.WriteCloser
}

type SaltpackSenderIdentify

type SaltpackSenderIdentify struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func (*SaltpackSenderIdentify) Name

func (e *SaltpackSenderIdentify) Name() string

func (*SaltpackSenderIdentify) Prereqs

func (e *SaltpackSenderIdentify) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*SaltpackSenderIdentify) RequiredUIs

func (e *SaltpackSenderIdentify) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SaltpackSenderIdentify) Result

func (*SaltpackSenderIdentify) Run

func (*SaltpackSenderIdentify) SubConsumers

func (e *SaltpackSenderIdentify) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SaltpackSenderIdentifyArg

type SaltpackSenderIdentifyArg struct {
	// contains filtered or unexported fields
}

type SaltpackSign

type SaltpackSign struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

SaltpackSign is an engine.

func NewSaltpackSign

func NewSaltpackSign(g *libkb.GlobalContext, arg *SaltpackSignArg) *SaltpackSign

NewSaltpackSign creates a SaltpackSign engine.

func (*SaltpackSign) Name

func (e *SaltpackSign) Name() string

Name is the unique engine name.

func (*SaltpackSign) Prereqs

func (e *SaltpackSign) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*SaltpackSign) RequiredUIs

func (e *SaltpackSign) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SaltpackSign) Run

func (e *SaltpackSign) Run(m libkb.MetaContext) error

Run starts the engine.

func (*SaltpackSign) SubConsumers

func (e *SaltpackSign) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SaltpackSignArg

type SaltpackSignArg struct {
	Sink   io.WriteCloser
	Source io.ReadCloser
	Opts   keybase1.SaltpackSignOptions
}

type SaltpackUserKeyfinder

type SaltpackUserKeyfinder struct {
	Arg                           libkb.SaltpackRecipientKeyfinderArg
	RecipientEntityKeyMap         map[keybase1.UserOrTeamID]([]keybase1.KID)
	RecipientDeviceAndPaperKeyMap map[keybase1.UID]([]keybase1.KID)
	UsingSBS                      bool
	SBSAssertion                  string
}

SaltpackUserKeyfinder is an engine to find Per User Keys (PUK). Users can also be loaded by assertions, possibly tracking them if necessary. This engine does not find per team keys, which capability is implemented by SaltpackRecipientKeyfinder in the saltpackKeyHelpers package.

func (*SaltpackUserKeyfinder) AddDeviceAndPaperKeys

func (e *SaltpackUserKeyfinder) AddDeviceAndPaperKeys(m libkb.MetaContext, upk *keybase1.UserPlusKeysV2) error

AddPUK returns no error if it adds at least one key (or no paper keys and device keys were requested), otherwise it returns a libkb.NoNaClEncryptionKeyError

func (*SaltpackUserKeyfinder) AddOwnKeysIfNeeded

func (e *SaltpackUserKeyfinder) AddOwnKeysIfNeeded(m libkb.MetaContext) error

func (*SaltpackUserKeyfinder) AddPUK

AddPUK returns no error unless the user has no PUK, in which case it returns a libkb.NoNaClEncryptionKeyError

func (*SaltpackUserKeyfinder) AddUserRecipient

func (e *SaltpackUserKeyfinder) AddUserRecipient(m libkb.MetaContext, upk *keybase1.UserPlusKeysV2) error

func (*SaltpackUserKeyfinder) GetPublicKIDs

func (e *SaltpackUserKeyfinder) GetPublicKIDs() []keybase1.KID

func (*SaltpackUserKeyfinder) GetSymmetricKeys

func (*SaltpackUserKeyfinder) IdentifyUser

func (e *SaltpackUserKeyfinder) IdentifyUser(m libkb.MetaContext, user string) (upk *keybase1.UserPlusKeysV2, err error)

func (*SaltpackUserKeyfinder) Name

func (e *SaltpackUserKeyfinder) Name() string

Name is the unique engine name.

func (*SaltpackUserKeyfinder) Prereqs

func (e *SaltpackUserKeyfinder) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*SaltpackUserKeyfinder) RequiredUIs

func (e *SaltpackUserKeyfinder) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SaltpackUserKeyfinder) Run

func (e *SaltpackUserKeyfinder) Run(m libkb.MetaContext) (err error)

func (*SaltpackUserKeyfinder) SubConsumers

func (e *SaltpackUserKeyfinder) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*SaltpackUserKeyfinder) UsedUnresolvedSBSAssertion

func (e *SaltpackUserKeyfinder) UsedUnresolvedSBSAssertion() (bool, string)

type SaltpackVerify

type SaltpackVerify struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

SaltpackVerify is an engine.

func NewSaltpackVerify

func NewSaltpackVerify(g *libkb.GlobalContext, arg *SaltpackVerifyArg) *SaltpackVerify

NewSaltpackVerify creates a SaltpackVerify engine.

func (*SaltpackVerify) Name

func (e *SaltpackVerify) Name() string

Name is the unique engine name.

func (*SaltpackVerify) Prereqs

func (e *SaltpackVerify) Prereqs() Prereqs

Prereqs returns the engine prereqs.

func (*SaltpackVerify) RequiredUIs

func (e *SaltpackVerify) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SaltpackVerify) Run

Run starts the engine.

func (*SaltpackVerify) SubConsumers

func (e *SaltpackVerify) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SaltpackVerifyArg

type SaltpackVerifyArg struct {
	Sink   io.WriteCloser
	Source io.Reader
	Opts   keybase1.SaltpackVerifyOptions
}

SaltpackVerifyArg are engine args.

type ScanKeys

type ScanKeys struct {
	sync.Mutex // protect keyOwners map
	libkb.MetaContextified
	// contains filtered or unexported fields
}

ScanKeys finds pgp decryption keys in SKB and also if there is one stored on the server. It satisfies the openpgp.KeyRing interface.

It also will find public pgp keys for signature verification.

It is not an engine, but uses an engine and is used by engines, so has to be in the engine package. It is a UIConsumer.

func NewScanKeys

func NewScanKeys(m libkb.MetaContext) (sk *ScanKeys, err error)

NewScanKeys creates a ScanKeys type. If there is a login session, it will load the pgp keys for that user.

func (*ScanKeys) Count

func (s *ScanKeys) Count() int

Count returns the number of local keys available.

func (*ScanKeys) DecryptionKeys

func (s *ScanKeys) DecryptionKeys() []openpgp.Key

DecryptionKeys returns all private keys that are valid for decryption. It is only used if there is no key id in the message.

func (*ScanKeys) KeyOwner

func (s *ScanKeys) KeyOwner(keyID uint64) *libkb.User

KeyOwner returns the owner of the keys found by ScanKeys that were used in KeysById or KeysByIdUsage, indexed by keyID.

func (*ScanKeys) KeyOwnerByEntity

func (s *ScanKeys) KeyOwnerByEntity(entity *openpgp.Entity) *libkb.User

func (*ScanKeys) KeysById

func (s *ScanKeys) KeysById(id uint64, fp []byte) []openpgp.Key

KeysById returns the set of keys that have the given key id. It is only called during decryption by openpgp.

func (*ScanKeys) KeysByIdUsage

func (s *ScanKeys) KeysByIdUsage(id uint64, fp []byte, requiredUsage byte) []openpgp.Key

KeysByIdAndUsage returns the set of public keys with the given id that also meet the key usage given by requiredUsage.

The requiredUsage is expressed as the bitwise-OR of packet.KeyFlag* values.

It is only called during signature verification so therefore requiredUsage will only equal KeyFlagSign, thus only public keys are required. If this ever changes upstream in openpgp, this function will panic.

func (*ScanKeys) Name

func (s *ScanKeys) Name() string

func (*ScanKeys) RequiredUIs

func (s *ScanKeys) RequiredUIs() []libkb.UIKind

func (*ScanKeys) SubConsumers

func (s *ScanKeys) SubConsumers() []libkb.UIConsumer

type ScanProofsCache

type ScanProofsCache struct {
	// contains filtered or unexported fields
}

func LoadScanProofsCache

func LoadScanProofsCache(filepath string) (*ScanProofsCache, error)

func NewScanProofsCache

func NewScanProofsCache() *ScanProofsCache

func (*ScanProofsCache) Get

func (c *ScanProofsCache) Get(sigID string) bool

func (*ScanProofsCache) Save

func (c *ScanProofsCache) Save(filepath string) error

func (*ScanProofsCache) Set

func (c *ScanProofsCache) Set(sigID string)

type ScanProofsCacheData

type ScanProofsCacheData struct {
	// Map from sigid to whether the proof is ok.
	Proofs map[string]bool
}

type ScanProofsEngine

type ScanProofsEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewScanProofsEngine

func NewScanProofsEngine(infile string, indices string, sigid string, ratelimit int, cachefile string, ignorefile string, g *libkb.GlobalContext) *ScanProofsEngine

func (*ScanProofsEngine) CheckOne

CheckOne checks one proof using two checkers (default, pvl). NOTE: This doesn't make sense anymore because pvl is the default. Returns nil or an error, whether a hint was found, and any more serious error

func (e *ScanProofsEngine) GetRemoteProofChainLink(m libkb.MetaContext, uid keybase1.UID, sigid keybase1.SigID) (libkb.RemoteProofChainLink, error)

func (*ScanProofsEngine) GetSigHint

func (e *ScanProofsEngine) GetSigHint(m libkb.MetaContext, uid keybase1.UID, sigid keybase1.SigID) (*libkb.SigHint, error)

GetSigHint gets the SigHint. This can return (nil, nil) if nothing goes wrong but there is no hint.

func (*ScanProofsEngine) Name

func (e *ScanProofsEngine) Name() string

func (*ScanProofsEngine) ParseIndices

func (e *ScanProofsEngine) ParseIndices(indices string) (start int, end int, reterr error)

func (*ScanProofsEngine) Prereqs

func (e *ScanProofsEngine) Prereqs() Prereqs

func (*ScanProofsEngine) ProcessOne

func (e *ScanProofsEngine) ProcessOne(m libkb.MetaContext, i int, rec map[string]string, cache *ScanProofsCache, ignored []string, tickers ScanProofsTickers) error

func (*ScanProofsEngine) RequiredUIs

func (e *ScanProofsEngine) RequiredUIs() []libkb.UIKind

func (*ScanProofsEngine) Run

func (e *ScanProofsEngine) Run(m libkb.MetaContext) (err error)

func (*ScanProofsEngine) SubConsumers

func (e *ScanProofsEngine) SubConsumers() []libkb.UIConsumer

type ScanProofsTickers

type ScanProofsTickers map[keybase1.ProofType]*time.Ticker

type SecretKeysEngine

type SecretKeysEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewSecretKeysEngine

func NewSecretKeysEngine(g *libkb.GlobalContext) *SecretKeysEngine

func (*SecretKeysEngine) Name

func (e *SecretKeysEngine) Name() string

func (*SecretKeysEngine) Prereqs

func (e *SecretKeysEngine) Prereqs() Prereqs

func (*SecretKeysEngine) RequiredUIs

func (e *SecretKeysEngine) RequiredUIs() []libkb.UIKind

func (*SecretKeysEngine) Result

func (e *SecretKeysEngine) Result() keybase1.SecretKeys

func (*SecretKeysEngine) Run

func (e *SecretKeysEngine) Run(m libkb.MetaContext) (err error)

func (*SecretKeysEngine) SubConsumers

func (e *SecretKeysEngine) SubConsumers() []libkb.UIConsumer

type SecretStoreNotFunctionalError

type SecretStoreNotFunctionalError struct {
	// contains filtered or unexported fields
}

func (SecretStoreNotFunctionalError) Error

type SelfProvisionEngine

type SelfProvisionEngine struct {
	libkb.Contextified
	DeviceName string

	User *libkb.User
	// contains filtered or unexported fields
}

func NewSelfProvisionEngine

func NewSelfProvisionEngine(g *libkb.GlobalContext, deviceName string) *SelfProvisionEngine

If a device is cloned, we can provision a new device from the current device to get out of the cloned state.

func (*SelfProvisionEngine) Name

func (e *SelfProvisionEngine) Name() string

func (*SelfProvisionEngine) Prereqs

func (e *SelfProvisionEngine) Prereqs() Prereqs

func (*SelfProvisionEngine) RequiredUIs

func (e *SelfProvisionEngine) RequiredUIs() []libkb.UIKind

func (*SelfProvisionEngine) Result

func (e *SelfProvisionEngine) Result() error

func (*SelfProvisionEngine) Run

func (e *SelfProvisionEngine) Run(mctx libkb.MetaContext) (err error)

func (*SelfProvisionEngine) SubConsumers

func (e *SelfProvisionEngine) SubConsumers() []libkb.UIConsumer

type SignupEngine

type SignupEngine struct {
	// contains filtered or unexported fields
}

func NewSignupEngine

func NewSignupEngine(g *libkb.GlobalContext, arg *SignupEngineRunArg) *SignupEngine

func (*SignupEngine) GetMe

func (s *SignupEngine) GetMe() *libkb.User

func (*SignupEngine) Name

func (s *SignupEngine) Name() string

func (*SignupEngine) PaperKey

func (s *SignupEngine) PaperKey() *libkb.PaperKeyPhrase

func (*SignupEngine) Prereqs

func (s *SignupEngine) Prereqs() Prereqs

func (*SignupEngine) RequiredUIs

func (s *SignupEngine) RequiredUIs() []libkb.UIKind

func (*SignupEngine) Run

func (s *SignupEngine) Run(m libkb.MetaContext) (err error)

func (*SignupEngine) SubConsumers

func (s *SignupEngine) SubConsumers() []libkb.UIConsumer

type SignupEngineRunArg

type SignupEngineRunArg struct {
	Username                 string
	Email                    string
	InviteCode               string
	Passphrase               string
	GenerateRandomPassphrase bool
	StoreSecret              bool
	DeviceName               string
	DeviceType               keybase1.DeviceType
	SkipGPG                  bool
	SkipMail                 bool
	SkipPaper                bool
	GenPGPBatch              bool // if true, generate and push a pgp key to the server (no interaction)
	VerifyEmail              bool

	// Bot signups have random PWs, no device keys, an eldest paper key, and return a paper key via
	// the main flow; you need to supply a bot token to signup with them.
	BotToken keybase1.BotToken
	// contains filtered or unexported fields
}

type SignupJoinEngine

type SignupJoinEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewSignupJoinEngine

func NewSignupJoinEngine(g *libkb.GlobalContext) *SignupJoinEngine

func (*SignupJoinEngine) CheckRegistered

func (s *SignupJoinEngine) CheckRegistered() (err error)

func (*SignupJoinEngine) Init

func (s *SignupJoinEngine) Init() error

func (*SignupJoinEngine) Post

func (*SignupJoinEngine) PostInviteRequest

func (s *SignupJoinEngine) PostInviteRequest(m libkb.MetaContext, arg libkb.InviteRequestArg) error

func (*SignupJoinEngine) Run

func (*SignupJoinEngine) WriteOut

type SignupJoinEngineRunArg

type SignupJoinEngineRunArg struct {
	Username    string
	Email       string
	InviteCode  string
	PWHash      []byte
	PWSalt      []byte
	RandomPW    bool
	PDPKA5KID   keybase1.KID
	SkipMail    bool
	VerifyEmail bool
	BotToken    keybase1.BotToken
}

type SignupJoinEngineRunRes

type SignupJoinEngineRunRes struct {
	PassphraseOk bool
	PostOk       bool
	WriteOk      bool
	UV           keybase1.UserVersion
	User         *libkb.User
	Err          error
	PpGen        libkb.PassphraseGeneration
}

func (SignupJoinEngineRunRes) Error

func (r SignupJoinEngineRunRes) Error() string

type SigsList

type SigsList struct {
	SigsListArgs

	libkb.Contextified
	// contains filtered or unexported fields
}

SigsList is an engine for the sigs-list command.

func NewSigsList

func NewSigsList(g *libkb.GlobalContext, args SigsListArgs) *SigsList

NewSigsList creates a SigsList engine.

func (*SigsList) JSON

func (e *SigsList) JSON() (string, error)

func (*SigsList) Name

func (e *SigsList) Name() string

Name is the unique engine name.

func (*SigsList) Prereqs

func (e *SigsList) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*SigsList) RequiredUIs

func (e *SigsList) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*SigsList) Run

func (e *SigsList) Run(m libkb.MetaContext) error

Run starts the engine.

func (*SigsList) Sigs

func (e *SigsList) Sigs() []keybase1.Sig

Sigs returns the sig list, after processing.

func (*SigsList) SubConsumers

func (e *SigsList) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type SigsListArgs

type SigsListArgs struct {
	Username string
	Types    map[string]bool
	Filterx  string
	Verbose  bool
	Revoked  bool
}

type TaskFunc

type TaskFunc func(m libkb.MetaContext) error

Function to run periodically. The error is logged but otherwise ignored.

type TeamBlocksGet

type TeamBlocksGet struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewTeamBlocksGet

func NewTeamBlocksGet(g *libkb.GlobalContext) *TeamBlocksGet

func (*TeamBlocksGet) Blocks

func (e *TeamBlocksGet) Blocks() []keybase1.TeamBlock

func (*TeamBlocksGet) Name

func (e *TeamBlocksGet) Name() string

Name is the unique engine name.

func (*TeamBlocksGet) Prereqs

func (e *TeamBlocksGet) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*TeamBlocksGet) RequiredUIs

func (e *TeamBlocksGet) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*TeamBlocksGet) Run

func (e *TeamBlocksGet) Run(mctx libkb.MetaContext) (err error)

Run starts the engine.

func (*TeamBlocksGet) SubConsumers

func (e *TeamBlocksGet) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type TrackEngine

type TrackEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewTrackEngine

func NewTrackEngine(g *libkb.GlobalContext, arg *TrackEngineArg) *TrackEngine

NewTrackEngine creates a default TrackEngine for tracking theirName.

func (*TrackEngine) ConfirmResult

func (e *TrackEngine) ConfirmResult() keybase1.ConfirmResult

func (*TrackEngine) Name

func (e *TrackEngine) Name() string

func (*TrackEngine) Prereqs

func (e *TrackEngine) Prereqs() Prereqs

func (*TrackEngine) RequiredUIs

func (e *TrackEngine) RequiredUIs() []libkb.UIKind

func (*TrackEngine) Run

func (e *TrackEngine) Run(m libkb.MetaContext) error

func (*TrackEngine) SubConsumers

func (e *TrackEngine) SubConsumers() []libkb.UIConsumer

func (*TrackEngine) User

func (e *TrackEngine) User() *libkb.User

type TrackEngineArg

type TrackEngineArg struct {
	UserAssertion    string
	Me               *libkb.User
	Options          keybase1.TrackOptions
	ForceRemoteCheck bool
	SigVersion       libkb.SigVersion
}

type TrackToken

type TrackToken struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

TrackToken is an engine.

func NewTrackToken

func NewTrackToken(g *libkb.GlobalContext, arg *TrackTokenArg) *TrackToken

NewTrackToken creates a TrackToken engine.

func (*TrackToken) Name

func (e *TrackToken) Name() string

Name is the unique engine name.

func (*TrackToken) Prereqs

func (e *TrackToken) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*TrackToken) RequiredUIs

func (e *TrackToken) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*TrackToken) Run

func (e *TrackToken) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*TrackToken) SubConsumers

func (e *TrackToken) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type TrackTokenArg

type TrackTokenArg struct {
	Token   keybase1.TrackToken
	Me      *libkb.User
	Options keybase1.TrackOptions
	Outcome *libkb.IdentifyOutcome
}

type UIDelegateWanter

type UIDelegateWanter interface {
	WantDelegate(libkb.UIKind) bool
}

type Unlock

type Unlock struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

Unlock is an engine.

func NewUnlock

func NewUnlock(g *libkb.GlobalContext) *Unlock

NewUnlock creates a Unlock engine.

func NewUnlockWithPassphrase

func NewUnlockWithPassphrase(g *libkb.GlobalContext, passphrase string) *Unlock

NewUnlock creates a Unlock engine.

func (*Unlock) Name

func (e *Unlock) Name() string

Name is the unique engine name.

func (*Unlock) Prereqs

func (e *Unlock) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*Unlock) RequiredUIs

func (e *Unlock) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*Unlock) Run

func (e *Unlock) Run(m libkb.MetaContext) (err error)

Run starts the engine.

func (*Unlock) SubConsumers

func (e *Unlock) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type UntrackEngine

type UntrackEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func NewUntrackEngine

func NewUntrackEngine(g *libkb.GlobalContext, arg *UntrackEngineArg) *UntrackEngine

NewUntrackEngine creates a default UntrackEngine for tracking theirName.

func (*UntrackEngine) Name

func (e *UntrackEngine) Name() string

func (*UntrackEngine) Prereqs

func (e *UntrackEngine) Prereqs() Prereqs

func (*UntrackEngine) RequiredUIs

func (e *UntrackEngine) RequiredUIs() []libkb.UIKind

func (*UntrackEngine) Run

func (e *UntrackEngine) Run(m libkb.MetaContext) (err error)

func (*UntrackEngine) SubConsumers

func (e *UntrackEngine) SubConsumers() []libkb.UIConsumer

type UntrackEngineArg

type UntrackEngineArg struct {
	Username   libkb.NormalizedUsername
	Me         *libkb.User
	SigVersion libkb.SigVersion
}

type UserBlocksGet

type UserBlocksGet struct {
	keybase1.GetUserBlocksArg
	libkb.Contextified
	// contains filtered or unexported fields
}

func (*UserBlocksGet) Blocks

func (e *UserBlocksGet) Blocks() []keybase1.UserBlock

func (*UserBlocksGet) Name

func (e *UserBlocksGet) Name() string

Name is the unique engine name.

func (*UserBlocksGet) Prereqs

func (e *UserBlocksGet) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*UserBlocksGet) RequiredUIs

func (e *UserBlocksGet) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*UserBlocksGet) Run

func (e *UserBlocksGet) Run(mctx libkb.MetaContext) (err error)

Run starts the engine.

func (*UserBlocksGet) SubConsumers

func (e *UserBlocksGet) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type UserBlocksSet

type UserBlocksSet struct {
	keybase1.SetUserBlocksArg
	libkb.Contextified
	// contains filtered or unexported fields
}

func (*UserBlocksSet) Name

func (e *UserBlocksSet) Name() string

Name is the unique engine name.

func (*UserBlocksSet) Prereqs

func (e *UserBlocksSet) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*UserBlocksSet) RequiredUIs

func (e *UserBlocksSet) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*UserBlocksSet) Run

func (e *UserBlocksSet) Run(mctx libkb.MetaContext) (err error)

Run starts the engine.

func (*UserBlocksSet) SubConsumers

func (e *UserBlocksSet) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

func (*UserBlocksSet) UIDs

func (e *UserBlocksSet) UIDs() []keybase1.UID

type UserConfigEngine

type UserConfigEngine struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

func (*UserConfigEngine) Name

func (e *UserConfigEngine) Name() string

func (*UserConfigEngine) Prereqs

func (e *UserConfigEngine) Prereqs() Prereqs

func (*UserConfigEngine) RequiredUIs

func (e *UserConfigEngine) RequiredUIs() []libkb.UIKind

func (*UserConfigEngine) Run

func (e *UserConfigEngine) Run(m libkb.MetaContext) (err error)

func (*UserConfigEngine) SubConsumers

func (e *UserConfigEngine) SubConsumers() []libkb.UIConsumer

type UserConfigEngineArg

type UserConfigEngineArg struct {
	Key   string
	Value string
}

type UserPlusKeys

type UserPlusKeys struct {
	User      *libkb.User
	IsTracked bool
	Keys      []*libkb.PGPKeyBundle
}

type WalletUpkeepBackground

type WalletUpkeepBackground struct {
	libkb.Contextified
	sync.Mutex
	// contains filtered or unexported fields
}

WalletUpkeepBackground is an engine.

func NewWalletUpkeepBackground

func NewWalletUpkeepBackground(g *libkb.GlobalContext, args *WalletUpkeepBackgroundArgs) *WalletUpkeepBackground

NewWalletUpkeepBackground creates a WalletUpkeepBackground engine.

func (*WalletUpkeepBackground) Name

func (e *WalletUpkeepBackground) Name() string

Name is the unique engine name.

func (*WalletUpkeepBackground) Prereqs

func (e *WalletUpkeepBackground) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*WalletUpkeepBackground) RequiredUIs

func (e *WalletUpkeepBackground) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*WalletUpkeepBackground) Run

Run starts the engine. Returns immediately, kicks off a background goroutine.

func (*WalletUpkeepBackground) Shutdown

func (e *WalletUpkeepBackground) Shutdown()

func (*WalletUpkeepBackground) SubConsumers

func (e *WalletUpkeepBackground) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type WalletUpkeepBackgroundArgs

type WalletUpkeepBackgroundArgs struct {
	// contains filtered or unexported fields
}

type WotReact

type WotReact struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

WotReact is an engine.

func NewWotReact

func NewWotReact(g *libkb.GlobalContext, arg *WotReactArg) *WotReact

NewWotReact creates a WotReact engine.

func (*WotReact) Name

func (e *WotReact) Name() string

Name is the unique engine name.

func (*WotReact) Prereqs

func (e *WotReact) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*WotReact) RequiredUIs

func (e *WotReact) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*WotReact) Run

func (e *WotReact) Run(mctx libkb.MetaContext) error

Run starts the engine.

func (*WotReact) SubConsumers

func (e *WotReact) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type WotReactArg

type WotReactArg struct {
	Voucher  keybase1.UserVersion
	Proof    keybase1.SigID
	Reaction keybase1.WotReactionType
}

type WotVouch

type WotVouch struct {
	libkb.Contextified
	// contains filtered or unexported fields
}

WotVouch is an engine.

func NewWotVouch

func NewWotVouch(g *libkb.GlobalContext, arg *WotVouchArg) *WotVouch

NewWotVouch creates a WotVouch engine.

func (*WotVouch) Name

func (e *WotVouch) Name() string

Name is the unique engine name.

func (*WotVouch) Prereqs

func (e *WotVouch) Prereqs() Prereqs

GetPrereqs returns the engine prereqs.

func (*WotVouch) RequiredUIs

func (e *WotVouch) RequiredUIs() []libkb.UIKind

RequiredUIs returns the required UIs.

func (*WotVouch) Run

func (e *WotVouch) Run(mctx libkb.MetaContext) error

Run starts the engine.

func (*WotVouch) SubConsumers

func (e *WotVouch) SubConsumers() []libkb.UIConsumer

SubConsumers returns the other UI consumers for this engine.

type WotVouchArg

type WotVouchArg struct {
	Vouchee    keybase1.UserVersion
	Confidence keybase1.Confidence
	VouchText  string
}

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL