Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ ToBase32StringSuitableForDirName()

static string System.Security.IdentityHelper.ToBase32StringSuitableForDirName ( byte[] buff)
inlinestaticpackage

Definition at line 54 of file IdentityHelper.cs.

55 {
56 StringBuilder stringBuilder = new StringBuilder();
57 int num = buff.Length;
58 int num2 = 0;
59 do
60 {
61 byte b = (byte)((num2 < num) ? buff[num2++] : 0);
62 byte b2 = (byte)((num2 < num) ? buff[num2++] : 0);
63 byte b3 = (byte)((num2 < num) ? buff[num2++] : 0);
64 byte b4 = (byte)((num2 < num) ? buff[num2++] : 0);
65 byte b5 = (byte)((num2 < num) ? buff[num2++] : 0);
66 stringBuilder.Append(s_base32Char[b & 0x1F]);
67 stringBuilder.Append(s_base32Char[b2 & 0x1F]);
68 stringBuilder.Append(s_base32Char[b3 & 0x1F]);
69 stringBuilder.Append(s_base32Char[b4 & 0x1F]);
70 stringBuilder.Append(s_base32Char[b5 & 0x1F]);
71 stringBuilder.Append(s_base32Char[((b & 0xE0) >> 5) | ((b4 & 0x60) >> 2)]);
72 stringBuilder.Append(s_base32Char[((b2 & 0xE0) >> 5) | ((b5 & 0x60) >> 2)]);
73 b3 >>= 5;
74 if ((b4 & 0x80u) != 0)
75 {
76 b3 = (byte)(b3 | 8u);
77 }
78 if ((b5 & 0x80u) != 0)
79 {
80 b3 = (byte)(b3 | 0x10u);
81 }
82 stringBuilder.Append(s_base32Char[b3]);
83 }
84 while (num2 < num);
85 return stringBuilder.ToString();
86 }
static readonly char[] s_base32Char
override string ToString()
StringBuilder Append(char value, int repeatCount)

References System.Text.StringBuilder.Append(), System.Security.IdentityHelper.s_base32Char, and System.Text.StringBuilder.ToString().

Referenced by System.Security.IdentityHelper.GetStrongHashSuitableForObjectName().