const char *p = strchr(filter->filter_name, '/');
i_assert(p != NULL);
const char *filter_key = t_strdup_until(filter->filter_name, p);
- if (strcmp(filter_key, SETTINGS_EVENT_MAILBOX_NAME_WITH_PREFIX) == 0)
- filter_key = SETTINGS_EVENT_MAILBOX_NAME_WITHOUT_PREFIX;
/* the filter_name is used by settings_get_filter() for
finding a specific filter without wildcards messing
up the lookups. */
if (last_filter_value != NULL) {
i_assert(last_filter_key != NULL);
const char *key_prefix = last_filter_key;
- /* last_filter_key was already converted to "mailbox_subname".
- But for setting name auto-prefixing it needs to be "mailbox"
- again. */
- if (strcmp(key_prefix, SETTINGS_EVENT_MAILBOX_NAME_WITHOUT_PREFIX) == 0)
- key_prefix = SETTINGS_EVENT_MAILBOX_NAME_WITH_PREFIX;
/* Try filter/name/key -> filter_name_key, and fallback to
filter_key. Do this before the non-prefixed check, so e.g.
inet_listener/imap/ssl won't try to change the global ssl
return -1;
}
last_filter_key = part;
- if (strcmp(last_filter_key, SETTINGS_EVENT_MAILBOX_NAME_WITH_PREFIX) == 0)
- last_filter_key = SETTINGS_EVENT_MAILBOX_NAME_WITHOUT_PREFIX;
last_filter_value = t_strdup_until(value, p);
str_printfa(filter_string, SETTINGS_EVENT_FILTER_NAME"=\"%s/%s\"",
last_filter_key, wildcard_str_escape(settings_section_escape(last_filter_value)));
filter_key++;
else
filter_key = array_set->orig_key;
- if (strcmp(filter_key, SETTINGS_EVENT_MAILBOX_NAME_WITH_PREFIX) == 0)
- filter_key = SETTINGS_EVENT_MAILBOX_NAME_WITHOUT_PREFIX;
/* Build the final event filter. */
const char *filter_string = t_strdup_printf(
event_set_ptr(event, SETTINGS_EVENT_FILTER_NAME, "auth_policy"); */
#define SETTINGS_EVENT_FILTER_NAME "settings_filter_name"
-/* The "mailbox" event field contains the full mailbox with namespace prefix.
- However, for settings we need to use the mailbox name without the namespace
- prefix. Internally convert the "mailbox" named filters to "mailbox_subname",
- so the matching works for the event. */
-#define SETTINGS_EVENT_MAILBOX_NAME_WITH_PREFIX "mailbox"
-#define SETTINGS_EVENT_MAILBOX_NAME_WITHOUT_PREFIX "mailbox_subname"
-
/* Set struct var_expand_params to be used for settings expansion. The struct is
expected to be accessible until the event is freed or the params is removed
from the event. Usage:
p_array_init(&actx->all_ns_box_sets, ctx->pool, 16);
for (i = 0; i < count; i++) {
if (settings_get_filter(ns->list->event,
- SETTINGS_EVENT_MAILBOX_NAME_WITHOUT_PREFIX, box_names[i],
+ "mailbox", box_names[i],
&mailbox_setting_parser_info, 0,
&box_set, &error) < 0) {
mailbox_list_set_critical(ctx->list, "%s", error);
array_foreach_elem(&ns->set->mailboxes, box_name) {
if (settings_get_filter(mailbox_list_get_event(ns->list),
- SETTINGS_EVENT_MAILBOX_NAME_WITHOUT_PREFIX, box_name,
+ "mailbox", box_name,
&mailbox_setting_parser_info, 0,
&box_set, &error) < 0) {
e_error(mailbox_list_get_event(ns->list), "%s", error);
SETTINGS_EVENT_NAMESPACE_NAME, ns->name);
array_foreach_elem(&ns->mailboxes, box_name) {
if (settings_get_filter(event,
- SETTINGS_EVENT_MAILBOX_NAME_WITHOUT_PREFIX,
- box_name,
+ "mailbox", box_name,
&mailbox_setting_parser_info, 0,
&box_set, &error) < 0) {
*error_r = t_strdup_printf(
const char *filter_name =
array_idx_elem(&list->ns->set->mailboxes, i);
settings_event_add_list_filter_name(event,
- SETTINGS_EVENT_MAILBOX_NAME_WITHOUT_PREFIX,
- filter_name);
+ "mailbox", filter_name);
}
}
event_add_category(event, &event_category_mailbox);
mailbox_settings_filters_add(event, list, vname);
- event_add_str(event, SETTINGS_EVENT_MAILBOX_NAME_WITH_PREFIX, vname);
- event_add_str(event, SETTINGS_EVENT_MAILBOX_NAME_WITHOUT_PREFIX,
- mailbox_get_name_without_prefix(list->ns, vname));
+ event_add_str(event, "mailbox", vname);
event_add_str(event, SETTINGS_EVENT_NAMESPACE_NAME, list->ns->set->name);
settings_event_add_list_filter_name(event,
SETTINGS_EVENT_NAMESPACE_NAME, list->ns->set->name);
{
struct trash_user *tuser = TRASH_USER_CONTEXT_REQUIRE(ns->user);
const struct trash_settings *trash_set;
- if (settings_try_get_filter(ns->list->event,
- SETTINGS_EVENT_MAILBOX_NAME_WITHOUT_PREFIX,
- box_name, &trash_setting_parser_info, 0,
+ if (settings_try_get_filter(ns->list->event, "mailbox", box_name,
+ &trash_setting_parser_info, 0,
&trash_set, error_r) < 0)
return -1;
unsigned int trash_priority = trash_set->trash_priority;
return 0;
const struct mailbox_settings *box_set;
- if (settings_try_get_filter(ns->list->event,
- SETTINGS_EVENT_MAILBOX_NAME_WITHOUT_PREFIX,
- box_name, &mailbox_setting_parser_info, 0,
+ if (settings_try_get_filter(ns->list->event, "mailbox", box_name,
+ &mailbox_setting_parser_info, 0,
&box_set, error_r) < 0)
return -1;