Commit graph

20698 commits

Author SHA1 Message Date
Magnus Olsen
4f6d8e38f4 implement datatype I32 for *printf string version we have a *printf for files as well
now 29 fails in wine test msvcrt printf
 

svn path=/trunk/; revision=22252
2006-06-06 21:42:42 +00:00
Alex Ionescu
a25a59160d - Formatting/name/comment/declaration/calling convention changes.
- Make ObpCreateHandleTable return NTSTATUS instead of VOID, so that it can return STATUS_INSUFFIENT_RESOURCES if the handle table couldn't be allocated.

svn path=/trunk/; revision=22249
2006-06-06 21:02:55 +00:00
Johannes Anderwald
7fff40f524 add missing NtPowerInformation to def
svn path=/trunk/; revision=22248
2006-06-06 21:02:30 +00:00
Magnus Olsen
7894ff05b8 fixing 2 more fualt in msvcrt *printf api
svn path=/trunk/; revision=22247
2006-06-06 12:45:05 +00:00
Alex Ionescu
21baa4ddb6 - Add function documentation header to ObpDeleteHandle, comment and re-format the function, and simplify the code to reduce some code duplication.
- Call the OkayToClose Procedure, if one is present, to allow the object owner a chance to disallow closing this handle. I believe this is required for properly protecting Winsta/Desktop handles (instead of using the regular protection mode, since that one can be bypassed). Thomas, get to work!

svn path=/trunk/; revision=22246
2006-06-06 06:12:09 +00:00
Alex Ionescu
18ed42b8a4 - Documented ObpDeleteNameCheck and ObpSetPermanentObject
- Added function documentation header for ObpDecrementHandleCount and ObpSetHandleAttributes
- Modified ObpDecrementHandleCount to accept Process and GrantedAccess paraemters since the definition for the Close Procedure Callback requires them (and we were currently sending NULL). Also send 0 for process handle count, since we don't yet parse/support per-process handle databases.
- Minor optimization: All objects have an object type, don't actually check if the object has one when decrementing a handle.
- Minor accounting fix: Decrement the total number of handles for the object type whose handle count is being decreased.

svn path=/trunk/; revision=22245
2006-06-06 05:49:28 +00:00
Alex Ionescu
afea80bbe4 - Make sure callers of NtMakeTemporaryObject have DELETE privileges, otherwise they could end up illegaly killing objects (in certain situations)
- Make sure callers of NtMakePermanentObject have SeCreatePermanentPrivilege.
- Implement ObpDeleteNameCheck as described in Gl00my's Ob Documentation (using such documentation falls under US Reverse Engineering Law - Clean rooming).
- Remove duplicated code in ObpDecrementHandleCount and ObpSetPermanentObject and have them use ObpDeleteNameCheck instead.
- Fixes thanks to using this routine:
  * Name-check is now properly done.
  * The keep-alive reference is now deleted when going from permanent->temporary object.
  * The parent directory is now dereferenced and cleared when deleting the object.
  * The security procedure is now called to delete the SD, and the name buffer is freed. 
- Remove ObGetObjectHandleCount, it's not a public function.


svn path=/trunk/; revision=22244
2006-06-06 04:52:08 +00:00
Alex Ionescu
50224a4d55 - Fix bug in IoCreateFile which my (correct) ObReferenceObjectByHandle bugfix patch uncovered. Bootcd/installation works again.
svn path=/trunk/; revision=22243
2006-06-06 02:07:55 +00:00
Hervé Poussineau
b3f2b879b0 Set libraries as project dependencies
svn path=/trunk/; revision=22242
2006-06-05 21:46:14 +00:00
Ged Murphy
485867fdaf silence some rather annoying alignment errors when building with msvc
svn path=/trunk/; revision=22240
2006-06-05 19:00:52 +00:00
Hervé Poussineau
67189b431d Change some DPRINT1 to DPRINT, as they were prior revision 21880.
svn path=/trunk/; revision=22239
2006-06-05 16:41:03 +00:00
Ged Murphy
a10b3f2380 - implement menu hints
- load separate 24bit bitmaps for the icons
- fix image list loading
- lots of other little tweaks and changes

svn path=/trunk/; revision=22238
2006-06-05 16:34:38 +00:00
Hervé Poussineau
2a685bbbfe Read EDID information from screen (if possible) in HwGetVideoChildDescriptor.
Still doesn't do anything useful with it, but that's a start ;)

