#pragma implementation #include #include "diskquotaconf.h" #include "diskquotaconf.m" #include MODULE_DEFINE_VERSION(diskquotaconf); static const char *keymenu=NULL; static const char *keystatus = NULL; ("diskquotaconf",PACKAGE_REV); tb.add (new SSTRING(MSG_U(T_USAGE ,"linuxconf --modulemain diskquotaconf options...\n" "\n" " --playcmd quota-command-file\n" " --setuquota user --device device [ options ]\n" " --setgquota group --device device [ options ]\n" " --updatequota\n" ))); if (context == MENU_FSCONF){ keymenu = MSG_U(M_diskquotaconf,"set disk quota defaults"); dia.new_menuitem ("diskquotaconf","",keymenu); }else if (context == MENU_MAIN_STATUS){ keystatus = MSG_U(M_diskquotaconfr,"disk quotas"); dia.new_menuitem ("diskquotaconf","",keystatus); } if (context == MENU_FSCONF){ if (key == keymenu){ if (perm_rootaccess(MSG_U(P_MNGQUOTA,"manage disk quotas"))){ CONTEXT_LOCK l("diskquotaconf"); if (l.isok()){ quota_editdef(); } } } }else if (context == MENU_MAIN_STATUS){ if (key == keystatus){ if (perm_rootaccess(MSG_R(P_MNGQUOTA))){ quota_show (); } } } return 0; int ret = LNCF_NOT_APPLICABLE; if (strcmp(msg,"newuser")==0){ if (argc == 2 && strcmp(argv[1],"/")==0){ ret = quota_applyone (argv[0]); } }else if (strcmp(msg,"deluser")==0){ if (argc == 2 && strcmp(argv[1],"/")==0){ ret = quota_deluser (argv[0]); } } return ret; if (level == 0){ diskquotaconf_checkfs(); } return 0; int ret = LNCF_NOT_APPLICABLE; #if 0 // ### Check the variable key to provide your own html hook ret = 0; #endif return ret; int ret = -1; if (argc > 1){ CONTEXT_LOCK l("diskquotaconf"); if (l.isok()){ if (perm_rootaccess(MSG_U(P_UPDATEQUOTA,"Update disk quotas"))){ if (argc == 2 && strcmp(argv[1],"--updatequota")==0){ quota_applyall(); }else if (argc >= 4 && strcmp(argv[1],"--setuquota")==0){ quota_setquota(false,argv[2],argc-3,argv+3); }else if (argc >= 4 && strcmp(argv[1],"--setgquota")==0){ quota_setquota(true,argv[2],argc-3,argv+3); }else if (argc == 3 && strcmp(argv[1],"--playcmd")==0){ quota_playcmd(argv[2]); }else{ printusage(); } } } }else{ printusage(); } return ret;