Haraka 3.1.1 → 3.1.2
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.
- package/.prettierignore +4 -0
- package/CONTRIBUTORS.md +5 -5
- package/Changes.md +62 -50
- package/Plugins.md +3 -1
- package/README.md +1 -1
- package/bin/haraka +475 -479
- package/config/outbound.ini +3 -0
- package/connection.js +1072 -1108
- package/docs/Connection.md +29 -30
- package/docs/CoreConfig.md +38 -39
- package/docs/CustomReturnCodes.md +0 -1
- package/docs/HAProxy.md +2 -2
- package/docs/Header.md +1 -1
- package/docs/Logging.md +29 -5
- package/docs/Outbound.md +93 -78
- package/docs/Plugins.md +103 -108
- package/docs/Transaction.md +49 -51
- package/docs/Tutorial.md +127 -143
- package/docs/deprecated/access.md +0 -1
- package/docs/deprecated/backscatterer.md +2 -3
- package/docs/deprecated/connect.rdns_access.md +18 -27
- package/docs/deprecated/data.headers.md +0 -1
- package/docs/deprecated/data.nomsgid.md +1 -2
- package/docs/deprecated/data.noreceived.md +1 -2
- package/docs/deprecated/data.rfc5322_header_checks.md +1 -2
- package/docs/deprecated/dkim_sign.md +13 -17
- package/docs/deprecated/dkim_verify.md +9 -17
- package/docs/deprecated/dnsbl.md +36 -38
- package/docs/deprecated/dnswl.md +41 -43
- package/docs/deprecated/lookup_rdns.strict.md +21 -34
- package/docs/deprecated/mail_from.access.md +17 -25
- package/docs/deprecated/mail_from.blocklist.md +9 -12
- package/docs/deprecated/mail_from.nobounces.md +1 -2
- package/docs/deprecated/rcpt_to.access.md +20 -27
- package/docs/deprecated/rcpt_to.blocklist.md +10 -13
- package/docs/deprecated/rcpt_to.routes.md +0 -1
- package/docs/deprecated/rdns.regexp.md +13 -15
- package/docs/plugins/aliases.md +89 -89
- package/docs/plugins/auth/auth_bridge.md +5 -7
- package/docs/plugins/auth/auth_ldap.md +11 -14
- package/docs/plugins/auth/auth_proxy.md +10 -12
- package/docs/plugins/auth/auth_vpopmaild.md +5 -6
- package/docs/plugins/auth/flat_file.md +4 -4
- package/docs/plugins/block_me.md +3 -3
- package/docs/plugins/data.signatures.md +1 -2
- package/docs/plugins/delay_deny.md +3 -4
- package/docs/plugins/max_unrecognized_commands.md +4 -4
- package/docs/plugins/prevent_credential_leaks.md +6 -6
- package/docs/plugins/process_title.md +18 -18
- package/docs/plugins/queue/deliver.md +2 -3
- package/docs/plugins/queue/discard.md +4 -4
- package/docs/plugins/queue/lmtp.md +1 -3
- package/docs/plugins/queue/qmail-queue.md +7 -9
- package/docs/plugins/queue/quarantine.md +16 -21
- package/docs/plugins/queue/rabbitmq.md +8 -11
- package/docs/plugins/queue/rabbitmq_amqplib.md +43 -39
- package/docs/plugins/queue/smtp_bridge.md +7 -10
- package/docs/plugins/queue/smtp_forward.md +42 -34
- package/docs/plugins/queue/smtp_proxy.md +30 -29
- package/docs/plugins/queue/test.md +1 -3
- package/docs/plugins/rcpt_to.in_host_list.md +6 -6
- package/docs/plugins/rcpt_to.max_count.md +1 -1
- package/docs/plugins/record_envelope_addresses.md +3 -3
- package/docs/plugins/reseed_rng.md +6 -6
- package/docs/plugins/status.md +9 -8
- package/docs/plugins/tarpit.md +7 -11
- package/docs/plugins/tls.md +12 -17
- package/docs/plugins/toobusy.md +4 -4
- package/docs/plugins/xclient.md +3 -3
- package/docs/tutorials/Migrating_from_v1_to_v2.md +19 -41
- package/docs/tutorials/SettingUpOutbound.md +6 -9
- package/endpoint.js +35 -38
- package/eslint.config.mjs +22 -19
- package/haraka.js +42 -47
- package/host_pool.js +75 -79
- package/http/html/404.html +45 -49
- package/http/html/index.html +39 -28
- package/http/package.json +2 -4
- package/line_socket.js +27 -28
- package/logger.js +182 -201
- package/outbound/client_pool.js +33 -33
- package/outbound/config.js +64 -59
- package/outbound/fsync_writestream.js +24 -25
- package/outbound/hmail.js +888 -835
- package/outbound/index.js +194 -187
- package/outbound/qfile.js +49 -52
- package/outbound/queue.js +197 -190
- package/outbound/timer_queue.js +41 -43
- package/outbound/tls.js +68 -61
- package/outbound/todo.js +11 -11
- package/package.json +32 -32
- package/plugins/.eslintrc.yaml +0 -1
- package/plugins/auth/auth_base.js +123 -127
- package/plugins/auth/auth_bridge.js +7 -7
- package/plugins/auth/auth_proxy.js +121 -126
- package/plugins/auth/auth_vpopmaild.js +84 -85
- package/plugins/auth/flat_file.js +18 -17
- package/plugins/block_me.js +31 -31
- package/plugins/data.signatures.js +13 -13
- package/plugins/delay_deny.js +65 -61
- package/plugins/prevent_credential_leaks.js +23 -23
- package/plugins/process_title.js +125 -128
- package/plugins/profile.js +5 -5
- package/plugins/queue/deliver.js +3 -3
- package/plugins/queue/discard.js +13 -14
- package/plugins/queue/lmtp.js +16 -17
- package/plugins/queue/qmail-queue.js +54 -55
- package/plugins/queue/quarantine.js +68 -70
- package/plugins/queue/rabbitmq.js +80 -87
- package/plugins/queue/rabbitmq_amqplib.js +75 -54
- package/plugins/queue/smtp_bridge.js +16 -16
- package/plugins/queue/smtp_forward.js +175 -179
- package/plugins/queue/smtp_proxy.js +69 -71
- package/plugins/queue/test.js +9 -9
- package/plugins/rcpt_to.host_list_base.js +30 -34
- package/plugins/rcpt_to.in_host_list.js +19 -19
- package/plugins/record_envelope_addresses.js +4 -4
- package/plugins/reseed_rng.js +4 -4
- package/plugins/status.js +90 -97
- package/plugins/tarpit.js +25 -14
- package/plugins/tls.js +68 -68
- package/plugins/toobusy.js +21 -23
- package/plugins/xclient.js +51 -53
- package/plugins.js +276 -293
- package/rfc1869.js +30 -35
- package/server.js +308 -299
- package/smtp_client.js +244 -228
- package/test/.eslintrc.yaml +0 -1
- package/test/connection.js +127 -134
- package/test/endpoint.js +53 -47
- package/test/fixtures/line_socket.js +12 -12
- package/test/fixtures/util_hmailitem.js +89 -85
- package/test/host_pool.js +90 -92
- package/test/installation/plugins/base_plugin.js +2 -2
- package/test/installation/plugins/folder_plugin/index.js +2 -3
- package/test/installation/plugins/inherits.js +3 -3
- package/test/installation/plugins/load_first.js +2 -3
- package/test/installation/plugins/plugin.js +1 -3
- package/test/installation/plugins/tls.js +2 -4
- package/test/logger.js +135 -116
- package/test/outbound/hmail.js +49 -35
- package/test/outbound/index.js +118 -101
- package/test/outbound/qfile.js +51 -53
- package/test/outbound_bounce_net_errors.js +84 -69
- package/test/outbound_bounce_rfc3464.js +235 -165
- package/test/plugins/auth/auth_base.js +420 -279
- package/test/plugins/auth/auth_vpopmaild.js +38 -39
- package/test/plugins/queue/smtp_forward.js +126 -104
- package/test/plugins/rcpt_to.host_list_base.js +85 -67
- package/test/plugins/rcpt_to.in_host_list.js +159 -112
- package/test/plugins/status.js +71 -64
- package/test/plugins/tls.js +37 -34
- package/test/plugins.js +97 -92
- package/test/rfc1869.js +19 -26
- package/test/server.js +293 -272
- package/test/smtp_client.js +180 -176
- package/test/tls_socket.js +62 -66
- package/test/transaction.js +159 -160
- package/tls_socket.js +331 -333
- package/transaction.js +129 -137
package/.prettierignore
ADDED
package/CONTRIBUTORS.md
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
# Contributors
|
|
2
2
|
|
|
3
|
-
This handcrafted
|
|
3
|
+
This handcrafted artisanal software is brought to you by:
|
|
4
4
|
|
|
5
|
-
| <img height="80" src="https://avatars.githubusercontent.com/u/261635?v=4"><br><a href="https://github.com/msimerson">msimerson</a> (<a href="https://github.com/haraka/Haraka/commits?author=msimerson">
|
|
5
|
+
| <img height="80" src="https://avatars.githubusercontent.com/u/261635?v=4"><br><a href="https://github.com/msimerson">msimerson</a> (<a href="https://github.com/haraka/Haraka/commits?author=msimerson">1643</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/662371?v=4"><br><a href="https://github.com/baudehlo">baudehlo</a> (<a href="https://github.com/haraka/Haraka/commits?author=baudehlo">969</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/550490?v=4"><br><a href="https://github.com/smfreegard">smfreegard</a> (<a href="https://github.com/haraka/Haraka/commits?author=smfreegard">794</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/959600?v=4"><br><a href="https://github.com/godsflaw">godsflaw</a> (<a href="https://github.com/haraka/Haraka/commits?author=godsflaw">171</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/934254?v=4"><br><a href="https://github.com/analogic">analogic</a> (<a href="https://github.com/haraka/Haraka/commits?author=analogic">42</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/1674289?v=4"><br><a href="https://github.com/Dexus">Dexus</a> (<a href="https://github.com/haraka/Haraka/commits?author=Dexus">42</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/82041?v=4"><br><a href="https://github.com/gramakri">gramakri</a> (<a href="https://github.com/haraka/Haraka/commits?author=gramakri">40</a>)|
|
|
6
6
|
| :---: | :---: | :---: | :---: | :---: | :---: | :---: |
|
|
7
|
-
| <img height="80" src="https://avatars.githubusercontent.com/u/203240?v=4"><br><a href="https://github.com/lnedry">lnedry</a> (<a href="https://github.com/haraka/Haraka/commits?author=lnedry">26</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/748075?v=4"><br><a href="https://github.com/celesteking">celesteking</a> (<a href="https://github.com/haraka/Haraka/commits?author=celesteking">21</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/791972?v=4"><br><a href="https://github.com/lpatters">lpatters</a> (<a href="https://github.com/haraka/Haraka/commits?author=lpatters">20</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/366268?v=4"><br><a href="https://github.com/chazomaticus">chazomaticus</a> (<a href="https://github.com/haraka/Haraka/commits?author=chazomaticus">19</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/
|
|
8
|
-
| <img height="80" src="https://avatars.githubusercontent.com/u/260607?v=4"><br><a href="https://github.com/typingArtist">typingArtist</a> (<a href="https://github.com/haraka/Haraka/commits?author=typingArtist">14</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/11343494?v=4"><br><a href="https://github.com/superman20">superman20</a> (<a href="https://github.com/haraka/Haraka/commits?author=superman20">13</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/158380?v=4"><br><a href="https://github.com/darkpixel">darkpixel</a> (<a href="https://github.com/haraka/Haraka/commits?author=darkpixel">12</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/9887966?v=4"><br><a href="https://github.com/KingNoosh">KingNoosh</a> (<a href="https://github.com/haraka/Haraka/commits?author=KingNoosh">11</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/5229495?v=4"><br><a href="https://github.com/tstonis">tstonis</a> (<a href="https://github.com/haraka/Haraka/commits?author=tstonis">10</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/1746394?v=4"><br><a href="https://github.com/wltsmrz">wltsmrz</a> (<a href="https://github.com/haraka/Haraka/commits?author=wltsmrz">9</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/
|
|
9
|
-
| <img height="80" src="https://avatars.githubusercontent.com/u/
|
|
7
|
+
| <img height="80" src="https://avatars.githubusercontent.com/u/203240?v=4"><br><a href="https://github.com/lnedry">lnedry</a> (<a href="https://github.com/haraka/Haraka/commits?author=lnedry">26</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/748075?v=4"><br><a href="https://github.com/celesteking">celesteking</a> (<a href="https://github.com/haraka/Haraka/commits?author=celesteking">21</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/791972?v=4"><br><a href="https://github.com/lpatters">lpatters</a> (<a href="https://github.com/haraka/Haraka/commits?author=lpatters">20</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/366268?v=4"><br><a href="https://github.com/chazomaticus">chazomaticus</a> (<a href="https://github.com/haraka/Haraka/commits?author=chazomaticus">19</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/123708?v=4"><br><a href="https://github.com/arlolra">arlolra</a> (<a href="https://github.com/haraka/Haraka/commits?author=arlolra">16</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/271024?v=4"><br><a href="https://github.com/hayesgm">hayesgm</a> (<a href="https://github.com/haraka/Haraka/commits?author=hayesgm">16</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/1573133?v=4"><br><a href="https://github.com/gauravaror">gauravaror</a> (<a href="https://github.com/haraka/Haraka/commits?author=gauravaror">14</a>)|
|
|
8
|
+
| <img height="80" src="https://avatars.githubusercontent.com/u/260607?v=4"><br><a href="https://github.com/typingArtist">typingArtist</a> (<a href="https://github.com/haraka/Haraka/commits?author=typingArtist">14</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/11343494?v=4"><br><a href="https://github.com/superman20">superman20</a> (<a href="https://github.com/haraka/Haraka/commits?author=superman20">13</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/158380?v=4"><br><a href="https://github.com/darkpixel">darkpixel</a> (<a href="https://github.com/haraka/Haraka/commits?author=darkpixel">12</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/9887966?v=4"><br><a href="https://github.com/KingNoosh">KingNoosh</a> (<a href="https://github.com/haraka/Haraka/commits?author=KingNoosh">11</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/5229495?v=4"><br><a href="https://github.com/tstonis">tstonis</a> (<a href="https://github.com/haraka/Haraka/commits?author=tstonis">10</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/1746394?v=4"><br><a href="https://github.com/wltsmrz">wltsmrz</a> (<a href="https://github.com/haraka/Haraka/commits?author=wltsmrz">9</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/218741413?v=4"><br><a href="https://github.com/SamuelGrave">SamuelGrave</a> (<a href="https://github.com/haraka/Haraka/commits?author=SamuelGrave">9</a>)|
|
|
9
|
+
| <img height="80" src="https://avatars.githubusercontent.com/u/2176651?v=4"><br><a href="https://github.com/fatalbanana">fatalbanana</a> (<a href="https://github.com/haraka/Haraka/commits?author=fatalbanana">9</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/231081?v=4"><br><a href="https://github.com/EyePulp">EyePulp</a> (<a href="https://github.com/haraka/Haraka/commits?author=EyePulp">8</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/81561?v=4"><br><a href="https://github.com/Synchro">Synchro</a> (<a href="https://github.com/haraka/Haraka/commits?author=Synchro">8</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/3957811?v=4"><br><a href="https://github.com/gene-hightower">gene-hightower</a> (<a href="https://github.com/haraka/Haraka/commits?author=gene-hightower">7</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/8224508?v=4"><br><a href="https://github.com/DarkSorrow">DarkSorrow</a> (<a href="https://github.com/haraka/Haraka/commits?author=DarkSorrow">6</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/103802?v=4"><br><a href="https://github.com/joshuathayer">joshuathayer</a> (<a href="https://github.com/haraka/Haraka/commits?author=joshuathayer">6</a>)| <img height="80" src="https://avatars.githubusercontent.com/u/298453?v=4"><br><a href="https://github.com/zllovesuki">zllovesuki</a> (<a href="https://github.com/haraka/Haraka/commits?author=zllovesuki">5</a>)|
|
|
10
10
|
|
|
11
11
|
<sub>this file is generated by [.release](https://github.com/msimerson/.release).
|
|
12
12
|
Contribute to this project to get your GitHub profile included here.</sub>
|
package/Changes.md
CHANGED
|
@@ -4,6 +4,25 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/).
|
|
|
4
4
|
|
|
5
5
|
### Unreleased
|
|
6
6
|
|
|
7
|
+
### [3.1.2] - 2026-01-02
|
|
8
|
+
|
|
9
|
+
- smtp_forward: [domain selector] : user + domain #3501
|
|
10
|
+
- rspamd: revert to older plugin version #3493
|
|
11
|
+
- feat: push to a 'release' branch with package-lock.json #3474
|
|
12
|
+
- change: finish renaming dot_stuffing to dot_stuffed #3473
|
|
13
|
+
- deps: require node 20+
|
|
14
|
+
- deps: bump all deps to latest
|
|
15
|
+
- deps: bump message-stream to 1.3.0, add some missing ^ chars
|
|
16
|
+
- dep(tmp): deleted, only used in attachment plugin
|
|
17
|
+
- feat(outbound): configurable outbound IPv4/IPv6 preference using `inet_prefer`
|
|
18
|
+
- feat(outbound): deferred hook is now passed the failed recips and mx #3505
|
|
19
|
+
- feat(rabbitmq_amqplib): configurable optional exchange arguments #3472
|
|
20
|
+
- feat(rabbitmq_amqplib): configurable message priority #3472
|
|
21
|
+
- fix: auth_proxy TLS upgrade works again #3514
|
|
22
|
+
- doc(Plugins): add save-sent #3497
|
|
23
|
+
- doc(README): update DKIM plugin link, #3490
|
|
24
|
+
- style: run prettier in repo #3504
|
|
25
|
+
|
|
7
26
|
### [3.1.1] - 2025-05-19
|
|
8
27
|
|
|
9
28
|
- Fix: install connection.ini with base configuration on install #3458
|
|
@@ -17,23 +36,23 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/).
|
|
|
17
36
|
|
|
18
37
|
`connection.ini` replaces the following config files:
|
|
19
38
|
|
|
20
|
-
| old file
|
|
21
|
-
|
|
|
22
|
-
| haproxy_hosts
|
|
23
|
-
| smtpgreeting
|
|
24
|
-
| ehlo_hello_message
|
|
25
|
-
| connection_close_message | [message] close
|
|
26
|
-
| banner_includes_uuid
|
|
27
|
-
| deny_includes_uuid
|
|
28
|
-
| databytes
|
|
29
|
-
| max_mime_parts
|
|
30
|
-
| max_line_length
|
|
31
|
-
| max_data_line_length
|
|
32
|
-
|
|
33
|
-
AND
|
|
39
|
+
| old file | connection.ini setting |
|
|
40
|
+
| ------------------------ | ---------------------- |
|
|
41
|
+
| haproxy_hosts | [haproxy] hosts |
|
|
42
|
+
| smtpgreeting | [message] greeting |
|
|
43
|
+
| ehlo_hello_message | [message] helo |
|
|
44
|
+
| connection_close_message | [message] close |
|
|
45
|
+
| banner_includes_uuid | [uuid] banner_chars |
|
|
46
|
+
| deny_includes_uuid | [uuid] deny_chars |
|
|
47
|
+
| databytes | [max] bytes |
|
|
48
|
+
| max_mime_parts | [max] mime_parts |
|
|
49
|
+
| max_line_length | [max] line_length |
|
|
50
|
+
| max_data_line_length | [max] data_line_length |
|
|
51
|
+
|
|
52
|
+
AND
|
|
34
53
|
|
|
35
54
|
- moves the following settings from smtp.ini to connection.ini:
|
|
36
|
-
- headers
|
|
55
|
+
- headers.\*
|
|
37
56
|
- main.smtp_utf8
|
|
38
57
|
- main.strict_rfc1869
|
|
39
58
|
- early_talker.pause, removed support, use earlytalker.ini
|
|
@@ -89,7 +108,6 @@ config files.
|
|
|
89
108
|
- plugin-elastisearch: 8.0.3
|
|
90
109
|
- test-fixtures: 1.3.8
|
|
91
110
|
|
|
92
|
-
|
|
93
111
|
### [3.0.4] - 2024-08-21
|
|
94
112
|
|
|
95
113
|
#### Added
|
|
@@ -100,7 +118,7 @@ config files.
|
|
|
100
118
|
#### Changed
|
|
101
119
|
|
|
102
120
|
- prefix node libs with 'node:' #3359
|
|
103
|
-
- .gitignore: add config/me and config
|
|
121
|
+
- .gitignore: add config/me and config/\*.pem
|
|
104
122
|
- auth_base: enable disabling constrain_sender at runtime #3298
|
|
105
123
|
- auth_base: skip constrain_sender when auth user has no domain #3319
|
|
106
124
|
- avg: repackaged as NPM module #3347
|
|
@@ -108,7 +126,7 @@ config files.
|
|
|
108
126
|
- clamd: repackaged plugin as NPM module
|
|
109
127
|
- config/plugins: consistent formatting #3359
|
|
110
128
|
- connection: check remote is connected before queue #3338
|
|
111
|
-
- improve log message for queue
|
|
129
|
+
- improve log message for queue\* hooks, fixes #2998
|
|
112
130
|
- support IPv6 when setting remote.is_private #3295
|
|
113
131
|
- in setTLS, replace forEach with for...of
|
|
114
132
|
- NOTE: remove a handful of 3.0 sunset property names #3315
|
|
@@ -159,7 +177,7 @@ config files.
|
|
|
159
177
|
- doc(Outbound.md): improve GHFM formatting
|
|
160
178
|
- remove last vestiges of header_hide_version (long ago renamed)
|
|
161
179
|
- server.js: use the local logger methods
|
|
162
|
-
- es6(async): _graceful, get_smtp_server, setup_smtp_listeners
|
|
180
|
+
- es6(async): \_graceful, get_smtp_server, setup_smtp_listeners
|
|
163
181
|
- replace async.eachLimit with Promise.all batches
|
|
164
182
|
- status: replace async.map with Promise.allSettled
|
|
165
183
|
- get Haraka version from utils.getVersion (which includes git id if running from repo)
|
|
@@ -292,7 +310,7 @@ config files.
|
|
|
292
310
|
- dep(haraka-plugin-redis)!: 1.0 -> 2.0 #3038
|
|
293
311
|
- dep(redis)!: 3.1 -> 4.1 #3058
|
|
294
312
|
- dep(generic-pool): remove pooling from outbound #3115
|
|
295
|
-
- smtp_client: remove
|
|
313
|
+
- smtp_client: remove smtp\_\* pooling support in #3113
|
|
296
314
|
- dep: bump plugin versions #3063
|
|
297
315
|
- dep: bump haraka-plugin-asn from 1.0.9 to 2.0.0 #3062
|
|
298
316
|
- dep(redis): 3.1 -> 4.1 #3058
|
|
@@ -481,7 +499,7 @@ config files.
|
|
|
481
499
|
- smtp_client: pass pool_timeout to new SMTPClient #2574
|
|
482
500
|
- server: default to nodes=1 (was undefined) #2573
|
|
483
501
|
- test/server: use IPv4 127.0.0.1 instead of localhost #2584
|
|
484
|
-
- queue/
|
|
502
|
+
- queue/smtp\_\*: add v3 upgrade notice and config setting #2585
|
|
485
503
|
- spf: use the skip config for helo/ehlo checks #2587
|
|
486
504
|
- spf: avoid 2nd EHLO evaluation if EHLO host is identical #2592
|
|
487
505
|
- queue.js refactoring #2593
|
|
@@ -574,7 +592,7 @@ config files.
|
|
|
574
592
|
|
|
575
593
|
#### Fixes
|
|
576
594
|
|
|
577
|
-
- data_headers: check defined-ness of hdr_address
|
|
595
|
+
- data_headers: check defined-ness of hdr_address *after* try/catch #2458
|
|
578
596
|
- tls: remove tls.ini loading from plugins/tls #2459
|
|
579
597
|
- tls: remove invalid opt from load_tls_ini #2456
|
|
580
598
|
- outbound: escape values in HTML bounce correctly #2446
|
|
@@ -770,18 +788,18 @@ config files.
|
|
|
770
788
|
|
|
771
789
|
#### Changes
|
|
772
790
|
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
791
|
+
- additional tests get var -> const/let medicine #2122
|
|
792
|
+
- move connection states into haraka-constants #2121
|
|
793
|
+
- lint: remove useless escapes #2117
|
|
794
|
+
- lint: switch no-var to error #2109
|
|
795
|
+
- rspamd: repackaged as NPM module #2106
|
|
796
|
+
- dsn: repackaged as NPM module haraka-dsn #2105
|
|
797
|
+
- outbound: add results when queueing #2103
|
|
798
|
+
- spamassassin: skip adding headers when value is empty #2102
|
|
799
|
+
- Replace console.log with stdout #2100
|
|
800
|
+
- update js-yaml to version 3.10.0 #2097
|
|
801
|
+
- repackage p0f plugin to NPM #2076
|
|
802
|
+
- ES6: replace var with const or let #2073
|
|
785
803
|
|
|
786
804
|
#### New Features
|
|
787
805
|
|
|
@@ -1010,7 +1028,7 @@ config files.
|
|
|
1010
1028
|
- bring port 465 SMTPS TLS config support on par with STARTTLS #1667
|
|
1011
1029
|
- use tls.connect instead of createSecurePair #1678
|
|
1012
1030
|
- redis: improve error handling in tests #
|
|
1013
|
-
- replace / path seperators with path
|
|
1031
|
+
- replace / path seperators with path.\* for cross platform compat #1713
|
|
1014
1032
|
|
|
1015
1033
|
#### Fixes
|
|
1016
1034
|
|
|
@@ -1194,7 +1212,7 @@ config files.
|
|
|
1194
1212
|
#### New Features
|
|
1195
1213
|
|
|
1196
1214
|
- Added bin/haraka --qunstick <domain> to flush all mails
|
|
1197
|
-
|
|
1215
|
+
for that domain (#1460)
|
|
1198
1216
|
|
|
1199
1217
|
#### Improvements
|
|
1200
1218
|
|
|
@@ -1216,8 +1234,8 @@ config files.
|
|
|
1216
1234
|
- remove spameatingmonkey from tests (#1421)
|
|
1217
1235
|
- replace ./constants.js with haraka-constants (#1353)
|
|
1218
1236
|
- Document HMail and TODO items (#1343)
|
|
1219
|
-
- Copy only a minimal config
|
|
1220
|
-
- cfreader
|
|
1237
|
+
- Copy only a minimal config/\* by default (#1341).
|
|
1238
|
+
- cfreader/\* removed to haraka/haraka-config (#1350)
|
|
1221
1239
|
- outbound and smtp_client honor tls.ini settings (#1350)
|
|
1222
1240
|
- outbound TLS defaults to enabled
|
|
1223
1241
|
- lint: remove all unused variables (#1358)
|
|
@@ -1239,7 +1257,7 @@ config files.
|
|
|
1239
1257
|
- removed TLD stuff to haraka/haraka-tld (#1301)
|
|
1240
1258
|
- removed unused 'require('redis') in plugins/karma (#1348)
|
|
1241
1259
|
- improved MIME header support per rfc2231 (#1344)
|
|
1242
|
-
- tls options can be defined for outbound and
|
|
1260
|
+
- tls options can be defined for outbound and smtp\_\* (#1357)
|
|
1243
1261
|
- explicitly disable SSLv2 (#1395)
|
|
1244
1262
|
- cache STUN results
|
|
1245
1263
|
- xclient plugin improvements (#1405)
|
|
@@ -1426,7 +1444,7 @@ config files.
|
|
|
1426
1444
|
- dkim_verify: fixed timeout issue
|
|
1427
1445
|
- smtp\_[proxy|forward]: correct authentication example
|
|
1428
1446
|
- Fork child workers after init_master hook
|
|
1429
|
-
- connection: return 450/550 for plugin DENY
|
|
1447
|
+
- connection: return 450/550 for plugin DENY\* (was 452/552)
|
|
1430
1448
|
- spamassassin: don't call next() when transaction gone
|
|
1431
1449
|
- outbound: fix crash when sending bounce mail
|
|
1432
1450
|
- auth_base: fix bad protocol in auth_base.js #1121 (@Dexus)
|
|
@@ -1559,13 +1577,13 @@ config files.
|
|
|
1559
1577
|
- karma: added whitelist award, pass through temp (DENYSOFT) errors, made
|
|
1560
1578
|
tarpit variable, configurable reject hooks, doc rewrite, ASN awards, fix penalty days calculation, new DSL for karma awards,
|
|
1561
1579
|
- bannering fixes
|
|
1562
|
-
- added log
|
|
1580
|
+
- added log\* stubs to test/fixtures/[plugin|connection]
|
|
1563
1581
|
- tests/fixtures/stub_plugin: set name property
|
|
1564
1582
|
- config: corrected handling of config.arg gets, fix caching bug, fix boolean
|
|
1565
1583
|
handling, added missing 'type' handling.
|
|
1566
1584
|
- Adding the option of using CIDR ranges in the haproxy_hosts file
|
|
1567
1585
|
- tarpit: added config option hooks_to_delay, added docs
|
|
1568
|
-
- contrib/haraka.bsd.rc: startup file for
|
|
1586
|
+
- contrib/haraka.bsd.rc: startup file for \*BSD
|
|
1569
1587
|
- Store attachment headers on stream
|
|
1570
1588
|
- Record accepted domains at hook_rcpt and improve queue/lmtp
|
|
1571
1589
|
- return after next() in the whitelist checks
|
|
@@ -1610,7 +1628,7 @@ config files.
|
|
|
1610
1628
|
- Fix underscores in documentation so web version doesn't look so weird
|
|
1611
1629
|
- By default prevent SMTP AUTH unless on a private IP or using TLS WARNING: May break some uses of Haraka, but is worth it for security
|
|
1612
1630
|
- In lookup_rdns.strict, check whitelist before looking up IP
|
|
1613
|
-
- Big rewrite of the SpamAssassin plugin for simplicity and mainly to pass through X-Spam
|
|
1631
|
+
- Big rewrite of the SpamAssassin plugin for simplicity and mainly to pass through X-Spam-\* headers provided
|
|
1614
1632
|
- Added delay_deny plugin allowing more flexibility on when to reject mail
|
|
1615
1633
|
- Improvements to ini file parsing allowing floats and negative integers, and specifying boolean keys
|
|
1616
1634
|
- Fix issue causing a CRIT/crash with lost transaction/connection while sending inbound to ongoing SMTP server
|
|
@@ -1633,7 +1651,6 @@ config files.
|
|
|
1633
1651
|
- Throw exception with set_banner as it is now non-functional. Will be returned in a future version.
|
|
1634
1652
|
- Small fixes to data.uribl
|
|
1635
1653
|
|
|
1636
|
-
|
|
1637
1654
|
[3.0.0]: https://github.com/haraka/Haraka/releases/tag/3.0.0
|
|
1638
1655
|
[3.0.1]: https://github.com/haraka/Haraka/releases/tag/v3.0.1
|
|
1639
1656
|
[3.0.2]: https://github.com/haraka/Haraka/releases/tag/v3.0.2
|
|
@@ -1641,7 +1658,6 @@ config files.
|
|
|
1641
1658
|
[3.0.4]: https://github.com/haraka/Haraka/releases/tag/3.0.4
|
|
1642
1659
|
[3.0.5]: https://github.com/haraka/Haraka/releases/tag/v3.0.5
|
|
1643
1660
|
[3.0.6]: https://github.com/haraka/Haraka/releases/tag/v3.0.6
|
|
1644
|
-
|
|
1645
1661
|
[2.8.0]: https://github.com/haraka/Haraka/releases/tag/v2.8.0
|
|
1646
1662
|
[2.8.1]: https://github.com/haraka/Haraka/releases/tag/v2.8.1
|
|
1647
1663
|
[2.8.3]: https://github.com/haraka/Haraka/releases/tag/v2.8.3
|
|
@@ -1669,12 +1685,10 @@ config files.
|
|
|
1669
1685
|
[2.8.26]: https://github.com/haraka/Haraka/releases/tag/2.8.26
|
|
1670
1686
|
[2.8.27]: https://github.com/haraka/Haraka/releases/tag/2.8.27
|
|
1671
1687
|
[2.8.28]: https://github.com/haraka/Haraka/releases/tag/2.8.28
|
|
1672
|
-
|
|
1673
1688
|
[2.7.3]: https://github.com/haraka/Haraka/releases/tag/v2.7.3
|
|
1674
1689
|
[2.7.2]: https://github.com/haraka/Haraka/releases/tag/v2.7.2
|
|
1675
1690
|
[2.7.1]: https://github.com/haraka/Haraka/releases/tag/v2.7.1
|
|
1676
1691
|
[2.7.0]: https://github.com/haraka/Haraka/releases/tag/v2.7.0
|
|
1677
|
-
|
|
1678
1692
|
[2.6.0]: https://github.com/haraka/Haraka/releases/tag/v2.6.0
|
|
1679
1693
|
[2.6.1]: https://github.com/haraka/Haraka/releases/tag/v2.6.1
|
|
1680
1694
|
[2.5.0]: https://github.com/haraka/Haraka/releases/tag/v2.5.0
|
|
@@ -1697,12 +1711,10 @@ config files.
|
|
|
1697
1711
|
[2.1.4]: https://github.com/haraka/Haraka/releases/tag/v2.1.4
|
|
1698
1712
|
[2.1.5]: https://github.com/haraka/Haraka/releases/tag/v2.1.5
|
|
1699
1713
|
[2.1.6]: https://github.com/haraka/Haraka/releases/tag/v2.1.6
|
|
1700
|
-
|
|
1701
1714
|
[2.0.0]: https://github.com/haraka/Haraka/releases/tag/v2.0.0
|
|
1702
1715
|
[2.0.3]: https://github.com/haraka/Haraka/releases/tag/v2.0.3
|
|
1703
1716
|
[2.0.4]: https://github.com/haraka/Haraka/releases/tag/v2.0.4
|
|
1704
1717
|
[2.0.5]: https://github.com/haraka/Haraka/releases/tag/v2.0.5
|
|
1705
|
-
|
|
1706
1718
|
[1.0.1]: https://github.com/haraka/Haraka/releases/tag/v1.0.1
|
|
1707
1719
|
[1.0.2]: https://github.com/haraka/Haraka/releases/tag/v1.0.2
|
|
1708
1720
|
[1.1.0]: https://github.com/haraka/Haraka/releases/tag/v1.1.0
|
|
@@ -1713,7 +1725,6 @@ config files.
|
|
|
1713
1725
|
[1.3.2]: https://github.com/haraka/Haraka/releases/tag/v1.3.2
|
|
1714
1726
|
[1.3.3]: https://github.com/haraka/Haraka/releases/tag/v1.3.3
|
|
1715
1727
|
[1.4.0]: https://github.com/haraka/Haraka/releases/tag/v1.4.0
|
|
1716
|
-
|
|
1717
1728
|
[0.9.0]: https://github.com/haraka/Haraka/releases/tag/v0.9.0
|
|
1718
1729
|
[0.8.0]: https://github.com/haraka/Haraka/releases/tag/v0.8.0
|
|
1719
1730
|
[0.7.2]: https://github.com/haraka/Haraka/releases/tag/v0.7.2
|
|
@@ -1737,3 +1748,4 @@ config files.
|
|
|
1737
1748
|
[0.2]: https://github.com/haraka/Haraka/releases/tag/v0.2
|
|
1738
1749
|
[3.1.1]: https://github.com/haraka/Haraka/releases/tag/v3.1.1
|
|
1739
1750
|
[3.1.0]: https://github.com/haraka/Haraka/releases/tag/v3.1.0
|
|
1751
|
+
[3.1.2]: https://github.com/haraka/Haraka/releases/tag/v3.1.2
|
package/Plugins.md
CHANGED
|
@@ -4,7 +4,7 @@ To create your own plugin, see [Write a Plugin][write-plugin].
|
|
|
4
4
|
|
|
5
5
|
## Installing NPM packaged plugins
|
|
6
6
|
|
|
7
|
-
Plugins can be installed in the directory where Haraka was installed (where depends on your OS platform and whether you specified `-g`) or the Haraka install directory (haraka -i
|
|
7
|
+
Plugins can be installed in the directory where Haraka was installed (where depends on your OS platform and whether you specified `-g`) or the Haraka install directory (haraka -i this_path). This example installs _my-great-plugin_ in the Haraka install directory:
|
|
8
8
|
|
|
9
9
|
```
|
|
10
10
|
cd /etc/haraka
|
|
@@ -118,6 +118,7 @@ A comprehensive list of known plugins. Create a PR to add yours to these lists.
|
|
|
118
118
|
| [watch][url-watch] | Watch live SMTP traffic in a web interface |
|
|
119
119
|
| [wildduck][url-wildduck] | provides recipient checks against Wild Duck |
|
|
120
120
|
| [xclient][url-xclient] | Implements XCLIENT |
|
|
121
|
+
| [save-sent][url-save-sent] | Save sent emails on the serverside to a mailbox of the sender |
|
|
121
122
|
|
|
122
123
|
<!-- URLs tucked safely out of the way -->
|
|
123
124
|
|
|
@@ -206,3 +207,4 @@ A comprehensive list of known plugins. Create a PR to add yours to these lists.
|
|
|
206
207
|
[url-outbound-logger]: https://github.com/mr-karan/haraka-plugin-outbound-logger
|
|
207
208
|
[url-kafka]: https://github.com/benjamonnguyen/haraka-plugin-queue-kafka
|
|
208
209
|
[url-mailauth]: https://www.npmjs.com/package/haraka-plugin-mailauth
|
|
210
|
+
[url-save-sent]: https://github.com/AprilGrimoire/haraka-plugin-save-sent
|
package/README.md
CHANGED
|
@@ -129,7 +129,7 @@ SpamAssassin and a hacker on [Qpsmtpd][13].
|
|
|
129
129
|
[3]: http://en.wikipedia.org/wiki/Message_transfer_agent
|
|
130
130
|
[4]: https://github.com/haraka/Haraka/blob/master/Plugins.md
|
|
131
131
|
[5]: http://en.wikipedia.org/wiki/Mail_submission_agent
|
|
132
|
-
[6]: https://github.com/haraka/
|
|
132
|
+
[6]: https://github.com/haraka/haraka-plugin-dkim
|
|
133
133
|
[7]: https://en.wikipedia.org/wiki/Mail_delivery_agent
|
|
134
134
|
[8]: mailto:haraka-sub@harakamail.com
|
|
135
135
|
[9]: https://haraka.github.io/plugins/spamassassin
|