Signed-off-by: Jan Friesse <jfriesse@xxxxxxxxxx> --- man/Makefile.am | 3 + man/cpg_iteration_finalize.3.in | 67 ++++++++++++++++++++++++++ man/cpg_iteration_initialize.3.in | 96 +++++++++++++++++++++++++++++++++++++ man/cpg_iteration_next.3.in | 85 ++++++++++++++++++++++++++++++++ man/cpg_overview.8 | 25 +++++++--- man/index.html | 12 +++++ 6 files changed, 280 insertions(+), 8 deletions(-) create mode 100644 man/cpg_iteration_finalize.3.in create mode 100644 man/cpg_iteration_initialize.3.in create mode 100644 man/cpg_iteration_next.3.in diff --git a/man/Makefile.am b/man/Makefile.am index d5feb71..69c536c 100644 --- a/man/Makefile.am +++ b/man/Makefile.am @@ -54,6 +54,9 @@ autogen_man = cpg_context_get.3 \ cpg_zcb_alloc.3 \ cpg_zcb_free.3 \ cpg_membership_get.3 \ + cpg_iteration_finalize.3 \ + cpg_iteration_initialize.3 \ + cpg_iteration_next.3 \ evs_dispatch.3 \ evs_fd_get.3 \ evs_finalize.3 \ diff --git a/man/cpg_iteration_finalize.3.in b/man/cpg_iteration_finalize.3.in new file mode 100644 index 0000000..747d227 --- /dev/null +++ b/man/cpg_iteration_finalize.3.in @@ -0,0 +1,67 @@ +.\"/* +.\" * Copyright (c) 2012 Red Hat, Inc. +.\" * +.\" * All rights reserved. +.\" * +.\" * Author: Jan Friesse (jfriesse@xxxxxxxxxx) +.\" * +.\" * 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 Red Hat, 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 "CPG_ITERATION_FINALIZE" 3 "05/03/2012" "corosync Man Page" "Corosync Cluster Engine Programmer's Manual" + +.SH NAME +.P +cpg_iteration_finalize \- Finalize iterator for members of CPG + +.SH SYNOPSIS +.P +\fB#include <corosync/cpg.h>\fR + +.P +\fBcs_error_t +cpg_iteration_finalize (cpg_iteration_handle_t \fIhandle\fB);\fR + +.SH DESCRIPTION +.P +The +.B cpg_iteration_finalize +function is used to free up memory asociated with iteration obtained by calling of +.B cpg_iteration_initialize(3) +function. +The +.I handle +argument is iterator handle obtained by +.B cpg_iteration_initialize(3) +function. + +.SH RETURN VALUE +This call returns the CS_OK value if successful. CS_ERR_BAD_HANDLE error is returned when handle +is invalid. + +.SH "SEE ALSO" +.BR cpg_iteration_initialize (3), +.BR cpg_overview (8) diff --git a/man/cpg_iteration_initialize.3.in b/man/cpg_iteration_initialize.3.in new file mode 100644 index 0000000..5777459 --- /dev/null +++ b/man/cpg_iteration_initialize.3.in @@ -0,0 +1,96 @@ +.\"/* +.\" * Copyright (c) 2012 Red Hat, Inc. +.\" * +.\" * All rights reserved. +.\" * +.\" * Author: Jan Friesse (jfriesse@xxxxxxxxxx) +.\" * +.\" * 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 Red Hat, 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 "CPG_ITERATION_INITIALIZE" 3 "05/03/2012" "corosync Man Page" "Corosync Cluster Engine Programmer's Manual" + +.SH NAME +.P +cpg_iteration_initialize \- Initialize iterator for members of CPG + +.SH SYNOPSIS +.P +\fB#include <corosync/cpg.h>\fR + +.P +\fBcs_error_t +cpg_iteration_initialize (cpg_handle_t \fIhandle\fB, cpg_iteration_type_t \fIiteration_type\fB, +const struct cpg_name *\fIgroup\fB, cpg_iteration_handle_t *\fIcpg_iteration_handle\fB);\fR + +.SH DESCRIPTION +.P +The +.B cpg_iteration_initialize +function is used to initialize iteration of CPG members. +The +.I handle +argument is connection to CPG database obtained by calling +.B cpg_initialize(3) +function. +.I iteration_type +is used for limit number of returned items and can be one of: +.PP +\fBCPG_ITERATION_NAME_ONLY\fR - only name of used groups are returned +.PP +\fBCPG_ITERATION_ONE_GROUP\fR - only members group with name \fIgroup\fR are returned +.PP +\fBCPG_ITERATION_ALL\fR - all members are returned + +The +.I group +parameter is used only with \fBCPG_ITERATION_ONE_GROUP\fR and it's name of group with +members to iterate. For other \fIiteration_type\fR, this parameter must be NULL. + +.B cpg_iteration_initialize +is used only for initialize context for future +.B cpg_iteration_next(3) +calls and handle needed for that function is returned in +.I cpg_iteration_handle +variable. When you have finished iteration over objects, call +.B cpg_iteration_finalize(3) +function to free up memory associated with iteration. + +.SH RETURN VALUE +This call returns the CS_OK value if successful. If \fIcpg_iteration_handle\fR is NULL, +\fBCS_ERR_INVALID_PARAM\fR error is returned. Same error is returned when \fIiteration_type\fR +is \fBCPG_ITERATION_ONE_GROUP\fR, but \fIgroup\fR is NULL, or when \fIgroup\fR is not NULL and +\fIiteration_type\fR is not \fBCPG_ITERATION_ONE_GROUP\fR. If there is not enough memory +for internal store of data, \fBCS_ERR_NO_MEMORY\fR is returned. \fBCS_ERR_BAD_HANDLE\fR can +be returned, if \fIhandle\fR is not valid handle. + +.SH COMMON IPC ERRORS +@COMMONIPCERRORS@ +.SH "SEE ALSO" +.BR cpg_iteration_next (3), +.BR cpg_iteration_finalize (3), +.BR cpg_initialize (3), +.BR cpg_overview (8) diff --git a/man/cpg_iteration_next.3.in b/man/cpg_iteration_next.3.in new file mode 100644 index 0000000..656f5f4 --- /dev/null +++ b/man/cpg_iteration_next.3.in @@ -0,0 +1,85 @@ +.\"/* +.\" * Copyright (c) 2012 Red Hat, Inc. +.\" * +.\" * All rights reserved. +.\" * +.\" * Author: Jan Friesse (jfriesse@xxxxxxxxxx) +.\" * +.\" * 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 Red Hat, 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 "CPG_ITERATION_NEXT" 3 "05/03/2012" "corosync Man Page" "Corosync Cluster Engine Programmer's Manual" + +.SH NAME +.P +cpg_iteration_next \- Return next item in iteration of CPG + +.SH SYNOPSIS +.P +\fB#include <corosync/cpg.h>\fR + +.P +\fBcs_error_t +cpg_iteration_next (cpg_iteration_handle_t \fIhandle\fB, struct cpg_iteration_description_t *\fIdescription\fB);\fR + +.SH DESCRIPTION +.P +The +.B cpg_iter_next +function is used to get next value in iteration. The +.I handle +argument is iterator handle obtained by +.B cpg_iteration_initalize(3) +function. +.I description +is pointer to structure with following definition: +.IP +.RS +.ne 18 +.nf +.PP +struct cpg_iteration_description_t { + struct cpg_name group; + uint32_t nodeid; + uint32_t pid; +}; +.ta +.fi +.RE +.IP +.PP + +where \fBgroup\fR is name of group, \fBnodeid\fR is ID of connected node and \fBpid\fR is pid of +connected process. If iteration was initialized with \fBCPG_ITERATION_NAME_ONLY\fR iteration +type, both \fBnodeid\fR and \fBpid\fR are 0. + +.SH RETURN VALUE +This call returns the CS_OK value if successful. If there are no more items to iterate, CS_NO_SECTION +error code is returned. + +.SH "SEE ALSO" +.BR cpg_iteration_initialize (3), +.BR cpg_overview (8) diff --git a/man/cpg_overview.8 b/man/cpg_overview.8 index 1f268a5..bea1090 100644 --- a/man/cpg_overview.8 +++ b/man/cpg_overview.8 @@ -40,12 +40,19 @@ to create distributed applications that operate properly during cluster partitions, merges, and faults. .PP The library provides a mechanism to: +.PP * handle abstraction for multiple instances of a CPG library in one application +.PP * join one or more groups +.PP * leave one or more groups +.PP * Deliver messages to members of that group +.PP * Deliver configuration changes .PP +* Iterate members of groups +.PP .SH SECURITY If encryption is enabled in corosync.conf, the CPG library will encrypt and authenticate message contents. Applications must run as the ais user to be @@ -62,12 +69,14 @@ access the corosync services. .BR cpg_leave (3), .BR cpg_mcast_joined (3), .BR cpg_model_initialize (3), -.BR cpg_membership_get (3) -.BR cpg_zcb_alloc (3) -.BR cpg_zcb_free (3) -.BR cpg_zcb_mcast_joined (3) -.BR cpg_context_get (3) -.BR cpg_context_set (3) -.BR cpg_local_get (3) - +.BR cpg_membership_get (3), +.BR cpg_zcb_alloc (3), +.BR cpg_zcb_free (3), +.BR cpg_zcb_mcast_joined (3), +.BR cpg_context_get (3), +.BR cpg_context_set (3), +.BR cpg_local_get (3), +.BR cpg_iteration_initialize (3), +.BR cpg_iteration_next (3), +.BR cpg_iteration_finalize (3) .PP diff --git a/man/index.html b/man/index.html index 0ead199..3c78fd3 100644 --- a/man/index.html +++ b/man/index.html @@ -130,6 +130,18 @@ Description of the cpg_groups_get interface. <br> + <a href="cpg_iteration_initialize.3.html">cpg_iteration_initialize(3)</a>: + Description of the cpg_iteration_initialize interface. + <br> + + <a href="cpg_iteration_next.3.html">cpg_iteration_next(3)</a>: + Description of the cpg_iteration_next interface. + <br> + + <a href="cpg_iteration_finalize.3.html">cpg_iteration_finalize(3)</a>: + Description of the cpg_iteration_finalize interface. + <br> + <h3>EVS service</h3> <a href="evs_overview.8.html">evs_overview(8)</a>: -- 1.7.1 _______________________________________________ discuss mailing list discuss@xxxxxxxxxxxx http://lists.corosync.org/mailman/listinfo/discuss