aboutsummaryrefslogtreecommitdiffstats
path: root/spec
diff options
context:
space:
mode:
authorKim Alvefur <zash@zash.se>2021-10-20 17:31:24 +0200
committerKim Alvefur <zash@zash.se>2021-10-20 17:31:24 +0200
commit8b769c373d076ea0a678680ef187f83cd0e7d19d (patch)
tree85dc8ecc0113c5126835a69e61948e2727f4ff08 /spec
parent4b05d0f2402475fea608fd3e48a96364bc6da4f2 (diff)
downloadprosody-8b769c373d076ea0a678680ef187f83cd0e7d19d.tar.gz
prosody-8b769c373d076ea0a678680ef187f83cd0e7d19d.zip
mod_pubsub: Prevent max_items from being set to zero
Disable persistence instead if no items should be persisted. XEP-0060 is not entirely clear on what either of those option really mean.
Diffstat (limited to 'spec')
-rw-r--r--spec/scansion/pubsub_config.scs8
-rw-r--r--spec/scansion/pubsub_max_items.scs4
-rw-r--r--spec/scansion/pubsub_multi_items.scs4
-rw-r--r--spec/scansion/pubsub_preconditions.scs8
4 files changed, 18 insertions, 6 deletions
diff --git a/spec/scansion/pubsub_config.scs b/spec/scansion/pubsub_config.scs
index 28505f28..de3f47da 100644
--- a/spec/scansion/pubsub_config.scs
+++ b/spec/scansion/pubsub_config.scs
@@ -48,7 +48,9 @@ Romeo receives:
<field var="pubsub#description" label="Description" type="text-single"/>
<field var="pubsub#type" label="The type of node data, usually specified by the namespace of the payload (if any)" type="text-single"/>
<field var="pubsub#max_items" label="Max # of items to persist" type="text-single">
- <validate xmlns="http://jabber.org/protocol/xdata-validate" datatype="pubsub:integer-or-max"/>
+ <validate xmlns="http://jabber.org/protocol/xdata-validate" datatype="pubsub:integer-or-max">
+ <range min="1"/>
+ </validate>
<value>1</value>
</field>
<field var="pubsub#persist_items" label="Persist items to storage" type="boolean">
@@ -136,7 +138,9 @@ Romeo sends:
<field var="pubsub#description" type="text-single" label="Description"/>
<field var="pubsub#type" type="text-single" label="The type of node data, usually specified by the namespace of the payload (if any)"/>
<field var="pubsub#max_items" type="text-single" label="Max # of items to persist">
- <validate xmlns="http://jabber.org/protocol/xdata-validate" datatype="pubsub:integer-or-max"/>
+ <validate xmlns="http://jabber.org/protocol/xdata-validate" datatype="pubsub:integer-or-max">
+ <range min="1"/>
+ </validate>
<value>1</value>
</field>
<field var="pubsub#persist_items" type="boolean" label="Persist items to storage">
diff --git a/spec/scansion/pubsub_max_items.scs b/spec/scansion/pubsub_max_items.scs
index dafeb317..ae106edd 100644
--- a/spec/scansion/pubsub_max_items.scs
+++ b/spec/scansion/pubsub_max_items.scs
@@ -43,7 +43,9 @@ Alice receives:
<field var="pubsub#description" label="Description" type="text-single"/>
<field var="pubsub#type" label="The type of node data, usually specified by the namespace of the payload (if any)" type="text-single"/>
<field var="pubsub#max_items" label="Max # of items to persist" type="text-single">
- <validate xmlns="http://jabber.org/protocol/xdata-validate" datatype="pubsub:integer-or-max"/>
+ <validate xmlns="http://jabber.org/protocol/xdata-validate" datatype="pubsub:integer-or-max">
+ <range min="1"/>
+ </validate>
<value>20</value>
</field>
<field var="pubsub#persist_items" label="Persist items to storage" type="boolean">
diff --git a/spec/scansion/pubsub_multi_items.scs b/spec/scansion/pubsub_multi_items.scs
index d4f2e01b..d8a9536a 100644
--- a/spec/scansion/pubsub_multi_items.scs
+++ b/spec/scansion/pubsub_multi_items.scs
@@ -43,7 +43,9 @@ Alice receives:
<field var="pubsub#description" label="Description" type="text-single"/>
<field var="pubsub#type" label="The type of node data, usually specified by the namespace of the payload (if any)" type="text-single"/>
<field var="pubsub#max_items" label="Max # of items to persist" type="text-single">
- <validate xmlns="http://jabber.org/protocol/xdata-validate" datatype="pubsub:integer-or-max"/>
+ <validate xmlns="http://jabber.org/protocol/xdata-validate" datatype="pubsub:integer-or-max">
+ <range min="1"/>
+ </validate>
<value>20</value>
</field>
<field var="pubsub#persist_items" label="Persist items to storage" type="boolean">
diff --git a/spec/scansion/pubsub_preconditions.scs b/spec/scansion/pubsub_preconditions.scs
index 744070db..bcf83219 100644
--- a/spec/scansion/pubsub_preconditions.scs
+++ b/spec/scansion/pubsub_preconditions.scs
@@ -47,7 +47,9 @@ Romeo receives:
<field var="pubsub#description" label="Description" type="text-single"/>
<field var="pubsub#type" label="The type of node data, usually specified by the namespace of the payload (if any)" type="text-single"/>
<field var="pubsub#max_items" label="Max # of items to persist" type="text-single">
- <validate xmlns="http://jabber.org/protocol/xdata-validate" datatype="pubsub:integer-or-max"/>
+ <validate xmlns="http://jabber.org/protocol/xdata-validate" datatype="pubsub:integer-or-max">
+ <range min="1"/>
+ </validate>
<value>1</value>
</field>
<field var="pubsub#persist_items" label="Persist items to storage" type="boolean">
@@ -135,7 +137,9 @@ Romeo sends:
<field var="pubsub#description" type="text-single" label="Description"/>
<field var="pubsub#type" type="text-single" label="The type of node data, usually specified by the namespace of the payload (if any)"/>
<field var="pubsub#max_items" type="text-single" label="Max # of items to persist">
- <validate xmlns="http://jabber.org/protocol/xdata-validate" datatype="pubsub:integer-or-max"/>
+ <validate xmlns="http://jabber.org/protocol/xdata-validate" datatype="pubsub:integer-or-max">
+ <range min="1"/>
+ </validate>
<value>1</value>
</field>
<field var="pubsub#persist_items" type="boolean" label="Persist items to storage">