Add mksusbys() to helpers.c, a kind-of tmpfiles.d in C

Signed-off-by: Joachim Wiberg <troglobit@gmail.com>
This commit is contained in:
Joachim Wiberg
2021-03-13 00:37:47 +01:00
parent 600b2874e6
commit 46995fe446
2 changed files with 25 additions and 0 deletions
+23
View File
@@ -447,6 +447,29 @@ int getcgroup(char *buf, size_t len)
return 0;
}
int mksubsys(const char *dir, mode_t mode, char *user, char *group)
{
mode_t omask;
int uid, gid;
int rc = 0;
omask = umask(0);
uid = getuser(user, NULL);
if (uid >= 0) {
gid = getgroup(group);
if (gid < 0)
gid = 0;
rc = makedir(dir, mode);
chown(dir, uid, gid);
}
umask(omask);
return rc;
}
void set_hostname(char **hostname)
{
FILE *fp;
+2
View File
@@ -85,6 +85,8 @@ int getgroup (char *group);
int getcuser (char *buf, size_t len);
int getcgroup (char *buf, size_t len);
int mksubsys (const char *dir, mode_t mode, char *user, char *group);
void set_hostname (char **hostname);
void networking (int updown);