Use W32API.
Modified: trunk/reactos/include/sm/api.h
Modified: trunk/reactos/lib/smdll/smdll.xml
Modified: trunk/reactos/lib/smlib/smlib.xml

Modified: trunk/reactos/include/sm/api.h
--- trunk/reactos/include/sm/api.h	2005-06-17 08:02:05 UTC (rev 15951)
+++ trunk/reactos/include/sm/api.h	2005-06-17 08:05:58 UTC (rev 15952)
@@ -109,29 +109,31 @@
 
 /*** | ****************************************************************/
 
-typedef struct _SM_PORT_MESSAGE
+typedef union _SM_PORT_MESSAGE
 {
   /*** LPC common header ***/
   LPC_MESSAGE Header;
-  /*** SM common header ***/
   struct {
-    DWORD       ApiIndex;
-    NTSTATUS    Status;
-  } SmHeader;
-  /*** SM per API arguments ***/
-  union {
+    UCHAR LpcHeader[LPC_MESSAGE_BASE_SIZE];
+    /*** SM common header ***/
+    struct {
+      DWORD       ApiIndex;
+      NTSTATUS    Status;
+    } SmHeader;
+    /*** SM per API arguments ***/
     union {
-      SM_PORT_MESSAGE_COMPSES      CompSes;
-      SM_PORT_MESSAGE_EXECPGM      ExecPgm;
-      SM_PORT_MESSAGE_QRYINFO      QryInfo;
-    } Request;
-    union {
-      SM_PORT_MESSAGE_COMPSES      CompSes;
-      SM_PORT_MESSAGE_EXECPGM      ExecPgm;
-      SM_PORT_MESSAGE_QRYINFO      QryInfo;
-    } Reply;
+      union {
+        SM_PORT_MESSAGE_COMPSES      CompSes;
+        SM_PORT_MESSAGE_EXECPGM      ExecPgm;
+        SM_PORT_MESSAGE_QRYINFO      QryInfo;
+      } Request;
+      union {
+        SM_PORT_MESSAGE_COMPSES      CompSes;
+        SM_PORT_MESSAGE_EXECPGM      ExecPgm;
+        SM_PORT_MESSAGE_QRYINFO      QryInfo;
+      } Reply;
+    };
   };
-
 } SM_PORT_MESSAGE, * PSM_PORT_MESSAGE;
 
 #pragma pack(pop)

Modified: trunk/reactos/lib/smdll/smdll.xml
--- trunk/reactos/lib/smdll/smdll.xml	2005-06-17 08:02:05 UTC (rev 15951)
+++ trunk/reactos/lib/smdll/smdll.xml	2005-06-17 08:05:58 UTC (rev 15952)
@@ -1,6 +1,7 @@
 <module name="smdll" type="nativedll" baseaddress="${BASEADDRESS_SMDLL}" installbase="system32" installname="smdll.dll">
 	<importlibrary definition="smdll.def" />
 	<include base="smdll">.</include>
+	<define name="__USE_W32API" />
 	<define name="_DISABLE_TIDENTS" />
 	<library>smlib</library>
 	<library>ntdll</library>

Modified: trunk/reactos/lib/smlib/smlib.xml
--- trunk/reactos/lib/smlib/smlib.xml	2005-06-17 08:02:05 UTC (rev 15951)
+++ trunk/reactos/lib/smlib/smlib.xml	2005-06-17 08:05:58 UTC (rev 15952)
@@ -1,5 +1,6 @@
 <module name="smlib" type="staticlibrary">
 	<include base="smlib">.</include>
+	<define name="__USE_W32API" />
 	<define name="_DISABLE_TIDENTS" />
 	<file>connect.c</file>
 	<file>execpgm.c</file>