- Use systemname for realm in sip, if we have no configuration for realm

- Optionally send systemname in manager (cool when you have a manager proxy)
- Use systemname in CLI prompt


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@26884 65c4cc65-6c06-0410-ace0-fbb531ad65f3
1.4
Olle Johansson 19 years ago
parent 76347c8d31
commit 5237a0e06d

@ -1644,6 +1644,9 @@ static char *cli_prompt(EditLine *el)
}
break;
#endif
case 's': /* Asterisk system name (from asterisk.conf) */
strncat(p, ast_config_AST_SYSTEM_NAME, sizeof(prompt) - strlen(prompt) - 1);
break;
case 't': /* time */
memset(&tm, 0, sizeof(tm));
time(&ts);

@ -13260,7 +13260,10 @@ static int reload_config(enum channelreloadreason reason)
global_allowsubscribe = FALSE;
ast_copy_string(global_useragent, DEFAULT_USERAGENT, sizeof(global_useragent));
ast_copy_string(default_notifymime, DEFAULT_NOTIFYMIME, sizeof(default_notifymime));
ast_copy_string(global_realm, DEFAULT_REALM, sizeof(global_realm));
if (ast_strlen_zero(ast_config_AST_SYSTEM_NAME))
ast_copy_string(global_realm, DEFAULT_REALM, sizeof(global_realm));
else
ast_copy_string(global_realm, ast_config_AST_SYSTEM_NAME, sizeof(global_realm));
ast_copy_string(default_callerid, DEFAULT_CALLERID, sizeof(default_callerid));
compactheaders = DEFAULT_COMPACTHEADERS;
global_reg_timeout = DEFAULT_REGISTRATION_TIMEOUT;

@ -21,6 +21,7 @@
; default is 60 seconds.
;
[general]
displaysystemname = yes
enabled = no
;webenabled = yes
port = 5038

@ -32,7 +32,8 @@ allowoverlap=no ; Disable overlap dialing support. (Default is yes)
;allowtransfer=no ; Disable all transfers (unless enabled in peers or users)
; Default is enabled
;realm=mydomain.tld ; Realm for digest authentication
; defaults to "asterisk"
; defaults to "asterisk". If you set a system name in
; asterisk.conf, it defaults to that system name
; Realms MUST be globally unique according to RFC 3261
; Set this to your host name or domain name
bindport=5060 ; UDP Port to bind to (SIP standard port is 5060)

@ -8,6 +8,7 @@ You may include the following variables, that will be replaced by
the current value by Asterisk:
%d Date (year-month-date)
%s Asterisk system name (from asterisk.conf)
%h Full hostname
%H Short hostname
%t Time

@ -158,6 +158,7 @@ static struct mansession {
char inbuf[AST_MAX_MANHEADER_LEN];
int inlen;
int send_events;
int displaysystemname; /*!< Add system name to manager responses and events */
/* Queued events that we've not had the ability to send yet */
struct eventqent *eventq;
/* Timeout for ast_carefulwrite() */
@ -772,6 +773,14 @@ static int authenticate(struct mansession *s, struct message *m)
while (v) {
if (!strcasecmp(v->name, "secret")) {
password = v->value;
} else if (!strcasecmp(v->name, "displaysystemname")) {
if (ast_true(v->value)) {
if (ast_strlen_zero(ast_config_AST_SYSTEM_NAME)) {
s->displaysystemname = 1;
} else {
ast_log(LOG_ERROR, "Can't enable displaysystemname in manager.conf - no system name configured in asterisk.conf\n");
}
}
} else if (!strcasecmp(v->name, "permit") ||
!strcasecmp(v->name, "deny")) {
ha = ast_append_ha(v->name, v->value, ha);

Loading…
Cancel
Save