cvs: pear /Net_DNS/DNS Resolver.php
| From: | Marco Kaiser | Date: | Wed, 01 Mar 2006 10:49:23 +0000 |
| Subject: | cvs: pear /Net_DNS/DNS Resolver.php | ||
| Groups: | php.pear.cvs | ||
| Request: | Send a blank email to pear-cvs+get-38778@lists.php.net to get a copy of this message | ||
bate Wed Mar 1 10:49:23 2006 UTC
Modified files:
/pear/Net_DNS/DNS Resolver.php
Log:
bugfixed #6927
http://cvs.php.net/viewcvs.cgi/pear/Net_DNS/DNS/Resolver.php?r1=1.29&r2=1.30&diff_format=u
Index: pear/Net_DNS/DNS/Resolver.php
diff -u pear/Net_DNS/DNS/Resolver.php:1.29 pear/Net_DNS/DNS/Resolver.php:1.30
--- pear/Net_DNS/DNS/Resolver.php:1.29 Thu Dec 1 09:36:31 2005
+++ pear/Net_DNS/DNS/Resolver.php Wed Mar 1 10:49:22 2006
@@ -240,7 +240,7 @@
/* class constructor - Net_DNS_Resolver() {{{ */
/**
* Initializes the Resolver Object
- *
+ *
* @return Net_DNS_Resolver
*/
function Net_DNS_Resolver($defaults = array())
@@ -318,35 +318,41 @@
*/
function read_config($file)
{
- if (! ($f = fopen($file, 'r'))) {
- $this->error = "can't open $file";
- }
-
- while (! feof($f)) {
- $line = chop(fgets($f, 10240));
- $line = ereg_replace('(.*)[;#].*', '\\1', $line);
- if (ereg("^[ \t]*$", $line, $regs)) {
- continue;
- }
- ereg("^[ \t]*([^ \t]+)[ \t]+([^ \t]+)", $line, $regs);
- $option = $regs[1];
- $value = $regs[2];
-
- switch ($option) {
- case 'domain':
- $this->domain = $regs[2];
- break;
- case 'search':
- $this->searchlist[count($this->searchlist)] = $regs[2];
- break;
- case 'nameserver':
- foreach (split(' ', $regs[2]) as $ns) {
- $this->nameservers[count($this->nameservers)] = $ns;
- }
- break;
- }
- }
- fclose($f);
+ if (is_readable($file)) {
+ if (! ($f = fopen($file, 'r'))) {
+ $this->error = "can't open $file";
+ }
+ }
+
+ if (!is_resource($f)) {
+ $this->error = "can't open $file";
+ } else {
+ while (! feof($f)) {
+ $line = chop(fgets($f, 10240));
+ $line = ereg_replace('(.*)[;#].*', '\\1', $line);
+ if (ereg("^[ \t]*$", $line, $regs)) {
+ continue;
+ }
+ ereg("^[ \t]*([^ \t]+)[ \t]+([^ \t]+)", $line, $regs);
+ $option = $regs[1];
+ $value = $regs[2];
+
+ switch ($option) {
+ case 'domain':
+ $this->domain = $regs[2];
+ break;
+ case 'search':
+ $this->searchlist[count($this->searchlist)] = $regs[2];
+ break;
+ case 'nameserver':
+ foreach (split(' ', $regs[2]) as $ns) {
+ $this->nameservers[count($this->nameservers)] = $ns;
+ }
+ break;
+ }
+ }
+ fclose($f);
+ }
}
/* }}} */