# Path: Milter/utils.py
# PAT_IP4 = r'\.'.join([r'(?:\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])']*4)
# MASK = 0xFFFFFFFF
# MASK6 = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
# def addr2bin(s):
# def bin2long6(s):
#     def inet_ntop(s):
#     def inet_pton(s):
# def cidr(i,n,mask=MASK):
# def iniplist(ipaddr,iplist):
# def parseaddr(t):
# def decode(s, convert_eols=None):
# def parse_addr(t):
# def parse_header(val):


from socket import AF_INET,AF_INET6
from sys import version as VERSION
  from io import BytesIO
  from StringIO import StringIO as BytesIO
from Milter import utils
import time
import mime
import Milter
    rc = self._priv.eoh()
    self._stage = None
    return rc

  def _feed_body(self,bfp):
    if self._protocol & Milter.P_NOBODY:
      return Milter.CONTINUE
    while True:
      buf = bfp.read(8192)
      if len(buf) == 0: break
      rc = self._priv.body(buf)
      if rc != Milter.CONTINUE: return rc
    return Milter.CONTINUE

  def _eom(self):
    self._body = BytesIO()
    self._stage = Milter.M_EOM
    rc = self._priv.eom()
    self._stage = None
    return rc

  ## Feed a file like object to the ctx.  Calls the callbacks in
  # the same sequence as libmilter.
  # @param fp the file with rfc2822 message stream
  # @param sender the MAIL FROM
  # @param rcpt RCPT TO - additional recipients may follow
  def _feedFile(self,fp,sender="spam@adv.com",rcpt="victim@lamb.com",*rcpts):
    self._body = None
    self._bodyreplaced = False
    self._headerschanged = False

# Path: Milter/utils.py
# PAT_IP4 = r'\.'.join([r'(?:\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])']*4)
# MASK = 0xFFFFFFFF
# MASK6 = 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
# def addr2bin(s):
# def bin2long6(s):
#     def inet_ntop(s):
#     def inet_pton(s):
# def cidr(i,n,mask=MASK):
# def iniplist(ipaddr,iplist):
# def parseaddr(t):
# def decode(s, convert_eols=None):
# def parse_addr(t):
# def parse_header(val):


# Path: Milter/testctx.py
from socket import AF_INET,AF_INET6
from sys import version as VERSION
  from io import BytesIO
  from StringIO import StringIO as BytesIO
from Milter import utils
import time
import mime
import Milter

    rc = self._priv.eoh()
    self._stage = None
    return rc

  def _feed_body(self,bfp):
    if self._protocol & Milter.P_NOBODY:
      return Milter.CONTINUE
    while True:
      buf = bfp.read(8192)
      if len(buf) == 0: break
      rc = self._priv.body(buf)
      if rc != Milter.CONTINUE: return rc
    return Milter.CONTINUE

  def _eom(self):
    self._body = BytesIO()
    self._stage = Milter.M_EOM
    rc = self._priv.eom()
    self._stage = None
    return rc

  ## Feed a file like object to the ctx.  Calls the callbacks in
  # the same sequence as libmilter.
  # @param fp the file with rfc2822 message stream
  # @param sender the MAIL FROM
  # @param rcpt RCPT TO - additional recipients may follow
  def _feedFile(self,fp,sender="spam@adv.com",rcpt="victim@lamb.com",*rcpts):
    self._body = None
    self._bodyreplaced = False
    self._headerschanged = False

    self._reply = None