1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
|
.\"/*
.\" * Copyright (c) 2009,2012 Red Hat, Inc.
.\" *
.\" * All rights reserved.
.\" *
.\" * Author: Christine Caulfield <ccaulfie@redhat.com>
.\" *
.\" * This software licensed under BSD license, the text of which follows:
.\" *
.\" * Redistribution and use in source and binary forms, with or without
.\" * modification, are permitted provided that the following conditions are met:
.\" *
.\" * - Redistributions of source code must retain the above copyright notice,
.\" * this list of conditions and the following disclaimer.
.\" * - Redistributions in binary form must reproduce the above copyright notice,
.\" * this list of conditions and the following disclaimer in the documentation
.\" * and/or other materials provided with the distribution.
.\" * - Neither the name of the MontaVista Software, Inc. nor the names of its
.\" * contributors may be used to endorse or promote products derived from this
.\" * software without specific prior written permission.
.\" *
.\" * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
.\" * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
.\" * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
.\" * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
.\" * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
.\" * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
.\" * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
.\" * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
.\" * THE POSSIBILITY OF SUCH DAMAGE.
.\" */
.TH VOTEQUORUM_GETINFO 3 @BUILDDATE@ "corosync Man Page" "Corosync Cluster Engine Programmer's Manual"
.SH NAME
votequorum_getinfo \- Get information about the VoteQuorum service
.SH SYNOPSIS
.B #include <corosync/votequorum.h>
.sp
.BI "int votequorum_getinfo(votequorum_handle_t *" handle ", unsigned int " nodeid ", struct votequorum_info *" info ");"
.SH DESCRIPTION
The
.B votequorum_getinfo
function is used to get information about the voting system and its nodes.
The
.I nodeid
argument indicates which node information should be stored in the votequorum_info structure.
The votequorum_info structure is defined as follows:
.nf
struct votequorum_info {
unsigned int node_id;
unsigned int node_state;
unsigned int node_votes;
unsigned int node_expected_votes;
unsigned int highest_expected;
unsigned int total_votes;
unsigned int quorum;
unsigned int flags;
unsigned int qdevice_votes;
char qdevice_name[VOTEQUORUM_QDEVICE_MAX_NAME_LEN];
};
.fi
The node_state is defined as:
.nf
#define VOTEQUORUM_NODESTATE_MEMBER 1
#define VOTEQUORUM_NODESTATE_DEAD 2
#define VOTEQUORUM_NODESTATE_LEAVING 3
.fi
The flags are defined as:
.nf
#define VOTEQUORUM_INFO_TWONODE 1
#define VOTEQUORUM_INFO_QUORATE 2
#define VOTEQUORUM_INFO_WAIT_FOR_ALL 4
#define VOTEQUORUM_INFO_LAST_MAN_STANDING 8
#define VOTEQUORUM_INFO_AUTO_TIE_BREAKER 16
#define VOTEQUORUM_INFO_ALLOW_DOWNSCALE 32
#define VOTEQUORUM_INFO_QDEVICE_REGISTERED 64
#define VOTEQUORUM_INFO_QDEVICE_ALIVE 128
#define VOTEQUORUM_INFO_QDEVICE_CAST_VOTE 256
#define VOTEQUORUM_INFO_QDEVICE_MASTER_WINS 512
.fi
.PP
The members starting node_ hold information specific to the requested nodeid, the other are
general to the voting system.
.SH RETURN VALUE
This call returns the CS_OK value if successful, otherwise a generic error is returned.
.PP
.SH ERRORS
@COMMONIPCERRORS@
.SH "SEE ALSO"
.BR votequorum_overview (3),
.BR votequorum_initialize (3),
.BR votequorum_finalize (3),
.BR votequorum_trackstart (3),
.BR votequorum_trackstop (3),
.BR votequorum_fd_get (3),
.BR votequorum_dispatch (3),
.BR votequorum_context_set (3),
.BR votequorum_context_get (3),
.BR votequorum_setexpected (3),
.BR votequorum_setvotes (3)
.PP
|