pcscdaemon.c File Reference

This is the main pcscd daemon. More...

#include "config.h"
#include <time.h>
#include <signal.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <errno.h>
#include <stdio.h>
#include <unistd.h>
#include <stdlib.h>
#include <string.h>
#include <getopt.h>
#include "misc.h"
#include "pcsclite.h"
#include "pcscd.h"
#include "debuglog.h"
#include "winscard_msg.h"
#include "winscard_svc.h"
#include "sys_generic.h"
#include "thread_generic.h"
#include "hotplug.h"
#include "readerfactory.h"
#include "configfile.h"
#include "powermgt_generic.h"
#include "utils.h"

Include dependency graph for pcscdaemon.c:

Go to the source code of this file.

Defines

#define TRUE   1
#define FALSE   0
#define OPT_STRING   "c:fdhvaeCH"

Functions

static void at_exit (void)
static void clean_temp_files (void)
static void signal_reload (int sig)
static void signal_trap (int)
static void print_version (void)
static void print_usage (char const *const)
static void SVCServiceRunLoop (void)
 The Server's Message Queue Listener function.
int main (int argc, char **argv)

Variables

char AraKiri = FALSE
static char Init = TRUE
static int ExitValue = EXIT_SUCCESS
int HPForceReaderPolling = 0
PCSCLITE_MUTEX usbNotifierMutex


Detailed Description

This is the main pcscd daemon.

The function main() starts up the communication environment.
Then an endless loop is calld to look for Client connections. For each Client connection a call to CreateContextThread() is done.

Definition in file pcscdaemon.c.


Function Documentation

static void SVCServiceRunLoop ( void   )  [static]

The Server's Message Queue Listener function.

An endless loop calls the function SHMProcessEventsServer() to check for messages sent by clients. If the message is valid, CreateContextThread() is called to serve this request.

Definition at line 80 of file pcscdaemon.c.

References CreateContextThread(), HPRegisterForHotplugEvents(), HPStopHotPluggables(), PMRegisterForPowerEvents(), SCARD_S_SUCCESS, SHMInitializeCommonSegment(), SHMProcessEventsServer(), and SYS_Sleep().

Here is the call graph for this function:


Generated on Mon Aug 17 01:00:13 2009 for pcsc-lite by  doxygen 1.5.9