<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <title>pcsc-lite: pcscd.h Source File</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.6.2-20100208 --> <div class="navigation" id="top"> <div class="tabs"> <ul> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li><a href="modules.html"><span>Modules</span></a></li> <li><a href="annotated.html"><span>Data Structures</span></a></li> <li class="current"><a href="files.html"><span>Files</span></a></li> <li><a href="dirs.html"><span>Directories</span></a></li> </ul> </div> <div class="tabs"> <ul> <li><a href="files.html"><span>File List</span></a></li> <li><a href="globals.html"><span>Globals</span></a></li> </ul> </div> <div class="navpath"><a class="el" href="dir_c68a5dfdca54003c765e303a18006edb.html">src</a> </div> </div> <div class="contents"> <h1>pcscd.h</h1><a href="pcscd_8h.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*</span> <a name="l00002"></a>00002 <span class="comment"> * MUSCLE SmartCard Development ( http://www.linuxnet.com )</span> <a name="l00003"></a>00003 <span class="comment"> *</span> <a name="l00004"></a>00004 <span class="comment"> * Copyright (C) 2006</span> <a name="l00005"></a>00005 <span class="comment"> * Ludovic Rousseau <ludovic.rousseau@free.fr></span> <a name="l00006"></a>00006 <span class="comment"> *</span> <a name="l00007"></a>00007 <span class="comment"> * $Id$</span> <a name="l00008"></a>00008 <span class="comment"> */</span> <a name="l00009"></a>00009 <a name="l00015"></a>00015 <span class="preprocessor">#ifndef __pcscd_h__</span> <a name="l00016"></a>00016 <span class="preprocessor"></span><span class="preprocessor">#define __pcscd_h__</span> <a name="l00017"></a>00017 <span class="preprocessor"></span> <a name="l00018"></a><a class="code" href="pcscd_8h.html#a44e87b3c0cca8a029dd654f0432f34e8">00018</a> <span class="preprocessor">#define SCARD_SCOPE_GLOBAL 0x0003 </span> <a name="l00020"></a><a class="code" href="pcscd_8h.html#aaa33efde4fadc5d23196805e49c19fa1">00020</a> <span class="preprocessor">#define SCARD_RESET 0x0001 </span> <a name="l00021"></a><a class="code" href="pcscd_8h.html#ab8ec202d508f1aba98abdb7adde525b0">00021</a> <span class="preprocessor">#define SCARD_INSERTED 0x0002 </span> <a name="l00022"></a><a class="code" href="pcscd_8h.html#ac3addaa035656d9240290695e46d2b87">00022</a> <span class="preprocessor">#define SCARD_REMOVED 0x0004 </span> <a name="l00024"></a><a class="code" href="pcscd_8h.html#a2100023490c145dd638a909920e9949b">00024</a> <span class="preprocessor">#define BLOCK_STATUS_RESUME 0x00FF </span> <a name="l00025"></a><a class="code" href="pcscd_8h.html#a4d9d9fb8624fffc60a87cbf3e62888db">00025</a> <span class="preprocessor">#define BLOCK_STATUS_BLOCKING 0x00FA </span> <a name="l00027"></a>00027 <span class="preprocessor">#define PCSCLITE_CONFIG_DIR "/etc"</span> <a name="l00028"></a>00028 <span class="preprocessor"></span> <a name="l00029"></a>00029 <span class="preprocessor">#define PCSCLITE_IPC_DIR USE_IPCDIR</span> <a name="l00030"></a>00030 <span class="preprocessor"></span><span class="preprocessor">#define PCSCLITE_RUN_PID PCSCLITE_IPC_DIR "/pcscd.pid"</span> <a name="l00031"></a>00031 <span class="preprocessor"></span> <a name="l00032"></a>00032 <span class="preprocessor">#define PCSCLITE_READER_CONFIG PCSCLITE_CONFIG_DIR "/reader.conf"</span> <a name="l00033"></a>00033 <span class="preprocessor"></span><span class="preprocessor">#define PCSCLITE_PUBSHM_FILE PCSCLITE_IPC_DIR "/pcscd.pub"</span> <a name="l00034"></a>00034 <span class="preprocessor"></span><span class="preprocessor">#define PCSCLITE_CSOCK_NAME PCSCLITE_IPC_DIR "/pcscd.comm"</span> <a name="l00035"></a>00035 <span class="preprocessor"></span><span class="preprocessor">#define PCSCLITE_EVENTS_DIR PCSCLITE_IPC_DIR "/pcscd.events"</span> <a name="l00036"></a>00036 <span class="preprocessor"></span> <a name="l00037"></a><a class="code" href="pcscd_8h.html#abeca863a7ce3e9748463602c964eadbf">00037</a> <span class="preprocessor">#define PCSCLITE_SVC_IDENTITY 0x01030000 </span> <a name="l00039"></a><a class="code" href="pcscd_8h.html#a4fff7e3e34a0455d3faa5a0e47336a6c">00039</a> <span class="preprocessor">#define PCSCLITE_INFINITE_TIMEOUT 4320000 </span> <a name="l00041"></a><a class="code" href="pcscd_8h.html#ad560794e3234b0037793846f04e3b07d">00041</a> <span class="preprocessor">#define PCSCLITE_VERSION_NUMBER "1.5.5" </span> <a name="l00042"></a><a class="code" href="pcscd_8h.html#af1d43fd078faf2c4fae301e649cc81af">00042</a> <span class="preprocessor">#define PCSCLITE_CLIENT_ATTEMPTS 120 </span> <a name="l00043"></a><a class="code" href="pcscd_8h.html#ac31b0d05c817172c1ed48c885b57d1d8">00043</a> <span class="preprocessor">#define PCSCLITE_MCLIENT_ATTEMPTS 20 </span> <a name="l00044"></a><a class="code" href="pcscd_8h.html#a3a41215bb0b34269bc221fad8470262b">00044</a> <span class="preprocessor">#define PCSCLITE_STATUS_POLL_RATE 400000 </span> <a name="l00045"></a><a class="code" href="pcscd_8h.html#ac9c6d92f56e8c08459b19c0d4d85639f">00045</a> <span class="preprocessor">#define PCSCLITE_LOCK_POLL_RATE 100000 </span> <a name="l00046"></a><a class="code" href="pcscd_8h.html#a2a5b61e8f09c9c2584a88be08b87980e">00046</a> <span class="preprocessor">#define PCSCLITE_MSG_KEY_LEN 16 </span> <a name="l00047"></a><a class="code" href="pcscd_8h.html#a0c2d4faba1193f7293f18306e4c7a8fa">00047</a> <span class="preprocessor">#define PCSCLITE_RW_ATTEMPTS 100 </span> <a name="l00050"></a><a class="code" href="pcscd_8h.html#a90fcf0913c2e1703c149a1336a4f464e">00050</a> <span class="preprocessor">#define PCSCLITE_MAX_APPLICATIONS 16</span> <a name="l00051"></a>00051 <span class="preprocessor"></span> <a name="l00052"></a><a class="code" href="pcscd_8h.html#a6a6f002ba5ba58accdf202f14cc10563">00052</a> <span class="preprocessor">#define PCSCLITE_MAX_APPLICATION_CONTEXTS 16</span> <a name="l00053"></a>00053 <span class="preprocessor"></span> <a name="l00054"></a><a class="code" href="pcscd_8h.html#a44542205379766fa6674e0f2bb3b5d9e">00054</a> <span class="preprocessor">#define PCSCLITE_MAX_APPLICATIONS_CONTEXTS \</span> <a name="l00055"></a>00055 <span class="preprocessor"> PCSCLITE_MAX_APPLICATIONS * PCSCLITE_MAX_APPLICATION_CONTEXTS</span> <a name="l00056"></a>00056 <span class="preprocessor"></span> <a name="l00057"></a><a class="code" href="pcscd_8h.html#a8542188c2736563383de00553715912f">00057</a> <span class="preprocessor">#define PCSCLITE_MAX_READER_CONTEXT_CHANNELS 16</span> <a name="l00058"></a>00058 <span class="preprocessor"></span> <a name="l00059"></a><a class="code" href="pcscd_8h.html#a35697bcf11218bc1aa5bfe831b360df7">00059</a> <span class="preprocessor">#define PCSCLITE_MAX_APPLICATION_CONTEXT_CHANNELS 16</span> <a name="l00060"></a>00060 <span class="preprocessor"></span> <a name="l00061"></a>00061 <span class="comment">/* PCSCLITE_MAX_READERS is deprecated</span> <a name="l00062"></a>00062 <span class="comment"> * use PCSCLITE_MAX_READERS_CONTEXTS instead */</span> <a name="l00063"></a>00063 <span class="comment">/* extern int PCSCLITE_MAX_READERS __attribute__ ((deprecated)); */</span> <a name="l00064"></a>00064 <a name="l00065"></a><a class="code" href="pcscd_8h.html#a57ed1e21428507dd6c55fa91b9801609">00065</a> <span class="preprocessor">#define PCSCLITE_MAX_THREADS 16 </span> <a name="l00066"></a><a class="code" href="pcscd_8h.html#abbd369d24ef81edf6fc0b336691f1c4e">00066</a> <span class="preprocessor">#define PCSCLITE_STATUS_WAIT 200000 </span> <a name="l00067"></a><a class="code" href="pcscd_8h.html#a622c9d40695fa837817c0d3c161990cc">00067</a> <span class="preprocessor">#define PCSCLITE_TRANSACTION_TIMEOUT 40 </span> <a name="l00068"></a>00068 <span class="preprocessor">#define MAX_LIBNAME 100</span> <a name="l00069"></a>00069 <span class="preprocessor"></span><span class="preprocessor">#define MAX_DEVICENAME 255</span> <a name="l00070"></a>00070 <span class="preprocessor"></span> <a name="l00071"></a>00071 <span class="comment">/*</span> <a name="l00072"></a>00072 <span class="comment"> * The message and buffer sizes must be multiples of 16.</span> <a name="l00073"></a>00073 <span class="comment"> * The max message size must be at least large enough</span> <a name="l00074"></a>00074 <span class="comment"> * to accomodate the transmit_struct</span> <a name="l00075"></a>00075 <span class="comment"> */</span> <a name="l00076"></a><a class="code" href="pcscd_8h.html#a78a7d25c2d67ffb7f2bcb7f857a827f7">00076</a> <span class="preprocessor">#define PCSCLITE_MAX_MESSAGE_SIZE 2048 </span> <a name="l00077"></a><a class="code" href="pcscd_8h.html#ad4d796b98c583d49e83adabd74a63bf6">00077</a> <span class="preprocessor">#define MAX_BUFFER_SIZE 264 </span> <a name="l00078"></a><a class="code" href="pcscd_8h.html#ae128d4b6df34e2dfdb6216b31bae2cc6">00078</a> <span class="preprocessor">#define MAX_BUFFER_SIZE_EXTENDED (4 + 3 + (1<<16) + 3) </span> <a name="l00079"></a><a class="code" href="pcscd_8h.html#a50c0e6f51672902e9bf5d8537d132be9">00079</a> <span class="preprocessor">#define PCSCLITE_SERVER_ATTEMPTS 5 </span> <a name="l00081"></a>00081 <span class="preprocessor">#endif</span> </pre></div></div> <hr class="footer"/><address style="text-align: right;"><small>Generated by <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.2-20100208 </small></address> </body> </html>