00001 /******************************************************************************* 00002 * Copyright (c) 1999-2008 ACCESS CO., LTD. All rights reserved. 00003 * Copyright (c) 1999-2007 ACCESS CO., LTD. All rights reserved. 00004 * Copyright (c) 1999-2008 ACCESS CO., LTD. All rights reserved. 00005 * Copyright (c) 2006 PalmSource, Inc (an ACCESS company). All rights reserved. 00006 *********************************************************************************/ 00015 #ifndef ALP_HTTP_H_ 00016 #define ALP_HTTP_H_ 00017 00018 #include <alp/http_const.h> 00019 #include <alp/sysclass.h> 00020 00021 #ifdef __cplusplus 00022 extern "C" { 00023 #endif 00024 00037 #define ALP_HTTP_ERROR_DECLARE(sys_class_id, error_id) \ 00038 ((alp_status_t)((alp_status_t)(sys_class_id) | (alp_status_t)(error_id) << 16)) 00039 00040 #define ALP_STATUS_HTTP_ERROR_OK ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x00) 00041 #define ALP_STATUS_HTTP_ERROR_GENERIC ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x01) 00042 #define ALP_STATUS_HTTP_ERROR_WOULDBLOCK ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x02) 00043 #define ALP_STATUS_HTTP_ERROR_IOSLEEP ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x03) 00044 #define ALP_STATUS_HTTP_ERROR_NO_MEMORY ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x04) 00045 #define ALP_STATUS_HTTP_ERROR_STRPIPE ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x05) 00046 #define ALP_STATUS_HTTP_ERROR_INVAL ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x06) 00047 #define ALP_STATUS_HTTP_ERROR_EOF ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x07) 00048 #define ALP_STATUS_HTTP_ERROR_NOT_SUPPORTED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x08) 00049 #define ALP_STATUS_HTTP_ERROR_DNS_ERROR ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x09) 00050 #define ALP_STATUS_HTTP_ERROR_TCP_ERROR ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x0A) 00051 #define ALP_STATUS_HTTP_ERROR_SSL_ERROR ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x0B) 00052 #define ALP_STATUS_HTTP_ERROR_REQUEST_TIMEDOUT ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x0C) 00053 #define ALP_STATUS_HTTP_ERROR_RESPONSE_TIMEDOUT ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x0D) 00054 #define ALP_STATUS_HTTP_ERROR_OTHER_ERROR ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x0E) 00055 00056 #define ALP_STATUS_HTTP_CODE_CONTINUE ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x0F) 00057 #define ALP_STATUS_HTTP_CODE_SWITCHING_PROTOCOLS ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x10) 00058 #define ALP_STATUS_HTTP_CODE_OK ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x11) 00059 #define ALP_STATUS_HTTP_CODE_CREATED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x12) 00060 #define ALP_STATUS_HTTP_CODE_ACCEPTED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x13) 00061 #define ALP_STATUS_HTTP_CODE_NON_AUTHORITATIVE_INFORMATION ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x14) 00062 #define ALP_STATUS_HTTP_CODE_NO_CONTENT ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x15) 00063 #define ALP_STATUS_HTTP_CODE_RESET_CONTENT ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x16) 00064 #define ALP_STATUS_HTTP_CODE_PARTIAL_CONTENT ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x17) 00065 #define ALP_STATUS_HTTP_CODE_MULTIPLE_CHOICES ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x18) 00066 #define ALP_STATUS_HTTP_CODE_MOVE_PERMANENTLY ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x19) 00067 #define ALP_STATUS_HTTP_CODE_FOUND ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x1A) 00068 #define ALP_STATUS_HTTP_CODE_SEE_OTHER ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x1B) 00069 #define ALP_STATUS_HTTP_CODE_NOT_MODIFIED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x1C) 00070 #define ALP_STATUS_HTTP_CODE_USE_PROXY ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x1D) 00071 #define ALP_STATUS_HTTP_CODE_TEMPORARY_REDIRECT ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x1E) 00072 #define ALP_STATUS_HTTP_CODE_BAD_REQUEST ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x1F) 00073 #define ALP_STATUS_HTTP_CODE_UNAUTHORIZED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x20) 00074 #define ALP_STATUS_HTTP_CODE_PAYMENT_REQUIRED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x21) 00075 #define ALP_STATUS_HTTP_CODE_FORBIDDEN ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x22) 00076 #define ALP_STATUS_HTTP_CODE_NOT_FOUND ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x23) 00077 #define ALP_STATUS_HTTP_CODE_METHOD_NOT_ALLOWED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x24) 00078 #define ALP_STATUS_HTTP_CODE_NOT_ACCEPTABLE ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x25) 00079 #define ALP_STATUS_HTTP_CODE_PROXY_AUTHENTICATION_REQUIRED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x26) 00080 #define ALP_STATUS_HTTP_CODE_REQUEST_TIMEOUT ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x27) 00081 #define ALP_STATUS_HTTP_CODE_CONFLICT ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x28) 00082 #define ALP_STATUS_HTTP_CODE_GONE ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x29) 00083 #define ALP_STATUS_HTTP_CODE_LENTH_REQUIRED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x2A) 00084 #define ALP_STATUS_HTTP_CODE_PRECONDITION_FAILED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x2B) 00085 #define ALP_STATUS_HTTP_CODE_REQUEST_ENTITY_TOOLARGE ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x2C) 00086 #define ALP_STATUS_HTTP_CODE_REQUEST_URI_TOOLARGE ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x2D) 00087 #define ALP_STATUS_HTTP_CODE_UNSUPPORTED_MEDIATYPE ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x2E) 00088 #define ALP_STATUS_HTTP_CODE_REQUESTED_RANGE_NOT_SATISFIABLE ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x2F) 00089 #define ALP_STATUS_HTTP_CODE_EXPECTATION_FAILED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x30) 00090 #define ALP_STATUS_HTTP_CODE_INTERNAL_SERVER_ERROR ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x31) 00091 #define ALP_STATUS_HTTP_CODE_NOT_IMPLEMENTED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x32) 00092 #define ALP_STATUS_HTTP_CODE_BAD_GATEWAY ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x33) 00093 #define ALP_STATUS_HTTP_CODE_SERVICE_UNAVAILABLE ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x34) 00094 #define ALP_STATUS_HTTP_CODE_GATEWAY_TIMEOUT ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x35) 00095 #define ALP_STATUS_HTTP_CODE_HTTPVERSION_NOT_SUPPORTED ALP_HTTP_ERROR_DECLARE(ALP_CLASS_HTTP, 0x36) 00096 00097 00098 /* 00099 * Data Types 00100 */ 00101 00102 typedef void* AlpHttpClassHandle; 00103 typedef void* AlpHttpStreamHandle; 00104 typedef void* AlpHttpSSLClassHandle; 00105 typedef void* AlpHttpCertList; 00106 typedef void* AlpHttpClientCertList; 00107 typedef void* AlpHttpCertPtr; 00108 typedef void* AlpHttpCookies; 00109 typedef void* AlpHttpSSL; 00110 typedef void* AlpHttpString; 00111 typedef void* AlpHttpFixedStr; 00112 typedef void* AlpHttpURLStr; 00113 typedef void* AlpHttpOpaque; 00114 typedef void* AlpHttpDataHandle; 00115 typedef void* AlpHttpVHandle; 00116 00117 00118 typedef struct _AlpHttpAuthInfo AlpHttpAuthInfo; 00119 typedef AlpHttpAuthInfo* AlpHttpAuthInfoHandle; 00120 struct _AlpHttpAuthInfo{ 00121 AlpHttpString fUser; 00122 AlpHttpString fPass; 00123 AlpHttpString fRealm; 00124 AlpHttpString fChallenge; 00125 AlpHttpString fNextNonce; 00126 int fNC; 00127 }; 00128 00129 typedef struct _AlpHttpStrSplit AlpHttpStrSplit; 00130 struct _AlpHttpStrSplit{ 00131 char *s; 00132 int len; 00133 }; 00134 00135 typedef struct _AlpHttpIPAddr AlpHttpIPAddr; 00138 struct _AlpHttpIPAddr { 00139 int fType; 00140 unsigned char fAddr[16]; 00141 }; 00142 00143 typedef struct _AlpHttpDate AlpHttpDate; 00144 struct _AlpHttpDate{ 00145 int fYear; 00146 int fMonth; 00147 int fDay; 00148 int fHour; 00149 int fMinute; 00150 int fSecond; 00151 }; 00152 00155 00156 00157 typedef int (*alp_http_cookie_confirmproc)(AlpHttpCookies in_cookies,AlpHttpURLStr in_url, char* in_header, int in_header_len, AlpHttpOpaque in_aux); 00159 00160 typedef int (*alp_http_server_certconfirmproc)(AlpHttpSSL in_ssl, int in_verify_result, AlpHttpCertList in_list, AlpHttpOpaque in_aux); 00162 typedef int (*alp_http_client_certconfirmproc)(AlpHttpSSL in_ssl, AlpHttpClientCertList in_list, AlpHttpOpaque in_aux); 00164 typedef int (*alp_http_class_notifystateproc)(AlpHttpStreamHandle streamH, AlpHttpURLStr in_url, int in_state, AlpHttpOpaque in_aux); 00166 00183 int alp_http_open_lib(void); 00184 00189 void alp_http_close_lib(void); 00190 00209 AlpHttpClassHandle alp_http_new_streamclass(void); 00210 00215 void alp_http_delete_streamclass(AlpHttpClassHandle classH); 00217 00218 00231 void alp_http_class_make_proxy(AlpHttpClassHandle classH, AlpHttpFixedStr *out_proxy_host, int *out_proxy_http_port, int *out_proxy_https_port, AlpHttpString *out_no_proxy_hosts); 00232 00270 int alp_http_class_set_proxy(AlpHttpClassHandle classH,char *in_proxy_host, int in_proxy_host_len, int in_proxy_http_port, int in_proxy_https_port, char* in_no_proxy_hosts, int in_no_proxy_hosts_len); 00271 00277 void alp_http_class_set_useproxy(AlpHttpClassHandle classH, int in_bool); 00278 00287 int alp_http_class_open_connection(AlpHttpClassHandle classH, char * in_profile_name); 00288 00295 void alp_http_class_set_http11overproxy(AlpHttpClassHandle classH, int in_bool); 00296 00303 int alp_http_class_is_useproxy(AlpHttpClassHandle classH); 00304 00312 int alp_http_class_is_http11overproxy(AlpHttpClassHandle classH); 00318 void alp_http_class_set_httpport(AlpHttpClassHandle classH, int in_port); 00319 00325 void alp_http_class_set_httpsport(AlpHttpClassHandle classH, int in_port); 00326 00336 void alp_http_class_set_maxrequestheader(AlpHttpClassHandle classH, int in_size); 00337 00344 void alp_http_class_set_maxrequestbody(AlpHttpClassHandle classH, int in_size); 00345 00355 int alp_http_class_set_useragent(AlpHttpClassHandle classH, char* in_user_agent, int in_user_agent_len); 00356 00374 int alp_http_class_set_defaultheaders(AlpHttpClassHandle classH,char* in_default_headers,int in_default_headers_len); 00375 00382 void alp_http_class_set_connecttimeout(AlpHttpClassHandle classH, int in_msec); 00383 00390 void alp_http_class_set_reqtimeout(AlpHttpClassHandle classH, int in_msec); 00391 00398 void alp_http_class_set_rsptimeout(AlpHttpClassHandle classH, int in_msec); 00399 00407 void alp_http_class_set_maxkeepalivetimeout(AlpHttpClassHandle classH, int in_max); 00408 00415 void alp_http_class_set_max100continue(AlpHttpClassHandle classH, int in_max); 00416 00421 void alp_http_class_close_allkeepalive(AlpHttpClassHandle classH); 00422 00428 int alp_http_class_keepalivetimeout(AlpHttpClassHandle classH); 00429 00437 void alp_http_class_set_maxtcpstreams(AlpHttpClassHandle classH, int in_max_streams); 00438 00464 AlpHttpStreamHandle alp_http_class_new(AlpHttpClassHandle classH); 00465 00487 void alp_http_class_set_notifystateproc(AlpHttpClassHandle classH,alp_http_class_notifystateproc in_proc, AlpHttpOpaque in_opaque); 00488 00494 void alp_http_class_clear_sslsessioncache(AlpHttpClassHandle classH); 00495 00500 AlpHttpSSLClassHandle alp_http_class_sslclass(AlpHttpClassHandle classH); 00501 00508 void alp_http_class_set_sslverifylocation(AlpHttpClassHandle classH,char* in_ca_file,char* in_ca_path); 00509 00523 void alp_http_class_set_sslversionflag(AlpHttpClassHandle classH, int in_flag, int in_on); 00524 00531 void alp_http_class_set_sslservercertconfirm_proc(AlpHttpClassHandle classH, alp_http_server_certconfirmproc in_cb, AlpHttpOpaque in_opaque); 00532 00540 void alp_http_class_ssl_servercertconfirm(AlpHttpSSL sslH, int in_verify_result, int in_confirm); 00541 00548 void alp_http_class_set_sslclientcertselect_proc(AlpHttpClassHandle classH, alp_http_client_certconfirmproc in_cb, AlpHttpOpaque in_opaque); 00549 00555 void alp_http_class_ssl_clientcertselect(AlpHttpSSL sslH, int in_index); 00556 00594 int alp_http_class_set_userpass(AlpHttpClassHandle classH, int in_type, int in_target, AlpHttpStrSplit *in_challenge_ss, AlpHttpStrSplit *in_realm_ss,char* in_user, int in_user_len, char* in_pass,int in_pass_len, char* in_url,int in_url_len,char* in_host,int in_host_len,int in_port); 00595 00613 int alp_http_class_make_authinfo(AlpHttpClassHandle classH, int in_target,char* in_url,int in_url_len,char* in_proxy_host,int in_proxy_host_len,int in_proxy_port, AlpHttpStrSplit *in_realm_ss, AlpHttpAuthInfoHandle authInfoH); 00614 00619 void alp_http_class_clear_authcache(AlpHttpClassHandle classH); 00620 00625 void alp_http_class_clear_dnscache(AlpHttpClassHandle classH); 00626 00632 void alp_http_class_set_dnsport(AlpHttpClassHandle classH, int in_port); 00633 00654 void alp_http_class_set_dnsserver(AlpHttpClassHandle classH, AlpHttpIPAddr *in_prim_svr, AlpHttpIPAddr *in_sec_svr); 00655 00664 int alp_http_class_set_dnsmode(AlpHttpClassHandle classH, int in_mode); 00665 00671 void alp_http_class_set_dnsmaxretry(AlpHttpClassHandle classH, int in_retry); 00672 00678 void alp_http_class_set_dnsretryinterval(AlpHttpClassHandle classH, int in_interval); 00679 00685 void alp_http_class_select_cnc_channel(AlpHttpClassHandle classH, int in_channel_id); 00686 00698 void alp_http_class_set_cookiemode(AlpHttpClassHandle classH, int in_cookie_mode, alp_http_cookie_confirmproc in_cb, AlpHttpOpaque in_cookie_aux); 00699 00710 int alp_http_class_add_cookie(AlpHttpClassHandle classH, AlpHttpURLStr in_url, char *in_str, int in_len); 00711 00719 void alp_http_class_set_cookiemax(AlpHttpClassHandle classH, int in_max_total_cookies, int in_max_cookies_per_domain, int in_max_len_per_cookie); 00720 00729 AlpHttpString alp_http_class_make_cookiesstring(AlpHttpClassHandle classH, char *in_url, int in_url_len,int in_secure, int *out_len); 00730 00739 int alp_http_class_load_cookies(AlpHttpClassHandle classH, char *in_s, int in_slen); 00740 00746 AlpHttpString alp_http_class_save_cookies(AlpHttpClassHandle classH, int* out_len); 00747 00752 void alp_http_class_empty_cookies(AlpHttpClassHandle classH); 00754 00755 00756 00759 00812 int alp_http_stream_create_request(AlpHttpStreamHandle streamH, int in_method,char* in_url, int in_url_len, char* in_header,int in_header_len, char* in_referer, int in_referer_len, int in_version, int in_no_cache, int in_pipeline,int in_ssl_flag); 00813 00828 int alp_http_stream_set_postdata(AlpHttpStreamHandle streamH, int in_encoding, char *in_data, int in_len); 00829 00847 int alp_http_stream_add_headerline(AlpHttpStreamHandle streamH, char *in_str, int in_len); 00848 00860 int alp_http_stream_add_header(AlpHttpStreamHandle streamH, int in_type, char *in_str, int in_len); 00861 00899 int alp_http_stream_send_request(AlpHttpStreamHandle streamH, int *out_sleep); 00900 00956 int alp_http_stream_send_requestwithpostdata(AlpHttpStreamHandle streamH,char *in_buf, int in_len, 00957 int *out_len, int *out_sleep); 00958 01013 int alp_http_stream_receive_response(AlpHttpStreamHandle streamH, char* out_buf, int in_len, int *out_len, int *out_sleep); 01014 01022 int alp_http_stream_get_scheme(AlpHttpStreamHandle streamH); 01023 01051 int alp_http_stream_get_state(AlpHttpStreamHandle streamH); 01052 01059 int alp_http_stream_is_headerreceived(AlpHttpStreamHandle streamH); 01060 01105 int alp_http_stream_get_statuscode(AlpHttpStreamHandle streamH); 01106 01113 int alp_http_stream_get_responseheaderlength(AlpHttpStreamHandle streamH); 01114 01121 AlpHttpVHandle alp_http_stream_get_responseheader(AlpHttpStreamHandle streamH); 01122 01131 int alp_http_stream_get_contentlength(AlpHttpStreamHandle streamH); 01132 01139 int alp_http_stream_get_entitylength(AlpHttpStreamHandle streamH); 01140 01151 int alp_http_stream_get_header(AlpHttpStreamHandle streamH, int in_type, int *out_ofs, int 01152 *out_len); 01153 01161 AlpHttpCertList alp_http_stream_make_certlist(AlpHttpStreamHandle streamH); 01162 01167 void alp_http_stream_close(AlpHttpStreamHandle streamH); 01168 01174 void alp_http_stream_delete(AlpHttpStreamHandle streamH); 01175 01180 void alp_http_stream_suspend_timer(AlpHttpStreamHandle streamH); 01181 01186 void alp_http_stream_resume_timer(AlpHttpStreamHandle streamH); 01188 01194 AlpHttpCertPtr alp_http_cert_new(void); 01195 01200 void alp_http_cert_delete(AlpHttpCertPtr in_cert); 01201 01230 int alp_http_cert_peek_version(AlpHttpCertPtr in_cert); 01231 01237 int alp_http_cert_peek_serialnumber(AlpHttpCertPtr in_cert, char **out_str); 01238 01245 int alp_http_cert_peek_signalgo(AlpHttpCertPtr in_cert, char *out_buf, int in_len); 01246 01253 int alp_http_cert_peek_validitystart(AlpHttpCertPtr in_cert, AlpHttpDate *out_time); 01254 01261 int alp_http_cert_peek_validityend(AlpHttpCertPtr in_cert, AlpHttpDate *out_time); 01262 01267 int alp_http_cert_peek_rsapublickeybits(AlpHttpCertPtr in_cert); 01268 01286 int alp_http_cert_peek_subject_rdn(AlpHttpCertPtr in_cert,int in_attr,char *out_str, int in_len); 01287 01305 int alp_http_cert_peek_issuer_rdn(AlpHttpCertPtr in_cert,int in_attr,char *out_str, int in_len); 01306 01315 AlpHttpCertList alp_http_certlist_new(int in_type); 01316 01321 void alp_http_certlist_delete(AlpHttpCertList self); 01322 01327 AlpHttpCertList alp_http_certlist_clone(AlpHttpCertList self); 01328 01333 void* alp_http_certlist_lock(AlpHttpCertList self); 01334 01339 void alp_http_certlist_unlock(AlpHttpCertList self); 01340 01348 int alp_http_certlist_type(AlpHttpCertList self); 01349 01355 int alp_http_certlist_length(AlpHttpCertList self); 01356 01364 int alp_http_certlist_remove(AlpHttpCertList self, int in_index); 01365 01375 int alp_http_certlist_begindecode(AlpHttpCertList self, int in_index, AlpHttpCertPtr *out_cert); 01376 01382 void alp_http_certlist_enddecode(AlpHttpCertList self, AlpHttpCertPtr in_cert); 01383 01397 int alp_http_certlist_importcert(AlpHttpCertList self, void *in_info, int in_over_write); 01398 01405 AlpHttpClientCertList alp_http_clientcertlist_clone(AlpHttpClientCertList in_list); 01406 01411 void alp_http_clientcertlist_delete(AlpHttpClientCertList in_list); 01412 01418 int alp_http_clientcertlist_length(AlpHttpClientCertList in_list); 01419 01425 int alp_http_clientcertlist_verificationresults(AlpHttpClientCertList in_list, int in_index); 01426 01434 void alp_http_authinfo_tidy(AlpHttpAuthInfoHandle self, int in_new); 01435 01440 AlpHttpString alp_http_authinfo_user(AlpHttpAuthInfoHandle self); 01441 01446 AlpHttpString alp_http_authinfo_pass(AlpHttpAuthInfoHandle self); 01447 01452 AlpHttpString alp_http_authinfo_realm(AlpHttpAuthInfoHandle self); 01453 01458 int alp_http_vhandle_length(AlpHttpVHandle in_vhandle); 01459 01464 void* alp_http_vhandle_lock(AlpHttpVHandle in_vhandle); 01465 01470 void alp_http_vhandle_unlock(AlpHttpVHandle in_vhandle); 01471 01476 void alp_http_vhandle_delete(AlpHttpVHandle in_vhandle); 01477 01482 int alp_http_string_length(AlpHttpString in_str); 01483 01489 AlpHttpString alp_http_string_new(char *in_str, int in_len); 01490 01495 void * alp_http_string_lock(AlpHttpString in_str); 01496 01501 void alp_http_string_unlock(AlpHttpString in_str); 01502 01507 void alp_http_string_delete(AlpHttpString in_str); 01508 01513 int alp_http_fixedstr_length(AlpHttpFixedStr in_str); 01514 01520 AlpHttpFixedStr alp_http_fixedstr_new(char *in_str, int in_len); 01521 01526 void * alp_http_fixedstr_lock(AlpHttpFixedStr in_str); 01527 01532 void alp_http_fixedstr_unlock(AlpHttpFixedStr in_str); 01533 01538 void alp_http_fixedstr_delete(AlpHttpFixedStr in_str); 01539 01544 int alp_http_urlstr_length(AlpHttpURLStr in_str); 01545 01551 AlpHttpURLStr alp_http_urlstr_new(char *in_str, int in_len); 01552 01557 void * alp_http_urlstr_lock(AlpHttpURLStr in_str); 01558 01563 void alp_http_urlstr_unlock(AlpHttpURLStr in_str); 01564 01569 void alp_http_urlstr_delete(AlpHttpURLStr in_str); 01570 01577 int alp_http_util_read_netaddr(char* in_s, int in_len,AlpHttpIPAddr *out_addr); 01578 01583 alp_status_t alp_http_get_alp_status_code_from_http_status_code(int in_code); 01584 01586 01589 #ifdef __cplusplus 01590 } //extern "C" 01591 #endif 01592 01593 #endif /* ALP_HTTP_H_ */ 01594
Copyright © 1999-2008 ACCESS CO., LTD. All rights reserved.