added mode parameter to mkdirs
This commit is contained in:
@@ -71,7 +71,7 @@ static int scan_dir(int (*fn)(faddr *, char, int, char *), char *dname, int ispo
|
||||
* Create a fake filename, mkdirs() likes that.
|
||||
*/
|
||||
sprintf(fname, "%s/foo", dname);
|
||||
(void)mkdirs(fname);
|
||||
(void)mkdirs(fname, 0770);
|
||||
if ((dp = opendir(dname)) == NULL) {
|
||||
tasklog('o' ,"\"%s\" cannot be opened, proceed",MBSE_SS(dname));
|
||||
return 0;
|
||||
|
@@ -260,7 +260,7 @@ int file_exist(char *path, int mode)
|
||||
/*
|
||||
* Make directory tree, the name must end with a /
|
||||
*/
|
||||
int mkdirs(char *name)
|
||||
int mkdirs(char *name, mode_t mode)
|
||||
{
|
||||
char buf[PATH_MAX], *p, *q;
|
||||
int rc, last = 0, oldmask;
|
||||
@@ -274,7 +274,7 @@ int mkdirs(char *name)
|
||||
oldmask = umask(000);
|
||||
while ((q = strchr(p, '/'))) {
|
||||
*q = '\0';
|
||||
rc = mkdir(buf, 0775);
|
||||
rc = mkdir(buf, mode);
|
||||
last = errno;
|
||||
*q = '/';
|
||||
p = q+1;
|
||||
|
@@ -30,7 +30,7 @@ void TouchSema(char *);
|
||||
void RemoveSema(char *);
|
||||
int IsSema(char *);
|
||||
int file_exist(char *, int);
|
||||
int mkdirs(char *);
|
||||
int mkdirs(char *, mode_t);
|
||||
long file_size(char *);
|
||||
time_t file_time(char *);
|
||||
char *ascfnode(fidoaddr, int);
|
||||
|
Reference in New Issue
Block a user