A file based socket (commonSocket
) is used to send/receive only messages among clients and server.
The messages' data are passed throw a memory mapped file: sharedSegmentMsg
.
Definition in file winscard_msg.c.
#include "config.h"
#include <fcntl.h>
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/socket.h>
#include <sys/time.h>
#include <sys/un.h>
#include <sys/ioctl.h>
#include <errno.h>
#include <stdio.h>
#include <time.h>
#include <string.h>
#include "pcsclite.h"
#include "winscard.h"
#include "debuglog.h"
#include "winscard_msg.h"
#include "sys_generic.h"
#include "misc.h"
Go to the source code of this file.
Functions | |
INTERNAL void | SHMCleanupSharedSegment (int sockValue, char *pcFilePath) |
Closes the communications channel used by the server to talk to the clients. | |
INTERNAL int | SHMClientCloseSession (DWORD dwClientID) |
Closes the socket used by the client to communicate with the server. | |
INTERNAL int | SHMClientRead (psharedSegmentMsg msgStruct, DWORD dwClientID, int blockamount) |
Wrapper for the SHMMessageReceive() function. | |
INTERNAL int | SHMClientSetupSession (PDWORD pdwClientID) |
Prepares a communication channel for the client to talk to the server. | |
INTERNAL int | SHMMessageReceive (psharedSegmentMsg msgStruct, int filedes, int blockAmount) |
Called by the Client to get the reponse from the server or vice-versa. | |
INTERNAL int | SHMMessageSend (psharedSegmentMsg msgStruct, int filedes, int blockAmount) |
Sends a menssage from client to server or vice-versa. | |
INTERNAL int | WrapSHMWrite (unsigned int command, DWORD dwClientID, unsigned int size, unsigned int blockAmount, void *data) |
Wrapper for the SHMMessageSend() function. |