Dietmar Maurer
51782f7b4f
bump proxmox version to 0.1.24
2020-04-28 08:16:46 +02:00
Dietmar Maurer
e93a36955d
proxmox/src/api/section_config.rs - convert_to_array: remove static lifetime
...
not required...
2020-04-28 08:13:44 +02:00
Dietmar Maurer
9e10d85538
src/api/cli/text_table.rs - format_object: skip optional properties without data
2020-04-27 06:23:26 +02:00
Dietmar Maurer
e229c3d582
bump proxmox version to 0.1.23
2020-04-25 17:04:47 +02:00
Dietmar Maurer
b6765d06c5
api/cli/command.rs: handle fixed_param
2020-04-25 16:17:39 +02:00
Wolfgang Bumiller
341795c1ee
Revert "proxmox: add SysError::is_errno_raw"
...
Not actually required, the numbers just overlapped and are
therefore no separate enum entry.
This reverts commit 8f57f29ca8
.
2020-04-23 12:43:29 +02:00
Wolfgang Bumiller
8f57f29ca8
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>
2020-04-23 11:41:06 +02:00
Wolfgang Bumiller
c9aa2beb47
fixup last commit
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-23 11:09:46 +02:00
Wolfgang Bumiller
4e2e37b7d3
proxmox: tools: add RawFdNum helper
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-23 11:07:03 +02:00
Dietmar Maurer
48f8e6070d
api/cli/completion.rs: implement completion for lists of strings
2020-04-23 10:58:16 +02:00
Dietmar Maurer
6fba9bf0bf
IP_REGEX - match whole string
2020-04-19 07:55:40 +02:00
Dietmar Maurer
d9d3da2b68
src/config/cached_user_info.rs: cache it up to 5 seconds
2020-04-18 08:49:20 +02:00
Wolfgang Bumiller
803e71103a
switch from failure to anyhow
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-17 18:43:30 +02:00
Wolfgang Bumiller
c45c291f18
bump proxmox crate to 0.1.22-1
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-17 18:38:06 +02:00
Wolfgang Bumiller
95403224c5
bump proxmox-api-macro to 0.1.7-1
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-17 18:37:55 +02:00
Wolfgang Bumiller
49fb5e127c
bump proxmox-sortable-macro to 0.1.1
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-17 18:37:46 +02:00
Wolfgang Bumiller
5dd21ee89b
switch from failure to anyhow
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-17 18:34:21 +02:00
Dietmar Maurer
5affb691b5
proxmox-api-macro/src/api/method.rs: fix error message
2020-04-17 15:28:49 +02:00
Dietmar Maurer
5bbd4eef2d
src/server/rest.rs: reduce delay for permission error to 500ms
2020-04-16 12:56:34 +02:00
Dietmar Maurer
a73a7c33b2
start impl. access permissions
2020-04-16 12:47:16 +02:00
Wolfgang Bumiller
5ae320f577
api-macro: add test for access w/o a description
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-16 09:26:24 +02:00
Wolfgang Bumiller
62f3c7d2d9
api-macro: avoid duplicate output code
...
While this is a tiny piece of code, having only one output
code consisting of prepared parts is nicer to keep up to
date.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-16 09:26:24 +02:00
Wolfgang Bumiller
6d831e36dd
api-macro: cleanup & test fixup
...
remove unnecessary types, they were already in the struct
update test to use Option for access description
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-16 09:26:24 +02:00
Dietmar Maurer
b07d592597
bump rust-proxmox-api-macro version to 0.1.6-1
2020-04-16 08:44:17 +02:00
Dietmar Maurer
6976fc4a35
bump rust-proxmox version to 0.1.21-1
2020-04-16 08:43:29 +02:00
Dietmar Maurer
076501e17e
proxmox-api-macro/tests/api1.rs: fix test case
2020-04-16 08:42:05 +02:00
Dietmar Maurer
382eb665c4
proxmox/src/api/permission.rs: pass parameters as HashMap
...
- to make it suitable for our rest server...
- also avoid repeated is_superuser() checks
- fix privilege test (add check for 0)
2020-04-16 08:07:03 +02:00
Dietmar Maurer
e78e31ab4c
make access description optional
2020-04-16 07:20:29 +02:00
Dietmar Maurer
25dbb0ebab
api macro: support reload_timezone
2020-04-15 17:26:43 +02:00
Dietmar Maurer
9c523a4de6
list_subdirs_api_method: allow access for Anybody
2020-04-15 09:26:56 +02:00
Wolfgang Bumiller
da01ff1a72
style cleanup
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-15 09:21:04 +02:00
Wolfgang Bumiller
973e7ccef0
rename some permission/access items
...
router.permissions(...) -> router.access(...)
to be more consistent with the other builder methods and
struct member names
ApiAccessPermissions -> ApiAccess
shorter, not necessarily with defined permissions, and
gets rid of a singular/plural confusion
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-15 09:19:25 +02:00
Wolfgang Bumiller
510d410b7a
api-macro: support 'access' specification for methods
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-14 14:28:12 +02:00
Wolfgang Bumiller
19ad65ac84
api-macro: error on unexpected keys
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-14 13:48:09 +02:00
Wolfgang Bumiller
2c83d55cb0
api-macro: util: add join and join_debug helper
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-14 13:27:36 +02:00
Wolfgang Bumiller
0b2c9b95b4
api-macro: minor cleanup
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-14 11:45:50 +02:00
Wolfgang Bumiller
b67e2f7214
api/permissions: support test-harness
...
(Api-macro tests want to use `==` to compare generated
schemas against hardcoded schemas.)
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-14 11:25:40 +02:00
Wolfgang Bumiller
5aeebdab44
api/permissions: cleanup & formatting
...
Use the `write!` macro as a shortcut for
f.write_fmt(format_args!(...))
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-04-14 10:56:39 +02:00
Dietmar Maurer
5d73e4b8e8
flatten use hierarchy for api::Permissions
2020-04-10 15:43:49 +02:00
Dietmar Maurer
7ec6448db8
implement access permission system
2020-04-10 11:24:24 +02:00
Dietmar Maurer
d967838214
api: add list_domains
2020-04-09 11:36:45 +02:00
Dietmar Maurer
7726d660b6
src/server/rest.rs: use correct formatter
2020-03-26 12:54:20 +01:00
Dietmar Maurer
89e71adfeb
bump proxmox crate to 0.1.20-1
2020-03-25 10:56:46 +01:00
Dietmar Maurer
75e4c4a205
improve command line completion with optional argument parameters
2020-03-25 10:52:13 +01:00
Wolfgang Bumiller
ab8a6120ca
api-macro: started with some more documentation
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-03-23 15:55:18 +01:00
Wolfgang Bumiller
176e208caf
api-macro: add consts for defaults
...
Not sure how we want to actually handle default values yet.
For now we need to figure out what "feels best".
This adds default values as publicly available consts so
they can be accessed from anywhere as
`API_METHOD_<METHOD_NAME>_PARAM_DEFAULT_<PARAM_NAME>`.
This is quite a handful to type, but I'm not sure how to
make this better.
Within the function body we also have the
`api_get_default!(param_name)` macro which is more
convenient, but not available outside the `#[api]` tagged
function.
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-03-23 09:15:54 +01:00
Fabian Grünbichler
6a21867d87
api-macro: explicitly enable syn's visit-mut feature
...
otherwise the build fails because the module is not visible
Signed-off-by: Fabian Grünbichler <f.gruenbichler@proxmox.com>
2020-03-23 08:04:26 +01:00
Wolfgang Bumiller
f5d15872f4
api-macro: add api_get_default!() macro
...
When writing an #[api] function, one can now access default
values by parameter name (see test_default_option in
tests/options.rs):
#[api(...)]
pub fn func(value: Option<isize>) {
println!(
"value: {}",
value.unwrap_or(api_get_default!("value")),
);
}
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-03-19 15:49:34 +01:00
Wolfgang Bumiller
8beec0d6e6
api-macro: tests for optional non-Option parameters
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-03-19 12:08:38 +01:00
Wolfgang Bumiller
83b6d082db
api-macro: allow optional types without Option<T>
...
Signed-off-by: Wolfgang Bumiller <w.bumiller@proxmox.com>
2020-03-19 12:08:10 +01:00