X-Git-Url: http://git.madism.org/?a=blobdiff_plain;f=postfix.h;h=88e4f8d828ddafacfcbd121e49a341f47eb627bd;hb=c693c0b0d26eac89aef4e4c6740feca3627e2d26;hp=d24dcbb7ab625ab0a62f84057fd5202cfffe4ec1;hpb=e826fd379421938f920e7e51d2a34bf4eb3483a0;p=apps%2Fpfixtools.git diff --git a/postfix.h b/postfix.h index d24dcbb..88e4f8d 100644 --- a/postfix.h +++ b/postfix.h @@ -1,5 +1,5 @@ /******************************************************************************/ -/* postlicyd: a postfix policy daemon with a lot of features */ +/* pfixtools: a collection of postfix related tools */ /* ~~~~~~~~~ */ /* ________________________________________________________________________ */ /* */ @@ -33,11 +33,26 @@ * Copyright © 2006-2007 Pierre Habouzit */ -#ifndef POSTLICYD_POSTFIX_H -#define POSTLICYD_POSTFIX_H +#ifndef PFIXTOOLS_POSTFIX_H +#define PFIXTOOLS_POSTFIX_H + +#include #include "buffer.h" +enum smtp_state { + SMTP_UNKNOWN, + SMTP_CONNECT, + SMTP_EHLO, + SMTP_HELO = SMTP_EHLO, + SMTP_MAIL, + SMTP_RCPT, + SMTP_DATA, + SMTP_END_OF_MESSAGE, + SMTP_VRFY, + SMTP_ETRN, +}; + /* \see http://www.postfix.org/SMTPD_POLICY_README.html */ typedef struct query_t { unsigned state : 4; @@ -72,10 +87,15 @@ typedef struct query_t { } query_t; static inline query_t *query_init(query_t *rq) { - p_clear(rq, 1); + memset(rq, 0, offsetof(query_t, data)); buffer_init(&rq->data); return rq; } +static inline query_t *query_reset(query_t *rq) { + memset(rq, 0, offsetof(query_t, data)); + buffer_reset(&rq->data); + return rq; +} static inline void query_wipe(query_t *rq) { buffer_wipe(&rq->data); }