diff --git a/Milter/__init__.py b/Milter/__init__.py index 2cf16f97a102b33087ef83851a811152df9ac5f9..9b27c959ff178aa81e47e878da8b62818719b9a1 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: