66 lines
1.4 KiB
C
66 lines
1.4 KiB
C
#ifndef TRANSFER_DEFINES_H
|
|
#define TRANSFER_DEFINES_H
|
|
|
|
#define MESSAGE_LENGTH 1500
|
|
#define TYPE_LENGTH 3
|
|
#define PAYLOAD_LENGTH MESSAGE_LENGTH - TYPE_LENGTH
|
|
|
|
#define SEND_RECV_TIMEOUT 5000
|
|
|
|
#define tolower_str(word) for(size_t i = 0; i < strlen(word); i++) word[i] = tolower(word[i]);
|
|
|
|
typedef enum
|
|
{
|
|
MAP,
|
|
RED,
|
|
RIP,
|
|
UNSUPPORTED,
|
|
} TYPE;
|
|
|
|
char *sanitize_input(char *input){
|
|
if(!input) return NULL;
|
|
|
|
int i = 0;
|
|
|
|
char *ret = malloc(sizeof(char));
|
|
if(!ret){
|
|
// perror("[MAIN - sanitize_input] Failed to allocate memory for ret");
|
|
return NULL;
|
|
}
|
|
*ret = '\0';
|
|
|
|
char *it = input;
|
|
while(*it && !isalpha(*it)) it++;
|
|
|
|
bool writeSpace = false;
|
|
while(*it){
|
|
if(isalpha(*it)){
|
|
char *tmp = NULL;
|
|
if(writeSpace){
|
|
tmp = realloc(ret, i + 3);
|
|
}
|
|
else{
|
|
tmp = realloc(ret, i + 2);
|
|
}
|
|
if(!tmp){
|
|
// perror("[MAIN - sanitize_input] Failed to realloc memory for ret");
|
|
free(ret);
|
|
return NULL;
|
|
}
|
|
ret = tmp;
|
|
if(writeSpace) ret[i++] = ' ';
|
|
ret[i++] = tolower(*it++);
|
|
writeSpace = false;
|
|
}
|
|
else{
|
|
it++;
|
|
writeSpace = true;
|
|
}
|
|
}
|
|
ret[i] = '\0';
|
|
return ret;
|
|
}
|
|
|
|
|
|
#endif //TRANSFER_DEFINES_H
|