scottmac                Mon May 14 14:38:29 2007 UTC

  Modified files:              
    /php-src/ext/standard       dns.c 
    /php-src/ext/standard/tests/network bug41347.phpt 
  Log:
  MFB: Fixed bug #41347 (checkdnsrr() segfaults on empty hostname).
  
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/dns.c?r1=1.84&r2=1.85&diff_format=u
Index: php-src/ext/standard/dns.c
diff -u php-src/ext/standard/dns.c:1.84 php-src/ext/standard/dns.c:1.85
--- php-src/ext/standard/dns.c:1.84     Sat Feb 24 16:25:55 2007
+++ php-src/ext/standard/dns.c  Mon May 14 14:38:29 2007
@@ -18,7 +18,7 @@
    +----------------------------------------------------------------------+
  */
 
-/* $Id: dns.c,v 1.84 2007/02/24 16:25:55 helly Exp $ */
+/* $Id: dns.c,v 1.85 2007/05/14 14:38:29 scottmac Exp $ */
 
 /* {{{ includes */
 #include "php.h"
@@ -263,6 +263,12 @@
                return;
        }
 
+       if (hostname_len == 0)
+       {
+               php_error_docref(NULL TSRMLS_CC, E_WARNING, "Host cannot be 
empty");
+               RETURN_FALSE;
+       }
+
        if (rectype) {
                     if (!strcasecmp("A",     rectype)) type = T_A;
                else if (!strcasecmp("NS",    rectype)) type = DNS_T_NS;
http://cvs.php.net/viewvc.cgi/php-src/ext/standard/tests/network/bug41347.phpt?r1=1.1&r2=1.2&diff_format=u
Index: php-src/ext/standard/tests/network/bug41347.phpt
diff -u /dev/null php-src/ext/standard/tests/network/bug41347.phpt:1.2
--- /dev/null   Mon May 14 14:38:29 2007
+++ php-src/ext/standard/tests/network/bug41347.phpt    Mon May 14 14:38:29 2007
@@ -0,0 +1,15 @@
+--TEST--
+dns_check_record() segfault with empty host
+--SKIPIF--
+<?php
+if (substr(PHP_OS, 0, 3) == 'WIN') {
+    die('No windows support');
+}
+?>
+--FILE--
+<?php
+var_dump(dns_check_record(''));
+?>
+--EXPECTF--
+Warning: dns_check_record(): Host cannot be empty in %s on line %d
+bool(false)

-- 
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to