From ec29722d8b6b90d1a0368542a5de991599e30adc Mon Sep 17 00:00:00 2001 From: manuel Date: Thu, 28 Nov 2024 13:32:32 +0100 Subject: Fix `implicit declaration of function` in install-big/hier --- Makefile | 6 +++--- hier.c | 1 + install-big.c | 1 + install.c | 37 ++++++------------------------------- install.h | 12 ++++++++++++ 5 files changed, 23 insertions(+), 34 deletions(-) create mode 100644 install.h diff --git a/Makefile b/Makefile index 5bd3765..8a280fd 100644 --- a/Makefile +++ b/Makefile @@ -722,7 +722,7 @@ compile hfield.c hfield.h ./compile hfield.c hier.o: \ -compile hier.c auto_qmail.h auto_split.h auto_uids.h fmt.h fifo.h +compile hier.c auto_qmail.h auto_split.h auto_uids.h fmt.h fifo.h install.h ./compile hier.c home: \ @@ -774,12 +774,12 @@ auto_uids.o strerr.a substdio.a open.a error.a str.a fs.a install-big.o: \ compile install-big.c auto_qmail.h auto_split.h auto_uids.h fmt.h \ -fifo.h +fifo.h install.h ./compile install-big.c install.o: \ compile install.c substdio.h strerr.h error.h open.h readwrite.h \ -exit.h +exit.h install.h ./compile install.c instcheck: \ diff --git a/hier.c b/hier.c index c586065..e1b4b25 100644 --- a/hier.c +++ b/hier.c @@ -3,6 +3,7 @@ #include "auto_uids.h" #include "fmt.h" #include "fifo.h" +#include "install.h" char buf[100 + FMT_ULONG]; diff --git a/install-big.c b/install-big.c index a058ad2..d9c9f9b 100644 --- a/install-big.c +++ b/install-big.c @@ -3,6 +3,7 @@ #include "auto_uids.h" #include "fmt.h" #include "fifo.h" +#include "install.h" char buf[100 + FMT_ULONG]; diff --git a/install.c b/install.c index 244072f..f551187 100644 --- a/install.c +++ b/install.c @@ -1,5 +1,6 @@ #include #include +#include "install.h" #include "substdio.h" #include "strerr.h" #include "error.h" @@ -13,11 +14,7 @@ extern void hier(); int fdsourcedir = -1; -void h(home,uid,gid,mode) -char *home; -int uid; -int gid; -int mode; +void h(const char *home, uid_t uid, gid_t gid, mode_t mode) { if (mkdir(home,0700) == -1) if (errno != error_exist) @@ -28,12 +25,7 @@ int mode; strerr_die4sys(111,FATAL,"unable to chmod ",home,": "); } -void d(home,subdir,uid,gid,mode) -char *home; -char *subdir; -int uid; -int gid; -int mode; +void d(const char *home, const char *subdir, uid_t uid, gid_t gid, mode_t mode) { if (chdir(home) == -1) strerr_die4sys(111,FATAL,"unable to switch to ",home,": "); @@ -46,12 +38,7 @@ int mode; strerr_die6sys(111,FATAL,"unable to chmod ",home,"/",subdir,": "); } -void p(home,fifo,uid,gid,mode) -char *home; -char *fifo; -int uid; -int gid; -int mode; +void p(const char *home, const char *fifo, uid_t uid, gid_t gid, mode_t mode) { if (chdir(home) == -1) strerr_die4sys(111,FATAL,"unable to switch to ",home,": "); @@ -69,13 +56,7 @@ char outbuf[SUBSTDIO_OUTSIZE]; substdio ssin; substdio ssout; -void c(home,subdir,file,uid,gid,mode) -char *home; -char *subdir; -char *file; -int uid; -int gid; -int mode; +void c(const char *home, const char *subdir, const char *file, uid_t uid, gid_t gid, mode_t mode) { int fdin; int fdout; @@ -119,13 +100,7 @@ int mode; strerr_die6sys(111,FATAL,"unable to chmod .../",subdir,"/",file,": "); } -void z(home,file,len,uid,gid,mode) -char *home; -char *file; -int len; -int uid; -int gid; -int mode; +void z(const char *home, const char *file, size_t len, uid_t uid, gid_t gid, mode_t mode) { int fdout; diff --git a/install.h b/install.h new file mode 100644 index 0000000..861be9b --- /dev/null +++ b/install.h @@ -0,0 +1,12 @@ +#ifndef install_h +#define install_h + +#include + +void h(const char *home, uid_t uid, gid_t gid, mode_t mode); +void d(const char *home, const char *subdir, uid_t uid, gid_t gid, mode_t mode); +void p(const char *home, const char *fifo, uid_t uid, gid_t gid, mode_t mode); +void c(const char *home, const char *subdir, const char *file, uid_t uid, gid_t gid, mode_t mode); +void z(const char *home, const char *file, size_t len, uid_t uid, gid_t gid, mode_t mode); + +#endif -- cgit v1.2.3