Commit Graph

176 Commits

Author SHA1 Message Date
Paul Chitescu 7fea0e332f advapi32: Reduce registry access to MAXIMUM_ALLOWED wherever possible. 2009-12-07 14:50:20 +01:00
Detlef Riekenberg 0ca3b3b423 advapi32: Check the output pointer first in RegOpenKey, with test. 2009-06-29 14:51:30 +02:00
Alexandre Julliard b88554d22f advapi32: Fix pointer cast warnings on 64-bit. 2009-01-08 17:26:30 +01:00
Lei Zhang aacb511da1 advapi32: Allow opening HKEY_CLASSES_ROOT subkeys with backslash prefix on NT. 2008-11-24 14:38:56 +01:00
Detlef Riekenberg b67533f204 advapi32: Remove outdated comment. 2008-09-19 11:40:53 +02:00
Mikołaj Zalewski daafda22f8 advapi32: Remove access checks from advapi32 (makes KEY_WOW64_* work). 2008-07-24 13:03:40 +02:00
Andrew Talbot 414cdc0475 advapi32: Sign-compare warnings fix. 2008-07-23 13:54:17 +02:00
Mathias Kosch 9a7dc15979 advapi32: Fix RegGetValue when dwFlags includes RRF_RT_ANY. 2008-07-21 14:37:54 +02:00
Alexandre Julliard df0f42fe78 advapi32: Implemented RegOverridePredefKey. 2008-03-11 19:48:57 +01:00
Rob Shearman 628183c2f9 advapi32: Document that the cbData parameter of RegSetValueA/W is ignored. 2008-02-18 13:29:56 +01:00
Rob Shearman 121be51f1d advapi32: Add tests for RegSetValueA/W.
Fix RegSetValueA/W to return ERROR_INVALID_PARAMETER if NULL data is 
passed in.
2008-02-18 13:29:51 +01:00
Rob Shearman 7579145ae1 advapi32: The lpcbSecurityDescriptor parameter to RegGetKeySecurity isn't optional, so don't complicate the code by treating as though it is. 2008-02-15 11:03:31 +01:00
Francois Gouget d9a06b236a advapi32: RegGetValueW() must return the required buffer size in bytes, not WCHARs. 2008-01-11 12:25:21 +01:00
Francois Gouget c47c6483aa advapi32: RegGetValue() should not return an error when expanding a string and given a NULL buffer and a zero size.
Adjust the tests to cover this case for REG_EXPAND_SZ registry
values. Improve the documentation a bit.
2008-01-11 12:25:14 +01:00
Sam Dennis 1590b1f731 advapi32: Fix undocumented behaviour in ReqQueryValueEx when 'count' and 'type' point to the same address. 2007-12-14 14:06:45 +01:00
Andrew Talbot fd03f4ae86 advapi32: Fix a typo. 2007-11-29 13:39:16 +01:00
Francois Gouget af183df608 advapi32: Add and use LSTATUS. 2007-09-18 11:20:53 +02:00
Francois Gouget 1da7a32b11 advapi32: Add more RegGetValue() conformance tests, and fix Wine accordingly. 2007-06-21 13:11:09 +02:00
Stefan Leichter 88b6bc4f7c advapi32: Added implementation of RegDeleteTreeA/W. 2007-05-30 15:55:05 +02:00
Lei Zhang d347ebe196 advapi32: Spelling fixes. 2007-04-07 11:01:17 +02:00
Andrew Talbot a2e7c325f9 advapi32: Replace inline static with static inline. 2007-03-17 20:03:29 +01:00
Juan Lang 81e7d69dfd advapi32: Implement RegGetKeySecurity with NtQuerySecurityObject. 2007-03-17 19:51:47 +01:00
Dan Kegel 60cb73b573 advapi32: RegGetKeySecurity needs to pass length of struct to caller. 2007-03-13 11:52:47 +01:00
Bang Jun-Young fdff5c3a3a ntdll: Fix NtUnloadKey to match the DDK. 2007-02-05 12:26:01 +01:00
Dmitry Timoshkov e5b4b47c16 advapi32: Make some data const. 2006-11-29 12:44:43 +01:00
Alexandre Julliard 3d73173fe1 advapi32: Fixed last error check in RegSaveKey. 2006-11-10 12:22:44 +01:00
Francois Gouget 30e44c85c8 Assorted spelling fixes. 2006-11-07 15:25:24 +01:00
Eric Pouech 4dfd319dbf advapi32: Plug a couple of memory leaks. 2006-10-20 13:49:50 +02:00
Alexandre Julliard e852f195a0 advapi32: Cast-qual warning fix. 2006-10-18 14:08:13 +02:00
James Hawkins 2730fe6d1c advapi32: Make internal functions static. 2006-10-12 11:34:41 +02:00
Hans Leidekker 4301816d47 advapi32: Win64 printf format warning fixes. 2006-10-03 16:21:58 +02:00
Robert Shearman bc590e87a6 advapi32: Add tests for RegQueryValueEx to show that it sets the data
size to 0 when a buffer isn't present and that it sets the type to
REG_NONE on Win9x.
2006-08-16 17:02:04 +02:00
Bang Jun-Young 0542e835bb advapi32: Fix registry API prototypes to match the PSDK. 2006-07-11 12:03:35 +02:00
Robert Shearman 52aaddcd34 advapi32: Implement RegDisablePredefinedCache. 2006-06-30 20:43:49 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Michael Stefaniuc a87520036f janitorial: Remove redundant NULL pointer checks before HeapFree'ing them.
Some HeapFree's are hidden behind macros. Found by smatch.
2006-05-10 11:31:41 +02:00
Michael Jung ac615ce5a0 advapi32: Implemented RegLoadMUIString[AW]. 2006-02-14 10:41:18 +01:00
Aric Stewart 910806393d advapi32: Fix for RegNotifyChangeKeyValue.
Flip fAsync and fWatchSubTree into their proper places.
2006-02-09 12:08:47 +01:00
Rein Klazes 62b69d6486 advapi32: RegCreateKeyEx fix.
On Win9x,ME RegCreateKeyEx ignores the backslash character if the
subkey begins with one. With a regression test.
2005-12-08 13:49:02 +01:00
Ge van Geldorp 1a1583a364 Match PSDK STATUS_* definitions. 2005-11-28 17:32:54 +01:00
Markus Amsler ec350525e3 Improve c2man Documented-Total count. Changes:
- add missing description
- add missing returns section
2005-11-12 19:12:03 +00:00
Markus Amsler d45811ce2a Improve c2man Documented-Total count. 2005-11-04 11:43:27 +00:00
Rein Klazes c16e70587a - Set the LastError in OpenSCManager in case of errors;
- Accept machine names without a '\\' prefix in OpenSCManager and
  RegConnectRegistry.
