f69adc81a6 
					 
					
						
						
							
							use new proxmox::tools::nodename  
						
						 
						
						
						
						
					 
					
						2019-08-03 17:06:23 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						7f66c29e5c 
					 
					
						
						
							
							remove src/tools/common_regex.rs, use proxmox::tools::common_regex instead  
						
						 
						
						
						
						
					 
					
						2019-08-03 16:44:31 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						fd329bdcd7 
					 
					
						
						
							
							remove src/tools/procfs.rs, use proxmox::sys::linux::procfs instead  
						
						 
						
						
						
						
					 
					
						2019-08-03 16:26:44 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						e18a6c9ee5 
					 
					
						
						
							
							update to nix 0.14, use code from proxmox:tools  
						
						 
						
						
						
						
					 
					
						2019-08-03 13:05:38 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						953d5e1531 
					 
					
						
						
							
							src/tools.rs - file_set_contents_full: only call fchmod when we pass permissions  
						
						 
						
						... 
						
						
						
						So that we can use it to write into /etc/pve/ (which does not support chmod). 
						
						
					 
					
						2019-07-31 12:44:27 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						f35197f449 
					 
					
						
						
							
							replace tools::vec with proxmox::tools::vec  
						
						 
						
						... 
						
						
						
						Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-07-01 11:03:25 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						d0162d53d3 
					 
					
						
						
							
							tools: remove io module  
						
						 
						
						... 
						
						
						
						now completely replaced by proxmox::tools::io.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-07-01 10:44:12 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						9110a69bd8 
					 
					
						
						
							
							tools: remove read/write  
						
						 
						
						... 
						
						
						
						now completely replaced by
proxmox::tools::io::{ReadExt, WriteExt}
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-07-01 10:39:42 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						bffd40d6b7 
					 
					
						
						
							
							src/tools.rs: move hex_to_digest and digest_to_hex to proxmox::tools  
						
						 
						
						
						
						
					 
					
						2019-06-14 11:40:04 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						dd5495d6dc 
					 
					
						
						
							
							tree-wide: use 'dyn' for all trait objects  
						
						 
						
						... 
						
						
						
						Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-06-07 13:13:48 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						1c0472e88f 
					 
					
						
						
							
							avoid compiler warnings  
						
						 
						
						
						
						
					 
					
						2019-06-03 06:43:47 +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  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						10241c20ea 
					 
					
						
						
							
							src/tools.rs: implement image_size helper  
						
						 
						
						
						
						
					 
					
						2019-05-28 09:35:08 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						8ea3b1d188 
					 
					
						
						
							
							tree-wide: use the new vec/io tools modules  
						
						 
						
						... 
						
						
						
						Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-05-23 09:49:10 +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  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						11867a2b54 
					 
					
						
						
							
							src/tools.rs: fix hex_to_digest  
						
						 
						
						
						
						
					 
					
						2019-05-21 13:42:13 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						f2269d8f99 
					 
					
						
						
							
							src/tools.rs: implement hex_to_digest  
						
						 
						
						
						
						
					 
					
						2019-05-19 12:15:46 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						2dcdd3b427 
					 
					
						
						
							
							src/tools/xattrs.rs: impl libc wrapper functions to get/set xattrs and fcaps  
						
						 
						
						... 
						
						
						
						Signed-off-by: Christian Ebner <c.ebner@proxmox.com > 
						
						
					 
					
						2019-05-16 11:14:21 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						25e205a1d3 
					 
					
						
						
							
							src/tools.rs: add mod acl to tools  
						
						 
						
						... 
						
						
						
						Signed-off-by: Christian Ebner <c.ebner@proxmox.com > 
						
						
					 
					
						2019-05-14 06:34:24 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						2edc341b29 
					 
					
						
						
							
							src/tools.rs: Add AsAyn Trait  
						
						 
						
						
						
						
					 
					
						2019-05-08 11:07:36 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						3578d99f3e 
					 
					
						
						
							
							move normalize_path to tools::normalize_uri_path  
						
						 
						
						
						
						
					 
					
						2019-05-07 09:44:34 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						d82ed9b0f5 
					 
					
						
						
							
							tools: add AsyncMutex  
						
						 
						
						... 
						
						
						
						Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-04-29 14:19:03 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						490be29ed6 
					 
					
						
						
							
							src/tools/broadcast_future.rs: new helper class  
						
						 
						
						
						
						
					 
					
						2019-04-26 17:57:57 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						efd1536eb7 
					 
					
						
						
							
							add a wrapper around nix::unistd::pipe2  
						
						 
						
						... 
						
						
						
						Using O_CLOEXEC by default, and returning Fd handles to
ensure they get dropped on bail!() or panic!() if the RawFds
aren't used yet.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-04-25 11:02:12 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						897982e237 
					 
					
						
						
							
							tools: add read/write convenience helpers  
						
						 
						
						... 
						
						
						
						Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-04-25 11:02:12 +00:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						d96bb7f163 
					 
					
						
						
							
							tools: add Fd helper  
						
						 
						
						... 
						
						
						
						stores a raw file descriptor with a drop handler for
