summaryrefslogtreecommitdiff
path: root/Architecture_and_Design/de-DE/Kolab_Content_Filters.po
diff options
context:
space:
mode:
authorJeroen van Meeuwen (Kolab Systems) <vanmeeuwen@kolabsys.com>2012-08-13 14:49:04 (GMT)
committerJeroen van Meeuwen (Kolab Systems) <vanmeeuwen@kolabsys.com>2012-08-13 14:49:04 (GMT)
commitd086235b54b20c392a9d2f7da7204f3f62288a17 (patch)
tree0fbaa07d9cc29d5fa0e657ddd5045ca19c3d67d5 /Architecture_and_Design/de-DE/Kolab_Content_Filters.po
parent813996feafb365b758dbd51ad9839df260d29945 (diff)
downloadkolab-docs-d086235b54b20c392a9d2f7da7204f3f62288a17.tar.gz
Add language de-DE
Diffstat (limited to 'Architecture_and_Design/de-DE/Kolab_Content_Filters.po')
-rw-r--r--Architecture_and_Design/de-DE/Kolab_Content_Filters.po770
1 files changed, 770 insertions, 0 deletions
diff --git a/Architecture_and_Design/de-DE/Kolab_Content_Filters.po b/Architecture_and_Design/de-DE/Kolab_Content_Filters.po
new file mode 100644
index 0000000..0d71212
--- /dev/null
+++ b/Architecture_and_Design/de-DE/Kolab_Content_Filters.po
@@ -0,0 +1,770 @@
+#
+# AUTHOR <EMAIL@ADDRESS>, YEAR.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: 0\n"
+"POT-Creation-Date: 2012-08-13T14:49:03\n"
+"PO-Revision-Date: 2012-08-13T14:49:03\n"
+"Last-Translator: Automatically generated\n"
+"Language-Team: None\n"
+"MIME-Version: 1.0\n"
+"Content-Type: application/x-publican; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+
+#. Tag: title
+#, no-c-format
+msgid "Kolab Content Filters"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Kolab Groupware ships with two content filters:"
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Amavisd"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Amavisd is a popular, high-performance interface between an MTA and content checkers, such as anti-virus suite ClamAV and anti-spam suite SpamAssasin."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Homepage: <ulink url=\"http://www.amavis.org/\" />"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Amavisd is commonly deployed on at least external mail exchangers, to make sure no virus and spam is received or sent out by Kolab users."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "In addition, especially within environments that run Windows clients, Amavisd is typically deployed to scan internal traffic as well, on the internal mail exchangers."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Deploying Amavisd for virus-scanning on both the internal and external mail exchangers can cause virus-scanning to occur twice; once on the internal mail exchanger used by a Kolab user to send a message, and once on the external mail exchanger. (for outgoing messages)."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "One way to circumvent the issue is to let Wallace sit in between the internal mail exchanger MTA, and the Amavisd service. Wallace can re-inject messages to be delivered locally back into the internal mail exchanger MTA, while injecting messages to be delivered remotely directly into the external mail exchanger MTA. Read more about Wallace in <xref linkend=\"sect-Architecture_and_Design-Kolab_Content_Filters-The_Wallace_Content_Filter\" />."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Such scenario however does not serve use-cases for messages that are sent to both internal as well as external recipients - the same message would still be scanned for virusses twice. It therefore makes no sense to split the message, and any message with any internal recipients are simply re-injected into the internal mail exchanger MTA."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Wallace"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Wallace is a Kolab Groupware content filter, enabling Kolab Groupware to interrupt a message flow, perform complex and/or lengthy checks, data collection and processes, possibly altering the contents of the message's content or future flow."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Homepage: <ulink url=\"http://www.kolab.org/\" />"
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "The Wallace Content Filter"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The Wallace content filter consists of a master framework, and a number of modules. Modules can be enabled through configuration in <filename>/etc/kolab/kolab.conf</filename>, by adding the name of the module to the comma-separated list of modules in section <literal>[wallace]</literal>, key <literal>modules</literal>."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Example Configuration Enabling Modules in Wallace"
+msgstr ""
+
+#. Tag: screen
+#, no-c-format
+msgid "[kolab]\n"
+"(...generic kolab settings...)\n"
+"\n"
+"[wallace]\n"
+"modules=conversations,optout\n"
+""
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "In this example, the <literal>conversations</literal> and <literal>optout</literal> modules are enabled."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "For a list of modules available, please refer to <xref linkend=\"sect-Architecture_and_Design-The_Wallace_Content_Filter-List_of_Wallace_Modules\" />."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Wallace is a multi-process, multi-threaded daemon. It runs a minimum of two processes:"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The first process accepts new messages and puts them in the 'incoming' queue."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "When this process starts, before this process accepts any new messages, it finds all messages inside the spool that are not already deferred (have not been deferred before), and executes the function(s) closest to the message's last known state."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The second process picks up any messages in 'deferred' queues."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Wallace uses threading to allow a continuous stream of messages to be processed in parallel (rather then sequential). Each incoming message is written out to the main incoming queue, and subsequently dispatched for processing to such a thread."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Wallace uses thread throttling to prevent the application from overloading the system or any other systems and/or services the enabled modules need to consult in order to perform its job(s). The default maximum number of threads Wallace processes will spawn for each of the processes it runs is 25."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The maximum number of threads per process is currently not configurable."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Message Flow and Processing in Wallace"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "A message delivered to Wallace is written to a master thread spool file in <filename>/var/spool/pykolab/wallace/</filename>. The use of tempfile.mktemp() ensures that the file created is unique."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The base path used for the spool directories is currently not configurable."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "For each incoming message successfully spooled to disk, Wallace creates a thread for processing. This thread is started right-away, in order to allow the master thread to continue to accept new incoming messages."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The processing thread (the thread created by the master thread in order to process an incoming message) only actually starts processing the message if the total number of threads is below the set threshold."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The processing thread, once starting to process the message, iterates over the list of modules configured."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Each module's execute function is called with the full path to the message file as a parameter, and is to return either of;"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "A tuple containing the following:"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "(string) the module that was processing the file,"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "(string) full path to processed message file,"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "When such tuple is returned, Wallace is to continue processing the message using the next module in the list of modules, if any."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "If no other modules are listed for further processing, the message is re-injected to the MTA as-is."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "<literal>None</literal>"
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Module Spool Directories"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Modules maintain their own spool directories in order to be able to maintain state. The directory tree for a given module may look as follows:"
+msgstr ""
+
+#. Tag: screen
+#, no-c-format
+msgid "<filename>/var/spool/pykolab/wallace/<replaceable>$module</replaceable>/</filename>\n"
+"<filename>/var/spool/pykolab/wallace/<replaceable>$module</replaceable>/incoming/</filename>\n"
+"<filename>/var/spool/pykolab/wallace/<replaceable>$module</replaceable>/ACCEPT/</filename>\n"
+"<filename>/var/spool/pykolab/wallace/<replaceable>$module</replaceable>/DEFER/</filename>\n"
+"<filename>/var/spool/pykolab/wallace/<replaceable>$module</replaceable>/DISCARD/</filename>\n"
+"<filename>/var/spool/pykolab/wallace/<replaceable>$module</replaceable>/DUNNO/</filename>\n"
+"<filename>/var/spool/pykolab/wallace/<replaceable>$module</replaceable>/HOLD/</filename>\n"
+"<filename>/var/spool/pykolab/wallace/<replaceable>$module</replaceable>/REJECT/</filename>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "This means a module is required to copy and/or move (part of) the message into the correct queue before placing a callback to Wallace. For example, when the <literal>optout</literal> is executed, the first thing it should to is pick up the message from <filename>/var/spool/pykolab/wallace/incoming/</filename> and move the message file to <filename>/var/spool/pykolab/wallace/optout/incoming/</filename>."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Module API Requirements"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "A module requires the following in order to be eligible for execution as a Wallace module;"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The module's (main) Python code file must live in the Wallace main directory, and have a filename that starts with <filename>module_</filename>, contains the module name, and ends with <filename>.py</filename>."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Example Wallace Module Python Code File Location"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "An example location for a module named <literal>optout</literal> would be:"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "<filename>/usr/lib/python2.7/site-packages/wallace/module_optout.py</filename>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The module file MUST contain a function <literal>init(*args, **kw)</literal>."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>init()</literal> function MUST call <literal>modules.register(<replaceable>module_name</replaceable>, <replaceable>execute_function</replaceable>[, <replaceable>description</replaceable>])</literal>, where <replaceable>module_name</replaceable> is the module name, and <replaceable>execute_function</replaceable> is the pointer to the function to execute when Wallace is to execute the module."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "<literal>init()</literal> function for module <literal>optout</literal>"
+msgstr ""
+
+#. Tag: screen
+#, no-c-format
+msgid "def __init__():\n"
+" if not os.path.isdir(mybasepath):\n"
+" os.makedirs(mybasepath)\n"
+"\n"
+" modules.register('optout', execute, description=description())\n"
+"\n"
+"def description():\n"
+" return \"\"\"Consult the opt-out service.\"\"\"\n"
+"\n"
+"def execute(*args, **kw):\n"
+" (...abbreviated for clarity...)\n"
+" pass"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The module file MUST contain a function to execute, separate from the <literal>init</literal> function. We strongly recommend calling this function <literal>execute</literal> to avoid confusion."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Wallace Module Interfaces"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "In a module's <emphasis>execute</emphasis> function, callbacks may be placed to indicate the message's processing has reached a certain state."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The following callbacks are available;"
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Available Wallace Module Callbacks"
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "<literal>cb_action_ACCEPT(<replaceable>module</replaceable>, <replaceable>filepath</replaceable>[,final=False])</literal>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Modules place a callback to this function to indicate they are accepting the message."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The required parameter <emphasis>module</emphasis> is to contain the name of the module placing the callback. This allows hooks from other modules to be executed conditionally."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The required parameter <replaceable>filepath</replaceable> is a string containing the full path to the message to be accepted."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The optional parameter <emphasis>final</emphasis> is a boolean indicating the module's result is a final result or not. If the result is final (final == True), this callback function is to re-inject the message into the MTA for final delivery, and discard the message file. If the result is not final (final == False, the default), Wallace is to continue iterating the modules configured."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "<literal>cb_action_DEFER(module,filepath)</literal>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Modules place a callback to this function when a module could not successfully execute (a part of) its tasks. It is to be interpreted as a \"try again later\" callback."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "A callback to this function is always considered final."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "<literal>cb_action_DISCARD(module,filepath)</literal>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The message in <literal>filepath</literal> is to be discarded in its entirety. A callback to this function is placed when a message needs to be discarded only to allow other modules to hook in to this part of the process."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "<literal>cb_action_DUNNO(module,filepath)</literal>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "A callback to this function is to indicate that the module placing the callback does not care what happens to the message in <literal>filepath</literal>. Since modules can apply rules that enable them to determine whether or not they need to be executed in full for a given message, this callback indicates that the module has found it should not be executed for the particular message."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "A callback to this function is never considered final."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "<literal>cb_action_HOLD(module,filepath)</literal>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "A callback to this function puts the processing and delivery for the message in <literal>filepath</literal> on hold, awaiting (manual) review."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Although Wallace will stop processing the message pending review, a callback to this function is never considered final. Review procedures could include inserting the message back into either of the configured modules, or accepting, rejecting or discarding (parts of) the message."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "<literal>cb_action_REJECT(module,filepath)</literal>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "A callback to this function tells Wallace the message in <literal>filepath</literal> is to be rejected."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "A callback to this function is always considered final. A non-delivery report will be sent back to the original envelope sender as a result of placing a callback to this function, and the message will be discarded."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "List of Wallace Modules"
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Modules for Wallace"
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "bcc"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "This module allows the execution of advanced, complex rules in order to determine whether a blind carbon copy (BCC) of the original message being processed needs to be sent to an alternate location, in addition to the originally intended recipient addresses."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The module allows Wallace to conditionally send blind carbon copies based on any content, including headers, body contents and attachments, and do to so by attaching the original message to a new message, or otherwise."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Additionally, the module provides hooks for other modules and hooks to be executed on action callbacks to again trigger sending a blind carbon copy conditional to the internal decisions and/or outcome of other modules."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Please note that Postfix allows for lookup tables that can send a copy of a message to an additional recipient address as well. This is the preferred method to send blind carbon copies to additional recipient addresses."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "This module is not yet implemented."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "conversations"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Organizations that consider electronic communications through Kolab Groupware subject to anti-spam laws and/or regulations, and/or want to prevent consumers from receiving electronic communications unless the conversation had been started by said consumer, could choose to enable the conversations module in order to allow messages sent from Kolab Groupware users to consumers (external recipient email addresses), which are part of a conversation initiated by said consumer."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "This module also provides hooks that other modules can use to query for existing conversations."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "dlp"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Short for Data-Loss Prevention, this module enables Wallace to consult external, 3rd party applications, that perform checks on the contents of the message, including any attachments."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Data-loss Prevention, in itself an ambiguous term that has little to do with loss of data, is generally applied to prevent users from leaking information that is considered private, confidential and/or proprietary. It is generally considered a protection mechanism to prevent intellectual property (copyrighted, trademarked and/or patented materials) from falling into the hands of people unauthorized to obtain such information."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "footer"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "This module enables Kolab Groupware to insert a footer to a message."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "googletranslate"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "This module enables Kolab Groupware to translate the body of a message to another language, using the Google Translate API."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "freebusy"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The Free/Busy module can take iTip invitations, and RSVP automatically, based on a per-user policy."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Additionally, this module allows for delegation, by copying in additional recipients of the iTip invitation."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "optout"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Organizations that have external, 3rd party mass-mailing programs for commercial, promotional and/or marketing purposes, often allow consumers to 'opt-out' of such communications. This module allows Wallace to check a service that can consult these databases (\"optout consult service\", or OCS), apply business logic, and strip off the recipient email addresses that such OCS determines should not be receiving a copy of the original message."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "resources"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "When attempting to make reservations for a resource, such as a conference room, this module performs scheduling conflict detection and can automatically take action."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "statistics"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "For accounting purposes, this module can contain a variety of metadata about a message in a database."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "The <literal>optout</literal> Module"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>optout</literal> module for Wallace consults an external HTTP service that in turn is to determine whether or not to accept, hold or reject the message."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>optout</literal> module submits one or more POST requests to the configured URL, in succession. One request is made for each unique pair of the envelope sender address and a recipient address (meaning it iterates over the recipient addresses for the message and makes one request per recipient address). A single request contains the following information:"
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "<literal>unique-message-id</literal>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "A unique identifier uniquely identifying the message."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "<literal>envelope_sender</literal>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The envelope sender address for the message."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "<literal>recipient</literal>"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The recipient address."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>optout</literal> module encapsulates the payload in a JSON object."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "It expects a result, again contained in a JSON object, that contains the same information as the request, and an additional \"result\"."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "A simplified example of such Opt-out Consult Service can be found at <ulink url=\"http://admin.klab.cc/~vanmeeuwen/optout/optout.phps\" />."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The aforementioned example simply parses the recipient email address and attempts to find a particular action to take in the recipient address extension."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>optout</literal> module has no purpose for results DISCARD and DUNNO, and is only interested in results ACCEPT, DEFER, HOLD and REJECT."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>optout</literal> module stores the results for all requests made, until it runs out of recipient addresses to consult the OCS for. When it is done, it splits the original message into the parts for which the result was ACCEPT, DEFER, HOLD and REJECT, if any. Each part of the message contains only the recipient addresses for which that specific action had to be taken."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Opt-out Example"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Using the example optout consult service available through <ulink url=\"http://admin.klab.cc/~vanmeeuwen/optout/optout.php\" /> (<ulink url=\"http://admin.klab.cc/~vanmeeuwen/optout/optout.phps\">source code</ulink>), the following is an example interation through the <literal>optout</literal> module."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "<ulink url=\"mailto:John.Doe@example.org\">John.Doe@example.org</ulink> sends a message with recipient address <ulink url=\"mailto:John.Doe+REJECT@example.org\">John.Doe+REJECT@example.org</ulink> in the To: header, and recipient address <ulink url=\"mailto:John.Doe+ACCEPT@example.org\">John.Doe+ACCEPT@example.org</ulink> in the CC: header."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Wallace spools the message in <filename>/var/spool/pykolab/wallace/incoming/tmpASD890</filename>."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Wallace executes the <literal>optout</literal> module for this message."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>optout</literal> module immediately renames the message to <filename>/var/spool/pykolab/wallace/optout/incoming/tmpASD890</filename>."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>optout</literal> module reads the message, and consults the OCS with the first pair. The request payload looks as follows:"
+msgstr ""
+
+#. Tag: screen
+#, no-c-format
+msgid "{\n"
+" \"unique-message-id\": \"tmpASD890\",\n"
+" \"envelope_sender\": \"John.Doe@example.org\",\n"
+" \"recipient\": \"John.Doe+REJECT@example.org\"\n"
+" }"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The OCS responds with the following result payload:"
+msgstr ""
+
+#. Tag: screen
+#, no-c-format
+msgid "{\n"
+" \"unique-message-id\": \"tmpASD890\",\n"
+" \"envelope_sender\": \"John.Doe@example.org\",\n"
+" \"recipient\": \"John.Doe+REJECT@example.org\",\n"
+" \"result\": \"REJECT\"\n"
+" }"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>optout</literal> module reads the message, and consults the OCS with the second pair. The request payload looks as follows:"
+msgstr ""
+
+#. Tag: screen
+#, no-c-format
+msgid "{\n"
+" \"unique-message-id\": \"tmpASD890\",\n"
+" \"envelope_sender\": \"John.Doe@example.org\",\n"
+" \"recipient\": \"John.Doe+ACCEPT@example.org\"\n"
+" }"
+msgstr ""
+
+#. Tag: screen
+#, no-c-format
+msgid "{\n"
+" \"unique-message-id\": \"tmpASD890\",\n"
+" \"envelope_sender\": \"John.Doe@example.org\",\n"
+" \"recipient\": \"John.Doe+ACCEPT@example.org\",\n"
+" \"result\": \"ACCEPT\"\n"
+" }"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>optout</literal> module creates a new spool file <filename>/var/spool/pykolab/wallace/optout/ACCEPT/tmpQWE123</filename> with the From: header intact, and the CC: header intact. It removes the To: header contents."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>optout</literal> module calls callback function <literal>cb_action_ACCEPT('<replaceable>optout</replaceable>', <replaceable>/var/spool/pykolab/wallace/optout/ACCEPT/tmpQWE123</replaceable>)</literal>."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "As a result, Wallace either continues with the next module, or re-injects the message into the MTA for final delivery."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>optout</literal> module creates a new spool file <filename>/var/spool/pykolab/wallace/optout/REJECT/tmpGHJ456</filename> with the From: header intact, and the To: header intact. It removes the CC: header contents."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "The <literal>optout</literal> module calls callback function <literal>cb_action_REJECT('<replaceable>optout</replaceable>', <replaceable>/var/spool/pykolab/wallace/optout/REJECT/tmpGHJ456</replaceable>)</literal>."
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "As a result, Wallace sends out an NDR for the message, and unlinks the message from the filesystem."
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Configuring the Wallace Content Filter"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "para"
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Adding Wallace After Amavisd"
+msgstr ""
+
+#. Tag: title
+#, no-c-format
+msgid "Security Enhanced Linux Considerations"
+msgstr ""
+
+#. Tag: para
+#, no-c-format
+msgid "Relabel port 10026 (Wallace) and port 10027 (Postfix re-injection)."
+msgstr ""
+