e993db91cd 
					 
					
						
						
							
							pxar: introduce fs_feature_flags obtained from filesystem magic in Encoder  
						
						... 
						
						
						
						Not all filesystems support features such as xattrs,acl,... and trying to get
them is rather expensive.
By getting the supported features based on the filesystem magic and masking the
user set feature flags, unsupported features are excluded rather inexpensively
while encoding the archive.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com > 
						
						
					 
					
						2019-06-07 11:08:20 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1f319e766e 
					 
					
						
						
							
							src/pxar/encoder.rs: refactoring: use ioctl calls from src/tools/fs.rs instead of local  
						
						... 
						
						
						
						Signed-off-by: Christian Ebner <c.ebner@proxmox.com > 
						
						
					 
					
						2019-06-07 11:08:06 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9b77388f2a 
					 
					
						
						
							
							src/pxar/encoder.rs: minor refactoring  
						
						... 
						
						
						
						Signed-off-by: Christian Ebner <c.ebner@proxmox.com > 
						
						
					 
					
						2019-06-07 11:07:55 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a4cc8eb7c5 
					 
					
						
						
							
							src/pxar/encoder.rs: check if ioctl supported by filesystem  
						
						... 
						
						
						
						Reading the quota project id relies on a ioctl call to get fsxattr.
On FUSE filesystems, ioctl calls might not be supported and will fail with
an errno indicating no support.
For these cases, the error is ignored and the default project id is used
(indicated by returning Ok(None)).
Signed-off-by: Christian Ebner <c.ebner@proxmox.com > 
						
						
					 
					
						2019-06-07 11:07:31 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4800df7ba6 
					 
					
						
						
							
							src/api2/admin/datastore.rs: remove test-upload api  
						
						
						
						
					 
					
						2019-06-07 07:52:11 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						113898d7e9 
					 
					
						
						
							
							src/api2/admin/datastore/upload.rs: remove unused upload api  
						
						
						
						
					 
					
						2019-06-07 07:39:41 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4247fccb0f 
					 
					
						
						
							
							src/client/http_client.rs: automatically close connection in finish  
						
						
						
						
					 
					
						2019-06-05 11:41:50 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						cb4426b348 
					 
					
						
						
							
							make h2 client connection cancellable  
						
						... 
						
						
						
						Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-06-05 09:45:59 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e3975c2c47 
					 
					
						
						
							
							bump zstd-sys version  
						
						... 
						
						
						
						Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-06-05 09:44:43 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						986bef16be 
					 
					
						
						
							
							src/backup.rs; use a macro to define PROXMOX_BACKUP_PROTOCOL_ID_V1  
						
						... 
						
						
						
						So that we can include it in static doc strings. 
						
						
					 
					
						2019-06-05 08:41:20 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c9ec0956cf 
					 
					
						
						
							
							src/backup.rs: define const PROXMOX_BACKUP_PROTOCOL_ID_V1  
						
						
						
						
					 
					
						2019-06-05 08:12:13 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						44c54845b3 
					 
					
						
						
							
							src/tools/xattr.rs: fix test when run as root  
						
						
						
						
					 
					
						2019-06-05 07:57:42 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7773ccc11f 
					 
					
						
						
							
							src/api2.rs: move backup api to /backup  
						
						
						
						
					 
					
						2019-06-05 07:23:21 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						97eeea3b4a 
					 
					
						
						
							
							src/bin/proxmox-backup-proxy.rs: fix typo in pkcs12 error message  
						
						... 
						
						
						
						Signed-off-by: Christian Ebner <c.ebner@proxmox.com > 
						
						
					 
					
						2019-06-05 06:29:02 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1ce2f7cfb9 
					 
					
						
						
							
							src/pxar/encoder.rs: style fix  
						
						
						
						
					 
					
						2019-06-05 06:27:39 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e7b60a16c8 
					 
					
						
						
							
							pxar: impl storing/dumping/restoring of quota project ids  
						
						... 
						
						
						
						Allows to store/dump/restore the quota project id associated with an inode in
