Commit graph

14137 commits

Author SHA1 Message Date
Hervé Poussineau 026d788dcc IoGetDeviceProperty():
Fix DevicePropertyEnumeratorName
Implement DevicePropertyPhysicalDeviceObjectName

svn path=/trunk/; revision=15415
2005-05-19 22:04:45 +00:00
Hervé Poussineau 2e828da9a2 Don't create a new DriverObject if one is already existing
svn path=/trunk/; revision=15414
2005-05-19 22:02:34 +00:00
Magnus Olsen 765b83b774 Fix CD bug for
CD "program files"
cd did only working with CD program files 
now it support ""

svn path=/trunk/; revision=15410
2005-05-19 15:32:22 +00:00
Alex Ionescu 2df4b9dc13 Unnamed objects do not have a base directory.
svn path=/trunk/; revision=15409
2005-05-19 05:26:35 +00:00
Art Yerkes 1e16c56cc3 Don't free this MDL. The I/O manager now does it for us.
svn path=/trunk/; revision=15408
2005-05-19 03:36:20 +00:00
Alex Ionescu e1553447e9 Don't free io completion packet twice
svn path=/trunk/; revision=15407
2005-05-19 03:24:43 +00:00
Art Yerkes 29d29f5ff5 Corrected uninitialized timeout variable. Will be needed later when ARP calls
are present in iphlpapi.

svn path=/trunk/; revision=15406
2005-05-19 02:53:52 +00:00
Alex Ionescu f39cc83ebf fix boot on vmware
svn path=/trunk/; revision=15405
2005-05-19 01:58:24 +00:00
Alex Ionescu c6eb354e8b fix compiling
svn path=/trunk/; revision=15404
2005-05-19 01:46:49 +00:00
Phillip Susi 5d4d912efd Rewrote usetup's file copy and cabinet extraction code to use memory mapped files
This increased performance and the code is cleaner
Still needs a bit more cleaning up, but so far, looks good, needs some testing



svn path=/trunk/; revision=15403
2005-05-19 00:59:40 +00:00
Hervé Poussineau 7403e34ca9 Basic resources device allocation (doesn't prevent conflicts)
Send allocated resources in IRP_MN_START_DEVICE

svn path=/trunk/; revision=15402
2005-05-18 22:05:11 +00:00
Hervé Poussineau 3e43a2215b Use translated resources list to get informations about interrupt
svn path=/trunk/; revision=15401
2005-05-18 21:48:41 +00:00
Alex Ionescu 3d90c8bdad Revert accidental commit
svn path=/trunk/; revision=15400
2005-05-18 21:28:12 +00:00
Hervé Poussineau 4507d7ac14 Implement IRP_MN_QUERY_RESOURCE_REQUIREMENTS
svn path=/trunk/; revision=15399
2005-05-18 21:23:54 +00:00
Magnus Olsen 7646e46a35 Swdish translations by irc:anders1 proofread by Andreas Bjerkeholt, Wacko and by Me (GreatLord)
svn path=/trunk/; revision=15398
2005-05-18 20:19:22 +00:00
Magnus Olsen 4cb823eb9e Swdish translations by irc:anders1 proofread by Andreas Bjerkeholt
svn path=/trunk/; revision=15397
2005-05-18 19:58:27 +00:00
Magnus Olsen f9b7791ad3 Swdish translations by irc:anders1 proofread by Andreas Bjerkeholt
svn path=/trunk/; revision=15396
2005-05-18 19:46:40 +00:00
Alex Ionescu 00fe79ff10 Object Manager Patch. This patch continues the work done in the previous patch and makes the following changes in order to support OB 2.0 (it basically temporarily fixes a highly incorrect implementation so that caller code will be ready to work with the OB 2.0 without change):
1) The documented Object Create Information Structure and semantics implemented. All Object Attributes and passed data from user-mode is now probed and saved into this object create structure when ObCreateObject is called.
2) ObCreateObject does NOT PERFORM ANY OTHER OPERATION EXCEPT CREATING THE OBJECT ANYMORE. ObCreateObject will NOT insert the Object into the tree and other operations. These are now done correctly by ObInsertObject. Therefore, the biggest hurdle was changing pieces of code which assumed ObCreateObject would be enough.
3) ObInsertObject uses the captured create info for all operations isntead of the Object Attributes.
4) ObFindObject now uses the captured info as well.
5) The OBject name and directory are now stored in the documented Object Name Information, always allocated and freed from non paged pool.

