From e44d450539d7fa046ba3d7a3b10b9c84c3ec05cc Mon Sep 17 00:00:00 2001 From: "cantab.net!aia21" Date: Thu, 15 Apr 2004 11:10:40 +0000 Subject: [PATCH] Add ntfs_sid_is_valid() and exports for ntfs_sid_to_mbs_size() and ntfs_sid_to_mbs(). (Logical change 1.368) --- include/ntfs/security.h | 20 +++++++++++++++++++- 1 file changed, 19 insertions(+), 1 deletion(-) diff --git a/include/ntfs/security.h b/include/ntfs/security.h index 7a7d7458..1eac550a 100644 --- a/include/ntfs/security.h +++ b/include/ntfs/security.h @@ -31,6 +31,24 @@ extern const GUID *const zero_guid; extern BOOL ntfs_guid_is_zero(const GUID *guid); extern char *ntfs_guid_to_mbs(const GUID *guid, char *guid_str); -extern char *ntfs_sid_to_mbs(const SID *sid, char *sid_str); +/** + * ntfs_sid_is_valid - determine if a SID is valid + * @sid: [IN] SID for which to determine if it is valid + * + * Determine if the SID pointed to by @sid is valid. + * + * Return TRUE if it is valid and FALSE otherwise. + */ +static __inline__ BOOL ntfs_sid_is_valid(const SID *sid) +{ + if (!sid || sid->revision != SID_REVISION || + sid->sub_authority_count > SID_MAX_SUB_AUTHORITIES) + return FALSE; + return TRUE; +} + +extern int ntfs_sid_to_mbs_size(const SID *sid); +extern char *ntfs_sid_to_mbs(const SID *sid, char *sid_str, + size_t sid_str_size); #endif /* defined _NTFS_SECURITY_H */