The branch, v3-5-test has been updated
       via  c940cad... Fix bug 7063 - Samba 3.4.5 on ubuntu 8.04 64 bit - Core 
dumps.
      from  d8d96fa... s3: Fix malformed require_membership_of_sid.

http://gitweb.samba.org/?p=samba.git;a=shortlog;h=v3-5-test


- Log -----------------------------------------------------------------
commit c940cadd00c4ea87e5988288bf241a46a57b9170
Author: Jeremy Allison <[email protected]>
Date:   Tue Feb 2 16:32:51 2010 -0800

    Fix bug 7063 - Samba 3.4.5 on ubuntu 8.04 64 bit - Core dumps.
    
    Reported and found by Martin Hochreiter <[email protected]>.
    Ensure we copy the right amount of registry data into the outgoing
    buffer.
    
    Jeremy.
    (cherry picked from commit 110a6f29f0d130753419d5fc5c7b238ab30822ec)

-----------------------------------------------------------------------

Summary of changes:
 source3/rpc_server/srv_spoolss_nt.c |   11 +++++++++--
 1 files changed, 9 insertions(+), 2 deletions(-)


Changeset truncated at 500 lines:

diff --git a/source3/rpc_server/srv_spoolss_nt.c 
b/source3/rpc_server/srv_spoolss_nt.c
index 0028ec0..127c83b 100644
--- a/source3/rpc_server/srv_spoolss_nt.c
+++ b/source3/rpc_server/srv_spoolss_nt.c
@@ -7628,8 +7628,15 @@ WERROR _spoolss_EnumPrinterData(pipes_struct *p,
 
                /* data - counted in bytes */
 
-               if (r->out.data && regval_size(val)) {
-                       memcpy(r->out.data, regval_data_p(val), 
regval_size(val));
+               /*
+                * See the section "Dynamically Typed Query Parameters"
+                * in MS-RPRN.
+                */
+
+               if (r->out.data && regval_data_p(val) &&
+                               regval_size(val) && r->in.data_offered) {
+                       memcpy(r->out.data, regval_data_p(val),
+                               MIN(regval_size(val),r->in.data_offered));
                }
 
                *r->out.data_needed = regval_size(val);


-- 
Samba Shared Repository

Reply via email to