mirror of
https://github.com/sigmasternchen/CFloor
synced 2025-03-15 20:28:56 +00:00
we now can remove headers
This commit is contained in:
parent
5fe0874c5c
commit
b06e3a2f45
2 changed files with 15 additions and 0 deletions
|
@ -26,6 +26,20 @@ const char* headers_get(struct headers* headers, const char* key) {
|
||||||
return headers->headers[tmp].value;
|
return headers->headers[tmp].value;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int headers_remove(struct headers* headers, const char* key) {
|
||||||
|
int tmp = headers_find(headers, key);
|
||||||
|
if (tmp < 0)
|
||||||
|
return -1;
|
||||||
|
struct header header = headers->headers[tmp];
|
||||||
|
memmove(headers->headers + tmp * sizeof(struct header), headers->headers + (tmp + 1) * sizeof(struct header), sizeof(struct header) * (headers->number - tmp - 1));
|
||||||
|
headers->number--;
|
||||||
|
|
||||||
|
free(header.key);
|
||||||
|
free(header.value);
|
||||||
|
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
|
||||||
int headers_mod(struct headers* headers, const char* _key, const char* _value) {
|
int headers_mod(struct headers* headers, const char* _key, const char* _value) {
|
||||||
char* tmp = strclone(_key);
|
char* tmp = strclone(_key);
|
||||||
if (tmp == NULL) {
|
if (tmp == NULL) {
|
||||||
|
|
|
@ -22,6 +22,7 @@ struct headers {
|
||||||
|
|
||||||
struct headers headers_create();
|
struct headers headers_create();
|
||||||
const char* headers_get(struct headers* headers, const char* key);
|
const char* headers_get(struct headers* headers, const char* key);
|
||||||
|
int headers_remove(struct headers* headers, const char* key);
|
||||||
int headers_mod(struct headers* headers, const char* key, const char* value);
|
int headers_mod(struct headers* headers, const char* key, const char* value);
|
||||||
int headers_parse(struct headers* headers, const char* currentHeader, size_t length);
|
int headers_parse(struct headers* headers, const char* currentHeader, size_t length);
|
||||||
void headers_free(struct headers* headers);
|
void headers_free(struct headers* headers);
|
||||||
|
|
Loading…
Reference in a new issue