), 'can\'t parse SIP request from %s:%d: %s:' % ( address[0], address[1], str(exception)) print '-' * 70 print_exc(file=sys.stdout) print '-' * 70 print data print '-' * 70 sys.stdout.flush() self.l1rcache[checksum] = (None, None, None) return req.rtime = rtime via0 = req.getHFBody('via') ahost, aport = via0.getAddr() rhost, rport = address if self.nat_traversal and rport != aport and check1918(ahost): req.nated = True if ahost != rhost: via0.params['received'] = rhost if via0.params.has_key('rport') or req.nated: via0.params['rport'] = str(rport) if self.nat_traversal and req.countHFs( 'contact') > 0 and req.countHFs('via') == 1: try: cbody = req.getHFBody('contact') except Exception, exception: print datetime.now( ), 'can\'t parse SIP request from %s:%d: %s:' % ( address[0], address[1], str(exception)) print '-' * 70 print_exc(file=sys.stdout) print '-' * 70
except Exception, exception: print datetime.now(), 'can\'t parse SIP request from %s:%d: %s:' % (address[0], address[1], str(exception)) print '-' * 70 print_exc(file = sys.stdout) print '-' * 70 print data print '-' * 70 sys.stdout.flush() self.l1rcache[checksum] = (None, None) return req.rtime = rtime via0 = req.getHFBody('via') ahost, aport = via0.getAddr() rhost, rport = address if self.nat_traversal and rport != aport and check1918(ahost): req.nated = True if ahost != rhost: via0.params['received'] = rhost if via0.params.has_key('rport') or req.nated: via0.params['rport'] = str(rport) if self.nat_traversal and req.countHFs('contact') > 0 and req.countHFs('via') == 1: curl = req.getHFBody('contact').getUrl() if check1918(curl.host): curl.host, curl.port = address req.nated = True req.setSource(address) self.incomingRequest(req, checksum, tids) # 1. Client transaction methods def newTransaction(self, msg, resp_cb = None): t = SipTransaction()