diff --git a/backends/twitter/libtwitcurl/.svn/all-wcprops b/backends/twitter/libtwitcurl/.svn/all-wcprops deleted file mode 100644 index feb09796..00000000 --- a/backends/twitter/libtwitcurl/.svn/all-wcprops +++ /dev/null @@ -1,131 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 34 -/svn/!svn/ver/89/trunk/libtwitcurl -END -twitcurl.vcproj -K 25 -svn:wc:ra_dav:version-url -V 50 -/svn/!svn/ver/55/trunk/libtwitcurl/twitcurl.vcproj -END -SHA1.h -K 25 -svn:wc:ra_dav:version-url -V 41 -/svn/!svn/ver/47/trunk/libtwitcurl/SHA1.h -END -oauthlib.cpp -K 25 -svn:wc:ra_dav:version-url -V 47 -/svn/!svn/ver/89/trunk/libtwitcurl/oauthlib.cpp -END -oauthlib.h -K 25 -svn:wc:ra_dav:version-url -V 45 -/svn/!svn/ver/89/trunk/libtwitcurl/oauthlib.h -END -twitcurl.plg -K 25 -svn:wc:ra_dav:version-url -V 47 -/svn/!svn/ver/47/trunk/libtwitcurl/twitcurl.plg -END -twitcurl.cpp -K 25 -svn:wc:ra_dav:version-url -V 47 -/svn/!svn/ver/87/trunk/libtwitcurl/twitcurl.cpp -END -urlencode.cpp -K 25 -svn:wc:ra_dav:version-url -V 48 -/svn/!svn/ver/47/trunk/libtwitcurl/urlencode.cpp -END -twitcurl.dsp -K 25 -svn:wc:ra_dav:version-url -V 47 -/svn/!svn/ver/47/trunk/libtwitcurl/twitcurl.dsp -END -twitcurl.h -K 25 -svn:wc:ra_dav:version-url -V 45 -/svn/!svn/ver/87/trunk/libtwitcurl/twitcurl.h -END -HMAC_SHA1.cpp -K 25 -svn:wc:ra_dav:version-url -V 48 -/svn/!svn/ver/79/trunk/libtwitcurl/HMAC_SHA1.cpp -END -base64.cpp -K 25 -svn:wc:ra_dav:version-url -V 45 -/svn/!svn/ver/47/trunk/libtwitcurl/base64.cpp -END -urlencode.h -K 25 -svn:wc:ra_dav:version-url -V 46 -/svn/!svn/ver/47/trunk/libtwitcurl/urlencode.h -END -COPYING -K 25 -svn:wc:ra_dav:version-url -V 42 -/svn/!svn/ver/65/trunk/libtwitcurl/COPYING -END -twitcurl.sln -K 25 -svn:wc:ra_dav:version-url -V 47 -/svn/!svn/ver/47/trunk/libtwitcurl/twitcurl.sln -END -twitcurl.dsw -K 25 -svn:wc:ra_dav:version-url -V 47 -/svn/!svn/ver/47/trunk/libtwitcurl/twitcurl.dsw -END -base64.h -K 25 -svn:wc:ra_dav:version-url -V 43 -/svn/!svn/ver/47/trunk/libtwitcurl/base64.h -END -HMAC_SHA1.h -K 25 -svn:wc:ra_dav:version-url -V 46 -/svn/!svn/ver/79/trunk/libtwitcurl/HMAC_SHA1.h -END -SHA1.cpp -K 25 -svn:wc:ra_dav:version-url -V 43 -/svn/!svn/ver/47/trunk/libtwitcurl/SHA1.cpp -END -CMakeLists.txt -K 25 -svn:wc:ra_dav:version-url -V 49 -/svn/!svn/ver/47/trunk/libtwitcurl/CMakeLists.txt -END -Makefile -K 25 -svn:wc:ra_dav:version-url -V 43 -/svn/!svn/ver/81/trunk/libtwitcurl/Makefile -END -twitcurl.opt -K 25 -svn:wc:ra_dav:version-url -V 47 -/svn/!svn/ver/47/trunk/libtwitcurl/twitcurl.opt -END diff --git a/backends/twitter/libtwitcurl/.svn/entries b/backends/twitter/libtwitcurl/.svn/entries deleted file mode 100644 index 1c9848dc..00000000 --- a/backends/twitter/libtwitcurl/.svn/entries +++ /dev/null @@ -1,748 +0,0 @@ -10 - -dir -89 -http://twitcurl.googlecode.com/svn/trunk/libtwitcurl -http://twitcurl.googlecode.com/svn - - - -2012-07-21T07:38:48.554435Z -89 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - -4714a580-958b-11de-ad41-3fcdc5e0e42d - -twitcurl.vcproj -file - - - - -2012-08-04T17:27:29.286968Z -4bd65d0283824fc74c2f6051b8e07776 -2011-09-12T19:28:25.614324Z -55 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -7434 - -SHA1.h -file - - - - -2012-08-04T17:27:29.286968Z -3e6264ad43d1070aae2a29349c56c9cc -2011-09-12T17:56:21.927956Z -47 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -3793 - -oauthlib.cpp -file - - - - -2012-08-04T17:27:29.286968Z -0952e80b192c5a453732c6a4a4ba937c -2012-07-21T07:38:48.554435Z -89 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -18582 - -oauthlib.h -file - - - - -2012-08-04T17:27:29.286968Z -2a41db8667c9f1d735041672a4a8f0ce -2012-07-21T07:38:48.554435Z -89 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -5387 - -twitcurl.plg -file - - - - -2012-08-04T17:27:29.286968Z -27b1201e052363c6a0c58d907066d74a -2011-09-12T17:56:21.927956Z -47 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -1136 - -twitcurl.cpp -file - - - - -2012-08-04T17:27:29.286968Z -a8959426e8a890965049fb620413c117 -2012-06-03T15:11:03.334716Z -87 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -60750 - -urlencode.cpp -file - - - - -2012-08-04T17:27:29.286968Z -6fee0a296ccbe0235a1b32468f8336d5 -2011-09-12T17:56:21.927956Z -47 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -908 - -twitcurl.dsp -file - - - - -2012-08-04T17:27:29.290968Z -3d5dc2fdeea286408f9c0e8a9eb6e011 -2011-09-12T17:56:21.927956Z -47 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -3571 - -twitcurl.h -file - - - - -2012-08-04T17:27:29.290968Z -42f24b664799b8b1a394dfa3f0e51813 -2012-06-03T15:11:03.334716Z -87 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -11774 - -HMAC_SHA1.cpp -file - - - - -2012-08-04T17:27:29.290968Z -7f04808b83824ab2a318470601f84dd2 -2012-04-28T15:24:29.877388Z -79 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -1601 - -base64.cpp -file - - - - -2012-08-04T17:27:29.290968Z -91aaa43b9e4890495a6f736625199f4f -2011-09-12T17:56:21.927956Z -47 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -3857 - -curl -dir - -urlencode.h -file - - - - -2012-08-04T17:27:29.290968Z -2ad501c16a14e6ed0616d139de66595d -2011-09-12T17:56:21.927956Z -47 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -204 - -lib -dir - -twitcurl.sln -file - - - - -2012-08-04T17:27:29.290968Z -49dc7abe44deb368fd788b3fbc5f1fa5 -2011-09-12T17:56:21.927956Z -47 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -890 - -COPYING -file - - - - -2012-08-04T17:27:29.290968Z -c75e20d7cf9fdeffe56535e17f12b35d -2011-10-20T12:45:00.933609Z -65 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -1087 - -twitcurl.dsw -file - - - - -2012-08-04T17:27:29.290968Z -b0211575457694f45a6353f864e1f8c2 -2011-09-12T17:56:21.927956Z -47 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -539 - -base64.h -file - - - - -2012-08-04T17:27:29.290968Z -0460713f8efdfb3a5d1a97c860d289e8 -2011-09-12T17:56:21.927956Z -47 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -138 - -HMAC_SHA1.h -file - - - - -2012-08-04T17:27:29.290968Z -e1f7964c76fe86ee35ee3bdea6ace44a -2012-04-28T15:24:29.877388Z -79 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -1070 - -SHA1.cpp -file - - - - -2012-08-04T17:27:29.294968Z -25c20a8b1351cc20b19850cc96c92ec0 -2011-09-12T17:56:21.927956Z -47 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -7580 - -CMakeLists.txt -file - - - - -2012-08-04T17:27:29.294968Z -4173b9d6da7d014a782d92b266ae9055 -2011-09-12T17:56:21.927956Z -47 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -656 - -Makefile -file - - - - -2012-08-04T17:27:29.294968Z -c8f5bce48a007345fb8bf89778311fc9 -2012-06-03T08:51:10.455158Z -81 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -1798 - -twitcurl.opt -file - - - - -2012-08-04T17:27:29.294968Z -a164218ef0fadc31afcbb5d3a2a3f1dd -2011-09-12T17:56:21.927956Z -47 -swatkat.thinkdigit@gmail.com -has-props - - - - - - - - - - - - - - - - - - - - -50688 - diff --git a/backends/twitter/libtwitcurl/.svn/prop-base/twitcurl.opt.svn-base b/backends/twitter/libtwitcurl/.svn/prop-base/twitcurl.opt.svn-base deleted file mode 100644 index 5e9587e6..00000000 --- a/backends/twitter/libtwitcurl/.svn/prop-base/twitcurl.opt.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/backends/twitter/libtwitcurl/.svn/text-base/CMakeLists.txt.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/CMakeLists.txt.svn-base deleted file mode 100644 index 2005f84e..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/CMakeLists.txt.svn-base +++ /dev/null @@ -1,16 +0,0 @@ -cmake_minimum_required(VERSION 2.5) -project(libtwit) -set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake_modules/") -set(twitSrcs base64.cpp HMAC_SHA1.cpp oauthlib.cpp SHA1.cpp urlencode.cpp twitcurl.cpp) -FIND_PACKAGE(PkgConfig) -#pkg_check_modules (PKGS) -include_directories (${PKGS_INCLUDE_DIRS}) -add_library(twit STATIC ${twitSrcs}) -SET_TARGET_PROPERTIES(twit PROPERTIES CLEAN_DIRECT_OUTPUT "wcode") -target_link_libraries(twit) -SET(CMAKE_INSTALL_LIBDIR libtwit CACHE PATH "Output directory for libraries") - -install(TARGETS twit DESTINATION lib) -INSTALL(FILES twitcurl.h DESTINATION include/libtwit) -INSTALL(FILES oauthlib.h DESTINATION include/libtwit) - \ No newline at end of file diff --git a/backends/twitter/libtwitcurl/.svn/text-base/COPYING.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/COPYING.svn-base deleted file mode 100644 index e44f45f1..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/COPYING.svn-base +++ /dev/null @@ -1,19 +0,0 @@ -Copyright (C) 2011 by swatkat (swatkat.thinkdigitATgmailDOTcom) - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -THE SOFTWARE. \ No newline at end of file diff --git a/backends/twitter/libtwitcurl/.svn/text-base/HMAC_SHA1.cpp.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/HMAC_SHA1.cpp.svn-base deleted file mode 100644 index 5382782e..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/HMAC_SHA1.cpp.svn-base +++ /dev/null @@ -1,64 +0,0 @@ -//****************************************************************************** -//* HMAC_SHA1.cpp : Implementation of HMAC SHA1 algorithm -//* Comfort to RFC 2104 -//* -//****************************************************************************** -#include "HMAC_SHA1.h" -#include -#include - - -void CHMAC_SHA1::HMAC_SHA1(BYTE *text, int text_len, BYTE *key, int key_len, BYTE *digest) -{ - memset(SHA1_Key, 0, SHA1_BLOCK_SIZE); - - /* repeated 64 times for values in ipad and opad */ - memset(m_ipad, 0x36, sizeof(m_ipad)); - memset(m_opad, 0x5c, sizeof(m_opad)); - - /* STEP 1 */ - if (key_len > SHA1_BLOCK_SIZE) - { - CSHA1::Reset(); - CSHA1::Update((UINT_8 *)key, key_len); - CSHA1::Final(); - - CSHA1::GetHash((UINT_8 *)SHA1_Key); - } - else - memcpy(SHA1_Key, key, key_len); - - /* STEP 2 */ - for (size_t i=0; i -*/ - - -#ifndef __HMAC_SHA1_H__ -#define __HMAC_SHA1_H__ - -#include "SHA1.h" - -typedef unsigned char BYTE ; - -class CHMAC_SHA1 : public CSHA1 -{ - private: - BYTE m_ipad[64]; - BYTE m_opad[64]; - - char * szReport ; - char * SHA1_Key ; - char * AppendBuf1 ; - char * AppendBuf2 ; - - - public: - - enum { - SHA1_DIGEST_LENGTH = 20, - SHA1_BLOCK_SIZE = 64, - HMAC_BUF_LEN = 4096 - } ; - - CHMAC_SHA1() - :szReport(new char[HMAC_BUF_LEN]), - SHA1_Key(new char[HMAC_BUF_LEN]), - AppendBuf1(new char[HMAC_BUF_LEN]), - AppendBuf2(new char[HMAC_BUF_LEN]) - {} - - ~CHMAC_SHA1() - { - delete[] szReport ; - delete[] AppendBuf1 ; - delete[] AppendBuf2 ; - delete[] SHA1_Key ; - } - - void HMAC_SHA1(BYTE *text, int text_len, BYTE *key, int key_len, BYTE *digest); -}; - - -#endif /* __HMAC_SHA1_H__ */ diff --git a/backends/twitter/libtwitcurl/.svn/text-base/Makefile.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/Makefile.svn-base deleted file mode 100644 index 14c09ec3..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/Makefile.svn-base +++ /dev/null @@ -1,57 +0,0 @@ -# Hey Emacs, this is a -*- makefile -*- -# The twitcurl library.. a Makefile for OpenWRT -# Makefile-fu by John Boiles -# 28 September 2009 - -LIBNAME = twitcurl -SRC = $(LIBNAME).cpp -STAGING_DIR = -INCLUDE_DIR = $(STAGING_DIR)/usr/include -LINCLUDE_DIR = $(STAGING_DIR)/usr/local/include -LIBRARY_DIR = $(STAGING_DIR)/usr/lib -LLIBRARY_DIR = $(STAGING_DIR)/usr/local/lib -LDFLAGS += -Wl,-rpath-link=$(STAGING_DIR)/usr/lib -CC = g++ -REMOVE = rm -f -COPY = cp -REMOTEIP = 192.168.1.30 - -# Compiler flag to set the C Standard level. -# c89 - "ANSI" C -# gnu89 - c89 plus GCC extensions -# c99 - ISO C99 standard (not yet fully implemented) -# gnu99 - c99 plus GCC extensions -# CSTANDARD = -std=gnu99 - -# Place -D or -U options here -CDEFS = - -# Place -I options here -CINCS = - -CFLAGS =$(CDEFS) $(CINCS) $(CSTANDARD) - -all: target - -target: $(SRC) $(LIBNAME).h - $(CC) -Wall -fPIC -c -I$(INCLUDE_DIR) $(SRC) oauthlib.cpp urlencode.cpp base64.cpp HMAC_SHA1.cpp SHA1.cpp - $(CC) -shared -Wl,-soname,lib$(LIBNAME).so.1 $(LDFLAGS) -o lib$(LIBNAME).so.1.0 *.o -L$(LIBRARY_DIR) -lcurl - -#clean project. -clean: - $(REMOVE) $(LIBNAME)*.so.1.0 - $(REMOVE) $(LIBNAME).o - $(REMOVE) $(LIBRARY_DIR)/lib$(LIBNAME).so* - -# Install library to local openwrt library directory -install: all - $(COPY) lib$(LIBNAME).so.1.0 $(LIBRARY_DIR) - $(COPY) lib$(LIBNAME).so.1.0 $(LLIBRARY_DIR) - $(COPY) $(LIBNAME).h $(INCLUDE_DIR)/ - $(COPY) $(LIBNAME).h $(LINCLUDE_DIR)/ - $(COPY) oauthlib.h $(INCLUDE_DIR)/ - $(COPY) oauthlib.h $(LINCLUDE_DIR)/ - ln -sf $(LIBRARY_DIR)/lib$(LIBNAME).so.1.0 $(LIBRARY_DIR)/lib$(LIBNAME).so - ln -sf $(LIBRARY_DIR)/lib$(LIBNAME).so.1.0 $(LIBRARY_DIR)/lib$(LIBNAME).so.1 - ln -sf $(LLIBRARY_DIR)/lib$(LIBNAME).so.1.0 $(LLIBRARY_DIR)/lib$(LIBNAME).so - ln -sf $(LLIBRARY_DIR)/lib$(LIBNAME).so.1.0 $(LLIBRARY_DIR)/lib$(LIBNAME).so.1 diff --git a/backends/twitter/libtwitcurl/.svn/text-base/SHA1.cpp.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/SHA1.cpp.svn-base deleted file mode 100644 index c3846ee5..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/SHA1.cpp.svn-base +++ /dev/null @@ -1,274 +0,0 @@ -/* - 100% free public domain implementation of the SHA-1 algorithm - by Dominik Reichl - Web: http://www.dominik-reichl.de/ - - Version 1.6 - 2005-02-07 (thanks to Howard Kapustein for patches) - - You can set the endianness in your files, no need to modify the - header file of the CSHA1 class any more - - Aligned data support - - Made support/compilation of the utility functions (ReportHash - and HashFile) optional (useful, if bytes count, for example in - embedded environments) - - Version 1.5 - 2005-01-01 - - 64-bit compiler compatibility added - - Made variable wiping optional (define SHA1_WIPE_VARIABLES) - - Removed unnecessary variable initializations - - ROL32 improvement for the Microsoft compiler (using _rotl) - - ======== Test Vectors (from FIPS PUB 180-1) ======== - - SHA1("abc") = - A9993E36 4706816A BA3E2571 7850C26C 9CD0D89D - - SHA1("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq") = - 84983E44 1C3BD26E BAAE4AA1 F95129E5 E54670F1 - - SHA1(A million repetitions of "a") = - 34AA973C D4C4DAA4 F61EEB2B DBAD2731 6534016F -*/ - -#include "SHA1.h" - -#ifdef SHA1_UTILITY_FUNCTIONS -#define SHA1_MAX_FILE_BUFFER 8000 -#endif - -// Rotate x bits to the left -#ifndef ROL32 -#ifdef _MSC_VER -#define ROL32(_val32, _nBits) _rotl(_val32, _nBits) -#else -#define ROL32(_val32, _nBits) (((_val32)<<(_nBits))|((_val32)>>(32-(_nBits)))) -#endif -#endif - -#ifdef SHA1_LITTLE_ENDIAN -#define SHABLK0(i) (m_block->l[i] = \ - (ROL32(m_block->l[i],24) & 0xFF00FF00) | (ROL32(m_block->l[i],8) & 0x00FF00FF)) -#else -#define SHABLK0(i) (m_block->l[i]) -#endif - -#define SHABLK(i) (m_block->l[i&15] = ROL32(m_block->l[(i+13)&15] ^ m_block->l[(i+8)&15] \ - ^ m_block->l[(i+2)&15] ^ m_block->l[i&15],1)) - -// SHA-1 rounds -#define _R0(v,w,x,y,z,i) { z+=((w&(x^y))^y)+SHABLK0(i)+0x5A827999+ROL32(v,5); w=ROL32(w,30); } -#define _R1(v,w,x,y,z,i) { z+=((w&(x^y))^y)+SHABLK(i)+0x5A827999+ROL32(v,5); w=ROL32(w,30); } -#define _R2(v,w,x,y,z,i) { z+=(w^x^y)+SHABLK(i)+0x6ED9EBA1+ROL32(v,5); w=ROL32(w,30); } -#define _R3(v,w,x,y,z,i) { z+=(((w|x)&y)|(w&x))+SHABLK(i)+0x8F1BBCDC+ROL32(v,5); w=ROL32(w,30); } -#define _R4(v,w,x,y,z,i) { z+=(w^x^y)+SHABLK(i)+0xCA62C1D6+ROL32(v,5); w=ROL32(w,30); } - -CSHA1::CSHA1() -{ - m_block = (SHA1_WORKSPACE_BLOCK *)m_workspace; - - Reset(); -} - -CSHA1::~CSHA1() -{ - Reset(); -} - -void CSHA1::Reset() -{ - // SHA1 initialization constants - m_state[0] = 0x67452301; - m_state[1] = 0xEFCDAB89; - m_state[2] = 0x98BADCFE; - m_state[3] = 0x10325476; - m_state[4] = 0xC3D2E1F0; - - m_count[0] = 0; - m_count[1] = 0; -} - -void CSHA1::Transform(UINT_32 *state, UINT_8 *buffer) -{ - // Copy state[] to working vars - UINT_32 a = state[0], b = state[1], c = state[2], d = state[3], e = state[4]; - - memcpy(m_block, buffer, 64); - - // 4 rounds of 20 operations each. Loop unrolled. - _R0(a,b,c,d,e, 0); _R0(e,a,b,c,d, 1); _R0(d,e,a,b,c, 2); _R0(c,d,e,a,b, 3); - _R0(b,c,d,e,a, 4); _R0(a,b,c,d,e, 5); _R0(e,a,b,c,d, 6); _R0(d,e,a,b,c, 7); - _R0(c,d,e,a,b, 8); _R0(b,c,d,e,a, 9); _R0(a,b,c,d,e,10); _R0(e,a,b,c,d,11); - _R0(d,e,a,b,c,12); _R0(c,d,e,a,b,13); _R0(b,c,d,e,a,14); _R0(a,b,c,d,e,15); - _R1(e,a,b,c,d,16); _R1(d,e,a,b,c,17); _R1(c,d,e,a,b,18); _R1(b,c,d,e,a,19); - _R2(a,b,c,d,e,20); _R2(e,a,b,c,d,21); _R2(d,e,a,b,c,22); _R2(c,d,e,a,b,23); - _R2(b,c,d,e,a,24); _R2(a,b,c,d,e,25); _R2(e,a,b,c,d,26); _R2(d,e,a,b,c,27); - _R2(c,d,e,a,b,28); _R2(b,c,d,e,a,29); _R2(a,b,c,d,e,30); _R2(e,a,b,c,d,31); - _R2(d,e,a,b,c,32); _R2(c,d,e,a,b,33); _R2(b,c,d,e,a,34); _R2(a,b,c,d,e,35); - _R2(e,a,b,c,d,36); _R2(d,e,a,b,c,37); _R2(c,d,e,a,b,38); _R2(b,c,d,e,a,39); - _R3(a,b,c,d,e,40); _R3(e,a,b,c,d,41); _R3(d,e,a,b,c,42); _R3(c,d,e,a,b,43); - _R3(b,c,d,e,a,44); _R3(a,b,c,d,e,45); _R3(e,a,b,c,d,46); _R3(d,e,a,b,c,47); - _R3(c,d,e,a,b,48); _R3(b,c,d,e,a,49); _R3(a,b,c,d,e,50); _R3(e,a,b,c,d,51); - _R3(d,e,a,b,c,52); _R3(c,d,e,a,b,53); _R3(b,c,d,e,a,54); _R3(a,b,c,d,e,55); - _R3(e,a,b,c,d,56); _R3(d,e,a,b,c,57); _R3(c,d,e,a,b,58); _R3(b,c,d,e,a,59); - _R4(a,b,c,d,e,60); _R4(e,a,b,c,d,61); _R4(d,e,a,b,c,62); _R4(c,d,e,a,b,63); - _R4(b,c,d,e,a,64); _R4(a,b,c,d,e,65); _R4(e,a,b,c,d,66); _R4(d,e,a,b,c,67); - _R4(c,d,e,a,b,68); _R4(b,c,d,e,a,69); _R4(a,b,c,d,e,70); _R4(e,a,b,c,d,71); - _R4(d,e,a,b,c,72); _R4(c,d,e,a,b,73); _R4(b,c,d,e,a,74); _R4(a,b,c,d,e,75); - _R4(e,a,b,c,d,76); _R4(d,e,a,b,c,77); _R4(c,d,e,a,b,78); _R4(b,c,d,e,a,79); - - // Add the working vars back into state - state[0] += a; - state[1] += b; - state[2] += c; - state[3] += d; - state[4] += e; - - // Wipe variables -#ifdef SHA1_WIPE_VARIABLES - a = b = c = d = e = 0; -#endif -} - -// Use this function to hash in binary data and strings -void CSHA1::Update(UINT_8 *data, UINT_32 len) -{ - UINT_32 i, j; - - j = (m_count[0] >> 3) & 63; - - if((m_count[0] += len << 3) < (len << 3)) m_count[1]++; - - m_count[1] += (len >> 29); - - if((j + len) > 63) - { - i = 64 - j; - memcpy(&m_buffer[j], data, i); - Transform(m_state, m_buffer); - - for(; i + 63 < len; i += 64) Transform(m_state, &data[i]); - - j = 0; - } - else i = 0; - - memcpy(&m_buffer[j], &data[i], len - i); -} - -#ifdef SHA1_UTILITY_FUNCTIONS -// Hash in file contents -bool CSHA1::HashFile(char *szFileName) -{ - unsigned long ulFileSize, ulRest, ulBlocks; - unsigned long i; - UINT_8 uData[SHA1_MAX_FILE_BUFFER]; - FILE *fIn; - - if(szFileName == NULL) return false; - - fIn = fopen(szFileName, "rb"); - if(fIn == NULL) return false; - - fseek(fIn, 0, SEEK_END); - ulFileSize = (unsigned long)ftell(fIn); - fseek(fIn, 0, SEEK_SET); - - if(ulFileSize != 0) - { - ulBlocks = ulFileSize / SHA1_MAX_FILE_BUFFER; - ulRest = ulFileSize % SHA1_MAX_FILE_BUFFER; - } - else - { - ulBlocks = 0; - ulRest = 0; - } - - for(i = 0; i < ulBlocks; i++) - { - fread(uData, 1, SHA1_MAX_FILE_BUFFER, fIn); - Update((UINT_8 *)uData, SHA1_MAX_FILE_BUFFER); - } - - if(ulRest != 0) - { - fread(uData, 1, ulRest, fIn); - Update((UINT_8 *)uData, ulRest); - } - - fclose(fIn); fIn = NULL; - return true; -} -#endif - -void CSHA1::Final() -{ - UINT_32 i; - UINT_8 finalcount[8]; - - for(i = 0; i < 8; i++) - finalcount[i] = (UINT_8)((m_count[((i >= 4) ? 0 : 1)] - >> ((3 - (i & 3)) * 8) ) & 255); // Endian independent - - Update((UINT_8 *)"\200", 1); - - while ((m_count[0] & 504) != 448) - Update((UINT_8 *)"\0", 1); - - Update(finalcount, 8); // Cause a SHA1Transform() - - for(i = 0; i < 20; i++) - { - m_digest[i] = (UINT_8)((m_state[i >> 2] >> ((3 - (i & 3)) * 8) ) & 255); - } - - // Wipe variables for security reasons -#ifdef SHA1_WIPE_VARIABLES - i = 0; - memset(m_buffer, 0, 64); - memset(m_state, 0, 20); - memset(m_count, 0, 8); - memset(finalcount, 0, 8); - Transform(m_state, m_buffer); -#endif -} - -#ifdef SHA1_UTILITY_FUNCTIONS -// Get the final hash as a pre-formatted string -void CSHA1::ReportHash(char *szReport, unsigned char uReportType) -{ - unsigned char i; - char szTemp[16]; - - if(szReport == NULL) return; - - if(uReportType == REPORT_HEX) - { - sprintf(szTemp, "%02X", m_digest[0]); - strcat(szReport, szTemp); - - for(i = 1; i < 20; i++) - { - sprintf(szTemp, " %02X", m_digest[i]); - strcat(szReport, szTemp); - } - } - else if(uReportType == REPORT_DIGIT) - { - sprintf(szTemp, "%u", m_digest[0]); - strcat(szReport, szTemp); - - for(i = 1; i < 20; i++) - { - sprintf(szTemp, " %u", m_digest[i]); - strcat(szReport, szTemp); - } - } - else strcpy(szReport, "Error: Unknown report type!"); -} -#endif - -// Get the raw message digest -void CSHA1::GetHash(UINT_8 *puDest) -{ - memcpy(puDest, m_digest, 20); -} diff --git a/backends/twitter/libtwitcurl/.svn/text-base/SHA1.h.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/SHA1.h.svn-base deleted file mode 100644 index e7ea00f3..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/SHA1.h.svn-base +++ /dev/null @@ -1,148 +0,0 @@ -/* - 100% free public domain implementation of the SHA-1 algorithm - by Dominik Reichl - Web: http://www.dominik-reichl.de/ - - Version 1.6 - 2005-02-07 (thanks to Howard Kapustein for patches) - - You can set the endianness in your files, no need to modify the - header file of the CSHA1 class any more - - Aligned data support - - Made support/compilation of the utility functions (ReportHash - and HashFile) optional (useful, if bytes count, for example in - embedded environments) - - Version 1.5 - 2005-01-01 - - 64-bit compiler compatibility added - - Made variable wiping optional (define SHA1_WIPE_VARIABLES) - - Removed unnecessary variable initializations - - ROL32 improvement for the Microsoft compiler (using _rotl) - - ======== Test Vectors (from FIPS PUB 180-1) ======== - - SHA1("abc") = - A9993E36 4706816A BA3E2571 7850C26C 9CD0D89D - - SHA1("abcdbcdecdefdefgefghfghighijhijkijkljklmklmnlmnomnopnopq") = - 84983E44 1C3BD26E BAAE4AA1 F95129E5 E54670F1 - - SHA1(A million repetitions of "a") = - 34AA973C D4C4DAA4 F61EEB2B DBAD2731 6534016F -*/ - -#ifndef ___SHA1_HDR___ -#define ___SHA1_HDR___ - -#if !defined(SHA1_UTILITY_FUNCTIONS) && !defined(SHA1_NO_UTILITY_FUNCTIONS) -#define SHA1_UTILITY_FUNCTIONS -#endif - -#include // Needed for memset and memcpy - -#ifdef SHA1_UTILITY_FUNCTIONS -#include // Needed for file access and sprintf -#include // Needed for strcat and strcpy -#endif - -#ifdef _MSC_VER -#include -#endif - -// You can define the endian mode in your files, without modifying the SHA1 -// source files. Just #define SHA1_LITTLE_ENDIAN or #define SHA1_BIG_ENDIAN -// in your files, before including the SHA1.h header file. If you don't -// define anything, the class defaults to little endian. - -#if !defined(SHA1_LITTLE_ENDIAN) && !defined(SHA1_BIG_ENDIAN) -#define SHA1_LITTLE_ENDIAN -#endif - -// Same here. If you want variable wiping, #define SHA1_WIPE_VARIABLES, if -// not, #define SHA1_NO_WIPE_VARIABLES. If you don't define anything, it -// defaults to wiping. - -#if !defined(SHA1_WIPE_VARIABLES) && !defined(SHA1_NO_WIPE_VARIABLES) -#define SHA1_WIPE_VARIABLES -#endif - -///////////////////////////////////////////////////////////////////////////// -// Define 8- and 32-bit variables - -#ifndef UINT_32 - -#ifdef _MSC_VER - -#define UINT_8 unsigned __int8 -#define UINT_32 unsigned __int32 - -#else - -#define UINT_8 unsigned char - -#if (ULONG_MAX == 0xFFFFFFFF) -#define UINT_32 unsigned long -#else -#define UINT_32 unsigned int -#endif - -#endif -#endif - -///////////////////////////////////////////////////////////////////////////// -// Declare SHA1 workspace - -typedef union -{ - UINT_8 c[64]; - UINT_32 l[16]; -} SHA1_WORKSPACE_BLOCK; - -class CSHA1 -{ -public: -#ifdef SHA1_UTILITY_FUNCTIONS - // Two different formats for ReportHash(...) - enum - { - REPORT_HEX = 0, - REPORT_DIGIT = 1 - }; -#endif - - // Constructor and Destructor - CSHA1(); - ~CSHA1(); - - UINT_32 m_state[5]; - UINT_32 m_count[2]; - UINT_32 __reserved1[1]; - UINT_8 m_buffer[64]; - UINT_8 m_digest[20]; - UINT_32 __reserved2[3]; - - void Reset(); - - // Update the hash value - void Update(UINT_8 *data, UINT_32 len); -#ifdef SHA1_UTILITY_FUNCTIONS - bool HashFile(char *szFileName); -#endif - - // Finalize hash and report - void Final(); - - // Report functions: as pre-formatted and raw data -#ifdef SHA1_UTILITY_FUNCTIONS - void ReportHash(char *szReport, unsigned char uReportType = REPORT_HEX); -#endif - void GetHash(UINT_8 *puDest); - -private: - // Private SHA-1 transformation - void Transform(UINT_32 *state, UINT_8 *buffer); - - // Member variables - UINT_8 m_workspace[64]; - SHA1_WORKSPACE_BLOCK *m_block; // SHA1 pointer to the byte array above -}; - -#endif diff --git a/backends/twitter/libtwitcurl/.svn/text-base/base64.cpp.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/base64.cpp.svn-base deleted file mode 100644 index 08951794..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/base64.cpp.svn-base +++ /dev/null @@ -1,123 +0,0 @@ -/* - base64.cpp and base64.h - - Copyright (C) 2004-2008 René Nyffenegger - - This source code is provided 'as-is', without any express or implied - warranty. In no event will the author be held liable for any damages - arising from the use of this software. - - Permission is granted to anyone to use this software for any purpose, - including commercial applications, and to alter it and redistribute it - freely, subject to the following restrictions: - - 1. The origin of this source code must not be misrepresented; you must not - claim that you wrote the original source code. If you use this source code - in a product, an acknowledgment in the product documentation would be - appreciated but is not required. - - 2. Altered source versions must be plainly marked as such, and must not be - misrepresented as being the original source code. - - 3. This notice may not be removed or altered from any source distribution. - - René Nyffenegger rene.nyffenegger@adp-gmbh.ch - -*/ - -#include "base64.h" -#include - -static const std::string base64_chars = - "ABCDEFGHIJKLMNOPQRSTUVWXYZ" - "abcdefghijklmnopqrstuvwxyz" - "0123456789+/"; - - -static inline bool is_base64(unsigned char c) { - return (isalnum(c) || (c == '+') || (c == '/')); -} - -std::string base64_encode(unsigned char const* bytes_to_encode, unsigned int in_len) { - std::string ret; - int i = 0; - int j = 0; - unsigned char char_array_3[3]; - unsigned char char_array_4[4]; - - while (in_len--) { - char_array_3[i++] = *(bytes_to_encode++); - if (i == 3) { - char_array_4[0] = (char_array_3[0] & 0xfc) >> 2; - char_array_4[1] = ((char_array_3[0] & 0x03) << 4) + ((char_array_3[1] & 0xf0) >> 4); - char_array_4[2] = ((char_array_3[1] & 0x0f) << 2) + ((char_array_3[2] & 0xc0) >> 6); - char_array_4[3] = char_array_3[2] & 0x3f; - - for(i = 0; (i <4) ; i++) - ret += base64_chars[char_array_4[i]]; - i = 0; - } - } - - if (i) - { - for(j = i; j < 3; j++) - char_array_3[j] = '\0'; - - char_array_4[0] = (char_array_3[0] & 0xfc) >> 2; - char_array_4[1] = ((char_array_3[0] & 0x03) << 4) + ((char_array_3[1] & 0xf0) >> 4); - char_array_4[2] = ((char_array_3[1] & 0x0f) << 2) + ((char_array_3[2] & 0xc0) >> 6); - char_array_4[3] = char_array_3[2] & 0x3f; - - for (j = 0; (j < i + 1); j++) - ret += base64_chars[char_array_4[j]]; - - while((i++ < 3)) - ret += '='; - - } - - return ret; - -} - -std::string base64_decode(std::string const& encoded_string) { - int in_len = encoded_string.size(); - int i = 0; - int j = 0; - int in_ = 0; - unsigned char char_array_4[4], char_array_3[3]; - std::string ret; - - while (in_len-- && ( encoded_string[in_] != '=') && is_base64(encoded_string[in_])) { - char_array_4[i++] = encoded_string[in_]; in_++; - if (i ==4) { - for (i = 0; i <4; i++) - char_array_4[i] = base64_chars.find(char_array_4[i]); - - char_array_3[0] = (char_array_4[0] << 2) + ((char_array_4[1] & 0x30) >> 4); - char_array_3[1] = ((char_array_4[1] & 0xf) << 4) + ((char_array_4[2] & 0x3c) >> 2); - char_array_3[2] = ((char_array_4[2] & 0x3) << 6) + char_array_4[3]; - - for (i = 0; (i < 3); i++) - ret += char_array_3[i]; - i = 0; - } - } - - if (i) { - for (j = i; j <4; j++) - char_array_4[j] = 0; - - for (j = 0; j <4; j++) - char_array_4[j] = base64_chars.find(char_array_4[j]); - - char_array_3[0] = (char_array_4[0] << 2) + ((char_array_4[1] & 0x30) >> 4); - char_array_3[1] = ((char_array_4[1] & 0xf) << 4) + ((char_array_4[2] & 0x3c) >> 2); - char_array_3[2] = ((char_array_4[2] & 0x3) << 6) + char_array_4[3]; - - for (j = 0; (j < i - 1); j++) ret += char_array_3[j]; - } - - return ret; -} \ No newline at end of file diff --git a/backends/twitter/libtwitcurl/.svn/text-base/base64.h.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/base64.h.svn-base deleted file mode 100644 index 639e696c..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/base64.h.svn-base +++ /dev/null @@ -1,4 +0,0 @@ -#include - -std::string base64_encode(unsigned char const* , unsigned int len); -std::string base64_decode(std::string const& s); \ No newline at end of file diff --git a/backends/twitter/libtwitcurl/.svn/text-base/oauthlib.cpp.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/oauthlib.cpp.svn-base deleted file mode 100644 index b2da9343..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/oauthlib.cpp.svn-base +++ /dev/null @@ -1,647 +0,0 @@ -#include "oauthlib.h" -#include "HMAC_SHA1.h" -#include "base64.h" -#include "urlencode.h" - -/*++ -* @method: oAuth::oAuth -* -* @description: constructor -* -* @input: none -* -* @output: none -* -*--*/ -oAuth::oAuth() -{ -} - -/*++ -* @method: oAuth::~oAuth -* -* @description: destructor -* -* @input: none -* -* @output: none -* -*--*/ -oAuth::~oAuth() -{ -} - -/*++ -* @method: oAuth::getConsumerKey -* -* @description: this method gives consumer key that is being used currently -* -* @input: none -* -* @output: consumer key -* -*--*/ -void oAuth::getConsumerKey( std::string& consumerKey ) -{ - consumerKey = m_consumerKey; -} - -/*++ -* @method: oAuth::setConsumerKey -* -* @description: this method saves consumer key that should be used -* -* @input: consumer key -* -* @output: none -* -*--*/ -void oAuth::setConsumerKey( const std::string& consumerKey ) -{ - m_consumerKey.assign( consumerKey ); -} - -/*++ -* @method: oAuth::getConsumerSecret -* -* @description: this method gives consumer secret that is being used currently -* -* @input: none -* -* @output: consumer secret -* -*--*/ -void oAuth::getConsumerSecret( std::string& consumerSecret ) -{ - consumerSecret = m_consumerSecret; -} - -/*++ -* @method: oAuth::setConsumerSecret -* -* @description: this method saves consumer secret that should be used -* -* @input: consumer secret -* -* @output: none -* -*--*/ -void oAuth::setConsumerSecret( const std::string& consumerSecret ) -{ - m_consumerSecret = consumerSecret; -} - -/*++ -* @method: oAuth::getOAuthTokenKey -* -* @description: this method gives OAuth token (also called access token) that is being used currently -* -* @input: none -* -* @output: OAuth token -* -*--*/ -void oAuth::getOAuthTokenKey( std::string& oAuthTokenKey ) -{ - oAuthTokenKey = m_oAuthTokenKey; -} - -/*++ -* @method: oAuth::setOAuthTokenKey -* -* @description: this method saves OAuth token that should be used -* -* @input: OAuth token -* -* @output: none -* -*--*/ -void oAuth::setOAuthTokenKey( const std::string& oAuthTokenKey ) -{ - m_oAuthTokenKey = oAuthTokenKey; -} - -/*++ -* @method: oAuth::getOAuthTokenSecret -* -* @description: this method gives OAuth token secret that is being used currently -* -* @input: none -* -* @output: OAuth token secret -* -*--*/ -void oAuth::getOAuthTokenSecret( std::string& oAuthTokenSecret ) -{ - oAuthTokenSecret = m_oAuthTokenSecret; -} - -/*++ -* @method: oAuth::setOAuthTokenSecret -* -* @description: this method saves OAuth token that should be used -* -* @input: OAuth token secret -* -* @output: none -* -*--*/ -void oAuth::setOAuthTokenSecret( const std::string& oAuthTokenSecret ) -{ - m_oAuthTokenSecret = oAuthTokenSecret; -} - -/*++ -* @method: oAuth::getOAuthScreenName -* -* @description: this method gives authorized user's screenname -* -* @input: none -* -* @output: screen name -* -*--*/ -void oAuth::getOAuthScreenName( std::string& oAuthScreenName ) -{ - oAuthScreenName = m_oAuthScreenName; -} - -/*++ -* @method: oAuth::setOAuthScreenName -* -* @description: this method sets authorized user's screenname -* -* @input: screen name -* -* @output: none -* -*--*/ -void oAuth::setOAuthScreenName( const std::string& oAuthScreenName ) -{ - m_oAuthScreenName = oAuthScreenName; -} - -/*++ -* @method: oAuth::getOAuthPin -* -* @description: this method gives OAuth verifier PIN -* -* @input: none -* -* @output: OAuth verifier PIN -* -*--*/ -void oAuth::getOAuthPin( std::string& oAuthPin ) -{ - oAuthPin = m_oAuthPin; -} - -/*++ -* @method: oAuth::setOAuthPin -* -* @description: this method sets OAuth verifier PIN -* -* @input: OAuth verifier PIN -* -* @output: none -* -*--*/ -void oAuth::setOAuthPin( const std::string& oAuthPin ) -{ - m_oAuthPin = oAuthPin; -} - -/*++ -* @method: oAuth::generateNonceTimeStamp -* -* @description: this method generates nonce and timestamp for OAuth header -* -* @input: none -* -* @output: none -* -* @remarks: internal method -* -*--*/ -void oAuth::generateNonceTimeStamp() -{ - char szTime[oAuthLibDefaults::OAUTHLIB_BUFFSIZE]; - char szRand[oAuthLibDefaults::OAUTHLIB_BUFFSIZE]; - memset( szTime, 0, oAuthLibDefaults::OAUTHLIB_BUFFSIZE ); - memset( szRand, 0, oAuthLibDefaults::OAUTHLIB_BUFFSIZE ); - srand( time( NULL ) ); - sprintf( szRand, "%x", rand()%1000 ); - sprintf( szTime, "%ld", time( NULL ) ); - - m_nonce.assign( szTime ); - m_nonce.append( szRand ); - m_timeStamp.assign( szTime ); -} - -/*++ -* @method: oAuth::buildOAuthRawDataKeyValPairs -* -* @description: this method prepares key-value pairs from the data part of the URL -* or from the URL post fields data, as required by OAuth header -* and signature generation. -* -* @input: rawData - Raw data either from the URL itself or from post fields. -* Should already be url encoded. -* urlencodeData - If true, string will be urlencoded before converting -* to key value pairs. -* -* @output: rawDataKeyValuePairs - Map in which key-value pairs are populated -* -* @remarks: internal method -* -*--*/ -void oAuth::buildOAuthRawDataKeyValPairs( const std::string& rawData, - bool urlencodeData, - oAuthKeyValuePairs& rawDataKeyValuePairs ) -{ - /* Raw data if it's present. Data should already be urlencoded once */ - if( rawData.length() ) - { - size_t nSep = std::string::npos; - size_t nPos = std::string::npos; - std::string dataKeyVal; - std::string dataKey; - std::string dataVal; - - /* This raw data part can contain many key value pairs: key1=value1&key2=value2&key3=value3 */ - std::string dataPart = rawData; - while( std::string::npos != ( nSep = dataPart.find_first_of("&") ) ) - { - /* Extract first key=value pair */ - dataKeyVal = dataPart.substr( 0, nSep ); - - /* Split them */ - nPos = dataKeyVal.find_first_of( "=" ); - if( std::string::npos != nPos ) - { - dataKey = dataKeyVal.substr( 0, nPos ); - dataVal = dataKeyVal.substr( nPos + 1 ); - - /* Put this key=value pair in map */ - rawDataKeyValuePairs[dataKey] = urlencodeData ? urlencode( dataVal ) : dataVal; - } - dataPart = dataPart.substr( nSep + 1 ); - } - - /* For the last key=value */ - dataKeyVal = dataPart.substr( 0, nSep ); - - /* Split them */ - nPos = dataKeyVal.find_first_of( "=" ); - if( std::string::npos != nPos ) - { - dataKey = dataKeyVal.substr( 0, nPos ); - dataVal = dataKeyVal.substr( nPos + 1 ); - - /* Put this key=value pair in map */ - rawDataKeyValuePairs[dataKey] = urlencodeData ? urlencode( dataVal ) : dataVal; - } - } -} - -/*++ -* @method: oAuth::buildOAuthTokenKeyValuePairs -* -* @description: this method prepares key-value pairs required for OAuth header -* and signature generation. -* -* @input: includeOAuthVerifierPin - flag to indicate whether oauth_verifer key-value -* pair needs to be included. oauth_verifer is only -* used during exchanging request token with access token. -* oauthSignature - base64 and url encoded OAuth signature. -* generateTimestamp - If true, then generate new timestamp for nonce. -* -* @output: keyValueMap - map in which key-value pairs are populated -* -* @remarks: internal method -* -*--*/ -bool oAuth::buildOAuthTokenKeyValuePairs( const bool includeOAuthVerifierPin, - const std::string& oauthSignature, - oAuthKeyValuePairs& keyValueMap, - const bool generateTimestamp ) -{ - /* Generate nonce and timestamp if required */ - if( generateTimestamp ) - { - generateNonceTimeStamp(); - } - - /* Consumer key and its value */ - keyValueMap[oAuthLibDefaults::OAUTHLIB_CONSUMERKEY_KEY] = m_consumerKey; - - /* Nonce key and its value */ - keyValueMap[oAuthLibDefaults::OAUTHLIB_NONCE_KEY] = m_nonce; - - /* Signature if supplied */ - if( oauthSignature.length() ) - { - keyValueMap[oAuthLibDefaults::OAUTHLIB_SIGNATURE_KEY] = oauthSignature; - } - - /* Signature method, only HMAC-SHA1 as of now */ - keyValueMap[oAuthLibDefaults::OAUTHLIB_SIGNATUREMETHOD_KEY] = std::string( "HMAC-SHA1" ); - - /* Timestamp */ - keyValueMap[oAuthLibDefaults::OAUTHLIB_TIMESTAMP_KEY] = m_timeStamp; - - /* Token */ - if( m_oAuthTokenKey.length() ) - { - keyValueMap[oAuthLibDefaults::OAUTHLIB_TOKEN_KEY] = m_oAuthTokenKey; - } - - /* Verifier */ - if( includeOAuthVerifierPin && m_oAuthPin.length() ) - { - keyValueMap[oAuthLibDefaults::OAUTHLIB_VERIFIER_KEY] = m_oAuthPin; - } - - /* Version */ - keyValueMap[oAuthLibDefaults::OAUTHLIB_VERSION_KEY] = std::string( "1.0" ); - - return ( keyValueMap.size() ) ? true : false; -} - -/*++ -* @method: oAuth::getSignature -* -* @description: this method calculates HMAC-SHA1 signature of OAuth header -* -* @input: eType - HTTP request type -* rawUrl - raw url of the HTTP request -* rawKeyValuePairs - key-value pairs containing OAuth headers and HTTP data -* -* @output: oAuthSignature - base64 and url encoded signature -* -* @remarks: internal method -* -*--*/ -bool oAuth::getSignature( const eOAuthHttpRequestType eType, - const std::string& rawUrl, - const oAuthKeyValuePairs& rawKeyValuePairs, - std::string& oAuthSignature ) -{ - std::string rawParams; - std::string paramsSeperator; - std::string sigBase; - - /* Initially empty signature */ - oAuthSignature.assign( "" ); - - /* Build a string using key-value pairs */ - paramsSeperator = "&"; - getStringFromOAuthKeyValuePairs( rawKeyValuePairs, rawParams, paramsSeperator ); - - /* Start constructing base signature string. Refer http://dev.twitter.com/auth#intro */ - switch( eType ) - { - case eOAuthHttpGet: - { - sigBase.assign( "GET&" ); - } - break; - - case eOAuthHttpPost: - { - sigBase.assign( "POST&" ); - } - break; - - case eOAuthHttpDelete: - { - sigBase.assign( "DELETE&" ); - } - break; - - default: - { - return false; - } - break; - } - sigBase.append( urlencode( rawUrl ) ); - sigBase.append( "&" ); - sigBase.append( urlencode( rawParams ) ); - - /* Now, hash the signature base string using HMAC_SHA1 class */ - CHMAC_SHA1 objHMACSHA1; - std::string secretSigningKey; - unsigned char strDigest[oAuthLibDefaults::OAUTHLIB_BUFFSIZE_LARGE]; - - memset( strDigest, 0, oAuthLibDefaults::OAUTHLIB_BUFFSIZE_LARGE ); - - /* Signing key is composed of consumer_secret&token_secret */ - secretSigningKey.assign( m_consumerSecret ); - secretSigningKey.append( "&" ); - if( m_oAuthTokenSecret.length() ) - { - secretSigningKey.append( m_oAuthTokenSecret ); - } - - objHMACSHA1.HMAC_SHA1( (unsigned char*)sigBase.c_str(), - sigBase.length(), - (unsigned char*)secretSigningKey.c_str(), - secretSigningKey.length(), - strDigest ); - - /* Do a base64 encode of signature */ - std::string base64Str = base64_encode( strDigest, 20 /* SHA 1 digest is 160 bits */ ); - - /* Do an url encode */ - oAuthSignature = urlencode( base64Str ); - - return ( oAuthSignature.length() ) ? true : false; -} - -/*++ -* @method: oAuth::getOAuthHeader -* -* @description: this method builds OAuth header that should be used in HTTP requests to twitter -* -* @input: eType - HTTP request type -* rawUrl - raw url of the HTTP request -* rawData - HTTP data (post fields) -* includeOAuthVerifierPin - flag to indicate whether or not oauth_verifier needs to included -* in OAuth header -* -* @output: oAuthHttpHeader - OAuth header -* -*--*/ -bool oAuth::getOAuthHeader( const eOAuthHttpRequestType eType, - const std::string& rawUrl, - const std::string& rawData, - std::string& oAuthHttpHeader, - const bool includeOAuthVerifierPin ) -{ - oAuthKeyValuePairs rawKeyValuePairs; - std::string rawParams; - std::string oauthSignature; - std::string paramsSeperator; - std::string pureUrl( rawUrl ); - - /* Clear header string initially */ - oAuthHttpHeader.assign( "" ); - rawKeyValuePairs.clear(); - - /* If URL itself contains ?key=value, then extract and put them in map */ - size_t nPos = rawUrl.find_first_of( "?" ); - if( std::string::npos != nPos ) - { - /* Get only URL */ - pureUrl = rawUrl.substr( 0, nPos ); - - /* Get only key=value data part */ - std::string dataPart = rawUrl.substr( nPos + 1 ); - - /* Split the data in URL as key=value pairs */ - buildOAuthRawDataKeyValPairs( dataPart, true, rawKeyValuePairs ); - } - - /* Split the raw data if it's present, as key=value pairs. Data should already be urlencoded once */ - buildOAuthRawDataKeyValPairs( rawData, false, rawKeyValuePairs ); - - /* Build key-value pairs needed for OAuth request token, without signature */ - buildOAuthTokenKeyValuePairs( includeOAuthVerifierPin, std::string( "" ), rawKeyValuePairs, true ); - - /* Get url encoded base64 signature using request type, url and parameters */ - getSignature( eType, pureUrl, rawKeyValuePairs, oauthSignature ); - - /* Clear map so that the parameters themselves are not sent along with the OAuth values */ - rawKeyValuePairs.clear(); - - /* Now, again build key-value pairs with signature this time */ - buildOAuthTokenKeyValuePairs( includeOAuthVerifierPin, oauthSignature, rawKeyValuePairs, false ); - - /* Get OAuth header in string format */ - paramsSeperator = ","; - getStringFromOAuthKeyValuePairs( rawKeyValuePairs, rawParams, paramsSeperator ); - - /* Build authorization header */ - oAuthHttpHeader.assign( oAuthLibDefaults::OAUTHLIB_AUTHHEADER_STRING ); - oAuthHttpHeader.append( rawParams ); - - return ( oAuthHttpHeader.length() ) ? true : false; -} - -/*++ -* @method: oAuth::getStringFromOAuthKeyValuePairs -* -* @description: this method builds a sorted string from key-value pairs -* -* @input: rawParamMap - key-value pairs map -* paramsSeperator - sepearator, either & or , -* -* @output: rawParams - sorted string of OAuth parameters -* -* @remarks: internal method -* -*--*/ -bool oAuth::getStringFromOAuthKeyValuePairs( const oAuthKeyValuePairs& rawParamMap, - std::string& rawParams, - const std::string& paramsSeperator ) -{ - rawParams.assign( "" ); - if( rawParamMap.size() ) - { - oAuthKeyValueList keyValueList; - std::string dummyStr; - - /* Push key-value pairs to a list of strings */ - keyValueList.clear(); - oAuthKeyValuePairs::const_iterator itMap = rawParamMap.begin(); - for( ; itMap != rawParamMap.end(); itMap++ ) - { - dummyStr.assign( itMap->first ); - dummyStr.append( "=" ); - if( paramsSeperator == "," ) - { - dummyStr.append( "\"" ); - } - dummyStr.append( itMap->second ); - if( paramsSeperator == "," ) - { - dummyStr.append( "\"" ); - } - keyValueList.push_back( dummyStr ); - } - - /* Sort key-value pairs based on key name */ - keyValueList.sort(); - - /* Now, form a string */ - dummyStr.assign( "" ); - oAuthKeyValueList::iterator itKeyValue = keyValueList.begin(); - for( ; itKeyValue != keyValueList.end(); itKeyValue++ ) - { - if( dummyStr.length() ) - { - dummyStr.append( paramsSeperator ); - } - dummyStr.append( itKeyValue->c_str() ); - } - rawParams.assign( dummyStr ); - } - return ( rawParams.length() ) ? true : false; -} - -/*++ -* @method: oAuth::extractOAuthTokenKeySecret -* -* @description: this method extracts oauth token key and secret from -* twitter's HTTP response -* -* @input: requestTokenResponse - response from twitter -* -* @output: none -* -*--*/ -bool oAuth::extractOAuthTokenKeySecret( const std::string& requestTokenResponse ) -{ - if( requestTokenResponse.length() ) - { - size_t nPos = std::string::npos; - std::string strDummy; - - /* Get oauth_token key */ - nPos = requestTokenResponse.find( oAuthLibDefaults::OAUTHLIB_TOKEN_KEY ); - if( std::string::npos != nPos ) - { - nPos = nPos + oAuthLibDefaults::OAUTHLIB_TOKEN_KEY.length() + strlen( "=" ); - strDummy = requestTokenResponse.substr( nPos ); - nPos = strDummy.find( "&" ); - if( std::string::npos != nPos ) - { - m_oAuthTokenKey = strDummy.substr( 0, nPos ); - } - } - - /* Get oauth_token_secret */ - nPos = requestTokenResponse.find( oAuthLibDefaults::OAUTHLIB_TOKENSECRET_KEY ); - if( std::string::npos != nPos ) - { - nPos = nPos + oAuthLibDefaults::OAUTHLIB_TOKENSECRET_KEY.length() + strlen( "=" ); - strDummy = requestTokenResponse.substr( nPos ); - nPos = strDummy.find( "&" ); - if( std::string::npos != nPos ) - { - m_oAuthTokenSecret = strDummy.substr( 0, nPos ); - } - } - - /* Get screen_name */ - nPos = requestTokenResponse.find( oAuthLibDefaults::OAUTHLIB_SCREENNAME_KEY ); - if( std::string::npos != nPos ) - { - nPos = nPos + oAuthLibDefaults::OAUTHLIB_SCREENNAME_KEY.length() + strlen( "=" ); - strDummy = requestTokenResponse.substr( nPos ); - m_oAuthScreenName = strDummy; - } - } - return true; -} diff --git a/backends/twitter/libtwitcurl/.svn/text-base/oauthlib.h.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/oauthlib.h.svn-base deleted file mode 100644 index 79695bbc..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/oauthlib.h.svn-base +++ /dev/null @@ -1,127 +0,0 @@ -#ifndef __OAUTHLIB_H__ -#define __OAUTHLIB_H__ - -#include "time.h" -#include -#include -#include -#include -#include -#include -#include - -namespace oAuthLibDefaults -{ - /* Constants */ - const int OAUTHLIB_BUFFSIZE = 1024; - const int OAUTHLIB_BUFFSIZE_LARGE = 1024; - const std::string OAUTHLIB_CONSUMERKEY_KEY = "oauth_consumer_key"; - const std::string OAUTHLIB_CALLBACK_KEY = "oauth_callback"; - const std::string OAUTHLIB_VERSION_KEY = "oauth_version"; - const std::string OAUTHLIB_SIGNATUREMETHOD_KEY = "oauth_signature_method"; - const std::string OAUTHLIB_SIGNATURE_KEY = "oauth_signature"; - const std::string OAUTHLIB_TIMESTAMP_KEY = "oauth_timestamp"; - const std::string OAUTHLIB_NONCE_KEY = "oauth_nonce"; - const std::string OAUTHLIB_TOKEN_KEY = "oauth_token"; - const std::string OAUTHLIB_TOKENSECRET_KEY = "oauth_token_secret"; - const std::string OAUTHLIB_VERIFIER_KEY = "oauth_verifier"; - const std::string OAUTHLIB_SCREENNAME_KEY = "screen_name"; - const std::string OAUTHLIB_AUTHENTICITY_TOKEN_KEY = "authenticity_token"; - const std::string OAUTHLIB_SESSIONUSERNAME_KEY = "session[username_or_email]"; - const std::string OAUTHLIB_SESSIONPASSWORD_KEY = "session[password]"; - const std::string OAUTHLIB_AUTHENTICITY_TOKEN_TWITTER_RESP_KEY = "authenticity_token\" type=\"hidden\" value=\""; - const std::string OAUTHLIB_TOKEN_TWITTER_RESP_KEY = "oauth_token\" type=\"hidden\" value=\""; - const std::string OAUTHLIB_PIN_TWITTER_RESP_KEY = "code-desc\">"; - const std::string OAUTHLIB_TOKEN_END_TAG_TWITTER_RESP = "\" />"; - const std::string OAUTHLIB_PIN_END_TAG_TWITTER_RESP = ""; - - const std::string OAUTHLIB_AUTHHEADER_STRING = "Authorization: OAuth "; -}; - -namespace oAuthTwitterApiUrls -{ - /* Twitter OAuth API URLs */ - const std::string OAUTHLIB_TWITTER_REQUEST_TOKEN_URL = "twitter.com/oauth/request_token"; - const std::string OAUTHLIB_TWITTER_AUTHORIZE_URL = "twitter.com/oauth/authorize?oauth_token="; - const std::string OAUTHLIB_TWITTER_ACCESS_TOKEN_URL = "twitter.com/oauth/access_token"; -}; - -typedef enum _eOAuthHttpRequestType -{ - eOAuthHttpInvalid = 0, - eOAuthHttpGet, - eOAuthHttpPost, - eOAuthHttpDelete -} eOAuthHttpRequestType; - -typedef std::list oAuthKeyValueList; -typedef std::map oAuthKeyValuePairs; - -class oAuth -{ -public: - oAuth(); - ~oAuth(); - - /* OAuth public methods used by twitCurl */ - void getConsumerKey( std::string& consumerKey /* out */ ); - void setConsumerKey( const std::string& consumerKey /* in */ ); - - void getConsumerSecret( std::string& consumerSecret /* out */ ); - void setConsumerSecret( const std::string& consumerSecret /* in */ ); - - void getOAuthTokenKey( std::string& oAuthTokenKey /* out */ ); - void setOAuthTokenKey( const std::string& oAuthTokenKey /* in */ ); - - void getOAuthTokenSecret( std::string& oAuthTokenSecret /* out */ ); - void setOAuthTokenSecret( const std::string& oAuthTokenSecret /* in */ ); - - void getOAuthScreenName( std::string& oAuthScreenName /* out */ ); - void setOAuthScreenName( const std::string& oAuthScreenName /* in */ ); - - void getOAuthPin( std::string& oAuthPin /* out */ ); - void setOAuthPin( const std::string& oAuthPin /* in */ ); - - bool getOAuthHeader( const eOAuthHttpRequestType eType, /* in */ - const std::string& rawUrl, /* in */ - const std::string& rawData, /* in */ - std::string& oAuthHttpHeader, /* out */ - const bool includeOAuthVerifierPin = false /* in */ ); - - bool extractOAuthTokenKeySecret( const std::string& requestTokenResponse /* in */ ); - -private: - - /* OAuth data */ - std::string m_consumerKey; - std::string m_consumerSecret; - std::string m_oAuthTokenKey; - std::string m_oAuthTokenSecret; - std::string m_oAuthPin; - std::string m_nonce; - std::string m_timeStamp; - std::string m_oAuthScreenName; - - /* OAuth twitter related utility methods */ - void buildOAuthRawDataKeyValPairs( const std::string& rawData, /* in */ - bool urlencodeData, /* in */ - oAuthKeyValuePairs& rawDataKeyValuePairs /* out */ ); - - bool buildOAuthTokenKeyValuePairs( const bool includeOAuthVerifierPin, /* in */ - const std::string& oauthSignature, /* in */ - oAuthKeyValuePairs& keyValueMap /* out */, - const bool generateTimestamp /* in */ ); - - bool getStringFromOAuthKeyValuePairs( const oAuthKeyValuePairs& rawParamMap, /* in */ - std::string& rawParams, /* out */ - const std::string& paramsSeperator /* in */ ); - - bool getSignature( const eOAuthHttpRequestType eType, /* in */ - const std::string& rawUrl, /* in */ - const oAuthKeyValuePairs& rawKeyValuePairs, /* in */ - std::string& oAuthSignature /* out */ ); - - void generateNonceTimeStamp(); -}; - -#endif // __OAUTHLIB_H__ \ No newline at end of file diff --git a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.cpp.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.cpp.svn-base deleted file mode 100644 index 5d9670c3..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.cpp.svn-base +++ /dev/null @@ -1,2042 +0,0 @@ -#include -#include "twitcurl.h" -#include "urlencode.h" - -/*++ -* @method: twitCurl::twitCurl -* -* @description: constructor -* -* @input: none -* -* @output: none -* -*--*/ -twitCurl::twitCurl(): -m_curlHandle( NULL ), -m_curlProxyParamsSet( false ), -m_curlLoginParamsSet( false ), -m_curlCallbackParamsSet( false ), -m_eApiFormatType( twitCurlTypes::eTwitCurlApiFormatXml ), -m_eProtocolType( twitCurlTypes::eTwitCurlProtocolHttp ) -{ - /* Clear callback buffers */ - clearCurlCallbackBuffers(); - - /* Initialize cURL */ - m_curlHandle = curl_easy_init(); - if( NULL == m_curlHandle ) - { - std::string dummyStr; - getLastCurlError( dummyStr ); - } -} - -/*++ -* @method: twitCurl::~twitCurl -* -* @description: destructor -* -* @input: none -* -* @output: none -* -*--*/ -twitCurl::~twitCurl() -{ - /* Cleanup cURL */ - if( m_curlHandle ) - { - curl_easy_cleanup( m_curlHandle ); - m_curlHandle = NULL; - } -} - -/*++ -* @method: twitCurl::setTwitterApiType -* -* @description: method to set API type -* -* @input: none -* -* @output: none -* -*--*/ -void twitCurl::setTwitterApiType( twitCurlTypes::eTwitCurlApiFormatType eType ) -{ - m_eApiFormatType = ( eType < twitCurlTypes::eTwitCurlApiFormatMax ) ? - eType : twitCurlTypes::eTwitCurlApiFormatXml; -} - -/*++ -* @method: twitCurl::setTwitterProcotolType -* -* @description: method to set protocol -* -* @input: none -* -* @output: none -* -*--*/ -void twitCurl::setTwitterProcotolType( twitCurlTypes::eTwitCurlProtocolType eType ) -{ - m_eProtocolType = ( eType < twitCurlTypes::eTwitCurlProtocolMax ) ? - eType : twitCurlTypes::eTwitCurlProtocolHttp; -} - -/*++ -* @method: twitCurl::isCurlInit -* -* @description: method to check if cURL is initialized properly -* -* @input: none -* -* @output: true if cURL is intialized, otherwise false -* -*--*/ -bool twitCurl::isCurlInit() -{ - return ( NULL != m_curlHandle ) ? true : false; -} - -/*++ -* @method: twitCurl::getTwitterUsername -* -* @description: method to get stored Twitter username -* -* @input: none -* -* @output: twitter username -* -*--*/ -std::string& twitCurl::getTwitterUsername() -{ - return m_twitterUsername; -} - -/*++ -* @method: twitCurl::getTwitterPassword -* -* @description: method to get stored Twitter password -* -* @input: none -* -* @output: twitter password -* -*--*/ -std::string& twitCurl::getTwitterPassword() -{ - return m_twitterPassword; -} - -/*++ -* @method: twitCurl::setTwitterUsername -* -* @description: method to set username -* -* @input: userName -* -* @output: none -* -*--*/ -void twitCurl::setTwitterUsername( std::string& userName ) -{ - if( userName.length() ) - { - m_twitterUsername = userName; - m_curlLoginParamsSet = false; - } -} - -/*++ -* @method: twitCurl::setTwitterPassword -* -* @description: method to set password -* -* @input: passWord -* -* @output: none -* -*--*/ -void twitCurl::setTwitterPassword( std::string& passWord ) -{ - if( passWord.length() ) - { - m_twitterPassword = passWord; - m_curlLoginParamsSet = false; - } -} - -/*++ -* @method: twitCurl::getProxyServerIp -* -* @description: method to get proxy server IP address -* -* @input: none -* -* @output: proxy server IP address -* -*--*/ -std::string& twitCurl::getProxyServerIp() -{ - return m_proxyServerIp; -} - -/*++ -* @method: twitCurl::getProxyServerPort -* -* @description: method to get proxy server port -* -* @input: none -* -* @output: proxy server port -* -*--*/ -std::string& twitCurl::getProxyServerPort() -{ - return m_proxyServerPort; -} - -/*++ -* @method: twitCurl::getProxyUserName -* -* @description: method to get proxy user name -* -* @input: none -* -* @output: proxy server user name -* -*--*/ -std::string& twitCurl::getProxyUserName() -{ - return m_proxyUserName; -} - -/*++ -* @method: twitCurl::getProxyPassword -* -* @description: method to get proxy server password -* -* @input: none -* -* @output: proxy server password -* -*--*/ -std::string& twitCurl::getProxyPassword() -{ - return m_proxyPassword; -} - -/*++ -* @method: twitCurl::setProxyServerIp -* -* @description: method to set proxy server IP address -* -* @input: proxyServerIp -* -* @output: none -* -*--*/ -void twitCurl::setProxyServerIp( std::string& proxyServerIp ) -{ - if( proxyServerIp.length() ) - { - m_proxyServerIp = proxyServerIp; - /* - * Reset the flag so that next cURL http request - * would set proxy details again into cURL. - */ - m_curlProxyParamsSet = false; - } -} - -/*++ -* @method: twitCurl::setProxyServerPort -* -* @description: method to set proxy server port -* -* @input: proxyServerPort -* -* @output: none -* -*--*/ -void twitCurl::setProxyServerPort( std::string& proxyServerPort ) -{ - if( proxyServerPort.length() ) - { - m_proxyServerPort = proxyServerPort; - /* - * Reset the flag so that next cURL http request - * would set proxy details again into cURL. - */ - m_curlProxyParamsSet = false; - } -} - -/*++ -* @method: twitCurl::setProxyUserName -* -* @description: method to set proxy server username -* -* @input: proxyUserName -* -* @output: none -* -*--*/ -void twitCurl::setProxyUserName( std::string& proxyUserName ) -{ - if( proxyUserName.length() ) - { - m_proxyUserName = proxyUserName; - /* - * Reset the flag so that next cURL http request - * would set proxy details again into cURL. - */ - m_curlProxyParamsSet = false; - } -} - -/*++ -* @method: twitCurl::setProxyPassword -* -* @description: method to set proxy server password -* -* @input: proxyPassword -* -* @output: none -* -*--*/ -void twitCurl::setProxyPassword( std::string& proxyPassword ) -{ - if( proxyPassword.length() ) - { - m_proxyPassword = proxyPassword; - /* - * Reset the flag so that next cURL http request - * would set proxy details again into cURL. - */ - m_curlProxyParamsSet = false; - } -} - -/*++ -* @method: twitCurl::search -* -* @description: method to return tweets that match a specified query. -* -* @input: searchQuery - search query in string format -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -* @note: Only ATOM and JSON format supported. -* -*--*/ -bool twitCurl::search( std::string& searchQuery ) -{ - /* Prepare URL */ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_SEARCH_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[twitCurlTypes::eTwitCurlApiFormatJson] + - twitCurlDefaults::TWITCURL_URL_SEP_QUES + twitCurlDefaults::TWITCURL_SEARCHQUERYSTRING + - searchQuery; - - /* Perform GET */ - return performGet( buildUrl ); -} - -/*++ -* @method: twitCurl::statusUpdate -* -* @description: method to update new status message in twitter profile -* -* @input: newStatus -* -* @output: true if POST is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::statusUpdate( std::string& newStatus ) -{ - bool retVal = false; - if( newStatus.length() ) - { - /* Prepare new status message */ - std::string newStatusMsg = twitCurlDefaults::TWITCURL_STATUSSTRING + urlencode( newStatus ); - - /* Perform POST */ - retVal = performPost( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_STATUSUPDATE_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType], - newStatusMsg ); - } - return retVal; -} - -/*++ -* @method: twitCurl::statusShowById -* -* @description: method to get a status message by its id -* -* @input: statusId - a number in std::string format -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::statusShowById( std::string& statusId ) -{ - bool retVal = false; - if( statusId.length() ) - { - /* Prepare URL */ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_STATUSSHOW_URL + statusId + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType]; - - /* Perform GET */ - retVal = performGet( buildUrl ); - } - return retVal; -} - -/*++ -* @method: twitCurl::statusDestroyById -* -* @description: method to delete a status message by its id -* -* @input: statusId - a number in std::string format -* -* @output: true if DELETE is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::statusDestroyById( std::string& statusId ) -{ - bool retVal = false; - if( statusId.length() ) - { - /* Prepare URL */ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_STATUDESTROY_URL + statusId + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType]; - - /* Perform DELETE */ - retVal = performDelete( buildUrl ); - } - return retVal; -} - -/*++ -* @method: twitCurl::timelinePublicGet -* -* @description: method to get public timeline -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::timelinePublicGet() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_PUBLIC_TIMELINE_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::featuredUsersGet -* -* @description: method to get featured users -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::featuredUsersGet() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_FEATURED_USERS_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::timelineFriendsGet -* -* @description: method to get friends timeline -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::timelineFriendsGet() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_FRIENDS_TIMELINE_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::mentionsGet -* -* @description: method to get mentions -* -* @input: sinceId - String specifying since id parameter -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::mentionsGet( std::string sinceId ) -{ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_MENTIONS_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType]; - if( sinceId.length() ) - { - buildUrl += twitCurlDefaults::TWITCURL_URL_SEP_QUES + twitCurlDefaults::TWITCURL_SINCEID + sinceId; - } - /* Perform GET */ - return performGet( buildUrl ); -} - -/*++ -* @method: twitCurl::timelineUserGet -* -* @description: method to get mentions -* -* @input: trimUser - Trim user name if true -* tweetCount - Number of tweets to get. Max 200. -* userInfo - screen name or user id in string format, -* isUserId - true if userInfo contains an id -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::timelineUserGet( bool trimUser, bool includeRetweets, unsigned int tweetCount, std::string userInfo, bool isUserId ) -{ - /* Prepare URL */ - std::string buildUrl; - - utilMakeUrlForUser( buildUrl, twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_USERTIMELINE_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType], - userInfo, isUserId ); - - if( !userInfo.length() ) - { - buildUrl += twitCurlDefaults::TWITCURL_URL_SEP_QUES; - } - - if( tweetCount ) - { - if( tweetCount > twitCurlDefaults::MAX_TIMELINE_TWEET_COUNT ) - { - tweetCount = twitCurlDefaults::MAX_TIMELINE_TWEET_COUNT; - } - std::stringstream tmpStrm; - tmpStrm << twitCurlDefaults::TWITCURL_URL_SEP_AMP + twitCurlDefaults::TWITCURL_COUNT << tweetCount; - buildUrl += tmpStrm.str(); - tmpStrm.str().clear(); - } - - if( includeRetweets ) - { - buildUrl += twitCurlDefaults::TWITCURL_URL_SEP_AMP + twitCurlDefaults::TWITCURL_INCRETWEETS; - } - - if( trimUser ) - { - buildUrl += twitCurlDefaults::TWITCURL_URL_SEP_AMP + twitCurlDefaults::TWITCURL_TRIMUSER; - } - - /* Perform GET */ - return performGet( buildUrl ); -} - -/*++ -* @method: twitCurl::userGet -* -* @description: method to get a user's profile -* -* @input: userInfo - screen name or user id in string format, -* isUserId - true if userInfo contains an id -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::userGet( std::string& userInfo, bool isUserId ) -{ - bool retVal = false; - if( userInfo.length() ) - { - /* Set URL */ - std::string buildUrl; - utilMakeUrlForUser( buildUrl, twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_SHOWUSERS_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType], - userInfo, isUserId ); - - /* Perform GET */ - retVal = performGet( buildUrl ); - } - return retVal; -} - -/*++ -* @method: twitCurl::friendsGet -* -* @description: method to get a user's friends -* -* @input: userInfo - screen name or user id in string format, -* isUserId - true if userInfo contains an id -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::friendsGet( std::string userInfo, bool isUserId ) -{ - /* Set URL */ - std::string buildUrl; - utilMakeUrlForUser( buildUrl, twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_SHOWFRIENDS_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType], - userInfo, isUserId ); - - /* Perform GET */ - return performGet( buildUrl ); -} - -/*++ -* @method: twitCurl::followersGet -* -* @description: method to get a user's followers -* -* @input: userInfo - screen name or user id in string format, -* isUserId - true if userInfo contains an id -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::followersGet( std::string userInfo, bool isUserId ) -{ - /* Prepare URL */ - std::string buildUrl; - utilMakeUrlForUser( buildUrl, twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_SHOWFOLLOWERS_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType], - userInfo, isUserId ); - - /* Perform GET */ - return performGet( buildUrl ); -} - -/*++ -* @method: twitCurl::directMessageGet -* -* @description: method to get direct messages -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::directMessageGet() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_DIRECTMESSAGES_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::directMessageSend -* -* @description: method to send direct message to a user -* -* @input: userInfo - screen name or user id of a user to whom message needs to be sent, -* dMsg - message -* isUserId - true if userInfo contains target user's id -* -* @output: true if POST is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::directMessageSend( std::string& userInfo, std::string& dMsg, bool isUserId ) -{ - bool retVal = false; - if( userInfo.length() && dMsg.length() ) - { - /* Prepare new direct message */ - std::string newDm = twitCurlDefaults::TWITCURL_TEXTSTRING + urlencode( dMsg ); - - /* Prepare URL */ - std::string buildUrl; - utilMakeUrlForUser( buildUrl, twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_DIRECTMESSAGENEW_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType], - userInfo, isUserId ); - - /* Perform POST */ - retVal = performPost( buildUrl, newDm ); - } - return retVal; -} - -/*++ -* @method: twitCurl::directMessageGetSent -* -* @description: method to get sent direct messages -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::directMessageGetSent() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_DIRECTMESSAGESSENT_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::directMessageDestroyById -* -* @description: method to delete direct messages by its id -* -* @input: dMsgId - id of direct message in string format -* -* @output: true if DELETE is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::directMessageDestroyById( std::string& dMsgId ) -{ - bool retVal = false; - if( dMsgId.length() ) - { - /* Prepare URL */ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_DIRECTMESSAGEDESTROY_URL + dMsgId + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType]; - - /* Perform DELETE */ - retVal = performDelete( buildUrl ); - } - return retVal; -} - -/*++ -* @method: twitCurl::friendshipCreate -* -* @description: method to add a twitter user as friend (follow a user) -* -* @input: userInfo - user id or screen name of a user -* isUserId - true if userInfo contains a user id instead of screen name -* -* @output: true if POST is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::friendshipCreate( std::string& userInfo, bool isUserId ) -{ - bool retVal = false; - if( userInfo.length() ) - { - /* Prepare URL */ - std::string buildUrl; - utilMakeUrlForUser( buildUrl, twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_FRIENDSHIPSCREATE_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType], - userInfo, isUserId ); - - /* Send some dummy data in POST */ - std::string dummyData = twitCurlDefaults::TWITCURL_TEXTSTRING + - urlencode( std::string( "dummy" ) ); - - /* Perform POST */ - retVal = performPost( buildUrl, dummyData ); - } - return retVal; -} - -/*++ -* @method: twitCurl::friendshipDestroy -* -* @description: method to delete a twitter user from friend list (unfollow a user) -* -* @input: userInfo - user id or screen name of a user -* isUserId - true if userInfo contains a user id instead of screen name -* -* @output: true if DELETE is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::friendshipDestroy( std::string& userInfo, bool isUserId ) -{ - bool retVal = false; - if( userInfo.length() ) - { - /* Prepare URL */ - std::string buildUrl; - utilMakeUrlForUser( buildUrl, twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_FRIENDSHIPSDESTROY_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType], - userInfo, isUserId ); - - /* Perform DELETE */ - retVal = performDelete( buildUrl ); - } - return retVal; -} - -/*++ -* @method: twitCurl::friendshipShow -* -* @description: method to show all friends -* -* @input: userInfo - user id or screen name of a user of whom friends need to be shown -* isUserId - true if userInfo contains a user id instead of screen name -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::friendshipShow( std::string& userInfo, bool isUserId ) -{ - /* Prepare URL */ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_FRIENDSHIPSSHOW_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType]; - if( userInfo.length() ) - { - /* Append username to the URL */ - buildUrl += twitCurlDefaults::TWITCURL_URL_SEP_QUES; - if( isUserId ) - { - buildUrl += twitCurlDefaults::TWITCURL_TARGETUSERID; - } - else - { - buildUrl += twitCurlDefaults::TWITCURL_TARGETSCREENNAME; - } - buildUrl += userInfo; - } - - /* Perform GET */ - return performGet( buildUrl ); -} - -/*++ -* @method: twitCurl::friendsIdsGet -* -* @description: method to show IDs of all friends of a twitter user -* -* @input: userInfo - user id or screen name of a user -* isUserId - true if userInfo contains a user id instead of screen name -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::friendsIdsGet( std::string& userInfo, bool isUserId ) -{ - /* Prepare URL */ - std::string buildUrl; - utilMakeUrlForUser( buildUrl, twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_FRIENDSIDS_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType], - userInfo, isUserId ); - - /* Perform GET */ - return performGet( buildUrl ); -} - -/*++ -* @method: twitCurl::followersIdsGet -* -* @description: method to show IDs of all followers of a twitter user -* -* @input: userInfo - user id or screen name of a user -* isUserId - true if userInfo contains a user id instead of screen name -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::followersIdsGet( std::string& userInfo, bool isUserId ) -{ - /* Prepare URL */ - std::string buildUrl; - utilMakeUrlForUser( buildUrl, twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_FOLLOWERSIDS_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType], - userInfo, isUserId ); - - /* Perform GET */ - return performGet( buildUrl ); -} - -/*++ -* @method: twitCurl::accountRateLimitGet -* -* @description: method to get API rate limit of current user -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::accountRateLimitGet() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_ACCOUNTRATELIMIT_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::accountVerifyCredGet -* -* @description: method to get information on user identified by given credentials -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::accountVerifyCredGet() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_ACCOUNTVERIFYCRED_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::favoriteGet -* -* @description: method to get favorite users' statuses -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::favoriteGet() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_FAVORITESGET_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::favoriteCreate -* -* @description: method to favorite a status message -* -* @input: statusId - id in string format of the status to be favorited -* -* @output: true if POST is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::favoriteCreate( std::string& statusId ) -{ - /* Prepare URL */ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_FAVORITECREATE_URL + statusId + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType]; - - /* Send some dummy data in POST */ - std::string dummyData = twitCurlDefaults::TWITCURL_TEXTSTRING + - urlencode( std::string( "dummy" ) ); - - /* Perform POST */ - return performPost( buildUrl, dummyData ); -} - -/*++ -* @method: twitCurl::favoriteDestroy -* -* @description: method to delete a favorited the status -* -* @input: statusId - id in string format of the favorite status to be deleted -* -* @output: true if DELETE is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::favoriteDestroy( std::string& statusId ) -{ - /* Prepare URL */ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_FAVORITEDESTROY_URL + statusId + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType]; - - /* Perform DELETE */ - return performDelete( buildUrl ); -} - -/*++ -* @method: twitCurl::blockCreate -* -* @description: method to block a user -* -* @input: userInfo - user id or screen name -* -* @output: true if POST is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::blockCreate( std::string& userInfo ) -{ - /* Prepare URL */ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_BLOCKSCREATE_URL + userInfo + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType]; - - /* Send some dummy data in POST */ - std::string dummyData = twitCurlDefaults::TWITCURL_TEXTSTRING + - urlencode( std::string( "dummy" ) ); - - /* Perform POST */ - return performPost( buildUrl, dummyData ); -} - -/*++ -* @method: twitCurl::blockDestroy -* -* @description: method to unblock a user -* -* @input: userInfo - user id or screen name -* -* @output: true if DELETE is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::blockDestroy( std::string& userInfo ) -{ - /* Prepare URL */ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_BLOCKSDESTROY_URL + userInfo + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType]; - - /* Perform DELETE */ - return performDelete( buildUrl ); -} - -/*++ -* @method: twitCurl::savedSearchGet -* -* @description: gets authenticated user's saved search queries. -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::savedSearchGet( ) -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_SAVEDSEARCHGET_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::savedSearchShow -* -* @description: method to retrieve the data for a saved search owned by the authenticating user -* specified by the given id. -* -* @input: searchId - id in string format of the search to be displayed -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::savedSearchShow( std::string& searchId ) -{ - /* Prepare URL */ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_SAVEDSEARCHSHOW_URL + searchId + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType]; - - /* Perform GET */ - return performGet( buildUrl ); -} - -/*++ -* @method: twitCurl::savedSearchCreate -* -* @description: creates a saved search for the authenticated user -* -* @input: query - the query of the search the user would like to save -* -* @output: true if POST is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::savedSearchCreate( std::string& query ) -{ - /* Prepare URL */ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_SAVEDSEARCHCREATE_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType]; - - /* Send some dummy data in POST */ - std::string queryStr = twitCurlDefaults::TWITCURL_QUERYSTRING + urlencode( query ); - - /* Perform POST */ - return performPost( buildUrl, queryStr ); -} - - -/*++ -* @method: twitCurl::savedSearchDestroy -* -* @description: method to destroy a saved search for the authenticated user. The search specified -* by id must be owned by the authenticating user. -* -* @input: searchId - search id of item to be deleted -* -* @output: true if DELETE is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::savedSearchDestroy( std::string& searchId ) -{ - /* Prepare URL */ - std::string buildUrl = twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_SAVEDSEARCHDESTROY_URL + searchId + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType]; - - /* Perform DELETE */ - return performDelete( buildUrl ); -} - - -/*++ -* @method: twitCurl::trendsGet() -* -* @description: gets trends. -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::trendsGet() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_TRENDS_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - - -/*++ -* @method: twitCurl::trendsDailyGet() -* -* @description: gets daily trends. -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::trendsDailyGet() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_TRENDSDAILY_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::trendsWeeklyGet() -* -* @description: gets weekly trends. -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::trendsWeeklyGet() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_TRENDSWEEKLY_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::trendsCurrentGet() -* -* @description: gets current trends. -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::trendsCurrentGet() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_TRENDSCURRENT_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::trendsAvailableGet() -* -* @description: gets available trends. -* -* @input: none -* -* @output: true if GET is success, otherwise false. This does not check http -* response by twitter. Use getLastWebResponse() for that. -* -*--*/ -bool twitCurl::trendsAvailableGet() -{ - /* Perform GET */ - return performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - twitterDefaults::TWITCURL_TRENDSAVAILABLE_URL + - twitCurlDefaults::TWITCURL_EXTENSIONFORMATS[m_eApiFormatType] ); -} - -/*++ -* @method: twitCurl::getLastWebResponse -* -* @description: method to get http response for the most recent request sent. -* twitcurl users need to call this method and parse the XML -* data returned by twitter to see what has happened. -* -* @input: outWebResp - string in which twitter's response is supplied back to caller -* -* @output: none -* -*--*/ -void twitCurl::getLastWebResponse( std::string& outWebResp ) -{ - outWebResp = ""; - if( m_callbackData.length() ) - { - outWebResp = m_callbackData; - } -} - -/*++ -* @method: twitCurl::getLastCurlError -* -* @description: method to get cURL error response for most recent http request. -* twitcurl users can call this method if any of the APIs return -* false. -* -* @input: none -* -* @output: none -* -*--*/ -void twitCurl::getLastCurlError( std::string& outErrResp ) -{ - m_errorBuffer[twitCurlDefaults::TWITCURL_DEFAULT_BUFFSIZE-1] = twitCurlDefaults::TWITCURL_EOS; - outErrResp.assign( m_errorBuffer ); -} - -/*++ -* @method: twitCurl::curlCallback -* -* @description: static method to get http response back from cURL. -* this is an internal method, users of twitcurl need not -* use this. -* -* @input: as per cURL convention. -* -* @output: size of data stored in our buffer -* -* @remarks: internal method -* -*--*/ -int twitCurl::curlCallback( char* data, size_t size, size_t nmemb, twitCurl* pTwitCurlObj ) -{ - int writtenSize = 0; - if( ( NULL != pTwitCurlObj ) && ( NULL != data ) ) - { - /* Save http response in twitcurl object's buffer */ - writtenSize = pTwitCurlObj->saveLastWebResponse( data, ( size*nmemb ) ); - } - return writtenSize; -} - -/*++ -* @method: twitCurl::saveLastWebResponse -* -* @description: method to save http responses. this is an internal method -* and twitcurl users need not use this. -* -* @input: data - character buffer from cURL, -* size - size of character buffer -* -* @output: size of data stored in our buffer -* -* @remarks: internal method -* -*--*/ -int twitCurl::saveLastWebResponse( char*& data, size_t size ) -{ - int bytesWritten = 0; - if( data && size ) - { - /* Append data in our internal buffer */ - m_callbackData.append( data, size ); - bytesWritten = (int)size; - } - return bytesWritten; -} - -/*++ -* @method: twitCurl::clearCurlCallbackBuffers -* -* @description: method to clear callback buffers used by cURL. this is an -* internal method and twitcurl users need not use this. -* -* @input: none -* -* @output: none -* -* @remarks: internal method -* -*--*/ -void twitCurl::clearCurlCallbackBuffers() -{ - m_callbackData = ""; - memset( m_errorBuffer, 0, twitCurlDefaults::TWITCURL_DEFAULT_BUFFSIZE ); -} - -/*++ -* @method: twitCurl::prepareCurlProxy -* -* @description: method to set proxy details into cURL. this is an internal method. -* twitcurl users should not use this method, instead use setProxyXxx -* methods to set proxy server information. -* -* @input: none -* -* @output: none -* -* @remarks: internal method -* -*--*/ -void twitCurl::prepareCurlProxy() -{ - if( !m_curlProxyParamsSet ) - { - /* Reset existing proxy details in cURL */ - curl_easy_setopt( m_curlHandle, CURLOPT_PROXY, NULL ); - curl_easy_setopt( m_curlHandle, CURLOPT_PROXYUSERPWD, NULL ); - curl_easy_setopt( m_curlHandle, CURLOPT_PROXYAUTH, (long)CURLAUTH_ANY ); - - /* Set proxy details in cURL */ - std::string proxyIpPort(""); - if( getProxyServerIp().size() ) - { - utilMakeCurlParams( proxyIpPort, getProxyServerIp(), getProxyServerPort() ); - } - curl_easy_setopt( m_curlHandle, CURLOPT_PROXY, proxyIpPort.c_str() ); - - /* Prepare username and password for proxy server */ - if( m_proxyUserName.length() && m_proxyPassword.length() ) - { - std::string proxyUserPass; - utilMakeCurlParams( proxyUserPass, getProxyUserName(), getProxyPassword() ); - curl_easy_setopt( m_curlHandle, CURLOPT_PROXYUSERPWD, proxyUserPass.c_str() ); - } - - /* Set the flag to true indicating that proxy info is set in cURL */ - m_curlProxyParamsSet = true; - } -} - -/*++ -* @method: twitCurl::prepareCurlCallback -* -* @description: method to set callback details into cURL. this is an internal method. -* twitcurl users should not use this method. -* -* @input: none -* -* @output: none -* -* @remarks: internal method -* -*--*/ -void twitCurl::prepareCurlCallback() -{ - if( !m_curlCallbackParamsSet ) - { - /* Set buffer to get error */ - curl_easy_setopt( m_curlHandle, CURLOPT_ERRORBUFFER, m_errorBuffer ); - - /* Set callback function to get response */ - curl_easy_setopt( m_curlHandle, CURLOPT_WRITEFUNCTION, curlCallback ); - curl_easy_setopt( m_curlHandle, CURLOPT_WRITEDATA, this ); - - /* Set the flag to true indicating that callback info is set in cURL */ - m_curlCallbackParamsSet = true; - } -} - -/*++ -* @method: twitCurl::prepareCurlUserPass -* -* @description: method to set twitter credentials into cURL. this is an internal method. -* twitcurl users should not use this method, instead use setTwitterXxx -* methods to set twitter username and password. -* -* @input: none -* -* @output: none -* -* @remarks: internal method -* -*--*/ -void twitCurl::prepareCurlUserPass() -{ - if( !m_curlLoginParamsSet ) - { - /* Reset existing username and password stored in cURL */ - curl_easy_setopt( m_curlHandle, CURLOPT_USERPWD, "" ); - - if( getTwitterUsername().size() ) - { - /* Prepare username:password */ - std::string userNamePassword; - utilMakeCurlParams( userNamePassword, getTwitterUsername(), getTwitterPassword() ); - - /* Set username and password */ - curl_easy_setopt( m_curlHandle, CURLOPT_USERPWD, userNamePassword.c_str() ); - } - - /* Set the flag to true indicating that twitter credentials are set in cURL */ - m_curlLoginParamsSet = true; - } -} - -/*++ -* @method: twitCurl::prepareStandardParams -* -* @description: method to set standard params into cURL. this is an internal method. -* twitcurl users should not use this method. -* -* @input: none -* -* @output: none -* -* @remarks: internal method -* -*--*/ -void twitCurl::prepareStandardParams() -{ - /* Restore any custom request we may have */ - curl_easy_setopt( m_curlHandle, CURLOPT_CUSTOMREQUEST, NULL ); - - /* Clear callback and error buffers */ - clearCurlCallbackBuffers(); - - /* Prepare proxy */ - prepareCurlProxy(); - - /* Prepare cURL callback data and error buffer */ - prepareCurlCallback(); - - /* Prepare username and password for twitter */ - prepareCurlUserPass(); -} - -/*++ -* @method: twitCurl::performGet -* -* @description: method to send http GET request. this is an internal method. -* twitcurl users should not use this method. -* -* @input: getUrl - url -* -* @output: none -* -* @remarks: internal method -* -*--*/ -bool twitCurl::performGet( const std::string& getUrl ) -{ - /* Return if cURL is not initialized */ - if( !isCurlInit() ) - { - return false; - } - - std::string dataStrDummy; - std::string oAuthHttpHeader; - struct curl_slist* pOAuthHeaderList = NULL; - - /* Prepare standard params */ - prepareStandardParams(); - - /* Set OAuth header */ - m_oAuth.getOAuthHeader( eOAuthHttpGet, getUrl, dataStrDummy, oAuthHttpHeader ); - if( oAuthHttpHeader.length() ) - { - pOAuthHeaderList = curl_slist_append( pOAuthHeaderList, oAuthHttpHeader.c_str() ); - if( pOAuthHeaderList ) - { - curl_easy_setopt( m_curlHandle, CURLOPT_HTTPHEADER, pOAuthHeaderList ); - } - } - - /* Set http request and url */ - curl_easy_setopt( m_curlHandle, CURLOPT_HTTPGET, 1 ); - curl_easy_setopt( m_curlHandle, CURLOPT_URL, getUrl.c_str() ); - - /* Send http request */ - if( CURLE_OK == curl_easy_perform( m_curlHandle ) ) - { - if( pOAuthHeaderList ) - { - curl_slist_free_all( pOAuthHeaderList ); - } - return true; - } - if( pOAuthHeaderList ) - { - curl_slist_free_all( pOAuthHeaderList ); - } - return false; -} - -/*++ -* @method: twitCurl::performGet -* -* @description: method to send http GET request. this is an internal method. -* twitcurl users should not use this method. -* -* @input: const std::string& getUrl, const std::string& oAuthHttpHeader -* -* @output: none -* -* @remarks: internal method -* -*--*/ -bool twitCurl::performGet( const std::string& getUrl, const std::string& oAuthHttpHeader ) -{ - /* Return if cURL is not initialized */ - if( !isCurlInit() ) - { - return false; - } - - struct curl_slist* pOAuthHeaderList = NULL; - - /* Prepare standard params */ - prepareStandardParams(); - - /* Set http request and url */ - curl_easy_setopt( m_curlHandle, CURLOPT_HTTPGET, 1 ); - curl_easy_setopt( m_curlHandle, CURLOPT_URL, getUrl.c_str() ); - - /* Set header */ - if( oAuthHttpHeader.length() ) - { - pOAuthHeaderList = curl_slist_append( pOAuthHeaderList, oAuthHttpHeader.c_str() ); - if( pOAuthHeaderList ) - { - curl_easy_setopt( m_curlHandle, CURLOPT_HTTPHEADER, pOAuthHeaderList ); - } - } - - /* Send http request */ - if( CURLE_OK == curl_easy_perform( m_curlHandle ) ) - { - if( pOAuthHeaderList ) - { - curl_slist_free_all( pOAuthHeaderList ); - } - return true; - } - if( pOAuthHeaderList ) - { - curl_slist_free_all( pOAuthHeaderList ); - } - return false; -} - -/*++ -* @method: twitCurl::performDelete -* -* @description: method to send http DELETE request. this is an internal method. -* twitcurl users should not use this method. -* -* @input: deleteUrl - url -* -* @output: none -* -* @remarks: internal method -* -*--*/ -bool twitCurl::performDelete( const std::string& deleteUrl ) -{ - /* Return if cURL is not initialized */ - if( !isCurlInit() ) - { - return false; - } - - std::string dataStrDummy; - std::string oAuthHttpHeader; - struct curl_slist* pOAuthHeaderList = NULL; - - /* Prepare standard params */ - prepareStandardParams(); - - /* Set OAuth header */ - m_oAuth.getOAuthHeader( eOAuthHttpDelete, deleteUrl, dataStrDummy, oAuthHttpHeader ); - if( oAuthHttpHeader.length() ) - { - pOAuthHeaderList = curl_slist_append( pOAuthHeaderList, oAuthHttpHeader.c_str() ); - if( pOAuthHeaderList ) - { - curl_easy_setopt( m_curlHandle, CURLOPT_HTTPHEADER, pOAuthHeaderList ); - } - } - - /* Set http request and url */ - curl_easy_setopt( m_curlHandle, CURLOPT_CUSTOMREQUEST, "DELETE" ); - curl_easy_setopt( m_curlHandle, CURLOPT_URL, deleteUrl.c_str() ); - curl_easy_setopt( m_curlHandle, CURLOPT_COPYPOSTFIELDS, dataStrDummy.c_str() ); - - /* Send http request */ - if( CURLE_OK == curl_easy_perform( m_curlHandle ) ) - { - if( pOAuthHeaderList ) - { - curl_slist_free_all( pOAuthHeaderList ); - } - return true; - } - if( pOAuthHeaderList ) - { - curl_slist_free_all( pOAuthHeaderList ); - } - return false; -} - -/*++ -* @method: twitCurl::performPost -* -* @description: method to send http POST request. this is an internal method. -* twitcurl users should not use this method. -* -* @input: postUrl - url, -* dataStr - url encoded data to be posted -* -* @output: none -* -* @remarks: internal method -* data value in dataStr must already be url encoded. -* ex: dataStr = "key=urlencode(value)" -* -*--*/ -bool twitCurl::performPost( const std::string& postUrl, std::string dataStr ) -{ - /* Return if cURL is not initialized */ - if( !isCurlInit() ) - { - return false; - } - - std::string oAuthHttpHeader; - struct curl_slist* pOAuthHeaderList = NULL; - - /* Prepare standard params */ - prepareStandardParams(); - - /* Set OAuth header */ - m_oAuth.getOAuthHeader( eOAuthHttpPost, postUrl, dataStr, oAuthHttpHeader ); - if( oAuthHttpHeader.length() ) - { - pOAuthHeaderList = curl_slist_append( pOAuthHeaderList, oAuthHttpHeader.c_str() ); - if( pOAuthHeaderList ) - { - curl_easy_setopt( m_curlHandle, CURLOPT_HTTPHEADER, pOAuthHeaderList ); - } - } - - /* Set http request, url and data */ - curl_easy_setopt( m_curlHandle, CURLOPT_POST, 1 ); - curl_easy_setopt( m_curlHandle, CURLOPT_URL, postUrl.c_str() ); - if( dataStr.length() ) - { - curl_easy_setopt( m_curlHandle, CURLOPT_COPYPOSTFIELDS, dataStr.c_str() ); - } - - /* Send http request */ - if( CURLE_OK == curl_easy_perform( m_curlHandle ) ) - { - if( pOAuthHeaderList ) - { - curl_slist_free_all( pOAuthHeaderList ); - } - return true; - } - if( pOAuthHeaderList ) - { - curl_slist_free_all( pOAuthHeaderList ); - } - return false; -} - -/*++ -* @method: utilMakeCurlParams -* -* @description: utility function to build parameter strings in the format -* required by cURL ("param1:param2"). twitcurl users should -* not use this function. -* -* @input: inParam1 - first parameter, -* inParam2 - second parameter -* -* @output: outStr - built parameter -* -* @remarks: internal method -* -*--*/ -void utilMakeCurlParams( std::string& outStr, std::string& inParam1, std::string& inParam2 ) -{ - outStr = inParam1; - outStr += twitCurlDefaults::TWITCURL_COLON + inParam2; -} - -/*++ -* @method: utilMakeUrlForUser -* -* @description: utility function to build url compatible to twitter. twitcurl -* users should not use this function. -* -* @input: baseUrl - base twitter url, -* userInfo - user name, -* isUserId - indicates if userInfo contains a user id or scree name -* -* @output: outUrl - built url -* -* @remarks: internal method -* -*--*/ -void utilMakeUrlForUser( std::string& outUrl, const std::string& baseUrl, std::string& userInfo, bool isUserId ) -{ - /* Copy base URL */ - outUrl = baseUrl; - - if( userInfo.length() ) - { - /* Append username to the URL */ - outUrl += twitCurlDefaults::TWITCURL_URL_SEP_QUES; - if( isUserId ) - { - outUrl += twitCurlDefaults::TWITCURL_USERID; - } - else - { - outUrl += twitCurlDefaults::TWITCURL_SCREENNAME; - } - outUrl += userInfo; - } -} - -/*++ -* @method: twitCurl::getOAuth -* -* @description: method to get a reference to oAuth object. -* -* @input: none -* -* @output: reference to oAuth object -* -*--*/ -oAuth& twitCurl::getOAuth() -{ - return m_oAuth; -} - -/*++ -* @method: twitCurl::oAuthRequestToken -* -* @description: method to get a request token key and secret. this token -* will be used to get authorize user and get PIN from twitter -* -* @input: authorizeUrl is an output parameter. this method will set the url -* in this string. user should visit this link and get PIN from that page. -* -* @output: true if everything went sucessfully, otherwise false -* -*--*/ -bool twitCurl::oAuthRequestToken( std::string& authorizeUrl /* out */ ) -{ - /* Return if cURL is not initialized */ - if( !isCurlInit() ) - { - return false; - } - - /* Get OAuth header for request token */ - bool retVal = false; - std::string oAuthHeader; - authorizeUrl = ""; - if( m_oAuth.getOAuthHeader( eOAuthHttpGet, - twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - oAuthTwitterApiUrls::OAUTHLIB_TWITTER_REQUEST_TOKEN_URL, - std::string( "" ), - oAuthHeader ) ) - { - if( performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - oAuthTwitterApiUrls::OAUTHLIB_TWITTER_REQUEST_TOKEN_URL, oAuthHeader ) ) - { - /* Tell OAuth object to save access token and secret from web response */ - std::string twitterResp; - getLastWebResponse( twitterResp ); - m_oAuth.extractOAuthTokenKeySecret( twitterResp ); - - /* Get access token and secret from OAuth object */ - std::string oAuthTokenKey; - m_oAuth.getOAuthTokenKey( oAuthTokenKey ); - - /* Build authorize url so that user can visit in browser and get PIN */ - authorizeUrl.assign(twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - oAuthTwitterApiUrls::OAUTHLIB_TWITTER_AUTHORIZE_URL ); - authorizeUrl.append( oAuthTokenKey.c_str() ); - - retVal = true; - } - } - return retVal; -} - -/*++ -* @method: twitCurl::oAuthAccessToken -* -* @description: method to exchange request token with access token -* -* @input: none -* -* @output: true if everything went sucessfully, otherwise false -* -*--*/ -bool twitCurl::oAuthAccessToken() -{ - /* Return if cURL is not initialized */ - if( !isCurlInit() ) - { - return false; - } - /* Get OAuth header for access token */ - bool retVal = false; - std::string oAuthHeader; - if( m_oAuth.getOAuthHeader( eOAuthHttpGet, - twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - oAuthTwitterApiUrls::OAUTHLIB_TWITTER_ACCESS_TOKEN_URL, - std::string( "" ), - oAuthHeader, true ) ) - { - if( performGet( twitCurlDefaults::TWITCURL_PROTOCOLS[m_eProtocolType] + - oAuthTwitterApiUrls::OAUTHLIB_TWITTER_ACCESS_TOKEN_URL, oAuthHeader ) ) - { - /* Tell OAuth object to save access token and secret from web response */ - std::string twitterResp; - getLastWebResponse( twitterResp ); - m_oAuth.extractOAuthTokenKeySecret( twitterResp ); - - retVal = true; - } - } - return retVal; -} - -/*++ -* ADDED BY ANTIROOT -* -* @method: twitCurl::oAuthHandlePIN -* -* @description: method to handle user's PIN code from the authentiation URLs -* -* @input: none -* -* @output: true if everything went sucessfully, otherwise false -* -*--*/ -bool twitCurl::oAuthHandlePIN( const std::string& authorizeUrl /* in */ ) -{ - /* Return if cURL is not initialized */ - if( !isCurlInit() ) - { - return false; - } - - std::string dataStr; - std::string oAuthHttpHeader; - std::string authenticityTokenVal; - std::string oauthTokenVal; - std::string pinCodeVal; - unsigned long httpStatusCode = 0; - size_t nPosStart, nPosEnd; - struct curl_slist* pOAuthHeaderList = NULL; - - /* Prepare standard params */ - prepareStandardParams(); - - /* Set OAuth header */ - m_oAuth.getOAuthHeader( eOAuthHttpGet, authorizeUrl, dataStr, oAuthHttpHeader ); - if( oAuthHttpHeader.length() ) - { - pOAuthHeaderList = curl_slist_append( pOAuthHeaderList, oAuthHttpHeader.c_str() ); - if( pOAuthHeaderList ) - { - curl_easy_setopt( m_curlHandle, CURLOPT_HTTPHEADER, pOAuthHeaderList ); - } - } - - /* Set http request and url */ - curl_easy_setopt( m_curlHandle, CURLOPT_HTTPGET, 1 ); - curl_easy_setopt( m_curlHandle, CURLOPT_URL, authorizeUrl.c_str() ); - - /* Send http request */ - if( CURLE_OK == curl_easy_perform( m_curlHandle ) ) - { - if( pOAuthHeaderList ) - { - curl_easy_getinfo( m_curlHandle, CURLINFO_HTTP_CODE, &httpStatusCode ); - curl_slist_free_all( pOAuthHeaderList ); - - // Now, let's find the authenticity token and oauth token - nPosStart = m_callbackData.find( oAuthLibDefaults::OAUTHLIB_AUTHENTICITY_TOKEN_TWITTER_RESP_KEY ); - if( std::string::npos == nPosStart ) - { - return false; - } - nPosStart += oAuthLibDefaults::OAUTHLIB_AUTHENTICITY_TOKEN_TWITTER_RESP_KEY.length(); - nPosEnd = m_callbackData.substr( nPosStart ).find( oAuthLibDefaults::OAUTHLIB_TOKEN_END_TAG_TWITTER_RESP ); - if( std::string::npos == nPosEnd ) - { - return false; - } - authenticityTokenVal = m_callbackData.substr( nPosStart, nPosEnd ); - - nPosStart = m_callbackData.find( oAuthLibDefaults::OAUTHLIB_TOKEN_TWITTER_RESP_KEY ); - if( std::string::npos == nPosStart ) - { - return false; - } - nPosStart += oAuthLibDefaults::OAUTHLIB_TOKEN_TWITTER_RESP_KEY.length(); - nPosEnd = m_callbackData.substr( nPosStart ).find( oAuthLibDefaults::OAUTHLIB_TOKEN_END_TAG_TWITTER_RESP ); - if( std::string::npos == nPosEnd ) - { - return false; - } - oauthTokenVal = m_callbackData.substr( nPosStart, nPosEnd ); - } - } - else if( pOAuthHeaderList ) - { - curl_slist_free_all( pOAuthHeaderList ); - return false; - } - - // Second phase for the authorization - pOAuthHeaderList = NULL; - oAuthHttpHeader.clear(); - - /* Prepare standard params */ - prepareStandardParams(); - - /* - Now, we need to make a data string for POST operation - which includes oauth token, authenticity token, username, password. - */ - dataStr = oAuthLibDefaults::OAUTHLIB_TOKEN_KEY + "=" + oauthTokenVal + "&" + \ - oAuthLibDefaults::OAUTHLIB_AUTHENTICITY_TOKEN_KEY + "=" + authenticityTokenVal + "&" + \ - oAuthLibDefaults::OAUTHLIB_SESSIONUSERNAME_KEY + "=" + getTwitterUsername() + "&" + \ - oAuthLibDefaults::OAUTHLIB_SESSIONPASSWORD_KEY + "=" + getTwitterPassword(); - - /* Set OAuth header */ - m_oAuth.getOAuthHeader( eOAuthHttpPost, authorizeUrl, dataStr, oAuthHttpHeader ); - if( oAuthHttpHeader.length() ) - { - pOAuthHeaderList = curl_slist_append( pOAuthHeaderList, oAuthHttpHeader.c_str() ); - if( pOAuthHeaderList ) - { - curl_easy_setopt( m_curlHandle, CURLOPT_HTTPHEADER, pOAuthHeaderList ); - } - } - - /* Set http request and url */ - curl_easy_setopt( m_curlHandle, CURLOPT_POST, 1 ); - curl_easy_setopt( m_curlHandle, CURLOPT_URL, authorizeUrl.c_str() ); - curl_easy_setopt( m_curlHandle, CURLOPT_COPYPOSTFIELDS, dataStr.c_str() ); - - /* Send http request */ - if( CURLE_OK == curl_easy_perform( m_curlHandle ) ) - { - if( pOAuthHeaderList ) - { - curl_easy_getinfo( m_curlHandle, CURLINFO_HTTP_CODE, &httpStatusCode ); - curl_slist_free_all( pOAuthHeaderList ); - - // Now, let's find the PIN CODE - nPosStart = m_callbackData.find( oAuthLibDefaults::OAUTHLIB_PIN_TWITTER_RESP_KEY ); - if( std::string::npos == nPosStart ) - { - return false; - } - nPosStart += oAuthLibDefaults::OAUTHLIB_PIN_TWITTER_RESP_KEY.length(); - nPosEnd = m_callbackData.substr( nPosStart ).find( oAuthLibDefaults::OAUTHLIB_PIN_END_TAG_TWITTER_RESP ); - if( std::string::npos == nPosEnd ) - { - return false; - } - pinCodeVal = m_callbackData.substr( nPosStart, nPosEnd ); - getOAuth().setOAuthPin( pinCodeVal ); - return true; - } - } - else if( pOAuthHeaderList ) - { - curl_slist_free_all( pOAuthHeaderList ); - } - return false; -} diff --git a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.dsp.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.dsp.svn-base deleted file mode 100644 index 14230b25..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.dsp.svn-base +++ /dev/null @@ -1,140 +0,0 @@ -# Microsoft Developer Studio Project File - Name="twitcurl" - Package Owner=<4> -# Microsoft Developer Studio Generated Build File, Format Version 6.00 -# ** DO NOT EDIT ** - -# TARGTYPE "Win32 (x86) Static Library" 0x0104 - -CFG=twitcurl - Win32 Debug -!MESSAGE This is not a valid makefile. To build this project using NMAKE, -!MESSAGE use the Export Makefile command and run -!MESSAGE -!MESSAGE NMAKE /f "twitcurl.mak". -!MESSAGE -!MESSAGE You can specify a configuration when running NMAKE -!MESSAGE by defining the macro CFG on the command line. For example: -!MESSAGE -!MESSAGE NMAKE /f "twitcurl.mak" CFG="twitcurl - Win32 Debug" -!MESSAGE -!MESSAGE Possible choices for configuration are: -!MESSAGE -!MESSAGE "twitcurl - Win32 Release" (based on "Win32 (x86) Static Library") -!MESSAGE "twitcurl - Win32 Debug" (based on "Win32 (x86) Static Library") -!MESSAGE - -# Begin Project -# PROP AllowPerConfigDependencies 0 -# PROP Scc_ProjName "" -# PROP Scc_LocalPath "" -CPP=cl.exe -RSC=rc.exe - -!IF "$(CFG)" == "twitcurl - Win32 Release" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 0 -# PROP BASE Output_Dir "Release" -# PROP BASE Intermediate_Dir "Release" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 0 -# PROP Output_Dir "Release" -# PROP Intermediate_Dir "Release" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c -# ADD CPP /nologo /W3 /GX /O2 /I "./curl" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /YX /FD /c -# ADD BASE RSC /l 0x409 /d "NDEBUG" -# ADD RSC /l 0x409 /d "NDEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo -# ADD LIB32 /nologo - -!ELSEIF "$(CFG)" == "twitcurl - Win32 Debug" - -# PROP BASE Use_MFC 0 -# PROP BASE Use_Debug_Libraries 1 -# PROP BASE Output_Dir "Debug" -# PROP BASE Intermediate_Dir "Debug" -# PROP BASE Target_Dir "" -# PROP Use_MFC 0 -# PROP Use_Debug_Libraries 1 -# PROP Output_Dir "Debug" -# PROP Intermediate_Dir "Debug" -# PROP Target_Dir "" -# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c -# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /I "./curl" /D "WIN32" /D "_DEBUG" /D "_MBCS" /D "_LIB" /YX /FD /GZ /c -# ADD BASE RSC /l 0x409 /d "_DEBUG" -# ADD RSC /l 0x409 /d "_DEBUG" -BSC32=bscmake.exe -# ADD BASE BSC32 /nologo -# ADD BSC32 /nologo -LIB32=link.exe -lib -# ADD BASE LIB32 /nologo -# ADD LIB32 /nologo - -!ENDIF - -# Begin Target - -# Name "twitcurl - Win32 Release" -# Name "twitcurl - Win32 Debug" -# Begin Group "Source Files" - -# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat" -# Begin Source File - -SOURCE=.\base64.cpp -# End Source File -# Begin Source File - -SOURCE=.\HMAC_SHA1.cpp -# End Source File -# Begin Source File - -SOURCE=.\oauthlib.cpp -# End Source File -# Begin Source File - -SOURCE=.\SHA1.cpp -# End Source File -# Begin Source File - -SOURCE=.\twitcurl.cpp -# End Source File -# Begin Source File - -SOURCE=.\urlencode.cpp -# End Source File -# End Group -# Begin Group "Header Files" - -# PROP Default_Filter "h;hpp;hxx;hm;inl" -# Begin Source File - -SOURCE=.\base64.h -# End Source File -# Begin Source File - -SOURCE=.\HMAC_SHA1.h -# End Source File -# Begin Source File - -SOURCE=.\oauthlib.h -# End Source File -# Begin Source File - -SOURCE=.\SHA1.h -# End Source File -# Begin Source File - -SOURCE=.\twitcurl.h -# End Source File -# Begin Source File - -SOURCE=.\urlencode.h -# End Source File -# End Group -# End Target -# End Project diff --git a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.dsw.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.dsw.svn-base deleted file mode 100644 index 10790bd3..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.dsw.svn-base +++ /dev/null @@ -1,29 +0,0 @@ -Microsoft Developer Studio Workspace File, Format Version 6.00 -# WARNING: DO NOT EDIT OR DELETE THIS WORKSPACE FILE! - -############################################################################### - -Project: "twitcurl"=.\twitcurl.dsp - Package Owner=<4> - -Package=<5> -{{{ -}}} - -Package=<4> -{{{ -}}} - -############################################################################### - -Global: - -Package=<5> -{{{ -}}} - -Package=<3> -{{{ -}}} - -############################################################################### - diff --git a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.h.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.h.svn-base deleted file mode 100644 index 492c27fd..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.h.svn-base +++ /dev/null @@ -1,278 +0,0 @@ -#ifndef _TWITCURL_H_ -#define _TWITCURL_H_ - -#include -#include -#include -#include "oauthlib.h" -#include "curl/curl.h" - -namespace twitCurlTypes -{ - typedef enum _eTwitCurlApiFormatType - { - eTwitCurlApiFormatXml = 0, - eTwitCurlApiFormatJson, - eTwitCurlApiFormatMax - } eTwitCurlApiFormatType; - - typedef enum _eTwitCurlProtocolType - { - eTwitCurlProtocolHttp = 0, - eTwitCurlProtocolHttps, - eTwitCurlProtocolMax - } eTwitCurlProtocolType; -}; - -/* Default values used in twitcurl */ -namespace twitCurlDefaults -{ - /* Constants */ - const int TWITCURL_DEFAULT_BUFFSIZE = 1024; - const std::string TWITCURL_COLON = ":"; - const char TWITCURL_EOS = '\0'; - const unsigned int MAX_TIMELINE_TWEET_COUNT = 200; - - /* Miscellaneous data used to build twitter URLs*/ - const std::string TWITCURL_STATUSSTRING = "status="; - const std::string TWITCURL_TEXTSTRING = "text="; - const std::string TWITCURL_QUERYSTRING = "query="; - const std::string TWITCURL_SEARCHQUERYSTRING = "q="; - const std::string TWITCURL_SCREENNAME = "screen_name="; - const std::string TWITCURL_USERID = "user_id="; - const std::string TWITCURL_EXTENSIONFORMATS[2] = { ".xml", - ".json" - }; - const std::string TWITCURL_PROTOCOLS[2] = { "http://", - "https://" - }; - const std::string TWITCURL_TARGETSCREENNAME = "target_screen_name="; - const std::string TWITCURL_TARGETUSERID = "target_id="; - const std::string TWITCURL_SINCEID = "since_id="; - const std::string TWITCURL_TRIMUSER = "trim_user=true"; - const std::string TWITCURL_INCRETWEETS = "include_rts=true"; - const std::string TWITCURL_COUNT = "count="; - - /* URL separators */ - const std::string TWITCURL_URL_SEP_AMP = "&"; - const std::string TWITCURL_URL_SEP_QUES = "?"; -}; - -/* Default twitter URLs */ -namespace twitterDefaults -{ - - /* Search URLs */ - const std::string TWITCURL_SEARCH_URL = "search.twitter.com/search"; - - /* Status URLs */ - const std::string TWITCURL_STATUSUPDATE_URL = "api.twitter.com/1/statuses/update"; - const std::string TWITCURL_STATUSSHOW_URL = "api.twitter.com/1/statuses/show/"; - const std::string TWITCURL_STATUDESTROY_URL = "api.twitter.com/1/statuses/destroy/"; - - /* Timeline URLs */ - const std::string TWITCURL_HOME_TIMELINE_URL = "api.twitter.com/1/statuses/home_timeline"; - const std::string TWITCURL_PUBLIC_TIMELINE_URL = "api.twitter.com/1/statuses/public_timeline"; - const std::string TWITCURL_FEATURED_USERS_URL = "api.twitter.com/1/statuses/featured"; - const std::string TWITCURL_FRIENDS_TIMELINE_URL = "api.twitter.com/1/statuses/friends_timeline"; - const std::string TWITCURL_MENTIONS_URL = "api.twitter.com/1/statuses/mentions"; - const std::string TWITCURL_USERTIMELINE_URL = "api.twitter.com/1/statuses/user_timeline"; - - /* Users URLs */ - const std::string TWITCURL_SHOWUSERS_URL = "api.twitter.com/1/users/show"; - const std::string TWITCURL_SHOWFRIENDS_URL = "api.twitter.com/1/statuses/friends"; - const std::string TWITCURL_SHOWFOLLOWERS_URL = "api.twitter.com/1/statuses/followers"; - - /* Direct messages URLs */ - const std::string TWITCURL_DIRECTMESSAGES_URL = "api.twitter.com/1/direct_messages"; - const std::string TWITCURL_DIRECTMESSAGENEW_URL = "api.twitter.com/1/direct_messages/new"; - const std::string TWITCURL_DIRECTMESSAGESSENT_URL = "api.twitter.com/1/direct_messages/sent"; - const std::string TWITCURL_DIRECTMESSAGEDESTROY_URL = "api.twitter.com/1/direct_messages/destroy/"; - - /* Friendships URLs */ - const std::string TWITCURL_FRIENDSHIPSCREATE_URL = "api.twitter.com/1/friendships/create"; - const std::string TWITCURL_FRIENDSHIPSDESTROY_URL = "api.twitter.com/1/friendships/destroy"; - const std::string TWITCURL_FRIENDSHIPSSHOW_URL = "api.twitter.com/1/friendships/show"; - - /* Social graphs URLs */ - const std::string TWITCURL_FRIENDSIDS_URL = "api.twitter.com/1/friends/ids"; - const std::string TWITCURL_FOLLOWERSIDS_URL = "api.twitter.com/1/followers/ids"; - - /* Account URLs */ - const std::string TWITCURL_ACCOUNTRATELIMIT_URL = "api.twitter.com/1/account/rate_limit_status"; - const std::string TWITCURL_ACCOUNTVERIFYCRED_URL = "api.twitter.com/1/account/verify_credentials"; - - /* Favorites URLs */ - const std::string TWITCURL_FAVORITESGET_URL = "api.twitter.com/1/favorites"; - const std::string TWITCURL_FAVORITECREATE_URL = "api.twitter.com/1/favorites/create/"; - const std::string TWITCURL_FAVORITEDESTROY_URL = "api.twitter.com/1/favorites/destroy/"; - - /* Block URLs */ - const std::string TWITCURL_BLOCKSCREATE_URL = "api.twitter.com/1/blocks/create/"; - const std::string TWITCURL_BLOCKSDESTROY_URL = "api.twitter.com/1/blocks/destroy/"; - - /* Saved Search URLs */ - const std::string TWITCURL_SAVEDSEARCHGET_URL = "api.twitter.com/1/saved_searches"; - const std::string TWITCURL_SAVEDSEARCHSHOW_URL = "api.twitter.com/1/saved_searches/show/"; - const std::string TWITCURL_SAVEDSEARCHCREATE_URL = "api.twitter.com/1/saved_searches/create"; - const std::string TWITCURL_SAVEDSEARCHDESTROY_URL = "api.twitter.com/1/saved_searches/destroy/"; - - /* Trends URLs */ - const std::string TWITCURL_TRENDS_URL = "api.twitter.com/1/trends"; - const std::string TWITCURL_TRENDSDAILY_URL = "api.twitter.com/1/trends/daily"; - const std::string TWITCURL_TRENDSCURRENT_URL = "api.twitter.com/1/trends/current"; - const std::string TWITCURL_TRENDSWEEKLY_URL = "api.twitter.com/1/trends/weekly"; - const std::string TWITCURL_TRENDSAVAILABLE_URL = "api.twitter.com/1/trends/available"; - -}; - -/* twitCurl class */ -class twitCurl -{ -public: - twitCurl(); - ~twitCurl(); - - /* Twitter OAuth authorization methods */ - oAuth& getOAuth(); - bool oAuthRequestToken( std::string& authorizeUrl /* out */ ); - bool oAuthAccessToken(); - bool oAuthHandlePIN( const std::string& authorizeUrl /* in */ ); - - /* Twitter login APIs, set once and forget */ - std::string& getTwitterUsername(); - std::string& getTwitterPassword(); - void setTwitterUsername( std::string& userName /* in */ ); - void setTwitterPassword( std::string& passWord /* in */ ); - - /* Twitter API type */ - void setTwitterApiType( twitCurlTypes::eTwitCurlApiFormatType eType ); - void setTwitterProcotolType( twitCurlTypes::eTwitCurlProtocolType eType ); - - /* Twitter search APIs */ - bool search( std::string& searchQuery /* in */ ); - - /* Twitter status APIs */ - bool statusUpdate( std::string& newStatus /* in */ ); - bool statusShowById( std::string& statusId /* in */ ); - bool statusDestroyById( std::string& statusId /* in */ ); - - /* Twitter timeline APIs */ - bool timelinePublicGet(); - bool timelineFriendsGet(); - bool timelineUserGet( bool trimUser /* in */, bool includeRetweets /* in */, unsigned int tweetCount /* in */, std::string userInfo = "" /* in */, bool isUserId = false /* in */ ); - bool featuredUsersGet(); - bool mentionsGet( std::string sinceId = "" /* in */ ); - - /* Twitter user APIs */ - bool userGet( std::string& userInfo /* in */, bool isUserId = false /* in */ ); - bool friendsGet( std::string userInfo = "" /* in */, bool isUserId = false /* in */ ); - bool followersGet( std::string userInfo = "" /* in */, bool isUserId = false /* in */ ); - - /* Twitter direct message APIs */ - bool directMessageGet(); - bool directMessageSend( std::string& userInfo /* in */, std::string& dMsg /* in */, bool isUserId = false /* in */ ); - bool directMessageGetSent(); - bool directMessageDestroyById( std::string& dMsgId /* in */ ); - - /* Twitter friendships APIs */ - bool friendshipCreate( std::string& userInfo /* in */, bool isUserId = false /* in */ ); - bool friendshipDestroy( std::string& userInfo /* in */, bool isUserId = false /* in */ ); - bool friendshipShow( std::string& userInfo /* in */, bool isUserId = false /* in */ ); - - /* Twitter social graphs APIs */ - bool friendsIdsGet( std::string& userInfo /* in */, bool isUserId = false /* in */ ); - bool followersIdsGet( std::string& userInfo /* in */, bool isUserId = false /* in */ ); - - /* Twitter account APIs */ - bool accountRateLimitGet(); - bool accountVerifyCredGet(); - /* Twitter favorites APIs */ - bool favoriteGet(); - bool favoriteCreate( std::string& statusId /* in */ ); - bool favoriteDestroy( std::string& statusId /* in */ ); - - /* Twitter block APIs */ - bool blockCreate( std::string& userInfo /* in */ ); - bool blockDestroy( std::string& userInfo /* in */ ); - - /* Twitter search APIs */ - bool savedSearchGet(); - bool savedSearchCreate( std::string& query /* in */ ); - bool savedSearchShow( std::string& searchId /* in */ ); - bool savedSearchDestroy( std::string& searchId /* in */ ); - - /* Twitter trends APIs (JSON) */ - bool trendsGet(); - bool trendsDailyGet(); - bool trendsWeeklyGet(); - bool trendsCurrentGet(); - bool trendsAvailableGet(); - - /* cURL APIs */ - bool isCurlInit(); - void getLastWebResponse( std::string& outWebResp /* out */ ); - void getLastCurlError( std::string& outErrResp /* out */); - - /* Internal cURL related methods */ - int saveLastWebResponse( char*& data, size_t size ); - - /* cURL proxy APIs */ - std::string& getProxyServerIp(); - std::string& getProxyServerPort(); - std::string& getProxyUserName(); - std::string& getProxyPassword(); - void setProxyServerIp( std::string& proxyServerIp /* in */ ); - void setProxyServerPort( std::string& proxyServerPort /* in */ ); - void setProxyUserName( std::string& proxyUserName /* in */ ); - void setProxyPassword( std::string& proxyPassword /* in */ ); - -private: - /* cURL data */ - CURL* m_curlHandle; - char m_errorBuffer[twitCurlDefaults::TWITCURL_DEFAULT_BUFFSIZE]; - std::string m_callbackData; - - /* cURL flags */ - bool m_curlProxyParamsSet; - bool m_curlLoginParamsSet; - bool m_curlCallbackParamsSet; - - /* cURL proxy data */ - std::string m_proxyServerIp; - std::string m_proxyServerPort; - std::string m_proxyUserName; - std::string m_proxyPassword; - - /* Twitter data */ - std::string m_twitterUsername; - std::string m_twitterPassword; - - /* Twitter API type */ - twitCurlTypes::eTwitCurlApiFormatType m_eApiFormatType; - twitCurlTypes::eTwitCurlProtocolType m_eProtocolType; - - /* OAuth data */ - oAuth m_oAuth; - - /* Private methods */ - void clearCurlCallbackBuffers(); - void prepareCurlProxy(); - void prepareCurlCallback(); - void prepareCurlUserPass(); - void prepareStandardParams(); - bool performGet( const std::string& getUrl ); - bool performGet( const std::string& getUrl, const std::string& oAuthHttpHeader ); - bool performDelete( const std::string& deleteUrl ); - bool performPost( const std::string& postUrl, std::string dataStr = "" ); - - /* Internal cURL related methods */ - static int curlCallback( char* data, size_t size, size_t nmemb, twitCurl* pTwitCurlObj ); -}; - - -/* Private functions */ -void utilMakeCurlParams( std::string& outStr, std::string& inParam1, std::string& inParam2 ); -void utilMakeUrlForUser( std::string& outUrl, const std::string& baseUrl, std::string& userInfo, bool isUserId ); - -#endif // _TWITCURL_H_ diff --git a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.opt.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.opt.svn-base deleted file mode 100644 index 5f2f29a1..00000000 Binary files a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.opt.svn-base and /dev/null differ diff --git a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.plg.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.plg.svn-base deleted file mode 100644 index 117e130f..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.plg.svn-base +++ /dev/null @@ -1,37 +0,0 @@ - - -
-

Build Log

-

---------------------Configuration: twitcurl - Win32 Release-------------------- -

-

Command Lines

-Creating temporary file "C:\DOCUME~1\Mahesh\LOCALS~1\Temp\RSP239.tmp" with contents -[ -/nologo /ML /W3 /GX /O2 /I "./curl" /D "WIN32" /D "NDEBUG" /D "_MBCS" /D "_LIB" /Fp"Release/twitcurl.pch" /YX /Fo"Release/" /Fd"Release/" /FD /c -"C:\Projects\twitcurl\base64.cpp" -"C:\Projects\twitcurl\HMAC_SHA1.cpp" -"C:\Projects\twitcurl\oauthlib.cpp" -"C:\Projects\twitcurl\SHA1.cpp" -"C:\Projects\twitcurl\twitcurl.cpp" -"C:\Projects\twitcurl\urlencode.cpp" -] -Creating command line "cl.exe @C:\DOCUME~1\Mahesh\LOCALS~1\Temp\RSP239.tmp" -Creating command line "link.exe -lib /nologo /out:"Release\twitcurl.lib" .\Release\base64.obj .\Release\HMAC_SHA1.obj .\Release\oauthlib.obj .\Release\SHA1.obj .\Release\twitcurl.obj .\Release\urlencode.obj " -

Output Window

-Compiling... -base64.cpp -HMAC_SHA1.cpp -oauthlib.cpp -SHA1.cpp -twitcurl.cpp -urlencode.cpp -Creating library... - - - -

Results

-twitcurl.lib - 0 error(s), 0 warning(s) -
- - diff --git a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.sln.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.sln.svn-base deleted file mode 100644 index b416f7d2..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.sln.svn-base +++ /dev/null @@ -1,20 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 10.00 -# Visual C++ Express 2008 -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "twitcurl", "twitcurl.vcproj", "{00175D8C-EA44-48AE-AC59-B3B7BE04E65C}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|Win32 = Debug|Win32 - Release|Win32 = Release|Win32 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {00175D8C-EA44-48AE-AC59-B3B7BE04E65C}.Debug|Win32.ActiveCfg = Release|Win32 - {00175D8C-EA44-48AE-AC59-B3B7BE04E65C}.Debug|Win32.Build.0 = Release|Win32 - {00175D8C-EA44-48AE-AC59-B3B7BE04E65C}.Release|Win32.ActiveCfg = Release|Win32 - {00175D8C-EA44-48AE-AC59-B3B7BE04E65C}.Release|Win32.Build.0 = Release|Win32 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.vcproj.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.vcproj.svn-base deleted file mode 100644 index ecd787fd..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/twitcurl.vcproj.svn-base +++ /dev/null @@ -1,343 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/backends/twitter/libtwitcurl/.svn/text-base/urlencode.cpp.svn-base b/backends/twitter/libtwitcurl/.svn/text-base/urlencode.cpp.svn-base deleted file mode 100644 index 8a906b25..00000000 --- a/backends/twitter/libtwitcurl/.svn/text-base/urlencode.cpp.svn-base +++ /dev/null @@ -1,40 +0,0 @@ -#include "urlencode.h" - -std::string char2hex( char dec ) -{ - char dig1 = (dec&0xF0)>>4; - char dig2 = (dec&0x0F); - if ( 0<= dig1 && dig1<= 9) dig1+=48; //0,48 in ascii - if (10<= dig1 && dig1<=15) dig1+=65-10; //A,65 in ascii - if ( 0<= dig2 && dig2<= 9) dig2+=48; - if (10<= dig2 && dig2<=15) dig2+=65-10; - - std::string r; - r.append( &dig1, 1); - r.append( &dig2, 1); - return r; -} - -std::string urlencode( const std::string &c ) -{ - - std::string escaped; - int max = c.length(); - for(int i=0; i -#include - -std::string char2hex( char dec ); -std::string urlencode( const std::string &c ); - -#endif // __URLENCODE_H__ \ No newline at end of file diff --git a/backends/twitter/libtwitcurl/curl/.svn/all-wcprops b/backends/twitter/libtwitcurl/curl/.svn/all-wcprops deleted file mode 100644 index 940b2dcb..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/all-wcprops +++ /dev/null @@ -1,89 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 39 -/svn/!svn/ver/69/trunk/libtwitcurl/curl -END -stdcheaders.h -K 25 -svn:wc:ra_dav:version-url -V 53 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/stdcheaders.h -END -typecheck-gcc.h -K 25 -svn:wc:ra_dav:version-url -V 55 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/typecheck-gcc.h -END -multi.h -K 25 -svn:wc:ra_dav:version-url -V 47 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/multi.h -END -curlbuild.h.in -K 25 -svn:wc:ra_dav:version-url -V 54 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/curlbuild.h.in -END -Makefile.in -K 25 -svn:wc:ra_dav:version-url -V 51 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/Makefile.in -END -mprintf.h -K 25 -svn:wc:ra_dav:version-url -V 49 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/mprintf.h -END -curlrules.h -K 25 -svn:wc:ra_dav:version-url -V 51 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/curlrules.h -END -easy.h -K 25 -svn:wc:ra_dav:version-url -V 46 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/easy.h -END -curlver.h -K 25 -svn:wc:ra_dav:version-url -V 49 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/curlver.h -END -COPYING -K 25 -svn:wc:ra_dav:version-url -V 47 -/svn/!svn/ver/69/trunk/libtwitcurl/curl/COPYING -END -Makefile.am -K 25 -svn:wc:ra_dav:version-url -V 51 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/Makefile.am -END -curlbuild.h.cmake -K 25 -svn:wc:ra_dav:version-url -V 57 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/curlbuild.h.cmake -END -curl.h -K 25 -svn:wc:ra_dav:version-url -V 46 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/curl.h -END -curlbuild.h -K 25 -svn:wc:ra_dav:version-url -V 51 -/svn/!svn/ver/47/trunk/libtwitcurl/curl/curlbuild.h -END diff --git a/backends/twitter/libtwitcurl/curl/.svn/dir-prop-base b/backends/twitter/libtwitcurl/curl/.svn/dir-prop-base deleted file mode 100644 index f1b96ea7..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/dir-prop-base +++ /dev/null @@ -1,5 +0,0 @@ -K 14 -bugtraq:number -V 4 -true -END diff --git a/backends/twitter/libtwitcurl/curl/.svn/entries b/backends/twitter/libtwitcurl/curl/.svn/entries deleted file mode 100644 index cd763446..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/entries +++ /dev/null @@ -1,504 +0,0 @@ -10 - -dir -89 -http://twitcurl.googlecode.com/svn/trunk/libtwitcurl/curl -http://twitcurl.googlecode.com/svn - - - -2011-10-21T12:56:45.537942Z -69 -swatkat.thinkdigit@gmail.com -has-props - - - - - - - - - - - - - -4714a580-958b-11de-ad41-3fcdc5e0e42d - -stdcheaders.h -file - - - - -2012-08-04T17:27:11.764011Z -18c029ed6fdad0ce85ac094ca2841515 -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -1330 - -typecheck-gcc.h -file - - - - -2012-08-04T17:27:11.764011Z -4fcad0343efc2422c8680b961908bce2 -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -36048 - -multi.h -file - - - - -2012-08-04T17:27:11.764011Z -63dd390e82a97e3115abc2795d9e77ab -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -12981 - -curlbuild.h.in -file - - - - -2012-08-04T17:27:11.764011Z -b92790509c83424cee5a386817cf6740 -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -6909 - -Makefile.in -file - - - - -2012-08-04T17:27:11.766968Z -43e4606a3ac0c69c38cce656ae34a197 -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -17736 - -mprintf.h -file - - - - -2012-08-04T17:27:11.766968Z -aa358cbaa44e19f43cc05ea772d037af -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -2790 - -curlrules.h -file - - - - -2012-08-04T17:27:11.766968Z -9e7f8b768255827f9bac344297a1d51f -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -8901 - -easy.h -file - - - - -2012-08-04T17:27:11.766968Z -0bacb9036436a91bf66c007a56a2f9b9 -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -3472 - -curlver.h -file - - - - -2012-08-04T17:27:11.766968Z -bc4938b1f18a46bb7acfebd817612564 -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -2741 - -COPYING -file - - - - -2012-08-04T17:27:11.766968Z -cd35f63043503be099c905fbd7909616 -2011-10-21T12:56:45.537942Z -69 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -1044 - -Makefile.am -file - - - - -2012-08-04T17:27:11.766968Z -c59eb2a9343fbe8a2ec7a112338a70e0 -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -2181 - -curlbuild.h.cmake -file - - - - -2012-08-04T17:27:11.766968Z -727affc900a378ad3770941e16e262e4 -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -6913 - -curl.h -file - - - - -2012-08-04T17:27:11.766968Z -4d7a46c03f405ac7c5b08f0e8d2f4d0e -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -81186 - -curlbuild.h -file - - - - -2012-08-04T17:27:11.770968Z -b30a8dd73f03df1349ee3098463fe166 -2011-09-12T16:36:56.779736Z -44 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - - - - - - - - -22192 - diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/COPYING.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/COPYING.svn-base deleted file mode 100644 index 1bd3e929..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/COPYING.svn-base +++ /dev/null @@ -1,21 +0,0 @@ -COPYRIGHT AND PERMISSION NOTICE - -Copyright (c) 1996 - 2011, Daniel Stenberg, . - -All rights reserved. - -Permission to use, copy, modify, and distribute this software for any purpose -with or without fee is hereby granted, provided that the above copyright -notice and this permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN -NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, -DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE -OR OTHER DEALINGS IN THE SOFTWARE. - -Except as contained in this notice, the name of a copyright holder shall not -be used in advertising or otherwise to promote the sale, use or other dealings -in this Software without prior written authorization of the copyright holder. diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/Makefile.am.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/Makefile.am.svn-base deleted file mode 100644 index 86e8b783..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/Makefile.am.svn-base +++ /dev/null @@ -1,53 +0,0 @@ -#*************************************************************************** -# _ _ ____ _ -# Project ___| | | | _ \| | -# / __| | | | |_) | | -# | (__| |_| | _ <| |___ -# \___|\___/|_| \_\_____| -# -# Copyright (C) 1998 - 2011, Daniel Stenberg, , et al. -# -# This software is licensed as described in the file COPYING, which -# you should have received as part of this distribution. The terms -# are also available at http://curl.haxx.se/docs/copyright.html. -# -# You may opt to use, copy, modify, merge, publish, distribute and/or sell -# copies of the Software, and permit persons to whom the Software is -# furnished to do so, under the terms of the COPYING file. -# -# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY -# KIND, either express or implied. -# -########################################################################### -pkginclude_HEADERS = \ - curl.h curlver.h easy.h mprintf.h stdcheaders.h multi.h \ - typecheck-gcc.h curlbuild.h curlrules.h - -pkgincludedir= $(includedir)/curl - -# curlbuild.h does not exist in the git tree. When the original libcurl -# source code distribution archive file is created, curlbuild.h.dist is -# renamed to curlbuild.h and included in the tarball so that it can be -# used directly on non-configure systems. -# -# The distributed curlbuild.h will be overwritten on configure systems -# when the configure script runs, with one that is suitable and specific -# to the library being configured and built. -# -# curlbuild.h.in is the distributed template file from which the configure -# script creates curlbuild.h at library configuration time, overwiting the -# one included in the distribution archive. -# -# curlbuild.h.dist is not included in the source code distribution archive. - -EXTRA_DIST = curlbuild.h.in - -DISTCLEANFILES = curlbuild.h - -checksrc: - @@PERL@ $(top_srcdir)/lib/checksrc.pl -Wcurlbuild.h -D$(top_srcdir)/include/curl $(pkginclude_HEADERS) $(EXTRA_DIST) - -if CURLDEBUG -# for debug builds, we scan the sources on all regular make invokes -all-local: checksrc -endif diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/Makefile.in.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/Makefile.in.svn-base deleted file mode 100644 index 62cf5fe8..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/Makefile.in.svn-base +++ /dev/null @@ -1,560 +0,0 @@ -# Makefile.in generated by automake 1.9.6 from Makefile.am. -# @configure_input@ - -# Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -# 2003, 2004, 2005 Free Software Foundation, Inc. -# This Makefile.in is free software; the Free Software Foundation -# gives unlimited permission to copy and/or distribute it, -# with or without modifications, as long as this notice is preserved. - -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY, to the extent permitted by law; without -# even the implied warranty of MERCHANTABILITY or FITNESS FOR A -# PARTICULAR PURPOSE. - -@SET_MAKE@ - -srcdir = @srcdir@ -top_srcdir = @top_srcdir@ -VPATH = @srcdir@ -pkgdatadir = $(datadir)/@PACKAGE@ -pkglibdir = $(libdir)/@PACKAGE@ -top_builddir = ../.. -am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd -INSTALL = @INSTALL@ -install_sh_DATA = $(install_sh) -c -m 644 -install_sh_PROGRAM = $(install_sh) -c -install_sh_SCRIPT = $(install_sh) -c -INSTALL_HEADER = $(INSTALL_DATA) -transform = $(program_transform_name) -NORMAL_INSTALL = : -PRE_INSTALL = : -POST_INSTALL = : -NORMAL_UNINSTALL = : -PRE_UNINSTALL = : -POST_UNINSTALL = : -build_triplet = @build@ -host_triplet = @host@ -subdir = include/curl -DIST_COMMON = $(pkginclude_HEADERS) $(srcdir)/Makefile.am \ - $(srcdir)/Makefile.in $(srcdir)/curlbuild.h.in -ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -am__aclocal_m4_deps = $(top_srcdir)/m4/curl-compilers.m4 \ - $(top_srcdir)/m4/curl-confopts.m4 \ - $(top_srcdir)/m4/curl-functions.m4 \ - $(top_srcdir)/m4/curl-openssl.m4 \ - $(top_srcdir)/m4/curl-override.m4 \ - $(top_srcdir)/m4/curl-reentrant.m4 \ - $(top_srcdir)/m4/curl-system.m4 $(top_srcdir)/m4/libtool.m4 \ - $(top_srcdir)/m4/ltoptions.m4 $(top_srcdir)/m4/ltsugar.m4 \ - $(top_srcdir)/m4/ltversion.m4 $(top_srcdir)/m4/lt~obsolete.m4 \ - $(top_srcdir)/m4/xc-translit.m4 $(top_srcdir)/acinclude.m4 \ - $(top_srcdir)/configure.ac -am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \ - $(ACLOCAL_M4) -mkinstalldirs = $(SHELL) $(top_srcdir)/mkinstalldirs -CONFIG_HEADER = $(top_builddir)/lib/curl_config.h \ - $(top_builddir)/src/curl_config.h curlbuild.h -CONFIG_CLEAN_FILES = -SOURCES = -DIST_SOURCES = -am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; -am__vpath_adj = case $$p in \ - $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \ - *) f=$$p;; \ - esac; -am__strip_dir = `echo $$p | sed -e 's|^.*/||'`; -am__installdirs = "$(DESTDIR)$(pkgincludedir)" -pkgincludeHEADERS_INSTALL = $(INSTALL_HEADER) -HEADERS = $(pkginclude_HEADERS) -ETAGS = etags -CTAGS = ctags -DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) -pkgincludedir = $(includedir)/curl -ACLOCAL = @ACLOCAL@ -AMDEP_FALSE = @AMDEP_FALSE@ -AMDEP_TRUE = @AMDEP_TRUE@ -AMTAR = @AMTAR@ -AR = @AR@ -AS = @AS@ -AUTOCONF = @AUTOCONF@ -AUTOHEADER = @AUTOHEADER@ -AUTOMAKE = @AUTOMAKE@ -AWK = @AWK@ -BUILD_LIBHOSTNAME_FALSE = @BUILD_LIBHOSTNAME_FALSE@ -BUILD_LIBHOSTNAME_TRUE = @BUILD_LIBHOSTNAME_TRUE@ -BUILD_UNITTESTS_FALSE = @BUILD_UNITTESTS_FALSE@ -BUILD_UNITTESTS_TRUE = @BUILD_UNITTESTS_TRUE@ -CC = @CC@ -CCDEPMODE = @CCDEPMODE@ -CFLAGS = @CFLAGS@ -CONFIGURE_OPTIONS = @CONFIGURE_OPTIONS@ -CPP = @CPP@ -CPPFLAGS = @CPPFLAGS@ -CROSSCOMPILING_FALSE = @CROSSCOMPILING_FALSE@ -CROSSCOMPILING_TRUE = @CROSSCOMPILING_TRUE@ -CURLDEBUG_FALSE = @CURLDEBUG_FALSE@ -CURLDEBUG_TRUE = @CURLDEBUG_TRUE@ -CURLVERSION = @CURLVERSION@ -CURL_CA_BUNDLE = @CURL_CA_BUNDLE@ -CURL_CFLAG_EXTRAS = @CURL_CFLAG_EXTRAS@ -CURL_DISABLE_DICT = @CURL_DISABLE_DICT@ -CURL_DISABLE_FILE = @CURL_DISABLE_FILE@ -CURL_DISABLE_FTP = @CURL_DISABLE_FTP@ -CURL_DISABLE_GOPHER = @CURL_DISABLE_GOPHER@ -CURL_DISABLE_HTTP = @CURL_DISABLE_HTTP@ -CURL_DISABLE_IMAP = @CURL_DISABLE_IMAP@ -CURL_DISABLE_LDAP = @CURL_DISABLE_LDAP@ -CURL_DISABLE_LDAPS = @CURL_DISABLE_LDAPS@ -CURL_DISABLE_POP3 = @CURL_DISABLE_POP3@ -CURL_DISABLE_PROXY = @CURL_DISABLE_PROXY@ -CURL_DISABLE_RTSP = @CURL_DISABLE_RTSP@ -CURL_DISABLE_SMTP = @CURL_DISABLE_SMTP@ -CURL_DISABLE_TELNET = @CURL_DISABLE_TELNET@ -CURL_DISABLE_TFTP = @CURL_DISABLE_TFTP@ -CURL_LIBS = @CURL_LIBS@ -CURL_NETWORK_LIBS = @CURL_NETWORK_LIBS@ -CYGPATH_W = @CYGPATH_W@ -DEFS = @DEFS@ -DEPDIR = @DEPDIR@ -DLLTOOL = @DLLTOOL@ -DSYMUTIL = @DSYMUTIL@ -DUMPBIN = @DUMPBIN@ -ECHO_C = @ECHO_C@ -ECHO_N = @ECHO_N@ -ECHO_T = @ECHO_T@ -EGREP = @EGREP@ -ENABLE_SHARED = @ENABLE_SHARED@ -EXEEXT = @EXEEXT@ -FGREP = @FGREP@ -GREP = @GREP@ -HAVE_GNUTLS_SRP = @HAVE_GNUTLS_SRP@ -HAVE_LDAP_SSL = @HAVE_LDAP_SSL@ -HAVE_LIBZ = @HAVE_LIBZ@ -HAVE_LIBZ_FALSE = @HAVE_LIBZ_FALSE@ -HAVE_LIBZ_TRUE = @HAVE_LIBZ_TRUE@ -HAVE_PK11_CREATEGENERICOBJECT = @HAVE_PK11_CREATEGENERICOBJECT@ -HAVE_SSLEAY_SRP = @HAVE_SSLEAY_SRP@ -IDN_ENABLED = @IDN_ENABLED@ -INSTALL_DATA = @INSTALL_DATA@ -INSTALL_PROGRAM = @INSTALL_PROGRAM@ -INSTALL_SCRIPT = @INSTALL_SCRIPT@ -INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@ -IPV6_ENABLED = @IPV6_ENABLED@ -KRB4_ENABLED = @KRB4_ENABLED@ -LD = @LD@ -LDFLAGS = @LDFLAGS@ -LIBCURL_LIBS = @LIBCURL_LIBS@ -LIBOBJS = @LIBOBJS@ -LIBS = @LIBS@ -LIBTOOL = @LIBTOOL@ -LIPO = @LIPO@ -LN_S = @LN_S@ -LTLIBOBJS = @LTLIBOBJS@ -MAINT = @MAINT@ -MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@ -MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@ -MAKEINFO = @MAKEINFO@ -MANIFEST_TOOL = @MANIFEST_TOOL@ -MANOPT = @MANOPT@ -MIMPURE_FALSE = @MIMPURE_FALSE@ -MIMPURE_TRUE = @MIMPURE_TRUE@ -NM = @NM@ -NMEDIT = @NMEDIT@ -NO_UNDEFINED_FALSE = @NO_UNDEFINED_FALSE@ -NO_UNDEFINED_TRUE = @NO_UNDEFINED_TRUE@ -NROFF = @NROFF@ -OBJDUMP = @OBJDUMP@ -OBJEXT = @OBJEXT@ -OTOOL = @OTOOL@ -OTOOL64 = @OTOOL64@ -PACKAGE = @PACKAGE@ -PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ -PACKAGE_NAME = @PACKAGE_NAME@ -PACKAGE_STRING = @PACKAGE_STRING@ -PACKAGE_TARNAME = @PACKAGE_TARNAME@ -PACKAGE_URL = @PACKAGE_URL@ -PACKAGE_VERSION = @PACKAGE_VERSION@ -PATH = @PATH@ -PATH_SEPARATOR = @PATH_SEPARATOR@ -PERL = @PERL@ -PKGADD_NAME = @PKGADD_NAME@ -PKGADD_PKG = @PKGADD_PKG@ -PKGADD_VENDOR = @PKGADD_VENDOR@ -PKGCONFIG = @PKGCONFIG@ -RANDOM_FILE = @RANDOM_FILE@ -RANLIB = @RANLIB@ -REQUIRE_LIB_DEPS = @REQUIRE_LIB_DEPS@ -SED = @SED@ -SET_MAKE = @SET_MAKE@ -SHELL = @SHELL@ -SONAME_BUMP_FALSE = @SONAME_BUMP_FALSE@ -SONAME_BUMP_TRUE = @SONAME_BUMP_TRUE@ -SSL_ENABLED = @SSL_ENABLED@ -STATICLIB_FALSE = @STATICLIB_FALSE@ -STATICLIB_TRUE = @STATICLIB_TRUE@ -STRIP = @STRIP@ -SUPPORT_FEATURES = @SUPPORT_FEATURES@ -SUPPORT_PROTOCOLS = @SUPPORT_PROTOCOLS@ -TEST_SERVER_LIBS = @TEST_SERVER_LIBS@ -USE_ARES = @USE_ARES@ -USE_AXTLS = @USE_AXTLS@ -USE_CYASSL = @USE_CYASSL@ -USE_EMBEDDED_ARES_FALSE = @USE_EMBEDDED_ARES_FALSE@ -USE_EMBEDDED_ARES_TRUE = @USE_EMBEDDED_ARES_TRUE@ -USE_GNUTLS = @USE_GNUTLS@ -USE_LIBRTMP = @USE_LIBRTMP@ -USE_LIBSSH2 = @USE_LIBSSH2@ -USE_MANUAL_FALSE = @USE_MANUAL_FALSE@ -USE_MANUAL_TRUE = @USE_MANUAL_TRUE@ -USE_NSS = @USE_NSS@ -USE_OPENLDAP = @USE_OPENLDAP@ -USE_POLARSSL = @USE_POLARSSL@ -USE_SSLEAY = @USE_SSLEAY@ -USE_WINDOWS_SSPI = @USE_WINDOWS_SSPI@ -VERSION = @VERSION@ -VERSIONNUM = @VERSIONNUM@ -ac_ct_AR = @ac_ct_AR@ -ac_ct_CC = @ac_ct_CC@ -ac_ct_DUMPBIN = @ac_ct_DUMPBIN@ -am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ -am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ -am__include = @am__include@ -am__leading_dot = @am__leading_dot@ -am__quote = @am__quote@ -am__tar = @am__tar@ -am__untar = @am__untar@ -bindir = @bindir@ -build = @build@ -build_alias = @build_alias@ -build_cpu = @build_cpu@ -build_os = @build_os@ -build_vendor = @build_vendor@ -datadir = @datadir@ -datarootdir = @datarootdir@ -docdir = @docdir@ -dvidir = @dvidir@ -exec_prefix = @exec_prefix@ -host = @host@ -host_alias = @host_alias@ -host_cpu = @host_cpu@ -host_os = @host_os@ -host_vendor = @host_vendor@ -htmldir = @htmldir@ -includedir = @includedir@ -infodir = @infodir@ -install_sh = @install_sh@ -libdir = @libdir@ -libexecdir = @libexecdir@ -libext = @libext@ -localedir = @localedir@ -localstatedir = @localstatedir@ -mandir = @mandir@ -mkdir_p = @mkdir_p@ -oldincludedir = @oldincludedir@ -pdfdir = @pdfdir@ -prefix = @prefix@ -program_transform_name = @program_transform_name@ -psdir = @psdir@ -sbindir = @sbindir@ -sharedstatedir = @sharedstatedir@ -subdirs = @subdirs@ -sysconfdir = @sysconfdir@ -target_alias = @target_alias@ - -#*************************************************************************** -# _ _ ____ _ -# Project ___| | | | _ \| | -# / __| | | | |_) | | -# | (__| |_| | _ <| |___ -# \___|\___/|_| \_\_____| -# -# Copyright (C) 1998 - 2011, Daniel Stenberg, , et al. -# -# This software is licensed as described in the file COPYING, which -# you should have received as part of this distribution. The terms -# are also available at http://curl.haxx.se/docs/copyright.html. -# -# You may opt to use, copy, modify, merge, publish, distribute and/or sell -# copies of the Software, and permit persons to whom the Software is -# furnished to do so, under the terms of the COPYING file. -# -# This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY -# KIND, either express or implied. -# -########################################################################### -pkginclude_HEADERS = \ - curl.h curlver.h easy.h mprintf.h stdcheaders.h multi.h \ - typecheck-gcc.h curlbuild.h curlrules.h - - -# curlbuild.h does not exist in the git tree. When the original libcurl -# source code distribution archive file is created, curlbuild.h.dist is -# renamed to curlbuild.h and included in the tarball so that it can be -# used directly on non-configure systems. -# -# The distributed curlbuild.h will be overwritten on configure systems -# when the configure script runs, with one that is suitable and specific -# to the library being configured and built. -# -# curlbuild.h.in is the distributed template file from which the configure -# script creates curlbuild.h at library configuration time, overwiting the -# one included in the distribution archive. -# -# curlbuild.h.dist is not included in the source code distribution archive. -EXTRA_DIST = curlbuild.h.in -DISTCLEANFILES = curlbuild.h -all: curlbuild.h - $(MAKE) $(AM_MAKEFLAGS) all-am - -.SUFFIXES: -$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(am__configure_deps) - @for dep in $?; do \ - case '$(am__configure_deps)' in \ - *$$dep*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh \ - && exit 0; \ - exit 1;; \ - esac; \ - done; \ - echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign include/curl/Makefile'; \ - cd $(top_srcdir) && \ - $(AUTOMAKE) --foreign include/curl/Makefile -.PRECIOUS: Makefile -Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status - @case '$?' in \ - *config.status*) \ - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \ - *) \ - echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \ - cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \ - esac; - -$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh -$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps) - cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh - -curlbuild.h: stamp-h3 - @if test ! -f $@; then \ - rm -f stamp-h3; \ - $(MAKE) stamp-h3; \ - else :; fi - -stamp-h3: $(srcdir)/curlbuild.h.in $(top_builddir)/config.status - @rm -f stamp-h3 - cd $(top_builddir) && $(SHELL) ./config.status include/curl/curlbuild.h -$(srcdir)/curlbuild.h.in: @MAINTAINER_MODE_TRUE@ $(am__configure_deps) - cd $(top_srcdir) && $(AUTOHEADER) - rm -f stamp-h3 - touch $@ - -distclean-hdr: - -rm -f curlbuild.h stamp-h3 - -mostlyclean-libtool: - -rm -f *.lo - -clean-libtool: - -rm -rf .libs _libs - -distclean-libtool: - -rm -f libtool -uninstall-info-am: -install-pkgincludeHEADERS: $(pkginclude_HEADERS) - @$(NORMAL_INSTALL) - test -z "$(pkgincludedir)" || $(mkdir_p) "$(DESTDIR)$(pkgincludedir)" - @list='$(pkginclude_HEADERS)'; for p in $$list; do \ - if test -f "$$p"; then d=; else d="$(srcdir)/"; fi; \ - f=$(am__strip_dir) \ - echo " $(pkgincludeHEADERS_INSTALL) '$$d$$p' '$(DESTDIR)$(pkgincludedir)/$$f'"; \ - $(pkgincludeHEADERS_INSTALL) "$$d$$p" "$(DESTDIR)$(pkgincludedir)/$$f"; \ - done - -uninstall-pkgincludeHEADERS: - @$(NORMAL_UNINSTALL) - @list='$(pkginclude_HEADERS)'; for p in $$list; do \ - f=$(am__strip_dir) \ - echo " rm -f '$(DESTDIR)$(pkgincludedir)/$$f'"; \ - rm -f "$(DESTDIR)$(pkgincludedir)/$$f"; \ - done - -ID: $(HEADERS) $(SOURCES) $(LISP) $(TAGS_FILES) - list='$(SOURCES) $(HEADERS) $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - mkid -fID $$unique -tags: TAGS - -TAGS: $(HEADERS) $(SOURCES) curlbuild.h.in $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) curlbuild.h.in $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - if test -z "$(ETAGS_ARGS)$$tags$$unique"; then :; else \ - test -n "$$unique" || unique=$$empty_fix; \ - $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ - $$tags $$unique; \ - fi -ctags: CTAGS -CTAGS: $(HEADERS) $(SOURCES) curlbuild.h.in $(TAGS_DEPENDENCIES) \ - $(TAGS_FILES) $(LISP) - tags=; \ - here=`pwd`; \ - list='$(SOURCES) $(HEADERS) curlbuild.h.in $(LISP) $(TAGS_FILES)'; \ - unique=`for i in $$list; do \ - if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ - done | \ - $(AWK) ' { files[$$0] = 1; } \ - END { for (i in files) print i; }'`; \ - test -z "$(CTAGS_ARGS)$$tags$$unique" \ - || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ - $$tags $$unique - -GTAGS: - here=`$(am__cd) $(top_builddir) && pwd` \ - && cd $(top_srcdir) \ - && gtags -i $(GTAGS_ARGS) $$here - -distclean-tags: - -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags - -distdir: $(DISTFILES) - @srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \ - topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \ - list='$(DISTFILES)'; for file in $$list; do \ - case $$file in \ - $(srcdir)/*) file=`echo "$$file" | sed "s|^$$srcdirstrip/||"`;; \ - $(top_srcdir)/*) file=`echo "$$file" | sed "s|^$$topsrcdirstrip/|$(top_builddir)/|"`;; \ - esac; \ - if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \ - dir=`echo "$$file" | sed -e 's,/[^/]*$$,,'`; \ - if test "$$dir" != "$$file" && test "$$dir" != "."; then \ - dir="/$$dir"; \ - $(mkdir_p) "$(distdir)$$dir"; \ - else \ - dir=''; \ - fi; \ - if test -d $$d/$$file; then \ - if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \ - cp -pR $(srcdir)/$$file $(distdir)$$dir || exit 1; \ - fi; \ - cp -pR $$d/$$file $(distdir)$$dir || exit 1; \ - else \ - test -f $(distdir)/$$file \ - || cp -p $$d/$$file $(distdir)/$$file \ - || exit 1; \ - fi; \ - done -check-am: all-am -check: check-am -@CURLDEBUG_FALSE@all-local: -all-am: Makefile $(HEADERS) curlbuild.h all-local -installdirs: - for dir in "$(DESTDIR)$(pkgincludedir)"; do \ - test -z "$$dir" || $(mkdir_p) "$$dir"; \ - done -install: install-am -install-exec: install-exec-am -install-data: install-data-am -uninstall: uninstall-am - -install-am: all-am - @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am - -installcheck: installcheck-am -install-strip: - $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \ - install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \ - `test -z '$(STRIP)' || \ - echo "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'"` install -mostlyclean-generic: - -clean-generic: - -distclean-generic: - -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES) - -test -z "$(DISTCLEANFILES)" || rm -f $(DISTCLEANFILES) - -maintainer-clean-generic: - @echo "This command is intended for maintainers to use" - @echo "it deletes files that may require special tools to rebuild." -clean: clean-am - -clean-am: clean-generic clean-libtool mostlyclean-am - -distclean: distclean-am - -rm -f Makefile -distclean-am: clean-am distclean-generic distclean-hdr \ - distclean-libtool distclean-tags - -dvi: dvi-am - -dvi-am: - -html: html-am - -info: info-am - -info-am: - -install-data-am: install-pkgincludeHEADERS - -install-exec-am: - -install-info: install-info-am - -install-man: - -installcheck-am: - -maintainer-clean: maintainer-clean-am - -rm -f Makefile -maintainer-clean-am: distclean-am maintainer-clean-generic - -mostlyclean: mostlyclean-am - -mostlyclean-am: mostlyclean-generic mostlyclean-libtool - -pdf: pdf-am - -pdf-am: - -ps: ps-am - -ps-am: - -uninstall-am: uninstall-info-am uninstall-pkgincludeHEADERS - -.PHONY: CTAGS GTAGS all all-am all-local check check-am clean \ - clean-generic clean-libtool ctags distclean distclean-generic \ - distclean-hdr distclean-libtool distclean-tags distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-exec install-exec-am \ - install-info install-info-am install-man \ - install-pkgincludeHEADERS install-strip installcheck \ - installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am tags uninstall \ - uninstall-am uninstall-info-am uninstall-pkgincludeHEADERS - - -checksrc: - @@PERL@ $(top_srcdir)/lib/checksrc.pl -Wcurlbuild.h -D$(top_srcdir)/include/curl $(pkginclude_HEADERS) $(EXTRA_DIST) - -# for debug builds, we scan the sources on all regular make invokes -@CURLDEBUG_TRUE@all-local: checksrc -# Tell versions [3.59,3.63) of GNU make to not export all variables. -# Otherwise a system limit (for SysV at least) may be exceeded. -.NOEXPORT: diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/curl.h.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/curl.h.svn-base deleted file mode 100644 index a9d42fad..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/curl.h.svn-base +++ /dev/null @@ -1,2174 +0,0 @@ -#ifndef __CURL_CURL_H -#define __CURL_CURL_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) 1998 - 2011, Daniel Stenberg, , et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ***************************************************************************/ - -/* - * If you have libcurl problems, all docs and details are found here: - * http://curl.haxx.se/libcurl/ - * - * curl-library mailing list subscription and unsubscription web interface: - * http://cool.haxx.se/mailman/listinfo/curl-library/ - */ - -#include "curlver.h" /* libcurl version defines */ -#include "curlbuild.h" /* libcurl build definitions */ -#include "curlrules.h" /* libcurl rules enforcement */ - -/* - * Define WIN32 when build target is Win32 API - */ - -#if (defined(_WIN32) || defined(__WIN32__)) && \ - !defined(WIN32) && !defined(__SYMBIAN32__) -#define WIN32 -#endif - -#include -#include - -#if defined(__FreeBSD__) && (__FreeBSD__ >= 2) -/* Needed for __FreeBSD_version symbol definition */ -#include -#endif - -/* The include stuff here below is mainly for time_t! */ -#include -#include - -#if defined(WIN32) && !defined(_WIN32_WCE) && !defined(__GNUC__) && \ - !defined(__CYGWIN__) || defined(__MINGW32__) -#if !(defined(_WINSOCKAPI_) || defined(_WINSOCK_H)) -/* The check above prevents the winsock2 inclusion if winsock.h already was - included, since they can't co-exist without problems */ -#include -#include -#endif -#else - -/* HP-UX systems version 9, 10 and 11 lack sys/select.h and so does oldish - libc5-based Linux systems. Only include it on system that are known to - require it! */ -#if defined(_AIX) || defined(__NOVELL_LIBC__) || defined(__NetBSD__) || \ - defined(__minix) || defined(__SYMBIAN32__) || defined(__INTEGRITY) || \ - defined(ANDROID) || \ - (defined(__FreeBSD_version) && (__FreeBSD_version < 800000)) -#include -#endif - -#ifndef _WIN32_WCE -#include -#endif -#if !defined(WIN32) && !defined(__WATCOMC__) && !defined(__VXWORKS__) -#include -#endif -#include -#endif - -#ifdef __BEOS__ -#include -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -typedef void CURL; - -/* - * Decorate exportable functions for Win32 and Symbian OS DLL linking. - * This avoids using a .def file for building libcurl.dll. - */ -#if (defined(WIN32) || defined(_WIN32) || defined(__SYMBIAN32__)) && \ - !defined(CURL_STATICLIB) -#if defined(BUILDING_LIBCURL) -#define CURL_EXTERN __declspec(dllexport) -#else -#define CURL_EXTERN __declspec(dllimport) -#endif -#else - -#ifdef CURL_HIDDEN_SYMBOLS -/* - * This definition is used to make external definitions visible in the - * shared library when symbols are hidden by default. It makes no - * difference when compiling applications whether this is set or not, - * only when compiling the library. - */ -#define CURL_EXTERN CURL_EXTERN_SYMBOL -#else -#define CURL_EXTERN -#endif -#endif - -#ifndef curl_socket_typedef -/* socket typedef */ -#ifdef WIN32 -typedef SOCKET curl_socket_t; -#define CURL_SOCKET_BAD INVALID_SOCKET -#else -typedef int curl_socket_t; -#define CURL_SOCKET_BAD -1 -#endif -#define curl_socket_typedef -#endif /* curl_socket_typedef */ - -struct curl_httppost { - struct curl_httppost *next; /* next entry in the list */ - char *name; /* pointer to allocated name */ - long namelength; /* length of name length */ - char *contents; /* pointer to allocated data contents */ - long contentslength; /* length of contents field */ - char *buffer; /* pointer to allocated buffer contents */ - long bufferlength; /* length of buffer field */ - char *contenttype; /* Content-Type */ - struct curl_slist* contentheader; /* list of extra headers for this form */ - struct curl_httppost *more; /* if one field name has more than one - file, this link should link to following - files */ - long flags; /* as defined below */ -#define HTTPPOST_FILENAME (1<<0) /* specified content is a file name */ -#define HTTPPOST_READFILE (1<<1) /* specified content is a file name */ -#define HTTPPOST_PTRNAME (1<<2) /* name is only stored pointer - do not free in formfree */ -#define HTTPPOST_PTRCONTENTS (1<<3) /* contents is only stored pointer - do not free in formfree */ -#define HTTPPOST_BUFFER (1<<4) /* upload file from buffer */ -#define HTTPPOST_PTRBUFFER (1<<5) /* upload file from pointer contents */ -#define HTTPPOST_CALLBACK (1<<6) /* upload file contents by using the - regular read callback to get the data - and pass the given pointer as custom - pointer */ - - char *showfilename; /* The file name to show. If not set, the - actual file name will be used (if this - is a file part) */ - void *userp; /* custom pointer used for - HTTPPOST_CALLBACK posts */ -}; - -typedef int (*curl_progress_callback)(void *clientp, - double dltotal, - double dlnow, - double ultotal, - double ulnow); - -#ifndef CURL_MAX_WRITE_SIZE - /* Tests have proven that 20K is a very bad buffer size for uploads on - Windows, while 16K for some odd reason performed a lot better. - We do the ifndef check to allow this value to easier be changed at build - time for those who feel adventurous. The practical minimum is about - 400 bytes since libcurl uses a buffer of this size as a scratch area - (unrelated to network send operations). */ -#define CURL_MAX_WRITE_SIZE 16384 -#endif - -#ifndef CURL_MAX_HTTP_HEADER -/* The only reason to have a max limit for this is to avoid the risk of a bad - server feeding libcurl with a never-ending header that will cause reallocs - infinitely */ -#define CURL_MAX_HTTP_HEADER (100*1024) -#endif - - -/* This is a magic return code for the write callback that, when returned, - will signal libcurl to pause receiving on the current transfer. */ -#define CURL_WRITEFUNC_PAUSE 0x10000001 -typedef size_t (*curl_write_callback)(char *buffer, - size_t size, - size_t nitems, - void *outstream); - - - -/* enumeration of file types */ -typedef enum { - CURLFILETYPE_FILE = 0, - CURLFILETYPE_DIRECTORY, - CURLFILETYPE_SYMLINK, - CURLFILETYPE_DEVICE_BLOCK, - CURLFILETYPE_DEVICE_CHAR, - CURLFILETYPE_NAMEDPIPE, - CURLFILETYPE_SOCKET, - CURLFILETYPE_DOOR, /* is possible only on Sun Solaris now */ - - CURLFILETYPE_UNKNOWN /* should never occur */ -} curlfiletype; - -#define CURLFINFOFLAG_KNOWN_FILENAME (1<<0) -#define CURLFINFOFLAG_KNOWN_FILETYPE (1<<1) -#define CURLFINFOFLAG_KNOWN_TIME (1<<2) -#define CURLFINFOFLAG_KNOWN_PERM (1<<3) -#define CURLFINFOFLAG_KNOWN_UID (1<<4) -#define CURLFINFOFLAG_KNOWN_GID (1<<5) -#define CURLFINFOFLAG_KNOWN_SIZE (1<<6) -#define CURLFINFOFLAG_KNOWN_HLINKCOUNT (1<<7) - -/* Content of this structure depends on information which is known and is - achievable (e.g. by FTP LIST parsing). Please see the url_easy_setopt(3) man - page for callbacks returning this structure -- some fields are mandatory, - some others are optional. The FLAG field has special meaning. */ -struct curl_fileinfo { - char *filename; - curlfiletype filetype; - time_t time; - unsigned int perm; - int uid; - int gid; - curl_off_t size; - long int hardlinks; - - struct { - /* If some of these fields is not NULL, it is a pointer to b_data. */ - char *time; - char *perm; - char *user; - char *group; - char *target; /* pointer to the target filename of a symlink */ - } strings; - - unsigned int flags; - - /* used internally */ - char * b_data; - size_t b_size; - size_t b_used; -}; - -/* return codes for CURLOPT_CHUNK_BGN_FUNCTION */ -#define CURL_CHUNK_BGN_FUNC_OK 0 -#define CURL_CHUNK_BGN_FUNC_FAIL 1 /* tell the lib to end the task */ -#define CURL_CHUNK_BGN_FUNC_SKIP 2 /* skip this chunk over */ - -/* if splitting of data transfer is enabled, this callback is called before - download of an individual chunk started. Note that parameter "remains" works - only for FTP wildcard downloading (for now), otherwise is not used */ -typedef long (*curl_chunk_bgn_callback)(const void *transfer_info, - void *ptr, - int remains); - -/* return codes for CURLOPT_CHUNK_END_FUNCTION */ -#define CURL_CHUNK_END_FUNC_OK 0 -#define CURL_CHUNK_END_FUNC_FAIL 1 /* tell the lib to end the task */ - -/* If splitting of data transfer is enabled this callback is called after - download of an individual chunk finished. - Note! After this callback was set then it have to be called FOR ALL chunks. - Even if downloading of this chunk was skipped in CHUNK_BGN_FUNC. - This is the reason why we don't need "transfer_info" parameter in this - callback and we are not interested in "remains" parameter too. */ -typedef long (*curl_chunk_end_callback)(void *ptr); - -/* return codes for FNMATCHFUNCTION */ -#define CURL_FNMATCHFUNC_MATCH 0 /* string corresponds to the pattern */ -#define CURL_FNMATCHFUNC_NOMATCH 1 /* pattern doesn't match the string */ -#define CURL_FNMATCHFUNC_FAIL 2 /* an error occurred */ - -/* callback type for wildcard downloading pattern matching. If the - string matches the pattern, return CURL_FNMATCHFUNC_MATCH value, etc. */ -typedef int (*curl_fnmatch_callback)(void *ptr, - const char *pattern, - const char *string); - -/* These are the return codes for the seek callbacks */ -#define CURL_SEEKFUNC_OK 0 -#define CURL_SEEKFUNC_FAIL 1 /* fail the entire transfer */ -#define CURL_SEEKFUNC_CANTSEEK 2 /* tell libcurl seeking can't be done, so - libcurl might try other means instead */ -typedef int (*curl_seek_callback)(void *instream, - curl_off_t offset, - int origin); /* 'whence' */ - -/* This is a return code for the read callback that, when returned, will - signal libcurl to immediately abort the current transfer. */ -#define CURL_READFUNC_ABORT 0x10000000 -/* This is a return code for the read callback that, when returned, will - signal libcurl to pause sending data on the current transfer. */ -#define CURL_READFUNC_PAUSE 0x10000001 - -typedef size_t (*curl_read_callback)(char *buffer, - size_t size, - size_t nitems, - void *instream); - -typedef enum { - CURLSOCKTYPE_IPCXN, /* socket created for a specific IP connection */ - CURLSOCKTYPE_LAST /* never use */ -} curlsocktype; - -/* The return code from the sockopt_callback can signal information back - to libcurl: */ -#define CURL_SOCKOPT_OK 0 -#define CURL_SOCKOPT_ERROR 1 /* causes libcurl to abort and return - CURLE_ABORTED_BY_CALLBACK */ -#define CURL_SOCKOPT_ALREADY_CONNECTED 2 - -typedef int (*curl_sockopt_callback)(void *clientp, - curl_socket_t curlfd, - curlsocktype purpose); - -struct curl_sockaddr { - int family; - int socktype; - int protocol; - unsigned int addrlen; /* addrlen was a socklen_t type before 7.18.0 but it - turned really ugly and painful on the systems that - lack this type */ - struct sockaddr addr; -}; - -typedef curl_socket_t -(*curl_opensocket_callback)(void *clientp, - curlsocktype purpose, - struct curl_sockaddr *address); - -typedef int -(*curl_closesocket_callback)(void *clientp, curl_socket_t item); - -typedef enum { - CURLIOE_OK, /* I/O operation successful */ - CURLIOE_UNKNOWNCMD, /* command was unknown to callback */ - CURLIOE_FAILRESTART, /* failed to restart the read */ - CURLIOE_LAST /* never use */ -} curlioerr; - -typedef enum { - CURLIOCMD_NOP, /* no operation */ - CURLIOCMD_RESTARTREAD, /* restart the read stream from start */ - CURLIOCMD_LAST /* never use */ -} curliocmd; - -typedef curlioerr (*curl_ioctl_callback)(CURL *handle, - int cmd, - void *clientp); - -/* - * The following typedef's are signatures of malloc, free, realloc, strdup and - * calloc respectively. Function pointers of these types can be passed to the - * curl_global_init_mem() function to set user defined memory management - * callback routines. - */ -typedef void *(*curl_malloc_callback)(size_t size); -typedef void (*curl_free_callback)(void *ptr); -typedef void *(*curl_realloc_callback)(void *ptr, size_t size); -typedef char *(*curl_strdup_callback)(const char *str); -typedef void *(*curl_calloc_callback)(size_t nmemb, size_t size); - -/* the kind of data that is passed to information_callback*/ -typedef enum { - CURLINFO_TEXT = 0, - CURLINFO_HEADER_IN, /* 1 */ - CURLINFO_HEADER_OUT, /* 2 */ - CURLINFO_DATA_IN, /* 3 */ - CURLINFO_DATA_OUT, /* 4 */ - CURLINFO_SSL_DATA_IN, /* 5 */ - CURLINFO_SSL_DATA_OUT, /* 6 */ - CURLINFO_END -} curl_infotype; - -typedef int (*curl_debug_callback) - (CURL *handle, /* the handle/transfer this concerns */ - curl_infotype type, /* what kind of data */ - char *data, /* points to the data */ - size_t size, /* size of the data pointed to */ - void *userptr); /* whatever the user please */ - -/* All possible error codes from all sorts of curl functions. Future versions - may return other values, stay prepared. - - Always add new return codes last. Never *EVER* remove any. The return - codes must remain the same! - */ - -typedef enum { - CURLE_OK = 0, - CURLE_UNSUPPORTED_PROTOCOL, /* 1 */ - CURLE_FAILED_INIT, /* 2 */ - CURLE_URL_MALFORMAT, /* 3 */ - CURLE_NOT_BUILT_IN, /* 4 - [was obsoleted in August 2007 for - 7.17.0, reused in April 2011 for 7.21.5] */ - CURLE_COULDNT_RESOLVE_PROXY, /* 5 */ - CURLE_COULDNT_RESOLVE_HOST, /* 6 */ - CURLE_COULDNT_CONNECT, /* 7 */ - CURLE_FTP_WEIRD_SERVER_REPLY, /* 8 */ - CURLE_REMOTE_ACCESS_DENIED, /* 9 a service was denied by the server - due to lack of access - when login fails - this is not returned. */ - CURLE_OBSOLETE10, /* 10 - NOT USED */ - CURLE_FTP_WEIRD_PASS_REPLY, /* 11 */ - CURLE_OBSOLETE12, /* 12 - NOT USED */ - CURLE_FTP_WEIRD_PASV_REPLY, /* 13 */ - CURLE_FTP_WEIRD_227_FORMAT, /* 14 */ - CURLE_FTP_CANT_GET_HOST, /* 15 */ - CURLE_OBSOLETE16, /* 16 - NOT USED */ - CURLE_FTP_COULDNT_SET_TYPE, /* 17 */ - CURLE_PARTIAL_FILE, /* 18 */ - CURLE_FTP_COULDNT_RETR_FILE, /* 19 */ - CURLE_OBSOLETE20, /* 20 - NOT USED */ - CURLE_QUOTE_ERROR, /* 21 - quote command failure */ - CURLE_HTTP_RETURNED_ERROR, /* 22 */ - CURLE_WRITE_ERROR, /* 23 */ - CURLE_OBSOLETE24, /* 24 - NOT USED */ - CURLE_UPLOAD_FAILED, /* 25 - failed upload "command" */ - CURLE_READ_ERROR, /* 26 - couldn't open/read from file */ - CURLE_OUT_OF_MEMORY, /* 27 */ - /* Note: CURLE_OUT_OF_MEMORY may sometimes indicate a conversion error - instead of a memory allocation error if CURL_DOES_CONVERSIONS - is defined - */ - CURLE_OPERATION_TIMEDOUT, /* 28 - the timeout time was reached */ - CURLE_OBSOLETE29, /* 29 - NOT USED */ - CURLE_FTP_PORT_FAILED, /* 30 - FTP PORT operation failed */ - CURLE_FTP_COULDNT_USE_REST, /* 31 - the REST command failed */ - CURLE_OBSOLETE32, /* 32 - NOT USED */ - CURLE_RANGE_ERROR, /* 33 - RANGE "command" didn't work */ - CURLE_HTTP_POST_ERROR, /* 34 */ - CURLE_SSL_CONNECT_ERROR, /* 35 - wrong when connecting with SSL */ - CURLE_BAD_DOWNLOAD_RESUME, /* 36 - couldn't resume download */ - CURLE_FILE_COULDNT_READ_FILE, /* 37 */ - CURLE_LDAP_CANNOT_BIND, /* 38 */ - CURLE_LDAP_SEARCH_FAILED, /* 39 */ - CURLE_OBSOLETE40, /* 40 - NOT USED */ - CURLE_FUNCTION_NOT_FOUND, /* 41 */ - CURLE_ABORTED_BY_CALLBACK, /* 42 */ - CURLE_BAD_FUNCTION_ARGUMENT, /* 43 */ - CURLE_OBSOLETE44, /* 44 - NOT USED */ - CURLE_INTERFACE_FAILED, /* 45 - CURLOPT_INTERFACE failed */ - CURLE_OBSOLETE46, /* 46 - NOT USED */ - CURLE_TOO_MANY_REDIRECTS , /* 47 - catch endless re-direct loops */ - CURLE_UNKNOWN_OPTION, /* 48 - User specified an unknown option */ - CURLE_TELNET_OPTION_SYNTAX , /* 49 - Malformed telnet option */ - CURLE_OBSOLETE50, /* 50 - NOT USED */ - CURLE_PEER_FAILED_VERIFICATION, /* 51 - peer's certificate or fingerprint - wasn't verified fine */ - CURLE_GOT_NOTHING, /* 52 - when this is a specific error */ - CURLE_SSL_ENGINE_NOTFOUND, /* 53 - SSL crypto engine not found */ - CURLE_SSL_ENGINE_SETFAILED, /* 54 - can not set SSL crypto engine as - default */ - CURLE_SEND_ERROR, /* 55 - failed sending network data */ - CURLE_RECV_ERROR, /* 56 - failure in receiving network data */ - CURLE_OBSOLETE57, /* 57 - NOT IN USE */ - CURLE_SSL_CERTPROBLEM, /* 58 - problem with the local certificate */ - CURLE_SSL_CIPHER, /* 59 - couldn't use specified cipher */ - CURLE_SSL_CACERT, /* 60 - problem with the CA cert (path?) */ - CURLE_BAD_CONTENT_ENCODING, /* 61 - Unrecognized/bad encoding */ - CURLE_LDAP_INVALID_URL, /* 62 - Invalid LDAP URL */ - CURLE_FILESIZE_EXCEEDED, /* 63 - Maximum file size exceeded */ - CURLE_USE_SSL_FAILED, /* 64 - Requested FTP SSL level failed */ - CURLE_SEND_FAIL_REWIND, /* 65 - Sending the data requires a rewind - that failed */ - CURLE_SSL_ENGINE_INITFAILED, /* 66 - failed to initialise ENGINE */ - CURLE_LOGIN_DENIED, /* 67 - user, password or similar was not - accepted and we failed to login */ - CURLE_TFTP_NOTFOUND, /* 68 - file not found on server */ - CURLE_TFTP_PERM, /* 69 - permission problem on server */ - CURLE_REMOTE_DISK_FULL, /* 70 - out of disk space on server */ - CURLE_TFTP_ILLEGAL, /* 71 - Illegal TFTP operation */ - CURLE_TFTP_UNKNOWNID, /* 72 - Unknown transfer ID */ - CURLE_REMOTE_FILE_EXISTS, /* 73 - File already exists */ - CURLE_TFTP_NOSUCHUSER, /* 74 - No such user */ - CURLE_CONV_FAILED, /* 75 - conversion failed */ - CURLE_CONV_REQD, /* 76 - caller must register conversion - callbacks using curl_easy_setopt options - CURLOPT_CONV_FROM_NETWORK_FUNCTION, - CURLOPT_CONV_TO_NETWORK_FUNCTION, and - CURLOPT_CONV_FROM_UTF8_FUNCTION */ - CURLE_SSL_CACERT_BADFILE, /* 77 - could not load CACERT file, missing - or wrong format */ - CURLE_REMOTE_FILE_NOT_FOUND, /* 78 - remote file not found */ - CURLE_SSH, /* 79 - error from the SSH layer, somewhat - generic so the error message will be of - interest when this has happened */ - - CURLE_SSL_SHUTDOWN_FAILED, /* 80 - Failed to shut down the SSL - connection */ - CURLE_AGAIN, /* 81 - socket is not ready for send/recv, - wait till it's ready and try again (Added - in 7.18.2) */ - CURLE_SSL_CRL_BADFILE, /* 82 - could not load CRL file, missing or - wrong format (Added in 7.19.0) */ - CURLE_SSL_ISSUER_ERROR, /* 83 - Issuer check failed. (Added in - 7.19.0) */ - CURLE_FTP_PRET_FAILED, /* 84 - a PRET command failed */ - CURLE_RTSP_CSEQ_ERROR, /* 85 - mismatch of RTSP CSeq numbers */ - CURLE_RTSP_SESSION_ERROR, /* 86 - mismatch of RTSP Session Ids */ - CURLE_FTP_BAD_FILE_LIST, /* 87 - unable to parse FTP file list */ - CURLE_CHUNK_FAILED, /* 88 - chunk callback reported error */ - - CURL_LAST /* never use! */ -} CURLcode; - -#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all - the obsolete stuff removed! */ - -/* compatibility with older names */ -#define CURLOPT_ENCODING CURLOPT_ACCEPT_ENCODING - -/* The following were added in 7.21.5, April 2011 */ -#define CURLE_UNKNOWN_TELNET_OPTION CURLE_UNKNOWN_OPTION - -/* The following were added in 7.17.1 */ -/* These are scheduled to disappear by 2009 */ -#define CURLE_SSL_PEER_CERTIFICATE CURLE_PEER_FAILED_VERIFICATION - -/* The following were added in 7.17.0 */ -/* These are scheduled to disappear by 2009 */ -#define CURLE_OBSOLETE CURLE_OBSOLETE50 /* no one should be using this! */ -#define CURLE_BAD_PASSWORD_ENTERED CURLE_OBSOLETE46 -#define CURLE_BAD_CALLING_ORDER CURLE_OBSOLETE44 -#define CURLE_FTP_USER_PASSWORD_INCORRECT CURLE_OBSOLETE10 -#define CURLE_FTP_CANT_RECONNECT CURLE_OBSOLETE16 -#define CURLE_FTP_COULDNT_GET_SIZE CURLE_OBSOLETE32 -#define CURLE_FTP_COULDNT_SET_ASCII CURLE_OBSOLETE29 -#define CURLE_FTP_WEIRD_USER_REPLY CURLE_OBSOLETE12 -#define CURLE_FTP_WRITE_ERROR CURLE_OBSOLETE20 -#define CURLE_LIBRARY_NOT_FOUND CURLE_OBSOLETE40 -#define CURLE_MALFORMAT_USER CURLE_OBSOLETE24 -#define CURLE_SHARE_IN_USE CURLE_OBSOLETE57 -#define CURLE_URL_MALFORMAT_USER CURLE_NOT_BUILT_IN - -#define CURLE_FTP_ACCESS_DENIED CURLE_REMOTE_ACCESS_DENIED -#define CURLE_FTP_COULDNT_SET_BINARY CURLE_FTP_COULDNT_SET_TYPE -#define CURLE_FTP_QUOTE_ERROR CURLE_QUOTE_ERROR -#define CURLE_TFTP_DISKFULL CURLE_REMOTE_DISK_FULL -#define CURLE_TFTP_EXISTS CURLE_REMOTE_FILE_EXISTS -#define CURLE_HTTP_RANGE_ERROR CURLE_RANGE_ERROR -#define CURLE_FTP_SSL_FAILED CURLE_USE_SSL_FAILED - -/* The following were added earlier */ - -#define CURLE_OPERATION_TIMEOUTED CURLE_OPERATION_TIMEDOUT - -#define CURLE_HTTP_NOT_FOUND CURLE_HTTP_RETURNED_ERROR -#define CURLE_HTTP_PORT_FAILED CURLE_INTERFACE_FAILED -#define CURLE_FTP_COULDNT_STOR_FILE CURLE_UPLOAD_FAILED - -#define CURLE_FTP_PARTIAL_FILE CURLE_PARTIAL_FILE -#define CURLE_FTP_BAD_DOWNLOAD_RESUME CURLE_BAD_DOWNLOAD_RESUME - -/* This was the error code 50 in 7.7.3 and a few earlier versions, this - is no longer used by libcurl but is instead #defined here only to not - make programs break */ -#define CURLE_ALREADY_COMPLETE 99999 - -#endif /*!CURL_NO_OLDIES*/ - -/* This prototype applies to all conversion callbacks */ -typedef CURLcode (*curl_conv_callback)(char *buffer, size_t length); - -typedef CURLcode (*curl_ssl_ctx_callback)(CURL *curl, /* easy handle */ - void *ssl_ctx, /* actually an - OpenSSL SSL_CTX */ - void *userptr); - -typedef enum { - CURLPROXY_HTTP = 0, /* added in 7.10, new in 7.19.4 default is to use - CONNECT HTTP/1.1 */ - CURLPROXY_HTTP_1_0 = 1, /* added in 7.19.4, force to use CONNECT - HTTP/1.0 */ - CURLPROXY_SOCKS4 = 4, /* support added in 7.15.2, enum existed already - in 7.10 */ - CURLPROXY_SOCKS5 = 5, /* added in 7.10 */ - CURLPROXY_SOCKS4A = 6, /* added in 7.18.0 */ - CURLPROXY_SOCKS5_HOSTNAME = 7 /* Use the SOCKS5 protocol but pass along the - host name rather than the IP address. added - in 7.18.0 */ -} curl_proxytype; /* this enum was added in 7.10 */ - -#define CURLAUTH_NONE 0 /* nothing */ -#define CURLAUTH_BASIC (1<<0) /* Basic (default) */ -#define CURLAUTH_DIGEST (1<<1) /* Digest */ -#define CURLAUTH_GSSNEGOTIATE (1<<2) /* GSS-Negotiate */ -#define CURLAUTH_NTLM (1<<3) /* NTLM */ -#define CURLAUTH_DIGEST_IE (1<<4) /* Digest with IE flavour */ -#define CURLAUTH_ONLY (1<<31) /* used together with a single other - type to force no auth or just that - single type */ -#define CURLAUTH_ANY (~CURLAUTH_DIGEST_IE) /* all fine types set */ -#define CURLAUTH_ANYSAFE (~(CURLAUTH_BASIC|CURLAUTH_DIGEST_IE)) - -#define CURLSSH_AUTH_ANY ~0 /* all types supported by the server */ -#define CURLSSH_AUTH_NONE 0 /* none allowed, silly but complete */ -#define CURLSSH_AUTH_PUBLICKEY (1<<0) /* public/private key files */ -#define CURLSSH_AUTH_PASSWORD (1<<1) /* password */ -#define CURLSSH_AUTH_HOST (1<<2) /* host key files */ -#define CURLSSH_AUTH_KEYBOARD (1<<3) /* keyboard interactive */ -#define CURLSSH_AUTH_DEFAULT CURLSSH_AUTH_ANY - -#define CURL_ERROR_SIZE 256 - -struct curl_khkey { - const char *key; /* points to a zero-terminated string encoded with base64 - if len is zero, otherwise to the "raw" data */ - size_t len; - enum type { - CURLKHTYPE_UNKNOWN, - CURLKHTYPE_RSA1, - CURLKHTYPE_RSA, - CURLKHTYPE_DSS - } keytype; -}; - -/* this is the set of return values expected from the curl_sshkeycallback - callback */ -enum curl_khstat { - CURLKHSTAT_FINE_ADD_TO_FILE, - CURLKHSTAT_FINE, - CURLKHSTAT_REJECT, /* reject the connection, return an error */ - CURLKHSTAT_DEFER, /* do not accept it, but we can't answer right now so - this causes a CURLE_DEFER error but otherwise the - connection will be left intact etc */ - CURLKHSTAT_LAST /* not for use, only a marker for last-in-list */ -}; - -/* this is the set of status codes pass in to the callback */ -enum curl_khmatch { - CURLKHMATCH_OK, /* match */ - CURLKHMATCH_MISMATCH, /* host found, key mismatch! */ - CURLKHMATCH_MISSING, /* no matching host/key found */ - CURLKHMATCH_LAST /* not for use, only a marker for last-in-list */ -}; - -typedef int - (*curl_sshkeycallback) (CURL *easy, /* easy handle */ - const struct curl_khkey *knownkey, /* known */ - const struct curl_khkey *foundkey, /* found */ - enum curl_khmatch, /* libcurl's view on the keys */ - void *clientp); /* custom pointer passed from app */ - -/* parameter for the CURLOPT_USE_SSL option */ -typedef enum { - CURLUSESSL_NONE, /* do not attempt to use SSL */ - CURLUSESSL_TRY, /* try using SSL, proceed anyway otherwise */ - CURLUSESSL_CONTROL, /* SSL for the control connection or fail */ - CURLUSESSL_ALL, /* SSL for all communication or fail */ - CURLUSESSL_LAST /* not an option, never use */ -} curl_usessl; - -#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all - the obsolete stuff removed! */ - -/* Backwards compatibility with older names */ -/* These are scheduled to disappear by 2009 */ - -#define CURLFTPSSL_NONE CURLUSESSL_NONE -#define CURLFTPSSL_TRY CURLUSESSL_TRY -#define CURLFTPSSL_CONTROL CURLUSESSL_CONTROL -#define CURLFTPSSL_ALL CURLUSESSL_ALL -#define CURLFTPSSL_LAST CURLUSESSL_LAST -#define curl_ftpssl curl_usessl -#endif /*!CURL_NO_OLDIES*/ - -/* parameter for the CURLOPT_FTP_SSL_CCC option */ -typedef enum { - CURLFTPSSL_CCC_NONE, /* do not send CCC */ - CURLFTPSSL_CCC_PASSIVE, /* Let the server initiate the shutdown */ - CURLFTPSSL_CCC_ACTIVE, /* Initiate the shutdown */ - CURLFTPSSL_CCC_LAST /* not an option, never use */ -} curl_ftpccc; - -/* parameter for the CURLOPT_FTPSSLAUTH option */ -typedef enum { - CURLFTPAUTH_DEFAULT, /* let libcurl decide */ - CURLFTPAUTH_SSL, /* use "AUTH SSL" */ - CURLFTPAUTH_TLS, /* use "AUTH TLS" */ - CURLFTPAUTH_LAST /* not an option, never use */ -} curl_ftpauth; - -/* parameter for the CURLOPT_FTP_CREATE_MISSING_DIRS option */ -typedef enum { - CURLFTP_CREATE_DIR_NONE, /* do NOT create missing dirs! */ - CURLFTP_CREATE_DIR, /* (FTP/SFTP) if CWD fails, try MKD and then CWD - again if MKD succeeded, for SFTP this does - similar magic */ - CURLFTP_CREATE_DIR_RETRY, /* (FTP only) if CWD fails, try MKD and then CWD - again even if MKD failed! */ - CURLFTP_CREATE_DIR_LAST /* not an option, never use */ -} curl_ftpcreatedir; - -/* parameter for the CURLOPT_FTP_FILEMETHOD option */ -typedef enum { - CURLFTPMETHOD_DEFAULT, /* let libcurl pick */ - CURLFTPMETHOD_MULTICWD, /* single CWD operation for each path part */ - CURLFTPMETHOD_NOCWD, /* no CWD at all */ - CURLFTPMETHOD_SINGLECWD, /* one CWD to full dir, then work on file */ - CURLFTPMETHOD_LAST /* not an option, never use */ -} curl_ftpmethod; - -/* CURLPROTO_ defines are for the CURLOPT_*PROTOCOLS options */ -#define CURLPROTO_HTTP (1<<0) -#define CURLPROTO_HTTPS (1<<1) -#define CURLPROTO_FTP (1<<2) -#define CURLPROTO_FTPS (1<<3) -#define CURLPROTO_SCP (1<<4) -#define CURLPROTO_SFTP (1<<5) -#define CURLPROTO_TELNET (1<<6) -#define CURLPROTO_LDAP (1<<7) -#define CURLPROTO_LDAPS (1<<8) -#define CURLPROTO_DICT (1<<9) -#define CURLPROTO_FILE (1<<10) -#define CURLPROTO_TFTP (1<<11) -#define CURLPROTO_IMAP (1<<12) -#define CURLPROTO_IMAPS (1<<13) -#define CURLPROTO_POP3 (1<<14) -#define CURLPROTO_POP3S (1<<15) -#define CURLPROTO_SMTP (1<<16) -#define CURLPROTO_SMTPS (1<<17) -#define CURLPROTO_RTSP (1<<18) -#define CURLPROTO_RTMP (1<<19) -#define CURLPROTO_RTMPT (1<<20) -#define CURLPROTO_RTMPE (1<<21) -#define CURLPROTO_RTMPTE (1<<22) -#define CURLPROTO_RTMPS (1<<23) -#define CURLPROTO_RTMPTS (1<<24) -#define CURLPROTO_GOPHER (1<<25) -#define CURLPROTO_ALL (~0) /* enable everything */ - -/* long may be 32 or 64 bits, but we should never depend on anything else - but 32 */ -#define CURLOPTTYPE_LONG 0 -#define CURLOPTTYPE_OBJECTPOINT 10000 -#define CURLOPTTYPE_FUNCTIONPOINT 20000 -#define CURLOPTTYPE_OFF_T 30000 - -/* name is uppercase CURLOPT_, - type is one of the defined CURLOPTTYPE_ - number is unique identifier */ -#ifdef CINIT -#undef CINIT -#endif - -#ifdef CURL_ISOCPP -#define CINIT(na,t,nu) CURLOPT_ ## na = CURLOPTTYPE_ ## t + nu -#else -/* The macro "##" is ISO C, we assume pre-ISO C doesn't support it. */ -#define LONG CURLOPTTYPE_LONG -#define OBJECTPOINT CURLOPTTYPE_OBJECTPOINT -#define FUNCTIONPOINT CURLOPTTYPE_FUNCTIONPOINT -#define OFF_T CURLOPTTYPE_OFF_T -#define CINIT(name,type,number) CURLOPT_/**/name = type + number -#endif - -/* - * This macro-mania below setups the CURLOPT_[what] enum, to be used with - * curl_easy_setopt(). The first argument in the CINIT() macro is the [what] - * word. - */ - -typedef enum { - /* This is the FILE * or void * the regular output should be written to. */ - CINIT(FILE, OBJECTPOINT, 1), - - /* The full URL to get/put */ - CINIT(URL, OBJECTPOINT, 2), - - /* Port number to connect to, if other than default. */ - CINIT(PORT, LONG, 3), - - /* Name of proxy to use. */ - CINIT(PROXY, OBJECTPOINT, 4), - - /* "name:password" to use when fetching. */ - CINIT(USERPWD, OBJECTPOINT, 5), - - /* "name:password" to use with proxy. */ - CINIT(PROXYUSERPWD, OBJECTPOINT, 6), - - /* Range to get, specified as an ASCII string. */ - CINIT(RANGE, OBJECTPOINT, 7), - - /* not used */ - - /* Specified file stream to upload from (use as input): */ - CINIT(INFILE, OBJECTPOINT, 9), - - /* Buffer to receive error messages in, must be at least CURL_ERROR_SIZE - * bytes big. If this is not used, error messages go to stderr instead: */ - CINIT(ERRORBUFFER, OBJECTPOINT, 10), - - /* Function that will be called to store the output (instead of fwrite). The - * parameters will use fwrite() syntax, make sure to follow them. */ - CINIT(WRITEFUNCTION, FUNCTIONPOINT, 11), - - /* Function that will be called to read the input (instead of fread). The - * parameters will use fread() syntax, make sure to follow them. */ - CINIT(READFUNCTION, FUNCTIONPOINT, 12), - - /* Time-out the read operation after this amount of seconds */ - CINIT(TIMEOUT, LONG, 13), - - /* If the CURLOPT_INFILE is used, this can be used to inform libcurl about - * how large the file being sent really is. That allows better error - * checking and better verifies that the upload was successful. -1 means - * unknown size. - * - * For large file support, there is also a _LARGE version of the key - * which takes an off_t type, allowing platforms with larger off_t - * sizes to handle larger files. See below for INFILESIZE_LARGE. - */ - CINIT(INFILESIZE, LONG, 14), - - /* POST static input fields. */ - CINIT(POSTFIELDS, OBJECTPOINT, 15), - - /* Set the referrer page (needed by some CGIs) */ - CINIT(REFERER, OBJECTPOINT, 16), - - /* Set the FTP PORT string (interface name, named or numerical IP address) - Use i.e '-' to use default address. */ - CINIT(FTPPORT, OBJECTPOINT, 17), - - /* Set the User-Agent string (examined by some CGIs) */ - CINIT(USERAGENT, OBJECTPOINT, 18), - - /* If the download receives less than "low speed limit" bytes/second - * during "low speed time" seconds, the operations is aborted. - * You could i.e if you have a pretty high speed connection, abort if - * it is less than 2000 bytes/sec during 20 seconds. - */ - - /* Set the "low speed limit" */ - CINIT(LOW_SPEED_LIMIT, LONG, 19), - - /* Set the "low speed time" */ - CINIT(LOW_SPEED_TIME, LONG, 20), - - /* Set the continuation offset. - * - * Note there is also a _LARGE version of this key which uses - * off_t types, allowing for large file offsets on platforms which - * use larger-than-32-bit off_t's. Look below for RESUME_FROM_LARGE. - */ - CINIT(RESUME_FROM, LONG, 21), - - /* Set cookie in request: */ - CINIT(COOKIE, OBJECTPOINT, 22), - - /* This points to a linked list of headers, struct curl_slist kind */ - CINIT(HTTPHEADER, OBJECTPOINT, 23), - - /* This points to a linked list of post entries, struct curl_httppost */ - CINIT(HTTPPOST, OBJECTPOINT, 24), - - /* name of the file keeping your private SSL-certificate */ - CINIT(SSLCERT, OBJECTPOINT, 25), - - /* password for the SSL or SSH private key */ - CINIT(KEYPASSWD, OBJECTPOINT, 26), - - /* send TYPE parameter? */ - CINIT(CRLF, LONG, 27), - - /* send linked-list of QUOTE commands */ - CINIT(QUOTE, OBJECTPOINT, 28), - - /* send FILE * or void * to store headers to, if you use a callback it - is simply passed to the callback unmodified */ - CINIT(WRITEHEADER, OBJECTPOINT, 29), - - /* point to a file to read the initial cookies from, also enables - "cookie awareness" */ - CINIT(COOKIEFILE, OBJECTPOINT, 31), - - /* What version to specifically try to use. - See CURL_SSLVERSION defines below. */ - CINIT(SSLVERSION, LONG, 32), - - /* What kind of HTTP time condition to use, see defines */ - CINIT(TIMECONDITION, LONG, 33), - - /* Time to use with the above condition. Specified in number of seconds - since 1 Jan 1970 */ - CINIT(TIMEVALUE, LONG, 34), - - /* 35 = OBSOLETE */ - - /* Custom request, for customizing the get command like - HTTP: DELETE, TRACE and others - FTP: to use a different list command - */ - CINIT(CUSTOMREQUEST, OBJECTPOINT, 36), - - /* HTTP request, for odd commands like DELETE, TRACE and others */ - CINIT(STDERR, OBJECTPOINT, 37), - - /* 38 is not used */ - - /* send linked-list of post-transfer QUOTE commands */ - CINIT(POSTQUOTE, OBJECTPOINT, 39), - - /* Pass a pointer to string of the output using full variable-replacement - as described elsewhere. */ - CINIT(WRITEINFO, OBJECTPOINT, 40), - - CINIT(VERBOSE, LONG, 41), /* talk a lot */ - CINIT(HEADER, LONG, 42), /* throw the header out too */ - CINIT(NOPROGRESS, LONG, 43), /* shut off the progress meter */ - CINIT(NOBODY, LONG, 44), /* use HEAD to get http document */ - CINIT(FAILONERROR, LONG, 45), /* no output on http error codes >= 300 */ - CINIT(UPLOAD, LONG, 46), /* this is an upload */ - CINIT(POST, LONG, 47), /* HTTP POST method */ - CINIT(DIRLISTONLY, LONG, 48), /* bare names when listing directories */ - - CINIT(APPEND, LONG, 50), /* Append instead of overwrite on upload! */ - - /* Specify whether to read the user+password from the .netrc or the URL. - * This must be one of the CURL_NETRC_* enums below. */ - CINIT(NETRC, LONG, 51), - - CINIT(FOLLOWLOCATION, LONG, 52), /* use Location: Luke! */ - - CINIT(TRANSFERTEXT, LONG, 53), /* transfer data in text/ASCII format */ - CINIT(PUT, LONG, 54), /* HTTP PUT */ - - /* 55 = OBSOLETE */ - - /* Function that will be called instead of the internal progress display - * function. This function should be defined as the curl_progress_callback - * prototype defines. */ - CINIT(PROGRESSFUNCTION, FUNCTIONPOINT, 56), - - /* Data passed to the progress callback */ - CINIT(PROGRESSDATA, OBJECTPOINT, 57), - - /* We want the referrer field set automatically when following locations */ - CINIT(AUTOREFERER, LONG, 58), - - /* Port of the proxy, can be set in the proxy string as well with: - "[host]:[port]" */ - CINIT(PROXYPORT, LONG, 59), - - /* size of the POST input data, if strlen() is not good to use */ - CINIT(POSTFIELDSIZE, LONG, 60), - - /* tunnel non-http operations through a HTTP proxy */ - CINIT(HTTPPROXYTUNNEL, LONG, 61), - - /* Set the interface string to use as outgoing network interface */ - CINIT(INTERFACE, OBJECTPOINT, 62), - - /* Set the krb4/5 security level, this also enables krb4/5 awareness. This - * is a string, 'clear', 'safe', 'confidential' or 'private'. If the string - * is set but doesn't match one of these, 'private' will be used. */ - CINIT(KRBLEVEL, OBJECTPOINT, 63), - - /* Set if we should verify the peer in ssl handshake, set 1 to verify. */ - CINIT(SSL_VERIFYPEER, LONG, 64), - - /* The CApath or CAfile used to validate the peer certificate - this option is used only if SSL_VERIFYPEER is true */ - CINIT(CAINFO, OBJECTPOINT, 65), - - /* 66 = OBSOLETE */ - /* 67 = OBSOLETE */ - - /* Maximum number of http redirects to follow */ - CINIT(MAXREDIRS, LONG, 68), - - /* Pass a long set to 1 to get the date of the requested document (if - possible)! Pass a zero to shut it off. */ - CINIT(FILETIME, LONG, 69), - - /* This points to a linked list of telnet options */ - CINIT(TELNETOPTIONS, OBJECTPOINT, 70), - - /* Max amount of cached alive connections */ - CINIT(MAXCONNECTS, LONG, 71), - - /* 72 - DEPRECATED */ - CINIT(CLOSEPOLICY, LONG, 72), - - /* 73 = OBSOLETE */ - - /* Set to explicitly use a new connection for the upcoming transfer. - Do not use this unless you're absolutely sure of this, as it makes the - operation slower and is less friendly for the network. */ - CINIT(FRESH_CONNECT, LONG, 74), - - /* Set to explicitly forbid the upcoming transfer's connection to be re-used - when done. Do not use this unless you're absolutely sure of this, as it - makes the operation slower and is less friendly for the network. */ - CINIT(FORBID_REUSE, LONG, 75), - - /* Set to a file name that contains random data for libcurl to use to - seed the random engine when doing SSL connects. */ - CINIT(RANDOM_FILE, OBJECTPOINT, 76), - - /* Set to the Entropy Gathering Daemon socket pathname */ - CINIT(EGDSOCKET, OBJECTPOINT, 77), - - /* Time-out connect operations after this amount of seconds, if connects - are OK within this time, then fine... This only aborts the connect - phase. [Only works on unix-style/SIGALRM operating systems] */ - CINIT(CONNECTTIMEOUT, LONG, 78), - - /* Function that will be called to store headers (instead of fwrite). The - * parameters will use fwrite() syntax, make sure to follow them. */ - CINIT(HEADERFUNCTION, FUNCTIONPOINT, 79), - - /* Set this to force the HTTP request to get back to GET. Only really usable - if POST, PUT or a custom request have been used first. - */ - CINIT(HTTPGET, LONG, 80), - - /* Set if we should verify the Common name from the peer certificate in ssl - * handshake, set 1 to check existence, 2 to ensure that it matches the - * provided hostname. */ - CINIT(SSL_VERIFYHOST, LONG, 81), - - /* Specify which file name to write all known cookies in after completed - operation. Set file name to "-" (dash) to make it go to stdout. */ - CINIT(COOKIEJAR, OBJECTPOINT, 82), - - /* Specify which SSL ciphers to use */ - CINIT(SSL_CIPHER_LIST, OBJECTPOINT, 83), - - /* Specify which HTTP version to use! This must be set to one of the - CURL_HTTP_VERSION* enums set below. */ - CINIT(HTTP_VERSION, LONG, 84), - - /* Specifically switch on or off the FTP engine's use of the EPSV command. By - default, that one will always be attempted before the more traditional - PASV command. */ - CINIT(FTP_USE_EPSV, LONG, 85), - - /* type of the file keeping your SSL-certificate ("DER", "PEM", "ENG") */ - CINIT(SSLCERTTYPE, OBJECTPOINT, 86), - - /* name of the file keeping your private SSL-key */ - CINIT(SSLKEY, OBJECTPOINT, 87), - - /* type of the file keeping your private SSL-key ("DER", "PEM", "ENG") */ - CINIT(SSLKEYTYPE, OBJECTPOINT, 88), - - /* crypto engine for the SSL-sub system */ - CINIT(SSLENGINE, OBJECTPOINT, 89), - - /* set the crypto engine for the SSL-sub system as default - the param has no meaning... - */ - CINIT(SSLENGINE_DEFAULT, LONG, 90), - - /* Non-zero value means to use the global dns cache */ - CINIT(DNS_USE_GLOBAL_CACHE, LONG, 91), /* To become OBSOLETE soon */ - - /* DNS cache timeout */ - CINIT(DNS_CACHE_TIMEOUT, LONG, 92), - - /* send linked-list of pre-transfer QUOTE commands */ - CINIT(PREQUOTE, OBJECTPOINT, 93), - - /* set the debug function */ - CINIT(DEBUGFUNCTION, FUNCTIONPOINT, 94), - - /* set the data for the debug function */ - CINIT(DEBUGDATA, OBJECTPOINT, 95), - - /* mark this as start of a cookie session */ - CINIT(COOKIESESSION, LONG, 96), - - /* The CApath directory used to validate the peer certificate - this option is used only if SSL_VERIFYPEER is true */ - CINIT(CAPATH, OBJECTPOINT, 97), - - /* Instruct libcurl to use a smaller receive buffer */ - CINIT(BUFFERSIZE, LONG, 98), - - /* Instruct libcurl to not use any signal/alarm handlers, even when using - timeouts. This option is useful for multi-threaded applications. - See libcurl-the-guide for more background information. */ - CINIT(NOSIGNAL, LONG, 99), - - /* Provide a CURLShare for mutexing non-ts data */ - CINIT(SHARE, OBJECTPOINT, 100), - - /* indicates type of proxy. accepted values are CURLPROXY_HTTP (default), - CURLPROXY_SOCKS4, CURLPROXY_SOCKS4A and CURLPROXY_SOCKS5. */ - CINIT(PROXYTYPE, LONG, 101), - - /* Set the Accept-Encoding string. Use this to tell a server you would like - the response to be compressed. Before 7.21.6, this was known as - CURLOPT_ENCODING */ - CINIT(ACCEPT_ENCODING, OBJECTPOINT, 102), - - /* Set pointer to private data */ - CINIT(PRIVATE, OBJECTPOINT, 103), - - /* Set aliases for HTTP 200 in the HTTP Response header */ - CINIT(HTTP200ALIASES, OBJECTPOINT, 104), - - /* Continue to send authentication (user+password) when following locations, - even when hostname changed. This can potentially send off the name - and password to whatever host the server decides. */ - CINIT(UNRESTRICTED_AUTH, LONG, 105), - - /* Specifically switch on or off the FTP engine's use of the EPRT command ( - it also disables the LPRT attempt). By default, those ones will always be - attempted before the good old traditional PORT command. */ - CINIT(FTP_USE_EPRT, LONG, 106), - - /* Set this to a bitmask value to enable the particular authentications - methods you like. Use this in combination with CURLOPT_USERPWD. - Note that setting multiple bits may cause extra network round-trips. */ - CINIT(HTTPAUTH, LONG, 107), - - /* Set the ssl context callback function, currently only for OpenSSL ssl_ctx - in second argument. The function must be matching the - curl_ssl_ctx_callback proto. */ - CINIT(SSL_CTX_FUNCTION, FUNCTIONPOINT, 108), - - /* Set the userdata for the ssl context callback function's third - argument */ - CINIT(SSL_CTX_DATA, OBJECTPOINT, 109), - - /* FTP Option that causes missing dirs to be created on the remote server. - In 7.19.4 we introduced the convenience enums for this option using the - CURLFTP_CREATE_DIR prefix. - */ - CINIT(FTP_CREATE_MISSING_DIRS, LONG, 110), - - /* Set this to a bitmask value to enable the particular authentications - methods you like. Use this in combination with CURLOPT_PROXYUSERPWD. - Note that setting multiple bits may cause extra network round-trips. */ - CINIT(PROXYAUTH, LONG, 111), - - /* FTP option that changes the timeout, in seconds, associated with - getting a response. This is different from transfer timeout time and - essentially places a demand on the FTP server to acknowledge commands - in a timely manner. */ - CINIT(FTP_RESPONSE_TIMEOUT, LONG, 112), -#define CURLOPT_SERVER_RESPONSE_TIMEOUT CURLOPT_FTP_RESPONSE_TIMEOUT - - /* Set this option to one of the CURL_IPRESOLVE_* defines (see below) to - tell libcurl to resolve names to those IP versions only. This only has - affect on systems with support for more than one, i.e IPv4 _and_ IPv6. */ - CINIT(IPRESOLVE, LONG, 113), - - /* Set this option to limit the size of a file that will be downloaded from - an HTTP or FTP server. - - Note there is also _LARGE version which adds large file support for - platforms which have larger off_t sizes. See MAXFILESIZE_LARGE below. */ - CINIT(MAXFILESIZE, LONG, 114), - - /* See the comment for INFILESIZE above, but in short, specifies - * the size of the file being uploaded. -1 means unknown. - */ - CINIT(INFILESIZE_LARGE, OFF_T, 115), - - /* Sets the continuation offset. There is also a LONG version of this; - * look above for RESUME_FROM. - */ - CINIT(RESUME_FROM_LARGE, OFF_T, 116), - - /* Sets the maximum size of data that will be downloaded from - * an HTTP or FTP server. See MAXFILESIZE above for the LONG version. - */ - CINIT(MAXFILESIZE_LARGE, OFF_T, 117), - - /* Set this option to the file name of your .netrc file you want libcurl - to parse (using the CURLOPT_NETRC option). If not set, libcurl will do - a poor attempt to find the user's home directory and check for a .netrc - file in there. */ - CINIT(NETRC_FILE, OBJECTPOINT, 118), - - /* Enable SSL/TLS for FTP, pick one of: - CURLFTPSSL_TRY - try using SSL, proceed anyway otherwise - CURLFTPSSL_CONTROL - SSL for the control connection or fail - CURLFTPSSL_ALL - SSL for all communication or fail - */ - CINIT(USE_SSL, LONG, 119), - - /* The _LARGE version of the standard POSTFIELDSIZE option */ - CINIT(POSTFIELDSIZE_LARGE, OFF_T, 120), - - /* Enable/disable the TCP Nagle algorithm */ - CINIT(TCP_NODELAY, LONG, 121), - - /* 122 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */ - /* 123 OBSOLETE. Gone in 7.16.0 */ - /* 124 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */ - /* 125 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */ - /* 126 OBSOLETE, used in 7.12.3. Gone in 7.13.0 */ - /* 127 OBSOLETE. Gone in 7.16.0 */ - /* 128 OBSOLETE. Gone in 7.16.0 */ - - /* When FTP over SSL/TLS is selected (with CURLOPT_USE_SSL), this option - can be used to change libcurl's default action which is to first try - "AUTH SSL" and then "AUTH TLS" in this order, and proceed when a OK - response has been received. - - Available parameters are: - CURLFTPAUTH_DEFAULT - let libcurl decide - CURLFTPAUTH_SSL - try "AUTH SSL" first, then TLS - CURLFTPAUTH_TLS - try "AUTH TLS" first, then SSL - */ - CINIT(FTPSSLAUTH, LONG, 129), - - CINIT(IOCTLFUNCTION, FUNCTIONPOINT, 130), - CINIT(IOCTLDATA, OBJECTPOINT, 131), - - /* 132 OBSOLETE. Gone in 7.16.0 */ - /* 133 OBSOLETE. Gone in 7.16.0 */ - - /* zero terminated string for pass on to the FTP server when asked for - "account" info */ - CINIT(FTP_ACCOUNT, OBJECTPOINT, 134), - - /* feed cookies into cookie engine */ - CINIT(COOKIELIST, OBJECTPOINT, 135), - - /* ignore Content-Length */ - CINIT(IGNORE_CONTENT_LENGTH, LONG, 136), - - /* Set to non-zero to skip the IP address received in a 227 PASV FTP server - response. Typically used for FTP-SSL purposes but is not restricted to - that. libcurl will then instead use the same IP address it used for the - control connection. */ - CINIT(FTP_SKIP_PASV_IP, LONG, 137), - - /* Select "file method" to use when doing FTP, see the curl_ftpmethod - above. */ - CINIT(FTP_FILEMETHOD, LONG, 138), - - /* Local port number to bind the socket to */ - CINIT(LOCALPORT, LONG, 139), - - /* Number of ports to try, including the first one set with LOCALPORT. - Thus, setting it to 1 will make no additional attempts but the first. - */ - CINIT(LOCALPORTRANGE, LONG, 140), - - /* no transfer, set up connection and let application use the socket by - extracting it with CURLINFO_LASTSOCKET */ - CINIT(CONNECT_ONLY, LONG, 141), - - /* Function that will be called to convert from the - network encoding (instead of using the iconv calls in libcurl) */ - CINIT(CONV_FROM_NETWORK_FUNCTION, FUNCTIONPOINT, 142), - - /* Function that will be called to convert to the - network encoding (instead of using the iconv calls in libcurl) */ - CINIT(CONV_TO_NETWORK_FUNCTION, FUNCTIONPOINT, 143), - - /* Function that will be called to convert from UTF8 - (instead of using the iconv calls in libcurl) - Note that this is used only for SSL certificate processing */ - CINIT(CONV_FROM_UTF8_FUNCTION, FUNCTIONPOINT, 144), - - /* if the connection proceeds too quickly then need to slow it down */ - /* limit-rate: maximum number of bytes per second to send or receive */ - CINIT(MAX_SEND_SPEED_LARGE, OFF_T, 145), - CINIT(MAX_RECV_SPEED_LARGE, OFF_T, 146), - - /* Pointer to command string to send if USER/PASS fails. */ - CINIT(FTP_ALTERNATIVE_TO_USER, OBJECTPOINT, 147), - - /* callback function for setting socket options */ - CINIT(SOCKOPTFUNCTION, FUNCTIONPOINT, 148), - CINIT(SOCKOPTDATA, OBJECTPOINT, 149), - - /* set to 0 to disable session ID re-use for this transfer, default is - enabled (== 1) */ - CINIT(SSL_SESSIONID_CACHE, LONG, 150), - - /* allowed SSH authentication methods */ - CINIT(SSH_AUTH_TYPES, LONG, 151), - - /* Used by scp/sftp to do public/private key authentication */ - CINIT(SSH_PUBLIC_KEYFILE, OBJECTPOINT, 152), - CINIT(SSH_PRIVATE_KEYFILE, OBJECTPOINT, 153), - - /* Send CCC (Clear Command Channel) after authentication */ - CINIT(FTP_SSL_CCC, LONG, 154), - - /* Same as TIMEOUT and CONNECTTIMEOUT, but with ms resolution */ - CINIT(TIMEOUT_MS, LONG, 155), - CINIT(CONNECTTIMEOUT_MS, LONG, 156), - - /* set to zero to disable the libcurl's decoding and thus pass the raw body - data to the application even when it is encoded/compressed */ - CINIT(HTTP_TRANSFER_DECODING, LONG, 157), - CINIT(HTTP_CONTENT_DECODING, LONG, 158), - - /* Permission used when creating new files and directories on the remote - server for protocols that support it, SFTP/SCP/FILE */ - CINIT(NEW_FILE_PERMS, LONG, 159), - CINIT(NEW_DIRECTORY_PERMS, LONG, 160), - - /* Set the behaviour of POST when redirecting. Values must be set to one - of CURL_REDIR* defines below. This used to be called CURLOPT_POST301 */ - CINIT(POSTREDIR, LONG, 161), - - /* used by scp/sftp to verify the host's public key */ - CINIT(SSH_HOST_PUBLIC_KEY_MD5, OBJECTPOINT, 162), - - /* Callback function for opening socket (instead of socket(2)). Optionally, - callback is able change the address or refuse to connect returning - CURL_SOCKET_BAD. The callback should have type - curl_opensocket_callback */ - CINIT(OPENSOCKETFUNCTION, FUNCTIONPOINT, 163), - CINIT(OPENSOCKETDATA, OBJECTPOINT, 164), - - /* POST volatile input fields. */ - CINIT(COPYPOSTFIELDS, OBJECTPOINT, 165), - - /* set transfer mode (;type=) when doing FTP via an HTTP proxy */ - CINIT(PROXY_TRANSFER_MODE, LONG, 166), - - /* Callback function for seeking in the input stream */ - CINIT(SEEKFUNCTION, FUNCTIONPOINT, 167), - CINIT(SEEKDATA, OBJECTPOINT, 168), - - /* CRL file */ - CINIT(CRLFILE, OBJECTPOINT, 169), - - /* Issuer certificate */ - CINIT(ISSUERCERT, OBJECTPOINT, 170), - - /* (IPv6) Address scope */ - CINIT(ADDRESS_SCOPE, LONG, 171), - - /* Collect certificate chain info and allow it to get retrievable with - CURLINFO_CERTINFO after the transfer is complete. (Unfortunately) only - working with OpenSSL-powered builds. */ - CINIT(CERTINFO, LONG, 172), - - /* "name" and "pwd" to use when fetching. */ - CINIT(USERNAME, OBJECTPOINT, 173), - CINIT(PASSWORD, OBJECTPOINT, 174), - - /* "name" and "pwd" to use with Proxy when fetching. */ - CINIT(PROXYUSERNAME, OBJECTPOINT, 175), - CINIT(PROXYPASSWORD, OBJECTPOINT, 176), - - /* Comma separated list of hostnames defining no-proxy zones. These should - match both hostnames directly, and hostnames within a domain. For - example, local.com will match local.com and www.local.com, but NOT - notlocal.com or www.notlocal.com. For compatibility with other - implementations of this, .local.com will be considered to be the same as - local.com. A single * is the only valid wildcard, and effectively - disables the use of proxy. */ - CINIT(NOPROXY, OBJECTPOINT, 177), - - /* block size for TFTP transfers */ - CINIT(TFTP_BLKSIZE, LONG, 178), - - /* Socks Service */ - CINIT(SOCKS5_GSSAPI_SERVICE, OBJECTPOINT, 179), - - /* Socks Service */ - CINIT(SOCKS5_GSSAPI_NEC, LONG, 180), - - /* set the bitmask for the protocols that are allowed to be used for the - transfer, which thus helps the app which takes URLs from users or other - external inputs and want to restrict what protocol(s) to deal - with. Defaults to CURLPROTO_ALL. */ - CINIT(PROTOCOLS, LONG, 181), - - /* set the bitmask for the protocols that libcurl is allowed to follow to, - as a subset of the CURLOPT_PROTOCOLS ones. That means the protocol needs - to be set in both bitmasks to be allowed to get redirected to. Defaults - to all protocols except FILE and SCP. */ - CINIT(REDIR_PROTOCOLS, LONG, 182), - - /* set the SSH knownhost file name to use */ - CINIT(SSH_KNOWNHOSTS, OBJECTPOINT, 183), - - /* set the SSH host key callback, must point to a curl_sshkeycallback - function */ - CINIT(SSH_KEYFUNCTION, FUNCTIONPOINT, 184), - - /* set the SSH host key callback custom pointer */ - CINIT(SSH_KEYDATA, OBJECTPOINT, 185), - - /* set the SMTP mail originator */ - CINIT(MAIL_FROM, OBJECTPOINT, 186), - - /* set the SMTP mail receiver(s) */ - CINIT(MAIL_RCPT, OBJECTPOINT, 187), - - /* FTP: send PRET before PASV */ - CINIT(FTP_USE_PRET, LONG, 188), - - /* RTSP request method (OPTIONS, SETUP, PLAY, etc...) */ - CINIT(RTSP_REQUEST, LONG, 189), - - /* The RTSP session identifier */ - CINIT(RTSP_SESSION_ID, OBJECTPOINT, 190), - - /* The RTSP stream URI */ - CINIT(RTSP_STREAM_URI, OBJECTPOINT, 191), - - /* The Transport: header to use in RTSP requests */ - CINIT(RTSP_TRANSPORT, OBJECTPOINT, 192), - - /* Manually initialize the client RTSP CSeq for this handle */ - CINIT(RTSP_CLIENT_CSEQ, LONG, 193), - - /* Manually initialize the server RTSP CSeq for this handle */ - CINIT(RTSP_SERVER_CSEQ, LONG, 194), - - /* The stream to pass to INTERLEAVEFUNCTION. */ - CINIT(INTERLEAVEDATA, OBJECTPOINT, 195), - - /* Let the application define a custom write method for RTP data */ - CINIT(INTERLEAVEFUNCTION, FUNCTIONPOINT, 196), - - /* Turn on wildcard matching */ - CINIT(WILDCARDMATCH, LONG, 197), - - /* Directory matching callback called before downloading of an - individual file (chunk) started */ - CINIT(CHUNK_BGN_FUNCTION, FUNCTIONPOINT, 198), - - /* Directory matching callback called after the file (chunk) - was downloaded, or skipped */ - CINIT(CHUNK_END_FUNCTION, FUNCTIONPOINT, 199), - - /* Change match (fnmatch-like) callback for wildcard matching */ - CINIT(FNMATCH_FUNCTION, FUNCTIONPOINT, 200), - - /* Let the application define custom chunk data pointer */ - CINIT(CHUNK_DATA, OBJECTPOINT, 201), - - /* FNMATCH_FUNCTION user pointer */ - CINIT(FNMATCH_DATA, OBJECTPOINT, 202), - - /* send linked-list of name:port:address sets */ - CINIT(RESOLVE, OBJECTPOINT, 203), - - /* Set a username for authenticated TLS */ - CINIT(TLSAUTH_USERNAME, OBJECTPOINT, 204), - - /* Set a password for authenticated TLS */ - CINIT(TLSAUTH_PASSWORD, OBJECTPOINT, 205), - - /* Set authentication type for authenticated TLS */ - CINIT(TLSAUTH_TYPE, OBJECTPOINT, 206), - - /* Set to 1 to enable the "TE:" header in HTTP requests to ask for - compressed transfer-encoded responses. Set to 0 to disable the use of TE: - in outgoing requests. The current default is 0, but it might change in a - future libcurl release. - - libcurl will ask for the compressed methods it knows of, and if that - isn't any, it will not ask for transfer-encoding at all even if this - option is set to 1. - - */ - CINIT(TRANSFER_ENCODING, LONG, 207), - - /* Callback function for closing socket (instead of close(2)). The callback - should have type curl_closesocket_callback */ - CINIT(CLOSESOCKETFUNCTION, FUNCTIONPOINT, 208), - CINIT(CLOSESOCKETDATA, OBJECTPOINT, 209), - - CURLOPT_LASTENTRY /* the last unused */ -} CURLoption; - -#ifndef CURL_NO_OLDIES /* define this to test if your app builds with all - the obsolete stuff removed! */ - -/* Backwards compatibility with older names */ -/* These are scheduled to disappear by 2011 */ - -/* This was added in version 7.19.1 */ -#define CURLOPT_POST301 CURLOPT_POSTREDIR - -/* These are scheduled to disappear by 2009 */ - -/* The following were added in 7.17.0 */ -#define CURLOPT_SSLKEYPASSWD CURLOPT_KEYPASSWD -#define CURLOPT_FTPAPPEND CURLOPT_APPEND -#define CURLOPT_FTPLISTONLY CURLOPT_DIRLISTONLY -#define CURLOPT_FTP_SSL CURLOPT_USE_SSL - -/* The following were added earlier */ - -#define CURLOPT_SSLCERTPASSWD CURLOPT_KEYPASSWD -#define CURLOPT_KRB4LEVEL CURLOPT_KRBLEVEL - -#else -/* This is set if CURL_NO_OLDIES is defined at compile-time */ -#undef CURLOPT_DNS_USE_GLOBAL_CACHE /* soon obsolete */ -#endif - - - /* Below here follows defines for the CURLOPT_IPRESOLVE option. If a host - name resolves addresses using more than one IP protocol version, this - option might be handy to force libcurl to use a specific IP version. */ -#define CURL_IPRESOLVE_WHATEVER 0 /* default, resolves addresses to all IP - versions that your system allows */ -#define CURL_IPRESOLVE_V4 1 /* resolve to ipv4 addresses */ -#define CURL_IPRESOLVE_V6 2 /* resolve to ipv6 addresses */ - - /* three convenient "aliases" that follow the name scheme better */ -#define CURLOPT_WRITEDATA CURLOPT_FILE -#define CURLOPT_READDATA CURLOPT_INFILE -#define CURLOPT_HEADERDATA CURLOPT_WRITEHEADER -#define CURLOPT_RTSPHEADER CURLOPT_HTTPHEADER - - /* These enums are for use with the CURLOPT_HTTP_VERSION option. */ -enum { - CURL_HTTP_VERSION_NONE, /* setting this means we don't care, and that we'd - like the library to choose the best possible - for us! */ - CURL_HTTP_VERSION_1_0, /* please use HTTP 1.0 in the request */ - CURL_HTTP_VERSION_1_1, /* please use HTTP 1.1 in the request */ - - CURL_HTTP_VERSION_LAST /* *ILLEGAL* http version */ -}; - -/* - * Public API enums for RTSP requests - */ -enum { - CURL_RTSPREQ_NONE, /* first in list */ - CURL_RTSPREQ_OPTIONS, - CURL_RTSPREQ_DESCRIBE, - CURL_RTSPREQ_ANNOUNCE, - CURL_RTSPREQ_SETUP, - CURL_RTSPREQ_PLAY, - CURL_RTSPREQ_PAUSE, - CURL_RTSPREQ_TEARDOWN, - CURL_RTSPREQ_GET_PARAMETER, - CURL_RTSPREQ_SET_PARAMETER, - CURL_RTSPREQ_RECORD, - CURL_RTSPREQ_RECEIVE, - CURL_RTSPREQ_LAST /* last in list */ -}; - - /* These enums are for use with the CURLOPT_NETRC option. */ -enum CURL_NETRC_OPTION { - CURL_NETRC_IGNORED, /* The .netrc will never be read. - * This is the default. */ - CURL_NETRC_OPTIONAL, /* A user:password in the URL will be preferred - * to one in the .netrc. */ - CURL_NETRC_REQUIRED, /* A user:password in the URL will be ignored. - * Unless one is set programmatically, the .netrc - * will be queried. */ - CURL_NETRC_LAST -}; - -enum { - CURL_SSLVERSION_DEFAULT, - CURL_SSLVERSION_TLSv1, - CURL_SSLVERSION_SSLv2, - CURL_SSLVERSION_SSLv3, - - CURL_SSLVERSION_LAST /* never use, keep last */ -}; - -enum CURL_TLSAUTH { - CURL_TLSAUTH_NONE, - CURL_TLSAUTH_SRP, - CURL_TLSAUTH_LAST /* never use, keep last */ -}; - -/* symbols to use with CURLOPT_POSTREDIR. - CURL_REDIR_POST_301 and CURL_REDIR_POST_302 can be bitwise ORed so that - CURL_REDIR_POST_301 | CURL_REDIR_POST_302 == CURL_REDIR_POST_ALL */ - -#define CURL_REDIR_GET_ALL 0 -#define CURL_REDIR_POST_301 1 -#define CURL_REDIR_POST_302 2 -#define CURL_REDIR_POST_ALL (CURL_REDIR_POST_301|CURL_REDIR_POST_302) - -typedef enum { - CURL_TIMECOND_NONE, - - CURL_TIMECOND_IFMODSINCE, - CURL_TIMECOND_IFUNMODSINCE, - CURL_TIMECOND_LASTMOD, - - CURL_TIMECOND_LAST -} curl_TimeCond; - - -/* curl_strequal() and curl_strnequal() are subject for removal in a future - libcurl, see lib/README.curlx for details */ -CURL_EXTERN int (curl_strequal)(const char *s1, const char *s2); -CURL_EXTERN int (curl_strnequal)(const char *s1, const char *s2, size_t n); - -/* name is uppercase CURLFORM_ */ -#ifdef CFINIT -#undef CFINIT -#endif - -#ifdef CURL_ISOCPP -#define CFINIT(name) CURLFORM_ ## name -#else -/* The macro "##" is ISO C, we assume pre-ISO C doesn't support it. */ -#define CFINIT(name) CURLFORM_/**/name -#endif - -typedef enum { - CFINIT(NOTHING), /********* the first one is unused ************/ - - /* */ - CFINIT(COPYNAME), - CFINIT(PTRNAME), - CFINIT(NAMELENGTH), - CFINIT(COPYCONTENTS), - CFINIT(PTRCONTENTS), - CFINIT(CONTENTSLENGTH), - CFINIT(FILECONTENT), - CFINIT(ARRAY), - CFINIT(OBSOLETE), - CFINIT(FILE), - - CFINIT(BUFFER), - CFINIT(BUFFERPTR), - CFINIT(BUFFERLENGTH), - - CFINIT(CONTENTTYPE), - CFINIT(CONTENTHEADER), - CFINIT(FILENAME), - CFINIT(END), - CFINIT(OBSOLETE2), - - CFINIT(STREAM), - - CURLFORM_LASTENTRY /* the last unused */ -} CURLformoption; - -#undef CFINIT /* done */ - -/* structure to be used as parameter for CURLFORM_ARRAY */ -struct curl_forms { - CURLformoption option; - const char *value; -}; - -/* use this for multipart formpost building */ -/* Returns code for curl_formadd() - * - * Returns: - * CURL_FORMADD_OK on success - * CURL_FORMADD_MEMORY if the FormInfo allocation fails - * CURL_FORMADD_OPTION_TWICE if one option is given twice for one Form - * CURL_FORMADD_NULL if a null pointer was given for a char - * CURL_FORMADD_MEMORY if the allocation of a FormInfo struct failed - * CURL_FORMADD_UNKNOWN_OPTION if an unknown option was used - * CURL_FORMADD_INCOMPLETE if the some FormInfo is not complete (or error) - * CURL_FORMADD_MEMORY if a curl_httppost struct cannot be allocated - * CURL_FORMADD_MEMORY if some allocation for string copying failed. - * CURL_FORMADD_ILLEGAL_ARRAY if an illegal option is used in an array - * - ***************************************************************************/ -typedef enum { - CURL_FORMADD_OK, /* first, no error */ - - CURL_FORMADD_MEMORY, - CURL_FORMADD_OPTION_TWICE, - CURL_FORMADD_NULL, - CURL_FORMADD_UNKNOWN_OPTION, - CURL_FORMADD_INCOMPLETE, - CURL_FORMADD_ILLEGAL_ARRAY, - CURL_FORMADD_DISABLED, /* libcurl was built with this disabled */ - - CURL_FORMADD_LAST /* last */ -} CURLFORMcode; - -/* - * NAME curl_formadd() - * - * DESCRIPTION - * - * Pretty advanced function for building multi-part formposts. Each invoke - * adds one part that together construct a full post. Then use - * CURLOPT_HTTPPOST to send it off to libcurl. - */ -CURL_EXTERN CURLFORMcode curl_formadd(struct curl_httppost **httppost, - struct curl_httppost **last_post, - ...); - -/* - * callback function for curl_formget() - * The void *arg pointer will be the one passed as second argument to - * curl_formget(). - * The character buffer passed to it must not be freed. - * Should return the buffer length passed to it as the argument "len" on - * success. - */ -typedef size_t (*curl_formget_callback)(void *arg, const char *buf, - size_t len); - -/* - * NAME curl_formget() - * - * DESCRIPTION - * - * Serialize a curl_httppost struct built with curl_formadd(). - * Accepts a void pointer as second argument which will be passed to - * the curl_formget_callback function. - * Returns 0 on success. - */ -CURL_EXTERN int curl_formget(struct curl_httppost *form, void *arg, - curl_formget_callback append); -/* - * NAME curl_formfree() - * - * DESCRIPTION - * - * Free a multipart formpost previously built with curl_formadd(). - */ -CURL_EXTERN void curl_formfree(struct curl_httppost *form); - -/* - * NAME curl_getenv() - * - * DESCRIPTION - * - * Returns a malloc()'ed string that MUST be curl_free()ed after usage is - * complete. DEPRECATED - see lib/README.curlx - */ -CURL_EXTERN char *curl_getenv(const char *variable); - -/* - * NAME curl_version() - * - * DESCRIPTION - * - * Returns a static ascii string of the libcurl version. - */ -CURL_EXTERN char *curl_version(void); - -/* - * NAME curl_easy_escape() - * - * DESCRIPTION - * - * Escapes URL strings (converts all letters consider illegal in URLs to their - * %XX versions). This function returns a new allocated string or NULL if an - * error occurred. - */ -CURL_EXTERN char *curl_easy_escape(CURL *handle, - const char *string, - int length); - -/* the previous version: */ -CURL_EXTERN char *curl_escape(const char *string, - int length); - - -/* - * NAME curl_easy_unescape() - * - * DESCRIPTION - * - * Unescapes URL encoding in strings (converts all %XX codes to their 8bit - * versions). This function returns a new allocated string or NULL if an error - * occurred. - * Conversion Note: On non-ASCII platforms the ASCII %XX codes are - * converted into the host encoding. - */ -CURL_EXTERN char *curl_easy_unescape(CURL *handle, - const char *string, - int length, - int *outlength); - -/* the previous version */ -CURL_EXTERN char *curl_unescape(const char *string, - int length); - -/* - * NAME curl_free() - * - * DESCRIPTION - * - * Provided for de-allocation in the same translation unit that did the - * allocation. Added in libcurl 7.10 - */ -CURL_EXTERN void curl_free(void *p); - -/* - * NAME curl_global_init() - * - * DESCRIPTION - * - * curl_global_init() should be invoked exactly once for each application that - * uses libcurl and before any call of other libcurl functions. - * - * This function is not thread-safe! - */ -CURL_EXTERN CURLcode curl_global_init(long flags); - -/* - * NAME curl_global_init_mem() - * - * DESCRIPTION - * - * curl_global_init() or curl_global_init_mem() should be invoked exactly once - * for each application that uses libcurl. This function can be used to - * initialize libcurl and set user defined memory management callback - * functions. Users can implement memory management routines to check for - * memory leaks, check for mis-use of the curl library etc. User registered - * callback routines with be invoked by this library instead of the system - * memory management routines like malloc, free etc. - */ -CURL_EXTERN CURLcode curl_global_init_mem(long flags, - curl_malloc_callback m, - curl_free_callback f, - curl_realloc_callback r, - curl_strdup_callback s, - curl_calloc_callback c); - -/* - * NAME curl_global_cleanup() - * - * DESCRIPTION - * - * curl_global_cleanup() should be invoked exactly once for each application - * that uses libcurl - */ -CURL_EXTERN void curl_global_cleanup(void); - -/* linked-list structure for the CURLOPT_QUOTE option (and other) */ -struct curl_slist { - char *data; - struct curl_slist *next; -}; - -/* - * NAME curl_slist_append() - * - * DESCRIPTION - * - * Appends a string to a linked list. If no list exists, it will be created - * first. Returns the new list, after appending. - */ -CURL_EXTERN struct curl_slist *curl_slist_append(struct curl_slist *, - const char *); - -/* - * NAME curl_slist_free_all() - * - * DESCRIPTION - * - * free a previously built curl_slist. - */ -CURL_EXTERN void curl_slist_free_all(struct curl_slist *); - -/* - * NAME curl_getdate() - * - * DESCRIPTION - * - * Returns the time, in seconds since 1 Jan 1970 of the time string given in - * the first argument. The time argument in the second parameter is unused - * and should be set to NULL. - */ -CURL_EXTERN time_t curl_getdate(const char *p, const time_t *unused); - -/* info about the certificate chain, only for OpenSSL builds. Asked - for with CURLOPT_CERTINFO / CURLINFO_CERTINFO */ -struct curl_certinfo { - int num_of_certs; /* number of certificates with information */ - struct curl_slist **certinfo; /* for each index in this array, there's a - linked list with textual information in the - format "name: value" */ -}; - -#define CURLINFO_STRING 0x100000 -#define CURLINFO_LONG 0x200000 -#define CURLINFO_DOUBLE 0x300000 -#define CURLINFO_SLIST 0x400000 -#define CURLINFO_MASK 0x0fffff -#define CURLINFO_TYPEMASK 0xf00000 - -typedef enum { - CURLINFO_NONE, /* first, never use this */ - CURLINFO_EFFECTIVE_URL = CURLINFO_STRING + 1, - CURLINFO_RESPONSE_CODE = CURLINFO_LONG + 2, - CURLINFO_TOTAL_TIME = CURLINFO_DOUBLE + 3, - CURLINFO_NAMELOOKUP_TIME = CURLINFO_DOUBLE + 4, - CURLINFO_CONNECT_TIME = CURLINFO_DOUBLE + 5, - CURLINFO_PRETRANSFER_TIME = CURLINFO_DOUBLE + 6, - CURLINFO_SIZE_UPLOAD = CURLINFO_DOUBLE + 7, - CURLINFO_SIZE_DOWNLOAD = CURLINFO_DOUBLE + 8, - CURLINFO_SPEED_DOWNLOAD = CURLINFO_DOUBLE + 9, - CURLINFO_SPEED_UPLOAD = CURLINFO_DOUBLE + 10, - CURLINFO_HEADER_SIZE = CURLINFO_LONG + 11, - CURLINFO_REQUEST_SIZE = CURLINFO_LONG + 12, - CURLINFO_SSL_VERIFYRESULT = CURLINFO_LONG + 13, - CURLINFO_FILETIME = CURLINFO_LONG + 14, - CURLINFO_CONTENT_LENGTH_DOWNLOAD = CURLINFO_DOUBLE + 15, - CURLINFO_CONTENT_LENGTH_UPLOAD = CURLINFO_DOUBLE + 16, - CURLINFO_STARTTRANSFER_TIME = CURLINFO_DOUBLE + 17, - CURLINFO_CONTENT_TYPE = CURLINFO_STRING + 18, - CURLINFO_REDIRECT_TIME = CURLINFO_DOUBLE + 19, - CURLINFO_REDIRECT_COUNT = CURLINFO_LONG + 20, - CURLINFO_PRIVATE = CURLINFO_STRING + 21, - CURLINFO_HTTP_CONNECTCODE = CURLINFO_LONG + 22, - CURLINFO_HTTPAUTH_AVAIL = CURLINFO_LONG + 23, - CURLINFO_PROXYAUTH_AVAIL = CURLINFO_LONG + 24, - CURLINFO_OS_ERRNO = CURLINFO_LONG + 25, - CURLINFO_NUM_CONNECTS = CURLINFO_LONG + 26, - CURLINFO_SSL_ENGINES = CURLINFO_SLIST + 27, - CURLINFO_COOKIELIST = CURLINFO_SLIST + 28, - CURLINFO_LASTSOCKET = CURLINFO_LONG + 29, - CURLINFO_FTP_ENTRY_PATH = CURLINFO_STRING + 30, - CURLINFO_REDIRECT_URL = CURLINFO_STRING + 31, - CURLINFO_PRIMARY_IP = CURLINFO_STRING + 32, - CURLINFO_APPCONNECT_TIME = CURLINFO_DOUBLE + 33, - CURLINFO_CERTINFO = CURLINFO_SLIST + 34, - CURLINFO_CONDITION_UNMET = CURLINFO_LONG + 35, - CURLINFO_RTSP_SESSION_ID = CURLINFO_STRING + 36, - CURLINFO_RTSP_CLIENT_CSEQ = CURLINFO_LONG + 37, - CURLINFO_RTSP_SERVER_CSEQ = CURLINFO_LONG + 38, - CURLINFO_RTSP_CSEQ_RECV = CURLINFO_LONG + 39, - CURLINFO_PRIMARY_PORT = CURLINFO_LONG + 40, - CURLINFO_LOCAL_IP = CURLINFO_STRING + 41, - CURLINFO_LOCAL_PORT = CURLINFO_LONG + 42, - /* Fill in new entries below here! */ - - CURLINFO_LASTONE = 42 -} CURLINFO; - -/* CURLINFO_RESPONSE_CODE is the new name for the option previously known as - CURLINFO_HTTP_CODE */ -#define CURLINFO_HTTP_CODE CURLINFO_RESPONSE_CODE - -typedef enum { - CURLCLOSEPOLICY_NONE, /* first, never use this */ - - CURLCLOSEPOLICY_OLDEST, - CURLCLOSEPOLICY_LEAST_RECENTLY_USED, - CURLCLOSEPOLICY_LEAST_TRAFFIC, - CURLCLOSEPOLICY_SLOWEST, - CURLCLOSEPOLICY_CALLBACK, - - CURLCLOSEPOLICY_LAST /* last, never use this */ -} curl_closepolicy; - -#define CURL_GLOBAL_SSL (1<<0) -#define CURL_GLOBAL_WIN32 (1<<1) -#define CURL_GLOBAL_ALL (CURL_GLOBAL_SSL|CURL_GLOBAL_WIN32) -#define CURL_GLOBAL_NOTHING 0 -#define CURL_GLOBAL_DEFAULT CURL_GLOBAL_ALL - - -/***************************************************************************** - * Setup defines, protos etc for the sharing stuff. - */ - -/* Different data locks for a single share */ -typedef enum { - CURL_LOCK_DATA_NONE = 0, - /* CURL_LOCK_DATA_SHARE is used internally to say that - * the locking is just made to change the internal state of the share - * itself. - */ - CURL_LOCK_DATA_SHARE, - CURL_LOCK_DATA_COOKIE, - CURL_LOCK_DATA_DNS, - CURL_LOCK_DATA_SSL_SESSION, - CURL_LOCK_DATA_CONNECT, - CURL_LOCK_DATA_LAST -} curl_lock_data; - -/* Different lock access types */ -typedef enum { - CURL_LOCK_ACCESS_NONE = 0, /* unspecified action */ - CURL_LOCK_ACCESS_SHARED = 1, /* for read perhaps */ - CURL_LOCK_ACCESS_SINGLE = 2, /* for write perhaps */ - CURL_LOCK_ACCESS_LAST /* never use */ -} curl_lock_access; - -typedef void (*curl_lock_function)(CURL *handle, - curl_lock_data data, - curl_lock_access locktype, - void *userptr); -typedef void (*curl_unlock_function)(CURL *handle, - curl_lock_data data, - void *userptr); - -typedef void CURLSH; - -typedef enum { - CURLSHE_OK, /* all is fine */ - CURLSHE_BAD_OPTION, /* 1 */ - CURLSHE_IN_USE, /* 2 */ - CURLSHE_INVALID, /* 3 */ - CURLSHE_NOMEM, /* out of memory */ - CURLSHE_LAST /* never use */ -} CURLSHcode; - -typedef enum { - CURLSHOPT_NONE, /* don't use */ - CURLSHOPT_SHARE, /* specify a data type to share */ - CURLSHOPT_UNSHARE, /* specify which data type to stop sharing */ - CURLSHOPT_LOCKFUNC, /* pass in a 'curl_lock_function' pointer */ - CURLSHOPT_UNLOCKFUNC, /* pass in a 'curl_unlock_function' pointer */ - CURLSHOPT_USERDATA, /* pass in a user data pointer used in the lock/unlock - callback functions */ - CURLSHOPT_LAST /* never use */ -} CURLSHoption; - -CURL_EXTERN CURLSH *curl_share_init(void); -CURL_EXTERN CURLSHcode curl_share_setopt(CURLSH *, CURLSHoption option, ...); -CURL_EXTERN CURLSHcode curl_share_cleanup(CURLSH *); - -/**************************************************************************** - * Structures for querying information about the curl library at runtime. - */ - -typedef enum { - CURLVERSION_FIRST, - CURLVERSION_SECOND, - CURLVERSION_THIRD, - CURLVERSION_FOURTH, - CURLVERSION_LAST /* never actually use this */ -} CURLversion; - -/* The 'CURLVERSION_NOW' is the symbolic name meant to be used by - basically all programs ever that want to get version information. It is - meant to be a built-in version number for what kind of struct the caller - expects. If the struct ever changes, we redefine the NOW to another enum - from above. */ -#define CURLVERSION_NOW CURLVERSION_FOURTH - -typedef struct { - CURLversion age; /* age of the returned struct */ - const char *version; /* LIBCURL_VERSION */ - unsigned int version_num; /* LIBCURL_VERSION_NUM */ - const char *host; /* OS/host/cpu/machine when configured */ - int features; /* bitmask, see defines below */ - const char *ssl_version; /* human readable string */ - long ssl_version_num; /* not used anymore, always 0 */ - const char *libz_version; /* human readable string */ - /* protocols is terminated by an entry with a NULL protoname */ - const char * const *protocols; - - /* The fields below this were added in CURLVERSION_SECOND */ - const char *ares; - int ares_num; - - /* This field was added in CURLVERSION_THIRD */ - const char *libidn; - - /* These field were added in CURLVERSION_FOURTH */ - - /* Same as '_libiconv_version' if built with HAVE_ICONV */ - int iconv_ver_num; - - const char *libssh_version; /* human readable string */ - -} curl_version_info_data; - -#define CURL_VERSION_IPV6 (1<<0) /* IPv6-enabled */ -#define CURL_VERSION_KERBEROS4 (1<<1) /* kerberos auth is supported */ -#define CURL_VERSION_SSL (1<<2) /* SSL options are present */ -#define CURL_VERSION_LIBZ (1<<3) /* libz features are present */ -#define CURL_VERSION_NTLM (1<<4) /* NTLM auth is supported */ -#define CURL_VERSION_GSSNEGOTIATE (1<<5) /* Negotiate auth support */ -#define CURL_VERSION_DEBUG (1<<6) /* built with debug capabilities */ -#define CURL_VERSION_ASYNCHDNS (1<<7) /* asynchronous dns resolves */ -#define CURL_VERSION_SPNEGO (1<<8) /* SPNEGO auth */ -#define CURL_VERSION_LARGEFILE (1<<9) /* supports files bigger than 2GB */ -#define CURL_VERSION_IDN (1<<10) /* International Domain Names support */ -#define CURL_VERSION_SSPI (1<<11) /* SSPI is supported */ -#define CURL_VERSION_CONV (1<<12) /* character conversions supported */ -#define CURL_VERSION_CURLDEBUG (1<<13) /* debug memory tracking supported */ -#define CURL_VERSION_TLSAUTH_SRP (1<<14) /* TLS-SRP auth is supported */ - -/* - * NAME curl_version_info() - * - * DESCRIPTION - * - * This function returns a pointer to a static copy of the version info - * struct. See above. - */ -CURL_EXTERN curl_version_info_data *curl_version_info(CURLversion); - -/* - * NAME curl_easy_strerror() - * - * DESCRIPTION - * - * The curl_easy_strerror function may be used to turn a CURLcode value - * into the equivalent human readable error string. This is useful - * for printing meaningful error messages. - */ -CURL_EXTERN const char *curl_easy_strerror(CURLcode); - -/* - * NAME curl_share_strerror() - * - * DESCRIPTION - * - * The curl_share_strerror function may be used to turn a CURLSHcode value - * into the equivalent human readable error string. This is useful - * for printing meaningful error messages. - */ -CURL_EXTERN const char *curl_share_strerror(CURLSHcode); - -/* - * NAME curl_easy_pause() - * - * DESCRIPTION - * - * The curl_easy_pause function pauses or unpauses transfers. Select the new - * state by setting the bitmask, use the convenience defines below. - * - */ -CURL_EXTERN CURLcode curl_easy_pause(CURL *handle, int bitmask); - -#define CURLPAUSE_RECV (1<<0) -#define CURLPAUSE_RECV_CONT (0) - -#define CURLPAUSE_SEND (1<<2) -#define CURLPAUSE_SEND_CONT (0) - -#define CURLPAUSE_ALL (CURLPAUSE_RECV|CURLPAUSE_SEND) -#define CURLPAUSE_CONT (CURLPAUSE_RECV_CONT|CURLPAUSE_SEND_CONT) - -#ifdef __cplusplus -} -#endif - -/* unfortunately, the easy.h and multi.h include files need options and info - stuff before they can be included! */ -#include "easy.h" /* nothing in curl is fun without the easy stuff */ -#include "multi.h" - -/* the typechecker doesn't work in C++ (yet) */ -#if defined(__GNUC__) && defined(__GNUC_MINOR__) && \ - ((__GNUC__ > 4) || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) && \ - !defined(__cplusplus) && !defined(CURL_DISABLE_TYPECHECK) -#include "typecheck-gcc.h" -#else -#if defined(__STDC__) && (__STDC__ >= 1) -/* This preprocessor magic that replaces a call with the exact same call is - only done to make sure application authors pass exactly three arguments - to these functions. */ -#define curl_easy_setopt(handle,opt,param) curl_easy_setopt(handle,opt,param) -#define curl_easy_getinfo(handle,info,arg) curl_easy_getinfo(handle,info,arg) -#define curl_share_setopt(share,opt,param) curl_share_setopt(share,opt,param) -#define curl_multi_setopt(handle,opt,param) curl_multi_setopt(handle,opt,param) -#endif /* __STDC__ >= 1 */ -#endif /* gcc >= 4.3 && !__cplusplus */ - -#endif /* __CURL_CURL_H */ diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/curlbuild.h.cmake.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/curlbuild.h.cmake.svn-base deleted file mode 100644 index 3aa772fc..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/curlbuild.h.cmake.svn-base +++ /dev/null @@ -1,180 +0,0 @@ -#ifndef __CURL_CURLBUILD_H -#define __CURL_CURLBUILD_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) 1998 - 2008, Daniel Stenberg, , et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ***************************************************************************/ - -/* ================================================================ */ -/* NOTES FOR CONFIGURE CAPABLE SYSTEMS */ -/* ================================================================ */ - -/* - * NOTE 1: - * ------- - * - * Nothing in this file is intended to be modified or adjusted by the - * curl library user nor by the curl library builder. - * - * If you think that something actually needs to be changed, adjusted - * or fixed in this file, then, report it on the libcurl development - * mailing list: http://cool.haxx.se/mailman/listinfo/curl-library/ - * - * This header file shall only export symbols which are 'curl' or 'CURL' - * prefixed, otherwise public name space would be polluted. - * - * NOTE 2: - * ------- - * - * Right now you might be staring at file include/curl/curlbuild.h.in or - * at file include/curl/curlbuild.h, this is due to the following reason: - * - * On systems capable of running the configure script, the configure process - * will overwrite the distributed include/curl/curlbuild.h file with one that - * is suitable and specific to the library being configured and built, which - * is generated from the include/curl/curlbuild.h.in template file. - * - */ - -/* ================================================================ */ -/* DEFINITION OF THESE SYMBOLS SHALL NOT TAKE PLACE ANYWHERE ELSE */ -/* ================================================================ */ - -#ifdef CURL_SIZEOF_LONG -# error "CURL_SIZEOF_LONG shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SIZEOF_LONG_already_defined -#endif - -#ifdef CURL_TYPEOF_CURL_SOCKLEN_T -# error "CURL_TYPEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_TYPEOF_CURL_SOCKLEN_T_already_defined -#endif - -#ifdef CURL_SIZEOF_CURL_SOCKLEN_T -# error "CURL_SIZEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SIZEOF_CURL_SOCKLEN_T_already_defined -#endif -#ifdef CURL_TYPEOF_CURL_OFF_T -# error "CURL_TYPEOF_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_TYPEOF_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_FORMAT_CURL_OFF_T -# error "CURL_FORMAT_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_FORMAT_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_FORMAT_CURL_OFF_TU -# error "CURL_FORMAT_CURL_OFF_TU shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_FORMAT_CURL_OFF_TU_already_defined -#endif - -#ifdef CURL_FORMAT_OFF_T -# error "CURL_FORMAT_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_FORMAT_OFF_T_already_defined -#endif - -#ifdef CURL_SIZEOF_CURL_OFF_T -# error "CURL_SIZEOF_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SIZEOF_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_SUFFIX_CURL_OFF_T -# error "CURL_SUFFIX_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_SUFFIX_CURL_OFF_TU -# error "CURL_SUFFIX_CURL_OFF_TU shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_TU_already_defined -#endif - -/* ================================================================ */ -/* EXTERNAL INTERFACE SETTINGS FOR CONFIGURE CAPABLE SYSTEMS ONLY */ -/* ================================================================ */ - -/* Configure process defines this to 1 when it finds out that system */ -/* header file sys/types.h must be included by the external interface. */ -#cmakedefine CURL_PULL_SYS_TYPES_H ${CURL_PULL_SYS_TYPES_H} -#ifdef CURL_PULL_SYS_TYPES_H -# include -#endif - -/* Configure process defines this to 1 when it finds out that system */ -/* header file stdint.h must be included by the external interface. */ -#cmakedefine CURL_PULL_STDINT_H ${CURL_PULL_STDINT_H} -#ifdef CURL_PULL_STDINT_H -# include -#endif - -/* Configure process defines this to 1 when it finds out that system */ -/* header file inttypes.h must be included by the external interface. */ -#cmakedefine CURL_PULL_INTTYPES_H ${CURL_PULL_INTTYPES_H} -#ifdef CURL_PULL_INTTYPES_H -# include -#endif - -/* The size of `long', as computed by sizeof. */ -#cmakedefine CURL_SIZEOF_LONG ${CURL_SIZEOF_LONG} - -/* Integral data type used for curl_socklen_t. */ -#cmakedefine CURL_TYPEOF_CURL_SOCKLEN_T ${CURL_TYPEOF_CURL_SOCKLEN_T} - -/* on windows socklen_t is in here */ -#ifdef _WIN32 -# include -# include -#endif - -#ifdef HAVE_SYS_SOCKET_H -# include -#endif - -/* Data type definition of curl_socklen_t. */ -typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t; - -/* The size of `curl_socklen_t', as computed by sizeof. */ -#cmakedefine CURL_SIZEOF_CURL_SOCKLEN_T ${CURL_SIZEOF_CURL_SOCKLEN_T} - -/* Signed integral data type used for curl_off_t. */ -#cmakedefine CURL_TYPEOF_CURL_OFF_T ${CURL_TYPEOF_CURL_OFF_T} - -/* Data type definition of curl_off_t. */ -typedef CURL_TYPEOF_CURL_OFF_T curl_off_t; - -/* curl_off_t formatting string directive without "%" conversion specifier. */ -#cmakedefine CURL_FORMAT_CURL_OFF_T "${CURL_FORMAT_CURL_OFF_T}" - -/* unsigned curl_off_t formatting string without "%" conversion specifier. */ -#cmakedefine CURL_FORMAT_CURL_OFF_TU "${CURL_FORMAT_CURL_OFF_TU}" - -/* curl_off_t formatting string directive with "%" conversion specifier. */ -#cmakedefine CURL_FORMAT_OFF_T "${CURL_FORMAT_OFF_T}" - -/* The size of `curl_off_t', as computed by sizeof. */ -#cmakedefine CURL_SIZEOF_CURL_OFF_T ${CURL_SIZEOF_CURL_OFF_T} - -/* curl_off_t constant suffix. */ -#cmakedefine CURL_SUFFIX_CURL_OFF_T ${CURL_SUFFIX_CURL_OFF_T} - -/* unsigned curl_off_t constant suffix. */ -#cmakedefine CURL_SUFFIX_CURL_OFF_TU ${CURL_SUFFIX_CURL_OFF_TU} - -#endif /* __CURL_CURLBUILD_H */ diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/curlbuild.h.in.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/curlbuild.h.in.svn-base deleted file mode 100644 index fe348f40..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/curlbuild.h.in.svn-base +++ /dev/null @@ -1,190 +0,0 @@ -#ifndef __CURL_CURLBUILD_H -#define __CURL_CURLBUILD_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) 1998 - 2011, Daniel Stenberg, , et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ***************************************************************************/ - -/* ================================================================ */ -/* NOTES FOR CONFIGURE CAPABLE SYSTEMS */ -/* ================================================================ */ - -/* - * NOTE 1: - * ------- - * - * Nothing in this file is intended to be modified or adjusted by the - * curl library user nor by the curl library builder. - * - * If you think that something actually needs to be changed, adjusted - * or fixed in this file, then, report it on the libcurl development - * mailing list: http://cool.haxx.se/mailman/listinfo/curl-library/ - * - * This header file shall only export symbols which are 'curl' or 'CURL' - * prefixed, otherwise public name space would be polluted. - * - * NOTE 2: - * ------- - * - * Right now you might be staring at file include/curl/curlbuild.h.in or - * at file include/curl/curlbuild.h, this is due to the following reason: - * - * On systems capable of running the configure script, the configure process - * will overwrite the distributed include/curl/curlbuild.h file with one that - * is suitable and specific to the library being configured and built, which - * is generated from the include/curl/curlbuild.h.in template file. - * - */ - -/* ================================================================ */ -/* DEFINITION OF THESE SYMBOLS SHALL NOT TAKE PLACE ANYWHERE ELSE */ -/* ================================================================ */ - -#ifdef CURL_SIZEOF_LONG -#error "CURL_SIZEOF_LONG shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SIZEOF_LONG_already_defined -#endif - -#ifdef CURL_TYPEOF_CURL_SOCKLEN_T -#error "CURL_TYPEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_TYPEOF_CURL_SOCKLEN_T_already_defined -#endif - -#ifdef CURL_SIZEOF_CURL_SOCKLEN_T -#error "CURL_SIZEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SIZEOF_CURL_SOCKLEN_T_already_defined -#endif - -#ifdef CURL_TYPEOF_CURL_OFF_T -#error "CURL_TYPEOF_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_TYPEOF_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_FORMAT_CURL_OFF_T -#error "CURL_FORMAT_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_FORMAT_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_FORMAT_CURL_OFF_TU -#error "CURL_FORMAT_CURL_OFF_TU shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_FORMAT_CURL_OFF_TU_already_defined -#endif - -#ifdef CURL_FORMAT_OFF_T -#error "CURL_FORMAT_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_FORMAT_OFF_T_already_defined -#endif - -#ifdef CURL_SIZEOF_CURL_OFF_T -#error "CURL_SIZEOF_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SIZEOF_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_SUFFIX_CURL_OFF_T -#error "CURL_SUFFIX_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_SUFFIX_CURL_OFF_TU -#error "CURL_SUFFIX_CURL_OFF_TU shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_TU_already_defined -#endif - -/* ================================================================ */ -/* EXTERNAL INTERFACE SETTINGS FOR CONFIGURE CAPABLE SYSTEMS ONLY */ -/* ================================================================ */ - -/* Configure process defines this to 1 when it finds out that system */ -/* header file ws2tcpip.h must be included by the external interface. */ -#undef CURL_PULL_WS2TCPIP_H -#ifdef CURL_PULL_WS2TCPIP_H -# ifndef WIN32_LEAN_AND_MEAN -# define WIN32_LEAN_AND_MEAN -# endif -# include -# include -# include -#endif - -/* Configure process defines this to 1 when it finds out that system */ -/* header file sys/types.h must be included by the external interface. */ -#undef CURL_PULL_SYS_TYPES_H -#ifdef CURL_PULL_SYS_TYPES_H -# include -#endif - -/* Configure process defines this to 1 when it finds out that system */ -/* header file stdint.h must be included by the external interface. */ -#undef CURL_PULL_STDINT_H -#ifdef CURL_PULL_STDINT_H -# include -#endif - -/* Configure process defines this to 1 when it finds out that system */ -/* header file inttypes.h must be included by the external interface. */ -#undef CURL_PULL_INTTYPES_H -#ifdef CURL_PULL_INTTYPES_H -# include -#endif - -/* Configure process defines this to 1 when it finds out that system */ -/* header file sys/socket.h must be included by the external interface. */ -#undef CURL_PULL_SYS_SOCKET_H -#ifdef CURL_PULL_SYS_SOCKET_H -# include -#endif - -/* The size of `long', as computed by sizeof. */ -#undef CURL_SIZEOF_LONG - -/* Integral data type used for curl_socklen_t. */ -#undef CURL_TYPEOF_CURL_SOCKLEN_T - -/* The size of `curl_socklen_t', as computed by sizeof. */ -#undef CURL_SIZEOF_CURL_SOCKLEN_T - -/* Data type definition of curl_socklen_t. */ -typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t; - -/* Signed integral data type used for curl_off_t. */ -#undef CURL_TYPEOF_CURL_OFF_T - -/* Data type definition of curl_off_t. */ -typedef CURL_TYPEOF_CURL_OFF_T curl_off_t; - -/* curl_off_t formatting string directive without "%" conversion specifier. */ -#undef CURL_FORMAT_CURL_OFF_T - -/* unsigned curl_off_t formatting string without "%" conversion specifier. */ -#undef CURL_FORMAT_CURL_OFF_TU - -/* curl_off_t formatting string directive with "%" conversion specifier. */ -#undef CURL_FORMAT_OFF_T - -/* The size of `curl_off_t', as computed by sizeof. */ -#undef CURL_SIZEOF_CURL_OFF_T - -/* curl_off_t constant suffix. */ -#undef CURL_SUFFIX_CURL_OFF_T - -/* unsigned curl_off_t constant suffix. */ -#undef CURL_SUFFIX_CURL_OFF_TU - -#endif /* __CURL_CURLBUILD_H */ diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/curlbuild.h.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/curlbuild.h.svn-base deleted file mode 100644 index d0b32acb..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/curlbuild.h.svn-base +++ /dev/null @@ -1,583 +0,0 @@ -#ifndef __CURL_CURLBUILD_H -#define __CURL_CURLBUILD_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) 1998 - 2010, Daniel Stenberg, , et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ***************************************************************************/ - -/* ================================================================ */ -/* NOTES FOR CONFIGURE CAPABLE SYSTEMS */ -/* ================================================================ */ - -/* - * NOTE 1: - * ------- - * - * See file include/curl/curlbuild.h.in, run configure, and forget - * that this file exists it is only used for non-configure systems. - * But you can keep reading if you want ;-) - * - */ - -/* ================================================================ */ -/* NOTES FOR NON-CONFIGURE SYSTEMS */ -/* ================================================================ */ - -/* - * NOTE 1: - * ------- - * - * Nothing in this file is intended to be modified or adjusted by the - * curl library user nor by the curl library builder. - * - * If you think that something actually needs to be changed, adjusted - * or fixed in this file, then, report it on the libcurl development - * mailing list: http://cool.haxx.se/mailman/listinfo/curl-library/ - * - * Try to keep one section per platform, compiler and architecture, - * otherwise, if an existing section is reused for a different one and - * later on the original is adjusted, probably the piggybacking one can - * be adversely changed. - * - * In order to differentiate between platforms/compilers/architectures - * use only compiler built in predefined preprocessor symbols. - * - * This header file shall only export symbols which are 'curl' or 'CURL' - * prefixed, otherwise public name space would be polluted. - * - * NOTE 2: - * ------- - * - * For any given platform/compiler curl_off_t must be typedef'ed to a - * 64-bit wide signed integral data type. The width of this data type - * must remain constant and independent of any possible large file - * support settings. - * - * As an exception to the above, curl_off_t shall be typedef'ed to a - * 32-bit wide signed integral data type if there is no 64-bit type. - * - * As a general rule, curl_off_t shall not be mapped to off_t. This - * rule shall only be violated if off_t is the only 64-bit data type - * available and the size of off_t is independent of large file support - * settings. Keep your build on the safe side avoiding an off_t gating. - * If you have a 64-bit off_t then take for sure that another 64-bit - * data type exists, dig deeper and you will find it. - * - * NOTE 3: - * ------- - * - * Right now you might be staring at file include/curl/curlbuild.h.dist or - * at file include/curl/curlbuild.h, this is due to the following reason: - * file include/curl/curlbuild.h.dist is renamed to include/curl/curlbuild.h - * when the libcurl source code distribution archive file is created. - * - * File include/curl/curlbuild.h.dist is not included in the distribution - * archive. File include/curl/curlbuild.h is not present in the git tree. - * - * The distributed include/curl/curlbuild.h file is only intended to be used - * on systems which can not run the also distributed configure script. - * - * On systems capable of running the configure script, the configure process - * will overwrite the distributed include/curl/curlbuild.h file with one that - * is suitable and specific to the library being configured and built, which - * is generated from the include/curl/curlbuild.h.in template file. - * - * If you check out from git on a non-configure platform, you must run the - * appropriate buildconf* script to set up curlbuild.h and other local files. - * - */ - -/* ================================================================ */ -/* DEFINITION OF THESE SYMBOLS SHALL NOT TAKE PLACE ANYWHERE ELSE */ -/* ================================================================ */ - -#ifdef CURL_SIZEOF_LONG -# error "CURL_SIZEOF_LONG shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SIZEOF_LONG_already_defined -#endif - -#ifdef CURL_TYPEOF_CURL_SOCKLEN_T -# error "CURL_TYPEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_TYPEOF_CURL_SOCKLEN_T_already_defined -#endif - -#ifdef CURL_SIZEOF_CURL_SOCKLEN_T -# error "CURL_SIZEOF_CURL_SOCKLEN_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SIZEOF_CURL_SOCKLEN_T_already_defined -#endif - -#ifdef CURL_TYPEOF_CURL_OFF_T -# error "CURL_TYPEOF_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_TYPEOF_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_FORMAT_CURL_OFF_T -# error "CURL_FORMAT_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_FORMAT_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_FORMAT_CURL_OFF_TU -# error "CURL_FORMAT_CURL_OFF_TU shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_FORMAT_CURL_OFF_TU_already_defined -#endif - -#ifdef CURL_FORMAT_OFF_T -# error "CURL_FORMAT_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_FORMAT_OFF_T_already_defined -#endif - -#ifdef CURL_SIZEOF_CURL_OFF_T -# error "CURL_SIZEOF_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SIZEOF_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_SUFFIX_CURL_OFF_T -# error "CURL_SUFFIX_CURL_OFF_T shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_T_already_defined -#endif - -#ifdef CURL_SUFFIX_CURL_OFF_TU -# error "CURL_SUFFIX_CURL_OFF_TU shall not be defined except in curlbuild.h" - Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_TU_already_defined -#endif - -/* ================================================================ */ -/* EXTERNAL INTERFACE SETTINGS FOR NON-CONFIGURE SYSTEMS ONLY */ -/* ================================================================ */ - -#if defined(__DJGPP__) || defined(__GO32__) -# if defined(__DJGPP__) && (__DJGPP__ > 1) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long long -# define CURL_FORMAT_CURL_OFF_T "lld" -# define CURL_FORMAT_CURL_OFF_TU "llu" -# define CURL_FORMAT_OFF_T "%lld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T LL -# define CURL_SUFFIX_CURL_OFF_TU ULL -# else -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 4 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# endif -# define CURL_TYPEOF_CURL_SOCKLEN_T int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -#elif defined(__SALFORDC__) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 4 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# define CURL_TYPEOF_CURL_SOCKLEN_T int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -#elif defined(__BORLANDC__) -# if (__BORLANDC__ < 0x520) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 4 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# else -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T __int64 -# define CURL_FORMAT_CURL_OFF_T "I64d" -# define CURL_FORMAT_CURL_OFF_TU "I64u" -# define CURL_FORMAT_OFF_T "%I64d" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T i64 -# define CURL_SUFFIX_CURL_OFF_TU ui64 -# endif -# define CURL_TYPEOF_CURL_SOCKLEN_T int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -#elif defined(__TURBOC__) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 4 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# define CURL_TYPEOF_CURL_SOCKLEN_T int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -#elif defined(__WATCOMC__) -# if defined(__386__) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T __int64 -# define CURL_FORMAT_CURL_OFF_T "I64d" -# define CURL_FORMAT_CURL_OFF_TU "I64u" -# define CURL_FORMAT_OFF_T "%I64d" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T i64 -# define CURL_SUFFIX_CURL_OFF_TU ui64 -# else -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 4 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# endif -# define CURL_TYPEOF_CURL_SOCKLEN_T int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -#elif defined(__POCC__) -# if (__POCC__ < 280) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 4 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# elif defined(_MSC_VER) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T __int64 -# define CURL_FORMAT_CURL_OFF_T "I64d" -# define CURL_FORMAT_CURL_OFF_TU "I64u" -# define CURL_FORMAT_OFF_T "%I64d" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T i64 -# define CURL_SUFFIX_CURL_OFF_TU ui64 -# else -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long long -# define CURL_FORMAT_CURL_OFF_T "lld" -# define CURL_FORMAT_CURL_OFF_TU "llu" -# define CURL_FORMAT_OFF_T "%lld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T LL -# define CURL_SUFFIX_CURL_OFF_TU ULL -# endif -# define CURL_TYPEOF_CURL_SOCKLEN_T int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -#elif defined(__LCC__) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 4 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# define CURL_TYPEOF_CURL_SOCKLEN_T int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -#elif defined(__SYMBIAN32__) -# if defined(__EABI__) /* Treat all ARM compilers equally */ -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long long -# define CURL_FORMAT_CURL_OFF_T "lld" -# define CURL_FORMAT_CURL_OFF_TU "llu" -# define CURL_FORMAT_OFF_T "%lld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T LL -# define CURL_SUFFIX_CURL_OFF_TU ULL -# elif defined(__CW32__) -# pragma longlong on -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long long -# define CURL_FORMAT_CURL_OFF_T "lld" -# define CURL_FORMAT_CURL_OFF_TU "llu" -# define CURL_FORMAT_OFF_T "%lld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T LL -# define CURL_SUFFIX_CURL_OFF_TU ULL -# elif defined(__VC32__) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T __int64 -# define CURL_FORMAT_CURL_OFF_T "lld" -# define CURL_FORMAT_CURL_OFF_TU "llu" -# define CURL_FORMAT_OFF_T "%lld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T LL -# define CURL_SUFFIX_CURL_OFF_TU ULL -# endif -# define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -#elif defined(__MWERKS__) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long long -# define CURL_FORMAT_CURL_OFF_T "lld" -# define CURL_FORMAT_CURL_OFF_TU "llu" -# define CURL_FORMAT_OFF_T "%lld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T LL -# define CURL_SUFFIX_CURL_OFF_TU ULL -# define CURL_TYPEOF_CURL_SOCKLEN_T int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -#elif defined(_WIN32_WCE) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T __int64 -# define CURL_FORMAT_CURL_OFF_T "I64d" -# define CURL_FORMAT_CURL_OFF_TU "I64u" -# define CURL_FORMAT_OFF_T "%I64d" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T i64 -# define CURL_SUFFIX_CURL_OFF_TU ui64 -# define CURL_TYPEOF_CURL_SOCKLEN_T int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -#elif defined(__MINGW32__) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long long -# define CURL_FORMAT_CURL_OFF_T "I64d" -# define CURL_FORMAT_CURL_OFF_TU "I64u" -# define CURL_FORMAT_OFF_T "%I64d" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T LL -# define CURL_SUFFIX_CURL_OFF_TU ULL -# define CURL_TYPEOF_CURL_SOCKLEN_T int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -#elif defined(__VMS) -# if defined(__VAX) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 4 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# else -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long long -# define CURL_FORMAT_CURL_OFF_T "lld" -# define CURL_FORMAT_CURL_OFF_TU "llu" -# define CURL_FORMAT_OFF_T "%lld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T LL -# define CURL_SUFFIX_CURL_OFF_TU ULL -# endif -# define CURL_TYPEOF_CURL_SOCKLEN_T unsigned int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -#elif defined(__OS400__) -# if defined(__ILEC400__) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long long -# define CURL_FORMAT_CURL_OFF_T "lld" -# define CURL_FORMAT_CURL_OFF_TU "llu" -# define CURL_FORMAT_OFF_T "%lld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T LL -# define CURL_SUFFIX_CURL_OFF_TU ULL -# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 -# define CURL_PULL_SYS_TYPES_H 1 -# define CURL_PULL_SYS_SOCKET_H 1 -# endif - -#elif defined(__MVS__) -# if defined(__IBMC__) || defined(__IBMCPP__) -# if defined(_ILP32) -# define CURL_SIZEOF_LONG 4 -# elif defined(_LP64) -# define CURL_SIZEOF_LONG 8 -# endif -# if defined(_LONG_LONG) -# define CURL_TYPEOF_CURL_OFF_T long long -# define CURL_FORMAT_CURL_OFF_T "lld" -# define CURL_FORMAT_CURL_OFF_TU "llu" -# define CURL_FORMAT_OFF_T "%lld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T LL -# define CURL_SUFFIX_CURL_OFF_TU ULL -# elif defined(_LP64) -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# else -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 4 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# endif -# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 -# define CURL_PULL_SYS_TYPES_H 1 -# define CURL_PULL_SYS_SOCKET_H 1 -# endif - -#elif defined(__370__) -# if defined(__IBMC__) || defined(__IBMCPP__) -# if defined(_ILP32) -# define CURL_SIZEOF_LONG 4 -# elif defined(_LP64) -# define CURL_SIZEOF_LONG 8 -# endif -# if defined(_LONG_LONG) -# define CURL_TYPEOF_CURL_OFF_T long long -# define CURL_FORMAT_CURL_OFF_T "lld" -# define CURL_FORMAT_CURL_OFF_TU "llu" -# define CURL_FORMAT_OFF_T "%lld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T LL -# define CURL_SUFFIX_CURL_OFF_TU ULL -# elif defined(_LP64) -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# else -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 4 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# endif -# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 -# define CURL_PULL_SYS_TYPES_H 1 -# define CURL_PULL_SYS_SOCKET_H 1 -# endif - -#elif defined(TPF) -# define CURL_SIZEOF_LONG 8 -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# define CURL_TYPEOF_CURL_SOCKLEN_T int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -/* ===================================== */ -/* KEEP MSVC THE PENULTIMATE ENTRY */ -/* ===================================== */ - -#elif defined(_MSC_VER) -# if (_MSC_VER >= 900) && (_INTEGRAL_MAX_BITS >= 64) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T __int64 -# define CURL_FORMAT_CURL_OFF_T "I64d" -# define CURL_FORMAT_CURL_OFF_TU "I64u" -# define CURL_FORMAT_OFF_T "%I64d" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T i64 -# define CURL_SUFFIX_CURL_OFF_TU ui64 -# else -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 4 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# endif -# define CURL_TYPEOF_CURL_SOCKLEN_T int -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 - -/* ===================================== */ -/* KEEP GENERIC GCC THE LAST ENTRY */ -/* ===================================== */ - -#elif defined(__GNUC__) -# if defined(__i386__) || defined(__ppc__) -# define CURL_SIZEOF_LONG 4 -# define CURL_TYPEOF_CURL_OFF_T long long -# define CURL_FORMAT_CURL_OFF_T "lld" -# define CURL_FORMAT_CURL_OFF_TU "llu" -# define CURL_FORMAT_OFF_T "%lld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T LL -# define CURL_SUFFIX_CURL_OFF_TU ULL -# elif defined(__x86_64__) || defined(__ppc64__) -# define CURL_SIZEOF_LONG 8 -# define CURL_TYPEOF_CURL_OFF_T long -# define CURL_FORMAT_CURL_OFF_T "ld" -# define CURL_FORMAT_CURL_OFF_TU "lu" -# define CURL_FORMAT_OFF_T "%ld" -# define CURL_SIZEOF_CURL_OFF_T 8 -# define CURL_SUFFIX_CURL_OFF_T L -# define CURL_SUFFIX_CURL_OFF_TU UL -# endif -# define CURL_TYPEOF_CURL_SOCKLEN_T socklen_t -# define CURL_SIZEOF_CURL_SOCKLEN_T 4 -# define CURL_PULL_SYS_TYPES_H 1 -# define CURL_PULL_SYS_SOCKET_H 1 - -#else -# error "Unknown non-configure build target!" - Error Compilation_aborted_Unknown_non_configure_build_target -#endif - -/* CURL_PULL_SYS_TYPES_H is defined above when inclusion of header file */ -/* sys/types.h is required here to properly make type definitions below. */ -#ifdef CURL_PULL_SYS_TYPES_H -# include -#endif - -/* CURL_PULL_SYS_SOCKET_H is defined above when inclusion of header file */ -/* sys/socket.h is required here to properly make type definitions below. */ -#ifdef CURL_PULL_SYS_SOCKET_H -# include -#endif - -/* Data type definition of curl_socklen_t. */ - -#ifdef CURL_TYPEOF_CURL_SOCKLEN_T - typedef CURL_TYPEOF_CURL_SOCKLEN_T curl_socklen_t; -#endif - -/* Data type definition of curl_off_t. */ - -#ifdef CURL_TYPEOF_CURL_OFF_T - typedef CURL_TYPEOF_CURL_OFF_T curl_off_t; -#endif - -#endif /* __CURL_CURLBUILD_H */ diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/curlrules.h.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/curlrules.h.svn-base deleted file mode 100644 index cbc12fdd..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/curlrules.h.svn-base +++ /dev/null @@ -1,261 +0,0 @@ -#ifndef __CURL_CURLRULES_H -#define __CURL_CURLRULES_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) 1998 - 2011, Daniel Stenberg, , et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ***************************************************************************/ - -/* ================================================================ */ -/* COMPILE TIME SANITY CHECKS */ -/* ================================================================ */ - -/* - * NOTE 1: - * ------- - * - * All checks done in this file are intentionally placed in a public - * header file which is pulled by curl/curl.h when an application is - * being built using an already built libcurl library. Additionally - * this file is also included and used when building the library. - * - * If compilation fails on this file it is certainly sure that the - * problem is elsewhere. It could be a problem in the curlbuild.h - * header file, or simply that you are using different compilation - * settings than those used to build the library. - * - * Nothing in this file is intended to be modified or adjusted by the - * curl library user nor by the curl library builder. - * - * Do not deactivate any check, these are done to make sure that the - * library is properly built and used. - * - * You can find further help on the libcurl development mailing list: - * http://cool.haxx.se/mailman/listinfo/curl-library/ - * - * NOTE 2 - * ------ - * - * Some of the following compile time checks are based on the fact - * that the dimension of a constant array can not be a negative one. - * In this way if the compile time verification fails, the compilation - * will fail issuing an error. The error description wording is compiler - * dependent but it will be quite similar to one of the following: - * - * "negative subscript or subscript is too large" - * "array must have at least one element" - * "-1 is an illegal array size" - * "size of array is negative" - * - * If you are building an application which tries to use an already - * built libcurl library and you are getting this kind of errors on - * this file, it is a clear indication that there is a mismatch between - * how the library was built and how you are trying to use it for your - * application. Your already compiled or binary library provider is the - * only one who can give you the details you need to properly use it. - */ - -/* - * Verify that some macros are actually defined. - */ - -#ifndef CURL_SIZEOF_LONG -# error "CURL_SIZEOF_LONG definition is missing!" - Error Compilation_aborted_CURL_SIZEOF_LONG_is_missing -#endif - -#ifndef CURL_TYPEOF_CURL_SOCKLEN_T -# error "CURL_TYPEOF_CURL_SOCKLEN_T definition is missing!" - Error Compilation_aborted_CURL_TYPEOF_CURL_SOCKLEN_T_is_missing -#endif - -#ifndef CURL_SIZEOF_CURL_SOCKLEN_T -# error "CURL_SIZEOF_CURL_SOCKLEN_T definition is missing!" - Error Compilation_aborted_CURL_SIZEOF_CURL_SOCKLEN_T_is_missing -#endif - -#ifndef CURL_TYPEOF_CURL_OFF_T -# error "CURL_TYPEOF_CURL_OFF_T definition is missing!" - Error Compilation_aborted_CURL_TYPEOF_CURL_OFF_T_is_missing -#endif - -#ifndef CURL_FORMAT_CURL_OFF_T -# error "CURL_FORMAT_CURL_OFF_T definition is missing!" - Error Compilation_aborted_CURL_FORMAT_CURL_OFF_T_is_missing -#endif - -#ifndef CURL_FORMAT_CURL_OFF_TU -# error "CURL_FORMAT_CURL_OFF_TU definition is missing!" - Error Compilation_aborted_CURL_FORMAT_CURL_OFF_TU_is_missing -#endif - -#ifndef CURL_FORMAT_OFF_T -# error "CURL_FORMAT_OFF_T definition is missing!" - Error Compilation_aborted_CURL_FORMAT_OFF_T_is_missing -#endif - -#ifndef CURL_SIZEOF_CURL_OFF_T -# error "CURL_SIZEOF_CURL_OFF_T definition is missing!" - Error Compilation_aborted_CURL_SIZEOF_CURL_OFF_T_is_missing -#endif - -#ifndef CURL_SUFFIX_CURL_OFF_T -# error "CURL_SUFFIX_CURL_OFF_T definition is missing!" - Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_T_is_missing -#endif - -#ifndef CURL_SUFFIX_CURL_OFF_TU -# error "CURL_SUFFIX_CURL_OFF_TU definition is missing!" - Error Compilation_aborted_CURL_SUFFIX_CURL_OFF_TU_is_missing -#endif - -/* - * Macros private to this header file. - */ - -#define CurlchkszEQ(t, s) sizeof(t) == s ? 1 : -1 - -#define CurlchkszGE(t1, t2) sizeof(t1) >= sizeof(t2) ? 1 : -1 - -/* - * Verify that the size previously defined and expected for long - * is the same as the one reported by sizeof() at compile time. - */ - -typedef char - __curl_rule_01__ - [CurlchkszEQ(long, CURL_SIZEOF_LONG)]; - -/* - * Verify that the size previously defined and expected for - * curl_off_t is actually the the same as the one reported - * by sizeof() at compile time. - */ - -typedef char - __curl_rule_02__ - [CurlchkszEQ(curl_off_t, CURL_SIZEOF_CURL_OFF_T)]; - -/* - * Verify at compile time that the size of curl_off_t as reported - * by sizeof() is greater or equal than the one reported for long - * for the current compilation. - */ - -typedef char - __curl_rule_03__ - [CurlchkszGE(curl_off_t, long)]; - -/* - * Verify that the size previously defined and expected for - * curl_socklen_t is actually the the same as the one reported - * by sizeof() at compile time. - */ - -typedef char - __curl_rule_04__ - [CurlchkszEQ(curl_socklen_t, CURL_SIZEOF_CURL_SOCKLEN_T)]; - -/* - * Verify at compile time that the size of curl_socklen_t as reported - * by sizeof() is greater or equal than the one reported for int for - * the current compilation. - */ - -typedef char - __curl_rule_05__ - [CurlchkszGE(curl_socklen_t, int)]; - -/* ================================================================ */ -/* EXTERNALLY AND INTERNALLY VISIBLE DEFINITIONS */ -/* ================================================================ */ - -/* - * CURL_ISOCPP and CURL_OFF_T_C definitions are done here in order to allow - * these to be visible and exported by the external libcurl interface API, - * while also making them visible to the library internals, simply including - * setup.h, without actually needing to include curl.h internally. - * If some day this section would grow big enough, all this should be moved - * to its own header file. - */ - -/* - * Figure out if we can use the ## preprocessor operator, which is supported - * by ISO/ANSI C and C++. Some compilers support it without setting __STDC__ - * or __cplusplus so we need to carefully check for them too. - */ - -#if defined(__STDC__) || defined(_MSC_VER) || defined(__cplusplus) || \ - defined(__HP_aCC) || defined(__BORLANDC__) || defined(__LCC__) || \ - defined(__POCC__) || defined(__SALFORDC__) || defined(__HIGHC__) || \ - defined(__ILEC400__) - /* This compiler is believed to have an ISO compatible preprocessor */ -#define CURL_ISOCPP -#else - /* This compiler is believed NOT to have an ISO compatible preprocessor */ -#undef CURL_ISOCPP -#endif - -/* - * Macros for minimum-width signed and unsigned curl_off_t integer constants. - */ - -#if defined(__BORLANDC__) && (__BORLANDC__ == 0x0551) -# define __CURL_OFF_T_C_HLPR2(x) x -# define __CURL_OFF_T_C_HLPR1(x) __CURL_OFF_T_C_HLPR2(x) -# define CURL_OFF_T_C(Val) __CURL_OFF_T_C_HLPR1(Val) ## \ - __CURL_OFF_T_C_HLPR1(CURL_SUFFIX_CURL_OFF_T) -# define CURL_OFF_TU_C(Val) __CURL_OFF_T_C_HLPR1(Val) ## \ - __CURL_OFF_T_C_HLPR1(CURL_SUFFIX_CURL_OFF_TU) -#else -# ifdef CURL_ISOCPP -# define __CURL_OFF_T_C_HLPR2(Val,Suffix) Val ## Suffix -# else -# define __CURL_OFF_T_C_HLPR2(Val,Suffix) Val/**/Suffix -# endif -# define __CURL_OFF_T_C_HLPR1(Val,Suffix) __CURL_OFF_T_C_HLPR2(Val,Suffix) -# define CURL_OFF_T_C(Val) __CURL_OFF_T_C_HLPR1(Val,CURL_SUFFIX_CURL_OFF_T) -# define CURL_OFF_TU_C(Val) __CURL_OFF_T_C_HLPR1(Val,CURL_SUFFIX_CURL_OFF_TU) -#endif - -/* - * Get rid of macros private to this header file. - */ - -#undef CurlchkszEQ -#undef CurlchkszGE - -/* - * Get rid of macros not intended to exist beyond this point. - */ - -#undef CURL_PULL_WS2TCPIP_H -#undef CURL_PULL_SYS_TYPES_H -#undef CURL_PULL_SYS_SOCKET_H -#undef CURL_PULL_STDINT_H -#undef CURL_PULL_INTTYPES_H - -#undef CURL_TYPEOF_CURL_SOCKLEN_T -#undef CURL_TYPEOF_CURL_OFF_T - -#ifdef CURL_NO_OLDIES -#undef CURL_FORMAT_OFF_T /* not required since 7.19.0 - obsoleted in 7.20.0 */ -#endif - -#endif /* __CURL_CURLRULES_H */ diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/curlver.h.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/curlver.h.svn-base deleted file mode 100644 index bb90c8c0..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/curlver.h.svn-base +++ /dev/null @@ -1,69 +0,0 @@ -#ifndef __CURL_CURLVER_H -#define __CURL_CURLVER_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) 1998 - 2011, Daniel Stenberg, , et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ***************************************************************************/ - -/* This header file contains nothing but libcurl version info, generated by - a script at release-time. This was made its own header file in 7.11.2 */ - -/* This is the global package copyright */ -#define LIBCURL_COPYRIGHT "1996 - 2011 Daniel Stenberg, ." - -/* This is the version number of the libcurl package from which this header - file origins: */ -#define LIBCURL_VERSION "7.21.7" - -/* The numeric version number is also available "in parts" by using these - defines: */ -#define LIBCURL_VERSION_MAJOR 7 -#define LIBCURL_VERSION_MINOR 21 -#define LIBCURL_VERSION_PATCH 7 - -/* This is the numeric version of the libcurl version number, meant for easier - parsing and comparions by programs. The LIBCURL_VERSION_NUM define will - always follow this syntax: - - 0xXXYYZZ - - Where XX, YY and ZZ are the main version, release and patch numbers in - hexadecimal (using 8 bits each). All three numbers are always represented - using two digits. 1.2 would appear as "0x010200" while version 9.11.7 - appears as "0x090b07". - - This 6-digit (24 bits) hexadecimal number does not show pre-release number, - and it is always a greater number in a more recent release. It makes - comparisons with greater than and less than work. -*/ -#define LIBCURL_VERSION_NUM 0x071507 - -/* - * This is the date and time when the full source package was created. The - * timestamp is not stored in git, as the timestamp is properly set in the - * tarballs by the maketgz script. - * - * The format of the date should follow this template: - * - * "Mon Feb 12 11:35:33 UTC 2007" - */ -#define LIBCURL_TIMESTAMP "Thu Jun 23 08:25:34 UTC 2011" - -#endif /* __CURL_CURLVER_H */ diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/easy.h.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/easy.h.svn-base deleted file mode 100644 index c1e3e760..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/easy.h.svn-base +++ /dev/null @@ -1,102 +0,0 @@ -#ifndef __CURL_EASY_H -#define __CURL_EASY_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) 1998 - 2008, Daniel Stenberg, , et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ***************************************************************************/ -#ifdef __cplusplus -extern "C" { -#endif - -CURL_EXTERN CURL *curl_easy_init(void); -CURL_EXTERN CURLcode curl_easy_setopt(CURL *curl, CURLoption option, ...); -CURL_EXTERN CURLcode curl_easy_perform(CURL *curl); -CURL_EXTERN void curl_easy_cleanup(CURL *curl); - -/* - * NAME curl_easy_getinfo() - * - * DESCRIPTION - * - * Request internal information from the curl session with this function. The - * third argument MUST be a pointer to a long, a pointer to a char * or a - * pointer to a double (as the documentation describes elsewhere). The data - * pointed to will be filled in accordingly and can be relied upon only if the - * function returns CURLE_OK. This function is intended to get used *AFTER* a - * performed transfer, all results from this function are undefined until the - * transfer is completed. - */ -CURL_EXTERN CURLcode curl_easy_getinfo(CURL *curl, CURLINFO info, ...); - - -/* - * NAME curl_easy_duphandle() - * - * DESCRIPTION - * - * Creates a new curl session handle with the same options set for the handle - * passed in. Duplicating a handle could only be a matter of cloning data and - * options, internal state info and things like persistent connections cannot - * be transferred. It is useful in multithreaded applications when you can run - * curl_easy_duphandle() for each new thread to avoid a series of identical - * curl_easy_setopt() invokes in every thread. - */ -CURL_EXTERN CURL* curl_easy_duphandle(CURL *curl); - -/* - * NAME curl_easy_reset() - * - * DESCRIPTION - * - * Re-initializes a CURL handle to the default values. This puts back the - * handle to the same state as it was in when it was just created. - * - * It does keep: live connections, the Session ID cache, the DNS cache and the - * cookies. - */ -CURL_EXTERN void curl_easy_reset(CURL *curl); - -/* - * NAME curl_easy_recv() - * - * DESCRIPTION - * - * Receives data from the connected socket. Use after successful - * curl_easy_perform() with CURLOPT_CONNECT_ONLY option. - */ -CURL_EXTERN CURLcode curl_easy_recv(CURL *curl, void *buffer, size_t buflen, - size_t *n); - -/* - * NAME curl_easy_send() - * - * DESCRIPTION - * - * Sends data over the connected socket. Use after successful - * curl_easy_perform() with CURLOPT_CONNECT_ONLY option. - */ -CURL_EXTERN CURLcode curl_easy_send(CURL *curl, const void *buffer, - size_t buflen, size_t *n); - -#ifdef __cplusplus -} -#endif - -#endif diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/mprintf.h.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/mprintf.h.svn-base deleted file mode 100644 index de7dd2f3..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/mprintf.h.svn-base +++ /dev/null @@ -1,81 +0,0 @@ -#ifndef __CURL_MPRINTF_H -#define __CURL_MPRINTF_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) 1998 - 2006, Daniel Stenberg, , et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ***************************************************************************/ - -#include -#include /* needed for FILE */ - -#include "curl.h" - -#ifdef __cplusplus -extern "C" { -#endif - -CURL_EXTERN int curl_mprintf(const char *format, ...); -CURL_EXTERN int curl_mfprintf(FILE *fd, const char *format, ...); -CURL_EXTERN int curl_msprintf(char *buffer, const char *format, ...); -CURL_EXTERN int curl_msnprintf(char *buffer, size_t maxlength, - const char *format, ...); -CURL_EXTERN int curl_mvprintf(const char *format, va_list args); -CURL_EXTERN int curl_mvfprintf(FILE *fd, const char *format, va_list args); -CURL_EXTERN int curl_mvsprintf(char *buffer, const char *format, va_list args); -CURL_EXTERN int curl_mvsnprintf(char *buffer, size_t maxlength, - const char *format, va_list args); -CURL_EXTERN char *curl_maprintf(const char *format, ...); -CURL_EXTERN char *curl_mvaprintf(const char *format, va_list args); - -#ifdef _MPRINTF_REPLACE -# undef printf -# undef fprintf -# undef sprintf -# undef vsprintf -# undef snprintf -# undef vprintf -# undef vfprintf -# undef vsnprintf -# undef aprintf -# undef vaprintf -# define printf curl_mprintf -# define fprintf curl_mfprintf -#ifdef CURLDEBUG -/* When built with CURLDEBUG we define away the sprintf() functions since we - don't want internal code to be using them */ -# define sprintf sprintf_was_used -# define vsprintf vsprintf_was_used -#else -# define sprintf curl_msprintf -# define vsprintf curl_mvsprintf -#endif -# define snprintf curl_msnprintf -# define vprintf curl_mvprintf -# define vfprintf curl_mvfprintf -# define vsnprintf curl_mvsnprintf -# define aprintf curl_maprintf -# define vaprintf curl_mvaprintf -#endif - -#ifdef __cplusplus -} -#endif - -#endif /* __CURL_MPRINTF_H */ diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/multi.h.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/multi.h.svn-base deleted file mode 100644 index f9656666..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/multi.h.svn-base +++ /dev/null @@ -1,345 +0,0 @@ -#ifndef __CURL_MULTI_H -#define __CURL_MULTI_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) 1998 - 2007, Daniel Stenberg, , et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ***************************************************************************/ -/* - This is an "external" header file. Don't give away any internals here! - - GOALS - - o Enable a "pull" interface. The application that uses libcurl decides where - and when to ask libcurl to get/send data. - - o Enable multiple simultaneous transfers in the same thread without making it - complicated for the application. - - o Enable the application to select() on its own file descriptors and curl's - file descriptors simultaneous easily. - -*/ - -/* - * This header file should not really need to include "curl.h" since curl.h - * itself includes this file and we expect user applications to do #include - * without the need for especially including multi.h. - * - * For some reason we added this include here at one point, and rather than to - * break existing (wrongly written) libcurl applications, we leave it as-is - * but with this warning attached. - */ -#include "curl.h" - -#ifdef __cplusplus -extern "C" { -#endif - -typedef void CURLM; - -typedef enum { - CURLM_CALL_MULTI_PERFORM = -1, /* please call curl_multi_perform() or - curl_multi_socket*() soon */ - CURLM_OK, - CURLM_BAD_HANDLE, /* the passed-in handle is not a valid CURLM handle */ - CURLM_BAD_EASY_HANDLE, /* an easy handle was not good/valid */ - CURLM_OUT_OF_MEMORY, /* if you ever get this, you're in deep sh*t */ - CURLM_INTERNAL_ERROR, /* this is a libcurl bug */ - CURLM_BAD_SOCKET, /* the passed in socket argument did not match */ - CURLM_UNKNOWN_OPTION, /* curl_multi_setopt() with unsupported option */ - CURLM_LAST -} CURLMcode; - -/* just to make code nicer when using curl_multi_socket() you can now check - for CURLM_CALL_MULTI_SOCKET too in the same style it works for - curl_multi_perform() and CURLM_CALL_MULTI_PERFORM */ -#define CURLM_CALL_MULTI_SOCKET CURLM_CALL_MULTI_PERFORM - -typedef enum { - CURLMSG_NONE, /* first, not used */ - CURLMSG_DONE, /* This easy handle has completed. 'result' contains - the CURLcode of the transfer */ - CURLMSG_LAST /* last, not used */ -} CURLMSG; - -struct CURLMsg { - CURLMSG msg; /* what this message means */ - CURL *easy_handle; /* the handle it concerns */ - union { - void *whatever; /* message-specific data */ - CURLcode result; /* return code for transfer */ - } data; -}; -typedef struct CURLMsg CURLMsg; - -/* - * Name: curl_multi_init() - * - * Desc: inititalize multi-style curl usage - * - * Returns: a new CURLM handle to use in all 'curl_multi' functions. - */ -CURL_EXTERN CURLM *curl_multi_init(void); - -/* - * Name: curl_multi_add_handle() - * - * Desc: add a standard curl handle to the multi stack - * - * Returns: CURLMcode type, general multi error code. - */ -CURL_EXTERN CURLMcode curl_multi_add_handle(CURLM *multi_handle, - CURL *curl_handle); - - /* - * Name: curl_multi_remove_handle() - * - * Desc: removes a curl handle from the multi stack again - * - * Returns: CURLMcode type, general multi error code. - */ -CURL_EXTERN CURLMcode curl_multi_remove_handle(CURLM *multi_handle, - CURL *curl_handle); - - /* - * Name: curl_multi_fdset() - * - * Desc: Ask curl for its fd_set sets. The app can use these to select() or - * poll() on. We want curl_multi_perform() called as soon as one of - * them are ready. - * - * Returns: CURLMcode type, general multi error code. - */ -CURL_EXTERN CURLMcode curl_multi_fdset(CURLM *multi_handle, - fd_set *read_fd_set, - fd_set *write_fd_set, - fd_set *exc_fd_set, - int *max_fd); - - /* - * Name: curl_multi_perform() - * - * Desc: When the app thinks there's data available for curl it calls this - * function to read/write whatever there is right now. This returns - * as soon as the reads and writes are done. This function does not - * require that there actually is data available for reading or that - * data can be written, it can be called just in case. It returns - * the number of handles that still transfer data in the second - * argument's integer-pointer. - * - * Returns: CURLMcode type, general multi error code. *NOTE* that this only - * returns errors etc regarding the whole multi stack. There might - * still have occurred problems on invidual transfers even when this - * returns OK. - */ -CURL_EXTERN CURLMcode curl_multi_perform(CURLM *multi_handle, - int *running_handles); - - /* - * Name: curl_multi_cleanup() - * - * Desc: Cleans up and removes a whole multi stack. It does not free or - * touch any individual easy handles in any way. We need to define - * in what state those handles will be if this function is called - * in the middle of a transfer. - * - * Returns: CURLMcode type, general multi error code. - */ -CURL_EXTERN CURLMcode curl_multi_cleanup(CURLM *multi_handle); - -/* - * Name: curl_multi_info_read() - * - * Desc: Ask the multi handle if there's any messages/informationals from - * the individual transfers. Messages include informationals such as - * error code from the transfer or just the fact that a transfer is - * completed. More details on these should be written down as well. - * - * Repeated calls to this function will return a new struct each - * time, until a special "end of msgs" struct is returned as a signal - * that there is no more to get at this point. - * - * The data the returned pointer points to will not survive calling - * curl_multi_cleanup(). - * - * The 'CURLMsg' struct is meant to be very simple and only contain - * very basic informations. If more involved information is wanted, - * we will provide the particular "transfer handle" in that struct - * and that should/could/would be used in subsequent - * curl_easy_getinfo() calls (or similar). The point being that we - * must never expose complex structs to applications, as then we'll - * undoubtably get backwards compatibility problems in the future. - * - * Returns: A pointer to a filled-in struct, or NULL if it failed or ran out - * of structs. It also writes the number of messages left in the - * queue (after this read) in the integer the second argument points - * to. - */ -CURL_EXTERN CURLMsg *curl_multi_info_read(CURLM *multi_handle, - int *msgs_in_queue); - -/* - * Name: curl_multi_strerror() - * - * Desc: The curl_multi_strerror function may be used to turn a CURLMcode - * value into the equivalent human readable error string. This is - * useful for printing meaningful error messages. - * - * Returns: A pointer to a zero-terminated error message. - */ -CURL_EXTERN const char *curl_multi_strerror(CURLMcode); - -/* - * Name: curl_multi_socket() and - * curl_multi_socket_all() - * - * Desc: An alternative version of curl_multi_perform() that allows the - * application to pass in one of the file descriptors that have been - * detected to have "action" on them and let libcurl perform. - * See man page for details. - */ -#define CURL_POLL_NONE 0 -#define CURL_POLL_IN 1 -#define CURL_POLL_OUT 2 -#define CURL_POLL_INOUT 3 -#define CURL_POLL_REMOVE 4 - -#define CURL_SOCKET_TIMEOUT CURL_SOCKET_BAD - -#define CURL_CSELECT_IN 0x01 -#define CURL_CSELECT_OUT 0x02 -#define CURL_CSELECT_ERR 0x04 - -typedef int (*curl_socket_callback)(CURL *easy, /* easy handle */ - curl_socket_t s, /* socket */ - int what, /* see above */ - void *userp, /* private callback - pointer */ - void *socketp); /* private socket - pointer */ -/* - * Name: curl_multi_timer_callback - * - * Desc: Called by libcurl whenever the library detects a change in the - * maximum number of milliseconds the app is allowed to wait before - * curl_multi_socket() or curl_multi_perform() must be called - * (to allow libcurl's timed events to take place). - * - * Returns: The callback should return zero. - */ -typedef int (*curl_multi_timer_callback)(CURLM *multi, /* multi handle */ - long timeout_ms, /* see above */ - void *userp); /* private callback - pointer */ - -CURL_EXTERN CURLMcode curl_multi_socket(CURLM *multi_handle, curl_socket_t s, - int *running_handles); - -CURL_EXTERN CURLMcode curl_multi_socket_action(CURLM *multi_handle, - curl_socket_t s, - int ev_bitmask, - int *running_handles); - -CURL_EXTERN CURLMcode curl_multi_socket_all(CURLM *multi_handle, - int *running_handles); - -#ifndef CURL_ALLOW_OLD_MULTI_SOCKET -/* This macro below was added in 7.16.3 to push users who recompile to use - the new curl_multi_socket_action() instead of the old curl_multi_socket() -*/ -#define curl_multi_socket(x,y,z) curl_multi_socket_action(x,y,0,z) -#endif - -/* - * Name: curl_multi_timeout() - * - * Desc: Returns the maximum number of milliseconds the app is allowed to - * wait before curl_multi_socket() or curl_multi_perform() must be - * called (to allow libcurl's timed events to take place). - * - * Returns: CURLM error code. - */ -CURL_EXTERN CURLMcode curl_multi_timeout(CURLM *multi_handle, - long *milliseconds); - -#undef CINIT /* re-using the same name as in curl.h */ - -#ifdef CURL_ISOCPP -#define CINIT(name,type,num) CURLMOPT_ ## name = CURLOPTTYPE_ ## type + num -#else -/* The macro "##" is ISO C, we assume pre-ISO C doesn't support it. */ -#define LONG CURLOPTTYPE_LONG -#define OBJECTPOINT CURLOPTTYPE_OBJECTPOINT -#define FUNCTIONPOINT CURLOPTTYPE_FUNCTIONPOINT -#define OFF_T CURLOPTTYPE_OFF_T -#define CINIT(name,type,number) CURLMOPT_/**/name = type + number -#endif - -typedef enum { - /* This is the socket callback function pointer */ - CINIT(SOCKETFUNCTION, FUNCTIONPOINT, 1), - - /* This is the argument passed to the socket callback */ - CINIT(SOCKETDATA, OBJECTPOINT, 2), - - /* set to 1 to enable pipelining for this multi handle */ - CINIT(PIPELINING, LONG, 3), - - /* This is the timer callback function pointer */ - CINIT(TIMERFUNCTION, FUNCTIONPOINT, 4), - - /* This is the argument passed to the timer callback */ - CINIT(TIMERDATA, OBJECTPOINT, 5), - - /* maximum number of entries in the connection cache */ - CINIT(MAXCONNECTS, LONG, 6), - - CURLMOPT_LASTENTRY /* the last unused */ -} CURLMoption; - - -/* - * Name: curl_multi_setopt() - * - * Desc: Sets options for the multi handle. - * - * Returns: CURLM error code. - */ -CURL_EXTERN CURLMcode curl_multi_setopt(CURLM *multi_handle, - CURLMoption option, ...); - - -/* - * Name: curl_multi_assign() - * - * Desc: This function sets an association in the multi handle between the - * given socket and a private pointer of the application. This is - * (only) useful for curl_multi_socket uses. - * - * Returns: CURLM error code. - */ -CURL_EXTERN CURLMcode curl_multi_assign(CURLM *multi_handle, - curl_socket_t sockfd, void *sockp); - -#ifdef __cplusplus -} /* end of extern "C" */ -#endif - -#endif diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/stdcheaders.h.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/stdcheaders.h.svn-base deleted file mode 100644 index ad82ef63..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/stdcheaders.h.svn-base +++ /dev/null @@ -1,33 +0,0 @@ -#ifndef __STDC_HEADERS_H -#define __STDC_HEADERS_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) 1998 - 2010, Daniel Stenberg, , et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ***************************************************************************/ - -#include - -size_t fread (void *, size_t, size_t, FILE *); -size_t fwrite (const void *, size_t, size_t, FILE *); - -int strcasecmp(const char *, const char *); -int strncasecmp(const char *, const char *, size_t); - -#endif /* __STDC_HEADERS_H */ diff --git a/backends/twitter/libtwitcurl/curl/.svn/text-base/typecheck-gcc.h.svn-base b/backends/twitter/libtwitcurl/curl/.svn/text-base/typecheck-gcc.h.svn-base deleted file mode 100644 index f043a18e..00000000 --- a/backends/twitter/libtwitcurl/curl/.svn/text-base/typecheck-gcc.h.svn-base +++ /dev/null @@ -1,590 +0,0 @@ -#ifndef __CURL_TYPECHECK_GCC_H -#define __CURL_TYPECHECK_GCC_H -/*************************************************************************** - * _ _ ____ _ - * Project ___| | | | _ \| | - * / __| | | | |_) | | - * | (__| |_| | _ <| |___ - * \___|\___/|_| \_\_____| - * - * Copyright (C) 1998 - 2011, Daniel Stenberg, , et al. - * - * This software is licensed as described in the file COPYING, which - * you should have received as part of this distribution. The terms - * are also available at http://curl.haxx.se/docs/copyright.html. - * - * You may opt to use, copy, modify, merge, publish, distribute and/or sell - * copies of the Software, and permit persons to whom the Software is - * furnished to do so, under the terms of the COPYING file. - * - * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY - * KIND, either express or implied. - * - ***************************************************************************/ - -/* wraps curl_easy_setopt() with typechecking */ - -/* To add a new kind of warning, add an - * if(_curl_is_sometype_option(_curl_opt)) - * if(!_curl_is_sometype(value)) - * _curl_easy_setopt_err_sometype(); - * block and define _curl_is_sometype_option, _curl_is_sometype and - * _curl_easy_setopt_err_sometype below - * - * NOTE: We use two nested 'if' statements here instead of the && operator, in - * order to work around gcc bug #32061. It affects only gcc 4.3.x/4.4.x - * when compiling with -Wlogical-op. - * - * To add an option that uses the same type as an existing option, you'll just - * need to extend the appropriate _curl_*_option macro - */ -#define curl_easy_setopt(handle, option, value) \ -__extension__ ({ \ - __typeof__ (option) _curl_opt = option; \ - if(__builtin_constant_p(_curl_opt)) { \ - if(_curl_is_long_option(_curl_opt)) \ - if(!_curl_is_long(value)) \ - _curl_easy_setopt_err_long(); \ - if(_curl_is_off_t_option(_curl_opt)) \ - if(!_curl_is_off_t(value)) \ - _curl_easy_setopt_err_curl_off_t(); \ - if(_curl_is_string_option(_curl_opt)) \ - if(!_curl_is_string(value)) \ - _curl_easy_setopt_err_string(); \ - if(_curl_is_write_cb_option(_curl_opt)) \ - if(!_curl_is_write_cb(value)) \ - _curl_easy_setopt_err_write_callback(); \ - if((_curl_opt) == CURLOPT_READFUNCTION) \ - if(!_curl_is_read_cb(value)) \ - _curl_easy_setopt_err_read_cb(); \ - if((_curl_opt) == CURLOPT_IOCTLFUNCTION) \ - if(!_curl_is_ioctl_cb(value)) \ - _curl_easy_setopt_err_ioctl_cb(); \ - if((_curl_opt) == CURLOPT_SOCKOPTFUNCTION) \ - if(!_curl_is_sockopt_cb(value)) \ - _curl_easy_setopt_err_sockopt_cb(); \ - if((_curl_opt) == CURLOPT_OPENSOCKETFUNCTION) \ - if(!_curl_is_opensocket_cb(value)) \ - _curl_easy_setopt_err_opensocket_cb(); \ - if((_curl_opt) == CURLOPT_PROGRESSFUNCTION) \ - if(!_curl_is_progress_cb(value)) \ - _curl_easy_setopt_err_progress_cb(); \ - if((_curl_opt) == CURLOPT_DEBUGFUNCTION) \ - if(!_curl_is_debug_cb(value)) \ - _curl_easy_setopt_err_debug_cb(); \ - if((_curl_opt) == CURLOPT_SSL_CTX_FUNCTION) \ - if(!_curl_is_ssl_ctx_cb(value)) \ - _curl_easy_setopt_err_ssl_ctx_cb(); \ - if(_curl_is_conv_cb_option(_curl_opt)) \ - if(!_curl_is_conv_cb(value)) \ - _curl_easy_setopt_err_conv_cb(); \ - if((_curl_opt) == CURLOPT_SEEKFUNCTION) \ - if(!_curl_is_seek_cb(value)) \ - _curl_easy_setopt_err_seek_cb(); \ - if(_curl_is_cb_data_option(_curl_opt)) \ - if(!_curl_is_cb_data(value)) \ - _curl_easy_setopt_err_cb_data(); \ - if((_curl_opt) == CURLOPT_ERRORBUFFER) \ - if(!_curl_is_error_buffer(value)) \ - _curl_easy_setopt_err_error_buffer(); \ - if((_curl_opt) == CURLOPT_STDERR) \ - if(!_curl_is_FILE(value)) \ - _curl_easy_setopt_err_FILE(); \ - if(_curl_is_postfields_option(_curl_opt)) \ - if(!_curl_is_postfields(value)) \ - _curl_easy_setopt_err_postfields(); \ - if((_curl_opt) == CURLOPT_HTTPPOST) \ - if(!_curl_is_arr((value), struct curl_httppost)) \ - _curl_easy_setopt_err_curl_httpost(); \ - if(_curl_is_slist_option(_curl_opt)) \ - if(!_curl_is_arr((value), struct curl_slist)) \ - _curl_easy_setopt_err_curl_slist(); \ - if((_curl_opt) == CURLOPT_SHARE) \ - if(!_curl_is_ptr((value), CURLSH)) \ - _curl_easy_setopt_err_CURLSH(); \ - } \ - curl_easy_setopt(handle, _curl_opt, value); \ -}) - -/* wraps curl_easy_getinfo() with typechecking */ -/* FIXME: don't allow const pointers */ -#define curl_easy_getinfo(handle, info, arg) \ -__extension__ ({ \ - __typeof__ (info) _curl_info = info; \ - if(__builtin_constant_p(_curl_info)) { \ - if(_curl_is_string_info(_curl_info)) \ - if(!_curl_is_arr((arg), char *)) \ - _curl_easy_getinfo_err_string(); \ - if(_curl_is_long_info(_curl_info)) \ - if(!_curl_is_arr((arg), long)) \ - _curl_easy_getinfo_err_long(); \ - if(_curl_is_double_info(_curl_info)) \ - if(!_curl_is_arr((arg), double)) \ - _curl_easy_getinfo_err_double(); \ - if(_curl_is_slist_info(_curl_info)) \ - if(!_curl_is_arr((arg), struct curl_slist *)) \ - _curl_easy_getinfo_err_curl_slist(); \ - } \ - curl_easy_getinfo(handle, _curl_info, arg); \ -}) - -/* TODO: typechecking for curl_share_setopt() and curl_multi_setopt(), - * for now just make sure that the functions are called with three - * arguments - */ -#define curl_share_setopt(share,opt,param) curl_share_setopt(share,opt,param) -#define curl_multi_setopt(handle,opt,param) curl_multi_setopt(handle,opt,param) - - -/* the actual warnings, triggered by calling the _curl_easy_setopt_err* - * functions */ - -/* To define a new warning, use _CURL_WARNING(identifier, "message") */ -#define _CURL_WARNING(id, message) \ - static void __attribute__((warning(message))) __attribute__((unused)) \ - __attribute__((noinline)) id(void) { __asm__(""); } - -_CURL_WARNING(_curl_easy_setopt_err_long, - "curl_easy_setopt expects a long argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_curl_off_t, - "curl_easy_setopt expects a curl_off_t argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_string, - "curl_easy_setopt expects a " - "string (char* or char[]) argument for this option" - ) -_CURL_WARNING(_curl_easy_setopt_err_write_callback, - "curl_easy_setopt expects a curl_write_callback argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_read_cb, - "curl_easy_setopt expects a curl_read_callback argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_ioctl_cb, - "curl_easy_setopt expects a curl_ioctl_callback argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_sockopt_cb, - "curl_easy_setopt expects a curl_sockopt_callback argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_opensocket_cb, - "curl_easy_setopt expects a " - "curl_opensocket_callback argument for this option" - ) -_CURL_WARNING(_curl_easy_setopt_err_progress_cb, - "curl_easy_setopt expects a curl_progress_callback argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_debug_cb, - "curl_easy_setopt expects a curl_debug_callback argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_ssl_ctx_cb, - "curl_easy_setopt expects a curl_ssl_ctx_callback argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_conv_cb, - "curl_easy_setopt expects a curl_conv_callback argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_seek_cb, - "curl_easy_setopt expects a curl_seek_callback argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_cb_data, - "curl_easy_setopt expects a " - "private data pointer as argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_error_buffer, - "curl_easy_setopt expects a " - "char buffer of CURL_ERROR_SIZE as argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_FILE, - "curl_easy_setopt expects a FILE* argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_postfields, - "curl_easy_setopt expects a void* or char* argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_curl_httpost, - "curl_easy_setopt expects a struct curl_httppost* argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_curl_slist, - "curl_easy_setopt expects a struct curl_slist* argument for this option") -_CURL_WARNING(_curl_easy_setopt_err_CURLSH, - "curl_easy_setopt expects a CURLSH* argument for this option") - -_CURL_WARNING(_curl_easy_getinfo_err_string, - "curl_easy_getinfo expects a pointer to char * for this info") -_CURL_WARNING(_curl_easy_getinfo_err_long, - "curl_easy_getinfo expects a pointer to long for this info") -_CURL_WARNING(_curl_easy_getinfo_err_double, - "curl_easy_getinfo expects a pointer to double for this info") -_CURL_WARNING(_curl_easy_getinfo_err_curl_slist, - "curl_easy_getinfo expects a pointer to struct curl_slist * for this info") - -/* groups of curl_easy_setops options that take the same type of argument */ - -/* To add a new option to one of the groups, just add - * (option) == CURLOPT_SOMETHING - * to the or-expression. If the option takes a long or curl_off_t, you don't - * have to do anything - */ - -/* evaluates to true if option takes a long argument */ -#define _curl_is_long_option(option) \ - (0 < (option) && (option) < CURLOPTTYPE_OBJECTPOINT) - -#define _curl_is_off_t_option(option) \ - ((option) > CURLOPTTYPE_OFF_T) - -/* evaluates to true if option takes a char* argument */ -#define _curl_is_string_option(option) \ - ((option) == CURLOPT_URL || \ - (option) == CURLOPT_PROXY || \ - (option) == CURLOPT_INTERFACE || \ - (option) == CURLOPT_NETRC_FILE || \ - (option) == CURLOPT_USERPWD || \ - (option) == CURLOPT_USERNAME || \ - (option) == CURLOPT_PASSWORD || \ - (option) == CURLOPT_PROXYUSERPWD || \ - (option) == CURLOPT_PROXYUSERNAME || \ - (option) == CURLOPT_PROXYPASSWORD || \ - (option) == CURLOPT_NOPROXY || \ - (option) == CURLOPT_ACCEPT_ENCODING || \ - (option) == CURLOPT_REFERER || \ - (option) == CURLOPT_USERAGENT || \ - (option) == CURLOPT_COOKIE || \ - (option) == CURLOPT_COOKIEFILE || \ - (option) == CURLOPT_COOKIEJAR || \ - (option) == CURLOPT_COOKIELIST || \ - (option) == CURLOPT_FTPPORT || \ - (option) == CURLOPT_FTP_ALTERNATIVE_TO_USER || \ - (option) == CURLOPT_FTP_ACCOUNT || \ - (option) == CURLOPT_RANGE || \ - (option) == CURLOPT_CUSTOMREQUEST || \ - (option) == CURLOPT_SSLCERT || \ - (option) == CURLOPT_SSLCERTTYPE || \ - (option) == CURLOPT_SSLKEY || \ - (option) == CURLOPT_SSLKEYTYPE || \ - (option) == CURLOPT_KEYPASSWD || \ - (option) == CURLOPT_SSLENGINE || \ - (option) == CURLOPT_CAINFO || \ - (option) == CURLOPT_CAPATH || \ - (option) == CURLOPT_RANDOM_FILE || \ - (option) == CURLOPT_EGDSOCKET || \ - (option) == CURLOPT_SSL_CIPHER_LIST || \ - (option) == CURLOPT_KRBLEVEL || \ - (option) == CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 || \ - (option) == CURLOPT_SSH_PUBLIC_KEYFILE || \ - (option) == CURLOPT_SSH_PRIVATE_KEYFILE || \ - (option) == CURLOPT_CRLFILE || \ - (option) == CURLOPT_ISSUERCERT || \ - (option) == CURLOPT_SOCKS5_GSSAPI_SERVICE || \ - (option) == CURLOPT_SSH_KNOWNHOSTS || \ - (option) == CURLOPT_MAIL_FROM || \ - (option) == CURLOPT_RTSP_SESSION_ID || \ - (option) == CURLOPT_RTSP_STREAM_URI || \ - (option) == CURLOPT_RTSP_TRANSPORT || \ - 0) - -/* evaluates to true if option takes a curl_write_callback argument */ -#define _curl_is_write_cb_option(option) \ - ((option) == CURLOPT_HEADERFUNCTION || \ - (option) == CURLOPT_WRITEFUNCTION) - -/* evaluates to true if option takes a curl_conv_callback argument */ -#define _curl_is_conv_cb_option(option) \ - ((option) == CURLOPT_CONV_TO_NETWORK_FUNCTION || \ - (option) == CURLOPT_CONV_FROM_NETWORK_FUNCTION || \ - (option) == CURLOPT_CONV_FROM_UTF8_FUNCTION) - -/* evaluates to true if option takes a data argument to pass to a callback */ -#define _curl_is_cb_data_option(option) \ - ((option) == CURLOPT_WRITEDATA || \ - (option) == CURLOPT_READDATA || \ - (option) == CURLOPT_IOCTLDATA || \ - (option) == CURLOPT_SOCKOPTDATA || \ - (option) == CURLOPT_OPENSOCKETDATA || \ - (option) == CURLOPT_PROGRESSDATA || \ - (option) == CURLOPT_WRITEHEADER || \ - (option) == CURLOPT_DEBUGDATA || \ - (option) == CURLOPT_SSL_CTX_DATA || \ - (option) == CURLOPT_SEEKDATA || \ - (option) == CURLOPT_PRIVATE || \ - (option) == CURLOPT_SSH_KEYDATA || \ - (option) == CURLOPT_INTERLEAVEDATA || \ - (option) == CURLOPT_CHUNK_DATA || \ - (option) == CURLOPT_FNMATCH_DATA || \ - 0) - -/* evaluates to true if option takes a POST data argument (void* or char*) */ -#define _curl_is_postfields_option(option) \ - ((option) == CURLOPT_POSTFIELDS || \ - (option) == CURLOPT_COPYPOSTFIELDS || \ - 0) - -/* evaluates to true if option takes a struct curl_slist * argument */ -#define _curl_is_slist_option(option) \ - ((option) == CURLOPT_HTTPHEADER || \ - (option) == CURLOPT_HTTP200ALIASES || \ - (option) == CURLOPT_QUOTE || \ - (option) == CURLOPT_POSTQUOTE || \ - (option) == CURLOPT_PREQUOTE || \ - (option) == CURLOPT_TELNETOPTIONS || \ - (option) == CURLOPT_MAIL_RCPT || \ - 0) - -/* groups of curl_easy_getinfo infos that take the same type of argument */ - -/* evaluates to true if info expects a pointer to char * argument */ -#define _curl_is_string_info(info) \ - (CURLINFO_STRING < (info) && (info) < CURLINFO_LONG) - -/* evaluates to true if info expects a pointer to long argument */ -#define _curl_is_long_info(info) \ - (CURLINFO_LONG < (info) && (info) < CURLINFO_DOUBLE) - -/* evaluates to true if info expects a pointer to double argument */ -#define _curl_is_double_info(info) \ - (CURLINFO_DOUBLE < (info) && (info) < CURLINFO_SLIST) - -/* true if info expects a pointer to struct curl_slist * argument */ -#define _curl_is_slist_info(info) \ - (CURLINFO_SLIST < (info)) - - -/* typecheck helpers -- check whether given expression has requested type*/ - -/* For pointers, you can use the _curl_is_ptr/_curl_is_arr macros, - * otherwise define a new macro. Search for __builtin_types_compatible_p - * in the GCC manual. - * NOTE: these macros MUST NOT EVALUATE their arguments! The argument is - * the actual expression passed to the curl_easy_setopt macro. This - * means that you can only apply the sizeof and __typeof__ operators, no - * == or whatsoever. - */ - -/* XXX: should evaluate to true iff expr is a pointer */ -#define _curl_is_any_ptr(expr) \ - (sizeof(expr) == sizeof(void*)) - -/* evaluates to true if expr is NULL */ -/* XXX: must not evaluate expr, so this check is not accurate */ -#define _curl_is_NULL(expr) \ - (__builtin_types_compatible_p(__typeof__(expr), __typeof__(NULL))) - -/* evaluates to true if expr is type*, const type* or NULL */ -#define _curl_is_ptr(expr, type) \ - (_curl_is_NULL(expr) || \ - __builtin_types_compatible_p(__typeof__(expr), type *) || \ - __builtin_types_compatible_p(__typeof__(expr), const type *)) - -/* evaluates to true if expr is one of type[], type*, NULL or const type* */ -#define _curl_is_arr(expr, type) \ - (_curl_is_ptr((expr), type) || \ - __builtin_types_compatible_p(__typeof__(expr), type [])) - -/* evaluates to true if expr is a string */ -#define _curl_is_string(expr) \ - (_curl_is_arr((expr), char) || \ - _curl_is_arr((expr), signed char) || \ - _curl_is_arr((expr), unsigned char)) - -/* evaluates to true if expr is a long (no matter the signedness) - * XXX: for now, int is also accepted (and therefore short and char, which - * are promoted to int when passed to a variadic function) */ -#define _curl_is_long(expr) \ - (__builtin_types_compatible_p(__typeof__(expr), long) || \ - __builtin_types_compatible_p(__typeof__(expr), signed long) || \ - __builtin_types_compatible_p(__typeof__(expr), unsigned long) || \ - __builtin_types_compatible_p(__typeof__(expr), int) || \ - __builtin_types_compatible_p(__typeof__(expr), signed int) || \ - __builtin_types_compatible_p(__typeof__(expr), unsigned int) || \ - __builtin_types_compatible_p(__typeof__(expr), short) || \ - __builtin_types_compatible_p(__typeof__(expr), signed short) || \ - __builtin_types_compatible_p(__typeof__(expr), unsigned short) || \ - __builtin_types_compatible_p(__typeof__(expr), char) || \ - __builtin_types_compatible_p(__typeof__(expr), signed char) || \ - __builtin_types_compatible_p(__typeof__(expr), unsigned char)) - -/* evaluates to true if expr is of type curl_off_t */ -#define _curl_is_off_t(expr) \ - (__builtin_types_compatible_p(__typeof__(expr), curl_off_t)) - -/* evaluates to true if expr is abuffer suitable for CURLOPT_ERRORBUFFER */ -/* XXX: also check size of an char[] array? */ -#define _curl_is_error_buffer(expr) \ - (__builtin_types_compatible_p(__typeof__(expr), char *) || \ - __builtin_types_compatible_p(__typeof__(expr), char[])) - -/* evaluates to true if expr is of type (const) void* or (const) FILE* */ -#if 0 -#define _curl_is_cb_data(expr) \ - (_curl_is_ptr((expr), void) || \ - _curl_is_ptr((expr), FILE)) -#else /* be less strict */ -#define _curl_is_cb_data(expr) \ - _curl_is_any_ptr(expr) -#endif - -/* evaluates to true if expr is of type FILE* */ -#define _curl_is_FILE(expr) \ - (__builtin_types_compatible_p(__typeof__(expr), FILE *)) - -/* evaluates to true if expr can be passed as POST data (void* or char*) */ -#define _curl_is_postfields(expr) \ - (_curl_is_ptr((expr), void) || \ - _curl_is_arr((expr), char)) - -/* FIXME: the whole callback checking is messy... - * The idea is to tolerate char vs. void and const vs. not const - * pointers in arguments at least - */ -/* helper: __builtin_types_compatible_p distinguishes between functions and - * function pointers, hide it */ -#define _curl_callback_compatible(func, type) \ - (__builtin_types_compatible_p(__typeof__(func), type) || \ - __builtin_types_compatible_p(__typeof__(func), type*)) - -/* evaluates to true if expr is of type curl_read_callback or "similar" */ -#define _curl_is_read_cb(expr) \ - (_curl_is_NULL(expr) || \ - __builtin_types_compatible_p(__typeof__(expr), __typeof__(fread)) || \ - __builtin_types_compatible_p(__typeof__(expr), curl_read_callback) || \ - _curl_callback_compatible((expr), _curl_read_callback1) || \ - _curl_callback_compatible((expr), _curl_read_callback2) || \ - _curl_callback_compatible((expr), _curl_read_callback3) || \ - _curl_callback_compatible((expr), _curl_read_callback4) || \ - _curl_callback_compatible((expr), _curl_read_callback5) || \ - _curl_callback_compatible((expr), _curl_read_callback6)) -typedef size_t (_curl_read_callback1)(char *, size_t, size_t, void*); -typedef size_t (_curl_read_callback2)(char *, size_t, size_t, const void*); -typedef size_t (_curl_read_callback3)(char *, size_t, size_t, FILE*); -typedef size_t (_curl_read_callback4)(void *, size_t, size_t, void*); -typedef size_t (_curl_read_callback5)(void *, size_t, size_t, const void*); -typedef size_t (_curl_read_callback6)(void *, size_t, size_t, FILE*); - -/* evaluates to true if expr is of type curl_write_callback or "similar" */ -#define _curl_is_write_cb(expr) \ - (_curl_is_read_cb(expr) || \ - __builtin_types_compatible_p(__typeof__(expr), __typeof__(fwrite)) || \ - __builtin_types_compatible_p(__typeof__(expr), curl_write_callback) || \ - _curl_callback_compatible((expr), _curl_write_callback1) || \ - _curl_callback_compatible((expr), _curl_write_callback2) || \ - _curl_callback_compatible((expr), _curl_write_callback3) || \ - _curl_callback_compatible((expr), _curl_write_callback4) || \ - _curl_callback_compatible((expr), _curl_write_callback5) || \ - _curl_callback_compatible((expr), _curl_write_callback6)) -typedef size_t (_curl_write_callback1)(const char *, size_t, size_t, void*); -typedef size_t (_curl_write_callback2)(const char *, size_t, size_t, - const void*); -typedef size_t (_curl_write_callback3)(const char *, size_t, size_t, FILE*); -typedef size_t (_curl_write_callback4)(const void *, size_t, size_t, void*); -typedef size_t (_curl_write_callback5)(const void *, size_t, size_t, - const void*); -typedef size_t (_curl_write_callback6)(const void *, size_t, size_t, FILE*); - -/* evaluates to true if expr is of type curl_ioctl_callback or "similar" */ -#define _curl_is_ioctl_cb(expr) \ - (_curl_is_NULL(expr) || \ - __builtin_types_compatible_p(__typeof__(expr), curl_ioctl_callback) || \ - _curl_callback_compatible((expr), _curl_ioctl_callback1) || \ - _curl_callback_compatible((expr), _curl_ioctl_callback2) || \ - _curl_callback_compatible((expr), _curl_ioctl_callback3) || \ - _curl_callback_compatible((expr), _curl_ioctl_callback4)) -typedef curlioerr (_curl_ioctl_callback1)(CURL *, int, void*); -typedef curlioerr (_curl_ioctl_callback2)(CURL *, int, const void*); -typedef curlioerr (_curl_ioctl_callback3)(CURL *, curliocmd, void*); -typedef curlioerr (_curl_ioctl_callback4)(CURL *, curliocmd, const void*); - -/* evaluates to true if expr is of type curl_sockopt_callback or "similar" */ -#define _curl_is_sockopt_cb(expr) \ - (_curl_is_NULL(expr) || \ - __builtin_types_compatible_p(__typeof__(expr), curl_sockopt_callback) || \ - _curl_callback_compatible((expr), _curl_sockopt_callback1) || \ - _curl_callback_compatible((expr), _curl_sockopt_callback2)) -typedef int (_curl_sockopt_callback1)(void *, curl_socket_t, curlsocktype); -typedef int (_curl_sockopt_callback2)(const void *, curl_socket_t, - curlsocktype); - -/* evaluates to true if expr is of type curl_opensocket_callback or - "similar" */ -#define _curl_is_opensocket_cb(expr) \ - (_curl_is_NULL(expr) || \ - __builtin_types_compatible_p(__typeof__(expr), curl_opensocket_callback) ||\ - _curl_callback_compatible((expr), _curl_opensocket_callback1) || \ - _curl_callback_compatible((expr), _curl_opensocket_callback2) || \ - _curl_callback_compatible((expr), _curl_opensocket_callback3) || \ - _curl_callback_compatible((expr), _curl_opensocket_callback4)) -typedef curl_socket_t (_curl_opensocket_callback1) - (void *, curlsocktype, struct curl_sockaddr *); -typedef curl_socket_t (_curl_opensocket_callback2) - (void *, curlsocktype, const struct curl_sockaddr *); -typedef curl_socket_t (_curl_opensocket_callback3) - (const void *, curlsocktype, struct curl_sockaddr *); -typedef curl_socket_t (_curl_opensocket_callback4) - (const void *, curlsocktype, const struct curl_sockaddr *); - -/* evaluates to true if expr is of type curl_progress_callback or "similar" */ -#define _curl_is_progress_cb(expr) \ - (_curl_is_NULL(expr) || \ - __builtin_types_compatible_p(__typeof__(expr), curl_progress_callback) || \ - _curl_callback_compatible((expr), _curl_progress_callback1) || \ - _curl_callback_compatible((expr), _curl_progress_callback2)) -typedef int (_curl_progress_callback1)(void *, - double, double, double, double); -typedef int (_curl_progress_callback2)(const void *, - double, double, double, double); - -/* evaluates to true if expr is of type curl_debug_callback or "similar" */ -#define _curl_is_debug_cb(expr) \ - (_curl_is_NULL(expr) || \ - __builtin_types_compatible_p(__typeof__(expr), curl_debug_callback) || \ - _curl_callback_compatible((expr), _curl_debug_callback1) || \ - _curl_callback_compatible((expr), _curl_debug_callback2) || \ - _curl_callback_compatible((expr), _curl_debug_callback3) || \ - _curl_callback_compatible((expr), _curl_debug_callback4)) -typedef int (_curl_debug_callback1) (CURL *, - curl_infotype, char *, size_t, void *); -typedef int (_curl_debug_callback2) (CURL *, - curl_infotype, char *, size_t, const void *); -typedef int (_curl_debug_callback3) (CURL *, - curl_infotype, const char *, size_t, void *); -typedef int (_curl_debug_callback4) (CURL *, - curl_infotype, const char *, size_t, const void *); - -/* evaluates to true if expr is of type curl_ssl_ctx_callback or "similar" */ -/* this is getting even messier... */ -#define _curl_is_ssl_ctx_cb(expr) \ - (_curl_is_NULL(expr) || \ - __builtin_types_compatible_p(__typeof__(expr), curl_ssl_ctx_callback) || \ - _curl_callback_compatible((expr), _curl_ssl_ctx_callback1) || \ - _curl_callback_compatible((expr), _curl_ssl_ctx_callback2) || \ - _curl_callback_compatible((expr), _curl_ssl_ctx_callback3) || \ - _curl_callback_compatible((expr), _curl_ssl_ctx_callback4) || \ - _curl_callback_compatible((expr), _curl_ssl_ctx_callback5) || \ - _curl_callback_compatible((expr), _curl_ssl_ctx_callback6) || \ - _curl_callback_compatible((expr), _curl_ssl_ctx_callback7) || \ - _curl_callback_compatible((expr), _curl_ssl_ctx_callback8)) -typedef CURLcode (_curl_ssl_ctx_callback1)(CURL *, void *, void *); -typedef CURLcode (_curl_ssl_ctx_callback2)(CURL *, void *, const void *); -typedef CURLcode (_curl_ssl_ctx_callback3)(CURL *, const void *, void *); -typedef CURLcode (_curl_ssl_ctx_callback4)(CURL *, const void *, const void *); -#ifdef HEADER_SSL_H -/* hack: if we included OpenSSL's ssl.h, we know about SSL_CTX - * this will of course break if we're included before OpenSSL headers... - */ -typedef CURLcode (_curl_ssl_ctx_callback5)(CURL *, SSL_CTX, void *); -typedef CURLcode (_curl_ssl_ctx_callback6)(CURL *, SSL_CTX, const void *); -typedef CURLcode (_curl_ssl_ctx_callback7)(CURL *, const SSL_CTX, void *); -typedef CURLcode (_curl_ssl_ctx_callback8)(CURL *, const SSL_CTX, - const void *); -#else -typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback5; -typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback6; -typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback7; -typedef _curl_ssl_ctx_callback1 _curl_ssl_ctx_callback8; -#endif - -/* evaluates to true if expr is of type curl_conv_callback or "similar" */ -#define _curl_is_conv_cb(expr) \ - (_curl_is_NULL(expr) || \ - __builtin_types_compatible_p(__typeof__(expr), curl_conv_callback) || \ - _curl_callback_compatible((expr), _curl_conv_callback1) || \ - _curl_callback_compatible((expr), _curl_conv_callback2) || \ - _curl_callback_compatible((expr), _curl_conv_callback3) || \ - _curl_callback_compatible((expr), _curl_conv_callback4)) -typedef CURLcode (*_curl_conv_callback1)(char *, size_t length); -typedef CURLcode (*_curl_conv_callback2)(const char *, size_t length); -typedef CURLcode (*_curl_conv_callback3)(void *, size_t length); -typedef CURLcode (*_curl_conv_callback4)(const void *, size_t length); - -/* evaluates to true if expr is of type curl_seek_callback or "similar" */ -#define _curl_is_seek_cb(expr) \ - (_curl_is_NULL(expr) || \ - __builtin_types_compatible_p(__typeof__(expr), curl_seek_callback) || \ - _curl_callback_compatible((expr), _curl_seek_callback1) || \ - _curl_callback_compatible((expr), _curl_seek_callback2)) -typedef CURLcode (*_curl_seek_callback1)(void *, curl_off_t, int); -typedef CURLcode (*_curl_seek_callback2)(const void *, curl_off_t, int); - - -#endif /* __CURL_TYPECHECK_GCC_H */ diff --git a/backends/twitter/libtwitcurl/lib/.svn/all-wcprops b/backends/twitter/libtwitcurl/lib/.svn/all-wcprops deleted file mode 100644 index 460cafcd..00000000 --- a/backends/twitter/libtwitcurl/lib/.svn/all-wcprops +++ /dev/null @@ -1,11 +0,0 @@ -K 25 -svn:wc:ra_dav:version-url -V 38 -/svn/!svn/ver/55/trunk/libtwitcurl/lib -END -libcurl.lib -K 25 -svn:wc:ra_dav:version-url -V 50 -/svn/!svn/ver/55/trunk/libtwitcurl/lib/libcurl.lib -END diff --git a/backends/twitter/libtwitcurl/lib/.svn/entries b/backends/twitter/libtwitcurl/lib/.svn/entries deleted file mode 100644 index 7b00f309..00000000 --- a/backends/twitter/libtwitcurl/lib/.svn/entries +++ /dev/null @@ -1,62 +0,0 @@ -10 - -dir -89 -http://twitcurl.googlecode.com/svn/trunk/libtwitcurl/lib -http://twitcurl.googlecode.com/svn - - - -2011-09-12T19:28:25.614324Z -55 -swatkat.thinkdigit@gmail.com - - - - - - - - - - - - - - -4714a580-958b-11de-ad41-3fcdc5e0e42d - -libcurl.lib -file - - - - -2012-08-04T17:27:28.470970Z -bf5f17f57618ef87a64883b9028014c8 -2011-09-12T19:28:25.614324Z -55 -swatkat.thinkdigit@gmail.com -has-props - - - - - - - - - - - - - - - - - - - - -790868 - diff --git a/backends/twitter/libtwitcurl/lib/.svn/prop-base/libcurl.lib.svn-base b/backends/twitter/libtwitcurl/lib/.svn/prop-base/libcurl.lib.svn-base deleted file mode 100644 index 5e9587e6..00000000 --- a/backends/twitter/libtwitcurl/lib/.svn/prop-base/libcurl.lib.svn-base +++ /dev/null @@ -1,5 +0,0 @@ -K 13 -svn:mime-type -V 24 -application/octet-stream -END diff --git a/backends/twitter/libtwitcurl/lib/.svn/text-base/libcurl.lib.svn-base b/backends/twitter/libtwitcurl/lib/.svn/text-base/libcurl.lib.svn-base deleted file mode 100644 index 2db6b971..00000000 Binary files a/backends/twitter/libtwitcurl/lib/.svn/text-base/libcurl.lib.svn-base and /dev/null differ diff --git a/backends/twitter/libtwitcurl/lib/libcurl.lib b/backends/twitter/libtwitcurl/lib/libcurl.lib deleted file mode 100644 index 2db6b971..00000000 Binary files a/backends/twitter/libtwitcurl/lib/libcurl.lib and /dev/null differ