Skip to content

Commit

Permalink
Fix #780, restrict permissions on file create
Browse files Browse the repository at this point in the history
  • Loading branch information
zanzaben committed Feb 22, 2021
1 parent ff4f523 commit 32a5f5f
Showing 1 changed file with 18 additions and 4 deletions.
22 changes: 18 additions & 4 deletions ut_assert/src/uttools.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
#include <errno.h>
#include <string.h>
#include <ctype.h>
#include <sys/stat.h>

#include "common_types.h"
#include "utassert.h"
Expand All @@ -55,10 +56,17 @@ typedef struct

bool UtMem2BinFile(const void *Memory, const char *Filename, uint32 Length)
{
FILE *fp;
FILE * fp;
struct stat dststat;

if ((fp = fopen(Filename, "w")))
{
if (stat(Filename, &dststat) == 0)
{
chmod(Filename, dststat.st_mode & ~(S_IRGRP | S_IWGRP | S_IXGRP | S_IROTH | S_IWOTH | S_IXOTH));
stat(Filename, &dststat);
}

fwrite(Memory, Length, 1, fp);
fclose(fp);
return (true);
Expand Down Expand Up @@ -95,12 +103,18 @@ bool UtBinFile2Mem(void *Memory, const char *Filename, uint32 Length)

bool UtMem2HexFile(const void *Memory, const char *Filename, uint32 Length)
{
FILE * fp;
uint32 i;
uint32 j;
FILE * fp;
uint32 i;
uint32 j;
struct stat dststat;

if ((fp = fopen(Filename, "w")))
{
if (stat(Filename, &dststat) == 0)
{
chmod(Filename, dststat.st_mode & ~(S_IRGRP | S_IWGRP | S_IXGRP | S_IROTH | S_IWOTH | S_IXOTH));
stat(Filename, &dststat);
}

for (i = 0; i < Length; i += 16)
{
Expand Down

0 comments on commit 32a5f5f

Please sign in to comment.