Sync with trunk revision r58045 to bring the corrections on configure.cmd and on...
authorHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Sat, 29 Dec 2012 20:57:10 +0000 (20:57 +0000)
committerHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Sat, 29 Dec 2012 20:57:10 +0000 (20:57 +0000)
svn path=/branches/ros-csrss/; revision=58046

52 files changed:
base/applications/rapps/rapps/abiword28x.txt
base/applications/rapps/rapps/bittorrent.txt
base/applications/rapps/rapps/fap.txt
base/applications/rapps/rapps/firefox5.txt
base/applications/rapps/rapps/irfanview.txt
base/applications/rapps/rapps/irfanviewplugins.txt
base/applications/rapps/rapps/libreoffice.txt
base/applications/rapps/rapps/mirandaim.txt
base/applications/rapps/rapps/mirc.txt
base/applications/rapps/rapps/mpc.txt
base/applications/rapps/rapps/openttd.txt
base/applications/rapps/rapps/opera.txt
base/applications/rapps/rapps/rosbe.txt
base/applications/rapps/rapps/scite.txt
base/applications/rapps/rapps/seamonkey.txt
base/applications/rapps/rapps/smplayer.txt
base/applications/rapps/rapps/sumatrapdf.txt
base/applications/rapps/rapps/thunderbird5.txt
base/applications/rapps/rapps/ultravnc.txt
base/applications/rapps/rapps/utorrent.txt
base/applications/rapps/rapps/vlc.txt
configure.cmd
dll/win32/netapi32/apibuf.c
dll/win32/samsrv/database.c
dll/win32/samsrv/samrpc.c
dll/win32/samsrv/samsrv.h
include/ddk/ntsam.h
include/reactos/idl/sam.idl
win32ss/drivers/videoprt/child.c
win32ss/gdi/ntgdi/cliprgn.h
win32ss/include/ntuser.h
win32ss/user/ntuser/accelerator.c
win32ss/user/ntuser/callproc.c
win32ss/user/ntuser/class.c
win32ss/user/ntuser/clipboard.c
win32ss/user/ntuser/cursoricon.c
win32ss/user/ntuser/cursoricon_new.c
win32ss/user/ntuser/event.c
win32ss/user/ntuser/hook.c
win32ss/user/ntuser/kbdlayout.c
win32ss/user/ntuser/menu.c
win32ss/user/ntuser/monitor.c
win32ss/user/ntuser/object.c
win32ss/user/ntuser/object.h
win32ss/user/ntuser/painting.c
win32ss/user/ntuser/simplecall.c
win32ss/user/ntuser/timer.c
win32ss/user/ntuser/win32.h
win32ss/user/ntuser/window.c
win32ss/user/ntuser/winpos.c
win32ss/user/user32/misc/misc.c
win32ss/user/user32/windows/menu.c

index d7e66b7..1f5952c 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = AbiWord\r
-Version = 2.9.2\r
+Version = 2.9.4\r
 Licence = GPL\r
 Description = Word processor.\r
-Size = 9.33MB\r
+Size = 9.4MB\r
 Category = 6\r
 URLSite = http://www.abisource.com/\r
-URLDownload = http://www.abisource.com/downloads/abiword/2.9.2/Windows/abiword-setup-2.9.2.exe\r
+URLDownload = http://www.abisource.com/downloads/abiword/2.9.4/Windows/abiword-setup-2.9.4.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
index a17000b..fa7e5f3 100644 (file)
@@ -2,13 +2,13 @@
 
 [Section]
 Name = BitTorrent
-Version = 7.7
+Version = 7.7.2
 Licence = Freeware for non-commercial uses
 Description = The Original BitTorrent Client.
-Size = 5.78MB
+Size = 956KB
 Category = 5
 URLSite = http://www.bittorrent.com/
-URLDownload = http://download.bittorrent.com/7.7/BitTorrent3.exe
+URLDownload = http://download.bittorrent.com/7.7.2/BitTorrent.exe
 CDPath = none
 
 [Section.0407]
index 46de57f..3fc2741 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = Fox Audio Player\r
-Version = 0.9.1\r
+Version = 0.9.2\r
 Licence = GPL\r
 Description = Simple and lightweight audio player.\r
 Size = 1.86MB\r
 Category = 1\r
 URLSite = http://foxaudioplayer.sourceforge.net/\r
-URLDownload = http://svn.reactos.org/packages/fap-0.9.1-win32-bin.exe\r
+URLDownload = http://svn.reactos.org/packages/fap-0.9.2-win32-bin.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
index 5d235de..aef5546 100644 (file)
@@ -1,33 +1,33 @@
 ; UTF-8
 
 [Section]
-Name = Mozilla Firefox 15
-Version = 15.0.1
+Name = Mozilla Firefox 17
+Version = 17.0.1
 Licence = MPL/GPL/LGPL
 Description = The most popular and one of the best free Web Browsers out there.
 Size = 15.8MB
 Category = 5
 URLSite = http://www.mozilla.com/en-US/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/15.0.1/win32/en-US/Firefox%20Setup%2015.0.1.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/17.0.1/win32/en-US/Firefox%20Setup%2017.0.1.exe
 CDPath = none
 
 [Section.0407]
 Description = Der populärste und einer der besten freien Webbrowser.
 Size = 15.7MB
 URLSite = http://www.mozilla-europe.org/de/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/15.0.1/win32/de/Firefox%20Setup%2015.0.1.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/17.0.1/win32/de/Firefox%20Setup%2017.0.1.exe
 
 [Section.040a]
 Description = El más popular y uno de los mejores navegadores web gratuitos que hay.
 Size = 15.6MB
 URLSite = http://www.mozilla-europe.org/es/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/15.0.1/win32/es-ES/Firefox%20Setup%2015.0.1.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/17.0.1/win32/es-ES/Firefox%20Setup%2017.0.1.exe
 
 [Section.040c]
 Description = Le navigateur web gratuit le plus populaire et l'un des meilleurs.
 Size = 15.9MB
 URLSite = http://www.mozilla-europe.org/fr/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/15.0.1/win32/fr/Firefox%20Setup%2015.0.1.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/17.0.1/win32/fr/Firefox%20Setup%2017.0.1.exe
 
 [Section.0413]
 Description = De meest populaire en een van de beste gratis Web browsers.
@@ -38,34 +38,34 @@ URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/14.0.
 Description = Mest populære og best også gratis nettleserene der ute.
 Size = 15.6MB
 URLSite = http://www.mozilla-europe.org/no/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/15.0.1/win32/nb-NO/Firefox%20Setup%2015.0.1.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/17.0.1/win32/nb-NO/Firefox%20Setup%2017.0.1.exe
 
 [Section.0415]
 Description = Najpopularniejsza i jedna z najlepszych darmowych przeglądarek internetowych.
 Size = 16.5MB
 URLSite = http://www.mozilla-europe.org/pl/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/15.0.1/win32/pl/Firefox%20Setup%2015.0.1.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/17.0.1/win32/pl/Firefox%20Setup%2017.0.1.exe
 
 [Section.0418]
 Description = Cel mai popular și unul dintre cele mai bune navigatoare web gratuite existente.
 Size = 16.1Mo
 URLSite = http://www.mozilla-europe.org/ro/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/15.0.1/win32/ro/Firefox%20Setup%2015.0.1.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/17.0.1/win32/ro/Firefox%20Setup%2017.0.1.exe
 
 [Section.0419]
 Description = Один из самых популярных и лучших бесплатных браузеров.
 Size = 16.1MB
 URLSite = http://www.mozilla-europe.org/ru/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/15.0.1/win32/ru/Firefox%20Setup%2015.0.1.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/17.0.1/win32/ru/Firefox%20Setup%2017.0.1.exe
 
 [Section.041b] 
 Description = Najpopulárnejší a jeden z najlepších slobodný webových prehliadačov.
 Size = 16.3MB
 URLSite = http://www.mozilla-europe.org/sk/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/15.0.1/win32/sk/Firefox%20Setup%2015.0.1.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/17.0.1/win32/sk/Firefox%20Setup%2017.0.1.exe
 
 [Section.0422]
 Description = Найпопулярніший та один з кращих безплатних веб-браузерів.
 Size = 16.1MB
 URLSite = http://www.mozilla-europe.org/uk/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/15.0.1/win32/uk/Firefox%20Setup%2015.0.1.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/firefox/releases/17.0.1/win32/uk/Firefox%20Setup%2017.0.1.exe
index b5ac214..e19cf9f 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = IrfanView\r
-Version = 4.33\r
+Version = 4.35\r
 Licence = Freeware (for personal use)\r
 Description = Viewer for all kinds of graphics/audio files/video files.\r
 Size = 1.46MB\r
 Category = 3\r
 URLSite = http://www.irfanview.com/\r
-URLDownload = http://irfanview.tuwien.ac.at/iview433_setup.exe\r
+URLDownload = http://irfanview.tuwien.ac.at/iview435_setup.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
index f107185..0f84ba7 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = IrfanView Plugins\r
-Version = 4.33\r
+Version = 4.35\r
 Licence = Freeware (for personal use)\r
 Description = Additional Plugins for supporting more file types.\r
 Size = 8.92MB\r
 Category = 3\r
 URLSite = http://www.irfanview.com/\r
-URLDownload = http://irfanview.tuwien.ac.at/plugins/irfanview_plugins_433_setup.exe\r
+URLDownload = http://irfanview.tuwien.ac.at/plugins/irfanview_plugins_435_setup.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
index 0717dfd..5ee9a4c 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = LibreOffice\r
-Version = 3.6.1\r
+Version = 3.6.4\r
 Licence = LGPL\r
 Description = Former called OpenOffice. Open Source Office Suite.\r
 Size = 200.0MB\r
 Category = 6\r
 URLSite = http://www.documentfoundation.org/\r
-URLDownload = http://download.documentfoundation.org/libreoffice/stable/3.6.1/win/x86/LibO_3.6.1_Win_x86_install_multi.msi\r
+URLDownload = http://download.documentfoundation.org/libreoffice/stable/3.6.4/win/x86/LibO_3.6.4_Win_x86_install_multi.msi\r
 CDPath = none\r
 \r
 [Section.0407]\r
index e6b4733..f484890 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = Miranda IM\r
-Version = 0.10.2\r
+Version = 0.10.9\r
 Licence = GPL\r
 Description = Open source multiprotocol instant messaging application - May not work completely.\r
 Size = 3.1MB\r
 Category = 5\r
 URLSite = http://www.miranda-im.org/\r
-URLDownload = http://miranda.googlecode.com/files/miranda-im-v0.10.2-unicode.exe\r
+URLDownload = http://miranda.googlecode.com/files/miranda-im-v0.10.9-unicode.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
index fdad961..e5a8070 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = mIRC 7\r
-Version = 7.25\r
+Version = 7.27\r
 Licence = Shareware\r
 Description = The most popular client for the Internet Relay Chat (IRC).\r
 Size = 1.82MB\r
 Category = 5\r
 URLSite = http://www.mirc.com/\r
-URLDownload = http://download.mirc.com/5/mirc725.exe\r
+URLDownload = http://download.mirc.com/6/mirc727.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
index 0134630..22958be 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = Media Player Classic Home Cinema\r
-Version = 1.6.3.5818\r
+Version = 1.6.5.6366\r
 Licence = GPL\r
 Description = A media player.\r
 Size = 7.0MB\r
 Category = 1\r
 URLSite = http://mpc-hc.sourceforge.net/\r
-URLDownload = http://heanet.dl.sourceforge.net/project/mpc-hc/MPC%20HomeCinema%20-%20Win32/MPC-HC_v1.6.3.5818_x86/MPC-HC.1.6.3.5818.x86.exe\r
+URLDownload = http://heanet.dl.sourceforge.netproject/mpc-hc/MPC%20HomeCinema%20-%20Win32/MPC-HC_v1.6.5.6366_x86/MPC-HC.1.6.5.6366.x86.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
index 3e0b754..dc7bd11 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = OpenTTD\r
-Version = 1.2.2\r
+Version = 1.2.3\r
 Licence = GPL v2\r
 Description = Open Source clone of the "Transport Tycoon Deluxe" game engine. You need a copy of Transport Tycoon.\r
 Size = 4.4MB\r
 Category = 4\r
 URLSite = http://www.openttd.org/\r
-URLDownload = http://binaries.openttd.org/releases/1.2.2/openttd-1.2.2-windows-win32.exe\r
+URLDownload = http://binaries.openttd.org/releases/1.2.3/openttd-1.2.3-windows-win32.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
index 2a7609f..890e9c0 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = Opera\r
-Version = 12.02\r
+Version = 12.12\r
 Licence = Freeware\r
 Description = The popular Opera Browser with many advanced features and including a Mail and BitTorrent client.\r
 Size = 12.00MB\r
 Category = 5\r
 URLSite = http://www.opera.com/\r
-URLDownload = http://ftp.opera.com/pub/opera/win/1202/int/Opera_1202_int_Setup.exe\r
+URLDownload = http://ftp.opera.com/pub/opera/win/1212/int/Opera_1212_int_Setup.exe\r
 CDPath = none\r
 \r
 [Section.0405]\r
index 9050c89..f36b537 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = ReactOS Build Environment\r
-Version = 2.0\r
+Version = 2.1\r
 Licence = GPL\r
 Description = Allows you to build the ReactOS Source. For more instructions see ReactOS wiki.\r
-Size = 17.8MB\r
+Size = 30.8MB\r
 Category = 7\r
 URLSite = http://reactos.org/wiki/Build_Environment\r
-URLDownload = http://heanet.dl.sourceforge.net/project/reactos/RosBE-Windows/i386/2.0/RosBE-2.0.exe\r
+URLDownload = http://heanet.dl.sourceforge.net/project/reactos/RosBE-Windows/i386/2.1/RosBE-2.1.exe\r
 CDPath = none\r
 \r
 [Section.0405]\r
index 33fb386..df366ac 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = SciTE\r
-Version = 3.2.2\r
+Version = 3.2.3\r
 Licence = Freeware\r
 Description = SciTE is a SCIntilla based Text Editor. Originally built to demonstrate Scintilla, it has grown to be a generally useful editor with facilities for building and running programs.\r
 Size = 685kB\r
 Category = 7\r
 URLSite = http://www.scintilla.org/\r
-URLDownload = http://heanet.dl.sourceforge.net/project/scintilla/SciTE/3.2.2/Sc322.exe\r
+URLDownload = http://heanet.dl.sourceforge.net/project/scintilla/SciTE/3.2.3/Sc323.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
index 08e3647..b04482c 100644 (file)
@@ -2,50 +2,50 @@
 \r
 [Section]\r
 Name = Mozilla SeaMonkey\r
-Version = 2.12\r
+Version = 2.14.1\r
 Licence = MPL/GPL/LGPL\r
 Description = Mozilla Suite is alive. This is the one and only Browser, Mail, Chat, and Composer bundle you will ever need.\r
-Size = 19.0MB\r
+Size = 20.0MB\r
 Category = 5\r
 URLSite = http://www.seamonkey-project.org/\r
-URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.12/win32/en-US/SeaMonkey%20Setup%202.12.exe\r
+URLDownload = http://ftp.mozilla.org/pub/mozilla.org/seamonkey/releases/2.14.1/win32/en-US/SeaMonkey%20Setup%202.14.1.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
 Description = Mozilla Suite lebt. Dies ist das einzige Browser-, Mail-, Chat- and Composerwerkzeug-Bundle welches Sie benötigen.\r
-Size = 19.0MB\r
-URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.12/win32/de/SeaMonkey%20Setup%202.12.exe\r
+Size = 20.0MB\r
+URLDownload = http://ftp.mozilla.org/pub/mozilla.org/seamonkey/releases/2.14.1/win32/de/SeaMonkey%20Setup%202.14.1.exe\r
 \r
 [Section.040a]\r
 Description = La suite de Mozilla está viva. Es el primero y único navegador web, gestor de correo, lector de noticias, Chat y editor HTML que necesitarás.\r
-Size = 18.9MB\r
-URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.12/win32/es-ES/SeaMonkey%20Setup%202.12.exe\r
+Size = 19.9MB\r
+URLDownload = http://ftp.mozilla.org/pub/mozilla.org/seamonkey/releases/2.14.1/win32/es-ES/SeaMonkey%20Setup%202.14.1.exe\r
 \r
 [Section.040c]\r
 Description = La suite Mozilla est en vie. Ceci est le seul et l'unique package navigateur, client mail, client chat et composer dont vous aurez besoin.\r
-Size = 19.2MB\r
-URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.12/win32/fr/SeaMonkey%20Setup%202.12.exe\r
+Size = 20.2MB\r
+URLDownload = http://ftp.mozilla.org/pub/mozilla.org/seamonkey/releases/2.14.1/win32/fr/SeaMonkey%20Setup%202.14.1.exe\r
 \r
 [Section.0413]\r
 Description = Mozilla Suite bundelt alle applicaties voor het Web: Browser, Mail, Chat, Composer.\r
-Size = 19.6MB\r
-URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.11/win32/nl/SeaMonkey%20Setup%202.11.exe\r
+Size = 20.6MB\r
+URLDownload = http://ftp.mozilla.org/pub/mozilla.org/seamonkey/releases/2.14.1/win32/nl/SeaMonkey%20Setup%202.14.1.exe\r
 \r
 [Section.0415]\r
 Description = Pakiet Mozilla żyje. W zestawie: przeglądarka, klient poczty, IRC oraz Edytor HTML - wszystko, czego potrzebujesz.\r
-Size = 19.8MB\r
-URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.12/win32/pl/SeaMonkey%20Setup%202.12.exe\r
+Size = 20.8MB\r
+URLDownload = http://ftp.mozilla.org/pub/mozilla.org/seamonkey/releases/2.14.1/win32/pl/SeaMonkey%20Setup%202.14.1.exe\r
 \r
 [Section.0418]\r
 Description = Suita Mozilla. Acest pachet ce încorporează navigator, poștă electronică, client IRC și editor HTML, acoperind astfel o arie largă de necesități.\r
-Size = 17.59Mo\r
+Size = 20.59Mo\r
 \r
 [Section.0419]\r
 Description = Продолжение Mozilla Suite. Включает браузер, почтовый клиент, IRC-клиент и HTML-редактор.\r
-Size = 19.5MB\r
-URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.12/win32/ru/SeaMonkey%20Setup%202.12.exe\r
+Size = 20.5MB\r
+URLDownload = http://ftp.mozilla.org/pub/mozilla.org/seamonkey/releases/2.14.1/win32/ru/SeaMonkey%20Setup%202.14.1.exe\r
 \r
 [Section.0422]\r
 Description = Продовження Mozilla Suite. Включає в себе браузер, поштовий клієнт, IRC-клієнт та HTML-редактор.\r
-Size = 19.5MB\r
-URLDownload = http://ftp.df.lth.se/mozilla/seamonkey/releases/2.12/win32/ru/SeaMonkey%20Setup%202.12.exe\r
+Size = 20.5MB\r
+URLDownload = http://ftp.mozilla.org/pub/mozilla.org/seamonkey/releases/2.14.1/win32/ru/SeaMonkey%20Setup%202.14.1.exe\r
index b25c37e..d7d8804 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = SMPlayer\r
-Version = 0.8.0\r
+Version = 0.8.3\r
 Licence = GPL\r
 Description = SMPlayer.\r
 Size = 15.7MB\r
 Category = 1\r
 URLSite = http://smplayer.sourceforge.net/\r
-URLDownload = http://freefr.dl.sourceforge.net/project/smplayer/SMPlayer/0.8.0/smplayer-0.8.0-win32.exe\r
+URLDownload = http://freefr.dl.sourceforge.net/project/smplayer/SMPlayer/0.8.3/smplayer-0.8.3-win32.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
index 4193989..597d37c 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = SumatraPDF\r
-Version = 2.1.1\r
+Version = 2.2\r
 Licence = GPLv3\r
 Description = Sumatra PDF is a slim, free, open-source PDF reader. Portable out of the box.\r
-Size = 4.2MB\r
+Size = 4.8MB\r
 Category = 6\r
 URLSite = http://blog.kowalczyk.info/software/sumatrapdf/free-pdf-reader.html\r
-URLDownload = https://kjkpub.s3.amazonaws.com/sumatrapdf/rel/SumatraPDF-2.1.1-install.exe\r
+URLDownload = https://kjkpub.s3.amazonaws.com/sumatrapdf/rel/SumatraPDF-2.2-install.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
index 8f3f05f..c3df57d 100644 (file)
@@ -1,33 +1,33 @@
 ; UTF-8
 
 [Section]
-Name = Mozilla Thunderbird 15
-Version = 15.0
+Name = Mozilla Thunderbird 17
+Version = 17.0
 Licence = MPL/GPL/LGPL
 Description = The most popular and one of the best free Mail Clients out there.
 Size = 17.6MB
 Category = 5
 URLSite = http://www.mozilla-europe.org/en/products/thunderbird/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/15.0/win32/en-US/Thunderbird%20Setup%2015.0.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/17.0/win32/en-US/Thunderbird%20Setup%2017.0.exe
 CDPath = none
 
 [Section.0407]
 Description = Der populärste und einer der besten freien Mail-Clients.
 Size = 17.5MB
 URLSite = http://www.mozilla-europe.org/de/products/thunderbird/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/15.0/win32/de/Thunderbird%20Setup%2015.0.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/17.0/win32/de/Thunderbird%20Setup%2017.0.exe
 
 [Section.040a]
 Description = El más popular y uno de los mejores clientes mail que hay.
 Size = 17.4MB
 URLSite = http://www.mozilla-europe.org/es/products/thunderbird/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/15.0/win32/es-ES/Thunderbird%20Setup%2015.0.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/17.0/win32/es-ES/Thunderbird%20Setup%2017.0.exe
 
 [Section.040c]
 Description = Le plus populaire et l'un des meilleurs clients mail gratuits disponible.
 Size = 17.8MB
 URLSite = http://www.mozilla-europe.org/fr/products/thunderbird/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/15.0/win32/fr/Thunderbird%20Setup%2015.0.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/17.0/win32/fr/Thunderbird%20Setup%2017.0.exe
 
 [Section.0413]
 Description = De meest populaire en een van de beste gratis e-mail-programma's.
@@ -39,22 +39,22 @@ URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/1
 Description = Najpopularniejszy i jeden z najlepszych darmowych klientów poczty.
 Size = 18.3MB
 URLSite = http://www.mozilla-europe.org/pl/products/thunderbird/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/15.0/win32/pl/Thunderbird%20Setup%2015.0.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/17.0/win32/pl/Thunderbird%20Setup%2017.0.exe
 
 [Section.0418]
 Description = Cel mai popular și unul dintre cele mai bune clientele gratuite de poștă electronică.
 Size = 18.0Mo
 URLSite = http://www.mozilla-europe.org/ro/products/thunderbird/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/15.0/win32/ro/Thunderbird%20Setup%2015.0.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/17.0/win32/ro/Thunderbird%20Setup%2017.0.exe
 
 [Section.0419]
 Description = Один из самых популярных и лучших бесплатных почтовых клиентов.
 Size = 17.9MB
 URLSite = http://www.mozilla-europe.org/ru/products/thunderbird/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/15.0/win32/ru/Thunderbird%20Setup%2015.0.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/17.0/win32/ru/Thunderbird%20Setup%2017.0.exe
 
 [Section.0422]
 Description = Найпопулярніший та один з кращих поштових клієнтів.
 Size = 17.9MB
 URLSite = http://www.mozillamessaging.com/uk/thunderbird/
-URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/15.0/win32/uk/Thunderbird%20Setup%2015.0.exe
+URLDownload = http://releases.mozilla.org/pub/mozilla.org/thunderbird/releases/17.0/win32/uk/Thunderbird%20Setup%2017.0.exe
index 614cb17..9121c28 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = UltraVNC\r
-Version = 1.0.9.6.2\r
+Version = 1.1.8.0\r
 Licence = GPL\r
 Description = Open-source VNC client/server.\r
 Size = 2.19MB\r
 Category = 5\r
 URLSite = http://www.uvnc.com/\r
-URLDownload = http://www.uvnc.eu/download/10962/UltraVNC_1.0.9.6.2_Setup.exe\r
+URLDownload = http://www.uvnc.eu/download/1180/UltraVNC_1_1_8_X86_Setup.exe\r
 CDPath = none\r
 \r
 [Section.040a]\r
