--- webuser.py_old	2008-03-19 15:03:39.000000000 +0100
+++ webuser.py_new	2008-03-19 15:05:09.000000000 +0100
@@ -65,6 +65,7 @@
      CFG_TMPDIR, \
      CFG_SITE_URL
 from invenio import session
+from invenio.websession_config import CFG_WEBSESSION_BOTS_USERAGENT_REGULAR_EXPRESSIONS
 from invenio.dbquery import run_sql, OperationalError, \
     serialize_via_marshal, deserialize_via_marshal
 from invenio.websession import pSession, pSessionMapping
@@ -194,6 +195,12 @@
     if CFG_ACCESS_CONTROL_LEVEL_SITE == 1: return 0
     if CFG_ACCESS_CONTROL_LEVEL_SITE == 2: return -1
 
+    # if the client is a bot, it won't store any cookie.
+    agent = req.headers_in.get('User-Agent', 'N/A')
+    for agent_regexp in CFG_WEBSESSION_BOTS_USERAGENT_REGULAR_EXPRESSIONS:
+        if agent_regexp.search(agent):
+            return 0 
+
     guest = 0
     sm = session.MPSessionManager(pSession, pSessionMapping())
     try:
