Ejemplo n.º 1
0
 def do_GET(self):
     if self._check_request() == False:
         return
     if opt.sec_lv and self._check_acl_san() == False:
         self.send_error(401)
         return
     if self.path == '/wsdl':
         fiap = fiapProto.fiapProto(strict_check=True, debug=cf.debug)
         doc = fiap.getwsdl()
         self._send_response(doc, 'text/xml; charset=utf-8')
         return
     elif self.path.startswith('/?'):
         fiap = fiapProto.fiapProto(strict_check=True, tzname=self.tzname, debug=cf.debug)
         doc = fiap.parseGETRequest(self.path)
         if doc == None:
             self.log_message('ERROR: %s' % fiap.getemsg())
             self.send_error(403, fiap.getemsg())
             return
         self._send_response(doc, 'text/json; charset=utf-8')
         return
     else:
         msg = 'unknown path, %s' % self.path
         self.log_message('ERROR: %s' % msg)
         self.send_error(403, msg)
         return
Ejemplo n.º 2
0
Archivo: fiapy.py Proyecto: EmOne/fiapy
 def do_GET(self):
     if self._check_request() == False:
         return
     if opt.sec_lv and self._check_acl_san() == False:
         self.send_error(401)
         return
     if self.path == '/wsdl':
         fiap = fiapProto.fiapProto(strict_check=True, debug=cf.debug)
         doc = fiap.getwsdl()
         self._send_response(doc, 'text/xml; charset=utf-8')
         return
     elif self.path.startswith('/?'):
         fiap = fiapProto.fiapProto(strict_check=True, tzname=self.tzname, debug=cf.debug)
         doc = fiap.parseGETRequest(self.path)
         if doc == None:
             self.log_message('ERROR: %s' % fiap.getemsg())
             self.send_error(403, fiap.getemsg())
             return
         self._send_response(doc, 'text/json; charset=utf-8')
         return
     else:
         msg = 'unknown path, %s' % self.path
         self.log_message('ERROR: %s' % msg)
         self.send_error(403, msg)
         return
Ejemplo n.º 3
0
 def do_POST(self):
     if self._check_request() == False:
         return
     if opt.sec_lv and self._check_acl_san() == False:
         self.send_error(401)
         return
     fiap = fiapProto.fiapProto(requester_address=self.client_address,
                                strict_check=True, tzname=cf.tzname, debug=cf.debug)
     if self.clen == -1 and False:
         #
         # XXX GUTP interop hack: accept in case of no content-length.
         #
         s = self.rfile.read()
     else:
         s = self.rfile.read(self.clen)
     #post_data = urlparse.parse_qs(s.rfile.read(length).decode('utf-8'))
     doc = None
     if cf.debug > 0:
         self.log_message('DEBUG: post body (len=%d): %s' %
                 (self.clen, s.replace('\n\r','')))
     if self.ctype.find('text/xml') != -1: # XXX should it compare with 0 ?
         doc = fiap.serverParseXML(s)
     elif self.ctype.find('text/json') != -1:
         doc = fiap.serverParseJSON(s)
     else:
         msg = 'invalid content-type (%s) is specified.' % self.ctype
         self.log_message('ERROR: %s' % msg)
         self.send_error(403, msg)
         return
     if doc == None:
         self.log_message('ERROR: %s' % fiap.getemsg())
         self.send_error(403, fiap.getemsg())
         return
     self._send_response(doc, self.ctype)
     return
Ejemplo n.º 4
0
Archivo: fiapy.py Proyecto: EmOne/fiapy
 def do_POST(self):
     if self._check_request() == False:
         return
     if opt.sec_lv and self._check_acl_san() == False:
         self.send_error(401)
         return
     fiap = fiapProto.fiapProto(cf, requester_address=self.client_address,
                                strict_check=True, debug=cf.debug)
     if self.clen == -1 and False:
         #
         # XXX GUTP interop hack: accept in case of no content-length.
         #
         s = self.rfile.read()
     else:
         s = self.rfile.read(self.clen)
     #post_data = urlparse.parse_qs(s.rfile.read(length).decode('utf-8'))
     doc = None
     if cf.debug > 0:
         self.log_message('DEBUG: post body (len=%d): %s' %
                 (self.clen, s.replace('\n\r','')))
     if self.ctype.find('text/xml') != -1: # XXX should it compare with 0 ?
         doc = fiap.serverParseXML(s)
     elif self.ctype.find('text/json') != -1:
         doc = fiap.serverParseJSON(s)
     else:
         msg = 'invalid content-type (%s) is specified.' % self.ctype
         self.log_message('ERROR: %s' % msg)
         self.send_error(403, msg)
         return
     if doc == None:
         self.log_message('ERROR: %s' % fiap.getemsg())
         self.send_error(403, fiap.getemsg())
         return
     self._send_response(doc, self.ctype)
     return
Ejemplo n.º 5
0
Archivo: fiapc.py Proyecto: EmOne/fiapy
# parse the configuration file if specified.
#
cf = fiapConfig.fiapConfig(opt.cfile, security_level=sec_lv, debug=opt.debug)

if opt.debug:
    print 'DEBUG: reading request file.'
if opt.bfile != None:
    fp = open(opt.bfile)
else:
    fp = sys.stdin
src = fp.read()
if src == None:
    print 'ERROR: src document is nothing'
    exit(1)

fiap = fiapProto.fiapProto(cf, debug=opt.debug)

#
# make a request
#
req_doc = ''
if opt.req_to_xml == True:
    ctype = 'text/xml; charset=utf-8'
    if re.match('^\<\?xml', src):
        req_doc = src
    else:
        req_doc = fiap.JSONtoXML(src)
else:
    ctype = 'text/json; charset=utf-8'
    if re.match('^\<\?xml', src) == None:
        req_doc = src
Ejemplo n.º 6
0
# parse the configuration file if specified.
#
cf = fiapConfig.fiapConfig(opt.cfile, security_level=sec_lv, debug=opt.debug)

if opt.debug:
    print 'DEBUG: reading request file.'
if opt.bfile != None:
    fp = open(opt.bfile)
else:
    fp = sys.stdin
src = fp.read()
if src == None:
    print 'ERROR: src document is nothing'
    exit(1)

fiap = fiapProto.fiapProto(cf, debug=opt.debug)

#
# make a request
#
req_doc = ''
if opt.req_to_xml == True:
    ctype = 'text/xml; charset=utf-8'
    if re.match('^\<\?xml', src):
        req_doc = src
    else:
        req_doc = fiap.JSONtoXML(src)
else:
    ctype = 'text/json; charset=utf-8'
    if re.match('^\<\?xml', src) == None:
        req_doc = src
Ejemplo n.º 7
0
url, host = set_default_port(opt.url)
if opt.debug >= 1:
    print 'DEBUG: connect to', host

#soapGetAddressLocation(opt.wsdl)

if opt.bfile != None:
    fp = open(opt.bfile)
else:
    fp = sys.stdin
src = fp.read()
if src == None:
    print 'ERROR: src document is nothing'
    exit(1)

fiap = fiapProto.fiapProto(debug=opt.debug)

#
# make a request
#
req_doc = ''
if opt.req_to_xml == True:
    ctype = 'text/xml; charset=utf-8'
    if re.match('^\<\?xml', src):
        req_doc = src
    else:
        req_doc = fiap.JSONtoXML(src)
else:
    ctype = 'text/json; charset=utf-8'
    if re.match('^\<\?xml', src) == None:
        req_doc = src