keybase1

package
v1.0.17 Latest Latest
Warning

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

Go to latest
Published: Aug 9, 2016 License: BSD-3-Clause, BSD-3-Clause Imports: 12 Imported by: 0

Documentation

Index

Constants

View Source
const (
	UID_LEN          = 16
	UID_SUFFIX       = 0x00
	UID_SUFFIX_2     = 0x19
	UID_SUFFIX_HEX   = "00"
	UID_SUFFIX_2_HEX = "19"
	PUBLIC_UID       = "ffffffffffffffffffffffffffffff00"
)
View Source
const (
	SIG_ID_LEN         = 32
	SIG_ID_SUFFIX      = 0x0f
	SIG_SHORT_ID_BYTES = 27
	SigIDQueryMin      = 8
)
View Source
const (
	DeviceIDLen       = 16
	DeviceIDSuffix    = 0x18
	DeviceIDSuffixHex = "18"
)
View Source
const (
	KidLen     = 35   // bytes
	KidSuffix  = 0x0a // a byte
	KidVersion = 0x1
)

Variables

View Source
var PublicUID = UID(PUBLIC_UID)

UID for the special "public" user.

Functions

func AccountProtocol

func AccountProtocol(i AccountInterface) rpc.Protocol

func ApiserverProtocol added in v1.0.17

func ApiserverProtocol(i ApiserverInterface) rpc.Protocol

func BTCProtocol

func BTCProtocol(i BTCInterface) rpc.Protocol

func BackendCommonProtocol

func BackendCommonProtocol(i BackendCommonInterface) rpc.Protocol

func BlockProtocol

func BlockProtocol(i BlockInterface) rpc.Protocol

func CommonProtocol

func CommonProtocol(i CommonInterface) rpc.Protocol

func ConfigProtocol

func ConfigProtocol(i ConfigInterface) rpc.Protocol

func ConstantsProtocol

func ConstantsProtocol(i ConstantsInterface) rpc.Protocol

func CryptoProtocol

func CryptoProtocol(i CryptoInterface) rpc.Protocol

func CtlProtocol

func CtlProtocol(i CtlInterface) rpc.Protocol

func DebuggingProtocol

func DebuggingProtocol(i DebuggingInterface) rpc.Protocol

func DelegateUiCtlProtocol

func DelegateUiCtlProtocol(i DelegateUiCtlInterface) rpc.Protocol

func DeviceProtocol

func DeviceProtocol(i DeviceInterface) rpc.Protocol

func FavoriteProtocol

func FavoriteProtocol(i FavoriteInterface) rpc.Protocol

func FormatTime

func FormatTime(t Time) string

func FromTime

func FromTime(t Time) time.Time

func FsProtocol added in v1.0.17

func FsProtocol(i FsInterface) rpc.Protocol

func GpgCommonProtocol

func GpgCommonProtocol(i GpgCommonInterface) rpc.Protocol

func GpgUiProtocol

func GpgUiProtocol(i GpgUiInterface) rpc.Protocol

func GregorProtocol added in v1.0.17

func GregorProtocol(i GregorInterface) rpc.Protocol

func GregorUIProtocol added in v1.0.17

func GregorUIProtocol(i GregorUIInterface) rpc.Protocol

func IdentifyCommonProtocol

func IdentifyCommonProtocol(i IdentifyCommonInterface) rpc.Protocol

func IdentifyProtocol

func IdentifyProtocol(i IdentifyInterface) rpc.Protocol

func IdentifyUiProtocol

func IdentifyUiProtocol(i IdentifyUiInterface) rpc.Protocol

func InstallProtocol

func InstallProtocol(i InstallInterface) rpc.Protocol

func KbfsCommonProtocol

func KbfsCommonProtocol(i KbfsCommonInterface) rpc.Protocol

func KbfsProtocol

func KbfsProtocol(i KbfsInterface) rpc.Protocol

func Kex2ProvisioneeProtocol

func Kex2ProvisioneeProtocol(i Kex2ProvisioneeInterface) rpc.Protocol

func Kex2ProvisionerProtocol

func Kex2ProvisionerProtocol(i Kex2ProvisionerInterface) rpc.Protocol

func LogProtocol

func LogProtocol(i LogInterface) rpc.Protocol

func LogUiProtocol

func LogUiProtocol(i LogUiInterface) rpc.Protocol

func LoginProtocol

func LoginProtocol(i LoginInterface) rpc.Protocol

func LoginUiProtocol

func LoginUiProtocol(i LoginUiInterface) rpc.Protocol

func MetadataProtocol

func MetadataProtocol(i MetadataInterface) rpc.Protocol

func MetadataUpdateProtocol

func MetadataUpdateProtocol(i MetadataUpdateInterface) rpc.Protocol

func NotifyAppProtocol added in v1.0.17

func NotifyAppProtocol(i NotifyAppInterface) rpc.Protocol

func NotifyCtlProtocol

func NotifyCtlProtocol(i NotifyCtlInterface) rpc.Protocol

func NotifyFSProtocol

func NotifyFSProtocol(i NotifyFSInterface) rpc.Protocol

func NotifyFavoritesProtocol added in v1.0.16

func NotifyFavoritesProtocol(i NotifyFavoritesInterface) rpc.Protocol

func NotifyKeyfamilyProtocol added in v1.0.17

func NotifyKeyfamilyProtocol(i NotifyKeyfamilyInterface) rpc.Protocol

func NotifyPaperKeyProtocol added in v1.0.17

func NotifyPaperKeyProtocol(i NotifyPaperKeyInterface) rpc.Protocol

func NotifyServiceProtocol added in v1.0.17

func NotifyServiceProtocol(i NotifyServiceInterface) rpc.Protocol

func NotifySessionProtocol

func NotifySessionProtocol(i NotifySessionInterface) rpc.Protocol

func NotifyTrackingProtocol

func NotifyTrackingProtocol(i NotifyTrackingInterface) rpc.Protocol

func NotifyUsersProtocol

func NotifyUsersProtocol(i NotifyUsersInterface) rpc.Protocol

func PGPProtocol

func PGPProtocol(i PGPInterface) rpc.Protocol

func PGPUiProtocol

func PGPUiProtocol(i PGPUiInterface) rpc.Protocol

func PaperprovisionProtocol added in v1.0.16

func PaperprovisionProtocol(i PaperprovisionInterface) rpc.Protocol

func PassphraseCommonProtocol

func PassphraseCommonProtocol(i PassphraseCommonInterface) rpc.Protocol

func ProcessProtocol

func ProcessProtocol(i ProcessInterface) rpc.Protocol

func ProveCommonProtocol added in v1.0.17

func ProveCommonProtocol(i ProveCommonInterface) rpc.Protocol

func ProveProtocol

func ProveProtocol(i ProveInterface) rpc.Protocol

func ProveUiProtocol

func ProveUiProtocol(i ProveUiInterface) rpc.Protocol

func ProvisionUiProtocol

func ProvisionUiProtocol(i ProvisionUiInterface) rpc.Protocol

func QuotaProtocol

func QuotaProtocol(i QuotaInterface) rpc.Protocol

func Quote

func Quote(s string) []byte

func RekeyProtocol added in v1.0.17

func RekeyProtocol(i RekeyInterface) rpc.Protocol

func RekeyUIProtocol added in v1.0.17

func RekeyUIProtocol(i RekeyUIInterface) rpc.Protocol

func RevokeProtocol

func RevokeProtocol(i RevokeInterface) rpc.Protocol

func SaltpackProtocol

func SaltpackProtocol(i SaltpackInterface) rpc.Protocol

func SaltpackUiProtocol

func SaltpackUiProtocol(i SaltpackUiInterface) rpc.Protocol

func SecretKeysProtocol

func SecretKeysProtocol(i SecretKeysInterface) rpc.Protocol

func SecretUiProtocol

func SecretUiProtocol(i SecretUiInterface) rpc.Protocol

func SessionProtocol

func SessionProtocol(i SessionInterface) rpc.Protocol

func SignupProtocol

func SignupProtocol(i SignupInterface) rpc.Protocol

func SigsProtocol

func SigsProtocol(i SigsInterface) rpc.Protocol

func StreamUiProtocol

func StreamUiProtocol(i StreamUiInterface) rpc.Protocol

func TestProtocol

func TestProtocol(i TestInterface) rpc.Protocol

func TrackProtocol

func TrackProtocol(i TrackInterface) rpc.Protocol

func UiProtocol

func UiProtocol(i UiInterface) rpc.Protocol

func Unquote

func Unquote(data []byte) string

func UpdateCommonProtocol

func UpdateCommonProtocol(i UpdateCommonInterface) rpc.Protocol

func UpdateProtocol

func UpdateProtocol(i UpdateInterface) rpc.Protocol

func UpdateUiProtocol

func UpdateUiProtocol(i UpdateUiInterface) rpc.Protocol

func UserProtocol

func UserProtocol(i UserInterface) rpc.Protocol

func WrapError added in v1.0.16

func WrapError(e error) interface{}

WrapError is a generic method that converts a Go Error into a RPC error status object. If the error is itself a Status object to being with, then it will just return that status object. If it is something that can be made into a Status object via the ToStatusAble interface, then we'll try that. Otherwise, we'll just make a generic Error type.

Types

type APIRes added in v1.0.17

type APIRes struct {
	Status     string `codec:"status" json:"status"`
	Body       string `codec:"body" json:"body"`
	HttpStatus int    `codec:"httpStatus" json:"httpStatus"`
	AppStatus  string `codec:"appStatus" json:"appStatus"`
}

type APIStatus

type APIStatus interface {
	Status() Status
}

type AccountClient

type AccountClient struct {
	Cli rpc.GenericClient
}

func (AccountClient) PassphraseChange

func (c AccountClient) PassphraseChange(ctx context.Context, __arg PassphraseChangeArg) (err error)

Change the passphrase from old to new. If old isn't set, and force is false, then prompt at the UI for it. If old isn't set and force is true, then we'll try to force a passphrase change.

func (AccountClient) PassphrasePrompt

func (c AccountClient) PassphrasePrompt(ctx context.Context, __arg PassphrasePromptArg) (res GetPassphraseRes, err error)

type AccountInterface

type AccountInterface interface {
	// Change the passphrase from old to new. If old isn't set, and force is false,
	// then prompt at the UI for it. If old isn't set and force is true, then we'll
	// try to force a passphrase change.
	PassphraseChange(context.Context, PassphraseChangeArg) error
	PassphrasePrompt(context.Context, PassphrasePromptArg) (GetPassphraseRes, error)
}

type AddReferenceArg

type AddReferenceArg struct {
	Folder string         `codec:"folder" json:"folder"`
	Ref    BlockReference `codec:"ref" json:"ref"`
}

type ApiserverClient added in v1.0.17

type ApiserverClient struct {
	Cli rpc.GenericClient
}

func (ApiserverClient) Get added in v1.0.17

func (c ApiserverClient) Get(ctx context.Context, __arg GetArg) (res APIRes, err error)

func (ApiserverClient) Post added in v1.0.17

func (c ApiserverClient) Post(ctx context.Context, __arg PostArg) (res APIRes, err error)

func (ApiserverClient) PostJSON added in v1.0.17

func (c ApiserverClient) PostJSON(ctx context.Context, __arg PostJSONArg) (res APIRes, err error)

type ApiserverInterface added in v1.0.17

type ApiserverInterface interface {
	Get(context.Context, GetArg) (APIRes, error)
	Post(context.Context, PostArg) (APIRes, error)
	PostJSON(context.Context, PostJSONArg) (APIRes, error)
}

type AppExitArg added in v1.0.17

type AppExitArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type ArchiveReferenceArg

type ArchiveReferenceArg struct {
	Folder string           `codec:"folder" json:"folder"`
	Refs   []BlockReference `codec:"refs" json:"refs"`
}

type ArchiveReferenceWithCountArg

type ArchiveReferenceWithCountArg struct {
	Folder string           `codec:"folder" json:"folder"`
	Refs   []BlockReference `codec:"refs" json:"refs"`
}

type Asset

type Asset struct {
	Name      string `codec:"name" json:"name"`
	Url       string `codec:"url" json:"url"`
	Digest    string `codec:"digest" json:"digest"`
	Signature string `codec:"signature" json:"signature"`
	LocalPath string `codec:"localPath" json:"localPath"`
}

Asset describes a downloadable file.

type AuthenticateArg

type AuthenticateArg struct {
	Signature string `codec:"signature" json:"signature"`
}

type AuthenticateSessionArg

type AuthenticateSessionArg struct {
	Signature string `codec:"signature" json:"signature"`
}

type BTCClient

type BTCClient struct {
	Cli rpc.GenericClient
}

func (BTCClient) RegisterBTC

func (c BTCClient) RegisterBTC(ctx context.Context, __arg RegisterBTCArg) (err error)

type BTCInterface

type BTCInterface interface {
	RegisterBTC(context.Context, RegisterBTCArg) error
}

type BackendCommonClient

type BackendCommonClient struct {
	Cli rpc.GenericClient
}

type BackendCommonInterface

type BackendCommonInterface interface {
}

type BlockClient

type BlockClient struct {
	Cli rpc.GenericClient
}

func (BlockClient) AddReference

func (c BlockClient) AddReference(ctx context.Context, __arg AddReferenceArg) (err error)

func (BlockClient) ArchiveReference

func (c BlockClient) ArchiveReference(ctx context.Context, __arg ArchiveReferenceArg) (res []BlockReference, err error)

func (BlockClient) ArchiveReferenceWithCount

func (c BlockClient) ArchiveReferenceWithCount(ctx context.Context, __arg ArchiveReferenceWithCountArg) (res DowngradeReferenceRes, err error)

func (BlockClient) AuthenticateSession

func (c BlockClient) AuthenticateSession(ctx context.Context, signature string) (err error)

func (BlockClient) DelReference

func (c BlockClient) DelReference(ctx context.Context, __arg DelReferenceArg) (err error)

func (BlockClient) DelReferenceWithCount

func (c BlockClient) DelReferenceWithCount(ctx context.Context, __arg DelReferenceWithCountArg) (res DowngradeReferenceRes, err error)

func (BlockClient) GetBlock

func (c BlockClient) GetBlock(ctx context.Context, __arg GetBlockArg) (res GetBlockRes, err error)

func (BlockClient) GetSessionChallenge

func (c BlockClient) GetSessionChallenge(ctx context.Context) (res ChallengeInfo, err error)

func (BlockClient) GetUserQuotaInfo

func (c BlockClient) GetUserQuotaInfo(ctx context.Context) (res []byte, err error)

func (BlockClient) PutBlock

func (c BlockClient) PutBlock(ctx context.Context, __arg PutBlockArg) (err error)

type BlockIdCombo

type BlockIdCombo struct {
	BlockHash string `codec:"blockHash" json:"blockHash"`
	ChargedTo UID    `codec:"chargedTo" json:"chargedTo"`
}

type BlockInterface

type BlockInterface interface {
	GetSessionChallenge(context.Context) (ChallengeInfo, error)
	AuthenticateSession(context.Context, string) error
	PutBlock(context.Context, PutBlockArg) error
	GetBlock(context.Context, GetBlockArg) (GetBlockRes, error)
	AddReference(context.Context, AddReferenceArg) error
	DelReference(context.Context, DelReferenceArg) error
	ArchiveReference(context.Context, ArchiveReferenceArg) ([]BlockReference, error)
	DelReferenceWithCount(context.Context, DelReferenceWithCountArg) (DowngradeReferenceRes, error)
	ArchiveReferenceWithCount(context.Context, ArchiveReferenceWithCountArg) (DowngradeReferenceRes, error)
	GetUserQuotaInfo(context.Context) ([]byte, error)
}

type BlockRefNonce

type BlockRefNonce [8]byte

type BlockReference

type BlockReference struct {
	Bid       BlockIdCombo  `codec:"bid" json:"bid"`
	Nonce     BlockRefNonce `codec:"nonce" json:"nonce"`
	ChargedTo UID           `codec:"chargedTo" json:"chargedTo"`
}

func (BlockReference) String

func (r BlockReference) String() string

type BlockReferenceCount

type BlockReferenceCount struct {
	Ref       BlockReference `codec:"ref" json:"ref"`
	LiveCount int            `codec:"liveCount" json:"liveCount"`
}

func (BlockReferenceCount) String

func (r BlockReferenceCount) String() string

type BoxNonce

type BoxNonce [24]byte

type BoxPublicKey

type BoxPublicKey [32]byte

type Bytes32

type Bytes32 [32]byte

type ChallengeInfo

type ChallengeInfo struct {
	Now       int64  `codec:"now" json:"now"`
	Challenge string `codec:"challenge" json:"challenge"`
}

type CheckAPIServerOutOfDateWarningArg added in v1.0.17

type CheckAPIServerOutOfDateWarningArg struct {
}

type CheckDeviceNameFormatArg

type CheckDeviceNameFormatArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Name      string `codec:"name" json:"name"`
}

type CheckInvitationCodeArg

type CheckInvitationCodeArg struct {
	SessionID      int    `codec:"sessionID" json:"sessionID"`
	InvitationCode string `codec:"invitationCode" json:"invitationCode"`
}

type CheckProofArg

type CheckProofArg struct {
	SessionID int   `codec:"sessionID" json:"sessionID"`
	SigID     SigID `codec:"sigID" json:"sigID"`
}

type CheckProofStatus

type CheckProofStatus struct {
	Found     bool        `codec:"found" json:"found"`
	Status    ProofStatus `codec:"status" json:"status"`
	ProofText string      `codec:"proofText" json:"proofText"`
	State     ProofState  `codec:"state" json:"state"`
}

type CheckResult

type CheckResult struct {
	ProofResult ProofResult          `codec:"proofResult" json:"proofResult"`
	Time        Time                 `codec:"time" json:"time"`
	Freshness   CheckResultFreshness `codec:"freshness" json:"freshness"`
}

type CheckResultFreshness

type CheckResultFreshness int
const (
	CheckResultFreshness_FRESH  CheckResultFreshness = 0
	CheckResultFreshness_AGED   CheckResultFreshness = 1
	CheckResultFreshness_RANCID CheckResultFreshness = 2
)

type CheckTrackingArg

type CheckTrackingArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type CheckUsernameAvailableArg

type CheckUsernameAvailableArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Username  string `codec:"username" json:"username"`
}

type ChooseDeviceArg

type ChooseDeviceArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	Devices   []Device `codec:"devices" json:"devices"`
}

type ChooseDeviceTypeArg

type ChooseDeviceTypeArg struct {
	SessionID int        `codec:"sessionID" json:"sessionID"`
	Kind      ChooseType `codec:"kind" json:"kind"`
}

type ChooseGPGMethodArg

type ChooseGPGMethodArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	Keys      []GPGKey `codec:"keys" json:"keys"`
}

type ChooseProvisioningMethodArg

type ChooseProvisioningMethodArg struct {
	SessionID int  `codec:"sessionID" json:"sessionID"`
	GpgOption bool `codec:"gpgOption" json:"gpgOption"`
}

type ChooseType

type ChooseType int
const (
	ChooseType_EXISTING_DEVICE ChooseType = 0
	ChooseType_NEW_DEVICE      ChooseType = 1
)

type CiphertextBundle

type CiphertextBundle struct {
	Kid        KID              `codec:"kid" json:"kid"`
	Ciphertext EncryptedBytes32 `codec:"ciphertext" json:"ciphertext"`
	Nonce      BoxNonce         `codec:"nonce" json:"nonce"`
	PublicKey  BoxPublicKey     `codec:"publicKey" json:"publicKey"`
}

type ClearStoredSecretArg

type ClearStoredSecretArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Username  string `codec:"username" json:"username"`
}

type ClearValueArg

type ClearValueArg struct {
	Path string `codec:"path" json:"path"`
}

type ClientDetails

type ClientDetails struct {
	Pid        int        `codec:"pid" json:"pid"`
	ClientType ClientType `codec:"clientType" json:"clientType"`
	Argv       []string   `codec:"argv" json:"argv"`
	Desc       string     `codec:"desc" json:"desc"`
	Version    string     `codec:"version" json:"version"`
}

type ClientOutOfDateArg

type ClientOutOfDateArg struct {
	UpgradeTo  string `codec:"upgradeTo" json:"upgradeTo"`
	UpgradeURI string `codec:"upgradeURI" json:"upgradeURI"`
	UpgradeMsg string `codec:"upgradeMsg" json:"upgradeMsg"`
}

type ClientType

type ClientType int
const (
	ClientType_NONE ClientType = 0
	ClientType_CLI  ClientType = 1
	ClientType_GUI  ClientType = 2
	ClientType_KBFS ClientType = 3
)

func (ClientType) String

func (t ClientType) String() string

type CloseArg

type CloseArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	S         Stream `codec:"s" json:"s"`
}

type CommonClient

type CommonClient struct {
	Cli rpc.GenericClient
}

type CommonInterface

type CommonInterface interface {
}

type ComponentResult

type ComponentResult struct {
	Name   string `codec:"name" json:"name"`
	Status Status `codec:"status" json:"status"`
}

type Config

type Config struct {
	ServerURI    string   `codec:"serverURI" json:"serverURI"`
	SocketFile   string   `codec:"socketFile" json:"socketFile"`
	Label        string   `codec:"label" json:"label"`
	RunMode      string   `codec:"runMode" json:"runMode"`
	GpgExists    bool     `codec:"gpgExists" json:"gpgExists"`
	GpgPath      string   `codec:"gpgPath" json:"gpgPath"`
	Version      string   `codec:"version" json:"version"`
	Path         string   `codec:"path" json:"path"`
	ConfigPath   string   `codec:"configPath" json:"configPath"`
	VersionShort string   `codec:"versionShort" json:"versionShort"`
	VersionFull  string   `codec:"versionFull" json:"versionFull"`
	IsAutoForked bool     `codec:"isAutoForked" json:"isAutoForked"`
	ForkType     ForkType `codec:"forkType" json:"forkType"`
}

type ConfigClient

type ConfigClient struct {
	Cli rpc.GenericClient
}

func (ConfigClient) CheckAPIServerOutOfDateWarning added in v1.0.17

func (c ConfigClient) CheckAPIServerOutOfDateWarning(ctx context.Context) (res OutOfDateInfo, err error)

Check whether the API server has told us we're out of date.

func (ConfigClient) ClearValue

func (c ConfigClient) ClearValue(ctx context.Context, path string) (err error)

func (ConfigClient) GetConfig

func (c ConfigClient) GetConfig(ctx context.Context, sessionID int) (res Config, err error)

func (ConfigClient) GetCurrentStatus

func (c ConfigClient) GetCurrentStatus(ctx context.Context, sessionID int) (res GetCurrentStatusRes, err error)

func (ConfigClient) GetExtendedStatus

func (c ConfigClient) GetExtendedStatus(ctx context.Context, sessionID int) (res ExtendedStatus, err error)

func (ConfigClient) GetValue

func (c ConfigClient) GetValue(ctx context.Context, path string) (res ConfigValue, err error)

func (ConfigClient) HelloIAm

func (c ConfigClient) HelloIAm(ctx context.Context, details ClientDetails) (err error)

func (ConfigClient) SetPath

func (c ConfigClient) SetPath(ctx context.Context, __arg SetPathArg) (err error)

func (ConfigClient) SetUserConfig

func (c ConfigClient) SetUserConfig(ctx context.Context, __arg SetUserConfigArg) (err error)

Change user config. For example, to update primary picture source: key=picture.source, value=twitter (or github)

func (ConfigClient) SetValue

func (c ConfigClient) SetValue(ctx context.Context, __arg SetValueArg) (err error)

type ConfigInterface

type ConfigInterface interface {
	GetCurrentStatus(context.Context, int) (GetCurrentStatusRes, error)
	GetExtendedStatus(context.Context, int) (ExtendedStatus, error)
	GetConfig(context.Context, int) (Config, error)
	// Change user config.
	// For example, to update primary picture source:
	// key=picture.source, value=twitter (or github)
	SetUserConfig(context.Context, SetUserConfigArg) error
	SetPath(context.Context, SetPathArg) error
	HelloIAm(context.Context, ClientDetails) error
	SetValue(context.Context, SetValueArg) error
	ClearValue(context.Context, string) error
	GetValue(context.Context, string) (ConfigValue, error)
	// Check whether the API server has told us we're out of date.
	CheckAPIServerOutOfDateWarning(context.Context) (OutOfDateInfo, error)
}

type ConfigValue

