Commit graph

246 commits

Author SHA1 Message Date
cketti
45d79a9a16 Merge branch '6.8-MAINT' 2024-03-11 14:12:59 +01:00
cketti
09a155bcfd Add header folding to MimeHeaderEncoder 2024-03-06 12:44:12 +01:00
cketti
d2296b3955 Don't allow username or password to contain line break 2024-03-04 18:56:22 +01:00
cketti
928b18422e Add more errors to ServerSettingsValidationResult 2023-12-08 15:18:29 +01:00
cketti
025272bbbb Convert CertificateChainException to Kotlin 2023-12-07 21:36:35 +01:00
cketti
34f4d18716 Rename .java to .kt 2023-12-07 21:00:49 +01:00
cketti
5c58b03fb2 Convert CertificateValidationException to Kotlin 2023-12-07 20:58:53 +01:00
cketti
3cf4395fa1 Rename .java to .kt 2023-12-07 20:58:53 +01:00
cketti
dd2ec736b0
Merge pull request #7418 from thunderbird/simplify_CertificateValidationException
Simplify `CertificateValidationException` to only be used when there's a certificate chain
2023-12-07 13:48:45 +01:00
Wolf-Martell Montwé
c04e7de4b0
Merge pull request #7414 from thunderbird/bump_dependencies
Bump dependencies
2023-12-07 12:42:05 +00:00
cketti
07c97cd039 Simplify CertificateValidationException to only be used when there's a certificate chain 2023-12-06 15:53:10 +01:00
Wolf-Martell Montwé
a230e11910
Bump Spotless 6.22.0 -> 6.23.3 and Ktlint 0.50.0 -> 1.0.1 2023-12-06 15:04:55 +01:00
cketti
0d13561b22
Merge pull request #7415 from thunderbird/clean_up_CertificateValidationException
Remove unused code from `CertificateValidationException`
2023-12-06 13:24:26 +01:00
cketti
ce64385708 Remove unused code from CertificateValidationException 2023-12-05 15:26:01 +01:00
Wolf-Martell Montwé
c08902759d
Change ConnectionSecurity to Kotlin
Signed-off-by: Wolf-Martell Montwé <wolf@thunderbird.net>
2023-12-04 17:45:19 +01:00
Wolf-Martell Montwé
9b4ce6b0d8
Rename .java to .kt
Signed-off-by: Wolf-Martell Montwé <wolf@thunderbird.net>
2023-12-04 17:42:12 +01:00
cketti
ae2fbfe72d Add ClientCertificateException 2023-11-28 15:14:06 +01:00
cketti
f79db8e28d Add MissingCapabilityException 2023-11-27 18:49:52 +01:00
cketti
1de41d9177 Add FolderFetcher 2023-11-10 22:24:15 +01:00
Wolf-Martell Montwé
7565bb8e66
Fix max-line-length issues manually as auto format does fail 2023-11-07 10:40:08 +01:00
Wolf-Martell Montwé
e9535ecdaa
Bump Spotless 6.14.0 -> 6.21.0 and KtLint 0.48.2 -> 0.50.0, and reformat/fix code 2023-09-06 18:13:23 +02:00
cketti
4efbf3d0d9 Add OAuth to auto discovery flow 2023-07-31 15:16:09 +02:00
cketti
8e7a5f3541 Add an AuthStateStorage parameter to ServerSettingsValidator
Typically we use `Account` to hold the (OAuth 2.0) authorization state. But during account setup we don't have an `Account` instance yet. So we allow a `ServerSettingsValidator` caller to pass an `AuthStateStorage` that we then use with `OAuth2TokenProviderFactory` to create an `OAuth2TokenProvider` instance. When setting up an account we can use an `AuthStateStorage` implementation that will simply hold the state in memory.
2023-07-29 23:36:02 +02:00
cketti
84f132c148 Add abstraction for storing and retrieving the OAuth state 2023-07-26 15:28:34 +02:00
Wolf-Martell Montwé
ea8c0beb5c
Add server config validation use cases and change check interface to SAM 2023-06-27 11:33:46 +02:00
cketti
d99067a9a7 Add ServerSettingsValidator interface 2023-06-21 19:41:35 +02:00
cketti
07985f7066 Use IOUtils.skipFully() in FixedLengthInputStream
There was a bug in the `skip()` implementation of `PeekableInputStream` which have could lead to an endless loop in `skipRemaining()`. Using `IOUtils.skipFully()` should avoid such a problem in the future.
2023-06-17 17:21:48 +02:00
cketti
7b7ffe4b88 Fix PeekableInputStream to adhere to the InputStream contract 2023-06-17 17:21:48 +02:00
cketti
fde82fe7b4 Convert PeekableInputStream to Kotlin 2023-06-17 17:21:45 +02:00
cketti
ff9bec87e1 Rename .java to .kt 2023-06-17 13:13:34 +02:00
cketti
cde85b97a2 Add tests for PeekableInputStream 2023-06-17 13:13:34 +02:00
cketti
3bf19ca3f6 Add UserInputEmailAddressParser
Used to parse name and email address pairs entered by the user when composing a message.
2023-06-07 18:40:49 +02:00
cketti
2dbecb667c Move HostNameUtils to :core:common 2023-05-22 18:03:56 +02:00
cketti
ef498c60e4 Update assertk to version 0.26 2023-05-16 17:20:25 +02:00
cketti
8376909043
Merge pull request #6897 from thundernest/rewrite_to_assertk
Switch assertions to assertk
2023-05-16 16:27:13 +02:00
cketti
5498567bf2 Switch assertions to assertk 2023-05-14 13:00:28 +02:00
cketti
a266e0a6fc Convert FixedLengthInputStream to Kotlin 2023-05-13 23:10:16 +02:00
cketti
64050584b5 Rename .java to .kt 2023-05-13 23:10:16 +02:00
cketti
9c4a0d40be Convert FixedLengthInputStreamTest to Kotlin 2023-05-13 22:55:54 +02:00
cketti
1e629952bc Rename .java to .kt 2023-05-13 22:52:15 +02:00
cketti
ec7c282ffd
Merge pull request #6883 from thundernest/hostname_validation
Add `HostNameUtils` to check the validity of host names and IP addresses
2023-05-10 18:45:30 +02:00
cketti
182e2c217c Fix escaping commas in buildOAuthBearerInitialClientResponse() 2023-05-08 15:46:04 +02:00
cketti
21be092394 Add HostNameUtils to check the validity of host names and IP addresses 2023-05-08 12:58:51 +02:00
cketti
626a9c318c
Merge pull request #6877 from thundernest/secure_random
Switch from `Random` to `SecureRandom`
2023-05-05 17:55:37 +02:00
cketti
79078344c2 Switch from using Random to SecureRandom 2023-05-05 16:35:30 +02:00
cketti
ff188cdfb5 Remove WebDAV code 2023-05-04 22:14:00 +02:00
Wolf Montwé
71079908aa
Bump Gradle 8.0.2 -> 8.1.1 and remove suppress dsl scope violation 2023-04-25 17:21:58 +02:00
cketti
4695bd0460 Don't parse Content-Transfer-Encoding as header containing named parameters 2023-04-20 18:57:57 +02:00
cketti
fe2c5494ae Fix bug in CharsetSupport.readToString()
`charset` arguments containing a newline character didn't match the regular expression meant to always match.
2023-04-08 12:25:58 +02:00
Wolf Montwé
a670406eac
Change common module to assertk 2023-03-21 14:03:32 +01:00