Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*** scb.h ***/
- typedef struct
- {
- size_t offset;
- size_t length;
- const char *buffer;
- int valid;
- } gg_scb;
- gg_scb gg_scb_new(const char *buffer, size_t length);
- int gg_scb_is_valid(gg_scb *scb);
- uint8_t gg_scb_read_uint8(gg_scb *scb);
- int32_t gg_scb_read_uint32(gg_scb *scb);
- int64_t gg_scb_read_uint64(gg_scb *scb);
- int32_t gg_scb_read_packed_uint(gg_scb *scb);
- uin_t gg_scb_read_uin(gg_scb *scb, int long_variant);
- void gg_scb_read_buff(gg_scb *scb, uint8_t *buff, size_t length);
- uint8_t * gg_scb_read_buff_dup(gg_scb *scb, size_t length);
- char * gg_scb_read_str_dup(gg_scb *scb); /* najpierw odczytuje spakowany rozmiar, potem stringa, a na końcu dodaje \0 */
- void gg_scb_skip(gg_scb *scb, size_t length);
- void gg_scb_expected(gg_scb *scb, uint8_t *buff, size_t length);
- void gg_scb_required(gg_scb *scb, uint8_t *buff, size_t length);
- void gg_scb_expected_uint8(gg_scb *scb, uint8_t val);
- void gg_scb_required_uint8(gg_scb *scb, uint8_t val);
- void gg_scb_expected_uint32(gg_scb *scb, uint32_t val);
- void gg_scb_required_uint32(gg_scb *scb, uint32_t val);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement