Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function add(port, node) {
- //logger.master(nodes[node] + ' ' + port + ' ' + node); // DEBUG
- try {
- if(!node && node !== 0) {
- logger.error(sprintf('Node %d doesn\'t exist', node));
- return;
- }
- if(!nodes[node]) {
- logger.error(sprintf('Node %d doesn\'t exist.', node));
- return;
- }
- if(!port) {
- logger.error(sprintf('Port %d is invalid.', port));
- return;
- }
- forwarders[port] = {};
- forwarders[port].listening = true;
- forwarders[port].port = port;
- forwarders[port].node = node;
- forwarders[port].server = net.createServer(function(from) {
- var to = net.createConnection({
- host: nodes[node],
- port: port
- });
- from.pipe(to);
- to.pipe(from);
- }).listen(port, '188.226.152.56');
- forwarders[port].server.on('listening', function() {
- forwarders[port].listening = true;
- //logger.master(sprintf('Forwarding port %d to node %s.', parseInt(port), nodes[node]));
- });
- forwarders[port].server.on('close', function() {
- forwarders[port].listening = false;
- });
- } catch(ex) {
- var errMsg = 'An error occured while forwarding traffic from port %d to node %d:\n%s';
- logger.error(sprintf(errMsg, port, node, ex));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement