diff options
author | John Kohl <jtkohl@mit.edu> | 1989-05-04 13:36:06 +0000 |
---|---|---|
committer | John Kohl <jtkohl@mit.edu> | 1989-05-04 13:36:06 +0000 |
commit | a07a0e92d3401005ce925552cb7cee31accf804f (patch) | |
tree | 7e59b522074a82157f5c213d557895394b44fa92 /server/client.c | |
parent | e14e41e6e33a3c21382d79b572dd8ce985f8657a (diff) |
add support for subscriptions without defaults
Diffstat (limited to 'server/client.c')
-rw-r--r-- | server/client.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/server/client.c b/server/client.c index e98985c..3409f28 100644 --- a/server/client.c +++ b/server/client.c @@ -22,11 +22,12 @@ static char rcsid_client_c[] = "$Header$"; /* * External functions: * - * Code_t client_register(notice, who, client, server) + * Code_t client_register(notice, who, client, server, wantdefaults) * ZNotice_t *notice; * struct sockaddr_in *who; * ZClient_t **client; (RETURN) * ZServerDesc_t *server; + * int wantdefaults; * * Code_t client_deregister(client, host, flush) * ZClient_t *client; @@ -57,11 +58,12 @@ static void clt_free(); */ Code_t -client_register(notice, who, client, server) +client_register(notice, who, client, server, wantdefaults) ZNotice_t *notice; struct sockaddr_in *who; register ZClient_t **client; /* RETURN */ ZServerDesc_t *server; +int wantdefaults; { register ZHostList_t *hlp = server->zs_hosts; register ZHostList_t *hlp2; @@ -113,9 +115,10 @@ ZServerDesc_t *server; xinsque(clist, hlp2->zh_clients); (void) sigsetmask(omask); - if (!server->zs_dumping) + if (!server->zs_dumping || wantdefaults) /* add default subscriptions only if this is not - resulting from a brain dump */ + resulting from a brain dump, or this request + wants defaults */ return(subscr_def_subs(*client)); else return(ZERR_NONE); |