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_NOT_FOUND_CODE_VAL 404
00147
00151 #define AXIS2_HTTP_RESPONSE_METHOD_NOT_ALLOWED_CODE_VAL 405
00152
00156 #define AXIS2_HTTP_RESPONSE_NOT_ACCEPTABLE_CODE_VAL 406
00157
00161 #define AXIS2_HTTP_RESPONSE_PROXY_AUTHENTICATION_REQUIRED_CODE_VAL 407
00162
00166 #define AXIS2_HTTP_RESPONSE_REQUEST_TIMEOUT_CODE_VAL 408
00167
00171 #define AXIS2_HTTP_RESPONSE_CONFLICT_CODE_VAL 409
00172
00176 #define AXIS2_HTTP_RESPONSE_GONE_CODE_VAL 410
00177
00181 #define AXIS2_HTTP_RESPONSE_LENGTH_REQUIRED_CODE_VAL 411
00182
00186 #define AXIS2_HTTP_RESPONSE_PRECONDITION_FAILED_CODE_VAL 412
00187
00191 #define AXIS2_HTTP_RESPONSE_REQUEST_ENTITY_TOO_LARGE_CODE_VAL 413
00192
00196 #define AXIS2_HTTP_RESPONSE_INTERNAL_SERVER_ERROR_CODE_VAL 500
00197
00201 #define AXIS2_HTTP_RESPONSE_NOT_IMPLEMENTED_CODE_VAL 501
00202
00206 #define AXIS2_HTTP_RESPONSE_SERVICE_UNAVAILABLE_CODE_VAL 503
00207
00211 #define AXIS2_HTTP_RESPONSE_CONTINUE_CODE_NAME "Continue"
00212
00216 #define AXIS2_HTTP_RESPONSE_OK_CODE_NAME "OK"
00217
00218
00219
00220
00221 #define AXIS2_HTTP_RESPONSE_CREATED_CODE_NAME "Created"
00222
00226 #define AXIS2_HTTP_RESPONSE_ACK_CODE_NAME "Accepted"
00227
00231 #define AXIS2_HTTP_RESPONSE_NO_CONTENT_CODE_NAME "No Content"
00232
00236 #define AXIS2_HTTP_RESPONSE_NON_AUTHORITATIVE_INFO_CODE_NAME "Non-Authoritative Information"
00237
00241 #define AXIS2_HTTP_RESPONSE_RESET_CONTENT_CODE_NAME "Reset Content"
00242
00246 #define AXIS2_HTTP_RESPONSE_MULTIPLE_CHOICES_CODE_NAME "Multiple Choices"
00247
00251 #define AXIS2_HTTP_RESPONSE_MOVED_PERMANENTLY_CODE_NAME "Moved Permanently"
00252
00256 #define AXIS2_HTTP_RESPONSE_SEE_OTHER_CODE_NAME "See Other"
00257
00261 #define AXIS2_HTTP_RESPONSE_NOT_MODIFIED_CODE_NAME "Not Modified"
00262
00266 #define AXIS2_HTTP_RESPONSE_TEMPORARY_REDIRECT_CODE_NAME "Temporary Redirect"
00267
00271 #define AXIS2_HTTP_RESPONSE_BAD_REQUEST_CODE_NAME "Bad Request"
00272
00276 #define AXIS2_HTTP_RESPONSE_HTTP_UNAUTHORIZED_CODE_NAME "Unauthorized"
00277
00281 #define AXIS2_HTTP_RESPONSE_NOT_FOUND_CODE_NAME "Not Found"
00282
00286 #define AXIS2_HTTP_RESPONSE_METHOD_NOT_ALLOWED_CODE_NAME "Method Not Allowed"
00287
00291 #define AXIS2_HTTP_RESPONSE_NOT_ACCEPTABLE_CODE_NAME "Not Acceptable"
00292
00296 #define AXIS2_HTTP_RESPONSE_PROXY_AUTHENTICATION_REQUIRED_CODE_NAME "Proxy Authentication Required"
00297
00301 #define AXIS2_HTTP_RESPONSE_REQUEST_TIMEOUT_CODE_NAME "Request Timeout"
00302
00306 #define AXIS2_HTTP_RESPONSE_CONFLICT_CODE_NAME "Conflict"
00307
00311 #define AXIS2_HTTP_RESPONSE_GONE_CODE_NAME "Gone"
00312
00316 #define AXIS2_HTTP_RESPONSE_LENGTH_REQUIRED_CODE_NAME "Length Required"
00317
00321 #define AXIS2_HTTP_RESPONSE_PRECONDITION_FAILED_CODE_NAME "Precondition Failed"
00322
00326 #define AXIS2_HTTP_RESPONSE_REQUEST_ENTITY_TOO_LARGE_CODE_NAME "Request Entity Too Large"
00327
00331 #define AXIS2_HTTP_RESPONSE_INTERNAL_SERVER_ERROR_CODE_NAME "Internal Server Error"
00332
00336 #define AXIS2_HTTP_RESPONSE_NOT_IMPLEMENTED_CODE_NAME "Not Implemented"
00337
00341 #define AXIS2_HTTP_RESPONSE_SERVICE_UNAVAILABLE_CODE_NAME "Service Unavailable"
00342
00346 #define AXIS2_SOCKET "SOCKET"
00347
00351 #define AXIS2_HTTP_HEADER_PROTOCOL_10 "HTTP/1.0"
00352
00356 #define AXIS2_HTTP_HEADER_PROTOCOL_11 "HTTP/1.1"
00357
00361 #define AXIS2_HTTP_CHAR_SET_ENCODING "charset"
00362
00366 #define AXIS2_HTTP_POST "POST"
00367
00371 #define AXIS2_HTTP_GET "GET"
00372
00376 #define AXIS2_HTTP_HEAD "HEAD"
00377
00381 #define AXIS2_HTTP_PUT "PUT"
00382
00386 #define AXIS2_HTTP_DELETE "DELETE"
00387
00391 #define AXIS2_HTTP_HEADER_HOST "Host"
00392
00396 #define AXIS2_HTP_HEADER_CONTENT_DESCRIPTION "Content-Description"
00397
00401 #define AXIS2_HTTP_HEADER_CONTENT_TYPE "Content-Type"
00402 #define AXIS2_HTTP_HEADER_CONTENT_TYPE_ "Content-Type: "
00403
00408 #define AXIS2_USER_DEFINED_HTTP_HEADER_CONTENT_TYPE "User_Content_Type"
00409
00413 #define AXIS2_HTTP_HEADER_CONTENT_TYPE_MIME_BOUNDARY "boundary"
00414
00418 #define AXIS2_HTTP_HEADER_CONTENT_TRANSFER_ENCODING \
00419 "Content-Transfer-Encoding"
00420
00424 #define AXIS2_HTTP_HEADER_CONTENT_LENGTH "Content-Length"
00425
00429 #define AXIS2_HTTP_HEADER_CONTENT_LANGUAGE "Content-Language"
00430
00431 #define AXIS2_HTTP_HEADER_CONTENT_LENGTH_ "Content-Length: "
00432
00436 #define AXIS2_HTTP_HEADER_CONTENT_LOCATION "Content-Location"
00437
00441 #define AXIS2_HTTP_HEADER_CONTENT_ID "Content-Id"
00442
00446 #define AXIS2_HTTP_HEADER_SOAP_ACTION "SOAPAction"
00447 #define AXIS2_HTTP_HEADER_SOAP_ACTION_ "SOAPAction: "
00448
00452 #define AXIS2_HTTP_HEADER_AUTHORIZATION "Authorization"
00453
00457 #define AXIS2_HTTP_HEADER_WWW_AUTHENTICATE "WWW-Authenticate"
00458
00462 #define AXIS2_HTTP_HEADER_PROXY_AUTHENTICATE "Proxy-Authenticate"
00463
00467 #define AXIS2_HTTP_HEADER_PROXY_AUTHORIZATION "Proxy-Authorization"
00468
00472 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_REALM "realm"
00473
00477 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_DOMAIN "domain"
00478
00482 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_NONCE "nonce"
00483
00487 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_OPAQUE "opaque"
00488
00492 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_STALE "stale"
00493
00497 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_ALGORITHM "algorithm"
00498
00502 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_QOP "qop"
00503
00507 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_USERNAME "username"
00508
00512 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_URI "uri"
00513
00517 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_RESPONSE "response"
00518
00522 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_NONCE_COUNT "nc"
00523
00527 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_PARAM_CLIENT_NONCE "cnonce"
00528
00532 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_DEFAULT_CLIENT_NONCE "00000001"
00533
00537 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_QOP_OPTION_AUTH "auth"
00538
00542 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_QOP_OPTION_AUTH_INT "auth-int"
00543
00547 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_STALE_STATE_TRUE "true"
00548
00552 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_STALE_STATE_FALSE "false"
00553
00557 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_ALGORITHM_MD5 "MD5"
00558
00562 #define AXIS2_HTTP_AUTHORIZATION_REQUEST_ALGORITHM_MD5_SESS "MD5-sess"
00563
00567 #define AXIS2_HTTP_HEADER_EXPECT "Expect"
00568
00572 #define AXIS2_HTTP_HEADER_EXPECT_100_CONTINUE "100-continue"
00573
00577 #define AXIS2_HTTP_HEADER_USER_AGENT "User-Agent"
00578
00582 #define AXIS2_HTTP_HEADER_USER_AGENT_AXIS2C "User-Agent: Axis2C/" AXIS2_VERSION_STRING
00583
00587 #define AXIS2_HTTP_HEADER_SERVER "Server"
00588
00592 #define AXIS2_HTTP_HEADER_DATE "Date"
00593
00597 #define AXIS2_HTTP_HEADER_SERVER_AXIS2C "Axis2C/" AXIS2_VERSION_STRING
00598
00599 #define AXIS2_HTTP_HEADER_ACCEPT_ "Accept: "
00600
00601 #define AXIS2_HTTP_HEADER_EXPECT_ "Expect: "
00602
00606 #define AXIS2_HTTP_HEADER_CACHE_CONTROL "Cache-Control"
00607
00611 #define AXIS2_HTTP_HEADER_CACHE_CONTROL_NOCACHE "no-cache"
00612
00616 #define AXIS2_HTTP_HEADER_PRAGMA "Pragma"
00617
00621 #define AXIS2_HTTP_HEADER_LOCATION "Location"
00622
00626 #define AXIS2_HTTP_REQUEST_HEADERS "HTTP-Request-Headers"
00627
00631 #define AXIS2_HTTP_RESPONSE_HEADERS "HTTP-Response-Headers"
00632
00633
00634
00638 #define AXIS2_HTTP_HEADER_TRANSFER_ENCODING "Transfer-Encoding"
00639
00643 #define AXIS2_HTTP_HEADER_TRANSFER_ENCODING_CHUNKED "chunked"
00644
00648 #define AXIS2_HTTP_HEADER_CONNECTION "Connection"
00649
00653 #define AXIS2_HTTP_HEADER_CONNECTION_CLOSE "close"
00654
00658 #define AXIS2_HTTP_HEADER_CONNECTION_KEEPALIVE "Keep-Alive"
00659
00663 #define AXIS2_HTTP_HEADER_ACCEPT "Accept"
00664
00668 #define AXIS2_HTTP_HEADER_ACCEPT_CHARSET "Accept-Charset"
00669
00673 #define AXIS2_HTTP_HEADER_ACCEPT_LANGUAGE "Accept-Language"
00674
00678 #define AXIS2_HTTP_HEADER_ALLOW "Allow"
00679
00683 #define AXIS2_HTTP_HEADER_ACCEPT_ALL "*
00684
00688
00689
00693
00694
00698
00699
00703
00704
00708
00709
00713
00714
00718
00719
00723
00724
00728
00729
00733
00734
00738
00739
00743
00744
00748
00749
00753
00754
00758
00759
00763
00764
00768
00769
00773
00774
00778
00779
00783
00784
00788
00789
00793
00794
00798
00799
00803
00804
00808
00809
00813
00814
00815
00816
00820
00821
00825
00826
00830
00831
00835
00836
00840
00841
00845
00846
00850
00851
00855
00856
00860
00861
00865
00866
00870
00871
00875
00876
00880
00881
00882
00883
00884
00888
00889
00893
00894
00898
00899
00903
00904
00908
00909
00913
00914
00918
00919
00923
00924
00925
00926
00927
00931 #define AXIS2_HTTP_AUTH_TYPE_BASIC "Basic"
00932
00936 #define AXIS2_HTTP_AUTH_TYPE_DIGEST "Digest"
00937
00941 #define AXIS2_PROXY_AUTH_TYPE_BASIC "Basic"
00942
00946 #define AXIS2_PROXY_AUTH_TYPE_DIGEST "Digest"
00947
00948
00952 #define AXIS2_HTTP_TRANSPORT_ERROR "http_transport_error"
00953
00957 #define AXIS2_HTTP_UNSUPPORTED_MEDIA_TYPE "415 Unsupported Media Type\r\n"
00958
00963 #define AXIS2_TRANSPORT_HEADER_PROPERTY "HTTP_HEADER_PROPERTY"
00964
00965
00966 #define AXIS2_TRANSPORT_URL_HTTPS "HTTPS"
00967
00968 #define AXIS2_Q_MARK_STR "?"
00969
00970 #define AXIS2_Q_MARK '?'
00971
00972 #define AXIS2_H_MARK '#'
00973
00974 #define AXIS2_ALL "ALL"
00975
00976 #define AXIS2_USER_AGENT "Axis2C/" AXIS2_VERSION_STRING
00977
00978 #define AXIS2_AND_SIGN "&"
00979
00980 #define AXIS2_ESC_DOUBLE_QUOTE '\"'
00981
00982 #define AXIS2_ESC_DOUBLE_QUOTE_STR "\""
00983
00984 #define AXIS2_ESC_SINGLE_QUOTE '\''
00985
00986 #define AXIS2_DOUBLE_QUOTE '"'
00987
00988 #define AXIS2_ESC_NULL '\0'
00989
00990 #define AXIS2_SEMI_COLON_STR ";"
00991
00992 #define AXIS2_SEMI_COLON ';'
00993
00994 #define AXIS2_COLON ':'
00995
00996 #define AXIS2_COLON_STR ":"
00997
00998 #define AXIS2_CONTENT_TYPE_ACTION ";action=\""
00999
01000 #define AXIS2_CONTENT_TYPE_CHARSET ";charset="
01001
01002 #define AXIS2_CHARSET "charset"
01003
01004 #define AXIS2_PORT_STRING "port"
01005
01006 #define AXIS2_DEFAULT_HOST_ADDRESS "127.0.0.1"
01007
01008 #define AXIS2_DEFAULT_SVC_PATH "/axis2/services/"
01009
01010 #define AXIS2_HTTP_PROTOCOL "http"
01011
01012 #define AXIS2_HTTP "HTTP"
01013
01014 #define AXIS2_SPACE_COMMA " ,"
01015
01016 #define AXIS2_COMMA ','
01017
01018 #define AXIS2_Q 'q'
01019
01020 #define AXIS2_EQ_N_SEMICOLON " =;"
01021
01022 #define AXIS2_LEVEL "level"
01023
01024 #define AXIS2_SPACE_SEMICOLON " ;"
01025
01026 #define AXIS2_SPACE ' '
01027
01028 #define AXIS2_RETURN '\r'
01029
01030 #define AXIS2_NEW_LINE '\n'
01031
01032 #define AXIS2_F_SLASH '/'
01033
01034 #define AXIS2_B_SLASH '\\'
01035
01036 #define AXIS2_EQ '='
01037
01038 #define AXIS2_AND '&'
01039
01040 #define AXIS2_PERCENT '%'
01041
01042 #define AXIS2_HTTP_SERVER " (Simple Axis2 HTTP Server)"
01043
01044 #define AXIS2_COMMA_SPACE_STR ", "
01045
01046 #define AXIS2_SPACE_TAB_EQ " \t="
01047
01048 #define AXIS2_ACTION "action"
01049
01050
01051
01052 #define AXIS2_HTTP_NOT_FOUND "<html><head><title>404 Not Found</title></head>\
01053 <body><h2>Not Found</h2><p>The requested URL was not found on this server.\
01054 </p></body></html>"
01055
01056
01057 #define AXIS2_HTTP_NOT_IMPLEMENTED "<html><head><title>501 Not Implemented\
01058 </title></head><body><h2>Not Implemented</h2><p>The requested Method is not\
01059 implemented on this server.</p></body></html>"
01060
01061
01062 #define AXIS2_HTTP_INTERNAL_SERVER_ERROR "<html><head><title>500 Internal Server\
01063 Error</title></head><body><h2>Internal Server Error</h2><p>The server \
01064 encountered an unexpected condition which prevented it from fulfilling the \
01065 request.</p></body></html>"
01066
01067
01068 #define AXIS2_HTTP_METHOD_NOT_ALLOWED "<html><head><title>405 Method Not Allowed\
01069 </title></head><body><h2>Method Not Allowed</h2><p>The requested method is not\
01070 allowed for this URL.</p></body></html>"
01071
01072 #define AXIS2_HTTP_NOT_ACCEPTABLE "<html><head><title>406 Not Acceptable\
01073 </title></head><body><h2>Not Acceptable</h2><p>An appropriate representation of \
01074 the requested resource could not be found on this server.</p></body></html>"
01075
01076 #define AXIS2_HTTP_BAD_REQUEST "<html><head><title>400 Bad Request</title>\
01077 </head><body><h2>Bad Request</h2><p>Your client sent a request that this server\
01078 could not understand.</p></body></html>"
01079
01080 #define AXIS2_HTTP_REQUEST_TIMEOUT "<html><head><title>408 Request Timeout\
01081 </title></head><body><h2>Request Timeout</h2><p>Cannot wait any longer for \
01082 the HTTP request from the client.</p></body></html>"
01083
01084 #define AXIS2_HTTP_CONFLICT "<html><head><title>409 Conflict</title></head>\
01085 <body><h2>Conflict</h2><p>The client attempted to put the server\'s resources\
01086 into an invalid state.</p></body></html>"
01087
01088 #define AXIS2_HTTP_GONE "<html><head><title>410 Gone</title></head><body>\
01089 <h2>Gone</h2><p>The requested resource is no longer available on this server.\
01090 </p></body></html>"
01091
01092 #define AXIS2_HTTP_PRECONDITION_FAILED "<html><head><title>412 Precondition \
01093 Failed</title></head><body><h2>Precondition Failed</h2><p>A precondition for\
01094 the requested URL failed.</p></body></html>"
01095
01096 #define AXIS2_HTTP_TOO_LARGE "<html><head><title>413 Request Entity Too Large\
01097 </title></head><body><h2>Request Entity Too Large</h2><p>The data provided in\
01098 the request is too large or the requested resource does not allow request \
01099 data.</p></body></html>"
01100
01101 #define AXIS2_HTTP_SERVICE_UNAVILABLE "<html><head><title>503 Service \
01102 Unavailable</title></head><body><h2>Service Unavailable</h2><p>The service\
01103 is temporarily unable to serve your request.</p></body></html>"
01104
01107 #ifdef __cplusplus
01108 }
01109 #endif
01110 #endif