url_cparser.pxd 779 B

12345678910111213141516171819202122232425262728293031
  1. from libc.stdint cimport uint16_t
  2. cdef extern from "http_parser.h":
  3. # URL Parser
  4. enum http_parser_url_fields:
  5. UF_SCHEMA = 0,
  6. UF_HOST = 1,
  7. UF_PORT = 2,
  8. UF_PATH = 3,
  9. UF_QUERY = 4,
  10. UF_FRAGMENT = 5,
  11. UF_USERINFO = 6,
  12. UF_MAX = 7
  13. struct http_parser_url_field_data:
  14. uint16_t off
  15. uint16_t len
  16. struct http_parser_url:
  17. uint16_t field_set
  18. uint16_t port
  19. http_parser_url_field_data[<int>UF_MAX] field_data
  20. void http_parser_url_init(http_parser_url *u)
  21. int http_parser_parse_url(const char *buf,
  22. size_t buflen,
  23. int is_connect,
  24. http_parser_url *u)