00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031 #ifndef __TS_TYPES_H__
00032 #define __TS_TYPES_H__
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046 #include <stdint.h>
00047 #include <sys/types.h>
00048 #include <sys/socket.h>
00049
00050 #ifndef tsapi
00051 #define tsapi
00052 #endif
00053
00054 #if !defined(TS_PRINTFLIKE)
00055 #if defined(__GNUC__) || defined(__clang__)
00056 #define TS_PRINTFLIKE(fmt, arg) __attribute__((format(printf, fmt, arg)))
00057 #else
00058 #define TS_PRINTFLIKE(fmt, arg)
00059 #endif
00060 #endif
00061
00062 #if !defined(TS_NORETURN)
00063 #if defined(__GNUC__) || defined(__clang__)
00064 #define TS_NORETURN __attribute__((noreturn))
00065 #else
00066 #define TS_NORETURN
00067 #endif
00068 #endif
00069
00070 #ifdef __cplusplus
00071 extern "C"
00072 {
00073 #endif
00074
00075
00076
00077 #define TS_VERSION_STRING "5.2.0"
00078 #define TS_VERSION_NUMBER 5002000
00079 #define TS_VERSION_MAJOR 5
00080 #define TS_VERSION_MINOR 2
00081 #define TS_VERSION_MICRO 0
00082
00083 #define TS_HTTP_VERSION(a,b) ((((a) & 0xFFFF) << 16) | ((b) & 0xFFFF))
00084 #define TS_HTTP_MINOR(v) ((v) & 0xFFFF)
00085 #define TS_HTTP_MAJOR(v) (((v) >> 16) & 0xFFFF)
00086 #define __TS_RES_PATH(x) #x
00087 #define _TS_RES_PATH(x) __TS_RES_PATH (x)
00088 #define TS_RES_PATH(x) x __FILE__ ":" _TS_RES_PATH (__LINE__)
00089 #define TS_RES_MEM_PATH TS_RES_PATH ("memory/")
00090 #define TS_MAX_USER_NAME_LEN 256
00091
00092 #ifndef TS_DEPRECATED
00093 #define TS_DEPRECATED __attribute__ ((deprecated))
00094 #endif
00095
00096
00097
00098
00099
00100
00101 typedef struct
00102 {
00103 char* plugin_name;
00104 char* vendor_name;
00105 char* support_email;
00106 } TSPluginRegistrationInfo;
00107
00108
00109
00110
00111
00112
00113 typedef enum
00114 {
00115 TS_PARSE_ERROR = -1,
00116 TS_PARSE_DONE = 0,
00117 TS_PARSE_OK = 1,
00118 TS_PARSE_CONT = 2
00119 } TSParseResult;
00120
00121
00122
00123
00124
00125
00126
00127
00128
00129
00130
00131 typedef enum
00132 {
00133 TS_HTTP_TYPE_UNKNOWN,
00134 TS_HTTP_TYPE_REQUEST,
00135 TS_HTTP_TYPE_RESPONSE
00136 } TSHttpType;
00137
00138
00139
00140
00141
00142
00143
00144
00145
00146 typedef enum
00147 {
00148 TS_HTTP_STATUS_NONE = 0,
00149
00150 TS_HTTP_STATUS_CONTINUE = 100,
00151 TS_HTTP_STATUS_SWITCHING_PROTOCOL = 101,
00152
00153 TS_HTTP_STATUS_OK = 200,
00154 TS_HTTP_STATUS_CREATED = 201,
00155 TS_HTTP_STATUS_ACCEPTED = 202,
00156 TS_HTTP_STATUS_NON_AUTHORITATIVE_INFORMATION = 203,
00157 TS_HTTP_STATUS_NO_CONTENT = 204,
00158 TS_HTTP_STATUS_RESET_CONTENT = 205,
00159 TS_HTTP_STATUS_PARTIAL_CONTENT = 206,
00160 TS_HTTP_STATUS_MULTI_STATUS = 207,
00161 TS_HTTP_STATUS_ALREADY_REPORTED = 208,
00162 TS_HTTP_STATUS_IM_USED = 211,
00163
00164 TS_HTTP_STATUS_MULTIPLE_CHOICES = 300,
00165 TS_HTTP_STATUS_MOVED_PERMANENTLY = 301,
00166 TS_HTTP_STATUS_MOVED_TEMPORARILY = 302,
00167 TS_HTTP_STATUS_SEE_OTHER = 303,
00168 TS_HTTP_STATUS_NOT_MODIFIED = 304,
00169 TS_HTTP_STATUS_USE_PROXY = 305,
00170 TS_HTTP_STATUS_TEMPORARY_REDIRECT = 307,
00171 TS_HTTP_STATUS_PERMANENT_REDIRECT = 308,
00172
00173 TS_HTTP_STATUS_BAD_REQUEST = 400,
00174 TS_HTTP_STATUS_UNAUTHORIZED = 401,
00175 TS_HTTP_STATUS_PAYMENT_REQUIRED = 402,
00176 TS_HTTP_STATUS_FORBIDDEN = 403,
00177 TS_HTTP_STATUS_NOT_FOUND = 404,
00178 TS_HTTP_STATUS_METHOD_NOT_ALLOWED = 405,
00179 TS_HTTP_STATUS_NOT_ACCEPTABLE = 406,
00180 TS_HTTP_STATUS_PROXY_AUTHENTICATION_REQUIRED = 407,
00181 TS_HTTP_STATUS_REQUEST_TIMEOUT = 408,
00182 TS_HTTP_STATUS_CONFLICT = 409,
00183 TS_HTTP_STATUS_GONE = 410,
00184 TS_HTTP_STATUS_LENGTH_REQUIRED = 411,
00185 TS_HTTP_STATUS_PRECONDITION_FAILED = 412,
00186 TS_HTTP_STATUS_REQUEST_ENTITY_TOO_LARGE = 413,
00187 TS_HTTP_STATUS_REQUEST_URI_TOO_LONG = 414,
00188 TS_HTTP_STATUS_UNSUPPORTED_MEDIA_TYPE = 415,
00189 TS_HTTP_STATUS_REQUESTED_RANGE_NOT_SATISFIABLE = 416,
00190 TS_HTTP_STATUS_EXPECTATION_FAILED = 417,
00191 TS_HTTP_STATUS_UNPROCESSABLE_ENTITY = 422,
00192 TS_HTTP_STATUS_LOCKED = 423,
00193 TS_HTTP_STATUS_FAILED_DEPENDENCY = 424,
00194 TS_HTTP_STATUS_UPGRADE_REQUIRED = 426,
00195 TS_HTTP_STATUS_PRECONDITION_REQUIRED = 428,
00196 TS_HTTP_STATUS_TOO_MANY_REQUESTS = 429,
00197 TS_HTTP_STATUS_REQUEST_HEADER_FIELDS_TOO_LARGE = 431,
00198
00199 TS_HTTP_STATUS_INTERNAL_SERVER_ERROR = 500,
00200 TS_HTTP_STATUS_NOT_IMPLEMENTED = 501,
00201 TS_HTTP_STATUS_BAD_GATEWAY = 502,
00202 TS_HTTP_STATUS_SERVICE_UNAVAILABLE = 503,
00203 TS_HTTP_STATUS_GATEWAY_TIMEOUT = 504,
00204 TS_HTTP_STATUS_HTTPVER_NOT_SUPPORTED = 505,
00205 TS_HTTP_STATUS_VARIANT_ALSO_NEGOTIATES = 506,
00206 TS_HTTP_STATUS_INSUFFICIENT_STORAGE = 507,
00207 TS_HTTP_STATUS_LOOP_DETECTED = 508,
00208 TS_HTTP_STATUS_NOT_EXTENDED = 510,
00209 TS_HTTP_STATUS_NETWORK_AUTHENTICATION_REQUIRED = 511
00210
00211 } TSHttpStatus;
00212
00213
00214
00215
00216
00217
00218
00219
00220
00221
00222
00223
00224
00225
00226
00227
00228
00229
00230
00231
00232
00233
00234
00235
00236
00237
00238
00239
00240
00241
00242
00243
00244
00245
00246
00247
00248
00249
00250
00251
00252
00253
00254
00255
00256
00257
00258
00259
00260
00261
00262 typedef enum
00263 {
00264 TS_HTTP_READ_REQUEST_HDR_HOOK,
00265 TS_HTTP_OS_DNS_HOOK,
00266 TS_HTTP_SEND_REQUEST_HDR_HOOK,
00267 TS_HTTP_READ_CACHE_HDR_HOOK,
00268 TS_HTTP_READ_RESPONSE_HDR_HOOK,
00269 TS_HTTP_SEND_RESPONSE_HDR_HOOK,
00270 TS_HTTP_REQUEST_TRANSFORM_HOOK,
00271 TS_HTTP_RESPONSE_TRANSFORM_HOOK,
00272 TS_HTTP_SELECT_ALT_HOOK,
00273 TS_HTTP_TXN_START_HOOK,
00274 TS_HTTP_TXN_CLOSE_HOOK,
00275 TS_HTTP_SSN_START_HOOK,
00276 TS_HTTP_SSN_CLOSE_HOOK,
00277 TS_HTTP_CACHE_LOOKUP_COMPLETE_HOOK,
00278 TS_HTTP_PRE_REMAP_HOOK,
00279 TS_HTTP_POST_REMAP_HOOK,
00280 TS_HTTP_RESPONSE_CLIENT_HOOK,
00281 TS_HTTP_LAST_HOOK
00282 } TSHttpHookID;
00283 #define TS_HTTP_READ_REQUEST_PRE_REMAP_HOOK TS_HTTP_PRE_REMAP_HOOK
00284
00285
00286
00287
00288
00289
00290
00291
00292
00293
00294
00295
00296
00297
00298
00299
00300
00301
00302
00303
00304
00305
00306
00307
00308
00309
00310
00311
00312
00313
00314
00315
00316
00317
00318
00319
00320
00321
00322
00323
00324
00325
00326
00327
00328
00329
00330
00331
00332
00333
00334
00335
00336
00337
00338
00339
00340 typedef enum
00341 {
00342 TS_LIFECYCLE_PORTS_INITIALIZED_HOOK,
00343 TS_LIFECYCLE_PORTS_READY_HOOK,
00344 TS_LIFECYCLE_CACHE_READY_HOOK,
00345 TS_LIFECYCLE_SERVER_SSL_CTX_INITIALIZED_HOOK,
00346 TS_LIFECYCLE_CLIENT_SSL_CTX_INITIALIZED_HOOK,
00347 TS_LIFECYCLE_LAST_HOOK
00348 } TSLifecycleHookID;
00349
00350
00351
00352
00353
00354
00355
00356
00357 typedef enum
00358 {
00359 TS_EVENT_NONE = 0,
00360 TS_EVENT_IMMEDIATE = 1,
00361 TS_EVENT_TIMEOUT = 2,
00362 TS_EVENT_ERROR = 3,
00363 TS_EVENT_CONTINUE = 4,
00364
00365 TS_EVENT_VCONN_READ_READY = 100,
00366 TS_EVENT_VCONN_WRITE_READY = 101,
00367 TS_EVENT_VCONN_READ_COMPLETE = 102,
00368 TS_EVENT_VCONN_WRITE_COMPLETE = 103,
00369 TS_EVENT_VCONN_EOS = 104,
00370 TS_EVENT_VCONN_INACTIVITY_TIMEOUT = 105,
00371
00372 TS_EVENT_NET_CONNECT = 200,
00373 TS_EVENT_NET_CONNECT_FAILED = 201,
00374 TS_EVENT_NET_ACCEPT = 202,
00375 TS_EVENT_NET_ACCEPT_FAILED = 204,
00376
00377
00378 TS_EVENT_INTERNAL_206 = 206,
00379 TS_EVENT_INTERNAL_207 = 207,
00380 TS_EVENT_INTERNAL_208 = 208,
00381 TS_EVENT_INTERNAL_209 = 209,
00382 TS_EVENT_INTERNAL_210 = 210,
00383 TS_EVENT_INTERNAL_211 = 211,
00384 TS_EVENT_INTERNAL_212 = 212,
00385
00386 TS_EVENT_HOST_LOOKUP = 500,
00387 TS_EVENT_CACHE_OPEN_READ = 1102,
00388 TS_EVENT_CACHE_OPEN_READ_FAILED = 1103,
00389 TS_EVENT_CACHE_OPEN_WRITE = 1108,
00390 TS_EVENT_CACHE_OPEN_WRITE_FAILED = 1109,
00391 TS_EVENT_CACHE_REMOVE = 1112,
00392 TS_EVENT_CACHE_REMOVE_FAILED = 1113,
00393 TS_EVENT_CACHE_SCAN = 1120,
00394 TS_EVENT_CACHE_SCAN_FAILED = 1121,
00395 TS_EVENT_CACHE_SCAN_OBJECT = 1122,
00396 TS_EVENT_CACHE_SCAN_OPERATION_BLOCKED = 1123,
00397 TS_EVENT_CACHE_SCAN_OPERATION_FAILED = 1124,
00398 TS_EVENT_CACHE_SCAN_DONE = 1125,
00399
00400 TS_EVENT_CACHE_LOOKUP = 1126,
00401 TS_EVENT_CACHE_READ = 1127,
00402 TS_EVENT_CACHE_DELETE = 1128,
00403 TS_EVENT_CACHE_WRITE = 1129,
00404 TS_EVENT_CACHE_WRITE_HEADER = 1130,
00405 TS_EVENT_CACHE_CLOSE = 1131,
00406 TS_EVENT_CACHE_LOOKUP_READY = 1132,
00407 TS_EVENT_CACHE_LOOKUP_COMPLETE = 1133,
00408 TS_EVENT_CACHE_READ_READY = 1134,
00409 TS_EVENT_CACHE_READ_COMPLETE = 1135,
00410
00411
00412 TS_EVENT_INTERNAL_1200 = 1200,
00413
00414
00415 TS_AIO_EVENT_DONE = 3900,
00416
00417 TS_EVENT_HTTP_CONTINUE = 60000,
00418 TS_EVENT_HTTP_ERROR = 60001,
00419 TS_EVENT_HTTP_READ_REQUEST_HDR = 60002,
00420 TS_EVENT_HTTP_OS_DNS = 60003,
00421 TS_EVENT_HTTP_SEND_REQUEST_HDR = 60004,
00422 TS_EVENT_HTTP_READ_CACHE_HDR = 60005,
00423 TS_EVENT_HTTP_READ_RESPONSE_HDR = 60006,
00424 TS_EVENT_HTTP_SEND_RESPONSE_HDR = 60007,
00425 TS_EVENT_HTTP_REQUEST_TRANSFORM = 60008,
00426 TS_EVENT_HTTP_RESPONSE_TRANSFORM = 60009,
00427 TS_EVENT_HTTP_SELECT_ALT = 60010,
00428 TS_EVENT_HTTP_TXN_START = 60011,
00429 TS_EVENT_HTTP_TXN_CLOSE = 60012,
00430 TS_EVENT_HTTP_SSN_START = 60013,
00431 TS_EVENT_HTTP_SSN_CLOSE = 60014,
00432 TS_EVENT_HTTP_CACHE_LOOKUP_COMPLETE = 60015,
00433 TS_EVENT_HTTP_PRE_REMAP = 60016,
00434 TS_EVENT_HTTP_POST_REMAP = 60017,
00435 TS_EVENT_LIFECYCLE_PORTS_INITIALIZED = 60018,
00436 TS_EVENT_LIFECYCLE_PORTS_READY = 60019,
00437 TS_EVENT_LIFECYCLE_CACHE_READY = 60020,
00438 TS_EVENT_LIFECYCLE_SERVER_SSL_CTX_INITIALIZED = 60021,
00439 TS_EVENT_LIFECYCLE_CLIENT_SSL_CTX_INITIALIZED = 60022,
00440 TS_EVENT_MGMT_UPDATE = 60100,
00441
00442
00443 TS_EVENT_INTERNAL_60200 = 60200,
00444 TS_EVENT_INTERNAL_60201 = 60201,
00445 TS_EVENT_INTERNAL_60202 = 60202
00446 } TSEvent;
00447 #define TS_EVENT_HTTP_READ_REQUEST_PRE_REMAP TS_EVENT_HTTP_PRE_REMAP
00448
00449 typedef enum
00450 { TS_SRVSTATE_STATE_UNDEFINED = 0,
00451 TS_SRVSTATE_ACTIVE_TIMEOUT,
00452 TS_SRVSTATE_BAD_INCOMING_RESPONSE,
00453 TS_SRVSTATE_CONNECTION_ALIVE,
00454 TS_SRVSTATE_CONNECTION_CLOSED,
00455 TS_SRVSTATE_CONNECTION_ERROR,
00456 TS_SRVSTATE_INACTIVE_TIMEOUT,
00457 TS_SRVSTATE_OPEN_RAW_ERROR,
00458 TS_SRVSTATE_PARSE_ERROR,
00459 TS_SRVSTATE_TRANSACTION_COMPLETE,
00460 TS_SRVSTATE_CONGEST_CONTROL_CONGESTED_ON_F,
00461 TS_SRVSTATE_CONGEST_CONTROL_CONGESTED_ON_M
00462 } TSServerState;
00463
00464 typedef enum
00465 {
00466 TS_LOOKUP_UNDEFINED_LOOKUP,
00467 TS_LOOKUP_ICP_SUGGESTED_HOST,
00468 TS_LOOKUP_PARENT_PROXY,
00469 TS_LOOKUP_ORIGIN_SERVER,
00470 TS_LOOKUP_INCOMING_ROUTER,
00471 TS_LOOKUP_HOST_NONE
00472 } TSLookingUpType;
00473
00474 typedef enum
00475 {
00476 TS_CACHE_LOOKUP_MISS,
00477 TS_CACHE_LOOKUP_HIT_STALE,
00478 TS_CACHE_LOOKUP_HIT_FRESH,
00479 TS_CACHE_LOOKUP_SKIPPED
00480 } TSCacheLookupResult;
00481
00482 typedef enum
00483 {
00484 TS_CACHE_DATA_TYPE_NONE,
00485 TS_CACHE_DATA_TYPE_HTTP,
00486 TS_CACHE_DATA_TYPE_OTHER
00487 } TSCacheDataType;
00488
00489 typedef enum
00490 {
00491 TS_CACHE_ERROR_NO_DOC = -20400,
00492 TS_CACHE_ERROR_DOC_BUSY = -20401,
00493 TS_CACHE_ERROR_NOT_READY = -20407
00494 } TSCacheError;
00495
00496 typedef enum
00497 {
00498 TS_CACHE_SCAN_RESULT_DONE = 0,
00499 TS_CACHE_SCAN_RESULT_CONTINUE = 1,
00500 TS_CACHE_SCAN_RESULT_DELETE = 10,
00501 TS_CACHE_SCAN_RESULT_DELETE_ALL_ALTERNATES,
00502 TS_CACHE_SCAN_RESULT_UPDATE,
00503 TS_CACHE_SCAN_RESULT_RETRY
00504 } TSCacheScanResult;
00505
00506 typedef enum
00507 {
00508 TS_VC_CLOSE_ABORT = -1,
00509 TS_VC_CLOSE_NORMAL = 1
00510 } TSVConnCloseFlags;
00511
00512 typedef enum
00513 {
00514 TS_IOBUFFER_SIZE_INDEX_128 = 0,
00515 TS_IOBUFFER_SIZE_INDEX_256 = 1,
00516 TS_IOBUFFER_SIZE_INDEX_512 = 2,
00517 TS_IOBUFFER_SIZE_INDEX_1K = 3,
00518 TS_IOBUFFER_SIZE_INDEX_2K = 4,
00519 TS_IOBUFFER_SIZE_INDEX_4K = 5,
00520 TS_IOBUFFER_SIZE_INDEX_8K = 6,
00521 TS_IOBUFFER_SIZE_INDEX_16K = 7,
00522 TS_IOBUFFER_SIZE_INDEX_32K = 8
00523 } TSIOBufferSizeIndex;
00524
00525
00526
00527
00528 typedef enum
00529 {
00530 TS_SDK_VERSION_2_0 = 0,
00531 TS_SDK_VERSION_3_0
00532 } TSSDKVersion;
00533
00534 typedef enum
00535 {
00536 TS_ERROR = -1,
00537 TS_SUCCESS = 0
00538 } TSReturnCode;
00539
00540 typedef enum
00541 {
00542 NO_CALLBACK = 0,
00543 AFTER_HEADER ,
00544 AFTER_BODY
00545 } TSFetchWakeUpOptions;
00546
00547 #ifndef _HTTP_PROXY_API_ENUMS_H_
00548 #define _HTTP_PROXY_API_ENUMS_H_
00549
00550
00551 typedef enum
00552 {
00553 TS_SERVER_SESSION_SHARING_MATCH_NONE,
00554 TS_SERVER_SESSION_SHARING_MATCH_BOTH,
00555 TS_SERVER_SESSION_SHARING_MATCH_IP,
00556 TS_SERVER_SESSION_SHARING_MATCH_HOST
00557 } TSServerSessionSharingMatchType;
00558
00559
00560
00561 typedef enum
00562 {
00563 TS_SERVER_SESSION_SHARING_POOL_GLOBAL,
00564 TS_SERVER_SESSION_SHARING_POOL_THREAD
00565 } TSServerSessionSharingPoolType;
00566 #endif
00567
00568
00569
00570
00571 typedef enum
00572 {
00573 TS_RECORDTYPE_NULL = 0x00,
00574 TS_RECORDTYPE_CONFIG = 0x01,
00575 TS_RECORDTYPE_PROCESS = 0x02,
00576 TS_RECORDTYPE_NODE = 0x04,
00577 TS_RECORDTYPE_CLUSTER = 0x08,
00578 TS_RECORDTYPE_LOCAL = 0x10,
00579 TS_RECORDTYPE_PLUGIN = 0x20,
00580 TS_RECORDTYPE_ALL = 0x3F
00581 } TSRecordType;
00582
00583
00584 typedef enum
00585 {
00586 TS_RECORDDATATYPE_NULL = 0,
00587 TS_RECORDDATATYPE_INT,
00588 TS_RECORDDATATYPE_FLOAT,
00589 TS_RECORDDATATYPE_STRING,
00590 TS_RECORDDATATYPE_COUNTER,
00591 TS_RECORDDATATYPE_STAT_CONST,
00592 TS_RECORDDATATYPE_STAT_FX,
00593 TS_RECORDDATATYPE_MAX
00594 } TSRecordDataType;
00595
00596 typedef union
00597 {
00598 int64_t rec_int;
00599 float rec_float;
00600 char* rec_string;
00601 int64_t rec_counter;
00602 } TSRecordData;
00603
00604
00605 typedef enum
00606 {
00607 TS_RECORDP_NULL,
00608 TS_RECORDP_PERSISTENT,
00609 TS_RECORDP_NON_PERSISTENT
00610 } TSRecordPersistType;
00611
00612
00613 typedef enum
00614 {
00615 TS_RECORDUPDATE_NULL,
00616 TS_RECORDUPDATE_DYNAMIC,
00617 TS_RECORDUPDATE_RESTART_TS,
00618 TS_RECORDUPDATE_RESTART_TM,
00619 TS_RECORDUPDATE_RESTART_TC
00620 } TSRecordUpdateType;
00621
00622
00623 typedef enum
00624 {
00625 TS_RECORDCHECK_NULL,
00626 TS_RECORDCHECK_STR,
00627 TS_RECORDCHECK_INT,
00628 TS_RECORDCHECK_IP
00629 } TSRecordCheckType;
00630
00631
00632 typedef enum
00633 {
00634 TS_RECORDMODE_NULL,
00635 TS_RECORDMODE_CLIENT,
00636 TS_RECORDMODE_SERVER,
00637 TS_RECORDMODE_STAND_ALONE
00638 } TSRecordModeType;
00639
00640
00641 typedef enum
00642 {
00643 TS_RECORDACCESS_NULL,
00644 TS_RECORDACCESS_NO_ACCESS,
00645 TS_RECORDACCESS_READ_ONLY
00646 } TSRecordAccessType;
00647
00648 typedef enum
00649 {
00650 TS_CONFIG_NULL = -1,
00651 TS_CONFIG_URL_REMAP_PRISTINE_HOST_HDR,
00652 TS_CONFIG_HTTP_CHUNKING_ENABLED,
00653 TS_CONFIG_HTTP_NEGATIVE_CACHING_ENABLED,
00654 TS_CONFIG_HTTP_NEGATIVE_CACHING_LIFETIME,
00655 TS_CONFIG_HTTP_CACHE_WHEN_TO_REVALIDATE,
00656 TS_CONFIG_HTTP_KEEP_ALIVE_ENABLED_IN,
00657 TS_CONFIG_HTTP_KEEP_ALIVE_ENABLED_OUT,
00658 TS_CONFIG_HTTP_KEEP_ALIVE_POST_OUT,
00659 TS_CONFIG_HTTP_SHARE_SERVER_SESSIONS,
00660 TS_CONFIG_HTTP_SERVER_SESSION_SHARING_POOL,
00661 TS_CONFIG_HTTP_SERVER_SESSION_SHARING_MATCH,
00662 TS_CONFIG_NET_SOCK_RECV_BUFFER_SIZE_OUT,
00663 TS_CONFIG_NET_SOCK_SEND_BUFFER_SIZE_OUT,
00664 TS_CONFIG_NET_SOCK_OPTION_FLAG_OUT,
00665 TS_CONFIG_HTTP_FORWARD_PROXY_AUTH_TO_PARENT,
00666 TS_CONFIG_HTTP_ANONYMIZE_REMOVE_FROM,
00667 TS_CONFIG_HTTP_ANONYMIZE_REMOVE_REFERER,
00668 TS_CONFIG_HTTP_ANONYMIZE_REMOVE_USER_AGENT,
00669 TS_CONFIG_HTTP_ANONYMIZE_REMOVE_COOKIE,
00670 TS_CONFIG_HTTP_ANONYMIZE_REMOVE_CLIENT_IP,
00671 TS_CONFIG_HTTP_ANONYMIZE_INSERT_CLIENT_IP,
00672 TS_CONFIG_HTTP_RESPONSE_SERVER_ENABLED,
00673 TS_CONFIG_HTTP_INSERT_SQUID_X_FORWARDED_FOR,
00674 TS_CONFIG_HTTP_SERVER_TCP_INIT_CWND,
00675 TS_CONFIG_HTTP_SEND_HTTP11_REQUESTS,
00676 TS_CONFIG_HTTP_CACHE_HTTP,
00677 TS_CONFIG_HTTP_CACHE_CLUSTER_CACHE_LOCAL,
00678 TS_CONFIG_HTTP_CACHE_IGNORE_CLIENT_NO_CACHE,
00679 TS_CONFIG_HTTP_CACHE_IGNORE_CLIENT_CC_MAX_AGE,
00680 TS_CONFIG_HTTP_CACHE_IMS_ON_CLIENT_NO_CACHE,
00681 TS_CONFIG_HTTP_CACHE_IGNORE_SERVER_NO_CACHE,
00682 TS_CONFIG_HTTP_CACHE_CACHE_RESPONSES_TO_COOKIES,
00683 TS_CONFIG_HTTP_CACHE_IGNORE_AUTHENTICATION,
00684 TS_CONFIG_HTTP_CACHE_CACHE_URLS_THAT_LOOK_DYNAMIC,
00685 TS_CONFIG_HTTP_CACHE_REQUIRED_HEADERS,
00686 TS_CONFIG_HTTP_INSERT_REQUEST_VIA_STR,
00687 TS_CONFIG_HTTP_INSERT_RESPONSE_VIA_STR,
00688 TS_CONFIG_HTTP_CACHE_HEURISTIC_MIN_LIFETIME,
00689 TS_CONFIG_HTTP_CACHE_HEURISTIC_MAX_LIFETIME,
00690 TS_CONFIG_HTTP_CACHE_GUARANTEED_MIN_LIFETIME,
00691 TS_CONFIG_HTTP_CACHE_GUARANTEED_MAX_LIFETIME,
00692 TS_CONFIG_HTTP_CACHE_MAX_STALE_AGE,
00693 TS_CONFIG_HTTP_KEEP_ALIVE_NO_ACTIVITY_TIMEOUT_IN,
00694 TS_CONFIG_HTTP_KEEP_ALIVE_NO_ACTIVITY_TIMEOUT_OUT,
00695 TS_CONFIG_HTTP_TRANSACTION_NO_ACTIVITY_TIMEOUT_IN,
00696 TS_CONFIG_HTTP_TRANSACTION_NO_ACTIVITY_TIMEOUT_OUT,
00697 TS_CONFIG_HTTP_TRANSACTION_ACTIVE_TIMEOUT_OUT,
00698 TS_CONFIG_HTTP_ORIGIN_MAX_CONNECTIONS,
00699 TS_CONFIG_HTTP_CONNECT_ATTEMPTS_MAX_RETRIES,
00700 TS_CONFIG_HTTP_CONNECT_ATTEMPTS_MAX_RETRIES_DEAD_SERVER,
00701 TS_CONFIG_HTTP_CONNECT_ATTEMPTS_RR_RETRIES,
00702 TS_CONFIG_HTTP_CONNECT_ATTEMPTS_TIMEOUT,
00703 TS_CONFIG_HTTP_POST_CONNECT_ATTEMPTS_TIMEOUT,
00704 TS_CONFIG_HTTP_DOWN_SERVER_CACHE_TIME,
00705 TS_CONFIG_HTTP_DOWN_SERVER_ABORT_THRESHOLD,
00706 TS_CONFIG_HTTP_CACHE_FUZZ_TIME,
00707 TS_CONFIG_HTTP_CACHE_FUZZ_MIN_TIME,
00708 TS_CONFIG_HTTP_DOC_IN_CACHE_SKIP_DNS,
00709 TS_CONFIG_HTTP_BACKGROUND_FILL_ACTIVE_TIMEOUT,
00710 TS_CONFIG_HTTP_RESPONSE_SERVER_STR,
00711 TS_CONFIG_HTTP_CACHE_HEURISTIC_LM_FACTOR,
00712 TS_CONFIG_HTTP_CACHE_FUZZ_PROBABILITY,
00713 TS_CONFIG_HTTP_BACKGROUND_FILL_COMPLETED_THRESHOLD,
00714 TS_CONFIG_NET_SOCK_PACKET_MARK_OUT,
00715 TS_CONFIG_NET_SOCK_PACKET_TOS_OUT,
00716 TS_CONFIG_HTTP_INSERT_AGE_IN_RESPONSE,
00717 TS_CONFIG_HTTP_CHUNKING_SIZE,
00718 TS_CONFIG_HTTP_FLOW_CONTROL_ENABLED,
00719 TS_CONFIG_HTTP_FLOW_CONTROL_LOW_WATER_MARK,
00720 TS_CONFIG_HTTP_FLOW_CONTROL_HIGH_WATER_MARK,
00721 TS_CONFIG_HTTP_CACHE_RANGE_LOOKUP,
00722 TS_CONFIG_HTTP_NORMALIZE_AE_GZIP,
00723 TS_CONFIG_HTTP_DEFAULT_BUFFER_SIZE,
00724 TS_CONFIG_HTTP_DEFAULT_BUFFER_WATER_MARK,
00725 TS_CONFIG_HTTP_REQUEST_HEADER_MAX_SIZE,
00726 TS_CONFIG_HTTP_RESPONSE_HEADER_MAX_SIZE,
00727 TS_CONFIG_HTTP_NEGATIVE_REVALIDATING_ENABLED,
00728 TS_CONFIG_HTTP_NEGATIVE_REVALIDATING_LIFETIME,
00729 TS_CONFIG_HTTP_ACCEPT_ENCODING_FILTER_ENABLED,
00730 TS_CONFIG_SSL_HSTS_MAX_AGE,
00731 TS_CONFIG_SSL_HSTS_INCLUDE_SUBDOMAINS,
00732 TS_CONFIG_HTTP_CACHE_OPEN_READ_RETRY_TIME,
00733 TS_CONFIG_HTTP_CACHE_MAX_OPEN_READ_RETRIES,
00734 TS_CONFIG_HTTP_CACHE_RANGE_WRITE,
00735 TS_CONFIG_HTTP_POST_CHECK_CONTENT_LENGTH_ENABLED,
00736 TS_CONFIG_HTTP_GLOBAL_USER_AGENT_HEADER,
00737 TS_CONFIG_LAST_ENTRY
00738 } TSOverridableConfigKey;
00739
00740
00741
00742 typedef enum
00743 {
00744 TS_THREAD_POOL_DEFAULT = -1,
00745 TS_THREAD_POOL_NET,
00746 TS_THREAD_POOL_TASK,
00747
00748 TS_THREAD_POOL_SSL,
00749 TS_THREAD_POOL_DNS,
00750 TS_THREAD_POOL_REMAP,
00751 TS_THREAD_POOL_CLUSTER,
00752 TS_THREAD_POOL_UDP
00753 } TSThreadPool;
00754
00755 typedef int64_t TSHRTime;
00756
00757
00758
00759 typedef enum
00760 {
00761 TS_MILESTONE_NULL = -1,
00762 TS_MILESTONE_UA_BEGIN,
00763 TS_MILESTONE_UA_READ_HEADER_DONE,
00764 TS_MILESTONE_UA_BEGIN_WRITE,
00765 TS_MILESTONE_UA_CLOSE,
00766 TS_MILESTONE_SERVER_FIRST_CONNECT,
00767 TS_MILESTONE_SERVER_CONNECT,
00768 TS_MILESTONE_SERVER_CONNECT_END,
00769 TS_MILESTONE_SERVER_BEGIN_WRITE,
00770 TS_MILESTONE_SERVER_FIRST_READ,
00771 TS_MILESTONE_SERVER_READ_HEADER_DONE,
00772 TS_MILESTONE_SERVER_CLOSE,
00773 TS_MILESTONE_CACHE_OPEN_READ_BEGIN,
00774 TS_MILESTONE_CACHE_OPEN_READ_END,
00775 TS_MILESTONE_CACHE_OPEN_WRITE_BEGIN,
00776 TS_MILESTONE_CACHE_OPEN_WRITE_END,
00777 TS_MILESTONE_DNS_LOOKUP_BEGIN,
00778 TS_MILESTONE_DNS_LOOKUP_END,
00779 TS_MILESTONE_SM_START,
00780 TS_MILESTONE_SM_FINISH,
00781 TS_MILESTONE_LAST_ENTRY
00782 } TSMilestonesType;
00783
00784
00785
00786
00787
00788 typedef int64_t TSMgmtInt;
00789 typedef int64_t TSMgmtCounter;
00790 typedef float TSMgmtFloat;
00791 typedef char* TSMgmtString;
00792
00793 typedef struct tsapi_file* TSFile;
00794
00795 typedef struct tsapi_mloc* TSMLoc;
00796 typedef struct tsapi_mbuffer* TSMBuffer;
00797 typedef struct tsapi_httpssn* TSHttpSsn;
00798 typedef struct tsapi_httptxn* TSHttpTxn;
00799 typedef struct tsapi_httpaltinfo* TSHttpAltInfo;
00800 typedef struct tsapi_mimeparser* TSMimeParser;
00801 typedef struct tsapi_httpparser* TSHttpParser;
00802 typedef struct tsapi_cachekey* TSCacheKey;
00803 typedef struct tsapi_cachehttpinfo* TSCacheHttpInfo;
00804 typedef struct tsapi_cachetxn* TSCacheTxn;
00805
00806 typedef struct tsapi_port* TSPortDescriptor;
00807 typedef struct tsapi_vio* TSVIO;
00808 typedef struct tsapi_thread* TSThread;
00809 typedef struct tsapi_mutex* TSMutex;
00810 typedef struct tsapi_config* TSConfig;
00811 typedef struct tsapi_cont* TSCont;
00812 typedef struct tsapi_cont* TSVConn;
00813 typedef struct tsapi_action* TSAction;
00814 typedef struct tsapi_iobuffer* TSIOBuffer;
00815 typedef struct tsapi_iobufferdata* TSIOBufferData;
00816 typedef struct tsapi_bufferblock* TSIOBufferBlock;
00817 typedef struct tsapi_bufferreader* TSIOBufferReader;
00818 typedef struct tsapi_hostlookupresult* TSHostLookupResult;
00819 typedef struct tsapi_aiocallback* TSAIOCallback;
00820
00821 typedef void *(*TSThreadFunc) (void* data);
00822 typedef int (*TSEventFunc) (TSCont contp, TSEvent event, void* edata);
00823 typedef void (*TSConfigDestroyFunc) (void* data);
00824
00825 typedef struct
00826 {
00827 int success_event_id;
00828 int failure_event_id;
00829 int timeout_event_id;
00830 } TSFetchEvent;
00831
00832 typedef struct TSFetchUrlParams
00833 {
00834 const char* request;
00835 int request_len;
00836 struct sockaddr_storage ip;
00837 int port;
00838 TSCont contp;
00839 TSFetchEvent events;
00840 TSFetchWakeUpOptions options;
00841 struct TSFetchUrlParams* next;
00842 } TSFetchUrlParams_t;
00843
00844
00845
00846
00847
00848
00849
00850
00851
00852
00853
00854
00855
00856
00857
00858
00859
00860
00861
00862 extern tsapi void TSPluginInit(int argc, const char* argv[]);
00863
00864
00865
00866 extern tsapi const char* TS_URL_SCHEME_FILE;
00867 extern tsapi const char* TS_URL_SCHEME_FTP;
00868 extern tsapi const char* TS_URL_SCHEME_GOPHER;
00869 extern tsapi const char* TS_URL_SCHEME_HTTP;
00870 extern tsapi const char* TS_URL_SCHEME_HTTPS;
00871 extern tsapi const char* TS_URL_SCHEME_MAILTO;
00872 extern tsapi const char* TS_URL_SCHEME_NEWS;
00873 extern tsapi const char* TS_URL_SCHEME_NNTP;
00874 extern tsapi const char* TS_URL_SCHEME_PROSPERO;
00875 extern tsapi const char* TS_URL_SCHEME_TELNET;
00876 extern tsapi const char* TS_URL_SCHEME_TUNNEL;
00877 extern tsapi const char* TS_URL_SCHEME_WAIS;
00878 extern tsapi const char* TS_URL_SCHEME_PNM;
00879 extern tsapi const char* TS_URL_SCHEME_RTSP;
00880 extern tsapi const char* TS_URL_SCHEME_RTSPU;
00881 extern tsapi const char* TS_URL_SCHEME_MMS;
00882 extern tsapi const char* TS_URL_SCHEME_MMSU;
00883 extern tsapi const char* TS_URL_SCHEME_MMST;
00884
00885
00886
00887 extern tsapi int TS_URL_LEN_FILE;
00888 extern tsapi int TS_URL_LEN_FTP;
00889 extern tsapi int TS_URL_LEN_GOPHER;
00890 extern tsapi int TS_URL_LEN_HTTP;
00891 extern tsapi int TS_URL_LEN_HTTPS;
00892 extern tsapi int TS_URL_LEN_MAILTO;
00893 extern tsapi int TS_URL_LEN_NEWS;
00894 extern tsapi int TS_URL_LEN_NNTP;
00895 extern tsapi int TS_URL_LEN_PROSPERO;
00896 extern tsapi int TS_URL_LEN_TELNET;
00897 extern tsapi int TS_URL_LEN_WAIS;
00898
00899
00900
00901 extern tsapi const char* TS_MIME_FIELD_ACCEPT;
00902 extern tsapi const char* TS_MIME_FIELD_ACCEPT_CHARSET;
00903 extern tsapi const char* TS_MIME_FIELD_ACCEPT_ENCODING;
00904 extern tsapi const char* TS_MIME_FIELD_ACCEPT_LANGUAGE;
00905 extern tsapi const char* TS_MIME_FIELD_ACCEPT_RANGES;
00906 extern tsapi const char* TS_MIME_FIELD_AGE;
00907 extern tsapi const char* TS_MIME_FIELD_ALLOW;
00908 extern tsapi const char* TS_MIME_FIELD_APPROVED;
00909 extern tsapi const char* TS_MIME_FIELD_AUTHORIZATION;
00910 extern tsapi const char* TS_MIME_FIELD_BYTES;
00911 extern tsapi const char* TS_MIME_FIELD_CACHE_CONTROL;
00912 extern tsapi const char* TS_MIME_FIELD_CLIENT_IP;
00913 extern tsapi const char* TS_MIME_FIELD_CONNECTION;
00914 extern tsapi const char* TS_MIME_FIELD_CONTENT_BASE;
00915 extern tsapi const char* TS_MIME_FIELD_CONTENT_ENCODING;
00916 extern tsapi const char* TS_MIME_FIELD_CONTENT_LANGUAGE;
00917 extern tsapi const char* TS_MIME_FIELD_CONTENT_LENGTH;
00918 extern tsapi const char* TS_MIME_FIELD_CONTENT_LOCATION;
00919 extern tsapi const char* TS_MIME_FIELD_CONTENT_MD5;
00920 extern tsapi const char* TS_MIME_FIELD_CONTENT_RANGE;
00921 extern tsapi const char* TS_MIME_FIELD_CONTENT_TYPE;
00922 extern tsapi const char* TS_MIME_FIELD_CONTROL;
00923 extern tsapi const char* TS_MIME_FIELD_COOKIE;
00924 extern tsapi const char* TS_MIME_FIELD_DATE;
00925 extern tsapi const char* TS_MIME_FIELD_DISTRIBUTION;
00926 extern tsapi const char* TS_MIME_FIELD_ETAG;
00927 extern tsapi const char* TS_MIME_FIELD_EXPECT;
00928 extern tsapi const char* TS_MIME_FIELD_EXPIRES;
00929 extern tsapi const char* TS_MIME_FIELD_FOLLOWUP_TO;
00930 extern tsapi const char* TS_MIME_FIELD_FROM;
00931 extern tsapi const char* TS_MIME_FIELD_HOST;
00932 extern tsapi const char* TS_MIME_FIELD_IF_MATCH;
00933 extern tsapi const char* TS_MIME_FIELD_IF_MODIFIED_SINCE;
00934 extern tsapi const char* TS_MIME_FIELD_IF_NONE_MATCH;
00935 extern tsapi const char* TS_MIME_FIELD_IF_RANGE;
00936 extern tsapi const char* TS_MIME_FIELD_IF_UNMODIFIED_SINCE;
00937 extern tsapi const char* TS_MIME_FIELD_KEEP_ALIVE;
00938 extern tsapi const char* TS_MIME_FIELD_KEYWORDS;
00939 extern tsapi const char* TS_MIME_FIELD_LAST_MODIFIED;
00940 extern tsapi const char* TS_MIME_FIELD_LINES;
00941 extern tsapi const char* TS_MIME_FIELD_LOCATION;
00942 extern tsapi const char* TS_MIME_FIELD_MAX_FORWARDS;
00943 extern tsapi const char* TS_MIME_FIELD_MESSAGE_ID;
00944 extern tsapi const char* TS_MIME_FIELD_NEWSGROUPS;
00945 extern tsapi const char* TS_MIME_FIELD_ORGANIZATION;
00946 extern tsapi const char* TS_MIME_FIELD_PATH;
00947 extern tsapi const char* TS_MIME_FIELD_PRAGMA;
00948 extern tsapi const char* TS_MIME_FIELD_PROXY_AUTHENTICATE;
00949 extern tsapi const char* TS_MIME_FIELD_PROXY_AUTHORIZATION;
00950 extern tsapi const char* TS_MIME_FIELD_PROXY_CONNECTION;
00951 extern tsapi const char* TS_MIME_FIELD_PUBLIC;
00952 extern tsapi const char* TS_MIME_FIELD_RANGE;
00953 extern tsapi const char* TS_MIME_FIELD_REFERENCES;
00954 extern tsapi const char* TS_MIME_FIELD_REFERER;
00955 extern tsapi const char* TS_MIME_FIELD_REPLY_TO;
00956 extern tsapi const char* TS_MIME_FIELD_RETRY_AFTER;
00957 extern tsapi const char* TS_MIME_FIELD_SENDER;
00958 extern tsapi const char* TS_MIME_FIELD_SERVER;
00959 extern tsapi const char* TS_MIME_FIELD_SET_COOKIE;
00960 extern tsapi const char* TS_MIME_FIELD_STRICT_TRANSPORT_SECURITY;
00961 extern tsapi const char* TS_MIME_FIELD_SUBJECT;
00962 extern tsapi const char* TS_MIME_FIELD_SUMMARY;
00963 extern tsapi const char* TS_MIME_FIELD_TE;
00964 extern tsapi const char* TS_MIME_FIELD_TRANSFER_ENCODING;
00965 extern tsapi const char* TS_MIME_FIELD_UPGRADE;
00966 extern tsapi const char* TS_MIME_FIELD_USER_AGENT;
00967 extern tsapi const char* TS_MIME_FIELD_VARY;
00968 extern tsapi const char* TS_MIME_FIELD_VIA;
00969 extern tsapi const char* TS_MIME_FIELD_WARNING;
00970 extern tsapi const char* TS_MIME_FIELD_WWW_AUTHENTICATE;
00971 extern tsapi const char* TS_MIME_FIELD_XREF;
00972 extern tsapi const char* TS_MIME_FIELD_X_FORWARDED_FOR;
00973
00974
00975
00976 extern tsapi int TS_MIME_LEN_ACCEPT;
00977 extern tsapi int TS_MIME_LEN_ACCEPT_CHARSET;
00978 extern tsapi int TS_MIME_LEN_ACCEPT_ENCODING;
00979 extern tsapi int TS_MIME_LEN_ACCEPT_LANGUAGE;
00980 extern tsapi int TS_MIME_LEN_ACCEPT_RANGES;
00981 extern tsapi int TS_MIME_LEN_AGE;
00982 extern tsapi int TS_MIME_LEN_ALLOW;
00983 extern tsapi int TS_MIME_LEN_APPROVED;
00984 extern tsapi int TS_MIME_LEN_AUTHORIZATION;
00985 extern tsapi int TS_MIME_LEN_BYTES;
00986 extern tsapi int TS_MIME_LEN_CACHE_CONTROL;
00987 extern tsapi int TS_MIME_LEN_CLIENT_IP;
00988 extern tsapi int TS_MIME_LEN_CONNECTION;
00989 extern tsapi int TS_MIME_LEN_CONTENT_BASE;
00990 extern tsapi int TS_MIME_LEN_CONTENT_ENCODING;
00991 extern tsapi int TS_MIME_LEN_CONTENT_LANGUAGE;
00992 extern tsapi int TS_MIME_LEN_CONTENT_LENGTH;
00993 extern tsapi int TS_MIME_LEN_CONTENT_LOCATION;
00994 extern tsapi int TS_MIME_LEN_CONTENT_MD5;
00995 extern tsapi int TS_MIME_LEN_CONTENT_RANGE;
00996 extern tsapi int TS_MIME_LEN_CONTENT_TYPE;
00997 extern tsapi int TS_MIME_LEN_CONTROL;
00998 extern tsapi int TS_MIME_LEN_COOKIE;
00999 extern tsapi int TS_MIME_LEN_DATE;
01000 extern tsapi int TS_MIME_LEN_DISTRIBUTION;
01001 extern tsapi int TS_MIME_LEN_ETAG;
01002 extern tsapi int TS_MIME_LEN_EXPECT;
01003 extern tsapi int TS_MIME_LEN_EXPIRES;
01004 extern tsapi int TS_MIME_LEN_FOLLOWUP_TO;
01005 extern tsapi int TS_MIME_LEN_FROM;
01006 extern tsapi int TS_MIME_LEN_HOST;
01007 extern tsapi int TS_MIME_LEN_IF_MATCH;
01008 extern tsapi int TS_MIME_LEN_IF_MODIFIED_SINCE;
01009 extern tsapi int TS_MIME_LEN_IF_NONE_MATCH;
01010 extern tsapi int TS_MIME_LEN_IF_RANGE;
01011 extern tsapi int TS_MIME_LEN_IF_UNMODIFIED_SINCE;
01012 extern tsapi int TS_MIME_LEN_KEEP_ALIVE;
01013 extern tsapi int TS_MIME_LEN_KEYWORDS;
01014 extern tsapi int TS_MIME_LEN_LAST_MODIFIED;
01015 extern tsapi int TS_MIME_LEN_LINES;
01016 extern tsapi int TS_MIME_LEN_LOCATION;
01017 extern tsapi int TS_MIME_LEN_MAX_FORWARDS;
01018 extern tsapi int TS_MIME_LEN_MESSAGE_ID;
01019 extern tsapi int TS_MIME_LEN_NEWSGROUPS;
01020 extern tsapi int TS_MIME_LEN_ORGANIZATION;
01021 extern tsapi int TS_MIME_LEN_PATH;
01022 extern tsapi int TS_MIME_LEN_PRAGMA;
01023 extern tsapi int TS_MIME_LEN_PROXY_AUTHENTICATE;
01024 extern tsapi int TS_MIME_LEN_PROXY_AUTHORIZATION;
01025 extern tsapi int TS_MIME_LEN_PROXY_CONNECTION;
01026 extern tsapi int TS_MIME_LEN_PUBLIC;
01027 extern tsapi int TS_MIME_LEN_RANGE;
01028 extern tsapi int TS_MIME_LEN_REFERENCES;
01029 extern tsapi int TS_MIME_LEN_REFERER;
01030 extern tsapi int TS_MIME_LEN_REPLY_TO;
01031 extern tsapi int TS_MIME_LEN_RETRY_AFTER;
01032 extern tsapi int TS_MIME_LEN_SENDER;
01033 extern tsapi int TS_MIME_LEN_SERVER;
01034 extern tsapi int TS_MIME_LEN_SET_COOKIE;
01035 extern tsapi int TS_MIME_LEN_STRICT_TRANSPORT_SECURITY;
01036 extern tsapi int TS_MIME_LEN_SUBJECT;
01037 extern tsapi int TS_MIME_LEN_SUMMARY;
01038 extern tsapi int TS_MIME_LEN_TE;
01039 extern tsapi int TS_MIME_LEN_TRANSFER_ENCODING;
01040 extern tsapi int TS_MIME_LEN_UPGRADE;
01041 extern tsapi int TS_MIME_LEN_USER_AGENT;
01042 extern tsapi int TS_MIME_LEN_VARY;
01043 extern tsapi int TS_MIME_LEN_VIA;
01044 extern tsapi int TS_MIME_LEN_WARNING;
01045 extern tsapi int TS_MIME_LEN_WWW_AUTHENTICATE;
01046 extern tsapi int TS_MIME_LEN_XREF;
01047 extern tsapi int TS_MIME_LEN_X_FORWARDED_FOR;
01048
01049
01050
01051 extern tsapi const char* TS_HTTP_VALUE_BYTES;
01052 extern tsapi const char* TS_HTTP_VALUE_CHUNKED;
01053 extern tsapi const char* TS_HTTP_VALUE_CLOSE;
01054 extern tsapi const char* TS_HTTP_VALUE_COMPRESS;
01055 extern tsapi const char* TS_HTTP_VALUE_DEFLATE;
01056 extern tsapi const char* TS_HTTP_VALUE_GZIP;
01057 extern tsapi const char* TS_HTTP_VALUE_IDENTITY;
01058 extern tsapi const char* TS_HTTP_VALUE_KEEP_ALIVE;
01059 extern tsapi const char* TS_HTTP_VALUE_MAX_AGE;
01060 extern tsapi const char* TS_HTTP_VALUE_MAX_STALE;
01061 extern tsapi const char* TS_HTTP_VALUE_MIN_FRESH;
01062 extern tsapi const char* TS_HTTP_VALUE_MUST_REVALIDATE;
01063 extern tsapi const char* TS_HTTP_VALUE_NONE;
01064 extern tsapi const char* TS_HTTP_VALUE_NO_CACHE;
01065 extern tsapi const char* TS_HTTP_VALUE_NO_STORE;
01066 extern tsapi const char* TS_HTTP_VALUE_NO_TRANSFORM;
01067 extern tsapi const char* TS_HTTP_VALUE_ONLY_IF_CACHED;
01068 extern tsapi const char* TS_HTTP_VALUE_PRIVATE;
01069 extern tsapi const char* TS_HTTP_VALUE_PROXY_REVALIDATE;
01070 extern tsapi const char* TS_HTTP_VALUE_PUBLIC;
01071
01072
01073
01074 extern tsapi int TS_HTTP_LEN_BYTES;
01075 extern tsapi int TS_HTTP_LEN_CHUNKED;
01076 extern tsapi int TS_HTTP_LEN_CLOSE;
01077 extern tsapi int TS_HTTP_LEN_COMPRESS;
01078 extern tsapi int TS_HTTP_LEN_DEFLATE;
01079 extern tsapi int TS_HTTP_LEN_GZIP;
01080 extern tsapi int TS_HTTP_LEN_IDENTITY;
01081 extern tsapi int TS_HTTP_LEN_KEEP_ALIVE;
01082 extern tsapi int TS_HTTP_LEN_MAX_AGE;
01083 extern tsapi int TS_HTTP_LEN_MAX_STALE;
01084 extern tsapi int TS_HTTP_LEN_MIN_FRESH;
01085 extern tsapi int TS_HTTP_LEN_MUST_REVALIDATE;
01086 extern tsapi int TS_HTTP_LEN_NONE;
01087 extern tsapi int TS_HTTP_LEN_NO_CACHE;
01088 extern tsapi int TS_HTTP_LEN_NO_STORE;
01089 extern tsapi int TS_HTTP_LEN_NO_TRANSFORM;
01090 extern tsapi int TS_HTTP_LEN_ONLY_IF_CACHED;
01091 extern tsapi int TS_HTTP_LEN_PRIVATE;
01092 extern tsapi int TS_HTTP_LEN_PROXY_REVALIDATE;
01093 extern tsapi int TS_HTTP_LEN_PUBLIC;
01094
01095
01096
01097 extern tsapi const char* TS_HTTP_METHOD_CONNECT;
01098 extern tsapi const char* TS_HTTP_METHOD_DELETE;
01099 extern tsapi const char* TS_HTTP_METHOD_GET;
01100 extern tsapi const char* TS_HTTP_METHOD_HEAD;
01101 extern tsapi const char* TS_HTTP_METHOD_ICP_QUERY;
01102 extern tsapi const char* TS_HTTP_METHOD_OPTIONS;
01103 extern tsapi const char* TS_HTTP_METHOD_POST;
01104 extern tsapi const char* TS_HTTP_METHOD_PURGE;
01105 extern tsapi const char* TS_HTTP_METHOD_PUT;
01106 extern tsapi const char* TS_HTTP_METHOD_TRACE;
01107 extern tsapi const char* TS_HTTP_METHOD_PUSH;
01108
01109
01110
01111 extern tsapi int TS_HTTP_LEN_CONNECT;
01112 extern tsapi int TS_HTTP_LEN_DELETE;
01113 extern tsapi int TS_HTTP_LEN_GET;
01114 extern tsapi int TS_HTTP_LEN_HEAD;
01115 extern tsapi int TS_HTTP_LEN_ICP_QUERY;
01116 extern tsapi int TS_HTTP_LEN_OPTIONS;
01117 extern tsapi int TS_HTTP_LEN_POST;
01118 extern tsapi int TS_HTTP_LEN_PURGE;
01119 extern tsapi int TS_HTTP_LEN_PUT;
01120 extern tsapi int TS_HTTP_LEN_TRACE;
01121 extern tsapi int TS_HTTP_LEN_PUSH;
01122
01123
01124
01125
01126 extern tsapi const char * const TS_NPN_PROTOCOL_HTTP_0_9;
01127 extern tsapi const char * const TS_NPN_PROTOCOL_HTTP_1_0;
01128 extern tsapi const char * const TS_NPN_PROTOCOL_HTTP_1_1;
01129 extern tsapi const char * const TS_NPN_PROTOCOL_HTTP_2_0;
01130 extern tsapi const char * const TS_NPN_PROTOCOL_SPDY_1;
01131 extern tsapi const char * const TS_NPN_PROTOCOL_SPDY_2;
01132 extern tsapi const char * const TS_NPN_PROTOCOL_SPDY_3;
01133 extern tsapi const char * const TS_NPN_PROTOCOL_SPDY_3_1;
01134
01135 extern tsapi int TS_NPN_PROTOCOL_INDEX_HTTP_0_9;
01136 extern tsapi int TS_NPN_PROTOCOL_INDEX_HTTP_1_0;
01137 extern tsapi int TS_NPN_PROTOCOL_INDEX_HTTP_1_1;
01138 extern tsapi int TS_NPN_PROTOCOL_INDEX_SPDY_1;
01139 extern tsapi int TS_NPN_PROTOCOL_INDEX_SPDY_2;
01140 extern tsapi int TS_NPN_PROTOCOL_INDEX_SPDY_3;
01141 extern tsapi int TS_NPN_PROTOCOL_INDEX_SPDY_3_1;
01142 extern tsapi int TS_NPN_PROTOCOL_INDEX_HTTP_2_0;
01143
01144 extern tsapi const char * const TS_NPN_PROTOCOL_GROUP_HTTP;
01145 extern tsapi const char * const TS_NPN_PROTOCOL_GROUP_HTTP2;
01146 extern tsapi const char * const TS_NPN_PROTOCOL_GROUP_SPDY;
01147
01148
01149
01150
01151
01152
01153
01154
01155
01156 extern tsapi const TSMLoc TS_NULL_MLOC;
01157
01158 #ifdef __cplusplus
01159 }
01160 #endif
01161
01162 #endif