only root can chown. However, when running as root privileges are dropped. As such, it doesn't make sense to have a function like change_owner()
This commit is contained in:
9
fiche.c
9
fiche.c
@@ -327,8 +327,6 @@ int create_directory(char *slug)
|
|||||||
mkdir(BASEDIR, S_IRWXU | S_IRGRP | S_IROTH | S_IXOTH | S_IXGRP);
|
mkdir(BASEDIR, S_IRWXU | S_IRGRP | S_IROTH | S_IXOTH | S_IXGRP);
|
||||||
int result = mkdir(directory, S_IRWXU | S_IRGRP | S_IROTH | S_IXOTH | S_IXGRP);
|
int result = mkdir(directory, S_IRWXU | S_IRGRP | S_IROTH | S_IXOTH | S_IXGRP);
|
||||||
|
|
||||||
change_owner(directory);
|
|
||||||
|
|
||||||
free(directory);
|
free(directory);
|
||||||
|
|
||||||
return result;
|
return result;
|
||||||
@@ -345,18 +343,11 @@ void save_to_file(char *slug, char *buffer, struct client_data data)
|
|||||||
fprintf(fp, "%s", buffer);
|
fprintf(fp, "%s", buffer);
|
||||||
fclose(fp);
|
fclose(fp);
|
||||||
|
|
||||||
change_owner(directory);
|
|
||||||
display_info(data, directory, "");
|
display_info(data, directory, "");
|
||||||
|
|
||||||
free(directory);
|
free(directory);
|
||||||
}
|
}
|
||||||
|
|
||||||
void change_owner(char *directory)
|
|
||||||
{
|
|
||||||
if (UID != -1 && GID != -1)
|
|
||||||
chown(directory, UID, GID);
|
|
||||||
}
|
|
||||||
|
|
||||||
void set_uid_gid(char *username)
|
void set_uid_gid(char *username)
|
||||||
{
|
{
|
||||||
struct passwd *userdata = getpwnam(username);
|
struct passwd *userdata = getpwnam(username);
|
||||||
|
|||||||
1
fiche.h
1
fiche.h
@@ -90,7 +90,6 @@ void set_basedir();
|
|||||||
void load_list(char *file_path, int type);
|
void load_list(char *file_path, int type);
|
||||||
void parse_parameters(int argc, char **argv);
|
void parse_parameters(int argc, char **argv);
|
||||||
void save_log(char *slug, char *hostaddrp, char *h_name);
|
void save_log(char *slug, char *hostaddrp, char *h_name);
|
||||||
void change_owner(char *directory);
|
|
||||||
void set_uid_gid();
|
void set_uid_gid();
|
||||||
|
|
||||||
char *check_banlist(char *ip_address);
|
char *check_banlist(char *ip_address);
|
||||||
|
|||||||
Reference in New Issue
Block a user