Skip to content
This repository has been archived by the owner on Aug 14, 2024. It is now read-only.

Commit

Permalink
vlmcsd-svn1099-2016-10-25-Hotbird64
Browse files Browse the repository at this point in the history
  • Loading branch information
Wind4 committed Oct 31, 2016
1 parent 936811f commit fcbbc40
Show file tree
Hide file tree
Showing 39 changed files with 905 additions and 306 deletions.
12 changes: 10 additions & 2 deletions etc/vlmcsd.ini
Original file line number Diff line number Diff line change
Expand Up @@ -87,9 +87,17 @@
;WhiteListingLevel = 0

# Check that the client time is within +/- 4 hours of the system time
# Command Line: -c0, -c1
# Command line: -c0, -c1
;CheckClientTime = false

# Maintain a list of CMIDs
# Command line: -M0, -M1
;MaintainClients = false

# Start with empty CMID list (Requires MaintainClients = true)
# Command line: -E0, -E1
;StartEmpty = false

# Set activation interval to 2 hours
# Command line: -A
;ActivationInterval = 2h
Expand All @@ -107,7 +115,7 @@
;group = vlmcsdgroup

# Disable or enable the NDR64 transfer syntax in RPC (default enabled)
# Command line: -N0 and -B1
# Command line: -N0 and -N1
;UseNDR64 = true

# Disable or enable bind time feature negotiation in RPC (default enabled)
Expand Down
Binary file modified floppy/floppy144.vfd
Binary file not shown.
209 changes: 108 additions & 101 deletions hotbird64-mass-build/make_linux

Large diffs are not rendered by default.

6 changes: 3 additions & 3 deletions hotbird64-mass-build/make_openbsd
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@ REUSEOBJFLAGS="-j12"
CF="-static-libgcc -pipe -fwhole-program -fno-common -fno-exceptions -fno-stack-protector -fno-unwind-tables -fno-asynchronous-unwind-tables -fmerge-all-constants"
CF45="-static-libgcc -pipe -fno-common -fno-exceptions -fno-stack-protector -fno-unwind-tables -fno-asynchronous-unwind-tables -fmerge-all-constants"
CFCLANG="-pipe -fno-common -fno-exceptions -fno-stack-protector -fno-unwind-tables -fno-asynchronous-unwind-tables -fmerge-all-constants"
LF="-Wl,-z,norelro"
LFCLANG="-Wl,-z,norelro"
LF="-lpthread -Wl,-z,norelro"
LFCLANG="-lpthread -Wl,-z,norelro"

gmake -Bj12 allmulti $MAKEFLAGS CC=egcc MULTI_NAME=$BINDIR/vlmcsdmulti-OpenBSD-x64 PROGRAM_NAME=$BINDIR/vlmcsd-OpenBSD-x64 CLIENT_NAME=$BINDIR/vlmcs-OpenBSD-x64 CFLAGS="$CF" LDFLAGS="$LF"
gmake -Bj12 allmulti $MAKEFLAGS CC=egcc THREADS=1 MULTI_NAME=$BINDIR/vlmcsdmulti-OpenBSD-x64 PROGRAM_NAME=$BINDIR/vlmcsd-OpenBSD-x64 CLIENT_NAME=$BINDIR/vlmcs-OpenBSD-x64 CFLAGS="$CF" LDFLAGS="$LF"

#gmake allmulti $MAKEFLAGS CAT=2 MULTI_NAME=vlmcsdmulti-OpenBSD-x86 PROGRAM_NAME=vlmcsd-OpenBSD-x86 CLIENT_NAME=vlmcs-OpenBSD-x86 CFLAGS="$CF45 -m32" LDFLAGS="$LF"

Expand Down
2 changes: 1 addition & 1 deletion man/vlmcs.1.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file modified man/vlmcs.1.pdf
Binary file not shown.
5 changes: 4 additions & 1 deletion man/vlmcsd-floppy.7
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
.mso www.tmac
.TH "VLMCSD-FLOPPY" 7 "June 2016" "Hotbird64" "KMS Activation Manual"
.TH "VLMCSD-FLOPPY" 7 "October 2016" "Hotbird64" "KMS Activation Manual"
.LO 8

.SH NAME
Expand Down Expand Up @@ -166,6 +166,9 @@ Sets the password for the pre-defined guest user. This user has the same privili
.IP "\fBINETD=\fRY | N"
\fBINETD=\fRY specifies that \fBinetd\fR(8) should automatically be started. That means you can telnet and ftp to your virtual machine.

