Module: wine Branch: master Commit: 3f4c2670286c7fbca7a746173d99309c79699cf2 URL: http://source.winehq.org/git/wine.git/?a=commit;h=3f4c2670286c7fbca7a746173d...
Author: Rob Shearman rob@codeweavers.com Date: Tue Oct 16 10:19:21 2007 +0100
server: Owner and group SIDs in security descriptors are optional in many server calls.
So print "<not present>" when they aren't provided instead of "<invalid sid>".
---
server/trace.c | 10 ++++++++-- 1 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/server/trace.c b/server/trace.c index 4471d6f..e0a2e96 100644 --- a/server/trace.c +++ b/server/trace.c @@ -711,12 +711,18 @@ static void dump_inline_security_descriptor( const struct security_descriptor *s fprintf( stderr, ",owner=" ); if ((sd->owner_len > FIELD_OFFSET(SID, SubAuthority[255])) || (offset + sd->owner_len > size)) return; - dump_inline_sid( (const SID *)((const char *)sd + offset), sd->owner_len ); + if (sd->owner_len) + dump_inline_sid( (const SID *)((const char *)sd + offset), sd->owner_len ); + else + fprintf( stderr, "<not present>" ); offset += sd->owner_len; fprintf( stderr, ",group=" ); if ((sd->group_len > FIELD_OFFSET(SID, SubAuthority[255])) || (offset + sd->group_len > size)) return; - dump_inline_sid( (const SID *)((const char *)sd + offset), sd->group_len ); + if (sd->group_len) + dump_inline_sid( (const SID *)((const char *)sd + offset), sd->group_len ); + else + fprintf( stderr, "<not present>" ); offset += sd->group_len; fprintf( stderr, ",sacl=" ); if ((sd->sacl_len >= MAX_ACL_LEN) || (offset + sd->sacl_len > size))