order to correctly restore project quotas.
The project id is obtained/set via ioctl calls getting/setting the fsxattr
associated with the given file descriptor.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com > 
						
						
					 
					
						2019-06-05 06:26:02 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7312ab9eef 
					 
					
						
						
							
							src/pxar/format_definition.rs: add CA_FORMAT_QUOTA_PROJID and CaFormatQuotaProjID  
						
						... 
						
						
						
						Defines the types needed to store/restore quota project ids in pxar
Signed-off-by: Christian Ebner <c.ebner@proxmox.com > 
						
						
					 
					
						2019-06-05 06:23:06 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						042babe4e7 
					 
					
						
						
							
							src/tools/fs.rs: impl ioctl calls to get/set fsxattr  
						
						... 
						
						
						
						This implements fs_ioc_fsgetxattr/fs_ioc_fssetxattr calls in order to read or
write fsxattr for a given file descriptor.
This is needed in order to read or write the quota project id for filesystems
which support project quotas (EXT4/XFS/FUSE).
Signed-off-by: Christian Ebner <c.ebner@proxmox.com > 
						
						
					 
					
						2019-06-05 06:22:49 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						177db84b82 
					 
					
						
						
							
							docs/backup-protocol.rst: add backup protocol docs  
						
						
						
						
					 
					
						2019-06-04 17:33:12 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						22e5aa1d3e 
					 
					
						
						
							
							src/bin/dump-backup-api.rs: helper to generate backup API docs  
						
						
						
						
					 
					
						2019-06-04 13:12:42 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						5e0f305142 
					 
					
						
						
							
							src/api_schema/format.rs: depend on textwrap, new wrap_text helper  
						
						
						
						
					 
					
						2019-06-04 12:42:02 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						339ddfcbfa 
					 
					
						
						
							
							src/cli/command.rs: move doc generator code to src/api_schema/format.rs  
						
						
						
						
					 
					
						2019-06-04 12:32:22 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ef39bf95b3 
					 
					
						
						
							
							src/client/http_client.rs - upload_config: improve error message  
						
						
						
						
					 
					
						2019-06-03 10:53:09 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						ec8a9bb953 
					 
					
						
						
							
							src/bin/proxmox-backup-client.rs: implement upload_config  
						
						
						
						
					 
					
						2019-06-03 10:39:44 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						39d6846e1e 
					 
					
						
						
							
							src/api2/admin/datastore/backup.rs: implement config file upload  
						
						
						
						
					 
					
						2019-06-03 09:45:14 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						1c0472e88f 
					 
					
						
						
							
							avoid compiler warnings  
						
						
						
						
					 
					
						2019-06-03 06:43:47 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						36898ffce6 
					 
					
						
						
							
							src/backup/chunk_stream.rs: add optional chunk_size parameter  
						
						
						
						
					 
					
						2019-05-30 13:28:24 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						49ef316bcd 
					 
					
						
						
							
							src/bin/proxmox-backup-client.rs: backup_image() - pass correct chunk size  
						
						
						
						
					 
					
						2019-05-30 12:52:12 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						202cadc29e 
					 
					
						
						
							
							src/bin/proxmox-backup-client.rs: remove unused code  
						
						
						
						
					 
					
						2019-05-30 12:47:35 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6af905c18f 
					 
					
						
						
							
							src/bin/proxmox-backup-client.rs: implement image/block-device upload  
						
						
						
						
					 
					
						2019-05-30 12:46:01 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						eb1804c567 
					 
					
						
						
							
							src/bin/proxmox-backup-client.rs: use std lib instead of nix  
						
						
						
						
					 
					
						2019-05-30 12:19:23 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						6e907505aa 
					 
					
						
						
							
							src/bin/proxmox-backup-client.rs: fix file type test  
						
						
						
						
					 
					
						2019-05-30 12:08:34 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						96482891ae 
					 
					
						
						
							
							src/api2/admin/datastore/backup/environment.rs: log upload statistics  
						
						
						
						
					 
					
						2019-05-30 09:21:19 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						642322b433 
					 
					
						
						
							
							src/api2/admin/datastore/backup.rs: use separate api entry points for chunk upload  
						
						... 
						
						
						
						So that we can provide better statistics (patches follows). 
						
						
					 
					
						2019-05-30 09:21:19 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						390e83c9b9 
					 
					
						
						
							
							typo fix and doc improvement  
						
						... 
						
						
						
						Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-05-29 11:57:28 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						7fb49397d5 
					 
					
						
						
							
							doc fixup  
						
						... 
						
						
						
						Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-05-29 11:56:14 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						382609b04e 
					 
					
						
						
							
							tools: add Cancellable, start a futures submodule  
						
						... 
						
						
						
						To make a future cancellable, use:
