title: OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 104
body: <p>I am posing order-data on ssl means (https) based api via curl, But it return <strong>OpenSSL SSL_read: SSL_ERROR_SYSCALL, errno 104</strong> message.</p>
  
  <p>Here is my test code as per client required json:</p>
  
  <pre><code>$apiKey = "xxxxxx-xxxxxx-xxxxx-xxxxxx-xxxxxx";
  $privatekey = "xxxxxx-xxxxxx-xxxxx-xxxxxx-xxxxxx";
  $timestamp = date('Y-m-d H:i:s'); // (for example: 2016-07-19 14:05:55)
  
  $signature = hash_hmac('sha1', $timestamp, $apiKey);
  $signature = hash_hmac('sha1', $privatekey, $signature);
  
  $postURL = "https://www.compu-cover.com/intelligent-rewards/orders/?OrderNo=123";
  
  $orderInfo['Order'] = array(
          "apiKey" =&gt; $apiKey,
          "privatekey" =&gt; $privatekey,
          "Signature" =&gt; $signature,
          "Timestamp" =&gt; $timestamp,
          "Firstname" =&gt; "Ajay",
          "Surname" =&gt; "Sharma",
          "EmailAddress" =&gt; "ajay@yopmail.com",
          "DaytimeTel" =&gt; "0141798526",
          "EveningTel" =&gt; "0141798526",
          "MobileTel" =&gt; "9887654321",
          "Address1" =&gt; "A-5",
          "Address2" =&gt; "Jhalana",
          "Address3" =&gt; "Jaipur",
          "Address4" =&gt; "Rajasthan",
          "County" =&gt; "India",
          "Postcode" =&gt; "302019", 
          "Cover" =&gt; "ADTBL",
          "Scheme" =&gt; 2, 
          "Premium" =&gt; 5,
          "EquipmentQty" =&gt; 1,
          "EquipmentType1" =&gt; "Smartphone",
          "EquipmentMake1" =&gt; "Moto",
          "EquipmentModel1" =&gt; "Moto G",
          "EquipmentPrice1" =&gt; 100
      );
  
  $params = json_encode($orderInfo);
  
  $session = curl_init($postURL);
  
  curl_setopt($session, CURLOPT_POST, true);
  curl_setopt($session, CURLOPT_POSTFIELDS, $params);
  curl_setopt($session, CURLOPT_HEADER, true);
  curl_setopt($session, CURLOPT_SSL_VERIFYPEER, true); 
  
  $response = curl_exec($session);
  
  if (FALSE === $response) {
      var_dump(curl_error($session));
      var_dump(curl_errno($session));
  }
  
  curl_close($session);
  $response = json_decode($response);
  
  var_dump($response);
  </code></pre>
  
  <p>How to find reason for the failure? What could be the reason for failure? kindly provide your suggestions.</p>