From 9a2f3cd4291b8f220b05084f26bfd31df8425669 Mon Sep 17 00:00:00 2001 From: Christian Stein Date: Fri, 27 Mar 2020 17:53:29 +0100 Subject: [PATCH] Adds support for API arguments without value --- lib/web/Read-IcingaRESTMessage.psm1 | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/lib/web/Read-IcingaRESTMessage.psm1 b/lib/web/Read-IcingaRESTMessage.psm1 index 9ab382b..8e36673 100644 --- a/lib/web/Read-IcingaRESTMessage.psm1 +++ b/lib/web/Read-IcingaRESTMessage.psm1 @@ -40,13 +40,17 @@ function Read-IcingaRESTMessage() $ArgumentsSplit = $Arguments.Split('&'); $ArgumentsSplit+='\\\\\\\\\\\\=FIN'; foreach ( $Argument in $ArgumentsSplit | Sort-Object -descending) { - $Argument -match '(.+)=(.+)' | Out-Null; - If (($Matches[1] -ne $Current) -And ($NULL -ne $Current)) { - $Request.RequestArguments.Add( $Current, $ArgumentContent ); - [array]$ArgumentContent = $null; + if ($Argument.Contains('=')) { + $Argument -match '(.+)=(.+)' | Out-Null; + If (($Matches[1] -ne $Current) -And ($NULL -ne $Current)) { + $Request.RequestArguments.Add( $Current, $ArgumentContent ); + [array]$ArgumentContent = $null; + } + $Current = $Matches[1]; + [array]$ArgumentContent += ($Matches[2]); + } else { + $Request.RequestArguments.Add( $Argument, $null ); } - $Current = $Matches[1]; - [array]$ArgumentContent += ($Matches[2]); } # Header