.IP "\fBVLMCSD_EXTRA_ARGS=\fR\fIcomma-seperated-argument-list\fR"
Allows you to specify additional command line options that will be passed to \fBvlmcsd\fR(8). Instead of spaces you use commas between arguments. Example: \fBVLMCSD_EXTRA_ARGS=\fR\-c1,-K3,-M1

.SH OPERATION

.SS Diskless System
Expand Down
8 changes: 7 additions & 1 deletion man/vlmcsd-floppy.7.dos.txt
Original file line number Diff line number Diff line change
Expand Up @@ -310,6 +310,12 @@ CONFIGURATION
That means you can telnet and ftp to your virtual machine.


VLMCSD_EXTRA_ARGS=comma-seperated-argument-list
Allows you to specify additional command line options that will
be passed to vlmcsd(8). Instead of spaces you use commas between
arguments. Example: VLMCSD_EXTRA_ARGS=-c1,-K3,-M1


OPERATION
Diskless System
The floppy144.vfd virtual machine is a diskless system that works
Expand Down Expand Up @@ -527,4 +533,4 @@ SEE ALSO



Hotbird64 June 2016 VLMCSD-FLOPPY(7)
Hotbird64 October 2016 VLMCSD-FLOPPY(7)
10 changes: 9 additions & 1 deletion man/vlmcsd-floppy.7.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file modified man/vlmcsd-floppy.7.pdf
Binary file not shown.
8 changes: 7 additions & 1 deletion man/vlmcsd-floppy.7.unix.txt
Original file line number Diff line number Diff line change
Expand Up @@ -310,6 +310,12 @@ CONFIGURATION
That means you can telnet and ftp to your virtual machine.


VLMCSD_EXTRA_ARGS=comma-seperated-argument-list
Allows you to specify additional command line options that will
be passed to vlmcsd(8). Instead of spaces you use commas between
arguments. Example: VLMCSD_EXTRA_ARGS=-c1,-K3,-M1


OPERATION
Diskless System
The floppy144.vfd virtual machine is a diskless system that works
Expand Down Expand Up @@ -527,4 +533,4 @@ SEE ALSO



Hotbird64 June 2016 VLMCSD-FLOPPY(7)
Hotbird64 October 2016 VLMCSD-FLOPPY(7)
2 changes: 1 addition & 1 deletion man/vlmcsd.7.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file modified man/vlmcsd.7.pdf
Binary file not shown.
8 changes: 8 additions & 0 deletions man/vlmcsd.8
Original file line number Diff line number Diff line change
Expand Up @@ -203,6 +203,14 @@ The SKU ID is not checked. Like a genuine KMS server vlmcsd activates a product
.IP "\fB-c0\fR and \fB-c1\fR"
\fB-c1\fR causes vlmcsd to check if the client time differs no more than four hours from the system time. \fB-c0\fR (the default) disables this check. \fB-c1\fR is useful to prevent emulator detection. A client that tries to detect an emulator could simply send two subsequent request with two time stamps that differ more than four hours from each other. If both requests succeed, the server is an emulator. If you specify \fB-c1\fR on a system with no reliable time source, activations will fail. It is ok to set the correct system time after you started vlmcsd.

.IP "\fB-M0\fR and \fB-M1\fR"
Disables (\fB-M0\fR) or enables (\fB-M1\fR) maintaining a list of client machine IDs (CMIDs). The default is \fB-M0\fR. \fB-M1\fR is useful to prevent emulator detection. By maintaing a CMID list, vlmcsd reports current active clients exactly like a genuine KMS emulator. This includes bug compatibility to the extent that you can permanently kill a genuine KMS emulator by sending an "overcharge request" with a required client count of 376 or more and then request activation for 671 clients. vlmcsd can be reset from this condition by restarting it. If \fB-M0\fR is used, vlmcsd reports current active clients as good as possible. If no client sends an "overcharge request", it is not possible to detect vlmcsd as an emulator with \fB-M0\fR. \fB-M1\fR requires the allocation of a buffer that is about 50 kB in size. On hardware with few memory resources use it only if you really need it.

If you start vlmcsd from an internet superserver, \fB-M1\fR cannot be used. Since vlmcsd exits after each activation, it cannot maintain any state in memory.

