Subversion Repositories planix.SVN

Rev

Details | Last modification | View Log | RSS feed

Rev Author Line No. Line
2 - 1
#pragma	lib	"libplumb.a"
2
#pragma	src	"/sys/src/libplumb"
3
 
4
/*
5
 * Message format:
6
 *	source application\n
7
 *	destination port\n
8
 *	working directory\n
9
 *	type\n
10
 *	attributes\n
11
 *	nbytes\n
12
 *	n bytes of data
13
 */
14
 
15
typedef struct Plumbattr Plumbattr;
16
typedef struct Plumbmsg Plumbmsg;
17
 
18
struct Plumbmsg
19
{
20
	char		*src;
21
	char		*dst;
22
	char		*wdir;
23
	char		*type;
24
	Plumbattr	*attr;
25
	int		ndata;
26
	char		*data;
27
};
28
 
29
struct Plumbattr
30
{
31
	char		*name;
32
	char		*value;
33
	Plumbattr	*next;
34
};
35
 
36
int			plumbsend(int, Plumbmsg*);
37
int			plumbsendtext(int, char*, char*, char*, char*);
38
Plumbmsg*	plumbrecv(int);
39
char*		plumbpack(Plumbmsg*, int*);
40
Plumbmsg*	plumbunpack(char*, int);
41
Plumbmsg*	plumbunpackpartial(char*, int, int*);
42
char*		plumbpackattr(Plumbattr*);
43
Plumbattr*	plumbunpackattr(char*);
44
Plumbattr*	plumbaddattr(Plumbattr*, Plumbattr*);
45
Plumbattr*	plumbdelattr(Plumbattr*, char*);
46
void			plumbfree(Plumbmsg*);
47
char*		plumblookup(Plumbattr*, char*);
48
int			plumbopen(char*, int);
49
int			eplumb(int, char*);