server/peer.c, server/admin.c: Introduce `p_destroyall'.
authorMark Wooding <mdw@distorted.org.uk>
Sat, 19 May 2018 19:15:58 +0000 (20:15 +0100)
committerMark Wooding <mdw@distorted.org.uk>
Fri, 25 Jan 2019 12:10:32 +0000 (12:10 +0000)
Rather than having the loop in `a_quit' directly.

server/admin.c
server/peer.c
server/tripe.h

index 90ef4ef..05cd168 100644 (file)
@@ -565,7 +565,7 @@ void a_notify(const char *fmt, ...)
 void a_quit(void)
 {
   a_unlisten();
-  FOREACH_PEER(p, { p_destroy(p, 1); });
+  p_destroyall();
   ps_quit();
   exit(0);
 }
index 59a42cd..5855f2e 100644 (file)
@@ -1147,6 +1147,17 @@ void p_destroy(peer *p, int bye)
   DESTROY(p);
 }
 
+/* --- @p_destroyall@ --- *
+ *
+ * Arguments:  ---
+ *
+ * Returns:    ---
+ *
+ * Use:                Destroys all of the peers, saying goodbye.
+ */
+
+void p_destroyall(void) { FOREACH_PEER(p, { p_destroy(p, 1); }); }
+
 /* --- @p_mkiter@ --- *
  *
  * Arguments:  @peer_iter *i@ = pointer to an iterator
index 9d15cb4..f8e7bb6 100644 (file)
@@ -1804,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