mirror of
https://github.com/alsa-project/alsa-tools.git
synced 2025-10-29 05:40:25 -04:00
envy24control: fix cast warnings and string array overflows
Signed-off-by: Jaroslav Kysela <perex@perex.cz>
This commit is contained in:
parent
54b5913cd5
commit
97092591e0
7 changed files with 20 additions and 16 deletions
|
|
@ -46,7 +46,7 @@ void config_close()
|
||||||
|
|
||||||
void config_set_stereo(GtkWidget *but, gpointer data)
|
void config_set_stereo(GtkWidget *but, gpointer data)
|
||||||
{
|
{
|
||||||
gint i=(gint)data;
|
gint i=GPOINTER_TO_INT(data);
|
||||||
config_stereo[i]=GTK_TOGGLE_BUTTON(but)->active;
|
config_stereo[i]=GTK_TOGGLE_BUTTON(but)->active;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -249,7 +249,7 @@ static void create_mixer_frame(GtkWidget *box, int stream)
|
||||||
gtk_box_pack_end(GTK_BOX(vbox), toggle, FALSE, FALSE, 0);
|
gtk_box_pack_end(GTK_BOX(vbox), toggle, FALSE, FALSE, 0);
|
||||||
/* gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), TRUE); */
|
/* gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), TRUE); */
|
||||||
gtk_signal_connect(GTK_OBJECT(toggle), "toggled",
|
gtk_signal_connect(GTK_OBJECT(toggle), "toggled",
|
||||||
GTK_SIGNAL_FUNC(config_set_stereo), (gpointer)stream-1);
|
GTK_SIGNAL_FUNC(config_set_stereo), GINT_TO_POINTER(stream-1));
|
||||||
|
|
||||||
hbox = gtk_hbox_new(TRUE, 6);
|
hbox = gtk_hbox_new(TRUE, 6);
|
||||||
gtk_widget_show(hbox);
|
gtk_widget_show(hbox);
|
||||||
|
|
@ -2176,7 +2176,7 @@ int main(int argc, char **argv)
|
||||||
|
|
||||||
if (! name) {
|
if (! name) {
|
||||||
/* probe cards */
|
/* probe cards */
|
||||||
static char cardname[8];
|
static char cardname[16];
|
||||||
/* FIXME: hardcoded max number of cards */
|
/* FIXME: hardcoded max number of cards */
|
||||||
for (card_number = 0; card_number < 8; card_number++) {
|
for (card_number = 0; card_number < 8; card_number++) {
|
||||||
sprintf(cardname, "hw:%d", card_number);
|
sprintf(cardname, "hw:%d", card_number);
|
||||||
|
|
|
||||||
|
|
@ -65,7 +65,7 @@ static GdkGC *get_pen(int idx, int nRed, int nGreen, int nBlue)
|
||||||
return gc;
|
return gc;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int get_index(gchar *name)
|
static int get_index(const gchar *name)
|
||||||
{
|
{
|
||||||
int result;
|
int result;
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -20,9 +20,9 @@ int new_process(char * const cmd_line[MAX_PARAM])
|
||||||
struct stat file_status;
|
struct stat file_status;
|
||||||
|
|
||||||
/* memory for storage of function pointers from the signal handling routines */
|
/* memory for storage of function pointers from the signal handling routines */
|
||||||
void (*int_stat)();
|
void (*int_stat)(int);
|
||||||
void (*quit_stat)();
|
void (*quit_stat)(int);
|
||||||
void (*usr2_stat)();
|
void (*usr2_stat)(int);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* check command file
|
* check command file
|
||||||
|
|
|
||||||
|
|
@ -54,9 +54,9 @@ void subst_tilde_in_filename(char * const filename)
|
||||||
|
|
||||||
if ((pos_after_tilde = strchr(filename, '~')) != NULL) {
|
if ((pos_after_tilde = strchr(filename, '~')) != NULL) {
|
||||||
pos_after_tilde++;
|
pos_after_tilde++;
|
||||||
strncpy(new_filename, getenv("HOME"), MAX_FILE_NAME_LENGTH);
|
strncpy(new_filename, getenv("HOME"), sizeof(new_filename) - 1);
|
||||||
strncpy(new_filename + strlen(new_filename), pos_after_tilde, MAX_FILE_NAME_LENGTH - strlen(new_filename));
|
strncpy(new_filename + strlen(new_filename), pos_after_tilde, sizeof(new_filename) - strlen(new_filename) - 1);
|
||||||
new_filename[MAX_FILE_NAME_LENGTH - 1] = '\0';
|
new_filename[sizeof(new_filename) - 1] = '\0';
|
||||||
strncpy(filename, new_filename, MAX_FILE_NAME_LENGTH);
|
strncpy(filename, new_filename, MAX_FILE_NAME_LENGTH);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -522,7 +522,7 @@ int reorganize_profiles(char * const buffer, const int max_length)
|
||||||
{
|
{
|
||||||
int profile_number, card_number, card_number_max;
|
int profile_number, card_number, card_number_max;
|
||||||
int res;
|
int res;
|
||||||
int pos_profile_begin, pos_profile_end, pos_card_begin, pos_card_end, pos_name_header;
|
int pos_profile_begin, pos_card_begin, pos_card_end, pos_name_header;
|
||||||
int pos_alsa_section_begin, pos_after_alsa_section;
|
int pos_alsa_section_begin, pos_after_alsa_section;
|
||||||
char header[MAX_SEARCH_FIELD_LENGTH];
|
char header[MAX_SEARCH_FIELD_LENGTH];
|
||||||
void *buffer_copy = NULL;
|
void *buffer_copy = NULL;
|
||||||
|
|
@ -547,7 +547,6 @@ int reorganize_profiles(char * const buffer, const int max_length)
|
||||||
compose_search_string(header, PROFILE_HEADER_TEMPL, profile_or_card_number_as_str, place_holder, MAX_SEARCH_FIELD_LENGTH);
|
compose_search_string(header, PROFILE_HEADER_TEMPL, profile_or_card_number_as_str, place_holder, MAX_SEARCH_FIELD_LENGTH);
|
||||||
header[MAX_SEARCH_FIELD_LENGTH - 1] = '\0';
|
header[MAX_SEARCH_FIELD_LENGTH - 1] = '\0';
|
||||||
snprintf(buffer_copy + strlen(buffer_copy), max_length - strlen(buffer_copy), "%s\n", header);
|
snprintf(buffer_copy + strlen(buffer_copy), max_length - strlen(buffer_copy), "%s\n", header);
|
||||||
pos_profile_end = get_profile_end(buffer, profile_number);
|
|
||||||
/* search max card number in profile */
|
/* search max card number in profile */
|
||||||
card_number_max = get_max_card_number_in_profile(buffer, profile_number);
|
card_number_max = get_max_card_number_in_profile(buffer, profile_number);
|
||||||
for (card_number = 0; card_number <= card_number_max; card_number++)
|
for (card_number = 0; card_number <= card_number_max; card_number++)
|
||||||
|
|
@ -641,9 +640,9 @@ int save_restore_alsactl_settings(char * const tmpfile, const int card_number, c
|
||||||
|
|
||||||
void compose_tmpfile_name(char * const tmpfile, const char * const cfgfile)
|
void compose_tmpfile_name(char * const tmpfile, const char * const cfgfile)
|
||||||
{
|
{
|
||||||
strncpy(tmpfile, cfgfile, MAX_FILE_NAME_LENGTH);
|
strncpy(tmpfile, cfgfile, MAX_FILE_NAME_LENGTH - 1);
|
||||||
tmpfile[MAX_FILE_NAME_LENGTH - 1] = '\0';
|
tmpfile[MAX_FILE_NAME_LENGTH - 1] = '\0';
|
||||||
strncpy(tmpfile + strlen(tmpfile), "_alsactl_tmp", MAX_FILE_NAME_LENGTH - strlen(tmpfile));
|
strncpy(tmpfile + strlen(tmpfile), "_alsactl_tmp", MAX_FILE_NAME_LENGTH - strlen(tmpfile) - 1);
|
||||||
tmpfile[MAX_FILE_NAME_LENGTH - 1] = '\0';
|
tmpfile[MAX_FILE_NAME_LENGTH - 1] = '\0';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -44,7 +44,7 @@
|
||||||
#define MAX_PROFILE_SIZE 32768
|
#define MAX_PROFILE_SIZE 32768
|
||||||
#define MAX_SEARCH_FIELD_LENGTH 1024
|
#define MAX_SEARCH_FIELD_LENGTH 1024
|
||||||
#define MAX_FILE_NAME_LENGTH 1024
|
#define MAX_FILE_NAME_LENGTH 1024
|
||||||
#define MAX_NUM_STR_LENGTH 10
|
#define MAX_NUM_STR_LENGTH 11
|
||||||
#define TOKEN_SEP "|"
|
#define TOKEN_SEP "|"
|
||||||
#define SEP_CHAR ' '
|
#define SEP_CHAR ' '
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -48,6 +48,7 @@ int strstr_icase_blank(const char * const string1, const char * const string2)
|
||||||
char search_string[MAX_SEARCH_FIELD_LENGTH];
|
char search_string[MAX_SEARCH_FIELD_LENGTH];
|
||||||
char *pstr;
|
char *pstr;
|
||||||
int pos_first_non_blank;
|
int pos_first_non_blank;
|
||||||
|
size_t len;
|
||||||
|
|
||||||
strncpy(search_string, string2, MAX_SEARCH_FIELD_LENGTH);
|
strncpy(search_string, string2, MAX_SEARCH_FIELD_LENGTH);
|
||||||
search_string[MAX_SEARCH_FIELD_LENGTH - 1] = '\0';
|
search_string[MAX_SEARCH_FIELD_LENGTH - 1] = '\0';
|
||||||
|
|
@ -84,7 +85,11 @@ int strstr_icase_blank(const char * const string1, const char * const string2)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
strncpy(search_string, cmp_line, strlen(search_string));
|
len = strlen(search_string);
|
||||||
|
if (len > sizeof(search_string) - 1)
|
||||||
|
len = sizeof(search_string) - 1;
|
||||||
|
strncpy(search_string, cmp_line, len);
|
||||||
|
search_string[len] = '\0';
|
||||||
|
|
||||||
position = 0;
|
position = 0;
|
||||||
while (position < strlen(string1))
|
while (position < strlen(string1))
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue