From 7d48940bf00be72473ffe9dfc4b5a03e3d948445 Mon Sep 17 00:00:00 2001 From: Dietmar Maurer Date: Fri, 21 Oct 2016 07:06:36 +0200 Subject: [PATCH] asciidoc-pve.in: detect and avoid xrefs spanning multiple lines Because our parser is not smart enough to do it better. --- asciidoc-pve.in | 6 ++++++ pvecm.adoc | 9 +++++---- pveum.adoc | 14 ++++++++------ 3 files changed, 19 insertions(+), 10 deletions(-) diff --git a/asciidoc-pve.in b/asciidoc-pve.in index e298abf..b8a9fb2 100644 --- a/asciidoc-pve.in +++ b/asciidoc-pve.in @@ -234,6 +234,12 @@ sub prepare_adoc_file { next; } + if ($line =~ m/xref:\S+?\[[^\]]*$/) { + die "possible xref spanning multiple lines in '$filename':\n(line $.): $line\n"; + } + if ($line =~ m/<<((?!\>\>).)*$/) { + die "possible xref spanning multiple lines in '$filename':\n(line $.): $line\n"; + } # fix xrefs $line =~ s/xref:([^\s\[\]]+)\[([^\]]*)\]/replace_xref(${target_env},$1,$2)/ge; diff --git a/pvecm.adoc b/pvecm.adoc index 99fe3a9..bb1477b 100644 --- a/pvecm.adoc +++ b/pvecm.adoc @@ -666,8 +666,9 @@ RRP On A Created Cluster ~~~~~~~~~~~~~~~~~~~~~~~~ When enabling an already running cluster to use RRP you will take similar steps -as describe in <>. You just do it on another ring. +as describe in +<>. You +just do it on another ring. First add a new `interface` subsection in the `totem` section, set its `ringnumber` property to `1`. Set the interfaces `bindnetaddr` property to an @@ -722,8 +723,8 @@ nodelist { ---- -Bring it in effect like described in the <> section. +Bring it in effect like described in the +<> section. This is a change which cannot take live in effect and needs at least a restart of corosync. Recommended is a restart of the whole cluster. diff --git a/pveum.adoc b/pveum.adoc index 95406c9..14fff25 100644 --- a/pveum.adoc +++ b/pveum.adoc @@ -295,7 +295,7 @@ We use file system like paths to address these objects. These paths form a natural tree, and permissions of higher levels (shorter path) can optionally be propagated down within this hierarchy. -[[templated-paths]] +[[pveum_templated_paths]] Paths can be templated. When an API call requires permissions on a templated path, the path may contain references to parameters of the API call. These references are specified in curly braces. Some parameters are @@ -310,7 +310,7 @@ Some examples are: * `/vms`: Covers all VMs * `/vms/{vmid}`: Access to specific VMs * `/storage/{storeid}`: Access to a storages -* `/pool/{poolname}`: Access to VMs part of a < +* `/pool/{poolname}`: Access to VMs part of a <> * `/access/groups`: Group administration * `/access/realms/{realmid}`: Administrative access to realms @@ -350,8 +350,9 @@ tree of logic and access-check functions: Each(`and`) or any(`or`) further element in the current list has to be true. `["perm", , [ ... ], ...]`:: -The `path` is a templated parameter (see <>). All (or , if the `any` option is used, any) of the listed +The `path` is a templated parameter (see +<>). All (or , if the `any` +option is used, any) of the listed privileges must be allowed on the specified path. If a `require-param` option is specified, then its specified parameter is required even if the API call's schema otherwise lists it as being optional. @@ -382,8 +383,9 @@ associated with a realm, since user IDs are passed in the form of `@`. `["perm-modify", ]`:: -The `path` is a templated parameter (see <>). The user needs either the `Permissions.Modify` privilege, or, +The `path` is a templated parameter (see +<>). The user needs either the +`Permissions.Modify` privilege, or, depending on the path, the following privileges as a possible substitute: + * `/storage/...`: additionally requires 'Datastore.Allocate` -- 2.39.2