#include <ccan/tevent/tevent.h>
/**
- * oserver_setup - set up an oserver
+ * oserver_restore - restore an oserver from dump
* @ev: tevent context to use.
- * @port: port to use (usually OSERVER_PORT)
- * @dumpfile: file to save state to on SIGHUP (if non-NULL).
+ * @dumpfile: file to with saved state.
*
- * Opens a socket and binds it to @port, then sets it up to listen
- * for connections. talloc_free() the pointer returned to shut it down
+ * Tries to restore an oserver from the dump file. Returns NULL on failure.
+ * talloc_free() the pointer returned to shut it down
* (its parent is the tevent_context).
*
* Example:
* struct tevent_context *ev;
*
* ev = tevent_context_init(NULL);
- * oserver = oserver_setup(ev, OSERVER_PORT, "oserver.dump");
- * if (!oserver)
- * err(1, "Failed to set up server");
+ * oserver = oserver_restore(ev, "oserver.dump");
+ * if (oserver)
+ * printf("Restored oserver!");
+ */
+struct oserver *oserver_restore(struct tevent_context *ev,
+ const char *dumpfile);
+
+
+/**
+ * oserver_setup - set up an oserver
+ * @ev: tevent context to use.
+ * @port: port to use (usually OSERVER_PORT)
+ * @dumpfile: file to save state to on SIGHUP (if non-NULL).
*
+ * Opens a socket and binds it to @port, then sets it up to listen
+ * for connections. talloc_free() the pointer returned to shut it down
+ * (its parent is the tevent_context).
+ *
+ * Example:
+ * ...
+ * else {
+ * oserver = oserver_setup(ev, OSERVER_PORT, "oserver.dump");
+ * if (!oserver)
+ * err(1, "Failed to set up server");
+ * }
* while (tevent_loop_wait(ev) == 0);
* err(1, "Event loop failed");
*/