type ConfigValue struct {
	IsNull bool    `codec:"isNull" json:"isNull"`
	B      *bool   `codec:"b,omitempty" json:"b,omitempty"`
	I      *int    `codec:"i,omitempty" json:"i,omitempty"`
	S      *string `codec:"s,omitempty" json:"s,omitempty"`
	O      *string `codec:"o,omitempty" json:"o,omitempty"`
}

type ConfiguredAccount

type ConfiguredAccount struct {
	Username        string `codec:"username" json:"username"`
	HasStoredSecret bool   `codec:"hasStoredSecret" json:"hasStoredSecret"`
}

type ConfirmArg

type ConfirmArg struct {
	SessionID int             `codec:"sessionID" json:"sessionID"`
	Outcome   IdentifyOutcome `codec:"outcome" json:"outcome"`
}

type ConfirmDuplicateKeyChosenArg

type ConfirmDuplicateKeyChosenArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type ConfirmResult

type ConfirmResult struct {
	IdentityConfirmed bool `codec:"identityConfirmed" json:"identityConfirmed"`
	RemoteConfirmed   bool `codec:"remoteConfirmed" json:"remoteConfirmed"`
	ExpiringLocal     bool `codec:"expiringLocal" json:"expiringLocal"`
}

type ConstantsClient

type ConstantsClient struct {
	Cli rpc.GenericClient
}

type ConstantsInterface

type ConstantsInterface interface {
}

type CryptoClient

type CryptoClient struct {
	Cli rpc.GenericClient
}

func (CryptoClient) SignED25519

func (c CryptoClient) SignED25519(ctx context.Context, __arg SignED25519Arg) (res ED25519SignatureInfo, err error)

Sign the given message (which should be small) using the device's private signing ED25519 key, and return the signature as well as the corresponding public key that can be used to verify the signature. The 'reason' parameter is used as part of the SecretEntryArg object passed into secretUi.getSecret().

func (CryptoClient) SignToString

func (c CryptoClient) SignToString(ctx context.Context, __arg SignToStringArg) (res string, err error)

Same as the above except the full marsheled and encoded NaclSigInfo.

func (CryptoClient) UnboxBytes32

func (c CryptoClient) UnboxBytes32(ctx context.Context, __arg UnboxBytes32Arg) (res Bytes32, err error)

Decrypt exactly 32 bytes using nacl/box with the given nonce, the given peer's public key, and the device's private encryption key, and return the decrypted data. The 'reason' parameter is used as part of the SecretEntryArg object passed into secretUi.getSecret().

func (CryptoClient) UnboxBytes32Any

func (c CryptoClient) UnboxBytes32Any(ctx context.Context, __arg UnboxBytes32AnyArg) (res UnboxAnyRes, err error)

type CryptoInterface

type CryptoInterface interface {
	// Sign the given message (which should be small) using the device's private
	// signing ED25519 key, and return the signature as well as the corresponding
	// public key that can be used to verify the signature. The 'reason' parameter
	// is used as part of the SecretEntryArg object passed into
	// secretUi.getSecret().
	SignED25519(context.Context, SignED25519Arg) (ED25519SignatureInfo, error)
	// Same as the above except the full marsheled and encoded NaclSigInfo.
	SignToString(context.Context, SignToStringArg) (string, error)
	// Decrypt exactly 32 bytes using nacl/box with the given nonce, the given
	// peer's public key, and the device's private encryption key, and return the
	// decrypted data. The 'reason' parameter is used as part of the
	// SecretEntryArg object passed into secretUi.getSecret().
	UnboxBytes32(context.Context, UnboxBytes32Arg) (Bytes32, error)
	UnboxBytes32Any(context.Context, UnboxBytes32AnyArg) (UnboxAnyRes, error)
}

type Cryptocurrency

type Cryptocurrency struct {
	RowId   int    `codec:"rowId" json:"rowId"`
	Pkhash  []byte `codec:"pkhash" json:"pkhash"`
	Address string `codec:"address" json:"address"`
}

type CsrfToken

type CsrfToken string

type CtlClient

type CtlClient struct {
	Cli rpc.GenericClient
}

func (CtlClient) AppExit added in v1.0.17

func (c CtlClient) AppExit(ctx context.Context, sessionID int) (err error)

func (CtlClient) DbNuke

func (c CtlClient) DbNuke(ctx context.Context, sessionID int) (err error)

func (CtlClient) LogRotate

func (c CtlClient) LogRotate(ctx context.Context, sessionID int) (err error)

func (CtlClient) Reload

func (c CtlClient) Reload(ctx context.Context, sessionID int) (err error)

func (CtlClient) Stop

func (c CtlClient) Stop(ctx context.Context, __arg StopArg) (err error)

type CtlInterface

type CtlInterface interface {
	Stop(context.Context, StopArg) error
	LogRotate(context.Context, int) error
	Reload(context.Context, int) error
	DbNuke(context.Context, int) error
	AppExit(context.Context, int) error
}

type CurrentSessionArg

type CurrentSessionArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type DbNukeArg

type DbNukeArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type DebugShowRekeyStatusArg added in v1.0.17

type DebugShowRekeyStatusArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type DebuggingClient

type DebuggingClient struct {
	Cli rpc.GenericClient
}

func (DebuggingClient) FirstStep

func (c DebuggingClient) FirstStep(ctx context.Context, __arg FirstStepArg) (res FirstStepResult, err error)

func (DebuggingClient) Increment

func (c DebuggingClient) Increment(ctx context.Context, __arg IncrementArg) (res int, err error)

func (DebuggingClient) SecondStep

func (c DebuggingClient) SecondStep(ctx context.Context, __arg SecondStepArg) (res int, err error)

type DebuggingInterface

type DebuggingInterface interface {
	FirstStep(context.Context, FirstStepArg) (FirstStepResult, error)
	SecondStep(context.Context, SecondStepArg) (int, error)
	Increment(context.Context, IncrementArg) (int, error)
}

type DelReferenceArg

type DelReferenceArg struct {
	Folder string         `codec:"folder" json:"folder"`
	Ref    BlockReference `codec:"ref" json:"ref"`
}

type DelReferenceWithCountArg

type DelReferenceWithCountArg struct {
	Folder string           `codec:"folder" json:"folder"`
	Refs   []BlockReference `codec:"refs" json:"refs"`
}

type DelegateIdentifyUIArg

type DelegateIdentifyUIArg struct {
}

type DelegateRekeyUIArg added in v1.0.17

type DelegateRekeyUIArg struct {
}

type DelegateUiCtlClient

type DelegateUiCtlClient struct {
	Cli rpc.GenericClient
}

func (DelegateUiCtlClient) RegisterGregorFirehose added in v1.0.17

func (c DelegateUiCtlClient) RegisterGregorFirehose(ctx context.Context) (err error)

func (DelegateUiCtlClient) RegisterIdentifyUI

func (c DelegateUiCtlClient) RegisterIdentifyUI(ctx context.Context) (err error)

func (DelegateUiCtlClient) RegisterRekeyUI added in v1.0.17

func (c DelegateUiCtlClient) RegisterRekeyUI(ctx context.Context) (err error)

func (DelegateUiCtlClient) RegisterSecretUI

func (c DelegateUiCtlClient) RegisterSecretUI(ctx context.Context) (err error)

func (DelegateUiCtlClient) RegisterUpdateUI

func (c DelegateUiCtlClient) RegisterUpdateUI(ctx context.Context) (err error)

type DelegateUiCtlInterface

type DelegateUiCtlInterface interface {
	RegisterIdentifyUI(context.Context) error
	RegisterSecretUI(context.Context) error
	RegisterUpdateUI(context.Context) error
	RegisterRekeyUI(context.Context) error
	RegisterGregorFirehose(context.Context) error
}

type DeleteKeyArg

type DeleteKeyArg struct {
	Uid       UID               `codec:"uid" json:"uid"`
	DeviceKID KID               `codec:"deviceKID" json:"deviceKID"`
	KeyHalfID []byte            `codec:"keyHalfID" json:"keyHalfID"`
	LogTags   map[string]string `codec:"logTags" json:"logTags"`
}

type DeprovisionArg

type DeprovisionArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Username  string `codec:"username" json:"username"`
	DoRevoke  bool   `codec:"doRevoke" json:"doRevoke"`
}

type Device

type Device struct {
	Type         string   `codec:"type" json:"type"`
	Name         string   `codec:"name" json:"name"`
	DeviceID     DeviceID `codec:"deviceID" json:"deviceID"`
	CTime        Time     `codec:"cTime" json:"cTime"`
	MTime        Time     `codec:"mTime" json:"mTime"`
	LastUsedTime Time     `codec:"lastUsedTime" json:"lastUsedTime"`
	EncryptKey   KID      `codec:"encryptKey" json:"encryptKey"`
	VerifyKey    KID      `codec:"verifyKey" json:"verifyKey"`
	Status       int      `codec:"status" json:"status"`
}

type DeviceAddArg

type DeviceAddArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type DeviceClient

type DeviceClient struct {
	Cli rpc.GenericClient
}

func (DeviceClient) CheckDeviceNameFormat

func (c DeviceClient) CheckDeviceNameFormat(ctx context.Context, __arg CheckDeviceNameFormatArg) (res bool, err error)

Checks the device name format.

func (DeviceClient) DeviceAdd

func (c DeviceClient) DeviceAdd(ctx context.Context, sessionID int) (err error)

Starts the process of adding a new device using an existing device. It is called on the existing device. This is for kex2.

func (DeviceClient) DeviceHistoryList added in v1.0.16

func (c DeviceClient) DeviceHistoryList(ctx context.Context, sessionID int) (res []DeviceDetail, err error)

List all devices with detailed history and status information.

func (DeviceClient) DeviceList

func (c DeviceClient) DeviceList(ctx context.Context, sessionID int) (res []Device, err error)

List devices for the user.

type DeviceDetail added in v1.0.16

type DeviceDetail struct {
	Device          Device  `codec:"device" json:"device"`
	Eldest          bool    `codec:"eldest" json:"eldest"`
	Provisioner     *Device `codec:"provisioner,omitempty" json:"provisioner,omitempty"`
	ProvisionedAt   *Time   `codec:"provisionedAt,omitempty" json:"provisionedAt,omitempty"`
	RevokedAt       *Time   `codec:"revokedAt,omitempty" json:"revokedAt,omitempty"`
	RevokedBy       KID     `codec:"revokedBy" json:"revokedBy"`
	RevokedByDevice *Device `codec:"revokedByDevice,omitempty" json:"revokedByDevice,omitempty"`
	CurrentDevice   bool    `codec:"currentDevice" json:"currentDevice"`
}

type DeviceHistoryListArg added in v1.0.16

type DeviceHistoryListArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type DeviceID

type DeviceID string

func DeviceIDFromBytes

func DeviceIDFromBytes(b [DeviceIDLen]byte) DeviceID

func DeviceIDFromSlice

func DeviceIDFromSlice(b []byte) (DeviceID, error)

func DeviceIDFromString

func DeviceIDFromString(s string) (DeviceID, error)

func (DeviceID) Eq

func (d DeviceID) Eq(d2 DeviceID) bool

func (DeviceID) Exists

func (d DeviceID) Exists() bool

func (DeviceID) IsNil

func (d DeviceID) IsNil() bool

func (DeviceID) String

func (d DeviceID) String() string

func (DeviceID) ToBytes

func (d DeviceID) ToBytes(out []byte) error

type DeviceInterface

type DeviceInterface interface {
	// List devices for the user.
	DeviceList(context.Context, int) ([]Device, error)
	// List all devices with detailed history and status information.
	DeviceHistoryList(context.Context, int) ([]DeviceDetail, error)
	// Starts the process of adding a new device using an existing
	// device.  It is called on the existing device.
	// This is for kex2.
	DeviceAdd(context.Context, int) error
	// Checks the device name format.
	CheckDeviceNameFormat(context.Context, CheckDeviceNameFormatArg) (bool, error)
}

type DeviceListArg

type DeviceListArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type DeviceType

type DeviceType int
const (
	DeviceType_DESKTOP DeviceType = 0
	DeviceType_MOBILE  DeviceType = 1
)

type DidCounterSignArg

type DidCounterSignArg struct {
	Sig []byte `codec:"sig" json:"sig"`
}

type DismissArg added in v1.0.16

type DismissArg struct {
	SessionID int           `codec:"sessionID" json:"sessionID"`
	Username  string        `codec:"username" json:"username"`
	Reason    DismissReason `codec:"reason" json:"reason"`
}

type DismissReason added in v1.0.16

type DismissReason struct {
	Type     DismissReasonType `codec:"type" json:"type"`
	Reason   string            `codec:"reason" json:"reason"`
	Resource string            `codec:"resource" json:"resource"`
}

type DismissReasonType added in v1.0.16

type DismissReasonType int
const (
	DismissReasonType_NONE              DismissReasonType = 0
	DismissReasonType_HANDLED_ELSEWHERE DismissReasonType = 1
)

type DismissWithTokenArg added in v1.0.16

type DismissWithTokenArg struct {
	SessionID  int        `codec:"sessionID" json:"sessionID"`
	TrackToken TrackToken `codec:"trackToken" json:"trackToken"`
}

type DisplayAndPromptSecretArg

type DisplayAndPromptSecretArg struct {
	SessionID       int        `codec:"sessionID" json:"sessionID"`
	Secret          []byte     `codec:"secret" json:"secret"`
	Phrase          string     `codec:"phrase" json:"phrase"`
	OtherDeviceType DeviceType `codec:"otherDeviceType" json:"otherDeviceType"`
}

type DisplayCryptocurrencyArg

type DisplayCryptocurrencyArg struct {
	SessionID int            `codec:"sessionID" json:"sessionID"`
	C         Cryptocurrency `codec:"c" json:"c"`
}

type DisplayKeyArg

type DisplayKeyArg struct {
	SessionID int         `codec:"sessionID" json:"sessionID"`
	Key       IdentifyKey `codec:"key" json:"key"`
}

type DisplayPaperKeyPhraseArg

type DisplayPaperKeyPhraseArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Phrase    string `codec:"phrase" json:"phrase"`
}

type DisplayPrimaryPaperKeyArg

type DisplayPrimaryPaperKeyArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Phrase    string `codec:"phrase" json:"phrase"`
}

type DisplayRecheckWarningArg

type DisplayRecheckWarningArg struct {
	SessionID int  `codec:"sessionID" json:"sessionID"`
	Text      Text `codec:"text" json:"text"`
}

type DisplaySecretExchangedArg

type DisplaySecretExchangedArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type DisplayTLFCreateWithInviteArg added in v1.0.16

type DisplayTLFCreateWithInviteArg struct {
	SessionID       int             `codec:"sessionID" json:"sessionID"`
	FolderName      string          `codec:"folderName" json:"folderName"`
	IsPrivate       bool            `codec:"isPrivate" json:"isPrivate"`
	Assertion       string          `codec:"assertion" json:"assertion"`
	SocialAssertion SocialAssertion `codec:"socialAssertion" json:"socialAssertion"`
	InviteLink      string          `codec:"inviteLink" json:"inviteLink"`
	Throttled       bool            `codec:"throttled" json:"throttled"`
}

type DisplayTrackStatementArg

type DisplayTrackStatementArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Stmt      string `codec:"stmt" json:"stmt"`
}

type DisplayUserCardArg

type DisplayUserCardArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	Card      UserCard `codec:"card" json:"card"`
}

type DowngradeReferenceRes

type DowngradeReferenceRes struct {
	Completed []BlockReferenceCount `codec:"completed" json:"completed"`
	Failed    BlockReference        `codec:"failed" json:"failed"`
}

type ED25519PublicKey

type ED25519PublicKey [32]byte

type ED25519Signature

type ED25519Signature [64]byte

type ED25519SignatureInfo

type ED25519SignatureInfo struct {
	Sig       ED25519Signature `codec:"sig" json:"sig"`
	PublicKey ED25519PublicKey `codec:"publicKey" json:"publicKey"`
}

type EncryptedBytes32

type EncryptedBytes32 [48]byte

type Error

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

func FromError

func FromError(err error) *Error

func NewError

func NewError(code StatusCode, message string) *Error

func (*Error) Error

func (e *Error) Error() string

func (*Error) Status

func (e *Error) Status() Status

type ErrorUnwrapper added in v1.0.16

type ErrorUnwrapper struct {
	Upcaster func(status Status) error
}

ErrorUnwrapper is converter that take a Status object off the wire and convert it into an Error that Go can understand, and you can descriminate on in your code. Though status object can act as Go errors, you can further convert them into typed errors via the Upcaster function if specified. An Upcaster takes a Status and returns something that obeys the Error interface, but can be anything your program needs.

func (ErrorUnwrapper) MakeArg added in v1.0.16

func (eu ErrorUnwrapper) MakeArg() interface{}

MakeArg just makes a dummy object that we can unmarshal into, as needed by the underlying RPC library.

func (ErrorUnwrapper) UnwrapError added in v1.0.16

func (eu ErrorUnwrapper) UnwrapError(arg interface{}) (appError, dispatchError error)

UnwrapError takes an incoming RPC object, attempts to coerce it into a Status object, and then Upcasts via the Upcaster or just returns if not was provided.

type ExitArg added in v1.0.17

type ExitArg struct {
}

type ExitCode

type ExitCode int
const (
	ExitCode_OK      ExitCode = 0
	ExitCode_NOTOK   ExitCode = 2
	ExitCode_RESTART ExitCode = 4
)

type ExtendedStatus

type ExtendedStatus struct {
	Standalone             bool            `codec:"standalone" json:"standalone"`
	PassphraseStreamCached bool            `codec:"passphraseStreamCached" json:"passphraseStreamCached"`
	TsecCached             bool            `codec:"tsecCached" json:"tsecCached"`
	DeviceSigKeyCached     bool            `codec:"deviceSigKeyCached" json:"deviceSigKeyCached"`
	DeviceEncKeyCached     bool            `codec:"deviceEncKeyCached" json:"deviceEncKeyCached"`
	PaperSigKeyCached      bool            `codec:"paperSigKeyCached" json:"paperSigKeyCached"`
	PaperEncKeyCached      bool            `codec:"paperEncKeyCached" json:"paperEncKeyCached"`
	StoredSecret           bool            `codec:"storedSecret" json:"storedSecret"`
	SecretPromptSkip       bool            `codec:"secretPromptSkip" json:"secretPromptSkip"`
	Device                 *Device         `codec:"device,omitempty" json:"device,omitempty"`
	LogDir                 string          `codec:"logDir" json:"logDir"`
	Session                *SessionStatus  `codec:"session,omitempty" json:"session,omitempty"`
	DefaultUsername        string          `codec:"defaultUsername" json:"defaultUsername"`
	ProvisionedUsernames   []string        `codec:"provisionedUsernames" json:"provisionedUsernames"`
	Clients                []ClientDetails `codec:"Clients" json:"Clients"`
	PlatformInfo           PlatformInfo    `codec:"platformInfo" json:"platformInfo"`
}

type FSActivityArg

type FSActivityArg struct {
	Notification FSNotification `codec:"notification" json:"notification"`
}

type FSErrorType

type FSErrorType int
const (
	FSErrorType_ACCESS_DENIED         FSErrorType = 0
	FSErrorType_USER_NOT_FOUND        FSErrorType = 1
	FSErrorType_REVOKED_DATA_DETECTED FSErrorType = 2
	FSErrorType_NOT_LOGGED_IN         FSErrorType = 3
	FSErrorType_TIMEOUT               FSErrorType = 4
	FSErrorType_REKEY_NEEDED          FSErrorType = 5
	FSErrorType_BAD_FOLDER            FSErrorType = 6
	FSErrorType_NOT_IMPLEMENTED       FSErrorType = 7
	FSErrorType_OLD_VERSION           FSErrorType = 8
	FSErrorType_OVER_QUOTA            FSErrorType = 9
	FSErrorType_NO_SIG_CHAIN          FSErrorType = 10
)

type FSEventArg

type FSEventArg struct {
	Event FSNotification `codec:"event" json:"event"`
}

type FSNotification

type FSNotification struct {
	PublicTopLevelFolder bool               `codec:"publicTopLevelFolder" json:"publicTopLevelFolder"`
	Filename             string             `codec:"filename" json:"filename"`
	Status               string             `codec:"status" json:"status"`
	StatusCode           FSStatusCode       `codec:"statusCode" json:"statusCode"`
	NotificationType     FSNotificationType `codec:"notificationType" json:"notificationType"`
	ErrorType            FSErrorType        `codec:"errorType" json:"errorType"`
	Params               map[string]string  `codec:"params" json:"params"`
}

type FSNotificationType

type FSNotificationType int
const (
	FSNotificationType_ENCRYPTING      FSNotificationType = 0
	FSNotificationType_DECRYPTING      FSNotificationType = 1
	FSNotificationType_SIGNING         FSNotificationType = 2
	FSNotificationType_VERIFYING       FSNotificationType = 3
	FSNotificationType_REKEYING        FSNotificationType = 4
	FSNotificationType_CONNECTION      FSNotificationType = 5
	FSNotificationType_MD_READ_SUCCESS FSNotificationType = 6
)

type FSStatusCode

type FSStatusCode int
const (
	FSStatusCode_START  FSStatusCode = 0
	FSStatusCode_FINISH FSStatusCode = 1
	FSStatusCode_ERROR  FSStatusCode = 2
)

type FakeTrackingChangedArg

type FakeTrackingChangedArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Username  string `codec:"username" json:"username"`
}

type FavoriteAddArg

type FavoriteAddArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Folder    Folder `codec:"folder" json:"folder"`
}

type FavoriteClient

type FavoriteClient struct {
	Cli rpc.GenericClient
}

func (FavoriteClient) FavoriteAdd

func (c FavoriteClient) FavoriteAdd(ctx context.Context, __arg FavoriteAddArg) (err error)

Adds a folder to a user's list of favorite folders.

func (FavoriteClient) FavoriteIgnore added in v1.0.17

func (c FavoriteClient) FavoriteIgnore(ctx context.Context, __arg FavoriteIgnoreArg) (err error)

Removes a folder from a user's list of favorite folders.

func (FavoriteClient) GetFavorites added in v1.0.17

func (c FavoriteClient) GetFavorites(ctx context.Context, sessionID int) (res FavoritesResult, err error)

Returns all of a user's favorite folders.

type FavoriteIgnoreArg added in v1.0.17

type FavoriteIgnoreArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Folder    Folder `codec:"folder" json:"folder"`
}

type FavoriteInterface

type FavoriteInterface interface {
	// Adds a folder to a user's list of favorite folders.
	FavoriteAdd(context.Context, FavoriteAddArg) error
	// Removes a folder from a user's list of favorite folders.
	FavoriteIgnore(context.Context, FavoriteIgnoreArg) error
	// Returns all of a user's favorite folders.
	GetFavorites(context.Context, int) (FavoritesResult, error)
}

type FavoritesChangedArg added in v1.0.16

type FavoritesChangedArg struct {
	Uid UID `codec:"uid" json:"uid"`
}

type FavoritesResult added in v1.0.17

type FavoritesResult struct {
	FavoriteFolders []Folder `codec:"favoriteFolders" json:"favoriteFolders"`
	IgnoredFolders  []Folder `codec:"ignoredFolders" json:"ignoredFolders"`
	NewFolders      []Folder `codec:"newFolders" json:"newFolders"`
}

type Feature

type Feature struct {
	Allow        bool   `codec:"allow" json:"allow"`
	DefaultValue bool   `codec:"defaultValue" json:"defaultValue"`
	Readonly     bool   `codec:"readonly" json:"readonly"`
	Label        string `codec:"label" json:"label"`
}

type File added in v1.0.17

type File struct {
	Path string `codec:"path" json:"path"`
}

type FileDescriptor

type FileDescriptor struct {
	Name string   `codec:"name" json:"name"`
	Type FileType `codec:"type" json:"type"`
}

type FileType

type FileType int
const (
	FileType_UNKNOWN   FileType = 0
	FileType_DIRECTORY FileType = 1
	FileType_FILE      FileType = 2
)

type FinishArg

type FinishArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type FinishSocialProofCheckArg

type FinishSocialProofCheckArg struct {
	SessionID int             `codec:"sessionID" json:"sessionID"`
	Rp        RemoteProof     `codec:"rp" json:"rp"`
	Lcr       LinkCheckResult `codec:"lcr" json:"lcr"`
}

type FinishWebProofCheckArg

type FinishWebProofCheckArg struct {
	SessionID int             `codec:"sessionID" json:"sessionID"`
	Rp        RemoteProof     `codec:"rp" json:"rp"`
	Lcr       LinkCheckResult `codec:"lcr" json:"lcr"`
}

