From a08e3fa516d6d6f913a9709248abee358c590844 Mon Sep 17 00:00:00 2001 From: clowwindy Date: Sat, 29 Jun 2013 13:05:28 +0800 Subject: [PATCH] make local.js and server.js runnable --- CHANGES | 3 +++ README.md | 2 +- lib/shadowsocks/encrypt.js | 10 +--------- lib/shadowsocks/local.js | 13 +++++-------- lib/shadowsocks/merge_sort.js | 4 +--- lib/shadowsocks/server.js | 12 +++++------- lib/shadowsocks/test.js | 3 +-- lib/shadowsocks/utils.js | 5 ++--- package.json | 2 +- src/local.coffee | 2 ++ src/server.coffee | 2 ++ src/utils.coffee | 2 +- 12 files changed, 25 insertions(+), 35 deletions(-) diff --git a/CHANGES b/CHANGES index ef39c37..353e025 100644 --- a/CHANGES +++ b/CHANGES @@ -1,3 +1,6 @@ +1.3.5 2013-06-29 +- Make local.js and server.js runnable + 1.3.4 2013-06-29 - Flush logs when exit with error diff --git a/README.md b/README.md index 77879d3..9881906 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ shadowsocks-nodejs =========== -Current version: 1.3.4 +Current version: 1.3.5 [![Build Status](https://travis-ci.org/clowwindy/shadowsocks-nodejs.png)](https://travis-ci.org/clowwindy/shadowsocks-nodejs) shadowsocks-nodejs is a lightweight tunnel proxy which can help you get through diff --git a/lib/shadowsocks/encrypt.js b/lib/shadowsocks/encrypt.js index 1f52ae1..5e9c778 100644 --- a/lib/shadowsocks/encrypt.js +++ b/lib/shadowsocks/encrypt.js @@ -1,4 +1,4 @@ -// Generated by CoffeeScript 1.6.2 +// Generated by CoffeeScript 1.6.3 (function() { var EVP_BytesToKey, Encryptor, bytes_to_key_results, cachedTables, crypto, encrypt, getTable, int32Max, merge_sort, method_supported, to_buffer, util; @@ -14,7 +14,6 @@ getTable = function(key) { var ah, al, decrypt_table, hash, i, md5sum, result, table; - if (cachedTables[key]) { return cachedTables[key]; } @@ -50,7 +49,6 @@ encrypt = function(table, buf) { var i; - i = 0; while (i < buf.length) { buf[i] = table[buf[i]]; @@ -71,7 +69,6 @@ EVP_BytesToKey = function(password, key_len, iv_len) { var count, d, data, i, iv, key, m, md5, ms; - if (bytes_to_key_results[password]) { return bytes_to_key_results[password]; } @@ -116,7 +113,6 @@ Encryptor = (function() { function Encryptor(key, method) { var _ref; - this.key = key; this.method = method; this.iv_sent = false; @@ -132,7 +128,6 @@ Encryptor.prototype.get_cipher_len = function(method) { var m; - method = method.toLowerCase(); m = method_supported[method]; return m; @@ -140,7 +135,6 @@ Encryptor.prototype.get_cipher = function(password, method, op, iv) { var iv_, key, m, _ref; - method = method.toLowerCase(); password = Buffer(password, 'binary'); m = this.get_cipher_len(method); @@ -163,7 +157,6 @@ Encryptor.prototype.encrypt = function(buf) { var result; - if (this.method != null) { result = to_buffer(this.cipher.update(buf.toString('binary'))); if (this.iv_sent) { @@ -179,7 +172,6 @@ Encryptor.prototype.decrypt = function(buf) { var decipher_iv, decipher_iv_len, result; - if (this.method != null) { if (this.decipher == null) { decipher_iv_len = this.get_cipher_len(this.method)[1]; diff --git a/lib/shadowsocks/local.js b/lib/shadowsocks/local.js index 13bf8a2..4f920ff 100644 --- a/lib/shadowsocks/local.js +++ b/lib/shadowsocks/local.js @@ -1,4 +1,4 @@ -// Generated by CoffeeScript 1.6.2 +// Generated by CoffeeScript 1.6.3 (function() { var Encryptor, connections, createServer, fs, inet, inetAton, inetNtoa, net, path, utils; @@ -20,7 +20,6 @@ inetAton = function(ipStr) { var buf, i, parts; - parts = ipStr.split("."); if (parts.length !== 4) { return null; @@ -39,7 +38,6 @@ createServer = function(serverAddr, serverPort, port, key, method, timeout) { var getServer, server; - getServer = function() { if (serverAddr instanceof Array) { return serverAddr[Math.floor(Math.random() * serverAddr.length)]; @@ -49,7 +47,6 @@ }; server = net.createServer(function(connection) { var addrLen, addrToSend, cachedPieces, clean, encryptor, headerLength, remote, remoteAddr, remotePort, stage; - connections += 1; encryptor = new Encryptor(key, method); stage = 0; @@ -71,7 +68,6 @@ }; connection.on("data", function(data) { var aServer, addrtype, buf, cmd, e, reply, tempBuf; - utils.log(utils.EVERYTHING, "connection on data"); if (stage === 5) { data = encryptor.encrypt(data); @@ -130,7 +126,6 @@ aServer = getServer(); remote = net.connect(serverPort, aServer, function() { var addrToSendBuf, i, piece; - utils.info("connecting " + remoteAddr + ":" + remotePort); if (!encryptor) { if (remote) { @@ -154,7 +149,6 @@ }); remote.on("data", function(data) { var e; - utils.log(utils.EVERYTHING, "remote on data"); try { if (encryptor) { @@ -291,7 +285,6 @@ exports.main = function() { var KEY, METHOD, PORT, REMOTE_PORT, SERVER, config, configContent, configFromArgs, configPath, k, s, timeout, v; - console.log(utils.version); configFromArgs = utils.parseArgs(); configPath = 'config.json'; @@ -339,4 +332,8 @@ }); }; + if (require.main === module) { + exports.main(); + } + }).call(this); diff --git a/lib/shadowsocks/merge_sort.js b/lib/shadowsocks/merge_sort.js index 2ce14d9..eaab811 100644 --- a/lib/shadowsocks/merge_sort.js +++ b/lib/shadowsocks/merge_sort.js @@ -1,10 +1,9 @@ -// Generated by CoffeeScript 1.6.2 +// Generated by CoffeeScript 1.6.3 (function() { var merge, merge_sort; merge = function(left, right, comparison) { var result; - result = new Array(); while ((left.length > 0) && (right.length > 0)) { if (comparison(left[0], right[0]) <= 0) { @@ -24,7 +23,6 @@ merge_sort = function(array, comparison) { var middle; - if (array.length < 2) { return array; } diff --git a/lib/shadowsocks/server.js b/lib/shadowsocks/server.js index fb2e7ef..8125cad 100644 --- a/lib/shadowsocks/server.js +++ b/lib/shadowsocks/server.js @@ -1,4 +1,4 @@ -// Generated by CoffeeScript 1.6.2 +// Generated by CoffeeScript 1.6.3 (function() { var Encryptor, fs, inet, net, path, utils; @@ -16,14 +16,12 @@ exports.main = function() { var METHOD, SERVER, config, configContent, configFromArgs, configPath, connections, inetAton, inetNtoa, k, key, port, portPassword, timeout, v, _results; - console.log(utils.version); inetNtoa = function(buf) { return buf[0] + "." + buf[1] + "." + buf[2] + "." + buf[3]; }; inetAton = function(ipStr) { var buf, i, parts; - parts = ipStr.split("."); if (parts.length !== 4) { return null; @@ -89,13 +87,11 @@ key = portPassword[port]; _results.push((function() { var KEY, PORT, server, server_ip, servers, _i, _len; - PORT = port; KEY = key; utils.info("calculating ciphers for port " + PORT); server = net.createServer(function(connection) { var addrLen, cachedPieces, clean, encryptor, headerLength, remote, remoteAddr, remotePort, stage; - connections += 1; encryptor = new Encryptor(KEY, METHOD); stage = 0; @@ -116,7 +112,6 @@ }; connection.on("data", function(data) { var addrtype, buf, e; - utils.log(utils.EVERYTHING, "connection on data"); try { data = encryptor.decrypt(data); @@ -165,7 +160,6 @@ } remote = net.connect(remotePort, remoteAddr, function() { var i, piece; - utils.info("connecting " + remoteAddr + ":" + remotePort); if (!encryptor) { if (remote) { @@ -317,4 +311,8 @@ return _results; }; + if (require.main === module) { + exports.main(); + } + }).call(this); diff --git a/lib/shadowsocks/test.js b/lib/shadowsocks/test.js index 8b36d95..199fb65 100644 --- a/lib/shadowsocks/test.js +++ b/lib/shadowsocks/test.js @@ -1,4 +1,4 @@ -// Generated by CoffeeScript 1.6.2 +// Generated by CoffeeScript 1.6.3 (function() { var child_process, curlRunning, encrypt, i, local, localReady, runCurl, server, serverReady, tables, target; @@ -48,7 +48,6 @@ runCurl = function() { var curl; - curlRunning = true; curl = child_process.spawn('curl', ['-v', 'http://www.example.com/', '-L', '--socks5-hostname', '127.0.0.1:1080']); curl.on('exit', function(code) { diff --git a/lib/shadowsocks/utils.js b/lib/shadowsocks/utils.js index b83ba6e..f31ef8e 100644 --- a/lib/shadowsocks/utils.js +++ b/lib/shadowsocks/utils.js @@ -1,4 +1,4 @@ -// Generated by CoffeeScript 1.6.2 +// Generated by CoffeeScript 1.6.3 (function() { var util, _logging_level; @@ -6,7 +6,6 @@ exports.parseArgs = function() { var defination, lastKey, nextIsValue, oneArg, result, _, _ref; - defination = { '-l': 'local_port', '-p': 'server_port', @@ -34,7 +33,7 @@ return result; }; - exports.version = "shadowsocks-nodejs v1.3.4"; + exports.version = "shadowsocks-nodejs v1.3.5"; exports.EVERYTHING = 0; diff --git a/package.json b/package.json index 04953c3..1268ac8 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "description": "a tunnel proxy that help you get through firewalls", "keywords": ["shadowsocks", "proxy", "socks5"], "author": "clowwindy", - "version": "1.3.4", + "version": "1.3.5", "licenses": [{ "type": "MIT", "url": "https://raw.github.com/clowwindy/shadowsocks-nodejs/master/LICENSE" diff --git a/src/local.coffee b/src/local.coffee index b88e582..a9d8bf8 100644 --- a/src/local.coffee +++ b/src/local.coffee @@ -278,3 +278,5 @@ exports.main = -> s.on "error", (e) -> process.stdout.on 'drain', -> process.exit 1 +if require.main is module + exports.main() diff --git a/src/server.coffee b/src/server.coffee index aa0535d..413ee45 100644 --- a/src/server.coffee +++ b/src/server.coffee @@ -256,3 +256,5 @@ exports.main = -> process.exit 1 )() +if require.main is module + exports.main() diff --git a/src/utils.coffee b/src/utils.coffee index 968f623..86b2c61 100644 --- a/src/utils.coffee +++ b/src/utils.coffee @@ -24,7 +24,7 @@ exports.parseArgs = -> result['verbose'] = true result -exports.version = "shadowsocks-nodejs v1.3.4" +exports.version = "shadowsocks-nodejs v1.3.5" exports.EVERYTHING = 0 exports.DEBUG = 1