diff options
author | Gerald Carter <jerry@samba.org> | 2006-09-26 22:03:52 +0000 |
---|---|---|
committer | Gerald Carter <jerry@samba.org> | 2006-09-26 22:03:52 +0000 |
commit | 6edf054bf32ae5808955b9e2c89afbec24923a4d (patch) | |
tree | a72e7c7369d79834fedac2491ec8bcb7da04f583 /source/rpc_server | |
parent | 0c8b011f824043673baff9ebd7d6885bac8077ec (diff) | |
download | samba-6edf054bf32ae5808955b9e2c89afbec24923a4d.tar.gz samba-6edf054bf32ae5808955b9e2c89afbec24923a4d.tar.xz samba-6edf054bf32ae5808955b9e2c89afbec24923a4d.zip |
r18932: In RegEnumvalue() and RegQueryValue(), the output buffer
size must match the real value of the data.
Diffstat (limited to 'source/rpc_server')
-rw-r--r-- | source/rpc_server/srv_winreg_nt.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/source/rpc_server/srv_winreg_nt.c b/source/rpc_server/srv_winreg_nt.c index 7adc29ec0af..a90e9e2c77c 100644 --- a/source/rpc_server/srv_winreg_nt.c +++ b/source/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 ); |