[Asterisk-cvs] asterisk acl.c, 1.27.2.3, 1.27.2.4 asterisk.c,
1.125.2.6, 1.125.2.7 logger.c, 1.45.2.5, 1.45.2.6
russell at lists.digium.com
russell at lists.digium.com
Sun May 15 11:50:04 CDT 2005
Update of /usr/cvsroot/asterisk
In directory mongoose.digium.com:/tmp/cvs-serv16483
Modified Files:
Tag: v1-0
acl.c asterisk.c logger.c
Log Message:
ensure that calls to gethostbyname are null terminated,
also use MAXHOSTNAMELEN where appropriate (bug #4198) (bug #4212)
Index: acl.c
===================================================================
RCS file: /usr/cvsroot/asterisk/acl.c,v
retrieving revision 1.27.2.3
retrieving revision 1.27.2.4
diff -u -d -r1.27.2.3 -r1.27.2.4
--- acl.c 21 Feb 2005 03:57:26 -0000 1.27.2.3
+++ acl.c 15 May 2005 15:55:30 -0000 1.27.2.4
@@ -381,7 +381,7 @@
int ast_find_ourip(struct in_addr *ourip, struct sockaddr_in bindaddr)
{
- char ourhost[256];
+ char ourhost[MAXHOSTNAMELEN]="";
struct ast_hostent ahp;
struct hostent *hp;
struct in_addr saddr;
@@ -392,7 +392,7 @@
return 0;
}
/* try to use our hostname */
- if (gethostname(ourhost, sizeof(ourhost))) {
+ if (gethostname(ourhost, sizeof(ourhost)-1)) {
ast_log(LOG_WARNING, "Unable to get hostname\n");
} else {
hp = ast_gethostbyname(ourhost, &ahp);
Index: asterisk.c
===================================================================
RCS file: /usr/cvsroot/asterisk/asterisk.c,v
retrieving revision 1.125.2.6
retrieving revision 1.125.2.7
diff -u -d -r1.125.2.6 -r1.125.2.7
--- asterisk.c 5 Apr 2005 09:37:02 -0000 1.125.2.6
+++ asterisk.c 15 May 2005 15:55:30 -0000 1.125.2.7
@@ -264,12 +264,12 @@
static void *netconsole(void *vconsole)
{
struct console *con = vconsole;
- char hostname[256];
+ char hostname[MAXHOSTNAMELEN]="";
char tmp[512];
int res;
struct pollfd fds[2];
- if (gethostname(hostname, sizeof(hostname)))
+ if (gethostname(hostname, sizeof(hostname)-1))
strncpy(hostname, "<Unknown>", sizeof(hostname)-1);
snprintf(tmp, sizeof(tmp), "%s/%d/%s\n", hostname, ast_mainpid, ASTERISK_VERSION);
fdprint(con->fd, tmp);
@@ -964,7 +964,7 @@
memset(prompt, 0, sizeof(prompt));
while (*t != '\0' && *p < sizeof(prompt)) {
if (*t == '%') {
- char hostname[256];
+ char hostname[MAXHOSTNAMELEN]="";
int i;
struct timeval tv;
struct tm tm;
@@ -1572,7 +1572,7 @@
{
int c;
char filename[80] = "";
- char hostname[256];
+ char hostname[MAXHOSTNAMELEN]="";
char tmp[80];
char * xarg = NULL;
int x;
@@ -1597,7 +1597,7 @@
option_remote++;
option_nofork++;
}
- if (gethostname(hostname, sizeof(hostname)))
+ if (gethostname(hostname, sizeof(hostname)-1))
strncpy(hostname, "<Unknown>", sizeof(hostname)-1);
ast_mainpid = getpid();
ast_ulaw_init();
Index: logger.c
===================================================================
RCS file: /usr/cvsroot/asterisk/logger.c,v
retrieving revision 1.45.2.5
retrieving revision 1.45.2.6
diff -u -d -r1.45.2.5 -r1.45.2.6
--- logger.c 5 Apr 2005 10:12:24 -0000 1.45.2.5
+++ logger.c 15 May 2005 15:55:30 -0000 1.45.2.6
@@ -65,7 +65,7 @@
struct msglist *next;
} *list = NULL, *last = NULL;
-static char hostname[256];
+static char hostname[MAXHOSTNAMELEN];
struct logchannel {
int logmask;
@@ -230,7 +230,7 @@
ast_mutex_lock(&loglock);
if ((s = ast_variable_retrieve(cfg, "general", "appendhostname"))) {
if(ast_true(s)) {
- if(gethostname(hostname, sizeof(hostname))) {
+ if(gethostname(hostname, sizeof(hostname)-1)) {
strncpy(hostname, "unknown", sizeof(hostname)-1);
ast_log(LOG_WARNING, "What box has no hostname???\n");
}
More information about the svn-commits
mailing list