Index: UPGRADE.txt =================================================================== --- UPGRADE.txt (revision 7831) +++ UPGRADE.txt (working copy) @@ -21,6 +21,8 @@ * app_read has been updated to use the newer options codes, using "skip" or "noanswer" will not work. Use s or n. Also there is a new feature i, for using indication tones, so typing in skip would give you unexpected results. + + Variables: * The builtin variables ${CALLERID}, ${CALLERIDNAME}, ${CALLERIDNUM}, @@ -29,6 +31,17 @@ functions. You are encouraged to move towards the associated dialplan function, as these variables will be removed in a future release. + +Caller ID: + +* Previously, CallerID Presentation would stay the same after any component of + CallerID was set. This was confusing to some users, as a Restricted number + would stay restricted. Therefore, we are now resetting the Restricted flag + of the CallerID Presentation whenever a component of CallerID is set. You + will need to call SetCallerPres after setting a component of CallerID if you + need to restore a restricted field (this should be rare). + + The SIP channel: * The "incominglimit" setting is replaced by the "call-limit" setting in sip.conf. Index: funcs/func_callerid.c =================================================================== --- funcs/func_callerid.c (revision 7831) +++ funcs/func_callerid.c (working copy) @@ -60,8 +60,9 @@ ast_log(LOG_ERROR, "Unknown callerid data type.\n"); } } else { + int found = 1; if (!strncasecmp("all", data, 3)) { - snprintf(buf, len, "\"%s\" <%s>", chan->cid.cid_name ? chan->cid.cid_name : "", chan->cid.cid_num ? chan->cid.cid_num : ""); + snprintf(buf, len, "\"%s\" <%s>", chan->cid.cid_name ? chan->cid.cid_name : "", chan->cid.cid_num ? chan->cid.cid_num : ""); } else if (!strncasecmp("name", data, 4)) { if (chan->cid.cid_name) { ast_copy_string(buf, chan->cid.cid_name, len); @@ -84,7 +85,11 @@ } } else { ast_log(LOG_ERROR, "Unknown callerid data type.\n"); + found = 0; } + if (found && (chan->cid.cid_pres & AST_PRES_RESTRICTED)) { + chan->cid.cid_pres &= ~AST_PRES_RESTRICTED; + } } return buf; }