Blame


1 f7012583 2003-11-25 devnull #ifndef _LIBPLUMB_H_
2 f7012583 2003-11-25 devnull #define _LIBPLUMB_H_ 1
3 f7012583 2003-11-25 devnull #if defined(__cplusplus)
4 f7012583 2003-11-25 devnull extern "C" {
5 f7012583 2003-11-25 devnull #endif
6 97a5e5f2 2003-11-23 devnull /*
7 3d7e9092 2003-10-14 devnull #pragma lib "libplumb.a"
8 3d7e9092 2003-10-14 devnull #pragma src "/sys/src/libplumb"
9 97a5e5f2 2003-11-23 devnull */
10 3d7e9092 2003-10-14 devnull
11 3d7e9092 2003-10-14 devnull /*
12 3d7e9092 2003-10-14 devnull * Message format:
13 3d7e9092 2003-10-14 devnull * source application\n
14 3d7e9092 2003-10-14 devnull * destination port\n
15 3d7e9092 2003-10-14 devnull * working directory\n
16 3d7e9092 2003-10-14 devnull * type\n
17 3d7e9092 2003-10-14 devnull * attributes\n
18 3d7e9092 2003-10-14 devnull * nbytes\n
19 3d7e9092 2003-10-14 devnull * n bytes of data
20 3d7e9092 2003-10-14 devnull */
21 3d7e9092 2003-10-14 devnull
22 3d7e9092 2003-10-14 devnull typedef struct Plumbattr Plumbattr;
23 3d7e9092 2003-10-14 devnull typedef struct Plumbmsg Plumbmsg;
24 3d7e9092 2003-10-14 devnull
25 3d7e9092 2003-10-14 devnull struct Plumbmsg
26 3d7e9092 2003-10-14 devnull {
27 3d7e9092 2003-10-14 devnull char *src;
28 3d7e9092 2003-10-14 devnull char *dst;
29 3d7e9092 2003-10-14 devnull char *wdir;
30 3d7e9092 2003-10-14 devnull char *type;
31 3d7e9092 2003-10-14 devnull Plumbattr *attr;
32 3d7e9092 2003-10-14 devnull int ndata;
33 3d7e9092 2003-10-14 devnull char *data;
34 3d7e9092 2003-10-14 devnull };
35 3d7e9092 2003-10-14 devnull
36 3d7e9092 2003-10-14 devnull struct Plumbattr
37 3d7e9092 2003-10-14 devnull {
38 3d7e9092 2003-10-14 devnull char *name;
39 3d7e9092 2003-10-14 devnull char *value;
40 3d7e9092 2003-10-14 devnull Plumbattr *next;
41 3d7e9092 2003-10-14 devnull };
42 3d7e9092 2003-10-14 devnull
43 3d7e9092 2003-10-14 devnull int plumbsend(int, Plumbmsg*);
44 3d7e9092 2003-10-14 devnull Plumbmsg* plumbrecv(int);
45 3d7e9092 2003-10-14 devnull char* plumbpack(Plumbmsg*, int*);
46 3d7e9092 2003-10-14 devnull Plumbmsg* plumbunpack(char*, int);
47 3d7e9092 2003-10-14 devnull Plumbmsg* plumbunpackpartial(char*, int, int*);
48 3d7e9092 2003-10-14 devnull char* plumbpackattr(Plumbattr*);
49 3d7e9092 2003-10-14 devnull Plumbattr* plumbunpackattr(char*);
50 3d7e9092 2003-10-14 devnull Plumbattr* plumbaddattr(Plumbattr*, Plumbattr*);
51 3d7e9092 2003-10-14 devnull Plumbattr* plumbdelattr(Plumbattr*, char*);
52 3d7e9092 2003-10-14 devnull void plumbfree(Plumbmsg*);
53 3d7e9092 2003-10-14 devnull char* plumblookup(Plumbattr*, char*);
54 3d7e9092 2003-10-14 devnull int plumbopen(char*, int);
55 3d7e9092 2003-10-14 devnull int eplumb(int, char*);
56 f7012583 2003-11-25 devnull
57 f7012583 2003-11-25 devnull #if defined(__cplusplus)
58 f7012583 2003-11-25 devnull }
59 f7012583 2003-11-25 devnull #endif
60 f7012583 2003-11-25 devnull #endif