kritbit

kritbit Git Source Tree


Root/web/system/vendor/phpoauthlib2/ccurl.php

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
<?php
 
namespace phpoauthlib2;
 
// Copied from PHP manual comment section:
// Modified to fit Inefero's/srchub needs
// Now used for oauth lib
class ccurl {
    protected $_useragent = 'phpoauthlib2 (http://www.srchub.org); https://srchub.org/p/phpoauthlib2 PHPOAuthLib';
    protected $_url;
    protected $_followlocation;
    protected $_timeout;
    protected $_maxRedirects;
    protected $_cookieFileLocation = './cookie.txt';
    protected $_post;
    protected $_postFields;
    protected $_referer ="";
 
    // Get around some broken webservers *cough*IIS*cough*?
    protected $_header = array('Expect:');
 
    protected $_session;
    protected $_webpage;
    protected $_includeHeader;
    protected $_noBody;
    protected $_status;
    protected $_binaryTransfer;
    public    $authentication = 0;
    public    $auth_name      = '';
    public    $auth_pass      = '';
 
    public function useAuth($use){
        $this->authentication = 0;
        if($use == true) $this->authentication = 1;
    }
 
    public function setName($name){
        $this->auth_name = $name;
    }
    public function setPass($pass){
        $this->auth_pass = $pass;
    }
 
    public function addHeader($head)
    {
        $this->_header[] = $head;
    }
 
    public function __construct($url,$followlocation = true,$timeOut = 30,$maxRedirecs = 4,$binaryTransfer = false,$includeHeader = false,$noBody = false)
    {
        $this->_url = $url;
        $this->_followlocation = $followlocation;
        $this->_timeout = $timeOut;
        $this->_maxRedirects = $maxRedirecs;
        $this->_noBody = $noBody;
        $this->_includeHeader = $includeHeader;
        $this->_binaryTransfer = $binaryTransfer;
 
        $this->_cookieFileLocation = dirname(__FILE__).'/cookie.txt';
 
    }
 
    public function setReferer($referer){
        $this->_referer = $referer;
    }
 
    public function setCookiFileLocation($path)
    {
        $this->_cookieFileLocation = $path;
    }
 
    public function setPost ($postFields)
    {
        $this->_post = true;
        $this->_postFields = $postFields;
    }
 
    public function setUserAgent($userAgent)
    {
        $this->_useragent = $userAgent;
    }
 
    public function createCurl($url = 'nul')
    {
        if($url != 'nul'){
            $this->_url = $url;
        }
 
        $s = curl_init();
 
        curl_setopt($s,CURLOPT_URL,$this->_url);
 
        // I understand the implications here - but this isn't a client application
        // if my ISP is performing MITM sniffing I have bigger fish to fry
        // also the security of a CA signed certificate is questionable at best
        // Email me if you want to discus this adamsna@datanethost.net
        // NA - 12/10/2014
        curl_setopt($s, CURLOPT_SSL_VERIFYPEER, false);
 
        curl_setopt($s,CURLOPT_HTTPHEADER,$this->_header);
        curl_setopt($s,CURLOPT_TIMEOUT,$this->_timeout);
        curl_setopt($s,CURLOPT_MAXREDIRS,$this->_maxRedirects);
        curl_setopt($s,CURLOPT_RETURNTRANSFER,true);
        curl_setopt($s,CURLOPT_FOLLOWLOCATION,$this->_followlocation);
        curl_setopt($s,CURLOPT_COOKIEJAR,$this->_cookieFileLocation);
        curl_setopt($s,CURLOPT_COOKIEFILE,$this->_cookieFileLocation);
 
        if($this->authentication == 1){
            curl_setopt($s, CURLOPT_USERPWD, $this->auth_name.':'.$this->auth_pass);
        }
        if($this->_post)
        {
            //curl_setopt($s,CURLOPT_POST,true);
            curl_setopt($s, CURLOPT_CUSTOMREQUEST, "POST");
            curl_setopt($s,CURLOPT_POSTFIELDS,$this->_postFields);
 
        }
 
        if($this->_includeHeader)
        {
            curl_setopt($s,CURLOPT_HEADER,true);
        }
 
        if($this->_noBody)
        {
            curl_setopt($s,CURLOPT_NOBODY,true);
        }
 
        curl_setopt($s,CURLOPT_USERAGENT,$this->_useragent);
        curl_setopt($s,CURLOPT_REFERER,$this->_referer);
 
        $this->_webpage = curl_exec($s);
        $this->_status = curl_getinfo($s,CURLINFO_HTTP_CODE);
        curl_close($s);
 
    }
 
    public function getHttpStatus()
    {
        return $this->_status;
    }
 
    public function __tostring(){
        return $this->_webpage;
    }
}

Archive Download this file

Branches

Number of commits:
Page rendered in 0.20351s using 11 queries.