| 58 |
|
|
| 59 |
extern BBS_user_priv BBS_priv; |
extern BBS_user_priv BBS_priv; |
| 60 |
|
|
| 61 |
extern int checklevel(BBS_user_priv *p_priv, int level); |
// Check whether user level matches any bit in the given param |
| 62 |
|
inline int checklevel(BBS_user_priv *p_priv, int level) |
| 63 |
|
{ |
| 64 |
|
if (level == P_GUEST) |
| 65 |
|
{ |
| 66 |
|
return 1; |
| 67 |
|
} |
| 68 |
|
|
| 69 |
|
return ((p_priv->level & level) ? 1 : 0); |
| 70 |
|
} |
| 71 |
|
|
| 72 |
|
// Check whether user level is equal or greater than the given param |
| 73 |
|
inline int checklevel2(BBS_user_priv *p_priv, int level) |
| 74 |
|
{ |
| 75 |
|
return ((p_priv->level >= level) ? 1 : 0); |
| 76 |
|
} |
| 77 |
|
|
| 78 |
extern int setpriv(BBS_user_priv *p_priv, int sid, int priv); |
extern int setpriv(BBS_user_priv *p_priv, int sid, int priv); |
| 79 |
|
|
| 80 |
extern int getpriv(BBS_user_priv *p_priv, int sid); |
extern int getpriv(BBS_user_priv *p_priv, int sid); |
| 81 |
|
|
| 82 |
extern int checkpriv(BBS_user_priv *p_priv, int sid, int priv); |
inline int checkpriv(BBS_user_priv *p_priv, int sid, int priv) |
| 83 |
|
{ |
| 84 |
|
return (((getpriv(p_priv, sid) & priv)) == priv ? 1 : 0); |
| 85 |
|
} |
| 86 |
|
|
| 87 |
extern int load_priv(MYSQL *db, BBS_user_priv *p_priv, long int uid); |
extern int load_priv(MYSQL *db, BBS_user_priv *p_priv, long int uid); |
| 88 |
|
|