Merged revisions 11609 via svnmerge from

https://origsvn.digium.com/svn/asterisk/branches/1.2

........
r11609 | tilghman | 2006-03-02 16:26:30 -0600 (Thu, 02 Mar 2006) | 2 lines

Bug 6637 - Fixes for Solaris

........


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@11610 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Tilghman Lesher 2006-03-02 22:27:50 +00:00
parent 47881bd74f
commit 81811a3a27
1 changed files with 8 additions and 5 deletions

View File

@ -82,6 +82,9 @@
#if defined(__FreeBSD__) || defined( __NetBSD__ ) || defined(SOLARIS) #if defined(__FreeBSD__) || defined( __NetBSD__ ) || defined(SOLARIS)
#include <netdb.h> #include <netdb.h>
#if defined(SOLARIS)
extern int daemon(int, int); /* defined in libresolv of all places */
#endif
#endif #endif
#include "asterisk.h" #include "asterisk.h"
@ -2160,7 +2163,7 @@ int main(int argc, char *argv[])
exit(1); exit(1);
} }
if (setgid(gr->gr_gid)) { if (setgid(gr->gr_gid)) {
ast_log(LOG_WARNING, "Unable to setgid to %d (%s)\n", gr->gr_gid, rungroup); ast_log(LOG_WARNING, "Unable to setgid to %d (%s)\n", (int)gr->gr_gid, rungroup);
exit(1); exit(1);
} }
if (setgroups(0, NULL)) { if (setgroups(0, NULL)) {
@ -2180,7 +2183,7 @@ int main(int argc, char *argv[])
} }
if (!rungroup) { if (!rungroup) {
if (setgid(pw->pw_gid)) { if (setgid(pw->pw_gid)) {
ast_log(LOG_WARNING, "Unable to setgid to %d!\n", pw->pw_gid); ast_log(LOG_WARNING, "Unable to setgid to %d!\n", (int)pw->pw_gid);
exit(1); exit(1);
} }
if (initgroups(pw->pw_name, pw->pw_gid)) { if (initgroups(pw->pw_name, pw->pw_gid)) {
@ -2189,7 +2192,7 @@ int main(int argc, char *argv[])
} }
} }
if (setuid(pw->pw_uid)) { if (setuid(pw->pw_uid)) {
ast_log(LOG_WARNING, "Unable to setuid to %d (%s)\n", pw->pw_uid, runuser); ast_log(LOG_WARNING, "Unable to setuid to %d (%s)\n", (int)pw->pw_uid, runuser);
exit(1); exit(1);
} }
setenv("ASTERISK_ALREADY_NONROOT","yes",1); setenv("ASTERISK_ALREADY_NONROOT","yes",1);
@ -2254,7 +2257,7 @@ int main(int argc, char *argv[])
unlink(ast_config_AST_PID); unlink(ast_config_AST_PID);
f = fopen(ast_config_AST_PID, "w"); f = fopen(ast_config_AST_PID, "w");
if (f) { if (f) {
fprintf(f, "%d\n", getpid()); fprintf(f, "%d\n", (int)getpid());
fclose(f); fclose(f);
} else } else
ast_log(LOG_WARNING, "Unable to open pid file '%s': %s\n", ast_config_AST_PID, strerror(errno)); ast_log(LOG_WARNING, "Unable to open pid file '%s': %s\n", ast_config_AST_PID, strerror(errno));
@ -2265,7 +2268,7 @@ int main(int argc, char *argv[])
unlink(ast_config_AST_PID); unlink(ast_config_AST_PID);
f = fopen(ast_config_AST_PID, "w"); f = fopen(ast_config_AST_PID, "w");
if (f) { if (f) {
fprintf(f, "%d\n", getpid()); fprintf(f, "%d\n", (int)getpid());
fclose(f); fclose(f);
} else } else
ast_log(LOG_WARNING, "Unable to open pid file '%s': %s\n", ast_config_AST_PID, strerror(errno)); ast_log(LOG_WARNING, "Unable to open pid file '%s': %s\n", ast_config_AST_PID, strerror(errno));