summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorPeter Powell <petpow@saberuk.com>2017-11-25 12:50:11 +0000
committerPeter Powell <petpow@saberuk.com>2017-11-25 13:38:02 +0000
commit6abc789577a86ffcdce8fae81b37f825d9ca4226 (patch)
tree6c485e33261a0e4dfab8005e2f93b3063a7b98b5 /include
parent1dca8b79edf65c0e5e846cc120f1321fb0a1d15c (diff)
Convert GenRandom to std::function.
Diffstat (limited to 'include')
-rw-r--r--include/inspircd.h14
1 files changed, 8 insertions, 6 deletions
diff --git a/include/inspircd.h b/include/inspircd.h
index cbd43da43..00a705dd0 100644
--- a/include/inspircd.h
+++ b/include/inspircd.h
@@ -165,8 +165,6 @@ class serverstats
}
};
-DEFINE_HANDLER2(GenRandomHandler, void, char*, size_t);
-
/** The main class of the irc server.
* This class contains instances of all the other classes in this software.
* Amongst other things, it contains a ModeParser, a DNS object, a CommandParser
@@ -209,9 +207,6 @@ class CoreExport InspIRCd
/** Actions that must happen outside of the current call stack */
ActionList AtomicActions;
- /**** Functors ****/
- GenRandomHandler HandleGenRandom;
-
/** Globally accessible fake user record. This is used to force mode changes etc across s2s, etc.. bit ugly, but.. better than how this was done in 1.1
* Reason for it:
* kludge alert!
@@ -339,7 +334,14 @@ class CoreExport InspIRCd
unsigned long GenRandomInt(unsigned long max);
/** Fill a buffer with random bits */
- caller2<void, char*, size_t> GenRandom;
+ TR1NS::function<void(char*, size_t)> GenRandom;
+
+ /** Fills the output buffer with the specified number of random characters.
+ * This is the default function for InspIRCd::GenRandom.
+ * @param output The output buffer to store random characters in.
+ * @param max The maximum number of random characters to put in the buffer.
+ */
+ static void DefaultGenRandom(char* output, size_t max);
/** Bind all ports specified in the configuration file.
* @return The number of ports bound without error