session config
This commit is contained in:
@@ -1865,6 +1865,9 @@ long account_session_check(CVars in, CVars out) {
|
||||
long ret = PHP_INVALID_SESSION;
|
||||
try {
|
||||
long session_expire_minutes = 15;
|
||||
in["session_expire_minutes"] = CfgReadChar("system.session_expire_minutes");
|
||||
session_expire_minutes = in["session_expire_minutes"].Long();
|
||||
|
||||
REQ_STRING(in, "sessionid", 4, 140, "(.*)");
|
||||
OPTIONAL(in, "mode") REQ_LONG(in, "mode", 1, -1);
|
||||
if (in["mode"].Long() == 900 ){
|
||||
@@ -1901,7 +1904,9 @@ long VerifySession(CVars in, CVars &out) {
|
||||
REQ_STRING(in, "sessionid", 4, 140, "(.*)");
|
||||
long member_id = REQ_LONG(in, "member_id", 1, -1);
|
||||
|
||||
long session_expire_minutes = 15;
|
||||
long session_expire_minutes = 15;
|
||||
in["session_expire_minutes"] = CfgReadChar("system.session_expire_minutes");
|
||||
session_expire_minutes = in["session_expire_minutes"].Long();
|
||||
|
||||
if (load_db_record(out, "SELECT s.* FROM members_session s LEFT JOIN members m ON m.id=s.member_id "
|
||||
" WHERE s.member_id=%lu AND s.updated > (now() - interval '%lu minutes') AND s.session='%s'", member_id, session_expire_minutes, in["sessionid"].c_str()) > 0) {
|
||||
@@ -1928,8 +1933,10 @@ long SessionCheck(long uid, const char *sessionid, int create) {
|
||||
if (uid < 1 || sessionid == NULL || strlen(sessionid) < 4) {
|
||||
return -1L; // Invalif parameters
|
||||
}
|
||||
|
||||
CVars in;
|
||||
long session_expire_minutes = 15;
|
||||
in["session_expire_minutes"] = CfgReadChar("system.session_expire_minutes");
|
||||
session_expire_minutes = in["session_expire_minutes"].Long();
|
||||
|
||||
// Clean old sessions
|
||||
pgsql_exec("DELETE FROM members_session WHERE member_id=%ld AND updated < (now() - interval '%lu minutes')", uid, session_expire_minutes);
|
||||
|
||||
Reference in New Issue
Block a user