From 25a02d9de253b9de864962fa231a088a327843c8 Mon Sep 17 00:00:00 2001
From: Stuart Gathman <stuart@gathman.org>
Date: Tue, 28 Jul 2009 21:53:27 +0000
Subject: [PATCH] Disable negotiate callback when runtime version < 1,0,1

---
 Milter/__init__.py | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/Milter/__init__.py b/Milter/__init__.py
index 2cf16f9..9b27c95 100755
--- a/Milter/__init__.py
+++ b/Milter/__init__.py
@@ -574,11 +574,15 @@ def runmilter(name,socketname,timeout = 0):
 
   milter.setconn(socketname)
   if timeout > 0: milter.settimeout(timeout)
+  # disable negotiate callback if runtime version < (1,0,1)
+  ncb = negotiate_callback
+  if milter.getversion() < (1,0,1):
+    ncb = None
   # The name *must* match the X line in sendmail.cf (supposedly)
   milter.register(name,
         data=lambda ctx: ctx.getpriv().data(),
         unknown=lambda ctx,cmd: ctx.getpriv().unknown(cmd),
-        negotiate=negotiate_callback
+        negotiate=ncb
   )
   start_seq = _seq
   try:
-- 
GitLab