index 1ee7487..2c40d85 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = µTorrent\r
-Version = 3.2\r
+Version = 3.2.3\r
 Licence = Freeware for non-commercial uses\r
 Description = Small and fast BitTorrent Client.\r
-Size = 874.87kB\r
+Size = 946.00kB\r
 Category = 5\r
 URLSite = http://www.utorrent.com/\r
-URLDownload = http://download.utorrent.com/3.2/uTorrent.exe\r
+URLDownload = http://download.utorrent.com/3.2.3/uTorrent.exe\r
 CDPath = none\r
 \r
 \r
index 0331cc7..21cdb4e 100644 (file)
@@ -2,13 +2,13 @@
 \r
 [Section]\r
 Name = VLC media player\r
-Version = 2.0.3\r
+Version = 2.0.5\r
 Licence = GPL\r
 Description = A media player.\r
-Size = 21.6MB\r
+Size = 21.9MB\r
 Category = 1\r
 URLSite = http://www.videolan.org/vlc/\r
-URLDownload = http://garr.dl.sourceforge.net/project/vlc/2.0.3/win32/vlc-2.0.3-win32.exe\r
+URLDownload = http://garr.dl.sourceforge.net/project/vlc/2.0.5/win32/vlc-2.0.5-win32.exe\r
 CDPath = none\r
 \r
 [Section.0407]\r
index c3fa0a6..b4b5908 100755 (executable)
@@ -1,5 +1,12 @@
 @echo off\r
 \r
+:: This is needed so as to avoid static expansion of environment variables\r
+:: inside if (...) conditionals.\r
+:: See http://stackoverflow.com/questions/305605/weird-scope-issue-in-bat-file\r
+:: for more explanation.\r
+:: Precisely needed for configuring Visual Studio Environment.\r
+setlocal enabledelayedexpansion\r
+\r
 :: Special case %1 = arm_hosttools %2 = vcvarsall.bat %3 = %CMAKE_GENERATOR%\r
 if /I "%1" == "arm_hosttools" (\r
     echo Configuring x86 host tools for ARM cross build\r
@@ -46,7 +53,7 @@ if defined ROS_ARCH (
     set USE_WDK_HEADERS=0\r
 \r
 ) else if defined VCINSTALLDIR (\r
-    :: VS command prompt does not put this in enviroment vars\r
+    :: VS command prompt does not put this in environment vars\r
     cl 2>&1 | find "x86" > NUL && set ARCH=i386\r
     cl 2>&1 | find "x64" > NUL && set ARCH=amd64\r
     cl 2>&1 | find "ARM" > NUL && set ARCH=arm\r
@@ -59,30 +66,30 @@ if defined ROS_ARCH (
         exit /b\r
     )\r
 \r
-    echo Detected Visual Studio Environment %BUILD_ENVIRONMENT%-%ARCH%\r
+    echo Detected Visual Studio Environment !BUILD_ENVIRONMENT!-!ARCH!\r
     if /I "%1" == "VSSolution" (\r
-        if "%BUILD_ENVIRONMENT%" == "VS8" (\r
-            if "%ARCH%" == "amd64" (\r
+        if "!BUILD_ENVIRONMENT!" == "VS8" (\r
+            if "!ARCH!" == "amd64" (\r
                 set CMAKE_GENERATOR="Visual Studio 8 2005 Win64"\r
             ) else (\r
                 set CMAKE_GENERATOR="Visual Studio 8 2005"\r
             )\r
-        ) else if "%BUILD_ENVIRONMENT%" == "VS9" (\r
-            if "%ARCH%" == "amd64" (\r
+        ) else if "!BUILD_ENVIRONMENT!" == "VS9" (\r
+            if "!ARCH!" == "amd64" (\r
                 set CMAKE_GENERATOR="Visual Studio 9 2008 Win64"\r
             ) else (\r
                 set CMAKE_GENERATOR="Visual Studio 9 2008"\r
             )\r
-        ) else if "%BUILD_ENVIRONMENT%" == "VS10" (\r
-            if "%ARCH%" == "amd64" (\r
+        ) else if "!BUILD_ENVIRONMENT!" == "VS10" (\r
+            if "!ARCH!" == "amd64" (\r
                 set CMAKE_GENERATOR="Visual Studio 10 Win64"\r
             ) else (\r
                 set CMAKE_GENERATOR="Visual Studio 10"\r
             )\r
-        ) else if "%BUILD_ENVIRONMENT%" == "VS11" (\r
-            if "%ARCH%" == "amd64" (\r
+        ) else if "!BUILD_ENVIRONMENT!" == "VS11" (\r
+            if "!ARCH!" == "amd64" (\r
                 set CMAKE_GENERATOR="Visual Studio 11 Win64"\r
-            ) else if "%ARCH%" == "arm" (\r
+            ) else if "!ARCH!" == "arm" (\r
                 set CMAKE_GENERATOR="Visual Studio 11 ARM"\r
             ) else (\r
                 set CMAKE_GENERATOR="Visual Studio 11"\r
@@ -111,7 +118,7 @@ if defined ROS_ARCH (
 \r
 :: Checkpoint\r
 if not defined ARCH (\r
-    echo unknown build architecture\r
+    echo Unknown build architecture\r
     exit /b\r
 )\r
 \r
index 4a241e2..2e7ad51 100644 (file)
@@ -54,19 +54,20 @@ NET_API_STATUS WINAPI NetApiBufferReallocate(LPVOID OldBuffer, DWORD NewByteCoun
                                              LPVOID* NewBuffer)
 {
     TRACE("(%p, %d, %p)\n", OldBuffer, NewByteCount, NewBuffer);
-    if (NewByteCount) 
+    if (NewByteCount)
     {
         if (OldBuffer)
             *NewBuffer = HeapReAlloc(GetProcessHeap(), 0, OldBuffer, NewByteCount);
         else
             *NewBuffer = HeapAlloc(GetProcessHeap(), 0, NewByteCount);
-       return *NewBuffer ? NERR_Success : GetLastError();
-    } 
-    else 
+        return *NewBuffer ? NERR_Success : GetLastError();
+    }
+    else
     {
-       if (!HeapFree(GetProcessHeap(), 0, OldBuffer)) return GetLastError();
-       *NewBuffer = 0;
-       return NERR_Success;
+        if (!HeapFree(GetProcessHeap(), 0, OldBuffer))
+            return GetLastError();
+        *NewBuffer = 0;
+        return NERR_Success;
     }
 }
 
index 95811fb..59b9969 100644 (file)
@@ -97,6 +97,7 @@ NTSTATUS
 SampCreateDbObject(IN PSAM_DB_OBJECT ParentObject,
                    IN LPWSTR ContainerName,
                    IN LPWSTR ObjectName,
+                   IN ULONG RelativeId,
                    IN SAM_DB_OBJECT_TYPE ObjectType,
                    IN ACCESS_MASK DesiredAccess,
                    OUT PSAM_DB_OBJECT *DbObject)
@@ -223,7 +224,7 @@ SampCreateDbObject(IN PSAM_DB_OBJECT ParentObject,
     NewObject->Name = RtlAllocateHeap(RtlGetProcessHeap(),
                                       0,
                                       (wcslen(ObjectName) + 1) * sizeof(WCHAR));
-    if (NewObject == NULL)
+    if (NewObject->Name == NULL)
     {
         if (MembersKeyHandle != NULL)
             NtClose(MembersKeyHandle);
@@ -240,6 +241,7 @@ SampCreateDbObject(IN PSAM_DB_OBJECT ParentObject,
     NewObject->Access = DesiredAccess;
     NewObject->KeyHandle = ObjectKeyHandle;
     NewObject->MembersKeyHandle = MembersKeyHandle;
+    NewObject->RelativeId = RelativeId;
     NewObject->ParentObject = ParentObject;
 
     if (ParentObject != NULL)
@@ -255,6 +257,7 @@ NTSTATUS
 SampOpenDbObject(IN PSAM_DB_OBJECT ParentObject,
                  IN LPWSTR ContainerName,
                  IN LPWSTR ObjectName,
+                 IN ULONG RelativeId,
                  IN SAM_DB_OBJECT_TYPE ObjectType,
                  IN ACCESS_MASK DesiredAccess,
                  OUT PSAM_DB_OBJECT *DbObject)
@@ -374,7 +377,7 @@ SampOpenDbObject(IN PSAM_DB_OBJECT ParentObject,
     NewObject->Name = RtlAllocateHeap(RtlGetProcessHeap(),
                                       0,
                                       (wcslen(ObjectName) + 1) * sizeof(WCHAR));
-    if (NewObject == NULL)
+    if (NewObject->Name == NULL)
     {
         if (MembersKeyHandle != NULL)
             NtClose(MembersKeyHandle);
@@ -390,6 +393,7 @@ SampOpenDbObject(IN PSAM_DB_OBJECT ParentObject,
     NewObject->Access = DesiredAccess;
     NewObject->KeyHandle = ObjectKeyHandle;
     NewObject->MembersKeyHandle = MembersKeyHandle;
+    NewObject->RelativeId = RelativeId;
     NewObject->ParentObject = ParentObject;
 
     if (ParentObject != NULL)
index 68b886a..edb6dc2 100644 (file)
@@ -88,6 +88,7 @@ SamrConnect(IN PSAMPR_SERVER_NAME ServerName,
     Status = SampOpenDbObject(NULL,
                               NULL,
                               L"SAM",
+                              0,
                               SamDbServerObject,
                               DesiredAccess,
                               &ServerObject);
@@ -469,6 +470,7 @@ done:
     return Status;
 }
 
+
 /* Function 7 */
 NTSTATUS
 NTAPI
@@ -508,6 +510,7 @@ SamrOpenDomain(IN SAMPR_HANDLE ServerHandle,
         Status = SampOpenDbObject(ServerObject,
                                   L"Domains",
                                   L"Builtin",
+                                  0,
                                   SamDbDomainObject,
                                   DesiredAccess,
                                   &DomainObject);
@@ -523,6 +526,7 @@ SamrOpenDomain(IN SAMPR_HANDLE ServerHandle,
         Status = SampOpenDbObject(ServerObject,
                                   L"Domains",
                                   L"Account",
+                                  0,
                                   SamDbDomainObject,
                                   DesiredAccess,
                                   &DomainObject);
@@ -589,6 +593,45 @@ done:
 }
 
 
+static NTSTATUS
+SampGetNumberOfAccounts(PSAM_DB_OBJECT DomainObject,
+                        LPCWSTR AccountType,
+                        PULONG Count)
+{
+    HANDLE AccountKeyHandle = NULL;
+    HANDLE NamesKeyHandle = NULL;
+    NTSTATUS Status;
+
+    *Count = 0;
+
+    Status = SampRegOpenKey(DomainObject->KeyHandle,
+                            AccountType,
+                            KEY_READ,
+                            &AccountKeyHandle);
+    if (!NT_SUCCESS(Status))
+        return Status;
+
+    Status = SampRegOpenKey(AccountKeyHandle,
+                            L"Names",
+                            KEY_READ,
+                            &NamesKeyHandle);
+    if (!NT_SUCCESS(Status))
+        goto done;
+
+    Status = SampRegQueryKeyInfo(NamesKeyHandle,
+                                 NULL,
+                                 Count);
+done:
+    if (NamesKeyHandle != NULL)
+        SampRegCloseKey(NamesKeyHandle);
+
+    if (AccountKeyHandle != NULL)
+        SampRegCloseKey(AccountKeyHandle);
+
+    return Status;
+}
+
+
 static NTSTATUS
 SampQueryDomainGeneral(PSAM_DB_OBJECT DomainObject,
                        PSAMPR_DOMAIN_INFO_BUFFER *Buffer)
@@ -651,9 +694,35 @@ SampQueryDomainGeneral(PSAM_DB_OBJECT DomainObject,
         goto done;
     }
 
-    InfoBuffer->General.UserCount = 0;  /* FIXME */
-    InfoBuffer->General.GroupCount = 0; /* FIXME */
-    InfoBuffer->General.AliasCount = 0; /* FIXME */
+    /* Get the number of Users in the Domain */
+    Status = SampGetNumberOfAccounts(DomainObject,
+                                     L"Users",
+                                     &InfoBuffer->General.UserCount);
+    if (!NT_SUCCESS(Status))
+    {
+        TRACE("Status 0x%08lx\n", Status);
+        goto done;
+    }
+
+    /* Get the number of Groups in the Domain */
+    Status = SampGetNumberOfAccounts(DomainObject,
+                                     L"Groups",
+                                     &InfoBuffer->General.GroupCount);
+    if (!NT_SUCCESS(Status))
+    {
+        TRACE("Status 0x%08lx\n", Status);
+        goto done;
+    }
+
+    /* Get the number of Aliases in the Domain */
+    Status = SampGetNumberOfAccounts(DomainObject,
+                                     L"Aliases",
+                                     &InfoBuffer->General.AliasCount);
+    if (!NT_SUCCESS(Status))
+    {
+        TRACE("Status 0x%08lx\n", Status);
+        goto done;
+    }
 
     *Buffer = InfoBuffer;
 
@@ -1036,9 +1105,35 @@ SampQueryDomainGeneral2(PSAM_DB_OBJECT DomainObject,
         goto done;
     }
 
-    InfoBuffer->General2.I1.UserCount = 0;  /* FIXME */
-    InfoBuffer->General2.I1.GroupCount = 0; /* FIXME */
-    InfoBuffer->General2.I1.AliasCount = 0; /* FIXME */
+    /* Get the number of Users in the Domain */
+    Status = SampGetNumberOfAccounts(DomainObject,
+                                     L"Users",
+                                     &InfoBuffer->General2.I1.UserCount);
+    if (!NT_SUCCESS(Status))
+    {
+        TRACE("Status 0x%08lx\n", Status);
+        goto done;
+    }
+
+    /* Get the number of Groups in the Domain */
+    Status = SampGetNumberOfAccounts(DomainObject,
+                                     L"Groups",
+                                     &InfoBuffer->General2.I1.GroupCount);
+    if (!NT_SUCCESS(Status))
+    {
+        TRACE("Status 0x%08lx\n", Status);
+        goto done;
+    }
+
+    /* Get the number of Aliases in the Domain */
+    Status = SampGetNumberOfAccounts(DomainObject,
+                                     L"Aliases",
+                                     &InfoBuffer->General2.I1.AliasCount);
+    if (!NT_SUCCESS(Status))
+    {
+        TRACE("Status 0x%08lx\n", Status);
+        goto done;
+    }
 
     *Buffer = InfoBuffer;
 
@@ -1535,6 +1630,7 @@ SamrSetInformationDomain(IN SAMPR_HANDLE DomainHandle,
     return Status;
 }
 
+
 /* Function 10 */
 NTSTATUS
 NTAPI
@@ -1616,6 +1712,7 @@ SamrCreateGroupInDomain(IN SAMPR_HANDLE DomainHandle,
     Status = SampCreateDbObject(DomainObject,
                                 L"Groups",
                                 szRid,
+                                ulRid,
                                 SamDbGroupObject,
                                 DesiredAccess,
                                 &GroupObject);
@@ -1981,6 +2078,7 @@ SamrCreateUserInDomain(IN SAMPR_HANDLE DomainHandle,
     Status = SampCreateDbObject(DomainObject,
                                 L"Users",
                                 szRid,
+                                ulRid,
                                 SamDbUserObject,
                                 DesiredAccess,
                                 &UserObject);
@@ -2434,6 +2532,7 @@ SamrCreateAliasInDomain(IN SAMPR_HANDLE DomainHandle,
     Status = SampCreateDbObject(DomainObject,
                                 L"Aliases",
                                 szRid,
+                                ulRid,
                                 SamDbAliasObject,
                                 DesiredAccess,
                                 &AliasObject);
@@ -3371,6 +3470,7 @@ SamrOpenGroup(IN SAMPR_HANDLE DomainHandle,
     Status = SampOpenDbObject(DomainObject,
                               L"Groups",
                               szRid,
+                              GroupId,
                               SamDbGroupObject,
                               DesiredAccess,
                               &GroupObject);
@@ -3818,6 +3918,7 @@ SamrOpenAlias(IN SAMPR_HANDLE DomainHandle,
     Status = SampOpenDbObject(DomainObject,
                               L"Aliases",
                               szRid,
+                              AliasId,
                               SamDbAliasObject,
                               DesiredAccess,
                               &AliasObject);
@@ -4482,6 +4583,7 @@ SamrOpenUser(IN SAMPR_HANDLE DomainHandle,
     Status = SampOpenDbObject(DomainObject,
                               L"Users",
                               szRid,
+                              UserId,
                               SamDbUserObject,
                               DesiredAccess,
                               &UserObject);
@@ -6242,6 +6344,7 @@ SamrCreateUser2InDomain(IN SAMPR_HANDLE DomainHandle,
     Status = SampCreateDbObject(DomainObject,
                                 L"Users",
                                 szRid,
+                                ulRid,
                                 SamDbUserObject,
                                 DesiredAccess,
                                 &UserObject);
index c7e54ad..609a402 100644 (file)
@@ -46,6 +46,7 @@ typedef struct _SAM_DB_OBJECT
     LPWSTR Name;
     HANDLE KeyHandle;
     HANDLE MembersKeyHandle;  // only used by Aliases and Groups
+    ULONG RelativeId;
     struct _SAM_DB_OBJECT *ParentObject;
 } SAM_DB_OBJECT, *PSAM_DB_OBJECT;
 
@@ -117,6 +118,7 @@ NTSTATUS
 SampCreateDbObject(IN PSAM_DB_OBJECT ParentObject,
                    IN LPWSTR ContainerName,
                    IN LPWSTR ObjectName,
+                   IN ULONG RelativeId,
                    IN SAM_DB_OBJECT_TYPE ObjectType,
                    IN ACCESS_MASK DesiredAccess,
                    OUT PSAM_DB_OBJECT *DbObject);
@@ -125,6 +127,7 @@ NTSTATUS
 SampOpenDbObject(IN PSAM_DB_OBJECT ParentObject,
                  IN LPWSTR ContainerName,
                  IN LPWSTR ObjectName,
+                 IN ULONG RelativeId,
                  IN SAM_DB_OBJECT_TYPE ObjectType,
                  IN ACCESS_MASK DesiredAccess,
                  OUT PSAM_DB_OBJECT *DbObject);
index 9a8c3a1..ba0771e 100644 (file)
@@ -262,11 +262,68 @@ typedef enum _DOMAIN_SERVER_ROLE
     DomainServerRolePrimary
 } DOMAIN_SERVER_ROLE, *PDOMAIN_SERVER_ROLE;
 
+#include "pshpack4.h"
+typedef struct _DOMAIN_GENERAL_INFORMATION
+{
+    LARGE_INTEGER ForceLogoff;
+    UNICODE_STRING OemInformation;
+    UNICODE_STRING DomainName;
+    UNICODE_STRING ReplicaSourceNodeName;
+    LARGE_INTEGER DomainModifiedCount;
+    DOMAIN_SERVER_ENABLE_STATE DomainServerState;
+    DOMAIN_SERVER_ROLE DomainServerRole;
+    BOOLEAN UasCompatibilityRequired;
+    ULONG UserCount;
+    ULONG GroupCount;
+    ULONG AliasCount;
+} DOMAIN_GENERAL_INFORMATION, *PDOMAIN_GENERAL_INFORMATION;
+#include "poppack.h"
+
+typedef struct _DOMAIN_LOGOFF_INFORMATION
+{
+    LARGE_INTEGER ForceLogoff;
+} DOMAIN_LOGOFF_INFORMATION, *PDOMAIN_LOGOFF_INFORMATION;
+
+typedef struct _DOMAIN_OEM_INFORMATION
+{
+    UNICODE_STRING OemInformation;
+} DOMAIN_OEM_INFORMATION, *PDOMAIN_OEM_INFORMATION;
+
 typedef struct _DOMAIN_NAME_INFORMATION
 {
     UNICODE_STRING DomainName;
 } DOMAIN_NAME_INFORMATION, *PDOMAIN_NAME_INFORMATION;
 
+typedef struct _DOMAIN_REPLICATION_INFORMATION
+{
+    UNICODE_STRING ReplicaSourceNodeName;
+} DOMAIN_REPLICATION_INFORMATION, *PDOMAIN_REPLICATION_INFORMATION;
+
+typedef struct _DOMAIN_SERVER_ROLE_INFORMATION
+{
+    DOMAIN_SERVER_ROLE DomainServerRole;
+} DOMAIN_SERVER_ROLE_INFORMATION, *PDOMAIN_SERVER_ROLE_INFORMATION;
+
+typedef struct _DOMAIN_STATE_INFORMATION
+{
+    DOMAIN_SERVER_ENABLE_STATE DomainServerState;
+} DOMAIN_STATE_INFORMATION, *PDOMAIN_STATE_INFORMATION;
+
+typedef struct _DOMAIN_UAS_INFORMATION
+{
+    BOOLEAN UasCompatibilityRequired;
+} DOMAIN_UAS_INFORMATION;
+
+#include "pshpack4.h"
+typedef struct _DOMAIN_GENERAL_INFORMATION2
+{
+    DOMAIN_GENERAL_INFORMATION I1;
+    LARGE_INTEGER LockoutDuration;
+    LARGE_INTEGER LockoutObservationWindow;
+    USHORT LockoutThreshold;
+} DOMAIN_GENERAL_INFORMATION2, *PDOMAIN_GENERAL_INFORMATION2;
+#include "poppack.h"
+
 typedef enum _GROUP_INFORMATION_CLASS
 {
     GroupGeneralInformation = 1,
index dbecb57..6bfdaa9 100644 (file)
@@ -143,12 +143,12 @@ typedef enum _DOMAIN_SERVER_ENABLE_STATE
     DomainServerEnabled = 1,
     DomainServerDisabled
 } DOMAIN_SERVER_ENABLE_STATE, *PDOMAIN_SERVER_ENABLE_STATE;
-cpp_quote("#endif")
 
 typedef struct _DOMAIN_STATE_INFORMATION
 {
     DOMAIN_SERVER_ENABLE_STATE DomainServerState;
 } DOMAIN_STATE_INFORMATION, *PDOMAIN_STATE_INFORMATION;
+cpp_quote("#endif")
 
 cpp_quote("#ifndef _NTSAM_")
 typedef enum _DOMAIN_SERVER_ROLE
@@ -169,6 +169,7 @@ typedef struct _DOMAIN_PASSWORD_INFORMATION
 } DOMAIN_PASSWORD_INFORMATION, *PDOMAIN_PASSWORD_INFORMATION;
 cpp_quote("#endif")
 
+cpp_quote("#ifndef _NTSAM_")
 typedef struct _DOMAIN_LOGOFF_INFORMATION
 {
     OLD_LARGE_INTEGER ForceLogoff;
@@ -178,6 +179,7 @@ typedef struct _DOMAIN_SERVER_ROLE_INFORMATION
 {
     DOMAIN_SERVER_ROLE DomainServerRole;
 } DOMAIN_SERVER_ROLE_INFORMATION, *PDOMAIN_SERVER_ROLE_INFORMATION;
+cpp_quote("#endif")
 
 typedef struct _DOMAIN_MODIFIED_INFORMATION
 {
index 4bdc34d..e6a35e9 100644 (file)
@@ -393,4 +393,4 @@ IntVideoPortDispatchPdoPnp(
     IoCompleteRequest(Irp, IO_NO_INCREMENT);
 
     return Status;
-}
\ No newline at end of file
+}
index 5ee4ba6..b160392 100644 (file)
@@ -3,4 +3,4 @@
 INT FASTCALL GdiGetClipBox(HDC hDC, RECTL *rc);
 INT FASTCALL GdiSelectVisRgn(HDC hdc, HRGN hrgn);
 INT FASTCALL GdiExtSelectClipRgn (PDC dc, HRGN hrgn, int fnMode);
-int FASTCALL CLIPPING_UpdateGCRegion(DC* Dc);
\ No newline at end of file
+int FASTCALL CLIPPING_UpdateGCRegion(DC* Dc);
index 77dce0e..be749e2 100644 (file)
@@ -33,32 +33,33 @@ typedef struct _USER_HANDLE_TABLE
    int allocated_handles;
 } USER_HANDLE_TABLE, * PUSER_HANDLE_TABLE;
 
-typedef enum _USER_OBJECT_TYPE
+typedef enum _HANDLE_TYPE
 {
-  otFree = 0,
-  otWindow,
-  otMenu,
-  otCursorIcon,
-  otSMWP,
-  otHook,
-  otClipBoardData,
-  otCallProc,
-  otAccel,
-  otDDEaccess,
-  otDDEconv,
-  otDDExact,
-  otMonitor,
-  otKBDlayout,
-  otKBDfile,
-  otEvent,
-  otTimer,
-  otInputContext,
-  otHidData,
-  otDeviceInfo,
-  otTouchInput,
-  otGestureInfo,
-  USER_HANDLE_TYPE_COUNT
-} USER_OBJECT_TYPE;
+    TYPE_FREE = 0,
+    TYPE_WINDOW = 1,
+    TYPE_MENU = 2,
+    TYPE_CURSOR = 3,
+    TYPE_SETWINDOWPOS = 4,
+    TYPE_HOOK = 5,
+    TYPE_CLIPDATA = 6,
+    TYPE_CALLPROC = 7,
+    TYPE_ACCELTABLE = 8,
+    TYPE_DDEACCESS = 9,
+    TYPE_DDECONV = 10,
+    TYPE_DDEXACT = 11,
+    TYPE_MONITOR = 12,
+    TYPE_KBDLAYOUT = 13,
+    TYPE_KBDFILE = 14,
+    TYPE_WINEVENTHOOK = 15,
+    TYPE_TIMER = 16,
+    TYPE_INPUTCONTEXT = 17,
+    TYPE_HIDDATA = 18,
+    TYPE_DEVICEINFO = 19,
+    TYPE_TOUCHINPUTINFO = 20,
+    TYPE_GESTUREINFOOBJ = 21,
+    TYPE_CTYPES,
+    TYPE_GENERIC = 255
+} HANDLE_TYPE, *PHANDLE_TYPE;
 
 typedef enum _USERTHREADINFOCLASS
 {
index 24d1b61..4c88bfa 100644 (file)
@@ -28,7 +28,7 @@ PACCELERATOR_TABLE FASTCALL UserGetAccelObject(HACCEL hAccel)
         return NULL;
     }
 
-    Accel = UserGetObject(gHandleTable, hAccel, otAccel);
+    Accel = UserGetObject(gHandleTable, hAccel, TYPE_ACCELTABLE);
     if (!Accel)
     {
         EngSetLastError(ERROR_INVALID_ACCEL_HANDLE);
@@ -257,7 +257,7 @@ NtUserCreateAcceleratorTable(
         RETURN( (HACCEL) NULL );
     }
 
-    Accel = UserCreateObject(gHandleTable, NULL, NULL, (PHANDLE)&hAccel, otAccel, sizeof(ACCELERATOR_TABLE));
+    Accel = UserCreateObject(gHandleTable, NULL, NULL, (PHANDLE)&hAccel, TYPE_ACCELTABLE, sizeof(ACCELERATOR_TABLE));
 
     if (Accel == NULL)
     {
@@ -270,7 +270,7 @@ NtUserCreateAcceleratorTable(
     if (Accel->Table == NULL)
     {
         UserDereferenceObject(Accel);
-        UserDeleteObject(hAccel, otAccel);
+        UserDeleteObject(hAccel, TYPE_ACCELTABLE);
         SetLastNtError(STATUS_NO_MEMORY);
         RETURN( (HACCEL) NULL);
     }
@@ -308,7 +308,7 @@ NtUserCreateAcceleratorTable(
     {
         ExFreePoolWithTag(Accel->Table, USERTAG_ACCEL);
         UserDereferenceObject(Accel);
-        UserDeleteObject(hAccel, otAccel);
+        UserDeleteObject(hAccel, TYPE_ACCELTABLE);
         SetLastNtError(Status);
         RETURN( (HACCEL) NULL);
     }
@@ -351,7 +351,7 @@ NtUserDestroyAcceleratorTable(
         Accel->Table = NULL;
     }
 
-    UserDeleteObject(hAccel, otAccel);
+    UserDeleteObject(hAccel, TYPE_ACCELTABLE);
 
     RETURN( TRUE);
 
index 815cee5..a1b6356 100644 (file)
@@ -21,7 +21,7 @@ VOID
 DestroyCallProc(IN PDESKTOPINFO Desktop,
                 IN OUT PCALLPROCDATA CallProc)
 {
-    UserDeleteObject(UserHMGetHandle(CallProc), otCallProc);
+    UserDeleteObject(UserHMGetHandle(CallProc), TYPE_CALLPROC);
 }
 
 PCALLPROCDATA
@@ -37,7 +37,7 @@ CreateCallProc(IN PDESKTOP Desktop,
                                              Desktop,
                                              NULL,
                                              &Handle,
-                                             otCallProc,
+                                             TYPE_CALLPROC,
                                              sizeof(CALLPROCDATA));
     if (NewCallProc != NULL)
     {
@@ -60,7 +60,7 @@ UserGetCallProcInfo(IN HANDLE hCallProc,
 
     CallProc = UserGetObject(gHandleTable,
                              hCallProc,
-                             otCallProc);
+                             TYPE_CALLPROC);
     if (CallProc == NULL)
     {
         return FALSE;
index a71b889..9a980ce 100644 (file)
@@ -462,7 +462,7 @@ IntSetClassWndProc(IN OUT PCLS Class,
    // Check if CallProc handle and retrieve previous call proc address and set.
    if (IsCallProcHandle(WndProc))
    {
-      pcpd = UserGetObject(gHandleTable, WndProc, otCallProc);
+      pcpd = UserGetObject(gHandleTable, WndProc, TYPE_CALLPROC);
       if (pcpd) chWndProc = pcpd->pfnClientPrevious;
    }
 
index 64b204e..28bb213 100644 (file)
@@ -58,7 +58,7 @@ IntFreeElementData(PCLIP pElement)
         !IS_DATA_SYNTHESIZED(pElement))
     {
         if (pElement->fGlobalHandle)
-            UserDeleteObject(pElement->hData, otClipBoardData);
+            UserDeleteObject(pElement->hData, TYPE_CLIPDATA);
         else if (pElement->fmt == CF_BITMAP || pElement->fmt == CF_PALETTE ||
                  pElement->fmt == CF_DSPBITMAP)
         {
@@ -184,7 +184,7 @@ IntSynthesizeDib(
                                                       NULL,
                                                       NULL,
                                                       &hMem,
-                                                      otClipBoardData,
+                                                      TYPE_CLIPDATA,
                                                       cjDataSize);
     if (!pClipboardData)
     {
@@ -235,7 +235,7 @@ IntSynthesizeBitmap(PWINSTATION_OBJECT pWinStaObj, PCLIP pBmEl)
     if(!pDibEl->fGlobalHandle)
         return;
 
-    pMemObj = (PCLIPBOARDDATA)UserGetObject(gHandleTable, pDibEl->hData, otClipBoardData);
+    pMemObj = (PCLIPBOARDDATA)UserGetObject(gHandleTable, pDibEl->hData, TYPE_CLIPDATA);
     if (!pMemObj)
         return;
 
@@ -297,7 +297,7 @@ IntAddSynthesizedFormats(PWINSTATION_OBJECT pWinStaObj)
         PCLIPBOARDDATA pMemObj;
         HANDLE hMem;
 
-        pMemObj = (PCLIPBOARDDATA)UserCreateObject(gHandleTable, NULL, NULL, &hMem, otClipBoardData,
+        pMemObj = (PCLIPBOARDDATA)UserCreateObject(gHandleTable, NULL, NULL, &hMem, TYPE_CLIPDATA,
                                                    sizeof(CLIPBOARDDATA) + sizeof(LCID));
         if (pMemObj)
         {
@@ -1087,7 +1087,7 @@ NtUserConvertMemHandle(
     UserEnterExclusive();
 
     /* Create Clipboard data object */
-    pMemObj = UserCreateObject(gHandleTable, NULL, NULL, &hMem, otClipBoardData, sizeof(CLIPBOARDDATA) + cbData);
+    pMemObj = UserCreateObject(gHandleTable, NULL, NULL, &hMem, TYPE_CLIPDATA, sizeof(CLIPBOARDDATA) + cbData);
     if (!pMemObj)
         goto cleanup;
 
@@ -1111,7 +1111,7 @@ NtUserConvertMemHandle(
     /* If we failed to copy data, remove handle */
     if (!pMemObj)
     {
-        UserDeleteObject(hMem, otClipBoardData);
+        UserDeleteObject(hMem, TYPE_CLIPDATA);
         hMem = NULL;
     }
 
@@ -1134,7 +1134,7 @@ NtUserCreateLocalMemHandle(
     UserEnterShared();
 
     /* Get Clipboard data object */
-    pMemObj = (PCLIPBOARDDATA)UserGetObject(gHandleTable, hMem, otClipBoardData);
+    pMemObj = (PCLIPBOARDDATA)UserGetObject(gHandleTable, hMem, TYPE_CLIPDATA);
     if (!pMemObj)
     {
         Status = STATUS_INVALID_HANDLE;
index 04431d7..a4dbce0 100644 (file)
@@ -77,7 +77,7 @@ PCURICON_OBJECT FASTCALL UserGetCurIconObject(HCURSOR hCurIcon)
         return NULL;
     }
 
-    CurIcon = (PCURICON_OBJECT)UserReferenceObjectByHandle(hCurIcon, otCursorIcon);
+    CurIcon = (PCURICON_OBJECT)UserReferenceObjectByHandle(hCurIcon, TYPE_CURSOR);
     if (!CurIcon)
     {
         /* We never set ERROR_INVALID_ICON_HANDLE. lets hope noone ever checks for it */
@@ -178,7 +178,7 @@ IntFindExistingCurIconObject(HMODULE hModule,
     LIST_FOR_EACH(CurIcon, &gCurIconList, CURICON_OBJECT, ListEntry)
     {
 
-        // if (NT_SUCCESS(UserReferenceObjectByPointer(Object, otCursorIcon))) // <- huh????
+        // if (NT_SUCCESS(UserReferenceObjectByPointer(Object, TYPE_CURSOR))) // <- huh????
 //      UserReferenceObject(  CurIcon);
 //      {
         if ((CurIcon->hModule == hModule) && (CurIcon->hRsrc == hRsrc))
@@ -209,7 +209,7 @@ IntCreateCurIconHandle(DWORD dwNumber)
     PCURICON_OBJECT CurIcon;
     HANDLE hCurIcon;
 
-    CurIcon = UserCreateObject(gHandleTable, NULL, NULL, &hCurIcon, otCursorIcon, sizeof(CURICON_OBJECT));
+    CurIcon = UserCreateObject(gHandleTable, NULL, NULL, &hCurIcon, TYPE_CURSOR, sizeof(CURICON_OBJECT));
 
     if (!CurIcon)
     {
@@ -223,7 +223,7 @@ IntCreateCurIconHandle(DWORD dwNumber)
     if (! ReferenceCurIconByProcess(CurIcon))
     {
         ERR("Failed to add process\n");
-        UserDeleteObject(hCurIcon, otCursorIcon);
+        UserDeleteObject(hCurIcon, TYPE_CURSOR);
         UserDereferenceObject(CurIcon);
         return NULL;
     }
@@ -273,7 +273,7 @@ IntDestroyCurIconObject(PCURICON_OBJECT CurIcon, PPROCESSINFO ppi)
         {
             /* Set the first process of the list as owner */
             Current = CONTAINING_RECORD(CurIcon->ProcessList.Flink, CURICON_PROCESS, ListEntry);
-            UserSetObjectOwner(CurIcon, otCursorIcon, Current->Process);
+            UserSetObjectOwner(CurIcon, TYPE_CURSOR, Current->Process);
         }
         UserDereferenceObject(CurIcon);
         return TRUE;
@@ -310,7 +310,7 @@ emptyList:
 
     /* We were given a pointer, no need to keep the reference anylonger! */
     UserDereferenceObject(CurIcon);
-    Ret = UserDeleteObject(CurIcon->Self, otCursorIcon);
+    Ret = UserDeleteObject(CurIcon->Self, TYPE_CURSOR);
 
     return Ret;
 }
index c80df05..c481eb5 100644 (file)
@@ -84,7 +84,7 @@ PCURICON_OBJECT FASTCALL UserGetCurIconObject(HCURSOR hCurIcon)
         return NULL;
     }
 
-    CurIcon = (PCURICON_OBJECT)UserReferenceObjectByHandle(hCurIcon, otCursorIcon);
+    CurIcon = (PCURICON_OBJECT)UserReferenceObjectByHandle(hCurIcon, TYPE_CURSOR);
     if (!CurIcon)
     {
         /* We never set ERROR_INVALID_ICON_HANDLE. lets hope noone ever checks for it */
@@ -229,7 +229,7 @@ IntCreateCurIconHandle(DWORD dwNumber)
     if(dwNumber == 0)
         dwNumber = 1;
 
-    CurIcon = UserCreateObject(gHandleTable, NULL, NULL, &hCurIcon, otCursorIcon, sizeof(CURICON_OBJECT));
+    CurIcon = UserCreateObject(gHandleTable, NULL, NULL, &hCurIcon, TYPE_CURSOR, sizeof(CURICON_OBJECT));
 
     if (!CurIcon)
     {
@@ -244,7 +244,7 @@ IntCreateCurIconHandle(DWORD dwNumber)
     {
         ERR("Failed to add process\n");
         UserDereferenceObject(CurIcon);
-        UserDeleteObject(hCurIcon, otCursorIcon);
+        UserDeleteObject(hCurIcon, TYPE_CURSOR);
         return NULL;
     }
 
@@ -309,7 +309,7 @@ IntDestroyCurIconObject(PCURICON_OBJECT CurIcon, PPROCESSINFO ppi, BOOLEAN bForc
         {
             /* Set the first process of the list as owner */
             Current = CONTAINING_RECORD(CurIcon->ProcessList.Flink, CURICON_PROCESS, ListEntry);
-            UserSetObjectOwner(CurIcon, otCursorIcon, Current->Process);
+            UserSetObjectOwner(CurIcon, TYPE_CURSOR, Current->Process);
         }
         UserDereferenceObject(CurIcon);
         return TRUE;
@@ -350,7 +350,7 @@ emptyList:
 
     /* We were given a pointer, no need to keep the reference anylonger! */
     UserDereferenceObject(CurIcon);
-    Ret = UserDeleteObject(CurIcon->Self, otCursorIcon);
+    Ret = UserDeleteObject(CurIcon->Self, TYPE_CURSOR);
 
     return Ret;
 }
index 964119c..6a8ed66 100644 (file)
@@ -141,7 +141,7 @@ IntRemoveEvent(PEVENTHOOK pEH)
       RemoveEntryList(&pEH->Chain);
       GlobalEvents->Counts--;
       if (!GlobalEvents->Counts) gpsi->dwInstalledEventHooks = 0;
-      UserDeleteObject(UserHMGetHandle(pEH), otEvent);
+      UserDeleteObject(UserHMGetHandle(pEH), TYPE_WINEVENTHOOK);
       KeLeaveCriticalRegion();
       return TRUE;
    }
@@ -378,7 +378,7 @@ NtUserSetWinEventHook(
       }
    }
    // Creator, pti is set here.
-   pEH = UserCreateObject(gHandleTable, NULL, NULL, &Handle, otEvent, sizeof(EVENTHOOK));
+   pEH = UserCreateObject(gHandleTable, NULL, NULL, &Handle, TYPE_WINEVENTHOOK, sizeof(EVENTHOOK));
    if (pEH)
    {
       InsertTailList(&GlobalEvents->Events, &pEH->Chain);
@@ -428,7 +428,7 @@ NtUserUnhookWinEvent(
 
    UserEnterExclusive();
 
-   pEH = (PEVENTHOOK)UserGetObject(gHandleTable, hWinEventHook, otEvent);
+   pEH = (PEVENTHOOK)UserGetObject(gHandleTable, hWinEventHook, TYPE_WINEVENTHOOK);
    if (pEH) 
    {
       Ret = IntRemoveEvent(pEH);
index cc22400..a119c11 100644 (file)
@@ -937,7 +937,7 @@ IntGetHookObject(HHOOK hHook)
        return NULL;
     }
 
-    Hook = (PHOOK)UserGetObject(gHandleTable, hHook, otHook);
+    Hook = (PHOOK)UserGetObject(gHandleTable, hHook, TYPE_HOOK);
     if (!Hook)
     {
        EngSetLastError(ERROR_INVALID_HOOK_HANDLE);
@@ -1020,7 +1020,7 @@ IntFreeHook(PHOOK Hook)
        Hook->ModuleName.Buffer = NULL;
     }
     /* Close handle */
-    UserDeleteObject(UserHMGetHandle(Hook), otHook);
+    UserDeleteObject(UserHMGetHandle(Hook), TYPE_HOOK);
 }
 
 /* Remove a hook, freeing it from the chain */
@@ -1270,7 +1270,7 @@ co_HOOK_CallHooks( INT HookId,
        */
        for(i = 0; pHookHandles[i]; ++i)
        {
-          Hook = (PHOOK)UserGetObject(gHandleTable, pHookHandles[i], otHook);
+          Hook = (PHOOK)UserGetObject(gHandleTable, pHookHandles[i], TYPE_HOOK);
           if(!Hook)
           {
               ERR("Invalid hook!\n");
@@ -1571,7 +1571,7 @@ NtUserSetWindowsHookEx( HINSTANCE Mod,
     }
     ObDereferenceObject(WinStaObj);
 
-    Hook = UserCreateObject(gHandleTable, NULL, NULL, (PHANDLE)&Handle, otHook, sizeof(HOOK));
+    Hook = UserCreateObject(gHandleTable, NULL, NULL, (PHANDLE)&Handle, TYPE_HOOK, sizeof(HOOK));
 
     if (!Hook)
     {
index a04c962..a6d20c5 100644 (file)
@@ -131,7 +131,7 @@ UserLoadKbdFile(PUNICODE_STRING pwszKLID)
                                  L"Control\\Keyboard Layouts\\";
 
     /* Create keyboard layout file object */
-    pkf = UserCreateObject(gHandleTable, NULL, NULL, NULL, otKBDfile, sizeof(KBDFILE));
+    pkf = UserCreateObject(gHandleTable, NULL, NULL, NULL, TYPE_KBDFILE, sizeof(KBDFILE));
     if (!pkf)
     {
         ERR("Failed to create object!\n");
@@ -187,7 +187,7 @@ cleanup:
     {
         /* We have failed - destroy created object */
         if (pkf)
-            UserDeleteObject(pkf->head.h, otKBDfile);
+            UserDeleteObject(pkf->head.h, TYPE_KBDFILE);
     }
 
     return pRet;
@@ -206,7 +206,7 @@ UserLoadKbdLayout(PUNICODE_STRING pwszKLID, HKL hKL)
     PKL pKl;
 
     /* Create keyboard layout object */
-    pKl = UserCreateObject(gHandleTable, NULL, NULL, NULL, otKBDlayout, sizeof(KL));
+    pKl = UserCreateObject(gHandleTable, NULL, NULL, NULL, TYPE_KBDLAYOUT, sizeof(KL));
     if (!pKl)
     {
         ERR("Failed to create object!\n");
@@ -223,7 +223,7 @@ UserLoadKbdLayout(PUNICODE_STRING pwszKLID, HKL hKL)
     if (!pKl->spkf)
     {
         ERR("UserLoadKbdFile(%wZ) failed!\n", pwszKLID);
-        UserDeleteObject(pKl->head.h, otKBDlayout);
+        UserDeleteObject(pKl->head.h, TYPE_KBDLAYOUT);
         return NULL;
     }
 
@@ -272,7 +272,7 @@ UnloadKbdFile(_In_ PKBDFILE pkf)
         *ppkfLink = pkf->pkfNext;
 
     EngUnloadImage(pkf->hBase);
-    UserDeleteObject(pkf->head.h, otKBDfile);
+    UserDeleteObject(pkf->head.h, TYPE_KBDFILE);
 }
 
 /*
@@ -308,7 +308,7 @@ UserUnloadKbl(PKL pKl)
     pKl->pklPrev->pklNext = pKl->pklNext;
     pKl->pklNext->pklPrev = pKl->pklPrev;
     UnloadKbdFile(pKl->spkf);
-    UserDeleteObject(pKl->head.h, otKBDlayout);
+    UserDeleteObject(pKl->head.h, TYPE_KBDLAYOUT);
     return TRUE;
 }
 
index 2db3ef7..bcec29d 100644 (file)
@@ -63,7 +63,7 @@ PMENU_OBJECT FASTCALL UserGetMenuObject(HMENU hMenu)
       return NULL;
    }
 
-   Menu = (PMENU_OBJECT)UserGetObject(gHandleTable, hMenu, otMenu);
+   Menu = (PMENU_OBJECT)UserGetObject(gHandleTable, hMenu, TYPE_MENU);
    if (!Menu)
    {
       EngSetLastError(ERROR_INVALID_MENU_HANDLE);
@@ -234,7 +234,7 @@ IntDestroyMenuObject(PMENU_OBJECT Menu,
             }
          }
 //         UserDereferenceObject(Menu);
-         ret = UserDeleteObject(Menu->MenuInfo.Self, otMenu);
+         ret = UserDeleteObject(Menu->MenuInfo.Self, TYPE_MENU);
          ObDereferenceObject(WindowStation);
          return ret;
       }
@@ -252,7 +252,7 @@ IntCreateMenu(PHANDLE Handle, BOOL IsMenuBar)
                                           NULL,
                                           NULL,
                                           Handle,
-                                          otMenu,
+                                          TYPE_MENU,
                                           sizeof(MENU_OBJECT));
    if(!Menu)
    {
@@ -364,7 +364,7 @@ IntCloneMenu(PMENU_OBJECT Source)
                                           NULL,
                                           NULL,
                                           &hMenu,
-                                          otMenu,
+                                          TYPE_MENU,
                                           sizeof(MENU_OBJECT));
    if(!Menu)
       return NULL;
index aa5cedc..b0e4aa6 100644 (file)
@@ -32,7 +32,7 @@ static
 PMONITOR
 IntCreateMonitorObject()
 {
-    return UserCreateObject(gHandleTable, NULL, NULL, NULL, otMonitor, sizeof(MONITOR));
+    return UserCreateObject(gHandleTable, NULL, NULL, NULL, TYPE_MONITOR, sizeof(MONITOR));
 }
 
 /* IntDestroyMonitorObject
@@ -58,7 +58,7 @@ IntDestroyMonitorObject(IN PMONITOR pMonitor)
 
     /* Destroy monitor object */
     UserDereferenceObject(pMonitor);
-    UserDeleteObject(UserHMGetHandle(pMonitor), otMonitor);
+    UserDeleteObject(UserHMGetHandle(pMonitor), TYPE_MONITOR);
 }
 
 /* UserGetMonitorObject
@@ -81,7 +81,7 @@ UserGetMonitorObject(IN HMONITOR hMonitor)
         return NULL;
     }
 
-    pMonitor = (PMONITOR)UserGetObject(gHandleTable, hMonitor, otMonitor);
+    pMonitor = (PMONITOR)UserGetObject(gHandleTable, hMonitor, TYPE_MONITOR);
     if (!pMonitor)
     {
         EngSetLastError(ERROR_INVALID_MONITOR_HANDLE);
index d778575..a341b50 100644 (file)
@@ -16,7 +16,7 @@ PUSER_HANDLE_TABLE gHandleTable = NULL;
 
 void DbgUserDumpHandleTable()
 {
-    int HandleCounts[USER_HANDLE_TYPE_COUNT];
+    int HandleCounts[TYPE_CTYPES];
     PPROCESSINFO ppiList;
     int i;
     PWCHAR TypeNames[] = {L"Free",L"Window",L"Menu", L"CursorIcon", L"SMWP", L"Hook", L"ClipBoardData", L"CallProc",
@@ -33,7 +33,7 @@ void DbgUserDumpHandleTable()
     {
         ERR("Process %s (%d) handles count: %d\n\t", ppiList->peProcess->ImageFileName, ppiList->peProcess->UniqueProcessId, ppiList->UserHandleCount);
 
-        for (i = 1 ;i < USER_HANDLE_TYPE_COUNT; i++)
+        for (i = 1 ;i < TYPE_CTYPES; i++)
         {
             HandleCounts[i] += ppiList->DbgHandleCount[i];
 
@@ -48,7 +48,7 @@ void DbgUserDumpHandleTable()
 
     /* Print total type counts */
     ERR("Total handles of the running processes: \n\t");
-    for (i = 1 ;i < USER_HANDLE_TYPE_COUNT; i++)
+    for (i = 1 ;i < TYPE_CTYPES; i++)
     {
         DbgPrint("%S: %d, ", TypeNames[i], HandleCounts[i]);
         if (i % 6 == 0)
@@ -62,7 +62,7 @@ void DbgUserDumpHandleTable()
          HandleCounts[gHandleTable->handles[i].type]++;
 
     ERR("Total handles count allocated: \n\t");
-    for (i = 1 ;i < USER_HANDLE_TYPE_COUNT; i++)
+    for (i = 1 ;i < TYPE_CTYPES; i++)
     {
         DbgPrint("%S: %d, ", TypeNames[i], HandleCounts[i]);
         if (i % 6 == 0)
@@ -174,27 +174,27 @@ __inline static void *free_user_entry(PUSER_HANDLE_TABLE ht, PUSER_HANDLE_ENTRY
 }
 
 static __inline PVOID
-UserHandleOwnerByType(USER_OBJECT_TYPE type)
+UserHandleOwnerByType(HANDLE_TYPE type)
 {
     PVOID pi;
 
     switch (type)
     {
-        case otWindow:
-        case otInputContext:
+        case TYPE_WINDOW:
+        case TYPE_INPUTCONTEXT:
             pi = GetW32ThreadInfo();
             break;
 
-        case otMenu:
-        case otCursorIcon:
-        case otHook:
-        case otCallProc:
-        case otAccel:
-        case otSMWP:
+        case TYPE_MENU:
+        case TYPE_CURSOR:
+        case TYPE_HOOK:
+        case TYPE_CALLPROC:
+        case TYPE_ACCELTABLE:
+        case TYPE_SETWINDOWPOS:
             pi = GetW32ProcessInfo();
             break;
 
-        case otMonitor:
+        case TYPE_MONITOR:
             pi = NULL; /* System */
             break;
 
@@ -207,7 +207,7 @@ UserHandleOwnerByType(USER_OBJECT_TYPE type)
 }
 
 /* allocate a user handle for a given object */
-HANDLE UserAllocHandle(PUSER_HANDLE_TABLE ht, PVOID object, USER_OBJECT_TYPE type )
+HANDLE UserAllocHandle(PUSER_HANDLE_TABLE ht, PVOID object, HANDLE_TYPE type )
 {
    PUSER_HANDLE_ENTRY entry = alloc_user_entry(ht);
    if (!entry)
@@ -226,7 +226,7 @@ HANDLE UserAllocHandle(PUSER_HANDLE_TABLE ht, PVOID object, USER_OBJECT_TYPE typ
 }
 
 /* return a pointer to a user object from its handle without setting an error */
-PVOID UserGetObjectNoErr(PUSER_HANDLE_TABLE ht, HANDLE handle, USER_OBJECT_TYPE type )
+PVOID UserGetObjectNoErr(PUSER_HANDLE_TABLE ht, HANDLE handle, HANDLE_TYPE type )
 {
    PUSER_HANDLE_ENTRY entry;
 
@@ -240,7 +240,7 @@ PVOID UserGetObjectNoErr(PUSER_HANDLE_TABLE ht, HANDLE handle, USER_OBJECT_TYPE
 }
 
 /* return a pointer to a user object from its handle */
-PVOID UserGetObject(PUSER_HANDLE_TABLE ht, HANDLE handle, USER_OBJECT_TYPE type )
+PVOID UserGetObject(PUSER_HANDLE_TABLE ht, HANDLE handle, HANDLE_TYPE type )
 {
    PUSER_HANDLE_ENTRY entry;
 
@@ -269,7 +269,7 @@ HANDLE get_user_full_handle(PUSER_HANDLE_TABLE ht,  HANDLE handle )
 
 
 /* Same as get_user_object plus set the handle to the full 32-bit value */
-void *get_user_object_handle(PUSER_HANDLE_TABLE ht,  HANDLE* handle, USER_OBJECT_TYPE type )
+void *get_user_object_handle(PUSER_HANDLE_TABLE ht,  HANDLE* handle, HANDLE_TYPE type )
 {
    PUSER_HANDLE_ENTRY entry;
 
@@ -317,7 +317,7 @@ UserCreateObject( PUSER_HANDLE_TABLE ht,
                   PDESKTOP pDesktop,
                   PTHREADINFO pti,
                   HANDLE* h,
-                  USER_OBJECT_TYPE type,
+                  HANDLE_TYPE type,
                   ULONG size)
 {
    HANDLE hi;
@@ -336,11 +336,11 @@ UserCreateObject( PUSER_HANDLE_TABLE ht,
 
    switch (type)
    {
-      case otWindow:
-//      case otMenu:
-      case otHook:
-      case otCallProc:
-      case otInputContext:
+      case TYPE_WINDOW:
+//      case TYPE_MENU:
+      case TYPE_HOOK:
+      case TYPE_CALLPROC:
+      case TYPE_INPUTCONTEXT:
          Object = DesktopHeapAlloc(rpdesk, size);
          dt = TRUE;
          break;
@@ -373,22 +373,22 @@ UserCreateObject( PUSER_HANDLE_TABLE ht,
 
    switch (type)
    {
-        case otWindow:
-        case otHook:
-        case otInputContext:
+        case TYPE_WINDOW:
+        case TYPE_HOOK:
+        case TYPE_INPUTCONTEXT:
             ((PTHRDESKHEAD)Object)->rpdesk = rpdesk;
             ((PTHRDESKHEAD)Object)->pSelf = Object;
-        case otEvent:
+        case TYPE_WINEVENTHOOK:
             ((PTHROBJHEAD)Object)->pti = pti;
             break;
 
-        case otMenu:
-        case otCallProc:
+        case TYPE_MENU:
+        case TYPE_CALLPROC:
             ((PPROCDESKHEAD)Object)->rpdesk = rpdesk;
             ((PPROCDESKHEAD)Object)->pSelf = Object;
             break;
 
-        case otCursorIcon:
+        case TYPE_CURSOR:
             ((PPROCMARKHEAD)Object)->ppi = ppi;
             break;
 
@@ -410,7 +410,7 @@ FASTCALL
 UserDereferenceObject(PVOID object)
 {
   PUSER_HANDLE_ENTRY entry;
-  USER_OBJECT_TYPE type;
+  HANDLE_TYPE type;
 
   ASSERT(((PHEAD)object)->cLockObj >= 1);
 
@@ -435,11 +435,11 @@ UserDereferenceObject(PVOID object)
 
      switch (type)
      {
-        case otWindow:
-//        case otMenu:
-        case otHook:
-        case otCallProc:
-        case otInputContext:
+        case TYPE_WINDOW:
+//        case TYPE_MENU:
+        case TYPE_HOOK:
+        case TYPE_CALLPROC:
+        case TYPE_INPUTCONTEXT:
            return DesktopHeapFree(((PTHRDESKHEAD)object)->rpdesk, object);
 
         default:
@@ -482,7 +482,7 @@ UserObjectInDestroy(HANDLE h)
 
 BOOL
 FASTCALL
-UserDeleteObject(HANDLE h, USER_OBJECT_TYPE type )
+UserDeleteObject(HANDLE h, HANDLE_TYPE type )
 {
    PVOID body = UserGetObject(gHandleTable, h, type);
 
@@ -504,7 +504,7 @@ UserReferenceObject(PVOID obj)
 
 PVOID
 FASTCALL
-UserReferenceObjectByHandle(HANDLE handle, USER_OBJECT_TYPE type)
+UserReferenceObjectByHandle(HANDLE handle, HANDLE_TYPE type)
 {
     PVOID object;
 
@@ -518,7 +518,7 @@ UserReferenceObjectByHandle(HANDLE handle, USER_OBJECT_TYPE type)
 
 VOID
 FASTCALL
-UserSetObjectOwner(PVOID obj, USER_OBJECT_TYPE type, PVOID owner)
+UserSetObjectOwner(PVOID obj, HANDLE_TYPE type, PVOID owner)
 {
     PUSER_HANDLE_ENTRY entry = handle_to_entry(gHandleTable, ((PHEAD)obj)->h );
     PPROCESSINFO ppi, oldppi;
@@ -529,7 +529,7 @@ UserSetObjectOwner(PVOID obj, USER_OBJECT_TYPE type, PVOID owner)
     /* For now, only supported for CursorIcon object */
     switch(type)
     {
-        case otCursorIcon:
+        case TYPE_CURSOR:
             ppi = (PPROCESSINFO)owner;
             entry->pi = ppi;
             oldppi = ((PPROCMARKHEAD)obj)->ppi;
@@ -575,37 +575,37 @@ NtUserValidateHandleSecure(
      }
      switch (uType)
      {
-       case otWindow:
+       case TYPE_WINDOW:
        {
          if (UserGetWindowObject((HWND) handle)) return TRUE;
          return FALSE;
        }
-       case otMenu:
+       case TYPE_MENU:
        {
          if (UserGetMenuObject((HMENU) handle)) return TRUE;
          return FALSE;
        }
-       case otAccel:
+       case TYPE_ACCELTABLE:
        {
          if (UserGetAccelObject((HACCEL) handle)) return TRUE;
          return FALSE;
        }
-       case otCursorIcon:
+       case TYPE_CURSOR:
        {
          if (UserGetCurIconObject((HCURSOR) handle)) return TRUE;
          return FALSE;
        }
-       case otHook:
+       case TYPE_HOOK:
        {
          if (IntGetHookObject((HHOOK) handle)) return TRUE;
          return FALSE;
        }
-       case otMonitor:
+       case TYPE_MONITOR:
        {
          if (UserGetMonitorObject((HMONITOR) handle)) return TRUE;
          return FALSE;
        }
-       case otCallProc:
+       case TYPE_CALLPROC:
        {
          WNDPROC_INFO Proc;
          return UserGetCallProcInfo( handle, &Proc );
index 08ae96e..2ab5f36 100644 (file)
@@ -31,16 +31,16 @@ UserAssertLastRef(PVOID obj, const char *file, int line)
 
 extern PUSER_HANDLE_TABLE gHandleTable;
 VOID FASTCALL UserReferenceObject(PVOID obj);
-PVOID FASTCALL UserReferenceObjectByHandle(HANDLE handle, USER_OBJECT_TYPE type);
+PVOID FASTCALL UserReferenceObjectByHandle(HANDLE handle, HANDLE_TYPE type);
 BOOL FASTCALL UserDereferenceObject(PVOID obj);
-PVOID FASTCALL UserCreateObject(PUSER_HANDLE_TABLE ht, struct _DESKTOP* pDesktop, PTHREADINFO pti, HANDLE* h,USER_OBJECT_TYPE type , ULONG size);
-BOOL FASTCALL UserDeleteObject(HANDLE h, USER_OBJECT_TYPE type );
-PVOID UserGetObject(PUSER_HANDLE_TABLE ht, HANDLE handle, USER_OBJECT_TYPE type );
-PVOID UserGetObjectNoErr(PUSER_HANDLE_TABLE, HANDLE, USER_OBJECT_TYPE);
+PVOID FASTCALL UserCreateObject(PUSER_HANDLE_TABLE ht, struct _DESKTOP* pDesktop, PTHREADINFO pti, HANDLE* h,HANDLE_TYPE type , ULONG size);
+BOOL FASTCALL UserDeleteObject(HANDLE h, HANDLE_TYPE type );
+PVOID UserGetObject(PUSER_HANDLE_TABLE ht, HANDLE handle, HANDLE_TYPE type );
+PVOID UserGetObjectNoErr(PUSER_HANDLE_TABLE, HANDLE, HANDLE_TYPE);
 BOOL FASTCALL UserCreateHandleTable(VOID);
 BOOL FASTCALL UserObjectInDestroy(HANDLE);
 void DbgUserDumpHandleTable();
-VOID FASTCALL UserSetObjectOwner(PVOID obj, USER_OBJECT_TYPE type, PVOID owner);
+VOID FASTCALL UserSetObjectOwner(PVOID obj, HANDLE_TYPE type, PVOID owner);
 
 static __inline VOID
 UserRefObjectCo(PVOID obj, PUSER_REFERENCE_ENTRY UserReferenceEntry)
index 5779fff..e291616 100644 (file)
@@ -1141,7 +1141,7 @@ NtUserFlashWindowEx(IN PFLASHWINFO pfwi)
 
    if (!Ret) goto Exit;
 
-   if (!( pWnd = (PWND)UserGetObject(gHandleTable, finfo.hwnd, otWindow)) ||
+   if (!( pWnd = (PWND)UserGetObject(gHandleTable, finfo.hwnd, TYPE_WINDOW)) ||
         finfo.cbSize != sizeof(FLASHWINFO) ||
         finfo.dwFlags & ~(FLASHW_ALL|FLASHW_TIMER|FLASHW_TIMERNOFG) )
    {
index 3b65d98..6176c3d 100644 (file)
@@ -174,13 +174,13 @@ NtUserCallOneParam(
                                                NULL, 
                                                NULL, 
                                               (PHANDLE)&hDwp,
-                                               otSMWP,
+                                               TYPE_SETWINDOWPOS,
                                                sizeof(SMWP));
              if (!psmwp) RETURN(0);
              psmwp->acvr = ExAllocatePoolWithTag(PagedPool, count * sizeof(CVR), USERTAG_SWP);
              if (!psmwp->acvr)
              {
-                UserDeleteObject(hDwp, otSMWP);
+                UserDeleteObject(hDwp, TYPE_SETWINDOWPOS);
                 RETURN(0);
              }
              RtlZeroMemory(psmwp->acvr, count * sizeof(CVR));
index 9271edd..f113be3 100644 (file)
@@ -56,7 +56,7 @@ CreateTimer(VOID)
   HANDLE Handle;
   PTIMER Ret = NULL;
 
-  Ret = UserCreateObject(gHandleTable, NULL, NULL, &Handle, otTimer, sizeof(TIMER));
+  Ret = UserCreateObject(gHandleTable, NULL, NULL, &Handle, TYPE_TIMER, sizeof(TIMER));
   if (Ret)
   {
      Ret->head.h = Handle;
@@ -86,7 +86,7 @@ RemoveTimer(PTIMER pTmr)
         IntUnlockWindowlessTimerBitmap();
      }
      UserDereferenceObject(pTmr);
-     Ret = UserDeleteObject( UserHMGetHandle(pTmr), otTimer);
+     Ret = UserDeleteObject( UserHMGetHandle(pTmr), TYPE_TIMER);
   }
   if (!Ret) ERR("Warning: Unable to delete timer\n");
 
index 4bec70a..5a7d217 100644 (file)
@@ -225,7 +225,7 @@ typedef struct _PROCESSINFO
 
 #if DBG
   BYTE DbgChannelLevel[DbgChCount];
-  DWORD DbgHandleCount[USER_HANDLE_TYPE_COUNT];
+  DWORD DbgHandleCount[TYPE_CTYPES];
 #endif
 } PROCESSINFO;
 
index db4f50f..217d8af 100644 (file)
@@ -90,7 +90,7 @@ PWND FASTCALL VerifyWnd(PWND pWnd)
 
 PWND FASTCALL ValidateHwndNoErr(HWND hWnd)
 {
-   if (hWnd) return (PWND)UserGetObjectNoErr(gHandleTable, hWnd, otWindow);
+   if (hWnd) return (PWND)UserGetObjectNoErr(gHandleTable, hWnd, TYPE_WINDOW);
    return NULL;
 }
 
@@ -105,7 +105,7 @@ PWND FASTCALL UserGetWindowObject(HWND hWnd)
       return NULL;
    }
 
-   Window = (PWND)UserGetObject(gHandleTable, hWnd, otWindow);
+   Window = (PWND)UserGetObject(gHandleTable, hWnd, TYPE_WINDOW);
    if (!Window || 0 != (Window->state & WNDS_DESTROYED))
    {
       EngSetLastError(ERROR_INVALID_WINDOW_HANDLE);
@@ -555,7 +555,7 @@ static LRESULT co_UserFreeWindow(PWND Window,
    IntUnlinkWindow(Window);
 
    UserReferenceObject(Window);
-   UserDeleteObject(Window->head.h, otWindow);
+   UserDeleteObject(Window->head.h, TYPE_WINDOW);
 
    IntDestroyScrollBars(Window);
 
@@ -662,7 +662,7 @@ IntSetWindowProc(PWND pWnd,
 
    if (IsCallProcHandle(NewWndProc))
    {
-      CallProc = UserGetObject(gHandleTable, NewWndProc, otCallProc);
+      CallProc = UserGetObject(gHandleTable, NewWndProc, TYPE_CALLPROC);
       if (CallProc)
       {  // Reset new WndProc.
          NewWndProc = CallProc->pfnClientPrevious;
@@ -1717,7 +1717,7 @@ PWND FASTCALL IntCreateWindow(CREATESTRUCTW* Cs,
                                    pdeskCreated ? pdeskCreated : pti->rpdesk,
                                    pti,
                                   (PHANDLE)&hWnd,
-                                   otWindow,
+                                   TYPE_WINDOW,
                                    sizeof(WND) + Class->cbwndExtra);
 
    if (!pWnd)
index 78f2ed5..f740ec1 100644 (file)
@@ -2472,7 +2472,7 @@ IntDeferWindowPos( HDWP hdwp,
        return NULL;
     }
 
-    if (!(pDWP = (PSMWP)UserGetObject(gHandleTable, hdwp, otSMWP)))
+    if (!(pDWP = (PSMWP)UserGetObject(gHandleTable, hdwp, TYPE_SETWINDOWPOS)))
     {
        EngSetLastError(ERROR_INVALID_DWP_HANDLE);
        return NULL;
@@ -2543,7 +2543,7 @@ BOOL FASTCALL IntEndDeferWindowPosEx( HDWP hdwp, BOOL sAsync )
 
     TRACE("%p\n", hdwp);
 
-    if (!(pDWP = (PSMWP)UserGetObject(gHandleTable, hdwp, otSMWP)))
+    if (!(pDWP = (PSMWP)UserGetObject(gHandleTable, hdwp, TYPE_SETWINDOWPOS)))
     {
        EngSetLastError(ERROR_INVALID_DWP_HANDLE);
        return FALSE;
@@ -2597,7 +2597,7 @@ BOOL FASTCALL IntEndDeferWindowPosEx( HDWP hdwp, BOOL sAsync )
     }
     ExFreePoolWithTag(pDWP->acvr, USERTAG_SWP);
     UserDereferenceObject(pDWP);
-    UserDeleteObject(hdwp, otSMWP);
+    UserDeleteObject(hdwp, TYPE_SETWINDOWPOS);
     return res;
 }
 
index a473e79..1d820df 100644 (file)
@@ -325,24 +325,30 @@ GetUser32Handle(HANDLE handle)
 /*
  * Decide whether an object is located on the desktop or shared heap
  */
-static const BOOL g_ObjectHeapTypeShared[otEvent + 1] =
+static const BOOL g_ObjectHeapTypeShared[TYPE_CTYPES] =
 {
-    FALSE, /* otFree (not used) */
-    FALSE, /* otWindow */
-    TRUE,  /* otMenu  FALSE */
-    TRUE,  /* otCursorIcon */
-    TRUE,  /* otSMWP */
-    FALSE, /* otHook */
-    FALSE, /* (not used) */
-    FALSE, /* otCallProc */
-    TRUE,  /* otAccel */
-    FALSE, /* (not used) */
-    FALSE, /* (not used) */
-    FALSE, /* (not used) */
-    TRUE,  /* otMonitor */
-    FALSE, /* (not used) */
-    FALSE, /* (not used) */
-    TRUE   /* otEvent */
+    FALSE, /* TYPE_FREE (not used) */
+    FALSE, /* TYPE_WINDOW */
+    TRUE,  /* TYPE_MENU  FALSE */
+    TRUE,  /* TYPE_CURSOR */
+    TRUE,  /* TYPE_SETWINDOWPOS */
+    FALSE, /* TYPE_HOOK */
+    FALSE, /* TYPE_CLIPDATA */
+    FALSE, /* TYPE_CALLPROC */
+    TRUE,  /* TYPE_ACCELTABLE */
+    FALSE, /* TYPE_DDEACCESS */
+    FALSE, /* TYPE_DDECONV */
+    FALSE, /* TYPE_DDEXACT */
+    TRUE,  /* TYPE_MONITOR */
+    FALSE, /* TYPE_KBDLAYOUT */
+    FALSE, /* TYPE_KBDFILE */
+    TRUE,   /* TYPE_WINEVENTHOOK */
+    FALSE, /* TYPE_TIMER */
+    FALSE, /* TYPE_INPUTCONTEXT */
+    FALSE, /* TYPE_HIDDATA */
+    FALSE, /* TYPE_DEVICEINFO */
+    FALSE, /* TYPE_TOUCHINPUTINFO */
+    FALSE, /* TYPE_GESTUREINFOOBJ */
 };
 
 //
@@ -355,7 +361,7 @@ ValidateHandle(HANDLE handle, UINT uType)
   PVOID ret;
   PUSER_HANDLE_ENTRY pEntry;
 
-  ASSERT(uType <= otEvent);
+  ASSERT(uType < TYPE_CTYPES);
 
   pEntry = GetUser32Handle(handle);
 
@@ -370,22 +376,22 @@ ValidateHandle(HANDLE handle, UINT uType)
   {
      switch ( uType )
      {  // Test (with wine too) confirms these results!
-        case otWindow:
+        case TYPE_WINDOW:
           SetLastError(ERROR_INVALID_WINDOW_HANDLE);
           break;
-        case otMenu:
+        case TYPE_MENU:
           SetLastError(ERROR_INVALID_MENU_HANDLE);
           break;
-        case otCursorIcon:
+        case TYPE_CURSOR:
           SetLastError(ERROR_INVALID_CURSOR_HANDLE);
           break;
-        case otSMWP:
+        case TYPE_SETWINDOWPOS:
           SetLastError(ERROR_INVALID_DWP_HANDLE);
           break;
-        case otHook:
+        case TYPE_HOOK:
           SetLastError(ERROR_INVALID_HOOK_HANDLE);
           break;
-        case otAccel:
+        case TYPE_ACCELTABLE:
           SetLastError(ERROR_INVALID_ACCEL_HANDLE);
           break;
         default:
@@ -413,7 +419,7 @@ ValidateHandleNoErr(HANDLE handle, UINT uType)
   PVOID ret;
   PUSER_HANDLE_ENTRY pEntry;
 
-  ASSERT(uType <= otEvent);
+  ASSERT(uType < TYPE_CTYPES);
 
   pEntry = GetUser32Handle(handle);
 
@@ -441,7 +447,7 @@ ValidateCallProc(HANDLE hCallProc)
 {
   PUSER_HANDLE_ENTRY pEntry;
 
-  PCALLPROCDATA CallProc = ValidateHandle(hCallProc, otCallProc);
+  PCALLPROCDATA CallProc = ValidateHandle(hCallProc, TYPE_CALLPROC);
 
   pEntry = GetUser32Handle(hCallProc);
 
@@ -466,7 +472,7 @@ ValidateHwnd(HWND hwnd)
     if (hwnd && hwnd == ClientInfo->CallbackWnd.hWnd)
         return ClientInfo->CallbackWnd.pWnd;
 
-    return ValidateHandle((HANDLE)hwnd, otWindow);
+    return ValidateHandle((HANDLE)hwnd, TYPE_WINDOW);
 }
 
 //
@@ -484,7 +490,7 @@ ValidateHwndNoErr(HWND hwnd)
     if (hwnd == ClientInfo->CallbackWnd.hWnd)
         return ClientInfo->CallbackWnd.pWnd;
 
-    Wnd = ValidateHandleNoErr((HANDLE)hwnd, otWindow);
+    Wnd = ValidateHandleNoErr((HANDLE)hwnd, TYPE_WINDOW);
     if (Wnd != NULL)
     {
         return Wnd;
index 2f544a7..c5a2766 100644 (file)
@@ -3241,7 +3241,7 @@ static INT FASTCALL MenuTrackMenu(HMENU hmenu, UINT wFlags, INT x, INT y,
     while (! fEndMenu)
     {
         BOOL ErrorExit = FALSE;
-        PVOID menu = ValidateHandle(mt.CurrentMenu, otMenu);
+        PVOID menu = ValidateHandle(mt.CurrentMenu, TYPE_MENU);
         if (!menu) /* sometimes happens if I do a window manager close */
            break;
 
@@ -4767,7 +4767,7 @@ WINAPI
 IsMenu(
   HMENU Menu)
 {
-  if (ValidateHandle(Menu, otMenu)) return TRUE;
+  if (ValidateHandle(Menu, TYPE_MENU)) return TRUE;
   return FALSE;
 }