diff --git a/src/PrivacyIDEA.php b/src/PrivacyIDEA.php index c0be33a4fbd6ad5f8c0d24cdbed43d4acabdfd96..a2c9ac6c02c81ce82e26a504123eee9797856578 100644 --- a/src/PrivacyIDEA.php +++ b/src/PrivacyIDEA.php @@ -42,6 +42,16 @@ class PrivacyIDEA */ public $sslVerifyPeer = true; + /** + * @var int cURL connect timeout in seconds + */ + public $connectTimeout = 0; + + /** + * @var int cURL timeout in seconds + */ + public $timeout; + /** * @var string Account name for a service account to the privacyIDEA server. This is required to use the /validate/triggerchallenge endpoint. */ @@ -391,6 +401,10 @@ class PrivacyIDEA $completeUrl = $this->serverURL . $endpoint; $curlInstance = curl_init(); + curl_setopt($curlInstance, CURLOPT_CONNECTTIMEOUT, $this->connectTimeout); + if (null !== $this->timeout) { + curl_setopt($curlInstance, CURLOPT_TIMEOUT, $this->timeout); + } curl_setopt($curlInstance, CURLOPT_URL, $completeUrl); curl_setopt($curlInstance, CURLOPT_HEADER, true); if ($headers) {