type FirstStepArg

type FirstStepArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
	Val       int `codec:"val" json:"val"`
}

type FirstStepResult

type FirstStepResult struct {
	ValPlusTwo int `codec:"valPlusTwo" json:"valPlusTwo"`
}

type Folder

type Folder struct {
	Name            string `codec:"name" json:"name"`
	Private         bool   `codec:"private" json:"private"`
	NotificationsOn bool   `codec:"notificationsOn" json:"notificationsOn"`
	Created         bool   `codec:"created" json:"created"`
}

Folder represents a favorite top-level folder in kbfs. This type is likely to change significantly as all the various parts are connected and tested.

func (Folder) ToString

func (f Folder) ToString() string

type FolderNeedsRekeyArg

type FolderNeedsRekeyArg struct {
	FolderID string `codec:"folderID" json:"folderID"`
	Revision int64  `codec:"revision" json:"revision"`
}

type ForkType

type ForkType int
const (
	ForkType_NONE     ForkType = 0
	ForkType_AUTO     ForkType = 1
	ForkType_WATCHDOG ForkType = 2
	ForkType_LAUNCHD  ForkType = 3
)

type FsClient added in v1.0.17

type FsClient struct {
	Cli rpc.GenericClient
}

func (FsClient) List added in v1.0.17

func (c FsClient) List(ctx context.Context, __arg ListArg) (res ListResult, err error)

List files in a path. Implemented by KBFS service.

type FsInterface added in v1.0.17

type FsInterface interface {
	// List files in a path. Implemented by KBFS service.
	List(context.Context, ListArg) (ListResult, error)
}

type FuseMountInfo

type FuseMountInfo struct {
	Path   string `codec:"path" json:"path"`
	Fstype string `codec:"fstype" json:"fstype"`
	Output string `codec:"output" json:"output"`
}

type FuseStatus

type FuseStatus struct {
	Version       string          `codec:"version" json:"version"`
	BundleVersion string          `codec:"bundleVersion" json:"bundleVersion"`
	KextID        string          `codec:"kextID" json:"kextID"`
	Path          string          `codec:"path" json:"path"`
	KextStarted   bool            `codec:"kextStarted" json:"kextStarted"`
	InstallStatus InstallStatus   `codec:"installStatus" json:"installStatus"`
	InstallAction InstallAction   `codec:"installAction" json:"installAction"`
	MountInfos    []FuseMountInfo `codec:"mountInfos" json:"mountInfos"`
	Status        Status          `codec:"status" json:"status"`
}

type GPGKey

type GPGKey struct {
	Algorithm  string        `codec:"algorithm" json:"algorithm"`
	KeyID      string        `codec:"keyID" json:"keyID"`
	Creation   string        `codec:"creation" json:"creation"`
	Expiration string        `codec:"expiration" json:"expiration"`
	Identities []PGPIdentity `codec:"identities" json:"identities"`
}

type GPGMethod

type GPGMethod int
const (
	GPGMethod_GPG_NONE   GPGMethod = 0
	GPGMethod_GPG_IMPORT GPGMethod = 1
	GPGMethod_GPG_SIGN   GPGMethod = 2
)

type GUIEntryArg

type GUIEntryArg struct {
	WindowTitle string           `codec:"windowTitle" json:"windowTitle"`
	Prompt      string           `codec:"prompt" json:"prompt"`
	Username    string           `codec:"username" json:"username"`
	SubmitLabel string           `codec:"submitLabel" json:"submitLabel"`
	CancelLabel string           `codec:"cancelLabel" json:"cancelLabel"`
	RetryLabel  string           `codec:"retryLabel" json:"retryLabel"`
	Type        PassphraseType   `codec:"type" json:"type"`
	Features    GUIEntryFeatures `codec:"features" json:"features"`
}

type GUIEntryFeatures

type GUIEntryFeatures struct {
	StoreSecret Feature `codec:"storeSecret" json:"storeSecret"`
	ShowTyping  Feature `codec:"showTyping" json:"showTyping"`
}

type GetArg added in v1.0.17

type GetArg struct {
	Endpoint      string         `codec:"endpoint" json:"endpoint"`
	Args          []StringKVPair `codec:"args" json:"args"`
	HttpStatus    []int          `codec:"httpStatus" json:"httpStatus"`
	AppStatusCode []int          `codec:"appStatusCode" json:"appStatusCode"`
}

func (GetArg) GetAppStatusCodes added in v1.0.17

func (a GetArg) GetAppStatusCodes() []int

func (GetArg) GetEndpoint added in v1.0.17

func (a GetArg) GetEndpoint() string

func (GetArg) GetHTTPArgs added in v1.0.17

func (a GetArg) GetHTTPArgs() []StringKVPair

func (GetArg) GetHttpStatuses added in v1.0.17

func (a GetArg) GetHttpStatuses() []int

type GetBlockArg

type GetBlockArg struct {
	Bid    BlockIdCombo `codec:"bid" json:"bid"`
	Folder string       `codec:"folder" json:"folder"`
}

type GetBlockRes

type GetBlockRes struct {
	BlockKey string `codec:"blockKey" json:"blockKey"`
	Buf      []byte `codec:"buf" json:"buf"`
}

type GetChallengeArg

type GetChallengeArg struct {
}

type GetConfigArg

type GetConfigArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type GetConfiguredAccountsArg

type GetConfiguredAccountsArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type GetCurrentStatusArg

type GetCurrentStatusArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type GetCurrentStatusRes

type GetCurrentStatusRes struct {
	Configured     bool  `codec:"configured" json:"configured"`
	Registered     bool  `codec:"registered" json:"registered"`
	LoggedIn       bool  `codec:"loggedIn" json:"loggedIn"`
	SessionIsValid bool  `codec:"sessionIsValid" json:"sessionIsValid"`
	User           *User `codec:"user,omitempty" json:"user,omitempty"`
}

type GetEmailOrUsernameArg

type GetEmailOrUsernameArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type GetExtendedStatusArg

type GetExtendedStatusArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type GetFavoritesArg added in v1.0.17

type GetFavoritesArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type GetFolderHandleArg

type GetFolderHandleArg struct {
	FolderID  string `codec:"folderID" json:"folderID"`
	Signature string `codec:"signature" json:"signature"`
	Challenge string `codec:"challenge" json:"challenge"`
}

type GetFoldersForRekeyArg

type GetFoldersForRekeyArg struct {
	DeviceKID KID `codec:"deviceKID" json:"deviceKID"`
}

type GetKeyArg

type GetKeyArg struct {
	KeyHalfID []byte            `codec:"keyHalfID" json:"keyHalfID"`
	DeviceKID string            `codec:"deviceKID" json:"deviceKID"`
	LogTags   map[string]string `codec:"logTags" json:"logTags"`
}

type GetLatestFolderHandleArg added in v1.0.16

type GetLatestFolderHandleArg struct {
	FolderID string `codec:"folderID" json:"folderID"`
}

type GetMerkleNodeArg

type GetMerkleNodeArg struct {
	Hash string `codec:"hash" json:"hash"`
}

type GetMerkleRootArg

type GetMerkleRootArg struct {
	TreeID MerkleTreeID `codec:"treeID" json:"treeID"`
	SeqNo  int64        `codec:"seqNo" json:"seqNo"`
}

type GetMerkleRootLatestArg

type GetMerkleRootLatestArg struct {
	TreeID MerkleTreeID `codec:"treeID" json:"treeID"`
}

type GetMerkleRootSinceArg

type GetMerkleRootSinceArg struct {
	TreeID MerkleTreeID `codec:"treeID" json:"treeID"`
	When   Time         `codec:"when" json:"when"`
}

type GetMetadataArg

type GetMetadataArg struct {
	FolderID      string            `codec:"folderID" json:"folderID"`
	FolderHandle  []byte            `codec:"folderHandle" json:"folderHandle"`
	BranchID      string            `codec:"branchID" json:"branchID"`
	Unmerged      bool              `codec:"unmerged" json:"unmerged"`
	StartRevision int64             `codec:"startRevision" json:"startRevision"`
	StopRevision  int64             `codec:"stopRevision" json:"stopRevision"`
	LogTags       map[string]string `codec:"logTags" json:"logTags"`
}

type GetPassphraseArg

type GetPassphraseArg struct {
	SessionID int             `codec:"sessionID" json:"sessionID"`
	Pinentry  GUIEntryArg     `codec:"pinentry" json:"pinentry"`
	Terminal  *SecretEntryArg `codec:"terminal,omitempty" json:"terminal,omitempty"`
}

type GetPassphraseRes

type GetPassphraseRes struct {
	Passphrase  string `codec:"passphrase" json:"passphrase"`
	StoreSecret bool   `codec:"storeSecret" json:"storeSecret"`
}

type GetPendingRekeyStatusArg added in v1.0.17

type GetPendingRekeyStatusArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type GetSecretKeysArg

type GetSecretKeysArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type GetSessionChallengeArg

type GetSessionChallengeArg struct {
}

type GetStateArg added in v1.0.17

type GetStateArg struct {
}

type GetUserQuotaInfoArg

type GetUserQuotaInfoArg struct {
}

type GetValueArg

type GetValueArg struct {
	Path string `codec:"path" json:"path"`
}

type GpgCommonClient

type GpgCommonClient struct {
	Cli rpc.GenericClient
}

type GpgCommonInterface

type GpgCommonInterface interface {
}

type GpgUiClient

type GpgUiClient struct {
	Cli rpc.GenericClient
}

func (GpgUiClient) ConfirmDuplicateKeyChosen

func (c GpgUiClient) ConfirmDuplicateKeyChosen(ctx context.Context, sessionID int) (res bool, err error)

func (GpgUiClient) SelectKey

func (c GpgUiClient) SelectKey(ctx context.Context, __arg SelectKeyArg) (res string, err error)

func (GpgUiClient) SelectKeyAndPushOption

func (c GpgUiClient) SelectKeyAndPushOption(ctx context.Context, __arg SelectKeyAndPushOptionArg) (res SelectKeyRes, err error)

func (GpgUiClient) Sign

func (c GpgUiClient) Sign(ctx context.Context, __arg SignArg) (res string, err error)

func (GpgUiClient) WantToAddGPGKey

func (c GpgUiClient) WantToAddGPGKey(ctx context.Context, sessionID int) (res bool, err error)

type GpgUiInterface

type GpgUiInterface interface {
	WantToAddGPGKey(context.Context, int) (bool, error)
	ConfirmDuplicateKeyChosen(context.Context, int) (bool, error)
	SelectKeyAndPushOption(context.Context, SelectKeyAndPushOptionArg) (SelectKeyRes, error)
	SelectKey(context.Context, SelectKeyArg) (string, error)
	Sign(context.Context, SignArg) (string, error)
}

type GregorClient added in v1.0.17

type GregorClient struct {
	Cli rpc.GenericClient
}

func (GregorClient) GetState added in v1.0.17

func (c GregorClient) GetState(ctx context.Context) (res gregor1.State, err error)

type GregorInterface added in v1.0.17

type GregorInterface interface {
	GetState(context.Context) (gregor1.State, error)
}

type GregorUIClient added in v1.0.17

type GregorUIClient struct {
	Cli rpc.GenericClient
}

func (GregorUIClient) PushOutOfBandMessages added in v1.0.17

func (c GregorUIClient) PushOutOfBandMessages(ctx context.Context, oobm []gregor1.OutOfBandMessage) (err error)

func (GregorUIClient) PushState added in v1.0.17

func (c GregorUIClient) PushState(ctx context.Context, __arg PushStateArg) (err error)

type GregorUIInterface added in v1.0.17

type GregorUIInterface interface {
	PushState(context.Context, PushStateArg) error
	PushOutOfBandMessages(context.Context, []gregor1.OutOfBandMessage) error
}

type HelloArg

type HelloArg struct {
	Uid     UID              `codec:"uid" json:"uid"`
	Token   SessionToken     `codec:"token" json:"token"`
	Csrf    CsrfToken        `codec:"csrf" json:"csrf"`
	Pps     PassphraseStream `codec:"pps" json:"pps"`
	SigBody string           `codec:"sigBody" json:"sigBody"`
}

type HelloIAmArg

type HelloIAmArg struct {
	Details ClientDetails `codec:"details" json:"details"`
}

type HelloRes

type HelloRes string

type Identify2Arg

type Identify2Arg struct {
	SessionID             int            `codec:"sessionID" json:"sessionID"`
	Uid                   UID            `codec:"uid" json:"uid"`
	UserAssertion         string         `codec:"userAssertion" json:"userAssertion"`
	Reason                IdentifyReason `codec:"reason" json:"reason"`
	UseDelegateUI         bool           `codec:"useDelegateUI" json:"useDelegateUI"`
	AlwaysBlock           bool           `codec:"alwaysBlock" json:"alwaysBlock"`
	NoErrorOnTrackFailure bool           `codec:"noErrorOnTrackFailure" json:"noErrorOnTrackFailure"`
	ForceRemoteCheck      bool           `codec:"forceRemoteCheck" json:"forceRemoteCheck"`
	NeedProofSet          bool           `codec:"needProofSet" json:"needProofSet"`
	AllowEmptySelfID      bool           `codec:"allowEmptySelfID" json:"allowEmptySelfID"`
	NoSkipSelf            bool           `codec:"noSkipSelf" json:"noSkipSelf"`
}

type Identify2Res

type Identify2Res struct {
	Upk UserPlusKeys `codec:"upk" json:"upk"`
}

type IdentifyArg

type IdentifyArg struct {
	SessionID        int            `codec:"sessionID" json:"sessionID"`
	UserAssertion    string         `codec:"userAssertion" json:"userAssertion"`
	ForceRemoteCheck bool           `codec:"forceRemoteCheck" json:"forceRemoteCheck"`
	UseDelegateUI    bool           `codec:"useDelegateUI" json:"useDelegateUI"`
	Reason           IdentifyReason `codec:"reason" json:"reason"`
	Source           ClientType     `codec:"source" json:"source"`
}

type IdentifyClient

type IdentifyClient struct {
	Cli rpc.GenericClient
}

func (IdentifyClient) Identify

func (c IdentifyClient) Identify(ctx context.Context, __arg IdentifyArg) (res IdentifyRes, err error)

Identify a user from a username or assertion (e.g. kbuser, twuser@twitter). If forceRemoteCheck is true, we force all remote proofs to be checked (otherwise a cache is used).

func (IdentifyClient) Identify2

func (c IdentifyClient) Identify2(ctx context.Context, __arg Identify2Arg) (res Identify2Res, err error)

func (IdentifyClient) Resolve

func (c IdentifyClient) Resolve(ctx context.Context, assertion string) (res UID, err error)

Resolve an assertion to a UID. On failure, resolves to an empty UID and returns an error.

func (IdentifyClient) Resolve2

func (c IdentifyClient) Resolve2(ctx context.Context, assertion string) (res User, err error)

Resolve an assertion to a (UID,username). On failure, returns an error.

type IdentifyCommonClient

type IdentifyCommonClient struct {
	Cli rpc.GenericClient
}

type IdentifyCommonInterface

type IdentifyCommonInterface interface {
}

type IdentifyInterface

type IdentifyInterface interface {
	// Resolve an assertion to a UID. On failure, resolves to an empty UID and returns
	// an error.
	Resolve(context.Context, string) (UID, error)
	// Resolve an assertion to a (UID,username). On failure, returns an error.
	Resolve2(context.Context, string) (User, error)
	// Identify a user from a username or assertion (e.g. kbuser, twuser@twitter).
	// If forceRemoteCheck is true, we force all remote proofs to be checked (otherwise a cache is used).
	Identify(context.Context, IdentifyArg) (IdentifyRes, error)
	Identify2(context.Context, Identify2Arg) (Identify2Res, error)
}

type IdentifyKey

type IdentifyKey struct {
	PGPFingerprint []byte     `codec:"pgpFingerprint" json:"pgpFingerprint"`
	KID            KID        `codec:"KID" json:"KID"`
	TrackDiff      *TrackDiff `codec:"trackDiff,omitempty" json:"trackDiff,omitempty"`
	BreaksTracking bool       `codec:"breaksTracking" json:"breaksTracking"`
}

type IdentifyOutcome

type IdentifyOutcome struct {
	Username          string         `codec:"username" json:"username"`
	Status            *Status        `codec:"status,omitempty" json:"status,omitempty"`
	Warnings          []string       `codec:"warnings" json:"warnings"`
	TrackUsed         *TrackSummary  `codec:"trackUsed,omitempty" json:"trackUsed,omitempty"`
	TrackStatus       TrackStatus    `codec:"trackStatus" json:"trackStatus"`
	NumTrackFailures  int            `codec:"numTrackFailures" json:"numTrackFailures"`
	NumTrackChanges   int            `codec:"numTrackChanges" json:"numTrackChanges"`
	NumProofFailures  int            `codec:"numProofFailures" json:"numProofFailures"`
	NumRevoked        int            `codec:"numRevoked" json:"numRevoked"`
	NumProofSuccesses int            `codec:"numProofSuccesses" json:"numProofSuccesses"`
	Revoked           []TrackDiff    `codec:"revoked" json:"revoked"`
	TrackOptions      TrackOptions   `codec:"trackOptions" json:"trackOptions"`
	ForPGPPull        bool           `codec:"forPGPPull" json:"forPGPPull"`
	Reason            IdentifyReason `codec:"reason" json:"reason"`
}

type IdentifyReason

type IdentifyReason struct {
	Type     IdentifyReasonType `codec:"type" json:"type"`
	Reason   string             `codec:"reason" json:"reason"`
	Resource string             `codec:"resource" json:"resource"`
}

type IdentifyReasonType

type IdentifyReasonType int
const (
	IdentifyReasonType_NONE     IdentifyReasonType = 0
	IdentifyReasonType_ID       IdentifyReasonType = 1
	IdentifyReasonType_TRACK    IdentifyReasonType = 2
	IdentifyReasonType_ENCRYPT  IdentifyReasonType = 3
	IdentifyReasonType_DECRYPT  IdentifyReasonType = 4
	IdentifyReasonType_VERIFY   IdentifyReasonType = 5
	IdentifyReasonType_RESOURCE IdentifyReasonType = 6
)

type IdentifyRes

type IdentifyRes struct {
	User       *User           `codec:"user,omitempty" json:"user,omitempty"`
	PublicKeys []PublicKey     `codec:"publicKeys" json:"publicKeys"`
	Outcome    IdentifyOutcome `codec:"outcome" json:"outcome"`
	TrackToken TrackToken      `codec:"trackToken" json:"trackToken"`
}

type IdentifyRow

type IdentifyRow struct {
	RowId     int         `codec:"rowId" json:"rowId"`
	Proof     RemoteProof `codec:"proof" json:"proof"`
	TrackDiff *TrackDiff  `codec:"trackDiff,omitempty" json:"trackDiff,omitempty"`
}

type IdentifyUiClient

type IdentifyUiClient struct {
	Cli rpc.GenericClient
}

func (IdentifyUiClient) Confirm

func (c IdentifyUiClient) Confirm(ctx context.Context, __arg ConfirmArg) (res ConfirmResult, err error)

func (IdentifyUiClient) DelegateIdentifyUI

func (c IdentifyUiClient) DelegateIdentifyUI(ctx context.Context) (res int, err error)

func (IdentifyUiClient) Dismiss added in v1.0.16

func (c IdentifyUiClient) Dismiss(ctx context.Context, __arg DismissArg) (err error)

func (IdentifyUiClient) DisplayCryptocurrency

func (c IdentifyUiClient) DisplayCryptocurrency(ctx context.Context, __arg DisplayCryptocurrencyArg) (err error)

func (IdentifyUiClient) DisplayKey

func (c IdentifyUiClient) DisplayKey(ctx context.Context, __arg DisplayKeyArg) (err error)

func (IdentifyUiClient) DisplayTLFCreateWithInvite added in v1.0.16

func (c IdentifyUiClient) DisplayTLFCreateWithInvite(ctx context.Context, __arg DisplayTLFCreateWithInviteArg) (err error)

func (IdentifyUiClient) DisplayTrackStatement

func (c IdentifyUiClient) DisplayTrackStatement(ctx context.Context, __arg DisplayTrackStatementArg) (err error)

func (IdentifyUiClient) DisplayUserCard

func (c IdentifyUiClient) DisplayUserCard(ctx context.Context, __arg DisplayUserCardArg) (err error)

func (IdentifyUiClient) Finish

func (c IdentifyUiClient) Finish(ctx context.Context, sessionID int) (err error)

func (IdentifyUiClient) FinishSocialProofCheck

func (c IdentifyUiClient) FinishSocialProofCheck(ctx context.Context, __arg FinishSocialProofCheckArg) (err error)

func (IdentifyUiClient) FinishWebProofCheck

func (c IdentifyUiClient) FinishWebProofCheck(ctx context.Context, __arg FinishWebProofCheckArg) (err error)

func (IdentifyUiClient) LaunchNetworkChecks

func (c IdentifyUiClient) LaunchNetworkChecks(ctx context.Context, __arg LaunchNetworkChecksArg) (err error)

func (IdentifyUiClient) ReportLastTrack

func (c IdentifyUiClient) ReportLastTrack(ctx context.Context, __arg ReportLastTrackArg) (err error)

func (IdentifyUiClient) ReportTrackToken

func (c IdentifyUiClient) ReportTrackToken(ctx context.Context, __arg ReportTrackTokenArg) (err error)

func (IdentifyUiClient) Start

func (c IdentifyUiClient) Start(ctx context.Context, __arg StartArg) (err error)

type IdentifyUiInterface

type IdentifyUiInterface interface {
	DisplayTLFCreateWithInvite(context.Context, DisplayTLFCreateWithInviteArg) error
	DelegateIdentifyUI(context.Context) (int, error)
	Start(context.Context, StartArg) error
	DisplayKey(context.Context, DisplayKeyArg) error
	ReportLastTrack(context.Context, ReportLastTrackArg) error
	LaunchNetworkChecks(context.Context, LaunchNetworkChecksArg) error
	DisplayTrackStatement(context.Context, DisplayTrackStatementArg) error
	FinishWebProofCheck(context.Context, FinishWebProofCheckArg) error
	FinishSocialProofCheck(context.Context, FinishSocialProofCheckArg) error
	DisplayCryptocurrency(context.Context, DisplayCryptocurrencyArg) error
	ReportTrackToken(context.Context, ReportTrackTokenArg) error
	DisplayUserCard(context.Context, DisplayUserCardArg) error
	Confirm(context.Context, ConfirmArg) (ConfirmResult, error)
	Finish(context.Context, int) error
	Dismiss(context.Context, DismissArg) error
}

type Identity

type Identity struct {
	Status          *Status          `codec:"status,omitempty" json:"status,omitempty"`
	WhenLastTracked Time             `codec:"whenLastTracked" json:"whenLastTracked"`
	Proofs          []IdentifyRow    `codec:"proofs" json:"proofs"`
	Cryptocurrency  []Cryptocurrency `codec:"cryptocurrency" json:"cryptocurrency"`
	Revoked         []TrackDiff      `codec:"revoked" json:"revoked"`
	RevokedDetails  []RevokedProof   `codec:"revokedDetails" json:"revokedDetails"`
	BreaksTracking  bool             `codec:"breaksTracking" json:"breaksTracking"`
}

type IncrementArg

type IncrementArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
	Val       int `codec:"val" json:"val"`
}

type InstallAction

type InstallAction int
const (
	InstallAction_UNKNOWN   InstallAction = 0
	InstallAction_NONE      InstallAction = 1
	InstallAction_UPGRADE   InstallAction = 2
	InstallAction_REINSTALL InstallAction = 3
	InstallAction_INSTALL   InstallAction = 4
)

func (InstallAction) String

func (s InstallAction) String() string

type InstallClient

type InstallClient struct {
	Cli rpc.GenericClient
}

type InstallInterface

type InstallInterface interface {
}

type InstallResult

type InstallResult struct {
	ComponentResults []ComponentResult `codec:"componentResults" json:"componentResults"`
	Status           Status            `codec:"status" json:"status"`
	Fatal            bool              `codec:"fatal" json:"fatal"`
}

type InstallStatus

type InstallStatus int

Install status describes state of install for a component or service.

const (
	InstallStatus_UNKNOWN       InstallStatus = 0
	InstallStatus_ERROR         InstallStatus = 1
	InstallStatus_NOT_INSTALLED InstallStatus = 2
	InstallStatus_INSTALLED     InstallStatus = 4
)

