VirtualBox

source: vbox/trunk/src/VBox/NetworkServices/IntNetSwitch/SrvIntNetWrapper.cpp@ 97071

Last change on this file since 97071 was 97059, checked in by vboxsync, 2 years ago

Devices/DrvIntNet,NetworkServices,Installer/darwin: First rough attempt at making the internal networking option work on macOS after all KEXTs got removed, ​bugref:10297 [scm and svn property fixes]

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 2.8 KB
Line 
1/* $Id: SrvIntNetWrapper.cpp 97059 2022-10-08 07:05:11Z vboxsync $ */
2/** @file
3 * Internal networking - Wrapper for the R0 network service.
4 *
5 * This is a bit hackish as we're mixing context here, however it is
6 * very useful when making changes to the internal networking service.
7 */
8
9/*
10 * Copyright (C) 2006-2022 Oracle and/or its affiliates.
11 *
12 * This file is part of VirtualBox base platform packages, as
13 * available from https://www.virtualbox.org.
14 *
15 * This program is free software; you can redistribute it and/or
16 * modify it under the terms of the GNU General Public License
17 * as published by the Free Software Foundation, in version 3 of the
18 * License.
19 *
20 * This program is distributed in the hope that it will be useful, but
21 * WITHOUT ANY WARRANTY; without even the implied warranty of
22 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
23 * General Public License for more details.
24 *
25 * You should have received a copy of the GNU General Public License
26 * along with this program; if not, see <https://www.gnu.org/licenses>.
27 *
28 * SPDX-License-Identifier: GPL-3.0-only
29 */
30
31
32/*********************************************************************************************************************************
33* Header Files *
34*********************************************************************************************************************************/
35#define IN_INTNET_TESTCASE
36#define IN_INTNET_R3
37
38#include "IntNetSwitchInternal.h"
39
40
41#include <VBox/types.h>
42#include <VBox/intnet.h>
43#include <iprt/asm.h>
44#include <iprt/mp.h>
45
46
47/*********************************************************************************************************************************
48* Structures and Typedefs *
49*********************************************************************************************************************************/
50
51
52/*********************************************************************************************************************************
53* Global Variables *
54*********************************************************************************************************************************/
55
56/* Fake non-existing ring-0 APIs. */
57#define RTThreadIsInInterrupt(hThread) false
58#define RTThreadPreemptIsEnabled(hThread) true
59#define RTMpCpuId() 0
60
61/* No CLI/POPF, please. */
62#include <iprt/spinlock.h>
63#undef RTSPINLOCK_FLAGS_INTERRUPT_SAFE
64#define RTSPINLOCK_FLAGS_INTERRUPT_SAFE RTSPINLOCK_FLAGS_INTERRUPT_UNSAFE
65
66
67/* ugly but necessary for making R0 code compilable for R3. */
68#undef LOG_GROUP
69#include "../../Devices/Network/SrvIntNetR0.cpp"
Note: See TracBrowser for help on using the repository browser.

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