blob: bcc8d564e6100977839ee95633172430cb6f73db [file] [log] [blame]
Matthias Andreas Benkardb382b102021-01-02 15:32:21 +01001<?php
2
3namespace RobThree\Auth\Providers\Qr;
4
5abstract class BaseHTTPQRCodeProvider implements IQRCodeProvider
6{
Matthias Andreas Benkard7b2a3a12021-08-16 10:57:25 +02007 /** @var bool */
Matthias Andreas Benkardb382b102021-01-02 15:32:21 +01008 protected $verifyssl;
9
Matthias Andreas Benkard7b2a3a12021-08-16 10:57:25 +020010 /**
11 * @param string $url
12 *
13 * @return string|bool
14 */
Matthias Andreas Benkardb382b102021-01-02 15:32:21 +010015 protected function getContent($url)
16 {
17 $curlhandle = curl_init();
Matthias Andreas Benkard7b2a3a12021-08-16 10:57:25 +020018
Matthias Andreas Benkardb382b102021-01-02 15:32:21 +010019 curl_setopt_array($curlhandle, array(
20 CURLOPT_URL => $url,
21 CURLOPT_RETURNTRANSFER => true,
22 CURLOPT_CONNECTTIMEOUT => 10,
23 CURLOPT_DNS_CACHE_TIMEOUT => 10,
24 CURLOPT_TIMEOUT => 10,
25 CURLOPT_SSL_VERIFYPEER => $this->verifyssl,
26 CURLOPT_USERAGENT => 'TwoFactorAuth'
27 ));
28 $data = curl_exec($curlhandle);
Matthias Andreas Benkard7b2a3a12021-08-16 10:57:25 +020029
Matthias Andreas Benkardb382b102021-01-02 15:32:21 +010030 curl_close($curlhandle);
31 return $data;
32 }
Matthias Andreas Benkard7b2a3a12021-08-16 10:57:25 +020033}