func (InstallStatus) String

func (s InstallStatus) String() string

type InviteRequestArg

type InviteRequestArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Email     string `codec:"email" json:"email"`
	Fullname  string `codec:"fullname" json:"fullname"`
	Notes     string `codec:"notes" json:"notes"`
}

type KID

type KID string

func KIDFromRawKey

func KIDFromRawKey(b []byte, keyType byte) KID

func KIDFromSlice

func KIDFromSlice(b []byte) KID

func KIDFromString

func KIDFromString(s string) KID

func KIDFromStringChecked

func KIDFromStringChecked(s string) (KID, error)

func (KID) Equal

func (k KID) Equal(v KID) bool

func (KID) Exists

func (k KID) Exists() bool

func (KID) GetKeyType

func (k KID) GetKeyType() byte

func (KID) IsIn

func (k KID) IsIn(list []KID) bool

func (KID) IsNil

func (k KID) IsNil() bool

func (KID) IsValid

func (k KID) IsValid() bool

func (*KID) MarshalJSON

func (k *KID) MarshalJSON() ([]byte, error)

func (KID) Match

func (k KID) Match(q string, exact bool) bool

func (KID) NotEqual

func (k KID) NotEqual(v KID) bool

func (KID) String

func (k KID) String() string

func (KID) ToBytes

func (k KID) ToBytes() []byte

func (KID) ToJsonw

func (k KID) ToJsonw() *jsonw.Wrapper

func (KID) ToShortIDString

func (k KID) ToShortIDString() string

func (*KID) UnmarshalJSON

func (k *KID) UnmarshalJSON(b []byte) error

type KbfsClient

type KbfsClient struct {
	Cli rpc.GenericClient
}

func (KbfsClient) FSEvent

func (c KbfsClient) FSEvent(ctx context.Context, event FSNotification) (err error)

Idea is that kbfs would call the function below whenever these actions are performed on a file.

Note that this list/interface is very temporary and highly likely to change significantly.

It is just a starting point to get kbfs notifications through the daemon to the clients.

type KbfsCommonClient

type KbfsCommonClient struct {
	Cli rpc.GenericClient
}

type KbfsCommonInterface

type KbfsCommonInterface interface {
}

type KbfsInterface

type KbfsInterface interface {
	// Idea is that kbfs would call the function below whenever these actions are
	// performed on a file.
	//
	// Note that this list/interface is very temporary and highly likely to change
	// significantly.
	//
	// It is just a starting point to get kbfs notifications through the daemon to
	// the clients.
	FSEvent(context.Context, FSNotification) error
}

type Kex2ProvisioneeClient

type Kex2ProvisioneeClient struct {
	Cli rpc.GenericClient
}

func (Kex2ProvisioneeClient) DidCounterSign

func (c Kex2ProvisioneeClient) DidCounterSign(ctx context.Context, sig []byte) (err error)

func (Kex2ProvisioneeClient) Hello

func (c Kex2ProvisioneeClient) Hello(ctx context.Context, __arg HelloArg) (res HelloRes, err error)

type Kex2ProvisioneeInterface

type Kex2ProvisioneeInterface interface {
	Hello(context.Context, HelloArg) (HelloRes, error)
	DidCounterSign(context.Context, []byte) error
}

type Kex2ProvisionerClient

type Kex2ProvisionerClient struct {
	Cli rpc.GenericClient
}

func (Kex2ProvisionerClient) KexStart

func (c Kex2ProvisionerClient) KexStart(ctx context.Context) (err error)

type Kex2ProvisionerInterface

type Kex2ProvisionerInterface interface {
	KexStart(context.Context) error
}

type KexStartArg

type KexStartArg struct {
}

type KeyHalf

type KeyHalf struct {
	User      UID    `codec:"user" json:"user"`
	DeviceKID KID    `codec:"deviceKID" json:"deviceKID"`
	Key       []byte `codec:"key" json:"key"`
}

type KeyInfo

type KeyInfo struct {
	Fingerprint string `codec:"fingerprint" json:"fingerprint"`
	Key         string `codec:"key" json:"key"`
	Desc        string `codec:"desc" json:"desc"`
}

type KeybaseTime

type KeybaseTime struct {
	Unix  Time `codec:"unix" json:"unix"`
	Chain int  `codec:"chain" json:"chain"`
}

type KeyfamilyChangedArg added in v1.0.17

type KeyfamilyChangedArg struct {
	Uid UID `codec:"uid" json:"uid"`
}

type LaunchNetworkChecksArg

type LaunchNetworkChecksArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	Identity  Identity `codec:"identity" json:"identity"`
	User      User     `codec:"user" json:"user"`
}

type LinkCheckResult

type LinkCheckResult struct {
	ProofId            int          `codec:"proofId" json:"proofId"`
	ProofResult        ProofResult  `codec:"proofResult" json:"proofResult"`
	SnoozedResult      ProofResult  `codec:"snoozedResult" json:"snoozedResult"`
	TorWarning         bool         `codec:"torWarning" json:"torWarning"`
	TmpTrackExpireTime Time         `codec:"tmpTrackExpireTime" json:"tmpTrackExpireTime"`
	Cached             *CheckResult `codec:"cached,omitempty" json:"cached,omitempty"`
	Diff               *TrackDiff   `codec:"diff,omitempty" json:"diff,omitempty"`
	RemoteDiff         *TrackDiff   `codec:"remoteDiff,omitempty" json:"remoteDiff,omitempty"`
	Hint               *SigHint     `codec:"hint,omitempty" json:"hint,omitempty"`
	BreaksTracking     bool         `codec:"breaksTracking" json:"breaksTracking"`
}

type ListArg added in v1.0.17

type ListArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Path      string `codec:"path" json:"path"`
}

type ListResult added in v1.0.17

type ListResult struct {
	Files []File `codec:"files" json:"files"`
}

type ListTrackers2Arg added in v1.0.17

type ListTrackers2Arg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Assertion string `codec:"assertion" json:"assertion"`
	Reverse   bool   `codec:"reverse" json:"reverse"`
}

type ListTrackersArg

type ListTrackersArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
	Uid       UID `codec:"uid" json:"uid"`
}

type ListTrackersByNameArg

type ListTrackersByNameArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Username  string `codec:"username" json:"username"`
}

type ListTrackersSelfArg

type ListTrackersSelfArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type ListTrackingArg

type ListTrackingArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Filter    string `codec:"filter" json:"filter"`
	Assertion string `codec:"assertion" json:"assertion"`
}

type ListTrackingJSONArg

type ListTrackingJSONArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Filter    string `codec:"filter" json:"filter"`
	Verbose   bool   `codec:"verbose" json:"verbose"`
	Assertion string `codec:"assertion" json:"assertion"`
}

type LoadAllPublicKeysUnverifiedArg added in v1.0.17

type LoadAllPublicKeysUnverifiedArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
	Uid       UID `codec:"uid" json:"uid"`
}

type LoadPublicKeysArg

type LoadPublicKeysArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
	Uid       UID `codec:"uid" json:"uid"`
}

type LoadUncheckedUserSummariesArg

type LoadUncheckedUserSummariesArg struct {
	SessionID int   `codec:"sessionID" json:"sessionID"`
	Uids      []UID `codec:"uids" json:"uids"`
}

type LoadUserArg

type LoadUserArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
	Uid       UID `codec:"uid" json:"uid"`
}

type LoadUserByNameArg added in v1.0.17

type LoadUserByNameArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Username  string `codec:"username" json:"username"`
}

type LoadUserPlusKeysArg

type LoadUserPlusKeysArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
	Uid       UID `codec:"uid" json:"uid"`
}

type LogArg

type LogArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	Level     LogLevel `codec:"level" json:"level"`
	Text      Text     `codec:"text" json:"text"`
}

type LogClient

type LogClient struct {
	Cli rpc.GenericClient
}

func (LogClient) RegisterLogger

func (c LogClient) RegisterLogger(ctx context.Context, __arg RegisterLoggerArg) (err error)

type LogInterface

type LogInterface interface {
	RegisterLogger(context.Context, RegisterLoggerArg) error
}

type LogLevel

type LogLevel int
const (
	LogLevel_NONE     LogLevel = 0
	LogLevel_DEBUG    LogLevel = 1
	LogLevel_INFO     LogLevel = 2
	LogLevel_NOTICE   LogLevel = 3
	LogLevel_WARN     LogLevel = 4
	LogLevel_ERROR    LogLevel = 5
	LogLevel_CRITICAL LogLevel = 6
	LogLevel_FATAL    LogLevel = 7
)

type LogRotateArg

type LogRotateArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type LogUiClient

type LogUiClient struct {
	Cli rpc.GenericClient
}

func (LogUiClient) Log

func (c LogUiClient) Log(ctx context.Context, __arg LogArg) (err error)

type LogUiInterface

type LogUiInterface interface {
	Log(context.Context, LogArg) error
}

type LoggedInArg

type LoggedInArg struct {
	Username string `codec:"username" json:"username"`
}

type LoggedOutArg

type LoggedOutArg struct {
}

type LoginArg

type LoginArg struct {
	SessionID       int        `codec:"sessionID" json:"sessionID"`
	DeviceType      string     `codec:"deviceType" json:"deviceType"`
	UsernameOrEmail string     `codec:"usernameOrEmail" json:"usernameOrEmail"`
	ClientType      ClientType `codec:"clientType" json:"clientType"`
}

type LoginClient

type LoginClient struct {
	Cli rpc.GenericClient
}

func (LoginClient) ClearStoredSecret

func (c LoginClient) ClearStoredSecret(ctx context.Context, __arg ClearStoredSecretArg) (err error)

Removes any existing stored secret for the given username. loginWithStoredSecret(_, username) will fail after this is called.

func (LoginClient) Deprovision

func (c LoginClient) Deprovision(ctx context.Context, __arg DeprovisionArg) (err error)

func (LoginClient) GetConfiguredAccounts

func (c LoginClient) GetConfiguredAccounts(ctx context.Context, sessionID int) (res []ConfiguredAccount, err error)

Returns an array of information about accounts configured on the local machine. Currently configured accounts are defined as those that have stored secrets, but this definition may be expanded in the future.

func (LoginClient) Login

func (c LoginClient) Login(ctx context.Context, __arg LoginArg) (err error)

Performs login. deviceType should be libkb.DeviceTypeDesktop or libkb.DeviceTypeMobile. usernameOrEmail is optional. If the current device isn't provisioned, this function will provision it.

Note that if usernameOrEmail is an email address, only provisioning will be attempted. If the device is already provisioned, login via email address does not work.

func (LoginClient) Logout

func (c LoginClient) Logout(ctx context.Context, sessionID int) (err error)

func (LoginClient) PGPProvision added in v1.0.17

func (c LoginClient) PGPProvision(ctx context.Context, __arg PGPProvisionArg) (err error)

pgpProvision is for devel/testing to provision a device via pgp using CLI with no user interaction.

func (LoginClient) PaperKey

func (c LoginClient) PaperKey(ctx context.Context, sessionID int) (err error)

PaperKey generates paper backup keys for restoring an account. It calls login_ui.displayPaperKeyPhrase with the phrase.

func (LoginClient) PaperKeySubmit added in v1.0.17

func (c LoginClient) PaperKeySubmit(ctx context.Context, __arg PaperKeySubmitArg) (err error)

paperKeySubmit checks that paperPhrase is a valid paper key for the logged in user, caches the keys, and sends a notification.

func (LoginClient) RecoverAccountFromEmailAddress

func (c LoginClient) RecoverAccountFromEmailAddress(ctx context.Context, email string) (err error)

func (LoginClient) Unlock

func (c LoginClient) Unlock(ctx context.Context, sessionID int) (err error)

Unlock restores access to local key store by priming passphrase stream cache.

func (LoginClient) UnlockWithPassphrase

func (c LoginClient) UnlockWithPassphrase(ctx context.Context, __arg UnlockWithPassphraseArg) (err error)

type LoginInterface

type LoginInterface interface {
	// Returns an array of information about accounts configured on the local
	// machine. Currently configured accounts are defined as those that have stored
	// secrets, but this definition may be expanded in the future.
	GetConfiguredAccounts(context.Context, int) ([]ConfiguredAccount, error)
	// Performs login.  deviceType should be libkb.DeviceTypeDesktop
	// or libkb.DeviceTypeMobile.  usernameOrEmail is optional.
	// If the current device isn't provisioned, this function will
	// provision it.
	//
	// Note that if usernameOrEmail is an email address, only provisioning
	// will be attempted.  If the device is already provisioned, login
	// via email address does not work.
	Login(context.Context, LoginArg) error
	// Removes any existing stored secret for the given username.
	// loginWithStoredSecret(_, username) will fail after this is called.
	ClearStoredSecret(context.Context, ClearStoredSecretArg) error
	Logout(context.Context, int) error
	Deprovision(context.Context, DeprovisionArg) error
	RecoverAccountFromEmailAddress(context.Context, string) error
	// PaperKey generates paper backup keys for restoring an account.
	// It calls login_ui.displayPaperKeyPhrase with the phrase.
	PaperKey(context.Context, int) error
	// paperKeySubmit checks that paperPhrase is a valid paper key
	// for the logged in user, caches the keys, and sends a notification.
	PaperKeySubmit(context.Context, PaperKeySubmitArg) error
	// Unlock restores access to local key store by priming passphrase stream cache.
	Unlock(context.Context, int) error
	UnlockWithPassphrase(context.Context, UnlockWithPassphraseArg) error
	// pgpProvision is for devel/testing to provision a device via pgp using CLI
	// with no user interaction.
	PGPProvision(context.Context, PGPProvisionArg) error
}

type LoginUiClient

type LoginUiClient struct {
	Cli rpc.GenericClient
}

func (LoginUiClient) DisplayPaperKeyPhrase

func (c LoginUiClient) DisplayPaperKeyPhrase(ctx context.Context, __arg DisplayPaperKeyPhraseArg) (err error)

func (LoginUiClient) DisplayPrimaryPaperKey

func (c LoginUiClient) DisplayPrimaryPaperKey(ctx context.Context, __arg DisplayPrimaryPaperKeyArg) (err error)

func (LoginUiClient) GetEmailOrUsername

func (c LoginUiClient) GetEmailOrUsername(ctx context.Context, sessionID int) (res string, err error)

func (LoginUiClient) PromptRevokePaperKeys

func (c LoginUiClient) PromptRevokePaperKeys(ctx context.Context, __arg PromptRevokePaperKeysArg) (res bool, err error)

type LoginUiInterface

type LoginUiInterface interface {
	GetEmailOrUsername(context.Context, int) (string, error)
	PromptRevokePaperKeys(context.Context, PromptRevokePaperKeysArg) (bool, error)
	DisplayPaperKeyPhrase(context.Context, DisplayPaperKeyPhraseArg) error
	DisplayPrimaryPaperKey(context.Context, DisplayPrimaryPaperKeyArg) error
}

type LogoutArg

type LogoutArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type MDBlock

type MDBlock struct {
	Version   int    `codec:"version" json:"version"`
	Timestamp Time   `codec:"timestamp" json:"timestamp"`
	Block     []byte `codec:"block" json:"block"`
}

type MerkleRoot

type MerkleRoot struct {
	Version int    `codec:"version" json:"version"`
	Root    []byte `codec:"root" json:"root"`
}

type MerkleTreeID

type MerkleTreeID int
const (
	MerkleTreeID_MASTER       MerkleTreeID = 0
	MerkleTreeID_KBFS_PUBLIC  MerkleTreeID = 1
	MerkleTreeID_KBFS_PRIVATE MerkleTreeID = 2
)

func (MerkleTreeID) Number

func (m MerkleTreeID) Number() int

func (MerkleTreeID) String

func (m MerkleTreeID) String() string

type MetadataClient

type MetadataClient struct {
	Cli rpc.GenericClient
}

func (MetadataClient) Authenticate

func (c MetadataClient) Authenticate(ctx context.Context, signature string) (res int, err error)

func (MetadataClient) DeleteKey

func (c MetadataClient) DeleteKey(ctx context.Context, __arg DeleteKeyArg) (err error)

func (MetadataClient) GetChallenge

func (c MetadataClient) GetChallenge(ctx context.Context) (res ChallengeInfo, err error)

func (MetadataClient) GetFolderHandle

func (c MetadataClient) GetFolderHandle(ctx context.Context, __arg GetFolderHandleArg) (res []byte, err error)

func (MetadataClient) GetFoldersForRekey

func (c MetadataClient) GetFoldersForRekey(ctx context.Context, deviceKID KID) (err error)

func (MetadataClient) GetKey

func (c MetadataClient) GetKey(ctx context.Context, __arg GetKeyArg) (res []byte, err error)

func (MetadataClient) GetLatestFolderHandle added in v1.0.16

func (c MetadataClient) GetLatestFolderHandle(ctx context.Context, folderID string) (res []byte, err error)

func (MetadataClient) GetMerkleNode

func (c MetadataClient) GetMerkleNode(ctx context.Context, hash string) (res []byte, err error)

func (MetadataClient) GetMerkleRoot

func (c MetadataClient) GetMerkleRoot(ctx context.Context, __arg GetMerkleRootArg) (res MerkleRoot, err error)

func (MetadataClient) GetMerkleRootLatest

func (c MetadataClient) GetMerkleRootLatest(ctx context.Context, treeID MerkleTreeID) (res MerkleRoot, err error)

func (MetadataClient) GetMerkleRootSince

func (c MetadataClient) GetMerkleRootSince(ctx context.Context, __arg GetMerkleRootSinceArg) (res MerkleRoot, err error)

func (MetadataClient) GetMetadata

func (c MetadataClient) GetMetadata(ctx context.Context, __arg GetMetadataArg) (res MetadataResponse, err error)

func (MetadataClient) Ping

func (c MetadataClient) Ping(ctx context.Context) (err error)

func (MetadataClient) Ping2 added in v1.0.17

func (c MetadataClient) Ping2(ctx context.Context) (res PingResponse, err error)

func (MetadataClient) PruneBranch

func (c MetadataClient) PruneBranch(ctx context.Context, __arg PruneBranchArg) (err error)

func (MetadataClient) PutKeys

func (c MetadataClient) PutKeys(ctx context.Context, __arg PutKeysArg) (err error)

func (MetadataClient) PutMetadata

func (c MetadataClient) PutMetadata(ctx context.Context, __arg PutMetadataArg) (err error)

func (MetadataClient) RegisterForUpdates

func (c MetadataClient) RegisterForUpdates(ctx context.Context, __arg RegisterForUpdatesArg) (err error)

func (MetadataClient) TruncateLock

func (c MetadataClient) TruncateLock(ctx context.Context, folderID string) (res bool, err error)

func (MetadataClient) TruncateUnlock

func (c MetadataClient) TruncateUnlock(ctx context.Context, folderID string) (res bool, err error)

type MetadataInterface

type MetadataInterface interface {
	GetChallenge(context.Context) (ChallengeInfo, error)
	Authenticate(context.Context, string) (int, error)
	PutMetadata(context.Context, PutMetadataArg) error
	GetMetadata(context.Context, GetMetadataArg) (MetadataResponse, error)
	RegisterForUpdates(context.Context, RegisterForUpdatesArg) error
	PruneBranch(context.Context, PruneBranchArg) error
	PutKeys(context.Context, PutKeysArg) error
	GetKey(context.Context, GetKeyArg) ([]byte, error)
	DeleteKey(context.Context, DeleteKeyArg) error
	TruncateLock(context.Context, string) (bool, error)
	TruncateUnlock(context.Context, string) (bool, error)
	GetFolderHandle(context.Context, GetFolderHandleArg) ([]byte, error)
	GetFoldersForRekey(context.Context, KID) error
	Ping(context.Context) error
	Ping2(context.Context) (PingResponse, error)
	GetLatestFolderHandle(context.Context, string) ([]byte, error)
	GetMerkleRoot(context.Context, GetMerkleRootArg) (MerkleRoot, error)
	GetMerkleRootLatest(context.Context, MerkleTreeID) (MerkleRoot, error)
	GetMerkleRootSince(context.Context, GetMerkleRootSinceArg) (MerkleRoot, error)
	GetMerkleNode(context.Context, string) ([]byte, error)
}

type MetadataResponse

type MetadataResponse struct {
	FolderID string    `codec:"folderID" json:"folderID"`
	MdBlocks []MDBlock `codec:"mdBlocks" json:"mdBlocks"`
}

type MetadataUpdateArg

type MetadataUpdateArg struct {
	FolderID string `codec:"folderID" json:"folderID"`
	Revision int64  `codec:"revision" json:"revision"`
}

type MetadataUpdateClient

type MetadataUpdateClient struct {
	Cli rpc.GenericClient
}

func (MetadataUpdateClient) FolderNeedsRekey

func (c MetadataUpdateClient) FolderNeedsRekey(ctx context.Context, __arg FolderNeedsRekeyArg) (err error)

func (MetadataUpdateClient) MetadataUpdate

func (c MetadataUpdateClient) MetadataUpdate(ctx context.Context, __arg MetadataUpdateArg) (err error)

type MetadataUpdateInterface

type MetadataUpdateInterface interface {
	MetadataUpdate(context.Context, MetadataUpdateArg) error
	FolderNeedsRekey(context.Context, FolderNeedsRekeyArg) error
}

type NaclDHKeyPrivate

type NaclDHKeyPrivate [32]byte

type NaclDHKeyPublic

type NaclDHKeyPublic [32]byte

type NaclSigningKeyPrivate

type NaclSigningKeyPrivate [64]byte

type NaclSigningKeyPublic

type NaclSigningKeyPublic [32]byte

type NotificationChannels

type NotificationChannels struct {
	Session   bool `codec:"session" json:"session"`
	Users     bool `codec:"users" json:"users"`
	Kbfs      bool `codec:"kbfs" json:"kbfs"`
	Tracking  bool `codec:"tracking" json:"tracking"`
	Favorites bool `codec:"favorites" json:"favorites"`
	Paperkeys bool `codec:"paperkeys" json:"paperkeys"`
	Keyfamily bool `codec:"keyfamily" json:"keyfamily"`
	Service   bool `codec:"service" json:"service"`
	App       bool `codec:"app" json:"app"`
}

type NotifyAppClient added in v1.0.17

type NotifyAppClient struct {
	Cli rpc.GenericClient
}

func (NotifyAppClient) Exit added in v1.0.17

func (c NotifyAppClient) Exit(ctx context.Context) (err error)

type NotifyAppInterface added in v1.0.17

type NotifyAppInterface interface {
	Exit(context.Context) error
}

type NotifyCtlClient

type NotifyCtlClient struct {
	Cli rpc.GenericClient
}

func (NotifyCtlClient) SetNotifications

func (c NotifyCtlClient) SetNotifications(ctx context.Context, channels NotificationChannels) (err error)

type NotifyCtlInterface

type NotifyCtlInterface interface {
	SetNotifications(context.Context, NotificationChannels) error
}

type NotifyFSClient

type NotifyFSClient struct {
	Cli rpc.GenericClient
}

func (NotifyFSClient) FSActivity

func (c NotifyFSClient) FSActivity(ctx context.Context, notification FSNotification) (err error)

type NotifyFSInterface

type NotifyFSInterface interface {
	FSActivity(context.Context, FSNotification) error
}

type NotifyFavoritesClient added in v1.0.16

type NotifyFavoritesClient struct {
	Cli rpc.GenericClient
}

func (NotifyFavoritesClient) FavoritesChanged added in v1.0.16

func (c NotifyFavoritesClient) FavoritesChanged(ctx context.Context, uid UID) (err error)

type NotifyFavoritesInterface added in v1.0.16

type NotifyFavoritesInterface interface {
	FavoritesChanged(context.Context, UID) error
}

type NotifyKeyfamilyClient added in v1.0.17

type NotifyKeyfamilyClient struct {
	Cli rpc.GenericClient
}

func (NotifyKeyfamilyClient) KeyfamilyChanged added in v1.0.17

func (c NotifyKeyfamilyClient) KeyfamilyChanged(ctx context.Context, uid UID) (err error)

type NotifyKeyfamilyInterface added in v1.0.17

type NotifyKeyfamilyInterface interface {
	KeyfamilyChanged(context.Context, UID) error
}

type NotifyPaperKeyClient added in v1.0.17

type NotifyPaperKeyClient struct {
	Cli rpc.GenericClient
}

func (NotifyPaperKeyClient) PaperKeyCached added in v1.0.17

