
const LIBOAUTH_VERSION = "1.0.3"
const LIBOAUTH_VERSION_MAJOR = 1
const LIBOAUTH_VERSION_MINOR = 0
const LIBOAUTH_VERSION_MICRO = 3
const LIBOAUTH_CUR = 8
const LIBOAUTH_REV = 7
const LIBOAUTH_AGE = 8

# Skipping MacroDefinition: OA_GCC_VERSION_AT_LEAST ( x , y ) ( __GNUC__ > x || __GNUC__ == x && __GNUC_MINOR__ >= y )
# Skipping MacroDefinition: attribute_deprecated __attribute__ ( ( deprecated ) )

# begin enum ANONYMOUS_1
typealias ANONYMOUS_1 Uint32
const OA_HMAC = (uint32)(0)
const OA_RSA = (uint32)(1)
const OA_PLAINTEXT = (uint32)(2)
# end enum ANONYMOUS_1

# begin enum OAuthMethod
typealias OAuthMethod Uint32
const OA_HMAC = (uint32)(0)
const OA_RSA = (uint32)(1)
const OA_PLAINTEXT = (uint32)(2)
# end enum OAuthMethod
function oauth_sign_hmac_sha1(m::Ptr{Uint8},k::Ptr{Uint8})
    ccall((:oauth_sign_hmac_sha1,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Uint8}),m,k)
end

function oauth_sign_hmac_sha1_raw(m::Ptr{Uint8},ml::Cint,k::Ptr{Uint8},kl::Cint)
    ccall((:oauth_sign_hmac_sha1_raw,liboauth),Ptr{Uint8},(Ptr{Uint8},Cint,Ptr{Uint8},Cint),m,ml,k,kl)
end

function oauth_sign_plaintext(m::Ptr{Uint8},k::Ptr{Uint8})
    ccall((:oauth_sign_plaintext,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Uint8}),m,k)
end

function oauth_sign_rsa_sha1(m::Ptr{Uint8},k::Ptr{Uint8})
    ccall((:oauth_sign_rsa_sha1,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Uint8}),m,k)
end

function oauth_verify_rsa_sha1(m::Ptr{Uint8},c::Ptr{Uint8},s::Ptr{Uint8})
    ccall((:oauth_verify_rsa_sha1,liboauth),Cint,(Ptr{Uint8},Ptr{Uint8},Ptr{Uint8}),m,c,s)
end

function oauth_split_url_parameters(url::Ptr{Uint8},argv::Ptr{Ptr{Ptr{Uint8}}})
    ccall((:oauth_split_url_parameters,liboauth),Cint,(Ptr{Uint8},Ptr{Ptr{Ptr{Uint8}}}),url,argv)
end

function oauth_split_post_paramters(url::Ptr{Uint8},argv::Ptr{Ptr{Ptr{Uint8}}},qesc::Int16)
    ccall((:oauth_split_post_paramters,liboauth),Cint,(Ptr{Uint8},Ptr{Ptr{Ptr{Uint8}}},Int16),url,argv,qesc)
end

function oauth_serialize_url(argc::Cint,start::Cint,argv::Ptr{Ptr{Uint8}})
    ccall((:oauth_serialize_url,liboauth),Ptr{Uint8},(Cint,Cint,Ptr{Ptr{Uint8}}),argc,start,argv)
end

function oauth_serialize_url_sep(argc::Cint,start::Cint,argv::Ptr{Ptr{Uint8}},sep::Ptr{Uint8},mod::Cint)
    ccall((:oauth_serialize_url_sep,liboauth),Ptr{Uint8},(Cint,Cint,Ptr{Ptr{Uint8}},Ptr{Uint8},Cint),argc,start,argv,sep,mod)
end

function oauth_serialize_url_parameters(argc::Cint,argv::Ptr{Ptr{Uint8}})
    ccall((:oauth_serialize_url_parameters,liboauth),Ptr{Uint8},(Cint,Ptr{Ptr{Uint8}}),argc,argv)
end

function oauth_cmpstringp(p1::Ptr{Void},p2::Ptr{Void})
    ccall((:oauth_cmpstringp,liboauth),Cint,(Ptr{Void},Ptr{Void}),p1,p2)
end

function oauth_param_exists(argv::Ptr{Ptr{Uint8}},argc::Cint,key::Ptr{Uint8})
    ccall((:oauth_param_exists,liboauth),Cint,(Ptr{Ptr{Uint8}},Cint,Ptr{Uint8}),argv,argc,key)
end

