Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 6 additions & 4 deletions ee/elf-loader/src/loader/src/loader.c
Original file line number Diff line number Diff line change
Expand Up @@ -96,10 +96,12 @@ int main(int argc, char *argv[])
}

char *new_argv[argc - 1];
int fullPath_length = 1 + strlen(argv[0]) + strlen(argv[1]);
char fullPath[fullPath_length];
strcpy(fullPath, argv[0]);
strcat(fullPath, argv[1]);
int argv0_len = strlen(argv[0]);
int argv1_len = strlen(argv[1]);
char fullPath[argv0_len + argv1_len + 1];
memcpy(&fullPath[0], argv[0], argv0_len);
memcpy(&fullPath[argv0_len], argv[1], argv1_len);
fullPath[argv0_len + argv1_len] = 0;
// final new_argv[0] is partition + path to elf
new_argv[0] = fullPath;
for (i = 2; i < argc; i++) {
Expand Down
9 changes: 3 additions & 6 deletions ee/erl/src/erl.c
Original file line number Diff line number Diff line change
Expand Up @@ -957,8 +957,7 @@ typedef int (*start_t)(int argc, char ** argv);

static struct erl_record_t * _init_load_erl_wrapper_from_file(char * erl_id) {
char tmpnam[256];
strcpy(tmpnam, erl_id);
strcat(tmpnam, ".erl");
snprintf(tmpnam, sizeof(tmpnam), "%s.erl", erl_id);
return _init_load_erl_from_file(tmpnam, erl_id);
}

Expand Down Expand Up @@ -1049,8 +1048,7 @@ struct erl_record_t * _init_load_erl_from_file(const char * fname, char * erl_id
argv[0] = erl_id;
argv[1] = 0;

strcpy(tfname, _init_erl_prefix);
strcat(tfname, fname);
snprintf(tfname, sizeof(tfname), "%s%s", _init_erl_prefix, fname);

return load_erl_from_file(tfname, 1, argv);
}
Expand Down Expand Up @@ -1093,8 +1091,7 @@ struct erl_record_t * _init_load_erl_from_file_to_addr(const char * fname, u32 a
argv[0] = erl_id;
argv[1] = 0;

strcpy(tfname, _init_erl_prefix);
strcat(tfname, fname);
snprintf(tfname, sizeof(tfname), "%s%s", _init_erl_prefix, fname);

return load_erl_from_file_to_addr(tfname, addr, 1, argv);
}
Expand Down
56 changes: 28 additions & 28 deletions ee/graph/src/graph_config.c
Original file line number Diff line number Diff line change
Expand Up @@ -12,58 +12,58 @@ int graph_make_config(int mode, int interlace, int ffmd, int x, int y, int flick
switch (mode)
{

case GRAPH_MODE_NTSC: sprintf(config, "GRAPH_MODE_NTSC:"); break;
case GRAPH_MODE_PAL: sprintf(config, "GRAPH_MODE_PAL:"); break;
case GRAPH_MODE_HDTV_480P: sprintf(config, "GRAPH_MODE_HDTV_480P:"); break;
case GRAPH_MODE_HDTV_576P: sprintf(config, "GRAPH_MODE_HDTV_576P:"); break;
case GRAPH_MODE_HDTV_720P: sprintf(config, "GRAPH_MODE_HDTV_720P:"); break;
case GRAPH_MODE_HDTV_1080I: sprintf(config, "GRAPH_MODE_HDTV_1080I:"); break;
case GRAPH_MODE_VGA_640_60: sprintf(config, "GRAPH_MODE_VGA_640_60:"); break;
case GRAPH_MODE_VGA_640_72: sprintf(config, "GRAPH_MODE_VGA_640_72:"); break;
case GRAPH_MODE_VGA_640_75: sprintf(config, "GRAPH_MODE_VGA_640_75:"); break;
case GRAPH_MODE_VGA_640_85: sprintf(config, "GRAPH_MODE_VGA_640_85:"); break;
case GRAPH_MODE_VGA_800_56: sprintf(config, "GRAPH_MODE_VGA_800_56:"); break;
case GRAPH_MODE_VGA_800_60: sprintf(config, "GRAPH_MODE_VGA_800_60:"); break;
case GRAPH_MODE_VGA_800_72: sprintf(config, "GRAPH_MODE_VGA_800_72:"); break;
case GRAPH_MODE_VGA_800_75: sprintf(config, "GRAPH_MODE_VGA_800_75:"); break;
case GRAPH_MODE_VGA_800_85: sprintf(config, "GRAPH_MODE_VGA_800_85:"); break;
case GRAPH_MODE_VGA_1024_60: sprintf(config, "GRAPH_MODE_VGA_1024_60:"); break;
case GRAPH_MODE_VGA_1024_70: sprintf(config, "GRAPH_MODE_VGA_1024_70:"); break;
case GRAPH_MODE_VGA_1024_75: sprintf(config, "GRAPH_MODE_VGA_1024_75:"); break;
case GRAPH_MODE_VGA_1024_85: sprintf(config, "GRAPH_MODE_VGA_1024_85:"); break;
case GRAPH_MODE_VGA_1280_60: sprintf(config, "GRAPH_MODE_VGA_1280_60:"); break;
case GRAPH_MODE_VGA_1280_75: sprintf(config, "GRAPH_MODE_VGA_1280_75:"); break;
default: sprintf(config, "GRAPH_MODE_AUTO:"); break;
case GRAPH_MODE_NTSC: strcpy(config, "GRAPH_MODE_NTSC:"); break;
case GRAPH_MODE_PAL: strcpy(config, "GRAPH_MODE_PAL:"); break;
case GRAPH_MODE_HDTV_480P: strcpy(config, "GRAPH_MODE_HDTV_480P:"); break;
case GRAPH_MODE_HDTV_576P: strcpy(config, "GRAPH_MODE_HDTV_576P:"); break;
case GRAPH_MODE_HDTV_720P: strcpy(config, "GRAPH_MODE_HDTV_720P:"); break;
case GRAPH_MODE_HDTV_1080I: strcpy(config, "GRAPH_MODE_HDTV_1080I:"); break;
case GRAPH_MODE_VGA_640_60: strcpy(config, "GRAPH_MODE_VGA_640_60:"); break;
case GRAPH_MODE_VGA_640_72: strcpy(config, "GRAPH_MODE_VGA_640_72:"); break;
case GRAPH_MODE_VGA_640_75: strcpy(config, "GRAPH_MODE_VGA_640_75:"); break;
case GRAPH_MODE_VGA_640_85: strcpy(config, "GRAPH_MODE_VGA_640_85:"); break;
case GRAPH_MODE_VGA_800_56: strcpy(config, "GRAPH_MODE_VGA_800_56:"); break;
case GRAPH_MODE_VGA_800_60: strcpy(config, "GRAPH_MODE_VGA_800_60:"); break;
case GRAPH_MODE_VGA_800_72: strcpy(config, "GRAPH_MODE_VGA_800_72:"); break;
case GRAPH_MODE_VGA_800_75: strcpy(config, "GRAPH_MODE_VGA_800_75:"); break;
case GRAPH_MODE_VGA_800_85: strcpy(config, "GRAPH_MODE_VGA_800_85:"); break;
case GRAPH_MODE_VGA_1024_60: strcpy(config, "GRAPH_MODE_VGA_1024_60:"); break;
case GRAPH_MODE_VGA_1024_70: strcpy(config, "GRAPH_MODE_VGA_1024_70:"); break;
case GRAPH_MODE_VGA_1024_75: strcpy(config, "GRAPH_MODE_VGA_1024_75:"); break;
case GRAPH_MODE_VGA_1024_85: strcpy(config, "GRAPH_MODE_VGA_1024_85:"); break;
case GRAPH_MODE_VGA_1280_60: strcpy(config, "GRAPH_MODE_VGA_1280_60:"); break;
case GRAPH_MODE_VGA_1280_75: strcpy(config, "GRAPH_MODE_VGA_1280_75:"); break;
default: strcpy(config, "GRAPH_MODE_AUTO:"); break;

}

// Save the current interlacing mode.
switch (interlace)
{

case GRAPH_MODE_NONINTERLACED: sprintf(config, "GRAPH_MODE_NONINTERLACED:"); break;
case GRAPH_MODE_NONINTERLACED: strcpy(config, "GRAPH_MODE_NONINTERLACED:"); break;
case GRAPH_MODE_INTERLACED: //Fall through
default: sprintf(config, "GRAPH_MODE_INTERLACED:"); break;
default: strcpy(config, "GRAPH_MODE_INTERLACED:"); break;

}

// Save the current field mode.
switch (ffmd)
{

case GRAPH_MODE_FRAME: sprintf(config, "GRAPH_MODE_FRAME:"); break;
case GRAPH_MODE_FRAME: strcpy(config, "GRAPH_MODE_FRAME:"); break;
case GRAPH_MODE_FIELD: //Fall through
default: sprintf(config, "GRAPH_MODE_FIELD:"); break;
default: strcpy(config, "GRAPH_MODE_FIELD:"); break;

}

// Save status of flicker filter.
switch (flicker_filter)
{

case GRAPH_ENABLE: sprintf(config, "GRAPH_ENABLE:"); break;
case GRAPH_ENABLE: strcpy(config, "GRAPH_ENABLE:"); break;
case GRAPH_DISABLE: //Fall through
default: sprintf(config, "GRAPH_DISABLE:"); break;
default: strcpy(config, "GRAPH_DISABLE:"); break;

}

Expand Down
3 changes: 1 addition & 2 deletions ee/kernel/src/iopcontrol.c
Original file line number Diff line number Diff line change
Expand Up @@ -88,8 +88,7 @@ int SifIopReboot(const char *arg)
sceSifInitRpc(0);
sceSifExitRpc();

strcpy(param_str, "rom0:UDNL ");
strcat(param_str, arg);
snprintf(param_str, sizeof(param_str), "rom0:UDNL %s", arg);

return SifIopReset(param_str, 0);
}
Expand Down
4 changes: 2 additions & 2 deletions ee/libcglue/src/timezone.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,10 +36,10 @@ void _libcglue_timezone_update_impl()
int hours = tzOffsetAbs / 60;
int minutes = tzOffsetAbs - hours * 60;
int daylight = configIsDaylightSavingEnabledWithIODriver(&driver);
static char tz[15];
static char tz[28];
#pragma GCC diagnostic push
#pragma GCC diagnostic ignored "-Wformat-overflow"
sprintf(tz, "GMT%s%02i:%02i%s", tzOffset < 0 ? "+" : "-", hours, minutes, daylight ? "DST" : "");
snprintf(tz, sizeof(tz), "GMT%s%02i:%02i%s", tzOffset < 0 ? "+" : "-", hours, minutes, daylight ? "DST" : "");
#pragma GCC diagnostic pop
setenv("TZ", tz, 1);
}
Expand Down
16 changes: 8 additions & 8 deletions ee/rpc/hdd/src/libhdd.c
Original file line number Diff line number Diff line change
Expand Up @@ -164,7 +164,7 @@ int hddGetFilesystemList(t_hddFilesystem hddFs[], int maxEntries)
}