func (c NotifyPaperKeyClient) PaperKeyCached(ctx context.Context, __arg PaperKeyCachedArg) (err error)

type NotifyPaperKeyInterface added in v1.0.17

type NotifyPaperKeyInterface interface {
	PaperKeyCached(context.Context, PaperKeyCachedArg) error
}

type NotifyServiceClient added in v1.0.17

type NotifyServiceClient struct {
	Cli rpc.GenericClient
}

func (NotifyServiceClient) Shutdown added in v1.0.17

func (c NotifyServiceClient) Shutdown(ctx context.Context) (err error)

type NotifyServiceInterface added in v1.0.17

type NotifyServiceInterface interface {
	Shutdown(context.Context) error
}

type NotifySessionClient

type NotifySessionClient struct {
	Cli rpc.GenericClient
}

func (NotifySessionClient) ClientOutOfDate

func (c NotifySessionClient) ClientOutOfDate(ctx context.Context, __arg ClientOutOfDateArg) (err error)

func (NotifySessionClient) LoggedIn

func (c NotifySessionClient) LoggedIn(ctx context.Context, username string) (err error)

func (NotifySessionClient) LoggedOut

func (c NotifySessionClient) LoggedOut(ctx context.Context) (err error)

type NotifySessionInterface

type NotifySessionInterface interface {
	LoggedOut(context.Context) error
	LoggedIn(context.Context, string) error
	ClientOutOfDate(context.Context, ClientOutOfDateArg) error
}

type NotifyTrackingClient

type NotifyTrackingClient struct {
	Cli rpc.GenericClient
}

func (NotifyTrackingClient) TrackingChanged

func (c NotifyTrackingClient) TrackingChanged(ctx context.Context, __arg TrackingChangedArg) (err error)

type NotifyTrackingInterface

type NotifyTrackingInterface interface {
	TrackingChanged(context.Context, TrackingChangedArg) error
}

type NotifyUsersClient

type NotifyUsersClient struct {
	Cli rpc.GenericClient
}

func (NotifyUsersClient) UserChanged

func (c NotifyUsersClient) UserChanged(ctx context.Context, uid UID) (err error)

type NotifyUsersInterface

type NotifyUsersInterface interface {
	UserChanged(context.Context, UID) error
}

type OkToCheckArg

type OkToCheckArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Name      string `codec:"name" json:"name"`
	Attempt   int    `codec:"attempt" json:"attempt"`
}

type OutOfDateInfo added in v1.0.17

type OutOfDateInfo struct {
	UpgradeTo     string `codec:"upgradeTo" json:"upgradeTo"`
	UpgradeURI    string `codec:"upgradeURI" json:"upgradeURI"`
	CustomMessage string `codec:"customMessage" json:"customMessage"`
}

type Outcome added in v1.0.17

type Outcome int
const (
	Outcome_NONE    Outcome = 0
	Outcome_FIXED   Outcome = 1
	Outcome_IGNORED Outcome = 2
)

type OutputInstructionsArg

type OutputInstructionsArg struct {
	SessionID    int    `codec:"sessionID" json:"sessionID"`
	Instructions Text   `codec:"instructions" json:"instructions"`
	Proof        string `codec:"proof" json:"proof"`
}

type OutputPrechecksArg

type OutputPrechecksArg struct {
	SessionID int  `codec:"sessionID" json:"sessionID"`
	Text      Text `codec:"text" json:"text"`
}

type OutputSignatureSuccessArg

type OutputSignatureSuccessArg struct {
	SessionID   int    `codec:"sessionID" json:"sessionID"`
	Fingerprint string `codec:"fingerprint" json:"fingerprint"`
	Username    string `codec:"username" json:"username"`
	SignedAt    Time   `codec:"signedAt" json:"signedAt"`
}

type PGPClient

type PGPClient struct {
	Cli rpc.GenericClient
}

func (PGPClient) PGPDecrypt

func (c PGPClient) PGPDecrypt(ctx context.Context, __arg PGPDecryptArg) (res PGPSigVerification, err error)

func (PGPClient) PGPDeletePrimary

func (c PGPClient) PGPDeletePrimary(ctx context.Context, sessionID int) (err error)

func (PGPClient) PGPEncrypt

func (c PGPClient) PGPEncrypt(ctx context.Context, __arg PGPEncryptArg) (err error)

func (PGPClient) PGPExport

func (c PGPClient) PGPExport(ctx context.Context, __arg PGPExportArg) (res []KeyInfo, err error)

Exports active PGP keys. Only allows armored export.

func (PGPClient) PGPExportByFingerprint

func (c PGPClient) PGPExportByFingerprint(ctx context.Context, __arg PGPExportByFingerprintArg) (res []KeyInfo, err error)

func (PGPClient) PGPExportByKID

func (c PGPClient) PGPExportByKID(ctx context.Context, __arg PGPExportByKIDArg) (res []KeyInfo, err error)

func (PGPClient) PGPImport

func (c PGPClient) PGPImport(ctx context.Context, __arg PGPImportArg) (err error)

func (PGPClient) PGPKeyGen

func (c PGPClient) PGPKeyGen(ctx context.Context, __arg PGPKeyGenArg) (err error)

func (PGPClient) PGPPull

func (c PGPClient) PGPPull(ctx context.Context, __arg PGPPullArg) (err error)

Download PGP keys for tracked users and update the local GPG keyring. If usernames is nonempty, update only those users.

func (PGPClient) PGPSelect

func (c PGPClient) PGPSelect(ctx context.Context, __arg PGPSelectArg) (err error)

Select an existing key and add to Keybase.

func (PGPClient) PGPSign

func (c PGPClient) PGPSign(ctx context.Context, __arg PGPSignArg) (err error)

func (PGPClient) PGPUpdate

func (c PGPClient) PGPUpdate(ctx context.Context, __arg PGPUpdateArg) (err error)

Push updated key(s) to the server.

func (PGPClient) PGPVerify

func (c PGPClient) PGPVerify(ctx context.Context, __arg PGPVerifyArg) (res PGPSigVerification, err error)

type PGPCreateUids

type PGPCreateUids struct {
	UseDefault bool          `codec:"useDefault" json:"useDefault"`
	Ids        []PGPIdentity `codec:"ids" json:"ids"`
}

type PGPDecryptArg

type PGPDecryptArg struct {
	SessionID int               `codec:"sessionID" json:"sessionID"`
	Source    Stream            `codec:"source" json:"source"`
	Sink      Stream            `codec:"sink" json:"sink"`
	Opts      PGPDecryptOptions `codec:"opts" json:"opts"`
}

type PGPDecryptOptions

type PGPDecryptOptions struct {
	AssertSigned bool   `codec:"assertSigned" json:"assertSigned"`
	SignedBy     string `codec:"signedBy" json:"signedBy"`
}

type PGPDeletePrimaryArg

type PGPDeletePrimaryArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type PGPEncryptArg

type PGPEncryptArg struct {
	SessionID int               `codec:"sessionID" json:"sessionID"`
	Source    Stream            `codec:"source" json:"source"`
	Sink      Stream            `codec:"sink" json:"sink"`
	Opts      PGPEncryptOptions `codec:"opts" json:"opts"`
}

type PGPEncryptOptions

type PGPEncryptOptions struct {
	Recipients []string `codec:"recipients" json:"recipients"`
	NoSign     bool     `codec:"noSign" json:"noSign"`
	NoSelf     bool     `codec:"noSelf" json:"noSelf"`
	BinaryOut  bool     `codec:"binaryOut" json:"binaryOut"`
	KeyQuery   string   `codec:"keyQuery" json:"keyQuery"`
}

type PGPExportArg

type PGPExportArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	Options   PGPQuery `codec:"options" json:"options"`
}

type PGPExportByFingerprintArg

type PGPExportByFingerprintArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	Options   PGPQuery `codec:"options" json:"options"`
}

type PGPExportByKIDArg

type PGPExportByKIDArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	Options   PGPQuery `codec:"options" json:"options"`
}

type PGPIdentity

type PGPIdentity struct {
	Username string `codec:"username" json:"username"`
	Comment  string `codec:"comment" json:"comment"`
	Email    string `codec:"email" json:"email"`
}

type PGPImportArg

type PGPImportArg struct {
	SessionID  int    `codec:"sessionID" json:"sessionID"`
	Key        []byte `codec:"key" json:"key"`
	PushSecret bool   `codec:"pushSecret" json:"pushSecret"`
}

type PGPInterface

type PGPInterface interface {
	PGPSign(context.Context, PGPSignArg) error
	// Download PGP keys for tracked users and update the local GPG keyring.
	// If usernames is nonempty, update only those users.
	PGPPull(context.Context, PGPPullArg) error
	PGPEncrypt(context.Context, PGPEncryptArg) error
	PGPDecrypt(context.Context, PGPDecryptArg) (PGPSigVerification, error)
	PGPVerify(context.Context, PGPVerifyArg) (PGPSigVerification, error)
	PGPImport(context.Context, PGPImportArg) error
	// Exports active PGP keys. Only allows armored export.
	PGPExport(context.Context, PGPExportArg) ([]KeyInfo, error)
	PGPExportByFingerprint(context.Context, PGPExportByFingerprintArg) ([]KeyInfo, error)
	PGPExportByKID(context.Context, PGPExportByKIDArg) ([]KeyInfo, error)
	PGPKeyGen(context.Context, PGPKeyGenArg) error
	PGPDeletePrimary(context.Context, int) error
	// Select an existing key and add to Keybase.
	PGPSelect(context.Context, PGPSelectArg) error
	// Push updated key(s) to the server.
	PGPUpdate(context.Context, PGPUpdateArg) error
}

type PGPKeyGenArg

type PGPKeyGenArg struct {
	SessionID   int           `codec:"sessionID" json:"sessionID"`
	PrimaryBits int           `codec:"primaryBits" json:"primaryBits"`
	SubkeyBits  int           `codec:"subkeyBits" json:"subkeyBits"`
	CreateUids  PGPCreateUids `codec:"createUids" json:"createUids"`
	AllowMulti  bool          `codec:"allowMulti" json:"allowMulti"`
	DoExport    bool          `codec:"doExport" json:"doExport"`
	PushSecret  bool          `codec:"pushSecret" json:"pushSecret"`
}

type PGPProvisionArg added in v1.0.17

type PGPProvisionArg struct {
	SessionID  int    `codec:"sessionID" json:"sessionID"`
	Username   string `codec:"username" json:"username"`
	Passphrase string `codec:"passphrase" json:"passphrase"`
	DeviceName string `codec:"deviceName" json:"deviceName"`
}

type PGPPullArg

type PGPPullArg struct {
	SessionID   int      `codec:"sessionID" json:"sessionID"`
	UserAsserts []string `codec:"userAsserts" json:"userAsserts"`
}

type PGPQuery

type PGPQuery struct {
	Secret     bool   `codec:"secret" json:"secret"`
	Query      string `codec:"query" json:"query"`
	ExactMatch bool   `codec:"exactMatch" json:"exactMatch"`
}

type PGPSelectArg

type PGPSelectArg struct {
	SessionID        int    `codec:"sessionID" json:"sessionID"`
	FingerprintQuery string `codec:"fingerprintQuery" json:"fingerprintQuery"`
	AllowMulti       bool   `codec:"allowMulti" json:"allowMulti"`
	SkipImport       bool   `codec:"skipImport" json:"skipImport"`
	OnlyImport       bool   `codec:"onlyImport" json:"onlyImport"`
}

type PGPSigVerification

type PGPSigVerification struct {
	IsSigned bool      `codec:"isSigned" json:"isSigned"`
	Verified bool      `codec:"verified" json:"verified"`
	Signer   User      `codec:"signer" json:"signer"`
	SignKey  PublicKey `codec:"signKey" json:"signKey"`
}

PGPSigVerification is returned by pgpDecrypt and pgpVerify with information about a the signature verification. If isSigned is false, there was no signature, and the rest of the fields should be ignored.

type PGPSignArg

type PGPSignArg struct {
	SessionID int            `codec:"sessionID" json:"sessionID"`
	Source    Stream         `codec:"source" json:"source"`
	Sink      Stream         `codec:"sink" json:"sink"`
	Opts      PGPSignOptions `codec:"opts" json:"opts"`
}

type PGPSignOptions

type PGPSignOptions struct {
	KeyQuery  string   `codec:"keyQuery" json:"keyQuery"`
	Mode      SignMode `codec:"mode" json:"mode"`
	BinaryIn  bool     `codec:"binaryIn" json:"binaryIn"`
	BinaryOut bool     `codec:"binaryOut" json:"binaryOut"`
}

type PGPUiClient

type PGPUiClient struct {
	Cli rpc.GenericClient
}

func (PGPUiClient) OutputSignatureSuccess

func (c PGPUiClient) OutputSignatureSuccess(ctx context.Context, __arg OutputSignatureSuccessArg) (err error)

type PGPUiInterface

type PGPUiInterface interface {
	OutputSignatureSuccess(context.Context, OutputSignatureSuccessArg) error
}

type PGPUpdateArg

type PGPUpdateArg struct {
	SessionID    int      `codec:"sessionID" json:"sessionID"`
	All          bool     `codec:"all" json:"all"`
	Fingerprints []string `codec:"fingerprints" json:"fingerprints"`
}

type PGPVerifyArg

type PGPVerifyArg struct {
	SessionID int              `codec:"sessionID" json:"sessionID"`
	Source    Stream           `codec:"source" json:"source"`
	Opts      PGPVerifyOptions `codec:"opts" json:"opts"`
}

type PGPVerifyOptions

type PGPVerifyOptions struct {
	SignedBy  string `codec:"signedBy" json:"signedBy"`
	Signature []byte `codec:"signature" json:"signature"`
}

type PanicArg

type PanicArg struct {
	Message string `codec:"message" json:"message"`
}

type PaperKeyArg

type PaperKeyArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type PaperKeyCachedArg added in v1.0.17

type PaperKeyCachedArg struct {
	Uid    UID `codec:"uid" json:"uid"`
	EncKID KID `codec:"encKID" json:"encKID"`
	SigKID KID `codec:"sigKID" json:"sigKID"`
}

type PaperKeySubmitArg added in v1.0.17

type PaperKeySubmitArg struct {
	SessionID   int    `codec:"sessionID" json:"sessionID"`
	PaperPhrase string `codec:"paperPhrase" json:"paperPhrase"`
}

type PaperProvisionArg added in v1.0.16

type PaperProvisionArg struct {
	SessionID  int    `codec:"sessionID" json:"sessionID"`
	Username   string `codec:"username" json:"username"`
	DeviceName string `codec:"deviceName" json:"deviceName"`
	PaperKey   string `codec:"paperKey" json:"paperKey"`
}

type PaperprovisionClient added in v1.0.16

type PaperprovisionClient struct {
	Cli rpc.GenericClient
}

func (PaperprovisionClient) PaperProvision added in v1.0.16

func (c PaperprovisionClient) PaperProvision(ctx context.Context, __arg PaperProvisionArg) (err error)

Performs paper provision. If the current device isn't provisioned, this function will provision it.

type PaperprovisionInterface added in v1.0.16

type PaperprovisionInterface interface {
	// Performs paper provision.
	// If the current device isn't provisioned, this function will
	// provision it.
	PaperProvision(context.Context, PaperProvisionArg) error
}

type PassphraseChangeArg

type PassphraseChangeArg struct {
	SessionID     int    `codec:"sessionID" json:"sessionID"`
	OldPassphrase string `codec:"oldPassphrase" json:"oldPassphrase"`
	Passphrase    string `codec:"passphrase" json:"passphrase"`
	Force         bool   `codec:"force" json:"force"`
}

type PassphraseCommonClient

type PassphraseCommonClient struct {
	Cli rpc.GenericClient
}

type PassphraseCommonInterface

type PassphraseCommonInterface interface {
}

type PassphrasePromptArg

type PassphrasePromptArg struct {
	SessionID int         `codec:"sessionID" json:"sessionID"`
	GuiArg    GUIEntryArg `codec:"guiArg" json:"guiArg"`
}

type PassphraseStream

type PassphraseStream struct {
	PassphraseStream []byte `codec:"passphraseStream" json:"passphraseStream"`
	Generation       int    `codec:"generation" json:"generation"`
}

type PassphraseType

type PassphraseType int
const (
	PassphraseType_NONE               PassphraseType = 0
	PassphraseType_PAPER_KEY          PassphraseType = 1
	PassphraseType_PASS_PHRASE        PassphraseType = 2
	PassphraseType_VERIFY_PASS_PHRASE PassphraseType = 3
)

type Ping2Arg added in v1.0.17

type Ping2Arg struct {
}

type PingArg

type PingArg struct {
}

type PingResponse added in v1.0.17

type PingResponse struct {
	Timestamp Time `codec:"timestamp" json:"timestamp"`
}

type PlatformInfo

type PlatformInfo struct {
	Os        string `codec:"os" json:"os"`
	Arch      string `codec:"arch" json:"arch"`
	GoVersion string `codec:"goVersion" json:"goVersion"`
}

type PostArg added in v1.0.17

type PostArg struct {
	Endpoint      string         `codec:"endpoint" json:"endpoint"`
	Args          []StringKVPair `codec:"args" json:"args"`
	HttpStatus    []int          `codec:"httpStatus" json:"httpStatus"`
	AppStatusCode []int          `codec:"appStatusCode" json:"appStatusCode"`
}

func (PostArg) GetAppStatusCodes added in v1.0.17

func (a PostArg) GetAppStatusCodes() []int

func (PostArg) GetEndpoint added in v1.0.17

func (a PostArg) GetEndpoint() string

func (PostArg) GetHTTPArgs added in v1.0.17

func (a PostArg) GetHTTPArgs() []StringKVPair

func (PostArg) GetHttpStatuses added in v1.0.17

func (a PostArg) GetHttpStatuses() []int

type PostJSONArg added in v1.0.17

type PostJSONArg struct {
	Endpoint      string         `codec:"endpoint" json:"endpoint"`
	Args          []StringKVPair `codec:"args" json:"args"`
	JSONPayload   []StringKVPair `codec:"JSONPayload" json:"JSONPayload"`
	HttpStatus    []int          `codec:"httpStatus" json:"httpStatus"`
	AppStatusCode []int          `codec:"appStatusCode" json:"appStatusCode"`
}

func (PostJSONArg) GetAppStatusCodes added in v1.0.17

func (a PostJSONArg) GetAppStatusCodes() []int

func (PostJSONArg) GetEndpoint added in v1.0.17

func (a PostJSONArg) GetEndpoint() string

func (PostJSONArg) GetHTTPArgs added in v1.0.17

func (a PostJSONArg) GetHTTPArgs() []StringKVPair

func (PostJSONArg) GetHttpStatuses added in v1.0.17

func (a PostJSONArg) GetHttpStatuses() []int

type PreProofWarningArg

type PreProofWarningArg struct {
	SessionID int  `codec:"sessionID" json:"sessionID"`
	Text      Text `codec:"text" json:"text"`
}

type ProblemSet added in v1.0.17

type ProblemSet struct {
	User User         `codec:"user" json:"user"`
	Kid  KID          `codec:"kid" json:"kid"`
	Tlfs []ProblemTLF `codec:"tlfs" json:"tlfs"`
}

ProblemSet is for a particular (user,kid) that initiated a rekey problem. This problem consists of one or more problem TLFs, which are individually scored and have attendant solutions --- devices that if they came online can rekey and solve the ProblemTLF.

type ProblemSetDevices added in v1.0.17

type ProblemSetDevices struct {
	ProblemSet ProblemSet `codec:"problemSet" json:"problemSet"`
	Devices    []Device   `codec:"devices" json:"devices"`
}

type ProblemTLF added in v1.0.17

type ProblemTLF struct {
	Tlf           TLF   `codec:"tlf" json:"tlf"`
	Score         int   `codec:"score" json:"score"`
	Solution_kids []KID `codec:"solution_kids" json:"solution_kids"`
}

type Process

type Process struct {
	Pid             string           `codec:"pid" json:"pid"`
	Command         string           `codec:"command" json:"command"`
	FileDescriptors []FileDescriptor `codec:"fileDescriptors" json:"fileDescriptors"`
}

type ProcessClient

type ProcessClient struct {
	Cli rpc.GenericClient
}

type ProcessInterface

type ProcessInterface interface {
}

type PromptDefault

type PromptDefault int
const (
	PromptDefault_NONE PromptDefault = 0
	PromptDefault_YES  PromptDefault = 1
	PromptDefault_NO   PromptDefault = 2
)

type PromptNewDeviceNameArg

type PromptNewDeviceNameArg struct {
	SessionID       int      `codec:"sessionID" json:"sessionID"`
	ExistingDevices []string `codec:"existingDevices" json:"existingDevices"`
	ErrorMessage    string   `codec:"errorMessage" json:"errorMessage"`
}

type PromptOverwriteArg

type PromptOverwriteArg struct {
	SessionID int                 `codec:"sessionID" json:"sessionID"`
	Account   string              `codec:"account" json:"account"`
	Typ       PromptOverwriteType `codec:"typ" json:"typ"`
}

type PromptOverwriteType

type PromptOverwriteType int
const (
	PromptOverwriteType_SOCIAL PromptOverwriteType = 0
	PromptOverwriteType_SITE   PromptOverwriteType = 1
)

type PromptRevokePaperKeysArg

type PromptRevokePaperKeysArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Device    Device `codec:"device" json:"device"`
	Index     int    `codec:"index" json:"index"`
}

type PromptUsernameArg

type PromptUsernameArg struct {
	SessionID int     `codec:"sessionID" json:"sessionID"`
	Prompt    string  `codec:"prompt" json:"prompt"`
	PrevError *Status `codec:"prevError,omitempty" json:"prevError,omitempty"`
}

type PromptYesNoArg

type PromptYesNoArg struct {
	SessionID     int           `codec:"sessionID" json:"sessionID"`
	Text          Text          `codec:"text" json:"text"`
	PromptDefault PromptDefault `codec:"promptDefault" json:"promptDefault"`
}

type ProofResult

type ProofResult struct {
	State  ProofState  `codec:"state" json:"state"`
	Status ProofStatus `codec:"status" json:"status"`
	Desc   string      `codec:"desc" json:"desc"`
}

type ProofState

type ProofState int
const (
	ProofState_NONE         ProofState = 0
	ProofState_OK           ProofState = 1
	ProofState_TEMP_FAILURE ProofState = 2
	ProofState_PERM_FAILURE ProofState = 3
	ProofState_LOOKING      ProofState = 4
	ProofState_SUPERSEDED   ProofState = 5
	ProofState_POSTED       ProofState = 6
	ProofState_REVOKED      ProofState = 7
)

type ProofStatus

type ProofStatus int

3: It's been found in the hunt, but not proven yet 1xx: Retryable soft errors 2xx: Will likely result in a hard error, if repeated enough 3xx: Hard final errors

const (
	ProofStatus_NONE              ProofStatus = 0
	ProofStatus_OK                ProofStatus = 1
	ProofStatus_LOCAL             ProofStatus = 2
	ProofStatus_FOUND             ProofStatus = 3
	ProofStatus_BASE_ERROR        ProofStatus = 100
	ProofStatus_HOST_UNREACHABLE  ProofStatus = 101
	ProofStatus_PERMISSION_DENIED ProofStatus = 103
	ProofStatus_FAILED_PARSE      ProofStatus = 106
	ProofStatus_DNS_ERROR         ProofStatus = 107
	ProofStatus_AUTH_FAILED       ProofStatus = 108
	ProofStatus_HTTP_429          ProofStatus = 129
	ProofStatus_HTTP_500          ProofStatus = 150
	ProofStatus_TIMEOUT           ProofStatus = 160
	ProofStatus_INTERNAL_ERROR    ProofStatus = 170
	ProofStatus_BASE_HARD_ERROR   ProofStatus = 200
	ProofStatus_NOT_FOUND         ProofStatus = 201
	ProofStatus_CONTENT_FAILURE   ProofStatus = 202
	ProofStatus_BAD_USERNAME      ProofStatus = 203
	ProofStatus_BAD_REMOTE_ID     ProofStatus = 204
	ProofStatus_TEXT_NOT_FOUND    ProofStatus = 205
	ProofStatus_BAD_ARGS          ProofStatus = 206
	ProofStatus_CONTENT_MISSING   ProofStatus = 207
	ProofStatus_TITLE_NOT_FOUND   ProofStatus = 208
	ProofStatus_SERVICE_ERROR     ProofStatus = 209
	ProofStatus_TOR_SKIPPED       ProofStatus = 210
	ProofStatus_TOR_INCOMPATIBLE  ProofStatus = 211
	ProofStatus_HTTP_300          ProofStatus = 230
	ProofStatus_HTTP_400          ProofStatus = 240
	ProofStatus_HTTP_OTHER        ProofStatus = 260
	ProofStatus_EMPTY_JSON        ProofStatus = 270
	ProofStatus_DELETED           ProofStatus = 301
	ProofStatus_SERVICE_DEAD      ProofStatus = 302
	ProofStatus_BAD_SIGNATURE     ProofStatus = 303
	ProofStatus_BAD_API_URL       ProofStatus = 304
	ProofStatus_UNKNOWN_TYPE      ProofStatus = 305
	ProofStatus_NO_HINT           ProofStatus = 306
	ProofStatus_BAD_HINT_TEXT     ProofStatus = 307
)

