clientlcc.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  $RCSfile$
00003                              -------------------
00004     cvs         : $Id: client_p.h 137 2005-11-03 13:07:50Z aquamaniac $
00005     begin       : Mon Mar 01 2004
00006     copyright   : (C) 2004 by Martin Preuss
00007     email       : martin@libchipcard.de
00008 
00009  ***************************************************************************
00010  *          Please see toplevel file COPYING for license details           *
00011  ***************************************************************************/
00012 
00013 
00014 #ifndef CHIPCARD_CLIENT_CLIENTLCC_H
00015 #define CHIPCARD_CLIENT_CLIENTLCC_H
00016 
00017 #define LC_CLIENT_LCC_NAME "lcc"
00018 
00019 
00020 #include <chipcard3/client/client.h>
00021 
00022 
00027 
00028 
00029 typedef int (*LC_CLIENTLCC_HANDLE_REQUEST_FN)(LC_CLIENT *cl,
00030                                               GWEN_TYPE_UINT32 rid,
00031                                               const char *name,
00032                                               GWEN_DB_NODE *dbRequest);
00033 
00034 
00035 CHIPCARD_API
00036 LC_CLIENT *LC_ClientLcc_new(const char *programName,
00037                             const char *programVersion);
00038 
00039 
00040 
00041 CHIPCARD_API
00042 int LC_ClientLcc_DeleteRequest(LC_CLIENT *cl, GWEN_TYPE_UINT32 rqid);
00043 
00044 
00045 
00046 
00047 CHIPCARD_API
00048 LC_CARD *LC_ClientLcc_PeekNextCard(LC_CLIENT *cl);
00049 
00050 CHIPCARD_API
00051 LC_CARD *LC_ClientLcc_GetNextCard(LC_CLIENT *cl);
00052 
00053 CHIPCARD_API
00054 LC_CLIENT_RESULT LC_ClientLcc_WaitForNextCard(LC_CLIENT *cl,
00055                                               LC_CARD **pCard,
00056                                               int timeout);
00057 
00058 
00059 
00060 /* @name Request: StartWait
00061  *
00062  */
00064 CHIPCARD_API
00065 GWEN_TYPE_UINT32 LC_ClientLcc_SendStartWait(LC_CLIENT *cl,
00066                                             GWEN_TYPE_UINT32 rflags,
00067                                             GWEN_TYPE_UINT32 rmask);
00068 
00069 CHIPCARD_API
00070 LC_CLIENT_RESULT
00071 LC_ClientLcc_CheckStartWait(LC_CLIENT *cl,
00072                             GWEN_TYPE_UINT32 rid);
00073 
00074 CHIPCARD_API
00075 LC_CLIENT_RESULT LC_ClientLcc_StartWait(LC_CLIENT *cl,
00076                                         GWEN_TYPE_UINT32 rflags,
00077                                         GWEN_TYPE_UINT32 rmask);
00083 /* @name Request: StopWait
00084  *
00085  */
00087 CHIPCARD_API
00088 GWEN_TYPE_UINT32 LC_ClientLcc_SendStopWait(LC_CLIENT *cl);
00089 
00090 
00091 CHIPCARD_API
00092 LC_CLIENT_RESULT
00093 LC_ClientLcc_CheckStopWait(LC_CLIENT *cl,
00094                            GWEN_TYPE_UINT32 rid);
00095 
00096 CHIPCARD_API
00097 LC_CLIENT_RESULT LC_ClientLcc_StopWait(LC_CLIENT *cl);
00102 /* @name Request: TakeCard
00103  *
00104  */
00106 CHIPCARD_API
00107 GWEN_TYPE_UINT32 LC_ClientLcc_SendTakeCard(LC_CLIENT *cl, LC_CARD *cd);
00108 
00109 CHIPCARD_API
00110 LC_CLIENT_RESULT
00111 LC_ClientLcc_CheckTakeCard(LC_CLIENT *cl,
00112                            GWEN_TYPE_UINT32 rid);
00113 
00114 CHIPCARD_API
00115 LC_CLIENT_RESULT LC_ClientLcc_TakeCard(LC_CLIENT *cl, LC_CARD *cd);
00120 /* @name Request: ReleaseCard
00121  *
00122  */
00124 CHIPCARD_API
00125 GWEN_TYPE_UINT32 LC_ClientLcc_SendReleaseCard(LC_CLIENT *cl, LC_CARD *cd);
00126 
00127 CHIPCARD_API
00128 LC_CLIENT_RESULT
00129 LC_ClientLcc_CheckReleaseCard(LC_CLIENT *cl,
00130                               GWEN_TYPE_UINT32 rid);
00131 
00132 CHIPCARD_API
00133 LC_CLIENT_RESULT LC_ClientLcc_ReleaseCard(LC_CLIENT *cl, LC_CARD *cd);
00138 /* @name Request: CommandCard
00139  *
00140  */
00143 CHIPCARD_API
00144 GWEN_TYPE_UINT32 LC_ClientLcc_SendCommandCard(LC_CLIENT *cl,
00145                                               LC_CARD *cd,
00146                                               const char *apdu,
00147                                               unsigned int len,
00148                                               LC_CLIENT_CMDTARGET t);
00149 
00150 CHIPCARD_API
00151 LC_CLIENT_RESULT
00152 LC_ClientLcc_CheckCommandCard(LC_CLIENT *cl,
00153                               GWEN_TYPE_UINT32 rid,
00154                               GWEN_BUFFER *data);
00155 
00156 CHIPCARD_API
00157 LC_CLIENT_RESULT LC_ClientLcc_CommandCard(LC_CLIENT *cl,
00158                                           LC_CARD *card,
00159                                           const char *apdu,
00160                                           unsigned int len,
00161                                           GWEN_BUFFER *rbuf,
00162                                           LC_CLIENT_CMDTARGET t,
00163                                           int timeout);
00168 /* @name Request: CommandCard
00169  *
00170  */
00173 CHIPCARD_API
00174 GWEN_TYPE_UINT32 LC_ClientLcc_SendSetNotify(LC_CLIENT *cl,
00175                                             GWEN_TYPE_UINT32 flags);
00176 
00177 CHIPCARD_API
00178 LC_CLIENT_RESULT LC_ClientLcc_CheckSetNotify(LC_CLIENT *cl,
00179                                              GWEN_TYPE_UINT32 rid);
00180 
00181 CHIPCARD_API
00182 LC_CLIENT_RESULT LC_ClientLcc_SetNotify(LC_CLIENT *cl,
00183                                         GWEN_TYPE_UINT32 flags);
00184 
00185 
00186 
00196 
00197 CHIPCARD_API
00198 GWEN_TYPE_UINT32 LC_ClientLcc_SendLockReader(LC_CLIENT *cl,
00199                                              GWEN_TYPE_UINT32 serverId,
00200                                              GWEN_TYPE_UINT32 readerId);
00201 
00202 CHIPCARD_API
00203 LC_CLIENT_RESULT LC_ClientLcc_CheckLockReader(LC_CLIENT *cl,
00204                                               GWEN_TYPE_UINT32 rid,
00205                                               GWEN_TYPE_UINT32 *lockId);
00206 
00207 CHIPCARD_API
00208 LC_CLIENT_RESULT LC_ClientLcc_LockReader(LC_CLIENT *cl,
00209                                          GWEN_TYPE_UINT32 serverId,
00210                                          GWEN_TYPE_UINT32 readerId,
00211                                          GWEN_TYPE_UINT32 *lockId);
00212 
00213 
00214 CHIPCARD_API
00215 GWEN_TYPE_UINT32 LC_ClientLcc_SendUnlockReader(LC_CLIENT *cl,
00216                                                GWEN_TYPE_UINT32 serverId,
00217                                                GWEN_TYPE_UINT32 readerId,
00218                                                GWEN_TYPE_UINT32 lockId);
00219 
00220 CHIPCARD_API
00221 LC_CLIENT_RESULT LC_ClientLcc_CheckUnlockReader(LC_CLIENT *cl,
00222                                                 GWEN_TYPE_UINT32 rid);
00223 
00224 CHIPCARD_API
00225 LC_CLIENT_RESULT LC_ClientLcc_UnlockReader(LC_CLIENT *cl,
00226                                            GWEN_TYPE_UINT32 serverId,
00227                                            GWEN_TYPE_UINT32 readerId,
00228                                            GWEN_TYPE_UINT32 lockId);
00229 
00230 
00231 CHIPCARD_API
00232 GWEN_TYPE_UINT32 LC_ClientLcc_SendReaderCommand(LC_CLIENT *cl,
00233                                                 GWEN_TYPE_UINT32 serverId,
00234                                                 GWEN_TYPE_UINT32 readerId,
00235                                                 GWEN_TYPE_UINT32 lockId,
00236                                                 GWEN_DB_NODE *dbData);
00237 
00238 CHIPCARD_API
00239 LC_CLIENT_RESULT LC_ClientLcc_CheckReaderCommand(LC_CLIENT *cl,
00240                                                  GWEN_TYPE_UINT32 rid,
00241                                                  GWEN_DB_NODE *dbCmdResp);
00242 
00243 CHIPCARD_API
00244 LC_CLIENT_RESULT LC_ClientLcc_ReaderCommand(LC_CLIENT *cl,
00245                                             GWEN_TYPE_UINT32 serverId,
00246                                             GWEN_TYPE_UINT32 readerId,
00247                                             GWEN_TYPE_UINT32 lockId,
00248                                             GWEN_DB_NODE *dbData,
00249                                             GWEN_DB_NODE *dbCmdResp);
00250 
00251 
00257 /* @name Monitoring System
00258  *
00259  */
00261 CHIPCARD_API
00262 GWEN_TYPE_UINT32 LC_ClientLcc_SendSetNotify(LC_CLIENT *cl,
00263                                             GWEN_TYPE_UINT32 flags);
00264 
00265 CHIPCARD_API
00266 LC_CLIENT_RESULT LC_ClientLcc_CheckSetNotify(LC_CLIENT *cl,
00267                                              GWEN_TYPE_UINT32 rid);
00268 
00269 CHIPCARD_API
00270 LC_CLIENT_RESULT LC_ClientLcc_SetNotify(LC_CLIENT *cl,
00271                                         GWEN_TYPE_UINT32 flags);
00272 
00273 
00277 CHIPCARD_API
00278 int LC_ClientLcc_Work(LC_CLIENT *cl, int maxmsg);
00279 
00280 CHIPCARD_API
00281 LC_CLIENT_RESULT LC_ClientLcc_Work_Wait(LC_CLIENT *cl, int timeout);
00282 
00283 
00284 
00290 #endif /* CHIPCARD_CLIENT_CLIENTLCC_H */
00291 

Generated on Sat Sep 22 04:43:21 2007 for libchipcard2 by  doxygen 1.5.3