
When an include is not surrounded by empty lines, its content is inlined on the same line as the adjacent content. That can lead to broken tags and other display issues. This PR fixes all such includes and introduces a validation step that forbids introducing the same problem again.
76 lines
2.1 KiB
Plaintext
76 lines
2.1 KiB
Plaintext
== Why is this an issue?
|
|
|
|
include::../description.adoc[]
|
|
|
|
=== Noncompliant code example
|
|
|
|
[source,vbnet]
|
|
----
|
|
Public Class Noncompliant
|
|
|
|
<DllImport("ole32.dll")>
|
|
Public Shared Function CoSetProxyBlanket(<MarshalAs(UnmanagedType.IUnknown)>pProxy As Object, dwAuthnSvc as UInt32, dwAuthzSvc As UInt32, <MarshalAs(UnmanagedType.LPWStr)> pServerPrincName As String, dwAuthnLevel As UInt32, dwImpLevel As UInt32, pAuthInfo As IntPtr, dwCapabilities As UInt32) As Integer
|
|
End Function
|
|
|
|
Public Enum RpcAuthnLevel
|
|
[Default] = 0
|
|
None = 1
|
|
Connect = 2
|
|
[Call] = 3
|
|
Pkt = 4
|
|
PktIntegrity = 5
|
|
PktPrivacy = 6
|
|
End Enum
|
|
|
|
Public Enum RpcImpLevel
|
|
[Default] = 0
|
|
Anonymous = 1
|
|
Identify = 2
|
|
Impersonate = 3
|
|
[Delegate] = 4
|
|
End Enum
|
|
|
|
Public Enum EoAuthnCap
|
|
None = &H00
|
|
MutualAuth = &H01
|
|
StaticCloaking = &H20
|
|
DynamicCloaking = &H40
|
|
AnyAuthority = &H80
|
|
MakeFullSIC = &H100
|
|
[Default] = &H800
|
|
SecureRefs = &H02
|
|
AccessControl = &H04
|
|
AppID = &H08
|
|
Dynamic = &H10
|
|
RequireFullSIC = &H200
|
|
AutoImpersonate = &H400
|
|
NoCustomMarshal = &H2000
|
|
DisableAAA = &H1000
|
|
End Enum
|
|
|
|
<DllImport("ole32.dll")>
|
|
Public Shared Function CoInitializeSecurity(pVoid As IntPtr, cAuthSvc As Integer, asAuthSvc As IntPtr, pReserved1 As IntPtr, level As RpcAuthnLevel, impers As RpcImpLevel, pAuthList As IntPtr, dwCapabilities As EoAuthnCap, pReserved3 As IntPtr) As Integer
|
|
End Function
|
|
|
|
Public Sub DoSomething()
|
|
Dim Hres1 As Integer = CoSetProxyBlanket(Nothing, 0, 0, Nothing, 0, 0, IntPtr.Zero, 0) ' Noncompliant
|
|
Dim Hres2 As Integer = CoInitializeSecurity(IntPtr.Zero, -1, IntPtr.Zero, IntPtr.Zero, RpcAuthnLevel.None, RpcImpLevel.Impersonate, IntPtr.Zero, EoAuthnCap.None, IntPtr.Zero) ' Noncompliant
|
|
End Sub
|
|
|
|
End Class
|
|
----
|
|
|
|
include::../see.adoc[]
|
|
|
|
ifdef::env-github,rspecator-view[]
|
|
|
|
'''
|
|
== Implementation Specification
|
|
(visible only on this page)
|
|
|
|
include::../message.adoc[]
|
|
|
|
include::../highlighting.adoc[]
|
|
|
|
endif::env-github,rspecator-view[]
|