.IP "\fB-E0\fR and \fB-E1\fR"
These options are ignored if you do not also specify \fB-M1\fR. If you use \fB-E0\fR (the default), vlmcsd starts up as a fully "charged" KMS server. Clients activate immediately. \fB-E1\fR lets you start up vlmcsd with an empty CMID list. Activation will start when the required minimum clients (25 for Windows Client OSses, 5 for Windows Server OSses and Office) have registered with the KMS server. As long as the minimum client count has not been reached, clients end up in HRESULT 0xC004F038 "The count reported by your Key Management Service (KMS) is insufficient. Please contact your system administrator". You may use \fBvlmcs\fR(1) or another KMS client emulator to "charge" vlmcsd. \fB-E1\fR does not improve emulator detection prevention. It's primary purpose is to help developers of KMS clients to test "charging" a KMS server.

.IP "\fB-R\fR \fIrenewal-interval\fR"
Instructs clients to renew activation every \fIrenewal-interval\fR. The \fIrenewal-interval\fR is a number optionally immediately followed by a letter indicating the unit. Valid unit letters are s (seconds), m (minutes), h (hours), d (days) and w (weeks). If you do not specify a letter, minutes is assumed.

Expand Down
38 changes: 38 additions & 0 deletions man/vlmcsd.8.dos.txt
Original file line number Diff line number Diff line change
Expand Up @@ -449,6 +449,44 @@ OPTIONS
system time after you started vlmcsd.


-M0 and -M1
Disables (-M0) or enables (-M1) maintaining a list of client
machine IDs (CMIDs). The default is -M0. -M1 is useful to pre‐
vent emulator detection. By maintaing a CMID list, vlmcsd
reports current active clients exactly like a genuine KMS emula‐
tor. This includes bug compatibility to the extent that you can
permanently kill a genuine KMS emulator by sending an "over‐
charge request" with a required client count of 376 or more and
then request activation for 671 clients. vlmcsd can be reset
from this condition by restarting it. If -M0 is used, vlmcsd
reports current active clients as good as possible. If no client
sends an "overcharge request", it is not possible to detect vlm‐
csd as an emulator with -M0. -M1 requires the allocation of a
buffer that is about 50 kB in size. On hardware with few memory
resources use it only if you really need it.

If you start vlmcsd from an internet superserver, -M1 cannot be
used. Since vlmcsd exits after each activation, it cannot main‐
tain any state in memory.


-E0 and -E1
These options are ignored if you do not also specify -M1. If you
use -E0 (the default), vlmcsd starts up as a fully "charged" KMS
server. Clients activate immediately. -E1 lets you start up vlm‐
csd with an empty CMID list. Activation will start when the
required minimum clients (25 for Windows Client OSses, 5 for
Windows Server OSses and Office) have registered with the KMS
server. As long as the minimum client count has not been
reached, clients end up in HRESULT 0xC004F038 "The count
reported by your Key Management Service (KMS) is insufficient.
Please contact your system administrator". You may use vlmcs(1)
or another KMS client emulator to "charge" vlmcsd. -E1 does not
improve emulator detection prevention. It's primary purpose is
to help developers of KMS clients to test "charging" a KMS
server.


-R renewal-interval
Instructs clients to renew activation every renewal-interval.
The renewal-interval is a number optionally immediately followed
Expand Down
47 changes: 46 additions & 1 deletion man/vlmcsd.8.html

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Binary file modified man/vlmcsd.8.pdf
Binary file not shown.
38 changes: 38 additions & 0 deletions man/vlmcsd.8.unix.txt
Original file line number Diff line number Diff line change
Expand Up @@ -449,6 +449,44 @@ OPTIONS
system time after you started vlmcsd.


-M0 and -M1
Disables (-M0) or enables (-M1) maintaining a list of client
machine IDs (CMIDs). The default is -M0. -M1 is useful to pre‐
vent emulator detection. By maintaing a CMID list, vlmcsd
reports current active clients exactly like a genuine KMS emula‐
tor. This includes bug compatibility to the extent that you can
permanently kill a genuine KMS emulator by sending an "over‐
charge request" with a required client count of 376 or more and
then request activation for 671 clients. vlmcsd can be reset
from this condition by restarting it. If -M0 is used, vlmcsd
reports current active clients as good as possible. If no client
sends an "overcharge request", it is not possible to detect vlm‐
csd as an emulator with -M0. -M1 requires the allocation of a
buffer that is about 50 kB in size. On hardware with few memory
resources use it only if you really need it.

If you start vlmcsd from an internet superserver, -M1 cannot be
used. Since vlmcsd exits after each activation, it cannot main‐
tain any state in memory.