svn path=/trunk/; revision=22237
2006-06-05 16:31:24 +00:00
Saveliy Tretiakov
56f9a0a548 add missing check for null return
svn path=/trunk/; revision=22236
2006-06-05 15:38:04 +00:00
Saveliy Tretiakov
b1e6b788ce Add Johannes Anderwald to credits.
svn path=/trunk/; revision=22235
2006-06-05 14:39:09 +00:00
Saveliy Tretiakov
c43a77ea7d [AUDIT]
\trunk\reactos\dll\win32\lzexpand (unlocked)
No code.


svn path=/trunk/; revision=22234
2006-06-05 14:35:31 +00:00
Saveliy Tretiakov
8177ebd451 [AUDIT]
\trunk\reactos\base\applications\shutdown (unlocked)
I looked through code and found no signs of reverse engeneering.


svn path=/trunk/; revision=22233
2006-06-05 14:32:28 +00:00
Alex Ionescu
a46ee938fa - Rename ObpCreateTypeObject to ObCreateObjectType and fix definition. The latter is actually exported in NT, and there's no reason not to export it while having our own internally renamed version.
- Added stub exports for ObCloseHandle, ObReferenceSecurityDesciptor, ObSetHandleAttributes, ObSetSecurityObjectByPointer so that someday someone can know what needs to be implemented.
- Removed ObGetObjectPointerCount. It is not exported in newer OSes and was always undocumented.
- Move ObQueryObjecctAuditingByHandle to security.c and optimized it not to attach to the system process, as well as to cache the handle table instead of dereferencing the owner process all the time.

svn path=/trunk/; revision=22232
2006-06-05 06:31:42 +00:00
Alex Ionescu
0aeaea0fb7 - Fixed formatting/commented/annotated ObReferenceObjectByHandle.
- Bug fixes:
  * Remove MAXIMUM_ALLOWED<->GENERIC_ALL conversion, I could find no mention of this in the docs.
  * Remove GENERIC_ACCESS <-> RtlMapGenericMask conversion, I could find no mention of this in the docs, and this mapping is only required when creating handles, not when referencing pointers.
- Optimizations:
  * Restructure code and remove code which was sometimes duplicated up to 5 times.
  * Do not attach/detach from the system process, this isn't required since we're merely getting a kernel pointer from the handle netry.
  * Directly increase the pointer count instead of calling ObReferenceObject, since we already have the object header in a variable.
  * Cache ObpKernelHandleTable/Process->ObjectTable and use those directly instead of always de-referencing the process.

svn path=/trunk/; revision=22231
2006-06-05 05:07:44 +00:00
Alex Ionescu
36f116cdd8 - Simplify ObGetObjectPointerCode and ObfReferenceObject.
- Fix ObReferenceObjectByPointer to actually work like documented instead of doing random incorrect checks. Also add special case for Symbolic Link objects as documented by Caz Yokoyama at Microsoft.

svn path=/trunk/; revision=22230
2006-06-05 00:32:26 +00:00
Alex Ionescu
137f145eb6 - Formatting/comment fixes.
svn path=/trunk/; revision=22229
2006-06-05 00:16:14 +00:00
Alex Ionescu
02d0bb9dbd - Fix ExChangeHandle not to send NULL but the actual context to the callback function (fix by Thomas Weidenmueller <w3seek@reactos.org>)
- Re-implement NtSetInformationObject based on ExChangeHandle and using ObpSetHandleAttributes as a callback.
- Re-implement NtQueryObject's ObjectHandleInformation case to simply return the information that's already in HandleAttributes; there is no point in querying for it all over again.
- Fix NtSetInformationObject not to allow a user-mode call to modify kernel-mdoe handle attributes. Add FIXME for Inheritance permissions check.
- Fix NtQueryObject to properly return OBJ_PERMANENT and OBJ_EXCLUSIVE; these flags are not stored in Handle Attributes.
- Fix NtQueryObject not to attempt referencing the handle if the caller specified AllTypesInformation, because then a handle is not needed.

svn path=/trunk/; revision=22228
2006-06-05 00:04:36 +00:00
Art Yerkes
7c2e312093 Sorry reverted. GreatLord says this is fixed in the wrong place.
svn path=/trunk/; revision=22227
2006-06-04 23:33:27 +00:00
Art Yerkes
6d676e6e95 Fix one wine test. Don't accept an option string that starts with =.
svn path=/trunk/; revision=22226
2006-06-04 23:30:29 +00:00
Eric Kohl
de5ef123ee Fix indentation
svn path=/trunk/; revision=22225
2006-06-04 21:34:02 +00:00
Martin Fuchs
48badfaf22 fix language constant to LANG_BENGALI
svn path=/trunk/; revision=22224
2006-06-04 21:07:01 +00:00
Martin Fuchs
93fafae8ff set eol-style to native
svn path=/trunk/; revision=22223
2006-06-04 20:57:51 +00:00
Hervé Poussineau
da27830782 Fix little spelling mistakes
Set svn:eol-style to native

