def execute(host, port, defer):
	d = ClientCreator(reactor, ClientCommandTransport, defer,
					'pedroarthur', '19216806010104', 'server',
					'ps aux | grep ossec | grep -v grep',
	).connectTCP(host, port)

	d.addErrback(defer.errback)
예제 #2
0
def callCommand(signaler, host, port, user, password, command):
	print "at callCommand"
	print "Running", command, "at", host, port
	d = ClientCreator(reactor, ClientCommandTransport, signaler,
						user, password, command).connectTCP(host, int(port))

	d.addErrback(signaler.errback)
예제 #3
0
def execute(host, port, df):
	d = ClientCreator(reactor, ClientCommandTransport, df,
					'root', '192168061', 'server',
					'/etc/init.d/ossec restart',
	).connectTCP(host, port)

	d.addErrback(df.errback, **{'how': False})
예제 #4
0
def main(all_args=None):
    """The main"""
    all_args = all_args or []
    parser = optparse.OptionParser()
    options, args = parse_cmd_line(parser, all_args)
    (port, example, message, count_, topics) = check_cmd_line(
        options, args, parser.error)

    host = 'localhost'
    vhost = '/'
    username = '******'
    password = '******'
    spec = txamqp.spec.load('your_specs_path.xml')

    delegate = TwistedDelegate()

    d = ClientCreator(reactor, AMQClient, delegate=delegate, vhost=vhost,
                      spec=spec).connectTCP(host, port)

    d.addCallback(gotConnection, username, password)
    if example in PUBLISH_EXAMPLES:
        d.addCallback(ALL_EXAMPLES[example], message, count_)
    else:
        d.addCallback(ALL_EXAMPLES[example], topics)
    d.addCallback(publisher_cleanup)
    d.addErrback(lambda f: sys.stderr.write(str(f)))
    reactor.run()
예제 #5
0
def main(all_args=None):
    """The main"""
    #    all_args = all_args or []
    #    parser = optparse.OptionParser()
    #    options, args = parse_cmd_line(parser, all_args)
    #    (port, example, message, count_, topics) = check_cmd_line(
    #        options, args, parser.error)

    host = "localhost"
    port = 5672
    vhost = "/"
    username = "******"
    password = "******"
    example = "publish2"
    topics = "#"
    message = "hello"
    count = 1000

    spec = txamqp.spec.load("./specs/rabbitmq/amqp0-8.stripped.rabbitmq.xml")

    delegate = TwistedDelegate()

    d = ClientCreator(reactor, AMQClient, delegate=delegate, vhost=vhost, spec=spec).connectTCP(host, port)

    d.addCallback(gotConnection, username, password)
    if example in PUBLISH_EXAMPLES:
        d.addCallback(ALL_EXAMPLES[example], message, count)
    else:
        d.addCallback(ALL_EXAMPLES[example], topics)
    d.addCallback(publisher_cleanup)
    d.addErrback(lambda f: sys.stderr.write(str(f)))
    reactor.run()
예제 #6
0
            def callback(res): # res zawiera dane serwera na ktorym moze byc klucz
                # podłączamy się do niego
                d1 = ClientCreator(reactor, amp.AMP).connectTCP(res['address'], res['port'])
                d1.addCallback(lambda p: p.callRemote(commands.Get, key=key))

                def trapError(result):
                    result.trap(Exception)
                    raise result.type()
                d1.addErrback(trapError)
                
                return d1 # deffer, który zawierać będzie wynik metody get na właściwym serwerze
예제 #7
0
 def connect(self):
     d = ClientCreator(
         reactor,
         TTwisted.ThriftClientProtocol,
         Scheduler.Client,
         TBinaryProtocol.TBinaryProtocolFactory(),
     ).connectTCP(self.host, self.port, self.timeout)
     d.addCallback(self.set_connect)
     d.addErrback(self.close_conn)
     log.msg("try connect to Scheduler[%s:%s]" % \
         (self.host, self.port))
     return d
예제 #8
0
 def addcall(self, obj, callback=None, **kwargs):
     d = ClientCreator(reactor, amp.AMP).connectTCP(self.address, self.port)
     d.addCallback(lambda p: p.callRemote(obj, **kwargs))
     if callback is None:
         def callback(res):
             print "Otrzymano: ", res
     d.addCallback(callback)
     def trapError(result):
         result.trap(Exception)
         print "Błąd!: {0}".format(result.type)
     d.addErrback(trapError)
     return d
예제 #9
0
 def connect(self):
     d = ClientCreator(reactor,
             TTwisted.ThriftClientProtocol,
             Scheduler.Client,
             TBinaryProtocol.TBinaryProtocolFactory(),
         ).connectTCP(self.host, 
             self.port, self.timeout)
     d.addCallback(self.set_connect)
     d.addErrback(self.close_conn)
     log.msg("try connect to Master[%s:%s]" % \
         (self.host, self.port))
     return d
예제 #10
0
def setup(vm):
    print 'Connecting with new domain...'
    
    creator = ClientCreator(reactor,
                          TTwisted.ThriftClientProtocol,
                          RelayService.Client,
                          TBinaryProtocol.TBinaryProtocolFactory(),
                          ).connectTCP(DEFAULT_SETUP_IP, config.RELAY_PORT)
    creator.addCallback(lambda conn: conn.client)
    
    creator.addCallback(connection_established, vm)
    creator.addErrback(error, vm)
예제 #11
0
    def start(self):
        vhost = self.amqp_conn['vhost']
        host = self.amqp_conn['host']
        port = self.amqp_conn['port']

        d = ClientCreator(reactor,
                          AMQClient,
                          delegate=TwistedDelegate(),
                          vhost=vhost,
                          spec=self.spec).connectTCP(host, port)

        d.addCallback(self.gotConnection)
        d.addErrback(self.whoops)
예제 #12
0
def _try_connecting(domain, defer):
    '''
    Connects with the domain's Relay service. If it does not respond in 5 seconds
    it is assumed that the domain is not available right now 
    '''
    creator = ClientCreator(reactor,
                          TTwisted.ThriftClientProtocol,
                          RelayService.Client,
                          TBinaryProtocol.TBinaryProtocolFactory(),
                          ).connectTCP(domain, config.RELAY_PORT, timeout=10)
    creator.addCallback(lambda conn: conn.client)
    
    creator.addCallback(lambda value: defer.callback(True))
    creator.addErrback(lambda value: defer.callback(False))
예제 #13
0
 def configure_domain(self, clone_entry):
     '''
     Reconfigures a domain by running the reconfiguration drone 
     '''
     
     print 'Connecting with new domain.'
     creator = ClientCreator(reactor,
                           TTwisted.ThriftClientProtocol,
                           RelayService.Client,
                           TBinaryProtocol.TBinaryProtocolFactory(),
                           ).connectTCP(DEFAULT_SETUP_IP, config.RELAY_PORT, timeout=10)
     creator.addCallback(lambda conn: conn.client)
     creator.addCallback(self._launch_drone, clone_entry)
     creator.addErrback(self._configuration_error, clone_entry)
예제 #14
0
파일: user.py 프로젝트: t2d/pyanotel
    def get_coins(self, amount=5):
        packet = [constants.Header.SIGN]
        blinding_factors = list()

        for _ in range(int(amount)):
            msg = pick_random()
            blinding_factor = pick_random()
            key = RSA.importKey(constants.B.public_key)
            blind = b64encode(key.blind(msg, blinding_factor))
            packet.append(blind)
            blinding_factors.append((blinding_factor, msg))

        d = ClientCreator(reactor, BankClient).connectTCP(constants.B.external_ip, constants.B.port)
        d.addCallback(self._send_blinds, blinding_factors, packet)
        d.addErrback(self._error, "Bank")
예제 #15
0
            def callback(
                    res):  # res zawiera dane serwera na ktorym moze byc klucz
                # podłączamy się do niego
                d1 = ClientCreator(reactor,
                                   amp.AMP).connectTCP(res['address'],
                                                       res['port'])
                d1.addCallback(lambda p: p.callRemote(commands.Get, key=key))

                def trapError(result):
                    result.trap(Exception)
                    raise result.type()

                d1.addErrback(trapError)

                return d1  # deffer, który zawierać będzie wynik metody get na właściwym serwerze
예제 #16
0
    def addcall(self, obj, callback=None, **kwargs):
        d = ClientCreator(reactor, amp.AMP).connectTCP(self.address, self.port)
        d.addCallback(lambda p: p.callRemote(obj, **kwargs))
        if callback is None:

            def callback(res):
                print "Otrzymano: ", res

        d.addCallback(callback)

        def trapError(result):
            result.trap(Exception)
            print "Błąd!: {0}".format(result.type)

        d.addErrback(trapError)
        return d
