diff options
author | wens <wens@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2005-08-08 22:23:24 +0800 |
---|---|---|
committer | wens <wens@63ad8ddf-47c3-0310-b6dd-a9e9d9715204> | 2005-08-08 22:23:24 +0800 |
commit | e041c43c8961880cebbc18c1be59bde99582ea2a (patch) | |
tree | e9ae727e9d3e52ffbb524714644d635bcbc44b47 /mbbsd | |
parent | 72fa46586658fa5a7e797e66167583b17cb5a858 (diff) | |
download | pttbbs-e041c43c8961880cebbc18c1be59bde99582ea2a.tar pttbbs-e041c43c8961880cebbc18c1be59bde99582ea2a.tar.gz pttbbs-e041c43c8961880cebbc18c1be59bde99582ea2a.tar.bz2 pttbbs-e041c43c8961880cebbc18c1be59bde99582ea2a.tar.lz pttbbs-e041c43c8961880cebbc18c1be59bde99582ea2a.tar.xz pttbbs-e041c43c8961880cebbc18c1be59bde99582ea2a.tar.zst pttbbs-e041c43c8961880cebbc18c1be59bde99582ea2a.zip |
add super sys support op (群組長)
HUGETLB doesn't need root
git-svn-id: http://opensvn.csie.org/pttbbs/trunk/pttbbs@3010 63ad8ddf-47c3-0310-b6dd-a9e9d9715204
Diffstat (limited to 'mbbsd')
-rw-r--r-- | mbbsd/admin.c | 5 | ||||
-rw-r--r-- | mbbsd/bbs.c | 2 | ||||
-rw-r--r-- | mbbsd/board.c | 6 | ||||
-rw-r--r-- | mbbsd/mail.c | 8 | ||||
-rw-r--r-- | mbbsd/var.c | 4 |
5 files changed, 16 insertions, 9 deletions
diff --git a/mbbsd/admin.c b/mbbsd/admin.c index eb6b47d1..9a0fd4e0 100644 --- a/mbbsd/admin.c +++ b/mbbsd/admin.c @@ -404,7 +404,7 @@ m_mod_board(char *bname) snprintf(genbuf, sizeof(genbuf), "(E)³]©w (V)¹Hªk/¸Ñ°£%s%s [Q]¨ú®ø¡H", HasUserPerm(PERM_SYSOP | PERM_BOARD) ? " (B)Vote (S)±Ï¦^ (C)¦X¨Ö (G)½ä½L¸Ñ¥d" : "", - HasUserPerm(PERM_SYSSUBOP | PERM_BOARD) ? " (D)§R°£" : ""); + HasUserPerm(PERM_SYSSUBOP | PERM_SYSSUPERSUBOP | PERM_BOARD) ? " (D)§R°£" : ""); getdata(10, 0, genbuf, ans, 3, LCECHO); switch (*ans) { @@ -482,7 +482,8 @@ m_mod_board(char *bname) } break; case 'd': - if (!HasUserPerm(PERM_SYSOP | PERM_BOARD)) + if (!(HasUserPerm(PERM_SYSOP | PERM_BOARD) || + (HasUserPerm(PERM_SYSSUPERSUBOP) && GROUPOP()))) break; getdata_str(9, 0, msg_sure_ny, genbuf, 3, LCECHO, "N"); if (genbuf[0] != 'y' || !bname[0]) diff --git a/mbbsd/bbs.c b/mbbsd/bbs.c index 04a802ad..234b5444 100644 --- a/mbbsd/bbs.c +++ b/mbbsd/bbs.c @@ -3051,7 +3051,7 @@ change_cooldown(int ent, const fileheader_t * fhdr, const char *direct) { boardheader_t *bp = getbcache(currbid); - if (!HasUserPerm(PERM_SYSOP)) + if (!(HasUserPerm(PERM_SYSOP) || (HasUserPerm(PERM_SYSSUPERSUBOP) && GROUPOP()))) return DONOTHING; if (bp->brdattr & BRD_COOLDOWN) { diff --git a/mbbsd/board.c b/mbbsd/board.c index bf5867d9..01a529cb 100644 --- a/mbbsd/board.c +++ b/mbbsd/board.c @@ -880,7 +880,8 @@ choose_board(int newflag) brdnum = -1; break; case 'D': - if (HasUserPerm(PERM_SYSOP)) { + if (HasUserPerm(PERM_SYSOP) || + (HasUserPerm(PERM_SYSSUPERSUBOP) && GROUPOP())) { ptr = &nbrd[num]; if (ptr->myattr & NBRD_SYMBOLIC) { if (getans("½T©w§R°£³sµ²¡H[N/y]") == 'y') @@ -912,7 +913,8 @@ choose_board(int newflag) brdnum = -1; break; case 'L': - if (HasUserPerm(PERM_SYSOP) && IN_CLASS()) { + if ((HasUserPerm(PERM_SYSOP) || + (HasUserPerm(PERM_SYSSUPERSUBOP) && GROUPOP())) && IN_CLASS()) { if (make_symbolic_link_interactively(class_bid) < 0) break; brdnum = -1; diff --git a/mbbsd/mail.c b/mbbsd/mail.c index 0d57a8bc..dd69aba9 100644 --- a/mbbsd/mail.c +++ b/mbbsd/mail.c @@ -202,8 +202,12 @@ void setupmailusage(void) { // Ptt: get_sum_records is a bad function int max_keepmail = MAX_KEEPMAIL; - if( HasUserPerm(PERM_SYSSUBOP | PERM_ACCTREG | PERM_PRG | - PERM_ACTION | PERM_PAINT) ){ + if (HasUserPerm(PERM_SYSSUPERSUBOP)) { + mailsumlimit = 900; + max_keepmail = 700; + } + else if (HasUserPerm(PERM_SYSSUBOP | PERM_ACCTREG | PERM_PRG | + PERM_ACTION | PERM_PAINT)) { mailsumlimit = 700; max_keepmail = 500; } else if (HasUserPerm(PERM_BM)) { diff --git a/mbbsd/var.c b/mbbsd/var.c index 11a77017..b6e50000 100644 --- a/mbbsd/var.c +++ b/mbbsd/var.c @@ -30,14 +30,14 @@ const char * const str_permid[] = { "µøı¯¸ªø", /* PERM_VIEWSYSOP */ "Æ[¹î¨Ï¥ÎªÌ¦æÂÜ", /* PERM_LOGUSER */ "æ͹ܤ½Åv", /* PERM_NOCITIZEN */ - "¤½Ãö²Õ", /* PERM_RELATION */ + "¸s²Õªø", /* PERM_SYSSUPERSUBOP */ "±b¸¹¼f®Ö²Õ", /* PERM_ACCTREG */ "µ{¦¡²Õ", /* PERM_PRG */ "¬¡°Ê²Õ", /* PERM_ACTION */ "¬ü¤u²Õ", /* PERM_PAINT */ "¥ßªk²Õ", /* PERM_LAW */ "¤p²Õªø", /* PERM_SYSSUBOP */ - "¤@¯Å¥DºÞ", /* PERM_LSYSOP */ + "°h¥ð¯¸ªø", /* PERM_OLDSYSOP */ "¢Þ¢ü¢ü" /* PERM_PTT */ }; |