memset(&hddFs[count], 0, sizeof(t_hddFilesystem));
snprintf(hddFs[count].filename, 40, "hdd0:%.34s", dirEnt.name);
snprintf(hddFs[count].filename, sizeof(hddFs[count].filename), "hdd0:%.34s", dirEnt.name);

// Work out filesystem type
if((dirEnt.name[0] == '_') && (dirEnt.name[1] == '_'))
Expand Down Expand Up @@ -299,7 +299,7 @@ int hddMakeFilesystem(int fsSizeMB, char *name, int type)
int partSize;
int fsSizeLeft = fsSizeMB;
int partFd;
char openString[256];
char openString[268];
char fsName[256];
int retVal;

Expand All @@ -312,18 +312,18 @@ int hddMakeFilesystem(int fsSizeMB, char *name, int type)
switch(type)
{
case FS_GROUP_SYSTEM:
sprintf(fsName, "__%s", name);
snprintf(fsName, sizeof(fsName), "__%s", name);
break;
case FS_GROUP_COMMON:
sprintf(fsName, "+%s", name);
snprintf(fsName, sizeof(fsName), "+%s", name);
break;
default:
strcpy(fsName, name);
snprintf(fsName, sizeof(fsName), "%s", name);
break;
}

// Check if filesystem already exists
sprintf(openString, "hdd0:%s", fsName);
snprintf(openString, sizeof(openString), "hdd0:%s", fsName);
partFd = fileXioOpen(openString, FIO_O_RDONLY);
if(partFd > 0 || partFd == -EACCES) // Filesystem already exists
{
Expand All @@ -345,7 +345,7 @@ int hddMakeFilesystem(int fsSizeMB, char *name, int type)
printf(">>> Attempting to create main partition, size %d MB\n", partSize);
#endif

sprintf(openString, "hdd0:%s,,,%s,PFS", fsName, sizesString[useIndex]);
snprintf(openString, sizeof(openString), "hdd0:%s,,,%s,PFS", fsName, sizesString[useIndex]);
#ifdef DEBUG
printf(">>> openString = %s\n", openString);
#endif
Expand Down Expand Up @@ -441,7 +441,7 @@ int hddMakeFilesystem(int fsSizeMB, char *name, int type)

fileXioClose(partFd);

sprintf(openString, "hdd0:%s", fsName);
snprintf(openString, sizeof(openString), "hdd0:%s", fsName);
retVal = fileXioFormat("pfs:", openString, (const char*)&pfsFormatArg, sizeof(pfsFormatArg));
if(retVal < 0)
{
Expand Down
4 changes: 2 additions & 2 deletions tools/romimg/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -143,8 +143,8 @@ int main(int argc, char **argv)
} else if ((argc == 3 || argc == 4) && strcmp(argv[1], "-x") == 0) {
if ((result = LoadROMImg(&ROMImg, argv[2])) == 0) {
if (argc == 3) {
char FOLDER[256] = "ext_";
strcat(FOLDER, argv[2]);
char FOLDER[256];
snprintf(FOLDER, sizeof(FOLDER), "ext_%s", argv[2]);
#if defined(_WIN32) || defined(WIN32)
mkdir(FOLDER);
#else
Expand Down
21 changes: 7 additions & 14 deletions tools/srxfixup/src/elfdump.c
Original file line number Diff line number Diff line change
Expand Up @@ -452,21 +452,13 @@ void print_elf_disasm(const elf_file *elf, const elf_section *scp, unsigned int
pb[k] = 32;
}
pb[48] = 0;
sprintf(&pb[strlen(pb)], "%3d:", rel[i].rid);
if ( rel[i].rp )
{
rp = rel[i].rp;
strcat(pb, " ");
}
else
{
rp = rel[i].mhrp;
strcat(pb, ">");
}
snprintf(&pb[strlen(pb)], sizeof(pb) - strlen(pb), "%3d:%c", rel[i].rid, rel[i].rp ? ' ' : '>');
rp = rel[i].rp ? rel[i].rp : rel[i].mhrp;
if ( rp->symptr && rp->symptr->type == STT_SECTION )
{
sprintf(
snprintf(
&pb[strlen(pb)],
sizeof(pb) - strlen(pb),
" %s %d '%s'",
num2name(R_MIPS_Type, rp->type),
(int)(rp->rel.r_info >> 8),
Expand All @@ -492,8 +484,9 @@ void print_elf_disasm(const elf_file *elf, const elf_section *scp, unsigned int
break;
}
}
sprintf(
snprintf(
&pb[strlen(pb)],
sizeof(pb) - strlen(pb),
"%c %s %d %s",
v7,
num2name(R_MIPS_Type, rp->type),
Expand Down Expand Up @@ -923,7 +916,7 @@ static const char *num2name(const struct name2num *table, unsigned int num)
return table->name;
}
}
sprintf(buf_28, "? 0x%x", num);
snprintf(buf_28, sizeof(buf_28), "? 0x%x", num);
return buf_28;
}

Expand Down
6 changes: 3 additions & 3 deletions tools/srxfixup/src/elflib.c
Original file line number Diff line number Diff line change
Expand Up @@ -1612,14 +1612,14 @@ void dump_file_order_list(const elf_file *elf, const Elf_file_slot *efs)
name = "[Proram Header Table]";
break;
case EFS_TYPE_PROGRAM_HEADER_ENTRY:
sprintf(tmp, "[Proram Header entry %d]", (int)(0xCCCCCCCD * ((char *)slot->d.php - (char *)elf->php)) >> 3);
snprintf(tmp, sizeof(tmp), "[Proram Header entry %d]", (int)(0xCCCCCCCD * ((char *)slot->d.php - (char *)elf->php)) >> 3);
name = tmp;
break;
case EFS_TYPE_SECTION_HEADER_TABLE:
name = "[Section Header Table]";
break;
case EFS_TYPE_SECTION_DATA:
sprintf(tmp, "%s data", slot->d.scp->name);
snprintf(tmp, sizeof(tmp), "%s data", slot->d.scp->name);
name = tmp;
break;
default:
Expand Down Expand Up @@ -1653,7 +1653,7 @@ void dump_file_order_list(const elf_file *elf, const Elf_file_slot *efs)
}
startpos_2 = scp[i]->shr.sh_offset;
size_2 = (oldend_2 == 0) ? (scp[i]->shr.sh_offset) : (Elf32_Off)(oldend_2 + startpos_2 - 1);
sprintf(tmp, "(%s)", scp[i]->name);
snprintf(tmp, sizeof(tmp), "(%s)", scp[i]->name);
name = tmp;
if ( startpos_2 > size_tmp + 1 )
{
Expand Down
6 changes: 4 additions & 2 deletions tools/srxfixup/src/readconf.c
Original file line number Diff line number Diff line change
Expand Up @@ -687,6 +687,7 @@ static Srx_gen_table *make_srx_gen_table(TokenTree *tokentree)
int nsect;
const char **strp;
const char *str;
int str2_len;
char *str2;

result = (Srx_gen_table *)calloc(1, sizeof(Srx_gen_table));
Expand Down Expand Up @@ -863,8 +864,9 @@ static Srx_gen_table *make_srx_gen_table(TokenTree *tokentree)
free(result);
return 0;
}
str2 = (char *)malloc(0x32);
sprintf(str2, "@Program_header_data %s", ttp1->value.lowtoken->str);
str2_len = 0x32;
str2 = (char *)malloc(str2_len);
snprintf(str2, str2_len, "@Program_header_data %s", ttp1->value.lowtoken->str);
result->file_layout_order = add_stringvector(result->file_layout_order, str2);
ttp = nttp;
break;
Expand Down
10 changes: 5 additions & 5 deletions tools/srxfixup/src/srxgen.c
Original file line number Diff line number Diff line change
Expand Up @@ -742,6 +742,7 @@ const char *eos_str = "_end_of_section_";
static void define_special_section_symbols(elf_file *elf)
{
char *sectname;
int sectname_len;
const elf_syment *sym;
elf_syment **syp;
elf_section *scp;
Expand All @@ -755,7 +756,8 @@ static void define_special_section_symbols(elf_file *elf)
{
return;
}
sectname = (char *)__builtin_alloca(((elf->shstrptr->shr.sh_size + 22) >> 2) << 2);
sectname_len = ((elf->shstrptr->shr.sh_size + 22) >> 2) << 2;
sectname = (char *)__builtin_alloca(sectname_len);
entrise = scp->shr.sh_size / scp->shr.sh_entsize;
syp = (elf_syment **)(scp->data);
for ( i = 1; i < entrise; i += 1 )
Expand All @@ -765,14 +767,12 @@ static void define_special_section_symbols(elf_file *elf)
{
if ( !strncmp(bos_str, sym->name, strlen(bos_str)) )
{
strcpy(sectname, ".");
strcat(sectname, &sym->name[strlen(bos_str)]);
snprintf(sectname, sectname_len, ".%s", &sym->name[strlen(bos_str)]);
add_reserved_symbol_table(tp, sym->name, 2, 1, 0, sectname, 0, 0);
}
if ( !strncmp(eos_str, sym->name, strlen(eos_str)) )
{
strcpy(sectname, ".");
strcat(sectname, &sym->name[strlen(eos_str)]);
snprintf(sectname, sectname_len, ".%s", &sym->name[strlen(eos_str)]);
add_reserved_symbol_table(tp, sym->name, 2, 1, 0, sectname, 65311, 1);
}
}
Expand Down
Loading