예제 #17
0
  def _connect(self):
    spec_path = os.path.dirname(__file__) + "/amqp0-8.stripped.rabbitmq.xml"
    spec = txamqp.spec.load(spec_path)
    self.delegate = TwistedDelegate()

    d = ClientCreator(reactor, AMQClient, delegate=self.delegate, vhost=self._configuration["vhost"], spec=spec).connectTCP(self._configuration["host"], self._configuration["port"])

    d.addCallback(self._connected)

    def whoops(err):
      if reactor.running:
        log.err(err)
        self.shutdown()
        reactor.stop()

    d.addErrback(whoops)
예제 #18
0
파일: amqp.py 프로젝트: jasonbaker/apvy
def connect_to_server():
    host = conf.BROKER_HOST
    port = conf.BROKER_PORT
    vhost = conf.BROKER_VHOST
    username = conf.BROKER_USER
    password = conf.BROKER_PASSWORD

    delegate = TwistedDelegate()
    d = ClientCreator(reactor, AMQClient, delegate=delegate, vhost=vhost, spec=spec).connectTCP(host, int(port))
    d.addCallback(got_connection, username, password)

    def errback(err):
        if reactor.running:
            log.err(err)
            reactor.stop()

    d.addErrback(errback)
예제 #19
0
파일: __init__.py 프로젝트: lordsky/hall0
 def init_subscription(cls):
     # already connected or on connecting
     # if RedisListenerProtocol.connection_status != 0:
     #    return
     # start connection
     from tyframework.context import TyContext
     from twisted.internet.protocol import ClientCreator
     from twisted.internet import reactor
     params = TyContext.RedisConfig.address
     # RedisListenerProtocol.connection_status = 1
     TyContext.ftlog.debug(
         "RedisListenerProtocol",
         'try to connect to redis server (%s:%s)' %
         (params['host'], params['port']))
     defer = ClientCreator(reactor, RedisListenerProtocol).connectTCP(
         params['host'], params['port'])
     defer.addErrback(lambda reason: reactor.callLater(
         5000, RedisListenerProtocol.init_subscription))
예제 #20
0
def connect(hosts_map):
    dlist = []
    for i in hosts_map:
        print 'Connecting with relay %s:%i ' % (i, config.RELAY_PORT)
        
        creator = ClientCreator(reactor,
                          TTwisted.ThriftClientProtocol,
                          RelayService.Client,
                          TBinaryProtocol.TBinaryProtocolFactory(),
                          ).connectTCP(i, config.RELAY_PORT)
        creator.addCallback(lambda conn: conn.client)
        
        d = defer.Deferred()
        creator.addCallback(d.callback)
        creator.addErrback(d.errback)
        dlist.append(d)
        
    return dlist
예제 #21
0
    def doTask(self):
        self.state = TaskStates.STATE_WAITING
        log.debug("Connecting to %s (%s)", self._devId, self._manageIp)

        spec = txamqp.spec.load(os.path.join(os.path.dirname(__file__), "lib/txamqp/specs/standard/amqp0-8.xml"))
        delegate = TwistedDelegate()
        d = ClientCreator(reactor,
                          AMQClient,
                          delegate=delegate,
                          spec=spec,
                          vhost=self._config.zAMQPVirtualHost).connectTCP(self._config.manageIp,
                                                                          self._config.zAMQPPort)
        d.addCallback(self._onConnSucc,
                      self._config.zAMQPQueue,
                      self._config.zAMQPUsername,
                      self._config.zAMQPPassword)
        d.addErrback(self._onConnFail)
        return d
예제 #22
0
파일: user.py 프로젝트: t2d/pyanotel
    def update_providers(self, location="", retry=False):
        """ Update location of user and tell providers """
        if retry:
            sleep(2)

        if location != "":
            self.location = location
            self.io.sendLine("Your location: %s" % self.location)

        # create new pseudonym for location
        self.pseudonym = pick_random()
        self.seed = pick_random()
        self.paging_names = create_paging_names(self.seed, amount=100)
        d = ClientCreator(reactor, UserClientProtocol, self).connectTCP(constants.N.external_ip, constants.N.port)
        d.addCallback(self._update_location)
        if retry:
            d.addErrback(self._error, "network operator")
        else:
            d.addErrback(self.retry)
