2cbbe9b4829adb184c83dbf780316f4144559054Stephan Bosch const struct setting_parser_info *user_set_info;
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Bosch struct mail_storage_service_user *service_user;
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Bosch /* IMAP URLAUTH context (RFC4467) for BURL (RFC4468) */
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Boschextern unsigned int submission_client_count;
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Boschstruct client *client_create(int fd_in, int fd_out,
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Bosch const char *session_id, struct mail_user *user,
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Bosch struct mail_storage_service_user *service_user,
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Bosch const unsigned char *pdata,
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Bosch unsigned int pdata_len);
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Boschvoid client_destroy(struct client *client, const char *prefix,
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Boschvoid client_disconnect(struct client *client, const char *prefix,
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Bosch const char *reason);
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Boschtypedef void (*client_input_callback_t)(struct client *context);
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Boschconst char *client_state_get_name(struct client *client);
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Boschbool client_proxy_is_ready(struct client *client);
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Boschbool client_proxy_is_disconnected(struct client *client);
2cbbe9b4829adb184c83dbf780316f4144559054Stephan Boschuoff_t client_get_max_mail_size(struct client *client);