--- src/dspam.c	2006-12-12 16:33:45.000000000 +0100
+++ src/dspam.new.c	2007-12-01 22:16:00.670404201 +0100
@@ -428,9 +428,12 @@
   if (CTX->classification == DSR_NONE &&
       _ds_read_attribute(agent_config, "Lookup"))
   {
+    if(strcmp(_ds_pref_val(ATX->PTX, "ignoreRBLLookups"), "on")) {
     int bad = is_blacklisted(CTX, ATX);
     if (bad) {
-      if (_ds_match_attribute(agent_config, "RBLInoculate", "on")) {
+      if ((_ds_match_attribute(agent_config, "RBLInoculate", "on") ||
+            !strcmp(_ds_pref_val(ATX->PTX, "RBLInoculate"), "on")) &&
+            strcmp(_ds_pref_val(ATX->PTX, "RBLInoculate"), "off")) {
         LOGDEBUG("source address is blacklisted. learning as spam.");
         CTX->classification = DSR_ISSPAM;
         CTX->source = DSS_INOCULATION;
@@ -444,6 +447,7 @@
       }
     }
   }
+  }
 
   /* Process a signature if one was provided */
 
