VirtualBox

Changeset 41545 in vbox for trunk/src/VBox/VMM


Ignore:
Timestamp:
Jun 1, 2012 2:32:36 PM (13 years ago)
Author:
vboxsync
Message:

DBGFReg: Added DBGFR3RegNmValidate.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/VMM/VMMR3/DBGFReg.cpp

    r40076 r41545  
    12541254    DBGF_REG_DB_UNLOCK_READ(pVM);
    12551255    return pLookupRec;
     1256}
     1257
     1258
     1259/**
     1260 * Validates the register name.
     1261 *
     1262 * @returns VBox status code.
     1263 * @retval  VINF_SUCCESS if the register was found.
     1264 * @retval  VERR_DBGF_REGISTER_NOT_FOUND if not found.
     1265 *
     1266 * @param   pVM                 The VM handle.
     1267 * @param   idDefCpu            The default CPU.
     1268 * @param   pszReg              The registe name.
     1269 */
     1270VMMR3DECL(int) DBGFR3RegNmValidate(PVM pVM, VMCPUID idDefCpu, const char *pszReg)
     1271{
     1272    /*
     1273     * Validate input.
     1274     */
     1275    VM_ASSERT_VALID_EXT_RETURN(pVM, VERR_INVALID_VM_HANDLE);
     1276    AssertReturn((idDefCpu & ~DBGFREG_HYPER_VMCPUID) < pVM->cCpus || idDefCpu == VMCPUID_ANY, VERR_INVALID_CPU_ID);
     1277    AssertPtrReturn(pszReg, VERR_INVALID_POINTER);
     1278
     1279    /*
     1280     * Resolve the register.
     1281     */
     1282    bool const fGuestRegs = !(idDefCpu & DBGFREG_HYPER_VMCPUID) && idDefCpu != VMCPUID_ANY;
     1283    PCDBGFREGLOOKUP pLookupRec = dbgfR3RegResolve(pVM, idDefCpu, pszReg, fGuestRegs);
     1284    if (!pLookupRec)
     1285        return VERR_DBGF_REGISTER_NOT_FOUND;
     1286    return VINF_SUCCESS;
    12561287}
    12571288
Note: See TracChangeset for help on using the changeset viewer.

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