Working on CGI session stuff.
This commit is contained in:
parent
8b38617b00
commit
7e835e5073
@ -6,7 +6,7 @@ namespace jet {
|
||||
SessionId::SessionId() {
|
||||
unsigned char hashit[64];
|
||||
unsigned char hash[SHA_DIGEST_LENGTH];
|
||||
setSize(64);
|
||||
setSize(40);
|
||||
sprintf((char *)hashit, "JETSESSION%ld", time(0));
|
||||
SHA1(hashit, strlen((char *)hashit), hash);
|
||||
sprintf(getData(), "%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x%02x",
|
||||
|
||||
2
Tag.cpp
2
Tag.cpp
@ -419,7 +419,7 @@ namespace jet {
|
||||
return getenv(name.c_str());
|
||||
} else if(variable.ifNext("^")) {
|
||||
renderVariableName(variable, name, modifier);
|
||||
return global.cookies.data[variable];
|
||||
return global.cookies.data[name];
|
||||
} else {
|
||||
renderVariableName(variable, name, modifier);
|
||||
name.split(".");
|
||||
|
||||
24
__jet.cpp
24
__jet.cpp
@ -2,6 +2,7 @@
|
||||
#include "Exception.h"
|
||||
#include "Global.h"
|
||||
#include "SessionId.h"
|
||||
#include <stdlib.h>
|
||||
#include <iostream>
|
||||
#include <fstream>
|
||||
|
||||
@ -15,22 +16,21 @@ namespace jet {
|
||||
if(keywordDefined("sessiondir")) {
|
||||
global.session = true;
|
||||
global.cookies = getenv("HTTP_COOKIE");
|
||||
|
||||
// if request_has_cookie then
|
||||
if(global.cookies.data["session"] != NULL) {
|
||||
// pull sessionfile from sessiondir.
|
||||
// if last activity time is expired then ignore.
|
||||
// follow sessiontimeoutredirecturl.
|
||||
// else
|
||||
SessionId sessionId;
|
||||
global.headers["Set-Cookie"] << "session=" << sessionId;
|
||||
if(keywordDefined("sessiontimeout")) {
|
||||
time_t timeout = time(0) + keywords["sessiontimeout"].asInteger();
|
||||
// follow sessiontimeoutredirecturl.
|
||||
} else {
|
||||
SessionId sessionId;
|
||||
global.headers["Set-Cookie"] << "session=" << sessionId;
|
||||
global.cookies.data["session"] = sessionId;
|
||||
if(keywordDefined("sessiontimeout")) {
|
||||
time_t timeout = time(0) + keywords["sessiontimeout"].asInteger();
|
||||
}
|
||||
// also save last activity time in session file.
|
||||
}
|
||||
|
||||
// also save last activity time in session file.
|
||||
|
||||
}
|
||||
|
||||
|
||||
coreutils::ZString requestMethod(getenv("REQUEST_METHOD"));
|
||||
if(requestMethod == "POST") {
|
||||
coreutils::ZString contentLength(getenv("CONTENT_LENGTH"));
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user