Lines Matching defs:groupp
132 list_all_domains(vntsd_group_t *groupp, vntsd_client_t *clientp)
156 (void) mutex_lock(&groupp->lock);
158 if (vntsd_que_find(groupp->conspq, (compare_func_t)display_domain_name,
163 (void) mutex_unlock(&groupp->lock);
232 name_to_cons_no(vntsd_group_t *groupp, char *name)
236 consp = (vntsd_cons_t *)vntsd_que_find(groupp->conspq,
248 select_cons(vntsd_group_t *groupp, vntsd_cons_t **consp,
259 (void) mutex_lock(&groupp->lock);
260 if (groupp->num_cons == 0) {
261 (void) mutex_unlock(&groupp->lock);
265 (void) mutex_unlock(&groupp->lock);
300 cons_no = name_to_cons_no(groupp, buf+i);
318 (void) mutex_lock(&groupp->lock);
320 *consp = (vntsd_cons_t *)vntsd_que_find(groupp->conspq,
325 (void) mutex_unlock(&groupp->lock);
333 (void) mutex_unlock(&groupp->lock);
354 vntsd_group_t *groupp;
357 groupp = consp->group;
358 assert(groupp);
361 (void) mutex_lock(&groupp->lock);
364 consp = vntsd_que_find(groupp->conspq,
368 (void) mutex_unlock(&groupp->lock);
372 (void) mutex_unlock(&groupp->lock);
395 (void) mutex_unlock(&groupp->lock);
408 rv = vntsd_que_rm(&groupp->no_cons_clientpq, clientp);
412 (void) mutex_unlock(&groupp->lock);
445 (void) mutex_lock(&groupp->lock);
453 rv1 = vntsd_que_append(&groupp->no_cons_clientpq, clientp);
454 (void) mutex_unlock(&groupp->lock);
563 client_fini(vntsd_group_t *groupp, vntsd_client_t *clientp)
566 assert(groupp);
573 (void) mutex_lock(&groupp->lock);
579 if (vntsd_que_walk(groupp->conspq, (el_func_t)is_client_que_empty) ==
581 (void) vntsd_que_walk(groupp->conspq,
586 (void) vntsd_que_rm(&groupp->no_cons_clientpq, clientp);
588 if ((groupp->no_cons_clientpq == NULL) &&
589 (groupp->status & VNTSD_GROUP_SIG_WAIT)) {
595 (void) cond_signal(&groupp->cvp);
597 (void) mutex_unlock(&groupp->lock);
607 console_chk_status(vntsd_group_t *groupp, vntsd_client_t *clientp, int status)
613 thr_self(), status, clientp->status, groupp->num_cons);
616 " num_cos=%d", clientp->sockfd, groupp->num_cons);
619 * obtain group lock to protect groupp->num_cons.
620 * When groupp->num_cons == 0, close client and exit the tread.
622 (void) mutex_lock(&groupp->lock);
624 if (groupp->num_cons == 0) {
626 (void) mutex_unlock(&groupp->lock);
627 client_fini(groupp, clientp);
639 (void) mutex_unlock(&groupp->lock);
640 client_fini(groupp, clientp);
650 (void) mutex_unlock(&groupp->lock);
655 if ((groupp->num_cons == 1) &&
657 (groupp->conspq->handle == clientp->cons))) {
659 (void) mutex_unlock(&groupp->lock);
660 client_fini(groupp, clientp);
662 (void) mutex_unlock(&groupp->lock);
671 (void) mutex_unlock(&groupp->lock);
673 (void) mutex_lock(&groupp->lock);
678 if (groupp->num_cons <= 1) {
679 (void) mutex_unlock(&groupp->lock);
680 client_fini(groupp, clientp);
685 (void) mutex_unlock(&groupp->lock);
692 if (groupp->num_cons == 1) {
694 (void) mutex_unlock(&groupp->lock);
699 clientp->cons = vntsd_que_pos(groupp->conspq,
702 (void) mutex_unlock(&groupp->lock);
707 (void) mutex_unlock(&groupp->lock);
720 if (groupp->num_cons == 0) {
721 (void) mutex_unlock(&groupp->lock);
722 client_fini(groupp, clientp);
724 (void) mutex_unlock(&groupp->lock);
731 (void) mutex_unlock(&groupp->lock);
736 (void) mutex_unlock(&groupp->lock);
738 client_fini(groupp, clientp);
747 vntsd_group_t *groupp;
758 groupp = (vntsd_group_t *)argp->handle;
761 assert(groupp);
770 groupp->tcp_port, clientp->sockfd);
782 buf, groupp->group_name) >= sizeof (prompt)) {
792 groupp->tcp_port, clientp->sockfd);
794 num_cons = vntsd_chk_group_total_cons(groupp);
800 console_chk_status(groupp, clientp, rv);
803 num_cons = vntsd_chk_group_total_cons(groupp);
814 rv = list_all_domains(groupp, clientp);
835 (groupp->conspq->handle);
853 rv = select_cons(groupp, &consp, clientp, cmd);
887 console_chk_status(groupp, clientp, rv);