carterdte_smtp_filter 0.0.4 → 0.0.5
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +46 -1
- data/lib/carterdte_smtp_filter/api_client.rb +1 -2
- data/lib/carterdte_smtp_filter/version.rb +1 -1
- data/test/fake_api.rb +1 -1
- data/test/fixtures/config.yml +2 -3
- data/test/test_api_client.rb +7 -7
- data/test/test_config.rb +1 -1
- data/test/test_spool_manager.rb +2 -2
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 15763b5bf2fc025f796cedede2b41f276e0946b7
|
4
|
+
data.tar.gz: 87f49d7fb60cb7e8d631ad3e8df40c64234eabe6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4392e86bf4752fb742ebe09b01927b3d2fac5b55d304d389d86798ea771afe79d15f469dd08220bada18a234820b4cbb03dc0f660e5592b4910aafd11ced61ef
|
7
|
+
data.tar.gz: 81dd3a6567fdd151cf49ba839ed3167aea291c4adbe31b259318276b71a34915df7861fb2d4b96747190eddedddd2f0ac203a3f6426e25ad77eab82ae7ec56d0
|
data/README.md
CHANGED
@@ -28,11 +28,56 @@ elasticsearch_host: 127.0.0.1
|
|
28
28
|
elasticsearch_port: 9200
|
29
29
|
api_user: pbruna@example.com
|
30
30
|
api_password: 123456
|
31
|
-
|
31
|
+
api_url: "http://api.dte.zboxapp.com/dte_messages"
|
32
32
|
log_file: "./test/tmp/carterdte_smtp_filter.log"
|
33
33
|
stand_alone: ""
|
34
34
|
```
|
35
35
|
|
36
|
+
## Postifx Configuration
|
37
|
+
|
38
|
+
```
|
39
|
+
# master.cf
|
40
|
+
[0.0.0.0]:30025 inet n - n - - smtpd
|
41
|
+
-o content_filter=
|
42
|
+
-o local_recipient_maps=
|
43
|
+
-o virtual_mailbox_maps=
|
44
|
+
-o virtual_alias_maps=
|
45
|
+
-o relay_recipient_maps=
|
46
|
+
-o smtpd_restriction_classes=
|
47
|
+
-o smtpd_delay_reject=no
|
48
|
+
-o smtpd_client_restrictions=permit_mynetworks,reject
|
49
|
+
-o smtpd_data_restrictions=
|
50
|
+
-o smtpd_end_of_data_restrictions=
|
51
|
+
-o smtpd_helo_restrictions=
|
52
|
+
-o smtpd_milters=
|
53
|
+
-o smtpd_sender_restrictions=
|
54
|
+
-o smtpd_reject_unlisted_sender=no
|
55
|
+
-o smtpd_relay_restrictions=
|
56
|
+
-o smtpd_recipient_restrictions=permit_mynetworks,reject
|
57
|
+
-o mynetworks_style=host
|
58
|
+
-o mynetworks=127.0.0.0/8,[::1]/128
|
59
|
+
-o strict_rfc821_envelopes=yes
|
60
|
+
-o smtpd_error_sleep_time=0
|
61
|
+
-o smtpd_soft_error_limit=1001
|
62
|
+
-o smtpd_hard_error_limit=1000
|
63
|
+
-o smtpd_client_connection_count_limit=0
|
64
|
+
-o smtpd_client_connection_rate_limit=0
|
65
|
+
-o receive_override_options=no_header_body_checks,no_unknown_recipient_checks,no_address_mappings
|
66
|
+
-o local_header_rewrite_clients=
|
67
|
+
-o syslog_name=postfix/carterdte
|
68
|
+
smtp-carterdte unix - - n - 10 smtp
|
69
|
+
-o smtp_data_done_timeout=1200
|
70
|
+
-o smtp_send_xforward_command=yes
|
71
|
+
-o disable_dns_lookups=yes
|
72
|
+
-o max_use=20
|
73
|
+
```
|
74
|
+
|
75
|
+
```
|
76
|
+
# main.cf
|
77
|
+
content_filter = smtp-carterdte:[127.0.0.1]:30024
|
78
|
+
```
|
79
|
+
|
80
|
+
|
36
81
|
## Contributing
|
37
82
|
|
38
83
|
1. Fork it ( https://github.com/[my-github-username]/carterdte_smtp_filter/fork )
|
@@ -45,8 +45,7 @@ module CarterdteSmtpFilter
|
|
45
45
|
end
|
46
46
|
|
47
47
|
def post(opts = {})
|
48
|
-
|
49
|
-
url = opts[:url] || "#{protocol}://#{CarterdteSmtpFilter::Config::api_host}/messages"
|
48
|
+
url = opts[:url] || CarterdteSmtpFilter::Config::api_url
|
50
49
|
payload = opts[:payload] || {}
|
51
50
|
begin
|
52
51
|
resource = RestClient::Resource.new url, api_user, api_password
|
data/test/fake_api.rb
CHANGED
data/test/fixtures/config.yml
CHANGED
@@ -9,7 +9,6 @@ elasticsearch_host: 127.0.0.1
|
|
9
9
|
elasticsearch_port: 9200
|
10
10
|
api_user: pbruna@example.com
|
11
11
|
api_password: 123456
|
12
|
-
|
12
|
+
api_url: "http://api.dte.zboxapp.com/dte_messages"
|
13
13
|
log_file: "./test/tmp/carterdte_smtp_filter.log"
|
14
|
-
spool_directory: "./test/tmp/spool"
|
15
|
-
use_https: true
|
14
|
+
spool_directory: "./test/tmp/spool"
|
data/test/test_api_client.rb
CHANGED
@@ -5,9 +5,9 @@ class TestApiClient < Minitest::Test
|
|
5
5
|
|
6
6
|
def setup
|
7
7
|
CarterdteSmtpFilter::Config.parse("./test/fixtures/config.yml")
|
8
|
-
@api_host =
|
9
|
-
@api_url =
|
10
|
-
stub_request(:any,
|
8
|
+
@api_host = "api.dte.zboxapp.com"
|
9
|
+
@api_url = CarterdteSmtpFilter::Config::api_url
|
10
|
+
stub_request(:any, /api.dte.zboxapp.com/).to_rack(FakeApi)
|
11
11
|
end
|
12
12
|
|
13
13
|
def test_push_should_return_false_if_message_is_not_json
|
@@ -22,12 +22,12 @@ class TestApiClient < Minitest::Test
|
|
22
22
|
end
|
23
23
|
|
24
24
|
def test_post_should_workout_unauthorized
|
25
|
-
response = CarterdteSmtpFilter::ApiClient.new.post({url: "
|
25
|
+
response = CarterdteSmtpFilter::ApiClient.new.post({url: "http://#{@api_host}/api/v1/denied" })
|
26
26
|
assert(!response, "Failure message.")
|
27
27
|
end
|
28
28
|
|
29
29
|
def test_post_should_workout_application_error
|
30
|
-
response = CarterdteSmtpFilter::ApiClient.new.post({url: "
|
30
|
+
response = CarterdteSmtpFilter::ApiClient.new.post({url: "http://#{@api_host}/api/v1/app_error" })
|
31
31
|
assert(!response, "Failure message.")
|
32
32
|
end
|
33
33
|
|
@@ -41,7 +41,7 @@ class TestApiClient < Minitest::Test
|
|
41
41
|
end
|
42
42
|
|
43
43
|
def test_post_duplicated_message_should_return_true
|
44
|
-
response = CarterdteSmtpFilter::ApiClient.new.post({url: "
|
44
|
+
response = CarterdteSmtpFilter::ApiClient.new.post({url: "http://#{@api_host}/messages/uniq" })
|
45
45
|
assert(response, "Failure message.")
|
46
46
|
end
|
47
47
|
|
@@ -49,7 +49,7 @@ class TestApiClient < Minitest::Test
|
|
49
49
|
CarterdteSmtpFilter::Spool.directory_setup
|
50
50
|
raw_mail = File.open("./test/fixtures/mail_with_dte.eml", "rb").read
|
51
51
|
message = CarterdteSmtpFilter::Message.new raw_mail
|
52
|
-
CarterdteSmtpFilter::ApiClient.new.push(message, "
|
52
|
+
CarterdteSmtpFilter::ApiClient.new.push(message, "http://#{@api_host}/api/v1/app_error")
|
53
53
|
assert(File.file?("#{message.queue_file}"), "Failure message.")
|
54
54
|
end
|
55
55
|
|
data/test/test_config.rb
CHANGED
@@ -20,7 +20,7 @@ class TestConfig < Minitest::Test
|
|
20
20
|
assert_equal(@config["return_port"], CarterdteSmtpFilter::Config::return_port)
|
21
21
|
assert_equal(@config["api_user"], CarterdteSmtpFilter::Config::api_user)
|
22
22
|
assert_equal(@config["api_password"], CarterdteSmtpFilter::Config::api_password)
|
23
|
-
assert_equal(@config["
|
23
|
+
assert_equal(@config["api_url"], CarterdteSmtpFilter::Config::api_url)
|
24
24
|
assert_equal(@config["log_file"], CarterdteSmtpFilter::Config::log_file)
|
25
25
|
end
|
26
26
|
|
data/test/test_spool_manager.rb
CHANGED
@@ -4,8 +4,8 @@ class TestSpoolManager < Minitest::Test
|
|
4
4
|
require 'sucker_punch/testing/inline'
|
5
5
|
|
6
6
|
def setup
|
7
|
-
@api_host =
|
8
|
-
@api_url =
|
7
|
+
@api_host = "api.dte.zboxapp.com"
|
8
|
+
@api_url = CarterdteSmtpFilter::Config::api_url
|
9
9
|
stub_request(:any, /#{@api_host}/).to_rack(FakeApi)
|
10
10
|
CarterdteSmtpFilter::Config.parse("./test/fixtures/config.yml")
|
11
11
|
CarterdteSmtpFilter::Spool.directory_setup
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: carterdte_smtp_filter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.5
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Patricio Bruna
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-
|
11
|
+
date: 2015-06-02 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: mail
|