cvs: php-src /ext/standard dns.c
| From: | Sara Golemon | Date: | Fri, 19 Mar 2004 21:43:44 +0000 |
| Subject: | cvs: php-src /ext/standard dns.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-26730@lists.php.net to get a copy of this message | ||
pollita Fri Mar 19 16:43:44 2004 EDT
Modified files:
/php-src/ext/standard dns.c
Log:
Bug Fix #27657: TXT records longer than MAXHOSTNAMELEN cause segfaults.
http://cvs.php.net/diff.php/php-src/ext/standard/dns.c?r1=1.66&r2=1.67&ty=u
Index: php-src/ext/standard/dns.c
diff -u php-src/ext/standard/dns.c:1.66 php-src/ext/standard/dns.c:1.67
--- php-src/ext/standard/dns.c:1.66 Thu Jan 8 03:17:31 2004
+++ php-src/ext/standard/dns.c Fri Mar 19 16:42:29 2004
@@ -18,7 +18,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: dns.c,v 1.66 2004/01/08 08:17:31 andi Exp $ */
+/* $Id: dns.c,v 1.67 2004/03/19 21:42:29 pollita Exp $ */
/* {{{ includes */
#include "php.h"
@@ -400,12 +400,14 @@
break;
case T_TXT:
add_assoc_string(*subarray, "type", "TXT", 1);
- n = cp[0];
- for(i=1; i<=n; i++)
- name[i-1] = cp[i];
- name[i-1] = '\0';
+ n = cp[0];
+ tp = emalloc(n + 1);
+ for(i=1; i<=n; i++) {
+ tp[i-1] = cp[i];
+ }
+ tp[i-1] = '\0';
cp += dlen;
- add_assoc_string(*subarray, "txt", name, 1);
+ add_assoc_stringl(*subarray, "txt", tp, n, 0);
break;
case T_SOA:
add_assoc_string(*subarray, "type", "SOA", 1);