HACKS:
5) Because the registry code is horribly broken and doesn't use ObFindObjectByName, the old ObFindObject had to be temporarily duplicated into CmpFindObject.
7) Win32k used ObInsertObject in CsrInsertObject as a way to create a handle inside csrss. However, OBInsertObject now does more then this. As a temporary hack, ObpCreateHandle is exported from the kernel and called from win32k. A fix needs to be done for this, but I don't know the design of win32k+csrss well enough to find a solution.
8) SEH has been commented out in some places of the new probing code because it breaks smss and explorer. These need to be investigated (seh did not exist in the previous code, so this is not really a hack)
9) Named objects with a parent directory are NOT allowed. However because of bugs in kernel32, the new check has been temporarily disabled. (this check did not exist in the previous code, so this is not really a hack)

The next patch will add a proper ObFindObject which will support a more complete Parse Procedure with context and security information. This is needed for proper registry access (requested by Eric Kohl) and for proper functionality of the Desktop/File creation, which should use the Parse routine, and not the Create Handle Routine. This will also make it possible to remove some previous hacks and pave the way for a fixed Iop/IoCreateFile

svn path=/trunk/; revision=15395
2005-05-18 19:26:47 +00:00
Alex Ionescu dfedb99675 Prettify usetup a bit, show a warranty page before continuing installation (not a license agreement, simply a message stating this is a beta foss product with no warranty), make progressbars have a double border and change the copy file dialog a bit. Also changed setupldr and ntoskrnl to have a more unified text-mode look/appearance when installing. The effect is really nice and the blue screen with gray status-bar appears as soon as the CD boots and takes you all the way to usetup without any breakages or black/blue/black/blue fades and confusing messages. Also, fixed ntoskrnl not to break into KDBG if /NODEBUG is set.
svn path=/trunk/; revision=15394
2005-05-18 19:08:00 +00:00
Alex Ionescu 474cd6a3e3 Fix usetup. This hack needs to remain even though it's incorrect since it's what ROS expects. I am working on rewriting IoCreateFile so these hacks can go away. Please do not remove it
svn path=/trunk/; revision=15392
2005-05-18 17:17:34 +00:00
Magnus Olsen baed69574e Fix unicode / ansi build problem for -D_DEBUG build
a old bug in cmd. 
Bug report 629 in bugzila 
fix by tinus and his patch at bugzila


 

svn path=/trunk/; revision=15390
2005-05-17 21:18:04 +00:00
Alex Ionescu a04f8e62fe Implement mouse packet timeout. Fixes right-click menu appearing incorrectly on qemu if debuggins is used. Patch by Tinus
svn path=/trunk/; revision=15389
2005-05-17 20:51:39 +00:00
Alex Ionescu e3757a0fb1 make cabman report error when file doesnt exist. Patch by Usurp
svn path=/trunk/; revision=15388
2005-05-17 20:43:27 +00:00
Hartmut Birr e3ac1e89d5 Fixed rsym for executables without any debug informations.
svn path=/trunk/; revision=15387
2005-05-17 20:28:57 +00:00
Alex Ionescu 2e000e7b38 Sorry for the nonatomic commit
svn path=/trunk/; revision=15386
2005-05-17 19:16:21 +00:00
Alex Ionescu 437e9f05fc Sorry for the nonatomic commit
svn path=/trunk/; revision=15383
2005-05-17 19:06:59 +00:00
Alex Ionescu fe3de87064 Share NtDevice/FsIoControlFile, fixes NtFsControlFile to have same functionality as NtDev...
svn path=/trunk/; revision=15382
2005-05-17 19:04:57 +00:00
Hartmut Birr 7efa574035 - Reference the file object in IopSecurityFile.
- Don't set FO_DIRECT_DEVICE_OPEN in IoCreateStreamFileObject.  
- Disabled the setting of IRP_NOCACHE, because vfat cannot handle cached and non cached requests for the same file.  
- Set the correct device object in NtWriteFile.


