updated for node v8.x and ws 5.x
This commit is contained in:
		
							parent
							
								
									89718a8a07
								
							
						
					
					
						commit
						6b25c7e1f5
					
				| @ -96,7 +96,7 @@ program.ports.forEach(function (port) { | |||||||
| 
 | 
 | ||||||
| program.servernames = Object.keys(servernamesMap); | program.servernames = Object.keys(servernamesMap); | ||||||
| if (!program.servernames.length) { | if (!program.servernames.length) { | ||||||
|   throw new Error('must specify at least one server or servername'); |   throw new Error('You must give this server at least one servername for its admin interface. Example:\n\n\t--servernames tunnel.example.com,tunnel.example.net'); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
| program.ports = Object.keys(portsMap); | program.ports = Object.keys(portsMap); | ||||||
| @ -145,8 +145,8 @@ if (!program.email || !program.agreeTos) { | |||||||
| else { | else { | ||||||
|   program.greenlock = greenlock.create({ |   program.greenlock = greenlock.create({ | ||||||
| 
 | 
 | ||||||
|     //server: 'staging'
 |     version: 'draft-11' | ||||||
|     server: 'https://acme-v01.api.letsencrypt.org/directory' |   , server: 'https://acme-v02.api.letsencrypt.org/directory' | ||||||
| 
 | 
 | ||||||
|   , challenges: { |   , challenges: { | ||||||
|       // TODO dns-01
 |       // TODO dns-01
 | ||||||
|  | |||||||
							
								
								
									
										13
									
								
								wstunneld.js
									
									
									
									
									
								
							
							
						
						
									
										13
									
								
								wstunneld.js
									
									
									
									
									
								
							| @ -72,8 +72,9 @@ module.exports.create = function (copts) { | |||||||
|   var activityTimeout = copts.activityTimeout || 2*60*1000; |   var activityTimeout = copts.activityTimeout || 2*60*1000; | ||||||
|   var pongTimeout = copts.pongTimeout || 10*1000; |   var pongTimeout = copts.pongTimeout || 10*1000; | ||||||
| 
 | 
 | ||||||
|   function onWsConnection(ws) { |   function onWsConnection(ws, upgradeReq) { | ||||||
|     var socketId = packer.socketToId(ws.upgradeReq.socket); |     console.log(ws); | ||||||
|  |     var socketId = packer.socketToId(upgradeReq.socket); | ||||||
|     var remotes = {}; |     var remotes = {}; | ||||||
| 
 | 
 | ||||||
|     function logName() { |     function logName() { | ||||||
| @ -178,6 +179,7 @@ module.exports.create = function (copts) { | |||||||
|       // domains and the list of all this websocket's remotes.
 |       // domains and the list of all this websocket's remotes.
 | ||||||
|       token.deviceId = (token.device && (token.device.id || token.device.hostname)) || token.domains.join(','); |       token.deviceId = (token.device && (token.device.id || token.device.hostname)) || token.domains.join(','); | ||||||
|       token.ws = ws; |       token.ws = ws; | ||||||
|  |       token.upgradeReq = upgradeReq; | ||||||
|       token.clients = {}; |       token.clients = {}; | ||||||
| 
 | 
 | ||||||
|       token.pausedConns = []; |       token.pausedConns = []; | ||||||
| @ -221,6 +223,7 @@ module.exports.create = function (copts) { | |||||||
|         Devices.remove(deviceLists, domainname, remote); |         Devices.remove(deviceLists, domainname, remote); | ||||||
|       }); |       }); | ||||||
|       remote.ws = null; |       remote.ws = null; | ||||||
|  |       remote.upgradeReq = null; | ||||||
| 
 | 
 | ||||||
|       // Close all of the existing browser connections associated with this websocket connection.
 |       // Close all of the existing browser connections associated with this websocket connection.
 | ||||||
|       Object.keys(remote.clients).forEach(function (cid) { |       Object.keys(remote.clients).forEach(function (cid) { | ||||||
| @ -232,7 +235,7 @@ module.exports.create = function (copts) { | |||||||
|     } |     } | ||||||
| 
 | 
 | ||||||
|     var firstToken; |     var firstToken; | ||||||
|     var authn = (ws.upgradeReq.headers.authorization||'').split(/\s+/); |     var authn = (upgradeReq.headers.authorization||'').split(/\s+/); | ||||||
|     if (authn[0] && 'basic' === authn[0].toLowerCase()) { |     if (authn[0] && 'basic' === authn[0].toLowerCase()) { | ||||||
|       try { |       try { | ||||||
|         authn = new Buffer(authn[1], 'base64').toString('ascii').split(':'); |         authn = new Buffer(authn[1], 'base64').toString('ascii').split(':'); | ||||||
| @ -240,7 +243,7 @@ module.exports.create = function (copts) { | |||||||
|       } catch (err) { } |       } catch (err) { } | ||||||
|     } |     } | ||||||
|     if (!firstToken) { |     if (!firstToken) { | ||||||
|       firstToken = url.parse(ws.upgradeReq.url, true).query.access_token; |       firstToken = url.parse(upgradeReq.url, true).query.access_token; | ||||||
|     } |     } | ||||||
|     if (firstToken) { |     if (firstToken) { | ||||||
|       var err = addToken(firstToken); |       var err = addToken(firstToken); | ||||||
| @ -441,7 +444,7 @@ module.exports.create = function (copts) { | |||||||
|     browserAddr.service = service; |     browserAddr.service = service; | ||||||
|     var cid = packer.addrToId(browserAddr); |     var cid = packer.addrToId(browserAddr); | ||||||
|     conn.tunnelCid = cid; |     conn.tunnelCid = cid; | ||||||
|     console.log('[pipeWs] browser is', cid, 'home-cloud is', packer.socketToId(remote.ws.upgradeReq.socket)); |     console.log('[pipeWs] browser is', cid, 'home-cloud is', packer.socketToId(remote.upgradeReq.socket)); | ||||||
| 
 | 
 | ||||||
|     function sendWs(data, serviceOverride) { |     function sendWs(data, serviceOverride) { | ||||||
|       if (remote.ws && (!conn.tunnelClosing || serviceOverride)) { |       if (remote.ws && (!conn.tunnelClosing || serviceOverride)) { | ||||||
|  | |||||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user