aboutsummaryrefslogtreecommitdiff
path: root/Emby.Common.Implementations/IO/SharpCifs/Dcerpc/UUID.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Emby.Common.Implementations/IO/SharpCifs/Dcerpc/UUID.cs')
-rw-r--r--Emby.Common.Implementations/IO/SharpCifs/Dcerpc/UUID.cs244
1 files changed, 127 insertions, 117 deletions
diff --git a/Emby.Common.Implementations/IO/SharpCifs/Dcerpc/UUID.cs b/Emby.Common.Implementations/IO/SharpCifs/Dcerpc/UUID.cs
index bef4be214..b9965711b 100644
--- a/Emby.Common.Implementations/IO/SharpCifs/Dcerpc/UUID.cs
+++ b/Emby.Common.Implementations/IO/SharpCifs/Dcerpc/UUID.cs
@@ -18,131 +18,141 @@ using System;
namespace SharpCifs.Dcerpc
{
- public class Uuid : Rpc.UuidT
- {
- public static int Hex_to_bin(char[] arr, int offset, int length)
- {
- int value = 0;
- int ai;
- int count;
- count = 0;
- for (ai = offset; ai < arr.Length && count < length; ai++)
- {
- value <<= 4;
- switch (arr[ai])
- {
- case '0':
- case '1':
- case '2':
- case '3':
- case '4':
- case '5':
- case '6':
- case '7':
- case '8':
- case '9':
- {
- value += arr[ai] - '0';
- break;
- }
+ public class Uuid : Rpc.UuidT
+ {
+ public static int Hex_to_bin(char[] arr, int offset, int length)
+ {
+ int value = 0;
+ int ai;
+ int count;
+ count = 0;
+ for (ai = offset; ai < arr.Length && count < length; ai++)
+ {
+ value <<= 4;
+ switch (arr[ai])
+ {
+ case '0':
+ case '1':
+ case '2':
+ case '3':
+ case '4':
+ case '5':
+ case '6':
+ case '7':
+ case '8':
+ case '9':
+ {
+ value += arr[ai] - '0';
+ break;
+ }
- case 'A':
- case 'B':
- case 'C':
- case 'D':
- case 'E':
- case 'F':
- {
- value += 10 + (arr[ai] - 'A');
- break;
- }
+ case 'A':
+ case 'B':
+ case 'C':
+ case 'D':
+ case 'E':
+ case 'F':
+ {
+ value += 10 + (arr[ai] - 'A');
+ break;
+ }
- case 'a':
- case 'b':
- case 'c':
- case 'd':
- case 'e':
- case 'f':
- {
- value += 10 + (arr[ai] - 'a');
- break;
- }
+ case 'a':
+ case 'b':
+ case 'c':
+ case 'd':
+ case 'e':
+ case 'f':
+ {
+ value += 10 + (arr[ai] - 'a');
+ break;
+ }
- default:
- {
- throw new ArgumentException(new string(arr, offset, length));
- }
- }
- count++;
- }
- return value;
- }
+ default:
+ {
+ throw new ArgumentException(new string(arr, offset, length));
+ }
+ }
+ count++;
+ }
+ return value;
+ }
- internal static readonly char[] Hexchars = { '0', '1', '2', '3', '4',
- '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F' };
+ internal static readonly char[] Hexchars =
+ {
+ '0', '1', '2', '3', '4',
+ '5', '6', '7', '8', '9',
+ 'A', 'B', 'C', 'D', 'E', 'F'
+ };
- public static string Bin_to_hex(int value, int length)
- {
- char[] arr = new char[length];
- int ai = arr.Length;
- while (ai-- > 0)
- {
- arr[ai] = Hexchars[value & unchecked(0xF)];
- value = (int)(((uint)value) >> 4);
- }
- return new string(arr);
- }
+ public static string Bin_to_hex(int value, int length)
+ {
+ char[] arr = new char[length];
+ int ai = arr.Length;
+ while (ai-- > 0)
+ {
+ arr[ai] = Hexchars[value & unchecked(0xF)];
+ value = (int)(((uint)value) >> 4);
+ }
+ return new string(arr);
+ }
- private static byte B(int i)
- {
- return unchecked((byte)(i & unchecked(0xFF)));
- }
+ private static byte B(int i)
+ {
+ return unchecked((byte)(i & unchecked(0xFF)));
+ }
- private static short S(int i)
- {
- return (short)(i & unchecked(0xFFFF));
- }
+ private static short S(int i)
+ {
+ return (short)(i & unchecked(0xFFFF));
+ }
- public Uuid(Rpc.UuidT uuid)
- {
- TimeLow = uuid.TimeLow;
- TimeMid = uuid.TimeMid;
- TimeHiAndVersion = uuid.TimeHiAndVersion;
- ClockSeqHiAndReserved = uuid.ClockSeqHiAndReserved;
- ClockSeqLow = uuid.ClockSeqLow;
- Node = new byte[6];
- Node[0] = uuid.Node[0];
- Node[1] = uuid.Node[1];
- Node[2] = uuid.Node[2];
- Node[3] = uuid.Node[3];
- Node[4] = uuid.Node[4];
- Node[5] = uuid.Node[5];
- }
+ public Uuid(Rpc.UuidT uuid)
+ {
+ TimeLow = uuid.TimeLow;
+ TimeMid = uuid.TimeMid;
+ TimeHiAndVersion = uuid.TimeHiAndVersion;
+ ClockSeqHiAndReserved = uuid.ClockSeqHiAndReserved;
+ ClockSeqLow = uuid.ClockSeqLow;
+ Node = new byte[6];
+ Node[0] = uuid.Node[0];
+ Node[1] = uuid.Node[1];
+ Node[2] = uuid.Node[2];
+ Node[3] = uuid.Node[3];
+ Node[4] = uuid.Node[4];
+ Node[5] = uuid.Node[5];
+ }
- public Uuid(string str)
- {
- char[] arr = str.ToCharArray();
- TimeLow = Hex_to_bin(arr, 0, 8);
- TimeMid = S(Hex_to_bin(arr, 9, 4));
- TimeHiAndVersion = S(Hex_to_bin(arr, 14, 4));
- ClockSeqHiAndReserved = B(Hex_to_bin(arr, 19, 2));
- ClockSeqLow = B(Hex_to_bin(arr, 21, 2));
- Node = new byte[6];
- Node[0] = B(Hex_to_bin(arr, 24, 2));
- Node[1] = B(Hex_to_bin(arr, 26, 2));
- Node[2] = B(Hex_to_bin(arr, 28, 2));
- Node[3] = B(Hex_to_bin(arr, 30, 2));
- Node[4] = B(Hex_to_bin(arr, 32, 2));
- Node[5] = B(Hex_to_bin(arr, 34, 2));
- }
+ public Uuid(string str)
+ {
+ char[] arr = str.ToCharArray();
+ TimeLow = Hex_to_bin(arr, 0, 8);
+ TimeMid = S(Hex_to_bin(arr, 9, 4));
+ TimeHiAndVersion = S(Hex_to_bin(arr, 14, 4));
+ ClockSeqHiAndReserved = B(Hex_to_bin(arr, 19, 2));
+ ClockSeqLow = B(Hex_to_bin(arr, 21, 2));
+ Node = new byte[6];
+ Node[0] = B(Hex_to_bin(arr, 24, 2));
+ Node[1] = B(Hex_to_bin(arr, 26, 2));
+ Node[2] = B(Hex_to_bin(arr, 28, 2));
+ Node[3] = B(Hex_to_bin(arr, 30, 2));
+ Node[4] = B(Hex_to_bin(arr, 32, 2));
+ Node[5] = B(Hex_to_bin(arr, 34, 2));
+ }
- public override string ToString()
- {
- return Bin_to_hex(TimeLow, 8) + '-' + Bin_to_hex(TimeMid, 4) + '-' + Bin_to_hex
- (TimeHiAndVersion, 4) + '-' + Bin_to_hex(ClockSeqHiAndReserved, 2) + Bin_to_hex
- (ClockSeqLow, 2) + '-' + Bin_to_hex(Node[0], 2) + Bin_to_hex(Node[1], 2) + Bin_to_hex
- (Node[2], 2) + Bin_to_hex(Node[3], 2) + Bin_to_hex(Node[4], 2) + Bin_to_hex(Node
- [5], 2);
- }
- }
+ public override string ToString()
+ {
+ return Bin_to_hex(TimeLow, 8)
+ + '-' + Bin_to_hex(TimeMid, 4)
+ + '-' + Bin_to_hex(TimeHiAndVersion, 4)
+ + '-' + Bin_to_hex(ClockSeqHiAndReserved, 2)
+ + Bin_to_hex(ClockSeqLow, 2)
+ + '-' + Bin_to_hex(Node[0], 2)
+ + Bin_to_hex(Node[1], 2)
+ + Bin_to_hex(Node[2], 2)
+ + Bin_to_hex(Node[3], 2)
+ + Bin_to_hex(Node[4], 2)
+ + Bin_to_hex(Node[5], 2);
+ }
+ }
}