Lines Matching refs:sub
334 struct tipc_subscription *sub, *tmp;
365 list_for_each_entry_safe(sub, tmp, &sc->subscriptions, service_list) {
366 tipc_sub_report_overlap(sub, p, TIPC_PUBLISHED, first);
418 * @service: the tipc_service to attach the @sub to
419 * @sub: the subscription to attach
422 struct tipc_subscription *sub)
429 filter = sub->s.filter;
430 lower = sub->s.seq.lower;
431 upper = sub->s.seq.upper;
433 tipc_sub_get(sub);
434 list_add(&sub->service_list, &service->subscriptions);
456 tipc_sub_report_overlap(sub, p, TIPC_PUBLISHED, true);
502 struct tipc_subscription *sub, *tmp;
522 list_for_each_entry_safe(sub, tmp, &sc->subscriptions, service_list) {
523 tipc_sub_report_overlap(sub, p, TIPC_WITHDRAWN, last);
825 * @sub: subscription to add
827 bool tipc_nametbl_subscribe(struct tipc_subscription *sub)
829 struct tipc_net *tn = tipc_net(sub->net);
830 u32 type = sub->s.seq.type;
836 sub->s.seq.lower, sub->s.seq.upper);
838 sc = tipc_service_find(sub->net, &ua);
840 sc = tipc_service_create(sub->net, &ua);
843 tipc_service_subscribe(sc, sub);
847 type, sub->s.seq.lower, sub->s.seq.upper);
856 * @sub: subscription to remove
858 void tipc_nametbl_unsubscribe(struct tipc_subscription *sub)
860 struct tipc_net *tn = tipc_net(sub->net);
865 sub->s.seq.type, sub->s.seq.lower, sub->s.seq.upper);
867 sc = tipc_service_find(sub->net, &ua);
872 list_del_init(&sub->service_list);
873 tipc_sub_put(sub);