/usr/include/lcmaps/lcmaps_return_poolindex.h is in lcmaps-globus-interface 1.6.1-2build1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
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 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 | /*
* Copyright (c) Members of the EGEE Collaboration. 2004-2010.
* See http://www.eu-egee.org/partners/ for details on the copyright
* holders.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/*!
\file lcmaps_return_poolindex.h
\brief This interface of LCMAPS takes the user gsi credential as input and
returns the uid, gids and poolindex, i.e. leaseid.
\author Martijn Steenbakkers for EGEE.
This header contains the following LCMAPS library functions:
-# lcmaps_return_poolindex
Returns the poolindex based on fixed arguments:
security context, buffer and buffer length
-# lcmaps_return_poolindex_from_gss_cred
Returns the poolindex based on fixed arguments:
gss credential, buffer and buffer length
In general the behaviour of LCMAPS can be influenced by setting the following
environment variables:
Env variable Description
(default value)
--------------- -----------
LCMAPS_LOG_FILE The logfile to which lcmaps log
("/var/log/lcmaps.log") messages will be written
LCMAPS_DB_FILE the location (name) of the lcmaps policy file
(LCMAPS_ETC_DIR"/lcmaps.db")
LCMAPS_POLICY_NAME the name of the lcmaps policy (in the
("acquisition_policy") policy file) that should be evaluated
LCMAPS_LOG_STRING A string that will be prepended to all
("poolindex :") LCMAPS logging messages.
LCMAPS_DEBUG_LEVEL The debug level influences the logging
("0") verbosity. values 0-5.
LCMAPS_MODULES_DIR The directory in which modules can be found.
("") Note: may be overwritten by what is in
the policy file (the convential method)
LCMAPS_ETC_DIR The directory of the lcmaps policy files
("/opt/glite/etc/lcmaps") and other config files.
GRIDMAPDIR The directory in which the poolaccount leases
("") are registered.
Note: may be overwritten by what is in
the policy file (the convential method)
\ingroup LcmapsGlobusInterface
*/
#ifndef LCMAPS_RETURN_POOLINDEX_H
#define LCMAPS_RETURN_POOLINDEX_H
/******************************************************************************
Include header files
******************************************************************************/
#include "lcmaps_globus.h"
/******************************************************************************
* Module definition
*****************************************************************************/
/**
\brief LCMAPS returns the poolindex
If LCMAPS is invoked via this interface it will return the poolindex,
alternatively named leaseid, to the calling application.
\param context_handle
The GSS Security context established during invocation of the calling
service.
\param poolindex_buffer
A pointer to a buffer. This buffer will contain the poolindex (NUL
terminated string) upon successful return.
\param buffer_length
The length of the above mentioned buffer.
\retval 0 success.
\retval 1 failure.
*/
typedef int
lcmaps_return_poolindex_t(
gss_ctx_id_t context_handle,
char * poolindex_buffer,
unsigned int buffer_length
);
/**
\brief LCMAPS returns the poolindex
If LCMAPS is invoked via this interface it will return the poolindex,
alternatively named leaseid, to the calling application.
Instead of using the security context as an input it uses a gss credential
(type gss_cred_id_t).
\param credential_handle
The GSS credential (of type gss_cred_id_t) of the user.
\param poolindex_buffer
A pointer to a buffer. This buffer will contain the poolindex (NUL
terminated string) upon successful return.
\param buffer_length
The length of the above mentioned buffer.
\retval 0 success.
\retval 1 failure.
*/
typedef int
lcmaps_return_poolindex_from_gss_cred_t(
gss_cred_id_t credential_handle,
char * poolindex_buffer,
unsigned int buffer_length
);
#include "_lcmaps_return_poolindex.h"
#ifndef LCMAPS_USE_DLOPEN
lcmaps_return_poolindex_t lcmaps_return_poolindex;
lcmaps_return_poolindex_from_gss_cred_t lcmaps_return_poolindex_from_gss_cred;
#endif /* LCMAPS_USE_DLOPEN */
/**
\brief Opaque handle type for the interface
The opaque handle type that the API user should declare a single instance of.
This must be passed to nearly all macros (in OO terms, this would be a derived
type of LCMAPS_HANDLE).
Usage:
LCMAPS_HANDLE_RETURN_POOLINDEX handle;
*/
typedef _lcmaps_handle_return_poolindex_t LCMAPS_HANDLE_RETURN_POOLINDEX;
/* typedef void * LCMAPS_HANDLE_RETURN_POOLINDEX; */
/**
The declarator can be used to declare and init the handle in one go.
*/
#define LCMAPS_DECL_HANDLE_RETURN_POOLINDEX(l) \
_LCMAPS_DECL_HANDLE_RETURN_POOLINDEX(l)
/**
The initializer of the handle object. This macro must be called before any
other macro using an LCMAPS_HANDLE.
\param l An instance of LCMAPS_HANDLE_RETURN_POOLINDEX
\retval 1 always.
*/
#define LCMAPS_INIT_HANDLE_RETURN_POOLINDEX(l) \
_LCMAPS_INIT_HANDLE_RETURN_POOLINDEX(l)
/**
This macro loads and prepares LCMAPS; must be called before any
use of the interface functions, but after LCMAPS_INIT_HANDLE_RETURN_POOLINDEX.
\param l an initialized handle
\retval 0 in case of failure, inspect LCMAPS_ERRMSG(l)
\retval 1 on success
*/
#define LCMAPS_LOAD_RETURN_POOLINDEX(l) \
_LCMAPS_LOAD_RETURN_POOLINDEX(l)
/**
\brief close the LCMAPS_HANDLE
This macro closes any opened interface libraries and clears the handle.
After this call the handle must be considered invalid. The LCMAPS_CLOSE_HANDLE
can be found in lcmaps.h.
*/
#define LCMAPS_CLOSE_HANDLE_RETURN_POOLINDEX(l) \
LCMAPS_CLOSE_HANDLE(l)
#endif /* LCMAPS_RETURN_POOLINDEX_H */
|