svn path=/trunk/; revision=15381
2005-05-17 19:00:12 +00:00
Alex Ionescu 1612126bbb Fix bug in memory mapping which caused large applications to BSOD the system. Abiword setup now works and other large apps should be fixed as well
svn path=/trunk/; revision=15380
2005-05-17 18:04:23 +00:00
Hervé Poussineau 7e68975e35 Don't empty the DriverObject extension if it is already initialized and filled
svn path=/trunk/; revision=15379
2005-05-17 17:39:50 +00:00
Magnus Olsen 9c34575fb2 Dorp last sync with wine and userhook
Before we can sync with wine we need to rewrite the enum 
and reg of device so it working fine in reactos and windows.

Add svn rev 15043 + only userhooks for the mouse
at last the mouse are working in tribles windows mode
but in full screen it is bit chopy. Not tested tribles 
in reactos with the new code. 







svn path=/trunk/; revision=15376
2005-05-17 15:20:24 +00:00
Magnus Olsen db5b39ab3f fix a small bug in dinput the last sync with wine did not go well
still some bugs left

svn path=/trunk/; revision=15375
2005-05-17 12:30:52 +00:00
Magnus Olsen a5726f4420 Drop GDI version of dinput complete and add user hook version of dinput
keyboard.c thx GvG for finding the problem in reactos with user hook and implement userhook

mouse.c keep one gdi stuff left but rewrite it to userhook poll mouse 
poll mouse need to be rewrite so it fix last bug for user hook it is it move the mouse to another locations but it should 
stand still. when it insate. then we can share the code with wine 

svn path=/trunk/; revision=15358
2005-05-16 20:42:36 +00:00
Magnus Olsen 86d573abdf drop Keyboard.c gdi version
svn path=/trunk/; revision=15357
2005-05-16 20:36:26 +00:00
Aleksey Bragin 07f2451e95 One more fix to resource DPRINTs, now they are correct, for each resource.
svn path=/trunk/; revision=15349
2005-05-16 19:24:15 +00:00
Aleksey Bragin c9c8f865f2 Changed Memory to Port resource, also fixed incorrect DPRINT (thanks to hpoussin!)
svn path=/trunk/; revision=15348
2005-05-16 19:12:48 +00:00
Hervé Poussineau 903edc501a Don't send multiple IRP_MJ_PNP/IRP_MN_START_DEVICE in case of a device with lower/upper filters
svn path=/trunk/; revision=15347
2005-05-16 18:08:55 +00:00
Hervé Poussineau d0ea6a10df Define interrupt resource as required
svn path=/trunk/; revision=15345
2005-05-16 17:19:10 +00:00
Hervé Poussineau 4cb90117fa Report memory and I/O ranges even if they are not the first reported resources by PCI device
svn path=/trunk/; revision=15344
2005-05-16 15:56:01 +00:00
Maarten Bosma b5f744a25a PackageManager
svn path=/trunk/; revision=15336
2005-05-16 11:14:04 +00:00
Gé van Geldorp 9190f5135f Support partition-less disks
svn path=/trunk/; revision=15334
2005-05-16 11:06:57 +00:00
Maarten Bosma ca8a9b2dff PackageManger: Globle Makefile
svn path=/trunk/; revision=15333
2005-05-16 11:04:21 +00:00
Maarten Bosma 0b6d2a809b PackageManager: German Translation and CreateOptions()
svn path=/trunk/; revision=15332
2005-05-16 10:53:46 +00:00
Alex Ionescu 3d2c746433 Fix win32k. For real. I swear.
svn path=/trunk/; revision=15330
2005-05-16 00:52:43 +00:00
Alex Ionescu 0139f35fc0 Fix win32k
svn path=/trunk/; revision=15329
2005-05-16 00:38:44 +00:00
Alex Ionescu 6b86cb4406 Fix build, clean up headers, add public stuff to public headers
svn path=/trunk/; revision=15326
2005-05-15 23:24:11 +00:00
Emanuele Aliberti 6a7f1b10c5 Make gcc 3.4.2 compile.
svn path=/trunk/; revision=15323
2005-05-15 21:41:22 +00:00
Emanuele Aliberti 468b7ba0f2 Correct a comment.
svn path=/trunk/; revision=15322
2005-05-15 21:39:10 +00:00
Gé van Geldorp 83deefac8c Handle case where a directory contains a '." but the
filename doesn't (i.e. has no extension)

svn path=/trunk/; revision=15321
2005-05-15 21:28:44 +00:00
Magnus Olsen 52b95ec424 change from atoi to sprintf
linux does not support itoa 

svn path=/trunk/; revision=15320
2005-05-15 21:11:37 +00:00