<commit_before>This document describes how to run a flash proxy facilitator on Debian 6.
We will use the domain name tor-facilitator.example.com.

== Overview

The facilitator consists of a backend server that is essentially a
dynamic database of client addresses, as well as helper programs that
receive client registrations from the Internet over various means and
pass them to the backend. There are three supported helper rendezvous
methods: HTTP, URL, and email.

The HTTP rendezvous uses an HTTP server and a CGI program. The HTTP
server is responsible for speaking TLS and invoking the CGI program. The
CGI program receives client registrations and proxy requests for
clients, parses them, and forwards them to the backend. We use Apache 2
as the HTTP server. The CGI script is facilitator.cgi. The backend is
facilitator.

The email rendezvous uses the helper program facilitator-email-poller.
Clients use the flashproxy-reg-email program to send an encrypted
message to a Gmail address. The poller constantly checks for new
messages, decrypts and deletes them, and forwards the registrations to
the facilitator.

The URL method uses the facilitator-reg-url daemon and the
flashproxy-reg-url helper program. flashproxy-reg-url prints
out URLs that can be used to register a client with a facilitator.
These URLs can then be pasted into a unblocked third-party URL retreival
serice, like the W3C Markup Validation Service.

fac.py is a Python module containing code common to the various
facilitator programs.

== Basic and security setup<commit_msg>Change description of URL rendezvous method.<commit_after>This document describes how to run a flash proxy facilitator on Debian 6.
We will use the domain name tor-facilitator.example.com.

== Overview

The facilitator consists of a backend server that is essentially a
dynamic database of client addresses, as well as helper programs that
receive client registrations from the Internet over various means and
pass them to the backend. There are three supported helper rendezvous
methods: HTTP, URL, and email.

The HTTP rendezvous uses an HTTP server and a CGI program. The HTTP
server is responsible for speaking TLS and invoking the CGI program. The
CGI program receives client registrations and proxy requests for
clients, parses them, and forwards them to the backend. We use Apache 2
as the HTTP server. The CGI script is facilitator.cgi. The backend is
facilitator.

The email rendezvous uses the helper program facilitator-email-poller.
Clients use the flashproxy-reg-email program to send an encrypted
message to a Gmail address. The poller constantly checks for new
messages, decrypts and deletes them, and forwards the registrations to
the facilitator.

The URL rendezvous uses the helper program flashproxy-reg-email. The
helper program doesn't actually make a registration; rather, it prints
out a URL which, when retrieved, makes the registration.

fac.py is a Python module containing code common to the various
facilitator programs.

== Basic and security setup
{'fraction_non_alphanumeric': 0.03197099538562953, 'fraction_numerical': 0.0016479894528675016, 'mean_word_length': 4.737240075614367, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6854829', 'n_tokens_mistral': 785, 'n_tokens_neox': 731, 'n_words': 450}