kconfig creates reasonably safe filenames for its temporary files
except for two of them.
Change-Id: I6861f55ae2a5311e3fb7919333ce9af1e39ce78b
Signed-off-by: Patrick Georgi <patrick@georgi-clan.de>
Reviewed-on: http://review.coreboot.org/408
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
FILE *out, *out_h;
time_t now;
int i, l;
FILE *out, *out_h;
time_t now;
int i, l;
+ char tmpname[128], tmpname_h[128];
- out = fopen(".tmpconfig", "w");
+ sprintf(tmpname, ".tmpconfig.%d", (int)getpid());
+ out = fopen(tmpname, "w");
- out_h = fopen(".tmpconfig.h", "w");
+ sprintf(tmpname_h, ".tmpconfig.h.%d", (int)getpid());
+ out_h = fopen(tmpname_h, "w");
if (!out_h) {
fclose(out);
return 1;
if (!out_h) {
fclose(out);
return 1;
if (!name)
name = "include/linux/autoconf.h";
UNLINK_IF_NECESSARY(name);
if (!name)
name = "include/linux/autoconf.h";
UNLINK_IF_NECESSARY(name);
- if (rename(".tmpconfig.h", name))
+ if (rename(tmpname_h, name))
return 1;
name = getenv("KCONFIG_AUTOCONFIG");
if (!name)
return 1;
name = getenv("KCONFIG_AUTOCONFIG");
if (!name)
* and this marks the successful completion of the previous steps.
*/
UNLINK_IF_NECESSARY(name);
* and this marks the successful completion of the previous steps.
*/
UNLINK_IF_NECESSARY(name);
- if (rename(".tmpconfig", name))
+ if (rename(tmpname, name))