summaryrefslogtreecommitdiffstats
path: root/forms
diff options
context:
space:
mode:
authorCaolán McNamara <caolanm@redhat.com>2020-05-11 20:46:43 +0100
committerThorsten Behrens <thorsten.behrens@allotropia.de>2021-04-09 23:22:01 +0200
commit4b7f025b14a0e3f34217c184c589a90c10b9061d (patch)
tree649468b735fa4e747d1313a407f4a467f5e1dc05 /forms
parentuse the LinkManager persist to determine the Referer (diff)
downloadcore-4b7f025b14a0e3f34217c184c589a90c10b9061d.tar.gz
core-4b7f025b14a0e3f34217c184c589a90c10b9061d.zip
limit forms to http[s]
Change-Id: I3ed0bc626f693ec03f610dc7361f93cad914c9d8 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/93993 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'forms')
-rw-r--r--forms/source/xforms/submission.cxx3
-rw-r--r--forms/source/xforms/submission/submission.hxx6
2 files changed, 9 insertions, 0 deletions
diff --git a/forms/source/xforms/submission.cxx b/forms/source/xforms/submission.cxx
index 3074619981c9..7da6a1e45c9a 100644
--- a/forms/source/xforms/submission.cxx
+++ b/forms/source/xforms/submission.cxx
@@ -252,6 +252,9 @@ bool Submission::doSubmit( const Reference< XInteractionHandler >& xHandler )
return false;
}
+ if (!xSubmission->IsWebProtocol())
+ return false;
+
CSubmission::SubmissionResult aResult = xSubmission->submit( xHandler );
if (aResult == CSubmission::SUCCESS)
diff --git a/forms/source/xforms/submission/submission.hxx b/forms/source/xforms/submission/submission.hxx
index 77d59b1f740e..a459f471ba0d 100644
--- a/forms/source/xforms/submission/submission.hxx
+++ b/forms/source/xforms/submission/submission.hxx
@@ -126,6 +126,12 @@ public:
, m_xContext(::comphelper::getProcessComponentContext())
{}
+ bool IsWebProtocol() const
+ {
+ INetProtocol eProtocol = m_aURLObj.GetProtocol();
+ return eProtocol == INetProtocol::Http || eProtocol == INetProtocol::Https;
+ }
+
virtual ~CSubmission() {}
virtual SubmissionResult submit(const css::uno::Reference< css::task::XInteractionHandler >& ) = 0;