Commit Graph

265 Commits

Author SHA1 Message Date
083ff3fd5d update to tokio 0.2.0-alpha.4
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-09-02 15:21:26 +02:00
43597bf30b switch to futures 0.3
* cleanup Cargo.toml
* pull in tower_service (required for newer hyper)
* use local hyper-openssl fixup (its Cargo.toml has broken
  outdated dependencies)
* add pin-utils dependency

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-09-02 15:17:58 +02:00
26c945d3a3 bump zstd-sys version 2019-09-02 11:40:22 +02:00
7d83440c60 remove proxmox-protocol subcrate
AFAICT we have no use for it anymore, its api entry points
are gone. If we do end up needing something from it, it's
still in the git history anyway. (And about two thirds of it
can be made much less awkward by utilizing async-await
anyway, so no love lost there...)

Moved the chunker back into src/backup/chunker.rs

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-08-22 14:08:25 +02:00
170535addd update to nix 0.15
The proxmox crate now needs it.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-08-21 12:26:10 +02:00
e18a6c9ee5 update to nix 0.14, use code from proxmox:tools 2019-08-03 13:05:38 +02:00
c8fc4fec8d Cargo.toml: update to latest hyper version
Which already includes our path.
2019-07-15 13:37:27 +02:00
6d1f61b208 use hyper/tokio-openssl instead of hyper/tokio-tls
This exposes the complete SSL setup. And download is much faster
now (600MB/s instead of 130MB/s)!
2019-07-02 13:36:28 +02:00
8fad30a4b1 use latest hyper master branch to include socket buffer size fix 2019-07-02 07:09:46 +02:00
a7f67a9a9c depend on crc32fast
We can use this to compute fast checksums to test file integrity (not crypto safe).
2019-06-21 15:58:00 +02:00
11515438cc Cargo.toml: use serde feature derive 2019-06-18 06:23:25 +02:00
a70b2aeb48 use ssh+git for the proxmox repository
This works for me, note the `ssh://` protocol, and using `/`
to separate the path instead of `:`.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-06-12 13:16:37 +02:00
a207352d68 depend on ../proxmox/proxmox
I was unable to use a git url ...
2019-06-07 17:34:53 +02:00
e3975c2c47 bump zstd-sys version
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-06-05 09:44:43 +02:00
5e0f305142 src/api_schema/format.rs: depend on textwrap, new wrap_text helper 2019-06-04 12:42:02 +02:00
9cdda3f7c7 tools: add helpful vector and read operations
After importing the I/O ops trait via:
    use crate::tools::io::ops::*;

Instead of:
    let mut buffer = vec![0u8; 65536];
    file.read_exact(&mut buffer)?;
use:
    let buffer = file.read_exact_allocated(65536)?;

After importing the vector helpers via:
    use crate::tools::vec::{self, ops::*};

For a buffer which *could* be uninitialized but you prefer
zero-initialization anyway for security reasons, instead of:
    let mut buffer = vec![0u8; len];
use:
    let mut buffer = vec::undefined(len);
which zero-initializes, but, if the `valgrind` feature flag
is enabled, marks the vector as having undefined contents,
so reading from it will cause valgrind errors.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-05-23 09:49:10 +02:00
cf639a47de rc/client/http_client.rs: add experimental h2 upgrade code 2019-04-29 11:57:58 +02:00
152764ec15 src/api2/admin/datastore/h2upload.rs: add test code for http2 2019-04-27 08:57:35 +02:00
8c3c63fad0 use endian_trait arrays feature 2019-04-23 14:23:36 +02:00
7a630df709 implement server state/signal handling, depend on tokio-signal 2019-04-08 13:59:07 +02:00
a650f50301 src/tools/process_locker.rs: implement inter-process reader-writer locks 2019-03-22 08:05:51 +01:00
b6b012e3c0 add missing mio crate for signalfd
This is what actually provides EventedFd used by tokio.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-03-12 08:05:59 +01:00
d04c67b8a9 cargo: patch zstd-sys to use system library
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-03-07 12:18:38 +01:00
cd3b9a068f Revert "TEMP: dynamically link against liblz4 for testing"
This reverts commit dc04ce7fe5.
2019-03-07 12:18:38 +01:00
141f062e08 src/backup/chunk_store.rs: use zstd compression insteadf of lz4
Provides better compressionm rate, and is still fast.
2019-03-07 11:42:59 +01:00
dc04ce7fe5 TEMP: dynamically link against liblz4 for testing
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-03-07 08:44:32 +01:00
6716f30bbc add protocol test client
This uses futures for everything which is mostly useful as a
test to see if the protocol crate's non-blocking I/O support
can handle it...

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-03-06 10:26:12 +01:00
e2d007f76e api2/admin/datastore: add a backup protocol test api path
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-03-06 10:26:12 +01:00
ba3a60b2a4 src/client/http_client.rs: store/load ticket in xdg runtime dir, depend on crate xdg 2019-03-05 12:56:21 +01:00
78216a5ab1 src/backup/chunk_store.rs: use lz4 for compression
And depend on lz4 lib now.
2019-02-25 10:00:28 +01:00
1d77b6cf6b update to pam 0.7 (renamed from pam-auth)
It now supports custom conversation methods, so instead of
new() we ask for a default authenticator taking a password
via with_password(). Since the password is now handled by
the now separate conversation handler, `set_credentials()`
is now called on the handler we get via `.get_handler()`.

Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-02-15 10:34:40 +01:00
4a3f65172c client: use hyper-tls for now
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-02-13 11:03:09 +01:00
0d176f3681 proxy: use TLS via tokio-tls
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-02-04 14:56:07 +01:00
c82bc1a1f9 depend on pam-auth, use pam for root login
Please use username "root@pam" for login via GUI.
2019-02-01 09:30:50 +01:00
8d04280b29 tools/ticket.rs: add basic ticket support 2019-01-29 12:59:07 +01:00
d96d82736d use crate log and syslog 2019-01-26 10:56:11 +01:00
7e13b2d67f api2/subscription.rs: add subscription api class 2019-01-22 12:50:19 +01:00
059ca7c3a1 remove crate tokio-codec (seems to be part of tokio now) 2019-01-20 14:28:06 +01:00
8e89d9cafe tools/wrapped_reader_stream.rs: use tokio_threadpool::blocking 2019-01-20 10:28:51 +01:00
832d805cdd use newer versions 2019-01-20 10:06:47 +01:00
95cea65b04 backup/datastore.rs: list all index files using walkdir crate 2019-01-18 12:24:58 +01:00
40c45a4b98 Cargo.toml: [lib] has no authors/version
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2019-01-08 12:47:35 +01:00
ad827b3f44 depend on endian_trait 2019-01-07 14:59:33 +01:00
46b6fbd6ae use external crate siphasher
Because std:#️⃣:SipHasher is deprecated.
2018-12-28 19:50:07 +01:00
7b2b40a893 use openssl for faster hashing 2018-12-22 14:31:59 +01:00
fe0e04c69c use proxmox-backup as package name 2018-12-20 10:45:14 +01:00
08481a0b60 impl sweep_used_chunks, first try 2018-12-19 09:51:33 +01:00
4818c8b6f7 start implementing ImageIndexReader 2018-12-16 14:44:44 +01:00
d13e3745b3 image_index.rs: write header 2018-12-15 17:05:49 +01:00
b6e8dd39aa impl bash completion: first try 2018-12-11 14:21:05 +01:00