From 78e45b53a3904ce832e8a7e4654bc2efe9fb2c2c Mon Sep 17 00:00:00 2001 From: Mark Wooding Date: Sat, 19 May 2018 20:15:58 +0100 Subject: [PATCH] server/peer.c, server/admin.c: Introduce `p_destroyall'. Rather than having the loop in `a_quit' directly. --- server/admin.c | 2 +- server/peer.c | 11 +++++++++++ server/tripe.h | 11 +++++++++++ 3 files changed, 23 insertions(+), 1 deletion(-) diff --git a/server/admin.c b/server/admin.c index 90ef4ef1..05cd168b 100644 --- a/server/admin.c +++ b/server/admin.c @@ -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); } diff --git a/server/peer.c b/server/peer.c index 59a42cde..5855f2e1 100644 --- a/server/peer.c +++ b/server/peer.c @@ -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 diff --git a/server/tripe.h b/server/tripe.h index 9d15cb45..f8e7bb6c 100644 --- a/server/tripe.h +++ b/server/tripe.h @@ -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 -- 2.11.0