-E0 and -E1
These options are ignored if you do not also specify -M1. If you
use -E0 (the default), vlmcsd starts up as a fully "charged" KMS
server. Clients activate immediately. -E1 lets you start up vlm‐
csd with an empty CMID list. Activation will start when the
required minimum clients (25 for Windows Client OSses, 5 for
Windows Server OSses and Office) have registered with the KMS
server. As long as the minimum client count has not been
reached, clients end up in HRESULT 0xC004F038 "The count
reported by your Key Management Service (KMS) is insufficient.
Please contact your system administrator". You may use vlmcs(1)
or another KMS client emulator to "charge" vlmcsd. -E1 does not
improve emulator detection prevention. It's primary purpose is
to help developers of KMS clients to test "charging" a KMS
server.


-R renewal-interval
Instructs clients to renew activation every renewal-interval.
The renewal-interval is a number optionally immediately followed
Expand Down
10 changes: 9 additions & 1 deletion man/vlmcsd.ini.5
Original file line number Diff line number Diff line change
Expand Up @@ -118,8 +118,16 @@ The SKU ID is not checked. Like a genuine KMS server vlmcsd activates a product
.IP "\fBCheckClientTime\fR"
Can be TRUE or FALSE. The default is FALSE. If you set this to TRUE \fBvlmcsd\fR(8) checks if the client time differs no more than four hours from the system time. This is useful to prevent emulator detection. A client that tries to detect an emulator could simply send two subsequent request with two time stamps that differ more than four hours from each other. If both requests succeed, the server is an emulator. If you set this to TRUE on a system with no reliable time source, activations will fail. It is ok to set the correct system time after you started \fBvlmcsd\fR(8).

.IP "\fBMaintainClients\fR"
Can be TRUE or FALSE (the default). Disables (FALSE) or enables (TRUE) maintaining a list of client machine IDs (CMIDs). TRUE is useful to prevent emulator detection. By maintaing a CMID list, \fBvlmcsd\fR(8) reports current active clients exactly like a genuine KMS emulator. This includes bug compatibility to the extent that you can permanently kill a genuine KMS emulator by sending an "overcharge request" with a required client count of 376 or more and then request activation for 671 clients. \fBvlmcsd\fR(8) can be reset from this condition by restarting it. If FALSE is used, \fBvlmcsd\fR(8) reports current active clients as good as possible. If no client sends an "overcharge request", it is not possible to detect \fBvlmcsd\fR(8) as an emulator with \fBMaintainClients\fR\~=\~FALSE. Maintaining clients requires the allocation of a buffer that is about 50 kB in size. On hardware with few memory resources use it only if you really need it.

If you start \fBvlmcsd\fR(8) from an internet superserver, this setting cannot be used. Since \fBvlmcsd\fR(8) exits after each activation, it cannot maintain any state in memory.

.IP "\fBStartEmpty\fR"
This setting is ignored if you do not also specify \fBMaintainClients\fR\~=\~TRUE. If you specify FALSE (the default), \fBvlmcsd\fR(8) starts up as a fully "charged" KMS server. Clients activate immediately. \fBStartEmpty\fR\~=\~TRUE lets you start up \fBvlmcsd\fR(8) with an empty CMID list. Activation will start when the required minimum clients (25 for Windows Client OSses, 5 for Windows Server OSses and Office) have registered with the KMS server. As long as the minimum client count has not been reached, clients end up in HRESULT 0xC004F038 "The count reported by your Key Management Service (KMS) is insufficient. Please contact your system administrator". You may use \fBvlmcs\fR(1) or another KMS client emulator to "charge" \fBvlmcsd\fR(8). Setting this parameter to TRUE does not improve emulator detection prevention. It's primary purpose is to help developers of KMS clients to test "charging" a KMS server.

.IP "\fBActivationInterval\fR"
This is the same as specifying \fB-A\fR on the command line. See \fBvlmcsd\fR(8) for details. The default is 2 hours. Example: ActivationInterval = 1h
This is the same as specifying \fB-A\fR on the command line. See \fBvlmcsd\fR(8) for details. The default is 2 hours. Example: ActivationInterval\~=\~1h

.IP "\fBRenewalInterval\fR"
This is the same as specifying \fB-R\fR on the command line. See \fBvlmcsd\fR(8) for details. The default is 7 days. Example: RenewalInterval = 3d. Please note that the KMS client decides itself when to renew activation. Even though vlmcsd sends the renewal interval you specify, it is no more than some kind of recommendation to the client. Older KMS clients did follow the recommendation from a KMS server or emulator. Newer clients do not.
Expand Down
Loading

0 comments on commit fcbbc40

Please sign in to comment.