let (future, canceller) =
    crate::tools::futures::cancellable(future);
Proceed with using `future` as usual, `canceller` is
clonable and can cancel the future via the `.cancel()`
method.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-05-29 11:18:29 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						0d32d71fb7 
					 
					
						
						
							
							tools: add AsyncMutex::new_locked  
						
						... 
						
						
						
						Allows creating a pre-locked mutex, returning the mutex and
a guard.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-05-29 11:18:29 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						e6389f4e75 
					 
					
						
						
							
							src/api2/admin/datastore/backup/environment.rs: do not allow empty backups (no files)  
						
						
						
						
					 
					
						2019-05-29 10:38:57 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						39e60bd6fa 
					 
					
						
						
							
							src/api2/admin/datastore/backup.rs: improve debug logging  
						
						
						
						
					 
					
						2019-05-29 10:17:38 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						4ae6551c78 
					 
					
						
						
							
							src/api_schema/router.rs: disable debug println  
						
						
						
						
					 
					
						2019-05-29 09:42:16 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						a42d1f55c3 
					 
					
						
						
							
							src/api2/admin/datastore/backup.rs: add debug flag  
						
						
						
						
					 
					
						2019-05-29 09:35:21 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						976595e1a9 
					 
					
						
						
							
							src/backup/dynamic_index.rs: split class DynamicIndexWriter  
						
						
						
						
					 
					
						2019-05-29 08:49:57 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						cb0708dd46 
					 
					
						
						
							
							src/backup/fixed_index.rs: remove ChunkStat from struct  
						
						
						
						
					 
					
						2019-05-29 07:08:34 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						01af11f340 
					 
					
						
						
							
							src/backup/fixed_index.rs: improve consistency checks  
						
						
						
						
					 
					
						2019-05-29 07:02:45 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						9b38443314 
					 
					
						
						
							
							pxar: change logic and impl all command line flags for xattrs/fcaps/acls  
						
						... 
						
						
						
						Allows to individually set the flags for storing/dumping/restoring of
xattrs/fcaps/acls in the cli of pxar.
Changes logic so that each of them can be threated individually.
Signed-off-by: Christian Ebner <c.ebner@proxmox.com > 
						
						
					 
					
						2019-05-29 06:51:20 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						60e589a111 
					 
					
						
						
							
							src/api2/admin/datastore/backup.rs: log sucessful finish call  
						
						
						
						
					 
					
						2019-05-28 12:55:22 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						c4ff3dcefd 
					 
					
						
						
							
							src/bin/proxmox-backup-client.rs: use new BackupClient to upload data  
						
						
						
						
					 
					
						2019-05-28 10:12:44 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						10241c20ea 
					 
					
						
						
							
							src/tools.rs: implement image_size helper  
						
						
						
						
					 
					
						2019-05-28 09:35:08 +02:00 
						 
				 
			
				
					
						
					 
					
						
						
							
						
						006f3ff407 
					 
					
						
						
							
							src/api2/admin/datastore/backup/environment.rs: add more consistency checks  
						
						
						
						
					 
					
						2019-05-28 09:21:31 +02:00