phpgroupware-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Phpgroupware-cvs] phpgwapi/inc class.sessions.inc.php,1.104.4.25


From: skwashd
Subject: [Phpgroupware-cvs] phpgwapi/inc class.sessions.inc.php,1.104.4.25
Date: Wed, 7 Dec 2005 11:50:00 +0100

Update of phpgwapi/inc

Modified Files:
     Branch: Version-0_9_16-branch
            class.sessions.inc.php lines: +14 -7

Log Message:
fix bug #5313

====================================================
Index: phpgwapi/inc/class.sessions.inc.php
diff -u phpgwapi/inc/class.sessions.inc.php:1.104.4.24 
phpgwapi/inc/class.sessions.inc.php:1.104.4.25
--- phpgwapi/inc/class.sessions.inc.php:1.104.4.24      Mon May 30 15:07:26 2005
+++ phpgwapi/inc/class.sessions.inc.php Wed Dec  7 10:50:53 2005
@@ -629,22 +629,29 @@
                        $ip = $this->db->db_addslashes($ip);
                        $this->db->query("SELECT count(*) FROM phpgw_access_log 
WHERE account_id=0 AND ip='$ip' AND li > $block_time",__LINE__,__FILE__);
                        $this->db->next_record();
-                       if (($false_ip = $this->db->f(0)) > 
$GLOBALS['phpgw_info']['server']['num_unsuccessful_ip'])
+                       if (($false_ip = $this->db->f(0)) >= 
$GLOBALS['phpgw_info']['server']['num_unsuccessful_ip'])
                        {
                                //echo "<p>login_blocked: ip='$ip' 
".$this->db->f(0)." tries 
(".$GLOBALS['phpgw_info']['server']['num_unsuccessful_ip']." max.) since 
".date('Y/m/d H:i',$block_time)."</p>\n";
                                $blocked = True;
                        }
+
                        $login = $this->db->db_addslashes($login);
                        $this->db->query("SELECT count(*) FROM phpgw_access_log 
WHERE account_id=0 AND (loginid='$login' OR loginid LIKE 'address@hidden') AND 
li > $block_time",__LINE__,__FILE__);
                        $this->db->next_record();
-                       if (($false_id = $this->db->f(0)) > 
$GLOBALS['phpgw_info']['server']['num_unsuccessful_id'])
+                       if ( !$blocked && ($false_id = $this->db->f(0)) >= 
$GLOBALS['phpgw_info']['server']['num_unsuccessful_id'])
                        {
-                               //echo "<p>login_blocked: login='$login' 
".$this->db->f(0)." tries 
(".$GLOBALS['phpgw_info']['server']['num_unsuccessful_id']." max.) since 
".date('Y/m/d H:i',$block_time)."</p>\n";
-                               $blocked = True;
+                               $acct_id = 
$GLOBALS['phpgw']->accounts->name2id($login);
+                               $anon_users = 
array_flip($GLOBALS['phpgw']->acl->get_ids_for_location('anonymous',1,'phpgwapi'));
+                               //echo "acct_id == $acct_id<br 
/>anon_users<pre>" . print_r($anon_users, true) . '</pre>in_array == ' . 
intval( !is_array($anon_users) || !isset($anon_users[$acct_id]) );
+                               if ( !is_array($anon_users) || 
!isset($anon_users[$acct_id]) )
+                               {
+                                       //echo "<p>login_blocked: 
login='$login' ".$this->db->f(0)." tries 
(".$GLOBALS['phpgw_info']['server']['num_unsuccessful_id']." max.) since 
".date('Y/m/d H:i',$block_time)."</p>\n";
+                                       $blocked = True;
+                               }
                        }
+
                        if ($blocked && 
$GLOBALS['phpgw_info']['server']['admin_mails'] &&
-                               // max. one mail each 5mins
-                           
$GLOBALS['phpgw_info']['server']['login_blocked_mail_time'] < time()-5*60)
+                               
$GLOBALS['phpgw_info']['server']['login_blocked_mail_time'] < time()-5*60)// 
max. one mail each 5mins
                        {
                                // notify admin(s) via email
                                $from    = 
'phpGroupWare@'.$GLOBALS['phpgw_info']['server']['mail_suffix'];






reply via email to

[Prev in Thread] Current Thread [Next in Thread]