| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260 |
- // Generated by IcedCoffeeScript 1.7.1-c
- (function() {
- var Base, BufferInStream, Command, E, TrackSubSubCommand, User, add_option_dict, dict_union, env, iced, log, make_esc, master_ring, __iced_k, __iced_k_noop,
- __hasProp = {}.hasOwnProperty,
- __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; };
- iced = require('iced-runtime').iced;
- __iced_k = __iced_k_noop = function() {};
- Base = require('./base').Base;
- log = require('../log');
- add_option_dict = require('./argparse').add_option_dict;
- E = require('../err').E;
- TrackSubSubCommand = require('../tracksubsub').TrackSubSubCommand;
- BufferInStream = require('iced-spawn').BufferInStream;
- master_ring = require('../keyring').master_ring;
- make_esc = require('iced-error').make_esc;
- dict_union = require('../util').dict_union;
- User = require('../user').User;
- env = require('../env').env;
- exports.Command = Command = (function(_super) {
- __extends(Command, _super);
- function Command() {
- return Command.__super__.constructor.apply(this, arguments);
- }
- Command.prototype.OPTS = dict_union(TrackSubSubCommand.OPTS, {
- s: {
- alias: "sign",
- action: "storeTrue",
- help: "sign in addition to encrypting"
- },
- m: {
- alias: "message",
- help: "provide the message on the command line"
- },
- b: {
- alias: 'binary',
- action: "storeTrue",
- help: "output in binary (rather than ASCII/armored)"
- },
- o: {
- alias: 'output',
- help: 'the output file to write the encryption to'
- }
- });
- Command.prototype.add_subcommand_parser = function(scp) {
- var name, opts, sub;
- opts = {
- aliases: ["enc"],
- help: "encrypt a message and output to stdout or a file"
- };
- name = "encrypt";
- sub = scp.addParser(name, opts);
- add_option_dict(sub, this.OPTS);
- sub.addArgument(["them"], {
- nargs: 1,
- help: "the username of the receiver"
- });
- sub.addArgument(["file"], {
- nargs: '?',
- help: "the file to be encrypted"
- });
- return opts.aliases.concat([name]);
- };
- Command.prototype.do_encrypt = function(cb) {
- var args, err, gargs, key, o, out, sign_key, ___iced_passed_deferral, __iced_deferrals, __iced_k, _i, _len, _ref;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- args = ["--encrypt", "--trust-mode", "always"];
- _ref = this.them.gpg_keys;
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- key = _ref[_i];
- args = args.concat("-r", key.fingerprint().toString('hex'));
- }
- if (this.argv.sign) {
- sign_key = this.is_self ? this.them : this.tssc.me;
- args.push("--sign", "-u", sign_key.fingerprint(true));
- }
- gargs = {
- args: args
- };
- gargs.quiet = true;
- if ((o = this.argv.output)) {
- args.push("--output", o, "--yes");
- }
- if (!this.argv.binary) {
- args.push("-a");
- }
- if (this.argv.message) {
- gargs.stdin = new BufferInStream(this.argv.message);
- } else if (this.argv.file != null) {
- args.push(this.argv.file);
- } else {
- gargs.stdin = process.stdin;
- }
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/home/jacko/node-client/src/command/encrypt.iced",
- funcname: "Command.do_encrypt"
- });
- master_ring().gpg(gargs, __iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- err = arguments[0];
- return out = arguments[1];
- };
- })(),
- lineno: 70
- }));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- (function(__iced_k) {
- if (_this.argv.output == null) {
- (function(__iced_k) {
- if (_this.argv.binary) {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/home/jacko/node-client/src/command/encrypt.iced",
- funcname: "Command.do_encrypt"
- });
- process.stdout.write(out, __iced_deferrals.defer({
- lineno: 73
- }));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- return __iced_k(log.console.log(out.toString('utf8')));
- }
- })(__iced_k);
- } else {
- return __iced_k();
- }
- })(function() {
- return cb(err);
- });
- };
- })(this));
- };
- Command.prototype.run = function(cb) {
- var assertions, batch, esc, them_un, ___iced_passed_deferral, __iced_deferrals, __iced_k;
- __iced_k = __iced_k_noop;
- ___iced_passed_deferral = iced.findDeferral(arguments);
- esc = make_esc(cb, "Command::run");
- batch = !this.argv.message && (this.argv.file == null);
- if (this.argv.sign && !env().is_configured()) {
- cb(new Error("You can't sign messages when you aren't logged in."));
- return;
- }
- (function(_this) {
- return (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/home/jacko/node-client/src/command/encrypt.iced",
- funcname: "Command.run"
- });
- User.resolve_user_name({
- username: _this.argv.them[0]
- }, esc(__iced_deferrals.defer({
- assign_fn: (function() {
- return function() {
- them_un = arguments[0];
- return assertions = arguments[1];
- };
- })(),
- lineno: 91
- })));
- __iced_deferrals._fulfill();
- });
- })(this)((function(_this) {
- return function() {
- (function(__iced_k) {
- if (env().is_me(them_un)) {
- _this.is_self = true;
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/home/jacko/node-client/src/command/encrypt.iced",
- funcname: "Command.run"
- });
- User.load_me({
- secret: true
- }, esc(__iced_deferrals.defer({
- assign_fn: (function(__slot_1) {
- return function() {
- return __slot_1.them = arguments[0];
- };
- })(_this),
- lineno: 95
- })));
- __iced_deferrals._fulfill();
- })(__iced_k);
- } else {
- _this.is_self = false;
- _this.tssc = new TrackSubSubCommand({
- args: {
- them: them_un
- },
- opts: _this.argv,
- batch: batch,
- assertions: assertions
- });
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/home/jacko/node-client/src/command/encrypt.iced",
- funcname: "Command.run"
- });
- _this.tssc.pre_encrypt(esc(__iced_deferrals.defer({
- lineno: 99
- })));
- __iced_deferrals._fulfill();
- })(function() {
- return __iced_k(_this.them = _this.tssc.them);
- });
- }
- })(function() {
- (function(__iced_k) {
- __iced_deferrals = new iced.Deferrals(__iced_k, {
- parent: ___iced_passed_deferral,
- filename: "/home/jacko/node-client/src/command/encrypt.iced",
- funcname: "Command.run"
- });
- _this.do_encrypt(esc(__iced_deferrals.defer({
- lineno: 101
- })));
- __iced_deferrals._fulfill();
- })(function() {
- return cb(null);
- });
- });
- };
- })(this));
- };
- return Command;
- })(Base);
- }).call(this);
|