Commit Graph

18 Commits

Author SHA1 Message Date
ae73de19b2 fix(dns): update DnsManager to use new DNS configuration properties
The DnsManager was still checking for the old dnsDomain property that was
replaced by dnsNsDomains and dnsScopes in the DNS Architecture Improvements.

Changes:
- Replace dnsDomain checks with dnsNsDomains and dnsScopes validation
- Add check to ensure email domain is included in dnsScopes array
- Update NS delegation check to work with multiple nameservers
- Update error messages to guide users to the new configuration format
2025-05-30 16:26:31 +00:00
37e1ecefd2 refactor(dns): extend DnsValidator to DnsManager with DNS record creation
- Rename DnsValidator to DnsManager to better reflect its expanded responsibilities
- Move DNS record creation logic from UnifiedEmailServer to DnsManager
- Add ensureDnsRecords() method that handles both validation and creation
- Consolidate internal DNS record creation (MX, SPF, DMARC) in one place
- Keep DKIM key generation in UnifiedEmailServer but move DNS registration to DnsManager
- Update all imports and tests to use DnsManager instead of DnsValidator
- Improve code organization and discoverability of DNS functionality
2025-05-30 08:52:07 +00:00
40db395591 feat(integration): components now play nicer with each other 2025-05-30 05:30:06 +00:00
b11fea7334 feat(socket-handler): implement direct socket passing for DNS and email services
- Add socket-handler mode eliminating internal port binding for improved performance
- Add `dnsDomain` config option for automatic DNS-over-HTTPS (DoH) setup
- Add `useSocketHandler` flag to email config for direct socket processing
- Update SmartProxy route generation to support socket-handler actions
- Integrate smartdns with manual HTTPS mode for DoH without port binding
- Add automatic route creation for DNS paths when dnsDomain is configured
- Update documentation with socket-handler configuration and benefits
- Improve resource efficiency by eliminating internal port forwarding
2025-05-29 16:26:19 +00:00
e1a7b3e8f7 Complete email router implementation and documentation
- Cleaned up interface definitions to only include implemented features
- Updated readme.md with comprehensive route-based configuration examples
- Added common email routing patterns and troubleshooting guide
- Removed legacy DomainRouter and IDomainRule interfaces
- Updated all imports and exports to use new EmailRouter system
- Verified build and core functionality tests pass

The match/action pattern implementation is now complete and production-ready.
2025-05-28 14:12:50 +00:00
2e75961d1c feat: implement comprehensive route-based email routing system
Replace legacy domain-rule based routing with flexible route-based system that supports:
- Multi-criteria matching (recipients, senders, IPs, authentication)
- Four action types (forward, process, deliver, reject)
- Moved DKIM signing to delivery phase for signature validity
- Connection pooling for efficient email forwarding
- Pattern caching for improved performance

This provides more granular control over email routing with priority-based matching and comprehensive test coverage.
2025-05-28 13:23:45 +00:00
88099e120a feat: implement route-based email routing system
- Add core interfaces (IEmailRoute, IEmailMatch, IEmailAction, IEmailContext)
- Create EmailRouter class with comprehensive matching capabilities
- Support for recipient/sender patterns, IP/CIDR matching, auth checks
- Add content matching (headers, size, subject, attachments)
- Implement pattern caching for performance
- Update plan with completed steps
2025-05-28 12:07:37 +00:00
77ff948404 update 2025-05-28 11:39:54 +00:00
8d59d617f1 fix(interfaces): Remove legacy interfaces 2025-05-27 21:03:17 +00:00
2aeb52bf13 fix(structure): Unify structure even further 2025-05-27 18:00:14 +00:00
243a45d24c feat(structure): Use unified Email class 2025-05-27 15:38:34 +00:00
cfea44742a update 2025-05-27 15:06:44 +00:00
073c8378c7 update 2025-05-27 14:06:22 +00:00
ca53816b41 BREAKING_CHANGE(structure): rebrand as dcrouter 2025-05-22 13:03:09 +00:00
ac419e7b79 update 2025-05-22 10:18:02 +00:00
162795802f update 2025-05-21 02:17:18 +00:00
b1890f59ee update 2025-05-21 00:12:49 +00:00
fe2069c48e update 2025-05-08 01:13:54 +00:00