type ProofType

type ProofType int
const (
	ProofType_NONE             ProofType = 0
	ProofType_KEYBASE          ProofType = 1
	ProofType_TWITTER          ProofType = 2
	ProofType_GITHUB           ProofType = 3
	ProofType_REDDIT           ProofType = 4
	ProofType_COINBASE         ProofType = 5
	ProofType_HACKERNEWS       ProofType = 6
	ProofType_GENERIC_WEB_SITE ProofType = 1000
	ProofType_DNS              ProofType = 1001
	ProofType_PGP              ProofType = 1002
	ProofType_ROOTER           ProofType = 100001
)

type Proofs

type Proofs struct {
	Social     []TrackProof `codec:"social" json:"social"`
	Web        []WebProof   `codec:"web" json:"web"`
	PublicKeys []PublicKey  `codec:"publicKeys" json:"publicKeys"`
}

type ProveClient

type ProveClient struct {
	Cli rpc.GenericClient
}

func (ProveClient) CheckProof

func (c ProveClient) CheckProof(ctx context.Context, __arg CheckProofArg) (res CheckProofStatus, err error)

func (ProveClient) StartProof

func (c ProveClient) StartProof(ctx context.Context, __arg StartProofArg) (res StartProofResult, err error)

type ProveCommonClient added in v1.0.17

type ProveCommonClient struct {
	Cli rpc.GenericClient
}

type ProveCommonInterface added in v1.0.17

type ProveCommonInterface interface {
}

type ProveInterface

type ProveInterface interface {
	StartProof(context.Context, StartProofArg) (StartProofResult, error)
	CheckProof(context.Context, CheckProofArg) (CheckProofStatus, error)
}

type ProveUiClient

type ProveUiClient struct {
	Cli rpc.GenericClient
}

func (ProveUiClient) DisplayRecheckWarning

func (c ProveUiClient) DisplayRecheckWarning(ctx context.Context, __arg DisplayRecheckWarningArg) (err error)

func (ProveUiClient) OkToCheck

func (c ProveUiClient) OkToCheck(ctx context.Context, __arg OkToCheckArg) (res bool, err error)

func (ProveUiClient) OutputInstructions

func (c ProveUiClient) OutputInstructions(ctx context.Context, __arg OutputInstructionsArg) (err error)

func (ProveUiClient) OutputPrechecks

func (c ProveUiClient) OutputPrechecks(ctx context.Context, __arg OutputPrechecksArg) (err error)

func (ProveUiClient) PreProofWarning

func (c ProveUiClient) PreProofWarning(ctx context.Context, __arg PreProofWarningArg) (res bool, err error)

func (ProveUiClient) PromptOverwrite

func (c ProveUiClient) PromptOverwrite(ctx context.Context, __arg PromptOverwriteArg) (res bool, err error)

func (ProveUiClient) PromptUsername

func (c ProveUiClient) PromptUsername(ctx context.Context, __arg PromptUsernameArg) (res string, err error)

type ProveUiInterface

type ProveUiInterface interface {
	PromptOverwrite(context.Context, PromptOverwriteArg) (bool, error)
	PromptUsername(context.Context, PromptUsernameArg) (string, error)
	OutputPrechecks(context.Context, OutputPrechecksArg) error
	PreProofWarning(context.Context, PreProofWarningArg) (bool, error)
	OutputInstructions(context.Context, OutputInstructionsArg) error
	OkToCheck(context.Context, OkToCheckArg) (bool, error)
	DisplayRecheckWarning(context.Context, DisplayRecheckWarningArg) error
}

type ProvisionMethod

type ProvisionMethod int
const (
	ProvisionMethod_DEVICE     ProvisionMethod = 0
	ProvisionMethod_PAPER_KEY  ProvisionMethod = 1
	ProvisionMethod_PASSPHRASE ProvisionMethod = 2
	ProvisionMethod_GPG_IMPORT ProvisionMethod = 3
	ProvisionMethod_GPG_SIGN   ProvisionMethod = 4
)

type ProvisionUiClient

type ProvisionUiClient struct {
	Cli rpc.GenericClient
}

func (ProvisionUiClient) ChooseDevice

func (c ProvisionUiClient) ChooseDevice(ctx context.Context, __arg ChooseDeviceArg) (res DeviceID, err error)

func (ProvisionUiClient) ChooseDeviceType

func (c ProvisionUiClient) ChooseDeviceType(ctx context.Context, __arg ChooseDeviceTypeArg) (res DeviceType, err error)

If provisioning via device, this will be called so user can select the provisioner/provisionee device type: desktop or mobile. If selecting the existing device type, set kind to EXISTING_DEVICE_0. If selecting the new device type, set kind to NEW_DEVICE_1.

func (ProvisionUiClient) ChooseGPGMethod

func (c ProvisionUiClient) ChooseGPGMethod(ctx context.Context, __arg ChooseGPGMethodArg) (res GPGMethod, err error)

Called during device provisioning for the user to select a GPG method, either import the key into keybase's local keyring or use GPG to sign a provisioning statement.

The keys are provided for display purposes, so the UI can do something like "We found the following GPG keys on this machine. How would you like to use one of them to provision this device?"

After this, gpg_ui.selectKey will be called (if there are multiple keys available).

func (ProvisionUiClient) ChooseProvisioningMethod

func (c ProvisionUiClient) ChooseProvisioningMethod(ctx context.Context, __arg ChooseProvisioningMethodArg) (res ProvisionMethod, err error)

DEPRECATED: Called during device provisioning for the user to select a method for provisioning. gpgOption will be true if GPG should be offered as an option.

func (ProvisionUiClient) DisplayAndPromptSecret

func (c ProvisionUiClient) DisplayAndPromptSecret(ctx context.Context, __arg DisplayAndPromptSecretArg) (res SecretResponse, err error)

DisplayAndPromptSecret displays a secret that the user can enter into the other device. It also can return a secret that the user enters into this device (from the other device). If it does not return a secret, it will be canceled when this device receives the secret via kex2.

func (ProvisionUiClient) DisplaySecretExchanged

func (c ProvisionUiClient) DisplaySecretExchanged(ctx context.Context, sessionID int) (err error)

DisplaySecretExchanged is called when the kex2 secret has successfully been exchanged by the two devices.

func (ProvisionUiClient) PromptNewDeviceName

func (c ProvisionUiClient) PromptNewDeviceName(ctx context.Context, __arg PromptNewDeviceNameArg) (res string, err error)

PromptNewDeviceName is called when the device provisioning process needs a name for the new device. To help the clients not send a duplicate name, existingDevices is populated with the current device names for the user. If the device name returned to the service is invalid or already taken, it will call this again with an error message in errorMessage.

func (ProvisionUiClient) ProvisioneeSuccess

func (c ProvisionUiClient) ProvisioneeSuccess(ctx context.Context, __arg ProvisioneeSuccessArg) (err error)

ProvisioneeSuccess is called on provisionee when it is successfully provisioned.

func (ProvisionUiClient) ProvisionerSuccess

func (c ProvisionUiClient) ProvisionerSuccess(ctx context.Context, __arg ProvisionerSuccessArg) (err error)

ProvisionerSuccess is called on provisioner when it successfully provisions another device.

func (ProvisionUiClient) SwitchToGPGSignOK

func (c ProvisionUiClient) SwitchToGPGSignOK(ctx context.Context, __arg SwitchToGPGSignOKArg) (res bool, err error)

If there was an error importing a gpg key into the local keyring, tell the user and offer to switch to GPG signing with this key. Return true to switch to GPG signing, false to abort provisioning.

type ProvisionUiInterface

type ProvisionUiInterface interface {
	// DEPRECATED:
	// Called during device provisioning for the user to select a
	// method for provisioning.  gpgOption will be true if GPG
	// should be offered as an option.
	ChooseProvisioningMethod(context.Context, ChooseProvisioningMethodArg) (ProvisionMethod, error)
	// Called during device provisioning for the user to select a
	// GPG method, either import the key into keybase's local keyring
	// or use GPG to sign a provisioning statement.
	//
	// The keys are provided for display purposes, so the UI can
	// do something like "We found the following GPG keys on this
	// machine.  How would you like to use one of them to provision
	// this device?"
	//
	// After this, gpg_ui.selectKey will be called (if there are
	// multiple keys available).
	ChooseGPGMethod(context.Context, ChooseGPGMethodArg) (GPGMethod, error)
	// If there was an error importing a gpg key into the local
	// keyring, tell the user and offer to switch to GPG signing
	// with this key.  Return true to switch to GPG signing,
	// false to abort provisioning.
	SwitchToGPGSignOK(context.Context, SwitchToGPGSignOKArg) (bool, error)
	ChooseDevice(context.Context, ChooseDeviceArg) (DeviceID, error)
	// If provisioning via device, this will be called so user can select the provisioner/provisionee device type: desktop or mobile.
	// If selecting the existing device type, set kind to EXISTING_DEVICE_0.
	// If selecting the new device type, set kind to NEW_DEVICE_1.
	ChooseDeviceType(context.Context, ChooseDeviceTypeArg) (DeviceType, error)
	// DisplayAndPromptSecret displays a secret that the user can enter into the other device.
	// It also can return a secret that the user enters into this device (from the other device).
	// If it does not return a secret, it will be canceled when this device receives the secret via kex2.
	DisplayAndPromptSecret(context.Context, DisplayAndPromptSecretArg) (SecretResponse, error)
	// DisplaySecretExchanged is called when the kex2 secret has successfully been exchanged by the two
	// devices.
	DisplaySecretExchanged(context.Context, int) error
	// PromptNewDeviceName is called when the device provisioning process needs a name for the new device.
	// To help the clients not send a duplicate name, existingDevices is populated with the current device
	// names for the user.  If the device name returned to the service is invalid or already
	// taken, it will call this again with an error message in errorMessage.
	PromptNewDeviceName(context.Context, PromptNewDeviceNameArg) (string, error)
	// ProvisioneeSuccess is called on provisionee when it is successfully provisioned.
	ProvisioneeSuccess(context.Context, ProvisioneeSuccessArg) error
	// ProvisionerSuccess is called on provisioner when it successfully provisions another device.
	ProvisionerSuccess(context.Context, ProvisionerSuccessArg) error
}

type ProvisioneeSuccessArg

type ProvisioneeSuccessArg struct {
	SessionID  int    `codec:"sessionID" json:"sessionID"`
	Username   string `codec:"username" json:"username"`
	DeviceName string `codec:"deviceName" json:"deviceName"`
}

type ProvisionerSuccessArg

type ProvisionerSuccessArg struct {
	SessionID  int    `codec:"sessionID" json:"sessionID"`
	DeviceName string `codec:"deviceName" json:"deviceName"`
	DeviceType string `codec:"deviceType" json:"deviceType"`
}

type PruneBranchArg

type PruneBranchArg struct {
	FolderID string            `codec:"folderID" json:"folderID"`
	BranchID string            `codec:"branchID" json:"branchID"`
	LogTags  map[string]string `codec:"logTags" json:"logTags"`
}

type PublicKey

type PublicKey struct {
	KID               KID           `codec:"KID" json:"KID"`
	PGPFingerprint    string        `codec:"PGPFingerprint" json:"PGPFingerprint"`
	PGPIdentities     []PGPIdentity `codec:"PGPIdentities" json:"PGPIdentities"`
	IsSibkey          bool          `codec:"isSibkey" json:"isSibkey"`
	IsEldest          bool          `codec:"isEldest" json:"isEldest"`
	ParentID          string        `codec:"parentID" json:"parentID"`
	DeviceID          DeviceID      `codec:"deviceID" json:"deviceID"`
	DeviceDescription string        `codec:"deviceDescription" json:"deviceDescription"`
	DeviceType        string        `codec:"deviceType" json:"deviceType"`
	CTime             Time          `codec:"cTime" json:"cTime"`
	ETime             Time          `codec:"eTime" json:"eTime"`
}

type PushOutOfBandMessagesArg added in v1.0.17

type PushOutOfBandMessagesArg struct {
	Oobm []gregor1.OutOfBandMessage `codec:"oobm" json:"oobm"`
}

type PushReason added in v1.0.17

type PushReason int
const (
	PushReason_NONE        PushReason = 0
	PushReason_RECONNECTED PushReason = 1
	PushReason_NEW_DATA    PushReason = 2
)

type PushStateArg added in v1.0.17

type PushStateArg struct {
	State  gregor1.State `codec:"state" json:"state"`
	Reason PushReason    `codec:"reason" json:"reason"`
}

type PutBlockArg

type PutBlockArg struct {
	Bid      BlockIdCombo `codec:"bid" json:"bid"`
	Folder   string       `codec:"folder" json:"folder"`
	BlockKey string       `codec:"blockKey" json:"blockKey"`
	Buf      []byte       `codec:"buf" json:"buf"`
}

type PutKeysArg

type PutKeysArg struct {
	KeyHalves []KeyHalf         `codec:"keyHalves" json:"keyHalves"`
	LogTags   map[string]string `codec:"logTags" json:"logTags"`
}

type PutMetadataArg

type PutMetadataArg struct {
	MdBlock MDBlock           `codec:"mdBlock" json:"mdBlock"`
	LogTags map[string]string `codec:"logTags" json:"logTags"`
}

type QuotaClient

type QuotaClient struct {
	Cli rpc.GenericClient
}

func (QuotaClient) VerifySession

func (c QuotaClient) VerifySession(ctx context.Context, session string) (res VerifySessionRes, err error)

type QuotaInterface

type QuotaInterface interface {
	VerifySession(context.Context, string) (VerifySessionRes, error)
}

type ReadArg

type ReadArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	S         Stream `codec:"s" json:"s"`
	Sz        int    `codec:"sz" json:"sz"`
}

type RecoverAccountFromEmailAddressArg

type RecoverAccountFromEmailAddressArg struct {
	Email string `codec:"email" json:"email"`
}

type RefreshArg added in v1.0.17

type RefreshArg struct {
	SessionID         int               `codec:"sessionID" json:"sessionID"`
	ProblemSetDevices ProblemSetDevices `codec:"problemSetDevices" json:"problemSetDevices"`
}

type RegisterBTCArg

type RegisterBTCArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Address   string `codec:"address" json:"address"`
	Force     bool   `codec:"force" json:"force"`
}

type RegisterForUpdatesArg

type RegisterForUpdatesArg struct {
	FolderID     string            `codec:"folderID" json:"folderID"`
	CurrRevision int64             `codec:"currRevision" json:"currRevision"`
	LogTags      map[string]string `codec:"logTags" json:"logTags"`
}

type RegisterGregorFirehoseArg added in v1.0.17

type RegisterGregorFirehoseArg struct {
}

type RegisterIdentifyUIArg

type RegisterIdentifyUIArg struct {
}

type RegisterLoggerArg

type RegisterLoggerArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	Name      string   `codec:"name" json:"name"`
	Level     LogLevel `codec:"level" json:"level"`
}

type RegisterRekeyUIArg added in v1.0.17

type RegisterRekeyUIArg struct {
}

type RegisterSecretUIArg

type RegisterSecretUIArg struct {
}

type RegisterUpdateUIArg

type RegisterUpdateUIArg struct {
}

type RekeyClient added in v1.0.17

type RekeyClient struct {
	Cli rpc.GenericClient
}

func (RekeyClient) DebugShowRekeyStatus added in v1.0.17

func (c RekeyClient) DebugShowRekeyStatus(ctx context.Context, sessionID int) (err error)

DebugShowRekeyStatus is used by the CLI to kick off a "ShowRekeyStatus" window for the current user.

func (RekeyClient) GetPendingRekeyStatus added in v1.0.17

func (c RekeyClient) GetPendingRekeyStatus(ctx context.Context, sessionID int) (res ProblemSetDevices, err error)

GetPendingRekeyStatus returns the pending ProblemSetDevices.

func (RekeyClient) RekeyStatusFinish added in v1.0.17

func (c RekeyClient) RekeyStatusFinish(ctx context.Context, sessionID int) (res Outcome, err error)

rekeyStatusFinish is called when work is completed on a given RekeyStatus window. The Outcome can be Fixed or Ignored.

func (RekeyClient) ShowPendingRekeyStatus added in v1.0.17

func (c RekeyClient) ShowPendingRekeyStatus(ctx context.Context, sessionID int) (err error)

ShowPendingRekeyStatus shows either pending gregor-initiated rekey harassments or nothing if none were pending.

type RekeyInterface added in v1.0.17

type RekeyInterface interface {
	// ShowPendingRekeyStatus shows either pending gregor-initiated rekey harassments
	// or nothing if none were pending.
	ShowPendingRekeyStatus(context.Context, int) error
	// GetPendingRekeyStatus returns the pending ProblemSetDevices.
	GetPendingRekeyStatus(context.Context, int) (ProblemSetDevices, error)
	// DebugShowRekeyStatus is used by the CLI to kick off a "ShowRekeyStatus" window for
	// the current user.
	DebugShowRekeyStatus(context.Context, int) error
	// rekeyStatusFinish is called when work is completed on a given RekeyStatus window. The Outcome
	// can be Fixed or Ignored.
	RekeyStatusFinish(context.Context, int) (Outcome, error)
}

type RekeyStatusFinishArg added in v1.0.17

type RekeyStatusFinishArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type RekeyUIClient added in v1.0.17

type RekeyUIClient struct {
	Cli rpc.GenericClient
}

func (RekeyUIClient) DelegateRekeyUI added in v1.0.17

func (c RekeyUIClient) DelegateRekeyUI(ctx context.Context) (res int, err error)

func (RekeyUIClient) Refresh added in v1.0.17

func (c RekeyUIClient) Refresh(ctx context.Context, __arg RefreshArg) (err error)

refresh is called whenever Electron should refresh the UI, either * because a change came in, or because there was a timeout poll.

type RekeyUIInterface added in v1.0.17

type RekeyUIInterface interface {
	DelegateRekeyUI(context.Context) (int, error)
	// refresh is called whenever Electron should refresh the UI, either
	// * because a change came in, or because there was a timeout poll.
	Refresh(context.Context, RefreshArg) error
}

type ReloadArg

type ReloadArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type RemoteProof

type RemoteProof struct {
	ProofType     ProofType `codec:"proofType" json:"proofType"`
	Key           string    `codec:"key" json:"key"`
	Value         string    `codec:"value" json:"value"`
	DisplayMarkup string    `codec:"displayMarkup" json:"displayMarkup"`
	SigID         SigID     `codec:"sigID" json:"sigID"`
	MTime         Time      `codec:"mTime" json:"mTime"`
}

type ReportLastTrackArg

type ReportLastTrackArg struct {
	SessionID int           `codec:"sessionID" json:"sessionID"`
	Track     *TrackSummary `codec:"track,omitempty" json:"track,omitempty"`
}

type ReportTrackTokenArg

type ReportTrackTokenArg struct {
	SessionID  int        `codec:"sessionID" json:"sessionID"`
	TrackToken TrackToken `codec:"trackToken" json:"trackToken"`
}

type Resolve2Arg

type Resolve2Arg struct {
	Assertion string `codec:"assertion" json:"assertion"`
}

type ResolveArg

type ResolveArg struct {
	Assertion string `codec:"assertion" json:"assertion"`
}

type RevokeClient

type RevokeClient struct {
	Cli rpc.GenericClient
}

func (RevokeClient) RevokeDevice

func (c RevokeClient) RevokeDevice(ctx context.Context, __arg RevokeDeviceArg) (err error)

func (RevokeClient) RevokeKey

func (c RevokeClient) RevokeKey(ctx context.Context, __arg RevokeKeyArg) (err error)

func (RevokeClient) RevokeSigs

func (c RevokeClient) RevokeSigs(ctx context.Context, __arg RevokeSigsArg) (err error)

type RevokeDeviceArg

type RevokeDeviceArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	DeviceID  DeviceID `codec:"deviceID" json:"deviceID"`
	Force     bool     `codec:"force" json:"force"`
}

type RevokeInterface

type RevokeInterface interface {
	RevokeKey(context.Context, RevokeKeyArg) error
	RevokeDevice(context.Context, RevokeDeviceArg) error
	RevokeSigs(context.Context, RevokeSigsArg) error
}

type RevokeKeyArg

type RevokeKeyArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
	KeyID     KID `codec:"keyID" json:"keyID"`
}

type RevokeSigsArg

type RevokeSigsArg struct {
	SessionID    int      `codec:"sessionID" json:"sessionID"`
	SigIDQueries []string `codec:"sigIDQueries" json:"sigIDQueries"`
}

type RevokedKey

type RevokedKey struct {
	Key  PublicKey   `codec:"key" json:"key"`
	Time KeybaseTime `codec:"time" json:"time"`
	By   KID         `codec:"by" json:"by"`
}

type RevokedProof

type RevokedProof struct {
	Proof RemoteProof `codec:"proof" json:"proof"`
	Diff  TrackDiff   `codec:"diff" json:"diff"`
}

type SaltpackClient

type SaltpackClient struct {
	Cli rpc.GenericClient
}

func (SaltpackClient) SaltpackDecrypt

func (c SaltpackClient) SaltpackDecrypt(ctx context.Context, __arg SaltpackDecryptArg) (res SaltpackEncryptedMessageInfo, err error)

func (SaltpackClient) SaltpackEncrypt

func (c SaltpackClient) SaltpackEncrypt(ctx context.Context, __arg SaltpackEncryptArg) (err error)

func (SaltpackClient) SaltpackSign

func (c SaltpackClient) SaltpackSign(ctx context.Context, __arg SaltpackSignArg) (err error)

func (SaltpackClient) SaltpackVerify

func (c SaltpackClient) SaltpackVerify(ctx context.Context, __arg SaltpackVerifyArg) (err error)

type SaltpackDecryptArg

type SaltpackDecryptArg struct {
	SessionID int                    `codec:"sessionID" json:"sessionID"`
	Source    Stream                 `codec:"source" json:"source"`
	Sink      Stream                 `codec:"sink" json:"sink"`
	Opts      SaltpackDecryptOptions `codec:"opts" json:"opts"`
}

type SaltpackDecryptOptions

type SaltpackDecryptOptions struct {
	Interactive      bool `codec:"interactive" json:"interactive"`
	ForceRemoteCheck bool `codec:"forceRemoteCheck" json:"forceRemoteCheck"`
	UsePaperKey      bool `codec:"usePaperKey" json:"usePaperKey"`
}

type SaltpackEncryptArg

type SaltpackEncryptArg struct {
	SessionID int                    `codec:"sessionID" json:"sessionID"`
	Source    Stream                 `codec:"source" json:"source"`
	Sink      Stream                 `codec:"sink" json:"sink"`
	Opts      SaltpackEncryptOptions `codec:"opts" json:"opts"`
}

type SaltpackEncryptOptions

type SaltpackEncryptOptions struct {
	Recipients     []string `codec:"recipients" json:"recipients"`
	HideSelf       bool     `codec:"hideSelf" json:"hideSelf"`
	NoSelfEncrypt  bool     `codec:"noSelfEncrypt" json:"noSelfEncrypt"`
	Binary         bool     `codec:"binary" json:"binary"`
	HideRecipients bool     `codec:"hideRecipients" json:"hideRecipients"`
}

type SaltpackEncryptedMessageInfo

type SaltpackEncryptedMessageInfo struct {
	Devices          []Device       `codec:"devices" json:"devices"`
	NumAnonReceivers int            `codec:"numAnonReceivers" json:"numAnonReceivers"`
	ReceiverIsAnon   bool           `codec:"receiverIsAnon" json:"receiverIsAnon"`
	Sender           SaltpackSender `codec:"sender" json:"sender"`
}

type SaltpackInterface

