view src/pop3-login/client.h @ 22325:e01bc3015b2f

lib-index: Check .log.2 rotation only when syncing Instead of also whenever appending transactions to .log file. This shouldn't change the behavior much, and it's needed for the following change to work correctly.
author Timo Sirainen <timo.sirainen@dovecot.fi>
date Tue, 11 Jul 2017 15:33:56 +0300
parents 685240c1a19b
children
line wrap: on
line source

#ifndef CLIENT_H
#define CLIENT_H

#include "net.h"
#include "client-common.h"
#include "auth-client.h"

enum pop3_proxy_state {
	POP3_PROXY_BANNER = 0,
	POP3_PROXY_STARTTLS,
	POP3_PROXY_XCLIENT,
	POP3_PROXY_LOGIN1,
	POP3_PROXY_LOGIN2,

	POP3_PROXY_STATE_COUNT
};

struct pop3_client {
	struct client common;

	char *last_user;
	char *apop_challenge;
	unsigned int apop_server_pid, apop_connect_uid;
	enum pop3_proxy_state proxy_state;
	bool proxy_xclient;
};

enum pop3_cmd_reply {
	POP3_CMD_REPLY_OK,
	POP3_CMD_REPLY_ERROR,
	POP3_CMD_REPLY_AUTH_ERROR,
	POP3_CMD_REPLY_TEMPFAIL
};

void client_send_reply(struct client *client, enum pop3_cmd_reply reply,
		       const char *text);

#endif