Data Structures | Defines | Enumerations | Functions | Variables

HdrToken.h File Reference

A brief file description. More...

#include <assert.h>
#include <sys/types.h>
#include "ink_assert.h"
#include "ink_atomic.h"
#include "ink_defs.h"
#include "ink_string.h"
#include "Allocator.h"
#include "Regex.h"
#include "ink_apidefs.h"
Include dependency graph for HdrToken.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  HdrTokenTypeBinding
struct  HdrTokenFieldInfo
struct  HdrTokenTypeSpecific
struct  HdrTokenHeapPrefix

Defines

#define SIZEOF(x)   (sizeof (x) / sizeof (x[0]))
#define MIME_FLAGS_NONE   HTIF_NONE
#define MIME_FLAGS_COMMAS   HTIF_COMMAS
#define MIME_FLAGS_MULTVALS   HTIF_MULTVALS
#define MIME_FLAGS_HOPBYHOP   HTIF_HOPBYHOP
#define MIME_FLAGS_PROXYAUTH   HTIF_PROXYAUTH
#define MIME_SLOTID_ACCEPT   0
#define MIME_SLOTID_ACCEPT_CHARSET   1
#define MIME_SLOTID_ACCEPT_ENCODING   2
#define MIME_SLOTID_ACCEPT_LANGUAGE   3
#define MIME_SLOTID_AGE   4
#define MIME_SLOTID_AUTHORIZATION   5
#define MIME_SLOTID_CACHE_CONTROL   6
#define MIME_SLOTID_CLIENT_IP   7
#define MIME_SLOTID_CONNECTION   8
#define MIME_SLOTID_CONTENT_ENCODING   9
#define MIME_SLOTID_CONTENT_LANGUAGE   10
#define MIME_SLOTID_CONTENT_LENGTH   11
#define MIME_SLOTID_CONTENT_TYPE   12
#define MIME_SLOTID_COOKIE   13
#define MIME_SLOTID_DATE   14
#define MIME_SLOTID_EXPIRES   15
#define MIME_SLOTID_IF_MATCH   16
#define MIME_SLOTID_IF_MODIFIED_SINCE   17
#define MIME_SLOTID_IF_NONE_MATCH   18
#define MIME_SLOTID_IF_RANGE   19
#define MIME_SLOTID_IF_UNMODIFIED_SINCE   20
#define MIME_SLOTID_LAST_MODIFIED   21
#define MIME_SLOTID_PRAGMA   22
#define MIME_SLOTID_PROXY_CONNECTION   23
#define MIME_SLOTID_RANGE   24
#define MIME_SLOTID_SET_COOKIE   25
#define MIME_SLOTID_TE   26
#define MIME_SLOTID_TRANSFER_ENCODING   27
#define MIME_SLOTID_USER_AGENT   28
#define MIME_SLOTID_VARY   29
#define MIME_SLOTID_VIA   30
#define MIME_SLOTID_WWW_AUTHENTICATE   31
#define MIME_SLOTID_NONE   -1
#define TOK_64_CONST(x)   x ## LL
#define MIME_PRESENCE_ACCEPT   (TOK_64_CONST(1) << 0)
#define MIME_PRESENCE_ACCEPT_CHARSET   (TOK_64_CONST(1) << 1)
#define MIME_PRESENCE_ACCEPT_ENCODING   (TOK_64_CONST(1) << 2)
#define MIME_PRESENCE_ACCEPT_LANGUAGE   (TOK_64_CONST(1) << 3)
#define MIME_PRESENCE_ACCEPT_RANGES   (TOK_64_CONST(1) << 4)
#define MIME_PRESENCE_AGE   (TOK_64_CONST(1) << 5)
#define MIME_PRESENCE_ALLOW   (TOK_64_CONST(1) << 6)
#define MIME_PRESENCE_AUTHORIZATION   (TOK_64_CONST(1) << 7)
#define MIME_PRESENCE_BYTES   (TOK_64_CONST(1) << 8)
#define MIME_PRESENCE_CACHE_CONTROL   (TOK_64_CONST(1) << 9)
#define MIME_PRESENCE_CLIENT_IP   (TOK_64_CONST(1) << 10)
#define MIME_PRESENCE_CONNECTION   (TOK_64_CONST(1) << 11)
#define MIME_PRESENCE_CONTENT_ENCODING   (TOK_64_CONST(1) << 12)
#define MIME_PRESENCE_CONTENT_LANGUAGE   (TOK_64_CONST(1) << 13)
#define MIME_PRESENCE_CONTENT_LENGTH   (TOK_64_CONST(1) << 14)
#define MIME_PRESENCE_CONTENT_LOCATION   (TOK_64_CONST(1) << 15)
#define MIME_PRESENCE_CONTENT_MD5   (TOK_64_CONST(1) << 16)
#define MIME_PRESENCE_CONTENT_RANGE   (TOK_64_CONST(1) << 17)
#define MIME_PRESENCE_CONTENT_TYPE   (TOK_64_CONST(1) << 18)
#define MIME_PRESENCE_COOKIE   (TOK_64_CONST(1) << 19)
#define MIME_PRESENCE_DATE   (TOK_64_CONST(1) << 20)
#define MIME_PRESENCE_ETAG   (TOK_64_CONST(1) << 21)
#define MIME_PRESENCE_EXPIRES   (TOK_64_CONST(1) << 22)
#define MIME_PRESENCE_FROM   (TOK_64_CONST(1) << 23)
#define MIME_PRESENCE_HOST   (TOK_64_CONST(1) << 24)
#define MIME_PRESENCE_IF_MATCH   (TOK_64_CONST(1) << 25)
#define MIME_PRESENCE_IF_MODIFIED_SINCE   (TOK_64_CONST(1) << 26)
#define MIME_PRESENCE_IF_NONE_MATCH   (TOK_64_CONST(1) << 27)
#define MIME_PRESENCE_IF_RANGE   (TOK_64_CONST(1) << 28)
#define MIME_PRESENCE_IF_UNMODIFIED_SINCE   (TOK_64_CONST(1) << 29)
#define MIME_PRESENCE_KEEP_ALIVE   (TOK_64_CONST(1) << 30)
#define MIME_PRESENCE_KEYWORDS   (TOK_64_CONST(1) << 31)
#define MIME_PRESENCE_LAST_MODIFIED   (TOK_64_CONST(1) << 32)
#define MIME_PRESENCE_LINES   (TOK_64_CONST(1) << 33)
#define MIME_PRESENCE_LOCATION   (TOK_64_CONST(1) << 34)
#define MIME_PRESENCE_MAX_FORWARDS   (TOK_64_CONST(1) << 35)
#define MIME_PRESENCE_PATH   (TOK_64_CONST(1) << 36)
#define MIME_PRESENCE_PRAGMA   (TOK_64_CONST(1) << 37)
#define MIME_PRESENCE_PROXY_AUTHENTICATE   (TOK_64_CONST(1) << 38)
#define MIME_PRESENCE_PROXY_AUTHORIZATION   (TOK_64_CONST(1) << 39)
#define MIME_PRESENCE_PROXY_CONNECTION   (TOK_64_CONST(1) << 40)
#define MIME_PRESENCE_PUBLIC   (TOK_64_CONST(1) << 41)
#define MIME_PRESENCE_RANGE   (TOK_64_CONST(1) << 42)
#define MIME_PRESENCE_REFERER   (TOK_64_CONST(1) << 43)
#define MIME_PRESENCE_SERVER   (TOK_64_CONST(1) << 44)
#define MIME_PRESENCE_SET_COOKIE   (TOK_64_CONST(1) << 45)
#define MIME_PRESENCE_SUBJECT   (TOK_64_CONST(1) << 46)
#define MIME_PRESENCE_SUMMARY   (TOK_64_CONST(1) << 47)
#define MIME_PRESENCE_TE   (TOK_64_CONST(1) << 48)
#define MIME_PRESENCE_TRANSFER_ENCODING   (TOK_64_CONST(1) << 49)
#define MIME_PRESENCE_UPGRADE   (TOK_64_CONST(1) << 50)
#define MIME_PRESENCE_USER_AGENT   (TOK_64_CONST(1) << 51)
#define MIME_PRESENCE_VARY   (TOK_64_CONST(1) << 52)
#define MIME_PRESENCE_VIA   (TOK_64_CONST(1) << 53)
#define MIME_PRESENCE_WARNING   (TOK_64_CONST(1) << 54)
#define MIME_PRESENCE_WWW_AUTHENTICATE   (TOK_64_CONST(1) << 55)
#define MIME_PRESENCE_UNUSED_1   (TOK_64_CONST(1) << 56)
#define MIME_PRESENCE_UNUSED_2   (TOK_64_CONST(1) << 57)
#define MIME_PRESENCE_UNUSED_3   (TOK_64_CONST(1) << 58)
#define MIME_PRESENCE_UNUSED_4   (TOK_64_CONST(1) << 59)
#define MIME_PRESENCE_UNUSED_5   (TOK_64_CONST(1) << 60)
#define MIME_PRESENCE_XREF   (TOK_64_CONST(1) << 61)
#define MIME_PRESENCE_INT_DATA_INFO   (TOK_64_CONST(1) << 62)
#define MIME_PRESENCE_NONE   TOK_64_CONST(0)
#define MIME_PRESENCE_ALL   ~(TOK_64_CONST(0))

Enumerations

enum  HdrTokenType {
  HDRTOKEN_TYPE_OTHER = 0, HDRTOKEN_TYPE_FIELD = 1, HDRTOKEN_TYPE_METHOD = 2, HDRTOKEN_TYPE_SCHEME = 3,
  HDRTOKEN_TYPE_CACHE_CONTROL = 4
}
enum  HdrTokenInfoFlags {
  HTIF_NONE = 0, HTIF_COMMAS = 1 << 0, HTIF_MULTVALS = 1 << 1, HTIF_HOPBYHOP = 1 << 2,
  HTIF_PROXYAUTH = 1 << 3
}

Functions

void hdrtoken_init ()
int hdrtoken_tokenize_dfa (const char *string, int string_len, const char **wks_string_out=NULL)
inkcoreapi int hdrtoken_tokenize (const char *string, int string_len, const char **wks_string_out=NULL)
const char * hdrtoken_string_to_wks (const char *string)
const char * hdrtoken_string_to_wks (const char *string, int length)
bool hdrtoken_is_wks (const char *str)
bool hdrtoken_is_valid_wks_idx (int wks_idx)
HdrTokenHeapPrefixhdrtoken_wks_to_prefix (const char *wks)
const char * hdrtoken_index_to_wks (int wks_idx)
int hdrtoken_index_to_length (int wks_idx)
HdrTokenType hdrtoken_index_to_token_type (int wks_idx)
int hdrtoken_index_to_slotid (int wks_idx)
uint64_t hdrtoken_index_to_mask (int wks_idx)
int hdrtoken_index_to_flags (int wks_idx)
HdrTokenHeapPrefixhdrtoken_index_to_prefix (int wks_idx)
int hdrtoken_wks_to_index (const char *wks)
int hdrtoken_wks_to_length (const char *wks)
int hdrtoken_wks_to_token_type (const char *wks)
int hdrtoken_wks_to_slotid (const char *wks)
uint64_t hdrtoken_wks_to_mask (const char *wks)
int hdrtoken_wks_to_flags (const char *wks)

Variables

DFAhdrtoken_strs_dfa
int hdrtoken_num_wks
const char * hdrtoken_strs []
int hdrtoken_str_lengths []
HdrTokenType hdrtoken_str_token_types []
int32_t hdrtoken_str_slotids []
uint64_t hdrtoken_str_masks []
uint32_t hdrtoken_str_flags []

Detailed Description

A brief file description.

License

Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

Definition in file HdrToken.h.


Define Documentation

#define MIME_FLAGS_COMMAS   HTIF_COMMAS

Definition at line 98 of file HdrToken.h.

Referenced by MIMEField::supports_commas().

#define MIME_FLAGS_HOPBYHOP   HTIF_HOPBYHOP
#define MIME_FLAGS_MULTVALS   HTIF_MULTVALS

Definition at line 99 of file HdrToken.h.

#define MIME_FLAGS_NONE   HTIF_NONE

Definition at line 97 of file HdrToken.h.

#define MIME_FLAGS_PROXYAUTH   HTIF_PROXYAUTH

Definition at line 101 of file HdrToken.h.

Referenced by HttpTransactHeaders::copy_header_fields().

#define MIME_PRESENCE_ACCEPT   (TOK_64_CONST(1) << 0)

Definition at line 317 of file HdrToken.h.

#define MIME_PRESENCE_ACCEPT_CHARSET   (TOK_64_CONST(1) << 1)

Definition at line 318 of file HdrToken.h.

#define MIME_PRESENCE_ACCEPT_ENCODING   (TOK_64_CONST(1) << 2)

Definition at line 319 of file HdrToken.h.

#define MIME_PRESENCE_ACCEPT_LANGUAGE   (TOK_64_CONST(1) << 3)

Definition at line 320 of file HdrToken.h.

#define MIME_PRESENCE_ACCEPT_RANGES   (TOK_64_CONST(1) << 4)

Definition at line 321 of file HdrToken.h.

#define MIME_PRESENCE_AGE   (TOK_64_CONST(1) << 5)

Definition at line 322 of file HdrToken.h.

Referenced by HttpTransact::merge_and_update_headers_for_cache_update().

#define MIME_PRESENCE_ALL   ~(TOK_64_CONST(0))

Definition at line 386 of file HdrToken.h.

#define MIME_PRESENCE_ALLOW   (TOK_64_CONST(1) << 6)

Definition at line 323 of file HdrToken.h.

#define MIME_PRESENCE_AUTHORIZATION   (TOK_64_CONST(1) << 7)
#define MIME_PRESENCE_BYTES   (TOK_64_CONST(1) << 8)

Definition at line 325 of file HdrToken.h.

#define MIME_PRESENCE_CACHE_CONTROL   (TOK_64_CONST(1) << 9)

Definition at line 326 of file HdrToken.h.

Referenced by HttpTransactHeaders::convert_to_1_0_request_header().

#define MIME_PRESENCE_CLIENT_IP   (TOK_64_CONST(1) << 10)

Definition at line 327 of file HdrToken.h.

Referenced by HttpTransact::add_client_ip_to_outgoing_request().

#define MIME_PRESENCE_CONNECTION   (TOK_64_CONST(1) << 11)

Definition at line 328 of file HdrToken.h.

Referenced by HttpTransact::handle_upgrade_request().

#define MIME_PRESENCE_CONTENT_ENCODING   (TOK_64_CONST(1) << 12)

Definition at line 329 of file HdrToken.h.

#define MIME_PRESENCE_CONTENT_LANGUAGE   (TOK_64_CONST(1) << 13)

Definition at line 330 of file HdrToken.h.

#define MIME_PRESENCE_CONTENT_LENGTH   (TOK_64_CONST(1) << 14)
#define MIME_PRESENCE_CONTENT_LOCATION   (TOK_64_CONST(1) << 15)

Definition at line 332 of file HdrToken.h.

#define MIME_PRESENCE_CONTENT_MD5   (TOK_64_CONST(1) << 16)

Definition at line 333 of file HdrToken.h.

#define MIME_PRESENCE_CONTENT_RANGE   (TOK_64_CONST(1) << 17)

Definition at line 334 of file HdrToken.h.

#define MIME_PRESENCE_CONTENT_TYPE   (TOK_64_CONST(1) << 18)

Definition at line 335 of file HdrToken.h.

#define MIME_PRESENCE_COOKIE   (TOK_64_CONST(1) << 19)

Definition at line 336 of file HdrToken.h.

Referenced by do_cookies_prevent_caching(), and PrefetchBlaster::handleCookieHeaders().

#define MIME_PRESENCE_DATE   (TOK_64_CONST(1) << 20)

Definition at line 337 of file HdrToken.h.

Referenced by HttpTransact::check_response_validity().

#define MIME_PRESENCE_ETAG   (TOK_64_CONST(1) << 21)

Definition at line 338 of file HdrToken.h.

Referenced by HttpTransact::issue_revalidate().

#define MIME_PRESENCE_EXPIRES   (TOK_64_CONST(1) << 22)
#define MIME_PRESENCE_FROM   (TOK_64_CONST(1) << 23)

Definition at line 340 of file HdrToken.h.

#define MIME_PRESENCE_HOST   (TOK_64_CONST(1) << 24)
#define MIME_PRESENCE_IF_MATCH   (TOK_64_CONST(1) << 25)
#define MIME_PRESENCE_IF_MODIFIED_SINCE   (TOK_64_CONST(1) << 26)
#define MIME_PRESENCE_IF_NONE_MATCH   (TOK_64_CONST(1) << 27)
#define MIME_PRESENCE_IF_RANGE   (TOK_64_CONST(1) << 28)
#define MIME_PRESENCE_IF_UNMODIFIED_SINCE   (TOK_64_CONST(1) << 29)
#define MIME_PRESENCE_INT_DATA_INFO   (TOK_64_CONST(1) << 62)

Definition at line 383 of file HdrToken.h.

#define MIME_PRESENCE_KEEP_ALIVE   (TOK_64_CONST(1) << 30)

Definition at line 347 of file HdrToken.h.

#define MIME_PRESENCE_KEYWORDS   (TOK_64_CONST(1) << 31)

Definition at line 348 of file HdrToken.h.

#define MIME_PRESENCE_LAST_MODIFIED   (TOK_64_CONST(1) << 32)

Definition at line 349 of file HdrToken.h.

Referenced by HttpTransact::calculate_document_freshness_limit().

#define MIME_PRESENCE_LINES   (TOK_64_CONST(1) << 33)

Definition at line 350 of file HdrToken.h.

#define MIME_PRESENCE_LOCATION   (TOK_64_CONST(1) << 34)

Definition at line 351 of file HdrToken.h.

Referenced by PrefetchTransform::redirect().

#define MIME_PRESENCE_MAX_FORWARDS   (TOK_64_CONST(1) << 35)
#define MIME_PRESENCE_NONE   TOK_64_CONST(0)

Definition at line 385 of file HdrToken.h.

#define MIME_PRESENCE_PATH   (TOK_64_CONST(1) << 36)

Definition at line 353 of file HdrToken.h.

#define MIME_PRESENCE_PRAGMA   (TOK_64_CONST(1) << 37)

Definition at line 354 of file HdrToken.h.

#define MIME_PRESENCE_PROXY_AUTHENTICATE   (TOK_64_CONST(1) << 38)

Definition at line 355 of file HdrToken.h.

#define MIME_PRESENCE_PROXY_AUTHORIZATION   (TOK_64_CONST(1) << 39)

Definition at line 356 of file HdrToken.h.

Referenced by HttpSM::setup_server_send_request().

#define MIME_PRESENCE_PROXY_CONNECTION   (TOK_64_CONST(1) << 40)

Definition at line 357 of file HdrToken.h.

Referenced by HttpTransact::build_error_response().

#define MIME_PRESENCE_PUBLIC   (TOK_64_CONST(1) << 41)

Definition at line 358 of file HdrToken.h.

#define MIME_PRESENCE_RANGE   (TOK_64_CONST(1) << 42)
#define MIME_PRESENCE_REFERER   (TOK_64_CONST(1) << 43)

Definition at line 360 of file HdrToken.h.

Referenced by RemapProcessor::finish_remap().

#define MIME_PRESENCE_SERVER   (TOK_64_CONST(1) << 44)

Definition at line 361 of file HdrToken.h.

#define MIME_PRESENCE_SET_COOKIE   (TOK_64_CONST(1) << 45)

Definition at line 362 of file HdrToken.h.

Referenced by do_cookies_prevent_caching(), and PrefetchBlaster::handleCookieHeaders().

#define MIME_PRESENCE_SUBJECT   (TOK_64_CONST(1) << 46)

Definition at line 363 of file HdrToken.h.

#define MIME_PRESENCE_SUMMARY   (TOK_64_CONST(1) << 47)

Definition at line 364 of file HdrToken.h.

#define MIME_PRESENCE_TE   (TOK_64_CONST(1) << 48)

Definition at line 365 of file HdrToken.h.

Referenced by HttpTransact::check_request_validity().

#define MIME_PRESENCE_TRANSFER_ENCODING   (TOK_64_CONST(1) << 49)
#define MIME_PRESENCE_UNUSED_1   (TOK_64_CONST(1) << 56)

Definition at line 376 of file HdrToken.h.

#define MIME_PRESENCE_UNUSED_2   (TOK_64_CONST(1) << 57)

Definition at line 377 of file HdrToken.h.

#define MIME_PRESENCE_UNUSED_3   (TOK_64_CONST(1) << 58)

Definition at line 378 of file HdrToken.h.

#define MIME_PRESENCE_UNUSED_4   (TOK_64_CONST(1) << 59)

Definition at line 379 of file HdrToken.h.

#define MIME_PRESENCE_UNUSED_5   (TOK_64_CONST(1) << 60)

Definition at line 380 of file HdrToken.h.

