< Summary

Class:SharpHoundRPC.Extensions
Assembly:SharpHoundRPC
File(s):D:\a\SharpHoundCommon\SharpHoundCommon\src\SharpHoundRPC\Extensions.cs
Covered lines:0
Uncovered lines:16
Coverable lines:16
Total lines:36
Line coverage:0% (0 of 16)
Covered branches:0
Total branches:8
Branch coverage:0% (0 of 8)

Metrics

MethodBranch coverage Cyclomatic complexity NPath complexity Sequence coverage
IsError(...)0%800%
Rid(...)100%100%
GetBytes(...)100%100%

File(s)

D:\a\SharpHoundCommon\SharpHoundCommon\src\SharpHoundRPC\Extensions.cs

#LineLine coverage
 1using System;
 2using System.Security.Principal;
 3
 4namespace SharpHoundRPC
 5{
 6    public static class Extensions
 7    {
 8        public static bool IsError(this NtStatus status)
 09        {
 010            if (status != NtStatus.StatusSuccess && status != NtStatus.StatusMoreEntries &&
 011                status != NtStatus.StatusSomeMapped && status != NtStatus.StatusNoMoreEntries)
 012                return true;
 13
 014            return false;
 015        }
 16
 17        /// <summary>
 18        ///     Gets the relative identifier for a SID
 19        /// </summary>
 20        /// <param name="securityIdentifier"></param>
 21        /// <returns></returns>
 22        public static int Rid(this SecurityIdentifier securityIdentifier)
 023        {
 024            var value = securityIdentifier.Value;
 025            var rid = int.Parse(value.Substring(value.LastIndexOf("-", StringComparison.Ordinal) + 1));
 026            return rid;
 027        }
 28
 29        public static byte[] GetBytes(this SecurityIdentifier identifier)
 030        {
 031            var bytes = new byte[identifier.BinaryLength];
 032            identifier.GetBinaryForm(bytes, 0);
 033            return bytes;
 034        }
 35    }
 36}