mirror of
https://github.com/Wind4/vlmcsd.git
synced 2024-12-22 21:35:22 +01:00
vlmcsd-1108-2017-01-19-Hotbird64
This commit is contained in:
parent
c5e1a0a591
commit
5a29226593
@ -116,6 +116,12 @@
|
|||||||
# Command line: -R
|
# Command line: -R
|
||||||
;RenewalInterval = 7d
|
;RenewalInterval = 7d
|
||||||
|
|
||||||
|
# Exit vlmcsd if warning of certain level has been reached
|
||||||
|
# Command line: -x
|
||||||
|
# 0 = Never
|
||||||
|
# 1 = Exit, if any listening socket could not be established or TAP error occurs
|
||||||
|
;ExitLevel = 0
|
||||||
|
|
||||||
# Run program as user vlmcsduser
|
# Run program as user vlmcsduser
|
||||||
# Command line: -u
|
# Command line: -u
|
||||||
;user = vlmcsduser
|
;user = vlmcsduser
|
||||||
|
Binary file not shown.
@ -711,7 +711,7 @@ export PROGRAM_NAME=../binaries/Android/intel/bionic/vlmcsd-android23-x86
|
|||||||
export MULTI_NAME=../binaries/Android/intel/static/vlmcsdmulti-android23-x86
|
export MULTI_NAME=../binaries/Android/intel/static/vlmcsdmulti-android23-x86
|
||||||
export CC=/opt/toolchains/x86-android-9/bin/i686-linux-android-gcc
|
export CC=/opt/toolchains/x86-android-9/bin/i686-linux-android-gcc
|
||||||
export CFLAGS="$SMALLCC"
|
export CFLAGS="$SMALLCC"
|
||||||
export PLATFORMFLAGS="-flto=16 -fwhole-program -march=atom -m32"
|
export PLATFORMFLAGS="-flto=16 -fwhole-program -march=i386 -m32"
|
||||||
export THREADS=1
|
export THREADS=1
|
||||||
export LDFLAGS="$SMALLLD"
|
export LDFLAGS="$SMALLLD"
|
||||||
|
|
||||||
@ -745,7 +745,7 @@ export PROGRAM_NAME=../binaries/Android/intel/bionic/vlmcsd-android41-x86
|
|||||||
export MULTI_NAME=../binaries/Android/intel/bionic/vlmcsdmulti-android41-x86
|
export MULTI_NAME=../binaries/Android/intel/bionic/vlmcsdmulti-android41-x86
|
||||||
export CC=/opt/toolchains/x86-android-16/bin/i686-linux-android-gcc
|
export CC=/opt/toolchains/x86-android-16/bin/i686-linux-android-gcc
|
||||||
export CFLAGS="$SMALLCC"
|
export CFLAGS="$SMALLCC"
|
||||||
export PLATFORMFLAGS="-flto=16 -fwhole-program -march=atom -m32 -fPIE -pie"
|
export PLATFORMFLAGS="-flto=16 -fwhole-program -march=i386 -m32 -fPIE -pie"
|
||||||
export THREADS=1
|
export THREADS=1
|
||||||
export LDFLAGS="$SMALLLD"
|
export LDFLAGS="$SMALLLD"
|
||||||
|
|
||||||
@ -797,7 +797,7 @@ export PROGRAM_NAME=../binaries/Android/intel/bionic/vlmcsd-android50-x64
|
|||||||
export MULTI_NAME=../binaries/Android/intel/bionic/vlmcsdmulti-android50-x64
|
export MULTI_NAME=../binaries/Android/intel/bionic/vlmcsdmulti-android50-x64
|
||||||
export CC=/opt/toolchains/x86_64-android-21/bin/x86_64-linux-android-gcc
|
export CC=/opt/toolchains/x86_64-android-21/bin/x86_64-linux-android-gcc
|
||||||
export CFLAGS="$SMALLCC"
|
export CFLAGS="$SMALLCC"
|
||||||
export PLATFORMFLAGS="-flto=16 -fwhole-program -march=atom -m64 -fPIE -pie"
|
export PLATFORMFLAGS="-flto=16 -fwhole-program -m64 -fPIE -pie"
|
||||||
export THREADS=0
|
export THREADS=0
|
||||||
export LDFLAGS="$SMALLLD"
|
export LDFLAGS="$SMALLLD"
|
||||||
|
|
||||||
@ -819,7 +819,7 @@ export PROGRAM_NAME=../binaries/Android/intel/static/vlmcsd-android50-x64-static
|
|||||||
export MULTI_NAME=../binaries/Android/intel/static/vlmcsdmulti-android50-x64-static
|
export MULTI_NAME=../binaries/Android/intel/static/vlmcsdmulti-android50-x64-static
|
||||||
export CC=/opt/toolchains/x86_64-android-21/bin/x86_64-linux-android-gcc
|
export CC=/opt/toolchains/x86_64-android-21/bin/x86_64-linux-android-gcc
|
||||||
export CFLAGS="$SMALLCC"
|
export CFLAGS="$SMALLCC"
|
||||||
export PLATFORMFLAGS="-flto=16 -fwhole-program -march=nocona -m64"
|
export PLATFORMFLAGS="-flto=16 -fwhole-program -m64"
|
||||||
export THREADS=0
|
export THREADS=0
|
||||||
export LDFLAGS="$SMALLLD -static"
|
export LDFLAGS="$SMALLLD -static"
|
||||||
|
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<!-- Creator : groff version 1.22.3 -->
|
<!-- Creator : groff version 1.22.3 -->
|
||||||
<!-- CreationDate: Sun Dec 11 22:03:19 2016 -->
|
<!-- CreationDate: Thu Jan 19 21:29:26 2017 -->
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
"http://www.w3.org/TR/html4/loose.dtd">
|
||||||
<html>
|
<html>
|
||||||
|
BIN
man/vlmcs.1.pdf
BIN
man/vlmcs.1.pdf
Binary file not shown.
@ -1,5 +1,5 @@
|
|||||||
<!-- Creator : groff version 1.22.3 -->
|
<!-- Creator : groff version 1.22.3 -->
|
||||||
<!-- CreationDate: Sun Dec 11 22:03:20 2016 -->
|
<!-- CreationDate: Thu Jan 19 21:29:26 2017 -->
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
"http://www.w3.org/TR/html4/loose.dtd">
|
||||||
<html>
|
<html>
|
||||||
|
Binary file not shown.
@ -1,5 +1,5 @@
|
|||||||
<!-- Creator : groff version 1.22.3 -->
|
<!-- Creator : groff version 1.22.3 -->
|
||||||
<!-- CreationDate: Sun Dec 11 22:03:19 2016 -->
|
<!-- CreationDate: Thu Jan 19 21:29:26 2017 -->
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
"http://www.w3.org/TR/html4/loose.dtd">
|
||||||
<html>
|
<html>
|
||||||
|
BIN
man/vlmcsd.7.pdf
BIN
man/vlmcsd.7.pdf
Binary file not shown.
24
man/vlmcsd.8
24
man/vlmcsd.8
@ -1,5 +1,5 @@
|
|||||||
.mso www.tmac
|
.mso www.tmac
|
||||||
.TH VLMCSD 8 "December 2016" "Hotbird64" "KMS Activation Manual"
|
.TH VLMCSD 8 "January 2017" "Hotbird64" "KMS Activation Manual"
|
||||||
.LO 8
|
.LO 8
|
||||||
|
|
||||||
.SH NAME
|
.SH NAME
|
||||||
@ -92,6 +92,28 @@ You should be aware that only one program can use a VPN adapter at a time. If yo
|
|||||||
|
|
||||||
Example: \fB-O "Ethernet 7"=192.168.123.1/24\fR (uses VPN adapter Ethernet 7 with IPv4 address 192.168.123.1 and have 192.168.123.2 to 192.168.123.254 as additional local (but apparently remote) IPv4 addresses.
|
Example: \fB-O "Ethernet 7"=192.168.123.1/24\fR (uses VPN adapter Ethernet 7 with IPv4 address 192.168.123.1 and have 192.168.123.2 to 192.168.123.254 as additional local (but apparently remote) IPv4 addresses.
|
||||||
|
|
||||||
|
.IP "\fB-x0\fR and \fB-x1\fR"
|
||||||
|
Controls under what circumstances vlmcsd will exit. Using the default of \fB-x0\fR vlmcsd stays active as long as it can perform some useful operations. If vlmcsd is run by any form of a watchdog, e.g. NT service manager (Windows), systemd (Linux) or launchd (Mac OS / iOS), it may be desirable to end vlmcsd and let the watchdog restart it. This is especially true if some pre-requisites are not yet met but will be some time later, e.g. network is not yet fully setup.
|
||||||
|
|
||||||
|
By using \fB-x0\fR vlmcsd will
|
||||||
|
|
||||||
|
.RS 12
|
||||||
|
exit if none of the listening sockets specified with \fB-L\fR can be used. It continues if at least one socket can be setup for listening.
|
||||||
|
|
||||||
|
exit any TAP mirror thread (Windows version only) if there is an error condition while reading or writing from or to the VPN adapter but continue to work without utilizing a VPN adapter.
|
||||||
|
.RE
|
||||||
|
.IP
|
||||||
|
By using \fB-x1\fR vlmcsd will
|
||||||
|
|
||||||
|
.RS 12
|
||||||
|
exit if not all listening sockets specified with \fB-L\fR can be used.
|
||||||
|
|
||||||
|
exit completely if there is a problem with a VPN adapter it is using. This can happen for instance if the VPN adapter has been disabled using "Control Panel - Network - Adapter Settings" while vlmcsd is using it.
|
||||||
|
|
||||||
|
.RE
|
||||||
|
.IP
|
||||||
|
Please note that \fB-x1\fR is kind of a workaround option. While it may help under some circumstances, it is better to solve the problem at its origin, e.g. properly implementing dependencies in your startup script to ensure all network interfaces and the VPN adapter you will use are completely setup before you start vlmcsd.
|
||||||
|
|
||||||
.IP "\fB-F0\fR and \fB-F1\fR"
|
.IP "\fB-F0\fR and \fB-F1\fR"
|
||||||
Allow (\fB-F1\fR) or disallow (\fB-F0\fR) binding to IP addresses that are currently not configured on your system. The default is \fB-F0\fR. \fB-F1\fR allows you to bind to an IP address that may be configured after you started \fBvlmcsd\fR. \fBvlmcsd\fR will listen on that address as soon as it becomes available. This feature is only available under Linux (IPv4 and IPv6) and FreeBSD (IPv4 only). FreeBSD allows this feature only for the root user (more correctly: processes that have the PRIV_NETINET_BINDANY privilege). Linux does not require a capability for this.
|
Allow (\fB-F1\fR) or disallow (\fB-F0\fR) binding to IP addresses that are currently not configured on your system. The default is \fB-F0\fR. \fB-F1\fR allows you to bind to an IP address that may be configured after you started \fBvlmcsd\fR. \fBvlmcsd\fR will listen on that address as soon as it becomes available. This feature is only available under Linux (IPv4 and IPv6) and FreeBSD (IPv4 only). FreeBSD allows this feature only for the root user (more correctly: processes that have the PRIV_NETINET_BINDANY privilege). Linux does not require a capability for this.
|
||||||
|
|
||||||
|
@ -224,6 +224,46 @@ OPTIONS
|
|||||||
IPv4 addresses.
|
IPv4 addresses.
|
||||||
|
|
||||||
|
|
||||||
|
-x0 and -x1
|
||||||
|
Controls under what circumstances vlmcsd will exit. Using the
|
||||||
|
default of -x0 vlmcsd stays active as long as it can perform
|
||||||
|
some useful operations. If vlmcsd is run by any form of a watch‐
|
||||||
|
dog, e.g. NT service manager (Windows), systemd (Linux) or
|
||||||
|
launchd (Mac OS / iOS), it may be desirable to end vlmcsd and
|
||||||
|
let the watchdog restart it. This is especially true if some
|
||||||
|
pre-requisites are not yet met but will be some time later, e.g.
|
||||||
|
network is not yet fully setup.
|
||||||
|
|
||||||
|
By using -x0 vlmcsd will
|
||||||
|
|
||||||
|
exit if none of the listening sockets specified with -L can
|
||||||
|
be used. It continues if at least one socket can be setup
|
||||||
|
for listening.
|
||||||
|
|
||||||
|
exit any TAP mirror thread (Windows version only) if there
|
||||||
|
is an error condition while reading or writing from or to
|
||||||
|
the VPN adapter but continue to work without utilizing a
|
||||||
|
VPN adapter.
|
||||||
|
|
||||||
|
By using -x1 vlmcsd will
|
||||||
|
|
||||||
|
exit if not all listening sockets specified with -L can be
|
||||||
|
used.
|
||||||
|
|
||||||
|
exit completely if there is a problem with a VPN adapter it
|
||||||
|
is using. This can happen for instance if the VPN adapter
|
||||||
|
has been disabled using "Control Panel - Network - Adapter
|
||||||
|
Settings" while vlmcsd is using it.
|
||||||
|
|
||||||
|
|
||||||
|
Please note that -x1 is kind of a workaround option. While it
|
||||||
|
may help under some circumstances, it is better to solve the
|
||||||
|
problem at its origin, e.g. properly implementing dependencies
|
||||||
|
in your startup script to ensure all network interfaces and the
|
||||||
|
VPN adapter you will use are completely setup before you start
|
||||||
|
vlmcsd.
|
||||||
|
|
||||||
|
|
||||||
-F0 and -F1
|
-F0 and -F1
|
||||||
Allow (-F1) or disallow (-F0) binding to IP addresses that are
|
Allow (-F1) or disallow (-F0) binding to IP addresses that are
|
||||||
currently not configured on your system. The default is -F0. -F1
|
currently not configured on your system. The default is -F0. -F1
|
||||||
@ -757,4 +797,4 @@ SEE ALSO
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
Hotbird64 December 2016 VLMCSD(8)
|
Hotbird64 January 2017 VLMCSD(8)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<!-- Creator : groff version 1.22.3 -->
|
<!-- Creator : groff version 1.22.3 -->
|
||||||
<!-- CreationDate: Sun Dec 11 22:03:20 2016 -->
|
<!-- CreationDate: Thu Jan 19 21:29:26 2017 -->
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
"http://www.w3.org/TR/html4/loose.dtd">
|
||||||
<html>
|
<html>
|
||||||
@ -337,6 +337,52 @@ adapter Ethernet 7 with IPv4 address 192.168.123.1 and have
|
|||||||
192.168.123.2 to 192.168.123.254 as additional local (but
|
192.168.123.2 to 192.168.123.254 as additional local (but
|
||||||
apparently remote) IPv4 addresses.</p>
|
apparently remote) IPv4 addresses.</p>
|
||||||
|
|
||||||
|
<p style="margin-left:11%;"><b>-x0</b> and <b>-x1</b></p>
|
||||||
|
|
||||||
|
<p style="margin-left:22%;">Controls under what
|
||||||
|
circumstances vlmcsd will exit. Using the default of
|
||||||
|
<b>-x0</b> vlmcsd stays active as long as it can perform
|
||||||
|
some useful operations. If vlmcsd is run by any form of a
|
||||||
|
watchdog, e.g. NT service manager (Windows), systemd (Linux)
|
||||||
|
or launchd (Mac OS / iOS), it may be desirable to end vlmcsd
|
||||||
|
and let the watchdog restart it. This is especially true if
|
||||||
|
some pre-requisites are not yet met but will be some time
|
||||||
|
later, e.g. network is not yet fully setup.</p>
|
||||||
|
|
||||||
|
<p style="margin-left:22%; margin-top: 1em">By using
|
||||||
|
<b>-x0</b> vlmcsd will</p>
|
||||||
|
|
||||||
|
<p style="margin-left:29%; margin-top: 1em">exit if none of
|
||||||
|
the listening sockets specified with <b>-L</b> can be used.
|
||||||
|
It continues if at least one socket can be setup for
|
||||||
|
listening.</p>
|
||||||
|
|
||||||
|
<p style="margin-left:29%; margin-top: 1em">exit any TAP
|
||||||
|
mirror thread (Windows version only) if there is an error
|
||||||
|
condition while reading or writing from or to the VPN
|
||||||
|
adapter but continue to work without utilizing a VPN
|
||||||
|
adapter.</p>
|
||||||
|
|
||||||
|
<p style="margin-left:22%; margin-top: 1em">By using
|
||||||
|
<b>-x1</b> vlmcsd will</p>
|
||||||
|
|
||||||
|
<p style="margin-left:29%; margin-top: 1em">exit if not all
|
||||||
|
listening sockets specified with <b>-L</b> can be used.</p>
|
||||||
|
|
||||||
|
<p style="margin-left:29%; margin-top: 1em">exit completely
|
||||||
|
if there is a problem with a VPN adapter it is using. This
|
||||||
|
can happen for instance if the VPN adapter has been disabled
|
||||||
|
using "Control Panel - Network - Adapter Settings"
|
||||||
|
while vlmcsd is using it.</p>
|
||||||
|
|
||||||
|
<p style="margin-left:22%; margin-top: 1em">Please note
|
||||||
|
that <b>-x1</b> is kind of a workaround option. While it may
|
||||||
|
help under some circumstances, it is better to solve the
|
||||||
|
problem at its origin, e.g. properly implementing
|
||||||
|
dependencies in your startup script to ensure all network
|
||||||
|
interfaces and the VPN adapter you will use are completely
|
||||||
|
setup before you start vlmcsd.</p>
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>-F0</b> and <b>-F1</b></p>
|
<p style="margin-left:11%;"><b>-F0</b> and <b>-F1</b></p>
|
||||||
|
|
||||||
<p style="margin-left:22%;">Allow (<b>-F1</b>) or disallow
|
<p style="margin-left:22%;">Allow (<b>-F1</b>) or disallow
|
||||||
|
BIN
man/vlmcsd.8.pdf
BIN
man/vlmcsd.8.pdf
Binary file not shown.
@ -224,6 +224,46 @@ OPTIONS
|
|||||||
IPv4 addresses.
|
IPv4 addresses.
|
||||||
|
|
||||||
|
|
||||||
|
-x0 and -x1
|
||||||
|
Controls under what circumstances vlmcsd will exit. Using the
|
||||||
|
default of -x0 vlmcsd stays active as long as it can perform
|
||||||
|
some useful operations. If vlmcsd is run by any form of a watch‐
|
||||||
|
dog, e.g. NT service manager (Windows), systemd (Linux) or
|
||||||
|
launchd (Mac OS / iOS), it may be desirable to end vlmcsd and
|
||||||
|
let the watchdog restart it. This is especially true if some
|
||||||
|
pre-requisites are not yet met but will be some time later, e.g.
|
||||||
|
network is not yet fully setup.
|
||||||
|
|
||||||
|
By using -x0 vlmcsd will
|
||||||
|
|
||||||
|
exit if none of the listening sockets specified with -L can
|
||||||
|
be used. It continues if at least one socket can be setup
|
||||||
|
for listening.
|
||||||
|
|
||||||
|
exit any TAP mirror thread (Windows version only) if there
|
||||||
|
is an error condition while reading or writing from or to
|
||||||
|
the VPN adapter but continue to work without utilizing a
|
||||||
|
VPN adapter.
|
||||||
|
|
||||||
|
By using -x1 vlmcsd will
|
||||||
|
|
||||||
|
exit if not all listening sockets specified with -L can be
|
||||||
|
used.
|
||||||
|
|
||||||
|
exit completely if there is a problem with a VPN adapter it
|
||||||
|
is using. This can happen for instance if the VPN adapter
|
||||||
|
has been disabled using "Control Panel - Network - Adapter
|
||||||
|
Settings" while vlmcsd is using it.
|
||||||
|
|
||||||
|
|
||||||
|
Please note that -x1 is kind of a workaround option. While it
|
||||||
|
may help under some circumstances, it is better to solve the
|
||||||
|
problem at its origin, e.g. properly implementing dependencies
|
||||||
|
in your startup script to ensure all network interfaces and the
|
||||||
|
VPN adapter you will use are completely setup before you start
|
||||||
|
vlmcsd.
|
||||||
|
|
||||||
|
|
||||||
-F0 and -F1
|
-F0 and -F1
|
||||||
Allow (-F1) or disallow (-F0) binding to IP addresses that are
|
Allow (-F1) or disallow (-F0) binding to IP addresses that are
|
||||||
currently not configured on your system. The default is -F0. -F1
|
currently not configured on your system. The default is -F0. -F1
|
||||||
@ -757,4 +797,4 @@ SEE ALSO
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
Hotbird64 December 2016 VLMCSD(8)
|
Hotbird64 January 2017 VLMCSD(8)
|
||||||
|
@ -1,4 +1,4 @@
|
|||||||
.TH VLMCSD.INI 5 "December 2016" "Hotbird64" "KMS Activation Manual"
|
.TH VLMCSD.INI 5 "January 2017" "Hotbird64" "KMS Activation Manual"
|
||||||
.LO 8
|
.LO 8
|
||||||
|
|
||||||
.SH NAME
|
.SH NAME
|
||||||
@ -79,6 +79,28 @@ It is advised not to manually configure your OpenVPN TAP or TeamViewer VPN adapt
|
|||||||
|
|
||||||
You should be aware that only one program can use a VPN adapter at a time. If you use the TeamViewer VPN adapter for example, you will not be able to use the VPN feature of TeamViewer as long as vlmcsd is running. The same applies to OpenVPN TAP adapters that are in use by other programs (for example OpenVPN, QEMU, Ratiborus VM, aiccu, etc.). The best way to avoid conflicts is to install Tap-Windows from OpenVPN, cd to C:\\Program Files\\TAP-Windows\\bin and run addtap.bat to install an additional TAP adapter. Go to "Network Connections" and rename the new adapter to "vlmcsd" and specify \fBVPN=vlmcsd\fR to use it.
|
You should be aware that only one program can use a VPN adapter at a time. If you use the TeamViewer VPN adapter for example, you will not be able to use the VPN feature of TeamViewer as long as vlmcsd is running. The same applies to OpenVPN TAP adapters that are in use by other programs (for example OpenVPN, QEMU, Ratiborus VM, aiccu, etc.). The best way to avoid conflicts is to install Tap-Windows from OpenVPN, cd to C:\\Program Files\\TAP-Windows\\bin and run addtap.bat to install an additional TAP adapter. Go to "Network Connections" and rename the new adapter to "vlmcsd" and specify \fBVPN=vlmcsd\fR to use it.
|
||||||
|
|
||||||
|
.IP "\fBExitLevel"
|
||||||
|
Can be either 0 (the default) or 1. Controls under what circumstances vlmcsd will exit. Using the default of \fB0\fR vlmcsd stays active as long as it can perform some useful operations. If vlmcsd is run by any form of a watchdog, e.g. NT service manager (Windows), systemd (Linux) or launchd (Mac OS / iOS), it may be desirable to end vlmcsd and let the watchdog restart it. This is especially true if some pre-requisites are not yet met but will be some time later, e.g. network is not yet fully setup.
|
||||||
|
|
||||||
|
By using \fBExitLevel = 0\fR vlmcsd will
|
||||||
|
|
||||||
|
.RS 12
|
||||||
|
exit if none of the listening sockets specified with \fB-L\fR can be used. It continues if at least one socket can be setup for listening.
|
||||||
|
|
||||||
|
exit any TAP mirror thread (Windows version only) if there is an error condition while reading or writing from or to the VPN adapter but continue to work without utilizing a VPN adapter.
|
||||||
|
.RE
|
||||||
|
.IP
|
||||||
|
By using \fBExitLevel = 1\fR vlmcsd will
|
||||||
|
|
||||||
|
.RS 12
|
||||||
|
exit if not all listening sockets specified with \fB-L\fR can be used.
|
||||||
|
|
||||||
|
exit completely if there is a problem with a VPN adapter it is using. This may happen for instance if the VPN adapter has been disabled using "Control Panel - Network - Adapter Settings" while vlmcsd is using it.
|
||||||
|
|
||||||
|
.RE
|
||||||
|
.IP
|
||||||
|
Please note that \fBExitLevel = 1\fR is kind of a workaround option. While it may help under some circumstances, it is better to solve the problem at its origin, e.g. properly implementing dependencies in your startup script to ensure all network interfaces and the VPN adapter you will use are completely setup before you start vlmcsd.
|
||||||
|
|
||||||
.IP "\fBUseNDR64\fR"
|
.IP "\fBUseNDR64\fR"
|
||||||
Can be TRUE or FALSE. Specifies whether you want to use the NDR64 transfer syntax. See options \fB-n0\fR and \fB-n1\fR in \fBvlmcsd\fR(8). The default is TRUE.
|
Can be TRUE or FALSE. Specifies whether you want to use the NDR64 transfer syntax. See options \fB-n0\fR and \fB-n1\fR in \fBvlmcsd\fR(8). The default is TRUE.
|
||||||
|
|
||||||
|
@ -171,6 +171,46 @@ KEYWORDS
|
|||||||
new adapter to "vlmcsd" and specify VPN=vlmcsd to use it.
|
new adapter to "vlmcsd" and specify VPN=vlmcsd to use it.
|
||||||
|
|
||||||
|
|
||||||
|
ExitLevel
|
||||||
|
Can be either 0 (the default) or 1. Controls under what circum‐
|
||||||
|
stances vlmcsd will exit. Using the default of 0 vlmcsd stays
|
||||||
|
active as long as it can perform some useful operations. If vlm‐
|
||||||
|
csd is run by any form of a watchdog, e.g. NT service manager
|
||||||
|
(Windows), systemd (Linux) or launchd (Mac OS / iOS), it may be
|
||||||
|
desirable to end vlmcsd and let the watchdog restart it. This is
|
||||||
|
especially true if some pre-requisites are not yet met but will
|
||||||
|
be some time later, e.g. network is not yet fully setup.
|
||||||
|
|
||||||
|
By using ExitLevel = 0 vlmcsd will
|
||||||
|
|
||||||
|
exit if none of the listening sockets specified with -L can
|
||||||
|
be used. It continues if at least one socket can be setup
|
||||||
|
for listening.
|
||||||
|
|
||||||
|
exit any TAP mirror thread (Windows version only) if there
|
||||||
|
is an error condition while reading or writing from or to
|
||||||
|
the VPN adapter but continue to work without utilizing a
|
||||||
|
VPN adapter.
|
||||||
|
|
||||||
|
By using ExitLevel = 1 vlmcsd will
|
||||||
|
|
||||||
|
exit if not all listening sockets specified with -L can be
|
||||||
|
used.
|
||||||
|
|
||||||
|
exit completely if there is a problem with a VPN adapter it
|
||||||
|
is using. This may happen for instance if the VPN adapter
|
||||||
|
has been disabled using "Control Panel - Network - Adapter
|
||||||
|
Settings" while vlmcsd is using it.
|
||||||
|
|
||||||
|
|
||||||
|
Please note that ExitLevel = 1 is kind of a workaround option.
|
||||||
|
While it may help under some circumstances, it is better to
|
||||||
|
solve the problem at its origin, e.g. properly implementing
|
||||||
|
dependencies in your startup script to ensure all network inter‐
|
||||||
|
faces and the VPN adapter you will use are completely setup
|
||||||
|
before you start vlmcsd.
|
||||||
|
|
||||||
|
|
||||||
UseNDR64
|
UseNDR64
|
||||||
Can be TRUE or FALSE. Specifies whether you want to use the
|
Can be TRUE or FALSE. Specifies whether you want to use the
|
||||||
NDR64 transfer syntax. See options -n0 and -n1 in vlmcsd(8). The
|
NDR64 transfer syntax. See options -n0 and -n1 in vlmcsd(8). The
|
||||||
@ -448,4 +488,4 @@ SEE ALSO
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
Hotbird64 December 2016 VLMCSD.INI(5)
|
Hotbird64 January 2017 VLMCSD.INI(5)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<!-- Creator : groff version 1.22.3 -->
|
<!-- Creator : groff version 1.22.3 -->
|
||||||
<!-- CreationDate: Sun Dec 11 22:03:20 2016 -->
|
<!-- CreationDate: Thu Jan 19 21:29:26 2017 -->
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
"http://www.w3.org/TR/html4/loose.dtd">
|
||||||
<html>
|
<html>
|
||||||
@ -296,6 +296,53 @@ Connections" and rename the new adapter to
|
|||||||
"vlmcsd" and specify <b>VPN=vlmcsd</b> to use
|
"vlmcsd" and specify <b>VPN=vlmcsd</b> to use
|
||||||
it.</p>
|
it.</p>
|
||||||
|
|
||||||
|
<p style="margin-left:11%;"><b>ExitLevel</b></p>
|
||||||
|
|
||||||
|
<p style="margin-left:22%;">Can be either 0 (the default)
|
||||||
|
or 1. Controls under what circumstances vlmcsd will exit.
|
||||||
|
Using the default of <b>0</b> vlmcsd stays active as long as
|
||||||
|
it can perform some useful operations. If vlmcsd is run by
|
||||||
|
any form of a watchdog, e.g. NT service manager (Windows),
|
||||||
|
systemd (Linux) or launchd (Mac OS / iOS), it may be
|
||||||
|
desirable to end vlmcsd and let the watchdog restart it.
|
||||||
|
This is especially true if some pre-requisites are not yet
|
||||||
|
met but will be some time later, e.g. network is not yet
|
||||||
|
fully setup.</p>
|
||||||
|
|
||||||
|
<p style="margin-left:22%; margin-top: 1em">By using
|
||||||
|
<b>ExitLevel = 0</b> vlmcsd will</p>
|
||||||
|
|
||||||
|
<p style="margin-left:29%; margin-top: 1em">exit if none of
|
||||||
|
the listening sockets specified with <b>-L</b> can be used.
|
||||||
|
It continues if at least one socket can be setup for
|
||||||
|
listening.</p>
|
||||||
|
|
||||||
|
<p style="margin-left:29%; margin-top: 1em">exit any TAP
|
||||||
|
mirror thread (Windows version only) if there is an error
|
||||||
|
condition while reading or writing from or to the VPN
|
||||||
|
adapter but continue to work without utilizing a VPN
|
||||||
|
adapter.</p>
|
||||||
|
|
||||||
|
<p style="margin-left:22%; margin-top: 1em">By using
|
||||||
|
<b>ExitLevel = 1</b> vlmcsd will</p>
|
||||||
|
|
||||||
|
<p style="margin-left:29%; margin-top: 1em">exit if not all
|
||||||
|
listening sockets specified with <b>-L</b> can be used.</p>
|
||||||
|
|
||||||
|
<p style="margin-left:29%; margin-top: 1em">exit completely
|
||||||
|
if there is a problem with a VPN adapter it is using. This
|
||||||
|
may happen for instance if the VPN adapter has been disabled
|
||||||
|
using "Control Panel - Network - Adapter Settings"
|
||||||
|
while vlmcsd is using it.</p>
|
||||||
|
|
||||||
|
<p style="margin-left:22%; margin-top: 1em">Please note
|
||||||
|
that <b>ExitLevel = 1</b> is kind of a workaround option.
|
||||||
|
While it may help under some circumstances, it is better to
|
||||||
|
solve the problem at its origin, e.g. properly implementing
|
||||||
|
dependencies in your startup script to ensure all network
|
||||||
|
interfaces and the VPN adapter you will use are completely
|
||||||
|
setup before you start vlmcsd.</p>
|
||||||
|
|
||||||
<p style="margin-left:11%;"><b>UseNDR64</b></p>
|
<p style="margin-left:11%;"><b>UseNDR64</b></p>
|
||||||
|
|
||||||
<p style="margin-left:22%;">Can be TRUE or FALSE. Specifies
|
<p style="margin-left:22%;">Can be TRUE or FALSE. Specifies
|
||||||
|
Binary file not shown.
@ -171,6 +171,46 @@ KEYWORDS
|
|||||||
new adapter to "vlmcsd" and specify VPN=vlmcsd to use it.
|
new adapter to "vlmcsd" and specify VPN=vlmcsd to use it.
|
||||||
|
|
||||||
|
|
||||||
|
ExitLevel
|
||||||
|
Can be either 0 (the default) or 1. Controls under what circum‐
|
||||||
|
stances vlmcsd will exit. Using the default of 0 vlmcsd stays
|
||||||
|
active as long as it can perform some useful operations. If vlm‐
|
||||||
|
csd is run by any form of a watchdog, e.g. NT service manager
|
||||||
|
(Windows), systemd (Linux) or launchd (Mac OS / iOS), it may be
|
||||||
|
desirable to end vlmcsd and let the watchdog restart it. This is
|
||||||
|
especially true if some pre-requisites are not yet met but will
|
||||||
|
be some time later, e.g. network is not yet fully setup.
|
||||||
|
|
||||||
|
By using ExitLevel = 0 vlmcsd will
|
||||||
|
|
||||||
|
exit if none of the listening sockets specified with -L can
|
||||||
|
be used. It continues if at least one socket can be setup
|
||||||
|
for listening.
|
||||||
|
|
||||||
|
exit any TAP mirror thread (Windows version only) if there
|
||||||
|
is an error condition while reading or writing from or to
|
||||||
|
the VPN adapter but continue to work without utilizing a
|
||||||
|
VPN adapter.
|
||||||
|
|
||||||
|
By using ExitLevel = 1 vlmcsd will
|
||||||
|
|
||||||
|
exit if not all listening sockets specified with -L can be
|
||||||
|
used.
|
||||||
|
|
||||||
|
exit completely if there is a problem with a VPN adapter it
|
||||||
|
is using. This may happen for instance if the VPN adapter
|
||||||
|
has been disabled using "Control Panel - Network - Adapter
|
||||||
|
Settings" while vlmcsd is using it.
|
||||||
|
|
||||||
|
|
||||||
|
Please note that ExitLevel = 1 is kind of a workaround option.
|
||||||
|
While it may help under some circumstances, it is better to
|
||||||
|
solve the problem at its origin, e.g. properly implementing
|
||||||
|
dependencies in your startup script to ensure all network inter‐
|
||||||
|
faces and the VPN adapter you will use are completely setup
|
||||||
|
before you start vlmcsd.
|
||||||
|
|
||||||
|
|
||||||
UseNDR64
|
UseNDR64
|
||||||
Can be TRUE or FALSE. Specifies whether you want to use the
|
Can be TRUE or FALSE. Specifies whether you want to use the
|
||||||
NDR64 transfer syntax. See options -n0 and -n1 in vlmcsd(8). The
|
NDR64 transfer syntax. See options -n0 and -n1 in vlmcsd(8). The
|
||||||
@ -448,4 +488,4 @@ SEE ALSO
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
Hotbird64 December 2016 VLMCSD.INI(5)
|
Hotbird64 January 2017 VLMCSD.INI(5)
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
<!-- Creator : groff version 1.22.3 -->
|
<!-- Creator : groff version 1.22.3 -->
|
||||||
<!-- CreationDate: Sun Dec 11 22:03:19 2016 -->
|
<!-- CreationDate: Thu Jan 19 21:29:26 2017 -->
|
||||||
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
|
||||||
"http://www.w3.org/TR/html4/loose.dtd">
|
"http://www.w3.org/TR/html4/loose.dtd">
|
||||||
<html>
|
<html>
|
||||||
|
Binary file not shown.
@ -674,7 +674,20 @@ void loadKmsData()
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef NO_SOCKETS
|
||||||
|
void exitOnWarningLevel(const int_fast8_t level)
|
||||||
|
{
|
||||||
|
if (ExitLevel >= level)
|
||||||
|
{
|
||||||
|
printerrorf("Fatal: Exiting on warning level %i or greater\n", (int)ExitLevel);
|
||||||
|
exit(-1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#endif // !NO_SOCKETS
|
||||||
|
|
||||||
#endif // IS_LIBRARY
|
#endif // IS_LIBRARY
|
||||||
|
|
||||||
|
|
||||||
#if __ANDROID__ && !defined(USE_THREADS) // Bionic does not wrap these syscalls (intentionally because Google fears, developers don't know how to use it)
|
#if __ANDROID__ && !defined(USE_THREADS) // Bionic does not wrap these syscalls (intentionally because Google fears, developers don't know how to use it)
|
||||||
|
|
||||||
#ifdef __NR_shmget
|
#ifdef __NR_shmget
|
||||||
|
@ -40,6 +40,13 @@ void getExeName();
|
|||||||
__pure BOOL getArgumentBool(int_fast8_t *result, const char *const argument);
|
__pure BOOL getArgumentBool(int_fast8_t *result, const char *const argument);
|
||||||
char* vlmcsd_strdup(const char* src);
|
char* vlmcsd_strdup(const char* src);
|
||||||
|
|
||||||
|
#if defined(NO_SOCKETS) || IS_LIBRARY
|
||||||
|
#define exitOnWarningLevel(x)
|
||||||
|
#else // !NO_SOCKETS
|
||||||
|
void exitOnWarningLevel(const int_fast8_t level);
|
||||||
|
#endif // !NO_SOCKETS
|
||||||
|
|
||||||
|
|
||||||
#if __ANDROID__ && !defined(USE_THREADS) // Bionic does not wrap these syscalls (intentionally because Google fears, developers don't know how to use it)
|
#if __ANDROID__ && !defined(USE_THREADS) // Bionic does not wrap these syscalls (intentionally because Google fears, developers don't know how to use it)
|
||||||
int shmget(key_t key, size_t size, int shmflg);
|
int shmget(key_t key, size_t size, int shmflg);
|
||||||
void *shmat(int shmid, const void *shmaddr, int shmflg);
|
void *shmat(int shmid, const void *shmaddr, int shmflg);
|
||||||
|
@ -570,8 +570,12 @@ static int listenOnAddress(const struct addrinfo *const ai, SOCKET *s)
|
|||||||
# if defined(_WIN32) || defined(__CYGWIN__)
|
# if defined(_WIN32) || defined(__CYGWIN__)
|
||||||
// if (IsWindowsVistaOrGreater()) //Doesn't work with older version of MingW32-w64 toolchain
|
// if (IsWindowsVistaOrGreater()) //Doesn't work with older version of MingW32-w64 toolchain
|
||||||
if ((GetVersion() & 0xff) > 5)
|
if ((GetVersion() & 0xff) > 5)
|
||||||
|
{
|
||||||
# endif // _WIN32
|
# endif // _WIN32
|
||||||
printerrorf("Warning: %s does not support socket option IPV6_V6ONLY: %s\n", ipstr, vlmcsd_strerror(socket_errno));
|
printerrorf("Warning: %s does not support socket option IPV6_V6ONLY: %s\n", ipstr, vlmcsd_strerror(socket_errno));
|
||||||
|
# if defined(_WIN32) || defined(__CYGWIN__)
|
||||||
|
}
|
||||||
|
# endif // _WIN32
|
||||||
# endif // _PEDANTIC
|
# endif // _PEDANTIC
|
||||||
}
|
}
|
||||||
# endif
|
# endif
|
||||||
@ -661,6 +665,10 @@ BOOL addListeningSocket(const char *const addr)
|
|||||||
numsockets++;
|
numsockets++;
|
||||||
result = TRUE;
|
result = TRUE;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
exitOnWarningLevel(1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
freeaddrinfo(aiList);
|
freeaddrinfo(aiList);
|
||||||
|
@ -75,6 +75,8 @@ int_fast8_t logverbose = 0;
|
|||||||
#endif // NO_LOG
|
#endif // NO_LOG
|
||||||
|
|
||||||
#ifndef NO_SOCKETS
|
#ifndef NO_SOCKETS
|
||||||
|
int_fast8_t ExitLevel = 0;
|
||||||
|
|
||||||
#ifndef _WIN32
|
#ifndef _WIN32
|
||||||
int_fast8_t nodaemon = 0;
|
int_fast8_t nodaemon = 0;
|
||||||
#endif // _WIN32
|
#endif // _WIN32
|
||||||
@ -84,7 +86,7 @@ int_fast8_t InetdMode = 0;
|
|||||||
int_fast8_t nodaemon = 1;
|
int_fast8_t nodaemon = 1;
|
||||||
#endif // _WIN32
|
#endif // _WIN32
|
||||||
int_fast8_t InetdMode = 1;
|
int_fast8_t InetdMode = 1;
|
||||||
#endif
|
#endif // NO_SOCKETS
|
||||||
|
|
||||||
PVlmcsdHeader_t KmsData = NULL;
|
PVlmcsdHeader_t KmsData = NULL;
|
||||||
#ifndef NO_EXTERNAL_DATA
|
#ifndef NO_EXTERNAL_DATA
|
||||||
@ -104,7 +106,7 @@ int_fast8_t RandomizationLevel = 1;
|
|||||||
uint16_t Lcid = 0;
|
uint16_t Lcid = 0;
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef NO_SOCKETS
|
#if !defined(NO_SOCKETS) && !defined(USE_MSRPC)
|
||||||
#ifdef SIMPLE_SOCKETS
|
#ifdef SIMPLE_SOCKETS
|
||||||
SOCKET s_server;
|
SOCKET s_server;
|
||||||
#else
|
#else
|
||||||
@ -120,7 +122,7 @@ HANDLE MaxTaskSemaphore;
|
|||||||
#endif // _WIN32
|
#endif // _WIN32
|
||||||
|
|
||||||
#endif // !defined(NO_LIMIT) && !__minix__
|
#endif // !defined(NO_LIMIT) && !__minix__
|
||||||
#endif // NO_SOCKETS
|
#endif // !defined(NO_SOCKETS) && !defined(USE_MSRPC)
|
||||||
|
|
||||||
#ifdef _NTSERVICE
|
#ifdef _NTSERVICE
|
||||||
int_fast8_t IsNTService = TRUE;
|
int_fast8_t IsNTService = TRUE;
|
||||||
|
@ -133,6 +133,7 @@ extern int_fast8_t UseClientRpcBTFN;
|
|||||||
#endif // USE_MSRPC
|
#endif // USE_MSRPC
|
||||||
|
|
||||||
#ifndef NO_SOCKETS
|
#ifndef NO_SOCKETS
|
||||||
|
extern int_fast8_t ExitLevel;
|
||||||
extern char *defaultport;
|
extern char *defaultport;
|
||||||
#endif // NO_SOCKETS
|
#endif // NO_SOCKETS
|
||||||
|
|
||||||
|
20
src/vlmcsd.c
20
src/vlmcsd.c
@ -84,7 +84,7 @@
|
|||||||
#include "wintap.h"
|
#include "wintap.h"
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
static const char* const optstring = "N:B:m:t:w:0:3:6:H:A:R:u:g:L:p:i:P:l:r:U:W:C:c:F:O:o:T:K:E:M:j:SseDdVvqkZ";
|
static const char* const optstring = "N:B:m:t:w:0:3:6:H:A:R:u:g:L:p:i:P:l:r:U:W:C:c:F:O:o:x:T:K:E:M:j:SseDdVvqkZ";
|
||||||
|
|
||||||
#if !defined(NO_SOCKETS) && !defined(USE_MSRPC) && !defined(SIMPLE_SOCKETS)
|
#if !defined(NO_SOCKETS) && !defined(USE_MSRPC) && !defined(SIMPLE_SOCKETS)
|
||||||
static uint_fast8_t maxsockets = 0;
|
static uint_fast8_t maxsockets = 0;
|
||||||
@ -123,6 +123,9 @@ static IniFileParameter_t IniFileParameterList[] =
|
|||||||
{ "Office2010", INI_PARAM_OFFICE2010 },
|
{ "Office2010", INI_PARAM_OFFICE2010 },
|
||||||
{ "Office2013", INI_PARAM_OFFICE2013 },
|
{ "Office2013", INI_PARAM_OFFICE2013 },
|
||||||
{ "Office2016", INI_PARAM_OFFICE2016 },
|
{ "Office2016", INI_PARAM_OFFICE2016 },
|
||||||
|
# ifndef NO_SOCKETS
|
||||||
|
{ "ExitLevel", INI_PARAM_EXIT_LEVEL },
|
||||||
|
# endif // NO_SOCKETS
|
||||||
# ifndef NO_TAP
|
# ifndef NO_TAP
|
||||||
{ "VPN", INI_PARAM_VPN },
|
{ "VPN", INI_PARAM_VPN },
|
||||||
# endif // NO_TAP
|
# endif // NO_TAP
|
||||||
@ -296,6 +299,7 @@ static __noreturn void usage()
|
|||||||
" -O <v>[=<a>][/<c>]\tuse VPN adapter <v> with IPv4 address <a> and CIDR <c>\n"
|
" -O <v>[=<a>][/<c>]\tuse VPN adapter <v> with IPv4 address <a> and CIDR <c>\n"
|
||||||
# endif
|
# endif
|
||||||
# ifndef NO_SOCKETS
|
# ifndef NO_SOCKETS
|
||||||
|
" -x <level>\t\texit if warning <level> reached (default 0)\n"
|
||||||
# if !defined(USE_MSRPC) && !defined(SIMPLE_SOCKETS)
|
# if !defined(USE_MSRPC) && !defined(SIMPLE_SOCKETS)
|
||||||
" -L <address>[:<port>]\tlisten on IP address <address> with optional <port>\n"
|
" -L <address>[:<port>]\tlisten on IP address <address> with optional <port>\n"
|
||||||
" -P <port>\t\tset TCP port <port> for subsequent -L statements (default 1688)\n"
|
" -P <port>\t\tset TCP port <port> for subsequent -L statements (default 1688)\n"
|
||||||
@ -725,6 +729,15 @@ static BOOL setIniFileParameter(uint_fast8_t id, const char *const iniarg)
|
|||||||
|
|
||||||
# endif // USE_MSRPC
|
# endif // USE_MSRPC
|
||||||
|
|
||||||
|
# ifndef NO_SOCKETS
|
||||||
|
|
||||||
|
case INI_PARAM_EXIT_LEVEL:
|
||||||
|
success = getIniFileArgumentInt(&result, iniarg, 0, 1);
|
||||||
|
if (success) ExitLevel = (int_fast8_t)result;
|
||||||
|
break;
|
||||||
|
|
||||||
|
# endif // NO_SOCKETS
|
||||||
|
|
||||||
# if HAVE_FREEBIND
|
# if HAVE_FREEBIND
|
||||||
|
|
||||||
case INI_PARAM_FREEBIND:
|
case INI_PARAM_FREEBIND:
|
||||||
@ -1131,6 +1144,11 @@ static void parseGeneralArguments() {
|
|||||||
|
|
||||||
# ifndef NO_SOCKETS
|
# ifndef NO_SOCKETS
|
||||||
|
|
||||||
|
case 'x':
|
||||||
|
ignoreIniFileParameter(INI_PARAM_EXIT_LEVEL);
|
||||||
|
ExitLevel = getOptionArgumentInt((char)o, 0, 1);
|
||||||
|
break;
|
||||||
|
|
||||||
case 'P':
|
case 'P':
|
||||||
ignoreIniFileParameter(INI_PARAM_PORT);
|
ignoreIniFileParameter(INI_PARAM_PORT);
|
||||||
# if !defined(SIMPLE_SOCKETS) && !defined(USE_MSRPC)
|
# if !defined(SIMPLE_SOCKETS) && !defined(USE_MSRPC)
|
||||||
|
@ -58,6 +58,7 @@ int server_main(int argc, CARGV argv);
|
|||||||
#define INI_PARAM_START_EMPTY 27
|
#define INI_PARAM_START_EMPTY 27
|
||||||
#define INI_PARAM_DATA_FILE 28
|
#define INI_PARAM_DATA_FILE 28
|
||||||
#define INI_PARAM_VPN 29
|
#define INI_PARAM_VPN 29
|
||||||
|
#define INI_PARAM_EXIT_LEVEL 30
|
||||||
|
|
||||||
#define INI_FILE_PASS_1 1
|
#define INI_FILE_PASS_1 1
|
||||||
#define INI_FILE_PASS_2 2
|
#define INI_FILE_PASS_2 2
|
||||||
|
@ -297,6 +297,7 @@ static DWORD WINAPI TapMirror(LPVOID data)
|
|||||||
|
|
||||||
free(ActiveTapName);
|
free(ActiveTapName);
|
||||||
CloseHandle(TapHandle);
|
CloseHandle(TapHandle);
|
||||||
|
exitOnWarningLevel(1);
|
||||||
return error;
|
return error;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user