The echo example demonstrates the use of IPC transport.
It shows how to use the main tools that let you implement interaction between programs.
The echo example describes a basic case of interaction between two programs:
Client
program sends a number (value
) to the Server
program.Server
program modifies this number and sends the new number (result
) to the Client
program.Client
program prints the result
number to the screen. To set up this interaction between programs:
Client
and Server
programs by using the init description.Ping
method that has one input argument (the original number (value
)) and one output argument (the modified number (result
)).Description of the Ping
method in the IDL language:
Ping(in UInt32 value, out UInt32 result);
Client
program, initialize all required objects (transport, proxy object, request structure, etc.) and call the interface method.Server
program, prepare all the required objects (transport, component dispatcher and program dispatcher, etc.), accept the request from the client, process it and send a response.Example files
The code of the example and build scripts are available at the following path:
/opt/KasperskyOS-Community-Edition-<version>/examples/echo
The echo example consists of the following source files:
client/src/client.c
contains implementation of the Client
program.server/src/server.c
contains implementation of the Server
program.resources/Server.edl
, resources/Client.edl
, resources/Responder.cdl
, resources/Pingable.idl
are static descriptions.init.yaml
contains the init description.Building and running example
See Building and running examples section.
The build scheme for the echo example looks as follows:
Page top