#include #include #include #include #include #include #include "setuid.h" int main(int argc, char *argv[]){ if ( argc < 2 ){ printf("invalid parameter(s)\n"); return(1); } if (!(initsetuid())) exit(1); if (strcmp(argv[1], "cron") == 0){ safe_system("rm /etc/fcron.*/urlfilter 2&>/dev/null"); if (strcmp(argv[2], "daily") == 0){ safe_system("ln -s /var/ipfire/urlfilter/bin/autoupdate.pl /etc/fcron.daily/urlfilter"); } else if (strcmp(argv[2], "weekly") == 0){ safe_system("ln -s /var/ipfire/urlfilter/bin/autoupdate.pl /etc/fcron.weekly/urlfilter"); } else if (strcmp(argv[2], "monthly") == 0){ safe_system("ln -s /var/ipfire/urlfilter/bin/autoupdate.pl /etc/fcron.monthly/urlfilter"); } else if (strcmp(argv[2], "remove") == 0){ // Don't add urlfilter into any fcron directory }else{ printf("invalid parameter(s)\n"); return(1); } } return 0; }