77 lines
2.5 KiB
C

/***********************************************************************
*
* Copyright (C) 2005-2006 Novell, Inc. All Rights Reserved.
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; version 2.1
* of the License.
*
* This library 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
* Library Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, Novell, Inc.
*
* To contact Novell about this file by physical or electronic mail,
* you may find current contact information at www.novell.com.
*
***********************************************************************/
/*
pam_sscs.h
*/
#ifndef _PAM_SSCS_H
#define _PAM_SSCS_H
#include <dlfcn.h>
#include <security/_pam_types.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <sys/un.h>
#include <errno.h>
#include <linux/socket.h>
#include <unistd.h>
#include <pwd.h>
#include <micasa.h>
extern void pam_sscs_log(int priority, const char *format,...);
#define WORKSTATION_SECRET_ID "Desktop"
#define WORKSTATION_SHARED_SECRET_ID "DefaultSharedSecret"
#define NSSCSIDK_LIB "libmicasa.so"
#define NOVELL_CSSS_CONTEXT "NOVELL_CSSS_CONTEXT"
#ifdef DEBUG
#define PRINT_FN_NAME pam_sscs_log(LOG_DEBUG,"In function : %s\n",__func__);
#else
#define PRINT_FN_NAME
#endif
void* (*pNSSCSOpenSecretStoreCache) ( SSCS_SECRETSTORE_T* ssid,
unsigned long ssFlags,
SSCS_EXT_T *ext);
int (*pNSSCSCloseSecretStoreCache) ( void *context,
unsigned long ssFlags,
SSCS_EXT_T *ext);
int (*pNSSCSSetCredential) ( unsigned long ssFlags,
SSCS_SECRET_ID_T *appSecretID,
SSCS_SECRET_ID_T *sharedSecretID,
int credentialType,
void *credential,
SSCS_EXT_T *ext);
/* The structure to hold all the possible options
* for this PAM module.
*/
typedef struct options_t
{
unsigned int debug;
}Options;
#endif