X-Git-Url: http://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2FObj%2Fauth.phh;h=5f4426d9ef205a9e85760d8ed3fc159864a658f9;hb=c96ea8bcfeea99ab6c21cc4773ed2e550b3155d9;hp=fdebea7009717251bd11e21cec6c52c41bee5094;hpb=d4946c548a47a8eb564ced365810be6d0583d814;p=brisk.git diff --git a/web/Obj/auth.phh b/web/Obj/auth.phh index fdebea7..5f4426d 100644 --- a/web/Obj/auth.phh +++ b/web/Obj/auth.phh @@ -2,7 +2,7 @@ /* * brisk - auth.phh * - * Copyright (C) 2006-2008 Matteo Nastasi + * Copyright (C) 2006-2009 Matteo Nastasi * mailto: nastasi@alternativeoutput.it * matteo.nastasi@milug.org * web: http://www.alternativeoutput.it @@ -27,6 +27,8 @@ define(CHAL_SHM_DIMS_MAX, 65536); define(CHAL_SHM_DIMS_DLT, 16384); define(CHAL_VALID_TIME, 15); define(CHAL_GARBAGE_TIMEOUT, 5); +define(BRISK_AUTH_CONF, "brisk_auth.conf.pho"); + class Challenge { var $login; @@ -70,7 +72,7 @@ class Challenges { return ($G_false); } - log_auth("xxx", "LOOPI item: ".$i." tstamp: ".$this->item[$i]->tstamp." curtime: ".$curtime); + // log_auth("xxx", "LOOPI tstamp: ".$this->item[$i]->tstamp." curtime: ".$curtime); if (($chal = new Challenge($login, $token, $ip, $tstamp)) == null) { return ($G_false); @@ -274,11 +276,13 @@ class Challenges { class LoginDBItem { var $login; var $pass; + var $email; - function LoginDBItem($login, $pass) + function LoginDBItem($login, $pass, $email) { $this->login = $login; $this->pass = $pass; + $this->email = $email; } } @@ -292,22 +296,27 @@ class LoginDB { GLOBAL $DOCUMENT_ROOT; log_main("LoginDB create:start"); - if (file_exists("$DOCUMENT_ROOT/Etc/brisk_auth.conf.pho")) { - require("$DOCUMENT_ROOT/Etc/brisk_auth.conf.pho"); + if (file_exists("$DOCUMENT_ROOT/Etc/".BRISK_AUTH_CONF)) { + require("$DOCUMENT_ROOT/Etc/".BRISK_AUTH_CONF); } else { - $this->item = array( new LoginDBItem("uno", md5("one")), - new LoginDBItem("due", md5("two")), - new LoginDBItem("a_b", md5("abb")), - new LoginDBItem("tre", md5("three")) ); + $this->item = array( new LoginDBItem("uno", md5("one"), "pippo@pluto.com"), + new LoginDBItem("due", md5("two"), "pippo@pluto.com"), + new LoginDBItem("a_b", md5("abb"), "pippo@pluto.com"), + new LoginDBItem("tre", md5("three"), "pippo@pluto.com") ); } $this->item_n = count($this->item); log_main("LoginDB create:end"); } + function count() + { + return ($this->item_n); + } + function login_exists($login) { - log_main("login_verify"); + log_main("login_exists: ".$login); /* check the existence of the nick in the LoginDB */ for ($i = 0 ; $i < $this->item_n ; $i++) { @@ -319,14 +328,55 @@ class LoginDB { return (FALSE); } + function getlogin_byidx($idx) + { + if ($idx >= $this->item_n) + return FALSE; + return ($this->item[$idx]->login); + } + + function &getitem_bylogin($login, &$id) + { + GLOBAL $G_false; + + log_main("login_exists: ".$login); + + /* check the existence of the nick in the LoginDB */ + for ($i = 0 ; $i < $this->item_n ; $i++) { + if (strcasecmp($this->item[$i]->login, $login) == 0) { + log_main("login[".$i."]: ".$this->item[$i]->login); + $ret = &$this->item[$i]; + $id = $i; + return ($ret); + } + } + $id = -1; + return ($G_false); + } + + function getmail($login) + { + log_main("getmail"); + + /* check the existence of the nick in the LoginDB */ + for ($i = 0 ; $i < $this->item_n ; $i++) { + if (strcasecmp($this->item[$i]->login, $login) == 0) { + log_main("login[".$i."]: ".$this->item[$i]->login); + return ($this->item[$i]->email); + } + } + return (FALSE); + } + function login_verify($login, $pass) { $ret = FALSE; - log_main("login_verify"); + log_main("login_verify: ".$login); /* check the existence of the nick in the LoginDB */ for ($i = 0 ; $i < $this->item_n ; $i++) { + log_main("login_verify: LOOP"); if (strcasecmp($this->item[$i]->login, $login) == 0) { log_main("login[".$i."]: ".$this->item[$i]->login);