From 97c0724b30c5192947cfff636f79e3b84d195418 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=8E=8B=E6=98=82?= <15606216810@163.com>
Date: Tue, 2 Aug 2022 17:05:20 +0800
Subject: [PATCH 1/8] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=9C=A8=E8=BF=9B?=
=?UTF-8?q?=E5=85=A5while=E5=90=8E=E8=BF=9E=E6=8E=A5=E6=96=AD=E5=BC=80?=
=?UTF-8?q?=E5=AF=BC=E8=87=B4while=E4=B8=8D=E9=80=80=E5=87=BA=E7=9A=84bug?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/mms/iso_mms/client/mms_client_connection.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/src/mms/iso_mms/client/mms_client_connection.c b/src/mms/iso_mms/client/mms_client_connection.c
index e1bb0039..4701626a 100644
--- a/src/mms/iso_mms/client/mms_client_connection.c
+++ b/src/mms/iso_mms/client/mms_client_connection.c
@@ -2077,6 +2077,8 @@ mmsClient_getNameList(MmsConnection self, MmsError *mmsError,
err = parameter.err;
list = parameter.nameList;
moreFollows = parameter.moreFollows;
+ } else {
+ moreFollows = false;
}
Semaphore_destroy(parameter.sem);
From 11d56abc341d78b6bb5968a65f566a8be068e265 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=8E=8B=E6=98=82?= <15606216810@163.com>
Date: Mon, 8 Aug 2022 08:47:29 +0800
Subject: [PATCH 2/8] =?UTF-8?q?=E6=B5=8B=E8=AF=95windows=E7=8E=AF=E5=A2=83?=
=?UTF-8?q?=E4=B8=8B=E8=AE=BE=E7=BD=AEsocket=E8=AF=BB=E5=86=99=E7=BC=93?=
=?UTF-8?q?=E5=86=B2=E5=8C=BA=E5=A4=A7=E5=B0=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
CMakeLists.txt.user | 271 ++++++++++++++++++++++++++++++++
config/stack_config.h | 9 ++
hal/socket/win32/socket_win32.c | 11 ++
3 files changed, 291 insertions(+)
create mode 100644 CMakeLists.txt.user
diff --git a/CMakeLists.txt.user b/CMakeLists.txt.user
new file mode 100644
index 00000000..84fe894f
--- /dev/null
+++ b/CMakeLists.txt.user
@@ -0,0 +1,271 @@
+
+
+
+
+
+ EnvironmentId
+ {7cd13185-8f0a-4828-a39b-a90c87177fdb}
+
+
+ ProjectExplorer.Project.ActiveTarget
+ 1
+
+
+ ProjectExplorer.Project.EditorSettings
+
+ true
+ false
+ true
+
+ Cpp
+
+ CppGlobal
+
+
+
+ QmlJS
+
+ QmlJSGlobal
+
+
+ 2
+ UTF-8
+ false
+ 4
+ false
+ 80
+ true
+ true
+ 1
+ false
+ true
+ false
+ 0
+ true
+ true
+ 0
+ 8
+ true
+ false
+ 2
+ true
+ true
+ true
+ *.md, *.MD, Makefile
+ false
+ true
+
+
+
+ ProjectExplorer.Project.PluginSettings
+
+
+ true
+ false
+ true
+ true
+ true
+ true
+
+
+ 0
+ true
+
+ true
+ true
+ Builtin.DefaultTidyAndClazy
+ 2
+
+
+
+ true
+
+
+
+
+ ProjectExplorer.Project.Target.0
+
+ Desktop
+ MinGW 32bit
+ MinGW 32bit
+ {322e3fa8-c77b-446b-a0db-2847debf3b82}
+ 0
+ 0
+ 0
+
+ MinSizeRel
+ -DCMAKE_GENERATOR:STRING=MinGW Makefiles
+-DCMAKE_BUILD_TYPE:STRING=MinSizeRel
+-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{IDE:ResourcePath}/package-manager/auto-setup.cmake
+-DCMAKE_CXX_COMPILER:STRING=%{Compiler:Executable:Cxx}
+-DCMAKE_C_COMPILER:STRING=%{Compiler:Executable:C}
+-DCMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}
+-DQT_QMAKE_EXECUTABLE:STRING=%{Qt:qmakeExecutable}
+ D:\Coding\C\iec61850\libiec61850_angwangiot\build-libiec61850-MinGW_32bit-MinSizeRel
+
+
+
+ all
+
+ true
+ Build
+ CMakeProjectManager.MakeStep
+
+ 1
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+
+ clean
+
+ true
+ Build
+ CMakeProjectManager.MakeStep
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ false
+
+ Minimum Size Release
+ CMakeProjectManager.CMakeBuildConfiguration
+
+ 1
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+
+ false
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+ true
+ true
+ true
+
+ 2
+
+ ProjectExplorer.CustomExecutableRunConfiguration
+
+ false
+ true
+ false
+ true
+
+ 1
+
+
+
+ ProjectExplorer.Project.Target.1
+
+ Desktop
+ MinGW 64bit
+ MinGW 64bit
+ {fcdd76d2-4a09-4fb7-ae7a-85dbdec0159b}
+ 0
+ 0
+ 0
+
+ MinSizeRel
+ -DCMAKE_GENERATOR:STRING=MinGW Makefiles
+-DCMAKE_BUILD_TYPE:STRING=MinSizeRel
+-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{IDE:ResourcePath}/package-manager/auto-setup.cmake
+-DQT_QMAKE_EXECUTABLE:STRING=%{Qt:qmakeExecutable}
+-DCMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}
+-DCMAKE_C_COMPILER:STRING=%{Compiler:Executable:C}
+-DCMAKE_CXX_COMPILER:STRING=%{Compiler:Executable:Cxx}
+ D:\Coding\C\iec61850\libiec61850_angwangiot\build-libiec61850-MinGW_64bit-MinSizeRel
+
+
+
+ all
+
+ true
+ Build
+ CMakeProjectManager.MakeStep
+
+ 1
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+
+ clean
+
+ true
+ Build
+ CMakeProjectManager.MakeStep
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ false
+
+ Minimum Size Release
+ CMakeProjectManager.CMakeBuildConfiguration
+
+ 1
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+
+ false
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+ true
+ true
+ true
+
+ 2
+
+ ProjectExplorer.CustomExecutableRunConfiguration
+
+ false
+ true
+ false
+ true
+
+ 1
+
+
+
+ ProjectExplorer.Project.TargetCount
+ 2
+
+
+ ProjectExplorer.Project.Updater.FileVersion
+ 22
+
+
+ Version
+ 22
+
+
diff --git a/config/stack_config.h b/config/stack_config.h
index 294eed17..bf89d264 100644
--- a/config/stack_config.h
+++ b/config/stack_config.h
@@ -53,6 +53,15 @@
/* number of concurrent MMS client connections the server accepts, -1 for no limit */
#define CONFIG_MAXIMUM_TCP_CLIENT_CONNECTIONS 100
+/* set socket buffer size. 1 -> enable */
+#define CONFIG_SET_SOCKET_BUFSIZE 0
+
+/* size (in KB) SOCKET RCVBUF */
+#define CONFIG_SOCKET_RCVBUFSIZE 512
+
+/* size (in KB) SOCKET SNDBUF */
+#define CONFIG_SOCKET_SNDBUFSIZE 512
+
/* activate TCP keep alive mechanism. 1 -> activate */
#define CONFIG_ACTIVATE_TCP_KEEPALIVE 1
diff --git a/hal/socket/win32/socket_win32.c b/hal/socket/win32/socket_win32.c
index 65be99d7..e8e81e60 100644
--- a/hal/socket/win32/socket_win32.c
+++ b/hal/socket/win32/socket_win32.c
@@ -160,6 +160,14 @@ setSocketNonBlocking(Socket self)
setsockopt(self->fd, IPPROTO_TCP, TCP_NODELAY, (const char*)&tcpNoDelay, sizeof(int));
}
+static void
+setSocketBufferSize(Socket self, int rcvBufSize, int sndBufSize)
+{
+ setsockopt(self->fd, SOL_SOCKET, SO_RCVBUF, (const char*)&rcvBufSize, sizeof(int));
+ setsockopt(self->fd, SOL_SOCKET, SO_SNDBUF, (const char*)&sndBufSize, sizeof(int));
+}
+
+
static bool
prepareAddress(const char *address, int port, struct sockaddr_in *sockaddr)
{
@@ -265,6 +273,7 @@ TcpServerSocket_create(const char* address, int port)
serverSocket->backLog = 10;
setSocketNonBlocking((Socket)serverSocket);
+ //setSocketBufferSize((Socket)serverSocket, 512*1024, 512*1024);
socketCount++;
}
@@ -296,6 +305,7 @@ ServerSocket_accept(ServerSocket self)
socketCount++;
setSocketNonBlocking(conSocket);
+ //setSocketBufferSize(conSocket, 512*1024, 512*1024);
if (DEBUG_SOCKET)
printf("WIN32_SOCKET: connection accepted\n");
@@ -413,6 +423,7 @@ Socket_connectAsync(Socket self, const char* address, int port)
return false;
setSocketNonBlocking(self);
+ //setSocketBufferSize(self, 512*1024, 512*1024);
if (connect(self->fd, (struct sockaddr *) &serverAddress, sizeof(serverAddress)) == SOCKET_ERROR) {
if (WSAGetLastError() != WSAEWOULDBLOCK) {
From bffe5acfca04205a96af1f9b49bb1a50e5e866d0 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=8E=8B=E6=98=82?= <15606216810@163.com>
Date: Mon, 8 Aug 2022 08:51:58 +0800
Subject: [PATCH 3/8] delete cmakelists
---
CMakeLists.txt.user | 271 --------------------------------------------
1 file changed, 271 deletions(-)
delete mode 100644 CMakeLists.txt.user
diff --git a/CMakeLists.txt.user b/CMakeLists.txt.user
deleted file mode 100644
index 84fe894f..00000000
--- a/CMakeLists.txt.user
+++ /dev/null
@@ -1,271 +0,0 @@
-
-
-
-
-
- EnvironmentId
- {7cd13185-8f0a-4828-a39b-a90c87177fdb}
-
-
- ProjectExplorer.Project.ActiveTarget
- 1
-
-
- ProjectExplorer.Project.EditorSettings
-
- true
- false
- true
-
- Cpp
-
- CppGlobal
-
-
-
- QmlJS
-
- QmlJSGlobal
-
-
- 2
- UTF-8
- false
- 4
- false
- 80
- true
- true
- 1
- false
- true
- false
- 0
- true
- true
- 0
- 8
- true
- false
- 2
- true
- true
- true
- *.md, *.MD, Makefile
- false
- true
-
-
-
- ProjectExplorer.Project.PluginSettings
-
-
- true
- false
- true
- true
- true
- true
-
-
- 0
- true
-
- true
- true
- Builtin.DefaultTidyAndClazy
- 2
-
-
-
- true
-
-
-
-
- ProjectExplorer.Project.Target.0
-
- Desktop
- MinGW 32bit
- MinGW 32bit
- {322e3fa8-c77b-446b-a0db-2847debf3b82}
- 0
- 0
- 0
-
- MinSizeRel
- -DCMAKE_GENERATOR:STRING=MinGW Makefiles
--DCMAKE_BUILD_TYPE:STRING=MinSizeRel
--DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{IDE:ResourcePath}/package-manager/auto-setup.cmake
--DCMAKE_CXX_COMPILER:STRING=%{Compiler:Executable:Cxx}
--DCMAKE_C_COMPILER:STRING=%{Compiler:Executable:C}
--DCMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}
--DQT_QMAKE_EXECUTABLE:STRING=%{Qt:qmakeExecutable}
- D:\Coding\C\iec61850\libiec61850_angwangiot\build-libiec61850-MinGW_32bit-MinSizeRel
-
-
-
- all
-
- true
- Build
- CMakeProjectManager.MakeStep
-
- 1
- Build
- Build
- ProjectExplorer.BuildSteps.Build
-
-
-
-
- clean
-
- true
- Build
- CMakeProjectManager.MakeStep
-
- 1
- Clean
- Clean
- ProjectExplorer.BuildSteps.Clean
-
- 2
- false
-
- false
-
- Minimum Size Release
- CMakeProjectManager.CMakeBuildConfiguration
-
- 1
-
-
- 0
- Deploy
- Deploy
- ProjectExplorer.BuildSteps.Deploy
-
- 1
-
- false
- ProjectExplorer.DefaultDeployConfiguration
-
- 1
-
- true
- true
- true
-
- 2
-
- ProjectExplorer.CustomExecutableRunConfiguration
-
- false
- true
- false
- true
-
- 1
-
-
-
- ProjectExplorer.Project.Target.1
-
- Desktop
- MinGW 64bit
- MinGW 64bit
- {fcdd76d2-4a09-4fb7-ae7a-85dbdec0159b}
- 0
- 0
- 0
-
- MinSizeRel
- -DCMAKE_GENERATOR:STRING=MinGW Makefiles
--DCMAKE_BUILD_TYPE:STRING=MinSizeRel
--DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{IDE:ResourcePath}/package-manager/auto-setup.cmake
--DQT_QMAKE_EXECUTABLE:STRING=%{Qt:qmakeExecutable}
--DCMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}
--DCMAKE_C_COMPILER:STRING=%{Compiler:Executable:C}
--DCMAKE_CXX_COMPILER:STRING=%{Compiler:Executable:Cxx}
- D:\Coding\C\iec61850\libiec61850_angwangiot\build-libiec61850-MinGW_64bit-MinSizeRel
-
-
-
- all
-
- true
- Build
- CMakeProjectManager.MakeStep
-
- 1
- Build
- Build
- ProjectExplorer.BuildSteps.Build
-
-
-
-
- clean
-
- true
- Build
- CMakeProjectManager.MakeStep
-
- 1
- Clean
- Clean
- ProjectExplorer.BuildSteps.Clean
-
- 2
- false
-
- false
-
- Minimum Size Release
- CMakeProjectManager.CMakeBuildConfiguration
-
- 1
-
-
- 0
- Deploy
- Deploy
- ProjectExplorer.BuildSteps.Deploy
-
- 1
-
- false
- ProjectExplorer.DefaultDeployConfiguration
-
- 1
-
- true
- true
- true
-
- 2
-
- ProjectExplorer.CustomExecutableRunConfiguration
-
- false
- true
- false
- true
-
- 1
-
-
-
- ProjectExplorer.Project.TargetCount
- 2
-
-
- ProjectExplorer.Project.Updater.FileVersion
- 22
-
-
- Version
- 22
-
-
From a9269ed83d0e5dad1deff8d53a2c3972bd786e53 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=8E=8B=E6=98=82?= <15606216810@163.com>
Date: Mon, 8 Aug 2022 08:59:16 +0800
Subject: [PATCH 4/8] =?UTF-8?q?=E8=B0=83=E6=95=B4=E9=BB=98=E8=AE=A4?=
=?UTF-8?q?=E7=9A=84stack=5Fconfig?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
config/stack_config.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/config/stack_config.h b/config/stack_config.h
index bf89d264..c92d18e1 100644
--- a/config/stack_config.h
+++ b/config/stack_config.h
@@ -51,7 +51,7 @@
#define CONFIG_MMS_THREADLESS_STACK 0
/* number of concurrent MMS client connections the server accepts, -1 for no limit */
-#define CONFIG_MAXIMUM_TCP_CLIENT_CONNECTIONS 100
+#define CONFIG_MAXIMUM_TCP_CLIENT_CONNECTIONS -1
/* set socket buffer size. 1 -> enable */
#define CONFIG_SET_SOCKET_BUFSIZE 0
@@ -66,10 +66,10 @@
#define CONFIG_ACTIVATE_TCP_KEEPALIVE 1
/* time (in s) between last message and first keepalive message */
-#define CONFIG_TCP_KEEPALIVE_IDLE 5
+#define CONFIG_TCP_KEEPALIVE_IDLE 20
/* time between subsequent keepalive messages if no ack received */
-#define CONFIG_TCP_KEEPALIVE_INTERVAL 2
+#define CONFIG_TCP_KEEPALIVE_INTERVAL 5
/* number of not missing keepalive responses until socket is considered dead */
#define CONFIG_TCP_KEEPALIVE_CNT 2
From b11539062bed40f2555b4b954843740d03a5b003 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=8E=8B=E6=98=82?= <15606216810@163.com>
Date: Mon, 8 Aug 2022 09:16:46 +0800
Subject: [PATCH 5/8] =?UTF-8?q?=E5=AE=8C=E5=96=84windows=E7=8E=AF=E5=A2=83?=
=?UTF-8?q?socket=E8=AF=BB=E5=86=99=E7=BC=93=E5=86=B2=E5=8C=BA=E9=85=8D?=
=?UTF-8?q?=E7=BD=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
hal/socket/win32/socket_win32.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/hal/socket/win32/socket_win32.c b/hal/socket/win32/socket_win32.c
index e8e81e60..65c99e74 100644
--- a/hal/socket/win32/socket_win32.c
+++ b/hal/socket/win32/socket_win32.c
@@ -273,7 +273,9 @@ TcpServerSocket_create(const char* address, int port)
serverSocket->backLog = 10;
setSocketNonBlocking((Socket)serverSocket);
- //setSocketBufferSize((Socket)serverSocket, 512*1024, 512*1024);
+
+ if(CONFIG_SET_SOCKET_BUFSIZE == 1)
+ setSocketBufferSize((Socket)serverSocket, CONFIG_SOCKET_RCVBUFSIZE*1024, CONFIG_SOCKET_SNDBUFSIZE*1024);
socketCount++;
}
@@ -305,7 +307,9 @@ ServerSocket_accept(ServerSocket self)
socketCount++;
setSocketNonBlocking(conSocket);
- //setSocketBufferSize(conSocket, 512*1024, 512*1024);
+
+ if(CONFIG_SET_SOCKET_BUFSIZE == 1)
+ setSocketBufferSize(conSocket, CONFIG_SOCKET_RCVBUFSIZE*1024, CONFIG_SOCKET_SNDBUFSIZE*1024);
if (DEBUG_SOCKET)
printf("WIN32_SOCKET: connection accepted\n");
@@ -423,7 +427,9 @@ Socket_connectAsync(Socket self, const char* address, int port)
return false;
setSocketNonBlocking(self);
- //setSocketBufferSize(self, 512*1024, 512*1024);
+
+ if(CONFIG_SET_SOCKET_BUFSIZE == 1)
+ setSocketBufferSize(self, CONFIG_SOCKET_RCVBUFSIZE*1024, CONFIG_SOCKET_SNDBUFSIZE*1024);
if (connect(self->fd, (struct sockaddr *) &serverAddress, sizeof(serverAddress)) == SOCKET_ERROR) {
if (WSAGetLastError() != WSAEWOULDBLOCK) {
From 9dabe1828aa58de1be9222dc10698aef59476f57 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=8E=8B=E6=98=82?= <15606216810@163.com>
Date: Mon, 8 Aug 2022 09:40:46 +0800
Subject: [PATCH 6/8] =?UTF-8?q?=E4=BF=AE=E6=94=B9socket=E7=BC=93=E5=AD=98?=
=?UTF-8?q?=E9=BB=98=E8=AE=A4=E9=85=8D=E7=BD=AE?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
config/stack_config.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/config/stack_config.h b/config/stack_config.h
index c92d18e1..37971942 100644
--- a/config/stack_config.h
+++ b/config/stack_config.h
@@ -54,13 +54,13 @@
#define CONFIG_MAXIMUM_TCP_CLIENT_CONNECTIONS -1
/* set socket buffer size. 1 -> enable */
-#define CONFIG_SET_SOCKET_BUFSIZE 0
+#define CONFIG_SET_SOCKET_BUFSIZE 1
/* size (in KB) SOCKET RCVBUF */
-#define CONFIG_SOCKET_RCVBUFSIZE 512
+#define CONFIG_SOCKET_RCVBUFSIZE 128
/* size (in KB) SOCKET SNDBUF */
-#define CONFIG_SOCKET_SNDBUFSIZE 512
+#define CONFIG_SOCKET_SNDBUFSIZE 128
/* activate TCP keep alive mechanism. 1 -> activate */
#define CONFIG_ACTIVATE_TCP_KEEPALIVE 1
From bf350fb14254303ffea2e142e32eca0ffa04f10e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=8E=8B=E6=98=82?= <15606216810@163.com>
Date: Mon, 8 Aug 2022 11:46:59 +0800
Subject: [PATCH 7/8] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dx86=E7=BC=96=E8=AF=91?=
=?UTF-8?q?=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
hal/socket/win32/socket_win32.c | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/hal/socket/win32/socket_win32.c b/hal/socket/win32/socket_win32.c
index 65c99e74..64e5180e 100644
--- a/hal/socket/win32/socket_win32.c
+++ b/hal/socket/win32/socket_win32.c
@@ -168,6 +168,25 @@ setSocketBufferSize(Socket self, int rcvBufSize, int sndBufSize)
}
+#ifdef __i386__
+const char*
+inet_ntop(int af, const void* src, char* dst, int cnt){
+
+ struct sockaddr_in srcaddr;
+
+ memset(&srcaddr, 0, sizeof(struct sockaddr_in));
+ memcpy(&(srcaddr.sin_addr), src, sizeof(srcaddr.sin_addr));
+
+ srcaddr.sin_family = af;
+ if (WSAAddressToString((struct sockaddr*) &srcaddr, sizeof(struct sockaddr_in), 0, dst, (LPDWORD) &cnt) != 0) {
+ DWORD rv = WSAGetLastError();
+ printf("WSAAddressToString() : %d\n",rv);
+ return NULL;
+ }
+ return dst;
+}
+#endif
+
static bool
prepareAddress(const char *address, int port, struct sockaddr_in *sockaddr)
{
From a4259125dc92314a66718bede80e5c13075b3a3b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E7=8E=8B=E6=98=82?= <15606216810@163.com>
Date: Mon, 8 Aug 2022 11:47:21 +0800
Subject: [PATCH 8/8] =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E9=BB=98=E8=AE=A4?=
=?UTF-8?q?=E7=9A=84cmake=5Fconfig?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
CMakeLists.txt.user | 273 ++++++++++++++++++++++++++++++++++++
config/stack_config.h.cmake | 13 +-
2 files changed, 284 insertions(+), 2 deletions(-)
create mode 100644 CMakeLists.txt.user
diff --git a/CMakeLists.txt.user b/CMakeLists.txt.user
new file mode 100644
index 00000000..f9b5c939
--- /dev/null
+++ b/CMakeLists.txt.user
@@ -0,0 +1,273 @@
+
+
+
+
+
+ EnvironmentId
+ {7cd13185-8f0a-4828-a39b-a90c87177fdb}
+
+
+ ProjectExplorer.Project.ActiveTarget
+ 0
+
+
+ ProjectExplorer.Project.EditorSettings
+
+ true
+ false
+ true
+
+ Cpp
+
+ CppGlobal
+
+
+
+ QmlJS
+
+ QmlJSGlobal
+
+
+ 2
+ UTF-8
+ false
+ 4
+ false
+ 80
+ true
+ true
+ 1
+ false
+ true
+ false
+ 0
+ true
+ true
+ 0
+ 8
+ true
+ false
+ 2
+ true
+ true
+ true
+ *.md, *.MD, Makefile
+ false
+ true
+
+
+
+ ProjectExplorer.Project.PluginSettings
+
+
+ true
+ false
+ true
+ true
+ true
+ true
+
+
+ 0
+ true
+
+ true
+ true
+ Builtin.DefaultTidyAndClazy
+ 2
+
+
+
+ true
+
+
+
+
+ ProjectExplorer.Project.Target.0
+
+ Desktop
+ MinGW 32bit
+ MinGW 32bit
+ {322e3fa8-c77b-446b-a0db-2847debf3b82}
+ 0
+ 0
+ 0
+
+ MinSizeRel
+ -DCMAKE_GENERATOR:STRING=MinGW Makefiles
+-DCMAKE_BUILD_TYPE:STRING=MinSizeRel
+-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{IDE:ResourcePath}/package-manager/auto-setup.cmake
+-DCMAKE_CXX_COMPILER:STRING=%{Compiler:Executable:Cxx}
+-DCMAKE_C_COMPILER:STRING=%{Compiler:Executable:C}
+-DCMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}
+-DQT_QMAKE_EXECUTABLE:STRING=%{Qt:qmakeExecutable}
+ D:/Coding/C/iec61850/libiec61850_angwangiot/libiec61850-build-MinGW_32bit-MinSizeRel
+
+
+
+ iec61850
+ iec61850-shared
+
+ true
+ Build
+ CMakeProjectManager.MakeStep
+
+ 1
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+
+ clean
+
+ true
+ Build
+ CMakeProjectManager.MakeStep
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ false
+
+ Minimum Size Release
+ CMakeProjectManager.CMakeBuildConfiguration
+
+ 1
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+
+ false
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+ true
+ true
+ true
+
+ 2
+
+ ProjectExplorer.CustomExecutableRunConfiguration
+
+ false
+ true
+ false
+ true
+
+ 1
+
+
+
+ ProjectExplorer.Project.Target.1
+
+ Desktop
+ MinGW 64bit
+ MinGW 64bit
+ {fcdd76d2-4a09-4fb7-ae7a-85dbdec0159b}
+ 0
+ 0
+ 0
+
+ MinSizeRel
+ -DCMAKE_GENERATOR:STRING=MinGW Makefiles
+-DCMAKE_BUILD_TYPE:STRING=MinSizeRel
+-DCMAKE_PROJECT_INCLUDE_BEFORE:FILEPATH=%{IDE:ResourcePath}/package-manager/auto-setup.cmake
+-DQT_QMAKE_EXECUTABLE:STRING=%{Qt:qmakeExecutable}
+-DCMAKE_PREFIX_PATH:STRING=%{Qt:QT_INSTALL_PREFIX}
+-DCMAKE_C_COMPILER:STRING=%{Compiler:Executable:C}
+-DCMAKE_CXX_COMPILER:STRING=%{Compiler:Executable:Cxx}
+ D:/Coding/C/iec61850/libiec61850_angwangiot/libiec61850-build-MinGW_64bit-MinSizeRel
+
+
+
+ iec61850
+ iec61850-shared
+
+ true
+ Build
+ CMakeProjectManager.MakeStep
+
+ 1
+ Build
+ Build
+ ProjectExplorer.BuildSteps.Build
+
+
+
+
+ clean
+
+ true
+ Build
+ CMakeProjectManager.MakeStep
+
+ 1
+ Clean
+ Clean
+ ProjectExplorer.BuildSteps.Clean
+
+ 2
+ false
+
+ false
+
+ Minimum Size Release
+ CMakeProjectManager.CMakeBuildConfiguration
+
+ 1
+
+
+ 0
+ Deploy
+ Deploy
+ ProjectExplorer.BuildSteps.Deploy
+
+ 1
+
+ false
+ ProjectExplorer.DefaultDeployConfiguration
+
+ 1
+
+ true
+ true
+ true
+
+ 2
+
+ ProjectExplorer.CustomExecutableRunConfiguration
+
+ false
+ true
+ false
+ true
+
+ 1
+
+
+
+ ProjectExplorer.Project.TargetCount
+ 2
+
+
+ ProjectExplorer.Project.Updater.FileVersion
+ 22
+
+
+ Version
+ 22
+
+
diff --git a/config/stack_config.h.cmake b/config/stack_config.h.cmake
index d3ef67b5..cebeef5e 100644
--- a/config/stack_config.h.cmake
+++ b/config/stack_config.h.cmake
@@ -48,14 +48,23 @@
/* number of concurrent MMS client connections the server accepts, -1 for no limit */
#cmakedefine CONFIG_MAXIMUM_TCP_CLIENT_CONNECTIONS @CONFIG_MAXIMUM_TCP_CLIENT_CONNECTIONS@
+/* set socket buffer size. 1 -> enable */
+#define CONFIG_SET_SOCKET_BUFSIZE 1
+
+/* size (in KB) SOCKET RCVBUF */
+#define CONFIG_SOCKET_RCVBUFSIZE 128
+
+/* size (in KB) SOCKET SNDBUF */
+#define CONFIG_SOCKET_SNDBUFSIZE 128
+
/* activate TCP keep alive mechanism. 1 -> activate */
#cmakedefine01 CONFIG_ACTIVATE_TCP_KEEPALIVE
/* time (in s) between last message and first keepalive message */
-#define CONFIG_TCP_KEEPALIVE_IDLE 5
+#define CONFIG_TCP_KEEPALIVE_IDLE 20
/* time between subsequent keepalive messages if no ack received */
-#define CONFIG_TCP_KEEPALIVE_INTERVAL 2
+#define CONFIG_TCP_KEEPALIVE_INTERVAL 5
/* number of not missing keepalive responses until socket is considered dead */
#define CONFIG_TCP_KEEPALIVE_CNT 2