Archived
3
0
This repository has been archived on 2024-06-18. You can view files and clone it, but cannot push or open issues or pull requests.
libipc-old/README.markdown

42 lines
1.2 KiB
Markdown
Raw Normal View History

2016-05-26 18:27:59 +02:00
# connection init (draft)
## what the programs should do and how they interact
* service : application providing a feature to others (windows, audio, …)
* program : specific application (browser, instant messaging, …)
* <service> : service name
* <index> : process index in the program point of view
* <pindex> : process index in the service point of view
1. the service creates a pipe, named /tmp/<service>
2. the program creates pipes named /tmp/$pid-<index>-{in,out}
3. the program prints in the pipe /tmp/<service> : $pid-<index> version
4. depending on the configuration and service type, the service will
* thread, to spare resources
* fork, not to compromise the security
5. the service prints <pindex> in /tmp/$pid-<index>-in
## pure "networking" view (what should go in the pipes)
1. the program prints in the pipe /tmp/<service> : $pid-<index> version
2. the service prints <pindex> in /tmp/$pid-<index>-in
# messages format
QUESTION : no CBOR for 1 & 2, or CBOR everywhere ?
## overview
<type> : value
<type> will be a simple byte :
* <0 - 15> : control, meta data
* <16 - 127> : later use
* <128 - 255> : application specific (windowing system, audio system, …)
## CBOR table (draft)
index | semantic