예제 #23
0
    def dataReceived(self, data):

        self.transport.write(data)
	campo  = data.split(";")
	#print campo[0],";",campo[1],";",campo[2]

	# Send an SMS-MT with defined originating address


	host = '127.0.0.1'
	port = 5672
	vhost = '/'
	username = '******'
	password = '******'
	spec_file = '/etc/jasmin/resource/amqp0-9-1.xml'
	MO_dst = '24247'
	MO_src = campo[1]
	# transformation of the source address! :-)
	MOD_MO_src = '00' + MO_src[2:]
	texto = campo[0]
 
	spec = txamqp.spec.load(spec_file)

	delegate = TwistedDelegate()
 
	# Connect and authenticate
	d = ClientCreator(reactor, AMQClient, delegate=delegate, vhost=vhost,
	spec=spec).connectTCP(host, port)

	d.addCallback(gotConnection, username, password,MOD_MO_src,MO_dst,texto)
	
	def whoops(err):
	    if reactor.running:
		log.err(err)
                reactor.stop()
 
	d.addErrback(whoops)

	def __init__(self,  amqpBroker):      
	    self.amqpBroker = amqpBroker
예제 #24
0
def main(all_args=None):
    """The main"""
    #    all_args = all_args or []
    #    parser = optparse.OptionParser()
    #    options, args = parse_cmd_line(parser, all_args)
    #    (port, example, message, count_, topics) = check_cmd_line(
    #        options, args, parser.error)

    host = "localhost"
    port = 5672
    vhost = "/"
    username = "******"
    password = "******"
    example = "publish2"
    topics = "#"
    message = "hello"
    count = 1000

    spec = txamqp.spec.load("./specs/rabbitmq/amqp0-8.stripped.rabbitmq.xml")

    delegate = TwistedDelegate()

    d = ClientCreator(reactor,
                      AMQClient,
                      delegate=delegate,
                      vhost=vhost,
                      spec=spec).connectTCP(host, port)

    d.addCallback(gotConnection, username, password)
    if example in PUBLISH_EXAMPLES:
        d.addCallback(ALL_EXAMPLES[example], message, count)
    else:
        d.addCallback(ALL_EXAMPLES[example], topics)
    d.addCallback(publisher_cleanup)
    d.addErrback(lambda f: sys.stderr.write(str(f)))
    reactor.run()
