mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
Merged revisions 45595 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r45595 | file | 2006-10-18 17:03:34 -0400 (Wed, 18 Oct 2006) | 2 lines Don't modify things if we are using vfork as this is very bad and may cause unexpected behavior (issue #7970 reported by Nick Gavrikov) ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@45596 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -643,7 +643,9 @@ void ast_unreplace_sigchld(void)
|
|||||||
int ast_safe_system(const char *s)
|
int ast_safe_system(const char *s)
|
||||||
{
|
{
|
||||||
pid_t pid;
|
pid_t pid;
|
||||||
|
#ifdef HAVE_WORKING_FORK
|
||||||
int x;
|
int x;
|
||||||
|
#endif
|
||||||
int res;
|
int res;
|
||||||
struct rusage rusage;
|
struct rusage rusage;
|
||||||
int status;
|
int status;
|
||||||
@@ -658,11 +660,13 @@ int ast_safe_system(const char *s)
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
if (pid == 0) {
|
if (pid == 0) {
|
||||||
|
#ifdef HAVE_WORKING_FORK
|
||||||
if (ast_opt_high_priority)
|
if (ast_opt_high_priority)
|
||||||
ast_set_priority(0);
|
ast_set_priority(0);
|
||||||
/* Close file descriptors and launch system command */
|
/* Close file descriptors and launch system command */
|
||||||
for (x = STDERR_FILENO + 1; x < 4096; x++)
|
for (x = STDERR_FILENO + 1; x < 4096; x++)
|
||||||
close(x);
|
close(x);
|
||||||
|
#endif
|
||||||
execl("/bin/sh", "/bin/sh", "-c", s, (char *) NULL);
|
execl("/bin/sh", "/bin/sh", "-c", s, (char *) NULL);
|
||||||
exit(1);
|
exit(1);
|
||||||
} else if (pid > 0) {
|
} else if (pid > 0) {
|
||||||
|
Reference in New Issue
Block a user