aboutsummaryrefslogtreecommitdiff
path: root/Emby.Common.Implementations/IO/SharpCifs/Smb/SecurityDescriptor.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Emby.Common.Implementations/IO/SharpCifs/Smb/SecurityDescriptor.cs')
-rw-r--r--Emby.Common.Implementations/IO/SharpCifs/Smb/SecurityDescriptor.cs150
1 files changed, 75 insertions, 75 deletions
diff --git a/Emby.Common.Implementations/IO/SharpCifs/Smb/SecurityDescriptor.cs b/Emby.Common.Implementations/IO/SharpCifs/Smb/SecurityDescriptor.cs
index 8a424a019..115fb173e 100644
--- a/Emby.Common.Implementations/IO/SharpCifs/Smb/SecurityDescriptor.cs
+++ b/Emby.Common.Implementations/IO/SharpCifs/Smb/SecurityDescriptor.cs
@@ -18,84 +18,84 @@ using System.IO;
namespace SharpCifs.Smb
{
- public class SecurityDescriptor
- {
- public int Type;
+ public class SecurityDescriptor
+ {
+ public int Type;
- public Ace[] Aces;
+ public Ace[] Aces;
- public SecurityDescriptor()
- {
- }
+ public SecurityDescriptor()
+ {
+ }
- /// <exception cref="System.IO.IOException"></exception>
- public SecurityDescriptor(byte[] buffer, int bufferIndex, int len)
- {
- Decode(buffer, bufferIndex, len);
- }
+ /// <exception cref="System.IO.IOException"></exception>
+ public SecurityDescriptor(byte[] buffer, int bufferIndex, int len)
+ {
+ Decode(buffer, bufferIndex, len);
+ }
- /// <exception cref="System.IO.IOException"></exception>
- public virtual int Decode(byte[] buffer, int bufferIndex, int len)
- {
- int start = bufferIndex;
- bufferIndex++;
- // revision
- bufferIndex++;
- Type = ServerMessageBlock.ReadInt2(buffer, bufferIndex);
- bufferIndex += 2;
- ServerMessageBlock.ReadInt4(buffer, bufferIndex);
- // offset to owner sid
- bufferIndex += 4;
- ServerMessageBlock.ReadInt4(buffer, bufferIndex);
- // offset to group sid
- bufferIndex += 4;
- ServerMessageBlock.ReadInt4(buffer, bufferIndex);
- // offset to sacl
- bufferIndex += 4;
- int daclOffset = ServerMessageBlock.ReadInt4(buffer, bufferIndex);
- bufferIndex = start + daclOffset;
- bufferIndex++;
- // revision
- bufferIndex++;
- int size = ServerMessageBlock.ReadInt2(buffer, bufferIndex);
- bufferIndex += 2;
- int numAces = ServerMessageBlock.ReadInt4(buffer, bufferIndex);
- bufferIndex += 4;
- if (numAces > 4096)
- {
- throw new IOException("Invalid SecurityDescriptor");
- }
- if (daclOffset != 0)
- {
- Aces = new Ace[numAces];
- for (int i = 0; i < numAces; i++)
- {
- Aces[i] = new Ace();
- bufferIndex += Aces[i].Decode(buffer, bufferIndex);
- }
- }
- else
- {
- Aces = null;
- }
- return bufferIndex - start;
- }
+ /// <exception cref="System.IO.IOException"></exception>
+ public virtual int Decode(byte[] buffer, int bufferIndex, int len)
+ {
+ int start = bufferIndex;
+ bufferIndex++;
+ // revision
+ bufferIndex++;
+ Type = ServerMessageBlock.ReadInt2(buffer, bufferIndex);
+ bufferIndex += 2;
+ ServerMessageBlock.ReadInt4(buffer, bufferIndex);
+ // offset to owner sid
+ bufferIndex += 4;
+ ServerMessageBlock.ReadInt4(buffer, bufferIndex);
+ // offset to group sid
+ bufferIndex += 4;
+ ServerMessageBlock.ReadInt4(buffer, bufferIndex);
+ // offset to sacl
+ bufferIndex += 4;
+ int daclOffset = ServerMessageBlock.ReadInt4(buffer, bufferIndex);
+ bufferIndex = start + daclOffset;
+ bufferIndex++;
+ // revision
+ bufferIndex++;
+ int size = ServerMessageBlock.ReadInt2(buffer, bufferIndex);
+ bufferIndex += 2;
+ int numAces = ServerMessageBlock.ReadInt4(buffer, bufferIndex);
+ bufferIndex += 4;
+ if (numAces > 4096)
+ {
+ throw new IOException("Invalid SecurityDescriptor");
+ }
+ if (daclOffset != 0)
+ {
+ Aces = new Ace[numAces];
+ for (int i = 0; i < numAces; i++)
+ {
+ Aces[i] = new Ace();
+ bufferIndex += Aces[i].Decode(buffer, bufferIndex);
+ }
+ }
+ else
+ {
+ Aces = null;
+ }
+ return bufferIndex - start;
+ }
- public override string ToString()
- {
- string ret = "SecurityDescriptor:\n";
- if (Aces != null)
- {
- for (int ai = 0; ai < Aces.Length; ai++)
- {
- ret += Aces[ai] + "\n";
- }
- }
- else
- {
- ret += "NULL";
- }
- return ret;
- }
- }
+ public override string ToString()
+ {
+ string ret = "SecurityDescriptor:\n";
+ if (Aces != null)
+ {
+ for (int ai = 0; ai < Aces.Length; ai++)
+ {
+ ret += Aces[ai] + "\n";
+ }
+ }
+ else
+ {
+ ret += "NULL";
+ }
+ return ret;
+ }
+ }
}