function oauth_add_param_to_array(argcp::Ptr{Cint},argvp::Ptr{Ptr{Ptr{Uint8}}},addparam::Ptr{Uint8})
    ccall((:oauth_add_param_to_array,liboauth),Void,(Ptr{Cint},Ptr{Ptr{Ptr{Uint8}}},Ptr{Uint8}),argcp,argvp,addparam)
end

function oauth_free_array(argcp::Ptr{Cint},argvp::Ptr{Ptr{Ptr{Uint8}}})
    ccall((:oauth_free_array,liboauth),Void,(Ptr{Cint},Ptr{Ptr{Ptr{Uint8}}}),argcp,argvp)
end

function oauth_time_independent_equals_n(a::Ptr{Uint8},b::Ptr{Uint8},len_a::Cint,len_b::Cint)
    ccall((:oauth_time_independent_equals_n,liboauth),Cint,(Ptr{Uint8},Ptr{Uint8},Cint,Cint),a,b,len_a,len_b)
end

function oauth_time_indepenent_equals_n(a::Ptr{Uint8},b::Ptr{Uint8},len_a::Cint,len_b::Cint)
    ccall((:oauth_time_indepenent_equals_n,liboauth),Cint,(Ptr{Uint8},Ptr{Uint8},Cint,Cint),a,b,len_a,len_b)
end

function oauth_time_independent_equals(a::Ptr{Uint8},b::Ptr{Uint8})
    ccall((:oauth_time_independent_equals,liboauth),Cint,(Ptr{Uint8},Ptr{Uint8}),a,b)
end

function oauth_time_indepenent_equals(a::Ptr{Uint8},b::Ptr{Uint8})
    ccall((:oauth_time_indepenent_equals,liboauth),Cint,(Ptr{Uint8},Ptr{Uint8}),a,b)
end

function oauth_sign_url2(url::Ptr{Uint8},postargs::Ptr{Ptr{Uint8}},method::OAuthMethod,http_method::Ptr{Uint8},c_key::Ptr{Uint8},c_secret::Ptr{Uint8},t_key::Ptr{Uint8},t_secret::Ptr{Uint8})
    ccall((:oauth_sign_url2,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Ptr{Uint8}},OAuthMethod,Ptr{Uint8},Ptr{Uint8},Ptr{Uint8},Ptr{Uint8},Ptr{Uint8}),url,postargs,method,http_method,c_key,c_secret,t_key,t_secret)
end

function oauth_sign_url(url::Ptr{Uint8},postargs::Ptr{Ptr{Uint8}},method::OAuthMethod,c_key::Ptr{Uint8},c_secret::Ptr{Uint8},t_key::Ptr{Uint8},t_secret::Ptr{Uint8})
    ccall((:oauth_sign_url,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Ptr{Uint8}},OAuthMethod,Ptr{Uint8},Ptr{Uint8},Ptr{Uint8},Ptr{Uint8}),url,postargs,method,c_key,c_secret,t_key,t_secret)
end

function oauth_sign_array2_process(argcp::Ptr{Cint},argvp::Ptr{Ptr{Ptr{Uint8}}},postargs::Ptr{Ptr{Uint8}},method::OAuthMethod,http_method::Ptr{Uint8},c_key::Ptr{Uint8},c_secret::Ptr{Uint8},t_key::Ptr{Uint8},t_secret::Ptr{Uint8})
    ccall((:oauth_sign_array2_process,liboauth),Void,(Ptr{Cint},Ptr{Ptr{Ptr{Uint8}}},Ptr{Ptr{Uint8}},OAuthMethod,Ptr{Uint8},Ptr{Uint8},Ptr{Uint8},Ptr{Uint8},Ptr{Uint8}),argcp,argvp,postargs,method,http_method,c_key,c_secret,t_key,t_secret)
end

function oauth_sign_array2(argcp::Ptr{Cint},argvp::Ptr{Ptr{Ptr{Uint8}}},postargs::Ptr{Ptr{Uint8}},method::OAuthMethod,http_method::Ptr{Uint8},c_key::Ptr{Uint8},c_secret::Ptr{Uint8},t_key::Ptr{Uint8},t_secret::Ptr{Uint8})
    ccall((:oauth_sign_array2,liboauth),Ptr{Uint8},(Ptr{Cint},Ptr{Ptr{Ptr{Uint8}}},Ptr{Ptr{Uint8}},OAuthMethod,Ptr{Uint8},Ptr{Uint8},Ptr{Uint8},Ptr{Uint8},Ptr{Uint8}),argcp,argvp,postargs,method,http_method,c_key,c_secret,t_key,t_secret)
end

function oauth_sign_array(argcp::Ptr{Cint},argvp::Ptr{Ptr{Ptr{Uint8}}},postargs::Ptr{Ptr{Uint8}},method::OAuthMethod,c_key::Ptr{Uint8},c_secret::Ptr{Uint8},t_key::Ptr{Uint8},t_secret::Ptr{Uint8})
    ccall((:oauth_sign_array,liboauth),Ptr{Uint8},(Ptr{Cint},Ptr{Ptr{Ptr{Uint8}}},Ptr{Ptr{Uint8}},OAuthMethod,Ptr{Uint8},Ptr{Uint8},Ptr{Uint8},Ptr{Uint8}),argcp,argvp,postargs,method,c_key,c_secret,t_key,t_secret)
end

function oauth_body_hash_file(filename::Ptr{Uint8})
    ccall((:oauth_body_hash_file,liboauth),Ptr{Uint8},(Ptr{Uint8},),filename)
end

function oauth_body_hash_data(length::Cint,data::Ptr{Uint8})
    ccall((:oauth_body_hash_data,liboauth),Ptr{Uint8},(Cint,Ptr{Uint8}),length,data)
end

function oauth_body_hash_encode(len::Cint,digest::Ptr{Cuchar})
    ccall((:oauth_body_hash_encode,liboauth),Ptr{Uint8},(Cint,Ptr{Cuchar}),len,digest)
end

function oauth_sign_xmpp(xml::Ptr{Uint8},method::OAuthMethod,c_secret::Ptr{Uint8},t_secret::Ptr{Uint8})
    ccall((:oauth_sign_xmpp,liboauth),Ptr{Uint8},(Ptr{Uint8},OAuthMethod,Ptr{Uint8},Ptr{Uint8}),xml,method,c_secret,t_secret)
end

function oauth_http_get(u::Ptr{Uint8},q::Ptr{Uint8})
    ccall((:oauth_http_get,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Uint8}),u,q)
end

function oauth_http_get2(u::Ptr{Uint8},q::Ptr{Uint8},customheader::Ptr{Uint8})
    ccall((:oauth_http_get2,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Uint8},Ptr{Uint8}),u,q,customheader)
end

function oauth_http_post(u::Ptr{Uint8},p::Ptr{Uint8})
    ccall((:oauth_http_post,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Uint8}),u,p)
end

function oauth_http_post2(u::Ptr{Uint8},p::Ptr{Uint8},customheader::Ptr{Uint8})
    ccall((:oauth_http_post2,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Uint8},Ptr{Uint8}),u,p,customheader)
end

function oauth_post_file(u::Ptr{Uint8},fn::Ptr{Uint8},len::Cint,customheader::Ptr{Uint8})
    ccall((:oauth_post_file,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Uint8},Cint,Ptr{Uint8}),u,fn,len,customheader)
end

function oauth_post_data(u::Ptr{Uint8},data::Ptr{Uint8},len::Cint,customheader::Ptr{Uint8})
    ccall((:oauth_post_data,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Uint8},Cint,Ptr{Uint8}),u,data,len,customheader)
end

function oauth_post_data_with_callback(u::Ptr{Uint8},data::Ptr{Uint8},len::Cint,customheader::Ptr{Uint8},callback::Ptr{Void},callback_data::Ptr{Void})
    ccall((:oauth_post_data_with_callback,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Uint8},Cint,Ptr{Uint8},Ptr{Void},Ptr{Void}),u,data,len,customheader,callback,callback_data)
end

function oauth_send_data(u::Ptr{Uint8},data::Ptr{Uint8},len::Cint,customheader::Ptr{Uint8},httpMethod::Ptr{Uint8})
    ccall((:oauth_send_data,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Uint8},Cint,Ptr{Uint8},Ptr{Uint8}),u,data,len,customheader,httpMethod)
end

function oauth_send_data_with_callback(u::Ptr{Uint8},data::Ptr{Uint8},len::Cint,customheader::Ptr{Uint8},callback::Ptr{Void},callback_data::Ptr{Void},httpMethod::Ptr{Uint8})
    ccall((:oauth_send_data_with_callback,liboauth),Ptr{Uint8},(Ptr{Uint8},Ptr{Uint8},Cint,Ptr{Uint8},Ptr{Void},Ptr{Void},Ptr{Uint8}),u,data,len,customheader,callback,callback_data,httpMethod)
end
