961 lines
37 KiB
C
961 lines
37 KiB
C
|
|
||
|
#ifndef _NSSSCL_H_
|
||
|
#define _NSSSCL_H_
|
||
|
|
||
|
/* This is the NDK header file for the SecretStore version 3.02. */
|
||
|
#if defined(__cplusplus) || defined(c_plusplus)
|
||
|
extern "C"
|
||
|
{
|
||
|
#endif
|
||
|
|
||
|
#ifndef _SSPROTO_H_
|
||
|
#define _SSPROTO_H_
|
||
|
#if defined(WIN32)
|
||
|
|
||
|
#define SS_GLOBAL_LIBCALL_PTR(RET) RET * __stdcall
|
||
|
#define SS_GLOBAL_LIBCALL(RET) RET __stdcall
|
||
|
#define SS_EXTERN_LIBCALL_PTR(RET) extern RET * __stdcall
|
||
|
#define SS_EXTERN_LIBCALL(RET) extern RET __stdcall
|
||
|
#define SS_TYPEDEF_LIBCALL_PTR(RET, PTR) typedef RET * (__stdcall *PTR)
|
||
|
#define SS_TYPEDEF_LIBCALL(RET, PTR) typedef RET (__stdcall *PTR)
|
||
|
|
||
|
#else
|
||
|
|
||
|
#define SS_GLOBAL_LIBCALL_PTR(RET) RET *
|
||
|
#define SS_GLOBAL_LIBCALL(RET) RET
|
||
|
#define SS_EXTERN_LIBCALL_PTR(RET) extern RET *
|
||
|
#define SS_EXTERN_LIBCALL(RET) extern RET
|
||
|
#define SS_TYPEDEF_LIBCALL_PTR(RET, PTR) typedef RET * (*PTR)
|
||
|
#define SS_TYPEDEF_LIBCALL(RET, PTR) typedef RET (*PTR)
|
||
|
|
||
|
#endif
|
||
|
|
||
|
#endif //* _SSPROTO_H_
|
||
|
|
||
|
/* ########################################################################### */
|
||
|
/* ####################### SecretStore Constants ############################# */
|
||
|
/* ########################################################################### */
|
||
|
|
||
|
|
||
|
#ifndef _SSSHAR_H
|
||
|
|
||
|
#define NSSS_VERSION_NUMBER 0x00030200L //* client version number
|
||
|
|
||
|
#define NSSS_MAX_KEYCHAIN_ID_CHARS 256 //* double bytes including NULL
|
||
|
#define NSSS_MAX_KEYCHAIN_ID_LEN 512 //* in bytes including NULL
|
||
|
|
||
|
|
||
|
|
||
|
#define NSSS_MAX_SECRET_ID_CHARS 256 //* double bytes including NULL
|
||
|
#define NSSS_MAX_SECRET_ID_LEN 512 //* in bytes including NULL
|
||
|
|
||
|
#define NSSS_MIN_SECRET_BUF_LEN 3968 //* (4K-128)to match server
|
||
|
#define NSSS_MID_SECRET_BUF_LEN 32768 //* (4K-128)to match server
|
||
|
#define NSSS_MAX_SECRET_BUF_LEN 60416 //* (59K)to match server
|
||
|
#define NSSS_MAX_EP_PWORD_CHARS 64 //* enhanced protection max password (chars)
|
||
|
#define NSSS_MAX_EP_PWORD_LEN 128 //* enhanced protection max password (bytes)
|
||
|
|
||
|
#define NSSS_MAX_LDAP_PWORD_LEN 128 //* user's ldap login password
|
||
|
|
||
|
#define NSSS_MAX_MP_PWORD_HINT_CHARS 64 //* enhanced protection max hint (chars)
|
||
|
#define NSSS_MAX_MP_PWORD_HINT_LEN 128 //* enhanced protection maximum hint (bytes)
|
||
|
|
||
|
#define NSSS_MAX_TREE_NAME_CHARS 32 //* max tree name length (chars)
|
||
|
#define NSSS_MAX_TREE_NAME_LEN 64 //* max tree name length (bytes)
|
||
|
|
||
|
#define NSSS_MAX_DN_CHARS 258 //* max DN length (chars)
|
||
|
#define NSSS_MAX_DN_LEN 516 //* max DN length (bytes)
|
||
|
|
||
|
#define NSSS_MAX_IP_ADDR_LEN 16 //* IP address string length (bytes including NULL)
|
||
|
#define NSSS_MAX_ADDR_LEN 512 //* can be IP or DNS name (bytes including null)
|
||
|
|
||
|
#define NSSS_NICI_UNDETERMINED_ENGINE 0
|
||
|
#define NSSS_NICI_DOMESTIC_ENGINE 1
|
||
|
#define NSSS_NICI_EXPORT_ENGINE 2
|
||
|
|
||
|
#define NSSS_MIN_IDLIST_BUF_LEN 16384 //* (16K)
|
||
|
#define NSSS_MID_IDLIST_BUF_LEN 32768 //* (32K)
|
||
|
#define NSSS_MAX_IDLIST_BUF_LEN 65536 //* (64kK)
|
||
|
#define NSSS_JUMBO_IDLIST_BUF_LEN 131072 //* (128K)
|
||
|
#define NSSS_JUMBO_ENUM_BUF_LEN 131072 //* (128K)
|
||
|
#define NSSS_ENUM_BUFFER_GUESS 32768 //* (32K)
|
||
|
|
||
|
#define NSSS_MAX_LDAP_CRED_BUF_LEN 65536 //* (64kK)
|
||
|
|
||
|
#define NSSS_ENUM_DELIM "*" //* immutable
|
||
|
|
||
|
/* ########################################################################### */
|
||
|
/* ############################### API FLAGS ################################# */
|
||
|
/* ########################################################################### */
|
||
|
|
||
|
/* input only flag for Unlock API
|
||
|
============================== */
|
||
|
/* can delete locked secrets from store to remove lock */
|
||
|
#define NSSS_REMOVE_LOCK_FROM_STORE_F 0x00000004L
|
||
|
/* if the store is not locked return an error otherwise use the info supplied
|
||
|
to unlock the store. In the absense of this flag when the store is not
|
||
|
locked the SecretStore returns success. */
|
||
|
#define NSSS_IS_STORE_LOCKED_F 0x00000008L
|
||
|
|
||
|
|
||
|
/* input only flags for Write API
|
||
|
============================== */
|
||
|
/* Enhanced Protection indicator flag for Read & Write */
|
||
|
#define NSSS_ENHANCED_PROTECTION_F 0x00000001L
|
||
|
/* Enhanced Protection optional password indicator flag for Read & Write */
|
||
|
#define NSSS_EP_PASSWORD_USED_F 0x00000040L
|
||
|
/* if Secret ID is in the SecretStore already don't overwrite the secret */
|
||
|
#define NSSS_CHK_SID_FOR_COLISION_F 0x00004000L
|
||
|
|
||
|
/* input only flag for Read API
|
||
|
============================ */
|
||
|
/* request all possible repair on damaged store */
|
||
|
#define NSSS_REPAIR_THE_STORE_F 0x00000008L
|
||
|
|
||
|
/* input only flag for all the APIs
|
||
|
================================ */
|
||
|
//* This flag tells the call that the strings such as
|
||
|
//* secretID, DN, searchString etc. are already converted
|
||
|
//* to Unicode and no conversion is necessary, results
|
||
|
//* like secretIDList will be returned in unicode.
|
||
|
#define NSSS_ALL_STRINGS_UNICODE_F 0x00000010L
|
||
|
#define NSSS_SET_TREE_NAME_F 0x00000080L
|
||
|
//* Internally destroys the DS context passed in
|
||
|
#define NSSS_DESTROY_CONTEXT_F 0x00000200L
|
||
|
#define NSSS_UNBINDLDAP_F 0x00001000L
|
||
|
|
||
|
/* input only flag for GetServiceInformation API
|
||
|
============================================= */
|
||
|
//* will return a DS context for reuse in the subsequent calls
|
||
|
#define NSSS_GET_CONTEXT_F 0x00000100L
|
||
|
|
||
|
|
||
|
|
||
|
/* input flag for all APIs
|
||
|
======================= */
|
||
|
//* this flag indicates LDAP based acess to the directory is desired
|
||
|
#define NSSS_BINDLDAP_F 0x00000800L
|
||
|
|
||
|
/* output only flags from Read API (statFlags on reading a secret)
|
||
|
also these come back on GetServiceInformation (statFlags on the store)
|
||
|
==================================================================== */
|
||
|
/* Non-Repudiation lock on secret */
|
||
|
#define NSSS_SECRET_LOCKED_F 0x00010000L
|
||
|
/* Secret not initialized with a Write yet */
|
||
|
#define NSSS_SECRET_NOT_INITIALIZED_F 0x00020000L
|
||
|
/* Secret is marked for Enhanced Protection */
|
||
|
#define NSSS_ENHANCED_PROTECT_INFO_F 0x00040000L
|
||
|
/* Store not synchronized across replicas */
|
||
|
#define NSSS_STORE_NOT_SYNCED_F 0x00080000L
|
||
|
/* There is EP password on the secret */
|
||
|
#define NSSS_EP_PWORD_PRESENT_F 0x00200000L
|
||
|
|
||
|
/* input only flag for Read, Unlock, and SetMP APIs
|
||
|
================================================ */
|
||
|
#define NSSS_EP_MASTER_PWORD_USED_F 0x00000020L
|
||
|
|
||
|
/* output only flags from Read API (statFlags on reading asecret
|
||
|
============================================================= */
|
||
|
/* Last secret modification by admin */
|
||
|
#define NSSS_ADMIN_LAST_MOD_F 0x00100000L
|
||
|
|
||
|
|
||
|
/* output only flag from GetServiceInformation API statFlags
|
||
|
========================================================= */
|
||
|
/* There is master password on the secretstore */
|
||
|
#define NSSS_EP_MASTER_PWORD_PRESENT_F 0x00400000L
|
||
|
|
||
|
/* output only flag from GetServiceInformation, and read API statFlags
|
||
|
=================================================================== */
|
||
|
#define NSSS_MP_NOT_ALLOWED_F 0x00800000L
|
||
|
|
||
|
/* internal flag to the server
|
||
|
=========================== */
|
||
|
#define NSSS_SYNC_IN_PROGRESS_F 0x02000000L
|
||
|
|
||
|
/* output only flag for last Admin that has unlocked the store
|
||
|
=========================================================== */
|
||
|
#define NSSS_ADMIN_UNLOCKED_F 0x04000000L
|
||
|
|
||
|
/* output only flag for server internal features
|
||
|
============================================ */
|
||
|
#define NSSS_LATSTAMP_ALLOWED_F 0x08000000L /* ss last access time stamp allowed */
|
||
|
#define NSSS_ADMIN_AUTHORIZED_F 0x10000000L /* ss admin authorized */
|
||
|
|
||
|
/* output only flag to indicate SecretStore contains hidden secrets
|
||
|
================================================================ */
|
||
|
#define NSSS_HIDDEN_SECRET_F 0x20000000L
|
||
|
|
||
|
|
||
|
#define NSSSRemoveSecretID NSSSRemoveSecret
|
||
|
|
||
|
/* ########################################################################### */
|
||
|
/* ###################### CURRENT CONTEXT VERSION ############################ */
|
||
|
/* ########################################################################### */
|
||
|
#define NSSS_CUR_CTX_VERSION 0x00000001L
|
||
|
|
||
|
|
||
|
/* ########################################################################### */
|
||
|
/* ############################ CONTEXT FLAGS ################################ */
|
||
|
/* ########################################################################### */
|
||
|
/* context flags for the type of context passed in or to initialize (can only use one.)
|
||
|
=================================================================================== */
|
||
|
#define NSSS_NCP_CTX_F 0x00000001L //* Context is for NCP
|
||
|
#define NSSS_LDAP_CTX_F 0x00000002L //* Context is for LDAP
|
||
|
#define NSSS_CONTEXT_INITIALIZED_F 0x00000004L //* Context already initialized
|
||
|
#define NSSS_INIT_LDAP_SS_HANDLE_F 0x00000008L //* Init handle struct without bind
|
||
|
#define NSSS_DEINIT_LDAP_SS_HANDLE_F 0x00000010L //* Deinit handle struct without unbind
|
||
|
#define NSSS_REINIT_TARGET_DN_F 0x00000020L //* Reinit the target DN in the context
|
||
|
#define NSSS_LDAP_CONTEXT_LESS_DN_F 0x00000040L //* Resolve LDAP DN as contextless
|
||
|
#define NSSS_ADV_BIND_INFO_F 0x00000080L //* Use advanced bind structure
|
||
|
//* and perform service location
|
||
|
|
||
|
|
||
|
/* ########################################################################### */
|
||
|
/* ################# CURRENT ADVANCED BIND INFO VERSION ###################### */
|
||
|
/* ########################################################################### */
|
||
|
#define NSSS_CUR_ADV_BIND_INFO_VER 0x00000000L
|
||
|
|
||
|
/* ########################################################################### */
|
||
|
/* ########################## ADVANCED BIND INFO FLAGS ####################### */
|
||
|
/* ########################################################################### */
|
||
|
//* indicates that password struct is supplied for credential to bind
|
||
|
#define NSSS_PWORD_CRED_F 0x00000001L
|
||
|
|
||
|
//* this flags allows the caller to override the default anonymous port 389 for
|
||
|
//* service location and contextless name resolution in advance bind
|
||
|
#define NSSS_SET_ANON_PORT_F 0x00000002L
|
||
|
|
||
|
|
||
|
|
||
|
/* ########################################################################### */
|
||
|
/* ########################### STRUCTURE DEFINITIONS ######################### */
|
||
|
/* ########################################################################### */
|
||
|
|
||
|
//********************************* NOTE ****************************************
|
||
|
//* All of the character arrays in the structures have the max length in bytes
|
||
|
//* but apps should pass in strings with the number of chars that is half the
|
||
|
//* length of these char arrays. These arrays are double the size in length
|
||
|
//* for unicode strings. (Reference the length in chars for each above.)
|
||
|
//********************************* NOTE ****************************************
|
||
|
|
||
|
//* Secret ID type
|
||
|
typedef struct _ss_secret_id
|
||
|
{
|
||
|
long len; //* max id len in bytes
|
||
|
char id[NSSS_MAX_SECRET_ID_LEN]; //* should be passed in # of chars
|
||
|
} SS_SECRET_ID_T;
|
||
|
|
||
|
//* Secret Data type
|
||
|
typedef struct _ss_secret
|
||
|
{
|
||
|
long len;
|
||
|
char *data;
|
||
|
} SS_SECRET_T;
|
||
|
|
||
|
|
||
|
//* Service location information. Each API-specific extension structures point to a
|
||
|
//* SS_SERVER_INFO_T structure.
|
||
|
typedef struct _ss_server_info
|
||
|
{
|
||
|
char treeName[NSSS_MAX_TREE_NAME_LEN];
|
||
|
char ssServerDN[NSSS_MAX_DN_LEN];
|
||
|
char ssServerIPAddr[NSSS_MAX_IP_ADDR_LEN];
|
||
|
char sssConfigDN[NSSS_MAX_DN_LEN];
|
||
|
} SS_SERVER_INFO_T;
|
||
|
|
||
|
//* new version big enough for unicode IP or DNS address
|
||
|
typedef struct _ss_userver_info
|
||
|
{
|
||
|
char treeName[NSSS_MAX_TREE_NAME_LEN];
|
||
|
char ssServerDN[NSSS_MAX_DN_LEN];
|
||
|
char ssServerIPAddr[NSSS_MAX_ADDR_LEN];
|
||
|
char sssConfigDN[NSSS_MAX_DN_LEN];
|
||
|
} SS_USERVER_INFO_T;
|
||
|
|
||
|
typedef struct _ss_advanced_credential
|
||
|
{
|
||
|
unsigned long len;
|
||
|
void *data;
|
||
|
} SS_ADV_CRED_T, SS_CERT_T;
|
||
|
|
||
|
|
||
|
typedef struct _ss_address
|
||
|
{
|
||
|
long len;
|
||
|
char addr[NSSS_MAX_ADDR_LEN];
|
||
|
} SS_ADDR_T;
|
||
|
|
||
|
|
||
|
typedef struct _ss_advanced_bind_info
|
||
|
{
|
||
|
unsigned long version; //* ldap bind structure version
|
||
|
unsigned long flags; //* ldap bind structure applicable flags
|
||
|
unsigned long portNum;
|
||
|
SS_ADDR_T hName; //* ip address (DNS name) of a servrer in the tree
|
||
|
SS_CERT_T cert; //* server certificate obtained and used internally
|
||
|
SS_ADV_CRED_T *cred; //* password (struct defined above), adv cred for future
|
||
|
} SS_ADV_BIND_INFO_T;
|
||
|
|
||
|
|
||
|
typedef struct _ss_ldap_bind_info
|
||
|
{
|
||
|
unsigned long portNum; //* default: 636
|
||
|
char lHostName[ NSSS_MAX_DN_LEN ]; //* Ex: "nsd10.novell.com" or ip addr
|
||
|
char trustedRootCert[ NSSS_MAX_DN_LEN ]; //* default: "c:\TrustedRootCertificate.der"
|
||
|
char loginPword[ NSSS_MAX_LDAP_PWORD_LEN ]; //* LDAP login password (utf8)
|
||
|
} SS_LDAPBIND_INFO_T;
|
||
|
|
||
|
typedef struct _ss_obj_id
|
||
|
{
|
||
|
long len;
|
||
|
char id[NSSS_MAX_DN_LEN];
|
||
|
} SS_OBJECT_DN_T;
|
||
|
|
||
|
|
||
|
//* password structure
|
||
|
typedef struct _ss_pword
|
||
|
{
|
||
|
unsigned long pwordLen; //* enhanced protection len & pword to set
|
||
|
char pword[NSSS_MAX_EP_PWORD_LEN]; //* should be passed in # of chars
|
||
|
} SS_PWORD_T;
|
||
|
|
||
|
|
||
|
//* hint structure
|
||
|
typedef struct _ss_hint
|
||
|
{
|
||
|
unsigned long hintLen; //* enhanced protection len & pword to set
|
||
|
char hint[NSSS_MAX_MP_PWORD_HINT_LEN]; //* should be passed in # of chars
|
||
|
} SS_HINT_T;
|
||
|
|
||
|
//* Read extended optional data
|
||
|
typedef struct _sss_read_extension
|
||
|
{
|
||
|
unsigned long statFlags; //* OUT - return flags on the secret
|
||
|
unsigned long crtStamp; //* OUT - secret creation time stamp
|
||
|
unsigned long latStamp; //* OUT - last accessed time stamp (optional)
|
||
|
unsigned long lmtStamp; //* OUT - last modified time stamp
|
||
|
} SSS_READEXT_T;
|
||
|
|
||
|
//* Get service info extended data
|
||
|
typedef struct _sss_get_service_information_extension
|
||
|
{
|
||
|
unsigned long statusFlags; //* OUT - return flags on the store
|
||
|
unsigned long secretCount; //* OUT - number of the secrets in the store
|
||
|
unsigned long lockCount; //* OUT - number of lock secrets
|
||
|
unsigned long enumBufLen; //* OUT - secret ID enumeration buffer length
|
||
|
unsigned long hidSecCount; //* OUT - count of hidden secrets
|
||
|
unsigned long clientVersion; //* OUT - client version
|
||
|
unsigned long serverVersion; //* OUT - server version
|
||
|
unsigned long serverCryptoStrength; //* OUT - client crypto strength (Domestic/Export)
|
||
|
unsigned long clientCryptoStrength; //* OUT - client crypto strength (Domestic/Export)
|
||
|
unsigned long unlockTStamp; //* OUT - last admin unlock timestamp */
|
||
|
unsigned long admnDNLen; //* OUT - last admin DN to unlock the store */
|
||
|
char admnDN[NSSS_MAX_DN_LEN];
|
||
|
unsigned long hintLen; //* OUT - master password hint
|
||
|
char hint[NSSS_MAX_MP_PWORD_HINT_LEN];
|
||
|
} SSS_GSINFOEXT_T;
|
||
|
|
||
|
|
||
|
/* ###################################################################################### */
|
||
|
/* #################### Extension Structure definitions for FUTURE ###################### */
|
||
|
/* ###################################################################################### */
|
||
|
|
||
|
//* optional extension structure
|
||
|
typedef struct _ss_extension
|
||
|
{
|
||
|
unsigned long clientVersion; //* IN - client version should be passed in
|
||
|
void *extParms; //* IN - extended optional data defined for future
|
||
|
} SS_EXT_T;
|
||
|
|
||
|
|
||
|
#endif //* SSSHAR_H
|
||
|
|
||
|
typedef struct _sss_handles SSS_HANDLES_T;
|
||
|
|
||
|
//* new context structure to be allocated by the caller
|
||
|
//* caller DN is an out parameter on NCP and can be an in parameter on LDAP
|
||
|
typedef struct _sss_context
|
||
|
{
|
||
|
unsigned long flags; //* IN- context type indicator and
|
||
|
//* initialization flags
|
||
|
unsigned long dsCtx; //* IN/OUT- ldap/ncp context
|
||
|
unsigned long version; //* IN- context version indicator
|
||
|
SS_SERVER_INFO_T ssServerInfo; //* IN/OUT- preferred SecretStore server info
|
||
|
SS_OBJECT_DN_T callerDN; //* IN/OUT- DN of the caller. OUT-For NCP.
|
||
|
//*IN-For LDAP (use LDAP form)
|
||
|
SSS_HANDLES_T *handles; //* OUT- internal, created by GetServiceInfo,
|
||
|
//* destroyed with the context
|
||
|
void *bindInfo; //* IN - LDAP or other advanced bind info (non-NCP)
|
||
|
} SSS_CONTEXT_T;
|
||
|
|
||
|
|
||
|
|
||
|
#ifndef _SSSHS_H_
|
||
|
|
||
|
|
||
|
#define SS_APPLICATION_TYPE_F 0x00000001L
|
||
|
#define SS_CREDENTIAL_TYPE_F 0x00000002L
|
||
|
|
||
|
typedef struct _ss_sh_secret_id
|
||
|
{
|
||
|
int type; // The shared secret type i.e. SS_App or SS_CredSet
|
||
|
char pName[NSSS_MAX_SECRET_ID_LEN]; // The shared secret name. This is the same as the identifier
|
||
|
int len; // except that it excludes the header and is not escaped.
|
||
|
} SS_SH_SECRET_ID_T;
|
||
|
|
||
|
|
||
|
/* ########################## FUNCTION PROTOTYPES ######################### */
|
||
|
|
||
|
/* ##################################################################### */
|
||
|
/* ######################### NEW NDK EXPORTED APIS ##################### */
|
||
|
/* ##################################################################### */
|
||
|
|
||
|
//**************************************************************
|
||
|
//* Support Functions for processing (populating or extracting)
|
||
|
//* data components from a Shared Secret buffers
|
||
|
//**************************************************************
|
||
|
SS_EXTERN_LIBCALL_PTR(void)
|
||
|
NSSSCreateSHSHandle();
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSDestroySHSHandle(void *handle); // in
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSGetNextSHSEntry
|
||
|
(
|
||
|
int bRestart, //* in (set to 1 to begin from head of list)
|
||
|
void *handle, //* in
|
||
|
int *keyLen, //* out
|
||
|
unsigned char *key, //* out
|
||
|
int *valLen, //* out
|
||
|
unsigned char *val, //* out
|
||
|
unsigned long ssCtxFlags //* int
|
||
|
);
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSAddSHSEntry
|
||
|
(
|
||
|
void *handle, //* in
|
||
|
unsigned char *key, //* in
|
||
|
unsigned char *val, //* in
|
||
|
unsigned long ssCtxFlags //* in
|
||
|
);
|
||
|
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSRemoveSHSEntry
|
||
|
(
|
||
|
void *handle, //* in
|
||
|
unsigned char *key, //* in
|
||
|
unsigned char *value, //* in
|
||
|
unsigned long ssCtxFlags //* in
|
||
|
);
|
||
|
|
||
|
|
||
|
//**************************************************************
|
||
|
//* These function calls will utilize the Support Functions for
|
||
|
//* populating or extracting data from a Shared Secret.
|
||
|
//**************************************************************
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSWriteSharedSecret
|
||
|
(
|
||
|
void * handle,
|
||
|
SS_SH_SECRET_ID_T * pSharedSecret,
|
||
|
SSS_CONTEXT_T * context,
|
||
|
SS_OBJECT_DN_T * targetObjDN,
|
||
|
unsigned long ssFlags,
|
||
|
SS_PWORD_T * epPassword,
|
||
|
SS_EXT_T * ext
|
||
|
);
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSReadSharedSecret
|
||
|
(
|
||
|
void * handle,
|
||
|
SS_SH_SECRET_ID_T * pSharedSecret,
|
||
|
SSS_CONTEXT_T * context,
|
||
|
SS_OBJECT_DN_T * targetObjDN,
|
||
|
unsigned long ssFlags,
|
||
|
SS_PWORD_T * epPassword,
|
||
|
SSS_READEXT_T * readData,
|
||
|
SS_EXT_T * ext
|
||
|
);
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSRemoveSharedSecret
|
||
|
(
|
||
|
SS_SH_SECRET_ID_T * pSharedSecret,
|
||
|
SSS_CONTEXT_T * context,
|
||
|
SS_OBJECT_DN_T * targetObjDN,
|
||
|
unsigned long ssFlags,
|
||
|
SS_EXT_T * ext
|
||
|
);
|
||
|
|
||
|
#endif //*_SSSHS_H_
|
||
|
|
||
|
//***********************
|
||
|
//* SecretStore raw APIs
|
||
|
//***********************
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSReadSecret
|
||
|
(
|
||
|
SSS_CONTEXT_T * context,
|
||
|
SS_OBJECT_DN_T * targetObjDN,
|
||
|
unsigned long ssFlags,
|
||
|
SS_PWORD_T * epPassword,
|
||
|
SSS_READEXT_T * readData,
|
||
|
SS_SECRET_ID_T * secretID,
|
||
|
SS_SECRET_T * secretValue,
|
||
|
SS_EXT_T * ext
|
||
|
);
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSWriteSecret
|
||
|
(
|
||
|
SSS_CONTEXT_T * context,
|
||
|
SS_OBJECT_DN_T * targetObjDN,
|
||
|
unsigned long ssFlags,
|
||
|
SS_PWORD_T * epPassword,
|
||
|
SS_SECRET_ID_T * secretID,
|
||
|
SS_SECRET_T * secretValue,
|
||
|
SS_EXT_T * ext
|
||
|
);
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSRemoveSecret
|
||
|
(
|
||
|
SSS_CONTEXT_T * context,
|
||
|
SS_OBJECT_DN_T * targetObjDN,
|
||
|
unsigned long ssFlags,
|
||
|
SS_SECRET_ID_T * secretID,
|
||
|
SS_EXT_T * ext
|
||
|
);
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSGetServiceInformation
|
||
|
(
|
||
|
SSS_CONTEXT_T * context,
|
||
|
SS_OBJECT_DN_T * targetObjDN,
|
||
|
unsigned long ssFlags,
|
||
|
SSS_GSINFOEXT_T * gsData,
|
||
|
SS_EXT_T * ext
|
||
|
);
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSUnlockSecrets
|
||
|
(
|
||
|
SSS_CONTEXT_T * context,
|
||
|
SS_OBJECT_DN_T * targetObjDN,
|
||
|
unsigned long ssFlags,
|
||
|
SS_PWORD_T * passowrd,
|
||
|
SS_EXT_T * ext
|
||
|
);
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSRemoveSecretStore
|
||
|
(
|
||
|
SSS_CONTEXT_T * context,
|
||
|
SS_OBJECT_DN_T * targetObjDN,
|
||
|
unsigned long ssFlags,
|
||
|
SS_EXT_T * ext
|
||
|
);
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSEnumerateSecretIDs
|
||
|
(
|
||
|
SSS_CONTEXT_T * context,
|
||
|
SS_OBJECT_DN_T * targetObjDN,
|
||
|
unsigned long ssFlags,
|
||
|
char * searchString,
|
||
|
unsigned long * count,
|
||
|
SS_SECRET_T * secretIDList,
|
||
|
SS_EXT_T * ext
|
||
|
);
|
||
|
|
||
|
|
||
|
SS_EXTERN_LIBCALL(int)
|
||
|
NSSSSetEPMasterPassword
|
||
|
(
|
||
|
SSS_CONTEXT_T * context,
|
||
|
SS_OBJECT_DN_T * targetObjDN,
|
||
|
unsigned long ssFlags,
|
||
|
SS_PWORD_T * passowrd,
|
||
|
SS_HINT_T * hint,
|
||
|
SS_EXT_T * ext
|
||
|
);
|
||
|
|
||
|
/* ####################################################################### */
|
||
|
/* ############################## ERROR CODES ############################ */
|
||
|
/* ####################################################################### */
|
||
|
|
||
|
#ifndef _SSSHAR_H
|
||
|
|
||
|
#define NSSS_SUCCESS 0x00000000 /* 0 */
|
||
|
#define NSSS_E_OBJECT_NOT_FOUND 0xFFFFFCE0 /* -800 */
|
||
|
#define NSSS_E_NICI_FAILURE 0xFFFFFCDF /* -801 */
|
||
|
#define NSSS_E_INVALID_SECRET_ID 0xFFFFFCDE /* -802 */
|
||
|
#define NSSS_E_SYSTEM_FAILURE 0xFFFFFCDD /* -803 */
|
||
|
#define NSSS_E_ACCESS_DENIED 0xFFFFFCDC /* -804 */
|
||
|
#define NSSS_E_NDS_INTERNAL_FAILURE 0xFFFFFCDB /* -805 */
|
||
|
#define NSSS_E_SECRET_UNINITIALIZED 0xFFFFFCDA /* -806 */
|
||
|
#define NSSS_E_BUFFER_LEN 0xFFFFFCD9 /* -807 */
|
||
|
#define NSSS_E_INCOMPATIBLE_VERSION 0xFFFFFCD8 /* -808 */
|
||
|
#define NSSS_E_CORRUPTED_STORE 0xFFFFFCD7 /* -809 */
|
||
|
#define NSSS_E_SECRET_ID_EXISTS 0xFFFFFCD6 /* -810 */
|
||
|
#define NSSS_E_NDS_PWORD_CHANGED 0xFFFFFCD5 /* -811 */
|
||
|
#define NSSS_E_INVALID_TARGET_OBJECT 0xFFFFFCD4 /* -812 */
|
||
|
#define NSSS_E_STORE_NOT_FOUND 0xFFFFFCD3 /* -813 */
|
||
|
#define NSSS_E_SERVICE_NOT_FOUND 0xFFFFFCD2 /* -814 */
|
||
|
#define NSSS_E_SECRET_ID_TOO_LONG 0xFFFFFCD1 /* -815 */
|
||
|
#define NSSS_E_ENUM_BUFF_TOO_SHORT 0xFFFFFCD0 /* -816 */
|
||
|
#define NSSS_E_NOT_AUTHENTICATED 0xFFFFFCCF /* -817 */
|
||
|
#define NSSS_E_NOT_SUPPORTED 0xFFFFFCCE /* -818 */
|
||
|
#define NSSS_E_NDS_PWORD_INVALID 0xFFFFFCCD /* -819 */
|
||
|
#define NSSS_E_NICI_OUTOF_SYNC 0xFFFFFCCC /* -820 */
|
||
|
#define NSSS_E_SERVICE_NOT_SUPPORTED 0xFFFFFCCB /* -821 */
|
||
|
#define NSSS_E_TOKEN_NOT_SUPPORTED 0xFFFFFCCA /* -822 */
|
||
|
#define NSSS_E_UNICODE_OP_FAILURE 0xFFFFFCC9 /* -823 */
|
||
|
#define NSSS_E_TRANSPORT_FAILURE 0xFFFFFCC8 /* -824 */
|
||
|
#define NSSS_E_CRYPTO_OP_FAILURE 0xFFFFFCC7 /* -825 */
|
||
|
#define NSSS_E_SERVER_CONN_FAILURE 0xFFFFFCC6 /* -826 */
|
||
|
#define NSSS_E_CONN_ACCESS_FAILURE 0xFFFFFCC5 /* -827 */
|
||
|
#define NSSS_E_ENUM_BUFF_TOO_LONG 0xFFFFFCC4 /* -828 */
|
||
|
#define NSSS_E_SECRET_BUFF_TOO_LONG 0xFFFFFCC3 /* -829 */
|
||
|
#define NSSS_E_SECRET_ID_TOO_SHORT 0xFFFFFCC2 /* -830 */
|
||
|
#define NSSS_E_CORRUPTED_PACKET_DATA 0xFFFFFCC1 /* -831 */
|
||
|
#define NSSS_E_EP_ACCESS_DENIED 0xFFFFFCC0 /* -832 */
|
||
|
#define NSSS_E_SCHEMA_NOT_EXTENDED 0xFFFFFCBF /* -833 */
|
||
|
#define NSSS_E_ATTR_NOT_FOUND 0xFFFFFCBE /* -834 */
|
||
|
#define NSSS_E_MIGRATION_NEEDED 0xFFFFFCBD /* -835 */
|
||
|
#define NSSS_E_MP_PWORD_INVALID 0xFFFFFCBC /* -836 */
|
||
|
#define NSSS_E_MP_PWORD_NOT_SET 0xFFFFFCBB /* -837 */
|
||
|
#define NSSS_E_MP_PWORD_NOT_ALLOWED 0xFFFFFCBA /* -838 */
|
||
|
#define NSSS_E_WRONG_REPLICA_TYPE 0xFFFFFCB9 /* -839 */
|
||
|
#define NSSS_E_ATTR_VAL_NOT_FOUND 0xFFFFFCB8 /* -840 */
|
||
|
#define NSSS_E_INVALID_PARAM 0xFFFFFCB7 /* -841 */
|
||
|
#define NSSS_E_NEED_SECURE_CHANNEL 0xFFFFFCB6 /* -842 */
|
||
|
#define NSSS_E_CONFIG_NOT_SUPPORTED 0xFFFFFCB5 /* -843 */
|
||
|
#define NSSS_E_STORE_NOT_LOCKED 0xFFFFFCB4 /* -844 */
|
||
|
#define NSSS_E_TIME_OUT_OF_SYNC 0xFFFFFCB3 /* -845 */
|
||
|
#define NSSS_E_VERSION_MISMATCH 0xFFFFFCB2 /* -846 */
|
||
|
#define NSSS_E_SECRET_BUFF_TOO_SHORT 0xFFFFFCB1 /* -847 */
|
||
|
#define NSSS_E_SH_SECRET_FAILURE 0xFFFFFCB0 /* -848 */
|
||
|
#define NSSS_E_PARSER_FAILURE 0xFFFFFCAF /* -849 */
|
||
|
#define NSSS_E_UTF8_OP_FAILURE 0xFFFFFCAE /* -850 */
|
||
|
#define NSSS_E_CTX_LESS_CN_NOT_UNIQUE 0xFFFFFCAD /* -851 */
|
||
|
#define NSSS_E_UNSUPPORTED_BIND_CRED 0xFFFFFCAC /* -852 */
|
||
|
#define NSSS_E_CERTIFICATE_NOT_FOUND 0xFFFFFCAB /* -853 */
|
||
|
|
||
|
#define NSSS_E_NOT_IMPLEMENTED 0xFFFFFC88 /* -888 */
|
||
|
#define NSSS_E_BETA_EXPIRED 0xFFFFFC7D /* -899 */
|
||
|
|
||
|
|
||
|
/* #########################################################################
|
||
|
########################### ERROR DESCRIPTIONS ##########################
|
||
|
#########################################################################
|
||
|
|
||
|
NSSS_E_OBJECT_NOT_FOUND -800
|
||
|
Description: Can't find the target object DN in NDS. (Resolve name failed.)
|
||
|
|
||
|
NSSS_E_NICI_FAILURE -801
|
||
|
Description: NICI operations have failed.
|
||
|
|
||
|
NSSS_E_INVALID_SECRET_ID -802
|
||
|
Description: Secret ID is not in the User Secret Store.
|
||
|
|
||
|
NSSS_E_SYSTEM_FAILURE -803
|
||
|
Description: Some internal operating system services have not been available.
|
||
|
|
||
|
NSSS_E_ACCESS_DENIED -804
|
||
|
Description: Access to the target Secret Store has been denied!
|
||
|
|
||
|
NSSS_E_NDS_INTERNAL_FAILURE -805
|
||
|
Description: Some internal NDS services have not been available.
|
||
|
|
||
|
NSSS_E_SECRET_UNINITIALIZED -806
|
||
|
Description: Secret has not been initialized with a write.
|
||
|
|
||
|
NSSS_E_BUFFER_LEN -807
|
||
|
Description: Size of the buffer is not in a nominal range between minimum and maximum.
|
||
|
|
||
|
NSSS_E_INCOMPATIBLE_VERSION -808
|
||
|
Description: Client and server components are not of the compatible versions.
|
||
|
|
||
|
NSSS_E_CORRUPTED_STORE -809
|
||
|
Description: Secret Store data on the server has been corrupted.
|
||
|
|
||
|
NSSS_E_SECRET_ID_EXISTS -810
|
||
|
Description: Secret ID already exists in the Secret Store.
|
||
|
|
||
|
NSSS_E_NDS_PWORD_CHANGED -811
|
||
|
Description: User NDS password has been changed by the administrator.
|
||
|
|
||
|
NSSS_E_INVALID_TARGET_OBJECT -812
|
||
|
Description: Target NDS User object not found.
|
||
|
|
||
|
NSSS_E_STORE_NOT_FOUND -813
|
||
|
Description: Target NDS User object does not have a Secret Store.
|
||
|
|
||
|
NSSS_E_SERVICE_NOT_FOUND -814
|
||
|
Description: Secret Store not on the Network.
|
||
|
|
||
|
NSSS_E_SECRET_ID_TOO_LONG -815
|
||
|
Description: Lenght of the Secret ID buffer exceeds the limit.
|
||
|
|
||
|
NSSS_E_ENUM_BUFF_TOO_SHORT -816
|
||
|
Description: Lenght of the Enumeration buffer too short.
|
||
|
|
||
|
NSSS_E_NOT_AUTHENTICATED -817
|
||
|
Description: User not authenticated.
|
||
|
|
||
|
NSSS_E_NOT_SUPPORTED -818
|
||
|
Description: Not supported operations.
|
||
|
|
||
|
NSSS_E_NDS_PWORD_INVALID -819
|
||
|
Description: Typed in NDS password not valid.
|
||
|
|
||
|
NSSS_E_NICI_OUTOF_SYNC -820
|
||
|
Description: Session keys of the client and server NICI are out of sync.
|
||
|
|
||
|
NSSS_E_SERVICE_NOT_SUPPORTED -821
|
||
|
Description: Requested service not supported yet.
|
||
|
|
||
|
NSSS_E_TOKEN_NOT_SUPPORTED -822
|
||
|
Description: NDS authentication type not supported.
|
||
|
|
||
|
NSSS_E_UNICODE_OP_FAILURE -823
|
||
|
Description: Unicode text conversion operation failed.
|
||
|
|
||
|
NSSS_E_TRANSPORT_FAILURE -824
|
||
|
Description: Connection to server is lost.
|
||
|
|
||
|
NSSS_E_CRYPTO_OP_FAILURE -825
|
||
|
Description: Cryptographic operation failed.
|
||
|
|
||
|
NSSS_E_SERVER_CONN_FAILURE -826
|
||
|
Description: Opening a connection to the server failed.
|
||
|
|
||
|
NSSS_E_CONN_ACCESS_FAILURE -827
|
||
|
Description: Access to server connection failed.
|
||
|
|
||
|
NSSS_E_ENUM_BUFF_TOO_LONG -828
|
||
|
Description: Size of the enumeration buffer exceeds the limit.
|
||
|
|
||
|
NSSS_E_SECRET_BUFF_TOO_LONG -829
|
||
|
Description: Size of the Secret buffer exceeds the limit.
|
||
|
|
||
|
NSSS_E_SECRET_ID_TOO_SHORT -830
|
||
|
Description: Lenght of the Secret ID should be greater than zero.
|
||
|
|
||
|
NSSS_E_CORRUPTED_PACKET_DATA -831
|
||
|
Description: Protocol data corrupted on the wire.
|
||
|
|
||
|
NSSS_E_EP_ACCESS_DENIED -832
|
||
|
Description: EP password validation failed. Access to the secret denied!
|
||
|
|
||
|
NSSS_E_SCHEMA_NOT_EXTENDED -833
|
||
|
Description: Schema is not extended to support SecreStore on the target tree.
|
||
|
|
||
|
NSSS_E_ATTR_NOT_FOUND -834
|
||
|
Description: One of the optional service attributes is not instantiated.
|
||
|
|
||
|
NSSS_E_MIGRATION_NEEDED -835
|
||
|
Description: Server has been upgraded and user SecretStore should be updated.
|
||
|
|
||
|
NSSS_E_MP_PWORD_INVALID -836
|
||
|
Description: Master passwrod could not be verified to read or unlock the secrets.
|
||
|
|
||
|
NSSS_E_MP_PWORD_NOT_SET -837
|
||
|
Description: Master password has not been set on the SecretStore.
|
||
|
|
||
|
NSSS_E_MP_PWORD_NOT_ALLOWED -838
|
||
|
Description: Ability to use master password has been disabled.
|
||
|
|
||
|
NSSS_E_WRONG_REPLICA_TYPE -839
|
||
|
Description: Not a writeable replica of NDS.
|
||
|
|
||
|
NSSS_E_ATTR_VAL_NOT_FOUND -840
|
||
|
Description: Target attrbute is not instantiated in NDS.
|
||
|
|
||
|
NSSS_E_INVALID_PARAM -841
|
||
|
Description: API parameter is not initialized.
|
||
|
|
||
|
NSSS_E_NEED_SECURE_CHANNEL -842
|
||
|
Description: Connection to the SecretStore needs to be over SSL.
|
||
|
|
||
|
NSSS_E_CONFIG_NOT_SUPPORTED -843
|
||
|
Description: No server to support the given override configuration is found.
|
||
|
|
||
|
NSSS_E_STORE_NOT_LOCKED -844
|
||
|
Description: Attempt to unlock SecretStore failed because the store is not locked.
|
||
|
|
||
|
NSSS_E_TIME_OUT_OF_SYNC -845
|
||
|
Description: NDS Replica on the server that holds SecretStore is out of sync with the replica ring.
|
||
|
|
||
|
NSSS_E_VERSION_MISMATCH -846
|
||
|
Description: Versions of the client dlls don't match.
|
||
|
|
||
|
NSSS_E_SECRET_BUFF_TOO_SHORT -847
|
||
|
Description: Buffer supplied for the secret is too short (minimum NSSS_MIN_IDLIST_BUF_LEN).
|
||
|
|
||
|
NSSS_E_SH_SECRET_FAILURE -848
|
||
|
Description: Shared Secret processing and operations failed.
|
||
|
|
||
|
NSSS_E_PARSER_FAILURE -849
|
||
|
Description: Shared Secret parser operations failed.
|
||
|
|
||
|
NSSS_E_UTF8_OP_FAILURE -850
|
||
|
Description: Utf8 string operations failed.
|
||
|
|
||
|
NSSS_E_CTX_LESS_CN_NOT_UNIQUE -851
|
||
|
Description: Contextless name for LDAP bind does not resolve to a unique DN
|
||
|
|
||
|
NSSS_E_UNSUPPORTED_BIND_CRED -852
|
||
|
Description: login credential for advanced bind is not supported
|
||
|
|
||
|
NSSS_E_CERTIFICATE_NOT_FOUND -853
|
||
|
Description: LDAP Root Cert required for Bind operations not found
|
||
|
|
||
|
|
||
|
NSSS_E_NOT_IMPLEMENTED -888
|
||
|
Description: Feature not implemented yet.
|
||
|
|
||
|
NSSS_E_BETA_EXPIRED -899
|
||
|
Description: Product's BETA life has expired! Official release copy should be
|
||
|
purchased.
|
||
|
|
||
|
|
||
|
|
||
|
########################### END OFERROR CODES ########################## */
|
||
|
|
||
|
|
||
|
/* ######################################################################## */
|
||
|
/* #################### TRANSLATION MACROS FOR OLD NAMES ################## */
|
||
|
/* ######################################################################## */
|
||
|
|
||
|
#define NSSO_SUCCESS NSSS_SUCCESS
|
||
|
#define NSSO_E_OBJECT_NOT_FOUND NSSS_E_OBJECT_NOT_FOUND
|
||
|
#define NSSO_E_NICI_FAILURE NSSS_E_NICI_FAILURE
|
||
|
#define NSSO_E_INVALID_SECRET_ID NSSS_E_INVALID_SECRET_ID
|
||
|
#define NSSO_E_SYSTEM_FAILURE NSSS_E_SYSTEM_FAILURE
|
||
|
#define NSSO_E_ACCESS_DENIED NSSS_E_ACCESS_DENIED
|
||
|
#define NSSO_E_NDS_INTERNAL_FAILURE NSSS_E_NDS_INTERNAL_FAILURE
|
||
|
#define NSSO_E_SECRET_UNINITIALIZED NSSS_E_SECRET_UNINITIALIZED
|
||
|
#define NSSO_E_BUFFER_LEN NSSS_E_BUFFER_LEN
|
||
|
#define NSSO_E_INCOMPATIBLE_VERSION NSSS_E_INCOMPATIBLE_VERSION
|
||
|
#define NSSO_E_CORRUPTED_STORE NSSS_E_CORRUPTED_STORE
|
||
|
#define NSSO_E_SECRET_ID_EXISTS NSSS_E_SECRET_ID_EXISTS
|
||
|
#define NSSO_E_NDS_PWORD_CHANGED NSSS_E_NDS_PWORD_CHANGED
|
||
|
#define NSSO_E_INVALID_TARGET_OBJECT NSSS_E_INVALID_TARGET_OBJECT
|
||
|
#define NSSO_E_STORE_NOT_FOUND NSSS_E_STORE_NOT_FOUND
|
||
|
#define NSSO_E_SERVICE_NOT_FOUND NSSS_E_SERVICE_NOT_FOUND
|
||
|
#define NSSO_E_SECRET_ID_TOO_LONG NSSS_E_SECRET_ID_TOO_LONG
|
||
|
#define NSSO_E_ENUM_BUFF_TOO_SHORT NSSS_E_ENUM_BUFF_TOO_SHORT
|
||
|
#define NSSO_E_NOT_AUTHENTICATED NSSS_E_NOT_AUTHENTICATED
|
||
|
#define NSSO_E_NOT_SUPPORTED NSSS_E_NOT_SUPPORTED
|
||
|
#define NSSO_E_NDS_PWORD_INVALID NSSS_E_NDS_PWORD_INVALID
|
||
|
#define NSSO_E_NICI_OUTOF_SYNC NSSS_E_NICI_OUTOF_SYNC
|
||
|
#define NSSO_E_SERVICE_NOT_SUPPORTED NSSS_E_SERVICE_NOT_SUPPORTED
|
||
|
#define NSSO_E_TOKEN_NOT_SUPPORTED NSSS_E_TOKEN_NOT_SUPPORTED
|
||
|
#define NSSO_E_UNICODE_OP_FAILURE NSSS_E_UNICODE_OP_FAILURE
|
||
|
#define NSSO_E_TRANSPORT_FAILURE NSSS_E_TRANSPORT_FAILURE
|
||
|
#define NSSO_E_CRYPTO_OP_FAILURE NSSS_E_CRYPTO_OP_FAILURE
|
||
|
#define NSSO_E_SERVER_CONN_FAILURE NSSS_E_SERVER_CONN_FAILURE
|
||
|
#define NSSO_E_CONN_ACCESS_FAILURE NSSS_E_CONN_ACCESS_FAILURE
|
||
|
#define NSSO_E_ENUM_BUFF_TOO_LONG NSSS_E_ENUM_BUFF_TOO_LONG
|
||
|
#define NSSO_E_SECRET_BUFF_TOO_LONG NSSS_E_SECRET_BUFF_TOO_LONG
|
||
|
#define NSSO_E_SECRET_ID_TOO_SHORT NSSS_E_SECRET_ID_TOO_SHORT
|
||
|
#define NSSO_E_CORRUPTED_PACKET_DATA NSSS_E_CORRUPTED_PACKET_DATA
|
||
|
#define NSSO_E_EP_ACCESS_DENIED NSSS_E_EP_ACCESS_DENIED
|
||
|
#define NSSO_E_SCHEMA_NOT_EXTENDED NSSS_E_SCHEMA_NOT_EXTENDED
|
||
|
#define NSSO_E_ATTR_NOT_FOUND NSSS_E_ATTR_NOT_FOUND
|
||
|
#define NSSO_E_MIGRATION_NEEDED NSSS_E_MIGRATION_NEEDED
|
||
|
#define NSSO_E_MP_PWORD_INVALID NSSS_E_MP_PWORD_INVALID
|
||
|
#define NSSO_E_MP_PWORD_NOT_SET NSSS_E_MP_PWORD_NOT_SET
|
||
|
#define NSSO_E_MP_PWORD_NOT_ALLOWED NSSS_E_MP_PWORD_NOT_ALLOWED
|
||
|
#define NSSO_E_WRONG_REPLICA_TYPE NSSS_E_WRONG_REPLICA_TYPE
|
||
|
#define NSSO_E_ATTR_VAL_NOT_FOUND NSSS_E_ATTR_VAL_NOT_FOUND
|
||
|
#define NSSO_E_INVALID_PARAM NSSS_E_INVALID_PARAM
|
||
|
#define NSSO_E_NEED_SECURE_CHANNEL NSSS_E_NEED_SECURE_CHANNEL
|
||
|
#define NSSO_E_CONFIG_NOT_SUPPORTED NSSS_E_CONFIG_NOT_SUPPORTED
|
||
|
#define NSSO_E_STORE_NOT_LOCKED NSSS_E_STORE_NOT_LOCKED
|
||
|
#define NSSO_E_TIME_OUT_OF_SYNC NSSS_E_TIME_OUT_OF_SYNC
|
||
|
|
||
|
#define NSSO_E_NOT_IMPLEMENTED NSSS_E_NOT_IMPLEMENTED
|
||
|
#define NSSO_E_BETA_EXPIRED NSSS_E_BETA_EXPIRED
|
||
|
|
||
|
#define NSSO_NICI_UNDETERMINED_ENGINE NSSS_NICI_UNDETERMINED_ENGINE
|
||
|
#define NSSO_NICI_DOMESTIC_ENGINE NSSS_NICI_DOMESTIC_ENGINE
|
||
|
#define NSSO_NICI_EXPORT_ENGINE NSSS_NICI_EXPORT_ENGINE
|
||
|
|
||
|
#endif /* _NSSS_H */
|
||
|
|
||
|
|
||
|
#define NSSO_VERSION_NUMBER NSSS_VERSION_NUMBER
|
||
|
#define NSSO_MAX_SECRET_ID_CHARS NSSS_MAX_SECRET_ID_CHARS
|
||
|
#define NSSO_MAX_SECRET_ID_LEN NSSS_MAX_SECRET_ID_LEN
|
||
|
#define NSSO_MID_SECRET_BUF_LEN NSSS_MID_SECRET_BUF_LEN
|
||
|
#define NSSO_MAX_SECRET_BUF_LEN NSSS_MAX_SECRET_BUF_LEN
|
||
|
#define NSSO_MAX_EP_PWORD_CHARS NSSS_MAX_EP_PWORD_CHARS
|
||
|
#define NSSO_MAX_EP_PWORD_LEN NSSS_MAX_EP_PWORD_LEN
|
||
|
#define NSSO_MAX_LDAP_PWORD_LEN NSSS_MAX_LDAP_PWORD_LEN
|
||
|
#define NSSO_MAX_MP_PWORD_HINT_CHARS NSSS_MAX_MP_PWORD_HINT_CHARS
|
||
|
#define NSSO_MAX_MP_PWORD_HINT_LEN NSSS_MAX_MP_PWORD_HINT_LEN
|
||
|
#define NSSO_MAX_TREE_NAME_CHARS NSSS_MAX_TREE_NAME_CHARS
|
||
|
#define NSSO_MAX_TREE_NAME_LEN NSSS_MAX_TREE_NAME_LEN
|
||
|
#define NSSO_MAX_DN_CHARS NSSS_MAX_DN_CHARS
|
||
|
#define NSSO_MAX_DN_LEN NSSS_MAX_DN_LEN
|
||
|
#define NSSO_MAX_IP_ADDR_LEN NSSS_MAX_IP_ADDR_LEN
|
||
|
#define NSSO_MIN_IDLIST_BUF_LEN NSSS_MIN_IDLIST_BUF_LEN
|
||
|
#define NSSO_MID_IDLIST_BUF_LEN NSSS_MID_IDLIST_BUF_LEN
|
||
|
#define NSSO_MAX_IDLIST_BUF_LEN NSSS_MAX_IDLIST_BUF_LEN
|
||
|
#define NSSO_JUMBO_IDLIST_BUF_LEN NSSS_JUMBO_IDLIST_BUF_LEN
|
||
|
#define NSSO_JUMBO_ENUM_BUF_LEN NSSS_JUMBO_ENUM_BUF_LEN
|
||
|
#define NSSO_ENUM_BUFFER_GUESS NSSS_ENUM_BUFFER_GUESS
|
||
|
#define NSSO_ENUM_DELIM NSSS_ENUM_DELIM
|
||
|
|
||
|
#define NSSO_REMOVE_LOCK_FROM_STORE_F NSSS_REMOVE_LOCK_FROM_STORE_F
|
||
|
#define NSSO_ENHANCED_PROTECTION_F NSSS_ENHANCED_PROTECTION_F
|
||
|
#define NSSO_CREATE_ID_F NSSS_CREATE_ID_F
|
||
|
#define NSSO_EP_PASSWORD_USED_F NSSS_EP_PASSWORD_USED_F
|
||
|
#define NSSO_REPAIR_THE_STORE_F NSSS_REPAIR_THE_STORE_F
|
||
|
#define NSSO_ALL_STRINGS_UNICODE_F NSSS_ALL_STRINGS_UNICODE_F
|
||
|
#define NSSO_SET_TREE_NAME_F NSSS_SET_TREE_NAME_F
|
||
|
#define NSSO_DESTROY_CONTEXT_F NSSS_DESTROY_CONTEXT_F
|
||
|
#define NSSO_UNBINDLDAP_F NSSS_UNBINDLDAP_F
|
||
|
#define NSSO_GET_CONTEXT_F NSSS_GET_CONTEXT_F
|
||
|
#define NSSO_BINDLDAP_F NSSS_BINDLDAP_F
|
||
|
#define NSSO_SECRET_LOCKED_F NSSS_SECRET_LOCKED_F
|
||
|
#define NSSO_SECRET_NOT_INITIALIZED_F NSSS_SECRET_NOT_INITIALIZED_F
|
||
|
#define NSSO_ENHANCED_PROTECT_INFO_F NSSS_ENHANCED_PROTECT_INFO_F
|
||
|
#define NSSO_STORE_NOT_SYNCED_F NSSS_STORE_NOT_SYNCED_F
|
||
|
#define NSSO_EP_PWORD_PRESENT_F NSSS_EP_PWORD_PRESENT_F
|
||
|
#define NSSO_EP_MASTER_PWORD_USED_F NSSS_EP_MASTER_PWORD_USED_F
|
||
|
#define NSSO_ADMIN_LAST_MOD_F NSSS_ADMIN_LAST_MOD_F
|
||
|
#define NSSO_EP_MASTER_PWORD_PRESENT_F NSSS_EP_MASTER_PWORD_PRESENT_F
|
||
|
#define NSSO_MP_NOT_ALLOWED_F NSSS_MP_NOT_ALLOWED_F
|
||
|
#define NSSO_SYNC_IN_PROGRESS_F NSSS_SYNC_IN_PROGRESS_F
|
||
|
#define NSSO_ADMIN_UNLOCKED_F NSSS_ADMIN_UNLOCKED_F
|
||
|
#define NSSO_DS_CTX_F NSSS_NCP_CTX_F
|
||
|
#define NSSO_LDAP_CTX_F NSSS_LDAP_CTX_F
|
||
|
#define NSSO_NICI_CTX_F NSSS_NICI_CTX_F
|
||
|
|
||
|
#define NSSO_ReadSecret NSSS_ReadSecret
|
||
|
#define NSSO_WriteSecret NSSS_WriteSecret
|
||
|
#define NSSO_AddSecretID NSSS_AddSecretID
|
||
|
#define NSSO_RemoveSecretID NSSS_RemoveSecret
|
||
|
#define NSSO_GetServiceInformation NSSS_GetServiceInformation
|
||
|
#define NSSO_UnlockSecrets NSSS_UnlockSecrets
|
||
|
#define NSSO_RemoveSecretStore NSSS_RemoveSecretStore
|
||
|
#define NSSO_EnumerateSecretIDs NSSS_EnumerateSecretIDs
|
||
|
#define NSSO_SetEPMasterPassword NSSS_SetEPMasterPassword
|
||
|
|
||
|
|
||
|
#if defined(__cplusplus) || defined(c_plusplus)
|
||
|
}
|
||
|
#endif
|
||
|
|
||
|
#endif /* _NSSSCL_H */
|