DBGFLog.cpp revision 8e8406d8c937d53c0f1b3667312f743617d8597a
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * DBGF - Debugger Facility, Log Manager.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * Copyright (C) 2006-2007 Sun Microsystems, Inc.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * This file is part of VirtualBox Open Source Edition (OSE), as
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * available from http://www.virtualbox.org. This file is free software;
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * you can redistribute it and/or modify it under the terms of the GNU
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * General Public License (GPL) as published by the Free Software
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync * Foundation, in version 2 as it comes in the "COPYING" file of the
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync * VirtualBox OSE distribution. VirtualBox OSE is distributed in the
a16eb14ad7a4b5ef91ddc22d3e8e92d930f736fcvboxsync * hope that it will be useful, but WITHOUT ANY WARRANTY of any kind.
1c94c0a63ba68be1a7b2c640e70d7a06464e4fcavboxsync * Please contact Sun Microsystems, Inc., 4150 Network Circle, Santa
1c94c0a63ba68be1a7b2c640e70d7a06464e4fcavboxsync * Clara, CA 95054 USA or visit http://www.sun.com if you need
1c94c0a63ba68be1a7b2c640e70d7a06464e4fcavboxsync * additional information or have any questions.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync/*******************************************************************************
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync* Header Files *
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync*******************************************************************************/
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync/*******************************************************************************
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync* Internal Functions *
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync*******************************************************************************/
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsyncstatic DECLCALLBACK(int) dbgfR3LogModifyGroups(PVM pVM, const char *pszGroupSettings);
914d33aebb63d8c288dfd1b7e74f8e2acf3eaa66vboxsyncstatic DECLCALLBACK(int) dbgfR3LogModifyFlags(PVM pVM, const char *pszFlagSettings);
914d33aebb63d8c288dfd1b7e74f8e2acf3eaa66vboxsyncstatic DECLCALLBACK(int) dbgfR3LogModifyDestinations(PVM pVM, const char *pszDestSettings);
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * Changes the logger group settings.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * @returns VBox status code.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * @param pVM The VM handle.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * @param pszGroupSettings The group settings string. (VBOX_LOG)
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsyncVMMR3DECL(int) DBGFR3LogModifyGroups(PVM pVM, const char *pszGroupSettings)
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync AssertReturn(VALID_PTR(pVM), VERR_INVALID_POINTER);
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync AssertReturn(VALID_PTR(pszGroupSettings), VERR_INVALID_POINTER);
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync int rc = VMR3ReqCall(pVM, VMCPUID_ANY, &pReq, RT_INDEFINITE_WAIT, (PFNRT)dbgfR3LogModifyGroups, 2, pVM, pszGroupSettings);
914d33aebb63d8c288dfd1b7e74f8e2acf3eaa66vboxsync * EMT worker for DBGFR3LogModifyGroups.
914d33aebb63d8c288dfd1b7e74f8e2acf3eaa66vboxsync * @returns VBox status code.
914d33aebb63d8c288dfd1b7e74f8e2acf3eaa66vboxsync * @param pVM The VM handle.
914d33aebb63d8c288dfd1b7e74f8e2acf3eaa66vboxsync * @param pszGroupSettings The group settings string. (VBOX_LOG)
914d33aebb63d8c288dfd1b7e74f8e2acf3eaa66vboxsyncstatic DECLCALLBACK(int) dbgfR3LogModifyGroups(PVM pVM, const char *pszGroupSettings)
fe96bc0e43d9c137304462ef8c2d79cbff22446fvboxsync int rc = RTLogGroupSettings(NULL, pszGroupSettings);
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * Changes the logger flag settings.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * @returns VBox status code.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * @param pVM The VM handle.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * @param pszFlagSettings The group settings string. (VBOX_LOG_FLAGS)
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsyncVMMR3DECL(int) DBGFR3LogModifyFlags(PVM pVM, const char *pszFlagSettings)
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync AssertReturn(VALID_PTR(pVM), VERR_INVALID_POINTER);
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync AssertReturn(VALID_PTR(pszFlagSettings), VERR_INVALID_POINTER);
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync int rc = VMR3ReqCall(pVM, VMCPUID_ANY, &pReq, RT_INDEFINITE_WAIT, (PFNRT)dbgfR3LogModifyFlags, 2, pVM, pszFlagSettings);
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * EMT worker for DBGFR3LogModifyFlags.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * @returns VBox status code.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * @param pVM The VM handle.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * @param pszFlagSettings The group settings string. (VBOX_LOG_FLAGS)
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsyncstatic DECLCALLBACK(int) dbgfR3LogModifyFlags(PVM pVM, const char *pszFlagSettings)
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * Changes the logger destination settings.
914d33aebb63d8c288dfd1b7e74f8e2acf3eaa66vboxsync * @returns VBox status code.
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsync * @param pVM The VM handle.
548ca31b6b47c36bacce49bed3339cb8075b9681vboxsync * @param pszDestSettings The destination settings string. (VBOX_LOG_DEST)
548ca31b6b47c36bacce49bed3339cb8075b9681vboxsyncVMMR3DECL(int) DBGFR3LogModifyDestinations(PVM pVM, const char *pszDestSettings)
914d33aebb63d8c288dfd1b7e74f8e2acf3eaa66vboxsync AssertReturn(VALID_PTR(pVM), VERR_INVALID_POINTER);
548ca31b6b47c36bacce49bed3339cb8075b9681vboxsync AssertReturn(VALID_PTR(pszDestSettings), VERR_INVALID_POINTER);
548ca31b6b47c36bacce49bed3339cb8075b9681vboxsync int rc = VMR3ReqCall(pVM, VMCPUID_ANY, &pReq, RT_INDEFINITE_WAIT, (PFNRT)dbgfR3LogModifyDestinations, 2, pVM, pszDestSettings);
e3f5c51715cbf77ae2d2e9d05bafd00d69b1bec9vboxsync * EMT worker for DBGFR3LogModifyFlags.
aa32d4906f2f685992091893d5abdf27a2352a85vboxsync * @returns VBox status code.
aa32d4906f2f685992091893d5abdf27a2352a85vboxsync * @param pVM The VM handle.
914d33aebb63d8c288dfd1b7e74f8e2acf3eaa66vboxsync * @param pszDestSettings The destination settings string. (VBOX_LOG_DEST)
5b1d6bab9f4cf5dacf1883e7c4a40c84349f597fvboxsyncstatic DECLCALLBACK(int) dbgfR3LogModifyDestinations(PVM pVM, const char *pszDestSettings)