This document refers to Schleuder version 5.0. To read about older versions of Schleuder please see the older docs.
Using a list
Everything you send to foo@hostname
will be send to all subscribers, but they will see only certain headers and the body of your email. The selection of these headers can be configured for each list individually by the list-admins.
Getting a list’s public key
Each Schleuder-list replies with its public key to any email sent to foo-sendkey@hostname
. E.g. to receive the key for our contact address write an email to team-sendkey@schleuder.org
.
Special keywords
Schleuder knows some special keywords that trigger different behaviour. You can e.g. subscribe someone, or resend an email to a non-subscriber using keywords. See a list of available keywords below.
Keywords require that:
- they start the line and begin with “x-“,
- they are written into the beginning of the first text-part of the email (usually that’s just the normal body of the email),
- possible arguments must be written on the same line as the keyword (exceptions are mentioned in the descriptions below),
- they are separated from the body of the email with a blank line,
- the email must be encrypted and signed by a list-member’s key.
- the email must be formatted as a plain text message and not with HTML, RTF or similar formatting.
Keywords can be repeated within one email at will. Letter case doesn’t matter.
There are two types of keywords: those to enhance messages sent over the list (“list-keywords”), and those to request something from Schleuder (“request-keywords”).
Security
To mitigate replay attacks of emails containing keywords, every email using a keyword must contain the special x-list-name
keyword followed by the list’s emailaddress. Example:
- x-list-name: someone@example.org
- You must always provide this keyword once per email. Without it, no other keyword will be considered but you will receive an error message.
Subscription and key management
These keywords must be send to foo-request@hostname
. They are used to get information about the list, its subscribers and keys, or to change that information.
- x-list-subscriptions
- List all subscriptions.
- x-subscribe: person@example.org 0x12345678DEADBEEF12345678DEADBEEF12345678 false true
- Subscribe the given email address and assign it the given OpenPGP fingerprint. The last two arguments can be omitted and will default to “false true”: do not give the given email address administration permissions and enable email delivery.
- x-unsubscribe: person@example.org
- Unsubscribe the given address. It is not possible to unsubscribe the last admin of a list.
- x-set-fingerprint: 0x12345678DEADBEEF12345678DEADBEEF12345678
- Assign the key with the given fingerprint to your subscription. It is not possible to set an empty fingerprint. To unset a fingerprint use
x-unset-fingerprint
. - x-set-fingerprint: person@example.org 0x12345678DEADBEEF12345678DEADBEEF12345678
- Assign the key with the given fingerprint to the given subscription. This variant of this command may only be used by list-admins. To unset a fingerprint use
x-unset-fingerprint
. - x-unset-fingerprint: person@example.org
- Remove the fingerprint associated with a given subscription.
- x-list-keys
- Lists all public keys known to the list. To see only keys that match a given string, use
x-list-keys: something
. - x-add-key:
- Import the email’s attachment(s) or the rest of the email-body into the list’s keyring. To paste your public key into the body of the mail, please export it in “ASCII-armored” text format (e.g.
gpg --armor --export 0xAE0DBF5A92A5ADE49481AB6F8A3171EF366150CE
). Please make sure you put a blank line between the keyword(s) and the key material. If you send the key as an attachment of the email, both “ASCII-armored” and binary format are supported. - x-delete-key: 0x12345678DEADBEEF12345678DEADBEEF12345678
- Delete the key with the given fingerprint from the list’s keyring.
- x-get-key: 0x12345678DEADBEEF12345678DEADBEEF12345678
- Export the key with the given fingerprint from the list’s keyring.
- x-fetch-key: 0x12345678DEADBEEF12345678DEADBEEF12345678
- Fetch the key with the given fingerprint from a keyserver and import it into the list’s keyring. (This works only if a keyserver has been configured by the provider.)
This keyword must be send to the normal list-address: foo@hostname
.
- x-attach-listkey:
- Attaches the public key of the list. This might be useful for example after the setup of a new list, to distribute the public key of the list to all subscribers.
Other
These must also be sent to the request-address: foo-request@hostname.
- x-get-logfile:
- Sends the logfile of the list.
- x-get-version:
- Returns the version of schleuder.
- x-sign-this:
- Sign the remaining contents of the email body or the attachments with the list’s key. Use this e.g. to provide GnuPG-signatures for things you are publishing.
To participate in the development use the issue tracker. Please take note of our Code of Conduct.