/* Copyright (c) 2005-2018 Dovecot authors, see the included COPYING file */
#include "lib.h"
#include "buffer.h"
#include "settings-parser.h"
#include "service-settings.h"
#include "mail-storage-settings.h"
#include "pop3-settings.h"
#include <stddef.h>
#include <unistd.h>
const char **error_r);
/* <settings checks> */
};
};
};
/* </settings checks> */
.name = "pop3",
.protocol = "pop3",
.type = "",
.executable = "pop3",
.user = "",
.group = "",
.privileged_group = "",
.extra_groups = "$default_internal_group",
.chroot = "",
.process_min_avail = 0,
.process_limit = 1024,
.client_limit = 1,
.service_count = 1,
.idle_kill = 0,
.unix_listeners = { { &pop3_unix_listeners_buf,
sizeof(pop3_unix_listeners[0]) } },
};
};
.rawlog_dir = "",
.pop3_save_uidl = FALSE,
.pop3_client_workarounds = "",
.pop3_logout_format = "top=%t/%p, retr=%r/%b, del=%d/%m, size=%s",
.pop3_uidl_duplicates = "allow:rename",
.pop3_deleted_flag = "",
.pop3_delete_type = "default:expunge:flag"
};
};
.module_name = "pop3",
.struct_size = sizeof(struct pop3_settings),
};
/* <settings checks> */
struct pop3_client_workaround_list {
const char *name;
};
{ "outlook-no-nuls", WORKAROUND_OUTLOOK_NO_NULS },
{ "oe-ns-eoh", WORKAROUND_OE_NS_EOH },
{ NULL, 0 }
};
static int
const char **error_r)
{
const char *const *str;
break;
}
}
"Unknown workaround: %s", *str);
return -1;
}
}
return 0;
}
static bool
{
return FALSE;
else
*error_r = "pop3_delete_type=flag, but pop3_deleted_flag not set";
return FALSE;
}
} else {
return FALSE;
}
return TRUE;
}
/* </settings checks> */