#define MIME_PRESENCE_UPGRADE   (TOK_64_CONST(1) << 50)

Definition at line 367 of file HdrToken.h.

Referenced by HttpTransact::handle_upgrade_request().

#define MIME_PRESENCE_USER_AGENT   (TOK_64_CONST(1) << 51)

Definition at line 368 of file HdrToken.h.

#define MIME_PRESENCE_VARY   (TOK_64_CONST(1) << 52)
#define MIME_PRESENCE_VIA   (TOK_64_CONST(1) << 53)

Definition at line 370 of file HdrToken.h.

#define MIME_PRESENCE_WARNING   (TOK_64_CONST(1) << 54)

Definition at line 371 of file HdrToken.h.

#define MIME_PRESENCE_WWW_AUTHENTICATE   (TOK_64_CONST(1) << 55)
#define MIME_PRESENCE_XREF   (TOK_64_CONST(1) << 61)

Definition at line 382 of file HdrToken.h.

#define MIME_SLOTID_ACCEPT   0

Definition at line 266 of file HdrToken.h.

#define MIME_SLOTID_ACCEPT_CHARSET   1

Definition at line 267 of file HdrToken.h.

#define MIME_SLOTID_ACCEPT_ENCODING   2

Definition at line 268 of file HdrToken.h.

#define MIME_SLOTID_ACCEPT_LANGUAGE   3

Definition at line 269 of file HdrToken.h.

#define MIME_SLOTID_AGE   4

Definition at line 270 of file HdrToken.h.

#define MIME_SLOTID_AUTHORIZATION   5

Definition at line 271 of file HdrToken.h.

#define MIME_SLOTID_CACHE_CONTROL   6

Definition at line 272 of file HdrToken.h.

#define MIME_SLOTID_CLIENT_IP   7

Definition at line 273 of file HdrToken.h.

#define MIME_SLOTID_CONNECTION   8

Definition at line 274 of file HdrToken.h.

#define MIME_SLOTID_CONTENT_ENCODING   9

Definition at line 275 of file HdrToken.h.

#define MIME_SLOTID_CONTENT_LANGUAGE   10

Definition at line 276 of file HdrToken.h.

#define MIME_SLOTID_CONTENT_LENGTH   11

Definition at line 277 of file HdrToken.h.

#define MIME_SLOTID_CONTENT_TYPE   12

Definition at line 278 of file HdrToken.h.

#define MIME_SLOTID_COOKIE   13

Definition at line 279 of file HdrToken.h.

#define MIME_SLOTID_DATE   14

Definition at line 280 of file HdrToken.h.

#define MIME_SLOTID_EXPIRES   15

Definition at line 281 of file HdrToken.h.

#define MIME_SLOTID_IF_MATCH   16

Definition at line 282 of file HdrToken.h.

#define MIME_SLOTID_IF_MODIFIED_SINCE   17

Definition at line 283 of file HdrToken.h.

#define MIME_SLOTID_IF_NONE_MATCH   18

Definition at line 284 of file HdrToken.h.

#define MIME_SLOTID_IF_RANGE   19

Definition at line 285 of file HdrToken.h.

#define MIME_SLOTID_IF_UNMODIFIED_SINCE   20

Definition at line 286 of file HdrToken.h.

#define MIME_SLOTID_LAST_MODIFIED   21

Definition at line 287 of file HdrToken.h.

#define MIME_SLOTID_NONE   -1
#define MIME_SLOTID_PRAGMA   22

Definition at line 288 of file HdrToken.h.

#define MIME_SLOTID_PROXY_CONNECTION   23

Definition at line 289 of file HdrToken.h.

#define MIME_SLOTID_RANGE   24

Definition at line 290 of file HdrToken.h.

#define MIME_SLOTID_SET_COOKIE   25

Definition at line 291 of file HdrToken.h.

#define MIME_SLOTID_TE   26

Definition at line 292 of file HdrToken.h.

#define MIME_SLOTID_TRANSFER_ENCODING   27

Definition at line 293 of file HdrToken.h.

#define MIME_SLOTID_USER_AGENT   28

Definition at line 294 of file HdrToken.h.

#define MIME_SLOTID_VARY   29

Definition at line 295 of file HdrToken.h.

#define MIME_SLOTID_VIA   30

Definition at line 296 of file HdrToken.h.

#define MIME_SLOTID_WWW_AUTHENTICATE   31

Definition at line 297 of file HdrToken.h.

#define SIZEOF (   x  )     (sizeof (x) / sizeof (x[0]))

Definition at line 43 of file HdrToken.h.

#define TOK_64_CONST (   x  )     x ## LL

Definition at line 315 of file HdrToken.h.

Referenced by hdrtoken_init(), and mime_hdr_describe().


Enumeration Type Documentation

Enumerator:
HTIF_NONE 
HTIF_COMMAS 
HTIF_MULTVALS 
HTIF_HOPBYHOP 
HTIF_PROXYAUTH 

Definition at line 88 of file HdrToken.h.

Enumerator:
HDRTOKEN_TYPE_OTHER 
HDRTOKEN_TYPE_FIELD 
HDRTOKEN_TYPE_METHOD 
HDRTOKEN_TYPE_SCHEME 
HDRTOKEN_TYPE_CACHE_CONTROL 

Definition at line 45 of file HdrToken.h.


Function Documentation

int hdrtoken_index_to_flags ( int  wks_idx  )  [inline]
int hdrtoken_index_to_length ( int  wks_idx  )  [inline]
uint64_t hdrtoken_index_to_mask ( int  wks_idx  )  [inline]

Definition at line 188 of file HdrToken.h.

References hdrtoken_is_valid_wks_idx(), hdrtoken_str_masks, and ink_assert.

Referenced by mime_field_presence_mask().

HdrTokenHeapPrefix* hdrtoken_index_to_prefix ( int  wks_idx  )  [inline]
int hdrtoken_index_to_slotid ( int  wks_idx  )  [inline]
HdrTokenType hdrtoken_index_to_token_type ( int  wks_idx  )  [inline]

Definition at line 174 of file HdrToken.h.

References hdrtoken_is_valid_wks_idx(), hdrtoken_str_token_types, and ink_assert.

const char* hdrtoken_index_to_wks ( int  wks_idx  )  [inline]
void hdrtoken_init (  ) 
bool hdrtoken_is_valid_wks_idx ( int  wks_idx  )  [inline]
bool hdrtoken_is_wks ( const char *  str  )  [inline]
const char* hdrtoken_string_to_wks ( const char *  string  ) 
const char* hdrtoken_string_to_wks ( const char *  string,
int  length 
)

Definition at line 762 of file HdrToken.cc.

References hdrtoken_tokenize().

inkcoreapi int hdrtoken_tokenize ( const char *  string,
int  string_len,
const char **  wks_string_out = NULL 
)
int hdrtoken_tokenize_dfa ( const char *  string,
int  string_len,
const char **  wks_string_out = NULL 
)

Definition at line 693 of file HdrToken.cc.

References hdrtoken_index_to_wks(), and DFA::match().

Referenced by hdrtoken_hash_init(), and hdrtoken_init().

int hdrtoken_wks_to_flags ( const char *  wks  )  [inline]
int hdrtoken_wks_to_index ( const char *  wks  )  [inline]
int hdrtoken_wks_to_length ( const char *  wks  )  [inline]
uint64_t hdrtoken_wks_to_mask ( const char *  wks  )  [inline]
HdrTokenHeapPrefix* hdrtoken_wks_to_prefix ( const char *  wks  )  [inline]
int hdrtoken_wks_to_slotid ( const char *  wks  )  [inline]
int hdrtoken_wks_to_token_type ( const char *  wks  )  [inline]

Variable Documentation

Definition at line 330 of file HdrToken.cc.

Referenced by hdrtoken_is_valid_wks_idx().

uint32_t hdrtoken_str_flags[]

Definition at line 337 of file HdrToken.cc.

Referenced by hdrtoken_index_to_flags().

Definition at line 333 of file HdrToken.cc.

Referenced by hdrtoken_index_to_length().

uint64_t hdrtoken_str_masks[]

Definition at line 336 of file HdrToken.cc.

Referenced by hdrtoken_index_to_mask().

Definition at line 335 of file HdrToken.cc.

Referenced by hdrtoken_index_to_slotid().

Definition at line 334 of file HdrToken.cc.

Referenced by hdrtoken_index_to_token_type().

const char* hdrtoken_strs[]

Definition at line 332 of file HdrToken.cc.

Referenced by hdrtoken_index_to_wks().

Definition at line 339 of file HdrToken.cc.