diff --git a/app/Lib/Tools/HttpSocketExtended.php b/app/Lib/Tools/HttpSocketExtended.php index 2147ea8a8..30ab5d2c2 100644 --- a/app/Lib/Tools/HttpSocketExtended.php +++ b/app/Lib/Tools/HttpSocketExtended.php @@ -32,6 +32,10 @@ class HttpSocketResponseExtended extends HttpSocketResponse { parent::parseResponse($message); + if ($this->body === '') { + return; // skip decoding body if is empty + } + $contentEncoding = $this->getHeader('Content-Encoding'); if ($contentEncoding === 'gzip' && function_exists('gzdecode')) { $this->body = gzdecode($this->body); diff --git a/app/Model/AppModel.php b/app/Model/AppModel.php index 3f4e0d216..4e4c0acae 100644 --- a/app/Model/AppModel.php +++ b/app/Model/AppModel.php @@ -2727,26 +2727,26 @@ class AppModel extends Model /** * @param array $server + * @param string $model * @return array[] * @throws JsonException */ protected function setupSyncRequest(array $server, $model = 'Server') { $version = implode('.', $this->checkMISPVersion()); + $commit = $this->checkMIPSCommit(); $request = array( 'header' => array( 'Authorization' => $server[$model]['authkey'], 'Accept' => 'application/json', 'Content-Type' => 'application/json', 'MISP-version' => $version, + 'User-Agent' => 'MISP ' . $version . (empty($commit) ? '' : ' - #' . $commit), ) ); - - $commit = $this->checkMIPSCommit(); if ($commit) { $request['header']['commit'] = $commit; } - $request['header']['User-Agent'] = 'MISP ' . $version . (empty($commit) ? '' : ' - #' . $commit); return $request; } diff --git a/app/Model/Event.php b/app/Model/Event.php index ed9fbcead..78c39e09f 100755 --- a/app/Model/Event.php +++ b/app/Model/Event.php @@ -4472,13 +4472,11 @@ class Event extends AppModel $elevatedUser = array( 'Role' => array( 'perm_site_admin' => 1, - 'perm_sync' => 1 + 'perm_sync' => 1, + 'perm_audit' => 0, ), 'org_id' => $eventOrgcId['Event']['orgc_id'] ); - $elevatedUser['Role']['perm_site_admin'] = 1; - $elevatedUser['Role']['perm_sync'] = 1; - $elevatedUser['Role']['perm_audit'] = 0; $event = $this->fetchEvent($elevatedUser, array('eventid' => $id, 'metadata' => 1)); if (empty($event)) { return true;