+ 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 to a specific port from a config tag.
+ * @param tag the tag that contains bind information.
+ * @param sa The endpoint to listen on.
+ * @param old_ports Previously listening ports that may be on the same endpoint.
+ */
+ bool BindPort(ConfigTag* tag, const irc::sockets::sockaddrs& sa, std::vector<ListenSocket*>& old_ports);