pastebin - collaborative debugging tool
rovema.kpaste.net RSS


ms-nfsv41-client Visual Studio 19 patch
Posted by Anonymous on Mon 4th Sep 2023 02:32
raw | new post

  1. diff --git a/build.vc15/nfs41_driver/nfs41_driver.vcxproj b/build.vc15/nfs41_driver/nfs41_driver.vcxproj
  2. index 7680e49..de55c90 100644
  3. --- a/build.vc15/nfs41_driver/nfs41_driver.vcxproj
  4. +++ b/build.vc15/nfs41_driver/nfs41_driver.vcxproj
  5. @@ -1,234 +1,234 @@
  6. -<?xml version="1.0" encoding="utf-8"?>
  7. -<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  8. -  <ItemGroup Label="ProjectConfigurations">
  9. -    <ProjectConfiguration Include="Debug|Win32">
  10. -      <Configuration>Debug</Configuration>
  11. -      <Platform>Win32</Platform>
  12. -    </ProjectConfiguration>
  13. -    <ProjectConfiguration Include="Release|Win32">
  14. -      <Configuration>Release</Configuration>
  15. -      <Platform>Win32</Platform>
  16. -    </ProjectConfiguration>
  17. -    <ProjectConfiguration Include="Debug|x64">
  18. -      <Configuration>Debug</Configuration>
  19. -      <Platform>x64</Platform>
  20. -    </ProjectConfiguration>
  21. -    <ProjectConfiguration Include="Release|x64">
  22. -      <Configuration>Release</Configuration>
  23. -      <Platform>x64</Platform>
  24. -    </ProjectConfiguration>
  25. -    <ProjectConfiguration Include="Debug|ARM">
  26. -      <Configuration>Debug</Configuration>
  27. -      <Platform>ARM</Platform>
  28. -    </ProjectConfiguration>
  29. -    <ProjectConfiguration Include="Release|ARM">
  30. -      <Configuration>Release</Configuration>
  31. -      <Platform>ARM</Platform>
  32. -    </ProjectConfiguration>
  33. -    <ProjectConfiguration Include="Debug|ARM64">
  34. -      <Configuration>Debug</Configuration>
  35. -      <Platform>ARM64</Platform>
  36. -    </ProjectConfiguration>
  37. -    <ProjectConfiguration Include="Release|ARM64">
  38. -      <Configuration>Release</Configuration>
  39. -      <Platform>ARM64</Platform>
  40. -    </ProjectConfiguration>
  41. -  </ItemGroup>
  42. -  <PropertyGroup Label="Globals">
  43. -    <ProjectGuid>{78E2A6FE-05E7-40F8-AE1E-29BC3C307859}</ProjectGuid>
  44. -    <TemplateGuid>{dd38f7fc-d7bd-488b-9242-7d8754cde80d}</TemplateGuid>
  45. -    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
  46. -    <MinimumVisualStudioVersion>12.0</MinimumVisualStudioVersion>
  47. -    <Configuration>Debug</Configuration>
  48. -    <Platform Condition="'$(Platform)' == ''">Win32</Platform>
  49. -    <RootNamespace>nfs41_driver</RootNamespace>
  50. -  </PropertyGroup>
  51. -  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
  52. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
  53. -    <TargetVersion>Windows10</TargetVersion>
  54. -    <UseDebugLibraries>true</UseDebugLibraries>
  55. -    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  56. -    <ConfigurationType>Driver</ConfigurationType>
  57. -    <DriverType>WDM</DriverType>
  58. -  </PropertyGroup>
  59. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
  60. -    <TargetVersion>Windows10</TargetVersion>
  61. -    <UseDebugLibraries>false</UseDebugLibraries>
  62. -    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  63. -    <ConfigurationType>Driver</ConfigurationType>
  64. -    <DriverType>WDM</DriverType>
  65. -  </PropertyGroup>
  66. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
  67. -    <TargetVersion>Windows10</TargetVersion>
  68. -    <UseDebugLibraries>true</UseDebugLibraries>
  69. -    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  70. -    <ConfigurationType>Driver</ConfigurationType>
  71. -    <DriverType>WDM</DriverType>
  72. -  </PropertyGroup>
  73. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
  74. -    <TargetVersion>Windows10</TargetVersion>
  75. -    <UseDebugLibraries>false</UseDebugLibraries>
  76. -    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  77. -    <ConfigurationType>Driver</ConfigurationType>
  78. -    <DriverType>WDM</DriverType>
  79. -  </PropertyGroup>
  80. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
  81. -    <TargetVersion>Windows10</TargetVersion>
  82. -    <UseDebugLibraries>true</UseDebugLibraries>
  83. -    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  84. -    <ConfigurationType>Driver</ConfigurationType>
  85. -    <DriverType>WDM</DriverType>
  86. -  </PropertyGroup>
  87. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
  88. -    <TargetVersion>Windows10</TargetVersion>
  89. -    <UseDebugLibraries>false</UseDebugLibraries>
  90. -    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  91. -    <ConfigurationType>Driver</ConfigurationType>
  92. -    <DriverType>WDM</DriverType>
  93. -  </PropertyGroup>
  94. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
  95. -    <TargetVersion>Windows10</TargetVersion>
  96. -    <UseDebugLibraries>true</UseDebugLibraries>
  97. -    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  98. -    <ConfigurationType>Driver</ConfigurationType>
  99. -    <DriverType>WDM</DriverType>
  100. -  </PropertyGroup>
  101. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
  102. -    <TargetVersion>Windows10</TargetVersion>
  103. -    <UseDebugLibraries>false</UseDebugLibraries>
  104. -    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  105. -    <ConfigurationType>Driver</ConfigurationType>
  106. -    <DriverType>WDM</DriverType>
  107. -  </PropertyGroup>
  108. -  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
  109. -  <ImportGroup Label="ExtensionSettings">
  110. -  </ImportGroup>
  111. -  <ImportGroup Label="PropertySheets">
  112. -    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  113. -  </ImportGroup>
  114. -  <PropertyGroup Label="UserMacros" />
  115. -  <PropertyGroup />
  116. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
  117. -    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  118. -  </PropertyGroup>
  119. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
  120. -    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  121. -  </PropertyGroup>
  122. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
  123. -    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  124. -  </PropertyGroup>
  125. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
  126. -    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  127. -  </PropertyGroup>
  128. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
  129. -    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  130. -  </PropertyGroup>
  131. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
  132. -    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  133. -  </PropertyGroup>
  134. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
  135. -    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  136. -  </PropertyGroup>
  137. -  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
  138. -    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  139. -  </PropertyGroup>
  140. -  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
  141. -    <ClCompile>
  142. -      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  143. -      <WarningLevel>Level3</WarningLevel>
  144. -      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  145. -    </ClCompile>
  146. -    <Link>
  147. -      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  148. -    </Link>
  149. -  </ItemDefinitionGroup>
  150. -  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
  151. -    <ClCompile>
  152. -      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  153. -      <WarningLevel>Level3</WarningLevel>
  154. -      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  155. -    </ClCompile>
  156. -    <Link>
  157. -      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  158. -    </Link>
  159. -  </ItemDefinitionGroup>
  160. -  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
  161. -    <ClCompile>
  162. -      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  163. -      <WarningLevel>Level3</WarningLevel>
  164. -      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  165. -    </ClCompile>
  166. -    <Link>
  167. -      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  168. -    </Link>
  169. -  </ItemDefinitionGroup>
  170. -  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
  171. -    <ClCompile>
  172. -      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  173. -      <WarningLevel>Level3</WarningLevel>
  174. -      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  175. -    </ClCompile>
  176. -    <Link>
  177. -      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  178. -    </Link>
  179. -  </ItemDefinitionGroup>
  180. -  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
  181. -    <ClCompile>
  182. -      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  183. -      <WarningLevel>Level3</WarningLevel>
  184. -      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  185. -    </ClCompile>
  186. -    <Link>
  187. -      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  188. -    </Link>
  189. -  </ItemDefinitionGroup>
  190. -  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
  191. -    <ClCompile>
  192. -      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  193. -      <WarningLevel>Level3</WarningLevel>
  194. -      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  195. -    </ClCompile>
  196. -    <Link>
  197. -      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  198. -    </Link>
  199. -  </ItemDefinitionGroup>
  200. -  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
  201. -    <ClCompile>
  202. -      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  203. -      <WarningLevel>Level3</WarningLevel>
  204. -      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  205. -    </ClCompile>
  206. -    <Link>
  207. -      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  208. -    </Link>
  209. -  </ItemDefinitionGroup>
  210. -  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
  211. -    <ClCompile>
  212. -      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  213. -      <WarningLevel>Level3</WarningLevel>
  214. -      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  215. -    </ClCompile>
  216. -    <Link>
  217. -      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  218. -    </Link>
  219. -  </ItemDefinitionGroup>
  220. -  <ItemGroup>
  221. -    <FilesToPackage Include="$(TargetPath)" />
  222. -  </ItemGroup>
  223. -  <ItemGroup>
  224. -    <ClCompile Include="..\..\sys\nfs41_debug.c" />
  225. -    <ClCompile Include="..\..\sys\nfs41_driver.c" />
  226. -    <ClCompile Include="..\..\sys\wmlkm.c" />
  227. -  </ItemGroup>
  228. -  <ItemGroup>
  229. -    <ClInclude Include="..\..\sys\nfs41_debug.h" />
  230. -    <ClInclude Include="..\..\sys\nfs41_driver.h" />
  231. -    <ClInclude Include="..\..\sys\wmlkm.h" />
  232. -  </ItemGroup>
  233. -  <ItemGroup>
  234. -    <ResourceCompile Include="..\..\sys\nfs41_driver.rc" />
  235. -  </ItemGroup>
  236. -  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
  237. -  <ImportGroup Label="ExtensionTargets">
  238. -  </ImportGroup>
  239. +<?xml version="1.0" encoding="utf-8"?>
  240. +<Project DefaultTargets="Build" ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  241. +  <ItemGroup Label="ProjectConfigurations">
  242. +    <ProjectConfiguration Include="Debug|Win32">
  243. +      <Configuration>Debug</Configuration>
  244. +      <Platform>Win32</Platform>
  245. +    </ProjectConfiguration>
  246. +    <ProjectConfiguration Include="Release|Win32">
  247. +      <Configuration>Release</Configuration>
  248. +      <Platform>Win32</Platform>
  249. +    </ProjectConfiguration>
  250. +    <ProjectConfiguration Include="Debug|x64">
  251. +      <Configuration>Debug</Configuration>
  252. +      <Platform>x64</Platform>
  253. +    </ProjectConfiguration>
  254. +    <ProjectConfiguration Include="Release|x64">
  255. +      <Configuration>Release</Configuration>
  256. +      <Platform>x64</Platform>
  257. +    </ProjectConfiguration>
  258. +    <ProjectConfiguration Include="Debug|ARM">
  259. +      <Configuration>Debug</Configuration>
  260. +      <Platform>ARM</Platform>
  261. +    </ProjectConfiguration>
  262. +    <ProjectConfiguration Include="Release|ARM">
  263. +      <Configuration>Release</Configuration>
  264. +      <Platform>ARM</Platform>
  265. +    </ProjectConfiguration>
  266. +    <ProjectConfiguration Include="Debug|ARM64">
  267. +      <Configuration>Debug</Configuration>
  268. +      <Platform>ARM64</Platform>
  269. +    </ProjectConfiguration>
  270. +    <ProjectConfiguration Include="Release|ARM64">
  271. +      <Configuration>Release</Configuration>
  272. +      <Platform>ARM64</Platform>
  273. +    </ProjectConfiguration>
  274. +  </ItemGroup>
  275. +  <PropertyGroup Label="Globals">
  276. +    <ProjectGuid>{78E2A6FE-05E7-40F8-AE1E-29BC3C307859}</ProjectGuid>
  277. +    <TemplateGuid>{dd38f7fc-d7bd-488b-9242-7d8754cde80d}</TemplateGuid>
  278. +    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
  279. +    <MinimumVisualStudioVersion>12.0</MinimumVisualStudioVersion>
  280. +    <Configuration>Debug</Configuration>
  281. +    <Platform Condition="'$(Platform)' == ''">Win32</Platform>
  282. +    <RootNamespace>nfs41_driver</RootNamespace>
  283. +  </PropertyGroup>
  284. +  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
  285. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
  286. +    <TargetVersion>Windows10</TargetVersion>
  287. +    <UseDebugLibraries>true</UseDebugLibraries>
  288. +    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  289. +    <ConfigurationType>Driver</ConfigurationType>
  290. +    <DriverType>WDM</DriverType>
  291. +  </PropertyGroup>
  292. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
  293. +    <TargetVersion>Windows10</TargetVersion>
  294. +    <UseDebugLibraries>false</UseDebugLibraries>
  295. +    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  296. +    <ConfigurationType>Driver</ConfigurationType>
  297. +    <DriverType>WDM</DriverType>
  298. +  </PropertyGroup>
  299. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'" Label="Configuration">
  300. +    <TargetVersion>Windows10</TargetVersion>
  301. +    <UseDebugLibraries>true</UseDebugLibraries>
  302. +    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  303. +    <ConfigurationType>Driver</ConfigurationType>
  304. +    <DriverType>WDM</DriverType>
  305. +  </PropertyGroup>
  306. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'" Label="Configuration">
  307. +    <TargetVersion>Windows10</TargetVersion>
  308. +    <UseDebugLibraries>false</UseDebugLibraries>
  309. +    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  310. +    <ConfigurationType>Driver</ConfigurationType>
  311. +    <DriverType>WDM</DriverType>
  312. +  </PropertyGroup>
  313. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'" Label="Configuration">
  314. +    <TargetVersion>Windows10</TargetVersion>
  315. +    <UseDebugLibraries>true</UseDebugLibraries>
  316. +    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  317. +    <ConfigurationType>Driver</ConfigurationType>
  318. +    <DriverType>WDM</DriverType>
  319. +  </PropertyGroup>
  320. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'" Label="Configuration">
  321. +    <TargetVersion>Windows10</TargetVersion>
  322. +    <UseDebugLibraries>false</UseDebugLibraries>
  323. +    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  324. +    <ConfigurationType>Driver</ConfigurationType>
  325. +    <DriverType>WDM</DriverType>
  326. +  </PropertyGroup>
  327. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'" Label="Configuration">
  328. +    <TargetVersion>Windows10</TargetVersion>
  329. +    <UseDebugLibraries>true</UseDebugLibraries>
  330. +    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  331. +    <ConfigurationType>Driver</ConfigurationType>
  332. +    <DriverType>WDM</DriverType>
  333. +  </PropertyGroup>
  334. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'" Label="Configuration">
  335. +    <TargetVersion>Windows10</TargetVersion>
  336. +    <UseDebugLibraries>false</UseDebugLibraries>
  337. +    <PlatformToolset>WindowsKernelModeDriver10.0</PlatformToolset>
  338. +    <ConfigurationType>Driver</ConfigurationType>
  339. +    <DriverType>WDM</DriverType>
  340. +  </PropertyGroup>
  341. +  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
  342. +  <ImportGroup Label="ExtensionSettings">
  343. +  </ImportGroup>
  344. +  <ImportGroup Label="PropertySheets">
  345. +    <Import Project="$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props" Condition="exists('$(UserRootDir)\Microsoft.Cpp.$(Platform).user.props')" Label="LocalAppDataPlatform" />
  346. +  </ImportGroup>
  347. +  <PropertyGroup Label="UserMacros" />
  348. +  <PropertyGroup />
  349. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
  350. +    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  351. +  </PropertyGroup>
  352. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
  353. +    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  354. +  </PropertyGroup>
  355. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
  356. +    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  357. +  </PropertyGroup>
  358. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
  359. +    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  360. +  </PropertyGroup>
  361. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
  362. +    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  363. +  </PropertyGroup>
  364. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
  365. +    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  366. +  </PropertyGroup>
  367. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
  368. +    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  369. +  </PropertyGroup>
  370. +  <PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
  371. +    <DebuggerFlavor>DbgengKernelDebugger</DebuggerFlavor>
  372. +  </PropertyGroup>
  373. +  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM64'">
  374. +    <ClCompile>
  375. +      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  376. +      <WarningLevel>Level3</WarningLevel>
  377. +      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  378. +    </ClCompile>
  379. +    <Link>
  380. +      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  381. +    </Link>
  382. +  </ItemDefinitionGroup>
  383. +  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM64'">
  384. +    <ClCompile>
  385. +      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  386. +      <WarningLevel>Level3</WarningLevel>
  387. +      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  388. +    </ClCompile>
  389. +    <Link>
  390. +      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  391. +    </Link>
  392. +  </ItemDefinitionGroup>
  393. +  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
  394. +    <ClCompile>
  395. +      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  396. +      <WarningLevel>Level3</WarningLevel>
  397. +      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  398. +    </ClCompile>
  399. +    <Link>
  400. +      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  401. +    </Link>
  402. +  </ItemDefinitionGroup>
  403. +  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
  404. +    <ClCompile>
  405. +      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  406. +      <WarningLevel>Level3</WarningLevel>
  407. +      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  408. +    </ClCompile>
  409. +    <Link>
  410. +      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  411. +    </Link>
  412. +  </ItemDefinitionGroup>
  413. +  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|ARM'">
  414. +    <ClCompile>
  415. +      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  416. +      <WarningLevel>Level3</WarningLevel>
  417. +      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  418. +    </ClCompile>
  419. +    <Link>
  420. +      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  421. +    </Link>
  422. +  </ItemDefinitionGroup>
  423. +  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|ARM'">
  424. +    <ClCompile>
  425. +      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  426. +      <WarningLevel>Level3</WarningLevel>
  427. +      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  428. +    </ClCompile>
  429. +    <Link>
  430. +      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  431. +    </Link>
  432. +  </ItemDefinitionGroup>
  433. +  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">
  434. +    <ClCompile>
  435. +      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  436. +      <WarningLevel>Level3</WarningLevel>
  437. +      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  438. +    </ClCompile>
  439. +    <Link>
  440. +      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  441. +    </Link>
  442. +  </ItemDefinitionGroup>
  443. +  <ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|x64'">
  444. +    <ClCompile>
  445. +      <AdditionalIncludeDirectories>..\..\dll;%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
  446. +      <WarningLevel>Level3</WarningLevel>
  447. +      <PreprocessorDefinitions>EXPLODE_POOLTAGS;MONOLITHIC_MINIRDR;%(PreprocessorDefinitions)</PreprocessorDefinitions>
  448. +    </ClCompile>
  449. +    <Link>
  450. +      <AdditionalDependencies>$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ntoskrnl.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\hal.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\bufferoverflowk.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\ksecdd.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rxce.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\rdbsslib.lib;$(WindowsSdkDir)lib\win7\km\$(DDKPlatform)\copysup.lib</AdditionalDependencies>
  451. +    </Link>
  452. +  </ItemDefinitionGroup>
  453. +  <ItemGroup>
  454. +    <FilesToPackage Include="$(TargetPath)" />
  455. +  </ItemGroup>
  456. +  <ItemGroup>
  457. +    <ClCompile Include="..\..\sys\nfs41_debug.c" />
  458. +    <ClCompile Include="..\..\sys\nfs41_driver.c" />
  459. +    <ClCompile Include="..\..\sys\wmlkm.c" />
  460. +  </ItemGroup>
  461. +  <ItemGroup>
  462. +    <ClInclude Include="..\..\sys\nfs41_debug.h" />
  463. +    <ClInclude Include="..\..\sys\nfs41_driver.h" />
  464. +    <ClInclude Include="..\..\sys\wmlkm.h" />
  465. +  </ItemGroup>
  466. +  <ItemGroup>
  467. +    <ResourceCompile Include="..\..\sys\nfs41_driver.rc" />
  468. +  </ItemGroup>
  469. +  <Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
  470. +  <ImportGroup Label="ExtensionTargets">
  471. +  </ImportGroup>
  472.  </Project>
  473. \ No newline at end of file
  474. diff --git a/build.vc15/nfs41_driver/nfs41_driver.vcxproj.filters b/build.vc15/nfs41_driver/nfs41_driver.vcxproj.filters
  475. index 0c2ccad..4b93149 100644
  476. --- a/build.vc15/nfs41_driver/nfs41_driver.vcxproj.filters
  477. +++ b/build.vc15/nfs41_driver/nfs41_driver.vcxproj.filters
  478. @@ -1,48 +1,48 @@
  479. -<?xml version="1.0" encoding="utf-8"?>
  480. -<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  481. -  <ItemGroup>
  482. -    <Filter Include="Source Files">
  483. -      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
  484. -      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
  485. -    </Filter>
  486. -    <Filter Include="Header Files">
  487. -      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
  488. -      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
  489. -    </Filter>
  490. -    <Filter Include="Resource Files">
  491. -      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
  492. -      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
  493. -    </Filter>
  494. -    <Filter Include="Driver Files">
  495. -      <UniqueIdentifier>{8E41214B-6785-4CFE-B992-037D68949A14}</UniqueIdentifier>
  496. -      <Extensions>inf;inv;inx;mof;mc;</Extensions>
  497. -    </Filter>
  498. -  </ItemGroup>
  499. -  <ItemGroup>
  500. -    <ClCompile Include="..\..\sys\nfs41_debug.c">
  501. -      <Filter>Source Files</Filter>
  502. -    </ClCompile>
  503. -    <ClCompile Include="..\..\sys\nfs41_driver.c">
  504. -      <Filter>Source Files</Filter>
  505. -    </ClCompile>
  506. -    <ClCompile Include="..\..\sys\wmlkm.c">
  507. -      <Filter>Source Files</Filter>
  508. -    </ClCompile>
  509. -  </ItemGroup>
  510. -  <ItemGroup>
  511. -    <ClInclude Include="..\..\sys\nfs41_debug.h">
  512. -      <Filter>Header Files</Filter>
  513. -    </ClInclude>
  514. -    <ClInclude Include="..\..\sys\nfs41_driver.h">
  515. -      <Filter>Header Files</Filter>
  516. -    </ClInclude>
  517. -    <ClInclude Include="..\..\sys\wmlkm.h">
  518. -      <Filter>Header Files</Filter>
  519. -    </ClInclude>
  520. -  </ItemGroup>
  521. -  <ItemGroup>
  522. -    <ResourceCompile Include="..\..\sys\nfs41_driver.rc">
  523. -      <Filter>Resource Files</Filter>
  524. -    </ResourceCompile>
  525. -  </ItemGroup>
  526. +<?xml version="1.0" encoding="utf-8"?>
  527. +<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  528. +  <ItemGroup>
  529. +    <Filter Include="Source Files">
  530. +      <UniqueIdentifier>{4FC737F1-C7A5-4376-A066-2A32D752A2FF}</UniqueIdentifier>
  531. +      <Extensions>cpp;c;cc;cxx;def;odl;idl;hpj;bat;asm;asmx</Extensions>
  532. +    </Filter>
  533. +    <Filter Include="Header Files">
  534. +      <UniqueIdentifier>{93995380-89BD-4b04-88EB-625FBE52EBFB}</UniqueIdentifier>
  535. +      <Extensions>h;hpp;hxx;hm;inl;inc;xsd</Extensions>
  536. +    </Filter>
  537. +    <Filter Include="Resource Files">
  538. +      <UniqueIdentifier>{67DA6AB6-F800-4c08-8B7A-83BB121AAD01}</UniqueIdentifier>
  539. +      <Extensions>rc;ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe;resx;tiff;tif;png;wav;mfcribbon-ms</Extensions>
  540. +    </Filter>
  541. +    <Filter Include="Driver Files">
  542. +      <UniqueIdentifier>{8E41214B-6785-4CFE-B992-037D68949A14}</UniqueIdentifier>
  543. +      <Extensions>inf;inv;inx;mof;mc;</Extensions>
  544. +    </Filter>
  545. +  </ItemGroup>
  546. +  <ItemGroup>
  547. +    <ClCompile Include="..\..\sys\nfs41_debug.c">
  548. +      <Filter>Source Files</Filter>
  549. +    </ClCompile>
  550. +    <ClCompile Include="..\..\sys\nfs41_driver.c">
  551. +      <Filter>Source Files</Filter>
  552. +    </ClCompile>
  553. +    <ClCompile Include="..\..\sys\wmlkm.c">
  554. +      <Filter>Source Files</Filter>
  555. +    </ClCompile>
  556. +  </ItemGroup>
  557. +  <ItemGroup>
  558. +    <ClInclude Include="..\..\sys\nfs41_debug.h">
  559. +      <Filter>Header Files</Filter>
  560. +    </ClInclude>
  561. +    <ClInclude Include="..\..\sys\nfs41_driver.h">
  562. +      <Filter>Header Files</Filter>
  563. +    </ClInclude>
  564. +    <ClInclude Include="..\..\sys\wmlkm.h">
  565. +      <Filter>Header Files</Filter>
  566. +    </ClInclude>
  567. +  </ItemGroup>
  568. +  <ItemGroup>
  569. +    <ResourceCompile Include="..\..\sys\nfs41_driver.rc">
  570. +      <Filter>Resource Files</Filter>
  571. +    </ResourceCompile>
  572. +  </ItemGroup>
  573.  </Project>
  574. \ No newline at end of file
  575. diff --git a/daemon/from_kernel.h b/daemon/from_kernel.h
  576. index c14c398..7f74ca2 100644
  577. --- a/daemon/from_kernel.h
  578. +++ b/daemon/from_kernel.h
  579. @@ -152,6 +152,8 @@ typedef struct _FILE_BOTH_DIR_INFORMATION {
  580.      WCHAR FileName[1];
  581.  } FILE_BOTH_DIR_INFORMATION, *PFILE_BOTH_DIR_INFORMATION;
  582.  
  583. +#if (NTDDI_VERSION <= NTDDI_WIN7)
  584. +
  585.  typedef struct _FILE_FULL_DIR_INFO {
  586.      ULONG NextEntryOffset;
  587.      ULONG FileIndex;
  588. @@ -167,6 +169,8 @@ typedef struct _FILE_FULL_DIR_INFO {
  589.      WCHAR FileName[1];
  590.  } FILE_FULL_DIR_INFO, *PFILE_FULL_DIR_INFO;
  591.  
  592. +#endif // NTDDI_VERSION <= NTDDI_WIN7
  593. +
  594.  typedef struct _FILE_ID_FULL_DIR_INFO {
  595.      ULONG NextEntryOffset;
  596.      ULONG FileIndex;
  597. diff --git a/daemon/idmap.c b/daemon/idmap.c
  598. index f38ec71..0dfa8ef 100644
  599. --- a/daemon/idmap.c
  600. +++ b/daemon/idmap.c
  601. @@ -275,7 +275,7 @@ static int config_find_option(
  602.  
  603.      /* find the config_option by key */
  604.      for (i = 0; i < count; i++) {
  605. -        if (stricmp(pair->key, g_options[i].key) == 0) {
  606. +        if (_stricmp(pair->key, g_options[i].key) == 0) {
  607.              *option = &g_options[i];
  608.              status = NO_ERROR;
  609.              break;
  610. diff --git a/daemon/makefile b/daemon/makefile
  611. deleted file mode 100644
  612. index 66f1c8e..0000000
  613. --- a/daemon/makefile
  614. +++ /dev/null
  615. @@ -1,8 +0,0 @@
  616. -#
  617. -# DO NOT EDIT THIS FILE!!!  Edit .\sources. if you want to add a new source
  618. -# file to this component.  This file merely indirects to the real make file
  619. -# that is shared by all the driver components of the Windows NT DDK
  620. -#
  621. -
  622. -!INCLUDE $(NTMAKEENV)\makefile.def
  623. -
  624. diff --git a/daemon/nfs41_compound.c b/daemon/nfs41_compound.c
  625. index f7e3d65..498d588 100644
  626. --- a/daemon/nfs41_compound.c
  627. +++ b/daemon/nfs41_compound.c
  628. @@ -362,7 +362,7 @@ retry:
  629.                  saved_sec_flavor = session->client->rpc->sec_flavor;
  630.                  saved_auth = session->client->rpc->rpc->cl_auth;
  631.                  if (op == OP_LOOKUP || op == OP_OPEN) {
  632. -                    const nfs41_component *name;
  633. +                    const nfs41_component *name = 0;
  634.                      nfs41_path_fh tmp = { 0 };                  
  635.                      nfs41_getfh_res *getfh;
  636.                      nfs41_lookup_args *largs;
  637. diff --git a/daemon/sources b/daemon/sources
  638. deleted file mode 100644
  639. index d39e36a..0000000
  640. --- a/daemon/sources
  641. +++ /dev/null
  642. @@ -1,32 +0,0 @@
  643. -TARGETTYPE=PROGRAM
  644. -TARGETNAME=nfsd
  645. -SOURCES=nfs41_daemon.c daemon_debug.c nfs41_ops.c nfs41_compound.c nfs41_xdr.c \
  646. -       nfs41_server.c nfs41_client.c nfs41_superblock.c nfs41_session.c lookup.c \
  647. -       mount.c open.c readwrite.c lock.c readdir.c getattr.c setattr.c upcall.c \
  648. -       nfs41_rpc.c util.c pnfs_layout.c pnfs_device.c pnfs_debug.c pnfs_io.c \
  649. -       name_cache.c namespace.c rbtree.c volume.c callback_server.c callback_xdr.c \
  650. -       service.c symlink.c idmap.c
  651. -UMTYPE=console
  652. -USE_LIBCMT=1
  653. -#USE_MSVCRT=1
  654. -C_DEFINES=-DSTANDALONE_NFSD #-- use this for non-service nfsd
  655. -INCLUDES=..\sys;..\dll;..\libtirpc\tirpc
  656. -# Use the following for "service" version of nfsd
  657. -#TARGETLIBS=$(SDK_LIB_PATH)\ws2_32.lib $(SDK_LIB_PATH)\iphlpapi.lib \
  658. -#        ..\libtirpc\src\obj$(BUILD_ALT_DIR)\*\libtirpc.lib \
  659. -#              $(SDK_LIB_PATH)\kernel32.lib \
  660. -#              $(SDK_LIB_PATH)\advapi32.lib \
  661. -#              $(SDK_LIB_PATH)\shell32.lib
  662. -TARGETLIBS=$(SDK_LIB_PATH)\ws2_32.lib $(SDK_LIB_PATH)\iphlpapi.lib \
  663. -        ..\libtirpc\src\obj$(BUILD_ALT_DIR)\*\libtirpc.lib
  664. -
  665. -!IF 0
  666. -/W3 is default level
  667. -bump to /Wall, but suppress warnings generated by system includes,
  668. -as well as the following warnings:
  669. -4100 - unused function call arguments (we have lots of stubs)
  670. -4127 - constant conditional (I like to use if(0) or if(1))
  671. -4220 - varargs matching remaining parameters
  672. -4204 - nonstandard extension
  673. -!ENDIF
  674. -MSC_WARNING_LEVEL=/Wall /wd4668 /wd4619 /wd4820 /wd4255 /wd4100 /wd4127 /wd4711 /wd4220 /wd4204
  675. diff --git a/dirs b/dirs
  676. index ae5014a..b50059f 100644
  677. --- a/dirs
  678. +++ b/dirs
  679. @@ -1 +1 @@
  680. -DIRS = dll sys mount install
  681. +DIRS = dll sys mount install libtirpc daemon
  682. diff --git a/etc_netconfig b/etc_netconfig
  683. deleted file mode 100644
  684. index effc67e..0000000
  685. --- a/etc_netconfig
  686. +++ /dev/null
  687. @@ -1,19 +0,0 @@
  688. -#
  689. -# The network configuration file. This file is currently only used in
  690. -# conjunction with the TI-RPC code in the libtirpc library.
  691. -#
  692. -# Entries consist of:
  693. -#
  694. -#       <network_id> <semantics> <flags> <protofamily> <protoname> \
  695. -#               <device> <nametoaddr_libs>
  696. -#
  697. -# The <device> and <nametoaddr_libs> fields are always empty in this
  698. -# implementation.
  699. -#
  700. -udp        tpi_clts      v     inet     udp     -       -
  701. -tcp        tpi_cots_ord  v     inet     tcp     -       -
  702. -udp6       tpi_clts      v     inet6    udp     -       -
  703. -tcp6       tpi_cots_ord  v     inet6    tcp     -       -
  704. -rawip      tpi_raw       -     inet      -      -       -
  705. -local      tpi_cots_ord  -     loopback  -      -       -
  706. -unix       tpi_cots_ord  -     loopback  -      -       -
  707. diff --git a/install.bat b/install.bat
  708. deleted file mode 100644
  709. index cd79372..0000000
  710. --- a/install.bat
  711. +++ /dev/null
  712. @@ -1,2 +0,0 @@
  713. -nfs_install.exe
  714. -rundll32.exe setupapi.dll,InstallHinfSection DefaultInstall 132 ./nfs41rdr.inf
  715. diff --git a/install/sources b/install/sources
  716. index d5bc6c2..71c5e6b 100644
  717. --- a/install/sources
  718. +++ b/install/sources
  719. @@ -1,15 +1,15 @@
  720. -TARGETTYPE=PROGRAM
  721. -TARGETNAME=nfs_install
  722. -SOURCES=nfs_install.c nfsreginst.c
  723. -UMTYPE=console
  724. -USE_MSVCRT=1
  725. -INCLUDES=..\sys
  726. -
  727. -!IF 0
  728. -/W3 is default level
  729. -bump to /Wall, but suppress warnings generated by system includes,
  730. -as well as the following warnings:
  731. -4100 - unused function call arguments (we have lots of stubs)
  732. -4127 - constant conditional (I like to use if(0) or if(1))
  733. -!ENDIF
  734. -MSC_WARNING_LEVEL=/Wall /wd4668 /wd4619 /wd4820 /wd4255 /wd4100 /wd4127 /wd4201 /wd4214 /wd4711
  735. +TARGETTYPE=PROGRAM
  736. +TARGETNAME=nfs_install
  737. +SOURCES=nfs_install.c nfsreginst.c
  738. +UMTYPE=console
  739. +USE_MSVCRT=1
  740. +INCLUDES=..\sys
  741. +
  742. +!IF 0
  743. +/W3 is default level
  744. +bump to /Wall, but suppress warnings generated by system includes,
  745. +as well as the following warnings:
  746. +4100 - unused function call arguments (we have lots of stubs)
  747. +4127 - constant conditional (I like to use if(0) or if(1))
  748. +!ENDIF
  749. +MSC_WARNING_LEVEL=/Wall /wd4668 /wd4619 /wd4820 /wd4255 /wd4100 /wd4127 /wd4201 /wd4214 /wd4711
  750. diff --git a/libtirpc/src/auth_unix.c b/libtirpc/src/auth_unix.c
  751. index 4757aaa..ca8c908 100644
  752. --- a/libtirpc/src/auth_unix.c
  753. +++ b/libtirpc/src/auth_unix.c
  754. @@ -375,8 +375,14 @@ marshal_new_auth(auth)
  755.         XDR_DESTROY(xdrs);
  756.  }
  757.  
  758. -static bool_t
  759. -authunix_wrap(AUTH *auth, XDR *xdrs, xdrproc_t func, caddr_t args, u_int seq)
  760. +static int
  761. +authunix_wrap(struct __auth *auth, XDR *xdrs, xdrproc_t func, caddr_t args)
  762. +{
  763. +    return ((*func)(xdrs, args));
  764. +}
  765. +
  766. +static int
  767. +authunix_unwrap(struct __auth *auth, XDR *xdrs, xdrproc_t func, caddr_t args, u_int seq)
  768.  {
  769.      return ((*func)(xdrs, args));
  770.  }
  771. @@ -397,7 +403,7 @@ authunix_ops()
  772.                 ops.ah_refresh = authunix_refresh;
  773.                 ops.ah_destroy = authunix_destroy;
  774.                 ops.ah_wrap = authunix_wrap;
  775. -               ops.ah_unwrap = authunix_wrap;
  776. +               ops.ah_unwrap = authunix_unwrap;
  777.         }
  778.         mutex_unlock(&ops_lock);
  779.         return (&ops);
  780. diff --git a/libtirpc/src/clnt_dg.c b/libtirpc/src/clnt_dg.c
  781. index a567b22..6ec6169 100644
  782. --- a/libtirpc/src/clnt_dg.c
  783. +++ b/libtirpc/src/clnt_dg.c
  784. @@ -55,6 +55,7 @@
  785.  //#include <err.h>
  786.  #include "rpc_com.h"
  787.  
  788. +#undef IP_RECVERR
  789.  #ifdef IP_RECVERR
  790.  #include <asm/types.h>
  791.  #include <linux/errqueue.h>
  792. diff --git a/libtirpc/src/sources b/libtirpc/src/sources
  793. index 80a6ae2..87249b5 100644
  794. --- a/libtirpc/src/sources
  795. +++ b/libtirpc/src/sources
  796. @@ -81,7 +81,7 @@ DLLBASE=0x1010000
  797.  #USE_NTDLL=1
  798.  #USE_MSVCRT=1
  799.  USE_LIBCMT=1
  800. -NET_C_DEFINES=-DUNICODE -DINET6 -D_WIN32 -DPORTMAP
  801. +NET_C_DEFINES=-DUNICODE -DFD_SETSIZE=128 -DINET6 -DNO_CB_4_KRB5P -DPORTMAP
  802.  
  803.  INCLUDES=..\sys; \
  804.         ..\tirpc; \
  805. @@ -90,6 +90,7 @@ INCLUDES=..\sys; \
  806.  TARGETLIBS=$(SDK_LIB_PATH)\user32.lib \
  807.         $(SDK_LIB_PATH)\kernel32.lib \
  808.         $(SDK_LIB_PATH)\ws2_32.lib \
  809. +       $(SDK_LIB_PATH)\secur32.lib \
  810.         $(SDK_LIB_PATH)\Advapi32.lib
  811.  
  812.  
  813. diff --git a/libtirpc/src/xdr_rec.c b/libtirpc/src/xdr_rec.c
  814. index cd8e987..fa779b6 100644
  815. --- a/libtirpc/src/xdr_rec.c
  816. +++ b/libtirpc/src/xdr_rec.c
  817. @@ -421,7 +421,7 @@ xdrrec_getoutbase(xdrs)
  818.         switch (xdrs->x_op) {
  819.  
  820.         case XDR_ENCODE:
  821. -        buf = rstrm->out_base;
  822. +        buf = (int32_t *) rstrm->out_base;
  823.                 break;
  824.  
  825.         case XDR_DECODE:
  826. diff --git a/libtirpc/tirpc/wintirpc.h b/libtirpc/tirpc/wintirpc.h
  827. index a2ed188..ba277b4 100644
  828. --- a/libtirpc/tirpc/wintirpc.h
  829. +++ b/libtirpc/tirpc/wintirpc.h
  830. @@ -45,10 +45,14 @@
  831.  #include <process.h>
  832.  #include <basetsd.h>
  833.  
  834. +#if (NTDDI_VERSION <= NTDDI_WIN7)
  835.  #define snprintf _snprintf
  836. +#endif // NTDDI_VERSION <= NTDDI_WIN7
  837.  //#define vsnprintf _vsnprintf
  838.  #define strcasecmp _stricmp
  839. -//#define strdup _strdup
  840. +#if (NTDDI_VERSION <= NTDDI_WIN7)
  841. +#define strdup _strdup
  842. +#endif // NTDDI_VERSION <= NTDDI_WIN7
  843.  #define getpid _getpid
  844.  
  845.  #define bcmp memcmp
  846. diff --git a/ms-nfs41-idmap.conf b/ms-nfs41-idmap.conf
  847. deleted file mode 100644
  848. index 2fe1ff3..0000000
  849. --- a/ms-nfs41-idmap.conf
  850. +++ /dev/null
  851. @@ -1,20 +0,0 @@
  852. -# ldap server information
  853. -#ldap_hostname="localhost"
  854. -#ldap_port="389"
  855. -#ldap_version="3"
  856. -#ldap_timeout="5"
  857. -
  858. -# ldap schema information
  859. -#ldap_base="cn=localhost"
  860. -
  861. -#ldap_class_users="user"
  862. -#ldap_class_groups="group"
  863. -
  864. -#ldap_attr_username="cn"
  865. -#ldap_attr_groupname="cn"
  866. -#ldap_attr_gssAuthName="gssAuthName"
  867. -#ldap_attr_uidNumber="uidNumber"
  868. -#ldap_attr_gidNumber="gidNumber"
  869. -
  870. -# caching configuration
  871. -#cache_ttl="60"
  872. diff --git a/nfs41rdr.inf b/nfs41rdr.inf
  873. deleted file mode 100644
  874. index 02ee912..0000000
  875. --- a/nfs41rdr.inf
  876. +++ /dev/null
  877. @@ -1,63 +0,0 @@
  878. -[Version]
  879. -Signature="$CHICAGO$"
  880. -DriverVer=05/27/2009,1.0
  881. -ClassGUID={00000000-0000-0000-0000-000000000000}
  882. -;Its possible that we should be using:
  883. -;Class=NetService
  884. -;ClassGUID={4d36e974-e325-11ce-bfc1-08002be10318}
  885. -CatalogFile=catalogfile.cat
  886. -Provider=%ProviderName%
  887. -
  888. -[SourceDisksNames]
  889. -1=%Disk%
  890. -
  891. -[SourceDisksFiles]
  892. -nfs41_driver.sys=1,
  893. -nfs41_np.dll=1,
  894. -
  895. -[DestinationDirs]
  896. -DefaultDestDir=10                      ;%windir%
  897. -nfs41_driver.sysfile=12                        ;%windir%\system32\drivers
  898. -nfs41_driver.dllfile=11                        ;%windir%\system32
  899. -
  900. -[DefaultInstall]
  901. -CopyFiles=nfs41_driver.sysfile,nfs41_driver.dllfile
  902. -AddReg=nfs41_np.AddReg
  903. -
  904. -[DefaultInstall.Services]
  905. -AddService=%Nfs41RdrServiceName%,,nfs41rdr.Service
  906. -
  907. -[DefaultUninstall]
  908. -DelFiles=nfs41_driver.sysfile,nfs41_driver.dllfile
  909. -DelReg=nfs41_driver.DelReg
  910. -
  911. -[DefaultUninstall.Services]
  912. -DelService=%Nfs41RdrServiceName%
  913. -
  914. -[nfs41_driver.sysfile]
  915. -nfs41_driver.sys
  916. -
  917. -[nfs41_driver.dllfile]
  918. -nfs41_np.dll
  919. -
  920. -[nfs41rdr.Service]
  921. -DisplayName=%Nfs41RdrServiceName%
  922. -Description=%Nfs41RdrServiceName%
  923. -ServiceType=0x00000002                         ;SERVICE_FILE_SYSTEM_DRIVER
  924. -StartType=0x00000001                           ;SERVICE_SYSTEM_START
  925. -ErrorControl=0x00000001                                ;SERVICE_ERROR_NORMAL
  926. -ServiceBinary=%12%\nfs41_driver.sys
  927. -LoadOrderGroup=Network
  928. -
  929. -[nfs41_np.AddReg]
  930. -HKLM,SYSTEM\CurrentControlSet\Services\nfs41_driver\NetworkProvider,DeviceName,,\Device\nfs41_driver
  931. -HKLM,SYSTEM\CurrentControlSet\Services\nfs41_driver\NetworkProvider,Name,,"NFS41 Network"
  932. -HKLM,SYSTEM\CurrentControlSet\Services\nfs41_driver\NetworkProvider,ProviderPath,,System32\nfs41_np.dll
  933. -
  934. -[nfs41_driver.DelReg]
  935. -HKLM,SYSTEM\CurrentControlSet\Services\nfs41_driver
  936. -
  937. -[Strings]
  938. -Nfs41RdrServiceName="nfs41_driver"
  939. -Disk="Source files"
  940. -ProviderName="NFS41 Provider"
  941. diff --git a/sys/nfs41_driver.c b/sys/nfs41_driver.c
  942. index 187894d..72b045f 100644
  943. --- a/sys/nfs41_driver.c
  944. +++ b/sys/nfs41_driver.c
  945. @@ -486,6 +486,118 @@ void print_debug_header(
  946.          print_irp_flags(0, RxContext->CurrentIrp);
  947.  }
  948.  
  949. +#if (NTDDI_VERSION < NTDDI_WIN7)
  950. +
  951. +NTSTATUS WINAPI RtlUnicodeToUTF8N(CHAR *utf8_dest, ULONG utf8_bytes_max,
  952. +                                  ULONG *utf8_bytes_written,
  953. +                                  const WCHAR *uni_src, ULONG uni_bytes)
  954. +{
  955. +    NTSTATUS status;
  956. +    ULONG i;
  957. +    ULONG written;
  958. +    ULONG ch;
  959. +    BYTE utf8_ch[4];
  960. +    ULONG utf8_ch_len = 0;
  961. +
  962. +    if (!uni_src)
  963. +        return STATUS_INVALID_PARAMETER_4;
  964. +    if (!utf8_bytes_written)
  965. +        return STATUS_INVALID_PARAMETER;
  966. +    if (utf8_dest && uni_bytes % sizeof(WCHAR))
  967. +        return STATUS_INVALID_PARAMETER_5;
  968. +
  969. +    written = 0;
  970. +    status = STATUS_SUCCESS;
  971. +
  972. +    for (i = 0; i < uni_bytes / sizeof(WCHAR); i++)
  973. +    {
  974. +        /* decode UTF-16 into ch */
  975. +        ch = uni_src[i];
  976. +        if (ch >= 0xdc00 && ch <= 0xdfff)
  977. +        {
  978. +            ch = 0xfffd;
  979. +            status = STATUS_SOME_NOT_MAPPED;
  980. +        }
  981. +        else if (ch >= 0xd800 && ch <= 0xdbff)
  982. +        {
  983. +            if (i + 1 < uni_bytes / sizeof(WCHAR))
  984. +            {
  985. +                ch -= 0xd800;
  986. +                ch <<= 10;
  987. +                if (uni_src[i + 1] >= 0xdc00 && uni_src[i + 1] <= 0xdfff)
  988. +                {
  989. +                    ch |= uni_src[i + 1] - 0xdc00;
  990. +                    ch += 0x010000;
  991. +                    i++;
  992. +                }
  993. +                else
  994. +                {
  995. +                    ch = 0xfffd;
  996. +                    status = STATUS_SOME_NOT_MAPPED;
  997. +                }
  998. +            }
  999. +            else
  1000. +            {
  1001. +                ch = 0xfffd;
  1002. +                status = STATUS_SOME_NOT_MAPPED;
  1003. +            }
  1004. +        }
  1005. +
  1006. +        /* encode ch as UTF-8 */
  1007. +        ASSERT(ch <= 0x10ffff);
  1008. +        if (ch < 0x80)
  1009. +        {
  1010. +            utf8_ch[0] = ch & 0x7f;
  1011. +            utf8_ch_len = 1;
  1012. +        }
  1013. +        else if (ch < 0x800)
  1014. +        {
  1015. +            utf8_ch[0] = 0xc0 | (ch >>  6 & 0x1f);
  1016. +            utf8_ch[1] = 0x80 | (ch >>  0 & 0x3f);
  1017. +            utf8_ch_len = 2;
  1018. +        }
  1019. +        else if (ch < 0x10000)
  1020. +        {
  1021. +            utf8_ch[0] = 0xe0 | (ch >> 12 & 0x0f);
  1022. +            utf8_ch[1] = 0x80 | (ch >>  6 & 0x3f);
  1023. +            utf8_ch[2] = 0x80 | (ch >>  0 & 0x3f);
  1024. +            utf8_ch_len = 3;
  1025. +        }
  1026. +        else if (ch < 0x200000)
  1027. +        {
  1028. +            utf8_ch[0] = 0xf0 | (ch >> 18 & 0x07);
  1029. +            utf8_ch[1] = 0x80 | (ch >> 12 & 0x3f);
  1030. +            utf8_ch[2] = 0x80 | (ch >>  6 & 0x3f);
  1031. +            utf8_ch[3] = 0x80 | (ch >>  0 & 0x3f);
  1032. +            utf8_ch_len = 4;
  1033. +        }
  1034. +
  1035. +        if (!utf8_dest)
  1036. +        {
  1037. +            written += utf8_ch_len;
  1038. +            continue;
  1039. +        }
  1040. +
  1041. +        if (utf8_bytes_max >= utf8_ch_len)
  1042. +        {
  1043. +            memcpy(utf8_dest, utf8_ch, utf8_ch_len);
  1044. +            utf8_dest += utf8_ch_len;
  1045. +            utf8_bytes_max -= utf8_ch_len;
  1046. +            written += utf8_ch_len;
  1047. +        }
  1048. +        else
  1049. +        {
  1050. +            utf8_bytes_max = 0;
  1051. +            status = STATUS_BUFFER_TOO_SMALL;
  1052. +        }
  1053. +    }
  1054. +
  1055. +    *utf8_bytes_written = written;
  1056. +    return status;
  1057. +}
  1058. +
  1059. +#endif // NTDDI_VERSION < NTDDI_WIN7
  1060. +
  1061.  /* convert strings from unicode -> ansi during marshalling to
  1062.   * save space in the upcall buffers and avoid extra copies */
  1063.  INLINE ULONG length_as_utf8(

Submit a correction or amendment below (click here to make a fresh posting)
After submitting an amendment, you'll be able to view the differences between the old and new posts easily.

Syntax highlighting:

To highlight particular lines, prefix each line with {%HIGHLIGHT}




All content is user-submitted.
The administrators of this site (kpaste.net) are not responsible for their content.
Abuse reports should be emailed to us at