Socket
Socket
Sign inDemoInstall

pg

Package Overview
Dependencies
Maintainers
1
Versions
224
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

pg - npm Package Compare versions

Comparing version 0.8.4 to 0.8.6

test/integration/client/ssl-tests.js

5

lib/client.js

@@ -20,3 +20,6 @@ var crypto = require('crypto');

this.host = config.host || defaults.host;
this.connection = config.connection || new Connection({stream: config.stream});
this.connection = config.connection || new Connection({
stream: config.stream,
ssl: config.ssl
});
this.queryQueue = [];

@@ -23,0 +26,0 @@ this.password = config.password || defaults.password;

84

lib/connection.js

@@ -20,3 +20,3 @@ var net = require('net');

this.writer = new Writer();
this.checkSslResponse = false;
this.ssl = config.ssl || false;
};

@@ -30,6 +30,5 @@

if(this.stream.readyState === 'closed'){
if (this.stream.readyState === 'closed') {
this.stream.connect(port, host);
}
else if(this.stream.readyState == 'open') {
} else if (this.stream.readyState == 'open') {
this.emit('connect');

@@ -44,43 +43,50 @@ }

this.on('sslresponse', function(msg) {
if (msg.text == 0x53) {
var tls = require('tls');
self.stream.removeAllListeners();
self.stream = tls.connect({ socket: self.stream, servername: host, rejectUnauthorized: true });
self.stream.on('data', function(buffer) {
self.setBuffer(buffer);
var msg;
while(msg = self.parseMessage()) {
self.emit('message', msg);
self.emit(msg.name, msg);
}
});
self.stream.on('error', function(error) {
self.emit('error', error);
});
self.emit('sslconnect');
} else {
throw new Error("The server doesn't support SSL/TLS connections.");
}
this.stream.on('error', function(error) {
self.emit('error', error);
});
this.stream.on('data', function(buffer) {
if(this.ssl) {
this.stream.once('data', function(buffer) {
self.setBuffer(buffer);
var msg = self.readSslResponse();
self.emit('message', msg);
self.emit(msg.name, msg);
});
this.once('sslresponse', function(msg) {
if (msg.text == 0x53) {
var tls = require('tls');
self.stream.removeAllListeners();
self.stream = tls.connect({
socket: self.stream,
servername: host,
rejectUnauthorized: ssl.rejectUnauthorized,
ca: ssl.ca,
pfx: ssl.pfx,
key: ssl.key,
passphrase: ssl.passphrase,
cert: ssl.cert,
NPNProtocols: ssl.NPNProtocols
});
self.attachListeners(self.stream);
self.emit('sslconnect');
} else {
self.emit('error', new Error("The server doesn't support SSL/TLS connections."));
}
});
} else {
this.attachListeners(this.stream);
}
};
p.attachListeners = function(stream) {
var self = this;
stream.on('data', function(buffer) {
self.setBuffer(buffer);
var msg;
if (self.checkSslResponse) {
while(msg = self.readSslResponse()) {
self.emit('message', msg);
self.emit(msg.name, msg);
}
} else {
while(msg = self.parseMessage()) {
self.emit('message', msg);
self.emit(msg.name, msg);
}
while(msg = self.parseMessage()) {
self.emit('message', msg);
self.emit(msg.name, msg);
}
});
this.stream.on('error', function(error) {
self.emit('error', error);
});
};

@@ -87,0 +93,0 @@

@@ -94,2 +94,4 @@ var EventEmitter = require('events').EventEmitter;

return (module.exports.native = new PG(require(__dirname + '/native')));
})
});
module.exports.types = require('./types');
{ "name": "pg",
"version": "0.8.4",
"version": "0.8.6",
"description": "PostgreSQL client - pure javascript & libpq with the same API",

@@ -4,0 +4,0 @@ "keywords" : ["postgres", "pg", "libpq", "postgre", "database", "rdbms"],

@@ -145,2 +145,3 @@ #node-postgres

* [bitfloor.com](https://bitfloor.com)
* [Vendly](http://www.vend.ly)

@@ -147,0 +148,0 @@ _if you use node-postgres in production and would like your site listed here, fork & add it_

@@ -14,3 +14,2 @@ var helper = require(__dirname + '/test-helper');

test('error handling', function(){
test('within a simple query', function() {

@@ -119,4 +118,5 @@

test('when connecting to invalid host', function() {
return false;
var client = new Client({
user: 'brian',
user: 'aslkdjfsdf',
password: '1234',

@@ -130,2 +130,3 @@ host: 'asldkfjasdf!!#1308140.com'

test('when connecting to invalid host with callback', function() {
return false;
var client = new Client({

@@ -132,0 +133,0 @@ user: 'brian',

@@ -161,1 +161,6 @@ require(__dirname + '/test-helper');

})
test('types are exported', function() {
var pg = require(__dirname + '/../../lib/index');
assert.ok(pg.types);
});

Sorry, the diff of this file is not supported yet

Sorry, the diff of this file is not supported yet

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