X-Git-Url: http://mop.ddnsfree.com/gitweb/?a=blobdiff_plain;f=web%2FObj%2Fauth.phh;h=fba09873e6ac772300d0f5da95ac622d004d6908;hb=26c51203ae8342cf59e9e3946b0cbe89ed7bde95;hp=061538872eb99844d92ca2977800eb5d57768952;hpb=aff81ded58cbc8ce9678a56b634448b35e2ea804;p=brisk.git diff --git a/web/Obj/auth.phh b/web/Obj/auth.phh index 0615388..fba0987 100644 --- a/web/Obj/auth.phh +++ b/web/Obj/auth.phh @@ -244,31 +244,25 @@ class Challenges { return (FALSE); } - function lock_data() + static function lock_data($is_exclusive) { - if (($tok = @ftok(FTOK_PATH."/challenges", "B")) == -1) { - return (FALSE); - } - // echo "FTOK ".$tok."
"; - if (($res = sem_get($tok)) == FALSE) { - return (FALSE); - } - if (sem_acquire($res)) { - self::$delta_t = microtime(TRUE); - log_lock("LOCK challenges [".self::$delta_t."]"); - return ($res); - } - else - return (FALSE); + if (($res = file_lock(FTOK_PATH."/challenges", $is_exclusive)) != FALSE) { + self::$delta_t = microtime(TRUE); + log_lock("LOCK challenges [".self::$delta_t."]"); + + return ($res); + } + + return (FALSE); } - function unlock_data($res) + static function unlock_data($res) { GLOBAL $sess; log_lock("UNLOCK challenges [".(microtime(TRUE) - (self::$delta_t))."]"); - return (sem_release($res)); + file_unlock($res); } } // End CLASS Challenges