315ce5be539bfe8bc7777ab0654499c49583cea2Timo Sirainen#ifndef COMMANDS_H
315ce5be539bfe8bc7777ab0654499c49583cea2Timo Sirainen#define COMMANDS_H
315ce5be539bfe8bc7777ab0654499c49583cea2Timo Sirainen
315ce5be539bfe8bc7777ab0654499c49583cea2Timo Sirainenstruct client;
b73539ef2de3db3abc0ad5f729406e695e4cb76bStephan Boschstruct smtp_server_cmd_ctx;
b73539ef2de3db3abc0ad5f729406e695e4cb76bStephan Boschstruct smtp_server_cmd_helo;
315ce5be539bfe8bc7777ab0654499c49583cea2Timo Sirainen
b73539ef2de3db3abc0ad5f729406e695e4cb76bStephan Boschint cmd_mail(void *conn_ctx, struct smtp_server_cmd_ctx *cmd,
b73539ef2de3db3abc0ad5f729406e695e4cb76bStephan Bosch struct smtp_server_cmd_mail *data);
b73539ef2de3db3abc0ad5f729406e695e4cb76bStephan Boschint cmd_rcpt(void *conn_ctx, struct smtp_server_cmd_ctx *cmd,
b73539ef2de3db3abc0ad5f729406e695e4cb76bStephan Bosch struct smtp_server_cmd_rcpt *data);
b73539ef2de3db3abc0ad5f729406e695e4cb76bStephan Boschint cmd_data_continue(void *conn_ctx, struct smtp_server_cmd_ctx *cmd,
b73539ef2de3db3abc0ad5f729406e695e4cb76bStephan Bosch struct smtp_server_transaction *trans);
b73539ef2de3db3abc0ad5f729406e695e4cb76bStephan Boschint cmd_data_begin(void *conn_ctx,
b73539ef2de3db3abc0ad5f729406e695e4cb76bStephan Bosch struct smtp_server_cmd_ctx *cmd ATTR_UNUSED,
b73539ef2de3db3abc0ad5f729406e695e4cb76bStephan Bosch struct smtp_server_transaction *trans, struct istream *data_input);
315ce5be539bfe8bc7777ab0654499c49583cea2Timo Sirainen
315ce5be539bfe8bc7777ab0654499c49583cea2Timo Sirainen#endif