summaryrefslogtreecommitdiffstats
path: root/source/nmbd
diff options
context:
space:
mode:
authorJeremy Allison <jra@samba.org>2006-03-06 17:47:21 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 11:10:57 -0500
commit0f1dffb2f2ce5ace1b3216f578ab115c976624c7 (patch)
tree733374c0d54ea86fff4d274e9040b5aa4b7df31b /source/nmbd
parent2f6cf810eae124820a073258ffe62aace7a92d9c (diff)
downloadsamba-0f1dffb2f2ce5ace1b3216f578ab115c976624c7.tar.gz
samba-0f1dffb2f2ce5ace1b3216f578ab115c976624c7.tar.xz
samba-0f1dffb2f2ce5ace1b3216f578ab115c976624c7.zip
r13875: Fix coverity bug #148. Deref of rrec before NULL check.
Jeremy.
Diffstat (limited to 'source/nmbd')
-rw-r--r--source/nmbd/nmbd_winsproxy.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/source/nmbd/nmbd_winsproxy.c b/source/nmbd/nmbd_winsproxy.c
index d6dc6261c84..a31eb1e2a62 100644
--- a/source/nmbd/nmbd_winsproxy.c
+++ b/source/nmbd/nmbd_winsproxy.c
@@ -49,7 +49,12 @@ static void wins_proxy_name_query_request_success( struct subnet_record *subrec,
nb_flags = get_nb_flags( rrec->rdata );
- num_ips = rrec->rdlength / 6;
+ if (rrec) {
+ num_ips = rrec->rdlength / 6;
+ } else {
+ num_ips = 0;
+ }
+
if(num_ips == 0) {
DEBUG(0,("wins_proxy_name_query_request_success: Invalid number of IP records (0) \
returned for name %s.\n", nmb_namestr(nmbname) ));
@@ -71,7 +76,7 @@ returned for name %s.\n", nmb_namestr(nmbname) ));
/* Add the queried name to the original subnet as a WINS_PROXY_NAME. */
- if(rrec == PERMANENT_TTL) {
+ if(rrec && (rrec == PERMANENT_TTL)) {
ttl = lp_max_ttl();
}