safekeeping in closures
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-04-10 15:20:10 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						7a630df709 
					 
					
						
						
							
							implement server state/signal handling, depend on tokio-signal  
						
						 
						
						
						
						
					 
					
						2019-04-08 13:59:07 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						35950380a9 
					 
					
						
						
							
							src/server/worker_task.rs: carefully handle file permissions  
						
						 
						
						
						
						
					 
					
						2019-04-06 17:53:12 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						1619a72063 
					 
					
						
						
							
							src/tools.rs: implement create_dir_chown  
						
						 
						
						... 
						
						
						
						Combinded mkdir with chown. 
						
						
					 
					
						2019-04-06 16:50:23 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						eea8131952 
					 
					
						
						
							
							src/tools.rs: implement file_set_contents_full()  
						
						 
						
						
						
						
					 
					
						2019-04-06 13:53:43 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						49cf9f3d0b 
					 
					
						
						
							
							src/tools.rs: file_get_json() - add new default parameter  
						
						 
						
						
						
						
					 
					
						2019-04-04 12:24:18 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						3c2012f97a 
					 
					
						
						
							
							src/tools/procfs.rs: start helper tools to read procfs  
						
						 
						
						
						
						
					 
					
						2019-04-03 13:39:20 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						92da93b245 
					 
					
						
						
							
							abort GC on server shutdown  
						
						 
						
						
						
						
					 
					
						2019-04-01 12:13:02 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						9136f857cc 
					 
					
						
						
							
							add global var to indicate server shutdown requests  
						
						 
						
						
						
						
					 
					
						2019-04-01 12:05:11 +02:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						a650f50301 
					 
					
						
						
							
							src/tools/process_locker.rs: implement inter-process reader-writer locks  
						
						 
						
						
						
						
					 
					
						2019-03-22 08:05:51 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						eb90c9e372 
					 
					
						
						
							
							tools: style fixup  
						
						 
						
						... 
						
						
						
						Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-03-20 09:57:13 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						dce94d0e09 
					 
					
						
						
							
							tools: add daemon helpers  
						
						 
						
						... 
						
						
						
						Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-03-18 12:29:18 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						ff7049d481 
					 
					
						
						
							
							tools: add fd_change_cloexec helper  
						
						 
						
						... 
						
						
						
						Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-03-18 12:29:18 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						806500cd09 
					 
					
						
						
							
							src/tools.rs: improve file name completion  
						
						 
						
						... 
						
						
						
						Use current working directory by default. 
						
						
					 
					
						2019-03-14 08:17:35 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						496a67846f 
					 
					
						
						
							
							src/cli/command.rs: pass parsed parameters to completion function  
						
						 
						
						
						
						
					 
					
						2019-03-12 14:39:51 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						f54c19989c 
					 
					
						
						
							
							tools: add async signalfd handler  
						
						 
						
						... 
						
						
						
						This provides a Stream<Item = siginfo> via nix' signalfd,
by wrapping it in tokio's PollEvented2 struct to allow
polling via tokio's event loop.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-03-12 08:04:28 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						53cafb5925 
					 
					
						
						
							
							src/tools.rs: impl file_get_json()  
						
						 
						
						
						
						
					 
					
						2019-03-05 12:56:21 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						af926291e0 
					 
					
						
						
							
							avoid compiler warning  
						
						 
						
						
						
						
					 
					
						2019-03-03 09:52:06 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						f5f13ebc5a 
					 
					
						
						
							
							src/tools.rs: new helper json_object_to_query  
						
						 
						
						
						
						
					 
					
						2019-03-03 08:51:37 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						af53186e6a 
					 
					
						
						
							
							src/tools.rs: add simply string join  
						
						 
						
						
						
						
					 
					
						2019-03-02 16:15:45 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						3b151414f8 
					 
					
						
						
							
							src/tools/file_logger.rs: class to log into files  
						
						 
						
						
						
						
					 
					
						2019-03-01 09:34:29 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						fded74d0c7 
					 
					
						
						
							
							style: BufferedReader -> BufferedRead  
						
						 
						
						... 
						
						
						
						Single-method traits usually use the same name as their
method and aren't usually the 'noun' (which is usually an
implementation of them instead).
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-02-28 15:26:40 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						f8dfbb45c0 
					 
					
						
						
							
							src/tools.rs: new helper required_array_param()  
						
						 
						
						
						
						
					 
					
						2019-02-26 08:48:17 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						c9b296f117 
					 
					
						
						
							
							tools: add tty helper module  
						
						 
						
						... 
						
						
						
						with read_password() and stdin_isatty() functions
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com > 
						
						
					 
					
						2019-02-20 14:43:07 +01:00  
					
					
						 
						
						
							
							
							 
							
							
							
							
							 
						
					 
				 
			
				
					
						
					 
					
						
						
							
						
						12400210a2 
					 
					
						
						
							
							tools::file_get_contents - improve error message  
						
						 
						
						
						
						
					 
					
						2019-02-16 09:42:00 +01:00