]> bicyclesonthemoon.info Git - ott/post/commitdiff
setuid & exec wrapper
authorb <rowerynaksiezycu@gmail.com>
Sat, 17 Jun 2023 20:48:24 +0000 (20:48 +0000)
committerb <rowerynaksiezycu@gmail.com>
Sat, 17 Jun 2023 20:48:24 +0000 (20:48 +0000)
.gitmodules
exec [new submodule]
makefile
makefile.1.mak
settings-debug.txt
settings-release.txt
settings.txt

index 18429c3cd819a572e8ed07e4da373ea37c33b853..2c3fd5a2b4079e1bda13d96344cd6aca31be640e 100644 (file)
@@ -1,3 +1,6 @@
 [submodule "botm-common"]
        path = botm-common
        url = ../../botm/common-perl
+[submodule "exec"]
+       path = exec
+       url = ../../botm/exec
diff --git a/exec b/exec
new file mode 160000 (submodule)
index 0000000..e95a720
--- /dev/null
+++ b/exec
@@ -0,0 +1 @@
+Subproject commit e95a720dc218bda573b24d2ba52af79b4be48da9
index 187898619d9bacd0774c8fccc1d096d103e36d2e..e1a23990fe1da9d24e4ec8bdea6574a3292c377d 100644 (file)
--- a/makefile
+++ b/makefile
@@ -21,10 +21,14 @@ TARGET    = debug
 # make -B TARGET=target_name makefile
 endif
 
+CC   =gcc
+CF   =-g -Wall
+
 CHMOD=/usr/bin/chmod
 CP   =/usr/bin/cp
 MKDIR=/usr/bin/mkdir
 RM   =/usr/bin/rm
+PERL =/usr/bin/perl
 
 BIN_PATH = /botm/bin/test-post
 LIB_PATH = /botm/lib/test-post
@@ -43,7 +47,8 @@ GENERATE_FROM=\
 sendpost.1.pl
 
 TO_GENERATE=\
-sendpost
+sendpost.pl
+
 
 DIR=\
 $(BIN_PATH)\
@@ -53,18 +58,24 @@ $(TMP_PATH)
 HIDDEN_DIR=\
 $(TMP_PATH)
 
-SETUID=
+SETUID=\
+sendpost.pl
 
 EXEC=\
+sendpost.pl
+
+PERL_WRAP_EXEC=\
 sendpost
 
+
 BIN=\
-$(EXEC)
+$(EXEC)\
+$(PERL_WRAP_EXEC)
 
 LIB=\
 botm-common/botm_common.pm
 
-all: $(BIN)
+all: $(BIN) setuid exec
        
 makefile: makefile.1.mak $(CONFIGFILE)
        $(CONFIGURE_CMD) < makefile.1.mak > makefile
@@ -73,13 +84,18 @@ makefile: makefile.1.mak $(CONFIGFILE)
 $(TO_GENERATE): $(GENERATE_FROM) $(CONFIGFILE)
        $(CONFIGURE_CMD) --in $(GENERATE_FROM) --out $(TO_GENERATE)
 
+$(PERL_WRAP_EXEC): %: exec/exec.c exec/settings.txt
+       $(PERL) $(CONFIGURE) path=$(BIN_PATH) target=$*.pl exec/settings.txt --in exec/exec.c --out $*.c
+       $(CC) $(CF) -o $@ $*.c
 
 exec: $(EXEC)
        $(CHMOD) +x $(EXEC)
 
+wrap_exec: 
+
 setuid: $(SETUID)
-#      $(CHMOD) u+s,g+s $(SETUID)
-       
+       $(CHMOD) u+s,g+s $(SETUID)
+
 
 mktree:
        $(MKDIR) -p $(DIR)
@@ -100,7 +116,7 @@ endif
 install: all cp_bin cp_lib
        
 clean:
-       $(RM) -f $(TO_GENERATE)
+       $(RM) -f $(TO_GENERATE) $(PERL_WRAP_EXEC) $(PERL_WRAP_EXEC:=.c)
 
 PHONY: all clean install cp_bin cp_lib
 
index c2c6e970678b87e613835f531b5f7960ad9e5ccb..d8949997ad96cb1804af75d0be99d07686c5b742 100644 (file)
@@ -21,10 +21,14 @@ TARGET = debug ###MAKE_TARGET:
 # make -B TARGET=target_name makefile\r
 endif\r
 \r
+###MAKE_CC:    CC=gcc\r
+###MAKE_CF:    CF=-g -Wall\r
+\r
 ###MAKE_CHMOD: CHMOD = chmod\r
 ###MAKE_CP:    CP    = cp\r
 ###MAKE_MKDIR: MKDIR = mkdir\r
 ###MAKE_RM:    RM    = rm\r
