<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    Hello Ribhi,<br>
    <br>
    <div class="moz-cite-prefix">On 2020-06-25 06:06, Ribhi Kamal wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:CAFUn4oxi-hsRSwMnCCeZ-qL7EruchntM7eEu3uc2oUjY8fpyOw@mail.gmail.com">
      <meta http-equiv="content-type" content="text/html; charset=UTF-8">
      <div dir="ltr">
        <div dir="ltr">Hello VirtualBox,
          <div>TL;DR; I noticed that there are attempts to get
            VirtualBox to compile using VS2017. I was hoping that you
            would be so kind as to share with me your plans (if any) to
            upgrade the tools for compiling VirtualBox for windows hosts
            and which WDK, SDK, VCC are you planning to upgrade to. I'm
            attempting to upgrade but to the latest of everything.</div>
        </div>
      </div>
    </blockquote>
    <br>
    No point talking about this ongoing project until it is completed.
    The result isn't clearly defined yet, and what's even less clear is
    when this will hit the first release. It's not terribly likely (but
    also not impossible) that it will be ever available for VirtualBox
    6.1. It's the nature of "trunk" that there are  unfinished projects
    where we cannot make any commitments.<br>
    <br>
    <blockquote type="cite"
cite="mid:CAFUn4oxi-hsRSwMnCCeZ-qL7EruchntM7eEu3uc2oUjY8fpyOw@mail.gmail.com">
      <div dir="ltr">
        <div dir="ltr">
          <div>The long version.</div>
          <div>About ~three month ago, a client reached out and
            requested that virtualbox drivers have complete secure boot
            support on Windows 10. This meant going through HLK since
            attestation did not provide complete support. Long story
            short, I agreed to give it a shot.</div>
        </div>
      </div>
    </blockquote>
    <br>
    Can you please describe what's incomplete about attestation signing?
    According to the Microsoft documentation, it is the minimum
    requirement for recent Windows 10 to accept the drivers. No word
    anywhere that this is in any way 2nd class, and no one other than
    you have reported problems with the drivers we're shipping.<br>
    <br>
    <blockquote type="cite"
cite="mid:CAFUn4oxi-hsRSwMnCCeZ-qL7EruchntM7eEu3uc2oUjY8fpyOw@mail.gmail.com">
      <div dir="ltr">
        <div dir="ltr">
          <div>After setting up the HLK environment, I used an already
            compiled OSE version of virtualbox that I had on hand to do
            some basic testing to see what kind of tests are failing.
            The results were promising considering that I was using V4.2
            that was compiled eons ago using vs2010.  Some failing HLK
            tests required silly things like having a four digit version
            for the driver (aka 6.1.8.0 vs 6.1.8) while others seemed to
            be way more involved. But the following was obvious:</div>
          <div>1- In order to pass HLK, a good reliable way was needed
            to bridge a hostonly adapter to a physical nic. The version
            that I was using didn't even have support for bridging on
            windows 10. My attempts to create a tunnel between two
            virtual machines failed as packets would suddenly start
            dropping. I believe this was an issue with vbox net service.
            So an upgrade to virtualbox was needed to see if using
            virtualbox bridging will work.</div>
        </div>
      </div>
    </blockquote>
    <br>
    Another 'problem area' where you seem to be telling just the
    uninteresting part of the story. I doubt that there is really a hard
    requirement that a fully virtual adapter needs to somehow bridge to
    a physical NIC...such virtual adapters are quite common (VPNs, ...)
    and your test approach seems unusual.<br>
    <br>
    <blockquote type="cite"
cite="mid:CAFUn4oxi-hsRSwMnCCeZ-qL7EruchntM7eEu3uc2oUjY8fpyOw@mail.gmail.com">
      <div dir="ltr">
        <div dir="ltr">
          <div>2- The drivers must be compiled to target windows 10.
            Though, from experience, I know that you can target windows
            7 and above and still pass the HLK and have a single driver
            that supports all.</div>
          <div>3- The drivers must be compiled using the latest WDK.</div>
        </div>
      </div>
    </blockquote>
    <br>
    Can't believe that Microsoft is really so picky, because that would
    make Win10 drivers incompatible with older OS versions. Causing a
    big mess with installing the right driver for older Windows versions
    when the code is exactly the same.<br>
    <br>
    <blockquote type="cite"
cite="mid:CAFUn4oxi-hsRSwMnCCeZ-qL7EruchntM7eEu3uc2oUjY8fpyOw@mail.gmail.com">
      <div dir="ltr">
        <div dir="ltr">
          <div>I set out to work on the upgrade process with the hopes
            that I could get it to work and either share with you what
            needs to be done or submit patches (if you are interested).
            If and when I pass the HLK tests, I would share with you my
            setup as well.</div>
          <div><br>
          </div>
          <div>All the prerequisites compiled fine without any headache
            for both 32bit and 64bit using vs2019. The instructions for
            building them using vs2010 needed small adjustments to make
            everything work.<br>
          </div>
          <div>Next was virtualbox. I pulled down the latest virtualbox
            tgz tarball at the time (6.1.8) and started upgrading the
            tool sets.Then I started by upgrading kbuild by adding
            an SDK, VCC and WDK kmk files and updated configure.vbs to
            correctly detect the tool sets and configure kbuild. I was
            starting to have some success when I noticed that kbuild
            already has updated VCC and SDK (but no WDK). So I pulled
            these down and replaced the work that I did with kbuild's
            and patched the files with any required updates. Then I
            noticed that VirtualBox SVN source tree has already been
            updated to the latest kbuild and new options were being
            added to support VS2017 (I think). But I did not see any
            mention of the WDK, only the Windows 8. Whatever was going
            on, it seemed like work in progress. So I started to worry
            that everything that I'm doing is potentially a duplicated
            effort. That's why I'm interested in knowing your upgrade
            roadmap if you have one.</div>
        </div>
      </div>
    </blockquote>
    <br>
    The kBuild used for 6.1.x has none of the updates you mentioned. So
    you're creating a chimera between kBuild for VirtualBox trunk and
    the code of VirtualBox 6.1. Not a supported combination ever, and
    possibly causing all sorts of issues.<br>
    <br>
    <blockquote type="cite"
cite="mid:CAFUn4oxi-hsRSwMnCCeZ-qL7EruchntM7eEu3uc2oUjY8fpyOw@mail.gmail.com">
      <div dir="ltr">
        <div dir="ltr">
          <div>Currently, I feel like I'm very close to getting all the
            user mode binaries to work. They currently compile but there
            are some linking issues that I'm trying to address. The next
            obstacle is going to be the removal of selfsign since it no
            longer exists in the WDK.</div>
        </div>
      </div>
    </blockquote>
    <br>
    Those "some linking issues" could be anything, and since it's very
    unlikely that 6.1 will ever be officially built with anything except
    VS2010 there isn't all that much motivation on our side to spend
    time on this.<br>
    <br>
    <blockquote type="cite"
cite="mid:CAFUn4oxi-hsRSwMnCCeZ-qL7EruchntM7eEu3uc2oUjY8fpyOw@mail.gmail.com">
      <div dir="ltr">
        <div dir="ltr">
          <div>p.s. My main focus was to get the host drivers working
            first and then focus on the guest additions. I didn't know
            there are guest additions that go as far back as Windows NT!</div>
        </div>
      </div>
    </blockquote>
    <br>
    Everyone underestimates the guest additions :) On the host there is
    a much smaller range of OSes which is relevant. The guest additions
    ideally work with absolutely everything which Microsoft ever
    released. After all one purpose of VirtualBox is to run old OSes in
    a safe manner.<br>
    <br>
    Klaus<br>
    <br>
    <blockquote type="cite"
cite="mid:CAFUn4oxi-hsRSwMnCCeZ-qL7EruchntM7eEu3uc2oUjY8fpyOw@mail.gmail.com">
      <div dir="ltr">
        <div dir="ltr">
          <div><br>
          </div>
          <div>Thanks and stay safe,</div>
          <div>-- <br>
            <div dir="ltr" class="gmail_signature">
              <div dir="ltr">
                <div class="moz-signature">Ribhi<font size="2"
                    face="Verdana, Arial, Helvetica, sans-serif"
                    color="#666666"><!-- This signature was generated by the MyDesktop Oracle Business Signature utility version 6.0 -->
                  </font></div>
              </div>
            </div>
          </div>
        </div>
      </div>
    </blockquote>
  </body>
</html>