openpam.h (92289) | openpam.h (93982) |
---|---|
1/*- 2 * Copyright (c) 2002 Networks Associates Technology, Inc. 3 * All rights reserved. 4 * 5 * This software was developed for the FreeBSD Project by ThinkSec AS and 6 * NAI Labs, the Security Research Division of Network Associates, Inc. 7 * under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the 8 * DARPA CHATS research program. --- 17 unchanged lines hidden (view full) --- 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32 * SUCH DAMAGE. 33 * | 1/*- 2 * Copyright (c) 2002 Networks Associates Technology, Inc. 3 * All rights reserved. 4 * 5 * This software was developed for the FreeBSD Project by ThinkSec AS and 6 * NAI Labs, the Security Research Division of Network Associates, Inc. 7 * under DARPA/SPAWAR contract N66001-01-C-8035 ("CBOSS"), as part of the 8 * DARPA CHATS research program. --- 17 unchanged lines hidden (view full) --- 26 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 27 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 28 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 29 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 30 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 31 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 32 * SUCH DAMAGE. 33 * |
34 * $P4: //depot/projects/openpam/include/security/openpam.h#12 $ | 34 * $P4: //depot/projects/openpam/include/security/openpam.h#14 $ |
35 */ 36 37#ifndef _SECURITY_OPENPAM_H_INCLUDED 38#define _SECURITY_OPENPAM_H_INCLUDED 39 40/* 41 * Annoying but necessary header pollution 42 */ --- 17 unchanged lines hidden (view full) --- 60 61int 62pam_error(pam_handle_t *_pamh, 63 const char *_fmt, 64 ...); 65 66int 67pam_get_authtok(pam_handle_t *_pamh, | 35 */ 36 37#ifndef _SECURITY_OPENPAM_H_INCLUDED 38#define _SECURITY_OPENPAM_H_INCLUDED 39 40/* 41 * Annoying but necessary header pollution 42 */ --- 17 unchanged lines hidden (view full) --- 60 61int 62pam_error(pam_handle_t *_pamh, 63 const char *_fmt, 64 ...); 65 66int 67pam_get_authtok(pam_handle_t *_pamh, |
68 int _item, |
|
68 const char **_authtok, 69 const char *_prompt); 70 71int 72pam_info(pam_handle_t *_pamh, 73 const char *_fmt, 74 ...); 75 --- 35 unchanged lines hidden (view full) --- 111 PAM_LOG_VERBOSE, 112 PAM_LOG_NOTICE, 113 PAM_LOG_ERROR 114}; 115 116/* 117 * Log to syslog 118 */ | 69 const char **_authtok, 70 const char *_prompt); 71 72int 73pam_info(pam_handle_t *_pamh, 74 const char *_fmt, 75 ...); 76 --- 35 unchanged lines hidden (view full) --- 112 PAM_LOG_VERBOSE, 113 PAM_LOG_NOTICE, 114 PAM_LOG_ERROR 115}; 116 117/* 118 * Log to syslog 119 */ |
119void _openpam_log(int _level, | 120void 121_openpam_log(int _level, |
120 const char *_func, 121 const char *_fmt, 122 ...); 123 | 122 const char *_func, 123 const char *_fmt, 124 ...); 125 |
124#if defined(__STDC__) && (__STDC_VERSION__ > 199901L) | 126#if defined(__STDC__) && (__STDC_VERSION__ >= 199901L) |
125#define openpam_log(lvl, fmt, ...) \ 126 _openpam_log((lvl), __func__, fmt, __VA_ARGS__) | 127#define openpam_log(lvl, fmt, ...) \ 128 _openpam_log((lvl), __func__, fmt, __VA_ARGS__) |
127#elif defined(__GNUC__) | 129#elif defined(__GNUC__) && (__GNUC__ >= 2) && (__GNUC_MINOR__ >= 95) 130#define openpam_log(lvl, fmt, ...) \ 131 _openpam_log((lvl), __func__, fmt, ##fmt) 132#elif defined(__GNUC__) && defined(__FUNCTION__) |
128#define openpam_log(lvl, fmt...) \ | 133#define openpam_log(lvl, fmt...) \ |
129 _openpam_log((lvl), __func__, ##fmt) | 134 _openpam_log((lvl), __FUNCTION__, ##fmt) |
130#else | 135#else |
131extern openpam_log(int _level, const char *_format, ...); | 136void 137openpam_log(int _level, 138 const char *_format, 139 ...); |
132#endif 133 134/* 135 * Generic conversation function 136 */ 137struct pam_message; 138struct pam_response; 139int openpam_ttyconv(int _n, --- 44 unchanged lines hidden (view full) --- 184 pam_module_t *prev; 185 pam_module_t *next; 186}; 187 188/* 189 * Infrastructure for static modules using GCC linker sets. 190 * You are not expected to understand this. 191 */ | 140#endif 141 142/* 143 * Generic conversation function 144 */ 145struct pam_message; 146struct pam_response; 147int openpam_ttyconv(int _n, --- 44 unchanged lines hidden (view full) --- 192 pam_module_t *prev; 193 pam_module_t *next; 194}; 195 196/* 197 * Infrastructure for static modules using GCC linker sets. 198 * You are not expected to understand this. 199 */ |
192#if defined(__GNUC__) && !defined(__PIC__) | |
193#if defined(__FreeBSD__) 194#define PAM_SOEXT ".so" 195#else | 200#if defined(__FreeBSD__) 201#define PAM_SOEXT ".so" 202#else |
196#error Static linking is not supported on your platform | 203#ifndef NO_STATIC_MODULES 204#define NO_STATIC_MODULES |
197#endif | 205#endif |
206#endif 207#if defined(__GNUC__) && !defined(__PIC__) && !defined(NO_STATIC_MODULES) |
|
198/* gcc, static linking */ 199#include <sys/cdefs.h> 200#include <linker_set.h> 201#define OPENPAM_STATIC_MODULES 202#define PAM_EXTERN static 203#define PAM_MODULE_ENTRY(name) \ 204static char _pam_name[] = name PAM_SOEXT; \ 205static struct pam_module _pam_module = { _pam_name, { \ --- 15 unchanged lines hidden --- | 208/* gcc, static linking */ 209#include <sys/cdefs.h> 210#include <linker_set.h> 211#define OPENPAM_STATIC_MODULES 212#define PAM_EXTERN static 213#define PAM_MODULE_ENTRY(name) \ 214static char _pam_name[] = name PAM_SOEXT; \ 215static struct pam_module _pam_module = { _pam_name, { \ --- 15 unchanged lines hidden --- |