New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

bolt

Package Overview
Dependencies
Maintainers
1
Versions
79
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

bolt - npm Package Compare versions

Comparing version 0.1.2 to 0.1.3

.gitignore

94

lib/mesh.js

@@ -8,3 +8,4 @@ /*

var net = require('net'),
events = require('events');
events = require('events'),
knife = require('knife');

@@ -15,4 +16,4 @@ /*

(function(){
var mesh = {},
delimiter = '::::/bm/::::',
var mesh = {connected: false, connecting: false},
messageBuffer = '',
ee = new events.EventEmitter(),

@@ -27,3 +28,6 @@ c;

mesh.connect = function(options){
if (mesh.connecting || mesh.connected) return mesh;
mesh.connected = false;
mesh.connecting = true;

@@ -43,4 +47,2 @@ options = options || {};

mesh.connecting = false;
return mesh;

@@ -77,3 +79,3 @@ }

c.write(JSON.stringify(m) + delimiter);
c.write(JSON.stringify(m));

@@ -100,2 +102,3 @@ return ee.emit(hook, data);

else {
mesh.connecting = false;
mesh.connected = true;

@@ -107,34 +110,46 @@ console.log('Connected to mesh server.');

/*
* A transmission has been recieved from the mesh server
*/
var incoming = function(m){
messageBuffer += m.toString();
var raw = knife.parse(messageBuffer);
for (var i in raw.result) {
processMessage(raw.result[i]);
}
messageBuffer = raw.remainder;
}
/*
* Do something with a single message
*/
var processMessage = function(m){
if (!mesh.id) {
mesh.id = m;
console.log('ID: ' + m);
if (mesh.nameBuffer) {
console.log('Sending name request to server..');
var nm = {
id: mesh.id,
hook: 'BCHANGENAME',
name: mesh.nameBuffer
switch (m.hook) {
case 'BINIT':
mesh.id = m.data.id;
console.log('ID: ' + mesh.id);
if (mesh.nameBuffer) {
console.log('Sending name request to server...');
var reply = {
id: mesh.id,
hook: 'BCHANGENAME',
data: {
name: mesh.nameBuffer
}
}
c.write(JSON.stringify(reply));
}
c.write(JSON.stringify(nm));
}
} else if (m.indexOf('BNAMEACCEPT') != -1) {
var raw = m.split('::');
if (raw[1] != mesh.nameBuffer) {
console.log('Server did not accept name request. Accepting server-provided ID: ' + raw[1]);
} else {
console.log('Server accepted name request.');
}
mesh.id = raw[1];
console.log('ID: ' + mesh.id);
} else {
try {
var m = JSON.parse(m);
break;
case 'BNAMEACCEPT':
if (m.data.name != mesh.nameBuffer) {
console.log([m, mesh.nameBuffer]);
console.log('Server did not accept name request. Accepting server-provided ID: ' + m.data.id);
} else {
console.log('Server accepted name request.');
}
mesh.id = m.data.name;
console.log('ID: ' + mesh.id);
break;
default:
ee.emit(m.hook, m.data);
} catch (e) {
console.log('Could not parse:');
console.log(m);
}
break;
}

@@ -144,14 +159,2 @@ };

/*
* A transmission has been recieved from the mesh server
*/
var incoming = function(m){
m = m.toString();
var raw = m.split(delimiter);
if (raw.length > 1) raw.pop();
for (var i in raw) {
processMessage(raw[i]);
}
}
/*
* We have been disconnected from the mesh server

@@ -165,3 +168,2 @@ * Freeze state and trigger new connection

if (!mesh.connecting) {
mesh.connecting = true;
setTimeout(mesh.connect, 3000);

@@ -168,0 +170,0 @@ console.log('Retrying mesh connection in 3 seconds...');

@@ -5,3 +5,3 @@ {

"description": "Send messages to any nodejs process, anywhere on the Internet.",
"version": "0.1.2",
"version": "0.1.3",
"homepage": "http://bolt.io/",

@@ -16,4 +16,6 @@ "repository": {

},
"dependencies": {},
"dependencies": {
"knife": "0.0.x"
},
"devDependencies": {}
}
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc