Advertisement
tomkiewicz

scb-prototype

Sep 2nd, 2012
184
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.07 KB | None | 0 0
  1. /*** scb.h ***/
  2.  
  3. typedef struct
  4. {
  5.     size_t offset;
  6.     size_t length;
  7.     const char *buffer;
  8.     int valid;
  9. } gg_scb;
  10.  
  11. gg_scb gg_scb_new(const char *buffer, size_t length);
  12.  
  13. int gg_scb_is_valid(gg_scb *scb);
  14.  
  15. uint8_t gg_scb_read_uint8(gg_scb *scb);
  16. int32_t gg_scb_read_uint32(gg_scb *scb);
  17. int64_t gg_scb_read_uint64(gg_scb *scb);
  18. int32_t gg_scb_read_packed_uint(gg_scb *scb);
  19. uin_t gg_scb_read_uin(gg_scb *scb, int long_variant);
  20. void gg_scb_read_buff(gg_scb *scb, uint8_t *buff, size_t length);
  21. uint8_t * gg_scb_read_buff_dup(gg_scb *scb, size_t length);
  22. char * gg_scb_read_str_dup(gg_scb *scb); /* najpierw odczytuje spakowany rozmiar, potem stringa, a na końcu dodaje \0 */
  23.  
  24. void gg_scb_skip(gg_scb *scb, size_t length);
  25. void gg_scb_expected(gg_scb *scb, uint8_t *buff, size_t length);
  26. void gg_scb_required(gg_scb *scb, uint8_t *buff, size_t length);
  27. void gg_scb_expected_uint8(gg_scb *scb, uint8_t val);
  28. void gg_scb_required_uint8(gg_scb *scb, uint8_t val);
  29. void gg_scb_expected_uint32(gg_scb *scb, uint32_t val);
  30. void gg_scb_required_uint32(gg_scb *scb, uint32_t val);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement