uint32 old_offset;
uint32 offset_acl_size;
SEC_ACL *psa;
+ uint16 revision;
/*
* Note that the size is always a multiple of 4 bytes due to the
old_offset = prs_offset(ps);
- if(!prs_uint16("revision", ps, depth, (uint16 *)&psa->revision))
+ if (MARSHALLING(ps)) {
+ revision = (uint16)psa->revision;
+ }
+
+ if(!prs_uint16("revision", ps, depth, &revision))
return False;
+ if (UNMARSHALLING(ps)) {
+ psa->revision = (enum security_acl_revision)revision;
+ }
+
if(!prs_uint16_pre("size ", ps, depth, &psa->size, &offset_acl_size))
return False;
uint32 max_offset = 0; /* after we're done, move offset to end */
uint32 tmp_offset = 0;
uint32 off_sacl, off_dacl, off_owner_sid, off_grp_sid;
+ uint16 revision;
SEC_DESC *psd;
/* start of security descriptor stored for back-calc offset purposes */
old_offset = prs_offset(ps);
- if(!prs_uint16("revision ", ps, depth, (uint16*)&psd->revision))
+ if (MARSHALLING(ps)) {
+ revision = (uint16)psd->revision;
+ }
+
+ if(!prs_uint16("revision", ps, depth, &revision))
return False;
+ if (UNMARSHALLING(ps)) {
+ psd->revision = (enum security_acl_revision)revision;
+ }
+
if(!prs_uint16("type ", ps, depth, &psd->type))
return False;