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 66ed321e 2005-01-04 devnull
7 66ed321e 2005-01-04 devnull AUTOLIB(plumb)
8 97a5e5f2 2003-11-23 devnull /*
9 3d7e9092 2003-10-14 devnull #pragma lib "libplumb.a"
10 3d7e9092 2003-10-14 devnull #pragma src "/sys/src/libplumb"
11 97a5e5f2 2003-11-23 devnull */
12 3d7e9092 2003-10-14 devnull
13 3d7e9092 2003-10-14 devnull /*
14 3d7e9092 2003-10-14 devnull * Message format:
15 3d7e9092 2003-10-14 devnull * source application\n
16 3d7e9092 2003-10-14 devnull * destination port\n
17 3d7e9092 2003-10-14 devnull * working directory\n
18 3d7e9092 2003-10-14 devnull * type\n
19 3d7e9092 2003-10-14 devnull * attributes\n
20 3d7e9092 2003-10-14 devnull * nbytes\n
21 3d7e9092 2003-10-14 devnull * n bytes of data
22 3d7e9092 2003-10-14 devnull */
23 3d7e9092 2003-10-14 devnull
24 3d7e9092 2003-10-14 devnull typedef struct Plumbattr Plumbattr;
25 3d7e9092 2003-10-14 devnull typedef struct Plumbmsg Plumbmsg;
26 3d7e9092 2003-10-14 devnull
27 3d7e9092 2003-10-14 devnull struct Plumbmsg
28 3d7e9092 2003-10-14 devnull {
29 3d7e9092 2003-10-14 devnull char *src;
30 3d7e9092 2003-10-14 devnull char *dst;
31 3d7e9092 2003-10-14 devnull char *wdir;
32 3d7e9092 2003-10-14 devnull char *type;
33 3d7e9092 2003-10-14 devnull Plumbattr *attr;
34 3d7e9092 2003-10-14 devnull int ndata;
35 3d7e9092 2003-10-14 devnull char *data;
36 3d7e9092 2003-10-14 devnull };
37 3d7e9092 2003-10-14 devnull
38 3d7e9092 2003-10-14 devnull struct Plumbattr
39 3d7e9092 2003-10-14 devnull {
40 3d7e9092 2003-10-14 devnull char *name;
41 3d7e9092 2003-10-14 devnull char *value;
42 3d7e9092 2003-10-14 devnull Plumbattr *next;
43 3d7e9092 2003-10-14 devnull };
44 3d7e9092 2003-10-14 devnull
45 3d7e9092 2003-10-14 devnull int plumbsend(int, Plumbmsg*);
46 3d7e9092 2003-10-14 devnull Plumbmsg* plumbrecv(int);
47 3d7e9092 2003-10-14 devnull char* plumbpack(Plumbmsg*, int*);
48 3d7e9092 2003-10-14 devnull Plumbmsg* plumbunpack(char*, int);
49 3d7e9092 2003-10-14 devnull Plumbmsg* plumbunpackpartial(char*, int, int*);
50 3d7e9092 2003-10-14 devnull char* plumbpackattr(Plumbattr*);
51 3d7e9092 2003-10-14 devnull Plumbattr* plumbunpackattr(char*);
52 3d7e9092 2003-10-14 devnull Plumbattr* plumbaddattr(Plumbattr*, Plumbattr*);
53 3d7e9092 2003-10-14 devnull Plumbattr* plumbdelattr(Plumbattr*, char*);
54 3d7e9092 2003-10-14 devnull void plumbfree(Plumbmsg*);
55 3d7e9092 2003-10-14 devnull char* plumblookup(Plumbattr*, char*);
56 3d7e9092 2003-10-14 devnull int plumbopen(char*, int);
57 3d7e9092 2003-10-14 devnull int eplumb(int, char*);
58 812d9e6f 2006-06-25 devnull int plumbunmount(void);
59 f7012583 2003-11-25 devnull
60 66ed321e 2005-01-04 devnull #ifdef _9PCLIENT_H_
61 66ed321e 2005-01-04 devnull CFid* plumbopenfid(char*, int);
62 66ed321e 2005-01-04 devnull Plumbmsg* plumbrecvfid(CFid*);
63 66ed321e 2005-01-04 devnull Plumbmsg* threadplumbrecvfid(CFid*);
64 66ed321e 2005-01-04 devnull int plumbsendtofid(CFid*, Plumbmsg*);
65 eacbfb24 2004-03-15 devnull #endif
66 eacbfb24 2004-03-15 devnull
67 f7012583 2003-11-25 devnull #if defined(__cplusplus)
68 f7012583 2003-11-25 devnull }
69 f7012583 2003-11-25 devnull #endif
70 f7012583 2003-11-25 devnull #endif