add linux syscall sys_getrandom to lcorernd
[lcore.git] / lcoreconfig.inc
index 89d299ea1c678bdc7cc568c1b6f7ae4ef11e2c14..fbf9b6dc90c6b81cd47c5eaf7b9f2b5b42ceb33d 100644 (file)
@@ -1,3 +1,9 @@
+\r
+{ Copyright (C) 2005 Bas Steendijk and Peter Green\r
+  For conditions of distribution and use, see copyright notice in zlib_license.txt\r
+  which is included in the package\r
+  ----------------------------------------------------------------------------- }\r
+\r
 {this enables the entire ipv6 functionality - resolving, connecting, etc\r
 this is enabled by default to make all apps using lcore automatically ipv6 aware.\r
 to disable, undefine it here, or define "noipv6" in the app}\r
@@ -6,9 +12,41 @@ to disable, undefine it here, or define "noipv6" in the app}
 {$define ipv6}\r
 {$endif}\r
 \r
+{-------------------------------------------------------------------------------------}\r
 {there are 2 ways to use DNS in lcore: dnscore, which an entire built in DNS client, and getaddrinfo.\r
 dnscore is always included on *nix to avoid libc dependency problems, but getaddrinfo is used on windows.\r
 when getaddrinfo is used, there is no reason to include dnscore, and it increases the exe size,\r
 unless you want to use custom nameserver addresses. enable this setting to always include it.}\r
 \r
 {-$define syncdnscore}\r
+\r
+{-------------------------------------------------------------------------------------}\r
+{lcore contains a built in general purpose secure random number generator, which is used elsewhere in lcore, for\r
+example by the DNS resolver. the used random function can be hooked to point to one's own RNG as desired.\r
+it is then also possible to not include the built in RNG in the exe, which reduces code size}\r
+\r
+{-$define nolcorernd}\r
+\r
+{-------------------------------------------------------------------------------------}\r
+{on windows up to XP, listening on ipv6 will not listen on ipv4, while on other platforms it does, \r
+so a single listener cant get all connections for a port number, only those for one address family.\r
+also it means a portable app would gave to deal with inconsistent behavior.\r
+enable this option to simulate the behavior of listening on both v4 and v6}\r
+\r
+{$ifdef mswindows}{$ifdef ipv6}\r
+{$define secondlistener}\r
+{$endif}{$endif}\r
+\r
+{-------------------------------------------------------------------------------------}\r
+{the threaded windows async dns is currently (2014-03-28) broken. it causes crashes\r
+after running for a period of time. -anders}\r
+{$ifdef mswindows}\r
+  {-$define winasyncdns}\r
+{$endif}\r
+\r
+{-------------------------------------------------------------------------------------}\r
+{btime used to set TimeBeginPeriod(1) on init, so a program was permanently in this state.\r
+doing this is not recommended, so it is no longer done by default.\r
+set this define to get the old behavior back.}\r
+{-$define btimehighrate}\r
+\r