geneva.plugins.http¶
Run by the evaluator, tries to make a GET request to a given server
-
class
plugins.http.client.HTTPClient(args)¶ Bases:
plugins.plugin_client.ClientPluginDefines the HTTP client.
-
__init__(args)¶ Initializes the HTTP client.
-
static
get_args(command)¶ Defines required args for this plugin
-
run(args, logger, engine=None)¶ Try to make a forbidden GET request to the server.
-
name= 'http'¶
-
-
class
plugins.http.server.HTTPServer(args)¶ Bases:
plugins.plugin_server.ServerPluginDefines the HTTP client.
-
__init__(args)¶ Initializes the HTTP client.
-
static
get_args(command)¶ Defines arguments for this plugin
-
run(args, logger)¶ Initializes the HTTP server.
-
stop()¶ Stops this server.
-
name= 'http'¶
-
HTTP Plugin driver
Overrides the default evaluator plugin handling so we can negotiate a clear port and track jailed sites to avoid residual censorship.
-
class
plugins.http.plugin.HTTPPluginRunner(args)¶ Bases:
plugins.plugin.PluginDefines the HTTP plugin runner.
-
__init__(args)¶ Marks this plugin as enabled
-
static
get_args(command)¶ Defines required global args for all plugins
-
negotiate_clear_port(args, evaluator, environment, logger)¶ Since residual censorship might be affecting our IP/port combo that was randomly chosen, this method is to find a port on which no residual censorship is present. This is done simply by picking a port, running the server, running curl to confirm it’s accessible, and then returning that port.
-
start(args, evaluator, environment, ind, logger)¶ Runs the plugins
-
name= 'http'¶
-
-
class
plugins.http.plugin.TestServer(requested_site, evaluator, environment, logger)¶ Bases:
objectContext manager to retrieve a test server from the external server pool.
-
__init__(requested_site, evaluator, environment, logger)¶ Initialize self. See help(type(self)) for accurate signature.
-
-
plugins.http.plugin.check_censorship(site, evaluator, environment, logger)¶ Make a request to the given site to test if it is censored. Used to test a site for residual censorship before using it.