Beispiel #1
0
  def handle_read(self):
    retval = pbm.recvpkt(self)
    if retval == 0:
      return
    if retval == -1:
      handle_close(self)
    header = self.pbmpkt_hdr
    pbmpkt = self.pbmpkt_buf
    self.pbmpkt_hdr = ''
    self.pbmpkt_buf = ''
    self.pbmpkt_len = 0

    pbmascii = pbm.ebcdic2ascii(pbmpkt)
    log.l.LogIt('GAT001', 'D', 'i: %s', (pbmascii))
    self.machine(pbmascii)
Beispiel #2
0
  def handle_read(self):
    retval = pbm.recvpkt(self)
    if retval == 0:
      return
    if retval == -1:
      handle_close(self)
    header = self.pbmpkt_hdr
    pbmpkt = self.pbmpkt_buf
    self.pbmpkt_hdr = ''
    self.pbmpkt_buf = ''
    self.pbmpkt_len = 0

    pbmascii = pbm.ebcdic2ascii(pbmpkt)
    log.l.LogIt('BNH003', 'D', 'i: %s', (pbmascii))
    self.wsid = pbmascii[9:14]
    self.senddata = "%s answer" % self.wsid
    self.writeflag = 1
Beispiel #3
0
  def handle_read(self):
    retval = pbm.recvpkt(self)
    if retval == 0:
      return
    if retval == -1:
      self.handle_close()
      return
    header = self.pbmpkt_hdr
    pbmpkt = self.pbmpkt_buf
    self.pbmpkt_hdr = ''
    self.pbmpkt_buf = ''
    self.pbmpkt_len = 0

    log.l.LogIt('RTB003', 'D', 'bi: %s', pbm.ebcdic2ascii(pbmpkt))
    cfg.atm[self.wsid]['bnmdata'].append(header+pbmpkt)
    if cfg.atm[self.wsid]['x25'] != '-':
      cfg.atm[self.wsid]['gasock'].handle_write()
Beispiel #4
0
  def handle_read(self):
    retval = pbm.recvpkt(self)
    if retval == 0:
      return
    if retval == -1:
      self.handle_close()
      return
    header = self.pbmpkt_hdr
    pbmpkt = self.pbmpkt_buf
    self.pbmpkt_hdr = ''
    self.pbmpkt_buf = ''
    self.pbmpkt_len = 0

    pbmascii = pbm.ebcdic2ascii(pbmpkt)
    log.l.LogIt('RTG012', 'D', 'gi: %s', (pbmascii))
    wsid = pbmascii[9:14]
    #----------------------
    if self.wsid == '0':              # first read on tcp ga
      log.l.LogIt('RTG013', 'I', 'ga connect wsid=%s', (wsid))
      self.wsid = wsid
      self.stat_wsid = wsid
      if cfg.atm.has_key(self.wsid) and cfg.atm[self.wsid]['gasock']:
        # second WSID !
        log.l.LogIt('RTG014', 'E', '%s (%s) duplicate wsid - closed',
                                                  (self.wsid, self.peer_ip))
        # XXX bnmroutc
        self.close()
        return
      gainit(self)
      cfg.atm[self.wsid]['event'] = (pbmascii, header, pbmpkt)
      getdomain(self.wsid)
      for ip in cfg.ips.keys():
        if ip == self.peer_ip:
          cfg.ips[ip]['wsid'] = self.wsid
          cfg.ips[ip]['status'] = '3'
      statip(self.peer_ip)
      return
    #----------------------
    valid = input(self, wsid, pbmascii, header, pbmpkt)