1
0
mirror of https://github.com/SoftEtherVPN/SoftEtherVPN.git synced 2026-04-20 05:49:26 +03:00

v4.23-9647-beta

This commit is contained in:
dnobori
2017-10-18 18:24:21 +09:00
parent acf49ad536
commit faee11ff09
301 changed files with 1695 additions and 2645 deletions
+25 -10
View File
@@ -6,7 +6,7 @@ AUTHORS OF SOFTETHER VPN
CORE DEVELOPERS: CORE DEVELOPERS:
- Daiyuu Nobori - Daiyuu Nobori, Ph.D.
Computer Science, Graduate School of University of Tsukuba Computer Science, Graduate School of University of Tsukuba
SoftEther Corporation SoftEther Corporation
E-mail: daiyuu-nobori [at] softether.org E-mail: daiyuu-nobori [at] softether.org
@@ -18,16 +18,16 @@ CORE DEVELOPERS:
Risk Engineering, Graduate School of University of Tsukuba Risk Engineering, Graduate School of University of Tsukuba
SoftEther Corporation SoftEther Corporation
- Takao Ito - Takao Ito, Ph.D.
Computer Science, Graduate School of University of Tsukuba Computer Science, Graduate School of University of Tsukuba
SoftEther Corporation SoftEther Corporation
- Mei Sharie Ann Yamaguchi, Ph.D.
Life and Environmental Sciences, Graduate School of University of Tsukuba
- Christopher Smith - Christopher Smith
College of Information Science, University of Tsukuba College of Information Science, University of Tsukuba
- Mei Sharie Ann Yamaguchi
Life and Environmental Sciences, Graduate School of University of Tsukuba
WEB-SITE DESIGNER: WEB-SITE DESIGNER:
@@ -118,6 +118,26 @@ CONTRIBUTORS on GitHub:
- Sacha Bernstein - Sacha Bernstein
https://github.com/sacha https://github.com/sacha
- cm0x4D
https://github.com/cm0x4D
- DDGo
https://github.com/DDGo
- Noah O'Donoghue
https://github.com/NoahO
- Moataz Elmasry
https://github.com/moatazelmasry2
- Zulyandri Zardi
https://github.com/zulzardi
- rel22
https://github.com/rel22
- Guanzhong Chen
https://github.com/quantum5
JOIN THE SOFTETHER VPN DEVELOPMENT JOIN THE SOFTETHER VPN DEVELOPMENT
---------------------------------- ----------------------------------
@@ -127,8 +147,3 @@ Want to become a contributor? Please send us a patch.
See also: SoftEther VPN Patch Acceptance Policy See also: SoftEther VPN Patch Acceptance Policy
http://www.softether.org/5-download/src/9.patch http://www.softether.org/5-download/src/9.patch
Developed by SoftEther VPN Project at University of Tsukuba in Japan.
Department of Computer Science has dozens of overly-enthusiastic geeks.
Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -3
View File
@@ -3,9 +3,9 @@ open-source. You can redistribute them and/or modify them under the terms of
the GNU General Public License version 2 as published by the Free Software the GNU General Public License version 2 as published by the Free Software
Foundation. Foundation.
Copyright (c) 2012-2016 Daiyuu Nobori. Copyright (c) Daiyuu Nobori.
Copyright (c) 2012-2016 SoftEther Project at University of Tsukuba, Japan. Copyright (c) SoftEther Project at University of Tsukuba, Japan.
Copyright (c) 2012-2016 SoftEther Corporation. Copyright (c) SoftEther Corporation.
All Rights Reserved. All Rights Reserved.
http://www.softether.org/ http://www.softether.org/
+3 -3
View File
@@ -3,9 +3,9 @@ open-source. You can redistribute them and/or modify them under the terms of
the GNU General Public License version 2 as published by the Free Software the GNU General Public License version 2 as published by the Free Software
Foundation. Foundation.
Copyright (c) 2012-2016 Daiyuu Nobori. Copyright (c) Daiyuu Nobori.
Copyright (c) 2012-2016 SoftEther Project at University of Tsukuba, Japan. Copyright (c) SoftEther Project at University of Tsukuba, Japan.
Copyright (c) 2012-2016 SoftEther Corporation. Copyright (c) SoftEther Corporation.
All Rights Reserved. All Rights Reserved.
http://www.softether.org/ http://www.softether.org/
+1 -23
View File
@@ -10,7 +10,7 @@ http://www.softether-download.com/
We accept your patches by the acceptance policy: We accept your patches by the acceptance policy:
http://www.softether.org/5-download/src/9.patch http://www.softether.org/5-download/src/9.patch
Copyright (c) 2012-2016 SoftEther Project at University of Tsukuba, Japan. Copyright (c) SoftEther Project at University of Tsukuba, Japan.
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License version 2 it under the terms of the GNU General Public License version 2
@@ -123,24 +123,9 @@ on all the following open-source repositories:
- GitHub - GitHub
https://github.com/SoftEtherVPN/SoftEtherVPN/ https://github.com/SoftEtherVPN/SoftEtherVPN/
- SourceForge
https://sourceforge.net/p/softethervpn/code/ci/master/tree/
- Google Code
https://code.google.com/p/softether/source/browse/
To fetch the source code from GitHub: To fetch the source code from GitHub:
$ git clone https://github.com/SoftEtherVPN/SoftEtherVPN.git $ git clone https://github.com/SoftEtherVPN/SoftEtherVPN.git
To fetch the source code from SourceForge:
$ git clone http://git.code.sf.net/p/softethervpn/code
- or -
$ git clone git://git.code.sf.net/p/softethervpn/code
To fetch the source code from Google Code:
$ git clone https://code.google.com/p/softether/
We hope that you can reach one of the above URLs at least! We hope that you can reach one of the above URLs at least!
@@ -218,10 +203,3 @@ SOME SOFTWARE PROGRAMS FROM THIRD PARTIES ARE INCLUDED ON THIS SOFTWARE
WITH LICENSE CONDITIONS WHICH ARE DESCRIBED ON THE 'THIRD_PARTY.TXT' FILE. WITH LICENSE CONDITIONS WHICH ARE DESCRIBED ON THE 'THIRD_PARTY.TXT' FILE.
ADVERTISEMENT
-------------
SoftEther VPN is developed by SoftEther VPN Project at University of Tsukuba.
Department of Computer Science has dozens of overly-enthusiastic geeks.
Join us: http://www.tsukuba.ac.jp/english/admission/
+1 -23
View File
@@ -10,7 +10,7 @@ http://www.softether-download.com/
We accept your patches by the acceptance policy: We accept your patches by the acceptance policy:
http://www.softether.org/5-download/src/9.patch http://www.softether.org/5-download/src/9.patch
Copyright (c) 2012-2016 SoftEther Project at University of Tsukuba, Japan. Copyright (c) SoftEther Project at University of Tsukuba, Japan.
This program is free software; you can redistribute it and/or modify This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License version 2 it under the terms of the GNU General Public License version 2
@@ -123,24 +123,9 @@ on all the following open-source repositories:
- GitHub - GitHub
https://github.com/SoftEtherVPN/SoftEtherVPN/ https://github.com/SoftEtherVPN/SoftEtherVPN/
- SourceForge
https://sourceforge.net/p/softethervpn/code/ci/master/tree/
- Google Code
https://code.google.com/p/softether/source/browse/
To fetch the source code from GitHub: To fetch the source code from GitHub:
$ git clone https://github.com/SoftEtherVPN/SoftEtherVPN.git $ git clone https://github.com/SoftEtherVPN/SoftEtherVPN.git
To fetch the source code from SourceForge:
$ git clone http://git.code.sf.net/p/softethervpn/code
- or -
$ git clone git://git.code.sf.net/p/softethervpn/code
To fetch the source code from Google Code:
$ git clone https://code.google.com/p/softether/
We hope that you can reach one of the above URLs at least! We hope that you can reach one of the above URLs at least!
@@ -218,10 +203,3 @@ SOME SOFTWARE PROGRAMS FROM THIRD PARTIES ARE INCLUDED ON THIS SOFTWARE
WITH LICENSE CONDITIONS WHICH ARE DESCRIBED ON THE 'THIRD_PARTY.TXT' FILE. WITH LICENSE CONDITIONS WHICH ARE DESCRIBED ON THE 'THIRD_PARTY.TXT' FILE.
ADVERTISEMENT
-------------
SoftEther VPN is developed by SoftEther VPN Project at University of Tsukuba.
Department of Computer Science has dozens of overly-enthusiastic geeks.
Join us: http://www.tsukuba.ac.jp/english/admission/
+2 -2
View File
@@ -1,7 +1,7 @@
# SoftEther VPN Source Code # SoftEther VPN Source Code
# #
# Copyright (c) 2012-2016 SoftEther VPN Project at University of Tsukuba, Japan. # Copyright (c) SoftEther VPN Project at University of Tsukuba, Japan.
# Copyright (c) 2012-2016 Daiyuu Nobori. # Copyright (c) Daiyuu Nobori.
# All Rights Reserved. # All Rights Reserved.
# #
# http://www.softether.org/ # http://www.softether.org/
+2 -2
View File
@@ -1,7 +1,7 @@
# SoftEther VPN Source Code # SoftEther VPN Source Code
# #
# Copyright (c) 2012-2016 SoftEther VPN Project at University of Tsukuba, Japan. # Copyright (c) SoftEther VPN Project at University of Tsukuba, Japan.
# Copyright (c) 2012-2016 Daiyuu Nobori. # Copyright (c) Daiyuu Nobori.
# All Rights Reserved. # All Rights Reserved.
# #
# http://www.softether.org/ # http://www.softether.org/
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -1346,7 +1346,3 @@ namespace BuildUtil
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -217,7 +217,3 @@ namespace BuildUtil
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -299,7 +299,3 @@ namespace BuildUtil
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -212,7 +212,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -697,7 +697,3 @@ namespace CoreUtil
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -344,7 +344,3 @@ namespace CoreUtil
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -206,7 +206,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -2204,7 +2204,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -521,7 +521,3 @@ namespace CoreUtil
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -596,7 +596,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -1726,7 +1726,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -257,7 +257,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -194,7 +194,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -963,7 +963,3 @@ public class MultiLanguageFilterStream : Stream
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -226,7 +226,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -249,7 +249,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -330,7 +330,3 @@ namespace CoreUtil
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -561,7 +561,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -1053,7 +1053,3 @@ namespace CoreUtil
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -376,7 +376,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -4401,7 +4401,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -454,7 +454,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -566,7 +566,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -198,7 +198,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -1058,7 +1058,3 @@ namespace CoreUtil
public string XsdFileName; public string XsdFileName;
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -327,7 +327,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -506,7 +506,3 @@ namespace CoreUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -255,7 +255,3 @@ namespace BuildUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -1073,7 +1073,3 @@ namespace BuildUtil.Properties {
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
-4
View File
@@ -139,7 +139,3 @@ namespace BuildUtil.Properties {
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -143,7 +143,3 @@ namespace BuildUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -1082,7 +1082,3 @@ namespace BuildUtil
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -689,7 +689,3 @@ namespace BuildUtil
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -564,7 +564,3 @@ namespace BuildUtil
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -327,7 +327,3 @@ namespace BuildUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
@@ -375,6 +375,3 @@ namespace BuildUtil.HvSignService {
} }
#pragma warning restore 1591 #pragma warning restore 1591
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
@@ -306,6 +306,3 @@ namespace BuildUtil.SignService {
} }
#pragma warning restore 1591 #pragma warning restore 1591
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -184,7 +184,3 @@ namespace BuildUtil
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -1448,7 +1448,3 @@ namespace BuildUtil
} }
} }
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -1448,7 +1448,3 @@ int CompareUserName(void *p1, void *p2)
return StrCmpi(u1->Name, u2->Name); return StrCmpi(u1->Name, u2->Name);
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -317,7 +317,3 @@ char *NormalizePolicyName(char *name);
#endif // ACCOUNT_H #endif // ACCOUNT_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+4 -8
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -6739,7 +6739,7 @@ UINT StAddCa(ADMIN *a, RPC_HUB_ADD_CA *t)
if (t->Cert == NULL) if (t->Cert == NULL)
{ {
ERR_INVALID_PARAMETER; return ERR_INVALID_PARAMETER;
} }
if (t->Cert->is_compatible_bit == false) if (t->Cert->is_compatible_bit == false)
@@ -13907,7 +13907,3 @@ bool SiIsEmptyPassword(void *hash_password)
return false; return false;
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -1533,7 +1533,3 @@ void OutRpcInternetSetting(PACK *p, INTERNET_SETTING *t);
#endif // ADMIN_H #endif // ADMIN_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -683,7 +683,3 @@ AZURE_CLIENT *NewAzureClient(CEDAR *cedar, SERVER *server)
return ac; return ac;
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -173,7 +173,3 @@ void AcWaitForRequest(AZURE_CLIENT *ac, SOCK *s, AZURE_PARAM *param);
#endif // AZURE_CLIENT_H #endif // AZURE_CLIENT_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -114,7 +114,3 @@
#include "CedarPch.h" #include "CedarPch.h"
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -118,7 +118,3 @@
#endif // AZURE_SERVER_H #endif // AZURE_SERVER_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -566,7 +566,3 @@ bool IsRawIpBridgeSupported()
#endif // UNIX_LINUX #endif // UNIX_LINUX
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -180,7 +180,3 @@ bool IsRawIpBridgeSupported();
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -2808,7 +2808,3 @@ void EthPutPacketLinuxIpRaw(ETH *e, void *data, UINT size)
#endif // BRIDGE_C #endif // BRIDGE_C
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -238,7 +238,3 @@ int UnixEthOpenRawSocket();
#endif // BRIDGEUNIX_H #endif // BRIDGEUNIX_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -2243,7 +2243,3 @@ void GetEthNetworkConnectionName(wchar_t *dst, UINT size, char *device_name)
#endif // BRIDGE_C #endif // BRIDGE_C
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -266,7 +266,3 @@ bool Win32GetEnableSeLow();
#endif // BRIDGEWIN32_H #endif // BRIDGEWIN32_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -12526,7 +12526,3 @@ void *CmUpdateJumpList(UINT start_id)
#endif // WIN32 #endif // WIN32
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -156,7 +156,3 @@ UINT CmGetSecureBitmapId(char *dest_hostname);
#endif // CM_H #endif // CM_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -639,7 +639,3 @@ bool CmGetProxyServerNameAndPortFromIeProxyRegStr(char *name, UINT name_size, UI
void *CmUpdateJumpList(UINT start_id); void *CmUpdateJumpList(UINT start_id);
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -1914,7 +1914,3 @@ void FreeCedar()
FreeProtocol(); FreeProtocol();
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+12 -16
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -135,10 +135,10 @@
// Version number // Version number
#define CEDAR_VER 422 #define CEDAR_VER 423
// Build Number // Build Number
#define CEDAR_BUILD 9634 #define CEDAR_BUILD 9647
// Beta number // Beta number
//#define BETA_NUMBER 3 //#define BETA_NUMBER 3
@@ -153,16 +153,16 @@
// Specify the location to build // Specify the location to build
#ifndef BUILD_PLACE #ifndef BUILD_PLACE
#define BUILD_PLACE "pc30" #define BUILD_PLACE "pc33"
#endif // BUILD_PLACE #endif // BUILD_PLACE
// Specifies the build date // Specifies the build date
#define BUILD_DATE_Y 2016 #define BUILD_DATE_Y 2017
#define BUILD_DATE_M 11 #define BUILD_DATE_M 10
#define BUILD_DATE_D 27 #define BUILD_DATE_D 18
#define BUILD_DATE_HO 14 #define BUILD_DATE_HO 16
#define BUILD_DATE_MI 33 #define BUILD_DATE_MI 30
#define BUILD_DATE_SE 59 #define BUILD_DATE_SE 44
// Tolerable time difference // Tolerable time difference
#define ALLOW_TIMESTAMP_DIFF (UINT64)(3 * 24 * 60 * 60 * 1000) #define ALLOW_TIMESTAMP_DIFF (UINT64)(3 * 24 * 60 * 60 * 1000)
@@ -1265,7 +1265,3 @@ bool CedarIsThereAnyEapEnabledRadiusConfig(CEDAR *c);
#endif // CEDAR_H #endif // CEDAR_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -113,7 +113,3 @@
#include "CedarPch.h" #include "CedarPch.h"
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -124,7 +124,3 @@
#include <Mayaqua/Mayaqua.h> #include <Mayaqua/Mayaqua.h>
#include <Cedar/Cedar.h> #include <Cedar/Cedar.h>
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+5 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -538,6 +538,8 @@ typedef struct CTC CTC;
typedef struct CTR CTR; typedef struct CTR CTR;
typedef struct TTC TTC; typedef struct TTC TTC;
typedef struct TTS TTS; typedef struct TTS TTS;
typedef struct TTS_WORKER TTS_WORKER;
typedef struct TTC_WORKER TTC_WORKER;
typedef struct TT_RESULT TT_RESULT; typedef struct TT_RESULT TT_RESULT;
typedef struct TTS_SOCK TTS_SOCK; typedef struct TTS_SOCK TTS_SOCK;
typedef struct TTC_SOCK TTC_SOCK; typedef struct TTC_SOCK TTC_SOCK;
@@ -763,7 +765,3 @@ typedef struct SU_ADAPTER_LIST SU_ADAPTER_LIST;
#endif // CEDARTYPE_H #endif // CEDARTYPE_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -11112,7 +11112,3 @@ void CiClientStatusPrinter(SESSION *s, wchar_t *status)
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -878,7 +878,3 @@ void CiInitDriverVerStruct(MS_DRIVER_VER *ver);
#endif // CLIENT_H #endif // CLIENT_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+333 -183
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -1166,6 +1166,7 @@ void TtGenerateRandomData(UCHAR **buf, UINT *size)
void TtsWorkerThread(THREAD *thread, void *param) void TtsWorkerThread(THREAD *thread, void *param)
{ {
TTS *tts; TTS *tts;
TTS_WORKER *w;
UINT buf_size; UINT buf_size;
UCHAR *send_buf_data, *recv_buf_data; UCHAR *send_buf_data, *recv_buf_data;
bool all_sockets_blocked = false; bool all_sockets_blocked = false;
@@ -1185,14 +1186,15 @@ void TtsWorkerThread(THREAD *thread, void *param)
TtGenerateRandomData(&send_buf_data, &buf_size); TtGenerateRandomData(&send_buf_data, &buf_size);
TtGenerateRandomData(&recv_buf_data, &buf_size); TtGenerateRandomData(&recv_buf_data, &buf_size);
tts = (TTS *)param; w = (TTS_WORKER *)param;
tts = (TTS *)w->Tts;
// Preparation of socket events // Preparation of socket events
tts->SockEvent = NewSockEvent(); w->SockEvent = NewSockEvent();
AddRef(tts->SockEvent->ref); AddRef(w->SockEvent->ref);
// Preparing the Server socket list // Preparing the Server socket list
tts->TtsSockList = NewList(NULL); w->TtsSockList = NewList(NULL);
// Notify completion of preparation to parent thread // Notify completion of preparation to parent thread
NoticeThreadInit(thread); NoticeThreadInit(thread);
@@ -1206,12 +1208,12 @@ void TtsWorkerThread(THREAD *thread, void *param)
// Wait for all sockets // Wait for all sockets
if (dont_block_next_time == false) if (dont_block_next_time == false)
{ {
WaitSockEvent(tts->SockEvent, 50); WaitSockEvent(w->SockEvent, 50);
} }
dont_block_next_time = false; dont_block_next_time = false;
// Process for sockets that are currently registered // Process for sockets that are currently registered
LockList(tts->TtsSockList); LockList(w->TtsSockList);
{ {
UINT i; UINT i;
@@ -1223,17 +1225,17 @@ void TtsWorkerThread(THREAD *thread, void *param)
{ {
all_sockets_blocked = true; all_sockets_blocked = true;
for (i = 0;i < LIST_NUM(tts->TtsSockList);i++) for (i = 0;i < LIST_NUM(w->TtsSockList);i++)
{ {
UINT ret = SOCK_LATER; UINT ret = SOCK_LATER;
UCHAR *send_data = NULL, *recv_data = NULL; UCHAR *send_data = NULL, *recv_data = NULL;
UINT send_size = 0, recv_size = 0; UINT send_size = 0, recv_size = 0;
TTS_SOCK *ts = LIST_DATA(tts->TtsSockList, i); TTS_SOCK *ts = LIST_DATA(w->TtsSockList, i);
bool blocked_for_this_socket = false; bool blocked_for_this_socket = false;
if (ts->SockJoined == false) if (ts->SockJoined == false)
{ {
JoinSockToSockEvent(ts->Sock, tts->SockEvent); JoinSockToSockEvent(ts->Sock, w->SockEvent);
ts->SockJoined = true; ts->SockJoined = true;
} }
@@ -1396,9 +1398,9 @@ void TtsWorkerThread(THREAD *thread, void *param)
{ {
// Not to send more data to the socket of the // Not to send more data to the socket of the
// transmission direction in the same session ID // transmission direction in the same session ID
for (j = 0;j < LIST_NUM(tts->TtsSockList);j++) for (j = 0;j < LIST_NUM(w->TtsSockList);j++)
{ {
TTS_SOCK *ts2 = LIST_DATA(tts->TtsSockList, j); TTS_SOCK *ts2 = LIST_DATA(w->TtsSockList, j);
if (ts2->SessionId == ts->SessionId && if (ts2->SessionId == ts->SessionId &&
ts2 != ts) ts2 != ts)
@@ -1457,7 +1459,7 @@ void TtsWorkerThread(THREAD *thread, void *param)
Disconnect(ts->Sock); Disconnect(ts->Sock);
ReleaseSock(ts->Sock); ReleaseSock(ts->Sock);
Delete(tts->TtsSockList, ts); Delete(w->TtsSockList, ts);
Free(ts); Free(ts);
} }
@@ -1465,23 +1467,23 @@ void TtsWorkerThread(THREAD *thread, void *param)
DeleteAll(o); DeleteAll(o);
} }
if (tts->NewSocketArrived || tts->Halt) if (w->NewSocketArrived || tts->Halt)
{ {
tts->NewSocketArrived = false; w->NewSocketArrived = false;
all_sockets_blocked = true; all_sockets_blocked = true;
dont_block_next_time = true; dont_block_next_time = true;
} }
} }
} }
UnlockList(tts->TtsSockList); UnlockList(w->TtsSockList);
} }
LockList(tts->TtsSockList); LockList(w->TtsSockList);
{ {
// Release the sockets of all remaining // Release the sockets of all remaining
for (i = 0;i < LIST_NUM(tts->TtsSockList);i++) for (i = 0;i < LIST_NUM(w->TtsSockList);i++)
{ {
TTS_SOCK *ts = LIST_DATA(tts->TtsSockList, i); TTS_SOCK *ts = LIST_DATA(w->TtsSockList, i);
UniFormat(tmp, sizeof(tmp), _UU("TTS_DISCONNECT"), ts->Id, ts->Sock->RemoteHostname); UniFormat(tmp, sizeof(tmp), _UU("TTS_DISCONNECT"), ts->Id, ts->Sock->RemoteHostname);
TtPrint(tts->Param, tts->Print, tmp); TtPrint(tts->Param, tts->Print, tmp);
@@ -1492,12 +1494,12 @@ void TtsWorkerThread(THREAD *thread, void *param)
Free(ts); Free(ts);
} }
} }
UnlockList(tts->TtsSockList); UnlockList(w->TtsSockList);
// Cleanup // Cleanup
ReleaseList(o); ReleaseList(o);
ReleaseList(tts->TtsSockList); ReleaseList(w->TtsSockList);
ReleaseSockEvent(tts->SockEvent); ReleaseSockEvent(w->SockEvent);
Free(send_buf_data); Free(send_buf_data);
Free(recv_buf_data); Free(recv_buf_data);
} }
@@ -1519,6 +1521,7 @@ void TtsIPv6AcceptThread(THREAD *thread, void *param)
void TtsAcceptProc(TTS *tts, SOCK *listen_socket) void TtsAcceptProc(TTS *tts, SOCK *listen_socket)
{ {
wchar_t tmp[MAX_SIZE]; wchar_t tmp[MAX_SIZE];
UINT seed = 0;
// Validate arguments // Validate arguments
if (tts == NULL || listen_socket == NULL) if (tts == NULL || listen_socket == NULL)
{ {
@@ -1541,10 +1544,23 @@ void TtsAcceptProc(TTS *tts, SOCK *listen_socket)
} }
else else
{ {
UINT num, i;
TTS_WORKER *w;
// Connected from the client // Connected from the client
AcceptInitEx(s, true); AcceptInitEx(s, true);
tts->NewSocketArrived = true;
LockList(tts->TtsSockList); // Choose a worker thread
num = LIST_NUM(tts->WorkerList);
i = seed % num;
seed++;
w = LIST_DATA(tts->WorkerList, i);
w->NewSocketArrived = true;
LockList(w->TtsSockList);
{ {
TTS_SOCK *ts = ZeroMalloc(sizeof(TTS_SOCK)); TTS_SOCK *ts = ZeroMalloc(sizeof(TTS_SOCK));
@@ -1558,12 +1574,12 @@ void TtsAcceptProc(TTS *tts, SOCK *listen_socket)
s->RemoteHostname, s->RemotePort); s->RemoteHostname, s->RemotePort);
TtPrint(tts->Param, tts->Print, tmp); TtPrint(tts->Param, tts->Print, tmp);
Insert(tts->TtsSockList, ts); Insert(w->TtsSockList, ts);
tts->NewSocketArrived = true; w->NewSocketArrived = true;
} }
UnlockList(tts->TtsSockList); UnlockList(w->TtsSockList);
SetSockEvent(tts->SockEvent); SetSockEvent(w->SockEvent);
} }
} }
} }
@@ -1598,6 +1614,8 @@ void TtsListenThread(THREAD *thread, void *param)
} }
else else
{ {
UINT i, num_worker_threads;
UniFormat(tmp, sizeof(tmp), _UU("TTS_LISTEN_STARTED"), tts->Port); UniFormat(tmp, sizeof(tmp), _UU("TTS_LISTEN_STARTED"), tts->Port);
TtPrint(tts->Param, tts->Print, tmp); TtPrint(tts->Param, tts->Print, tmp);
@@ -1621,9 +1639,19 @@ void TtsListenThread(THREAD *thread, void *param)
AddRef(tts->ListenSocketV6->ref); AddRef(tts->ListenSocketV6->ref);
} }
// Start the worker thread num_worker_threads = GetNumberOfCpu();
tts->WorkThread = NewThread(TtsWorkerThread, tts);
WaitThreadInit(tts->WorkThread); // Start the worker threads
for (i = 0;i < num_worker_threads;i++)
{
TTS_WORKER *w = ZeroMalloc(sizeof(TTS_WORKER));
w->Tts = tts;
w->WorkThread = NewThread(TtsWorkerThread, w);
WaitThreadInit(w->WorkThread);
Add(tts->WorkerList, w);
}
// Notify completion of preparation to parent thread // Notify completion of preparation to parent thread
NoticeThreadInit(thread); NoticeThreadInit(thread);
@@ -1647,12 +1675,20 @@ void TtsListenThread(THREAD *thread, void *param)
ReleaseSock(tts->ListenSocket); ReleaseSock(tts->ListenSocket);
ReleaseSock(tts->ListenSocketV6); ReleaseSock(tts->ListenSocketV6);
SetSockEvent(tts->SockEvent);
for (i = 0;i < LIST_NUM(tts->WorkerList);i++)
{
TTS_WORKER *w = LIST_DATA(tts->WorkerList, i);
SetSockEvent(w->SockEvent);
// Wait for stopping the worker thread // Wait for stopping the worker thread
WaitThread(tts->WorkThread, INFINITE); WaitThread(w->WorkThread, INFINITE);
ReleaseThread(tts->WorkThread); ReleaseThread(w->WorkThread);
ReleaseSockEvent(tts->SockEvent); ReleaseSockEvent(w->SockEvent);
Free(w);
}
} }
} }
@@ -1737,7 +1773,6 @@ void StopTtc(TTC *ttc)
TtPrint(ttc->Param, ttc->Print, _UU("TTC_STOPPING")); TtPrint(ttc->Param, ttc->Print, _UU("TTC_STOPPING"));
ttc->Halt = true; ttc->Halt = true;
SetSockEvent(ttc->SockEvent);
} }
// Generate a result // Generate a result
@@ -1800,147 +1835,36 @@ void TtcGenerateResult(TTC *ttc)
res->BpsTotal = res->BpsUpload + res->BpsDownload; res->BpsTotal = res->BpsUpload + res->BpsDownload;
} }
// Client thread // Client worker thread
void TtcThread(THREAD *thread, void *param) void TtcWorkerThread(THREAD *thread, void *param)
{ {
TTC_WORKER *w;
TTC *ttc; TTC *ttc;
UINT i; bool dont_block_next_time = false;
bool halting = false;
UINT64 halt_timeout = 0;
bool all_sockets_blocked;
wchar_t tmp[MAX_SIZE]; wchar_t tmp[MAX_SIZE];
bool ok = false;
UINT buf_size;
UCHAR *send_buf_data, *recv_buf_data; UCHAR *send_buf_data, *recv_buf_data;
IP ip_ret; UINT buf_size;
// Validate arguments UINT64 tmp64;
if (thread == NULL || param == NULL) if (thread == NULL || param == NULL)
{ {
return; return;
} }
w = (TTC_WORKER *)param;
ttc = w->Ttc;
// Allocate the data area // Allocate the data area
TtGenerateRandomData(&send_buf_data, &buf_size); TtGenerateRandomData(&send_buf_data, &buf_size);
TtGenerateRandomData(&recv_buf_data, &buf_size); TtGenerateRandomData(&recv_buf_data, &buf_size);
ttc = (TTC *)param;
ttc->SockEvent = NewSockEvent();
AddRef(ttc->SockEvent->ref);
// Ready
NoticeThreadInit(thread); NoticeThreadInit(thread);
TtcPrintSummary(ttc); // Wait for start
Wait(w->StartEvent, INFINITE);
UniFormat(tmp, sizeof(tmp), _UU("TTC_CONNECT_START"),
ttc->Host, ttc->Port, ttc->NumTcp);
TtPrint(ttc->Param, ttc->Print, tmp);
// Establish all connections to the client
ttc->ItcSockList = NewList(NULL);
ok = true;
Zero(&ip_ret, sizeof(ip_ret));
for (i = 0;i < ttc->NumTcp;i++)
{
SOCK *s;
TTC_SOCK *ts = ZeroMalloc(sizeof(TTC_SOCK));
char target_host[MAX_SIZE];
ts->Id = i + 1;
if (ttc->Type == TRAFFIC_TYPE_DOWNLOAD)
{
ts->Download = true;
}
else if (ttc->Type == TRAFFIC_TYPE_UPLOAD)
{
ts->Download = false;
}
else
{
ts->Download = ((i % 2) == 0) ? true : false;
}
StrCpy(target_host, sizeof(target_host), ttc->Host);
if (IsZeroIp(&ip_ret) == false)
{
IPToStr(target_host, sizeof(target_host), &ip_ret);
}
s = ConnectEx4(target_host, ttc->Port, 0, ttc->Cancel, NULL, NULL, false, false, true, &ip_ret);
if (s == NULL)
{
UniFormat(tmp, sizeof(tmp), _UU("TTC_CONNECT_FAILED"), i + 1);
TtPrint(ttc->Param, ttc->Print, tmp);
ok = false;
Free(ts);
break;
}
else
{
char buffer[TRAFFIC_VER_STR_SIZE];
SetTimeout(s, 5000);
Zero(buffer, sizeof(buffer));
if (Recv(s, buffer, sizeof(buffer), false) != sizeof(buffer) || Cmp(buffer, TRAFFIC_VER_STR, TRAFFIC_VER_STR_SIZE) != 0)
{
TtPrint(ttc->Param, ttc->Print, _UU("TTC_CONNECT_NOT_SERVER"));
ok = false;
ReleaseSock(s);
Free(ts);
break;
}
UniFormat(tmp, sizeof(tmp), _UU("TTC_CONNECT_OK"), i + 1);
TtPrint(ttc->Param, ttc->Print, tmp);
UniFormat(tmp, sizeof(tmp), _UU("TTC_CONNECT_OK_2"), GetTtcTypeStr(ts->Download ? TRAFFIC_TYPE_DOWNLOAD : TRAFFIC_TYPE_UPLOAD));
TtPrint(ttc->Param, ttc->Print, tmp);
ts->Sock = s;
SetTimeout(s, TIMEOUT_INFINITE);
JoinSockToSockEvent(s, ttc->SockEvent);
}
Insert(ttc->ItcSockList, ts);
}
Set(ttc->InitedEvent);
if (ttc->StartEvent != NULL)
{
Wait(ttc->StartEvent, INFINITE);
SleepThread(500);
}
if (ok)
{
bool all_sockets_blocked;
bool dont_block_next_time = false;
bool halt_flag = false;
UINT64 start_tick, end_tick;
UINT64 halt_timeout = 0;
wchar_t tmp1[MAX_SIZE], tmp2[MAX_SIZE];
UINT check_clock_seed = 0;
bool halting = false;
UINT64 tmp64;
UINT64 session_id = Rand64();
// Record the current time
start_tick = Tick64();
end_tick = start_tick + ttc->Span;
// Show start message
GetDateTimeStrEx64(tmp1, sizeof(tmp1), SystemToLocal64(TickToTime(start_tick)), NULL);
GetDateTimeStrEx64(tmp2, sizeof(tmp2), SystemToLocal64(TickToTime(end_tick)), NULL);
UniFormat(tmp, sizeof(tmp), _UU("TTC_COMM_START"), tmp1, tmp2);
TtPrint(ttc->Param, ttc->Print, tmp);
// Main loop // Main loop
while (true) while (true)
@@ -1949,7 +1873,7 @@ void TtcThread(THREAD *thread, void *param)
if (dont_block_next_time == false) if (dont_block_next_time == false)
{ {
WaitSockEvent(ttc->SockEvent, 50); WaitSockEvent(w->SockEvent, 50);
} }
dont_block_next_time = false; dont_block_next_time = false;
@@ -1960,25 +1884,34 @@ void TtcThread(THREAD *thread, void *param)
break; break;
} }
if (ttc->Halt || end_tick <= Tick64() || (ttc->Cancel != NULL && (*ttc->Cancel))) if (ttc->Halt || ttc->end_tick <= Tick64() || (ttc->Cancel != NULL && (*ttc->Cancel)))
{ {
// End measurement // End measurement
if (halting == false) if (halting == false)
{ {
if (ttc->Halt || (ttc->Cancel != NULL && (*ttc->Cancel))) if (ttc->Halt || (ttc->Cancel != NULL && (*ttc->Cancel)))
{
if ((ttc->flag1++) == 0)
{ {
// User cancel // User cancel
TtPrint(ttc->Param, ttc->Print, _UU("TTC_COMM_USER_CANCEL")); TtPrint(ttc->Param, ttc->Print, _UU("TTC_COMM_USER_CANCEL"));
} }
}
else else
{ {
// Time elapsed // Time elapsed
if ((ttc->flag2++) == 0)
{
UniFormat(tmp, sizeof(tmp), _UU("TTC_COMM_END"), UniFormat(tmp, sizeof(tmp), _UU("TTC_COMM_END"),
(double)ttc->Span / 1000.0); (double)ttc->Span / 1000.0);
TtPrint(ttc->Param, ttc->Print, tmp); TtPrint(ttc->Param, ttc->Print, tmp);
} }
}
ttc->RealSpan = Tick64() - start_tick; if (ttc->RealSpan == 0)
{
ttc->RealSpan = Tick64() - ttc->start_tick;
}
halting = true; halting = true;
@@ -1992,9 +1925,9 @@ void TtcThread(THREAD *thread, void *param)
bool ok = true; bool ok = true;
// Wait that all TCP connections to finish processing // Wait that all TCP connections to finish processing
for (i = 0;i < LIST_NUM(ttc->ItcSockList);i++) for (i = 0;i < LIST_NUM(w->SockList);i++)
{ {
TTC_SOCK *ts = LIST_DATA(ttc->ItcSockList, i); TTC_SOCK *ts = LIST_DATA(w->SockList, i);
if (ts->Download == false) if (ts->Download == false)
{ {
@@ -2008,8 +1941,7 @@ void TtcThread(THREAD *thread, void *param)
if (ok) if (ok)
{ {
// Measurement completed // Measurement completed
// Show the result w->Ok = true;
TtcGenerateResult(ttc);
break; break;
} }
else else
@@ -2032,10 +1964,10 @@ void TtcThread(THREAD *thread, void *param)
{ {
all_sockets_blocked = true; all_sockets_blocked = true;
for (i = 0;i < LIST_NUM(ttc->ItcSockList);i++) for (i = 0;i < LIST_NUM(w->SockList);i++)
{ {
UINT ret = SOCK_LATER; UINT ret = SOCK_LATER;
TTC_SOCK *ts = LIST_DATA(ttc->ItcSockList, i); TTC_SOCK *ts = LIST_DATA(w->SockList, i);
bool blocked_for_this_socket = false; bool blocked_for_this_socket = false;
UCHAR c = 0; UCHAR c = 0;
UCHAR c_and_session_id[1 + sizeof(UINT64) + sizeof(UINT64)]; UCHAR c_and_session_id[1 + sizeof(UINT64) + sizeof(UINT64)];
@@ -2078,7 +2010,7 @@ void TtcThread(THREAD *thread, void *param)
} }
c_and_session_id[0] = c; c_and_session_id[0] = c;
WRITE_UINT64(c_and_session_id + 1, session_id); WRITE_UINT64(c_and_session_id + 1, ttc->session_id);
WRITE_UINT64(c_and_session_id + sizeof(UINT64) + 1, ttc->Span); WRITE_UINT64(c_and_session_id + sizeof(UINT64) + 1, ttc->Span);
ret = Send(ts->Sock, c_and_session_id, 1 + sizeof(UINT64) + sizeof(UINT64), false); ret = Send(ts->Sock, c_and_session_id, 1 + sizeof(UINT64) + sizeof(UINT64), false);
@@ -2186,13 +2118,231 @@ void TtcThread(THREAD *thread, void *param)
dont_block_next_time = true; dont_block_next_time = true;
} }
if (end_tick <= Tick64()) if (ttc->end_tick <= Tick64())
{ {
all_sockets_blocked = true; all_sockets_blocked = true;
dont_block_next_time = true; dont_block_next_time = true;
} }
} }
} }
Free(send_buf_data);
Free(recv_buf_data);
}
// Client thread
void TtcThread(THREAD *thread, void *param)
{
TTC *ttc;
UINT i;
wchar_t tmp[MAX_SIZE];
bool ok = false;
IP ip_ret;
// Validate arguments
if (thread == NULL || param == NULL)
{
return;
}
ttc = (TTC *)param;
// Ready
NoticeThreadInit(thread);
TtcPrintSummary(ttc);
UniFormat(tmp, sizeof(tmp), _UU("TTC_CONNECT_START"),
ttc->Host, ttc->Port, ttc->NumTcp);
TtPrint(ttc->Param, ttc->Print, tmp);
// Establish all connections to the client
ttc->ItcSockList = NewList(NULL);
ok = true;
Zero(&ip_ret, sizeof(ip_ret));
for (i = 0;i < ttc->NumTcp;i++)
{
SOCK *s;
TTC_SOCK *ts = ZeroMalloc(sizeof(TTC_SOCK));
char target_host[MAX_SIZE];
ts->Id = i + 1;
if (ttc->Type == TRAFFIC_TYPE_DOWNLOAD)
{
ts->Download = true;
}
else if (ttc->Type == TRAFFIC_TYPE_UPLOAD)
{
ts->Download = false;
}
else
{
ts->Download = ((i % 2) == 0) ? true : false;
}
StrCpy(target_host, sizeof(target_host), ttc->Host);
if (IsZeroIp(&ip_ret) == false)
{
IPToStr(target_host, sizeof(target_host), &ip_ret);
}
s = ConnectEx4(target_host, ttc->Port, 0, ttc->Cancel, NULL, NULL, false, false, true, &ip_ret);
if (s == NULL)
{
UniFormat(tmp, sizeof(tmp), _UU("TTC_CONNECT_FAILED"), i + 1);
TtPrint(ttc->Param, ttc->Print, tmp);
ok = false;
Free(ts);
break;
}
else
{
char buffer[TRAFFIC_VER_STR_SIZE];
SetTimeout(s, 5000);
Zero(buffer, sizeof(buffer));
if (Recv(s, buffer, sizeof(buffer), false) != sizeof(buffer) || Cmp(buffer, TRAFFIC_VER_STR, TRAFFIC_VER_STR_SIZE) != 0)
{
TtPrint(ttc->Param, ttc->Print, _UU("TTC_CONNECT_NOT_SERVER"));
ok = false;
ReleaseSock(s);
Free(ts);
break;
}
UniFormat(tmp, sizeof(tmp), _UU("TTC_CONNECT_OK"), i + 1);
TtPrint(ttc->Param, ttc->Print, tmp);
UniFormat(tmp, sizeof(tmp), _UU("TTC_CONNECT_OK_2"), GetTtcTypeStr(ts->Download ? TRAFFIC_TYPE_DOWNLOAD : TRAFFIC_TYPE_UPLOAD));
TtPrint(ttc->Param, ttc->Print, tmp);
ts->Sock = s;
SetTimeout(s, TIMEOUT_INFINITE);
}
Insert(ttc->ItcSockList, ts);
}
Set(ttc->InitedEvent);
if (ttc->StartEvent != NULL)
{
Wait(ttc->StartEvent, INFINITE);
SleepThread(500);
}
if (ok)
{
UINT64 start_tick, end_tick;
UINT64 halt_timeout = 0;
wchar_t tmp1[MAX_SIZE], tmp2[MAX_SIZE];
UINT check_clock_seed = 0;
bool halting = false;
UINT64 session_id = Rand64();
UINT i, num_cpu;
bool all_ok = false;
ttc->session_id = session_id;
num_cpu = GetNumberOfCpu();
ttc->WorkerThreadList = NewList(NULL);
for (i = 0;i < num_cpu;i++)
{
TTC_WORKER *w = ZeroMalloc(sizeof(TTC_WORKER));
w->Ttc = ttc;
w->SockList = NewList(NULL);
w->StartEvent = NewEvent();
w->SockEvent = NewSockEvent();
w->WorkerThread = NewThread(TtcWorkerThread, w);
WaitThreadInit(w->WorkerThread);
Add(ttc->WorkerThreadList, w);
}
// Assign each of sockets to each of worker threads
for (i = 0;i < LIST_NUM(ttc->ItcSockList);i++)
{
TTC_SOCK *ts = LIST_DATA(ttc->ItcSockList, i);
UINT num = LIST_NUM(ttc->WorkerThreadList);
UINT j = i % num;
TTC_WORKER *w = LIST_DATA(ttc->WorkerThreadList, j);
Add(w->SockList, ts);
JoinSockToSockEvent(ts->Sock, w->SockEvent);
}
// Record the current time
start_tick = Tick64();
end_tick = start_tick + ttc->Span;
ttc->start_tick = start_tick;
ttc->end_tick = end_tick;
// Set the start event for all worker threads
for (i = 0;i < LIST_NUM(ttc->WorkerThreadList);i++)
{
TTC_WORKER *w = LIST_DATA(ttc->WorkerThreadList, i);
Set(w->StartEvent);
}
// Show start message
GetDateTimeStrEx64(tmp1, sizeof(tmp1), SystemToLocal64(TickToTime(start_tick)), NULL);
GetDateTimeStrEx64(tmp2, sizeof(tmp2), SystemToLocal64(TickToTime(end_tick)), NULL);
UniFormat(tmp, sizeof(tmp), _UU("TTC_COMM_START"), tmp1, tmp2);
TtPrint(ttc->Param, ttc->Print, tmp);
// Wait for all worker threads finish
all_ok = true;
for (i = 0;i < LIST_NUM(ttc->WorkerThreadList);i++)
{
TTC_WORKER *w = LIST_DATA(ttc->WorkerThreadList, i);
WaitThread(w->WorkerThread, INFINITE);
if (w->Ok == false)
{
all_ok = false;
}
}
if (all_ok)
{
// Measurement completed
// Show the result
TtcGenerateResult(ttc);
}
// Release worker threads
for (i = 0;i < LIST_NUM(ttc->WorkerThreadList);i++)
{
TTC_WORKER *w = LIST_DATA(ttc->WorkerThreadList, i);
ReleaseThread(w->WorkerThread);
ReleaseEvent(w->StartEvent);
ReleaseList(w->SockList);
ReleaseSockEvent(w->SockEvent);
Free(w);
}
ReleaseList(ttc->WorkerThreadList);
ttc->WorkerThreadList = NULL;
} }
else else
{ {
@@ -2211,10 +2361,7 @@ void TtcThread(THREAD *thread, void *param)
Free(ts); Free(ts);
} }
ReleaseSockEvent(ttc->SockEvent);
ReleaseList(ttc->ItcSockList); ReleaseList(ttc->ItcSockList);
Free(send_buf_data);
Free(recv_buf_data);
} }
// Start the communication throughput measurement client // Start the communication throughput measurement client
@@ -2280,7 +2427,6 @@ UINT FreeTtc(TTC *ttc, TT_RESULT *result)
} }
} }
ReleaseSockEvent(ttc->SockEvent);
ReleaseEvent(ttc->InitedEvent); ReleaseEvent(ttc->InitedEvent);
Free(ttc); Free(ttc);
@@ -2301,6 +2447,8 @@ TTS *NewTts(UINT port, void *param, TT_PRINT_PROC *print_proc)
TtPrint(param, print_proc, _UU("TTS_INIT")); TtPrint(param, print_proc, _UU("TTS_INIT"));
tts->WorkerList = NewList(NULL);
// Creating a thread // Creating a thread
t = NewThread(TtsListenThread, tts); t = NewThread(TtsListenThread, tts);
WaitThreadInit(t); WaitThreadInit(t);
@@ -2337,6 +2485,8 @@ UINT FreeTts(TTS *tts)
ret = tts->ErrorCode; ret = tts->ErrorCode;
ReleaseList(tts->WorkerList);
Free(tts); Free(tts);
return ret; return ret;
@@ -2355,6 +2505,8 @@ void PtTrafficPrintProc(void *param, wchar_t *str)
c = (CONSOLE *)param; c = (CONSOLE *)param;
if (c->ConsoleType == CONSOLE_LOCAL) if (c->ConsoleType == CONSOLE_LOCAL)
{
Lock(c->OutputLock);
{ {
wchar_t tmp[MAX_SIZE]; wchar_t tmp[MAX_SIZE];
@@ -2367,6 +2519,8 @@ void PtTrafficPrintProc(void *param, wchar_t *str)
} }
UniPrint(L"%s", tmp); UniPrint(L"%s", tmp);
} }
Unlock(c->OutputLock);
}
} }
// Display the communication throughput results // Display the communication throughput results
@@ -23850,7 +24004,3 @@ LABEL_CLEANUP:
#endif // OS_WIN32 #endif // OS_WIN32
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+30 -10
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -181,13 +181,30 @@ struct TTC
THREAD *Thread; // Thread THREAD *Thread; // Thread
volatile bool Halt; // Halting flag volatile bool Halt; // Halting flag
bool *Cancel; // Halting flag 2 bool *Cancel; // Halting flag 2
SOCK_EVENT *SockEvent; // Socket event
LIST *ItcSockList; // Client socket list LIST *ItcSockList; // Client socket list
TT_RESULT Result; // Result TT_RESULT Result; // Result
UINT ErrorCode; // Error code UINT ErrorCode; // Error code
bool AbnormalTerminated; // Abnormal termination bool AbnormalTerminated; // Abnormal termination
EVENT *StartEvent; // Start event EVENT *StartEvent; // Start event
EVENT *InitedEvent; // Initialize completion notification event EVENT *InitedEvent; // Initialize completion notification event
LIST *WorkerThreadList; // List of worker threads
UINT flag1, flag2;
UINT64 session_id;
UINT64 end_tick;
UINT64 start_tick;
};
// Traffic test worker thread
struct TTC_WORKER
{
THREAD *WorkerThread;
TTC *Ttc;
LIST *SockList; // Client socket list
SOCK_EVENT *SockEvent; // Socket event
EVENT *StartEvent; // Start event
bool Ok; // The result
}; };
// Server side socket // Server side socket
@@ -216,15 +233,22 @@ struct TTS
volatile bool Halt; // Halting flag volatile bool Halt; // Halting flag
UINT Port; // Port number UINT Port; // Port number
THREAD *Thread; // Thread THREAD *Thread; // Thread
THREAD *WorkThread; // Worker thread
THREAD *IPv6AcceptThread; // IPv6 Accept thread THREAD *IPv6AcceptThread; // IPv6 Accept thread
SOCK *ListenSocket; // Socket to wait SOCK *ListenSocket; // Socket to wait
SOCK *ListenSocketV6; // Socket to wait (IPv6) SOCK *ListenSocketV6; // Socket to wait (IPv6)
UINT ErrorCode; // Error code UINT ErrorCode; // Error code
UINT IdSeed; // ID value
LIST *WorkerList; // Worker threads list
};
// Traffic test worker thread
struct TTS_WORKER
{
TTS *Tts; // TTS
THREAD *WorkThread; // Worker thread
SOCK_EVENT *SockEvent; // Socket event SOCK_EVENT *SockEvent; // Socket event
LIST *TtsSockList; // Server socket list LIST *TtsSockList; // Server socket list
bool NewSocketArrived; // New socket has arrived bool NewSocketArrived; // New socket has arrived
UINT IdSeed; // ID value
}; };
// VPN Tools context // VPN Tools context
@@ -676,7 +700,3 @@ UINT PsVpnAzureGetStatus(CONSOLE *c, char *cmd_name, wchar_t *str, void *param);
#endif // COMMAND_H #endif // COMMAND_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -6
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -3669,6 +3669,3 @@ CONNECTION *NewClientConnectionEx(SESSION *s, char *client_str, UINT client_ver,
return c; return c;
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -372,7 +372,3 @@ UINT GetMachineRand();
#endif // CONNECTION_H #endif // CONNECTION_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+6 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -2237,6 +2237,7 @@ CONSOLE *NewLocalConsole(wchar_t *infile, wchar_t *outfile)
c->ReadPassword = ConsoleLocalReadPassword; c->ReadPassword = ConsoleLocalReadPassword;
c->Write = ConsoleLocalWrite; c->Write = ConsoleLocalWrite;
c->GetWidth = ConsoleLocalGetWidth; c->GetWidth = ConsoleLocalGetWidth;
c->OutputLock = NewLock();
if (UniIsEmptyStr(infile) == false) if (UniIsEmptyStr(infile) == false)
{ {
@@ -2348,6 +2349,8 @@ void ConsoleLocalFree(CONSOLE *c)
Free(p); Free(p);
} }
DeleteLock(c->OutputLock);
// Memory release // Memory release
Free(c); Free(c);
} }
@@ -2558,7 +2561,3 @@ void ConsoleWriteOutFile(CONSOLE *c, wchar_t *str, bool add_last_crlf)
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+4 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -161,6 +161,7 @@ struct CONSOLE
bool (*Write)(CONSOLE *c, wchar_t *str); // Function to write a string bool (*Write)(CONSOLE *c, wchar_t *str); // Function to write a string
UINT (*GetWidth)(CONSOLE *c); // Get the width of the screen UINT (*GetWidth)(CONSOLE *c); // Get the width of the screen
bool ProgrammingMode; // Programming Mode bool ProgrammingMode; // Programming Mode
LOCK *OutputLock; // Output Lock
}; };
// Local console parameters // Local console parameters
@@ -247,7 +248,3 @@ UINT ConsoleLocalGetWidth(CONSOLE *c);
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -1046,7 +1046,3 @@ void DCGenNewKey(UCHAR *key)
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -248,7 +248,3 @@ void DCGetInternetSetting(DDNS_CLIENT *c, INTERNET_SETTING *t);
#endif // DDNS_H #endif // DDNS_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -263,7 +263,3 @@ bool LiIsLicenseKey(char *str)
return true; return true;
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -122,7 +122,3 @@ bool LiStrToKeyBit(UCHAR *keybit, char *keystr);
#endif // DATABASE_H #endif // DATABASE_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -1500,7 +1500,3 @@ RETRY:
} }
#endif // WIN32 #endif // WIN32
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -120,7 +120,3 @@ void EMExec();
#endif // EM_H #endif // EM_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -6
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -147,6 +147,3 @@ void EmLicenseAddDlgUpdate(HWND hWnd, RPC *s);
void EmLicenseAddDlgShiftTextItem(HWND hWnd, UINT id1, UINT id2, UINT *next_focus); void EmLicenseAddDlgShiftTextItem(HWND hWnd, UINT id1, UINT id2, UINT *next_focus);
void EmLicenseAddDlgGetText(HWND hWnd, char *str, UINT size); void EmLicenseAddDlgGetText(HWND hWnd, char *str, UINT size);
void EmLicenseAddDlgOnOk(HWND hWnd, RPC *s); void EmLicenseAddDlgOnOk(HWND hWnd, RPC *s);
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -1380,7 +1380,3 @@ void ElFree()
el_lock = NULL; el_lock = NULL;
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -279,7 +279,3 @@ void OutRpcElLicenseStatus(PACK *p, RPC_EL_LICENSE_STATUS *t);
#endif // ETHERLOG_H #endif // ETHERLOG_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -13
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -1227,12 +1227,6 @@ bool IsValidCertInHub(HUB *h, X *x)
return false; return false;
} }
if (IsXRevoked(x))
{
// Disabled by the CRL stored in the file
return false;
}
LockList(h->HubDb->CrlList); LockList(h->HubDb->CrlList);
{ {
ret = IsCertMatchCrlList(x, h->HubDb->CrlList); ret = IsCertMatchCrlList(x, h->HubDb->CrlList);
@@ -7440,7 +7434,3 @@ HUBDB *NewHubDb()
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -648,7 +648,3 @@ EAP_CLIENT *HubNewEapClient(CEDAR *cedar, char *hubname, char *client_ip_str, ch
#endif // HUB_H #endif // HUB_H
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/
+3 -7
View File
@@ -3,9 +3,9 @@
// //
// SoftEther VPN Server, Client and Bridge are free software under GPLv2. // SoftEther VPN Server, Client and Bridge are free software under GPLv2.
// //
// Copyright (c) 2012-2016 Daiyuu Nobori. // Copyright (c) Daiyuu Nobori, Ph.D..
// Copyright (c) 2012-2016 SoftEther VPN Project, University of Tsukuba, Japan. // Copyright (c) SoftEther VPN Project, University of Tsukuba, Japan.
// Copyright (c) 2012-2016 SoftEther Corporation. // Copyright (c) SoftEther Corporation.
// //
// All Rights Reserved. // All Rights Reserved.
// //
@@ -793,7 +793,3 @@ IPSEC_SERVER *NewIPsecServer(CEDAR *cedar)
return s; return s;
} }
// Developed by SoftEther VPN Project at University of Tsukuba in Japan.
// Department of Computer Science has dozens of overly-enthusiastic geeks.
// Join us: http://www.tsukuba.ac.jp/english/admission/

Some files were not shown because too many files have changed in this diff Show More