diff options
author | Igor Mammedov <niallain@gmail.com> | 2008-05-20 05:02:01 -0400 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2008-05-20 23:49:00 -0400 |
commit | 5651ced3ab196b5e7dc485c5777f210aa41e2d8d (patch) | |
tree | 9bc52a46726a6dcf7c4a7943ae092c7d56130e9a /fs/cifs/dns_resolve.c | |
parent | b9a3260f25ab5d2ba5c8b9508e7952848b9d704b (diff) |
Fix possible access to undefined memory region.
Signed-off-by: Igor Mammedov <niallain@gmail.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs/cifs/dns_resolve.c')
-rw-r--r-- | fs/cifs/dns_resolve.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/fs/cifs/dns_resolve.c b/fs/cifs/dns_resolve.c index 939e256f8497..f730ef35499e 100644 --- a/fs/cifs/dns_resolve.c +++ b/fs/cifs/dns_resolve.c | |||
@@ -134,10 +134,6 @@ dns_resolve_server_name_to_ip(const char *unc, char **ip_addr) | |||
134 | rkey = request_key(&key_type_dns_resolver, name, ""); | 134 | rkey = request_key(&key_type_dns_resolver, name, ""); |
135 | if (!IS_ERR(rkey)) { | 135 | if (!IS_ERR(rkey)) { |
136 | data = rkey->payload.data; | 136 | data = rkey->payload.data; |
137 | cFYI(1, ("%s: resolved: %s to %s", __func__, | ||
138 | rkey->description, | ||
139 | *ip_addr | ||
140 | )); | ||
141 | } else { | 137 | } else { |
142 | cERROR(1, ("%s: unable to resolve: %s", __func__, name)); | 138 | cERROR(1, ("%s: unable to resolve: %s", __func__, name)); |
143 | goto out; | 139 | goto out; |
@@ -150,6 +146,11 @@ skip_upcall: | |||
150 | if (*ip_addr) { | 146 | if (*ip_addr) { |
151 | memcpy(*ip_addr, data, len); | 147 | memcpy(*ip_addr, data, len); |
152 | (*ip_addr)[len] = '\0'; | 148 | (*ip_addr)[len] = '\0'; |
149 | if (!IS_ERR(rkey)) | ||
150 | cFYI(1, ("%s: resolved: %s to %s", __func__, | ||
151 | name, | ||
152 | *ip_addr | ||
153 | )); | ||
153 | rc = 0; | 154 | rc = 0; |
154 | } else { | 155 | } else { |
155 | rc = -ENOMEM; | 156 | rc = -ENOMEM; |