- Add a regression test for that.
2005-09-15 09:31:05 +00:00
Alexandre Julliard 261e376495 Fixed a number of pointer to integer conversions that wouldn't work
right on a 64-bit platform.
2005-09-12 15:14:06 +00:00
Mike McCormack 280bcf6e4a Fix gcc 4.0 warnings. 2005-08-27 10:00:38 +00:00
Steven Edwards e14569d122 Correct RegCreateKeyEx[A/W] prototype to match the PSDK. 2005-07-28 10:18:23 +00:00
Felix Nawothnig 48533ae97d Implement RegGetValueA/W. 2005-07-18 15:10:22 +00:00
Mike McCormack 257c337c19 gcc 4.0 -Wpointer-sign fixes (Reg* functions). 2005-07-07 12:08:42 +00:00
Mike McCormack 5b2d5fd758 Use HANDLE instead of HKEY in the NT API. 2005-06-17 13:58:33 +00:00
Robert Shearman efbea2e2bc Implement RegNotifyChangeKeyValue on top of NtNotifyChangeKey. 2005-05-16 14:08:11 +00:00
Robert Shearman 45d47c422f Fix RegDeleteKey{A,W} to open the specified key with the DELETE access
right.
2005-05-05 16:47:33 +00:00
James Hawkins a9d5de8414 RegDeleteKey fails if the lpSubKey param is NULL. 2005-04-16 10:49:10 +00:00
Robert Shearman f74b0adbca Move save_registry and unload_key server calls to ntdll. 2005-03-30 10:21:15 +00:00
James Hawkins 580ded65e7 - Implement NtLoadKey.
- Forward RegLoadKey to NtLoadKey.
2005-03-29 11:38:58 +00:00
James Hawkins e8d1e2f745 Fix RegOpen/CloseKey. 2005-02-25 16:52:10 +00:00
James Hawkins d5e2b7c843 Add RegOpenKey, RegCloseKey tests. 2005-02-21 20:37:26 +00:00
Mike McCormack 4a0f999859 Use CreateEventW in preference to CreateEventA for unnamed events. 2005-01-07 15:40:09 +00:00
Michael Stefaniuc 5ad7d858e0 Do not check for non NULL pointer before HeapFree'ing it. It's
redundant.
2004-12-23 17:06:43 +00:00
Eric Pouech 0a258964c2 Const correctness fixes. 2004-11-30 21:38:57 +00:00
Alexandre Julliard bbde53fb02 RegQueryValueW must return count in bytes for empty string too. 2004-10-19 21:14:09 +00:00
Hans Leidekker 411fc5f164 Fix signed/unsigned comparison warnings. 2004-09-02 23:00:53 +00:00
Huw Davies 8e9d88c1a1 Fix full name of HKEY_CURRENT_CONFIG. 2004-08-26 18:22:58 +00:00
Alexandre Julliard bba76fca45 Don't crash on NULL data in RegSetValueExA (reported by Mike Hearn and
Andreas Mohr).
Removed a couple of unnecessary version checks.
2004-07-24 02:32:50 +00:00
James Hawkins 6a358c4090 Added and cleaned API docs. 2004-07-13 23:33:14 +00:00
Jon Griffiths 50ce0844ba Documentation fixes. 2004-04-23 21:32:34 +00:00
Juan Lang ae176d1629 Allow RegConnectRegistryW to the local machine name. 2004-03-18 01:34:23 +00:00
Robert Shearman 65e818272b Partially implement RegOpenUserClassesRoot. 2004-01-16 04:40:33 +00:00
Mike Hearn 43cb03be3a Implemented RegFlushKey and NtFlushKey. 2004-01-03 00:38:30 +00:00
Francois Gouget 8f63a714b2 Try not to display uninitialized data in traces (found by Valgrind). 2003-12-13 01:34:40 +00:00
Alexandre Julliard f9be2f3d21 Removed some unnecessary includes. 2003-11-17 20:31:29 +00:00
Daniel Marmier c33e4c4723 RegCreateKeyEx{A,W}: state that class string is constant. 2003-10-21 23:44:37 +00:00
Alexandre Julliard e37c6e18d0 Fixed header dependencies to be fully compatible with the Windows
headers (with help from Dimitrie O. Paun).
2003-09-05 23:08:26 +00:00
Mike McCormack 5ac945c021 Implement registry key unloading. 2003-08-19 03:08:17 +00:00
Francois Gouget 9591836ffb 'sizeof type' is best avoided as it won't always compile (e.g. 'int
main() {return sizeof int;}'). Use 'sizeof(type)' instead.
2003-06-18 19:45:22 +00:00
Jon Griffiths cd4234aa49 Documentation updates. 2003-03-18 18:35:48 +00:00
Tony Lambregts 4550b8b7cf Janitorial. Get rid of W->A calls. 2003-03-14 04:50:34 +00:00
Matthew Davison 6f2a071df1 Remove some calls to HEAP_strdupAtoW from advapi32. 2003-01-20 23:23:12 +00:00
Mike McCormack 11f4b44451 Implemented registry change notifications. 2002-11-25 02:47:32 +00:00
Aric Stewart cdb9be7ba9 Work with the correct subkey with loading keys. Not a true fix to the
LoadKey/SaveKey situation.
2002-11-13 19:45:27 +00:00
Michael Stefaniuc cbacde5256 Compile the advapi32 dll with -DSTRICT. 2002-10-25 19:17:33 +00:00
Alexandre Julliard 5cf56a3afe Removed LPxxx handle types that don't exist under Windows. 2002-10-03 19:46:27 +00:00
Alexandre Julliard f2ef2c2bb2 Handle special registry root keys directly in advapi32, and avoid
using them in kernel and ntdll.
2002-09-13 21:42:28 +00:00
Alexandre Julliard a9298731fa Fixed requested access rights in RegDeleteKey[AW]. 2002-09-12 20:47:14 +00:00
Patrik Stridvall 09570edaa5 MSVC compatibility fixes. 2002-08-17 01:22:59 +00:00
Alexandre Julliard 7375597fe2 Fixed some handle type mismatches and added a few casts in prevision
of void* handles.
2002-07-31 19:26:03 +00:00
Dominik Strasser 751c4544b0 Implemented RegQueryMultipleValues. 2002-07-20 20:02:55 +00:00
Alexandre Julliard c1dddbea55 RegEnumValue[AW] need to update the data size on buffer overflow
(spotted by Massimo <max@veneto.com>).
2002-07-10 03:27:35 +00:00
Alexandre Julliard a010932a3f More explicit initialization of info_size for stupid compilers. 2002-07-05 21:30:38 +00:00
Rein Klazes 0bb6fdda90 Check for NULL keyvalue in RegEnumKeyExA/W. 2002-07-05 01:21:13 +00:00
Mike McCormack da00742aa7 Implemented recursive RegDeleteKey in Win95 emulation. 2002-06-14 23:35:37 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Juergen Schmied a44e0b0fbd Make use of access mask MAXIMUM_ALLOWED possible. 2002-05-09 19:39:10 +00:00
Dmitry Timoshkov 79313d371a Make sure the security descriptor is initialized in RegGetKeySecurity. 2002-04-02 02:41:27 +00:00
Michael Cardenas 7dbce65bb2 Changed registry handling in RegOpenKeyExA to behave like windows95
when winver==win95.
2002-03-21 01:24:52 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Aric Stewart 20a4cc3116 Don't return overflow if no class buffer was specified. 2002-02-05 19:45:55 +00:00
Alexandre Julliard 60fd03d248 Use ntdll functions instead of MultiByteToWideChar/WideCharToMultiByte
to avoid corrupting the last error code.
2001-12-05 22:18:48 +00:00
Alexandre Julliard 9caa71eef4 Redesign of the server communication protocol to allow arbitrary sized
data to be exchanged.
Split request and reply structures to make backwards compatibility
easier.
Moved many console functions to dlls/kernel, added code page support,
changed a few requests to behave properly with the new protocol.
2001-11-30 18:46:42 +00:00
Alexandre Julliard b0fa2a8ca8 Fixed registry routines broken by the structure sizes fix. 2001-11-24 03:41:37 +00:00
Dmitry Timoshkov 6b6596a1e3 Fixed packing and layout of many system structures. 2001-11-23 18:44:43 +00:00