Optional parameter to receive unrecognized command line arguments. If left to null, an error will be reported if any unrecognized argument is passed.
A simple echo server, listening on a privileged TCP port.
import vibe.core.core; import vibe.core.net; int main() { // first, perform any application specific setup (privileged ports still // available if run as root) listenTCP(7, (conn) { try conn.write(conn); catch (Exception e) { /* log error */ } }); // then use runApplication to perform the remaining initialization and // to run the event loop return runApplication(); }
The same as above, but performing the initialization sequence manually.
This allows to skip any additional initialization (opening the listening port) if an invalid command line argument or the --help switch is passed to the application.
import vibe.core.core; import vibe.core.net; int main() { // process the command line first, to be able to skip the application // setup if not required if (!finalizeCommandLineOptions()) return 0; // then set up the application listenTCP(7, (conn) { try conn.write(conn); catch (Exception e) { /* log error */ } }); // finally, perform privilege lowering (safe to skip for non-server // applications) lowerPrivileges(); // and start the event loop return runEventLoop(); }
vibe.core.args.finalizeCommandLineOptions, lowerPrivileges, runEventLoop
Performs final initialization and runs the event loop.
This function performs three tasks: