1
  
2
  
3
  
4
  
5
  
6
  
7
  
8
  
9
  
10
  
11
  
12
  
13
  
14
  
15
  
16
  
17
  
18
  
19
  
20
  
21
  
22
  
23
  
24
  
25
  
26
  
27
  
28
  
29
  
30
  
31
  
32
  
33
  
// -*- Pike -*- 
 
#define PROTO_VERSION "0001" 
 
#define error(E) throw( ({ E+"\n" , backtrace() }) ) 
 
// #define REMOTE_DEBUG 
 
#ifdef REMOTE_DEBUG 
# define DEBUGMSG(X) werror(X) 
#else 
# define DEBUGMSG(X) 
#endif 
 
program Context = ((program)"context"); 
program Connection = ((program)"connection"); 
program Call = ((program)"call"); 
program Obj = ((program)"obj"); 
 
#define CTX_ERROR      0 
#define CTX_OTHER      1 
#define CTX_OBJECT     2 
#define CTX_FUNCTION   3 
#define CTX_PROGRAM    3 
#define CTX_CALL_SYNC  4 
#define CTX_ARRAY      5 
#define CTX_RETURN     6 
#define CTX_MAPPING    7 
#define CTX_CALL_ASYNC 8 
#define CTX_EXISTS  9 
#define CTX_EXIST_RES  10