usr/local/bin/syslogdctrl
usr/local/bin/timectrl
#usr/local/bin/tripwirectrl
+usr/local/bin/updxsetperms
usr/local/bin/upnpctrl
usr/local/bin/wirelessctrl
#usr/local/bin/wlanapctrl
srv/web/ipfire/cgi-bin/backup.cgi
srv/web/ipfire/cgi-bin/ids.cgi
usr/local/bin/backupiso
+usr/local/bin/updxsetperms
+var/ipfire/updatexlrator/bin/download
&UPDXLT::setcachestatus("$repository/$vendorid/$uuid/checkup.log",time);
&UPDXLT::setcachestatus("$repository/$vendorid/$uuid/access.log",time);
- system("/usr/local/bin/squidctrl setperms");
+ system("/usr/local/bin/updxsetperms");
system("chmod 775 $repository/$vendorid/$uuid/*");
unlink ("$repository/download/$vendorid/$updatefile.info");
* coreutils-5.96
* cpio-2.6
* cpufrequtils-005
-* cryptsetup-1.0.6
* cups-1.3.9
* curl-7.19.4
* cyrus-imapd-2.2.12
ipfiremake netcat
ipfiremake 7zip
ipfiremake lynis
- ipfiremake cryptsetup
+ #ipfiremake cryptsetup
ipfiremake splix
ipfiremake streamripper
ipfiremake sshfs
redctrl syslogdctrl extrahdctrl sambactrl upnpctrl tripwirectrl \
smartctrl clamavctrl addonctrl pakfire mpfirectrl wlanapctrl \
setaliases
+SUID_UPDX = updxsetperms
install : all
install -m 755 $(PROGS) /usr/local/bin
install -m 4750 -g nobody $(SUID_PROGS) /usr/local/bin
+ install -m 4750 -g squid $(SUID_UPDX) /usr/local/bin
-all : $(PROGS) $(SUID_PROGS)
+all : $(PROGS) $(SUID_PROGS) $(SUID_UPDX)
clean :
- -rm -f $(PROGS) $(SUID_PROGS) *.o core
+ -rm -f $(PROGS) $(SUID_PROGS) $(SUID_UPDX) *.o core
######
$(PROGS): setuid.o
+$(SUID_UPDX): setuid.o
+
logwatch: logwatch.c setuid.o ../install+setup/libsmooth/varval.o
$(COMPILE) -I../install+setup/libsmooth/ logwatch.c setuid.o ../install+setup/libsmooth/varval.o -o $@
setaliases: setaliases.c setuid.o ../install+setup/libsmooth/varval.o
$(COMPILE) -I../install+setup/libsmooth/ setaliases.c setuid.o ../install+setup/libsmooth/varval.o -o $@
+updxsetperms: updxsetperms.c setuid.o ../install+setup/libsmooth/varval.o
+ $(COMPILE) -I../install+setup/libsmooth/ updxsetperms.c setuid.o ../install+setup/libsmooth/varval.o -o $@
safe_system("ln -fs ../init.d/squid /etc/rc.d/rc6.d/K00squid >/dev/null 2>&1");
} else if (strcmp(argv[1], "disable") == 0) {
safe_system("rm -f /etc/rc.d/rc*.d/*squid >/dev/null 2>&1");
- } else if (strcmp(argv[1], "setperms") == 0) {
- safe_system("/etc/rc.d/init.d/squid setperms");
} else {
fprintf(stderr, "\nBad argument given.\n\nsquidctrl (start|stop|restart|flush|reconfigure|setperms)\n\n");
exit(1);
--- /dev/null
+/* This file is part of the IPFire Firewall.
+ *
+ * This program is distributed under the terms of the GNU General Public
+ * Licence. See the file COPYING for details.
+ *
+ */
+
+#include <stdlib.h>
+#include <stdio.h>
+#include <string.h>
+#include <unistd.h>
+#include <sys/types.h>
+#include <fcntl.h>
+#include "setuid.h"
+
+int main(int argc, char *argv[]) {
+
+ if (!(initsetuid()))
+ exit(1);
+
+ if (argc > 1) {
+ fprintf(stderr, "\nNo argument should be given.\n");
+ exit(1);
+ }
+
+ safe_system("/etc/rc.d/init.d/squid setperms");
+ return 0;
+}