server/peer.c, server/admin.c: Introduce `p_destroyall'.
[tripe] / server / tripe.h
index a2fdd00..f8e7bb6 100644 (file)
@@ -1357,6 +1357,17 @@ extern void a_daemon(void);
 extern void a_listen(const char */*sock*/,
                     uid_t /*u*/, gid_t /*g*/, mode_t /*m*/);
 
+/* --- @a_unlisten@ --- *
+ *
+ * Arguments:  ---
+ *
+ * Returns:    ---
+ *
+ * Use:                Stops listening to the administration socket and removes it.
+ */
+
+extern void a_unlisten(void);
+
 /* --- @a_switcherr@ --- *
  *
  * Arguments:  ---
@@ -1793,6 +1804,17 @@ extern peer *p_find(const char */*name*/);
 
 extern void p_destroy(peer */*p*/, int /*bye*/);
 
+/* --- @p_destroyall@ --- *
+ *
+ * Arguments:  ---
+ *
+ * Returns:    ---
+ *
+ * Use:                Destroys all of the peers, saying goodbye.
+ */
+
+extern void p_destroyall(void);
+
 /* --- @FOREACH_PEER@ --- *
  *
  * Arguments:  @p@ = name to bind to each peer
@@ -1855,6 +1877,31 @@ extern void iv_addreason(void);
 
 extern void iv_rmreason(void);
 
+/*----- The main loop -----------------------------------------------------*/
+
+/* --- @lp_init@ --- *
+ *
+ * Arguments:  ---
+ *
+ * Returns:    ---
+ *
+ * Use:                Initializes the main loop.  Most importantly, this sets up
+ *             the select multiplexor that everything else hooks onto.
+ */
+
+extern void lp_init(void);
+
+/* --- @lp_run@ --- *
+ *
+ * Arguments:  ---
+ *
+ * Returns:    Zero on successful termination; @-1@ if things went wrong.
+ *
+ * Use:                Cranks the main loop until it should be cranked no more.
+ */
+
+extern int lp_run(void);
+
 /*----- Tunnel drivers ----------------------------------------------------*/
 
 #ifdef TUN_LINUX