s3:smbd: simplify maxentries calculation in reply_search()
authorStefan Metzmacher <metze@samba.org>
Wed, 5 Mar 2014 13:00:40 +0000 (14:00 +0100)
committerJeremy Allison <jra@samba.org>
Wed, 5 Mar 2014 18:49:47 +0000 (10:49 -0800)
Using helper variables make it much easier to understand.

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
source3/smbd/reply.c

index b2d3f44b22058f12100a49a3f596d23b2e9d9106..a334490f2429e77ba38357945befa241d5f4f9f0 100644 (file)
@@ -1698,11 +1698,10 @@ void reply_search(struct smb_request *req)
                }
        } else {
                unsigned int i;
-               maxentries = MIN(
-                       maxentries,
-                       ((BUFFER_SIZE -
-                         ((uint8 *)smb_buf(req->outbuf) + 3 - req->outbuf))
-                        /DIR_STRUCT_SIZE));
+               size_t hdr_size = ((uint8_t *)smb_buf(req->outbuf) + 3 - req->outbuf);
+               size_t available_space = BUFFER_SIZE - hdr_size;
+
+               maxentries = MIN(maxentries, available_space/DIR_STRUCT_SIZE);
 
                DEBUG(8,("dirpath=<%s> dontdescend=<%s>\n",
                         directory,lp_dont_descend(ctx, SNUM(conn))));