MCPcopy
hub / github.com/moonD4rk/HackBrowserData / NewMasterKeys

Function NewMasterKeys

masterkey/masterkeys.go:29–53  ·  view source on GitHub ↗

NewMasterKeys fetches each non-nil tier and joins per-tier errors. A retriever returning (nil, nil) means "tier not applicable" and contributes no key. Never logs — the caller decides severity.

(r Retrievers, hints Hints)

Source from the content-addressed store, hash-verified

27// NewMasterKeys fetches each non-nil tier and joins per-tier errors. A retriever returning (nil, nil)
28// means "tier not applicable" and contributes no key. Never logs — the caller decides severity.
29func NewMasterKeys(r Retrievers, hints Hints) (MasterKeys, error) {
30 var keys MasterKeys
31 var errs []error
32
33 for _, t := range []struct {
34 name string
35 r Retriever
36 dst *[]byte
37 }{
38 {"v10", r.V10, &keys.V10},
39 {"v11", r.V11, &keys.V11},
40 {"v20", r.V20, &keys.V20},
41 } {
42 if t.r == nil {
43 continue
44 }
45 k, err := t.r.RetrieveKey(hints)
46 if err != nil {
47 errs = append(errs, fmt.Errorf("%s: %w", t.name, err))
48 continue
49 }
50 *t.dst = k
51 }
52 return keys, errors.Join(errs...)
53}

Callers 5

ExportKeysMethod · 0.92
TestNewMasterKeys_MatrixFunction · 0.85

Calls 2

ErrorfMethod · 0.80
RetrieveKeyMethod · 0.65