]> www.infradead.org Git - users/dwmw2/openconnect.git/commitdiff
Don't segfault when search domain list is empty (and thus `domains->pos == 0`)
authorDaniel Lenski <dlenski@gmail.com>
Sat, 6 Oct 2018 04:36:38 +0000 (21:36 -0700)
committerDavid Woodhouse <dwmw2@infradead.org>
Sat, 6 Oct 2018 08:13:45 +0000 (08:13 +0000)
Signed-off-by: Daniel Lenski <dlenski@gmail.com>
gpst.c

diff --git a/gpst.c b/gpst.c
index d0fb0b3b1e2172e4d25e29637eb6ee3f220da747..cae4e4f841e576313ed490b124094f431b7c58ad 100644 (file)
--- a/gpst.c
+++ b/gpst.c
@@ -509,7 +509,7 @@ static int gpst_parse_config_xml(struct openconnect_info *vpninfo, xmlNode *xml_
                        for (member = xml_node->children; member; member=member->next)
                                if (!xmlnode_get_val(member, "member", &s))
                                        buf_append(domains, "%s ", s);
-                       if (buf_error(domains) == 0) {
+                       if (buf_error(domains) == 0 && domains->pos > 0) {
                                domains->data[domains->pos-1] = '\0';
                                vpninfo->ip_info.domain = add_option(vpninfo, "search", &domains->data);
                        }