diff -ur jabberd14-1.6.1.1.orig/jabberd/lib/xmlnode.cc jabberd14-1.6.1.1/jabberd/lib/xmlnode.cc --- jabberd14-1.6.1.1.orig/jabberd/lib/xmlnode.cc 2007-04-07 22:43:18.000000000 +0300 +++ jabberd14-1.6.1.1/jabberd/lib/xmlnode.cc 2009-08-09 20:42:19.000000000 +0300 @@ -910,8 +910,8 @@ } /* separate this step from the next one, and check for a predicate in this step */ - start_predicate = strchr(path, '['); - next_step = strchr(path, '/'); + start_predicate = const_cast (strchr(path, '[')); + next_step = const_cast (strchr(path, '/')); if (start_predicate == NULL && next_step == NULL) { this_step = pstrdup(p, path); } else if (start_predicate == NULL || start_predicate > next_step && next_step != NULL) { @@ -1833,7 +1833,7 @@ if (lang != NULL && strchr(lang, '-') != NULL) { snprintf(general_lang, sizeof(general_lang), "%s", lang); if (strchr(lang, '-') != NULL) { - strchr(lang, '-')[0] = 0; + const_cast (strchr(lang, '-'))[0] = 0; } else { general_lang[0] = 0; } diff -ur jabberd14-1.6.1.1.orig/jabberd/log.cc jabberd14-1.6.1.1/jabberd/log.cc --- jabberd14-1.6.1.1.orig/jabberd/log.cc 2007-07-20 16:56:59.000000000 +0300 +++ jabberd14-1.6.1.1/jabberd/log.cc 2009-08-09 20:47:12.000000000 +0300 @@ -86,7 +86,7 @@ char *pos, c = '\0'; if(zone != NULL && debug__zones != NULL) { - pos = strchr(zone,'.'); + pos = const_cast (strchr(zone,'.')); if(pos != NULL) { c = *pos;