scripts
This commit is contained in:
@@ -0,0 +1,94 @@
|
||||
using System;
|
||||
|
||||
namespace System.Net
|
||||
{
|
||||
// Token: 0x020001FE RID: 510
|
||||
internal class BasicClient : IAuthenticationModule
|
||||
{
|
||||
// Token: 0x0600114D RID: 4429 RVA: 0x00032714 File Offset: 0x00030914
|
||||
public Authorization Authenticate(string challenge, WebRequest webRequest, ICredentials credentials)
|
||||
{
|
||||
if (credentials == null || challenge == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
string text = challenge.Trim();
|
||||
if (text.ToLower().IndexOf("basic") == -1)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
return BasicClient.InternalAuthenticate(webRequest, credentials);
|
||||
}
|
||||
|
||||
// Token: 0x0600114E RID: 4430 RVA: 0x00032758 File Offset: 0x00030958
|
||||
private static byte[] GetBytes(string str)
|
||||
{
|
||||
int i = str.Length;
|
||||
byte[] array = new byte[i];
|
||||
for (i--; i >= 0; i--)
|
||||
{
|
||||
array[i] = (byte)str[i];
|
||||
}
|
||||
return array;
|
||||
}
|
||||
|
||||
// Token: 0x0600114F RID: 4431 RVA: 0x00032794 File Offset: 0x00030994
|
||||
private static Authorization InternalAuthenticate(WebRequest webRequest, ICredentials credentials)
|
||||
{
|
||||
HttpWebRequest httpWebRequest = webRequest as HttpWebRequest;
|
||||
if (httpWebRequest == null || credentials == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
NetworkCredential credential = credentials.GetCredential(httpWebRequest.AuthUri, "basic");
|
||||
if (credential == null)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
string userName = credential.UserName;
|
||||
if (userName == null || userName == string.Empty)
|
||||
{
|
||||
return null;
|
||||
}
|
||||
string password = credential.Password;
|
||||
string domain = credential.Domain;
|
||||
byte[] array;
|
||||
if (domain == null || domain == string.Empty || domain.Trim() == string.Empty)
|
||||
{
|
||||
array = BasicClient.GetBytes(userName + ":" + password);
|
||||
}
|
||||
else
|
||||
{
|
||||
array = BasicClient.GetBytes(string.Concat(new string[] { domain, "\\", userName, ":", password }));
|
||||
}
|
||||
string text = "Basic " + Convert.ToBase64String(array);
|
||||
return new Authorization(text);
|
||||
}
|
||||
|
||||
// Token: 0x06001150 RID: 4432 RVA: 0x00032890 File Offset: 0x00030A90
|
||||
public Authorization PreAuthenticate(WebRequest webRequest, ICredentials credentials)
|
||||
{
|
||||
return BasicClient.InternalAuthenticate(webRequest, credentials);
|
||||
}
|
||||
|
||||
// Token: 0x170005B3 RID: 1459
|
||||
// (get) Token: 0x06001151 RID: 4433 RVA: 0x0003289C File Offset: 0x00030A9C
|
||||
public string AuthenticationType
|
||||
{
|
||||
get
|
||||
{
|
||||
return "Basic";
|
||||
}
|
||||
}
|
||||
|
||||
// Token: 0x170005B4 RID: 1460
|
||||
// (get) Token: 0x06001152 RID: 4434 RVA: 0x000328A4 File Offset: 0x00030AA4
|
||||
public bool CanPreAuthenticate
|
||||
{
|
||||
get
|
||||
{
|
||||
return true;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user