VirtualBox

Changeset 1799 in vbox


Ignore:
Timestamp:
Mar 29, 2007 1:53:50 PM (18 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
19979
Message:

Refuse to patch a handler whose idt cs selector isn't wide open.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/PATM/CSAM.cpp

    r1635 r1799  
    22432243            PCSAMPAGE pPage = NULL;
    22442244            X86EFLAGS fakeflags;
     2245            SELMSELINFO selInfo;
    22452246
    22462247            /* we're not in v86 mode here */
     
    22492250            pHandler = (pGuestIdte->Gen.u16OffsetHigh << 16) | pGuestIdte->Gen.u16OffsetLow;
    22502251            pHandler = SELMToFlat(pVM, fakeflags, pGuestIdte->Gen.u16SegSel, 0, pHandler);
     2252
     2253            rc = SELMR3GetSelectorInfo(pVM, pGuestIdte->Gen.u16SegSel, &selInfo);
     2254            if (    VBOX_FAILURE(rc)
     2255                ||  selInfo.GCPtrBase != 0
     2256                ||  selInfo.cbLimit != ~0U
     2257               )
     2258            {
     2259                /* Refuse to patch a handler whose idt cs selector isn't wide open. */
     2260                Log(("CSAMCheckGates: check gate %d failed due to rc %Vrc GCPtrBase=%VGv limit=%x\n", rc, selInfo.GCPtrBase, selInfo.cbLimit));
     2261                continue;
     2262            }
     2263           
    22512264
    22522265            if (pGuestIdte->Gen.u5Type2 == VBOX_IDTE_TYPE2_TRAP_32)
Note: See TracChangeset for help on using the changeset viewer.

© 2025 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette