Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / cdf / src / WCF / System.ServiceModel.Activation / System / ServiceModel / Activation / Interop / SafeNativeMethods.cs / 1305376 / SafeNativeMethods.cs
//------------------------------------------------------------------------------ // Copyright (c) Microsoft Corporation. All rights reserved. //----------------------------------------------------------------------------- namespace System.ServiceModel.Activation.Interop { using System; using System.Security; using System.Runtime.InteropServices; using System.Security.Principal; using System.Runtime.Versioning; using System.Runtime; [SuppressUnmanagedCodeSecurity] static class SafeNativeMethods { public const int ERROR_NO_TOKEN = 1008; const string ADVAPI32 = "advapi32.dll"; const string KERNEL32 = "kernel32.dll"; [DllImport(ADVAPI32, SetLastError = true, EntryPoint = "OpenThreadToken")] [ResourceExposure(ResourceScope.None)] static extern bool OpenThreadTokenCritical( [In] IntPtr ThreadHandle, [In] TokenAccessLevels DesiredAccess, [In] bool OpenAsSelf, [Out] out SafeCloseHandleCritical TokenHandle); [DllImport(KERNEL32, SetLastError = true)] [ResourceExposure(ResourceScope.None)] static extern IntPtr GetCurrentThread(); [Fx.Tag.SecurityNote(Critical = "Calls two safe native methods: GetCurrentThread and OpenThreadToken." + "Marshal.GetLastWin32Error captures current thread token in a SecurityCritical field.")] [SecurityCritical] internal static bool OpenCurrentThreadTokenCritical(TokenAccessLevels desiredAccess, bool openAsSelf, out SafeCloseHandleCritical tokenHandle, out int error) { bool result = OpenThreadTokenCritical(GetCurrentThread(), desiredAccess, openAsSelf, out tokenHandle); error = Marshal.GetLastWin32Error(); return result; } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- WebPartDisplayMode.cs
- CodeAttachEventStatement.cs
- LayoutTable.cs
- RemotingException.cs
- TextProperties.cs
- ConnectorDragDropGlyph.cs
- GuidTagList.cs
- SurrogateEncoder.cs
- OleDbReferenceCollection.cs
- WebException.cs
- DbProviderManifest.cs
- _NetRes.cs
- ObjectDataProvider.cs
- ExpressionBuilder.cs
- AdPostCacheSubstitution.cs
- AttributeProviderAttribute.cs
- GridViewUpdatedEventArgs.cs
- ClientApiGenerator.cs
- Hash.cs
- ErrorCodes.cs
- DbCommandDefinition.cs
- DirectoryLocalQuery.cs
- OleAutBinder.cs
- Command.cs
- SchemaTableColumn.cs
- PrinterSettings.cs
- DiscoveryEndpoint.cs
- DetailsViewPageEventArgs.cs
- ConfigXmlText.cs
- QueryOutputWriterV1.cs
- PageTheme.cs
- HttpCacheParams.cs
- hresults.cs
- PolicyManager.cs
- SerializationFieldInfo.cs
- WebPartEditVerb.cs
- XmlTextAttribute.cs
- OutputCacheModule.cs
- SiteMapNodeItem.cs
- ProcessManager.cs
- FileUpload.cs
- ExpressionEditorAttribute.cs
- DrawingContextDrawingContextWalker.cs
- EntityViewGenerationConstants.cs
- Baml2006ReaderFrame.cs
- ZoneIdentityPermission.cs
- InnerItemCollectionView.cs
- WinEventQueueItem.cs
- SqlRemoveConstantOrderBy.cs
- MexTcpBindingElement.cs
- DataPagerCommandEventArgs.cs
- SqlDuplicator.cs
- ParserStack.cs
- OptionUsage.cs
- AnnotationResourceChangedEventArgs.cs
- DataGridViewComboBoxColumn.cs
- EventLogHandle.cs
- Missing.cs
- autovalidator.cs
- TextBoxAutomationPeer.cs
- GridViewDeleteEventArgs.cs
- TransportSecurityProtocolFactory.cs
- HtmlSelect.cs
- XmlExtensionFunction.cs
- LinkUtilities.cs
- EntityDataSourceState.cs
- x509store.cs
- Options.cs
- QuaternionAnimationBase.cs
- DataDocumentXPathNavigator.cs
- AttachmentService.cs
- NameValueCollection.cs
- FamilyTypefaceCollection.cs
- ClientScriptManagerWrapper.cs
- DataColumnPropertyDescriptor.cs
- HtmlInputPassword.cs
- LoadGrammarCompletedEventArgs.cs
- SystemUnicastIPAddressInformation.cs
- CheckedListBox.cs
- UserPersonalizationStateInfo.cs
- XNodeNavigator.cs
- LocalizabilityAttribute.cs
- DataRelationPropertyDescriptor.cs
- AssemblyHash.cs
- ISAPIWorkerRequest.cs
- QueryCursorEventArgs.cs
- BrowserCapabilitiesCodeGenerator.cs
- OutputWindow.cs
- EndpointAddressAugust2004.cs
- UserUseLicenseDictionaryLoader.cs
- EventLogReader.cs
- FrameworkTemplate.cs
- UIHelper.cs
- IntMinMaxAggregationOperator.cs
- CFStream.cs
- Message.cs
- BoundField.cs
- RepeaterItemEventArgs.cs
- RangeContentEnumerator.cs
- RuleSettings.cs