]>
git.proxmox.com Git - proxmox.git/log
Wolfgang Bumiller [Thu, 16 Jul 2020 12:11:01 +0000 (14:11 +0200)]
a lot more clippy lint fixes
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 16 Jul 2020 11:44:42 +0000 (13:44 +0200)]
various clippy lint fixes
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 15 Jul 2020 12:59:39 +0000 (14:59 +0200)]
websocket feature dependency fixup
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dominik Csapak [Tue, 14 Jul 2020 11:09:57 +0000 (13:09 +0200)]
proxmox/tools/websocket: add WebSocket implementation
uses the existing WebSocketReader and Writer to establish a
two-way communication between an upstream and downstream connection.
The upstream connection sends and receives WebSocket frames, while
the downstream one only receives and sends raw data.
For now we do not support extensions, and only accept the protocol version 13
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dominik Csapak [Tue, 14 Jul 2020 11:09:56 +0000 (13:09 +0200)]
proxmox/tools/websocket: replace CallBack with a channel
instead of having a callback that we call on a control frame,
use a channel to send the data to a receiver
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dominik Csapak [Tue, 14 Jul 2020 11:09:55 +0000 (13:09 +0200)]
proxmox/tools/websocket: implement send_control_frame for writer
so that we can easily send a control frame to the endpoint
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dominik Csapak [Wed, 15 Jul 2020 09:08:40 +0000 (11:08 +0200)]
proxmox/tools/websocket: improve mask_bytes and create_frame interface
by using a Box<[u8]> instead of a vector (we do not need it)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dominik Csapak [Tue, 14 Jul 2020 11:09:53 +0000 (13:09 +0200)]
proxmox/tools/websocket: use io::Error and Result explicitely
and add a helper struct for the ReadResult
(so that the types are properly documented)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dominik Csapak [Tue, 14 Jul 2020 11:09:52 +0000 (13:09 +0200)]
proxmox/tools/websocket: correctly return eof
only return Ok(0) when the upstream reader did return that, not when
we have no data in the buffer, else the downstream reader believes
we are EOF (even if we are not)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dominik Csapak [Tue, 14 Jul 2020 11:09:51 +0000 (13:09 +0200)]
proxmox/tools/websocket: use ready macro for WebSocketWriter
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dominik Csapak [Tue, 14 Jul 2020 11:09:50 +0000 (13:09 +0200)]
proxmox/tools/byte_buffer: impl Default
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dominik Csapak [Tue, 14 Jul 2020 11:09:49 +0000 (13:09 +0200)]
proxmox/tools/byte_buffer: improve ByteBuffer interface
by implementing Deref and DerefMut, renaming consume to 'remove_data'
adapt the usage inside of websocket (we did not use it anywhere else for now)
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 13 Jul 2020 08:27:40 +0000 (10:27 +0200)]
tools::common_regex: add IPRE_BRACKET
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 10 Jul 2020 09:00:01 +0000 (11:00 +0200)]
bump proxmox version to 0.2.0-1
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 10 Jul 2020 08:56:24 +0000 (10:56 +0200)]
bump api macro to 0.2.0-1
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 10 Jul 2020 09:03:51 +0000 (11:03 +0200)]
api-macro: test using return schemas within return objects
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 10 Jul 2020 08:39:49 +0000 (10:39 +0200)]
api-macro: reference consistency
API_RETURN_* and API_PARAMETER_* schemas are no references
anymore to allow using them as external schemas via the
`"schema"` key inside object schemas inside the `#[api]`
macro.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 9 Jul 2020 12:01:03 +0000 (14:01 +0200)]
completion: COMP_POINT is a codepoint count not a byte index
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 7 Jul 2020 12:43:47 +0000 (14:43 +0200)]
compile fixups
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 7 Jul 2020 09:57:18 +0000 (11:57 +0200)]
add websocket (default-)feature, make futures optional
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 7 Jul 2020 09:41:49 +0000 (11:41 +0200)]
make the proxmox crate without default features again
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 7 Jul 2020 07:44:50 +0000 (09:44 +0200)]
some minor clippy lint cleanups
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 7 Jul 2020 07:37:24 +0000 (09:37 +0200)]
ByteBuffer: use T: AsyncRead, not AsyncReadExt
it's just weird otherwise
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 7 Jul 2020 07:37:10 +0000 (09:37 +0200)]
test cleanups
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 7 Jul 2020 07:33:35 +0000 (09:33 +0200)]
ByteBuffer: don't require Sized on Read references
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 7 Jul 2020 07:32:16 +0000 (09:32 +0200)]
ByteBuffer: actually test the doc comment code
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 7 Jul 2020 07:27:17 +0000 (09:27 +0200)]
ByteBuffer: skip the temporary Vec
The docs say `into_boxed_slice()` "drops" excess capacity,
but doesn't specify whether that just means it becomes
inaccessible or the vector potentially reallocates to the
exact size.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Fri, 3 Jul 2020 11:01:00 +0000 (13:01 +0200)]
bump version to 0.1.42-1
Dominik Csapak [Fri, 3 Jul 2020 09:56:42 +0000 (11:56 +0200)]
sys/linux/pty: add examples and docs
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 3 Jul 2020 09:56:41 +0000 (11:56 +0200)]
tools/byte_buffer: add examples and docs
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 3 Jul 2020 09:56:40 +0000 (11:56 +0200)]
tools/websocket: add examples and docs
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 3 Jul 2020 09:56:39 +0000 (11:56 +0200)]
tools/websocket: improve traits for WebSocketReader
by dropping unecessary trais for R
and impl Sync for ReaderState when R implements Sync
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 3 Jul 2020 09:56:38 +0000 (11:56 +0200)]
tools/websocket: require writer to be Unpin
so we can safely pin/unpin it
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Fri, 3 Jul 2020 09:56:37 +0000 (11:56 +0200)]
tools/websocket: make mask not a reference
so we can drop the dereferencing, also use shorter syntax for mask_bit
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Thu, 2 Jul 2020 15:17:48 +0000 (17:17 +0200)]
tools: add Websocket helper
for now there is a helper for Reading and Writing
still missing is a utility for the handshake/accepting a connection
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Thu, 2 Jul 2020 15:17:47 +0000 (17:17 +0200)]
sys/linux: add PTY helper
for creating a PTY and make the secondary part a
controlling terminal for a child process
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Thu, 2 Jul 2020 15:17:46 +0000 (17:17 +0200)]
tools: add ByteBuffer
this is a Buffer struct that holds u8 and has convenience methods
for reading onto the back and consuming from the front
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Wolfgang Bumiller [Wed, 1 Jul 2020 08:54:06 +0000 (10:54 +0200)]
cleanup: libc has 'getrandom' since 0.2.59
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Fri, 26 Jun 2020 08:36:35 +0000 (10:36 +0200)]
bump proxmox to 0.1.41-1
Dominik Csapak [Thu, 25 Jun 2020 08:47:54 +0000 (10:47 +0200)]
api/router: percent decode the components of the uri
those can contain percent encoded values, so we have to decode them
before lookin up the path
this is especially important for the 'MatchAll' branch
when the parameter can contain some reserved characters
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Wolfgang Bumiller [Fri, 12 Jun 2020 11:56:00 +0000 (13:56 +0200)]
bump proxmox to 0.1.40-1
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 12 Jun 2020 11:53:24 +0000 (13:53 +0200)]
tools: add mmap helper
Mmap<T> acts like a slice of `T`s, inhereting its `Send` and
`Sync` traits
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Fri, 12 Jun 2020 09:17:43 +0000 (11:17 +0200)]
AsHex Display helper
This way we can use
println!("something: {}", AsHex(bytes));
without having to turn them into an allocated string first.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Tue, 9 Jun 2020 09:16:41 +0000 (11:16 +0200)]
add TtyOutpu helper and use it for read_password
This way read_password() will not write the prompt into
stdout if stdout was redirected into a file, but instead
opens `/dev/tty`.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Fri, 5 Jun 2020 05:27:10 +0000 (07:27 +0200)]
bump version to 0.1.39-1
Dominik Csapak [Thu, 4 Jun 2020 14:52:12 +0000 (16:52 +0200)]
fix Permission::Privilege path check
when checking a path, we only pushed the components to the checked value
that would contain a parameter and not fixed ones
e.g. from the path components (with params datastore="foo")
["datastore", "{datastore}"]
only ["foo"] was given to the lookup_privs function
instead of ["datastore", "foo"]
this fixes an issue where e.g. a prune on /datastore/foo would fail
for a user that has the role DatastorePowerUser on /datastore (with
propagate) or /datastore/foo
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Thu, 4 Jun 2020 14:52:11 +0000 (16:52 +0200)]
add tests for check_api_permission
add tests for check_api_permission and many Permission combinations
this test fails for now and will be fixed with the next commit
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Thu, 28 May 2020 07:51:42 +0000 (09:51 +0200)]
bump version to 0.1.38-1
Dietmar Maurer [Thu, 28 May 2020 07:49:45 +0000 (09:49 +0200)]
proxmox/src/tools/fs.rs: add additional helpers to get file contents
Dietmar Maurer [Tue, 26 May 2020 10:55:04 +0000 (12:55 +0200)]
bump version toö 0.1.37-1
Dominik Csapak [Tue, 26 May 2020 10:23:23 +0000 (12:23 +0200)]
proxmox: add string_as_base64 serde (de)serializer
this can be used to automatically convert string fields to base64
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Wolfgang Bumiller [Mon, 25 May 2020 10:12:07 +0000 (12:12 +0200)]
bump proxmox to 0.1.36-1
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 25 May 2020 10:09:16 +0000 (12:09 +0200)]
procfs: iowait_percent fixup
Fix time delta calculation, and use old percentage when
querying more often than once a second.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 25 May 2020 09:12:08 +0000 (11:12 +0200)]
formatting fixup
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 25 May 2020 09:11:21 +0000 (11:11 +0200)]
bump proxmox to 0.1.35-1
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 25 May 2020 09:07:24 +0000 (11:07 +0200)]
procfs: add loadavg reader
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 25 May 2020 08:43:24 +0000 (10:43 +0200)]
make CLOCK_TICKS public
The ProcFsStat type uses values which need to be scaled by
it, so it makes sense to have this be public.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 25 May 2020 08:36:46 +0000 (10:36 +0200)]
procfs: add iowait_percent
The calculation for this is based on the pve code.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Mon, 25 May 2020 08:34:10 +0000 (10:34 +0200)]
procfs: don't count guest and guest_nice times twice
See the following kernel code snippet from
kernel/sched/cputime.c's account_guest_time():
/* Add guest time to cpustat. */
if (task_nice(p) > 0) {
cpustat[CPUTIME_NICE] += cputime;
cpustat[CPUTIME_GUEST_NICE] += cputime;
} else {
cpustat[CPUTIME_USER] += cputime;
cpustat[CPUTIME_GUEST] += cputime;
}
So the old sum was wrong as some time frames were counted
double in the `total` value.
The data will likely still deviate from PVE, but we should
check by how much, as this version does seem more accurate.
We can still fix it to just use the same math as pve if it
seems off.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Wed, 20 May 2020 11:17:55 +0000 (13:17 +0200)]
bump version to 0.1.34-1
Dominik Csapak [Wed, 20 May 2020 10:15:29 +0000 (12:15 +0200)]
add 'constnamemap' macro
to be able to define constant values but still have some mapping to
the name of it
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Wed, 20 May 2020 04:26:35 +0000 (06:26 +0200)]
pumb version to 0.1.33-1
Dietmar Maurer [Wed, 20 May 2020 04:25:07 +0000 (06:25 +0200)]
proxmox/src/api/section_config.rs: simplify code
Dominik Csapak [Tue, 19 May 2020 12:20:43 +0000 (14:20 +0200)]
section_config: fixup fallback schema in parse
we also have to fallback to the id_schema of the section_config when
we parse it, not only on write
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Tue, 19 May 2020 07:51:38 +0000 (09:51 +0200)]
bump version to 0.1.32
Dominik Csapak [Mon, 18 May 2020 12:18:34 +0000 (14:18 +0200)]
proxmox: section_config: add convert_to_typed_array
converts a parsed section config to an Vector of typed items
this way we can simply get a list of users from the user config
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dominik Csapak [Mon, 18 May 2020 12:18:33 +0000 (14:18 +0200)]
proxmox: section_config: add id_property to SectionConfigPlugin
if set in the SectionConfigPlugin, we set the given
field to the section_id for each entry
this way we can have e.g. the userid in the Struct and ObjectSchema,
without having to write it twice to the config but we are still getting
it when parsing the config
when a plugin does not specify an id_property, then the id_schema of
the SectionConfig will be used as fallback
also adds a test for this with multiple plugins
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
Dietmar Maurer [Mon, 18 May 2020 07:50:37 +0000 (09:50 +0200)]
bump version to 0.1.31-1
Dietmar Maurer [Mon, 18 May 2020 07:36:33 +0000 (09:36 +0200)]
proxmox/src/api/rpc_environment.rs: use Value to store metadata
And impl. Index and IndexMut to make it easy to access/set the metadata.
Fabian Grünbichler [Mon, 18 May 2020 07:05:34 +0000 (09:05 +0200)]
update dependencies
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
Wolfgang Bumiller [Mon, 18 May 2020 07:17:35 +0000 (09:17 +0200)]
api-macro: bump version to 0.1.9-1
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Fri, 15 May 2020 15:43:54 +0000 (17:43 +0200)]
bump version to 0.1.30-1
Dietmar Maurer [Fri, 15 May 2020 15:40:53 +0000 (17:40 +0200)]
proxmox/src/tools/time.rs: binding for libc localtime/timelocal
Wolfgang Bumiller [Fri, 15 May 2020 07:15:10 +0000 (09:15 +0200)]
api-macro: remove more unnecessary parentheses
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 14 May 2020 13:39:22 +0000 (15:39 +0200)]
api-macro: remove some unnecessary parentheses in output
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Tue, 12 May 2020 10:57:53 +0000 (12:57 +0200)]
bump version to 0.1.29-1
Dietmar Maurer [Tue, 12 May 2020 10:54:14 +0000 (12:54 +0200)]
proxmox/src/api/section_config.rs: make record_order public
It is sometimes usable to record the order.
Dietmar Maurer [Tue, 12 May 2020 07:15:47 +0000 (09:15 +0200)]
bump version to 0.1.28-1
Dietmar Maurer [Tue, 12 May 2020 07:14:03 +0000 (09:14 +0200)]
proxmox/src/api/section_config.rs: add support for systemd config files
Dietmar Maurer [Tue, 12 May 2020 06:27:23 +0000 (08:27 +0200)]
proxmox/src/api/section_config.rs: support array properties
Dietmar Maurer [Fri, 8 May 2020 06:08:17 +0000 (08:08 +0200)]
bump version to 0.1.27-1
Dietmar Maurer [Fri, 8 May 2020 06:05:22 +0000 (08:05 +0200)]
schema: split property string lists with comma, semicolon and white space.
Dietmar Maurer [Wed, 6 May 2020 10:28:39 +0000 (12:28 +0200)]
bump version to 0.1.26-1
Dietmar Maurer [Wed, 6 May 2020 10:22:56 +0000 (12:22 +0200)]
run_cli_command: add additional rpcenv parameter
Wolfgang Bumiller [Wed, 29 Apr 2020 08:46:42 +0000 (10:46 +0200)]
bump version to 0.1.25-1
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 29 Apr 2020 08:44:52 +0000 (10:44 +0200)]
bump api macro to 0.1.8
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Wed, 29 Apr 2020 08:42:36 +0000 (10:42 +0200)]
implement descriptions for enum variants
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Tue, 28 Apr 2020 06:19:26 +0000 (08:19 +0200)]
fix changelog entry for proxmox 0.1.23
Dietmar Maurer [Tue, 28 Apr 2020 06:16:46 +0000 (08:16 +0200)]
bump proxmox version to 0.1.24
Dietmar Maurer [Tue, 28 Apr 2020 06:13:44 +0000 (08:13 +0200)]
proxmox/src/api/section_config.rs - convert_to_array: remove static lifetime
not required...
Dietmar Maurer [Mon, 27 Apr 2020 04:23:26 +0000 (06:23 +0200)]
src/api/cli/text_table.rs - format_object: skip optional properties without data
Dietmar Maurer [Sat, 25 Apr 2020 15:04:47 +0000 (17:04 +0200)]
bump proxmox version to 0.1.23
Dietmar Maurer [Sat, 25 Apr 2020 14:16:57 +0000 (16:16 +0200)]
api/cli/command.rs: handle fixed_param
Wolfgang Bumiller [Thu, 23 Apr 2020 10:43:29 +0000 (12:43 +0200)]
Revert "proxmox: add SysError::is_errno_raw"
Not actually required, the numbers just overlapped and are
therefore no separate enum entry.
This reverts commit
8f57f29ca84dbfdb99a822fdfbba43b361577a81 .
Wolfgang Bumiller [Thu, 23 Apr 2020 09:40:53 +0000 (11:40 +0200)]
proxmox: add SysError::is_errno_raw
to work around missing errno values in nix 0.16
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 23 Apr 2020 09:09:46 +0000 (11:09 +0200)]
fixup last commit
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Wolfgang Bumiller [Thu, 23 Apr 2020 09:06:35 +0000 (11:06 +0200)]
proxmox: tools: add RawFdNum helper
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
Dietmar Maurer [Thu, 23 Apr 2020 08:58:16 +0000 (10:58 +0200)]
api/cli/completion.rs: implement completion for lists of strings
Dietmar Maurer [Sun, 19 Apr 2020 05:55:40 +0000 (07:55 +0200)]
IP_REGEX - match whole string
Wolfgang Bumiller [Fri, 17 Apr 2020 16:38:06 +0000 (18:38 +0200)]
bump proxmox crate to 0.1.22-1
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>