]>
git.proxmox.com Git - proxmox-backup.git/log
Wolfgang Bumiller [Wed, 11 Sep 2019 11:59:56 +0000 (13:59 +0200)]
buildsys: add 'make lint'
for now we only activate lints for code that is "outright
wrong"
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 11 Sep 2019 11:57:58 +0000 (13:57 +0200)]
clippy: collapse identical if branches
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 11 Sep 2019 11:57:21 +0000 (13:57 +0200)]
fixup variable naming
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 11 Sep 2019 11:56:09 +0000 (13:56 +0200)]
clippy: use write_all in file logger
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 11 Sep 2019 11:55:56 +0000 (13:55 +0200)]
clippy: fix pointer to temporary value
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 11 Sep 2019 10:31:39 +0000 (12:31 +0200)]
clippy: remove a loop{} which never actually loops
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 11 Sep 2019 10:23:11 +0000 (12:23 +0200)]
more clippy fixups
mostly indentation changes, view with `-w`
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 11 Sep 2019 10:06:59 +0000 (12:06 +0200)]
some clippy fixups
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 11 Sep 2019 10:07:33 +0000 (12:07 +0200)]
remove Cargo.lock
we currently have no git dependencies we need to lock into
specific revisions anymore
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Christian Ebner [Tue, 10 Sep 2019 15:33:15 +0000 (17:33 +0200)]
src/pxar/fuse.rs: s/Buf/ReplyBuf/ and s/BufState/ReplyBufState/
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Tue, 10 Sep 2019 15:14:27 +0000 (17:14 +0200)]
src/pxar/fuse.rs: refactor stat and fix i-node mapping
The functionality of stat is split into smaller sub-functions, which allows
to reuse them more flexible, as the code flow is similar but not always the same.
By this, the ugly and incorrect re-setting of the i-node in the lookup callback
function is avoided.
The correct i-node is now calculated beforehand and stat simply creates a
`libc::stat` struct from the provided parameters.
Also, this fixes incorrect i-node assignments in the readdir callback function.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 9 Sep 2019 16:27:32 +0000 (18:27 +0200)]
src/pxar/fuse.rs: impl readdir callback for fuse
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 9 Sep 2019 16:27:31 +0000 (18:27 +0200)]
src/pxar/fuse.rs: impl readlink callback for fuse
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 9 Sep 2019 16:27:30 +0000 (18:27 +0200)]
src/pxar/decoder.rs: read_link has to read filename before entry.
The offset points to the start of the item, which is the filename
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 9 Sep 2019 16:27:29 +0000 (18:27 +0200)]
src/pxar/fuse.rs: impl opendir callback for fuse
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 9 Sep 2019 16:27:28 +0000 (18:27 +0200)]
src/pxar/fuse.rs: impl read callback for fuse
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 9 Sep 2019 16:27:27 +0000 (18:27 +0200)]
src/pxar/fuse.rs: impl open callback for fuse
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 9 Sep 2019 16:27:26 +0000 (18:27 +0200)]
src/pxar/fuse.rs: impl lookup callback for fuse
The lookup call checks if the given filename is found in the directory referenced
by the i-node by calclulating the filenames hash and looking it up in the
directories goodbye table.
If found, the entries parameters are returned.
In order to be able to lookup the parent offset by a given file offset in the
readdir callback, this also stores the corresponding values in a HashMap.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 9 Sep 2019 16:27:25 +0000 (18:27 +0200)]
src/pxar/decoder.rs: correctly handle hardlinks in `Decoder`s attribute function
If the attributes are then returned by seeking to the new offset.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 9 Sep 2019 16:27:24 +0000 (18:27 +0200)]
src/pxar/decoder.rs: split functionality of list_dir into list_dir and goodbye_table
In order to read the contents of the goodbye table while keeping the
functionality of list_dir in place as is.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 9 Sep 2019 16:27:23 +0000 (18:27 +0200)]
src/pxar/decoder.rs: make read_directory_entry usable by fuse
... and thereby allow it to read a single directory entry based on the
start and end archive offsets.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 9 Sep 2019 16:27:22 +0000 (18:27 +0200)]
src/pxar/decoder.rs: remove `DirectoryEntry` start_offset and end_offset functions
... as they are not needed with the latest iteration of the fuse callback
function impl (which never made it into the repos).
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Mon, 9 Sep 2019 16:27:21 +0000 (18:27 +0200)]
src/pxar/decoder.rs: correctly read, check and skip filename
The previous implementation simply skipped over `size` bytes, which is not
correct as size includes also the header.
By relying on `SequentailDecoder`s read_filename function, this is correctly
taken care of plus some more integrity checks.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Dietmar Maurer [Mon, 9 Sep 2019 08:51:08 +0000 (10:51 +0200)]
avoid injecting ENV vars from Makefile
So that we can run "cargo build" without setting vars manually.
Christian Ebner [Fri, 6 Sep 2019 09:38:28 +0000 (11:38 +0200)]
src/pxar/fuse.rs: impl getattr callback for fuse
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Fri, 6 Sep 2019 09:38:27 +0000 (11:38 +0200)]
src/pxar/fuse.rs: Refactor run_in_context and remove inode_to_offset and offset_to_inode
as their functionality is used only once so it makes more sense to keep them
inline.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Fri, 6 Sep 2019 09:38:26 +0000 (11:38 +0200)]
src/pxar/fuse.rs: Improve comments, add rustfmt skip tag and reafctor
Also, removes an unused println statement in the decoder callback function and
fixes a typo.
Further, use ABI compatible Option<&T> for FFI to avoid use of raw pointers.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Wolfgang Bumiller [Fri, 6 Sep 2019 08:12:24 +0000 (10:12 +0200)]
update hyper & h2 to alpha releases on crates.io
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Fri, 6 Sep 2019 06:55:47 +0000 (08:55 +0200)]
src/client/http_client.rs: use async for upload_speedtest()
Christian Ebner [Thu, 5 Sep 2019 15:27:58 +0000 (17:27 +0200)]
src/pxar/decoder.rs: impl functionality needed for fuse implementation
Implements functions attributes, open, read, read_link and get_dir
to be used by the fuse implementation which uses file offsets within the archive
as inodes to reference the archives items.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Thu, 5 Sep 2019 11:17:40 +0000 (13:17 +0200)]
src/pxar/decoder.rs: Add comment for unsolved issue and refactor if statement.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Dietmar Maurer [Thu, 5 Sep 2019 13:07:37 +0000 (15:07 +0200)]
src/client/http_client.rs: simplify send_request
Dietmar Maurer [Thu, 5 Sep 2019 12:56:52 +0000 (14:56 +0200)]
src/client/http_client.rs: use async for h2api_response()
Dietmar Maurer [Thu, 5 Sep 2019 12:16:45 +0000 (14:16 +0200)]
src/client/http_client.rs - download_chunk_list: simplify async code
Dietmar Maurer [Thu, 5 Sep 2019 11:25:17 +0000 (13:25 +0200)]
src/client/http_client.rs - H2Client: fix error message in download()
Dietmar Maurer [Thu, 5 Sep 2019 11:12:03 +0000 (13:12 +0200)]
src/client/http_client.rs: use async for download_chunk_list
Dietmar Maurer [Thu, 5 Sep 2019 10:55:22 +0000 (12:55 +0200)]
src/client/http_client.rs - BackupClient: use async
Dietmar Maurer [Wed, 4 Sep 2019 12:52:19 +0000 (14:52 +0200)]
src/client/http_client.rs - BackupClient: use async
Dietmar Maurer [Wed, 4 Sep 2019 11:57:05 +0000 (13:57 +0200)]
src/client/http_client.rs - BackupReader: use async
Dietmar Maurer [Thu, 5 Sep 2019 09:40:48 +0000 (11:40 +0200)]
src/backup/catalog_blob.rs: use write_all() instead of write()
To correctly handle interrupted system calls.
Dietmar Maurer [Wed, 4 Sep 2019 10:47:01 +0000 (12:47 +0200)]
src/client/http_client.rs: use async for more functions
Dietmar Maurer [Wed, 4 Sep 2019 08:01:46 +0000 (10:01 +0200)]
src/client/http_client.rs: use async for login()
Dietmar Maurer [Wed, 4 Sep 2019 07:57:29 +0000 (09:57 +0200)]
src/client/http_client.rs: use async for credentials
Dietmar Maurer [Wed, 4 Sep 2019 06:47:14 +0000 (08:47 +0200)]
src/bin/proxmox-backup-client.rs: verify blob/catlog checksums
Christian Ebner [Tue, 3 Sep 2019 12:14:32 +0000 (14:14 +0200)]
src/pxar/sequential_decoder.rs: make functions needed in non-sequential decoder accessible from within crate
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Tue, 3 Sep 2019 12:14:31 +0000 (14:14 +0200)]
src/pxar/format_definitions.rs: move header type in PxarHeader and hash in PxarGoodbyeItem to top of struct
By this it is possible to read and check just the first u64 of the corresponding
structs in order to identify the items.
This is needed for the fuse implementation in order to get entries based on the
archive offset, used as inode.
Directories are referenced by the offset to the goodbye tail while other items
are referenced by the offset of the filename followed by the entry.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Tue, 3 Sep 2019 12:14:30 +0000 (14:14 +0200)]
src/pxar/fuse.rs: add function to map offset to inode and vice versa
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Tue, 3 Sep 2019 12:14:29 +0000 (14:14 +0200)]
src/pxar/decoder.rs: add getter functions to obtain start/end offsets for directories
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Tue, 3 Sep 2019 11:17:02 +0000 (13:17 +0200)]
src/pxar/decoder.rs: rustfmt fixups
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Christian Ebner [Tue, 3 Sep 2019 14:17:23 +0000 (16:17 +0200)]
src/bin/proxmox-backup-client.rs: refactoring of match statement
Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
Dietmar Maurer [Tue, 3 Sep 2019 11:31:13 +0000 (13:31 +0200)]
src/bin/proxmox-backup-client.rs: code cleanup - factor out some functions
Dietmar Maurer [Tue, 3 Sep 2019 11:15:44 +0000 (13:15 +0200)]
src/backup.rs: define INDEX_BLOB_NAME here
Dietmar Maurer [Tue, 3 Sep 2019 11:12:16 +0000 (13:12 +0200)]
src/bin/proxmox-backup-client.rs - restore: verify checksums
Dietmar Maurer [Tue, 3 Sep 2019 11:11:45 +0000 (13:11 +0200)]
src/backup/fixed_index.rs: new helper to compute checksum and file size
Dietmar Maurer [Tue, 3 Sep 2019 11:11:09 +0000 (13:11 +0200)]
src/backup/dynamic_index.rs: new helper to compute checksum and file size
Dietmar Maurer [Tue, 3 Sep 2019 11:10:18 +0000 (13:10 +0200)]
src/client/http_client.rs: fix dynamic index checksum
Wolfgang Bumiller [Tue, 3 Sep 2019 09:17:33 +0000 (11:17 +0200)]
comment fixup
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 3 Sep 2019 09:16:29 +0000 (11:16 +0200)]
tools: add tokio::main() replacement
to deal with block_on() not allowing blocking()
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 3 Sep 2019 08:05:45 +0000 (10:05 +0200)]
add WrappedReaderStream test
Mostly to just document the rt.block_on() issue with
blocking().
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 3 Sep 2019 06:58:46 +0000 (08:58 +0200)]
Makefile: fixup: remove references to proxmox-protocol
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 2 Sep 2019 13:22:36 +0000 (15:22 +0200)]
merge fixup
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 2 Sep 2019 13:17:03 +0000 (15:17 +0200)]
add Cargo.lock
because we're currently using alpha releases...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 2 Sep 2019 13:16:21 +0000 (15:16 +0200)]
update to tokio 0.2.0-alpha.4
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 2 Sep 2019 13:14:55 +0000 (15:14 +0200)]
drop hyper_openssl
We can use .await now, which means the whole connection
state machine doesn't need to be typed out as "types"
anymore, so, at least until hyper_openssl gets updated to
proper dependencies, let's drop it.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 2 Sep 2019 13:13:54 +0000 (15:13 +0200)]
add generic either-or AsyncRead/Write type
The HttpsConnector will use this. Instead of implementing a
specialized MaybeTlsStream, this is simply a generic "either
this or that kind of Async Read/Write type".
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 2 Sep 2019 11:04:44 +0000 (13:04 +0200)]
src/server/state.rs: update to tokio alpha.2
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 2 Sep 2019 10:40:53 +0000 (12:40 +0200)]
src/server/rest.rs: use tokio::timer::delay
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 29 Aug 2019 08:05:43 +0000 (10:05 +0200)]
tests/worker-task-abort.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 11:30:27 +0000 (13:30 +0200)]
src/tools/wrapped_reader_stream.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 10:22:15 +0000 (12:22 +0200)]
src/tools/futures.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 11:47:30 +0000 (13:47 +0200)]
src/tools/daemon.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 26 Aug 2019 11:44:00 +0000 (13:44 +0200)]
src/tools/broadcast_future.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 10:20:49 +0000 (12:20 +0200)]
src/tools/async_mutex.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 27 Aug 2019 07:18:39 +0000 (09:18 +0200)]
src/server/worker_task.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 11:41:38 +0000 (13:41 +0200)]
src/server/state.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 26 Aug 2019 11:33:38 +0000 (13:33 +0200)]
src/server/rest.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 12:11:14 +0000 (14:11 +0200)]
src/server/h2service.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 13:00:18 +0000 (15:00 +0200)]
src/server/command_socket.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 26 Aug 2019 11:40:24 +0000 (13:40 +0200)]
src/client/remote_chunk_reader.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 12:36:51 +0000 (14:36 +0200)]
src/client/pxar_backup_stream.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 11:43:17 +0000 (13:43 +0200)]
src/client/pipe_to_stream.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 12:31:23 +0000 (14:31 +0200)]
src/client/merge_known_chunks.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 12:33:48 +0000 (14:33 +0200)]
src/client/http_client.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 29 Aug 2019 07:58:20 +0000 (09:58 +0200)]
src/bin/upload-speed.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 29 Aug 2019 07:55:49 +0000 (09:55 +0200)]
src/bin/test_chunk_speed2.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 29 Aug 2019 07:45:34 +0000 (09:45 +0200)]
src/bin/proxmox-backup-proxy.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 28 Aug 2019 15:20:32 +0000 (17:20 +0200)]
src/bin/proxmox-backup-client.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 28 Aug 2019 14:11:01 +0000 (16:11 +0200)]
src/bin/proxmox-backup-api.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 28 Aug 2019 14:01:10 +0000 (16:01 +0200)]
src/bin/h2s-server.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 28 Aug 2019 13:50:40 +0000 (15:50 +0200)]
src/bin/h2server.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 28 Aug 2019 13:05:45 +0000 (15:05 +0200)]
src/bin/h2s-client.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 28 Aug 2019 13:37:57 +0000 (15:37 +0200)]
src/bin/h2client.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 28 Aug 2019 13:30:25 +0000 (15:30 +0200)]
src/bin/download-speed.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 12:20:18 +0000 (14:20 +0200)]
src/backup/index.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 11:41:30 +0000 (13:41 +0200)]
src/backup/chunk_stream.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 26 Aug 2019 11:44:54 +0000 (13:44 +0200)]
src/api_schema/router.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 27 Aug 2019 11:55:41 +0000 (13:55 +0200)]
src/api2/reader.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 23 Aug 2019 11:44:13 +0000 (13:44 +0200)]
src/api2/backup/upload_chunk.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 28 Aug 2019 07:58:39 +0000 (09:58 +0200)]
src/api2/backup.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 27 Aug 2019 11:54:50 +0000 (13:54 +0200)]
src/api2/admin/datastore.rs: switch to async
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>