type SaltpackInterface interface {
	SaltpackEncrypt(context.Context, SaltpackEncryptArg) error
	SaltpackDecrypt(context.Context, SaltpackDecryptArg) (SaltpackEncryptedMessageInfo, error)
	SaltpackSign(context.Context, SaltpackSignArg) error
	SaltpackVerify(context.Context, SaltpackVerifyArg) error
}

type SaltpackPromptForDecryptArg

type SaltpackPromptForDecryptArg struct {
	SessionID      int            `codec:"sessionID" json:"sessionID"`
	Sender         SaltpackSender `codec:"sender" json:"sender"`
	UsedDelegateUI bool           `codec:"usedDelegateUI" json:"usedDelegateUI"`
}

type SaltpackSender

type SaltpackSender struct {
	Uid        UID                `codec:"uid" json:"uid"`
	Username   string             `codec:"username" json:"username"`
	SenderType SaltpackSenderType `codec:"senderType" json:"senderType"`
}

type SaltpackSenderType

type SaltpackSenderType int
const (
	SaltpackSenderType_NOT_TRACKED    SaltpackSenderType = 0
	SaltpackSenderType_UNKNOWN        SaltpackSenderType = 1
	SaltpackSenderType_ANONYMOUS      SaltpackSenderType = 2
	SaltpackSenderType_TRACKING_BROKE SaltpackSenderType = 3
	SaltpackSenderType_TRACKING_OK    SaltpackSenderType = 4
	SaltpackSenderType_SELF           SaltpackSenderType = 5
)

type SaltpackSignArg

type SaltpackSignArg struct {
	SessionID int                 `codec:"sessionID" json:"sessionID"`
	Source    Stream              `codec:"source" json:"source"`
	Sink      Stream              `codec:"sink" json:"sink"`
	Opts      SaltpackSignOptions `codec:"opts" json:"opts"`
}

type SaltpackSignOptions

type SaltpackSignOptions struct {
	Detached bool `codec:"detached" json:"detached"`
	Binary   bool `codec:"binary" json:"binary"`
}

type SaltpackUiClient

type SaltpackUiClient struct {
	Cli rpc.GenericClient
}

func (SaltpackUiClient) SaltpackPromptForDecrypt

func (c SaltpackUiClient) SaltpackPromptForDecrypt(ctx context.Context, __arg SaltpackPromptForDecryptArg) (err error)

func (SaltpackUiClient) SaltpackVerifySuccess

func (c SaltpackUiClient) SaltpackVerifySuccess(ctx context.Context, __arg SaltpackVerifySuccessArg) (err error)

type SaltpackUiInterface

type SaltpackUiInterface interface {
	SaltpackPromptForDecrypt(context.Context, SaltpackPromptForDecryptArg) error
	SaltpackVerifySuccess(context.Context, SaltpackVerifySuccessArg) error
}

type SaltpackVerifyArg

type SaltpackVerifyArg struct {
	SessionID int                   `codec:"sessionID" json:"sessionID"`
	Source    Stream                `codec:"source" json:"source"`
	Sink      Stream                `codec:"sink" json:"sink"`
	Opts      SaltpackVerifyOptions `codec:"opts" json:"opts"`
}

type SaltpackVerifyOptions

type SaltpackVerifyOptions struct {
	SignedBy  string `codec:"signedBy" json:"signedBy"`
	Signature []byte `codec:"signature" json:"signature"`
}

type SaltpackVerifySuccessArg

type SaltpackVerifySuccessArg struct {
	SessionID  int            `codec:"sessionID" json:"sessionID"`
	SigningKID KID            `codec:"signingKID" json:"signingKID"`
	Sender     SaltpackSender `codec:"sender" json:"sender"`
}

type SearchArg

type SearchArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Query     string `codec:"query" json:"query"`
}

type SearchComponent

type SearchComponent struct {
	Key   string  `codec:"key" json:"key"`
	Value string  `codec:"value" json:"value"`
	Score float64 `codec:"score" json:"score"`
}

type SearchResult

type SearchResult struct {
	Uid        UID               `codec:"uid" json:"uid"`
	Username   string            `codec:"username" json:"username"`
	Components []SearchComponent `codec:"components" json:"components"`
	Score      float64           `codec:"score" json:"score"`
}

type SecondStepArg

type SecondStepArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
	Val       int `codec:"val" json:"val"`
}

type SecretEntryArg

type SecretEntryArg struct {
	Desc           string `codec:"desc" json:"desc"`
	Prompt         string `codec:"prompt" json:"prompt"`
	Err            string `codec:"err" json:"err"`
	Cancel         string `codec:"cancel" json:"cancel"`
	Ok             string `codec:"ok" json:"ok"`
	Reason         string `codec:"reason" json:"reason"`
	UseSecretStore bool   `codec:"useSecretStore" json:"useSecretStore"`
	ShowTyping     bool   `codec:"showTyping" json:"showTyping"`
}

type SecretEntryRes

type SecretEntryRes struct {
	Text        string `codec:"text" json:"text"`
	Canceled    bool   `codec:"canceled" json:"canceled"`
	StoreSecret bool   `codec:"storeSecret" json:"storeSecret"`
}

type SecretKeys

type SecretKeys struct {
	Signing    NaclSigningKeyPrivate `codec:"signing" json:"signing"`
	Encryption NaclDHKeyPrivate      `codec:"encryption" json:"encryption"`
}

type SecretKeysClient

type SecretKeysClient struct {
	Cli rpc.GenericClient
}

func (SecretKeysClient) GetSecretKeys

func (c SecretKeysClient) GetSecretKeys(ctx context.Context, sessionID int) (res SecretKeys, err error)

type SecretKeysInterface

type SecretKeysInterface interface {
	GetSecretKeys(context.Context, int) (SecretKeys, error)
}

type SecretResponse

type SecretResponse struct {
	Secret []byte `codec:"secret" json:"secret"`
	Phrase string `codec:"phrase" json:"phrase"`
}

SecretResponse should be returned by DisplayAndPromptSecret. Use either secret or phrase.

type SecretUiClient

type SecretUiClient struct {
	Cli rpc.GenericClient
}

func (SecretUiClient) GetPassphrase

func (c SecretUiClient) GetPassphrase(ctx context.Context, __arg GetPassphraseArg) (res GetPassphraseRes, err error)

type SecretUiInterface

type SecretUiInterface interface {
	GetPassphrase(context.Context, GetPassphraseArg) (GetPassphraseRes, error)
}

type SelectKeyAndPushOptionArg

type SelectKeyAndPushOptionArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	Keys      []GPGKey `codec:"keys" json:"keys"`
}

type SelectKeyArg

type SelectKeyArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	Keys      []GPGKey `codec:"keys" json:"keys"`
}

type SelectKeyRes

type SelectKeyRes struct {
	KeyID        string `codec:"keyID" json:"keyID"`
	DoSecretPush bool   `codec:"doSecretPush" json:"doSecretPush"`
}

type ServiceStatus

type ServiceStatus struct {
	Version        string        `codec:"version" json:"version"`
	Label          string        `codec:"label" json:"label"`
	Pid            string        `codec:"pid" json:"pid"`
	LastExitStatus string        `codec:"lastExitStatus" json:"lastExitStatus"`
	BundleVersion  string        `codec:"bundleVersion" json:"bundleVersion"`
	InstallStatus  InstallStatus `codec:"installStatus" json:"installStatus"`
	InstallAction  InstallAction `codec:"installAction" json:"installAction"`
	Status         Status        `codec:"status" json:"status"`
}

func (ServiceStatus) NeedsInstall

func (s ServiceStatus) NeedsInstall() bool

type ServicesStatus

type ServicesStatus struct {
	Service []ServiceStatus `codec:"service" json:"service"`
	Kbfs    []ServiceStatus `codec:"kbfs" json:"kbfs"`
	Updater []ServiceStatus `codec:"updater" json:"updater"`
}

type Session

type Session struct {
	Uid             UID    `codec:"uid" json:"uid"`
	Username        string `codec:"username" json:"username"`
	Token           string `codec:"token" json:"token"`
	DeviceSubkeyKid KID    `codec:"deviceSubkeyKid" json:"deviceSubkeyKid"`
	DeviceSibkeyKid KID    `codec:"deviceSibkeyKid" json:"deviceSibkeyKid"`
}

type SessionClient

type SessionClient struct {
	Cli rpc.GenericClient
}

func (SessionClient) CurrentSession

func (c SessionClient) CurrentSession(ctx context.Context, sessionID int) (res Session, err error)

type SessionInterface

type SessionInterface interface {
	CurrentSession(context.Context, int) (Session, error)
}

type SessionStatus

type SessionStatus struct {
	SessionFor string `codec:"SessionFor" json:"SessionFor"`
	Loaded     bool   `codec:"Loaded" json:"Loaded"`
	Cleared    bool   `codec:"Cleared" json:"Cleared"`
	SaltOnly   bool   `codec:"SaltOnly" json:"SaltOnly"`
	Expired    bool   `codec:"Expired" json:"Expired"`
}

type SessionToken

type SessionToken string

type SetNotificationsArg

type SetNotificationsArg struct {
	Channels NotificationChannels `codec:"channels" json:"channels"`
}

type SetPathArg

type SetPathArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Path      string `codec:"path" json:"path"`
}

type SetUserConfigArg

type SetUserConfigArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Username  string `codec:"username" json:"username"`
	Key       string `codec:"key" json:"key"`
	Value     string `codec:"value" json:"value"`
}

type SetValueArg

type SetValueArg struct {
	Path  string      `codec:"path" json:"path"`
	Value ConfigValue `codec:"value" json:"value"`
}

type ShowPendingRekeyStatusArg added in v1.0.17

type ShowPendingRekeyStatusArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type ShutdownArg added in v1.0.17

type ShutdownArg struct {
}

type Sig

type Sig struct {
	Seqno        int    `codec:"seqno" json:"seqno"`
	SigID        SigID  `codec:"sigID" json:"sigID"`
	SigIDDisplay string `codec:"sigIDDisplay" json:"sigIDDisplay"`
	Type         string `codec:"type" json:"type"`
	CTime        Time   `codec:"cTime" json:"cTime"`
	Revoked      bool   `codec:"revoked" json:"revoked"`
	Active       bool   `codec:"active" json:"active"`
	Key          string `codec:"key" json:"key"`
	Body         string `codec:"body" json:"body"`
}

type SigHint

type SigHint struct {
	RemoteId  string `codec:"remoteId" json:"remoteId"`
	HumanUrl  string `codec:"humanUrl" json:"humanUrl"`
	ApiUrl    string `codec:"apiUrl" json:"apiUrl"`
	CheckText string `codec:"checkText" json:"checkText"`
}

type SigID

type SigID string

func SigIDFromBytes

func SigIDFromBytes(b [SIG_ID_LEN]byte) SigID

func SigIDFromSlice

func SigIDFromSlice(b []byte) (SigID, error)

func SigIDFromString

func SigIDFromString(s string, suffix bool) (SigID, error)

func (SigID) Equal

func (s SigID) Equal(t SigID) bool

func (SigID) Exists

func (s SigID) Exists() bool

func (SigID) IsNil

func (s SigID) IsNil() bool

func (SigID) Match

func (s SigID) Match(q string, exact bool) bool

func (SigID) NotEqual

func (s SigID) NotEqual(t SigID) bool

func (SigID) ToDisplayString

func (s SigID) ToDisplayString(verbose bool) string

func (SigID) ToMediumID

func (s SigID) ToMediumID() string

func (SigID) ToShortID

func (s SigID) ToShortID() string

func (SigID) ToString

func (s SigID) ToString(suffix bool) string

type SigListArg

type SigListArg struct {
	SessionID int         `codec:"sessionID" json:"sessionID"`
	Arg       SigListArgs `codec:"arg" json:"arg"`
}

type SigListArgs

type SigListArgs struct {
	SessionID int       `codec:"sessionID" json:"sessionID"`
	Username  string    `codec:"username" json:"username"`
	AllKeys   bool      `codec:"allKeys" json:"allKeys"`
	Types     *SigTypes `codec:"types,omitempty" json:"types,omitempty"`
	Filterx   string    `codec:"filterx" json:"filterx"`
	Verbose   bool      `codec:"verbose" json:"verbose"`
	Revoked   bool      `codec:"revoked" json:"revoked"`
}

type SigListJSONArg

type SigListJSONArg struct {
	SessionID int         `codec:"sessionID" json:"sessionID"`
	Arg       SigListArgs `codec:"arg" json:"arg"`
}

type SigTypes

type SigTypes struct {
	Track          bool `codec:"track" json:"track"`
	Proof          bool `codec:"proof" json:"proof"`
	Cryptocurrency bool `codec:"cryptocurrency" json:"cryptocurrency"`
	IsSelf         bool `codec:"isSelf" json:"isSelf"`
}

type SignArg

type SignArg struct {
	Msg         []byte `codec:"msg" json:"msg"`
	Fingerprint []byte `codec:"fingerprint" json:"fingerprint"`
}

type SignED25519Arg

type SignED25519Arg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Msg       []byte `codec:"msg" json:"msg"`
	Reason    string `codec:"reason" json:"reason"`
}

type SignMode

type SignMode int
const (
	SignMode_ATTACHED SignMode = 0
	SignMode_DETACHED SignMode = 1
	SignMode_CLEAR    SignMode = 2
)

type SignToStringArg

type SignToStringArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Msg       []byte `codec:"msg" json:"msg"`
	Reason    string `codec:"reason" json:"reason"`
}

type SignupArg

type SignupArg struct {
	SessionID   int    `codec:"sessionID" json:"sessionID"`
	Email       string `codec:"email" json:"email"`
	InviteCode  string `codec:"inviteCode" json:"inviteCode"`
	Passphrase  string `codec:"passphrase" json:"passphrase"`
	Username    string `codec:"username" json:"username"`
	DeviceName  string `codec:"deviceName" json:"deviceName"`
	StoreSecret bool   `codec:"storeSecret" json:"storeSecret"`
	SkipMail    bool   `codec:"skipMail" json:"skipMail"`
	GenPGPBatch bool   `codec:"genPGPBatch" json:"genPGPBatch"`
}

type SignupClient

type SignupClient struct {
	Cli rpc.GenericClient
}

func (SignupClient) CheckInvitationCode

func (c SignupClient) CheckInvitationCode(ctx context.Context, __arg CheckInvitationCodeArg) (err error)

func (SignupClient) CheckUsernameAvailable

func (c SignupClient) CheckUsernameAvailable(ctx context.Context, __arg CheckUsernameAvailableArg) (err error)

func (SignupClient) InviteRequest

func (c SignupClient) InviteRequest(ctx context.Context, __arg InviteRequestArg) (err error)

func (SignupClient) Signup

func (c SignupClient) Signup(ctx context.Context, __arg SignupArg) (res SignupRes, err error)

type SignupInterface

type SignupInterface interface {
	CheckUsernameAvailable(context.Context, CheckUsernameAvailableArg) error
	Signup(context.Context, SignupArg) (SignupRes, error)
	InviteRequest(context.Context, InviteRequestArg) error
	CheckInvitationCode(context.Context, CheckInvitationCodeArg) error
}

type SignupRes

type SignupRes struct {
	PassphraseOk bool `codec:"passphraseOk" json:"passphraseOk"`
	PostOk       bool `codec:"postOk" json:"postOk"`
	WriteOk      bool `codec:"writeOk" json:"writeOk"`
}

type SigsClient

type SigsClient struct {
	Cli rpc.GenericClient
}

func (SigsClient) SigList

func (c SigsClient) SigList(ctx context.Context, __arg SigListArg) (res []Sig, err error)

func (SigsClient) SigListJSON

func (c SigsClient) SigListJSON(ctx context.Context, __arg SigListJSONArg) (res string, err error)

type SigsInterface

type SigsInterface interface {
	SigList(context.Context, SigListArg) ([]Sig, error)
	SigListJSON(context.Context, SigListJSONArg) (string, error)
}

type SocialAssertion added in v1.0.16

type SocialAssertion struct {
	User    string                 `codec:"user" json:"user"`
	Service SocialAssertionService `codec:"service" json:"service"`
}

SocialAssertion contains a service and username for that service, that together form an assertion about a user. Resolving an assertion requires that the user posts a Keybase proof on the asserted service as the asserted user.

func (SocialAssertion) String added in v1.0.16

func (sa SocialAssertion) String() string

type SocialAssertionService added in v1.0.16

type SocialAssertionService string

SocialAssertionService is a service that can be used to assert proofs for a user.

type StartArg

type StartArg struct {
	SessionID int            `codec:"sessionID" json:"sessionID"`
	Username  string         `codec:"username" json:"username"`
	Reason    IdentifyReason `codec:"reason" json:"reason"`
}

type StartProofArg

type StartProofArg struct {
	SessionID    int    `codec:"sessionID" json:"sessionID"`
	Service      string `codec:"service" json:"service"`
	Username     string `codec:"username" json:"username"`
	Force        bool   `codec:"force" json:"force"`
	PromptPosted bool   `codec:"promptPosted" json:"promptPosted"`
	Auto         bool   `codec:"auto" json:"auto"`
}

type StartProofResult

type StartProofResult struct {
	SigID SigID `codec:"sigID" json:"sigID"`
}

type Status

type Status struct {
	Code   int            `codec:"code" json:"code"`
	Name   string         `codec:"name" json:"name"`
	Desc   string         `codec:"desc" json:"desc"`
	Fields []StringKVPair `codec:"fields" json:"fields"`
}

func StatusFromCode

func StatusFromCode(code StatusCode, message string) Status

func StatusOK

func StatusOK(desc string) Status

func (Status) Error

func (s Status) Error() string

type StatusCode

type StatusCode int
const (
	StatusCode_SCOk                     StatusCode = 0
	StatusCode_SCLoginRequired          StatusCode = 201
	StatusCode_SCBadSession             StatusCode = 202
	StatusCode_SCBadLoginUserNotFound   StatusCode = 203
	StatusCode_SCBadLoginPassword       StatusCode = 204
	StatusCode_SCNotFound               StatusCode = 205
	StatusCode_SCThrottleControl        StatusCode = 210
	StatusCode_SCGeneric                StatusCode = 218
	StatusCode_SCAlreadyLoggedIn        StatusCode = 235
	StatusCode_SCCanceled               StatusCode = 237
	StatusCode_SCInputCanceled          StatusCode = 239
	StatusCode_SCReloginRequired        StatusCode = 274
	StatusCode_SCResolutionFailed       StatusCode = 275
	StatusCode_SCProfileNotPublic       StatusCode = 276
	StatusCode_SCIdentifyFailed         StatusCode = 277
	StatusCode_SCTrackingBroke          StatusCode = 278
	StatusCode_SCWrongCryptoFormat      StatusCode = 279
	StatusCode_SCDecryptionError        StatusCode = 280
	StatusCode_SCBadSignupUsernameTaken StatusCode = 701
	StatusCode_SCBadInvitationCode      StatusCode = 707
	StatusCode_SCMissingResult          StatusCode = 801
	StatusCode_SCKeyNotFound            StatusCode = 901
	StatusCode_SCKeyInUse               StatusCode = 907
	StatusCode_SCKeyBadGen              StatusCode = 913
	StatusCode_SCKeyNoSecret            StatusCode = 914
	StatusCode_SCKeyBadUIDs             StatusCode = 915
	StatusCode_SCKeyNoActive            StatusCode = 916
	StatusCode_SCKeyNoSig               StatusCode = 917
	StatusCode_SCKeyBadSig              StatusCode = 918
	StatusCode_SCKeyBadEldest           StatusCode = 919
	StatusCode_SCKeyNoEldest            StatusCode = 920
	StatusCode_SCKeyDuplicateUpdate     StatusCode = 921
	StatusCode_SCSibkeyAlreadyExists    StatusCode = 922
	StatusCode_SCDecryptionKeyNotFound  StatusCode = 924
	StatusCode_SCKeyNoPGPEncryption     StatusCode = 927
	StatusCode_SCKeyNoNaClEncryption    StatusCode = 928
	StatusCode_SCKeySyncedPGPNotFound   StatusCode = 929
	StatusCode_SCKeyNoMatchingGPG       StatusCode = 930
	StatusCode_SCKeyRevoked             StatusCode = 931
	StatusCode_SCBadTrackSession        StatusCode = 1301
	StatusCode_SCDeviceNotFound         StatusCode = 1409
	StatusCode_SCDeviceMismatch         StatusCode = 1410
	StatusCode_SCDeviceRequired         StatusCode = 1411
	StatusCode_SCDevicePrevProvisioned  StatusCode = 1413
	StatusCode_SCDeviceNoProvision      StatusCode = 1414
	StatusCode_SCStreamExists           StatusCode = 1501
	StatusCode_SCStreamNotFound         StatusCode = 1502
	StatusCode_SCStreamWrongKind        StatusCode = 1503
	StatusCode_SCStreamEOF              StatusCode = 1504
	StatusCode_SCGenericAPIError        StatusCode = 1600
	StatusCode_SCAPINetworkError        StatusCode = 1601
	StatusCode_SCTimeout                StatusCode = 1602
	StatusCode_SCProofError             StatusCode = 1701
	StatusCode_SCIdentificationExpired  StatusCode = 1702
	StatusCode_SCSelfNotFound           StatusCode = 1703
	StatusCode_SCBadKexPhrase           StatusCode = 1704
	StatusCode_SCNoUIDelegation         StatusCode = 1705
	StatusCode_SCNoUI                   StatusCode = 1706
	StatusCode_SCGPGUnavailable         StatusCode = 1707
	StatusCode_SCInvalidVersionError    StatusCode = 1800
	StatusCode_SCOldVersionError        StatusCode = 1801
	StatusCode_SCInvalidLocationError   StatusCode = 1802
	StatusCode_SCServiceStatusError     StatusCode = 1803
	StatusCode_SCInstallError           StatusCode = 1804
)

type StopArg

type StopArg struct {
	SessionID int      `codec:"sessionID" json:"sessionID"`
	ExitCode  ExitCode `codec:"exitCode" json:"exitCode"`
}

type Stream

type Stream struct {
	Fd int `codec:"fd" json:"fd"`
}

type StreamUiClient

type StreamUiClient struct {
	Cli rpc.GenericClient
}

func (StreamUiClient) Close

func (c StreamUiClient) Close(ctx context.Context, __arg CloseArg) (err error)

func (StreamUiClient) Read

func (c StreamUiClient) Read(ctx context.Context, __arg ReadArg) (res []byte, err error)

func (StreamUiClient) Write

func (c StreamUiClient) Write(ctx context.Context, __arg WriteArg) (res int, err error)

type StreamUiInterface

type StreamUiInterface interface {
	Close(context.Context, CloseArg) error
	Read(context.Context, ReadArg) ([]byte, error)
	Write(context.Context, WriteArg) (int, error)
}

type StringKVPair

type StringKVPair struct {
	Key   string `codec:"key" json:"key"`
	Value string `codec:"value" json:"value"`
}

type SwitchToGPGSignOKArg

type SwitchToGPGSignOKArg struct {
	SessionID   int    `codec:"sessionID" json:"sessionID"`
	Key         GPGKey `codec:"key" json:"key"`
	ImportError string `codec:"importError" json:"importError"`
}

type TLF added in v1.0.17

type TLF struct {
	Id        TLFID    `codec:"id" json:"id"`
	Name      string   `codec:"name" json:"name"`
	Writers   []string `codec:"writers" json:"writers"`
	Readers   []string `codec:"readers" json:"readers"`
	IsPrivate bool     `codec:"isPrivate" json:"isPrivate"`
}

type TLFID added in v1.0.17

type TLFID string

func (TLFID) String added in v1.0.17

func (t TLFID) String() string

type Test

type Test struct {
	Reply string `codec:"reply" json:"reply"`
}

Result from calling test(..).

type TestArg

type TestArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Name      string `codec:"name" json:"name"`
}

type TestCallbackArg

type TestCallbackArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Name      string `codec:"name" json:"name"`
}

type TestClient

type TestClient struct {
	Cli rpc.GenericClient
}

func (TestClient) Panic

func (c TestClient) Panic(ctx context.Context, message string) (err error)

For testing crashes.

func (TestClient) Test

func (c TestClient) Test(ctx context.Context, __arg TestArg) (res Test, err error)

Call test method. Will trigger the testCallback method, whose result will be set in the returned Test object, reply property.

func (TestClient) TestCallback

func (c TestClient) TestCallback(ctx context.Context, __arg TestCallbackArg) (res string, err error)

This is a service callback triggered from test(..). The name param is what was passed into test.

type TestInterface

