James Hillyerd
ea585c4851
chore: fix more capitalization style warnings ( #487 )
...
Signed-off-by: James Hillyerd <james@hillyerd.com >
2024-02-15 18:31:43 -08:00
James Hillyerd
baa2dbd3a1
chore: fix many cosmetic linter warnings ( #486 )
...
* fix whitespace warnings
Signed-off-by: James Hillyerd <james@hillyerd.com >
* fix a number of typos
Signed-off-by: James Hillyerd <james@hillyerd.com >
* fix many cosmetic linter warnings
Signed-off-by: James Hillyerd <james@hillyerd.com >
---------
Signed-off-by: James Hillyerd <james@hillyerd.com >
2024-02-15 18:02:26 -08:00
James Hillyerd
843cb8a015
lifecycle: Don't create multiple notify channels ( #435 )
...
Signed-off-by: James Hillyerd <james@hillyerd.com >
2023-11-13 11:54:14 -08:00
James Hillyerd
535438342e
server: resolve linter errors ( #433 )
...
Signed-off-by: James Hillyerd <james@hillyerd.com >
2023-11-13 11:34:05 -08:00
Cyd
20ef8af047
Reject invalidomain with wildcards ( #412 )
...
Co-authored-by: Cyril DUPONT <cyd@9bis.com >
2023-11-12 09:42:20 -08:00
James Hillyerd
01fb161df8
extension: BeforeMessageStored event to rewrite envelope ( #417 )
...
* extension: add InboundMessage type
* manager: fires BeforeMessageStored event
* manager: Reacts to BeforeMessageStored event response
* manager: Apply BeforeMessageStored response fields to message
Signed-off-by: James Hillyerd <james@hillyerd.com >
2023-11-06 14:53:38 -08:00
James Hillyerd
74a27875e9
message: migrate more delivery logic into manager.go ( #414 )
...
* message: migrate more delivery logic into manager.go
Signed-off-by: James Hillyerd <james@hillyerd.com >
* manager: tidy up a few things
Signed-off-by: James Hillyerd <james@hillyerd.com >
---------
Signed-off-by: James Hillyerd <james@hillyerd.com >
2023-11-01 13:54:27 -07:00
Saulius Gurklys
b1acff08a3
UTC format timestamps in headers ( #404 ) ( #406 )
...
This change makes all header timestamps (e.g. "Received") to use
UTC time zone.
This way the length of such headers do not depend on local time zone
which if effect fixes #404 .
Signed-off-by: Saulius Gurklys <s4uliu5@gmail.com >
2023-10-21 16:22:49 -07:00
Benson Margulies
beb5abc62d
Add a ForceTLS flag for SMTP. ( #402 )
...
When this is enabled, the server listens with TLS instead of waiting for
STARTTLS.
Signed-off-by: Benson Margulies <bimargulies@google.com >
2023-10-16 14:31:16 -07:00
James Hillyerd
63e47a4e74
web: Redirect base path prefix to prefix/ ( #397 )
...
Signed-off-by: James Hillyerd <james@hillyerd.com >
2023-09-13 12:18:08 -07:00
James Hillyerd
9836c0ffbb
go: update mod and imports to correctly reflect major version ( #388 )
2023-09-09 12:36:21 -07:00
Benson Margulies
00736cc704
pop3 TLS: don't do server-side handshake explicitly... ( #386 )
2023-09-07 09:56:19 -07:00
Benson Margulies
9f0fef3180
Implement STLS for pop3 ( #384 )
2023-09-05 14:28:26 -07:00
Cyd
06ec140e72
add reject from origin domain feature ( #375 )
...
Add a new feature to be able to reject email *from* specific domains.
Co-authored-by: Cyril DUPONT <cyd@9bis.com >
2023-08-26 11:05:20 -07:00
James Hillyerd
69b6225554
storage: emit AfterMessageDeleted events ( #334 )
...
* Ignore test lua script
Signed-off-by: James Hillyerd <james@hillyerd.com >
* Wire ExtHost into storage system
imports
Signed-off-by: James Hillyerd <james@hillyerd.com >
* storage/file: emit deleted events
Signed-off-by: James Hillyerd <james@hillyerd.com >
* storage/mem: emit deleted events
Signed-off-by: James Hillyerd <james@hillyerd.com >
---------
Signed-off-by: James Hillyerd <james@hillyerd.com >
2023-02-13 17:11:04 -08:00
James Hillyerd
55addbb556
lua: Init with config and pool ( #321 )
...
* lua: Intial impl with config and pool
Signed-off-by: James Hillyerd <james@hillyerd.com >
2023-01-24 12:16:58 -08:00
James Hillyerd
8fd5cdfc86
extension: Add BeforeMailAccepted event ( #320 )
...
Signed-off-by: James Hillyerd <james@hillyerd.com >
Signed-off-by: James Hillyerd <james@hillyerd.com >
2023-01-22 18:01:56 -08:00
James Hillyerd
f0d457b8f5
extension: Add MessageStored event ( #316 )
...
* Replace existing direct StoreManager->msghub communication with this
event
* For #280 #309 #312 #310
Signed-off-by: James Hillyerd <james@hillyerd.com >
Signed-off-by: James Hillyerd <james@hillyerd.com >
2023-01-16 21:30:47 -08:00
James Hillyerd
547a12ffca
smtp: Adjust fromRegex to handle AUTH=<> in middle of args ( #291 )
...
Signed-off-by: James Hillyerd <james@hillyerd.com >
2022-09-03 14:03:55 -07:00
James Hillyerd
c8d22ac802
smtp: Break up handler tests ( #290 )
...
* Do drain logging from main to reduce test output
* Break up some of the larger handler test funcs
* Introduce sub-tests
2022-08-25 14:19:57 -07:00
James Hillyerd
9dbffa88de
Refactor SMTP handler_test log collection ( #289 )
...
* smtp: allow logger to be passed into startSession
* smtp: remove logbuf and teardown from handler_test
* smtp: handler_test log output to testing.T
2022-08-24 21:42:53 -07:00
James Hillyerd
eae4926b23
Dependency injection improvements ( #288 )
...
Refactor server life-cycle into it's own file, make service startup and monitoring more consistent and testable.
* Extract services creation in preparation for DI
* pop3: rename New to NewServer
* lifecycle: Add fatal error Notify()
* web: Introduce Server struct w/ Notify()
* Extract Start in lifecycle
* Add Start() to Hub
* RetentionScanner startup consistent with other svcs
* Remove global shutdown channel
* Implement a readiness notification system
2022-08-13 13:22:34 -07:00
James Hillyerd
1f1a8b4192
Handle IP address domains ( #285 )
...
* Add basic TestRecipientAddress tests
* Handle forward-path route spec
* Validate IP addr "domains"
* Forward-path test cases
* Add integration test
* Add IPv4 recip swaks test
* Special case domain mailbox extraction
* add IPv6 swaks test
* Formatting
Signed-off-by: James Hillyerd <james@hillyerd.com >
* Update changelog
2022-08-07 20:13:58 -07:00
James Hillyerd
87018ed42d
Allow AUTH=<> FROM parameter ( #284 )
...
* Use backtick on regex
* Accept AUTH=<> FROM parameter
* Update changelog
2022-07-30 10:57:29 -07:00
James Hillyerd
2016142747
smtp: allow empty user & pass during AUTH LOGIN ( #225 )
2021-07-31 10:38:48 -07:00
James Hillyerd
4f9f961cac
smtp: fix formatting ( #224 )
2021-07-31 10:32:08 -07:00
James Hillyerd
985f2702f2
Fix command line length bug ( #221 )
...
* handler: Don't fail on 8 character command lines
Fixes #214
* handler: Test that STARTTLS is parsed correctly.
2021-07-11 12:00:28 -07:00
Timur Makarchuk
c096f018d6
Add support for AUTH, closes #62
...
* Add PLAIN and LOGIN auth support
2021-04-10 13:58:18 -07:00
Stuart Skelton
3c5960aba0
Avoid potential click jacking ( #190 )
2020-11-19 08:16:01 -08:00
James Hillyerd
5a0c4778cb
Set base path in index.html ( #172 )
...
- Create a new index-dev.html for webpack live server
- Update Go+index.html to set <base href>
- Fixes #171
2020-08-29 19:06:21 -07:00
James Hillyerd
289b38f016
Add configurable base path for reverse proxy use ( #169 )
...
* ui: Refactor routing functions into Router record
* ui: Store base URI in AppConfig
* ui: Use basePath in Router functions
* backend: Add Web.BasePath config option and update routes
* Tweaks to get SPA to bootstrap basePath configured
* ui: basePath support for apis/serve
* ui: basePath support for message monitor
* web: Redirect requests to / when basePath configured
* doc: add basepath to config.md
* Closes #107
2020-08-09 15:53:15 -07:00
James Hillyerd
316a732e7f
cmd, pkg: add line breaks to several go source files
2020-07-26 11:59:27 -07:00
Sascha Andres
046de42774
allow empty envelope ( #166 )
...
* feat: allow empty MAIL FROM
Closes #164
2020-07-25 10:23:31 -07:00
James Hillyerd
3a1c757d04
smtp: Handle late EHLO, fixes #141
2019-08-17 15:46:28 -07:00
James Hillyerd
e4c48a0705
go code: rename to github.com/inbucket/inbucket
2019-02-24 09:43:10 -08:00
James Hillyerd
c57260349b
web + ui: Pass init cookie from server to client
2018-12-31 15:10:05 -08:00
James Hillyerd
77ea66e0e6
web: Remove unused helpers
2018-12-15 09:51:37 -08:00
James Hillyerd
89886843bd
web: Remove template related code
2018-12-15 09:20:57 -08:00
James Hillyerd
4894244d5c
webui: Remove sessions & securecookie
2018-12-15 08:35:00 -08:00
James Hillyerd
e70900dd1a
web: Implement SPA compatible routing
2018-11-17 14:38:04 -08:00
James Hillyerd
523c04a522
Logging improvements, handler extraction.
...
- rest: improve error logging.
- web: extract handlers/middleware into their own file.
- web: log all requests, not just ones hitting our handlers.
- test: improve integration test logging format.
2018-11-12 20:38:00 -08:00
James Hillyerd
dd14fb9989
ui: Much elm work, such wow
...
- ui: Fix favicon
- webui: Changes to support serving Elm UI
- Static files now served from `/` mount point.
- Old UI handlers moved to `/serve` mount point, some will still be
needed by the Elm UI; safe HTML and attachments for example.
- Update dev-start.sh for new UI, with tip on how to build it.
- ui: Detect browser host:port for websocket URL,
- webui: Remove unused mailbox handlers, rename routes
- Many routes not needed by Elm UI.
- `/serve/mailbox/*` becomes `/serve/m/*`.
- webui: Impl custom JSON message API for web UI,
- ui: Refactor Mailbox view functions,
- ui: Add body tabs for safe HTML and plain text,
- webui: Format plain text for new UI,
- ui: List attachments with view & download links,
2018-11-12 20:34:51 -08:00
James Hillyerd
30e3892cb0
webui, rest: Render UTF-8 addresses correctly, fixes #117
2018-10-22 18:29:03 -07:00
James Hillyerd
98745b3bb9
web: Optionally mount /debug/pprof for #120
...
- web: eliminate use of http.DefaultServeMux
2018-10-20 16:16:09 -07:00
James Hillyerd
0d7c94c531
smtp: add missing log message param
2018-10-20 11:13:39 -07:00
kingforaday
00dad88bde
Fixing an erroneous connection close introduced in #98 . ( #101 )
2018-05-20 09:51:40 -07:00
James Hillyerd
fdcb29a52b
smtp: rename readByteLine to readDataBlock for #98 .
...
Update change log.
2018-05-06 12:09:55 -07:00
kingforaday
894db04d70
Opportunistic TLS Support ( #98 )
...
* STARTTLS Support, disabled by default.
* Added documentation
2018-05-06 11:56:38 -07:00
James Hillyerd
12f98868ba
smtp/policy: Store messages with full naming for #33
...
- Added some tests to make sure stores do not enforce their own naming.
- Improve recipient structured logging.
2018-04-07 13:06:56 -07:00
James Hillyerd
ff2121fbb9
policy: Add support for MailboxNaming to ExtractMailbox for #33
2018-04-04 20:22:40 -07:00