def global_cancel_tcpip_forward(self, data):
     hostToBind, portToBind = forwarding.unpackGlobal_tcpip_forward(data)
     listener = self.listeners.get((hostToBind, portToBind), None)
     if not listener:
         return 0
     del self.listeners[(hostToBind, portToBind)]
     self._runAsUser(listener.stopListening)
     return 1
Beispiel #2
0
 def global_cancel_tcpip_forward(self, data):
     hostToBind, portToBind = forwarding.unpackGlobal_tcpip_forward(data)
     listener = self.listeners.get((hostToBind, portToBind), None)
     if not listener:
         return 0
     del self.listeners[(hostToBind, portToBind)]
     self._runAsUser(listener.stopListening)
     return 1
 def global_tcpip_forward(self, data):
     hostToBind, portToBind = forwarding.unpackGlobal_tcpip_forward(data)
     from twisted.internet import reactor
     try: listener = self._runAsUser(
                         reactor.listenTCP, portToBind, 
                         forwarding.SSHListenForwardingFactory(self.conn,
                             (hostToBind, portToBind),
                             forwarding.SSHListenServerForwardingChannel), 
                         interface = hostToBind)
     except:
         return 0
     else:
         self.listeners[(hostToBind, portToBind)] = listener
         if portToBind == 0:
             portToBind = listener.getHost()[2] # the port
             return 1, struct.pack('>L', portToBind)
         else:
             return 1
Beispiel #4
0
 def global_tcpip_forward(self, data):
     hostToBind, portToBind = forwarding.unpackGlobal_tcpip_forward(data)
     from twisted.internet import reactor
     try: listener = self._runAsUser(
                         reactor.listenTCP, portToBind, 
                         forwarding.SSHListenForwardingFactory(self.conn,
                             (hostToBind, portToBind),
                             forwarding.SSHListenServerForwardingChannel), 
                         interface = hostToBind)
     except:
         return 0
     else:
         self.listeners[(hostToBind, portToBind)] = listener
         if portToBind == 0:
             portToBind = listener.getHost()[2] # the port
             return 1, struct.pack('>L', portToBind)
         else:
             return 1