From ceadc5cdccea224ec5f50e3093e4f73552a60ee95b33e56c61f8a3be5d7074f3 Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Wed, 20 May 2020 22:17:29 +0000 Subject: [PATCH 1/2] - Backport support for STARTTLS support for SMTP servers + Patch: 0001-Add-support-for-smtp-server-requiring-starttls-to-wo.patch OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/pagure?expand=0&rev=36 --- ...smtp-server-requiring-starttls-to-wo.patch | 77 +++++++++++++++++++ pagure.changes | 6 ++ pagure.spec | 3 +- 3 files changed, 85 insertions(+), 1 deletion(-) create mode 100644 0001-Add-support-for-smtp-server-requiring-starttls-to-wo.patch diff --git a/0001-Add-support-for-smtp-server-requiring-starttls-to-wo.patch b/0001-Add-support-for-smtp-server-requiring-starttls-to-wo.patch new file mode 100644 index 0000000..7f7c083 --- /dev/null +++ b/0001-Add-support-for-smtp-server-requiring-starttls-to-wo.patch @@ -0,0 +1,77 @@ +From 4196a3772693a79f1e5db12fa937bcee8280e248 Mon Sep 17 00:00:00 2001 +From: Pierre-Yves Chibon +Date: Mon, 18 May 2020 15:57:05 +0200 +Subject: [PATCH] Add support for smtp server requiring starttls to work + +Signed-off-by: Pierre-Yves Chibon +--- + doc/configuration.rst | 27 +++++++++++++++++++++++++++ + pagure/lib/notify.py | 14 ++++++++++++++ + 2 files changed, 41 insertions(+) + +diff --git a/doc/configuration.rst b/doc/configuration.rst +index 41f29b96..25dee387 100644 +--- a/doc/configuration.rst ++++ b/doc/configuration.rst +@@ -961,6 +961,33 @@ should be secured over SSL. + Defaults to: ``False`` + + ++SMTP_STARTTLS ++^^^^^^^^^^^^^ ++ ++This configuration key specifies instructs pagure to starts connecting to ++the SMTP server via a `starttls` command. ++ ++Defaults to: ``False`` ++ ++ ++SMTP_KEYFILE ++^^^^^^^^^^^^ ++ ++This configuration key allows to specify a key file to be used in the ++`starttls` command when connecting to the smtp server. ++ ++Defaults to: ``None`` ++ ++ ++SMTP_CERTFILE ++^^^^^^^^^^^^ ++ ++This configuration key allows to specify a certificate file to be used in ++the `starttls` command when connecting to the smtp server. ++ ++Defaults to: ``None`` ++ ++ + SMTP_USERNAME + ^^^^^^^^^^^^^ + +diff --git a/pagure/lib/notify.py b/pagure/lib/notify.py +index 7670ad15..2c4ee30f 100644 +--- a/pagure/lib/notify.py ++++ b/pagure/lib/notify.py +@@ -505,6 +505,20 @@ def send_email( + pagure_config["SMTP_SERVER"], + pagure_config["SMTP_PORT"], + ) ++ ++ if pagure_config["SMTP_STARTTLS"]: ++ context = ssl.create_default_context() ++ keyfile = pagure_config.get("SMTP_KEYFILE") or None ++ certfile = pagure_config.get("SMTP_CERTFILE") or None ++ respcode, _ = smtp.starttls( ++ keyfile=keyfile, certfile=certfile, context=context, ++ ) ++ if respcode != 220: ++ _log.warning( ++ "The starttls command did not return the 220 " ++ "response code expected." ++ ) ++ + if ( + pagure_config["SMTP_USERNAME"] + and pagure_config["SMTP_PASSWORD"] +-- +2.26.1 + diff --git a/pagure.changes b/pagure.changes index a1fe1da..34804d6 100644 --- a/pagure.changes +++ b/pagure.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Wed May 20 22:15:42 UTC 2020 - Neal Gompa + +- Backport support for STARTTLS support for SMTP servers + + Patch: 0001-Add-support-for-smtp-server-requiring-starttls-to-wo.patch + ------------------------------------------------------------------- Mon May 18 13:31:41 UTC 2020 - Neal Gompa diff --git a/pagure.spec b/pagure.spec index 80bdacc..759e050 100644 --- a/pagure.spec +++ b/pagure.spec @@ -43,7 +43,8 @@ Source10: pagure-README.SUSE # Backports from upstream ## Backport fix to make stats page work Patch0001: 0001-Make-the-stats-page-use-the-new-stats-API-endpoint.patch - +## Backport support for STARTTLS support for SMTP servers +Patch0002: 0001-Add-support-for-smtp-server-requiring-starttls-to-wo.patch # SUSE-specific fixes ## Change the defaults in the example config to match packaging From 665b83092889e26bd0b912b6dafdd3db9d19979a6fa2830cffe733e447522f73 Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Wed, 20 May 2020 23:35:26 +0000 Subject: [PATCH 2/2] - Fix typo in quickstart on ssh directory mode OBS-URL: https://build.opensuse.org/package/show/devel:tools:scm/pagure?expand=0&rev=37 --- pagure-README.SUSE | 2 +- pagure.changes | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/pagure-README.SUSE b/pagure-README.SUSE index cae1395..83c31cb 100644 --- a/pagure-README.SUSE +++ b/pagure-README.SUSE @@ -8,7 +8,7 @@ mkdir -p /srv/gitolite/pseudo mkdir -p /srv/gitolite/remotes mkdir -p /srv/gitolite/.gitolite/{conf,keydir,logs} mkdir -p /srv/gitolite/.ssh -chmod 700 /srv/gitolite/.ssh +chmod 750 /srv/gitolite/.ssh touch /srv/gitolite/.gitolite/conf/gitolite.conf diff --git a/pagure.changes b/pagure.changes index 34804d6..502e39f 100644 --- a/pagure.changes +++ b/pagure.changes @@ -1,6 +1,7 @@ ------------------------------------------------------------------- -Wed May 20 22:15:42 UTC 2020 - Neal Gompa +Wed May 20 23:34:26 UTC 2020 - Neal Gompa +- Fix typo in quickstart on ssh directory mode - Backport support for STARTTLS support for SMTP servers + Patch: 0001-Add-support-for-smtp-server-requiring-starttls-to-wo.patch