Imported Upstream version 4.6.0.125

Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
This commit is contained in:
Xamarin Public Jenkins (auto-signing)
2016-08-03 10:59:49 +00:00
parent a569aebcfd
commit e79aa3c0ed
17047 changed files with 3137615 additions and 392334 deletions

View File

@ -0,0 +1,45 @@
//------------------------------------------------------------------------------
// <copyright file="Permission.cs" company="Microsoft">
// Copyright (c) Microsoft Corporation. All rights reserved.
// </copyright>
//------------------------------------------------------------------------------
/*
*
* Copyright (c) 1998-1999, Microsoft Corporation
*
*/
namespace System.Web.Util {
using System.Security.Permissions;
using System.Security;
using System.Data.SqlClient;
static class Permission {
internal static bool HasSqlClientPermission() {
NamedPermissionSet permissionset = HttpRuntime.NamedPermissionSet;
// If we don't have a NamedPermissionSet, we're in full trust
if (permissionset == null)
return true;
// Check that the user has unrestricted SqlClientPermission
IPermission allowedPermission = permissionset.GetPermission(typeof(SqlClientPermission));
if (allowedPermission == null) {
return false;
}
IPermission askedPermission = null;
try {
askedPermission = new SqlClientPermission(PermissionState.Unrestricted);
}
catch {
return false;
}
return askedPermission.IsSubsetOf(allowedPermission);
}
}
}