Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
码匠许师傅
rt-thread
提交
e37abb2b
R
rt-thread
项目概览
码匠许师傅
/
rt-thread
与 Fork 源项目一致
Fork自
RT-Thread / rt-thread
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rt-thread
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
e37abb2b
编写于
3月 20, 2021
作者:
mysterywolf
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[simulator] 手动-自动格式化整理
上级
06118227
变更
49
展开全部
隐藏空白更改
内联
并排
Showing
49 changed file
with
2089 addition
and
2084 deletion
+2089
-2084
bsp/simulator/SDL2-2.0.7/include/SDL_config.h
bsp/simulator/SDL2-2.0.7/include/SDL_config.h
+1
-1
bsp/simulator/SDL2-2.0.7/include/SDL_config_android.h
bsp/simulator/SDL2-2.0.7/include/SDL_config_android.h
+1
-1
bsp/simulator/SDL2-2.0.7/include/SDL_config_windows.h
bsp/simulator/SDL2-2.0.7/include/SDL_config_windows.h
+1
-1
bsp/simulator/SDL2-2.0.7/include/SDL_config_winrt.h
bsp/simulator/SDL2-2.0.7/include/SDL_config_winrt.h
+13
-13
bsp/simulator/SDL2-2.0.7/include/SDL_gamecontroller.h
bsp/simulator/SDL2-2.0.7/include/SDL_gamecontroller.h
+1
-1
bsp/simulator/SDL2-2.0.7/include/SDL_hints.h
bsp/simulator/SDL2-2.0.7/include/SDL_hints.h
+10
-10
bsp/simulator/SDL2-2.0.7/include/SDL_main.h
bsp/simulator/SDL2-2.0.7/include/SDL_main.h
+2
-2
bsp/simulator/SDL2-2.0.7/include/SDL_opengl.h
bsp/simulator/SDL2-2.0.7/include/SDL_opengl.h
+833
-833
bsp/simulator/SDL2-2.0.7/include/SDL_opengles2_gl2ext.h
bsp/simulator/SDL2-2.0.7/include/SDL_opengles2_gl2ext.h
+1
-1
bsp/simulator/SDL2-2.0.7/include/SDL_opengles2_khrplatform.h
bsp/simulator/SDL2-2.0.7/include/SDL_opengles2_khrplatform.h
+1
-1
bsp/simulator/SDL2-2.0.7/include/SDL_system.h
bsp/simulator/SDL2-2.0.7/include/SDL_system.h
+1
-1
bsp/simulator/SDL2-2.0.7/include/SDL_test_memory.h
bsp/simulator/SDL2-2.0.7/include/SDL_test_memory.h
+1
-1
bsp/simulator/SDL2-2.0.7/include/SDL_thread.h
bsp/simulator/SDL2-2.0.7/include/SDL_thread.h
+2
-2
bsp/simulator/SDL2-2.0.7/include/SDL_vulkan.h
bsp/simulator/SDL2-2.0.7/include/SDL_vulkan.h
+6
-6
bsp/simulator/applications/application.c
bsp/simulator/applications/application.c
+3
-18
bsp/simulator/applications/mnt.c
bsp/simulator/applications/mnt.c
+5
-5
bsp/simulator/applications/platform.c
bsp/simulator/applications/platform.c
+8
-0
bsp/simulator/applications/startup.c
bsp/simulator/applications/startup.c
+2
-17
bsp/simulator/drivers/board.c
bsp/simulator/drivers/board.c
+2
-7
bsp/simulator/drivers/board.h
bsp/simulator/drivers/board.h
+2
-7
bsp/simulator/drivers/dfs_win32.c
bsp/simulator/drivers/dfs_win32.c
+2
-6
bsp/simulator/drivers/module_win32.c
bsp/simulator/drivers/module_win32.c
+84
-88
bsp/simulator/drivers/nanddrv_file.c
bsp/simulator/drivers/nanddrv_file.c
+8
-0
bsp/simulator/drivers/sd_sim.c
bsp/simulator/drivers/sd_sim.c
+8
-0
bsp/simulator/drivers/sdl_fb.c
bsp/simulator/drivers/sdl_fb.c
+11
-5
bsp/simulator/drivers/sst25vfxx_mtd.h
bsp/simulator/drivers/sst25vfxx_mtd.h
+2
-6
bsp/simulator/drivers/sst25vfxx_mtd_sim.c
bsp/simulator/drivers/sst25vfxx_mtd_sim.c
+3
-7
bsp/simulator/drivers/tap_netif.c
bsp/simulator/drivers/tap_netif.c
+114
-114
bsp/simulator/drivers/uart_console.c
bsp/simulator/drivers/uart_console.c
+16
-8
bsp/simulator/drivers/uart_console.h
bsp/simulator/drivers/uart_console.h
+9
-0
bsp/simulator/dummy.c
bsp/simulator/dummy.c
+10
-1
bsp/simulator/pcap/Include/Packet32.h
bsp/simulator/pcap/Include/Packet32.h
+118
-118
bsp/simulator/pcap/Include/Win32-Extensions.h
bsp/simulator/pcap/Include/Win32-Extensions.h
+24
-24
bsp/simulator/pcap/Include/bittypes.h
bsp/simulator/pcap/Include/bittypes.h
+11
-11
bsp/simulator/pcap/Include/ip6_misc.h
bsp/simulator/pcap/Include/ip6_misc.h
+63
-63
bsp/simulator/pcap/Include/pcap-bpf.h
bsp/simulator/pcap/Include/pcap-bpf.h
+2
-2
bsp/simulator/pcap/Include/pcap-namedb.h
bsp/simulator/pcap/Include/pcap-namedb.h
+3
-3
bsp/simulator/pcap/Include/pcap-stdinc.h
bsp/simulator/pcap/Include/pcap-stdinc.h
+3
-3
bsp/simulator/pcap/Include/pcap.h
bsp/simulator/pcap/Include/pcap.h
+3
-3
bsp/simulator/pcap/Include/pcap/bluetooth.h
bsp/simulator/pcap/Include/pcap/bluetooth.h
+4
-4
bsp/simulator/pcap/Include/pcap/bpf.h
bsp/simulator/pcap/Include/pcap/bpf.h
+185
-185
bsp/simulator/pcap/Include/pcap/namedb.h
bsp/simulator/pcap/Include/pcap/namedb.h
+13
-13
bsp/simulator/pcap/Include/pcap/pcap.h
bsp/simulator/pcap/Include/pcap/pcap.h
+134
-134
bsp/simulator/pcap/Include/pcap/sll.h
bsp/simulator/pcap/Include/pcap/sll.h
+34
-34
bsp/simulator/pcap/Include/pcap/usb.h
bsp/simulator/pcap/Include/pcap/usb.h
+23
-23
bsp/simulator/pcap/Include/pcap/vlan.h
bsp/simulator/pcap/Include/pcap/vlan.h
+4
-4
bsp/simulator/pcap/Include/remote-ext.h
bsp/simulator/pcap/Include/remote-ext.h
+226
-226
bsp/simulator/pcap/pcap_netif.c
bsp/simulator/pcap/pcap_netif.c
+66
-70
bsp/simulator/rtconfig_project.h
bsp/simulator/rtconfig_project.h
+10
-1
未找到文件。
bsp/simulator/SDL2-2.0.7/include/SDL_config.h
浏览文件 @
e37abb2b
...
...
@@ -194,7 +194,7 @@ typedef unsigned int uintptr_t;
#define SDL_VIDEO_RENDER_D3D 1
#endif
#ifndef SDL_VIDEO_RENDER_D3D11
#define SDL_VIDEO_RENDER_D3D11
0
#define SDL_VIDEO_RENDER_D3D11
0
#endif
/* Enable OpenGL support */
...
...
bsp/simulator/SDL2-2.0.7/include/SDL_config_android.h
浏览文件 @
e37abb2b
...
...
@@ -108,7 +108,7 @@
#define HAVE_SETJMP 1
#define HAVE_NANOSLEEP 1
#define HAVE_SYSCONF 1
#define HAVE_CLOCK_GETTIME
1
#define HAVE_CLOCK_GETTIME
1
#define SIZEOF_VOIDP 4
...
...
bsp/simulator/SDL2-2.0.7/include/SDL_config_windows.h
浏览文件 @
e37abb2b
...
...
@@ -185,7 +185,7 @@ typedef unsigned int uintptr_t;
#define SDL_VIDEO_RENDER_D3D 1
#endif
#ifndef SDL_VIDEO_RENDER_D3D11
#define SDL_VIDEO_RENDER_D3D11
0
#define SDL_VIDEO_RENDER_D3D11
0
#endif
/* Enable OpenGL support */
...
...
bsp/simulator/SDL2-2.0.7/include/SDL_config_winrt.h
浏览文件 @
e37abb2b
...
...
@@ -44,7 +44,7 @@
#if !defined(_STDINT_H_) && (!defined(HAVE_STDINT_H) || !_HAVE_STDINT_H)
#if defined(__GNUC__) || defined(__DMC__) || defined(__WATCOMC__)
#define HAVE_STDINT_H
1
#define HAVE_STDINT_H
1
#elif defined(_MSC_VER)
typedef
signed
__int8
int8_t
;
typedef
unsigned
__int8
uint8_t
;
...
...
@@ -121,13 +121,13 @@ typedef unsigned int uintptr_t;
#define HAVE_STRLEN 1
#define HAVE__STRREV 1
#define HAVE__STRUPR 1
//#define HAVE__STRLWR 1
// TODO, WinRT: consider using _strlwr_s instead
//#define HAVE__STRLWR 1
// TODO, WinRT: consider using _strlwr_s instead
#define HAVE_STRCHR 1
#define HAVE_STRRCHR 1
#define HAVE_STRSTR 1
//#define HAVE_ITOA 1 // TODO, WinRT: consider using _itoa_s instead
//#define HAVE__LTOA 1
// TODO, WinRT: consider using _ltoa_s instead
//#define HAVE__ULTOA 1
// TODO, WinRT: consider using _ultoa_s instead
//#define HAVE__LTOA 1
// TODO, WinRT: consider using _ltoa_s instead
//#define HAVE__ULTOA 1
// TODO, WinRT: consider using _ultoa_s instead
#define HAVE_STRTOL 1
#define HAVE_STRTOUL 1
//#define HAVE_STRTOLL 1
...
...
@@ -139,7 +139,7 @@ typedef unsigned int uintptr_t;
#define HAVE__STRICMP 1
#define HAVE__STRNICMP 1
#define HAVE_VSNPRINTF 1
//#define HAVE_SSCANF 1
// TODO, WinRT: consider using sscanf_s instead
//#define HAVE_SSCANF 1
// TODO, WinRT: consider using sscanf_s instead
#define HAVE_M_PI 1
#define HAVE_ATAN 1
#define HAVE_ATAN2 1
...
...
@@ -162,21 +162,21 @@ typedef unsigned int uintptr_t;
#define HAVE__FSEEKI64 1
/* Enable various audio drivers */
#define SDL_AUDIO_DRIVER_XAUDIO2
1
#define SDL_AUDIO_DRIVER_DISK
1
#define SDL_AUDIO_DRIVER_DUMMY
1
#define SDL_AUDIO_DRIVER_XAUDIO2
1
#define SDL_AUDIO_DRIVER_DISK
1
#define SDL_AUDIO_DRIVER_DUMMY
1
/* Enable various input drivers */
#if WINAPI_FAMILY == WINAPI_FAMILY_PHONE_APP
#define SDL_JOYSTICK_DISABLED 1
#define SDL_HAPTIC_DISABLED
1
#define SDL_HAPTIC_DISABLED
1
#else
#define SDL_JOYSTICK_XINPUT 1
#define SDL_HAPTIC_XINPUT 1
#endif
/* Enable various shared object loading systems */
#define SDL_LOADSO_WINDOWS
1
#define SDL_LOADSO_WINDOWS
1
/* Enable various threading systems */
#if (NTDDI_VERSION >= NTDDI_WINBLUE)
...
...
@@ -187,10 +187,10 @@ typedef unsigned int uintptr_t;
#endif
/* Enable various timer systems */
#define SDL_TIMER_WINDOWS
1
#define SDL_TIMER_WINDOWS
1
/* Enable various video drivers */
#define SDL_VIDEO_DRIVER_WINRT
1
#define SDL_VIDEO_DRIVER_WINRT
1
#define SDL_VIDEO_DRIVER_DUMMY 1
/* Enable OpenGL ES 2.0 (via a modified ANGLE library) */
...
...
@@ -209,7 +209,7 @@ typedef unsigned int uintptr_t;
/* Enable assembly routines (Win64 doesn't have inline asm) */
#ifndef _WIN64
#define SDL_ASSEMBLY_ROUTINES
1
#define SDL_ASSEMBLY_ROUTINES
1
#endif
#endif
/* SDL_config_winrt_h_ */
bsp/simulator/SDL2-2.0.7/include/SDL_gamecontroller.h
浏览文件 @
e37abb2b
...
...
@@ -116,7 +116,7 @@ typedef struct SDL_GameControllerButtonBind
* A community sourced database of controllers is available at https://raw.github.com/gabomdq/SDL_GameControllerDB/master/gamecontrollerdb.txt
*
* If \c freerw is non-zero, the stream will be closed after being read.
*
*
* \return number of mappings added, -1 on error
*/
extern
DECLSPEC
int
SDLCALL
SDL_GameControllerAddMappingsFromRW
(
SDL_RWops
*
rw
,
int
freerw
);
...
...
bsp/simulator/SDL2-2.0.7/include/SDL_hints.h
浏览文件 @
e37abb2b
...
...
@@ -153,7 +153,7 @@ extern "C" {
#define SDL_HINT_RENDER_VSYNC "SDL_RENDER_VSYNC"
/**
* \brief A variable controlling whether the screensaver is enabled.
* \brief A variable controlling whether the screensaver is enabled.
*
* This variable can be set to the following values:
* "0" - Disable screensaver
...
...
@@ -211,7 +211,7 @@ extern "C" {
#define SDL_HINT_VIDEO_X11_NET_WM_PING "SDL_VIDEO_X11_NET_WM_PING"
/**
* \brief A variable controlling whether the window frame and title bar are interactive when the cursor is hidden
* \brief A variable controlling whether the window frame and title bar are interactive when the cursor is hidden
*
* This variable can be set to the following values:
* "0" - The window frame is not interactive when the cursor is hidden (no move, resize, etc)
...
...
@@ -222,13 +222,13 @@ extern "C" {
#define SDL_HINT_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN "SDL_WINDOW_FRAME_USABLE_WHILE_CURSOR_HIDDEN"
/**
* \brief A variable to specify custom icon resource id from RC file on Windows platform
* \brief A variable to specify custom icon resource id from RC file on Windows platform
*/
#define SDL_HINT_WINDOWS_INTRESOURCE_ICON "SDL_WINDOWS_INTRESOURCE_ICON"
#define SDL_HINT_WINDOWS_INTRESOURCE_ICON_SMALL "SDL_WINDOWS_INTRESOURCE_ICON_SMALL"
/**
* \brief A variable controlling whether the windows message loop is processed by SDL
* \brief A variable controlling whether the windows message loop is processed by SDL
*
* This variable can be set to the following values:
* "0" - The window message loop is not run
...
...
@@ -528,9 +528,9 @@ extern "C" {
/**
* \brief A variable that is the address of another SDL_Window* (as a hex string formatted with "%p").
*
*
* If this hint is set before SDL_CreateWindowFrom() and the SDL_Window* it is set to has
* SDL_WINDOW_OPENGL set (and running on WGL only, currently), then two things will occur on the newly
* SDL_WINDOW_OPENGL set (and running on WGL only, currently), then two things will occur on the newly
* created SDL_Window:
*
* 1. Its pixel format will be set to the same pixel format as this SDL_Window. This is
...
...
@@ -682,7 +682,7 @@ extern "C" {
* By default this hint is not set and the APK expansion files are not searched.
*/
#define SDL_HINT_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION "SDL_ANDROID_APK_EXPANSION_MAIN_FILE_VERSION"
/**
* \brief Android APK expansion patch file version. Should be a string number like "1", "2" etc.
*
...
...
@@ -700,9 +700,9 @@ extern "C" {
*
* The variable can be set to the following values:
* "0" - SDL_TEXTEDITING events are sent, and it is the application's
* responsibility to render the text from these events and
* responsibility to render the text from these events and
* differentiate it somehow from committed text. (default)
* "1" - If supported by the IME then SDL_TEXTEDITING events are not sent,
* "1" - If supported by the IME then SDL_TEXTEDITING events are not sent,
* and text that is being composed will be rendered in its own UI.
*/
#define SDL_HINT_IME_INTERNAL_EDITING "SDL_IME_INTERNAL_EDITING"
...
...
@@ -752,7 +752,7 @@ extern "C" {
* "0" - SDL will generate a window-close event when it sees Alt+F4.
* "1" - SDL will only do normal key handling for Alt+F4.
*/
#define SDL_HINT_WINDOWS_NO_CLOSE_ON_ALT_F4
"SDL_WINDOWS_NO_CLOSE_ON_ALT_F4"
#define SDL_HINT_WINDOWS_NO_CLOSE_ON_ALT_F4
"SDL_WINDOWS_NO_CLOSE_ON_ALT_F4"
/**
* \brief Prevent SDL from using version 4 of the bitmap header when saving BMPs.
...
...
bsp/simulator/SDL2-2.0.7/include/SDL_main.h
浏览文件 @
e37abb2b
...
...
@@ -69,9 +69,9 @@
#elif defined(__NACL__)
/* On NACL we use ppapi_simple to set up the application helper code,
then wait for the first PSE_INSTANCE_DIDCHANGEVIEW event before
then wait for the first PSE_INSTANCE_DIDCHANGEVIEW event before
starting the user main function.
All user code is run in a separate thread by ppapi_simple, thus
All user code is run in a separate thread by ppapi_simple, thus
allowing for blocking io to take place via nacl_io
*/
#define SDL_MAIN_NEEDED
...
...
bsp/simulator/SDL2-2.0.7/include/SDL_opengl.h
浏览文件 @
e37abb2b
此差异已折叠。
点击以展开。
bsp/simulator/SDL2-2.0.7/include/SDL_opengles2_gl2ext.h
浏览文件 @
e37abb2b
...
...
@@ -1535,7 +1535,7 @@ typedef void (GL_APIENTRYP PFNGLFLUSHMAPPEDBUFFERRANGEEXTPROC) (GLenum target, G
#ifndef GL_EXT_multisampled_render_to_texture
#define GL_EXT_multisampled_render_to_texture 1
#ifdef GL_GLEXT_PROTOTYPES
GL_APICALL
void
GL_APIENTRY
glRenderbufferStorageMultisampleEXT
(
GLenum
target
,
GLsizei
samples
,
GLenum
internalformat
,
GLsizei
width
,
GLsizei
height
);
GL_APICALL
void
GL_APIENTRY
glRenderbufferStorageMultisampleEXT
(
GLenum
target
,
GLsizei
samples
,
GLenum
internalformat
,
GLsizei
width
,
GLsizei
height
);
GL_APICALL
void
GL_APIENTRY
glFramebufferTexture2DMultisampleEXT
(
GLenum
target
,
GLenum
attachment
,
GLenum
textarget
,
GLuint
texture
,
GLint
level
,
GLsizei
samples
);
#endif
typedef
void
(
GL_APIENTRYP
PFNGLRENDERBUFFERSTORAGEMULTISAMPLEEXTPROC
)
(
GLenum
target
,
GLsizei
samples
,
GLenum
internalformat
,
GLsizei
width
,
GLsizei
height
);
...
...
bsp/simulator/SDL2-2.0.7/include/SDL_opengles2_khrplatform.h
浏览文件 @
e37abb2b
...
...
@@ -223,7 +223,7 @@ typedef signed short int khronos_int16_t;
typedef
unsigned
short
int
khronos_uint16_t
;
/*
* Types that differ between LLP64 and LP64 architectures - in LLP64,
* Types that differ between LLP64 and LP64 architectures - in LLP64,
* pointers are 64 bits, but 'long' is still 32 bits. Win64 appears
* to be the only LLP64 architecture in current use.
*/
...
...
bsp/simulator/SDL2-2.0.7/include/SDL_system.h
浏览文件 @
e37abb2b
...
...
@@ -42,7 +42,7 @@ extern "C" {
/* Platform specific functions for Windows */
#ifdef __WIN32__
/**
\brief Set a function that is called for every windows message, before TranslateMessage()
*/
...
...
bsp/simulator/SDL2-2.0.7/include/SDL_test_memory.h
浏览文件 @
e37abb2b
...
...
@@ -39,7 +39,7 @@ extern "C" {
/**
* \brief Start tracking SDL memory allocations
*
*
* \note This should be called before any other SDL functions for complete tracking coverage
*/
int
SDLTest_TrackAllocations
();
...
...
bsp/simulator/SDL2-2.0.7/include/SDL_thread.h
浏览文件 @
e37abb2b
...
...
@@ -246,7 +246,7 @@ extern DECLSPEC void SDLCALL SDL_DetachThread(SDL_Thread * thread);
* \code
* static SDL_SpinLock tls_lock;
* static SDL_TLSID thread_local_storage;
*
*
* void SetMyThreadData(void *value)
* {
* if (!thread_local_storage) {
...
...
@@ -258,7 +258,7 @@ extern DECLSPEC void SDLCALL SDL_DetachThread(SDL_Thread * thread);
* }
* SDL_TLSSet(thread_local_storage, value, 0);
* }
*
*
* void *GetMyThreadData(void)
* {
* return SDL_TLSGet(thread_local_storage);
...
...
bsp/simulator/SDL2-2.0.7/include/SDL_vulkan.h
浏览文件 @
e37abb2b
...
...
@@ -187,9 +187,9 @@ extern DECLSPEC void SDLCALL SDL_Vulkan_UnloadLibrary(void);
* \sa SDL_Vulkan_CreateSurface()
*/
extern
DECLSPEC
SDL_bool
SDLCALL
SDL_Vulkan_GetInstanceExtensions
(
SDL_Window
*
window
,
unsigned
int
*
pCount
,
const
char
**
pNames
);
SDL_Window
*
window
,
unsigned
int
*
pCount
,
const
char
**
pNames
);
/**
* \brief Create a Vulkan rendering surface for a window.
...
...
@@ -221,9 +221,9 @@ extern DECLSPEC SDL_bool SDLCALL SDL_Vulkan_GetInstanceExtensions(
* \sa SDL_Vulkan_GetInstanceExtensions()
*/
extern
DECLSPEC
SDL_bool
SDLCALL
SDL_Vulkan_CreateSurface
(
SDL_Window
*
window
,
VkInstance
instance
,
VkSurfaceKHR
*
surface
);
SDL_Window
*
window
,
VkInstance
instance
,
VkSurfaceKHR
*
surface
);
/**
* \brief Get the size of a window's underlying drawable in pixels (for use
...
...
bsp/simulator/applications/application.c
浏览文件 @
e37abb2b
/*
* File : application.c
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2015, RT-Thread Development Team
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2009-01-05 Bernard the first version
*/
#include <rtthread.h>
#include <stdio.h>
#include <board.h>
...
...
@@ -37,7 +22,7 @@ void rt_init_thread_entry(void *parameter)
platform_init
();
mnt_init
();
platform_post_init
();
platform_post_init
();
#if defined(PKG_USING_GUIENGINE) && defined(GUIENGINE_USING_DEMO)
{
...
...
bsp/simulator/applications/mnt.c
浏览文件 @
e37abb2b
/*
* File : mnt.c
* COPYRIGHT (C) 2008 - 2016, RT-Thread Development Team
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2017
4
3 Urey the first version
* 2017
-04-0
3 Urey the first version
*/
#include <rtthread.h>
#include <rtdevice.h>
...
...
@@ -20,7 +20,7 @@ int mnt_init(void)
#ifdef RT_USING_DFS_WINSHAREDIR
extern
int
dfs_win32_init
(
void
);
extern
rt_err_t
rt_win_sharedir_init
(
const
char
*
name
);
dfs_win32_init
();
rt_win_sharedir_init
(
"wshare"
);
...
...
bsp/simulator/applications/platform.c
浏览文件 @
e37abb2b
/*
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
*/
#include <rtthread.h>
#include "board.h"
...
...
bsp/simulator/applications/startup.c
浏览文件 @
e37abb2b
/*
* File : startup.c
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2017, RT-Thread Development Team
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation; either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License along
* with this program; if not, write to the Free Software Foundation, Inc.,
* 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2012-09-03 prife first implementation
*/
#include <rthw.h>
#include <rtthread.h>
...
...
bsp/simulator/drivers/board.c
浏览文件 @
e37abb2b
/*
* File : board.c
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2009 RT-Thread Develop Team
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rt-thread.org/license/LICENSE
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2009-01-05 Bernard first implementation
*/
#include <rthw.h>
#include <rtthread.h>
...
...
bsp/simulator/drivers/board.h
浏览文件 @
e37abb2b
/*
* File : board.h
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2009, RT-Thread Development Team
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rt-thread.org/license/LICENSE
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
* 2009-09-22 Bernard add board.h to this bsp
*/
#ifndef __BOARD_H__
#define __BOARD_H__
void
rt_hw_board_init
(
void
);
...
...
bsp/simulator/drivers/dfs_win32.c
浏览文件 @
e37abb2b
/*
* File : rtthread.h
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006-2012, RT-Thread Development Team
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rt-thread.org/license/LICENSE.
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
...
...
bsp/simulator/drivers/module_win32.c
浏览文件 @
e37abb2b
/*
* File : module.c
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2013, RT-Thread Development Team
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rt-thread.org/license/LICENSE
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
...
...
@@ -130,7 +126,7 @@ void rt_module_unload_sethook(void (*hook)(rt_module_t module))
*/
int
rt_system_module_init
(
void
)
{
return
0
;
return
0
;
}
/**
...
...
@@ -240,9 +236,9 @@ rt_module_t rt_module_open(const char *path)
struct
dfs_filesystem
*
fs
;
appentry_t
fptr
;
HINSTANCE
hinstlib
;
rt_module_t
module
;
rt_module_t
module
;
char
*
winpath
=
RT_NULL
;
char
*
winpath
=
RT_NULL
;
char
*
name
=
RT_NULL
;
RT_DEBUG_NOT_IN_INTERRUPT
;
...
...
@@ -353,60 +349,60 @@ FINSH_FUNCTION_EXPORT_ALIAS(rt_module_open, exec, exec module from a file);
#define RT_MODULE_ARG_MAX 8
static
int
_rt_module_split_arg
(
char
*
cmd
,
rt_size_t
length
,
char
*
argv
[])
{
int
argc
=
0
;
char
*
ptr
=
cmd
;
while
((
ptr
-
cmd
)
<
length
)
{
/* strip bank and tab */
while
((
*
ptr
==
' '
||
*
ptr
==
'\t'
)
&&
(
ptr
-
cmd
)
<
length
)
*
ptr
++
=
'\0'
;
/* check whether it's the end of line */
if
((
ptr
-
cmd
)
>=
length
)
break
;
/* handle string with quote */
if
(
*
ptr
==
'"'
)
{
argv
[
argc
++
]
=
++
ptr
;
/* skip this string */
while
(
*
ptr
!=
'"'
&&
(
ptr
-
cmd
)
<
length
)
if
(
*
ptr
++
==
'\\'
)
ptr
++
;
if
((
ptr
-
cmd
)
>=
length
)
break
;
/* skip '"' */
*
ptr
++
=
'\0'
;
}
else
{
argv
[
argc
++
]
=
ptr
;
while
((
*
ptr
!=
' '
&&
*
ptr
!=
'\t'
)
&&
(
ptr
-
cmd
)
<
length
)
ptr
++
;
}
if
(
argc
>=
RT_MODULE_ARG_MAX
)
break
;
}
return
argc
;
int
argc
=
0
;
char
*
ptr
=
cmd
;
while
((
ptr
-
cmd
)
<
length
)
{
/* strip bank and tab */
while
((
*
ptr
==
' '
||
*
ptr
==
'\t'
)
&&
(
ptr
-
cmd
)
<
length
)
*
ptr
++
=
'\0'
;
/* check whether it's the end of line */
if
((
ptr
-
cmd
)
>=
length
)
break
;
/* handle string with quote */
if
(
*
ptr
==
'"'
)
{
argv
[
argc
++
]
=
++
ptr
;
/* skip this string */
while
(
*
ptr
!=
'"'
&&
(
ptr
-
cmd
)
<
length
)
if
(
*
ptr
++
==
'\\'
)
ptr
++
;
if
((
ptr
-
cmd
)
>=
length
)
break
;
/* skip '"' */
*
ptr
++
=
'\0'
;
}
else
{
argv
[
argc
++
]
=
ptr
;
while
((
*
ptr
!=
' '
&&
*
ptr
!=
'\t'
)
&&
(
ptr
-
cmd
)
<
length
)
ptr
++
;
}
if
(
argc
>=
RT_MODULE_ARG_MAX
)
break
;
}
return
argc
;
}
/* module main thread entry */
static
void
module_main_entry
(
void
*
parameter
)
{
int
argc
;
char
*
argv
[
RT_MODULE_ARG_MAX
];
typedef
int
(
*
main_func_t
)(
int
argc
,
char
**
argv
);
int
argc
;
char
*
argv
[
RT_MODULE_ARG_MAX
];
typedef
int
(
*
main_func_t
)(
int
argc
,
char
**
argv
);
rt_module_t
module
=
(
rt_module_t
)
parameter
;
if
(
module
==
RT_NULL
||
module
->
module_cmd_line
==
RT_NULL
)
return
;
rt_module_t
module
=
(
rt_module_t
)
parameter
;
if
(
module
==
RT_NULL
||
module
->
module_cmd_line
==
RT_NULL
)
return
;
rt_memset
(
argv
,
0x00
,
sizeof
(
argv
));
argc
=
_rt_module_split_arg
((
char
*
)
module
->
module_cmd_line
,
module
->
module_cmd_size
,
argv
);
if
(
argc
==
0
)
return
;
rt_memset
(
argv
,
0x00
,
sizeof
(
argv
));
argc
=
_rt_module_split_arg
((
char
*
)
module
->
module_cmd_line
,
module
->
module_cmd_size
,
argv
);
if
(
argc
==
0
)
return
;
/* do the main function */
((
main_func_t
)
module
->
module_entry
)(
argc
,
argv
);
return
;
/* do the main function */
((
main_func_t
)
module
->
module_entry
)(
argc
,
argv
);
return
;
}
/**
...
...
@@ -423,25 +419,25 @@ rt_module_t rt_module_exec_cmd(const char *path, const char* cmd_line, int line_
struct
dfs_filesystem
*
fs
;
appentry_t
fptr
;
HINSTANCE
hinstlib
;
rt_module_t
module
;
rt_module_t
module
;
char
*
winpath
=
RT_NULL
;
char
*
winpath
=
RT_NULL
;
char
*
name
=
RT_NULL
;
char
*
full_path
=
RT_NULL
;
char
*
full_path
=
RT_NULL
;
RT_DEBUG_NOT_IN_INTERRUPT
;
/* check parameters */
RT_ASSERT
(
path
!=
RT_NULL
);
if
(
*
path
!=
'/'
)
{
full_path
=
dfs_normalize_path
(
RT_NULL
,
path
);
}
else
{
full_path
=
(
const
char
*
)
path
;
}
if
(
*
path
!=
'/'
)
{
full_path
=
dfs_normalize_path
(
RT_NULL
,
path
);
}
else
{
full_path
=
(
const
char
*
)
path
;
}
/* app module should only in DFS_WIN32 */
fs
=
dfs_filesystem_lookup
(
full_path
);
...
...
@@ -456,14 +452,14 @@ rt_module_t rt_module_exec_cmd(const char *path, const char* cmd_line, int line_
if
((
winpath
=
dfs_win32_dirdup
((
char
*
)
full_path
))
==
RT_NULL
)
{
rt_kprintf
(
"out of memory, exit"
,
path
);
goto
__exit
;
goto
__exit
;
}
hinstlib
=
LoadLibrary
(
winpath
);
if
(
hinstlib
==
NULL
)
{
rt_kprintf
(
"error: unable to open %s
\n
"
,
winpath
);
goto
__exit
;
goto
__exit
;
}
fptr
=
(
appentry_t
)
GetProcAddress
(
hinstlib
,
"main"
);
...
...
@@ -471,21 +467,21 @@ rt_module_t rt_module_exec_cmd(const char *path, const char* cmd_line, int line_
{
rt_kprintf
(
"error: unable to find function in %s
\n
"
,
winpath
);
FreeLibrary
(
hinstlib
);
goto
__exit
;
goto
__exit
;
}
/* release winpath */
rt_free
(
winpath
);
/* release winpath */
rt_free
(
winpath
);
/* get the name of the module */
name
=
_module_name
(
path
);
/* allocate module */
module
=
(
struct
rt_module
*
)
rt_object_allocate
(
RT_Object_Class_Module
,
name
);
if
(
!
module
)
{
goto
__exit
;
}
if
(
!
module
)
{
goto
__exit
;
}
module
->
nref
=
0
;
module
->
module_entry
=
fptr
;
...
...
@@ -498,11 +494,11 @@ rt_module_t rt_module_exec_cmd(const char *path, const char* cmd_line, int line_
if
(
module
->
module_entry
!=
0
)
{
/* set module argument */
module
->
module_cmd_line
=
(
rt_uint8_t
*
)
rt_malloc
(
line_size
+
1
);
rt_memcpy
(
module
->
module_cmd_line
,
cmd_line
,
line_size
);
module
->
module_cmd_line
[
line_size
]
=
'\0'
;
module
->
module_cmd_size
=
line_size
;
/* set module argument */
module
->
module_cmd_line
=
(
rt_uint8_t
*
)
rt_malloc
(
line_size
+
1
);
rt_memcpy
(
module
->
module_cmd_line
,
cmd_line
,
line_size
);
module
->
module_cmd_line
[
line_size
]
=
'\0'
;
module
->
module_cmd_size
=
line_size
;
#ifdef RT_USING_SLAB
/* init module memory allocator */
...
...
@@ -514,10 +510,10 @@ rt_module_t rt_module_exec_cmd(const char *path, const char* cmd_line, int line_
module
->
page_cnt
=
0
;
#endif
/* create module thread */
module
->
module_thread
=
rt_thread_create
(
name
,
module_main_entry
,
module
,
2048
,
RT_THREAD_PRIORITY_MAX
-
2
,
10
);
/* create module thread */
module
->
module_thread
=
rt_thread_create
(
name
,
module_main_entry
,
module
,
2048
,
RT_THREAD_PRIORITY_MAX
-
2
,
10
);
/* set module id */
module
->
module_thread
->
module_id
=
(
void
*
)
module
;
...
...
@@ -543,11 +539,11 @@ rt_module_t rt_module_exec_cmd(const char *path, const char* cmd_line, int line_
return
module
;
__exit:
if
(
full_path
!=
path
)
rt_free
(
full_path
);
if
(
name
!=
RT_NULL
)
rt_free
(
full_path
);
if
(
winpath
!=
RT_NULL
)
rt_free
(
winpath
);
if
(
full_path
!=
path
)
rt_free
(
full_path
);
if
(
name
!=
RT_NULL
)
rt_free
(
full_path
);
if
(
winpath
!=
RT_NULL
)
rt_free
(
winpath
);
return
RT_NULL
;
return
RT_NULL
;
/* FreeLibrary(hinstlib); */
}
...
...
bsp/simulator/drivers/nanddrv_file.c
浏览文件 @
e37abb2b
/*
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
*/
#include <rtdevice.h>
#include <stdio.h>
#include <stdlib.h>
...
...
bsp/simulator/drivers/sd_sim.c
浏览文件 @
e37abb2b
/*
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
...
...
bsp/simulator/drivers/sdl_fb.c
浏览文件 @
e37abb2b
/*
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
*/
#include <rtthread.h>
#include <stdio.h>
#ifdef _WIN32
#include <sdl.h>
#else
...
...
@@ -190,7 +196,7 @@ static void sdlfb_hw_init(void)
SDL_PixelFormatEnumToMasks
(
SDL_SCREEN_FORMAT
,
&
bpp
,
&
Rmask
,
&
Gmask
,
&
Bmask
,
&
Amask
);
_device
.
surface
=
SDL_CreateRGBSurface
(
0
,
SDL_SCREEN_WIDTH
,
SDL_SCREEN_HEIGHT
,
_device
.
surface
=
SDL_CreateRGBSurface
(
0
,
SDL_SCREEN_WIDTH
,
SDL_SCREEN_HEIGHT
,
bpp
,
Rmask
,
Gmask
,
Bmask
,
Amask
);
}
...
...
@@ -255,7 +261,7 @@ static void *sdl_loop(void *lpParam)
int
motion_tick
=
50
;
int
mouse_id
=
1
;
#ifndef _WIN32
sigset_t
sigmask
,
oldmask
;
/* set the getchar without buffer */
...
...
@@ -455,7 +461,7 @@ static void *sdl_loop(void *lpParam)
exit
(
1
);
break
;
}
}
rt_hw_exit
();
return
0
;
...
...
bsp/simulator/drivers/sst25vfxx_mtd.h
浏览文件 @
e37abb2b
/*
* File : sst25vfxx_mtd.h
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2011, RT-Thread Development Team
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rt-thread.org/license/LICENSE
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
...
...
bsp/simulator/drivers/sst25vfxx_mtd_sim.c
浏览文件 @
e37abb2b
/*
* File : rtdef.h
* This file is part of RT-Thread RTOS
* COPYRIGHT (C) 2006 - 2012, RT-Thread Development Team
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* The license and distribution terms for this file may be
* found in the file LICENSE in this distribution or at
* http://www.rt-thread.org/license/LICENSE
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
...
...
@@ -20,7 +16,7 @@
#ifdef RT_USING_MTD_NOR
#define NOR_SIM "nor.bin"
/* JEDEC Manufacturers ID */
/* JEDEC Manufacturer
’
s ID */
#define MF_ID (0xBF)
/* JEDEC Device ID : Memory Type */
#define MT_ID (0x25)
...
...
bsp/simulator/drivers/tap_netif.c
浏览文件 @
e37abb2b
...
...
@@ -33,7 +33,7 @@
#include <netif/ethernetif.h>
#define MAX_ADDR_LEN 6
#define TAP_IFNAME
"RT-net"
#define TAP_IFNAME
"RT-net"
//=============
// TAP IOCTLs
...
...
@@ -112,13 +112,13 @@ static tap_win32_overlapped_t tap_overlapped;
/************************************************************************/
struct
tap_netif
{
/* inherit from ethernet device */
struct
eth_device
parent
;
/* inherit from ethernet device */
struct
eth_device
parent
;
tap_win32_overlapped_t
*
handle
;
tap_win32_overlapped_t
*
handle
;
/* interface address info. */
rt_uint8_t
dev_addr
[
MAX_ADDR_LEN
];
/* hw address
*/
/* interface address info. */
rt_uint8_t
dev_addr
[
MAX_ADDR_LEN
];
/* hw address
*/
};
#define NETIF_DEVICE(netif) ((struct tap_netif*)(netif))
#define NETIF_TAP(netif) (NETIF_DEVICE(netif)->handle)
...
...
@@ -505,12 +505,12 @@ static void tap_win32_thread_entry(void* param)
unsigned
long
read_size
;
BOOL
result
;
DWORD
dwError
;
tun_buffer_t
*
buffer
;
struct
eth_device
*
eth
;
tun_buffer_t
*
buffer
;
struct
eth_device
*
eth
;
eth
=
(
struct
eth_device
*
)
&
tap_netif_device
;
overlapped
=
NETIF_TAP
(
&
tap_netif_device
);
buffer
=
get_buffer_from_free_list
(
overlapped
);
eth
=
(
struct
eth_device
*
)
&
tap_netif_device
;
overlapped
=
NETIF_TAP
(
&
tap_netif_device
);
buffer
=
get_buffer_from_free_list
(
overlapped
);
for
(;;)
{
result
=
ReadFile
(
overlapped
->
handle
,
...
...
@@ -548,15 +548,15 @@ static void tap_win32_thread_entry(void* param)
}
if
(
read_size
>
0
)
{
// rt_kprintf("rx packet, length=%d\n", read_size);
// rt_kprintf("rx packet, length=%d\n", read_size);
buffer
->
read_size
=
read_size
;
buffer
->
read_size
=
read_size
;
put_buffer_on_output_queue
(
overlapped
,
buffer
);
/* notify eth rx thread to receive packet */
eth_device_ready
(
eth
);
/* notify eth rx thread to receive packet */
eth_device_ready
(
eth
);
buffer
=
get_buffer_from_free_list
(
overlapped
);
buffer
=
get_buffer_from_free_list
(
overlapped
);
}
}
}
...
...
@@ -649,143 +649,143 @@ static int tap_win32_open(tap_win32_overlapped_t **phandle,
static
rt_err_t
tap_netif_init
(
rt_device_t
dev
)
{
rt_thread_t
tid
;
tap_win32_overlapped_t
*
handle
;
rt_thread_t
tid
;
tap_win32_overlapped_t
*
handle
;
if
(
tap_win32_open
(
&
handle
,
TAP_IFNAME
)
<
0
)
{
printf
(
"tap: Could not open '%s'
\n
"
,
TAP_IFNAME
);
return
-
RT_ERROR
;
}
if
(
tap_win32_open
(
&
handle
,
TAP_IFNAME
)
<
0
)
{
printf
(
"tap: Could not open '%s'
\n
"
,
TAP_IFNAME
);
return
-
RT_ERROR
;
}
tap_netif_device
.
handle
=
handle
;
tap_netif_device
.
handle
=
handle
;
/* create recv thread */
tid
=
rt_thread_create
(
"tap"
,
tap_win32_thread_entry
,
RT_NULL
,
2048
,
RT_THREAD_PRIORITY_MAX
-
1
,
10
);
if
(
tid
!=
RT_NULL
)
{
rt_thread_startup
(
tid
);
}
/* create recv thread */
tid
=
rt_thread_create
(
"tap"
,
tap_win32_thread_entry
,
RT_NULL
,
2048
,
RT_THREAD_PRIORITY_MAX
-
1
,
10
);
if
(
tid
!=
RT_NULL
)
{
rt_thread_startup
(
tid
);
}
rt_thread_sleep
(
RT_TICK_PER_SECOND
);
rt_thread_sleep
(
RT_TICK_PER_SECOND
);
return
RT_EOK
;
return
RT_EOK
;
}
static
rt_err_t
tap_netif_open
(
rt_device_t
dev
,
rt_uint16_t
oflag
)
{
return
RT_EOK
;
return
RT_EOK
;
}
static
rt_err_t
tap_netif_close
(
rt_device_t
dev
)
{
return
RT_EOK
;
return
RT_EOK
;
}
static
rt_size_t
tap_netif_read
(
rt_device_t
dev
,
rt_off_t
pos
,
void
*
buffer
,
rt_size_t
size
)
{
rt_set_errno
(
-
RT_ENOSYS
);
return
0
;
rt_set_errno
(
-
RT_ENOSYS
);
return
0
;
}
static
rt_size_t
tap_netif_write
(
rt_device_t
dev
,
rt_off_t
pos
,
const
void
*
buffer
,
rt_size_t
size
)
{
rt_set_errno
(
-
RT_ENOSYS
);
return
0
;
rt_set_errno
(
-
RT_ENOSYS
);
return
0
;
}
static
rt_err_t
tap_netif_control
(
rt_device_t
dev
,
int
cmd
,
void
*
args
)
{
switch
(
cmd
)
{
case
NIOCTL_GADDR
:
/* get mac address */
if
(
args
)
rt_memcpy
(
args
,
tap_netif_device
.
dev_addr
,
6
);
else
return
-
RT_ERROR
;
break
;
default
:
break
;
}
return
RT_EOK
;
switch
(
cmd
)
{
case
NIOCTL_GADDR
:
/* get mac address */
if
(
args
)
rt_memcpy
(
args
,
tap_netif_device
.
dev_addr
,
6
);
else
return
-
RT_ERROR
;
break
;
default
:
break
;
}
return
RT_EOK
;
}
rt_err_t
tap_netif_tx
(
rt_device_t
dev
,
struct
pbuf
*
p
)
{
struct
pbuf
*
q
;
char
buffer
[
2048
];
int
length
;
tap_win32_overlapped_t
*
handle
;
unsigned
char
*
ptr
;
handle
=
NETIF_TAP
(
dev
);
/* lock EMAC device */
rt_sem_take
(
&
sem_lock
,
RT_WAITING_FOREVER
);
/* copy data to tx buffer */
q
=
p
;
ptr
=
(
rt_uint8_t
*
)
buffer
;
while
(
q
)
{
memcpy
(
ptr
,
q
->
payload
,
q
->
len
);
ptr
+=
q
->
len
;
q
=
q
->
next
;
}
length
=
p
->
tot_len
;
tap_win32_write
(
handle
,
buffer
,
length
);
/* unlock EMAC device */
rt_sem_release
(
&
sem_lock
);
return
RT_EOK
;
struct
pbuf
*
q
;
char
buffer
[
2048
];
int
length
;
tap_win32_overlapped_t
*
handle
;
unsigned
char
*
ptr
;
handle
=
NETIF_TAP
(
dev
);
/* lock EMAC device */
rt_sem_take
(
&
sem_lock
,
RT_WAITING_FOREVER
);
/* copy data to tx buffer */
q
=
p
;
ptr
=
(
rt_uint8_t
*
)
buffer
;
while
(
q
)
{
memcpy
(
ptr
,
q
->
payload
,
q
->
len
);
ptr
+=
q
->
len
;
q
=
q
->
next
;
}
length
=
p
->
tot_len
;
tap_win32_write
(
handle
,
buffer
,
length
);
/* unlock EMAC device */
rt_sem_release
(
&
sem_lock
);
return
RT_EOK
;
}
struct
pbuf
*
tap_netif_rx
(
rt_device_t
dev
)
{
struct
pbuf
*
p
=
RT_NULL
;
tap_win32_overlapped_t
*
handle
;
rt_uint8_t
*
buf
;
int
max_size
=
4096
;
int
size
;
struct
pbuf
*
p
=
RT_NULL
;
tap_win32_overlapped_t
*
handle
;
rt_uint8_t
*
buf
;
int
max_size
=
4096
;
int
size
;
handle
=
NETIF_TAP
(
dev
);
handle
=
NETIF_TAP
(
dev
);
size
=
tap_win32_read
(
handle
,
&
buf
,
max_size
);
if
(
size
>
0
)
{
p
=
pbuf_alloc
(
PBUF_LINK
,
size
,
PBUF_RAM
);
pbuf_take
(
p
,
buf
,
size
);
size
=
tap_win32_read
(
handle
,
&
buf
,
max_size
);
if
(
size
>
0
)
{
p
=
pbuf_alloc
(
PBUF_LINK
,
size
,
PBUF_RAM
);
pbuf_take
(
p
,
buf
,
size
);
tap_win32_free_buffer
(
handle
,
buf
);
}
tap_win32_free_buffer
(
handle
,
buf
);
}
return
p
;
return
p
;
}
void
tap_netif_hw_init
(
void
)
{
rt_sem_init
(
&
sem_lock
,
"eth_lock"
,
1
,
RT_IPC_FLAG_FIFO
);
tap_netif_device
.
dev_addr
[
0
]
=
0x00
;
tap_netif_device
.
dev_addr
[
1
]
=
0x60
;
tap_netif_device
.
dev_addr
[
2
]
=
0x37
;
/* set mac address: (only for test) */
tap_netif_device
.
dev_addr
[
3
]
=
0x12
;
tap_netif_device
.
dev_addr
[
4
]
=
0x34
;
tap_netif_device
.
dev_addr
[
5
]
=
0x56
;
tap_netif_device
.
parent
.
parent
.
init
=
tap_netif_init
;
tap_netif_device
.
parent
.
parent
.
open
=
tap_netif_open
;
tap_netif_device
.
parent
.
parent
.
close
=
tap_netif_close
;
tap_netif_device
.
parent
.
parent
.
read
=
tap_netif_read
;
tap_netif_device
.
parent
.
parent
.
write
=
tap_netif_write
;
tap_netif_device
.
parent
.
parent
.
control
=
tap_netif_control
;
tap_netif_device
.
parent
.
parent
.
user_data
=
RT_NULL
;
tap_netif_device
.
parent
.
eth_rx
=
tap_netif_rx
;
tap_netif_device
.
parent
.
eth_tx
=
tap_netif_tx
;
eth_device_init
(
&
(
tap_netif_device
.
parent
),
"e0"
);
rt_sem_init
(
&
sem_lock
,
"eth_lock"
,
1
,
RT_IPC_FLAG_FIFO
);
tap_netif_device
.
dev_addr
[
0
]
=
0x00
;
tap_netif_device
.
dev_addr
[
1
]
=
0x60
;
tap_netif_device
.
dev_addr
[
2
]
=
0x37
;
/* set mac address: (only for test) */
tap_netif_device
.
dev_addr
[
3
]
=
0x12
;
tap_netif_device
.
dev_addr
[
4
]
=
0x34
;
tap_netif_device
.
dev_addr
[
5
]
=
0x56
;
tap_netif_device
.
parent
.
parent
.
init
=
tap_netif_init
;
tap_netif_device
.
parent
.
parent
.
open
=
tap_netif_open
;
tap_netif_device
.
parent
.
parent
.
close
=
tap_netif_close
;
tap_netif_device
.
parent
.
parent
.
read
=
tap_netif_read
;
tap_netif_device
.
parent
.
parent
.
write
=
tap_netif_write
;
tap_netif_device
.
parent
.
parent
.
control
=
tap_netif_control
;
tap_netif_device
.
parent
.
parent
.
user_data
=
RT_NULL
;
tap_netif_device
.
parent
.
eth_rx
=
tap_netif_rx
;
tap_netif_device
.
parent
.
eth_tx
=
tap_netif_tx
;
eth_device_init
(
&
(
tap_netif_device
.
parent
),
"e0"
);
}
bsp/simulator/drivers/uart_console.c
浏览文件 @
e37abb2b
#include <stdio.h>
/*
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
*/
#include <stdio.h>
#include <rthw.h>
#include <rtdevice.h>
#include <rtthread.h>
...
...
@@ -88,11 +96,11 @@ static struct termios oldt, newt;
/*simulate windows' getch(), it works!!*/
static
void
set_stty
(
void
)
{
/* get terminal input's attribute */
/* get terminal input's attribute */
tcgetattr
(
STDIN_FILENO
,
&
oldt
);
newt
=
oldt
;
/* set termios' local mode */
/* set termios' local mode */
newt
.
c_lflag
&=
~
(
ECHO
|
ICANON
);
tcsetattr
(
STDIN_FILENO
,
TCSANOW
,
&
newt
);
}
...
...
@@ -117,10 +125,10 @@ static void * ThreadforKeyGet(void * lpParam)
#ifndef _WIN32
sigset_t
sigmask
,
oldmask
;
/* set the getchar without buffer */
sigfillset
(
&
sigmask
);
pthread_sigmask
(
SIG_BLOCK
,
&
sigmask
,
&
oldmask
);
set_stty
();
/* set the getchar without buffer */
sigfillset
(
&
sigmask
);
pthread_sigmask
(
SIG_BLOCK
,
&
sigmask
,
&
oldmask
);
set_stty
();
#endif
(
void
)
lpParam
;
//prevent compiler warnings
...
...
@@ -217,7 +225,7 @@ static int console_putc(struct rt_serial_device *serial, char c)
level
=
rt_hw_interrupt_disable
();
fwrite
(
&
c
,
1
,
1
,
stdout
);
fflush
(
stdout
);
fflush
(
stdout
);
rt_hw_interrupt_enable
(
level
);
return
1
;
}
...
...
bsp/simulator/drivers/uart_console.h
浏览文件 @
e37abb2b
/*
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
*/
#ifndef UART_CONSOLE_H__
#define UART_CONSOLE_H__
...
...
bsp/simulator/dummy.c
浏览文件 @
e37abb2b
/*
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
*/
int
dummy_main
()
{
return
0
;
return
0
;
}
bsp/simulator/pcap/Include/Packet32.h
浏览文件 @
e37abb2b
此差异已折叠。
点击以展开。
bsp/simulator/pcap/Include/Win32-Extensions.h
浏览文件 @
e37abb2b
...
...
@@ -12,9 +12,9 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. Neither the name of the Politecnico di Torino, CACE Technologies
* nor the names of its contributors may be used to endorse or promote
* products derived from this software without specific prior written
* 3. Neither the name of the Politecnico di Torino, CACE Technologies
* nor the names of its contributors may be used to endorse or promote
* products derived from this software without specific prior written
* permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
...
...
@@ -45,9 +45,9 @@ extern "C" {
*/
struct
pcap_send_queue
{
u_int
maxlen
;
///< Maximum size of the the queue, in bytes. This variable contains the size of the buffer field.
u_int
len
;
///< Current size of the queue, in bytes.
char
*
buffer
;
///< Buffer containing the packets to be sent.
u_int
maxlen
;
///< Maximum size of the the queue, in bytes. This variable contains the size of the buffer field.
u_int
len
;
///< Current size of the queue, in bytes.
char
*
buffer
;
///< Buffer containing the packets to be sent.
};
typedef
struct
pcap_send_queue
pcap_send_queue
;
...
...
@@ -60,26 +60,26 @@ typedef struct pcap_send_queue pcap_send_queue;
typedef
struct
_AirpcapHandle
*
PAirpcapHandle
;
#endif
#define
BPF_MEM_EX_IMM
0xc0
#define
BPF_MEM_EX_IND
0xe0
#define
BPF_MEM_EX_IMM
0xc0
#define
BPF_MEM_EX_IND
0xe0
/*used for ST*/
#define
BPF_MEM_EX
0xc0
#define
BPF_TME
0x08
#define
BPF_LOOKUP 0x90
#define
BPF_EXECUTE
0xa0
#define
BPF_INIT
0xb0
#define
BPF_VALIDATE
0xc0
#define
BPF_SET_ACTIVE
0xd0
#define
BPF_RESET
0xe0
#define
BPF_SET_MEMORY
0x80
#define
BPF_GET_REGISTER_VALUE
0x70
#define
BPF_SET_REGISTER_VALUE
0x60
#define
BPF_SET_WORKING
0x50
#define
BPF_SET_ACTIVE_READ
0x40
#define
BPF_SET_AUTODELETION
0x30
#define
BPF_SEPARATION
0xff
#define
BPF_MEM_EX
0xc0
#define
BPF_TME
0x08
#define
BPF_LOOKUP 0x90
#define
BPF_EXECUTE
0xa0
#define
BPF_INIT
0xb0
#define
BPF_VALIDATE
0xc0
#define
BPF_SET_ACTIVE
0xd0
#define
BPF_RESET
0xe0
#define
BPF_SET_MEMORY
0x80
#define
BPF_GET_REGISTER_VALUE
0x70
#define
BPF_SET_REGISTER_VALUE
0x60
#define
BPF_SET_WORKING
0x50
#define
BPF_SET_ACTIVE_READ
0x40
#define
BPF_SET_AUTODELETION
0x30
#define
BPF_SEPARATION
0xff
/* Prototypes */
pcap_send_queue
*
pcap_sendqueue_alloc
(
u_int
memsize
);
...
...
bsp/simulator/pcap/Include/bittypes.h
浏览文件 @
e37abb2b
/*
* Copyright (C) 1999 WIDE Project.
* All rights reserved.
*
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
...
...
@@ -13,7 +13,7 @@
* 3. Neither the name of the project nor the names of its contributors
* may be used to endorse or promote products derived from this software
* without specific prior written permission.
*
*
* THIS SOFTWARE IS PROVIDED BY THE PROJECT AND CONTRIBUTORS ``AS IS'' AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
...
...
@@ -45,7 +45,7 @@ typedef signed int int8_t;
#endif
/* HAVE_U_INT8_T */
#ifndef HAVE_U_INT16_T
#ifndef HAVE_U_INT16_T
#if SIZEOF_SHORT == 2
typedef
unsigned
short
u_int16_t
;
...
...
@@ -104,33 +104,33 @@ typedef unsigned short u_int64_t;
#ifndef PRId64
#ifdef _MSC_EXTENSIONS
#define PRId64
"I64d"
#define PRId64
"I64d"
#else
/* _MSC_EXTENSIONS */
#define PRId64
"lld"
#define PRId64
"lld"
#endif
/* _MSC_EXTENSIONS */
#endif
/* PRId64 */
#ifndef PRIo64
#ifdef _MSC_EXTENSIONS
#define PRIo64
"I64o"
#define PRIo64
"I64o"
#else
/* _MSC_EXTENSIONS */
#define PRIo64
"llo"
#define PRIo64
"llo"
#endif
/* _MSC_EXTENSIONS */
#endif
/* PRIo64 */
#ifndef PRIx64
#ifdef _MSC_EXTENSIONS
#define PRIx64
"I64x"
#define PRIx64
"I64x"
#else
/* _MSC_EXTENSIONS */
#define PRIx64
"llx"
#define PRIx64
"llx"
#endif
/* _MSC_EXTENSIONS */
#endif
/* PRIx64 */
#ifndef PRIu64
#ifdef _MSC_EXTENSIONS
#define PRIu64
"I64u"
#define PRIu64
"I64u"
#else
/* _MSC_EXTENSIONS */
#define PRIu64
"llu"
#define PRIu64
"llu"
#endif
/* _MSC_EXTENSIONS */
#endif
/* PRIu64 */
...
...
bsp/simulator/pcap/Include/ip6_misc.h
浏览文件 @
e37abb2b
/*
* Copyright (c) 1993, 1994, 1997
*
The Regents of the University of California. All rights reserved.
*
The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that: (1) source code distributions
...
...
@@ -30,12 +30,12 @@
#include <ws2tcpip.h>
#ifndef __MINGW32__
#define
IN_MULTICAST(a)
IN_CLASSD(a)
#define
IN_MULTICAST(a)
IN_CLASSD(a)
#endif
#define
IN_EXPERIMENTAL(a)
((((u_int32_t) (a)) & 0xf0000000) == 0xf0000000)
#define
IN_EXPERIMENTAL(a)
((((u_int32_t) (a)) & 0xf0000000) == 0xf0000000)
#define
IN_LOOPBACKNET
127
#define
IN_LOOPBACKNET
127
#if defined(__MINGW32__) && defined(DEFINE_ADDITIONAL_IPV6_STUFF)
/* IPv6 address */
...
...
@@ -43,14 +43,14 @@ struct in6_addr
{
union
{
u_int8_t
u6_addr8
[
16
];
u_int16_t
u6_addr16
[
8
];
u_int32_t
u6_addr32
[
4
];
u_int8_t
u6_addr8
[
16
];
u_int16_t
u6_addr16
[
8
];
u_int32_t
u6_addr32
[
4
];
}
in6_u
;
#define s6_addr
in6_u.u6_addr8
#define s6_addr16
in6_u.u6_addr16
#define s6_addr32
in6_u.u6_addr32
#define s6_addr64
in6_u.u6_addr64
#define s6_addr
in6_u.u6_addr8
#define s6_addr16
in6_u.u6_addr16
#define s6_addr32
in6_u.u6_addr32
#define s6_addr64
in6_u.u6_addr64
};
#define IN6ADDR_ANY_INIT { 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 }
...
...
@@ -59,36 +59,36 @@ struct in6_addr
#if (defined _MSC_VER) || (defined(__MINGW32__) && defined(DEFINE_ADDITIONAL_IPV6_STUFF))
typedef
unsigned
short
sa_family_t
;
typedef
unsigned
short
sa_family_t
;
#endif
#if defined(__MINGW32__) && defined(DEFINE_ADDITIONAL_IPV6_STUFF)
#define
__SOCKADDR_COMMON(sa_prefix) \
#define
__SOCKADDR_COMMON(sa_prefix) \
sa_family_t sa_prefix##family
/* Ditto, for IPv6. */
struct
sockaddr_in6
{
__SOCKADDR_COMMON
(
sin6_
);
u_int16_t
sin6_port
;
/* Transport layer port # */
u_int32_t
sin6_flowinfo
;
/* IPv6 flow information */
struct
in6_addr
sin6_addr
;
/* IPv6 address */
u_int16_t
sin6_port
;
/* Transport layer port # */
u_int32_t
sin6_flowinfo
;
/* IPv6 flow information */
struct
in6_addr
sin6_addr
;
/* IPv6 address */
};
#define IN6_IS_ADDR_V4MAPPED(a) \
((((u_int32_t *) (a))[0] == 0) && (((u_int32_t *) (a))[1] == 0) && \
(((u_int32_t *) (a))[2] == htonl (0xffff)))
((((u_int32_t *) (a))[0] == 0) && (((u_int32_t *) (a))[1] == 0) && \
(((u_int32_t *) (a))[2] == htonl (0xffff)))
#define IN6_IS_ADDR_MULTICAST(a) (((u_int8_t *) (a))[0] == 0xff)
#define IN6_IS_ADDR_LINKLOCAL(a) \
((((u_int32_t *) (a))[0] & htonl (0xffc00000)) == htonl (0xfe800000))
((((u_int32_t *) (a))[0] & htonl (0xffc00000)) == htonl (0xfe800000))
#define IN6_IS_ADDR_LOOPBACK(a) \
(((u_int32_t *) (a))[0] == 0 && ((u_int32_t *) (a))[1] == 0 && \
((u_int32_t *) (a))[2] == 0 && ((u_int32_t *) (a))[3] == htonl (1))
(((u_int32_t *) (a))[0] == 0 && ((u_int32_t *) (a))[1] == 0 && \
((u_int32_t *) (a))[2] == 0 && ((u_int32_t *) (a))[3] == htonl (1))
#endif
/* __MINGW32__ */
#define ip6_vfc ip6_ctlun.ip6_un2_vfc
...
...
@@ -104,60 +104,60 @@ struct sockaddr_in6
#define nd_rd_reserved nd_rd_hdr.icmp6_data32[0]
/*
*
IPV6 extension headers
*
IPV6 extension headers
*/
#define IPPROTO_HOPOPTS
0
/* IPv6 hop-by-hop options
*/
#define IPPROTO_IPV6
41
/* IPv6 header. */
#define IPPROTO_ROUTING
43
/* IPv6 routing header
*/
#define IPPROTO_FRAGMENT
44
/* IPv6 fragmentation header
*/
#define IPPROTO_ESP
50
/* encapsulating security payload */
#define IPPROTO_AH
51
/* authentication header
*/
#define IPPROTO_ICMPV6
58
/* ICMPv6
*/
#define IPPROTO_NONE
59
/* IPv6 no next header
*/
#define IPPROTO_DSTOPTS
60
/* IPv6 destination options
*/
#define IPPROTO_PIM
103
/* Protocol Independent Multicast. */
#define
IPV6_RTHDR_TYPE_0 0
#define IPPROTO_HOPOPTS
0
/* IPv6 hop-by-hop options
*/
#define IPPROTO_IPV6
41
/* IPv6 header. */
#define IPPROTO_ROUTING
43
/* IPv6 routing header
*/
#define IPPROTO_FRAGMENT
44
/* IPv6 fragmentation header
*/
#define IPPROTO_ESP
50
/* encapsulating security payload */
#define IPPROTO_AH
51
/* authentication header
*/
#define IPPROTO_ICMPV6
58
/* ICMPv6
*/
#define IPPROTO_NONE
59
/* IPv6 no next header
*/
#define IPPROTO_DSTOPTS
60
/* IPv6 destination options
*/
#define IPPROTO_PIM
103
/* Protocol Independent Multicast. */
#define
IPV6_RTHDR_TYPE_0 0
/* Option types and related macros */
#define IP6OPT_PAD1
0x00
/* 00 0 00000 */
#define IP6OPT_PADN
0x01
/* 00 0 00001 */
#define IP6OPT_JUMBO
0xC2
/* 11 0 00010 = 194 */
#define IP6OPT_JUMBO_LEN
6
#define IP6OPT_ROUTER_ALERT
0x05
/* 00 0 00101 */
#define IP6OPT_PAD1
0x00
/* 00 0 00000 */
#define IP6OPT_PADN
0x01
/* 00 0 00001 */
#define IP6OPT_JUMBO
0xC2
/* 11 0 00010 = 194 */
#define IP6OPT_JUMBO_LEN
6
#define IP6OPT_ROUTER_ALERT
0x05
/* 00 0 00101 */
#define IP6OPT_RTALERT_LEN
4
#define IP6OPT_RTALERT_MLD
0
/* Datagram contains an MLD message */
#define IP6OPT_RTALERT_RSVP
1
/* Datagram contains an RSVP message */
#define IP6OPT_RTALERT_ACTNET
2
/* contains an Active Networks msg */
#define IP6OPT_MINLEN
2
#define IP6OPT_RTALERT_LEN
4
#define IP6OPT_RTALERT_MLD
0
/* Datagram contains an MLD message */
#define IP6OPT_RTALERT_RSVP
1
/* Datagram contains an RSVP message */
#define IP6OPT_RTALERT_ACTNET
2
/* contains an Active Networks msg */
#define IP6OPT_MINLEN
2
#define IP6OPT_BINDING_UPDATE
0xc6
/* 11 0 00110 */
#define IP6OPT_BINDING_ACK
0x07
/* 00 0 00111 */
#define IP6OPT_BINDING_REQ
0x08
/* 00 0 01000 */
#define IP6OPT_HOME_ADDRESS
0xc9
/* 11 0 01001 */
#define IP6OPT_EID
0x8a
/* 10 0 01010 */
#define IP6OPT_BINDING_UPDATE
0xc6
/* 11 0 00110 */
#define IP6OPT_BINDING_ACK
0x07
/* 00 0 00111 */
#define IP6OPT_BINDING_REQ
0x08
/* 00 0 01000 */
#define IP6OPT_HOME_ADDRESS
0xc9
/* 11 0 01001 */
#define IP6OPT_EID
0x8a
/* 10 0 01010 */
#define IP6OPT_TYPE(o)
((o) & 0xC0)
#define IP6OPT_TYPE_SKIP
0x00
#define IP6OPT_TYPE_DISCARD
0x40
#define IP6OPT_TYPE_FORCEICMP
0x80
#define IP6OPT_TYPE_ICMP
0xC0
#define IP6OPT_TYPE(o)
((o) & 0xC0)
#define IP6OPT_TYPE_SKIP
0x00
#define IP6OPT_TYPE_DISCARD
0x40
#define IP6OPT_TYPE_FORCEICMP
0x80
#define IP6OPT_TYPE_ICMP
0xC0
#define IP6OPT_MUTABLE
0x20
#define IP6OPT_MUTABLE
0x20
#if defined(__MINGW32__) && defined(DEFINE_ADDITIONAL_IPV6_STUFF)
#ifndef EAI_ADDRFAMILY
struct
addrinfo
{
int
ai_flags
;
/* AI_PASSIVE, AI_CANONNAME */
int
ai_family
;
/* PF_xxx */
int
ai_socktype
;
/* SOCK_xxx */
int
ai_protocol
;
/* 0 or IPPROTO_xxx for IPv4 and IPv6 */
size_t
ai_addrlen
;
/* length of ai_addr */
char
*
ai_canonname
;
/* canonical name for hostname */
struct
sockaddr
*
ai_addr
;
/* binary address */
struct
addrinfo
*
ai_next
;
/* next structure in linked list */
int
ai_flags
;
/* AI_PASSIVE, AI_CANONNAME */
int
ai_family
;
/* PF_xxx */
int
ai_socktype
;
/* SOCK_xxx */
int
ai_protocol
;
/* 0 or IPPROTO_xxx for IPv4 and IPv6 */
size_t
ai_addrlen
;
/* length of ai_addr */
char
*
ai_canonname
;
/* canonical name for hostname */
struct
sockaddr
*
ai_addr
;
/* binary address */
struct
addrinfo
*
ai_next
;
/* next structure in linked list */
};
#endif
#endif
/* __MINGW32__ */
bsp/simulator/pcap/Include/pcap-bpf.h
浏览文件 @
e37abb2b
/*-
* Copyright (c) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997
*
The Regents of the University of California. All rights reserved.
*
The Regents of the University of California. All rights reserved.
*
* This code is derived from the Stanford/CMU enet packet filter,
* (net/enet.c) distributed as part of 4.3BSD, and code contributed
* to Berkeley by Steven McCanne and Van Jacobson both of Lawrence
* to Berkeley by Steven McCanne and Van Jacobson both of Lawrence
* Berkeley Laboratory.
*
* Redistribution and use in source and binary forms, with or without
...
...
bsp/simulator/pcap/Include/pcap-namedb.h
浏览文件 @
e37abb2b
/*
* Copyright (c) 1994, 1996
*
The Regents of the University of California. All rights reserved.
*
The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
...
...
@@ -12,8 +12,8 @@
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
*
This product includes software developed by the Computer Systems
*
Engineering Group at Lawrence Berkeley Laboratory.
*
This product includes software developed by the Computer Systems
*
Engineering Group at Lawrence Berkeley Laboratory.
* 4. Neither the name of the University nor of the Laboratory may be used
* to endorse or promote products derived from this software without
* specific prior written permission.
...
...
bsp/simulator/pcap/Include/pcap-stdinc.h
浏览文件 @
e37abb2b
...
...
@@ -39,7 +39,7 @@
#endif
/*
* Avoids a compiler warning in case this was already defined
* Avoids a compiler warning in case this was already defined
* (someone defined _WINSOCKAPI_ when including 'windows.h', in order
* to prevent it from including 'winsock.h')
*/
...
...
@@ -66,7 +66,7 @@
#define strdup _strdup
#endif
#define inline __inline
#define inline __inline
#ifdef __MINGW32__
#include <stdint.h>
...
...
@@ -88,6 +88,6 @@ typedef __int64 intptr_t;
typedef
_W64
int
intptr_t
;
#endif
#define _INTPTR_T_DEFINED
#endif
#endif
#endif
/*__MINGW32__*/
bsp/simulator/pcap/Include/pcap.h
浏览文件 @
e37abb2b
/*
* Copyright (c) 1993, 1994, 1995, 1996, 1997
*
The Regents of the University of California. All rights reserved.
*
The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
...
...
@@ -12,8 +12,8 @@
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
*
This product includes software developed by the Computer Systems
*
Engineering Group at Lawrence Berkeley Laboratory.
*
This product includes software developed by the Computer Systems
*
Engineering Group at Lawrence Berkeley Laboratory.
* 4. Neither the name of the University nor of the Laboratory may be used
* to endorse or promote products derived from this software without
* specific prior written permission.
...
...
bsp/simulator/pcap/Include/pcap/bluetooth.h
浏览文件 @
e37abb2b
...
...
@@ -11,8 +11,8 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote
* products derived from this software without specific prior written
* 3. The name of the author may not be used to endorse or promote
* products derived from this software without specific prior written
* permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
...
...
@@ -32,7 +32,7 @@
*
* @(#) $Header: /tcpdump/master/libpcap/pcap/bluetooth.h,v 1.1 2007/09/22 02:10:17 guy Exp $
*/
#ifndef _PCAP_BLUETOOTH_STRUCTS_H__
#define _PCAP_BLUETOOTH_STRUCTS_H__
...
...
@@ -41,7 +41,7 @@
* fields are in network byte order
*/
typedef
struct
_pcap_bluetooth_h4_header
{
u_int32_t
direction
;
/* if first bit is set direction is incoming */
u_int32_t
direction
;
/* if first bit is set direction is incoming */
}
pcap_bluetooth_h4_header
;
...
...
bsp/simulator/pcap/Include/pcap/bpf.h
浏览文件 @
e37abb2b
此差异已折叠。
点击以展开。
bsp/simulator/pcap/Include/pcap/namedb.h
浏览文件 @
e37abb2b
/*
* Copyright (c) 1994, 1996
*
The Regents of the University of California. All rights reserved.
*
The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
...
...
@@ -12,8 +12,8 @@
* documentation and/or other materials provided with the distribution.
* 3. All advertising materials mentioning features or use of this software
* must display the following acknowledgement:
*
This product includes software developed by the Computer Systems
*
Engineering Group at Lawrence Berkeley Laboratory.
*
This product includes software developed by the Computer Systems
*
Engineering Group at Lawrence Berkeley Laboratory.
* 4. Neither the name of the University nor of the Laboratory may be used
* to endorse or promote products derived from this software without
* specific prior written permission.
...
...
@@ -48,13 +48,13 @@ extern "C" {
* export these hooks since they'll
*/
struct
pcap_etherent
{
u_char
addr
[
6
];
char
name
[
122
];
u_char
addr
[
6
];
char
name
[
122
];
};
#ifndef PCAP_ETHERS_FILE
#define PCAP_ETHERS_FILE "/etc/ethers"
#endif
struct
pcap_etherent
*
pcap_next_etherent
(
FILE
*
);
struct
pcap_etherent
*
pcap_next_etherent
(
FILE
*
);
u_char
*
pcap_ether_hostton
(
const
char
*
);
u_char
*
pcap_ether_aton
(
const
char
*
);
...
...
@@ -64,23 +64,23 @@ struct addrinfo *pcap_nametoaddrinfo(const char *);
#endif
bpf_u_int32
pcap_nametonetaddr
(
const
char
*
);
int
pcap_nametoport
(
const
char
*
,
int
*
,
int
*
);
int
pcap_nametoportrange
(
const
char
*
,
int
*
,
int
*
,
int
*
);
int
pcap_nametoproto
(
const
char
*
);
int
pcap_nametoeproto
(
const
char
*
);
int
pcap_nametollc
(
const
char
*
);
int
pcap_nametoport
(
const
char
*
,
int
*
,
int
*
);
int
pcap_nametoportrange
(
const
char
*
,
int
*
,
int
*
,
int
*
);
int
pcap_nametoproto
(
const
char
*
);
int
pcap_nametoeproto
(
const
char
*
);
int
pcap_nametollc
(
const
char
*
);
/*
* If a protocol is unknown, PROTO_UNDEF is returned.
* Also, pcap_nametoport() returns the protocol along with the port number.
* If there are ambiguous entried in /etc/services (i.e. domain
* can be either tcp or udp) PROTO_UNDEF is returned.
*/
#define PROTO_UNDEF
-1
#define PROTO_UNDEF
-1
/* XXX move these to pcap-int.h? */
int
__pcap_atodn
(
const
char
*
,
bpf_u_int32
*
);
int
__pcap_atoin
(
const
char
*
,
bpf_u_int32
*
);
u_short
__pcap_nametodnaddr
(
const
char
*
);
u_short
__pcap_nametodnaddr
(
const
char
*
);
#ifdef __cplusplus
}
...
...
bsp/simulator/pcap/Include/pcap/pcap.h
浏览文件 @
e37abb2b
此差异已折叠。
点击以展开。
bsp/simulator/pcap/Include/pcap/sll.h
浏览文件 @
e37abb2b
/*-
* Copyright (c) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997
*
The Regents of the University of California. All rights reserved.
*
The Regents of the University of California. All rights reserved.
*
* This code is derived from the Stanford/CMU enet packet filter,
* (net/enet.c) distributed as part of 4.3BSD, and code contributed
...
...
@@ -42,22 +42,22 @@
* For captures on Linux cooked sockets, we construct a fake header
* that includes:
*
*
a 2-byte "packet type" which is one of:
*
a 2-byte "packet type" which is one of:
*
*
LINUX_SLL_HOST
packet was sent to us
*
LINUX_SLL_BROADCAST
packet was broadcast
*
LINUX_SLL_MULTICAST
packet was multicast
*
LINUX_SLL_OTHERHOST
packet was sent to somebody else
*
LINUX_SLL_OUTGOING
packet was sent *by* us;
*
LINUX_SLL_HOST
packet was sent to us
*
LINUX_SLL_BROADCAST
packet was broadcast
*
LINUX_SLL_MULTICAST
packet was multicast
*
LINUX_SLL_OTHERHOST
packet was sent to somebody else
*
LINUX_SLL_OUTGOING
packet was sent *by* us;
*
*
a 2-byte Ethernet protocol field;
*
a 2-byte Ethernet protocol field;
*
*
a 2-byte link-layer type;
*
a 2-byte link-layer type;
*
*
a 2-byte link-layer address length;
*
a 2-byte link-layer address length;
*
*
an 8-byte source link-layer address, whose actual length is
*
specified by the previous value.
*
an 8-byte source link-layer address, whose actual length is
*
specified by the previous value.
*
* All fields except for the link-layer address are in network byte order.
*
...
...
@@ -79,15 +79,15 @@
/*
* A DLT_LINUX_SLL fake link-layer header.
*/
#define SLL_HDR_LEN
16
/* total header length */
#define SLL_ADDRLEN
8
/* length of address field */
#define SLL_HDR_LEN
16
/* total header length */
#define SLL_ADDRLEN
8
/* length of address field */
struct
sll_header
{
u_int16_t
sll_pkttype
;
/* packet type */
u_int16_t
sll_hatype
;
/* link-layer address type */
u_int16_t
sll_halen
;
/* link-layer address length */
u_int8_t
sll_addr
[
SLL_ADDRLEN
];
/* link-layer address */
u_int16_t
sll_protocol
;
/* protocol */
u_int16_t
sll_pkttype
;
/* packet type */
u_int16_t
sll_hatype
;
/* link-layer address type */
u_int16_t
sll_halen
;
/* link-layer address length */
u_int8_t
sll_addr
[
SLL_ADDRLEN
];
/* link-layer address */
u_int16_t
sll_protocol
;
/* protocol */
};
/*
...
...
@@ -96,11 +96,11 @@ struct sll_header {
* available even on systems other than Linux, and so that they
* don't change even if the PACKET_ values change.
*/
#define LINUX_SLL_HOST
0
#define LINUX_SLL_BROADCAST
1
#define LINUX_SLL_MULTICAST
2
#define LINUX_SLL_OTHERHOST
3
#define LINUX_SLL_OUTGOING
4
#define LINUX_SLL_HOST
0
#define LINUX_SLL_BROADCAST
1
#define LINUX_SLL_MULTICAST
2
#define LINUX_SLL_OTHERHOST
3
#define LINUX_SLL_OUTGOING
4
/*
* The LINUX_SLL_ values for "sll_protocol"; these correspond to the
...
...
@@ -108,22 +108,22 @@ struct sll_header {
* available even on systems other than Linux. We assume, for now,
* that the ETH_P_ values won't change in Linux; if they do, then:
*
*
if we don't translate them in "pcap-linux.c", capture files
*
won't necessarily be readable if captured on a system that
*
defines ETH_P_ values that don't match these values;
*
if we don't translate them in "pcap-linux.c", capture files
*
won't necessarily be readable if captured on a system that
*
defines ETH_P_ values that don't match these values;
*
*
if we do translate them in "pcap-linux.c", that makes life
*
unpleasant for the BPF code generator, as the values you test
*
for in the kernel aren't the values that you test for when
*
reading a capture file, so the fixup code run on BPF programs
*
handed to the kernel ends up having to do more work.
*
if we do translate them in "pcap-linux.c", that makes life
*
unpleasant for the BPF code generator, as the values you test
*
for in the kernel aren't the values that you test for when
*
reading a capture file, so the fixup code run on BPF programs
*
handed to the kernel ends up having to do more work.
*
* Add other values here as necessary, for handling packet types that
* might show up on non-Ethernet, non-802.x networks. (Not all the ones
* in the Linux "if_ether.h" will, I suspect, actually show up in
* captures.)
*/
#define LINUX_SLL_P_802_3
0x0001
/* Novell 802.3 frames without 802.2 LLC header */
#define LINUX_SLL_P_802_2
0x0004
/* 802.2 frames (not D/I/X Ethernet) */
#define LINUX_SLL_P_802_3
0x0001
/* Novell 802.3 frames without 802.2 LLC header */
#define LINUX_SLL_P_802_2
0x0004
/* 802.2 frames (not D/I/X Ethernet) */
#endif
bsp/simulator/pcap/Include/pcap/usb.h
浏览文件 @
e37abb2b
...
...
@@ -11,8 +11,8 @@
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote
* products derived from this software without specific prior written
* 3. The name of the author may not be used to endorse or promote
* products derived from this software without specific prior written
* permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
...
...
@@ -32,11 +32,11 @@
*
* @(#) $Header: /tcpdump/master/libpcap/pcap/usb.h,v 1.6 2007/09/22 02:06:08 guy Exp $
*/
#ifndef _PCAP_USB_STRUCTS_H__
#define _PCAP_USB_STRUCTS_H__
/*
/*
* possible transfer mode
*/
#define URB_TRANSFER_IN 0x80
...
...
@@ -57,11 +57,11 @@
* Appears at the front of each packet in DLT_USB captures.
*/
typedef
struct
_usb_setup
{
u_int8_t
bmRequestType
;
u_int8_t
bRequest
;
u_int16_t
wValue
;
u_int16_t
wIndex
;
u_int16_t
wLength
;
u_int8_t
bmRequestType
;
u_int8_t
bRequest
;
u_int16_t
wValue
;
u_int16_t
wIndex
;
u_int16_t
wLength
;
}
pcap_usb_setup
;
...
...
@@ -70,20 +70,20 @@ typedef struct _usb_setup {
* Appears at the front of each packet in DLT_USB_LINUX captures.
*/
typedef
struct
_usb_header
{
u_int64_t
id
;
u_int8_t
event_type
;
u_int8_t
transfer_type
;
u_int8_t
endpoint_number
;
u_int8_t
device_address
;
u_int16_t
bus_id
;
char
setup_flag
;
/*if !=0 the urb setup header is not present*/
char
data_flag
;
/*if !=0 no urb data is present*/
int64_t
ts_sec
;
int32_t
ts_usec
;
int32_t
status
;
u_int32_t
urb_len
;
u_int32_t
data_len
;
/* amount of urb data really present in this event*/
pcap_usb_setup
setup
;
u_int64_t
id
;
u_int8_t
event_type
;
u_int8_t
transfer_type
;
u_int8_t
endpoint_number
;
u_int8_t
device_address
;
u_int16_t
bus_id
;
char
setup_flag
;
/*if !=0 the urb setup header is not present*/
char
data_flag
;
/*if !=0 no urb data is present*/
int64_t
ts_sec
;
int32_t
ts_usec
;
int32_t
status
;
u_int32_t
urb_len
;
u_int32_t
data_len
;
/* amount of urb data really present in this event*/
pcap_usb_setup
setup
;
}
pcap_usb_header
;
...
...
bsp/simulator/pcap/Include/pcap/vlan.h
浏览文件 @
e37abb2b
/*-
* Copyright (c) 1990, 1991, 1992, 1993, 1994, 1995, 1996, 1997
*
The Regents of the University of California. All rights reserved.
*
The Regents of the University of California. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
...
...
@@ -37,10 +37,10 @@
#define lib_pcap_vlan_h
struct
vlan_tag
{
u_int16_t
vlan_tpid
;
/* ETH_P_8021Q */
u_int16_t
vlan_tci
;
/* VLAN TCI */
u_int16_t
vlan_tpid
;
/* ETH_P_8021Q */
u_int16_t
vlan_tci
;
/* VLAN TCI */
};
#define VLAN_TAG_LEN
4
#define VLAN_TAG_LEN
4
#endif
bsp/simulator/pcap/Include/remote-ext.h
浏览文件 @
e37abb2b
此差异已折叠。
点击以展开。
bsp/simulator/pcap/pcap_netif.c
浏览文件 @
e37abb2b
此差异已折叠。
点击以展开。
bsp/simulator/rtconfig_project.h
浏览文件 @
e37abb2b
/*
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
*/
#ifndef RTCONFIG_PROJECT_H__
#define RTCONFIG_PROJECT_H__
...
...
@@ -10,7 +19,7 @@
#define _INC_TIME_INL //dfs_elm.c time.h conflicts with wtime.inl
/* disable some warning in MSC */
#pragma warning(disable:4273)
/* to ignore: warning C4273: inconsistent dll linkage */
#pragma warning(disable:4273)
/* to ignore: warning C4273: inconsistent dll linkage */
#pragma warning(disable:4312)
/* to ignore: warning C4312: 'type cast' : conversion from 'rt_uint32_t' to 'rt_uint32_t *' */
#pragma warning(disable:4311)
/* to ignore: warning C4311: 'type cast' : pointer truncation from 'short *__w64 ' to 'long' */
#pragma warning(disable:4996)
/* to ignore: warning C4996: The POSIX name for this item is deprecated. */
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录