Whamcloud - gitweb
b=16150
[fs/lustre-release.git] / lnet / include / lnet / socklnd.h
index 75a6b9b..b697da0 100644 (file)
@@ -50,6 +50,7 @@
 #define SOCKLND_CONN_BULK_OUT   3
 #define SOCKLND_CONN_NTYPES     4
 
+#include <libcfs/libcfs_pack.h>
 typedef struct {
         __u32                   kshm_magic;     /* magic number of socklnd message */
         __u32                   kshm_version;   /* version of socklnd message */
@@ -66,7 +67,13 @@ typedef struct {
 
 typedef struct {
         lnet_hdr_t              ksnm_hdr;       /* lnet hdr */
-        char                    ksnm_payload[0];/* lnet payload */
+
+        /*
+         * ksnm_payload is removed because of winnt compiler's limitation:
+         * zero-sized array can only be placed at the tail of [nested]
+         * structure definitions. lnet payload will be stored just after
+         * the body of structure ksock_lnet_msg_t 
+         */
 } WIRE_ATTR ksock_lnet_msg_t;
 
 typedef struct {
@@ -79,6 +86,8 @@ typedef struct {
         } WIRE_ATTR ksm_u;
 } WIRE_ATTR ksock_msg_t;
 
+#include <libcfs/libcfs_unpack.h>
+
 #define KSOCK_MSG_NOOP          0xc0            /* ksm_u empty */ 
 #define KSOCK_MSG_LNET          0xc1            /* lnet msg */