106 lines
4.0 KiB
Plaintext
Executable File
106 lines
4.0 KiB
Plaintext
Executable File
.\"############################################################################
|
|
.\" $Id: genders_testquery.3,v 1.2 2010-02-02 00:04:34 chu11 Exp $
|
|
.\"############################################################################
|
|
.\" Copyright (C) 2007-2019 Lawrence Livermore National Security, LLC.
|
|
.\" Copyright (C) 2001-2007 The Regents of the University of California.
|
|
.\" Produced at Lawrence Livermore National Laboratory (cf, DISCLAIMER).
|
|
.\" Written by Jim Garlick <garlick@llnl.gov> and Albert Chu <chu11@llnl.gov>.
|
|
.\" UCRL-CODE-2003-004.
|
|
.\"
|
|
.\" This file is part of Genders, a cluster configuration database.
|
|
.\" For details, see <http://www.llnl.gov/linux/genders/>.
|
|
.\"
|
|
.\" Genders is free software; you can redistribute it and/or modify it under
|
|
.\" the terms of the GNU General Public License as published by the Free
|
|
.\" Software Foundation; either version 2 of the License, or (at your option)
|
|
.\" any later version.
|
|
.\"
|
|
.\" Genders is distributed in the hope that it will be useful, but WITHOUT ANY
|
|
.\" WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
|
|
.\" FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
|
|
.\" details.
|
|
.\"
|
|
.\" You should have received a copy of the GNU General Public License along
|
|
.\" with Genders. If not, see <http://www.gnu.org/licenses/>.
|
|
.\"############################################################################
|
|
.TH GENDERS_TESTQUERY 3 "June 2004" "LLNL" "LIBGENDERS"
|
|
.SH NAME
|
|
genders_testquery \- query genders database for a set of nodes
|
|
.SH SYNOPSIS
|
|
.B #include <genders.h>
|
|
.sp
|
|
.BI "int genders_testquery(genders_t handle, const char *node, const char *query);"
|
|
.br
|
|
.SH DESCRIPTION
|
|
\fBgenders_testquery()\fR tests if the node pointed to by \fInode\fR
|
|
meets the conditions specified in the query. If \fInode\fR is NULL,
|
|
the current node is tested. Queries are based on the union,
|
|
intersection, difference, or complement of genders attributes and
|
|
values. The query is passed as a string through the \fIquery\fR
|
|
parameter. The set operation union is represented by two pipe symbols
|
|
('||'), intersection by two ampersand symbols ('&&'), difference by
|
|
two minus symbols ('--'), and complement by a tilde ('~'). Set
|
|
operations are performed left to right. Parentheses may be used to
|
|
change the order of operations. A list of query examples are listed
|
|
below. A NULL query retrieves all nodes from the genders database.
|
|
.br
|
|
.SH EXAMPLES
|
|
The following are example queries that can be
|
|
passed to \fBgenders_testquery()\fR.
|
|
.LP
|
|
Test if a node contains the mgmt or login attribute:
|
|
"mgmt||login"
|
|
.LP
|
|
Test if a node is not a login node:
|
|
"all--login"
|
|
.LP
|
|
Test if a node is both a login node and ntp server:
|
|
"login&&ntpserv"
|
|
.LP
|
|
Test if a node is not a mgmt or login node:
|
|
"~(mgmt||login)"
|
|
.SH RETURN VALUES
|
|
If the node as met the conditions of the query, 1 is returned. 0 is
|
|
returned if the node does not meet the conditions of the query. On
|
|
error, -1 is returned, and an error code is returned in \fIhandle\fR.
|
|
The error code can be retrieved via
|
|
.BR genders_errnum (3)
|
|
, and a description of the error code can be retrieved via
|
|
.BR genders_strerror (3).
|
|
Error codes are defined in genders.h.
|
|
.br
|
|
.SH ERRORS
|
|
.TP
|
|
.B GENDERS_ERR_NULLHANDLE
|
|
The \fIhandle\fR parameter is NULL. The genders handle must be
|
|
created with
|
|
.BR genders_handle_create (3).
|
|
.TP
|
|
.B GENDERS_ERR_NOTLOADED
|
|
.BR genders_load_data (3)
|
|
has not been called to load genders data.
|
|
.TP
|
|
.B GENDERS_ERR_PARAMETERS
|
|
An incorrect parameter has been passed in.
|
|
.TP
|
|
.B GENDERS_ERR_SYNTAX
|
|
There is a syntax error in the query.
|
|
.TP
|
|
.B GENDERS_ERR_OUTMEM
|
|
.BR malloc (3)
|
|
has failed internally, system is out of memory.
|
|
.TP
|
|
.B GENDERS_ERR_MAGIC
|
|
\fIhandle\fR has an incorrect magic number. \fIhandle\fR does not
|
|
point to a genders handle or \fIhandle\fR has been destroyed by
|
|
.BR genders_handle_destroy (3).
|
|
.TP
|
|
.B GENDERS_ERR_INTERNAL
|
|
An internal system error has occurred.
|
|
.br
|
|
.SH FILES
|
|
/usr/include/genders.h
|
|
.SH SEE ALSO
|
|
libgenders(3), genders_handle_create(3), genders_load_data(3),
|
|
genders_errnum(3), genders_strerror(3)
|