summaryrefslogtreecommitdiff
path: root/lib/ZSubs.c
diff options
context:
space:
mode:
authorGravatar Robert S. French <rfrench@mit.edu>1988-05-17 17:21:01 +0000
committerGravatar Robert S. French <rfrench@mit.edu>1988-05-17 17:21:01 +0000
commit031ec0f258f152c1e20905b381aa7f5974db1f3d (patch)
tree1c15619ec8a5192e2d5095c6efde5e9a47ddc7ce /lib/ZSubs.c
parent4d21b4b5da809cdf4499190a1e27bff679a90422 (diff)
All sorts of changes for ver 0.2
Diffstat (limited to 'lib/ZSubs.c')
-rw-r--r--lib/ZSubs.c121
1 files changed, 61 insertions, 60 deletions
diff --git a/lib/ZSubs.c b/lib/ZSubs.c
index 83e7ff2..dba8cd1 100644
--- a/lib/ZSubs.c
+++ b/lib/ZSubs.c
@@ -21,85 +21,86 @@ static char rcsid_ZSubscriptions_c[] = "$Header$";
#include <zephyr/zephyr_internal.h>
-Code_t ZSubscribeTo(sublist,nitems,port)
- ZSubscription_t *sublist;
- int nitems;
- u_short port;
+Code_t ZSubscribeTo(sublist, nitems, port)
+ ZSubscription_t *sublist;
+ int nitems;
+ u_short port;
{
- return (Z_Subscriptions(sublist,nitems,port,CLIENT_SUBSCRIBE,1));
+ return (Z_Subscriptions(sublist, nitems, port, CLIENT_SUBSCRIBE, 1));
}
-Code_t ZUnsubscribeTo(sublist,nitems,port)
- ZSubscription_t *sublist;
- int nitems;
- u_short port;
+Code_t ZUnsubscribeTo(sublist, nitems, port)
+ ZSubscription_t *sublist;
+ int nitems;
+ u_short port;
{
- return (Z_Subscriptions(sublist,nitems,port,CLIENT_UNSUBSCRIBE,1));
+ return (Z_Subscriptions(sublist, nitems, port, CLIENT_UNSUBSCRIBE, 1));
}
Code_t ZCancelSubscriptions(port)
- u_short port;
+ u_short port;
{
- return (Z_Subscriptions((ZSubscription_t *)0,0,port,
- CLIENT_CANCELSUB,0));
+ return (Z_Subscriptions((ZSubscription_t *)0, 0, port,
+ CLIENT_CANCELSUB, 0));
}
-Z_Subscriptions(sublist,nitems,port,opcode,authit)
- ZSubscription_t *sublist;
- int nitems;
- u_short port;
- char *opcode;
- int authit;
+Z_Subscriptions(sublist, nitems, port, opcode, authit)
+ ZSubscription_t *sublist;
+ int nitems;
+ u_short port;
+ char *opcode;
+ int authit;
{
- int i,retval;
- ZNotice_t notice,retnotice;
- ZPacket_t buffer;
- char **list;
+ int i, retval;
+ ZNotice_t notice, retnotice;
+ char **list;
- list = (char **)malloc((unsigned)nitems*3*sizeof(char *));
- if (!list)
- return (ENOMEM);
+ list = (char **)malloc((unsigned)nitems*3*sizeof(char *));
+ if (!list)
+ return (ENOMEM);
- notice.z_kind = ACKED;
- notice.z_port = port;
- notice.z_class = ZEPHYR_CTL_CLASS;
- notice.z_class_inst = ZEPHYR_CTL_CLIENT;
- notice.z_opcode = opcode;
- notice.z_sender = 0;
- notice.z_recipient = "";
- notice.z_default_format = "";
- notice.z_message_len = 0;
+ notice.z_kind = ACKED;
+ notice.z_port = port;
+ notice.z_class = ZEPHYR_CTL_CLASS;
+ notice.z_class_inst = ZEPHYR_CTL_CLIENT;
+ notice.z_opcode = opcode;
+ notice.z_sender = 0;
+ notice.z_recipient = "";
+ notice.z_num_other_fields = 0;
+ notice.z_default_format = "";
+ notice.z_message_len = 0;
- for (i=0;i<nitems;i++) {
- list[i*3] = sublist[i].class;
- list[i*3+1] = sublist[i].classinst;
- if (sublist[i].recipient && *sublist[i].recipient &&
- *sublist[i].recipient != '*')
- list[i*3+2] = ZGetSender();
- else
- list[i*3+2] = "";
- }
+ for (i=0;i<nitems;i++) {
+ list[i*3] = sublist[i].class;
+ list[i*3+1] = sublist[i].classinst;
+ if (sublist[i].recipient && *sublist[i].recipient &&
+ *sublist[i].recipient != '*')
+ list[i*3+2] = ZGetSender();
+ else
+ list[i*3+2] = "";
+ }
- retval = ZSendList(&notice,list,nitems*3,ZAUTH);
- if (retval != ZERR_NONE && !authit)
- retval = ZSendList(&notice,list,nitems*3,ZNOAUTH);
+ retval = ZSendList(&notice, list, nitems*3, ZAUTH);
+ if (retval != ZERR_NONE && !authit)
+ retval = ZSendList(&notice, list, nitems*3, ZNOAUTH);
- free((char *)list);
+ free((char *)list);
- if (retval != ZERR_NONE)
- return (retval);
+ if (retval != ZERR_NONE)
+ return (retval);
- if ((retval = ZIfNotice(buffer,sizeof buffer,&retnotice,
- (struct sockaddr_in *)0,
- ZCompareUIDPred,(char *)&notice.z_uid)) !=
- ZERR_NONE)
- return (retval);
+ if ((retval = ZIfNotice(&retnotice, (struct sockaddr_in *)0,
+ ZCompareUIDPred, (char *)&notice.z_uid)) !=
+ ZERR_NONE)
+ return (retval);
- if (retnotice.z_kind == SERVNAK)
- return (ZERR_SERVNAK);
+ ZFreeNotice(&retnotice);
+
+ if (retnotice.z_kind == SERVNAK)
+ return (ZERR_SERVNAK);
- if (retnotice.z_kind != SERVACK)
- return (ZERR_INTERNAL);
+ if (retnotice.z_kind != SERVACK)
+ return (ZERR_INTERNAL);
- return (ZERR_NONE);
+ return (ZERR_NONE);
}