64 Commits
Author SHA1 Message Date
Adam Cooke d96eddbade feat(dkim): make key size configurable and allow keys to be rotated 2026-10-01 12:32:46 +01:00
Adam Cooke cad2aa6808 fix(messages): sandbox rendered email HTML as extra XSS defence
The app-wide CSP already blocks inline script execution, but the HTML
preview iframe for a stored email was same-origin and un-sandboxed, and
the html_raw response had no per-action hardening. Add a sandbox on the
iframe and tighten the CSP on html_raw to script-src 'none' with
nosniff and no-referrer so the preview has defence in depth against a
future CSP bypass or regression.

Relates to GHSA-f6g9-8555-cw28.
2026-04-24 22:12:27 +01:00
Som23Git fd3c7ccdf6 fix: typo in the credentials page 2024-10-31 17:53:20 +00:00
Adam Cooke 18236171eb chore(ui): display branch in footer if present 2024-03-20 14:30:32 +00:00
Adam Cooke be456523dd fix: don't use authentication on org & server deletion 2024-03-14 14:14:59 +00:00
Adam Cooke 5ed94f6f85 feat: openid connect support (#2873) 2024-03-12 17:40:07 +00:00
Adam Cooke d84152eb5d feat: automatically remove queued messages with stale locks (#2872) 2024-03-12 11:37:29 +00:00
Adam Cooke 33513a77c0 fix(ui): fixes typo on queue page 2024-03-05 22:57:39 +00:00
Adam Cooke 0d3eccb368 fix: update wording about tracking domain cnames
closes #2808
2024-03-04 16:55:36 +00:00
Adam Cooke 0163ac3d10 feat: new configuration system (and schema) (#2819) 2024-02-26 12:41:57 +00:00
Adam Cooke ecd09a2445 chore: upgrade rails to 7.0 and other dependencies 2024-02-23 22:51:37 +00:00
Adam Cooke 07eb15246f docs: update docs for how IP address allocation works
closes #2209
2024-02-23 22:51:35 +00:00
Adam Cooke 15f9671b66 feat: privacy mode
Adds support for hiding IP addresses & hostnames associated with clients sending
authenticated mail in to Postal over SMTP and HTTP
2024-02-07 09:45:09 +00:00
Nitinkumar Balar 77bd77b629 fix: fixes typo in on track domains page 2024-01-30 08:41:01 +00:00
Adam Cooke 957b784658 chore: Upgrade to Ruby 3.2.1 & Rails 6.0
* chore: upgrade to rails 6.0

* chore: upgrade ruby to 3.2.1

* chore: upgrade bundler

* chore: upgrade execjs

* chore: upgrade to rails 6.1

* chore: switch to sentry-ruby from raven

* chore: add extra platforms to gemfile
2023-04-06 11:40:45 +01:00
Charlie Smurthwaite 1e3622c49a Consistently treat tinyint(1) fields in message database as booleans (#2380)
* Update mysql2 query call to cast booleans

* Treat messages:held field as boolean

* Treat messages:inspected field as boolean

* Treat messages:spam field as boolean

* Treat messages:threat field as boolean

* Treat messages:bounce field as boolean

* Treat messages:received_with_ssl field as boolean

* Treat deliveries:sent_with_ssl field as boolean
2023-03-22 13:49:48 +00:00
Archie e1c355919b improved spam config explanations 2021-10-31 15:31:47 +00:00
Wouter van Os b0e9bc10a4 Update description for SSL option for tracking domain 2021-10-07 16:05:57 +02:00
Adam Cooke 4404b3e02c fix(docs): update port numbers to specify the actual port number the SMTP server is listening on 2021-07-30 19:57:25 +00:00
Adam Cooke 1247dae2e0 feat(ui): add footer with links to docs and discussions 2021-07-30 19:41:14 +00:00
Adam Cooke 4ba2195ae0 docs: update links to old docs 2021-07-30 19:16:41 +00:00
Adam Cooke 17dd7cc757 refactor: remove the fast server 2021-07-29 11:20:47 +00:00
Adam Cooke 21a8d89045 feat: add priorities to IP address assignment 2021-07-28 14:18:40 +00:00
Adam Cooke daf469ce7f refactor: user management 2021-07-28 14:17:59 +00:00
Charlie Smurthwaite 9a3d568b27 Add IP-based SMTP authentication (#1149) 2020-07-17 11:43:51 +01:00
Will Power f56380e3b2 correct suppression expired check (#988) 2020-07-17 10:31:38 +01:00
Will Power dcb2919cc6 Suppression list improvements (#867) 2019-11-22 17:28:11 +00:00
Raven a75c125931 Make it more clear that the record should point to the domain (#906) 2019-11-22 17:24:59 +00:00
Alec Papierniak 48daec1328 Minor typo fix 2019-02-25 11:49:18 +00:00
Charlie Smurthwaite a7e3e9de79 Revert "add domain button on top of Domains page."
I've tested this, and I'm afraid I don't like it from a design perpective as it is not consistent with the other pages, and it looks inverted when only one domain is present. Perhaps we can design this better, though I'm not sure how.
2018-08-22 11:40:49 +01:00
Valentin Ouvrard 96294988cb add domain button on top of Domains page. 2018-08-22 11:36:49 +01:00
lrns 3a4aa0bdaa Change seperate/seperately to separate/separately in 2 forms 2018-03-16 12:39:40 +00:00
Charlie Smurthwaite 53475abf55 always allow emails to be redelivered 2017-12-05 10:54:47 +00:00
Adam Cooke 21039f07e8 update link to using the api 2017-11-10 14:18:53 +00:00
Will Power 5634640fd8 fix typos related to message retention (#317) 2017-08-21 22:22:58 +01:00
Adam Cooke 6f29bc8d3f ensure all timestamps from the message DB go through a zone 2017-06-02 15:36:12 +01:00
Adam Cooke fda0cfafc6 rename admin to advanced settings & add help text
closes #163
2017-06-02 12:11:19 +01:00
Adam Cooke 96f190ae25 fixes style issue on error when no messages found 2017-05-30 15:16:01 +01:00
Adam Cooke 3f8c52501b put postal version in footer 2017-05-18 12:25:28 +01:00
Adam Cooke cb0e3a4f4e support for a null send limit for unlimited
part of #144
2017-05-16 15:52:43 +01:00
Adam Cooke d33994ce0f fixes bug with IP rules list
closes #136
2017-05-12 17:06:35 +01:00
Adam Cooke e9b03987fe only allow users with an invite to create accounts 2017-05-12 14:45:42 +01:00
Robert Lyall ffc4586d5b Only display a server's IP pool name if it has an IP pool (#121) 2017-05-08 21:21:34 +01:00
Adam Cooke f75806b693 wording updates on the server limit page 2017-05-05 12:06:38 +01:00
Adam Cooke 0ee58b2b3e send limit email wording updates 2017-05-05 12:05:52 +01:00
Adam Cooke 49faf73e66 fixes bug on credentials list 2017-05-02 13:44:32 +01:00
Adam Cooke f6784238d3 a sad sad day in postal-land, no more puns. 2017-05-02 13:33:17 +01:00
Alex Bouma 594cff74a9 Add address endpoints to the routes UI (#71) 2017-05-02 13:06:46 +01:00
Alex Bouma ddf2a859bf Fix removed ip_pool type errors (#62)
* Fix undefined method description

Sice `:description` was removed from the IP pools it should display the IP pool `:name` instead of the `:description`.

* Fix using the removed ip_pool type
2017-04-29 19:42:29 +01:00
Adam Cooke 45fd472f76 configurable maximum delivery attempts
closes #59
2017-04-29 11:56:25 +01:00