diff --git a/pom.xml b/pom.xml
index 4480727..d9c892e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -5,7 +5,7 @@
4.0.0
it.corsinvest.proxmoxve
cv4pve-api-java
- 8.1.4
+ 8.2.0
jar
cv4pve-api-java
Corsinvest for Proxmox VE Client API Java
diff --git a/src/main/java/it/corsinvest/proxmoxve/api/PveClient.java b/src/main/java/it/corsinvest/proxmoxve/api/PveClient.java
index 3cbbae7..0ec9c9e 100644
--- a/src/main/java/it/corsinvest/proxmoxve/api/PveClient.java
+++ b/src/main/java/it/corsinvest/proxmoxve/api/PveClient.java
@@ -2842,6 +2842,7 @@ public Result readJob() throws JSONException {
* globs). Paths starting with '/' are anchored to the
* container's root, other paths match relative to each
* subdirectory.
+ * @param fleecing Options for backup fleecing (VM only).
* @param ionice Set IO priority when using the BFQ scheduler.
* For snapshot and suspend mode backups of VMs, this only
* affects the compressor. A value of 8 means the idle priority
@@ -2849,11 +2850,12 @@ public Result readJob() throws JSONException {
* specified value.
* @param lockwait Maximal time to wait for the global lock
* (minutes).
- * @param mailnotification Deprecated: use 'notification-policy'
- * instead. Enum: always,failure
- * @param mailto Comma-separated list of email addresses or
- * users that should receive email notifications. Has no effect
- * if the 'notification-target' option is set at the same time.
+ * @param mailnotification Deprecated: use notification
+ * targets/matchers instead. Specify when to send a notification
+ * mail Enum: always,failure
+ * @param mailto Deprecated: Use notification targets/matchers
+ * instead. Comma-separated list of email addresses or users
+ * that should receive email notifications.
* @param maxfiles Deprecated: use 'prune-backups' instead.
* Maximal number of backup files per guest system.
* @param mode Backup mode. Enum: snapshot,suspend,stop
@@ -2865,13 +2867,18 @@ public Result readJob() throws JSONException {
* might be added in the future. Needs to be a single line,
* newline and backslash need to be escaped as '\n' and '\\'
* respectively.
- * @param notification_policy Specify when to send a
- * notification Enum: always,failure,never
- * @param notification_target Determine the target to which
- * notifications should be sent. Can either be a notification
- * endpoint or a notification group. This option takes
- * precedence over 'mailto', meaning that if both are set, the
- * 'mailto' option will be ignored.
+ * @param notification_mode Determine which notification system
+ * to use. If set to 'legacy-sendmail', vzdump will consider the
+ * mailto/mailnotification parameters and send emails to the
+ * specified address(es) via the 'sendmail' command. If set to
+ * 'notification-system', a notification will be sent via PVE's
+ * notification system, and the mailto and mailnotification will
+ * be ignored. If set to 'auto' (default setting), an email will
+ * be sent if mailto is set, and the notification system will be
+ * used if not. Enum: auto,legacy-sendmail,notification-system
+ * @param notification_policy Deprecated: Do not use Enum:
+ * always,failure,never
+ * @param notification_target Deprecated: Do not use
* @param performance Other performance-related settings.
* @param pigz Use pigz instead of gzip when N>0. N=1
* uses half of cores, N>1 uses N as thread count.
@@ -2898,12 +2905,13 @@ public Result readJob() throws JSONException {
* @param tmpdir Store temporary files to specified directory.
* @param vmid The ID of the guest system you want to backup.
* @param zstd Zstd threads. N=0 uses half of the available
- * cores, N>0 uses N as thread count.
+ * cores, if N is set to a value bigger than 0, N is used as
+ * thread count.
* @return Result
* @throws JSONException
*/
- public Result updateJob(Boolean all, Integer bwlimit, String comment, String compress, String delete, String dow, String dumpdir, Boolean enabled, String exclude, List exclude_path, Integer ionice, Integer lockwait, String mailnotification, String mailto, Integer maxfiles, String mode, String node, String notes_template, String notification_policy, String notification_target, String performance, Integer pigz, String pool, Boolean protected_, String prune_backups, Boolean quiet, Boolean remove, Boolean repeat_missed, String schedule, String script, String starttime, Boolean stdexcludes, Boolean stop, Integer stopwait, String storage, String tmpdir, String vmid, Integer zstd) throws JSONException {
+ public Result updateJob(Boolean all, Integer bwlimit, String comment, String compress, String delete, String dow, String dumpdir, Boolean enabled, String exclude, List exclude_path, String fleecing, Integer ionice, Integer lockwait, String mailnotification, String mailto, Integer maxfiles, String mode, String node, String notes_template, String notification_mode, String notification_policy, String notification_target, String performance, Integer pigz, String pool, Boolean protected_, String prune_backups, Boolean quiet, Boolean remove, Boolean repeat_missed, String schedule, String script, String starttime, Boolean stdexcludes, Boolean stop, Integer stopwait, String storage, String tmpdir, String vmid, Integer zstd) throws JSONException {
Map parameters = new HashMap<>();
parameters.put("all", all);
parameters.put("bwlimit", bwlimit);
@@ -2915,6 +2923,7 @@ public Result updateJob(Boolean all, Integer bwlimit, String comment, String com
parameters.put("enabled", enabled);
parameters.put("exclude", exclude);
parameters.put("exclude-path", exclude_path);
+ parameters.put("fleecing", fleecing);
parameters.put("ionice", ionice);
parameters.put("lockwait", lockwait);
parameters.put("mailnotification", mailnotification);
@@ -2923,6 +2932,7 @@ public Result updateJob(Boolean all, Integer bwlimit, String comment, String com
parameters.put("mode", mode);
parameters.put("node", node);
parameters.put("notes-template", notes_template);
+ parameters.put("notification-mode", notification_mode);
parameters.put("notification-policy", notification_policy);
parameters.put("notification-target", notification_target);
parameters.put("performance", performance);
@@ -2983,6 +2993,7 @@ public Result index() throws JSONException {
* @param exclude_path Exclude certain files/directories (shell
* globs). Paths starting with '/' are anchored to the container's
* root, other paths match relative to each subdirectory.
+ * @param fleecing Options for backup fleecing (VM only).
* @param id Job ID (will be autogenerated).
* @param ionice Set IO priority when using the BFQ scheduler. For
* snapshot and suspend mode backups of VMs, this only affects the
@@ -2991,11 +3002,12 @@ public Result index() throws JSONException {
* value.
* @param lockwait Maximal time to wait for the global lock
* (minutes).
- * @param mailnotification Deprecated: use 'notification-policy'
- * instead. Enum: always,failure
- * @param mailto Comma-separated list of email addresses or users
- * that should receive email notifications. Has no effect if the
- * 'notification-target' option is set at the same time.
+ * @param mailnotification Deprecated: use notification
+ * targets/matchers instead. Specify when to send a notification
+ * mail Enum: always,failure
+ * @param mailto Deprecated: Use notification targets/matchers
+ * instead. Comma-separated list of email addresses or users that
+ * should receive email notifications.
* @param maxfiles Deprecated: use 'prune-backups' instead. Maximal
* number of backup files per guest system.
* @param mode Backup mode. Enum: snapshot,suspend,stop
@@ -3006,13 +3018,18 @@ public Result index() throws JSONException {
* {{node}}, and {{vmid}}, but more might be added in the future.
* Needs to be a single line, newline and backslash need to be
* escaped as '\n' and '\\' respectively.
- * @param notification_policy Specify when to send a notification
- * Enum: always,failure,never
- * @param notification_target Determine the target to which
- * notifications should be sent. Can either be a notification
- * endpoint or a notification group. This option takes precedence
- * over 'mailto', meaning that if both are set, the 'mailto' option
- * will be ignored.
+ * @param notification_mode Determine which notification system to
+ * use. If set to 'legacy-sendmail', vzdump will consider the
+ * mailto/mailnotification parameters and send emails to the
+ * specified address(es) via the 'sendmail' command. If set to
+ * 'notification-system', a notification will be sent via PVE's
+ * notification system, and the mailto and mailnotification will be
+ * ignored. If set to 'auto' (default setting), an email will be
+ * sent if mailto is set, and the notification system will be used
+ * if not. Enum: auto,legacy-sendmail,notification-system
+ * @param notification_policy Deprecated: Do not use Enum:
+ * always,failure,never
+ * @param notification_target Deprecated: Do not use
* @param performance Other performance-related settings.
* @param pigz Use pigz instead of gzip when N>0. N=1 uses
* half of cores, N>1 uses N as thread count.
@@ -3037,12 +3054,12 @@ public Result index() throws JSONException {
* @param tmpdir Store temporary files to specified directory.
* @param vmid The ID of the guest system you want to backup.
* @param zstd Zstd threads. N=0 uses half of the available cores,
- * N>0 uses N as thread count.
+ * if N is set to a value bigger than 0, N is used as thread count.
* @return Result
* @throws JSONException
*/
- public Result createJob(Boolean all, Integer bwlimit, String comment, String compress, String dow, String dumpdir, Boolean enabled, String exclude, List exclude_path, String id, Integer ionice, Integer lockwait, String mailnotification, String mailto, Integer maxfiles, String mode, String node, String notes_template, String notification_policy, String notification_target, String performance, Integer pigz, String pool, Boolean protected_, String prune_backups, Boolean quiet, Boolean remove, Boolean repeat_missed, String schedule, String script, String starttime, Boolean stdexcludes, Boolean stop, Integer stopwait, String storage, String tmpdir, String vmid, Integer zstd) throws JSONException {
+ public Result createJob(Boolean all, Integer bwlimit, String comment, String compress, String dow, String dumpdir, Boolean enabled, String exclude, List exclude_path, String fleecing, String id, Integer ionice, Integer lockwait, String mailnotification, String mailto, Integer maxfiles, String mode, String node, String notes_template, String notification_mode, String notification_policy, String notification_target, String performance, Integer pigz, String pool, Boolean protected_, String prune_backups, Boolean quiet, Boolean remove, Boolean repeat_missed, String schedule, String script, String starttime, Boolean stdexcludes, Boolean stop, Integer stopwait, String storage, String tmpdir, String vmid, Integer zstd) throws JSONException {
Map parameters = new HashMap<>();
parameters.put("all", all);
parameters.put("bwlimit", bwlimit);
@@ -3053,6 +3070,7 @@ public Result createJob(Boolean all, Integer bwlimit, String comment, String com
parameters.put("enabled", enabled);
parameters.put("exclude", exclude);
parameters.put("exclude-path", exclude_path);
+ parameters.put("fleecing", fleecing);
parameters.put("id", id);
parameters.put("ionice", ionice);
parameters.put("lockwait", lockwait);
@@ -3062,6 +3080,7 @@ public Result createJob(Boolean all, Integer bwlimit, String comment, String com
parameters.put("mode", mode);
parameters.put("node", node);
parameters.put("notes-template", notes_template);
+ parameters.put("notification-mode", notification_mode);
parameters.put("notification-policy", notification_policy);
parameters.put("notification-target", notification_target);
parameters.put("performance", performance);
@@ -4594,7 +4613,8 @@ public Result get() throws JSONException {
* file has a different digest. This can be used to prevent
* concurrent modifications.
* @param map A list of maps for the cluster nodes.
- * @param mdev
+ * @param mdev Marks the device(s) as being capable of
+ * providing mediated devices.
* @return Result
* @throws JSONException
*/
@@ -4654,7 +4674,8 @@ public Result index() throws JSONException {
* @param id The ID of the logical PCI mapping.
* @param map A list of maps for the cluster nodes.
* @param description Description of the logical PCI device.
- * @param mdev
+ * @param mdev Marks the device(s) as being capable of providing
+ * mediated devices.
* @return Result
* @throws JSONException
*/
@@ -8841,7 +8862,7 @@ public Result vmConfig() throws JSONException {
* `ostype` indicates a Microsoft Windows OS.
* @param lock_ Lock/unlock the VM. Enum:
* backup,clone,create,migrate,rollback,snapshot,snapshot-delete,suspending,suspended
- * @param machine Specifies the QEMU machine type.
+ * @param machine Specify the QEMU machine.
* @param memory Memory properties.
* @param migrate_downtime Set maximum tolerated
* downtime (in seconds) for migrations.
@@ -9160,7 +9181,7 @@ public Result updateVmAsync() throws JSONException {
* `ostype` indicates a Microsoft Windows OS.
* @param lock_ Lock/unlock the VM. Enum:
* backup,clone,create,migrate,rollback,snapshot,snapshot-delete,suspending,suspended
- * @param machine Specifies the QEMU machine type.
+ * @param machine Specify the QEMU machine.
* @param memory Memory properties.
* @param migrate_downtime Set maximum tolerated
* downtime (in seconds) for migrations.
@@ -9761,7 +9782,7 @@ protected PVEStart(PveClient client, Object node, Object vmid) {
*
* @param force_cpu Override QEMU's -cpu argument
* with the given string.
- * @param machine Specifies the QEMU machine type.
+ * @param machine Specify the QEMU machine.
* @param migratedfrom The cluster node name.
* @param migration_network CIDR of the (sub)
* network that is used for migration.
@@ -9824,23 +9845,26 @@ protected PVEStop(PveClient client, Object node, Object vmid) {
/**
* Stop virtual machine. The qemu process will exit
- * immediately. Thisis akin to pulling the power
+ * immediately. This is akin to pulling the power
* plug of a running computer and may damage the VM
- * data
+ * data.
*
* @param keepActive Do not deactivate storage
* volumes.
* @param migratedfrom The cluster node name.
+ * @param overrule_shutdown Try to abort active
+ * 'qmshutdown' tasks before stopping.
* @param skiplock Ignore locks - only root is
* allowed to use this option.
* @param timeout Wait maximal timeout seconds.
* @return Result
* @throws JSONException
*/
- public Result vmStop(Boolean keepActive, String migratedfrom, Boolean skiplock, Integer timeout) throws JSONException {
+ public Result vmStop(Boolean keepActive, String migratedfrom, Boolean overrule_shutdown, Boolean skiplock, Integer timeout) throws JSONException {
Map parameters = new HashMap<>();
parameters.put("keepActive", keepActive);
parameters.put("migratedfrom", migratedfrom);
+ parameters.put("overrule-shutdown", overrule_shutdown);
parameters.put("skiplock", skiplock);
parameters.put("timeout", timeout);
return client.create("/nodes/" + this.node + "/qemu/" + this.vmid + "/status/stop", parameters);
@@ -9848,9 +9872,9 @@ public Result vmStop(Boolean keepActive, String migratedfrom, Boolean skiplock,
/**
* Stop virtual machine. The qemu process will exit
- * immediately. Thisis akin to pulling the power
+ * immediately. This is akin to pulling the power
* plug of a running computer and may damage the VM
- * data
+ * data.
*
* @return Result
* @throws JSONException
@@ -9915,10 +9939,9 @@ protected PVEShutdown(PveClient client, Object node, Object vmid) {
/**
* Shutdown virtual machine. This is similar to
- * pressing the power button on a physical
- * machine.This will send an ACPI event for the
- * guest OS, which should then proceed to a clean
- * shutdown.
+ * pressing the power button on a physical machine.
+ * This will send an ACPI event for the guest OS,
+ * which should then proceed to a clean shutdown.
*
* @param forceStop Make sure the VM stops.
* @param keepActive Do not deactivate storage
@@ -9940,10 +9963,9 @@ public Result vmShutdown(Boolean forceStop, Boolean keepActive, Boolean skiplock
/**
* Shutdown virtual machine. This is similar to
- * pressing the power button on a physical
- * machine.This will send an ACPI event for the
- * guest OS, which should then proceed to a clean
- * shutdown.
+ * pressing the power button on a physical machine.
+ * This will send an ACPI event for the guest OS,
+ * which should then proceed to a clean shutdown.
*
* @return Result
* @throws JSONException
@@ -11078,14 +11100,14 @@ public Result vmlist() throws JSONException {
* within the guest OS. Enum:
* de,de-ch,da,en-gb,en-us,es,fi,fr,fr-be,fr-ca,fr-ch,hu,is,it,ja,lt,mk,nl,no,pl,pt,pt-br,sv,sl,tr
* @param kvm Enable/disable KVM hardware virtualization.
- * @param live_restore Start the VM immediately from the backup
- * and restore in background. PBS only.
+ * @param live_restore Start the VM immediately while importing
+ * or restoring in the background.
* @param localtime Set the real time clock (RTC) to local time.
* This is enabled by default if the `ostype` indicates a
* Microsoft Windows OS.
* @param lock_ Lock/unlock the VM. Enum:
* backup,clone,create,migrate,rollback,snapshot,snapshot-delete,suspending,suspended
- * @param machine Specifies the QEMU machine type.
+ * @param machine Specify the QEMU machine.
* @param memory Memory properties.
* @param migrate_downtime Set maximum tolerated downtime (in
* seconds) for migrations.
@@ -11731,13 +11753,16 @@ protected PVEStop(PveClient client, Object node, Object vmid) {
* Stop the container. This will abruptly stop all
* processes running in the container.
*
+ * @param overrule_shutdown Try to abort active
+ * 'vzshutdown' tasks before stopping.
* @param skiplock Ignore locks - only root is
* allowed to use this option.
* @return Result
* @throws JSONException
*/
- public Result vmStop(Boolean skiplock) throws JSONException {
+ public Result vmStop(Boolean overrule_shutdown, Boolean skiplock) throws JSONException {
Map parameters = new HashMap<>();
+ parameters.put("overrule-shutdown", overrule_shutdown);
parameters.put("skiplock", skiplock);
return client.create("/nodes/" + this.node + "/lxc/" + this.vmid + "/status/stop", parameters);
}
@@ -15417,6 +15442,7 @@ public Result extractconfig(String volume) throws JSONException {
* globs). Paths starting with '/' are anchored to the
* container's root, other paths match relative to each
* subdirectory.
+ * @param fleecing Options for backup fleecing (VM only).
* @param ionice Set IO priority when using the BFQ scheduler.
* For snapshot and suspend mode backups of VMs, this only
* affects the compressor. A value of 8 means the idle priority
@@ -15424,11 +15450,12 @@ public Result extractconfig(String volume) throws JSONException {
* specified value.
* @param lockwait Maximal time to wait for the global lock
* (minutes).
- * @param mailnotification Deprecated: use 'notification-policy'
- * instead. Enum: always,failure
- * @param mailto Comma-separated list of email addresses or
- * users that should receive email notifications. Has no effect
- * if the 'notification-target' option is set at the same time.
+ * @param mailnotification Deprecated: use notification
+ * targets/matchers instead. Specify when to send a notification
+ * mail Enum: always,failure
+ * @param mailto Deprecated: Use notification targets/matchers
+ * instead. Comma-separated list of email addresses or users
+ * that should receive email notifications.
* @param maxfiles Deprecated: use 'prune-backups' instead.
* Maximal number of backup files per guest system.
* @param mode Backup mode. Enum: snapshot,suspend,stop
@@ -15439,13 +15466,18 @@ public Result extractconfig(String volume) throws JSONException {
* might be added in the future. Needs to be a single line,
* newline and backslash need to be escaped as '\n' and '\\'
* respectively.
- * @param notification_policy Specify when to send a
- * notification Enum: always,failure,never
- * @param notification_target Determine the target to which
- * notifications should be sent. Can either be a notification
- * endpoint or a notification group. This option takes
- * precedence over 'mailto', meaning that if both are set, the
- * 'mailto' option will be ignored.
+ * @param notification_mode Determine which notification system
+ * to use. If set to 'legacy-sendmail', vzdump will consider the
+ * mailto/mailnotification parameters and send emails to the
+ * specified address(es) via the 'sendmail' command. If set to
+ * 'notification-system', a notification will be sent via PVE's
+ * notification system, and the mailto and mailnotification will
+ * be ignored. If set to 'auto' (default setting), an email will
+ * be sent if mailto is set, and the notification system will be
+ * used if not. Enum: auto,legacy-sendmail,notification-system
+ * @param notification_policy Deprecated: Do not use Enum:
+ * always,failure,never
+ * @param notification_target Deprecated: Do not use
* @param performance Other performance-related settings.
* @param pigz Use pigz instead of gzip when N>0. N=1
* uses half of cores, N>1 uses N as thread count.
@@ -15467,11 +15499,12 @@ public Result extractconfig(String volume) throws JSONException {
* @param tmpdir Store temporary files to specified directory.
* @param vmid The ID of the guest system you want to backup.
* @param zstd Zstd threads. N=0 uses half of the available
- * cores, N>0 uses N as thread count.
+ * cores, if N is set to a value bigger than 0, N is used as
+ * thread count.
* @return Result
* @throws JSONException
*/
- public Result vzdump(Boolean all, Integer bwlimit, String compress, String dumpdir, String exclude, List exclude_path, Integer ionice, Integer lockwait, String mailnotification, String mailto, Integer maxfiles, String mode, String notes_template, String notification_policy, String notification_target, String performance, Integer pigz, String pool, Boolean protected_, String prune_backups, Boolean quiet, Boolean remove, String script, Boolean stdexcludes, Boolean stdout, Boolean stop, Integer stopwait, String storage, String tmpdir, String vmid, Integer zstd) throws JSONException {
+ public Result vzdump(Boolean all, Integer bwlimit, String compress, String dumpdir, String exclude, List exclude_path, String fleecing, Integer ionice, Integer lockwait, String mailnotification, String mailto, Integer maxfiles, String mode, String notes_template, String notification_mode, String notification_policy, String notification_target, String performance, Integer pigz, String pool, Boolean protected_, String prune_backups, Boolean quiet, Boolean remove, String script, Boolean stdexcludes, Boolean stdout, Boolean stop, Integer stopwait, String storage, String tmpdir, String vmid, Integer zstd) throws JSONException {
Map parameters = new HashMap<>();
parameters.put("all", all);
parameters.put("bwlimit", bwlimit);
@@ -15479,6 +15512,7 @@ public Result vzdump(Boolean all, Integer bwlimit, String compress, String dumpd
parameters.put("dumpdir", dumpdir);
parameters.put("exclude", exclude);
parameters.put("exclude-path", exclude_path);
+ parameters.put("fleecing", fleecing);
parameters.put("ionice", ionice);
parameters.put("lockwait", lockwait);
parameters.put("mailnotification", mailnotification);
@@ -15486,6 +15520,7 @@ public Result vzdump(Boolean all, Integer bwlimit, String compress, String dumpd
parameters.put("maxfiles", maxfiles);
parameters.put("mode", mode);
parameters.put("notes-template", notes_template);
+ parameters.put("notification-mode", notification_mode);
parameters.put("notification-policy", notification_policy);
parameters.put("notification-target", notification_target);
parameters.put("performance", performance);
@@ -16886,6 +16921,11 @@ public PVEUpload getUpload() {
public PVEDownloadUrl getDownloadUrl() {
return downloadUrl == null ? (downloadUrl = new PVEDownloadUrl(client, this.node, this.storage)) : downloadUrl;
}
+ private PVEImportMetadata importMetadata;
+
+ public PVEImportMetadata getImportMetadata() {
+ return importMetadata == null ? (importMetadata = new PVEImportMetadata(client, this.node, this.storage)) : importMetadata;
+ }
public class PVEPrunebackups {
@@ -17524,6 +17564,36 @@ public Result downloadUrl(String content, String filename, String url) throws JS
}
+ public class PVEImportMetadata {
+
+ private final PveClient client;
+ private final Object node;
+ private final Object storage;
+
+ protected PVEImportMetadata(PveClient client, Object node, Object storage) {
+ this.client = client;
+ this.node = node;
+ this.storage = storage;
+ }
+
+ /**
+ * Get the base parameters for creating a guest which
+ * imports data from a foreign importable guest, like an
+ * ESXi VM
+ *
+ * @param volume Volume identifier for the guest
+ * archive/entry.
+ * @return Result
+ * @throws JSONException
+ */
+ public Result getImportMetadata(String volume) throws JSONException {
+ Map parameters = new HashMap<>();
+ parameters.put("volume", volume);
+ return client.get("/nodes/" + this.node + "/storage/" + this.storage + "/import-metadata", parameters);
+ }
+
+ }
+
/**
*
* @return Result
@@ -18817,6 +18887,8 @@ public Result getOptions() throws JSONException {
* established timeout.
* @param nf_conntrack_tcp_timeout_syn_recv Conntrack syn
* recv timeout.
+ * @param nftables Enable nftables based firewall (tech
+ * preview)
* @param nosmurfs Enable SMURFS filter.
* @param protection_synflood Enable synflood protection
* @param protection_synflood_burst Synflood protection rate
@@ -18833,7 +18905,7 @@ public Result getOptions() throws JSONException {
* @throws JSONException
*/
- public Result setOptions(String delete, String digest, Boolean enable, String log_level_in, String log_level_out, Boolean log_nf_conntrack, Boolean ndp, Boolean nf_conntrack_allow_invalid, String nf_conntrack_helpers, Integer nf_conntrack_max, Integer nf_conntrack_tcp_timeout_established, Integer nf_conntrack_tcp_timeout_syn_recv, Boolean nosmurfs, Boolean protection_synflood, Integer protection_synflood_burst, Integer protection_synflood_rate, String smurf_log_level, String tcp_flags_log_level, Boolean tcpflags) throws JSONException {
+ public Result setOptions(String delete, String digest, Boolean enable, String log_level_in, String log_level_out, Boolean log_nf_conntrack, Boolean ndp, Boolean nf_conntrack_allow_invalid, String nf_conntrack_helpers, Integer nf_conntrack_max, Integer nf_conntrack_tcp_timeout_established, Integer nf_conntrack_tcp_timeout_syn_recv, Boolean nftables, Boolean nosmurfs, Boolean protection_synflood, Integer protection_synflood_burst, Integer protection_synflood_rate, String smurf_log_level, String tcp_flags_log_level, Boolean tcpflags) throws JSONException {
Map parameters = new HashMap<>();
parameters.put("delete", delete);
parameters.put("digest", digest);
@@ -18847,6 +18919,7 @@ public Result setOptions(String delete, String digest, Boolean enable, String lo
parameters.put("nf_conntrack_max", nf_conntrack_max);
parameters.put("nf_conntrack_tcp_timeout_established", nf_conntrack_tcp_timeout_established);
parameters.put("nf_conntrack_tcp_timeout_syn_recv", nf_conntrack_tcp_timeout_syn_recv);
+ parameters.put("nftables", nftables);
parameters.put("nosmurfs", nosmurfs);
parameters.put("protection_synflood", protection_synflood);
parameters.put("protection_synflood_burst", protection_synflood_burst);
@@ -19375,7 +19448,7 @@ public Result getConfig() throws JSONException {
* concurrent modifications.
* @param startall_onboot_delay Initial delay in seconds, before
* starting all the Virtual Guests with on-boot enabled.
- * @param wakeonlan MAC address for wake on LAN
+ * @param wakeonlan Node specific wake on LAN settings.
* @return Result
* @throws JSONException
*/
@@ -19836,7 +19909,7 @@ protected PVEVncshell(PveClient client, Object node) {
* Creates a VNC Shell proxy.
*
* @param cmd Run specific command or default to login (requires
- * 'root@pam') Enum: ceph_install,login,upgrade
+ * 'root@pam') Enum: upgrade,ceph_install,login
* @param cmd_opts Add parameters to a command. Encoded as null
* terminated strings.
* @param height sets the height of the console in pixels.
@@ -19882,7 +19955,7 @@ protected PVETermproxy(PveClient client, Object node) {
* Creates a VNC Shell proxy.
*
* @param cmd Run specific command or default to login (requires
- * 'root@pam') Enum: ceph_install,login,upgrade
+ * 'root@pam') Enum: upgrade,ceph_install,login
* @param cmd_opts Add parameters to a command. Encoded as null
* terminated strings.
* @return Result
@@ -19949,7 +20022,7 @@ protected PVESpiceshell(PveClient client, Object node) {
* Creates a SPICE shell.
*
* @param cmd Run specific command or default to login (requires
- * 'root@pam') Enum: ceph_install,login,upgrade
+ * 'root@pam') Enum: upgrade,ceph_install,login
* @param cmd_opts Add parameters to a command. Encoded as null
* terminated strings.
* @param proxy SPICE proxy server. This can be used by the
@@ -20523,7 +20596,8 @@ public Result read() throws JSONException {
* while allowing direct I/O. Only use this if data does not need to
* be any more safe than on a single ext4 formatted disk with no
* underlying raid system.
- * @param nodes List of cluster node names.
+ * @param nodes List of nodes for which the storage configuration
+ * applies.
* @param nowritecache disable write caching on the target
* @param options NFS/CIFS mount options (see 'man nfs' or 'man
* mount.cifs')
@@ -20544,7 +20618,13 @@ public Result read() throws JSONException {
* parameter value).
* @param server Server IP or DNS name.
* @param server2 Backup volfile server IP or DNS name.
- * @param shared Mark storage as shared.
+ * @param shared Indicate that this is a single storage with the
+ * same contents on all nodes (or all listed in the 'nodes' option).
+ * It will not make the contents of a local storage automatically
+ * accessible to other nodes, it just marks an already shared
+ * storage as such!
+ * @param skip_cert_verification Disable TLS certificate
+ * verification, only enable on fully trusted networks!
* @param smbversion SMB protocol version. 'default' if not set,
* negotiates the highest SMB2+ version supported by both the client
* and server. Enum: default,2.0,2.1,3,3.0,3.11
@@ -20559,7 +20639,7 @@ public Result read() throws JSONException {
* @throws JSONException
*/
- public Result update(String blocksize, String bwlimit, String comstar_hg, String comstar_tg, String content, String content_dirs, Boolean create_base_path, Boolean create_subdirs, String data_pool, String delete, String digest, Boolean disable, String domain, String encryption_key, String fingerprint, String format, String fs_name, Boolean fuse, String is_mountpoint, String keyring, Boolean krbd, String lio_tpg, String master_pubkey, Integer max_protected_backups, Integer maxfiles, Boolean mkdir, String monhost, String mountpoint, String namespace_, Boolean nocow, String nodes, Boolean nowritecache, String options, String password, String pool, Integer port, String preallocation, String prune_backups, Boolean saferemove, String saferemove_throughput, String server, String server2, Boolean shared, String smbversion, Boolean sparse, String subdir, Boolean tagged_only, String transport, String username) throws JSONException {
+ public Result update(String blocksize, String bwlimit, String comstar_hg, String comstar_tg, String content, String content_dirs, Boolean create_base_path, Boolean create_subdirs, String data_pool, String delete, String digest, Boolean disable, String domain, String encryption_key, String fingerprint, String format, String fs_name, Boolean fuse, String is_mountpoint, String keyring, Boolean krbd, String lio_tpg, String master_pubkey, Integer max_protected_backups, Integer maxfiles, Boolean mkdir, String monhost, String mountpoint, String namespace_, Boolean nocow, String nodes, Boolean nowritecache, String options, String password, String pool, Integer port, String preallocation, String prune_backups, Boolean saferemove, String saferemove_throughput, String server, String server2, Boolean shared, Boolean skip_cert_verification, String smbversion, Boolean sparse, String subdir, Boolean tagged_only, String transport, String username) throws JSONException {
Map parameters = new HashMap<>();
parameters.put("blocksize", blocksize);
parameters.put("bwlimit", bwlimit);
@@ -20604,6 +20684,7 @@ public Result update(String blocksize, String bwlimit, String comstar_hg, String
parameters.put("server", server);
parameters.put("server2", server2);
parameters.put("shared", shared);
+ parameters.put("skip-cert-verification", skip_cert_verification);
parameters.put("smbversion", smbversion);
parameters.put("sparse", sparse);
parameters.put("subdir", subdir);
@@ -20630,7 +20711,7 @@ public Result update() throws JSONException {
* Storage index.
*
* @param type Only list storage of specific type Enum:
- * btrfs,cephfs,cifs,dir,glusterfs,iscsi,iscsidirect,lvm,lvmthin,nfs,pbs,rbd,zfs,zfspool
+ * btrfs,cephfs,cifs,dir,esxi,glusterfs,iscsi,iscsidirect,lvm,lvmthin,nfs,pbs,rbd,zfs,zfspool
* @return Result
* @throws JSONException
*/
@@ -20656,7 +20737,7 @@ public Result index() throws JSONException {
*
* @param storage The storage identifier.
* @param type Storage type. Enum:
- * btrfs,cephfs,cifs,dir,glusterfs,iscsi,iscsidirect,lvm,lvmthin,nfs,pbs,rbd,zfs,zfspool
+ * btrfs,cephfs,cifs,dir,esxi,glusterfs,iscsi,iscsidirect,lvm,lvmthin,nfs,pbs,rbd,zfs,zfspool
* @param authsupported Authsupported.
* @param base_ Base volume. This volume is automatically activated.
* @param blocksize block size
@@ -20707,7 +20788,8 @@ public Result index() throws JSONException {
* and causes data errors to be unrecoverable from while allowing direct
* I/O. Only use this if data does not need to be any more safe than on
* a single ext4 formatted disk with no underlying raid system.
- * @param nodes List of cluster node names.
+ * @param nodes List of nodes for which the storage configuration
+ * applies.
* @param nowritecache disable write caching on the target
* @param options NFS/CIFS mount options (see 'man nfs' or 'man
* mount.cifs')
@@ -20730,7 +20812,12 @@ public Result index() throws JSONException {
* @param server Server IP or DNS name.
* @param server2 Backup volfile server IP or DNS name.
* @param share CIFS share.
- * @param shared Mark storage as shared.
+ * @param shared Indicate that this is a single storage with the same
+ * contents on all nodes (or all listed in the 'nodes' option). It will
+ * not make the contents of a local storage automatically accessible to
+ * other nodes, it just marks an already shared storage as such!
+ * @param skip_cert_verification Disable TLS certificate verification,
+ * only enable on fully trusted networks!
* @param smbversion SMB protocol version. 'default' if not set,
* negotiates the highest SMB2+ version supported by both the client and
* server. Enum: default,2.0,2.1,3,3.0,3.11
@@ -20747,7 +20834,7 @@ public Result index() throws JSONException {
* @throws JSONException
*/
- public Result create(String storage, String type, String authsupported, String base_, String blocksize, String bwlimit, String comstar_hg, String comstar_tg, String content, String content_dirs, Boolean create_base_path, Boolean create_subdirs, String data_pool, String datastore, Boolean disable, String domain, String encryption_key, String export, String fingerprint, String format, String fs_name, Boolean fuse, String is_mountpoint, String iscsiprovider, String keyring, Boolean krbd, String lio_tpg, String master_pubkey, Integer max_protected_backups, Integer maxfiles, Boolean mkdir, String monhost, String mountpoint, String namespace_, Boolean nocow, String nodes, Boolean nowritecache, String options, String password, String path, String pool, Integer port, String portal, String preallocation, String prune_backups, Boolean saferemove, String saferemove_throughput, String server, String server2, String share, Boolean shared, String smbversion, Boolean sparse, String subdir, Boolean tagged_only, String target, String thinpool, String transport, String username, String vgname, String volume) throws JSONException {
+ public Result create(String storage, String type, String authsupported, String base_, String blocksize, String bwlimit, String comstar_hg, String comstar_tg, String content, String content_dirs, Boolean create_base_path, Boolean create_subdirs, String data_pool, String datastore, Boolean disable, String domain, String encryption_key, String export, String fingerprint, String format, String fs_name, Boolean fuse, String is_mountpoint, String iscsiprovider, String keyring, Boolean krbd, String lio_tpg, String master_pubkey, Integer max_protected_backups, Integer maxfiles, Boolean mkdir, String monhost, String mountpoint, String namespace_, Boolean nocow, String nodes, Boolean nowritecache, String options, String password, String path, String pool, Integer port, String portal, String preallocation, String prune_backups, Boolean saferemove, String saferemove_throughput, String server, String server2, String share, Boolean shared, Boolean skip_cert_verification, String smbversion, Boolean sparse, String subdir, Boolean tagged_only, String target, String thinpool, String transport, String username, String vgname, String volume) throws JSONException {
Map parameters = new HashMap<>();
parameters.put("storage", storage);
parameters.put("type", type);
@@ -20800,6 +20887,7 @@ public Result create(String storage, String type, String authsupported, String b
parameters.put("server2", server2);
parameters.put("share", share);
parameters.put("shared", shared);
+ parameters.put("skip-cert-verification", skip_cert_verification);
parameters.put("smbversion", smbversion);
parameters.put("sparse", sparse);
parameters.put("subdir", subdir);
@@ -20818,7 +20906,7 @@ public Result create(String storage, String type, String authsupported, String b
*
* @param storage The storage identifier.
* @param type Storage type. Enum:
- * btrfs,cephfs,cifs,dir,glusterfs,iscsi,iscsidirect,lvm,lvmthin,nfs,pbs,rbd,zfs,zfspool
+ * btrfs,cephfs,cifs,dir,esxi,glusterfs,iscsi,iscsidirect,lvm,lvmthin,nfs,pbs,rbd,zfs,zfspool
* @return Result
* @throws JSONException
*/
@@ -22050,7 +22138,8 @@ protected PVEIdItem(PveClient client, Object userid, Object id) {
/**
* Delete a TFA entry by ID.
*
- * @param password The current password.
+ * @param password The current password of the user
+ * performing the change.
* @return Result
* @throws JSONException
*/
@@ -22089,7 +22178,8 @@ public Result getTfaEntry() throws JSONException {
* entries from one another
* @param enable Whether the entry should be enabled for
* login.
- * @param password The current password.
+ * @param password The current password of the user
+ * performing the change.
* @return Result
* @throws JSONException
*/
@@ -22134,7 +22224,8 @@ public Result listUserTfa() throws JSONException {
* original challenge string
* @param description A description to distinguish multiple
* entries from one another
- * @param password The current password.
+ * @param password The current password of the user performing
+ * the change.
* @param totp A totp URI.
* @param value The current value for the provided totp URI, or
* a Webauthn/U2F challenge response
@@ -22269,9 +22360,28 @@ protected PVEPassword(PveClient client) {
*
* @param password The new password.
* @param userid Full User ID, in the `name@realm` format.
+ * @param confirmation_password The current password of the user
+ * performing the change.
* @return Result
* @throws JSONException
*/
+ public Result changePassword(String password, String userid, String confirmation_password) throws JSONException {
+ Map parameters = new HashMap<>();
+ parameters.put("password", password);
+ parameters.put("userid", userid);
+ parameters.put("confirmation-password", confirmation_password);
+ return client.set("/access/password", parameters);
+ }
+
+ /**
+ * Change user password.
+ *
+ * @param password The new password.
+ * @param userid Full User ID, in the `name@realm` format.
+ * @return Result
+ * @throws JSONException
+ */
+
public Result changePassword(String password, String userid) throws JSONException {
Map parameters = new HashMap<>();
parameters.put("password", password);