aboutsummaryrefslogtreecommitdiffstats
path: root/src/cynagora-protocol.txt
blob: 10668cadd0cc03301d2b757fc56872539b159660 (plain)
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
protocol
========

hello:

  c->s cynagora 1
  s->c yes 1 CACHEID

invalidate cache:

  s->c clear CACHEID
  
### test a permission

synopsis:

	c->s test CLIENT SESSION USER PERMISSION
	s->c (done|yes|no) [EXPIRE]



### check a permission

synopsis:

	c->s check CLIENT SESSION USER PERMISSION
	s->c (yes|no) [EXPIRE]


### enter critical (admin)

synopsis:

	c->s enter
	s->c done

### leave critical (admin)

synopsis:

	c->s leave [commit|rollback]
	s->c done|error ...

### erase (admin)

synopsis:

  c->s drop CLIENT SESSION USER PERMISSION
  s->c done|error ...

set (admin):

  c->s set CLIENT SESSION USER PERMISSION VALUE [EXPIRE]
  s->c done|error ...

list permissions (admin):

  c->s get CLIENT SESSION USER PERMISSION
  s->c item CLIENT SESSION USER PERMISSION VALUE [EXPIRE]
  s->c ...
  s->c done

logging set/get (admin)

  c->s log [on|off]
  s->c done (on|off)

register agent (agent):

  s->c ask ASKID NAME VALUE CLIENT SESSION USER PERMISSION
  c->s reply ASKID (yes|no|error) [EXPIRE]

ask agent (agent):

  s->c ask NAME VALUE CLIENT SESSION USER PERMISSION
  c->s done | ([yes|no] [always|session|one-time|EXPIRE])


----------------------------------------------------------
  c->s c(heck) CLIENT SESSION USER PERMISSION
  c->s d(rop) CLIENT SESSION USER PERMISSION
  c->s e(nter)
  c->s g(et) CLIENT SESSION USER PERMISSION
  c->s l(eave) [commit|rollback]
  c->s r(cyn)
  c->s s(et) CLIENT SESSION USER PERMISSION VALUE EXPIRE
  c->s t(est) CLIENT SESSION USER PERMISSION

  s->c clear
  s->c done
  s->c done [CLIENT SESSION USER PERMISSION VALUE]
  s->c done|error ...
  s->c item CLIENT SESSION USER PERMISSION VALUE EXPIRE
  s->c done VALUE EXPIRE