39 lines
1.3 KiB
C
39 lines
1.3 KiB
C
#pragma once
|
|
#include <stdint.h>
|
|
#include <stdio.h>
|
|
#include <winsock2.h>
|
|
typedef struct CharArray {
|
|
size_t size;
|
|
size_t capacity;
|
|
char *data;
|
|
} char_array_t;
|
|
|
|
typedef struct ByteArray {
|
|
size_t size;
|
|
size_t capacity;
|
|
uint8_t *data;
|
|
} byte_array_t;
|
|
|
|
char_array_t *char_array_create(int size);
|
|
void char_array_destroy(char_array_t *array);
|
|
void char_array_append(char_array_t *array, char *value, size_t length);
|
|
void char_array_print(const char_array_t *array);
|
|
void char_array_print_hex(const char_array_t *array);
|
|
void char_array_wipe(char_array_t *array);
|
|
bool char_array_has_char(char_array_t *array, char c);
|
|
char *char_array_get_until_char(char_array_t *array, char c);
|
|
void char_array_put_until_char(char *arr, char_array_t *array, char c);
|
|
char *char_array_get_bytes(char_array_t *array, size_t length);
|
|
void char_array_shift_bytes(char_array_t *array, size_t length);
|
|
|
|
byte_array_t *byte_array_create(int size);
|
|
void byte_array_destroy(byte_array_t *array);
|
|
void byte_array_append(byte_array_t *array, uint8_t *value, size_t length);
|
|
void byte_array_print(const byte_array_t *array);
|
|
uint8_t *byte_array_get_until_byte(byte_array_t *array, uint8_t b);
|
|
uint8_t *byte_array_get_bytes(byte_array_t *array, size_t length);
|
|
void byte_array_shift_bytes(byte_array_t *array, size_t length);
|
|
|
|
|
|
SOCKET get_listen_socket();
|
|
SOCKET get_listen_socket_udp(); |