-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsocks5-buf.h
More file actions
25 lines (21 loc) · 794 Bytes
/
Copy pathsocks5-buf.h
File metadata and controls
25 lines (21 loc) · 794 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef __OPENCONNECT_SOCKS5_BUF_H__
#define __OPENCONNECT_SOCKS5_BUF_H__
#include <stddef.h>
struct s5_buf {
unsigned char *data;
size_t start;
size_t len;
size_t cap;
};
void s5_buf_init(struct s5_buf *buf);
void s5_buf_free(struct s5_buf *buf);
size_t s5_buf_len(const struct s5_buf *buf);
const unsigned char *s5_buf_data(const struct s5_buf *buf);
unsigned char *s5_buf_tail(struct s5_buf *buf, size_t needed,
size_t min_cap, size_t max_cap);
void s5_buf_produce(struct s5_buf *buf, size_t produced);
void s5_buf_consume(struct s5_buf *buf, size_t consumed);
void s5_buf_consume_no_compact(struct s5_buf *buf, size_t consumed);
int s5_buf_append(struct s5_buf *buf, const void *data, size_t len,
size_t min_cap, size_t max_cap);
#endif /* __OPENCONNECT_SOCKS5_BUF_H__ */