[pbs-devel] [PATCH proxmox-backup v4] restrict consent-banner text length

Gabriel Goller g.goller at proxmox.com
Thu Apr 10 10:20:52 CEST 2025


Add a maxLength in of 64*1024 in the frontend and the api. We allow
a max body size of 512*1024 in the api (with patch [0]) so we should be
fine.

[0]: https://git.proxmox.com/?p=proxmox.git;a=commit;h=cf9e6c03a092acf8808ce83dad9249414fe4d588

Signed-off-by: Gabriel Goller <g.goller at proxmox.com>
---

v4:
 - changed to 64kB on frontend and api, so that we have the same limits
   as in pve

v3:
 - forgot to update the actual number in code

v2, thanks @Thomas:
 - limit consent-text in the api as well
 - set the limit according to the max body size

 src/config/node.rs           | 5 +++++
 www/config/NodeOptionView.js | 3 +++
 2 files changed, 8 insertions(+)

diff --git a/src/config/node.rs b/src/config/node.rs
index 2b29cb02afed..fb6b182dbc53 100644
--- a/src/config/node.rs
+++ b/src/config/node.rs
@@ -174,6 +174,11 @@ pub enum Translation {
         "description" : {
             optional: true,
             schema: MULTI_LINE_COMMENT_SCHEMA,
+        },
+        "consent-text" : {
+            optional: true,
+            type: String,
+            max_length: 64 * 1024,
         }
     },
 )]
diff --git a/www/config/NodeOptionView.js b/www/config/NodeOptionView.js
index c327356f7f24..5fd17d804ec0 100644
--- a/www/config/NodeOptionView.js
+++ b/www/config/NodeOptionView.js
@@ -59,6 +59,9 @@ Ext.define('PBS.NodeOptionView', {
 	    name: 'consent-text',
 	    text: gettext('Consent Text'),
 	    deleteEmpty: true,
+	    fieldOpts: {
+		maxLength: 64 * 1024,
+	    },
 	    onlineHelp: 'consent_banner',
 	},
     ],
-- 
2.39.5





More information about the pbs-devel mailing list