| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813 |
- // Generated by IcedCoffeeScript 1.7.1-c
- (function() {
- var E, GE, IS, PackageJson, QuarantinedKeyRing, SigChain, TmpKeyRing, TrackWrapper, TrackerProofGen, UntrackerProofGen, User, akatch, athrow, chain_err, colors, constants, db, deepeq, env, filter, fpeq, iced, kbpgp, libkeybase, load_key, log, make_esc, master_ring, merkle_client, req, session, tor, unix_time, __iced_k, __iced_k_noop, _ref, _ref1, _ref2, _ref3, _ref4, _ref5;
- iced = require('iced-runtime').iced;
- __iced_k = __iced_k_noop = function() {};
- req = require('./req');
- db = require('./db');
- constants = require('./constants').constants;
- _ref = require('iced-error'), chain_err = _ref.chain_err, make_esc = _ref.make_esc;
- _ref1 = require('./err'), GE = _ref1.GE, E = _ref1.E;
- deepeq = require('deep-equal');
- SigChain = require('./sigchain').SigChain;
- log = require('./log');
- _ref2 = require('./sigs'), UntrackerProofGen = _ref2.UntrackerProofGen, TrackerProofGen = _ref2.TrackerProofGen;
- session = require('./session').session;
- env = require('./env').env;
- TrackWrapper = require('./trackwrapper').TrackWrapper;
- _ref3 = require('pgp-utils').util, fpeq = _ref3.fpeq, unix_time = _ref3.unix_time;
- _ref4 = require('./keyring'), QuarantinedKeyRing = _ref4.QuarantinedKeyRing, TmpKeyRing = _ref4.TmpKeyRing, load_key = _ref4.load_key, master_ring = _ref4.master_ring;
- _ref5 = require('iced-utils').util, athrow = _ref5.athrow, akatch = _ref5.akatch;
- IS = constants.import_state;
- PackageJson = require('./package').PackageJson;
- libkeybase = require('libkeybase');
- tor = require('./tor');
- colors = require('./colors');
- kbpgp = require('kbpgp');
- merkle_client = require('./merkle_client').merkle_client;
- filter = function(d, v) {
- var k, out, _i, _len;
- out = {};
- for (_i = 0, _len = v.length; _i < _len; _i++) {
- k = v[_i];
- if (d != null) {
- out[k] = d[k];
- }
- }
- return out;
- };
- exports.User = User = (function() {
- User.cache = {};
- User.server_cache = {};
- User.FIELDS = ["basics", "public_keys", "id", "merkle_data", "private_keys", "logged_in"];
- function User(args) {
- var k, _i, _len, _ref6;
- _ref6 = User.FIELDS;
- for (_i = 0, _len = _ref6.length; _i < _len; _i++) {
- k = _ref6[_i];
- this[k] = args[k];
- }
- this._dirty = false;
- this.sig_chain = null;
- this._is_self = false;
- this._have_secret_key = false;
- this.sibkeys = [];
- this.gpg_keys = [];
- }
- User.prototype.set_logged_in = function() {
- return this.logged_in = session.logged_in();
- };
- User.prototype.set_is_self = function(b) {
- return this._is_self = b;
- };
- User.prototype.is_self = function() {
- return this._is_self;
- };
- User.prototype.set_have_secret_key = function(b) {
- return this._have_secret_key = b;
- };
- User.prototype.have_secret_key = function() {
- return this._have_secret_key;
- };
- User.prototype.to_obj = function() {
- var k, out, _i, _len, _ref6;
- out = {};
- _ref6 = User.FIELDS;
- for (_i = 0, _len = _ref6.length; _i < _len; _i++) {
- k = _ref6[_i];
- out[k] = this[k];
- }
- return out;
- };
- User.prototype.private_key_bundle = function() {
- var _ref6, _ref7;
- return (_ref6 = this.private_keys) != null ? (_ref7 = _ref6.primary) != null ? _ref7.bundle : void 0 : void 0;
- };
- User.prototype.names = function() {
- var fp, ki64, ret;
- ret = [
- {
- type: constants.lookups.username,
- name: this.basics.username
- }
- ];
- if ((ki64 = this.key_id_64()) != null) {
- ret.push({
- type: constants.lookups.key_id_64_to_user,
- name: ki64
- });
- }
- if ((fp = this.fingerprint(false)) != null) {
- ret.push({
- type: constants.lookups.key_fingerprint_to_user,
- name: fp
- });
- }
- return ret;
- };
- User.prototype.store = function(force_store, cb) {
- var err, un, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- err = null;
- un = this.username();
- (function(_this) {
- return (function(__iced_k) {
- if (force_store || _this._dirty) {
- log.debug("+ " + un + ": storing user to local DB");
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.store"
- });
- db.put({
- key: _this.id,
- value: _this.to_obj(),
- names: _this.names()
- }, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return err = arguments[0];
- };
- })(),
- lineno: 94
- }));
- __iced_deferrals._fulfill();
- })(function() {
- return __iced_k(log.debug("- " + un + ": stored user to local DB"));
- });
- } else {
- return __iced_k();
- }
- });
- })(this)((function(_this) {
- return function() {
- (function(__iced_k) {
- if ((_this.sig_chain != null) && (err == null)) {
- log.debug("+ " + un + ": storing signature chain");
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.store"
- });
- _this.sig_chain.store(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return err = arguments[0];
- };
- })(),
- lineno: 98
- }));
- __iced_deferrals._fulfill();
- })(function() {
- return __iced_k(log.debug("- " + un + ": stored signature chain"));
- });
- } else {
- return __iced_k();
- }
- })(function() {
- return cb(err);
- });
- };
- })(this));
- };
- User.prototype.update_fields = function(remote) {
- var k, _i, _len, _ref6;
- _ref6 = User.FIELDS;
- for (_i = 0, _len = _ref6.length; _i < _len; _i++) {
- k = _ref6[_i];
- this.update_field(remote, k);
- }
- return true;
- };
- User.prototype.update_field = function(remote, which) {
- if (!(deepeq(this[which], remote[which]))) {
- this[which] = remote[which];
- return this._dirty = true;
- }
- };
- User.prototype.load_sig_chain_from_storage = function(cb) {
- var err, ph, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- err = null;
- log.debug("+ load sig chain from local storage");
- (function(_this) {
- return (function(__iced_k) {
- var _ref6;
- if ((ph = (_ref6 = _this.merkle_data) != null ? _ref6.payload_hash : void 0) != null) {
- log.debug("| loading sig chain w/ payload hash " + ph);
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.load_sig_chain_from_storage"
- });
- SigChain.load(_this.id, _this.username(), ph, __iced_deferrals.defer({
- assign_fn: (function(__slot_1) {
- return function() {
- err = arguments[0];
- return __slot_1.sig_chain = arguments[1];
- };
- })(_this),
- lineno: 123
- }));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- log.debug("| No payload hash tail pointer found");
- return __iced_k(_this.sig_chain = new SigChain(_this.id, _this.username()));
- }
- });
- })(this)((function(_this) {
- return function() {
- log.debug("- loaded sig chain from local storage");
- return cb(err);
- };
- })(this));
- };
- User.prototype.load_full_sig_chain = function(cb) {
- var err, sc, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- log.debug("+ load full sig chain");
- sc = new SigChain(this.id, this.username());
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.load_full_sig_chain"
- });
- sc.update(null, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return err = arguments[0];
- };
- })(),
- lineno: 135
- }));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- if (typeof err === "undefined" || err === null) {
- _this.sig_chain = sc;
- }
- log.debug("- loaded full sig chain");
- return cb(err);
- };
- })(this));
- };
- User.prototype.update_sig_chain = function(remote_seqno, cb) {
- var did_update, err, last, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- log.debug("+ update sig chain; remote_seqno=" + remote_seqno);
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.update_sig_chain"
- });
- _this.sig_chain.update(remote_seqno, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- err = arguments[0];
- return did_update = arguments[1];
- };
- })(),
- lineno: 144
- }));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- if (did_update) {
- last = _this.sig_chain.last().export_to_user();
- log.debug("| update sig_chain last link to " + (JSON.stringify(last)));
- _this._dirty = true;
- }
- log.debug("- updated sig chain");
- return cb(err);
- };
- })(this));
- };
- User.prototype.update_with = function(remote, cb) {
- var a, b, err, ___iced_passed_deferral, __iced_deferrals, __iced_k, _ref6, _ref7;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- err = null;
- log.debug("+ updating local user w/ remote");
- a = (_ref6 = this.basics) != null ? _ref6.id_version : void 0;
- b = remote != null ? (_ref7 = remote.basics) != null ? _ref7.id_version : void 0 : void 0;
- if ((b == null) || a > b) {
- err = new E.VersionRollbackError("Server version-rollback suspected: Local " + a + " > " + b);
- } else {
- this.update_fields(remote);
- }
- (function(_this) {
- return (function(__iced_k) {
- if (err == null) {
- (function(__iced_k) {
- var _ref8;
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.update_with"
- });
- _this.update_sig_chain((_ref8 = remote.merkle_data) != null ? _ref8.seqno : void 0, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return err = arguments[0];
- };
- })(),
- lineno: 169
- }));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k();
- }
- });
- })(this)((function(_this) {
- return function() {
- log.debug("- finished update");
- return cb(err);
- };
- })(this));
- };
- User.map_key_to_user_local = function(query, cb) {
- var b, err, k, ret, row, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- log.debug("+ map_key_to_user_local " + (JSON.stringify(query)));
- err = ret = null;
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.map_key_to_user_local"
- });
- db.lookup(query, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- err = arguments[0];
- return row = arguments[1];
- };
- })(),
- lineno: 180
- }));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- k = JSON.stringify(query);
- if (err != null) {
- } else if (typeof row === "undefined" || row === null) {
- err = new E.NotFoundError("Key not found for query " + k);
- } else {
- b = row.basics;
- ret = {
- uid: b.uid,
- username: b.username
- };
- }
- log.debug("- map_key_to_user_local -> " + err);
- return cb(err, ret);
- };
- })(this));
- };
- User.map_key_to_user = function(query, cb) {
- var basics, err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- log.debug("+ map_key_to_user: " + (JSON.stringify(query)));
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.map_key_to_user"
- });
- User.map_key_to_user_local(query, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- err = arguments[0];
- return basics = arguments[1];
- };
- })(),
- lineno: 195
- }));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- (function(__iced_k) {
- if (typeof err !== "undefined" && err !== null) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.map_key_to_user"
- });
- User.map_key_to_user_remote(query, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- err = arguments[0];
- return basics = arguments[1];
- };
- })(),
- lineno: 196
- }));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k();
- }
- })(function() {
- log.debug("- mapped -> " + err);
- return cb(err, basics);
- });
- };
- })(this));
- };
- User.map_key_to_user_remote = function(query, cb) {
- var L, body, d, err, key, qs, req_args, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- qs = JSON.stringify(query);
- log.debug("+ " + qs + ": map to username");
- err = null;
- L = constants.lookups;
- body = null;
- key = (function() {
- switch (query.type) {
- case L.key_fingerprint_to_user:
- return 'fingerprint';
- case L.key_id_64_to_user:
- return 'pgp_key_id';
- default:
- err = new E.BadQueryError("Bad query type: " + query.type);
- return null;
- }
- })();
- (function(_this) {
- return (function(__iced_k) {
- if (err == null) {
- d = {};
- d[key] = query.name;
- req_args = {
- endpoint: "key/basics",
- args: d
- };
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.map_key_to_user_remote"
- });
- req.get(req_args, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- err = arguments[0];
- return body = arguments[1];
- };
- })(),
- lineno: 220
- }));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k();
- }
- });
- })(this)((function(_this) {
- return function() {
- log.debug("- " + qs + ": map -> " + err);
- return cb(err, body);
- };
- })(this));
- };
- User.load = function(_arg, cb) {
- var cache, err, ki64, require_public_key, ret, secret, self, username, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- username = _arg.username, ki64 = _arg.ki64, require_public_key = _arg.require_public_key, cache = _arg.cache, self = _arg.self, secret = _arg.secret;
- err = null;
- (function(_this) {
- return (function(__iced_k) {
- if ((username != null) && ((ret = User.cache[username]) != null)) {
- return __iced_k(log.debug("| hit user cache for " + username));
- } else {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.load"
- });
- User._load2({
- username: username,
- ki64: ki64,
- require_public_key: require_public_key,
- cache: cache,
- self: self,
- secret: secret
- }, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- err = arguments[0];
- return ret = arguments[1];
- };
- })(),
- lineno: 231
- }));
- __iced_deferrals._fulfill();
- })(__iced_k);
- }
- });
- })(this)((function(_this) {
- return function() {
- return cb(err, ret);
- };
- })(this));
- };
- User._load2 = function(_arg, cb) {
- var cache, changed, err, esc, fetched_from_server, force_store, k, ki64, local, parsed_keys, remote, require_public_key, secret, self, user, username, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- username = _arg.username, ki64 = _arg.ki64, require_public_key = _arg.require_public_key, cache = _arg.cache, self = _arg.self, secret = _arg.secret;
- esc = make_esc(cb, "User::load");
- k = username != null ? username : "Key: " + ki64;
- log.debug("+ " + username + ": load user");
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load2"
- });
- User.load_from_storage({
- username: username,
- ki64: ki64
- }, esc(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return local = arguments[0];
- };
- })(),
- lineno: 241
- })));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- var _ref6;
- if (username == null) {
- username = typeof local !== "undefined" && local !== null ? (_ref6 = local.basics) != null ? _ref6.username : void 0 : void 0;
- }
- (function(__iced_k) {
- if (self && secret && !tor.strict()) {
- log.debug("| Checking session since we're loading User as self (and need secret key)");
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load2"
- });
- session.load_and_check(esc(__iced_deferrals.defer({
- lineno: 248
- })));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k();
- }
- })(function() {
- (function(__iced_k) {
- if (self && tor.strict()) {
- return __iced_k(log.warn("Tor strict mode: " + (colors.bold('not')) + " syncing your profile with the server"));
- } else {
- fetched_from_server = true;
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load2"
- });
- User.load_from_server({
- self: self,
- secret: secret,
- username: username,
- local_user: local
- }, esc(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return remote = arguments[0];
- };
- })(),
- lineno: 254
- })));
- __iced_deferrals._fulfill();
- })(__iced_k);
- }
- })(function() {
- changed = true;
- force_store = false;
- (function(__iced_k) {
- if (typeof local !== "undefined" && local !== null) {
- user = local;
- (function(__iced_k) {
- if (typeof remote !== "undefined" && remote !== null) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load2"
- });
- user.update_with(remote, esc(__iced_deferrals.defer({
- lineno: 261
- })));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k();
- }
- })(__iced_k);
- } else {
- (function(__iced_k) {
- if (typeof remote !== "undefined" && remote !== null) {
- user = remote;
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load2"
- });
- user.load_full_sig_chain(esc(__iced_deferrals.defer({
- lineno: 264
- })));
- __iced_deferrals._fulfill();
- })(function() {
- return __iced_k(force_store = true);
- });
- } else {
- return __iced_k(tor.strict() ? err = new E.TorStrictError("Can't load your info from the server in strict Tor mode") : err = new E.NotFoundError("User " + username + " wasn't found"));
- }
- })(__iced_k);
- }
- })(function() {
- (function(__iced_k) {
- if (typeof err !== "undefined" && err !== null) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load2"
- });
- athrow(err, esc(__iced_deferrals.defer({
- lineno: 271
- })));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k();
- }
- })(function() {
- (function(__iced_k) {
- var _ref7;
- if (require_public_key && (((_ref7 = user.merkle_data) != null ? _ref7.eldest_kid : void 0) == null)) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load2"
- });
- athrow(new Error("user doesn't have a public key"), esc(__iced_deferrals.defer({
- lineno: 274
- })));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k();
- }
- })(function() {
- (function(__iced_k) {
- var _ref7;
- if (((_ref7 = user.public_keys) != null ? _ref7.all_bundles : void 0) == null) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load2"
- });
- athrow(new Error("User key bundles missing."), esc(__iced_deferrals.defer({
- lineno: 277
- })));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k();
- }
- })(function() {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load2"
- });
- libkeybase.ParsedKeys.parse({
- key_bundles: user.public_keys.all_bundles
- }, esc(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return parsed_keys = arguments[0];
- };
- })(),
- lineno: 278
- })));
- __iced_deferrals._fulfill();
- })(function() {
- log.debug("+ " + username + ": verifying signatures");
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load2"
- });
- user._verify({
- parsed_keys: parsed_keys,
- self: self
- }, esc(__iced_deferrals.defer({
- lineno: 284
- })));
- __iced_deferrals._fulfill();
- })(function() {
- log.debug("- " + username + ": verified signatures");
- (function(__iced_k) {
- if (fetched_from_server) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load2"
- });
- user.store(force_store, esc(__iced_deferrals.defer({
- lineno: 289
- })));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k();
- }
- })(function() {
- log.debug("- " + username + ": loaded user");
- if (cache && (typeof err === "undefined" || err === null) && (typeof user !== "undefined" && user !== null)) {
- User.cache[username] = user;
- }
- return cb(err, user);
- });
- });
- });
- });
- });
- });
- });
- });
- });
- };
- })(this));
- };
- User.load_from_server = function(_arg, cb) {
- var args, body, esc, leaf, local_id_version, local_seqno, local_user, merkle_data, payload_hash, pub, ret, root, secret, self, seqno, server_id_version, server_seqno, sig_id, username, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- self = _arg.self, secret = _arg.secret, username = _arg.username, local_user = _arg.local_user;
- esc = make_esc(cb, "User::load_from_server");
- log.debug("+ " + username + ": load user from server");
- if ((ret = User.server_cache[username]) != null) {
- log.debug("| hit server cache");
- cb(null, ret);
- return;
- }
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.load_from_server"
- });
- merkle_client().find_and_verify({
- username: username
- }, esc(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- leaf = arguments[0];
- root = arguments[1];
- return server_id_version = arguments[2];
- };
- })(),
- lineno: 311
- })));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- var _ref6, _ref7;
- local_id_version = local_user != null ? (_ref6 = local_user.basics) != null ? _ref6.id_version : void 0 : void 0;
- local_seqno = local_user != null ? (_ref7 = local_user.merkle_data) != null ? _ref7.seqno : void 0 : void 0;
- if (typeof leaf !== "undefined" && leaf !== null) {
- pub = leaf.get_public();
- server_seqno = pub != null ? pub.seqno : void 0;
- if (server_id_version === local_id_version && server_seqno === local_seqno && local_user._format_up_to_date({})) {
- log.debug("| id_version (" + local_id_version + ") and seqno (" + local_seqno + ") haven't changed.");
- cb(null, null);
- return;
- } else if (server_id_version < local_id_version) {
- cb(new Error("Server id version (" + server_id_version + ") rolled back from local (" + local_id_version + ")"));
- return;
- } else if (server_seqno < local_seqno) {
- cb(new Error("Server seqno (" + server_seqno + ") rolled back from local (" + local_seqno + ")"));
- return;
- }
- if (pub != null) {
- seqno = pub.seqno;
- sig_id = pub.sig_id + libkeybase.SIG_ID_SUFFIX;
- payload_hash = pub.payload_hash;
- }
- merkle_data = {
- seqno: seqno,
- sig_id: sig_id,
- payload_hash: payload_hash,
- eldest_kid: leaf.get_eldest_kid()
- };
- } else {
- merkle_data = null;
- }
- args = {
- endpoint: "user/lookup",
- args: {
- username: username
- },
- need_cookie: self && secret
- };
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.load_from_server"
- });
- req.get(args, esc(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return body = arguments[0];
- };
- })(),
- lineno: 354
- })));
- __iced_deferrals._fulfill();
- })(function() {
- ret = new User(body.them);
- ret.set_logged_in();
- ret.merkle_data = merkle_data;
- User.server_cache[username] = ret;
- log.debug("- " + username + ": loaded user from server");
- return cb(null, ret);
- });
- };
- })(this));
- };
- User.prototype._format_up_to_date = function(_arg) {
- var _ref6;
- _arg;
- if (((_ref6 = this.public_keys) != null ? _ref6.all_bundles : void 0) == null) {
- return false;
- }
- return true;
- };
- User.load_from_storage = function(_arg, cb) {
- var err, ki64, name, ret, row, type, username, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- username = _arg.username, ki64 = _arg.ki64;
- name = username || ki64;
- log.debug("+ " + name + ": load user from local storage");
- type = username != null ? constants.lookups.username : constants.lookups.key_id_64_to_user;
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.load_from_storage"
- });
- db.lookup({
- type: type,
- name: name
- }, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- err = arguments[0];
- return row = arguments[1];
- };
- })(),
- lineno: 380
- }));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- (function(__iced_k) {
- if ((typeof err === "undefined" || err === null) && (typeof row !== "undefined" && row !== null)) {
- ret = new User(row);
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.load_from_storage"
- });
- ret.load_sig_chain_from_storage(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return err = arguments[0];
- };
- })(),
- lineno: 383
- }));
- __iced_deferrals._fulfill();
- })(function() {
- return __iced_k(typeof err !== "undefined" && err !== null ? ret = null : void 0);
- });
- } else {
- return __iced_k();
- }
- })(function() {
- log.debug("- " + name + ": loaded user from local storage -> " + err + " / " + ret);
- return cb(err, ret);
- });
- };
- })(this));
- };
- User.prototype.fingerprint = function(upper_case) {
- var _ref6, _ref7;
- if (upper_case == null) {
- upper_case = false;
- }
- if (this._fingerprint == null) {
- this._fingerprint = {
- lc: (_ref6 = this.default_key()) != null ? _ref6.fingerprint().toString('hex') : void 0
- };
- this._fingerprint.uc = (_ref7 = this._fingerprint.lc) != null ? _ref7.toUpperCase() : void 0;
- }
- return this._fingerprint[upper_case ? 'uc' : 'lc'];
- };
- User.prototype.key_id_64 = function() {
- var fp;
- if ((fp = this.fingerprint(false)) != null) {
- return fp.slice(-16);
- } else {
- return null;
- }
- };
- User.resolve_user_name = function(_arg, cb) {
- var ass_out, body, err, esc, uri, username, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- username = _arg.username;
- log.debug("+ resolving username " + username);
- esc = make_esc(cb, "resolve_user_name");
- err = null;
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.resolve_user_name"
- });
- akatch((function() {
- return libkeybase.assertion.URI.parse({
- s: username,
- strict: false
- });
- }), esc(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return uri = arguments[0];
- };
- })(),
- lineno: 415
- })));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- (function(__iced_k) {
- if (!uri.is_keybase()) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.resolve_user_name"
- });
- req.get({
- endpoint: "user/lookup",
- args: uri.to_lookup_query()
- }, esc(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return body = arguments[0];
- };
- })(),
- lineno: 417
- })));
- __iced_deferrals._fulfill();
- })(function() {
- return __iced_k(body.them.length === 0 ? err = new E.NotFoundError("No user found for '" + username + "'") : body.them.length > 1 ? err = new E.AmbiguityError("Multiple results returned for '" + username + "'; expected only 1") : (username = body.them[0].basics.username, ass_out = uri));
- });
- } else {
- return __iced_k();
- }
- })(function() {
- log.debug("- resolved to " + username);
- return cb(err, username, ass_out);
- });
- };
- })(this));
- };
- User.load_me = function(opts, cb) {
- var esc, me, username, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- esc = make_esc(cb, "User::load_me");
- log.debug("+ User::load_me");
- (function(_this) {
- return (function(__iced_k) {
- if ((username = env().get_username()) == null) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.load_me"
- });
- athrow(new E.NoUsernameError("no username for current user; try `keybase login`"), esc(__iced_deferrals.defer({
- lineno: 448
- })));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k();
- }
- });
- })(this)((function(_this) {
- return function() {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.load_me"
- });
- User.load({
- username: username,
- self: true,
- secret: opts.secret
- }, esc(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return me = arguments[0];
- };
- })(),
- lineno: 449
- })));
- __iced_deferrals._fulfill();
- })(function() {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.load_me"
- });
- me._load_me_2(opts, esc(__iced_deferrals.defer({
- lineno: 450
- })));
- __iced_deferrals._fulfill();
- })(function() {
- log.debug("- User::load_me");
- return cb(null, me);
- });
- });
- };
- })(this));
- };
- User.prototype._load_me_2 = function(_arg, cb) {
- var do_install, err, esc, install_key, load_secret, maybe_secret, secret, un, verify_opts, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- secret = _arg.secret, maybe_secret = _arg.maybe_secret, install_key = _arg.install_key, verify_opts = _arg.verify_opts;
- esc = make_esc(cb, "User::_load_me_2");
- un = this.username();
- this.set_is_self(true);
- if (this.sibkeys.length === 0) {
- cb(null);
- return;
- }
- load_secret = secret || maybe_secret;
- (function(_this) {
- return (function(__iced_k) {
- if (load_secret) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load_me_2"
- });
- master_ring().make_secret_gpg_key_from_user({
- user: _this
- }, __iced_deferrals.defer({
- assign_fn: (function(__slot_1) {
- return function() {
- err = arguments[0];
- return __slot_1.key = arguments[1];
- };
- })(_this),
- lineno: 468
- }));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- _this.key = _this.default_key();
- log.debug("+ " + un + ": checking public key");
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load_me_2"
- });
- _this.key.find(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return err = arguments[0];
- };
- })(),
- lineno: 473
- }));
- __iced_deferrals._fulfill();
- })(function() {
- return __iced_k(log.debug("- " + un + ": checked public key"));
- });
- }
- });
- })(this)((function(_this) {
- return function() {
- (function(__iced_k) {
- if ((typeof err === "undefined" || err === null) && load_secret) {
- return __iced_k(_this.set_have_secret_key(true));
- } else {
- (function(__iced_k) {
- if ((typeof err !== "undefined" && err !== null) && (err instanceof E.NoLocalKeyError) && maybe_secret) {
- _this.key = _this.default_key();
- log.debug("+ " + un + ": checking public key");
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load_me_2"
- });
- _this.key.find(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return err = arguments[0];
- };
- })(),
- lineno: 482
- }));
- __iced_deferrals._fulfill();
- })(function() {
- return __iced_k(log.debug("- " + un + ": checked public key"));
- });
- } else {
- return __iced_k();
- }
- })(__iced_k);
- }
- })(function() {
- (function(__iced_k) {
- if ((typeof err !== "undefined" && err !== null) && (err instanceof E.NoLocalKeyError) && install_key) {
- return __iced_k(do_install = true);
- } else {
- (function(__iced_k) {
- if (typeof err !== "undefined" && err !== null) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load_me_2"
- });
- athrow(err, esc(__iced_deferrals.defer({
- lineno: 488
- })));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k(do_install = false);
- }
- })(__iced_k);
- }
- })(function() {
- (function(__iced_k) {
- if (do_install) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._load_me_2"
- });
- _this.key.commit({}, esc(__iced_deferrals.defer({
- lineno: 493
- })));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k();
- }
- })(function() {
- return cb(null);
- });
- });
- });
- };
- })(this));
- };
- User.prototype.check_key = function(_arg, cb) {
- var err, key, ret, secret, store, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- secret = _arg.secret, store = _arg.store;
- ret = {};
- log.debug("+ " + (this.username()) + ": check public key");
- (function(_this) {
- return (function(__iced_k) {
- if (_this.fingerprint() != null) {
- ret.remote = !secret || (_this.private_key_bundle() != null);
- (function(__iced_k) {
- if (secret) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.check_key"
- });
- master_ring().make_secret_gpg_key_from_user({
- user: _this
- }, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- err = arguments[0];
- return key = arguments[1];
- };
- })(),
- lineno: 506
- }));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- key = _this.default_key();
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.check_key"
- });
- key.find(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return err = arguments[0];
- };
- })(),
- lineno: 509
- }));
- __iced_deferrals._fulfill();
- })(__iced_k);
- }
- })(function() {
- return __iced_k(typeof err === "undefined" || err === null ? (ret.local = true, store ? _this.key = key : void 0) : err instanceof E.NoLocalKeyError ? (err = null, ret.local = false) : void 0);
- });
- } else {
- return __iced_k();
- }
- });
- })(this)((function(_this) {
- return function() {
- log.debug("- " + (_this.username()) + ": check_public_key: ret=" + (JSON.stringify(ret)) + "; err=" + err);
- return cb(err, ret);
- };
- })(this));
- };
- User.prototype.load_public_key = function(_arg, cb) {
- var err, query, signer, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- signer = _arg.signer;
- log.debug("+ load public key for " + (this.username()));
- err = null;
- (function(_this) {
- return (function(__iced_k) {
- if (_this.key == null) {
- query = {
- username: _this.username(),
- fingerprint: _this.fingerprint()
- };
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.load_public_key"
- });
- load_key(query, __iced_deferrals.defer({
- assign_fn: (function(__slot_1) {
- return function() {
- err = arguments[0];
- return __slot_1.key = arguments[1];
- };
- })(_this),
- lineno: 527
- }));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k();
- }
- });
- })(this)((function(_this) {
- return function() {
- log.debug("- load public key; found=" + (!!_this.key) + "; err=" + err);
- return cb(err, _this.key);
- };
- })(this));
- };
- User.prototype.username = function() {
- return this.basics.username;
- };
- User.prototype.import_public_keys = function(_arg, cb) {
- var esc, key, keyring, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- keyring = _arg.keyring;
- esc = make_esc(cb, "User::import_public_keys");
- log.debug("+ Import public keys from " + (keyring.to_string()));
- (function(_this) {
- return (function(__iced_k) {
- var _i, _len, _ref6, _results, _while;
- _ref6 = _this.gpg_keys;
- _len = _ref6.length;
- _i = 0;
- _results = [];
- _while = function(__iced_k) {
- var _break, _continue, _next;
- _break = function() {
- return __iced_k(_results);
- };
- _continue = function() {
- return iced.trampoline(function() {
- ++_i;
- return _while(__iced_k);
- });
- };
- _next = function(__iced_next_arg) {
- _results.push(__iced_next_arg);
- return _continue();
- };
- if (!(_i < _len)) {
- return _break();
- } else {
- key = _ref6[_i];
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.import_public_keys"
- });
- key.save(esc(__iced_deferrals.defer({
- lineno: 541
- })));
- __iced_deferrals._fulfill();
- })(_next);
- }
- };
- _while(__iced_k);
- });
- })(this)((function(_this) {
- return function() {
- log.debug("- Import public keys from " + (keyring.to_string()));
- return cb(null);
- };
- })(this));
- };
- User.prototype.display_cryptocurrency_addresses = function(opts, cb) {
- var err, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.display_cryptocurrency_addresses"
- });
- _this.sig_chain.display_cryptocurrency_addresses(opts, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return err = arguments[0];
- };
- })(),
- lineno: 548
- }));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- return cb(err);
- };
- })(this));
- };
- User.prototype.check_remote_proofs = function(opts, cb) {
- var err, n_proofs, warnings, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- opts.gpg_keys = this.gpg_keys;
- opts.username = this.username();
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.check_remote_proofs"
- });
- _this.sig_chain.check_remote_proofs(opts, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- err = arguments[0];
- warnings = arguments[1];
- return n_proofs = arguments[2];
- };
- })(),
- lineno: 556
- }));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- return cb(err, warnings, n_proofs);
- };
- })(this));
- };
- User.prototype._verify = function(_arg, cb) {
- var err, esc, opts, parsed_keys, self, ___iced_passed_deferral, __iced_deferrals, __iced_k, _ref6;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- opts = _arg.opts, parsed_keys = _arg.parsed_keys, self = _arg.self;
- esc = make_esc(cb, "User::verify");
- this.sibkeys = [];
- this.gpg_keys = [];
- if (((_ref6 = this.merkle_data) != null ? _ref6.eldest_kid : void 0) == null) {
- cb(null);
- return;
- }
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User._verify"
- });
- _this.sig_chain.verify_sig({
- opts: opts,
- key: _this.key,
- parsed_keys: parsed_keys,
- merkle_data: _this.merkle_data
- }, __iced_deferrals.defer({
- assign_fn: (function(__slot_1) {
- return function() {
- err = arguments[0];
- return __slot_1.sibkeys = arguments[1];
- };
- })(_this),
- lineno: 579
- }));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- if (typeof err !== "undefined" && err !== null) {
- if (self && (err instanceof libkeybase.E.KeyOwnershipError)) {
- log.warn("You have not proven ownership of your key. Run `keybase push --update`.");
- _this.sibkeys = [parsed_keys.get_merged_pgp_key_manager(_this.merkle_data.eldest_kid)];
- } else {
- cb(err);
- return;
- }
- }
- _this.gpg_keys = master_ring().make_all_public_gpg_keys_from_user({
- user: _this
- });
- return cb(null);
- };
- })(this));
- };
- User.prototype.default_key = function() {
- return this.gpg_keys[0];
- };
- User.prototype.list_remote_proofs = function(opts) {
- var _ref6;
- return (_ref6 = this.sig_chain) != null ? _ref6.list_remote_proofs(opts) : void 0;
- };
- User.prototype.list_trackees = function() {
- var _ref6;
- return (_ref6 = this.sig_chain) != null ? _ref6.list_trackees() : void 0;
- };
- User.prototype.list_cryptocurrency_addresses = function() {
- var _ref6;
- return (_ref6 = this.sig_chain) != null ? _ref6.list_cryptocurrency_addresses() : void 0;
- };
- User.prototype.merkle_root = function() {
- var _ref6;
- return (_ref6 = this.sig_chain) != null ? _ref6.merkle_root_to_track_obj() : void 0;
- };
- User.prototype.gen_remote_proof_gen = function(_arg, cb) {
- var arg, err, klass, remote_name_normalized, ret, sig_id, supersede, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- klass = _arg.klass, remote_name_normalized = _arg.remote_name_normalized, sig_id = _arg.sig_id, supersede = _arg.supersede;
- arg = {
- remote_name_normalized: remote_name_normalized,
- sig_id: sig_id,
- supersede: supersede
- };
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.gen_remote_proof_gen"
- });
- _this.gen_sig_base({
- klass: klass,
- arg: arg
- }, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- err = arguments[0];
- return ret = arguments[1];
- };
- })(),
- lineno: 613
- }));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- return cb(err, ret);
- };
- })(this));
- };
- User.prototype.gen_sig_base = function(_arg, cb) {
- var arg, err, klass, ret, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- klass = _arg.klass, arg = _arg.arg;
- ret = null;
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.gen_sig_base"
- });
- _this.load_public_key({}, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- return err = arguments[0];
- };
- })(),
- lineno: 620
- }));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- if (typeof err === "undefined" || err === null) {
- arg.eldest_kid = _this.merkle_data.eldest_kid;
- arg.km = _this.key;
- arg.merkle_root = _this.merkle_root();
- arg.client = (new PackageJson()).track_obj();
- ret = new klass(arg);
- }
- return cb(err, ret);
- };
- })(this));
- };
- User.prototype.gen_track_proof_gen = function(_arg, cb) {
- var arg, err, klass, last_link, ret, track_obj, uid, untrack_obj, ___iced_passed_deferral, __iced_deferrals, __iced_k, _ref6;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- uid = _arg.uid, track_obj = _arg.track_obj, untrack_obj = _arg.untrack_obj;
- last_link = (_ref6 = this.sig_chain) != null ? _ref6.true_last() : void 0;
- klass = untrack_obj != null ? UntrackerProofGen : TrackerProofGen;
- arg = {
- seqno: (last_link != null ? last_link.seqno() + 1 : 1),
- prev: (last_link != null ? last_link.id : null),
- uid: uid
- };
- if (track_obj != null) {
- arg.track = track_obj;
- }
- if (untrack_obj != null) {
- arg.untrack = untrack_obj;
- }
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.gen_track_proof_gen"
- });
- _this.gen_sig_base({
- klass: klass,
- arg: arg
- }, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- err = arguments[0];
- return ret = arguments[1];
- };
- })(),
- lineno: 640
- }));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- return cb(err, ret);
- };
- })(this));
- };
- User.prototype.gen_track_obj = function() {
- var out, pkp, _ref6, _ref7, _ref8, _ref9;
- pkp = this.public_keys.primary;
- out = {
- basics: filter(this.basics, ["id_version", "last_id_change", "username"]),
- id: this.id,
- key: {
- kid: (_ref6 = this.merkle_data) != null ? _ref6.eldest_kid : void 0
- },
- seq_tail: (_ref7 = this.sig_chain) != null ? (_ref8 = _ref7.true_last()) != null ? _ref8.to_track_obj() : void 0 : void 0,
- remote_proofs: (_ref9 = this.sig_chain) != null ? _ref9.remote_proofs_to_track_obj() : void 0,
- ctime: unix_time()
- };
- return out;
- };
- User.prototype.remove_key = function(cb) {
- var esc, key, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- esc = make_esc(cb, "User::remove_key");
- (function(_this) {
- return (function(__iced_k) {
- var _i, _len, _ref6, _results, _while;
- _ref6 = _this.gpg_keys;
- _len = _ref6.length;
- _i = 0;
- _results = [];
- _while = function(__iced_k) {
- var _break, _continue, _next;
- _break = function() {
- return __iced_k(_results);
- };
- _continue = function() {
- return iced.trampoline(function() {
- ++_i;
- return _while(__iced_k);
- });
- };
- _next = function(__iced_next_arg) {
- _results.push(__iced_next_arg);
- return _continue();
- };
- if (!(_i < _len)) {
- return _break();
- } else {
- key = _ref6[_i];
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/Users/max/src/keybase/node-client/src/user.iced",
- funcname: "User.remove_key"
- });
- key.remove(esc(__iced_deferrals.defer({
- lineno: 663
- })));
- __iced_deferrals._fulfill();
- })(_next);
- }
- };
- _while(__iced_k);
- });
- })(this)((function(_this) {
- return function() {
- return cb(null);
- };
- })(this));
- };
- User.prototype.gen_untrack_obj = function() {
- var out, pkp;
- pkp = this.public_keys.primary;
- out = {
- basics: filter(this.basics, ["id_version", "last_id_change", "username"]),
- id: this.id,
- key: filter(pkp, ["kid", "key_fingerprint"])
- };
- return out;
- };
- return User;
- })();
- }).call(this);
|