Skip to content

Enable Mailkit protocols with the verbose flag #2388

@Zennate

Description

@Zennate

Before you post

Is your feature request related to a problem? Please describe.
I am currently trying to connect WACS to my on-premise Exchange server using the Mailkit e-mail notifications, but have trouble properly configuring it.
Sadly, all I can see in verbose mode is this:

2023-05-23 09:00:57.850 +02:00 [INF] Sending test message...
2023-05-23 09:00:58.259 +02:00 [ERR] Problem sending e-mail
MailKit.Security.AuthenticationException: 451: 4.7.0 Temporary server error. Please try again later. PRX4
 ---> MailKit.Net.Smtp.SmtpCommandException: 4.7.0 Temporary server error. Please try again later. PRX4
   --- End of inner exception stack trace ---
   at MailKit.Net.Smtp.SmtpClient.AuthenticateAsync(Encoding, ICredentials, CancellationToken )
   at PKISharp.WACS.Clients.EmailClient.Send(String subject, String content, MessagePriority priority)

Describe the solution you'd like
Mailkit provides a ProtocolLogger object as described here that could be enabled with the --verbose flag. The piece of code that would need to be changed for this is Line 77 in EmailClient.cs.

Describe alternatives you've considered

Additional context
The Mailkit error I provided happens when using port 578 and setting SmtpSecureMode to 3. Port 578 corresponds to a FrontEndTransport receive-connector on the Exchange server. Interestingly, using port 465 which corresponds to a HubTransport receive-connector works, but would require portforwarding a backend port. What the error "PRX4" actually means is still unclear.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions