[aur-dev] [PATCH] Save last login IP address

Lukas Fleischer archlinux at cryptocrack.de
Tue Mar 19 10:05:13 EDT 2013


Save the IP address used for the last login in the "Users" table. This
makes it a bit easier to create IP ban lists for spammers without
looking at web server logs.

Signed-off-by: Lukas Fleischer <archlinux at cryptocrack.de>
---
 UPGRADING                     | 10 ++++++++++
 support/schema/aur-schema.sql |  1 +
 web/lib/acctfuncs.inc.php     |  3 ++-
 3 files changed, 13 insertions(+), 1 deletion(-)

diff --git a/UPGRADING b/UPGRADING
index c39330b..9c05467 100644
--- a/UPGRADING
+++ b/UPGRADING
@@ -1,6 +1,16 @@
 Upgrading
 =========
 
+From 2.1.0 to 2.2.0
+-------------------
+
+1. Add new "Users" table login IP address column:
+
+----
+ALTER TABLE Users
+	ADD COLUMN LastLoginIPAddress INTEGER UNSIGNED NOT NULL DEFAULT 0;
+----
+
 From 2.0.0 to 2.1.0
 -------------------
 
diff --git a/support/schema/aur-schema.sql b/support/schema/aur-schema.sql
index d55cf1a..fab40d6 100644
--- a/support/schema/aur-schema.sql
+++ b/support/schema/aur-schema.sql
@@ -34,6 +34,7 @@ CREATE TABLE Users (
 	PGPKey VARCHAR(40) NULL DEFAULT NULL,
 	LastVoted BIGINT UNSIGNED NOT NULL DEFAULT 0,
 	LastLogin BIGINT UNSIGNED NOT NULL DEFAULT 0,
+	LastLoginIPAddress INTEGER UNSIGNED NOT NULL DEFAULT 0,
 	PRIMARY KEY (ID),
 	UNIQUE (Username),
 	UNIQUE (Email),
diff --git a/web/lib/acctfuncs.inc.php b/web/lib/acctfuncs.inc.php
index 61a856b..c13d7f9 100644
--- a/web/lib/acctfuncs.inc.php
+++ b/web/lib/acctfuncs.inc.php
@@ -462,7 +462,8 @@ function try_login() {
 			}
 
 			if ($logged_in) {
-				$q = "UPDATE Users SET LastLogin = UNIX_TIMESTAMP() ";
+				$q = "UPDATE Users SET LastLogin = UNIX_TIMESTAMP(), ";
+				$q.= "LastLoginIPAddress = " . $dbh->quote(ip2long($_SERVER['REMOTE_ADDR'])) . " ";
 				$q.= "WHERE ID = '$userID'";
 				$dbh->exec($q);
 
-- 
1.8.2.480.g556678c



More information about the aur-dev mailing list