index.md - sites - public wiki contents of suckless.org
(HTM) git clone git://git.suckless.org/sites
(DIR) Log
(DIR) Files
(DIR) Refs
---
index.md (1287B)
---
1 LIBIXP
2 ======
3 `libixp` is a stand-alone client/server [9P](http://9p.cat-v.org/) library
4 including `ixpc` client. It consists of less than 2000 lines of code (including
5 `ixpc`).
6
7 `libixp`'s server API is based heavily on that of [Plan
8 9](http://cm.bell-labs.com/plan9)'s
9 [`lib9p`](http://man.cat-v.org/plan_9/2/9p), and the two libraries export
10 virtually identical data structures. There are a few notable differences
11 between the two, however:
12
13 * `libixp` multiplexes connections internally, while on `Plan 9`, the kernel
14 performs this task, and in [plan9port](http://swtch.com/plan9port/), a separate
15 process is spawned to do so. Despite this divergence, the user of the library
16 will not notice any difference in behavior, except that there may be duplicate
17 `tag` and `fid` numbers between different connections. This issue is of little
18 relevance, however, as the library handles the task of mapping `fid`s and
19 `tag`s to arbitrary pointers and `P9Req` structs.
20
21 * `libixp` is released under a lenient MIT-style license.
22
23 * `libixp` lacks `lib9p`'s file trees.
24
25 * Unlike `plan9port`'s `lib9p`, `libixp` is POSIX based, and should compile
26 without specialized libraries on nearly any POSIX system.
27
28 Download
29 --------
30 * [libixp-0.5](//dl.suckless.org/libs/libixp-0.5.tar.gz)
31