exposed .end method on the wsclient
				
					
				
			This commit is contained in:
		
							parent
							
								
									53185c1760
								
							
						
					
					
						commit
						43ea38523b
					
				@ -151,7 +151,7 @@ function connectTunnel() {
 | 
			
		||||
  });
 | 
			
		||||
  console.info('');
 | 
			
		||||
 | 
			
		||||
  stunnel.connect({
 | 
			
		||||
  var tun = stunnel.connect({
 | 
			
		||||
    stunneld: program.stunneld
 | 
			
		||||
  , locals: program.locals
 | 
			
		||||
  , services: program.services
 | 
			
		||||
@ -159,6 +159,17 @@ function connectTunnel() {
 | 
			
		||||
  , insecure: program.insecure
 | 
			
		||||
  , token: program.token
 | 
			
		||||
  });
 | 
			
		||||
 | 
			
		||||
  function sigHandler() {
 | 
			
		||||
    console.log('SIGINT');
 | 
			
		||||
 | 
			
		||||
    // We want to handle cleanup properly unless something is broken in our cleanup process
 | 
			
		||||
    // that prevents us from exitting, in which case we want the user to be able to send
 | 
			
		||||
    // the signal again and exit the way it normally would.
 | 
			
		||||
    process.removeListener('SIGINT', sigHandler);
 | 
			
		||||
    tun.end();
 | 
			
		||||
  }
 | 
			
		||||
  process.on('SIGINT', sigHandler);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
function rawTunnel() {
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										37
									
								
								wsclient.js
									
									
									
									
									
								
							
							
						
						
									
										37
									
								
								wsclient.js
									
									
									
									
									
								
							@ -272,32 +272,27 @@ function run(copts) {
 | 
			
		||||
  }
 | 
			
		||||
  connect();
 | 
			
		||||
 | 
			
		||||
  function sigHandler() {
 | 
			
		||||
    console.log('SIGINT');
 | 
			
		||||
  return {
 | 
			
		||||
    end: function() {
 | 
			
		||||
      retry = false;
 | 
			
		||||
      if (timeoutId) {
 | 
			
		||||
        clearTimeout(timeoutId);
 | 
			
		||||
        timeoutId = null;
 | 
			
		||||
      }
 | 
			
		||||
 | 
			
		||||
    // We want to handle cleanup properly unless something is broken in our cleanup process
 | 
			
		||||
    // that prevents us from exitting, in which case we want the user to be able to send
 | 
			
		||||
    // the signal again and exit the way it normally would.
 | 
			
		||||
    process.removeListener('SIGINT', sigHandler);
 | 
			
		||||
 | 
			
		||||
    retry = false;
 | 
			
		||||
    if (timeoutId) {
 | 
			
		||||
      clearTimeout(timeoutId);
 | 
			
		||||
      timeoutId = null;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    if (wstunneler) {
 | 
			
		||||
      try {
 | 
			
		||||
        wstunneler.close();
 | 
			
		||||
      } catch(e) {
 | 
			
		||||
        console.error("[error] wstunneler.close()");
 | 
			
		||||
        console.error(e);
 | 
			
		||||
      if (wstunneler) {
 | 
			
		||||
        try {
 | 
			
		||||
          wstunneler.close();
 | 
			
		||||
        } catch(e) {
 | 
			
		||||
          console.error("[error] wstunneler.close()");
 | 
			
		||||
          console.error(e);
 | 
			
		||||
        }
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
  process.on('SIGINT', sigHandler);
 | 
			
		||||
  };
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
module.exports.connect = run;
 | 
			
		||||
module.exports.createConnection = run;
 | 
			
		||||
 | 
			
		||||
}());
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user