svn path=/trunk/; revision=22222
2006-06-04 20:31:42 +00:00
Hervé Poussineau
df3e3981c8 Fix DPFLTR_IHVVIDEO_ID constant value
svn path=/trunk/; revision=22221
2006-06-04 20:10:02 +00:00
Martin Fuchs
bf3af9216b Patch of Coviti: change "Reactos" texts to "ReactOS"
svn path=/trunk/; revision=22220
2006-06-04 20:07:56 +00:00
Magnus Olsen
b2c2d86a42 fixing one more of wine msvcrt printf test
svn path=/trunk/; revision=22219
2006-06-04 19:20:20 +00:00
Eric Kohl
0c13f30550 Add PNP_AddID stub and implement CM_Add_ID_ExW.
svn path=/trunk/; revision=22218
2006-06-04 19:12:58 +00:00
Aleksey Bragin
39635013ab Add a little more tests for Mdl testing, only 1 failes in ReactOS currently
svn path=/trunk/; revision=22217
2006-06-04 18:27:48 +00:00
Art Yerkes
eac8defeed Fix four winetests from msvcrt:file.c
- The winetests show that the pointer never moves after calling chsize.
- Using SetEndOfFile is the best way to do this.  I wrote a test case that 
  uses WriteFile as we did before and it did not expand the file past eof.

svn path=/trunk/; revision=22216
2006-06-04 17:24:37 +00:00
Magnus Olsen
36329fccb0 [AUDIT] this code is clean, for it is from DJGPP
svn path=/trunk/; revision=22215
2006-06-04 17:22:12 +00:00
Magnus Olsen
5f286cc809 fixing 24 bugs in *printf string version. we are failing 34 test in wine_test msvcrt printf
svn path=/trunk/; revision=22214
2006-06-04 17:15:47 +00:00
Hervé Poussineau
1988057885 Fix call to IOCTL_SERIAL_PURGE
svn path=/trunk/; revision=22213
2006-06-04 16:32:54 +00:00
Hervé Poussineau
bfa0a5c6e1 Display an error message only if we're not in the "load only boot drivers" phase
svn path=/trunk/; revision=22212
2006-06-04 16:30:27 +00:00
Johannes Anderwald
18fbc81749 revert _strdate modifications
svn path=/trunk/; revision=22211
2006-06-04 14:24:45 +00:00
Aleksey Bragin
c4dded32e8 Fix some warnings
svn path=/trunk/; revision=22210
2006-06-04 14:24:08 +00:00
Aleksey Bragin
5eb09b8ac5 Delete unneeded makefile
svn path=/trunk/; revision=22209
2006-06-04 14:19:48 +00:00
Aleksey Bragin
42f34ff7ba - Add csqtest to build-system
- Add initial Kernel-Mode regression testing framework (thanks to Filip Navara for his PnPTest, thanks to Alexandre Julliard for Wine regression testing framework). Framework consists of: the driver (kmtest.sys) and the loader (kmtloader.exe).

svn path=/trunk/; revision=22208
2006-06-04 14:18:24 +00:00
Hervé Poussineau
b5d6466d79 Convert result struct only if NtUserEnumDisplaySettings returned success
svn path=/trunk/; revision=22207
2006-06-04 14:10:21 +00:00
Hervé Poussineau
c373b8ba66 Don't crash when no working display adapter is present
svn path=/trunk/; revision=22206
2006-06-04 14:09:29 +00:00
Hervé Poussineau
cc12e88784 Convert result struct only if NtUserEnumDisplayDevices returned success
svn path=/trunk/; revision=22205
2006-06-04 13:36:39 +00:00
Johannes Anderwald
36c9262fd0 _strdate should return maximum 8 chars
does not work yet

svn path=/trunk/; revision=22204
2006-06-04 13:20:09 +00:00
Hervé Poussineau
8d494b3a7b IntEnumDisplaySettings returns a BOOL, not a NTSTATUS
svn path=/trunk/; revision=22203
2006-06-04 13:09:25 +00:00
Johannes Anderwald
5c8fb36ad3 make _tfullpath pass all msvcrt_winetest dir tests
svn path=/trunk/; revision=22202
2006-06-04 10:23:28 +00:00
Magnus Olsen
9f044aa4d8 [AUDIT] this code is clear, no signs of revers is found it is only around 3-4 line of one function
svn path=/trunk/; revision=22201
2006-06-04 10:14:45 +00:00
Magnus Olsen
c92839403a do not cuase crash in dhcp when no networkcard is found
svn path=/trunk/; revision=22200
2006-06-03 20:29:26 +00:00