Daniel García
0365b7c6a4
Add support for multiple simultaneous database features by using macros.
...
Diesel requires the following changes:
- Separate connection and pool types per connection, the generate_connections! macro generates an enum with a variant per db type
- Separate migrations and schemas, these were always imported as one type depending on db feature, now they are all imported under different module names
- Separate model objects per connection, the db_object! macro generates one object for each connection with the diesel macros, a generic object, and methods to convert between the connection-specific and the generic ones
- Separate connection queries, the db_run! macro allows writing only one that gets compiled for all databases or multiple ones
2020-08-24 20:11:17 +02:00
Jeremy Lin
d9684bef6b
Generate tokens more simply and uniformly
2020-08-22 16:07:53 -07:00
Daniel García
171b174ce9
Update dependencies
2020-08-12 18:46:28 +02:00
Daniel García
32cfaab5ee
Updated dependencies and changed rocket request imports
2020-07-23 21:07:04 +02:00
Daniel García
1e950c7dbc
Replace IP support in preparation for compiling on stable, included some tests to check that the code matches the unstable implementation
2020-07-15 00:00:03 +02:00
Daniel García
fb6f96f5c3
Updated dependencies
2020-07-14 16:08:11 +02:00
Jeremy Lin
a28ebcb401
Use local time in email notifications for new device logins
...
In this implementation, the `TZ` environment variable must be set
in order for the formatted output to use a more user-friendly
time zone abbreviation (e.g., `UTC`). Otherwise, the output uses
the time zone's UTC offset (e.g., `+00:00`).
2020-07-07 21:30:18 -07:00
Daniel García
596c9b8691
Add option to set name during HELO in email settings
2020-07-05 01:59:15 +02:00
Daniel García
d4357eb55a
Updated dependencies ans web vault version
2020-07-05 01:38:16 +02:00
Daniel García
b34d548246
Update dependencies
2020-06-22 17:15:20 +02:00
Daniel García
a2411eef56
Updated dependencies
2020-06-15 23:04:52 +02:00
Daniel García
5e802f8aa3
Update lettre to alpha release instead of git commit, and update the rest of dependencies while we are at it
2020-05-31 17:58:06 +02:00
Daniel García
80d4061d14
Update dependencies
2020-05-14 00:18:18 +02:00
Daniel García
6c5e35ce5c
Change the mails content types to more closely match what we sent before
2020-05-07 00:51:46 +02:00
Daniel García
63cbd9ef9c
Update lettre to latest master
2020-05-03 17:41:53 +02:00
Daniel García
9cca64003a
Remove unused dependency and simple feature, update dependencies and fix some clippy lints
2020-05-03 17:24:51 +02:00
Daniel García
4be8dae626
Make web vault show a more informative error when browsers block WebCrypto in insecure contexts and update dependencies
2020-04-09 22:54:31 +02:00
Daniel García
ccf6ee79d0
Update dependencies, mainly diesel and sqlite
2020-03-24 20:36:19 +01:00
Daniel García
7d9c7017c9
Merge pull request #911 from BlackDex/upgrade-rocket
...
Upgrade rocket
2020-03-16 18:17:17 +01:00
BlackDex
bd09fe1a3d
Updated code so backtraces are logged also.
2020-03-16 17:53:22 +01:00
BlackDex
3ce0c3d1a5
Update dependencies
...
Primarily updating rocket, which needed some dependencies
Latest versions of:
- ring
- time
- jsonwebtoken
- yubico
- rocket (git)
2020-03-16 16:32:33 +01:00
BlackDex
1b4b40c95d
Updated reqwest to the latest version.
...
- Use the blocking client (no async).
- Disabled gzip.
- use_sys_proxy is now default.
2020-03-14 23:12:45 +01:00
Daniel García
70f3ab8ec3
Migrate lazy_static to once_cell, less macro magic and slightly faster
2020-03-09 22:04:03 +01:00
Daniel García
b6612e90ca
Update dependencies
2020-03-09 22:00:59 +01:00
zethra
cc404b4edc
Added command line flags for help and version
...
Signed-off-by: zethra <benaagoldberg@gmail.com>
2020-03-02 15:51:57 -05:00
Daniel García
def174a517
Convert email domains to punycode
2020-01-30 22:11:53 +01:00
Daniel García
ff7b4a3d38
Update handlebars to 3.0 which included performance improvements.
...
Updated lettre to newer git revision, which should give better error messages now.
2020-01-26 15:29:14 +01:00
Daniel García
84ed185579
Update u2f to 0.2, which requires OpenSSL but also might solve the problems we've had with certificates.
...
The rust image doesn't need installing curl or tar, so removed. Also collapsed ENV lines.
2020-01-19 21:34:13 +01:00
Daniel García
9ebca99290
Update dependencies
2020-01-10 18:37:16 +01:00
Daniel García
c058a1d63c
Make sure handlebars is not updated, as the next patch version has breaking changes
2020-01-05 00:12:35 +01:00
Daniel García
95dd1cd7ad
Use rmp upstream version
2019-12-31 02:00:16 +01:00
Daniel García
4cec502f7b
Update docker images to alpine 3.11 and rust 1.40
2019-12-22 21:42:13 +01:00
Daniel García
f09996a21d
Updated dependencies
2019-12-15 15:43:56 +01:00
Daniel García
a5aa4d9b54
Updated dependencies
2019-12-06 22:07:25 +01:00
Daniel García
1e224220a8
Updated deps and fixed some lints
2019-11-28 21:59:05 +01:00
Daniel García
607521c88f
Updated dependencies
2019-11-24 14:50:43 +01:00
BlackDex
b209c1bc4d
Add an option to fetch and parse href="data:image"
...
Some sites are using base64 encoded inline images for favicons.
This will try to match those with some sane checks and return that.
These icons will have lower prio then the icons with a normal URL.
2019-11-22 13:16:12 +01:00
Daniel García
cbadf00941
Update web vault to fix twofactorauth.org integration
...
Update dependencies and toolchain
Update included equivalent domains with upstream changes
2019-11-19 20:30:09 +01:00
BlackDex
cbb92bcbc0
Updated dependencies
...
Updated some dependencies and used a git patch for lettre addressing
timeouts.
2019-11-06 21:37:51 +01:00
BlackDex
3442eb1b9d
Trying to fix issue #687
...
- Using an older commit from rocket repo
2019-11-04 14:30:24 +01:00
Daniel García
72a46fb386
Update dependencies
2019-11-02 17:39:27 +01:00
Daniel García
fccc0a4b05
Update rocket to latest master
...
Downgrade rust version to fix cargo issue
Set rustup profile to minimal
2019-10-25 21:48:10 +02:00
Daniel García
57b1d3f850
Update dependencies and docker base images
2019-10-24 20:37:17 +02:00
Daniel García
83fd44eeef
Update rust version and use minimal profile for CI
2019-10-15 21:21:37 +02:00
Daniel García
d3bd2774dc
Update dependencies to use newer SQLite
2019-10-11 22:49:47 +02:00
Daniel García
662bc27523
Updated dependencies and fixed disable_admin_token description
2019-10-08 19:33:27 +02:00
Daniel García
b73ff886c3
Use upstream rmp
2019-09-17 19:47:51 +02:00
Michael Powers
f5f9861a78
Adds support for PostgreSQL which resolves #87 and is mentioned in #246 .
...
This includes migrations as well as Dockerfile's for amd64.
The biggest change is that replace_into isn't supported by Diesel for the
PostgreSQL backend, instead requiring the use of on_conflict. This
unfortunately requires a branch for save() on all of the models currently
using replace_into.
2019-09-12 16:12:22 -04:00
Daniel García
df8114f8be
Updated client kdf iterations to 100000 and fixed some lints
2019-09-05 21:56:12 +02:00
Daniel García
469318bcbd
Updated dependencies and web vault version
2019-08-27 21:14:15 +02:00
Daniel García
9101d6e48f
Update dependencies
2019-08-18 19:31:54 +02:00
Daniel García
c9c3f07171
Updated dependencies and fixed panic getting icons
2019-07-30 19:42:05 +02:00
Daniel García
05a1137828
Move backend checks to build.rs to fail fast, and updated dependencies
2019-07-09 17:26:34 +02:00
Nick Fox
2e300da057
Fix #468 - Percent-encode the email address in invite link
2019-07-02 22:55:13 -04:00
Daniel García
76f38621de
Update dependencies and remove unwraps from Cipher::to_json
2019-06-14 22:51:50 +02:00
Daniel García
9add8e19eb
Update dependencies and remove travis unused feature
2019-06-02 00:28:20 +02:00
Nils Domrose
ee277de707
include libsqlite3-sys optionally, removed non common features
2019-05-27 23:31:56 +02:00
Nils Domrose
c11f47903a
revert include libsqlite3-sys optionally
2019-05-27 23:18:45 +02:00
Nils Domrose
6a5f1613e7
include libsqlite3-sys optionally
2019-05-27 23:07:47 +02:00
Nils Domrose
dc36f0cb6c
re-added sqlite check_db code, cleanup
2019-05-27 22:58:52 +02:00
Nils Domrose
ff759397f6
initial mysql support
2019-05-26 23:03:05 +02:00
Emil Madsen
ab95a69dc8
Rework migrations for MySQL
2019-05-20 21:12:41 +02:00
Daniel García
c0b2877da3
Update deps and swap back to official u2f crate again
2019-05-17 15:39:36 +02:00
Daniel García
95f833aacd
Update dependencies to use new ring
2019-05-15 18:10:25 +02:00
Daniel García
4f45cc081f
Update ring to 0.14, jwt to 6.0, and u2f
2019-05-11 23:18:18 +02:00
Daniel García
2a4cd24c60
Updated web vault to hide org plans again and updated dependencies
2019-05-11 22:27:51 +02:00
Daniel García
eadab2e9ca
Updated dependencies
2019-04-26 22:07:00 +02:00
Daniel García
621f607297
Update dependencies and fix some warnings
2019-04-11 15:40:19 +02:00
Daniel García
cfbeb56371
Implement user duo, initial version
...
TODO:
- At the moment each user needs to configure a DUO application and input the API keys, we need to check if multiple users can register with the same keys correctly and if so we could implement a global setting.
- Sometimes the Duo frame doesn't load correctly, but canceling, reloading the page and logging in again seems to fix it for me.
2019-04-05 22:09:53 +02:00
Daniel García
3bb46ce496
Make the syslog crate non-optional when available
2019-04-02 22:35:22 +02:00
Daniel García
c5832f2b30
With the latest fern, syslog can be a config option instead of a build flag
2019-03-29 20:27:20 +01:00
BlackDex
6b686c18f7
Fixed long e-mail message extending 1000 lines.
...
- Added quoted_printable crate to encode the e-mail messages.
- Change the way the e-mail gets build to use custom part headers.
2019-03-25 09:48:19 +01:00
Daniel García
349cb33fbd
Updated dependencies
2019-03-23 19:48:22 +01:00
Daniel García
084bc2aee3
Use final release of lettre and update dependencies
2019-03-17 14:43:22 +01:00
Daniel García
a25bfdd16d
Remove unused features from multipart (integration with other servers)
2019-03-13 15:57:00 +01:00
Daniel García
27872f476e
Update dependencies
2019-03-07 20:22:08 +01:00
Daniel García
10756b0920
Update dependencies and fix some lints
2019-02-27 17:21:04 +01:00
Daniel García
5ee04e31e5
Updated dependencies, removed some unnecessary clones and fixed some lints
2019-02-20 17:54:18 +01:00
Daniel García
274ea9a4f2
Use the latest fast_chemail crate directly, with the fix
2019-02-15 14:39:30 +01:00
Daniel García
ff2fbd322e
Update deps and fix email check
2019-02-12 15:01:02 +01:00
Daniel García
3db815b969
Implemented config form and fixed config priority
2019-02-06 17:34:30 +01:00
Daniel García
20d8d800f3
Updated dependencies
2019-02-06 17:34:29 +01:00
BlackDex
9657463717
Added better favicon downloader.
2019-01-27 15:39:19 +01:00
Daniel García
a1dc47b826
Change config to thread-safe system, needed for a future config panel.
...
Improved some two factor methods.
2019-01-25 18:24:57 +01:00
Daniel García
9d027b96d8
Update web-vault to fix U2F NotTrustedAnchor error
2019-01-24 18:43:22 +01:00
Daniel García
ce42b07a80
Update Diesel to 1.4 and other dependencies
2019-01-21 15:29:52 +01:00
Daniel García
e0aec8d373
Use new i64::to_be_bytes and remove byteorder dep
...
(https://doc.rust-lang.org/stable/std/primitive.i64.html#method.to_be_bytes )
2019-01-16 22:14:17 +01:00
Daniel García
19b6bb0fd6
Initial stab at templates
2019-01-15 15:28:46 +01:00
Daniel García
60f6a350be
Update yubico to fix OpenSSL error
2019-01-13 14:37:17 +01:00
Daniel García
f571df7367
Revert yubikey feature, not needed anymore
2019-01-12 15:28:41 +01:00
Daniel García
de51bc782e
Updated dependencies, removing need for yubico fork
2019-01-12 15:23:46 +01:00
Daniel García
1d034749f7
Fix AArch64 build by disabling yubico
2019-01-10 23:54:01 +01:00
Daniel García
1b11445bb2
Update dependencies and web vault
2019-01-08 20:28:17 +01:00
Daniel García
5f49ecd7f3
Updated dependencies to use u2f crate directly, and some style changes
2019-01-04 00:25:38 +01:00
Daniel García
72ed05c4a4
Add build script to get some Git info to later show in admin panel, and add some metadata to Cargo.toml
2018-12-30 21:43:57 +01:00
Daniel García
adb8052689
Updated Error to implement Display and Debug, instead of using custom methods
2018-12-30 21:43:56 +01:00
Daniel García
f2ab25085d
Updated dependencies, and dockerfiles to use NodeJS 10 LTS
2018-12-11 16:42:52 +01:00
Daniel García
94810c106a
Migrate to rust 2018 edition
2018-12-07 02:05:45 +01:00
Daniel García
2fde4e6933
Implemented proper logging, with support for file logging, timestamp and syslog (this last one is untested)
2018-12-06 20:35:25 +01:00
Daniel García
259a2f2982
Updated rocket to final release
2018-12-06 20:15:22 +01:00
Daniel García
8b5d97790f
Updated rocket to rc2 and rest of dependencies
2018-12-01 14:29:19 +01:00
Daniel García
e5af230315
Merge branch 'master' into rocket-0.4
...
# Conflicts:
# Cargo.toml
2018-11-19 20:45:42 +01:00
Daniel García
a1da82c868
Add online feature to yubico
2018-11-19 20:45:11 +01:00
Daniel García
a4550e51ea
Update dependencies and add /ciphers/create
2018-11-19 20:21:02 +01:00
Daniel García
5edbd0e952
Merge branch 'master' into rocket-0.4
...
# Conflicts:
# Cargo.lock
# Cargo.toml
# src/api/core/mod.rs
2018-11-19 19:52:43 +01:00
Stepan Fedorko-Bartos
5a8d5e426d
Switches to Downstream yubico with Optional libusb
2018-11-16 11:28:20 -07:00
Stepan Fedorko-Bartos
24a4478b5c
Adds yubico-rs library dep
2018-11-15 18:34:17 -07:00
Daniel García
c673370103
Updated bw_rs to Rocket version 0.4-rc1
2018-11-01 19:25:09 +01:00
Daniel García
7112c86471
Updated dependencies, removed valid mail check (now done by lettre), and updated global domains file
2018-10-04 00:01:04 +02:00
Daniel García
c169095128
Update dependencies to point to upstream lettre
2018-09-20 22:45:19 +02:00
Daniel García
3df31e3464
Temp fix for OpenSSL 1.1.1 compatibility
2018-09-19 21:45:50 +02:00
Daniel García
638a0fd3c3
Updated dependencies
2018-09-19 21:43:03 +02:00
Daniel García
928e2424c0
Updated dependencies and fixed errors
2018-09-13 16:05:13 +02:00
Daniel García
a01fee0b9f
Merge branch 'ws'
...
# Conflicts:
# Cargo.toml
# src/api/core/ciphers.rs
# src/main.rs
2018-09-13 15:59:45 +02:00
Daniel García
b63693aefb
Merge pull request #137 from stammw/master
...
SMTP implementation, along with password HINT email
2018-09-11 14:58:09 +02:00
Daniel García
d70864ac73
Initial version of websockets notification support.
...
For now only folder notifications are sent (create, rename, delete).
The notifications are only tested between two web-vault sessions in different browsers, mobile apps and browser extensions are untested.
The websocket server is exposed in port 3012, while the rocket server is exposed in another port (8000 by default). To make notifications work, both should be accessible in the same port, which requires a reverse proxy.
My testing is done with Caddy server, and the following config:
```
localhost {
# The negotiation endpoint is also proxied to Rocket
proxy /notifications/hub/negotiate 0.0.0.0:8000 {
transparent
}
# Notifications redirected to the websockets server
proxy /notifications/hub 0.0.0.0:3012 {
websocket
}
# Proxy the Root directory to Rocket
proxy / 0.0.0.0:8000 {
transparent
}
}
```
This exposes the service in port 2015.
2018-08-30 17:58:53 +02:00
Daniel García
39891e86a0
Updated dependencies, added Travis CI integration and some badges
2018-08-24 17:07:11 +02:00
Miroslav Prasil
69a18255c6
Bump up version to 1.0.0
2018-08-21 21:21:54 +01:00
Miroslav Prasil
c40baf5e17
Merge branch 'master' into beta
2018-08-21 21:17:12 +01:00
Miroslav Prasil
df041108f6
Bump version to 0.13.0 - latest Vault v1
2018-08-21 21:13:56 +01:00
Jean-Christophe BEGUE
9e63985b28
Check email validity before using it for password hint sending
2018-08-16 21:25:28 +02:00
Jean-Christophe BEGUE
812387e586
SMTP integration, send password hint by email.
2018-08-15 08:45:18 +02:00
Miroslav Prasil
b163aeb8ca
Merge changes in master to beta branch (concurrency fixes)
2018-08-01 11:37:42 +01:00
Shane A. Faulkner
d335f45e34
Bump version to 0.12.0
2018-07-31 12:07:03 -05:00
Daniel García
a291dea16f
Updated dependencies and Docker image to new web-vault
2018-07-21 17:27:00 +02:00
Miroslav Prasil
2dc1427027
Bump the version
2018-07-18 12:04:48 +01:00
Daniel García
03172a6cd7
Bump version to 0.10.0
2018-07-13 16:06:01 +02:00
Daniel García
dae92b9018
Implemented U2F, refactored Two Factor authentication, registering U2F device and authentication should work. Works on Chrome on MacOS with a virtual device.
2018-07-12 22:22:10 +02:00
Daniel García
7d01947173
Updated dependencies and rust version
2018-06-29 23:18:19 +02:00
Daniel García
f72efa899e
Updated dependencies and created 'rust-toolchain', to mark a working nightly to rustup users, and hopefully avoid some nightly breakage.
2018-06-12 17:30:36 +02:00
Daniel García
f1b4a146ae
Updated version
2018-06-01 16:06:25 +02:00
Daniel García
b46e9c936d
Updated dependencies and removed some warnings from jsonwebtoken
2018-06-01 15:34:26 +02:00
Miroslav Prasil
103acd1747
Update rocket to 0.3.12
2018-06-01 13:19:05 +01:00
Miroslav Prasil
571ef6823d
Update rocket to 0.3.11
2018-05-21 13:20:34 +01:00
Daniel García
8298795087
Update dependencies and bundle SQLite with the program, so we have one less dependency to install separately
2018-05-07 21:33:54 +02:00
Daniel García
3a1321a5a9
Updated some dependencies and removed old unused attribute that might create compile errors
2018-04-24 15:49:38 +02:00
Daniel García
b4a42054f9
Updated dependencies and removed deprecated Diesel feature
2018-04-18 12:17:25 +02:00
Miroslav Prasil
49d080a97e
Bump the rocket version to compile with current nightly
2018-04-18 10:40:25 +01:00
Daniel García
9116253ae5
Updated dependencies
2018-03-21 00:08:46 +01:00
Daniel García
66097e5f12
r2d2_diesel is included in diesel since 1.1, so we don't need the dependencies directly.
...
Same thing with time, included in chrono
2018-03-07 18:41:34 +01:00
Daniel García
1277cb099d
Updated Cipher API with breaking changes, and included backwards compatibility
2018-03-06 20:34:30 +01:00
Daniel García
e2f7f56a81
Removed unused test library that broke with latest nightly, and updated dependencies
2018-03-01 14:36:39 +01:00
Daniel García
e9a771057e
Reduced Docker final image and updated dependencies
2018-02-18 19:14:25 +01:00
Daniel García
b54684b677
Upload and download attachments, and added License file
2018-02-15 00:40:34 +01:00
Daniel García
5cd40c63ed
First working version
2018-02-10 01:00:55 +01:00