From: Timo Sirainen Date: Mon, 24 Oct 2016 17:16:57 +0000 (+0300) Subject: director: Make sure IP address parsing works in DIRECTOR-ADD/REMOVE X-Git-Tag: 2.2.27~300 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b7d3b04efff252c1ffe5fada92717366f6965391;p=thirdparty%2Fdovecot%2Fcore.git director: Make sure IP address parsing works in DIRECTOR-ADD/REMOVE We were passing the entire string through to net_addr2ip(). It seems that inet_aton() stops at whitespace though, so this wasn't actually causing errors at least on Linux. --- diff --git a/src/director/doveadm-connection.c b/src/director/doveadm-connection.c index 5a29e6e218..926f4ebce4 100644 --- a/src/director/doveadm-connection.c +++ b/src/director/doveadm-connection.c @@ -203,7 +203,7 @@ doveadm_cmd_director_add(struct doveadm_connection *conn, const char *line) args = t_strsplit_tab(line); if (args[0] == NULL || - net_addr2ip(line, &ip) < 0 || + net_addr2ip(args[0], &ip) < 0 || (args[1] != NULL && net_str2port(args[1], &port) < 0)) { i_error("doveadm sent invalid DIRECTOR-ADD parameters"); return -1; @@ -227,7 +227,7 @@ doveadm_cmd_director_remove(struct doveadm_connection *conn, const char *line) args = t_strsplit_tab(line); if (args[0] == NULL || - net_addr2ip(line, &ip) < 0 || + net_addr2ip(args[0], &ip) < 0 || (args[1] != NULL && net_str2port(args[1], &port) < 0)) { i_error("doveadm sent invalid DIRECTOR-REMOVE parameters"); return -1;