eID middleware |

- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

# eidlibdefines.h

Go to the documentation of this file.

    00001 /* ****************************************************************************
    00002  * eID Middleware Project.
    00003  * Copyright (C) 2008-2009 FedICT.
    00004  *
    00005  * This is free software; you can redistribute it and/or modify it
    00006  * under the terms of the GNU Lesser General Public License version
    00007  * 3.0 as published by the Free Software Foundation.
    00008  *
    00009  * This software is distributed in the hope that it will be useful,
    00010  * but WITHOUT ANY WARRANTY; without even the implied warranty of
    00011  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
    00012  * Lesser General Public License for more details.
    00013  *
    00014  * You should have received a copy of the GNU Lesser General Public
    00015  * License along with this software; if not, see
    00016  * http://www.gnu.org/licenses/.
    00017 **************************************************************************** */
    00018 #ifndef __EIDLIB_DEFINES_H__
    00019 #define __EIDLIB_DEFINES_H__
    00020
    00021 #ifndef SWIG
    00022         #ifdef WIN32
    00023                         #ifdef EIDMW_EIDLIB_WRAPPER
    00024                                 #define PTEIDSDK_API
    00025                         #elif EIDMW_EIDLIB_EXPORTS
    00026                                 #define PTEIDSDK_API  __declspec(dllexport)
    00027                         #else
    00028                                 #define PTEIDSDK_API  __declspec(dllimport)
    00029                         #endif
    00030         #else
    00031                 #define PTEIDSDK_API
    00032         #endif
    00033
    00034         #define NOEXPORT_PTEIDSDK
    00035 #endif
    00036
    00037 namespace eIDMW
    00038 {
    00039
    00040 enum PTEID_CardType
    00041 {
    00042         PTEID_CARDTYPE_UNKNOWN=0,        /**< Unknown card */
    00043         PTEID_CARDTYPE_EID,                      /**< Normal eid card */
    00044         PTEID_CARDTYPE_KIDS,                     /**< Kids eid card */
    00045         PTEID_CARDTYPE_FOREIGNER,        /**< Foreigner eid card */
    00046         PTEID_CARDTYPE_SIS                       /**< Sis card */
    00047 };
    00048
    00049 enum PTEID_DocumentType
    00050 {
    00051         PTEID_DOCTYPE_FULL=0,            /**< Full document : usefull for XML/CSV/TLV export */
    00052         PTEID_DOCTYPE_ID,                        /**< ID document : usefull to get value by field */
    00053         PTEID_DOCTYPE_PICTURE,           /**< picture document (if available) */
    00054         PTEID_DOCTYPE_INFO,                      /**< info on the card (if available) */
    00055         PTEID_DOCTYPE_PINS,                      /**< pins containert (if available) */
    00056         PTEID_DOCTYPE_CERTIFICATES       /**< certificates containert (if available) */
    00057 };
    00058
    00059 enum PTEID_RawDataType
    00060 {
    00061         PTEID_RAWDATA_ID=0,
    00062         PTEID_RAWDATA_ID_SIG,
    00063         PTEID_RAWDATA_ADDR,
    00064         PTEID_RAWDATA_ADDR_SIG,
    00065         PTEID_RAWDATA_PICTURE,
    00066         PTEID_RAWDATA_CARD_INFO,
    00067         PTEID_RAWDATA_TOKEN_INFO,
    00068         PTEID_RAWDATA_CERT_RRN,
    00069         PTEID_RAWDATA_CHALLENGE,
    00070         PTEID_RAWDATA_RESPONSE
    00071 };
    00072
    00073 enum PTEID_PinUsage
    00074 {
    00075         PTEID_PIN_USG_UNKNOWN,
    00076         PTEID_PIN_USG_AUTH,
    00077         PTEID_PIN_USG_SIGN,
    00078         PTEID_PIN_USG_ADDRESS,
    00079 };
    00080
    00081 enum PTEID_ValidationProcess
    00082 {
    00083         PTEID_VALIDATION_PROCESS_NONE=0,
    00084         PTEID_VALIDATION_PROCESS_CRL,
    00085         PTEID_VALIDATION_PROCESS_OCSP
    00086 };
    00087
    00088 enum PTEID_ValidationLevel
    00089 {
    00090         PTEID_VALIDATION_LEVEL_NONE=0,
    00091         PTEID_VALIDATION_LEVEL_OPTIONAL,
    00092         PTEID_VALIDATION_LEVEL_MANDATORY
    00093 };
    00094
    00095 enum PTEID_CertifStatus
    00096 {
    00097         PTEID_CERTIF_STATUS_UNKNOWN=0,           /**< Validity unknown */
    00098         PTEID_CERTIF_STATUS_REVOKED,             /**< Revoked certificate */
    00099         PTEID_CERTIF_STATUS_TEST,                /**< Test certificate */
    00100         PTEID_CERTIF_STATUS_DATE,                /**< Certificate no more valid */
    00101         PTEID_CERTIF_STATUS_CONNECT,             /**< Connection problem */
    00102         PTEID_CERTIF_STATUS_ISSUER,              /**< An issuer is missing in the chain */
    00103         PTEID_CERTIF_STATUS_ERROR,               /**< Error during validation */
    00104         PTEID_CERTIF_STATUS_VALID,               /**< Valid certificate */
    00105         PTEID_CERTIF_STATUS_VALID_CRL,           /**< Valid certificate through CRL process */
    00106         PTEID_CERTIF_STATUS_VALID_OCSP,          /**< Valid certificate through OCSP process */
    00107         PTEID_CERTIF_STATUS_OCSP_NOT_CHECKED     /**< OCSP was not performed */
    00108 };
    00109
    00110 enum PTEID_CertifType
    00111 {
    00112         PTEID_CERTIF_TYPE_UNKNOWN,                       /**< UNKNOWN certificate */
    00113         PTEID_CERTIF_TYPE_RRN,                           /**< RRN certificate */
    00114         PTEID_CERTIF_TYPE_ROOT,                          /**< Root certificate */
    00115         PTEID_CERTIF_TYPE_CA,                            /**< CA certificate */
    00116         PTEID_CERTIF_TYPE_AUTHENTICATION,        /**< Authentication certificate */
    00117         PTEID_CERTIF_TYPE_SIGNATURE                      /**< Signature certificate */
    00118 };
    00119
    00120 enum PTEID_CrlStatus
    00121 {
    00122         PTEID_CRL_STATUS_UNKNOWN,                /**< Validity unknown */
    00123         PTEID_CRL_STATUS_VALID,                  /**< Valid Crl */
    00124         PTEID_CRL_STATUS_CONNECT,                /**< Connection problem */
    00125         PTEID_CRL_STATUS_ERROR                   /**< Error during validation */
    00126 };
    00127
    00128 enum PTEID_HashAlgo {
    00129         PTEID_ALGO_MD5,      /**< 16-byte hash */
    00130         PTEID_ALGO_SHA1,     /**< 20-byte hash */
    00131 };
    00132
    00133 enum PTEID_FileType
    00134 {
    00135         PTEID_FILETYPE_UNKNOWN=0,
    00136         PTEID_FILETYPE_TLV,
    00137         PTEID_FILETYPE_XML,
    00138         PTEID_FILETYPE_CSV
    00139 };
    00140
    00141 enum PTEID_Param
    00142 {
    00143         //GENERAL
    00144         PTEID_PARAM_GENERAL_INSTALLDIR,          //string, directory of the basic eid software; “c:/Program Files/pteid/”
    00145         PTEID_PARAM_GENERAL_INSTALL_PRO_DIR,             //string, directory of the pro eid software; “c:/Program Files/pteid/”
    00146         PTEID_PARAM_GENERAL_INSTALL_SDK_DIR,             //string, directory of the sdk eid software; “c:/Program Files/pteid/”
    00147         PTEID_PARAM_GENERAL_CACHEDIR,            //string, cache directory for card-file;
    00148         PTEID_PARAM_GENERAL_LANGUAGE,            //string, user language: fr, nl, en, de, …
    00149
    00150         //LOGGING
    00151         PTEID_PARAM_LOGGING_DIRNAME,                     //string, location of the log-file; $home/pteid/ Full path with volume name.
    00152         PTEID_PARAM_LOGGING_PREFIX,                      //string, prefix of the log files
    00153         PTEID_PARAM_LOGGING_FILENUMBER,          //number, Maximum number of log-files; 3
    00154         PTEID_PARAM_LOGGING_FILESIZE,            //number, Maximum number of log-files; 3
    00155         PTEID_PARAM_LOGGING_LEVEL,                       //string, Specify what should be logged; critical, error, warning, info or debug
    00156         PTEID_PARAM_LOGGING_GROUP,                       //number; 0=no (default), 1=yes (create on log file by module)
    00157
    00158         //CRL
    00159         PTEID_PARAM_CRL_SERVDOWNLOADNR,          //number
    00160         PTEID_PARAM_CRL_TIMEOUT,                         //number, timeout in seconds
    00161         PTEID_PARAM_CRL_CACHEDIR,                        //string
    00162         PTEID_PARAM_CRL_CACHEFILE,                       //string        “$common/crl/
    00163         PTEID_PARAM_CRL_LOCKFILE,                        //string
    00164
    00165         //CERTIFIACTE VALIDATION
    00166         PTEID_PARAM_CERTVALID_ALLOWTESTC,        //number; 0=no, 1=yes
    00167         PTEID_PARAM_CERTVALID_CRL,                       //number; 0=no, 1=optional, 2=always
    00168         PTEID_PARAM_CERTVALID_OCSP,                      //number; 0=no, 1=optional, 2=always
    00169
    00170         //CERTIFICATE CACHE
    00171         PTEID_PARAM_CERTCACHE_CACHEFILE,         //string;
    00172         PTEID_PARAM_CERTCACHE_LINENUMB,          //number
    00173         PTEID_PARAM_CERTCACHE_VALIDITY,          //number
    00174         PTEID_PARAM_CERTCACHE_WAITDELAY,         //number
    00175
    00176         //PROXY
    00177         PTEID_PARAM_PROXY_HOST,                          //string;
    00178         PTEID_PARAM_PROXY_PORT,                          //number
    00179         PTEID_PARAM_PROXY_PACFILE,                       //string
    00180
    00181         //SECURITY
    00182         PTEID_PARAM_SECURITY_SINGLESIGNON,       //number; 0=no, 1=yes; If yes, the PIN is requested by the driver and asked only once with multiple applications.
    00183
    00184         //GUITOOL
    00185         PTEID_PARAM_GUITOOL_STARTWIN,            //number; 0=no(default), 1=yes
    00186         PTEID_PARAM_GUITOOL_STARTMINI,           //number; 0=no(default), 1=yes
    00187         PTEID_PARAM_GUITOOL_SHOWPIC,                     //number; 0=no(default), 1=yes
    00188         PTEID_PARAM_GUITOOL_SHOWTBAR,            //number; 0=no, 1=yes
    00189         PTEID_PARAM_GUITOOL_VIRTUALKBD,          //number; 0=no, 1=yes
    00190         PTEID_PARAM_GUITOOL_AUTOCARDREAD,        //number; 0=no, 1=yes(default)
    00191         PTEID_PARAM_GUITOOL_CARDREADNUMB,        //number; -1(not specified), 0-10
    00192         PTEID_PARAM_GUITOOL_REGCERTIF,           //number; 0=no, 1=yes(default)
    00193         PTEID_PARAM_GUITOOL_REMOVECERTIF,        //number; 0=no, 1=yes(default)
    00194         PTEID_PARAM_GUITOOL_FILESAVE,            //string; path to directory where to save eid/xml/csv file
    00195
    00196         //XSIGN
    00197         PTEID_PARAM_XSIGN_TSAURL,                        //string;
    00198         PTEID_PARAM_XSIGN_ONLINE,                        //number
    00199         PTEID_PARAM_XSIGN_WORKINGDIR,            //string;
    00200         PTEID_PARAM_XSIGN_TIMEOUT,                       //number
    00201
    00202         //GUITOOL
    00203         PTEID_PARAM_GUITOOL_SHOWNOTIFICATION,//number; 0=no(default), 1=yes
    00204
    00205         //PROXY
    00206         PTEID_PARAM_PROXY_CONNECT_TIMEOUT,       //number
    00207
    00208 };
    00209
    00210 enum PTEID_LogLevel
    00211 {
    00212     PTEID_LOG_LEVEL_CRITICAL,
    00213     PTEID_LOG_LEVEL_ERROR,
    00214     PTEID_LOG_LEVEL_WARNING,
    00215     PTEID_LOG_LEVEL_INFO,
    00216     PTEID_LOG_LEVEL_DEBUG
    00217 };
    00218
    00219 }
    00220
    00221 #endif //__EIDLIBDEFINES_H__
    00222