+###MAKE_PERL:  PERL  = perl\r
 \r
 ###MAKE_BIN_PATH: BIN_PATH = /botm/bin/post\r
 ###MAKE_LIB_PATH: LIB_PATH = /botm/lib/post\r
@@ -43,7 +47,8 @@ GENERATE_FROM=\
 sendpost.1.pl\r
 \r
 TO_GENERATE=\\r
-sendpost\r
+sendpost.pl\r
+\r
 \r
 DIR=\\r
 $(BIN_PATH)\\r
@@ -53,18 +58,24 @@ $(TMP_PATH)
 HIDDEN_DIR=\\r
 $(TMP_PATH)\r
 \r
-SETUID=\r
+SETUID=\\r
+sendpost.pl\r
 \r
 EXEC=\\r
+sendpost.pl\r
+\r
+PERL_WRAP_EXEC=\\r
 sendpost\r
 \r
+\r
 BIN=\\r
-$(EXEC)\r
+$(EXEC)\\r
+$(PERL_WRAP_EXEC)\r
 \r
 LIB=\\r
 botm-common/botm_common.pm\r
 \r
-all: $(BIN)\r
+all: $(BIN) setuid exec\r
        \r
 makefile: makefile.1.mak $(CONFIGFILE)\r
        $(CONFIGURE_CMD) < makefile.1.mak > makefile\r
@@ -73,13 +84,18 @@ makefile: makefile.1.mak $(CONFIGFILE)
 $(TO_GENERATE): $(GENERATE_FROM) $(CONFIGFILE)\r
        $(CONFIGURE_CMD) --in $(GENERATE_FROM) --out $(TO_GENERATE)\r
 \r
+$(PERL_WRAP_EXEC): %: exec/exec.c exec/settings.txt\r
+       $(PERL) $(CONFIGURE) path=$(BIN_PATH) target=$*.pl exec/settings.txt --in exec/exec.c --out $*.c\r
+       $(CC) $(CF) -o $@ $*.c\r
 \r
 exec: $(EXEC)\r
        $(CHMOD) +x $(EXEC)\r
 \r
+wrap_exec: \r
+\r
 setuid: $(SETUID)\r
-#      $(CHMOD) u+s,g+s $(SETUID)\r
-       \r
+       $(CHMOD) u+s,g+s $(SETUID)\r
+\r
 \r
 mktree:\r
        $(MKDIR) -p $(DIR)\r
@@ -100,7 +116,7 @@ endif
 install: all cp_bin cp_lib\r
        \r
 clean:\r
-       $(RM) -f $(TO_GENERATE)\r
+       $(RM) -f $(TO_GENERATE) $(PERL_WRAP_EXEC) $(PERL_WRAP_EXEC:=.c)\r
 \r
 PHONY: all clean install cp_bin cp_lib\r
 \r
index a18357010bc2507577ce5805f861712f3cffec2a..ce4b63a4119f8068c963e01fbb4ad52f40b645fd 100644 (file)
@@ -26,3 +26,6 @@ mkdir: /usr/bin/mkdir
 perl: /usr/bin/perl
 rm: /usr/bin/rm
 wget: /usr/bin/wget
+
+CC: gcc
+CF: -g -Wall
\ No newline at end of file
index e8c91c774839733797707ac0ba9f795b5f46ac88..328922624f586093ca6e689b6a6664da689307b5 100644 (file)
@@ -26,3 +26,6 @@ mkdir: /usr/bin/mkdir
 perl: /usr/bin/perl
 rm: /usr/bin/rm
 wget: /usr/bin/wget
+
+CC: gcc
+CF: -g -Wall
\ No newline at end of file
index 9b845a0a5b039f4589b808e39a3e4c88115f9d46..ebb76d2a1538c0ed2b8a166e210fd63f82b5fe36 100644 (file)
@@ -28,8 +28,12 @@ MAKE_TARGET    = TARGET    = $target
 MAKE_CHMOD  = CHMOD=$chmod
 MAKE_CP     = CP   =$cp
 MAKE_MKDIR  = MKDIR=$mkdir
+MAKE_PERL   = PERL =$perl
 MAKE_RM     = RM   =$rm
 
+MAKE_CC    = CC   =$CC
+MAKE_CF    = CF   =$CF
+
 MAKE_BIN_PATH = BIN_PATH = $bin_path
 MAKE_LIB_PATH = LIB_PATH = $lib_path
 MAKE_TMP_PATH = TMP_PATH = $tmp_path