mirror of
https://github.com/chatmail/relay.git
synced 2026-06-17 17:11:09 +00:00
Compare commits
1 Commits
main
..
contact-link
| Author | SHA1 | Date | |
|---|---|---|---|
| ccd58da8e9 |
@@ -8,12 +8,7 @@ Chatmail relay servers are interoperable Mail Transport Agents (MTAs) designed f
|
|||||||
- **Instant/Realtime:** sub-second message delivery, realtime P2P
|
- **Instant/Realtime:** sub-second message delivery, realtime P2P
|
||||||
streaming, privacy-preserving Push Notifications for Apple, Google, and Huawei;
|
streaming, privacy-preserving Push Notifications for Apple, Google, and Huawei;
|
||||||
|
|
||||||
- **Security Enforcement**: Only connections with strict TLS are accepted;
|
- **Security Enforcement**: only strict TLS, DKIM and OpenPGP with minimized metadata accepted
|
||||||
all messages must be correctly signed with DKIM and OpenPGP-encrypted with minimized metadata.
|
|
||||||
There are experimental exceptions for no-DNS relays,
|
|
||||||
which are allowed use self-signed TLS certificates
|
|
||||||
and which do not need to DKIM-sign their messages.
|
|
||||||
Unencrypted messages are allowed in neither case.
|
|
||||||
|
|
||||||
- **Reliable Federation and Decentralization:** No spam or IP reputation checks, federating
|
- **Reliable Federation and Decentralization:** No spam or IP reputation checks, federating
|
||||||
depends on established IETF standards and protocols.
|
depends on established IETF standards and protocols.
|
||||||
|
|||||||
@@ -71,7 +71,7 @@ class Config:
|
|||||||
self.iroh_relay = iroh_relay.strip()
|
self.iroh_relay = iroh_relay.strip()
|
||||||
self.enable_iroh_relay = False
|
self.enable_iroh_relay = False
|
||||||
self.privacy_postal = params.pop("privacy_postal", None)
|
self.privacy_postal = params.pop("privacy_postal", None)
|
||||||
self.privacy_mail = params.pop("privacy_mail", None)
|
self.privacy_mail = params.pop("admin_contact", params.pop("privacy_mail", None))
|
||||||
self.privacy_pdo = params.pop("privacy_pdo", None)
|
self.privacy_pdo = params.pop("privacy_pdo", None)
|
||||||
self.privacy_supervisor = params.pop("privacy_supervisor", None)
|
self.privacy_supervisor = params.pop("privacy_supervisor", None)
|
||||||
|
|
||||||
|
|||||||
@@ -109,8 +109,8 @@ mail_domain = {mail_domain}
|
|||||||
# postal address of privacy contact
|
# postal address of privacy contact
|
||||||
privacy_postal =
|
privacy_postal =
|
||||||
|
|
||||||
# email address of privacy contact
|
# email address or invite link of admin contact
|
||||||
privacy_mail =
|
admin_contact =
|
||||||
|
|
||||||
# postal address of the privacy data officer
|
# postal address of the privacy data officer
|
||||||
privacy_pdo =
|
privacy_pdo =
|
||||||
|
|||||||
@@ -94,15 +94,12 @@ def _build_webpages(src_dir, build_dir, config):
|
|||||||
for path in src_dir.iterdir():
|
for path in src_dir.iterdir():
|
||||||
if path.suffix == ".md":
|
if path.suffix == ".md":
|
||||||
render_vars, content = prepare_template(path)
|
render_vars, content = prepare_template(path)
|
||||||
render_vars["username_min_length"] = int_to_english(
|
if config.privacy_mail.startswith("https://"):
|
||||||
config.username_min_length
|
render_vars["admin_contact"] = f"<a href='{config.privacy_mail}'>{config.privacy_mail}</a>"
|
||||||
)
|
elif "@" in config.privacy_mail:
|
||||||
render_vars["username_max_length"] = int_to_english(
|
render_vars["admin_contact"] = f"<a href='mailto:{config.privacy_mail}'>{config.privacy_mail}</a>"
|
||||||
config.username_max_length
|
else:
|
||||||
)
|
render_vars["admin_contact"] = config.privacy_mail
|
||||||
render_vars["password_min_length"] = int_to_english(
|
|
||||||
config.password_min_length
|
|
||||||
)
|
|
||||||
target = build_dir.joinpath(path.stem + ".html")
|
target = build_dir.joinpath(path.stem + ".html")
|
||||||
|
|
||||||
# recursive jinja2 rendering
|
# recursive jinja2 rendering
|
||||||
|
|||||||
+1
-1
@@ -48,7 +48,7 @@ Responsible for the processing of your personal data is:
|
|||||||
{{ config.privacy_postal }}
|
{{ config.privacy_postal }}
|
||||||
```
|
```
|
||||||
|
|
||||||
E-mail: {{ config.privacy_mail }}
|
E-mail: {{ admin_contact }}
|
||||||
|
|
||||||
We have appointed a data protection officer:
|
We have appointed a data protection officer:
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user