Loading ...
Sorry, an error occurred while loading the content.

294502Re: Why Postfix always complain "unexpected EOF" with my own tcp_table program?

Expand Messages
  • Wietse Venema
    Jul 28, 2013
    • 0 Attachment
      Zhang Huangbin:
      > Dear all,
      >
      > I wrote a simple daemon service in Python, it's used in Postfix transport_maps like this:
      >
      > transport_maps = tcp:127.0.0.1:1234
      >
      > It always returns '200 my_transport\n' as described in Postfix manual page tcp_table(5), but Postfix always complains "unexpected EOF" like below:
      >
      > Jul 27 22:51:53 d7 postfix/trivial-rewrite[4260]: warning: read TCP map reply from 127.0.0.1:1234: unexpected EOF (Success)
      >
      > This Python daemon server uses 'asynchat' module, and return '200 my_transport\n' with 'async_chat.push()' method like this:
      >
      > self.push('200 my_transport\n')
      >
      > Any idea why Postfix always complain "unexpected EOF"?

      1) Use a network sniffer to see what Python actually sends. You may
      assume that your program sends \n, but Postfix does not receive \n.

      2) Unrelated to this bug: closing the connection after one request
      is inefficient.

      Wietse
    • Show all 7 messages in this topic