00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef AXIS2_HTTP_TRANSPORT_H
00019 #define AXIS2_HTTP_TRANSPORT_H
00020
00021 #include <axis2_const.h>
00022 #include <axutil_version.h>
00023 #include <axiom_mime_const.h>
00024
00025 #ifdef __cplusplus
00026 extern "C"
00027 {
00028 #endif
00029
00046 #define AXIS2_HTTP_OUT_TRANSPORT_INFO "HTTPOutTransportInfo"
00047
00051 #define AXIS2_HTTP_CRLF AXIS2_CRLF
00052
00056 #define AXIS2_HTTP_PROTOCOL_VERSION "PROTOCOL"
00057
00061 #define AXIS2_HTTP_REQUEST_URI "REQUEST_URI"
00062
00066 #define AXIS2_HTTP_RESPONSE_CODE "RESPONSE_CODE"
00067
00071 #define AXIS2_HTTP_RESPONSE_WORD "RESPONSE_WORD"
00072
00073
00074
00075
00076 #define AXIS2_HTTP_RESPONSE_CONTINUE_CODE_VAL 100
00077
00078
00079
00080
00081 #define AXIS2_HTTP_RESPONSE_OK_CODE_VAL 200
00082
00083
00084
00085
00086 #define AXIS2_HTTP_RESPONSE_CREATED_CODE_VAL 201
00087
00091 #define AXIS2_HTTP_RESPONSE_ACK_CODE_VAL 202
00092
00096 #define AXIS2_HTTP_RESPONSE_NON_AUTHORITATIVE_INFO_CODE_VAL 203
00097
00101 #define AXIS2_HTTP_RESPONSE_NO_CONTENT_CODE_VAL 204
00102
00106 #define AXIS2_HTTP_RESPONSE_RESET_CONTENT_CODE_VAL 205
00107
00111 #define AXIS2_HTTP_RESPONSE_MULTIPLE_CHOICES_CODE_VAL 300
00112
00116 #define AXIS2_HTTP_RESPONSE_MOVED_PERMANENTLY_CODE_VAL 301
00117
00121 #define AXIS2_HTTP_RESPONSE_SEE_OTHER_CODE_VAL 303
00122
00126 #define AXIS2_HTTP_RESPONSE_NOT_MODIFIED_CODE_VAL 304
00127
00131 #define AXIS2_HTTP_RESPONSE_TEMPORARY_REDIRECT_CODE_VAL 307
00132
00136 #define AXIS2_HTTP_RESPONSE_BAD_REQUEST_CODE_VAL 400
00137
00141 #define AXIS2_HTTP_RESPONSE_HTTP_UNAUTHORIZED_CODE_VAL 401
00142
00146 #define AXIS2_HTTP_RESPONSE_FORBIDDEN_CODE_VAL 403
00147
00148
00152 #define AXIS2_HTTP_RESPONSE_NOT_FOUND_CODE_VAL 404
00153
00157 #define AXIS2_HTTP_RESPONSE_METHOD_NOT_ALLOWED_CODE_VAL 405
00158
00162 #define AXIS2_HTTP_RESPONSE_NOT_ACCEPTABLE_CODE_VAL 406
00163
00167 #define AXIS2_HTTP_RESPONSE_PROXY_AUTHENTICATION_REQUIRED_CODE_VAL 407
00168
00172 #define AXIS2_HTTP_RESPONSE_REQUEST_TIMEOUT_CODE_VAL 408
00173
00177 #define AXIS2_HTTP_RESPONSE_CONFLICT_CODE_VAL 409
00178
00182 #define AXIS2_HTTP_RESPONSE_GONE_CODE_VAL 410
00183
00187 #define AXIS2_HTTP_RESPONSE_LENGTH_REQUIRED_CODE_VAL 411
00188
00192 #define AXIS2_HTTP_RESPONSE_PRECONDITION_FAILED_CODE_VAL 412
00193
00197 #define AXIS2_HTTP_RESPONSE_REQUEST_ENTITY_TOO_LARGE_CODE_VAL 413
00198
00202 #define AXIS2_HTTP_RESPONSE_INTERNAL_SERVER_ERROR_CODE_VAL 500
00203
00207 #define AXIS2_HTTP_RESPONSE_NOT_IMPLEMENTED_CODE_VAL 501
00208
00212 #define AXIS2_HTTP_RESPONSE_SERVICE_UNAVAILABLE_CODE_VAL 503
00213
00217 #define AXIS2_HTTP_RESPONSE_CONTINUE_CODE_NAME "Continue"
00218
00222 #define AXIS2_HTTP_RESPONSE_OK_CODE_NAME "OK"
00223
00224
00225
00226
00227 #define AXIS2_HTTP_RESPONSE_CREATED_CODE_NAME "Created"
00228
00232 #define AXIS2_HTTP_RESPONSE_ACK_CODE_NAME "Accepted"
00233
00237 #define AXIS2_HTTP_RESPONSE_NO_CONTENT_CODE_NAME "No Content"
00238
00242 #define AXIS2_HTTP_RESPONSE_NON_AUTHORITATIVE_INFO_CODE_NAME "Non-Authoritative Information"
00243
00247 #define AXIS2_HTTP_RESPONSE_RESET_CONTENT_CODE_NAME "Reset Content"
00248
00252 #define AXIS2_HTTP_RESPONSE_MULTIPLE_CHOICES_CODE_NAME "Multiple Choices"
00253
00257 #define AXIS2_HTTP_RESPONSE_MOVED_PERMANENTLY_CODE_NAME "Moved Permanently"
00258
00262 #define AXIS2_HTTP_RESPONSE_SEE_OTHER_CODE_NAME "See Other"
00263
00267 #define AXIS2_HTTP_RESPONSE_NOT_MODIFIED_CODE_NAME "Not Modified"
00268
00272 #define AXIS2_HTTP_RESPONSE_TEMPORARY_REDIRECT_CODE_NAME "Temporary Redirect"
00273
00277 #define AXIS2_HTTP_RESPONSE_BAD_REQUEST_CODE_NAME "Bad Request"
00278
00282 #define AXIS2_HTTP_RESPONSE_HTTP_UNAUTHORIZED_CODE_NAME "Unauthorized"
00283
00284
00288 #define AXIS2_HTTP_RESPONSE_HTTP_FORBIDDEN_CODE_NAME "Forbidden"
00289
00293 #define AXIS2_HTTP_RESPONSE_NOT_FOUND_CODE_NAME "Not Found"
00294
00298 #define AXIS2_HTTP_RESPONSE_METHOD_NOT_ALLOWED_CODE_NAME "Method Not Allowed"
00299
00303 #define AXIS2_HTTP_RESPONSE_NOT_ACCEPTABLE_CODE_NAME "Not Acceptable"
00304
00308 #define AXIS2_HTTP_RESPONSE_PROXY_AUTHENTICATION_REQUIRED_CODE_NAME "Proxy Authentication Required"
00309
00313 #define AXIS2_HTTP_RESPONSE_REQUEST_TIMEOUT_CODE_NAME "Request Timeout"
00314
00318 #define AXIS2_HTTP_RESPONSE_CONFLICT_CODE_NAME "Conflict"
00319
00323 #define AXIS2_HTTP_RESPONSE_GONE_CODE_NAME "Gone"
00324
00328 #define AXIS2_HTTP_RESPONSE_LENGTH_REQUIRED_CODE_NAME "Length Required"
00329
00333 #define AXIS2_HTTP_RESPONSE_PRECONDITION_FAILED_CODE_NAME "Precondition Failed"
00334
00338 #define AXIS2_HTTP_RESPONSE_REQUEST_ENTITY_TOO_LARGE_CODE_NAME "Request Entity Too Large"
00339
00343 #define AXIS2_HTTP_RESPONSE_INTERNAL_SERVER_ERROR_CODE_NAME "Internal Server Error"
00344
00348 #define AXIS2_HTTP_RESPONSE_NOT_IMPLEMENTED_CODE_NAME "Not Implemented"
00349
00353 #define AXIS2_HTTP_RESPONSE_SERVICE_UNAVAILABLE_CODE_NAME "Service Unavailable"
00354
00358 #define AXIS2_SOCKET "SOCKET"
00359
00363 #define AXIS2_HTTP_HEADER_PROTOCOL_10 "HTTP/1.0"
00364
00368 #define AXIS2_HTTP_HEADER_PROTOCOL_11 "HTTP/1.1"
00369
00373 #define AXIS2_HTTP_CHAR_SET_ENCODING "charset"
00374
00378 #define AXIS2_HTTP_POST "POST"
00379
00383 #define AXIS2_HTTP_GET "GET"
00384
00388 #define AXIS2_HTTP_HEAD "HEAD"
00389
00393 #define AXIS2_HTTP_PUT "PUT"
00394
00398 #define AXIS2_HTTP_DELETE "DELETE"
00399
00403 #define AXIS2_HTTP_HEADER_HOST "Host"
00404
00408 #define AXIS2_HTP_HEADER_CONTENT_DESCRIPTION "Content-Description"
00409
00413 #define AXIS2_HTTP_HEADER_CONTENT_TYPE "Content-Type"
00414 #define AXIS2_HTTP_HEADER_CONTENT_TYPE_ "Content-Type: "
00415
00420 #define AXIS2_USER_DEFINED_HTTP_HEADER_CONTENT_TYPE "User_Content_Type"
00421
00425 #define AXIS2_HTTP_HEADER_CONTENT_TYPE_MIME_BOUNDARY "boundary"
00426
00430 #define AXIS2_HTTP_HEADER_CONTENT_TRANSFER_ENCODING \
00431 "Content-Transfer-Encoding"
00432
00436 #define AXIS2_HTTP_HEADER_CONTENT_LENGTH "Content-Length"
00437
00441 #define AXIS2_HTTP_HEADER_CONTENT_LANGUAGE "Content-Language"
00442
00443 #define AXIS2_HTTP_HEADER_CONTENT_LENGTH_ "Content-Length: "
00444
00448 #define AXIS2_HTTP_HEADER_CONTENT_LOCATION "Content-Location"
00449
00453 #define AXIS2_HTTP_HEADER_CONTENT_ID "Content-Id"
00454
00458 #define AXIS2_HTTP_HEADER_SOAP_ACTION "SOAPAction"
00459 #define AXIS2_HTTP_HEADER_SOAP_ACTION_ "SOAPAction: "
00460
00464 #define AXIS2_HTTP_HEADER_AUTHORIZATION "Authorization"
00465
00469 #define AXIS2_HTTP_HEADER_WWW_AUTHENTICATE "WWW-Authenticate"
00470
00474 #define AXIS2_HTTP_HEADER_PROXY_AUTHENTICATE "Proxy-Authenticate"
00475
00479 #define AXIS2_HTTP_HEADER_PROXY_AUTHORIZATION "Proxy-Authorization"
00480
00484 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_REALM "realm"
00485
00489 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_DOMAIN "domain"
00490
00494 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_NONCE "nonce"
00495
00499 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_OPAQUE "opaque"
00500
00504 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_STALE "stale"
00505
00509 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_ALGORITHM "algorithm"
00510
00514 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_QOP "qop"
00515
00519 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_USERNAME "username"
00520
00524 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_URI "uri"
00525
00529 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_RESPONSE "response"
00530
00534 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_NONCE_COUNT "nc"
00535
00539 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_CLIENT_NONCE "cnonce"
00540
00544 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_DEFAULT_CLIENT_NONCE "00000001"
00545
00549 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_QOP_OPTION_AUTH "auth"
00550
00554 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_QOP_OPTION_AUTH_INT "auth-int"
00555
00559 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_STALE_STATE_TRUE "true"
00560
00564 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_STALE_STATE_FALSE "false"
00565
00569 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_ALGORITHM_MD5 "MD5"
00570
00574 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_ALGORITHM_MD5_SESS "MD5-sess"
00575
00579 #define AXIS2_HTTP_HEADER_EXPECT "Expect"
00580
00584 #define AXIS2_HTTP_HEADER_EXPECT_100_CONTINUE "100-continue"
00585
00589 #define AXIS2_HTTP_HEADER_USER_AGENT "User-Agent"
00590
00594 #define AXIS2_HTTP_HEADER_USER_AGENT_AXIS2C "User-Agent: Axis2C/" AXIS2_VERSION_STRING
00595
00599 #define AXIS2_HTTP_HEADER_SERVER "Server"
00600
00604 #define AXIS2_HTTP_HEADER_DATE "Date"
00605
00609 #define AXIS2_HTTP_HEADER_SERVER_AXIS2C "Axis2C/" AXIS2_VERSION_STRING
00610
00611 #define AXIS2_HTTP_HEADER_ACCEPT_ "Accept: "
00612
00613 #define AXIS2_HTTP_HEADER_EXPECT_ "Expect: "
00614
00618 #define AXIS2_HTTP_HEADER_CACHE_CONTROL "Cache-Control"
00619
00623 #define AXIS2_HTTP_HEADER_CACHE_CONTROL_NOCACHE "no-cache"
00624
00628 #define AXIS2_HTTP_HEADER_PRAGMA "Pragma"
00629
00633 #define AXIS2_HTTP_HEADER_LOCATION "Location"
00634
00638 #define AXIS2_HTTP_REQUEST_HEADERS "HTTP-Request-Headers"
00639
00643 #define AXIS2_HTTP_RESPONSE_HEADERS "HTTP-Response-Headers"
00644
00645
00646
00650 #define AXIS2_HTTP_HEADER_TRANSFER_ENCODING "Transfer-Encoding"
00651
00655 #define AXIS2_HTTP_HEADER_TRANSFER_ENCODING_CHUNKED "chunked"
00656
00660 #define AXIS2_HTTP_HEADER_CONNECTION "Connection"
00661
00665 #define AXIS2_HTTP_HEADER_CONNECTION_CLOSE "close"
00666
00670 #define AXIS2_HTTP_HEADER_CONNECTION_KEEPALIVE "Keep-Alive"
00671
00675 #define AXIS2_HTTP_HEADER_ACCEPT "Accept"
00676
00680 #define AXIS2_HTTP_HEADER_ACCEPT_CHARSET "Accept-Charset"
00681
00685 #define AXIS2_HTTP_HEADER_ACCEPT_LANGUAGE "Accept-Language"
00686
00690 #define AXIS2_HTTP_HEADER_ALLOW "Allow"
00691
00695 #define AXIS2_HTTP_HEADER_ACCEPT_ALL "*
00696
00700
00701
00705
00706
00710
00711
00715
00716
00720
00721
00725
00726
00730
00731
00735
00736
00740
00741
00745
00746
00750
00751
00755
00756
00760
00761
00765
00766
00770
00771
00775
00776
00780
00781
00785
00786
00787
00791
00792
00796
00797
00801
00802
00806
00807
00811
00812
00816
00817
00821
00822
00826
00827
00831
00832
00833
00834
00838
00839
00843
00844
00848
00849
00853
00854
00858
00859
00863
00864
00868
00869
00873
00874
00878
00879
00883
00884
00888
00889
00893
00894
00898
00899
00900
00901
00902
00906
00907
00911
00912
00916
00917
00921
00922
00926
00927
00931
00932
00936
00937
00941
00942
00943
00944
00945
00949 #define AXIS2_HTTP_AUTH_TYPE_BASIC "Basic"
00950
00954 #define AXIS2_HTTP_AUTH_TYPE_DIGEST "Digest"
00955
00959 #define AXIS2_PROXY_AUTH_TYPE_BASIC "Basic"
00960
00964 #define AXIS2_PROXY_AUTH_TYPE_DIGEST "Digest"
00965
00966
00970 #define AXIS2_HTTP_TRANSPORT_ERROR "http_transport_error"
00971
00975 #define AXIS2_HTTP_UNSUPPORTED_MEDIA_TYPE "415 Unsupported Media Type\r\n"
00976
00981 #define AXIS2_TRANSPORT_HEADER_PROPERTY "HTTP_HEADER_PROPERTY"
00982
00983
00984 #define AXIS2_TRANSPORT_URL_HTTPS "HTTPS"
00985
00986 #define AXIS2_Q_MARK_STR "?"
00987
00988 #define AXIS2_Q_MARK '?'
00989
00990 #define AXIS2_H_MARK '#'
00991
00992 #define AXIS2_ALL "ALL"
00993
00994 #define AXIS2_USER_AGENT "Axis2C/" AXIS2_VERSION_STRING
00995
00996 #define AXIS2_AND_SIGN "&"
00997
00998 #define AXIS2_ESC_DOUBLE_QUOTE '\"'
00999
01000 #define AXIS2_ESC_DOUBLE_QUOTE_STR "\""
01001
01002 #define AXIS2_ESC_SINGLE_QUOTE '\''
01003
01004 #define AXIS2_DOUBLE_QUOTE '"'
01005
01006 #define AXIS2_ESC_NULL '\0'
01007
01008 #define AXIS2_SEMI_COLON_STR ";"
01009
01010 #define AXIS2_SEMI_COLON ';'
01011
01012 #define AXIS2_COLON ':'
01013
01014 #define AXIS2_COLON_STR ":"
01015
01016 #define AXIS2_CONTENT_TYPE_ACTION ";action=\""
01017
01018 #define AXIS2_CONTENT_TYPE_CHARSET ";charset="
01019
01020 #define AXIS2_CHARSET "charset"
01021
01022 #define AXIS2_PORT_STRING "port"
01023
01024 #define AXIS2_DEFAULT_HOST_ADDRESS "127.0.0.1"
01025
01026 #define AXIS2_DEFAULT_SVC_PATH "/axis2/services/"
01027
01028 #define AXIS2_HTTP_PROTOCOL "http"
01029
01030 #define AXIS2_HTTP "HTTP"
01031
01032 #define AXIS2_SPACE_COMMA " ,"
01033
01034 #define AXIS2_COMMA ','
01035
01036 #define AXIS2_Q 'q'
01037
01038 #define AXIS2_EQ_N_SEMICOLON " =;"
01039
01040 #define AXIS2_LEVEL "level"
01041
01042 #define AXIS2_SPACE_SEMICOLON " ;"
01043
01044 #define AXIS2_SPACE ' '
01045
01046 #define AXIS2_RETURN '\r'
01047
01048 #define AXIS2_NEW_LINE '\n'
01049
01050 #define AXIS2_F_SLASH '/'
01051
01052 #define AXIS2_B_SLASH '\\'
01053
01054 #define AXIS2_EQ '='
01055
01056 #define AXIS2_AND '&'
01057
01058 #define AXIS2_PERCENT '%'
01059
01060 #define AXIS2_HTTP_SERVER " (Simple Axis2 HTTP Server)"
01061
01062 #define AXIS2_COMMA_SPACE_STR ", "
01063
01064 #define AXIS2_SPACE_TAB_EQ " \t="
01065
01066 #define AXIS2_ACTION "action"
01067
01068
01069
01070 #define AXIS2_HTTP_NOT_FOUND "<html><head><title>404 Not Found</title></head>\
01071 <body><h2>Not Found</h2><p>The requested URL was not found on this server.\
01072 </p></body></html>"
01073
01074
01075 #define AXIS2_HTTP_NOT_IMPLEMENTED "<html><head><title>501 Not Implemented\
01076 </title></head><body><h2>Not Implemented</h2><p>The requested Method is not\
01077 implemented on this server.</p></body></html>"
01078
01079
01080 #define AXIS2_HTTP_INTERNAL_SERVER_ERROR "<html><head><title>500 Internal Server\
01081 Error</title></head><body><h2>Internal Server Error</h2><p>The server \
01082 encountered an unexpected condition which prevented it from fulfilling the \
01083 request.</p></body></html>"
01084
01085
01086 #define AXIS2_HTTP_METHOD_NOT_ALLOWED "<html><head><title>405 Method Not Allowed\
01087 </title></head><body><h2>Method Not Allowed</h2><p>The requested method is not\
01088 allowed for this URL.</p></body></html>"
01089
01090 #define AXIS2_HTTP_NOT_ACCEPTABLE "<html><head><title>406 Not Acceptable\
01091 </title></head><body><h2>Not Acceptable</h2><p>An appropriate representation of \
01092 the requested resource could not be found on this server.</p></body></html>"
01093
01094 #define AXIS2_HTTP_BAD_REQUEST "<html><head><title>400 Bad Request</title>\
01095 </head><body><h2>Bad Request</h2><p>Your client sent a request that this server\
01096 could not understand.</p></body></html>"
01097
01098 #define AXIS2_HTTP_REQUEST_TIMEOUT "<html><head><title>408 Request Timeout\
01099 </title></head><body><h2>Request Timeout</h2><p>Cannot wait any longer for \
01100 the HTTP request from the client.</p></body></html>"
01101
01102 #define AXIS2_HTTP_CONFLICT "<html><head><title>409 Conflict</title></head>\
01103 <body><h2>Conflict</h2><p>The client attempted to put the server\'s resources\
01104 into an invalid state.</p></body></html>"
01105
01106 #define AXIS2_HTTP_GONE "<html><head><title>410 Gone</title></head><body>\
01107 <h2>Gone</h2><p>The requested resource is no longer available on this server.\
01108 </p></body></html>"
01109
01110 #define AXIS2_HTTP_PRECONDITION_FAILED "<html><head><title>412 Precondition \
01111 Failed</title></head><body><h2>Precondition Failed</h2><p>A precondition for\
01112 the requested URL failed.</p></body></html>"
01113
01114 #define AXIS2_HTTP_TOO_LARGE "<html><head><title>413 Request Entity Too Large\
01115 </title></head><body><h2>Request Entity Too Large</h2><p>The data provided in\
01116 the request is too large or the requested resource does not allow request \
01117 data.</p></body></html>"
01118
01119 #define AXIS2_HTTP_SERVICE_UNAVILABLE "<html><head><title>503 Service \
01120 Unavailable</title></head><body><h2>Service Unavailable</h2><p>The service\
01121 is temporarily unable to serve your request.</p></body></html>"
01122
01125 #ifdef __cplusplus
01126 }
01127 #endif
01128 #endif