Mercurial > dovecot > original-hg > dovecot-1.2
view src/master/master-login-interface.h @ 7927:2351a81ce699 HEAD
If commands are pipelined after the login command, pass them to the
IMAP/POP3 process so it can process the command instead of discarding it.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Sat, 21 Jun 2008 12:23:08 +0300 |
parents | e4eb71ae8e96 |
children | 9e226056a208 |
line wrap: on
line source
#ifndef MASTER_LOGIN_INTERFACE_H #define MASTER_LOGIN_INTERFACE_H #include "network.h" #define LOGIN_MASTER_SOCKET_FD 3 /* Increase the version number every time master_login_request (or something else) is changed. */ #define MASTER_LOGIN_PROTOCOL_VERSION 3 /* This should be kept in sync with LOGIN_MAX_INBUF_SIZE */ #define MASTER_LOGIN_MAX_DATA_SIZE 4096 enum master_login_state { /* process is accepting new connections */ LOGIN_STATE_LISTENING = 0, /* process isn't accepting new connections, but it'd be able to kill some connections which haven't logged in yet */ LOGIN_STATE_FULL_PRELOGINS, /* process is handling only logged in users */ LOGIN_STATE_FULL_LOGINS, LOGIN_STATE_COUNT }; struct master_login_request { uint32_t version; /* if fd == -1, tag is used as master_login_state */ uint32_t tag; uint32_t auth_pid; uint32_t auth_id; /* request follows this many bytes of client input */ uint32_t data_size; ino_t ino; struct ip_addr local_ip, remote_ip; }; enum master_login_status { MASTER_LOGIN_STATUS_OK, MASTER_LOGIN_STATUS_INTERNAL_ERROR, /* user reached max. simultaneous connections */ MASTER_LOGIN_STATUS_MAX_CONNECTIONS }; struct master_login_reply { unsigned int tag; enum master_login_status status; }; #endif