diff --git a/src/mod/endpoints/mod_sofia/sofia.c b/src/mod/endpoints/mod_sofia/sofia.c index 7a26b85c1c..d3a00207ce 100644 --- a/src/mod/endpoints/mod_sofia/sofia.c +++ b/src/mod/endpoints/mod_sofia/sofia.c @@ -1163,13 +1163,14 @@ switch_status_t reconfig_sofia(sofia_profile_t *profile) profile->pflags &= ~PFLAG_SECURE; } } else if (!strcasecmp(var, "multiple-registrations")) { - if (!strcasecmp(val, "contact")) { + if (!strcasecmp(val, "call-id")) { + profile->pflags |= PFLAG_MULTIREG; + } else if (!strcasecmp(val, "contact") || switch_true(val)) { profile->pflags |= PFLAG_MULTIREG; profile->pflags |= PFLAG_MULTIREG_CONTACT; - } else if (switch_true(val)) { - profile->pflags |= PFLAG_MULTIREG; } else { profile->pflags &= ~PFLAG_MULTIREG; + profile->pflags &= ~PFLAG_MULTIREG_CONTACT; } } else if (!strcasecmp(var, "supress-cng") || !strcasecmp(var, "suppress-cng")) { if (switch_true(val)) { @@ -1622,13 +1623,14 @@ switch_status_t config_sofia(int reload, char *profile_name) profile->pflags |= PFLAG_SECURE; } } else if (!strcasecmp(var, "multiple-registrations")) { - if (!strcasecmp(val, "contact")) { + if (!strcasecmp(val, "call-id")) { + profile->pflags |= PFLAG_MULTIREG; + } else if (!strcasecmp(val, "contact") || switch_true(val)) { profile->pflags |= PFLAG_MULTIREG; profile->pflags |= PFLAG_MULTIREG_CONTACT; - } else if (switch_true(val)) { - profile->pflags |= PFLAG_MULTIREG; } else { profile->pflags &= ~PFLAG_MULTIREG; + profile->pflags &= ~PFLAG_MULTIREG_CONTACT; } } else if (!strcasecmp(var, "supress-cng") || !strcasecmp(var, "suppress-cng")) { if (switch_true(val)) {