예제 #25
0
      - Billing information is contained in messages consumed from submit.sm.*
      - This is a proof of concept, saying anyone can consume from any topic in Jasmin's exchange hack a
        third party business, more information here: http://docs.jasminsms.com/en/latest/messaging/index.html
    """

    host = '127.0.0.1'
    port = 5672
    vhost = '/'
    username = '******'
    password = '******'
    spec_file = '/etc/jasmin/resource/amqp0-9-1.xml'

    spec = txamqp.spec.load(spec_file)

    # Connect and authenticate
    d = ClientCreator(reactor,
    	AMQClient,
    	delegate=TwistedDelegate(),
    	vhost=vhost,
        spec=spec).connectTCP(host, port)
    d.addCallback(gotConnection, username, password)

    def whoops(err):
        if reactor.running:
            log.err(err)
            reactor.stop()

    d.addErrback(whoops)

    reactor.run()
예제 #26
0
    reactor.stop()


if __name__ == "__main__":
    host = '127.0.0.1'
    port = 5672
    vhost = '/'
    username = '******'
    password = '******'
    spec_file = '/etc/jasmin/resource/amqp0-9-1.xml'

    spec = txamqp.spec.load(spec_file)

    # Connect and authenticate
    d = ClientCreator(reactor,
        AMQClient,
        delegate=TwistedDelegate(),
        vhost=vhost,
        spec=spec).connectTCP(host, port)
    d.addCallback(gotConnection, username, password)

    def whoops(err):
        if reactor.running:
            log.err(err)
            reactor.stop()

    d.addErrback(whoops)

    reactor.run()
예제 #27
0
    yield client.ping()

    jobreport = JobReport()
    jobreport.spiderid = 'spider001'
    pkg = yield client.get_seeds(jobreport.spiderid, jobreport)
    print pkg

    for seed in pkg.seeds:
        wait = yield client.get_latency_time('spider001', seed.url)
        print '%s waits %s seconds' % (seed.url, wait)

    reactor.stop()


def close(obj):
    print obj
    reactor.stop()


if __name__ == '__main__':
    d = ClientCreator(
        reactor,
        TTwisted.ThriftClientProtocol,
        Scheduler.Client,
        TBinaryProtocol.TBinaryProtocolFactory(),
    ).connectTCP("127.0.0.1", 9090, timeout=30)
    d.addCallback(lambda conn: conn.client)
    d.addCallback(main)
    d.addErrback(close)
    reactor.run()
예제 #28
0
파일: novatool.py 프로젝트: wosigh/novatool
 def pollDevices(self):
     d = ClientCreator(reactor, DeviceCollector).connectTCP('localhost', 6968)
     d.addCallback(gotProtocol, self.processDevices)
     d.addErrback(gotNoProtocol, self.noNovacomd)
예제 #29
0
@inlineCallbacks
def main(client):
    print 'client run'
    yield client.ping()

    jobreport = JobReport()
    jobreport.spiderid = 'spider001'
    pkg = yield client.get_seeds(jobreport.spiderid, jobreport)
    print pkg

    for seed in pkg.seeds:
        wait = yield client.get_latency_time('spider001', seed.url)
        print '%s waits %s seconds' % (seed.url, wait)

    reactor.stop()

def close(obj):
    print obj
    reactor.stop()

if __name__ == '__main__':
    d = ClientCreator(reactor,
        TTwisted.ThriftClientProtocol,
        Scheduler.Client,
        TBinaryProtocol.TBinaryProtocolFactory(),
        ).connectTCP("127.0.0.1", 9090, timeout=30)
    d.addCallback(lambda conn: conn.client)
    d.addCallback(main)
    d.addErrback(close)
    reactor.run()
예제 #30
0
파일: user.py 프로젝트: t2d/pyanotel
    def lineReceived(self, line):
        help = "help, ping, msg user_id message, file user_id filename, coins, quit\n>>> "
        arguments = line.split()
        if len(arguments) == 0:
            self.transport.write(help)
            return

        command = arguments[0]
        if command == "ping" or command == "p":
            # send ping to myself
            d = ClientCreator(reactor, UserClientProtocol, self.user).connectTCP(
                constants.P.external_ip, constants.P.port
            )
            d.addCallback(self.user.send_msg, self.user.identifier, "PING")
            d.addErrback(self.no_conn)
        elif command == "quit" or command == "q":
            reactor.stop()
        elif command == "msg" or command == "m":
            # send message in paging
            if len(arguments) > 2:
                callee = arguments[1]
                msg = arguments[2]
                d = ClientCreator(reactor, UserClientProtocol, self.user).connectTCP(
                    constants.P.external_ip, constants.P.port
                )
                d.addCallback(self.user.send_msg, callee, msg)
                d.addErrback(self.no_conn)
            else:
                self.transport.write(help)
        elif command == "n":
            # dismiss call
            self.user.incoming_call = None
        elif command == "y" and self.user.incoming_call is not None:
            # take incoming call
            cid, caller = self.user.incoming_call
            d = ClientCreator(reactor, UserClientProtocol, self.user).connectTCP(
                constants.N.external_ip, constants.N.port
            )
            d.addCallback(self.user._answer_call, cid)
            d.addErrback(self.no_conn)
        elif command == "file" or command == "f":
            # send file
            extensions = ["bmp", "gif", "jpg", "jpeg", "png", "tiff"]
            if len(arguments) > 2:
                callee = arguments[1]
                filename = arguments[2]
                # check if file exists
                if os.path.isfile(filename) and any([filename.endswith(ext) for ext in extensions]):
                    d = ClientCreator(reactor, UserClientProtocol, self.user).connectTCP(
                        constants.P.external_ip, constants.P.port
                    )
                    d.addCallback(self.user.make_call, callee, filename)
                    d.addErrback(self.no_conn)
                else:
                    self.sendLine("File not available. Available files:")
                    files = [fn for fn in os.listdir(".") if any([fn.endswith(ext) for ext in extensions])]
                    for f in files:
                        self.sendLine(f)
                    self.transport.write(">>> ")
            else:
                self.transport.write(help)
        elif command == "coins" or command == "c":
            if len(arguments) > 1:
                self.user.get_coins(arguments[1])
            else:
                self.user.get_coins()
        else:
            self.transport.write(help)