C23 standard. get rid of warnings

This commit is contained in:
2026-02-09 17:44:07 +02:00
parent 879213e7c3
commit ba77017857
12 changed files with 28 additions and 61 deletions
+1 -1
View File
@@ -1,4 +1,4 @@
CFLAGS := -ggdb -Wall -pedantic -lcurses CFLAGS := -ggdb -Wall -std=c23 -pedantic -lcurses
SRC_DIR := src SRC_DIR := src
OBJ_DIR := src/obj OBJ_DIR := src/obj
+1 -4
View File
@@ -28,7 +28,6 @@ void fl_clear(fl_item_t **start, fl_item_t **current);
void file_list(file_args_t *f_args, query_args_t *q_args) { void file_list(file_args_t *f_args, query_args_t *q_args) {
uint32_t qlen; uint32_t qlen;
char *query = NULL; char *query = NULL;
static uint32_t idx = 1;
static char qbuf[INBUFSIZE * 2]; static char qbuf[INBUFSIZE * 2];
static uint32_t qbuf_used = 0; static uint32_t qbuf_used = 0;
ui_file_list_t *fui = (ui_file_list_t *)q_args->file_list_ui; ui_file_list_t *fui = (ui_file_list_t *)q_args->file_list_ui;
@@ -44,7 +43,6 @@ void file_list(file_args_t *f_args, query_args_t *q_args) {
if (!strncmp(":END:", query, sizeof(":END:") - 1)) { if (!strncmp(":END:", query, sizeof(":END:") - 1)) {
sscanf(query, ":END: PAGE %u/%u COUNT: %u/%u\n", &fui->current_page, sscanf(query, ":END: PAGE %u/%u COUNT: %u/%u\n", &fui->current_page,
&fui->pages, &fui->current_count, &fui->full_count); &fui->pages, &fui->current_count, &fui->full_count);
idx = 1;
if (d != NULL && d->is_initiated) { if (d != NULL && d->is_initiated) {
d->needs_update = true; d->needs_update = true;
} }
@@ -179,7 +177,7 @@ void file_download(file_args_t *f_args, query_args_t *q_args) {
ui_progress_bar_t *pb = (ui_progress_bar_t *)q_args->progress_bar; ui_progress_bar_t *pb = (ui_progress_bar_t *)q_args->progress_bar;
dialogue_t *d = (dialogue_t *)q_args->active_dialogue; dialogue_t *d = (dialogue_t *)q_args->active_dialogue;
ui_file_list_t *fui = (ui_file_list_t *)q_args->file_list_ui; ui_file_list_t *fui = (ui_file_list_t *)q_args->file_list_ui;
uint32_t a_len = 0; int32_t a_len = 0;
if (size_rest == 0) if (size_rest == 0)
size_rest = f_selected->size; size_rest = f_selected->size;
@@ -247,7 +245,6 @@ int32_t file_upload_request(char *query, query_args_t *q_args) {
} }
int32_t file_upload_open(char *dpath, char *fname, query_args_t *q_args) { int32_t file_upload_open(char *dpath, char *fname, query_args_t *q_args) {
char a_perm;
q_args->file = malloc(sizeof(p_file_t)); q_args->file = malloc(sizeof(p_file_t));
q_args->file->path = malloc(strlen(dpath) + strlen(fname) + 2); q_args->file->path = malloc(strlen(dpath) + strlen(fname) + 2);
sprintf(q_args->file->path, "%s/%s", dpath, fname); sprintf(q_args->file->path, "%s/%s", dpath, fname);
-1
View File
@@ -24,7 +24,6 @@ int main(int argc, char **argv) {
app_t *app; app_t *app;
params_t params; params_t params;
query_args_t *q_args = malloc(sizeof(query_args_t)); query_args_t *q_args = malloc(sizeof(query_args_t));
char buf[INBUFSIZE];
app = calloc(1, sizeof(app_t)); app = calloc(1, sizeof(app_t));
+9
View File
@@ -13,10 +13,19 @@
#define DIALOGUE_TITLE 64 #define DIALOGUE_TITLE 64
#define DIALOGUE_TEXT 4096 #define DIALOGUE_TEXT 4096
#define INPUT_TEXT DIALOGUE_TITLE #define INPUT_TEXT DIALOGUE_TITLE
#ifndef __USE_GNU #ifndef __USE_GNU
#define __USE_GNU 1 #define __USE_GNU 1
#endif #endif
#ifndef __USE_MISC
#define __USE_MISC 1
#endif
#ifndef __USE_XOPEN_EXTENDED
#define __USE_XOPEN_EXTENDED 1
#endif
typedef struct params { typedef struct params {
unsigned short port; unsigned short port;
unsigned addr; unsigned addr;
+3
View File
@@ -184,6 +184,9 @@ int process_query(query_args_t *query_args, file_args_t *file_args) {
case S_ASK_SEVER_IP: case S_ASK_SEVER_IP:
case S_ASK_LOGIN_TYPE: case S_ASK_LOGIN_TYPE:
case S_N_D: case S_N_D:
case S_ASK_LOGIN_USER:
case S_PRINT_SERVER_MESSAGE:
case S_UPLOAD_FILE_SELECT:
break; break;
} }
return 0; return 0;
-29
View File
@@ -26,8 +26,6 @@ void ask_register(params_t *params, char *email);
int process_server_command(char *line, int l_len, query_args_t *q_args) { int process_server_command(char *line, int l_len, query_args_t *q_args) {
int ws_pos = l_len; int ws_pos = l_len;
params_t *params = q_args->params; params_t *params = q_args->params;
const char *login_options[] = {"Username", "Anonymous", "Register", NULL};
uint32_t answer;
uint64_t new_capacity; uint64_t new_capacity;
ui_file_list_t *fui = (ui_file_list_t *)q_args->file_list_ui; ui_file_list_t *fui = (ui_file_list_t *)q_args->file_list_ui;
char query[INBUFSIZE]; char query[INBUFSIZE];
@@ -130,33 +128,6 @@ int process_server_command(char *line, int l_len, query_args_t *q_args) {
return 0; return 0;
} }
static void file_receive(int sd, char *line) {
char fname[128];
char command[32];
size_t fsize;
sscanf(line, "%s %s %zu", command, fname, &fsize);
char buf[INBUFSIZE];
int rlen;
int file_d = open(fname, O_WRONLY);
if (file_d == -1) {
char err_mes[256];
int mlen;
mlen = sprintf(err_mes, "Can't write file named \"%s\"\n", fname);
write(sd, err_mes, mlen);
close(file_d);
return;
}
while (fsize && (rlen = read(sd, buf, INBUFSIZE))) {
write(file_d, buf, rlen);
fsize -= rlen;
}
close(file_d);
}
void ask_uname_and_password(params_t *params) { void ask_uname_and_password(params_t *params) {
size_t lsize; size_t lsize;
char *bufptr = NULL; char *bufptr = NULL;
+6 -7
View File
@@ -21,10 +21,9 @@ void init_widget(widget_t *w, widget_t *w_parent, WINDOW **win, char *title) {
} }
int32_t get_max_line_len(const char *text, uint32_t *line_count) { int32_t get_max_line_len(const char *text, uint32_t *line_count) {
uint32_t nl_pos = 0; // new line position uint32_t nl_pos = 0; /* new line position */
uint32_t c_start = 0; // current line start position uint32_t c_len = 0; /* current line length */
uint32_t c_len = 0; // current line length uint32_t m_len = 0; /* max length */
uint32_t m_len = 0; // max length
uint32_t line_num = 1; uint32_t line_num = 1;
for (int i = 0; text[i] != '\0'; i++, c_len++) { for (int i = 0; text[i] != '\0'; i++, c_len++) {
if (text[i] == '\n') { if (text[i] == '\n') {
@@ -32,7 +31,6 @@ int32_t get_max_line_len(const char *text, uint32_t *line_count) {
m_len = c_len; m_len = c_len;
} }
nl_pos = i; nl_pos = i;
c_start = i + 1;
c_len = 0; c_len = 0;
line_num++; line_num++;
} }
@@ -109,8 +107,6 @@ uint32_t print_multiline_text(WINDOW *win, const char *_text,
int32_t rsize_to_value(int32_t size, enum rsize rsize) { int32_t rsize_to_value(int32_t size, enum rsize rsize) {
switch (rsize) { switch (rsize) {
case s_auto:
return size;
case s_1: case s_1:
return size; return size;
case s_1_2: case s_1_2:
@@ -123,5 +119,8 @@ int32_t rsize_to_value(int32_t size, enum rsize rsize) {
return size / 4; return size / 4;
case s_3_4: case s_3_4:
return size / 4 * 3; return size / 4 * 3;
case s_auto:
default:
return size;
} }
} }
+6 -7
View File
@@ -56,10 +56,8 @@ widget_t *get_active_widget(dialogue_t *d) {
void dialogue_default_callback(callback_args_t *args) { void dialogue_default_callback(callback_args_t *args) {
dialogue_t *d = (void *)args->element; dialogue_t *d = (void *)args->element;
int32_t key = *((int32_t *)args->data); int32_t key = *((int32_t *)args->data);
app_t *app = (app_t *)args->app;
callback_args_t new_args; callback_args_t new_args;
int32_t *resp_value = (int32_t *)args->resp_data; int32_t *resp_value = (int32_t *)args->resp_data;
group_el_t *default_element = NULL;
memcpy(&new_args, args, sizeof(callback_args_t)); memcpy(&new_args, args, sizeof(callback_args_t));
new_args.active_id = d->active.id; new_args.active_id = d->active.id;
int32_t diff; int32_t diff;
@@ -120,7 +118,7 @@ void dialogue_default_callback(callback_args_t *args) {
break; break;
} /* Default cases */ } /* Default cases */
if (d->active.type == g_action) { if (d->active.type == g_action) {
new_args.element = new_args.element = d->g_action; new_args.element = d->g_action;
group_default_callback(&new_args); group_default_callback(&new_args);
} else if (d->g_action != NULL) { } else if (d->g_action != NULL) {
for (int i = 0; i < d->g_action->count; i++) { for (int i = 0; i < d->g_action->count; i++) {
@@ -156,9 +154,9 @@ void dialogue_default_callback(callback_args_t *args) {
default: default:
/* run callback function */ /* run callback function */
if (d->active.type == g_content) { if (d->active.type == g_content) {
new_args.element = new_args.element = d->g_content; new_args.element = d->g_content;
} else { } else {
new_args.element = new_args.element = d->g_action; new_args.element = d->g_action;
} }
group_default_callback(&new_args); group_default_callback(&new_args);
} }
@@ -317,8 +315,9 @@ int32_t draw_dialogue(dialogue_t *d) {
if (d->g_content != NULL) { if (d->g_content != NULL) {
FIND_ACTIVE_ELEMENT(d->g_content, d->active.id, ae_ptr, ae_idx); FIND_ACTIVE_ELEMENT(d->g_content, d->active.id, ae_ptr, ae_idx);
} }
if (ae_ptr == NULL && d->g_action != NULL) if (ae_ptr == NULL && d->g_action != NULL) {
FIND_ACTIVE_ELEMENT(d->g_action, d->active.id, ae_ptr, ae_idx); FIND_ACTIVE_ELEMENT(d->g_action, d->active.id, ae_ptr, ae_idx);
}
if (ae_ptr != NULL && ae_ptr->id == d->active.id) { if (ae_ptr != NULL && ae_ptr->id == d->active.id) {
if (ae_ptr->type == w_input) { if (ae_ptr->type == w_input) {
@@ -338,7 +337,7 @@ int32_t draw_dialogue(dialogue_t *d) {
d->needs_update = false; d->needs_update = false;
return 0; return 0;
}; }
void destroy_dialogue(dialogue_t *d, void *_app) { void destroy_dialogue(dialogue_t *d, void *_app) {
app_t *app = (app_t *)_app; app_t *app = (app_t *)_app;
+1 -3
View File
@@ -20,8 +20,6 @@ void file_list_cb(callback_args_t *args) {
int32_t key = *((int32_t *)args->data); int32_t key = *((int32_t *)args->data);
char query[256]; char query[256];
int32_t q_len = 0; int32_t q_len = 0;
fl_item_t *f_item;
ui_progress_bar_t *pb;
switch (key) { switch (key) {
case KEY_DOWN: case KEY_DOWN:
if (fui->current_idx < fui->current_count - 1) { if (fui->current_idx < fui->current_count - 1) {
@@ -128,7 +126,7 @@ void draw_file_list(ui_file_list_t *fl_ui) {
mvwprintw(parent_win, p_y, p_x, "%*s", sz_x - 1, ""); mvwprintw(parent_win, p_y, p_x, "%*s", sz_x - 1, "");
} }
char p_info[64]; char p_info[64];
uint32_t p_len; int32_t p_len;
p_x = 1; p_x = 1;
sprintf(p_info, "page: %u/%u files: %u left: %u%n", fl_ui->current_page, sprintf(p_info, "page: %u/%u files: %u left: %u%n", fl_ui->current_page,
+1 -6
View File
@@ -55,7 +55,7 @@ static void fl_clear(fs_fl_item_t **start, fs_fl_item_t **arg_current) {
fs_fl_item_t *get_files_from_fs(char *path) { fs_fl_item_t *get_files_from_fs(char *path) {
DIR *dir; DIR *dir;
struct dirent *dent; struct dirent *dent;
char name[64]; char name[257];
struct fl_args f_args; struct fl_args f_args;
fs_fl_item_t *d_start = NULL, *d_current = NULL; /* directories */ fs_fl_item_t *d_start = NULL, *d_current = NULL; /* directories */
@@ -118,9 +118,6 @@ void select_item(ui_fs_file_list_t *fui, int32_t *resp_data) {
void fs_file_list_cb(callback_args_t *args) { void fs_file_list_cb(callback_args_t *args) {
ui_fs_file_list_t *fui = args->element; ui_fs_file_list_t *fui = args->element;
int32_t key = *((int32_t *)args->data); int32_t key = *((int32_t *)args->data);
int32_t q_len = 0;
fs_fl_item_t *f_item;
ui_progress_bar_t *pb;
switch (key) { switch (key) {
case KEY_DOWN: case KEY_DOWN:
if (fui->current->next != NULL) { if (fui->current->next != NULL) {
@@ -169,7 +166,6 @@ void draw_fs_file_list(ui_fs_file_list_t *fl_ui) {
p_y = 1; p_y = 1;
p_x = 1; p_x = 1;
fs_fl_item_t *el = fl_ui->start; fs_fl_item_t *el = fl_ui->start;
fs_fl_item_t *active_el = fl_ui->start;
if (fl_ui->current_idx + 1 >= sz_y_f) { if (fl_ui->current_idx + 1 >= sz_y_f) {
p_y -= fl_ui->current_idx - sz_y_f + 2; p_y -= fl_ui->current_idx - sz_y_f + 2;
@@ -184,7 +180,6 @@ void draw_fs_file_list(ui_fs_file_list_t *fl_ui) {
} }
if (el == fl_ui->current) { if (el == fl_ui->current) {
wattrset(win, COLOR_PAIR(3) | A_BOLD | A_REVERSE); wattrset(win, COLOR_PAIR(3) | A_BOLD | A_REVERSE);
active_el = el;
} }
p_x = 1; p_x = 1;
mvwprintw(win, p_y, p_x, "%s%n", el->name, &p_x); mvwprintw(win, p_y, p_x, "%s%n", el->name, &p_x);
-2
View File
@@ -145,8 +145,6 @@ group_t *init_group(WINDOW **win, widget_t *w_parent, group_el_init_t *children,
void draw_group(WINDOW *win, group_t *group, int32_t active_id, void draw_group(WINDOW *win, group_t *group, int32_t active_id,
widget_t *dialog_w) { widget_t *dialog_w) {
group_el_t *children = group->elements; group_el_t *children = group->elements;
group_el_t *active_element = NULL;
uint32_t active_idx;
for (int i = 0; i < group->count; i++) { for (int i = 0; i < group->count; i++) {
group_el_t *el = &children[i]; group_el_t *el = &children[i];
switch (el->type) { switch (el->type) {
-1
View File
@@ -56,7 +56,6 @@ int32_t draw_input(input_t *input, uint32_t active_id) {
wattrset(win, COLOR_PAIR(0) | A_BOLD); wattrset(win, COLOR_PAIR(0) | A_BOLD);
} }
uint32_t x_c = 0;
if (input->is_hidden) { if (input->is_hidden) {
mvwprintw(win, margin_y + 1, margin_x, "%.*s%*s", (int) input->value_len, stars, mvwprintw(win, margin_y + 1, margin_x, "%.*s%*s", (int) input->value_len, stars,
input->w.x - input->value_len - 2, ""); input->w.x - input->value_len - 2, "");