GRPC Core 0.10.0.0

- Main Page
- Data Structures
- Files

- File List
- Globals

All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
Enumerations | Functions
hpack_parser.c File Reference
`#include "src/core/transport/chttp2/hpack_parser.h"`
`#include "src/core/transport/chttp2/internal.h"`
`#include <stddef.h>`
`#include <string.h>`
`#include <assert.h>`
`#include "src/core/transport/chttp2/bin_encoder.h"`
`#include <grpc/support/alloc.h>`
`#include <grpc/support/log.h>`
`#include <grpc/support/port_platform.h>`
`#include <grpc/support/useful.h>`

## Enumerations
enum | binary_state { NOT_BINARY, B64_BYTE0, B64_BYTE1, B64_BYTE2, B64_BYTE3 }
enum | first_byte_type { INDEXED_FIELD, INDEXED_FIELD_X, LITHDR_INCIDX, LITHDR_INCIDX_X, LITHDR_INCIDX_V, LITHDR_NOTIDX, LITHDR_NOTIDX_X, LITHDR_NOTIDX_V, LITHDR_NVRIDX, LITHDR_NVRIDX_X, LITHDR_NVRIDX_V, MAX_TBL_SIZE, MAX_TBL_SIZE_X, ILLEGAL }
enum | is_binary_header { BINARY_HEADER, PLAINTEXT_HEADER, ERROR_HEADER }

## Functions
void | grpc_chttp2_hpack_parser_init (grpc_chttp2_hpack_parser *p, grpc_mdctx *mdctx)
void | grpc_chttp2_hpack_parser_set_has_priority (grpc_chttp2_hpack_parser *p)
void | grpc_chttp2_hpack_parser_destroy (grpc_chttp2_hpack_parser *p)
int | grpc_chttp2_hpack_parser_parse (grpc_chttp2_hpack_parser *p, const gpr_uint8 *beg, const gpr_uint8 *end)
grpc_chttp2_parse_error | grpc_chttp2_header_parser_parse (void *hpack_parser, grpc_chttp2_transport_parsing *transport_parsing, grpc_chttp2_stream_parsing *stream_parsing, gpr_slice slice, int is_last)

## Enumeration Type Documentation

enum binary_state

Enumerator
NOT_BINARY |
B64_BYTE0 |
B64_BYTE1 |
B64_BYTE2 |
B64_BYTE3 |

enum first_byte_type

Enumerator
INDEXED_FIELD |
INDEXED_FIELD_X |
LITHDR_INCIDX |
LITHDR_INCIDX_X |
LITHDR_INCIDX_V |
LITHDR_NOTIDX |
LITHDR_NOTIDX_X |
LITHDR_NOTIDX_V |
LITHDR_NVRIDX |
LITHDR_NVRIDX_X |
LITHDR_NVRIDX_V |
MAX_TBL_SIZE |
MAX_TBL_SIZE_X |
ILLEGAL |

enum is_binary_header

Enumerator
BINARY_HEADER |
PLAINTEXT_HEADER |
ERROR_HEADER |

## Function Documentation

grpc_chttp2_parse_error grpc_chttp2_header_parser_parse | ( | void * | hpack_parser,
|  | grpc_chttp2_transport_parsing * | transport_parsing,
|  | grpc_chttp2_stream_parsing * | stream_parsing,
|  | gpr_slice | slice,
|  | int | is_last
| ) |  |

void grpc_chttp2_hpack_parser_destroy | ( | grpc_chttp2_hpack_parser * | p | ) |

void grpc_chttp2_hpack_parser_init | ( | grpc_chttp2_hpack_parser * | p,
|  | grpc_mdctx * | mdctx
| ) |  |

int grpc_chttp2_hpack_parser_parse | ( | grpc_chttp2_hpack_parser * | p,
|  | const gpr_uint8 * | beg,
|  | const gpr_uint8 * | end
| ) |  |

void grpc_chttp2_hpack_parser_set_has_priority | ( | grpc_chttp2_hpack_parser * | p | ) |