Commit graph

1585 commits

Author SHA1 Message Date
Henning
1fc185c196 Fix syntax error in oauth2_callback function by adding missing comma 2026-01-15 15:01:56 +01:00
Henning
7a154975cc Refactor OAuth2 callback function and improve error logging for URL validation 2026-01-15 14:55:04 +01:00
Henning
88d6453cfd Enhance OAuth2 handling by ensuring HTTPS scheme for URLs and improving timestamp management 2026-01-15 14:46:44 +01:00
Henning
03f7a5aada
Merge branch 'dani-garcia:main' into main 2026-01-08 15:58:51 +01:00
Stefan Melmuk
8d08697cf8
improve sso callback path (#6676)
* normalize base_url for sso_callback_path

* clean url when embedding images
2026-01-06 17:10:00 +00:00
Stefan Melmuk
9f1df42259
allow MasterPasswordHash for Android (#6673) 2026-01-06 14:24:05 +00:00
Stefan Melmuk
1e1f9957cd
return no content with status code 204 (#6665) 2026-01-05 18:52:24 +00:00
Daniel García
3e2cef7e8b
Try old refresh token if we fail to decode jwt (#6629) 2025-12-29 22:54:51 +01:00
Daniel García
a4907f3539
Add wrapped named variants to UserDecryptionOptions (#6598) 2025-12-27 23:35:04 +01:00
Henning
a826a5a0f3 Fix formatting issue in XOAuth2 struct constructor 2025-12-26 15:56:25 +01:00
Henning
d545de4b54 Refactor imports and formatting in mail.rs and xoauth2.rs 2025-12-26 15:18:04 +01:00
Henning
405b50d044 Implement XOAuth2 model and database integration for SMTP OAuth2 tokens 2025-12-26 15:00:23 +01:00
Henning
8927a1fea6 Refactor OAuth2 token exchange and refresh error handling 2025-12-21 19:15:42 +01:00
Henning
60924f6d8d
Merge branch 'dani-garcia:main' into main 2025-12-21 19:14:45 +01:00
Henning
2a360ff3de Improve error handling for OAuth2 token exchange and parsing 2025-12-21 18:52:13 +01:00
Mathijs van Veluw
d9c75508c2
Fix posting cipher with readonly collections (#6578)
* Fix posting cipher with readonly collections

This fix will check if a collection is writeable for the user, and if not error out early instead of creating the cipher first and leaving it.
It will also save some database transactions.

Fixes #6562

Signed-off-by: BlackDex <black.dex@gmail.com>

* Adjust code to delete on error

Signed-off-by: BlackDex <black.dex@gmail.com>

---------

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-12-21 18:51:58 +01:00
Henning
c17837fa2a Add SMTP OAuth2 configuration options and improve error handling 2025-12-21 18:00:48 +01:00
Henning
8bd2a0b26c
Merge branch 'dani-garcia:main' into main 2025-12-21 17:30:14 +01:00
Daniel García
5c91058ba0
Add UserDecryptionOptions on /sync too (#6574) 2025-12-20 00:37:46 +01:00
Mathijs van Veluw
229b58fe4e
Update crates and Rust (#6551)
* Update crates and Rust

- Updated all the crates
- Updated Rust to v1.92.0
- Updated to Alpine v3.23
- Adjusted some nightly clippy lints

Signed-off-by: BlackDex <black.dex@gmail.com>

* Add new updates

Signed-off-by: BlackDex <black.dex@gmail.com>

* Updated more crates and fix mariadb

Updated more crates
Also removed older MariaDB library since Diesel has fixed this in the v2.3.5 version.

Signed-off-by: BlackDex <black.dex@gmail.com>

* Fix icon-fetch error

Signed-off-by: BlackDex <black.dex@gmail.com>

* Update GHA workflows

Signed-off-by: BlackDex <black.dex@gmail.com>

---------

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-12-19 17:38:13 +01:00
Daniel García
061d320c7f
Add new accountKeys and masterPasswordUnlock fields (#6572)
* Add new accountKeys and masterPasswordUnlock fields

* Fmt
2025-12-19 13:34:43 +01:00
Stefan Melmuk
2c73c6c2f2
support UriMatchDefaults policy (#6570) 2025-12-19 12:07:58 +01:00
Henning
3b8af41c5f
Merge branch 'dani-garcia:main' into main 2025-12-15 13:03:46 +01:00
Stefan Melmuk
57bdab1550
add empty /api/tasks endpoint (#6557) 2025-12-14 15:32:21 +01:00
Henning
d865d9cb9f
Merge branch 'dani-garcia:main' into main 2025-12-07 12:22:44 +01:00
Stefan Melmuk
4ad8baf7be
fix email as 2fa for sso (#6495)
* fix email as 2fa for sso

* allow saving device without updating `updated_at`

* check if email is some

* allow device to be saved in postgresql

* use twofactor_incomplete table

* no need to update device.updated_at
2025-12-06 22:22:33 +01:00
Timshel
8f689d8795
Improve sso auth flow (#6205)
Co-authored-by: Timshel <timshel@users.noreply.github.com>
2025-12-06 22:20:04 +01:00
Timshel
2d91a9460b
Fix admin invite with SSO (#6498)
Co-authored-by: Timshel <timshel@users.noreply.github.com>
2025-12-06 22:14:20 +01:00
Timshel
e81e6a5060
Android want response property in camelCase (#6513)
Co-authored-by: Timshel <timshel@480s>
2025-12-06 22:13:51 +01:00
Timshel
76d0856bbe
Org.put_policy type not in body anymore (#6514)
Co-authored-by: Timshel <timshel@480s>
2025-12-06 22:12:46 +01:00
Henning
b51ddd125b
Merge branch 'dani-garcia:main' into main 2025-12-01 09:38:37 +01:00
Mathijs van Veluw
cb2f5741ac
Some small admin js/css updates (#6501)
* Some small admin js/css updates

- Updated JS libraries
- Fixed some eslint errors
- Small update on the theme icon's to be a bit smaller and better sized.
  Used OXVG via OXVGUI to shrink and optimze them.

Probably Fixes #6493

Signed-off-by: BlackDex <black.dex@gmail.com>

* Adjust the size of the moon to be more inline with the other icons

Signed-off-by: BlackDex <black.dex@gmail.com>

---------

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-11-29 22:57:57 +01:00
Mathijs van Veluw
c9d527d84f
Add option to prefer IPv6 resolving (#6494)
This PR adds an option to prefer IPv6 resolving before IPv4.
On IPv6 only systems this could be very useful, but will not solve IPv4 only domains of course.
For that you need a DNS64 + NAT64 solution

Fixes #6301

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-11-26 01:26:10 +01:00
Henning
229122f86a
Merge branch 'dani-garcia:main' into main 2025-11-25 17:58:21 +01:00
Mathijs van Veluw
7c7f4f5d4f
Update crates and Rust version (#6485)
* Update crates and Rust version

- Update all crates (where possible)
  Adjusted code where needed
- Fixed some nightly clippy lints

Signed-off-by: BlackDex <black.dex@gmail.com>

* Fix some issues/comments

Signed-off-by: BlackDex <black.dex@gmail.com>

* Update some crates

Signed-off-by: BlackDex <black.dex@gmail.com>

---------

Signed-off-by: BlackDex <black.dex@gmail.com>
Co-authored-by: Daniel García <dani-garcia@users.noreply.github.com>
2025-11-23 22:03:30 +01:00
Stefan Melmuk
aad1f19b45
fix email as 2fa provider (#6473) 2025-11-23 21:55:20 +01:00
Timshel
35e1a306f3
Fix around singleorg policy (#6247)
Co-authored-by: Timshel <timshel@users.noreply.github.com>
2025-11-23 21:54:37 +01:00
Mathijs van Veluw
7f7b412220
Fix icon redirect caching (#6487)
As reported in #6477, redirection of favicon's didn't allowed caching.
This commit fixes this by adding the `Cached` wrapper around the response.
It will use the same TTL's used for downloading icon's locally.

Also removed `_` as valid domain character, these should not be used in FQDN's at all.
Those only serve as special chars used in domain labels, mostly used in SRV or TXT records.

Fixes #6477

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-11-23 21:50:31 +01:00
Henning
1441d08b11
Merge branch 'main' into main 2025-11-17 09:22:57 +01:00
Ephemera42
319d982113
Add pm-25373-windows-biometrics-v2 feature flag (#6468) 2025-11-14 18:46:50 +01:00
Stefan Melmuk
95a0c667e4
remove invalid emergency access dummy value (#6463) 2025-11-14 18:46:42 +01:00
Joep Duin
b519832086
Fix: admin theme emoji alignment (#6459)
* Fix: admin theme dropdown emoji alignment

* Sprites
2025-11-14 18:46:31 +01:00
Henning
25fd4406b6
Merge branch 'main' into main 2025-11-13 13:32:29 +01:00
Mathijs van Veluw
2ee40d6105
Fix KDF Change with new web-vault (#6458)
The newer web-vault's use a different json to update the KDF settings.
This commit fixes this by updating the struct and adjust the validation settings.

Fixes #6457

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-11-11 19:37:32 +01:00
hnolde
2be8e7e628 Fix: reorder imports and clean up whitespace in admin.rs 2025-11-04 16:54:06 +01:00
hnolde
7e3acf26b4 Fix: update OAuth2 state storage initialization and state token encoding 2025-11-04 16:11:51 +01:00
Henning
96fe363ee5
Merge branch 'main' into main 2025-11-04 15:47:17 +01:00
Mathijs van Veluw
9017ca265a
Optimizations and build speedup (#6339)
* Optimizations and build speedup

With this commit I have changed several components to be more efficient.
This can be less llvm-lines generated or less `clone()` calls.

 ### Config
- Re-ordered the `make_config` macro to be more efficient
- Created a custom Deserializer for `ConfigBuilder` less code and more efficient
- Use struct's for the `prepare_json` function instead of generating a custom JSON object.
  This generates less code and is more efficient.
- Updated the `get_support_string` function to handle the masking differently.
  This generates less code and also was able to remove some sub-macro-calls

 ### Error
- Added an extra new call to prevent duplicate Strings in generated macro code.
  This generated less llvm-lines and seems to be more efficient.
- Created a custom Serializer for `ApiError` and `CompactApiError`
  This makes that struct smaller in size, so better for memory, but also less llvm-lines.

 ### General
- Removed `once_lock` and replace it all with Rust's std LazyLock
- Added and fixed some Clippy lints which reduced `clone()` calls for example.
- Updated build profiles for more efficiency
  Also added a new profile specifically for CI, which should decrease the build check
- Updated several GitHub Workflows for better security and use the new `ci` build profile
- Updated to Rust v1.90.0 which uses a new linker `rust-lld` which should help in faster building
- Updated the Cargo.toml for all crates to better use the `workspace` variables
- Added a `typos` Workflow and Pre-Commit, which should help in detecting spell error's.
  Also fixed a few found by it.

Signed-off-by: BlackDex <black.dex@gmail.com>

* Fix release profile

Signed-off-by: BlackDex <black.dex@gmail.com>

* Update typos and remove mimalloc check from pre-commit checks

Signed-off-by: BlackDex <black.dex@gmail.com>

* Misc fixes and updated typos

Signed-off-by: BlackDex <black.dex@gmail.com>

* Update crates and workflows

Signed-off-by: BlackDex <black.dex@gmail.com>

* Fix formating and pre-commit

Signed-off-by: BlackDex <black.dex@gmail.com>

* Update to Rust v1.91 and update crates

Signed-off-by: BlackDex <black.dex@gmail.com>

* Update web-vault to v2025.10.1 and xx to v1.8.0

Signed-off-by: BlackDex <black.dex@gmail.com>

---------

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-11-01 22:21:04 +01:00
Mathijs van Veluw
8d30285160
Fix issue with key-rotation and emergency-access (#6421)
When a user has an unconfirmed emergency-access user, and tries to do a key-rotation, the validation fails.
The reason is that Bitwarden only returns new keys for confirmed users, not for invited or accepted.

This commit fixes this by only requesting confirmed or higher status emergency-access users.

Signed-off-by: BlackDex <black.dex@gmail.com>
2025-11-01 22:20:38 +01:00
hnolde
e5c0655c74 Fix: formatting 2025-10-31 12:09:27 +01:00