Wietse Venema via Postfix-users wrote in
 <4tqfyk4qzqzj...@spike.porcupine.org>:
 |Steffen Nurpmeso via Postfix-users:
 |> Wietse Venema via Postfix-users wrote in
 |>  <4tqc213rcwzj...@spike.porcupine.org>:
 |>|So you're suggesting that as long as an MTA-to Milter connection
 |>|is not in an error state, sending
 |>|
 |>|    SMFIC_QUIT_NC 
 |>|
 |>|and later sending 
 |>|
 |>|    SMTIC_CONNECT
 |>|
 |>|are sufficient to make a Milter fully forget a past SMTP session and
 |>|to make it ready to handle events from a new SMTP session?
 |>|
 |>|I'd like to see some documentation for that.
 |> 
 |> Well.  That is how QUIT_NC is documented i would say, 
 |
 |Documentation? there is a partial comment in a Sendmail header file.
 |
 |    #define SMFIC_QUIT_NC             'K'     /* QUIT but new connection \
 |    follows */
 |
 |That's all there is. Not even text that is based on observing real
 |code at work (like Vierling's writeup).
 |
 |Here's some hard info from libmilter/engine.c:
 |
 |    /* commands received by milter */
 |    static cmdfct cmds[] =
 |    {
 |      /* command, arguments, next state, what to do, macros, function */
 |      {SMFIC_ABORT, CM_ARG0, ST_ABRT,  CT_CONT,     CI_NONE, st_abortfct \
 |         }
 | ...
 |    , {SMFIC_QUIT,  CM_ARG0, ST_QUIT,  CT_END,      CI_NONE, st_quit \
 |           }
 | ...
 |    , {SMFIC_QUIT_NC, CM_ARG0, ST_Q_NC,  CT_CONT,   CI_NONE, st_quit \
 |           }
 |};
 |
 |This reveals that with both QUIT like commands, libmilter invokes
 |the same function (st_quit). The two commands differ in their "next
 |state" (ST_QUIT versus ST_Q_NC) and "what to do" (CT_END versus
 |CT_CONT).

Together with Assmann's drop-in that seems sufficiently
informative for reverse engineering. :-)

But it really is sad.  20+ years ago there were really good HOWTOs
in the Linux world, not to talk about all those papers/ and the
historical BSD PSD and USD documentation series.  And their manual
pages.  (Today the Linux ones are pretty good, though.)  And we
here had at times good journalism.

Today you find garbage in forums and nothing else.  Beautiful
defunct webpages like [1].  And mails do not get transported, but
land in project archives, which at times are forked, and the
history being lost (Unicode, for example; just recently a thread
on IETF archives).  Backward incompatible changes on such "basics"
like EVP_SignFinal() [2] (not posted but to internal archive) are
silently performed within some github issue.

  [1] https://www.openssl.org/community/mailinglists.html
  [2] https://mta.openssl.org/pipermail/openssl-users/2024-January/016947.html

Thanks for looking into this!!
Ciao and greetings!

--steffen
|
|Der Kragenbaer,                The moon bear,
|der holt sich munter           he cheerfully and one by one
|einen nach dem anderen runter  wa.ks himself off
|(By Robert Gernhardt)
_______________________________________________
Postfix-users mailing list -- postfix-users@postfix.org
To unsubscribe send an email to postfix-users-le...@postfix.org

Reply via email to