summaryrefslogtreecommitdiff
path: root/source3
diff options
context:
space:
mode:
authorGerald Carter <jerry@samba.org>2006-09-26 22:03:52 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:14:48 -0500
commit855d12e56759c39dc80624fcd1096ee4f1f55d81 (patch)
tree22690ef977058d4b592458eb8c201354faae4732 /source3
parent49c73b5734a42b9d018dd7cfa006a1820ba08dee (diff)
downloadsamba-855d12e56759c39dc80624fcd1096ee4f1f55d81.tar.gz
samba-855d12e56759c39dc80624fcd1096ee4f1f55d81.tar.bz2
samba-855d12e56759c39dc80624fcd1096ee4f1f55d81.zip
r18932: In RegEnumvalue() and RegQueryValue(), the output buffer
size must match the real value of the data. (This used to be commit e11108024a049f6a62d6c170296ee9877200a0c0)
Diffstat (limited to 'source3')
-rw-r--r--source3/rpc_server/srv_winreg_nt.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/source3/rpc_server/srv_winreg_nt.c b/source3/rpc_server/srv_winreg_nt.c
index 7adc29ec0a..a90e9e2c77 100644
--- a/source3/rpc_server/srv_winreg_nt.c
+++ b/source3/rpc_server/srv_winreg_nt.c
@@ -479,6 +479,8 @@ WERROR _winreg_QueryValue(pipes_struct *p, struct policy_handle *handle, struct
memcpy( data, regval_data_p(val), *value_length );
status = WERR_OK;
}
+
+ *data_size = *value_length;
}
TALLOC_FREE( regvals );
@@ -626,6 +628,8 @@ WERROR _winreg_EnumValue(pipes_struct *p, struct policy_handle *handle, uint32_t
status = WERR_OK;
}
+ *data_size = *value_length;
+
done:
free_registry_value( val );