def main(args): ''' main() of this module ''' CONFIG.register_descriptions({ "http.client.class": "Specify alternate ClientHTTP-like class", "http.client.method": "Specify alternate HTTP method", "http.client.stdout": "Enable writing response to stdout", "http.client.uri": "Specify URI to download from/upload to", }) common.main("http.client", "Simple Neubot HTTP client", args) conf = CONFIG.copy() make_client = TestClient if conf["http.client.class"]: make_client = utils.import_class(conf["http.client.class"]) if not conf["http.client.uri"]: sys.stdout.write("Please, specify URI via -D http.client.uri=URI\n") sys.exit(0) client = make_client(POLLER) client.configure(conf) client.connect_uri(conf["http.client.uri"]) POLLER.loop() sys.exit(0)
def main(args): ''' main() function of this module ''' CONFIG.register_descriptions({ "http.server.address": "Address to listen to", "http.server.class": "Use alternate ServerHTTP-like class", "http.server.daemonize": "Run in background as a daemon", "http.server.mime": "Enable code that guess mime types", "http.server.ports": "List of ports to listen to", "http.server.rootdir": "Root directory for static pages", "http.server.ssi": "Enable server-side includes", }) common.main("http.server", "Neubot simple HTTP server", args) conf = CONFIG.copy() if conf["http.server.class"]: make_child = utils.import_class(conf["http.server.class"]) server = make_child(POLLER) else: server = HTTP_SERVER server.configure(conf) if conf["http.server.rootdir"] == ".": conf["http.server.rootdir"] = os.path.abspath(".") for port in conf["http.server.ports"].split(","): if port: server.listen((conf["http.server.address"], int(port))) if conf["http.server.daemonize"]: system.change_dir() system.go_background() system.write_pidfile() LOG.redirect() system.drop_privileges(LOG.error) POLLER.loop()