type TestInterface interface {
	// Call test method.
	// Will trigger the testCallback method, whose result will be set in the
	// returned Test object, reply property.
	Test(context.Context, TestArg) (Test, error)
	// This is a service callback triggered from test(..).
	// The name param is what was passed into test.
	TestCallback(context.Context, TestCallbackArg) (string, error)
	// For testing crashes.
	Panic(context.Context, string) error
}

type Text

type Text struct {
	Data   string `codec:"data" json:"data"`
	Markup bool   `codec:"markup" json:"markup"`
}

type Time

type Time int64

func TimeFromSeconds

func TimeFromSeconds(seconds int64) Time

func ToTime

func ToTime(t time.Time) Time

func (Time) After

func (t Time) After(t2 Time) bool

func (Time) Before

func (t Time) Before(t2 Time) bool

func (Time) IsZero

func (t Time) IsZero() bool

type ToStatusAble added in v1.0.16

type ToStatusAble interface {
	ToStatus() Status
}

ToStatusAble is something that can be coerced into a status. Some error types in your application might want this.

type TrackArg

type TrackArg struct {
	SessionID        int          `codec:"sessionID" json:"sessionID"`
	UserAssertion    string       `codec:"userAssertion" json:"userAssertion"`
	Options          TrackOptions `codec:"options" json:"options"`
	ForceRemoteCheck bool         `codec:"forceRemoteCheck" json:"forceRemoteCheck"`
}

type TrackClient

type TrackClient struct {
	Cli rpc.GenericClient
}

func (TrackClient) CheckTracking

func (c TrackClient) CheckTracking(ctx context.Context, sessionID int) (err error)

func (TrackClient) DismissWithToken added in v1.0.16

func (c TrackClient) DismissWithToken(ctx context.Context, __arg DismissWithTokenArg) (err error)

Called by the UI when the user decides *not* to track, to e.g. dismiss gregor items.

func (TrackClient) FakeTrackingChanged

func (c TrackClient) FakeTrackingChanged(ctx context.Context, __arg FakeTrackingChangedArg) (err error)

func (TrackClient) Track

func (c TrackClient) Track(ctx context.Context, __arg TrackArg) (err error)

This will perform identify and track. If forceRemoteCheck is true, we force all remote proofs to be checked (otherwise a cache is used).

func (TrackClient) TrackWithToken

func (c TrackClient) TrackWithToken(ctx context.Context, __arg TrackWithTokenArg) (err error)

Track with token returned from identify.

func (TrackClient) Untrack

func (c TrackClient) Untrack(ctx context.Context, __arg UntrackArg) (err error)

type TrackDiff

type TrackDiff struct {
	Type          TrackDiffType `codec:"type" json:"type"`
	DisplayMarkup string        `codec:"displayMarkup" json:"displayMarkup"`
}

type TrackDiffType

type TrackDiffType int
const (
	TrackDiffType_NONE               TrackDiffType = 0
	TrackDiffType_ERROR              TrackDiffType = 1
	TrackDiffType_CLASH              TrackDiffType = 2
	TrackDiffType_REVOKED            TrackDiffType = 3
	TrackDiffType_UPGRADED           TrackDiffType = 4
	TrackDiffType_NEW                TrackDiffType = 5
	TrackDiffType_REMOTE_FAIL        TrackDiffType = 6
	TrackDiffType_REMOTE_WORKING     TrackDiffType = 7
	TrackDiffType_REMOTE_CHANGED     TrackDiffType = 8
	TrackDiffType_NEW_ELDEST         TrackDiffType = 9
	TrackDiffType_NONE_VIA_TEMPORARY TrackDiffType = 10
)

type TrackInterface

type TrackInterface interface {
	// This will perform identify and track.
	// If forceRemoteCheck is true, we force all remote proofs to be checked
	// (otherwise a cache is used).
	Track(context.Context, TrackArg) error
	// Track with token returned from identify.
	TrackWithToken(context.Context, TrackWithTokenArg) error
	// Called by the UI when the user decides *not* to track, to e.g. dismiss gregor items.
	DismissWithToken(context.Context, DismissWithTokenArg) error
	Untrack(context.Context, UntrackArg) error
	CheckTracking(context.Context, int) error
	FakeTrackingChanged(context.Context, FakeTrackingChangedArg) error
}

type TrackOptions

type TrackOptions struct {
	LocalOnly     bool `codec:"localOnly" json:"localOnly"`
	BypassConfirm bool `codec:"bypassConfirm" json:"bypassConfirm"`
	ForceRetrack  bool `codec:"forceRetrack" json:"forceRetrack"`
	ExpiringLocal bool `codec:"expiringLocal" json:"expiringLocal"`
}

type TrackProof

type TrackProof struct {
	ProofType string `codec:"proofType" json:"proofType"`
	ProofName string `codec:"proofName" json:"proofName"`
	IdString  string `codec:"idString" json:"idString"`
}

type TrackStatus

type TrackStatus int

TrackStatus is a summary of this track before the track is approved by the user. NEW_*: New tracks UPDATE_*: Update to an existing track NEW_OK: Everything ok NEW_ZERO_PROOFS: User being tracked has no proofs NEW_FAIL_PROOFS: User being tracked has some failed proofs UPDATE_BROKEN: Previous tracking statement broken, this one will fix it. UPDATE_NEW_PROOFS: Previous tracking statement ok, but there are new proofs since previous tracking statement generated UPDATE_OK: No changes to previous tracking statement

const (
	TrackStatus_NEW_OK                      TrackStatus = 1
	TrackStatus_NEW_ZERO_PROOFS             TrackStatus = 2
	TrackStatus_NEW_FAIL_PROOFS             TrackStatus = 3
	TrackStatus_UPDATE_BROKEN_FAILED_PROOFS TrackStatus = 4
	TrackStatus_UPDATE_NEW_PROOFS           TrackStatus = 5
	TrackStatus_UPDATE_OK                   TrackStatus = 6
	TrackStatus_UPDATE_BROKEN_REVOKED       TrackStatus = 7
)

type TrackSummary

type TrackSummary struct {
	Username string `codec:"username" json:"username"`
	Time     Time   `codec:"time" json:"time"`
	IsRemote bool   `codec:"isRemote" json:"isRemote"`
}

type TrackToken

type TrackToken string

func (TrackToken) String

func (t TrackToken) String() string

type TrackWithTokenArg

type TrackWithTokenArg struct {
	SessionID  int          `codec:"sessionID" json:"sessionID"`
	TrackToken TrackToken   `codec:"trackToken" json:"trackToken"`
	Options    TrackOptions `codec:"options" json:"options"`
}

type Tracker

type Tracker struct {
	Tracker UID  `codec:"tracker" json:"tracker"`
	Status  int  `codec:"status" json:"status"`
	MTime   Time `codec:"mTime" json:"mTime"`
}

type TrackingChangedArg

type TrackingChangedArg struct {
	Uid      UID    `codec:"uid" json:"uid"`
	Username string `codec:"username" json:"username"`
}

type TruncateLockArg

type TruncateLockArg struct {
	FolderID string `codec:"folderID" json:"folderID"`
}

type TruncateUnlockArg

type TruncateUnlockArg struct {
	FolderID string `codec:"folderID" json:"folderID"`
}

type UID

type UID string

func MakeTestUID

func MakeTestUID(n uint32) UID

Used by unit tests.

func UIDFromString

func UIDFromString(s string) (UID, error)

func (UID) Equal

func (u UID) Equal(v UID) bool

func (UID) Exists

func (u UID) Exists() bool

func (UID) GetShard

func (u UID) GetShard(shardCount int) (int, error)

Returns a number in [0, shardCount) which can be treated as roughly uniformly distributed. Used for things that need to shard by user.

func (UID) IsNil

func (u UID) IsNil() bool

func (UID) Less

func (u UID) Less(v UID) bool

func (UID) NotEqual

func (u UID) NotEqual(v UID) bool

func (UID) String

func (u UID) String() string

func (UID) ToBytes

func (u UID) ToBytes() []byte

type UiClient

type UiClient struct {
	Cli rpc.GenericClient
}

func (UiClient) PromptYesNo

func (c UiClient) PromptYesNo(ctx context.Context, __arg PromptYesNoArg) (res bool, err error)

type UiInterface

type UiInterface interface {
	PromptYesNo(context.Context, PromptYesNoArg) (bool, error)
}

type UnboxAnyRes

type UnboxAnyRes struct {
	Kid       KID     `codec:"kid" json:"kid"`
	Plaintext Bytes32 `codec:"plaintext" json:"plaintext"`
	Index     int     `codec:"index" json:"index"`
}

type UnboxBytes32AnyArg

type UnboxBytes32AnyArg struct {
	SessionID   int                `codec:"sessionID" json:"sessionID"`
	Bundles     []CiphertextBundle `codec:"bundles" json:"bundles"`
	Reason      string             `codec:"reason" json:"reason"`
	PromptPaper bool               `codec:"promptPaper" json:"promptPaper"`
}

type UnboxBytes32Arg

type UnboxBytes32Arg struct {
	SessionID        int              `codec:"sessionID" json:"sessionID"`
	EncryptedBytes32 EncryptedBytes32 `codec:"encryptedBytes32" json:"encryptedBytes32"`
	Nonce            BoxNonce         `codec:"nonce" json:"nonce"`
	PeersPublicKey   BoxPublicKey     `codec:"peersPublicKey" json:"peersPublicKey"`
	Reason           string           `codec:"reason" json:"reason"`
}

type UninstallResult

type UninstallResult struct {
	ComponentResults []ComponentResult `codec:"componentResults" json:"componentResults"`
	Status           Status            `codec:"status" json:"status"`
}

type UnlockArg

type UnlockArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type UnlockWithPassphraseArg

type UnlockWithPassphraseArg struct {
	SessionID  int    `codec:"sessionID" json:"sessionID"`
	Passphrase string `codec:"passphrase" json:"passphrase"`
}

type UntrackArg

type UntrackArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Username  string `codec:"username" json:"username"`
}

type Update

type Update struct {
	Version      string     `codec:"version" json:"version"`
	Name         string     `codec:"name" json:"name"`
	Description  string     `codec:"description" json:"description"`
	Instructions *string    `codec:"instructions,omitempty" json:"instructions,omitempty"`
	Type         UpdateType `codec:"type" json:"type"`
	PublishedAt  *Time      `codec:"publishedAt,omitempty" json:"publishedAt,omitempty"`
	Asset        *Asset     `codec:"asset,omitempty" json:"asset,omitempty"`
}

type UpdateAction

type UpdateAction int
const (
	UpdateAction_UPDATE UpdateAction = 0
	UpdateAction_SKIP   UpdateAction = 1
	UpdateAction_SNOOZE UpdateAction = 2
	UpdateAction_CANCEL UpdateAction = 3
)

type UpdateAppInUseAction

type UpdateAppInUseAction int
const (
	UpdateAppInUseAction_CANCEL         UpdateAppInUseAction = 0
	UpdateAppInUseAction_FORCE          UpdateAppInUseAction = 1
	UpdateAppInUseAction_SNOOZE         UpdateAppInUseAction = 2
	UpdateAppInUseAction_KILL_PROCESSES UpdateAppInUseAction = 3
)

type UpdateAppInUseArg

type UpdateAppInUseArg struct {
	SessionID int       `codec:"sessionID" json:"sessionID"`
	Update    Update    `codec:"update" json:"update"`
	Processes []Process `codec:"processes" json:"processes"`
}

type UpdateAppInUseRes

type UpdateAppInUseRes struct {
	Action UpdateAppInUseAction `codec:"action" json:"action"`
}

type UpdateArg

type UpdateArg struct {
	Options UpdateOptions `codec:"options" json:"options"`
}

type UpdateCheckArg

type UpdateCheckArg struct {
	Force bool `codec:"force" json:"force"`
}

type UpdateClient

type UpdateClient struct {
	Cli rpc.GenericClient
}

func (UpdateClient) Update

func (c UpdateClient) Update(ctx context.Context, options UpdateOptions) (res UpdateResult, err error)

Perform the update with options.

func (UpdateClient) UpdateCheck

func (c UpdateClient) UpdateCheck(ctx context.Context, force bool) (err error)

Perform an update check.

type UpdateCommonClient

type UpdateCommonClient struct {
	Cli rpc.GenericClient
}

type UpdateCommonInterface

type UpdateCommonInterface interface {
}

type UpdateInterface

type UpdateInterface interface {
	// Perform the update with options.
	Update(context.Context, UpdateOptions) (UpdateResult, error)
	// Perform an update check.
	UpdateCheck(context.Context, bool) error
}

type UpdateOptions

type UpdateOptions struct {
	Version             string `codec:"version" json:"version"`
	Platform            string `codec:"platform" json:"platform"`
	DestinationPath     string `codec:"destinationPath" json:"destinationPath"`
	Source              string `codec:"source" json:"source"`
	URL                 string `codec:"URL" json:"URL"`
	Channel             string `codec:"channel" json:"channel"`
	Force               bool   `codec:"force" json:"force"`
	DefaultInstructions string `codec:"defaultInstructions" json:"defaultInstructions"`
	SignaturePath       string `codec:"signaturePath" json:"signaturePath"`
}

Options for updating.

type UpdatePromptArg

type UpdatePromptArg struct {
	SessionID int                 `codec:"sessionID" json:"sessionID"`
	Update    Update              `codec:"update" json:"update"`
	Options   UpdatePromptOptions `codec:"options" json:"options"`
}

type UpdatePromptOptions

type UpdatePromptOptions struct {
	AlwaysAutoInstall bool `codec:"alwaysAutoInstall" json:"alwaysAutoInstall"`
}

type UpdatePromptRes

type UpdatePromptRes struct {
	Action            UpdateAction `codec:"action" json:"action"`
	AlwaysAutoInstall bool         `codec:"alwaysAutoInstall" json:"alwaysAutoInstall"`
	SnoozeUntil       Time         `codec:"snoozeUntil" json:"snoozeUntil"`
}

type UpdateQuitArg

type UpdateQuitArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	Update    Update `codec:"update" json:"update"`
	Status    Status `codec:"status" json:"status"`
}

type UpdateQuitRes

type UpdateQuitRes struct {
	Quit            bool   `codec:"quit" json:"quit"`
	Pid             int    `codec:"pid" json:"pid"`
	ApplicationPath string `codec:"applicationPath" json:"applicationPath"`
}

type UpdateResult

type UpdateResult struct {
	Update *Update `codec:"update,omitempty" json:"update,omitempty"`
}

type UpdateType

type UpdateType int
const (
	UpdateType_NORMAL   UpdateType = 0
	UpdateType_BUGFIX   UpdateType = 1
	UpdateType_CRITICAL UpdateType = 2
)

type UpdateUiClient

type UpdateUiClient struct {
	Cli rpc.GenericClient
}

func (UpdateUiClient) UpdateAppInUse

func (c UpdateUiClient) UpdateAppInUse(ctx context.Context, __arg UpdateAppInUseArg) (res UpdateAppInUseRes, err error)

func (UpdateUiClient) UpdatePrompt

func (c UpdateUiClient) UpdatePrompt(ctx context.Context, __arg UpdatePromptArg) (res UpdatePromptRes, err error)

func (UpdateUiClient) UpdateQuit

func (c UpdateUiClient) UpdateQuit(ctx context.Context, __arg UpdateQuitArg) (res UpdateQuitRes, err error)

type UpdateUiInterface

type UpdateUiInterface interface {
	UpdatePrompt(context.Context, UpdatePromptArg) (UpdatePromptRes, error)
	UpdateAppInUse(context.Context, UpdateAppInUseArg) (UpdateAppInUseRes, error)
	UpdateQuit(context.Context, UpdateQuitArg) (UpdateQuitRes, error)
}

type User

type User struct {
	Uid      UID    `codec:"uid" json:"uid"`
	Username string `codec:"username" json:"username"`
}

type UserCard

type UserCard struct {
	Following     int    `codec:"following" json:"following"`
	Followers     int    `codec:"followers" json:"followers"`
	Uid           UID    `codec:"uid" json:"uid"`
	FullName      string `codec:"fullName" json:"fullName"`
	Location      string `codec:"location" json:"location"`
	Bio           string `codec:"bio" json:"bio"`
	Website       string `codec:"website" json:"website"`
	Twitter       string `codec:"twitter" json:"twitter"`
	YouFollowThem bool   `codec:"youFollowThem" json:"youFollowThem"`
	TheyFollowYou bool   `codec:"theyFollowYou" json:"theyFollowYou"`
}

type UserChangedArg

type UserChangedArg struct {
	Uid UID `codec:"uid" json:"uid"`
}

type UserClient

type UserClient struct {
	Cli rpc.GenericClient
}

func (UserClient) ListTrackers

func (c UserClient) ListTrackers(ctx context.Context, __arg ListTrackersArg) (res []Tracker, err error)

func (UserClient) ListTrackers2 added in v1.0.17

func (c UserClient) ListTrackers2(ctx context.Context, __arg ListTrackers2Arg) (res UserSummary2Set, err error)

func (UserClient) ListTrackersByName

func (c UserClient) ListTrackersByName(ctx context.Context, __arg ListTrackersByNameArg) (res []Tracker, err error)

func (UserClient) ListTrackersSelf

func (c UserClient) ListTrackersSelf(ctx context.Context, sessionID int) (res []Tracker, err error)

func (UserClient) ListTracking

func (c UserClient) ListTracking(ctx context.Context, __arg ListTrackingArg) (res []UserSummary, err error)

The list-tracking functions get verified data from the tracking statements in the user's sigchain.

If assertion is empty, it will use the current logged in user.

func (UserClient) ListTrackingJSON

func (c UserClient) ListTrackingJSON(ctx context.Context, __arg ListTrackingJSONArg) (res string, err error)

func (UserClient) LoadAllPublicKeysUnverified added in v1.0.17

func (c UserClient) LoadAllPublicKeysUnverified(ctx context.Context, __arg LoadAllPublicKeysUnverifiedArg) (res []PublicKey, err error)

Load all the user's public keys (even those in reset key families) from the server with no verification

func (UserClient) LoadPublicKeys

func (c UserClient) LoadPublicKeys(ctx context.Context, __arg LoadPublicKeysArg) (res []PublicKey, err error)

Load public keys for a user.

func (UserClient) LoadUncheckedUserSummaries

func (c UserClient) LoadUncheckedUserSummaries(ctx context.Context, __arg LoadUncheckedUserSummariesArg) (res []UserSummary, err error)

Load user summaries for the supplied uids. They are "unchecked" in that the client is not verifying the info from the server. If len(uids) > 500, the first 500 will be returned.

func (UserClient) LoadUser

func (c UserClient) LoadUser(ctx context.Context, __arg LoadUserArg) (res User, err error)

Load a user from the server.

func (UserClient) LoadUserByName added in v1.0.17

func (c UserClient) LoadUserByName(ctx context.Context, __arg LoadUserByNameArg) (res User, err error)

func (UserClient) LoadUserPlusKeys

func (c UserClient) LoadUserPlusKeys(ctx context.Context, __arg LoadUserPlusKeysArg) (res UserPlusKeys, err error)

Load a user + device keys from the server.

func (UserClient) Search

func (c UserClient) Search(ctx context.Context, __arg SearchArg) (res []SearchResult, err error)

Search for users who match a given query.

type UserInterface

type UserInterface interface {
	ListTrackers(context.Context, ListTrackersArg) ([]Tracker, error)
	ListTrackersByName(context.Context, ListTrackersByNameArg) ([]Tracker, error)
	ListTrackersSelf(context.Context, int) ([]Tracker, error)
	// Load user summaries for the supplied uids.
	// They are "unchecked" in that the client is not verifying the info from the server.
	// If len(uids) > 500, the first 500 will be returned.
	LoadUncheckedUserSummaries(context.Context, LoadUncheckedUserSummariesArg) ([]UserSummary, error)
	// Load a user from the server.
	LoadUser(context.Context, LoadUserArg) (User, error)
	LoadUserByName(context.Context, LoadUserByNameArg) (User, error)
	// Load a user + device keys from the server.
	LoadUserPlusKeys(context.Context, LoadUserPlusKeysArg) (UserPlusKeys, error)
	// Load public keys for a user.
	LoadPublicKeys(context.Context, LoadPublicKeysArg) ([]PublicKey, error)
	// The list-tracking functions get verified data from the tracking statements
	// in the user's sigchain.
	//
	// If assertion is empty, it will use the current logged in user.
	ListTracking(context.Context, ListTrackingArg) ([]UserSummary, error)
	ListTrackingJSON(context.Context, ListTrackingJSONArg) (string, error)
	// Search for users who match a given query.
	Search(context.Context, SearchArg) ([]SearchResult, error)
	// Load all the user's public keys (even those in reset key families)
	// from the server with no verification
	LoadAllPublicKeysUnverified(context.Context, LoadAllPublicKeysUnverifiedArg) ([]PublicKey, error)
	ListTrackers2(context.Context, ListTrackers2Arg) (UserSummary2Set, error)
}

type UserPlusKeys

type UserPlusKeys struct {
	Uid               UID               `codec:"uid" json:"uid"`
	Username          string            `codec:"username" json:"username"`
	DeviceKeys        []PublicKey       `codec:"deviceKeys" json:"deviceKeys"`
	RevokedDeviceKeys []RevokedKey      `codec:"revokedDeviceKeys" json:"revokedDeviceKeys"`
	PGPKeyCount       int               `codec:"pgpKeyCount" json:"pgpKeyCount"`
	Uvv               UserVersionVector `codec:"uvv" json:"uvv"`
}

type UserResolution added in v1.0.16

type UserResolution struct {
	Assertion SocialAssertion `codec:"assertion" json:"assertion"`
	UserID    UID             `codec:"userID" json:"userID"`
}

UserResolution maps how an unresolved user assertion has been resolved.

type UserSummary

type UserSummary struct {
	Uid          UID    `codec:"uid" json:"uid"`
	Username     string `codec:"username" json:"username"`
	Thumbnail    string `codec:"thumbnail" json:"thumbnail"`
	IdVersion    int    `codec:"idVersion" json:"idVersion"`
	FullName     string `codec:"fullName" json:"fullName"`
	Bio          string `codec:"bio" json:"bio"`
	Proofs       Proofs `codec:"proofs" json:"proofs"`
	SigIDDisplay string `codec:"sigIDDisplay" json:"sigIDDisplay"`
	TrackTime    Time   `codec:"trackTime" json:"trackTime"`
}

type UserSummary2 added in v1.0.17

type UserSummary2 struct {
	Uid        UID    `codec:"uid" json:"uid"`
	Username   string `codec:"username" json:"username"`
	Thumbnail  string `codec:"thumbnail" json:"thumbnail"`
	FullName   string `codec:"fullName" json:"fullName"`
	IsFollower bool   `codec:"isFollower" json:"isFollower"`
	IsFollowee bool   `codec:"isFollowee" json:"isFollowee"`
}

type UserSummary2Set added in v1.0.17

type UserSummary2Set struct {
	Users   []UserSummary2 `codec:"users" json:"users"`
	Time    Time           `codec:"time" json:"time"`
	Version int            `codec:"version" json:"version"`
}

type UserVersionVector

type UserVersionVector struct {
	Id               int64 `codec:"id" json:"id"`
	SigHints         int   `codec:"sigHints" json:"sigHints"`
	SigChain         int64 `codec:"sigChain" json:"sigChain"`
	CachedAt         Time  `codec:"cachedAt" json:"cachedAt"`
	LastIdentifiedAt Time  `codec:"lastIdentifiedAt" json:"lastIdentifiedAt"`
}

type VerifySessionArg

type VerifySessionArg struct {
	Session string `codec:"session" json:"session"`
}

type VerifySessionRes

type VerifySessionRes struct {
	Uid       UID    `codec:"uid" json:"uid"`
	Sid       string `codec:"sid" json:"sid"`
	Generated int    `codec:"generated" json:"generated"`
	Lifetime  int    `codec:"lifetime" json:"lifetime"`
}

type WantToAddGPGKeyArg

type WantToAddGPGKeyArg struct {
	SessionID int `codec:"sessionID" json:"sessionID"`
}

type WebProof

type WebProof struct {
	Hostname  string   `codec:"hostname" json:"hostname"`
	Protocols []string `codec:"protocols" json:"protocols"`
}

type WriteArg

type WriteArg struct {
	SessionID int    `codec:"sessionID" json:"sessionID"`
	S         Stream `codec:"s" json:"s"`
	Buf       []byte `codec:"buf" json:"buf"`
}

Jump to

Keyboard shortcuts

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