r7037: Add enough pointers in the header file as well
[samba.git] / source / librpc / idl / orpc.idl
index 34ef41377b951c5484aa0695d0c1f4efdd03b56f..1934a3cbed7f4076b36a0832ed44365830940ba2 100644 (file)
@@ -59,8 +59,7 @@ interface ObjectRpcBaseTypes
        {       
                GUID id; /* Extension identifier. */
                uint32 size; /* Extension size. */
-               /*FIXME[size_is((size+7)&~7)] uint8 data[]; Extension data. */
-               [size_is(size)] uint8 data[];
+               [size_is(((size+7)&~7))] uint8 data[]; /* Extension data. */
        }       ORPC_EXTENT;
 
 
@@ -69,8 +68,7 @@ interface ObjectRpcBaseTypes
        {
                uint32 size; /* Num extents. */
                uint32 reserved; /* Must be zero. */
-               /*FIXME[size_is((size+1)&~1,), unique] ORPC_EXTENT **extent; extents */
-               [size_is(size)] ORPC_EXTENT extent[];
+               [size_is(((size+1)&~1))] ORPC_EXTENT **extent; /* extents */
        } ORPC_EXTENT_ARRAY;
 
 
@@ -99,7 +97,7 @@ interface ObjectRpcBaseTypes
 
        /* DUALSTRINGARRAYS are the return type for arrays of network addresses, */
        /* arrays of endpoints and arrays of both used in many ORPC interfaces */
-       typedef [public] struct 
+       typedef [public,flag(NDR_NOALIGN)] struct 
        {
                uint16 wTowerId; /* Cannot be zero. */
                nstring NetworkAddr; 
@@ -107,9 +105,10 @@ interface ObjectRpcBaseTypes
 
 
        const uint16 COM_C_AUTHZ_NONE = 0xffff;
-       typedef [public] struct 
+       typedef [public,flag(NDR_NOALIGN)] struct 
        {
                uint16 wAuthnSvc; /* Cannot be zero. */
+               uint16 wAuthzSvc;
                nstring PrincName; 
        }       SECURITYBINDING;