mirror of
https://github.com/asterisk/asterisk.git
synced 2025-11-07 02:18:15 +00:00
Merged revisions 37419 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.2 ........ r37419 | kpfleming | 2006-07-12 08:54:10 -0500 (Wed, 12 Jul 2006) | 2 lines remove some more bad examples of using printf ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@37433 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
62
asterisk.c
62
asterisk.c
@@ -983,15 +983,9 @@ static int ast_tryconnect(void)
|
||||
Called by soft_hangup to interrupt the poll, read, or other
|
||||
system call. We don't actually need to do anything though.
|
||||
Remember: Cannot EVER ast_log from within a signal handler
|
||||
SLD: seems to be some pthread activity relating to the printf anyway:
|
||||
which is leading to a deadlock?
|
||||
*/
|
||||
static void urg_handler(int num)
|
||||
{
|
||||
#if 0
|
||||
if (option_debug > 2)
|
||||
printf("-- Asterisk Urgent handler\n");
|
||||
#endif
|
||||
signal(num, urg_handler);
|
||||
return;
|
||||
}
|
||||
@@ -1248,46 +1242,40 @@ static void consolehandler(char *s)
|
||||
{
|
||||
printf(term_end());
|
||||
fflush(stdout);
|
||||
|
||||
/* Called when readline data is available */
|
||||
if (s && !ast_all_zeros(s))
|
||||
if (!ast_all_zeros(s))
|
||||
ast_el_add_history(s);
|
||||
/* Give the console access to the shell */
|
||||
if (s) {
|
||||
/* The real handler for bang */
|
||||
if (s[0] == '!') {
|
||||
if (s[1])
|
||||
ast_safe_system(s+1);
|
||||
else
|
||||
ast_safe_system(getenv("SHELL") ? getenv("SHELL") : "/bin/sh");
|
||||
} else
|
||||
/* The real handler for bang */
|
||||
if (s[0] == '!') {
|
||||
if (s[1])
|
||||
ast_safe_system(s+1);
|
||||
else
|
||||
ast_safe_system(getenv("SHELL") ? getenv("SHELL") : "/bin/sh");
|
||||
} else
|
||||
ast_cli_command(STDOUT_FILENO, s);
|
||||
} else
|
||||
fprintf(stdout, "\nUse \"quit\" to exit\n");
|
||||
}
|
||||
|
||||
static int remoteconsolehandler(char *s)
|
||||
{
|
||||
int ret = 0;
|
||||
|
||||
/* Called when readline data is available */
|
||||
if (s && !ast_all_zeros(s))
|
||||
if (!ast_all_zeros(s))
|
||||
ast_el_add_history(s);
|
||||
/* Give the console access to the shell */
|
||||
if (s) {
|
||||
/* The real handler for bang */
|
||||
if (s[0] == '!') {
|
||||
if (s[1])
|
||||
ast_safe_system(s+1);
|
||||
else
|
||||
ast_safe_system(getenv("SHELL") ? getenv("SHELL") : "/bin/sh");
|
||||
ret = 1;
|
||||
}
|
||||
if ((strncasecmp(s, "quit", 4) == 0 || strncasecmp(s, "exit", 4) == 0) &&
|
||||
(s[4] == '\0' || isspace(s[4]))) {
|
||||
quit_handler(0, 0, 0, 0);
|
||||
ret = 1;
|
||||
}
|
||||
} else
|
||||
fprintf(stdout, "\nUse \"quit\" to exit\n");
|
||||
/* The real handler for bang */
|
||||
if (s[0] == '!') {
|
||||
if (s[1])
|
||||
ast_safe_system(s+1);
|
||||
else
|
||||
ast_safe_system(getenv("SHELL") ? getenv("SHELL") : "/bin/sh");
|
||||
ret = 1;
|
||||
}
|
||||
if ((strncasecmp(s, "quit", 4) == 0 || strncasecmp(s, "exit", 4) == 0) &&
|
||||
(s[4] == '\0' || isspace(s[4]))) {
|
||||
quit_handler(0, 0, 0, 0);
|
||||
ret = 1;
|
||||
}
|
||||
|
||||
return ret;
|
||||
}
|
||||
@@ -2733,7 +2721,7 @@ int main(int argc, char *argv[])
|
||||
consolehandler((char *)buf);
|
||||
} else {
|
||||
if (write(STDOUT_FILENO, "\nUse EXIT or QUIT to exit the asterisk console\n",
|
||||
strlen("\nUse EXIT or QUIT to exit the asterisk console\n")) < 0) {
|
||||
strlen("\nUse EXIT or QUIT to exit the asterisk console\n")) < 0) {
|
||||
/* Whoa, stdout disappeared from under us... Make /dev/null's */
|
||||
int fd;
|
||||
fd = open("/dev/null", O_RDWR);
|
||||
|
||||
Reference in New Issue
Block a user