schleuder 3.6.0 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +6 -6
- data/Rakefile +12 -14
- data/bin/schleuder +1 -1
- data/db/migrate/20140501103532_create_lists.rb +1 -1
- data/db/migrate/20140501112859_create_subscriptions.rb +1 -1
- data/db/migrate/{201508092100_add_language_to_lists.rb → 20150809210000_add_language_to_lists.rb} +1 -1
- data/db/migrate/20150812165700_change_keywords_admin_only_defaults.rb +1 -1
- data/db/migrate/20150813235800_add_forward_all_incoming_to_admins.rb +1 -1
- data/db/migrate/{201508141727_change_send_encrypted_only_default.rb → 20150814172700_change_send_encrypted_only_default.rb} +1 -1
- data/db/migrate/{201508222143_add_logfiles_to_keep_to_lists.rb → 20150822214300_add_logfiles_to_keep_to_lists.rb} +1 -1
- data/db/migrate/{201508261723_rename_delivery_disabled_to_delivery_enabled_and_change_default.rb → 20150826172300_rename_delivery_disabled_to_delivery_enabled_and_change_default.rb} +1 -1
- data/db/migrate/{201508261815_strip_gpg_passphrase.rb → 20150826181500_strip_gpg_passphrase.rb} +1 -1
- data/db/migrate/{201508261827_remove_default_mime.rb → 20150826182700_remove_default_mime.rb} +1 -1
- data/db/migrate/20160501172700_fix_headers_to_meta_defaults.rb +1 -1
- data/db/migrate/20170713215059_add_internal_footer_to_list.rb +1 -1
- data/db/migrate/20180110203100_add_sig_enc_to_headers_to_meta_defaults.rb +1 -1
- data/db/migrate/20180723173900_add_deliver_selfsent_to_list.rb +1 -1
- data/db/migrate/20190906194820_add_autocrypt_header_to_list.rb +1 -1
- data/db/migrate/20200118170110_add_set_reply_to_to_sender_and_munge_from.rb +1 -1
- data/db/schema.rb +45 -47
- data/etc/postfix/schleuder_sqlite.cf +1 -1
- data/etc/schleuder-weekly-key-maintenance.service +9 -0
- data/etc/schleuder-weekly-key-maintenance.timer +9 -0
- data/etc/schleuder.yml +3 -3
- data/lib/schleuder-api-daemon/helpers/schleuder-api-daemon-helper.rb +3 -3
- data/lib/schleuder-api-daemon/routes/subscription.rb +4 -4
- data/lib/schleuder.rb +9 -11
- data/lib/schleuder/cli.rb +9 -188
- data/lib/schleuder/cli/cert.rb +2 -2
- data/lib/schleuder/cli/cli_helper.rb +14 -0
- data/lib/schleuder/cli/schleuder_cert_manager.rb +4 -4
- data/lib/schleuder/conf.rb +3 -3
- data/lib/schleuder/errors/base.rb +2 -2
- data/lib/schleuder/errors/decryption_failed.rb +1 -1
- data/lib/schleuder/errors/fatal_error.rb +1 -1
- data/lib/schleuder/errors/key_adduid_failed.rb +1 -1
- data/lib/schleuder/errors/key_generation_failed.rb +1 -1
- data/lib/schleuder/errors/message_empty.rb +1 -1
- data/lib/schleuder/errors/message_too_big.rb +1 -1
- data/lib/schleuder/errors/too_many_keys.rb +1 -1
- data/lib/schleuder/filters/post_decryption/10_request.rb +3 -3
- data/lib/schleuder/filters/post_decryption/20_max_message_size.rb +1 -1
- data/lib/schleuder/filters/post_decryption/30_forward_to_owner.rb +1 -1
- data/lib/schleuder/filters/post_decryption/40_receive_admin_only.rb +1 -1
- data/lib/schleuder/filters/post_decryption/50_receive_authenticated_only.rb +1 -1
- data/lib/schleuder/filters/post_decryption/60_receive_signed_only.rb +1 -1
- data/lib/schleuder/filters/post_decryption/70_receive_encrypted_only.rb +1 -1
- data/lib/schleuder/filters/post_decryption/80_receive_from_subscribed_emailaddresses_only.rb +1 -1
- data/lib/schleuder/filters/pre_decryption/10_forward_bounce_to_admins.rb +1 -1
- data/lib/schleuder/filters/pre_decryption/30_send_key.rb +1 -1
- data/lib/schleuder/filters/pre_decryption/40_fix_exchange_messages.rb +1 -1
- data/lib/schleuder/filters/pre_decryption/50_strip_html_from_alternative.rb +2 -2
- data/lib/schleuder/filters_runner.rb +9 -9
- data/lib/schleuder/gpgme/ctx.rb +15 -35
- data/lib/schleuder/gpgme/key.rb +4 -136
- data/lib/schleuder/gpgme/user_id.rb +2 -0
- data/lib/schleuder/keyword_handlers/attach_list_key.rb +17 -0
- data/lib/schleuder/keyword_handlers/base.rb +36 -0
- data/lib/schleuder/keyword_handlers/get_version.rb +11 -0
- data/lib/schleuder/keyword_handlers/key_management.rb +141 -0
- data/lib/schleuder/keyword_handlers/list_management.rb +19 -0
- data/lib/schleuder/keyword_handlers/resend.rb +208 -0
- data/lib/schleuder/keyword_handlers/sign_this.rb +54 -0
- data/lib/schleuder/keyword_handlers/subscription_management.rb +213 -0
- data/lib/schleuder/keyword_handlers_runner.rb +146 -0
- data/lib/schleuder/list.rb +11 -39
- data/lib/schleuder/list_builder.rb +16 -5
- data/lib/schleuder/listlogger.rb +1 -1
- data/lib/schleuder/mail/message.rb +82 -61
- data/lib/schleuder/runner.rb +18 -16
- data/lib/schleuder/subscription.rb +9 -10
- data/lib/schleuder/validators/boolean_validator.rb +1 -1
- data/lib/schleuder/validators/email_validator.rb +1 -1
- data/lib/schleuder/validators/fingerprint_validator.rb +1 -1
- data/lib/schleuder/validators/greater_than_zero_validator.rb +1 -1
- data/lib/schleuder/validators/no_line_breaks_validator.rb +1 -1
- data/lib/schleuder/version.rb +1 -1
- data/locales/de.yml +48 -36
- data/locales/en.yml +33 -21
- metadata +117 -53
- data/bin/pinentry-clearpassphrase +0 -72
- data/lib/schleuder/plugin_runners/base.rb +0 -91
- data/lib/schleuder/plugin_runners/list_plugins_runner.rb +0 -24
- data/lib/schleuder/plugin_runners/request_plugins_runner.rb +0 -27
- data/lib/schleuder/plugins/attach_listkey.rb +0 -13
- data/lib/schleuder/plugins/get_version.rb +0 -7
- data/lib/schleuder/plugins/key_management.rb +0 -121
- data/lib/schleuder/plugins/list_management.rb +0 -15
- data/lib/schleuder/plugins/resend.rb +0 -199
- data/lib/schleuder/plugins/sign_this.rb +0 -46
- data/lib/schleuder/plugins/subscription_management.rb +0 -207
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 71fae6520fb76978d0292533c7e4b1d4ed72cd881ba81be71eacd2ab1811d5e2
|
|
4
|
+
data.tar.gz: 5542044280bcd7bb2875bdc443c37146c490fe186a16c9d2449d8d9dab8131c9
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8c724133f39be4c6af72c61d6f26e95bcf4f1a99f6184ac845d55a36d53eaea60fc78273950609f3bbae7fc4faec72005adf9324ab5186d505be58495cb58582
|
|
7
|
+
data.tar.gz: 608978e0555f93ab3e4f7aefb67063df9e0fd8f7b06b28d20ea8f869384ba7ed0e08ba0d071ca81fccd2f269656907413b82fce930c6535aff30f60ef8ad4f95
|
data/README.md
CHANGED
|
@@ -10,8 +10,8 @@ For more details see <https://schleuder.org/docs/>.
|
|
|
10
10
|
|
|
11
11
|
Requirements
|
|
12
12
|
------------
|
|
13
|
-
* ruby >=2.
|
|
14
|
-
* gnupg 2.
|
|
13
|
+
* ruby >=2.5
|
|
14
|
+
* gnupg >=2.2
|
|
15
15
|
* gpgme
|
|
16
16
|
* sqlite3
|
|
17
17
|
* openssl
|
|
@@ -48,15 +48,15 @@ Additionally these **rubygems** are required (will be installed automatically un
|
|
|
48
48
|
Installing Schleuder
|
|
49
49
|
------------
|
|
50
50
|
|
|
51
|
-
1. Download [the gem](https://schleuder.org/download/schleuder-
|
|
51
|
+
1. Download [the gem](https://schleuder.org/download/schleuder-4.0.0.gem) and [the OpenPGP-signature](https://schleuder.org/download/schleuder-4.0.0.gem.sig) and verify:
|
|
52
52
|
```
|
|
53
53
|
gpg --recv-key 0xB3D190D5235C74E1907EACFE898F2C91E2E6E1F3
|
|
54
|
-
gpg --verify schleuder-
|
|
54
|
+
gpg --verify schleuder-4.0.0.gem.sig
|
|
55
55
|
```
|
|
56
56
|
|
|
57
57
|
2. If all went well install the gem:
|
|
58
58
|
```
|
|
59
|
-
gem install schleuder-
|
|
59
|
+
gem install schleuder-4.0.0.gem
|
|
60
60
|
```
|
|
61
61
|
|
|
62
62
|
3. Set up schleuder:
|
|
@@ -146,4 +146,4 @@ GNU GPL 3.0. Please see [LICENSE.txt](LICENSE.txt).
|
|
|
146
146
|
Alternative Download
|
|
147
147
|
--------------------
|
|
148
148
|
|
|
149
|
-
Alternatively to the gem-files you can download the latest release as [a tarball](https://schleuder.org/download/schleuder-
|
|
149
|
+
Alternatively to the gem-files you can download the latest release as [a tarball](https://schleuder.org/download/schleuder-4.0.0.tar.gz) and [its OpenPGP-signature](https://schleuder.org/download/schleuder-4.0.0.tar.gz.sig).
|
data/Rakefile
CHANGED
|
@@ -7,9 +7,7 @@ require_relative "lib/#{project}.rb"
|
|
|
7
7
|
@filename_gem = "#{@tagname}.gem"
|
|
8
8
|
@filename_tarball = "#{@tagname}.tar.gz"
|
|
9
9
|
|
|
10
|
-
load
|
|
11
|
-
|
|
12
|
-
puts @filename_gem
|
|
10
|
+
load 'active_record/railties/databases.rake'
|
|
13
11
|
|
|
14
12
|
# Configure ActiveRecord
|
|
15
13
|
ActiveRecord::Tasks::DatabaseTasks.tap do |config|
|
|
@@ -21,7 +19,7 @@ ActiveRecord::Tasks::DatabaseTasks.tap do |config|
|
|
|
21
19
|
end
|
|
22
20
|
|
|
23
21
|
# ActiveRecord requires this task to be present
|
|
24
|
-
Rake::Task.define_task(
|
|
22
|
+
Rake::Task.define_task('db:environment')
|
|
25
23
|
|
|
26
24
|
namespace :db do
|
|
27
25
|
# A shortcut.
|
|
@@ -44,7 +42,7 @@ end
|
|
|
44
42
|
task :publish_gem => :website
|
|
45
43
|
task :git_tag => :check_version
|
|
46
44
|
|
|
47
|
-
desc
|
|
45
|
+
desc 'Build new version: git-tag and gem-file'
|
|
48
46
|
task :new_version => [
|
|
49
47
|
:check_version,
|
|
50
48
|
:edit_readme, :edit_changelog,
|
|
@@ -59,12 +57,12 @@ task :new_version => [
|
|
|
59
57
|
] do
|
|
60
58
|
end
|
|
61
59
|
|
|
62
|
-
desc
|
|
60
|
+
desc 'Edit CHANGELOG.md'
|
|
63
61
|
task :edit_changelog do
|
|
64
62
|
edit_and_add_file('CHANGELOG')
|
|
65
63
|
end
|
|
66
64
|
|
|
67
|
-
desc
|
|
65
|
+
desc 'Edit README'
|
|
68
66
|
task :edit_readme do
|
|
69
67
|
edit_and_add_file('README')
|
|
70
68
|
end
|
|
@@ -74,12 +72,12 @@ task :git_tag do
|
|
|
74
72
|
`git tag -u #{@gpguid} -s -m "Version #{@version}" #{@tagname}`
|
|
75
73
|
end
|
|
76
74
|
|
|
77
|
-
desc
|
|
75
|
+
desc 'Add changed version to git-index'
|
|
78
76
|
task :git_add_version do
|
|
79
77
|
`git add lib/#{project}/version.rb`
|
|
80
78
|
end
|
|
81
79
|
|
|
82
|
-
desc
|
|
80
|
+
desc 'Commit changes as new version'
|
|
83
81
|
task :git_commit do
|
|
84
82
|
`git commit -m "Version #{@version}"`
|
|
85
83
|
end
|
|
@@ -91,7 +89,7 @@ end
|
|
|
91
89
|
|
|
92
90
|
desc 'OpenPGP-sign gem and tarball'
|
|
93
91
|
task :sign_tarball do
|
|
94
|
-
`gpg -
|
|
92
|
+
`gpg -u #{@gpguid} -b #{@filename_tarball}`
|
|
95
93
|
end
|
|
96
94
|
|
|
97
95
|
desc 'OpenPGP-sign gem'
|
|
@@ -113,10 +111,10 @@ desc 'Publish gem-file to rubygems.org'
|
|
|
113
111
|
task :publish_gem do
|
|
114
112
|
puts "Really push #{@filename_gem} to rubygems.org? [yN]"
|
|
115
113
|
if $stdin.gets.match(/^y/i)
|
|
116
|
-
puts
|
|
114
|
+
puts 'Pushing...'
|
|
117
115
|
`gem push #{@filename_gem}`
|
|
118
116
|
else
|
|
119
|
-
puts
|
|
117
|
+
puts 'Not pushed.'
|
|
120
118
|
end
|
|
121
119
|
end
|
|
122
120
|
|
|
@@ -127,7 +125,7 @@ end
|
|
|
127
125
|
|
|
128
126
|
desc 'Describe manual release-tasks'
|
|
129
127
|
task :website do
|
|
130
|
-
puts
|
|
128
|
+
puts 'Please remember to publish the release-notes on the website and on schleuder-announce.'
|
|
131
129
|
end
|
|
132
130
|
|
|
133
131
|
desc 'Check if version-tag already exists'
|
|
@@ -135,7 +133,7 @@ task :check_version do
|
|
|
135
133
|
# Check if Schleuder::VERSION has been updated since last release
|
|
136
134
|
if `git tag`.match?(/^#{@tagname}$/)
|
|
137
135
|
$stderr.puts "Warning: Tag '#{@tagname}' already exists. Did you forget to update lib/#{project}/version.rb?"
|
|
138
|
-
$stderr.print
|
|
136
|
+
$stderr.print 'Delete tag to continue? [yN] '
|
|
139
137
|
if $stdin.gets.match(/^y/i)
|
|
140
138
|
`git tag -d #{@tagname}`
|
|
141
139
|
else
|
data/bin/schleuder
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
class AddForwardAllIncomingToAdmins < ActiveRecord::Migration
|
|
1
|
+
class AddForwardAllIncomingToAdmins < ActiveRecord::Migration[4.2]
|
|
2
2
|
def up
|
|
3
3
|
if ! column_exists?(:lists, :forward_all_incoming_to_admins)
|
|
4
4
|
add_column :lists, :forward_all_incoming_to_admins, :boolean, default: false
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
class RenameDeliveryDisabledToDeliveryEnabledAndChangeDefault < ActiveRecord::Migration
|
|
1
|
+
class RenameDeliveryDisabledToDeliveryEnabledAndChangeDefault < ActiveRecord::Migration[4.2]
|
|
2
2
|
def up
|
|
3
3
|
if column_exists?(:subscriptions, :delivery_disabled)
|
|
4
4
|
rename_column :subscriptions, :delivery_disabled, :delivery_enabled
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
class AddSigEncToHeadersToMetaDefaults < ActiveRecord::Migration
|
|
1
|
+
class AddSigEncToHeadersToMetaDefaults < ActiveRecord::Migration[4.2]
|
|
2
2
|
def up
|
|
3
3
|
change_column_default :lists, :headers_to_meta, '["from", "to", "cc", "date", "sig", "enc"]'
|
|
4
4
|
list_klass = create_list_klass
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
class AddSetReplyToToSenderAndMungeFrom < ActiveRecord::Migration
|
|
1
|
+
class AddSetReplyToToSenderAndMungeFrom < ActiveRecord::Migration[4.2]
|
|
2
2
|
def up
|
|
3
3
|
if ! column_exists?(:lists, :set_reply_to_to_sender)
|
|
4
4
|
add_column :lists, :set_reply_to_to_sender, :boolean, default: false
|
data/db/schema.rb
CHANGED
|
@@ -1,66 +1,64 @@
|
|
|
1
|
-
# encoding: UTF-8
|
|
2
1
|
# This file is auto-generated from the current state of the database. Instead
|
|
3
2
|
# of editing this file, please use the migrations feature of Active Record to
|
|
4
3
|
# incrementally modify your database, and then regenerate this schema definition.
|
|
5
4
|
#
|
|
6
|
-
#
|
|
7
|
-
#
|
|
8
|
-
#
|
|
9
|
-
# from scratch.
|
|
10
|
-
#
|
|
5
|
+
# This file is the source Rails uses to define your schema when running `rails
|
|
6
|
+
# db:schema:load`. When creating a new database, `rails db:schema:load` tends to
|
|
7
|
+
# be faster and is potentially less error prone than running all of your
|
|
8
|
+
# migrations from scratch. Old migrations may fail to apply correctly if those
|
|
9
|
+
# migrations use external dependencies or application code.
|
|
11
10
|
#
|
|
12
11
|
# It's strongly recommended that you check this file into your version control system.
|
|
13
12
|
|
|
14
|
-
ActiveRecord::Schema.define(version:
|
|
13
|
+
ActiveRecord::Schema.define(version: 2020_01_18_170110) do
|
|
15
14
|
|
|
16
15
|
create_table "lists", force: :cascade do |t|
|
|
17
16
|
t.datetime "created_at"
|
|
18
17
|
t.datetime "updated_at"
|
|
19
|
-
t.string
|
|
20
|
-
t.string
|
|
21
|
-
t.string
|
|
22
|
-
t.string
|
|
23
|
-
t.string
|
|
24
|
-
t.string
|
|
25
|
-
t.string
|
|
26
|
-
t.text
|
|
27
|
-
t.text
|
|
28
|
-
t.text
|
|
29
|
-
t.text
|
|
30
|
-
t.text
|
|
31
|
-
t.boolean
|
|
32
|
-
t.boolean
|
|
33
|
-
t.boolean
|
|
34
|
-
t.boolean
|
|
35
|
-
t.boolean
|
|
36
|
-
t.boolean
|
|
37
|
-
t.boolean
|
|
38
|
-
t.boolean
|
|
39
|
-
t.boolean
|
|
40
|
-
t.boolean
|
|
41
|
-
t.boolean
|
|
42
|
-
t.
|
|
43
|
-
t.
|
|
44
|
-
t.
|
|
45
|
-
t.
|
|
46
|
-
t.
|
|
47
|
-
t.
|
|
48
|
-
t.boolean
|
|
49
|
-
t.boolean
|
|
50
|
-
t.boolean
|
|
18
|
+
t.string "email", limit: 255
|
|
19
|
+
t.string "fingerprint", limit: 255
|
|
20
|
+
t.string "log_level", limit: 255, default: "warn"
|
|
21
|
+
t.string "subject_prefix", limit: 255, default: ""
|
|
22
|
+
t.string "subject_prefix_in", limit: 255, default: ""
|
|
23
|
+
t.string "subject_prefix_out", limit: 255, default: ""
|
|
24
|
+
t.string "openpgp_header_preference", limit: 255, default: "signencrypt"
|
|
25
|
+
t.text "public_footer", default: ""
|
|
26
|
+
t.text "headers_to_meta", default: "[\"from\", \"to\", \"cc\", \"date\", \"sig\", \"enc\"]"
|
|
27
|
+
t.text "bounces_drop_on_headers", default: "{\"x-spam-flag\":\"yes\"}"
|
|
28
|
+
t.text "keywords_admin_only", default: "[\"subscribe\", \"unsubscribe\", \"delete-key\"]"
|
|
29
|
+
t.text "keywords_admin_notify", default: "[\"add-key\"]"
|
|
30
|
+
t.boolean "send_encrypted_only", default: true
|
|
31
|
+
t.boolean "receive_encrypted_only", default: false
|
|
32
|
+
t.boolean "receive_signed_only", default: false
|
|
33
|
+
t.boolean "receive_authenticated_only", default: false
|
|
34
|
+
t.boolean "receive_from_subscribed_emailaddresses_only", default: false
|
|
35
|
+
t.boolean "receive_admin_only", default: false
|
|
36
|
+
t.boolean "keep_msgid", default: true
|
|
37
|
+
t.boolean "bounces_drop_all", default: false
|
|
38
|
+
t.boolean "bounces_notify_admins", default: true
|
|
39
|
+
t.boolean "include_list_headers", default: true
|
|
40
|
+
t.boolean "include_openpgp_header", default: true
|
|
41
|
+
t.integer "max_message_size_kb", default: 10240
|
|
42
|
+
t.string "language", limit: 255, default: "en"
|
|
43
|
+
t.boolean "forward_all_incoming_to_admins", default: false
|
|
44
|
+
t.integer "logfiles_to_keep", default: 2
|
|
45
|
+
t.text "internal_footer", default: ""
|
|
46
|
+
t.boolean "deliver_selfsent", default: true
|
|
47
|
+
t.boolean "include_autocrypt_header", default: true
|
|
48
|
+
t.boolean "set_reply_to_to_sender", default: false
|
|
49
|
+
t.boolean "munge_from", default: false
|
|
51
50
|
end
|
|
52
51
|
|
|
53
52
|
create_table "subscriptions", force: :cascade do |t|
|
|
54
|
-
t.integer
|
|
55
|
-
t.string
|
|
56
|
-
t.string
|
|
57
|
-
t.boolean
|
|
58
|
-
t.boolean
|
|
53
|
+
t.integer "list_id"
|
|
54
|
+
t.string "email", limit: 255
|
|
55
|
+
t.string "fingerprint", limit: 255
|
|
56
|
+
t.boolean "admin", default: false
|
|
57
|
+
t.boolean "delivery_enabled", default: true
|
|
59
58
|
t.datetime "created_at"
|
|
60
59
|
t.datetime "updated_at"
|
|
60
|
+
t.index ["email", "list_id"], name: "index_subscriptions_on_email_and_list_id", unique: true
|
|
61
|
+
t.index ["list_id"], name: "index_subscriptions_on_list_id"
|
|
61
62
|
end
|
|
62
63
|
|
|
63
|
-
add_index "subscriptions", ["email", "list_id"], name: "index_subscriptions_on_email_and_list_id", unique: true
|
|
64
|
-
add_index "subscriptions", ["list_id"], name: "index_subscriptions_on_list_id"
|
|
65
|
-
|
|
66
64
|
end
|
|
@@ -15,7 +15,7 @@
|
|
|
15
15
|
# it is not recommended to use this table for more powerful
|
|
16
16
|
# configuration options (e.g. transport_maps) because it could give
|
|
17
17
|
# the schleuder user (which can write the given sqlite database) the
|
|
18
|
-
# power to change settings for
|
|
18
|
+
# power to change settings for other mail handled by this Postfix
|
|
19
19
|
# instance.
|
|
20
20
|
|
|
21
21
|
dbpath = /var/lib/schleuder/db.sqlite
|
data/etc/schleuder.yml
CHANGED
|
@@ -4,8 +4,8 @@ lists_dir: /var/lib/schleuder/lists
|
|
|
4
4
|
# Where to write list-logs. The actual log-file will be <lists_logs_base_dir>/<hostname>/<listname>/list.log.
|
|
5
5
|
listlogs_dir: /var/lib/schleuder/lists
|
|
6
6
|
|
|
7
|
-
# Schleuder
|
|
8
|
-
|
|
7
|
+
# Schleuder looks for additional, custom keyword-handlers in this directory.
|
|
8
|
+
keyword_handlers_dir: /usr/local/lib/schleuder/keyword_handlers
|
|
9
9
|
|
|
10
10
|
# Schleuder reads filters also from this directory path,
|
|
11
11
|
# in the specific pre_decryption or post_decryption subdirectory.
|
|
@@ -22,7 +22,7 @@ filters_dir: /usr/local/lib/schleuder/filters
|
|
|
22
22
|
log_level: warn
|
|
23
23
|
|
|
24
24
|
# Which keyserver to refresh keys from (used by `schleuder refresh_keys`, meant
|
|
25
|
-
# to be run from cron weekly).
|
|
25
|
+
# to be run from cron or systemd weekly).
|
|
26
26
|
# If you have gnupg 2.1, we strongly suggest to use a hkps-keyserver:
|
|
27
27
|
#keyserver: hkps://hkps.pool.sks-keyservers.net
|
|
28
28
|
# If you have gnupg 2.1 and TOR running locally, use a onion-keyserver:
|
|
@@ -23,7 +23,7 @@ module SchleuderApiDaemonHelper
|
|
|
23
23
|
if params[:list_id].present?
|
|
24
24
|
id_or_email = params[:list_id]
|
|
25
25
|
else
|
|
26
|
-
client_error
|
|
26
|
+
client_error 'Parameter list_id is required'
|
|
27
27
|
end
|
|
28
28
|
end
|
|
29
29
|
if is_an_integer?(id_or_email)
|
|
@@ -41,7 +41,7 @@ module SchleuderApiDaemonHelper
|
|
|
41
41
|
else
|
|
42
42
|
# Email
|
|
43
43
|
if params[:list_id].blank?
|
|
44
|
-
client_error
|
|
44
|
+
client_error 'Parameter list_id is required when using email as identifier for subscriptions.'
|
|
45
45
|
else
|
|
46
46
|
sub = list.subscriptions.where(email: id_or_email).first
|
|
47
47
|
end
|
|
@@ -103,7 +103,7 @@ module SchleuderApiDaemonHelper
|
|
|
103
103
|
expiry: key.expires,
|
|
104
104
|
generated_at: key.generated_at,
|
|
105
105
|
primary_uid: key.primary_uid.uid,
|
|
106
|
-
|
|
106
|
+
summary: key.summary,
|
|
107
107
|
trust_issues: key.usability_issue
|
|
108
108
|
}
|
|
109
109
|
if include_keydata
|