meta-flow: Correctly set destination MAC in mf_set_flow_value().
[sliver-openvswitch.git] / vswitchd / vswitch.ovsschema
1 {"name": "Open_vSwitch",
2  "version": "6.4.0",
3  "cksum": "923041702 15687",
4  "tables": {
5    "Open_vSwitch": {
6      "columns": {
7        "bridges": {
8          "type": {"key": {"type": "uuid",
9                           "refTable": "Bridge"},
10                   "min": 0, "max": "unlimited"}},
11        "manager_options": {
12          "type": {"key": {"type": "uuid",
13                           "refTable": "Manager"},
14                   "min": 0, "max": "unlimited"}},
15        "ssl": {
16          "type": {"key": {"type": "uuid",
17                           "refTable": "SSL"},
18                   "min": 0, "max": 1}},
19        "other_config": {
20          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
21        "external_ids": {
22          "type": {"key": "string", "value": "string",
23                   "min": 0, "max": "unlimited"}},
24        "next_cfg": {
25          "type": "integer"},
26        "cur_cfg": {
27          "type": "integer"},
28        "capabilities": {
29          "type": {"key": "string",
30                   "value": {"type": "uuid",
31                             "refTable": "Capability"},
32                   "min": 0, "max": "unlimited"}},
33        "statistics": {
34          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
35          "ephemeral": true},
36        "ovs_version": {
37          "type": {"key": {"type": "string"},
38                   "min": 0, "max": 1}},
39        "db_version": {
40          "type": {"key": {"type": "string"},
41                   "min": 0, "max": 1}},
42        "system_type": {
43          "type": {"key": {"type": "string"},
44                   "min": 0, "max": 1}},
45        "system_version": {
46          "type": {"key": {"type": "string"},
47                   "min": 0, "max": 1}}},
48      "isRoot": true,
49      "maxRows": 1},
50    "Capability": {
51      "columns": {
52        "details": {
53          "type": {"key": "string", "value": "string",
54                   "min": 0, "max": "unlimited"}}}},
55    "Bridge": {
56      "columns": {
57        "name": {
58          "type": "string",
59          "mutable": false},
60        "datapath_type": {
61          "type": "string"},
62        "datapath_id": {
63          "type": {"key": "string", "min": 0, "max": 1},
64          "ephemeral": true},
65        "stp_enable": {
66          "type": "boolean"},
67        "ports": {
68          "type": {"key": {"type": "uuid",
69                           "refTable": "Port"},
70                   "min": 0, "max": "unlimited"}},
71        "mirrors": {
72          "type": {"key": {"type": "uuid",
73                           "refTable": "Mirror"},
74                   "min": 0, "max": "unlimited"}},
75        "netflow": {
76          "type": {"key": {"type": "uuid",
77                           "refTable": "NetFlow"},
78                   "min": 0, "max": 1}},
79        "sflow": {
80          "type": {"key": {"type": "uuid",
81                           "refTable": "sFlow"},
82                   "min": 0, "max": 1}},
83        "controller": {
84          "type": {"key": {"type": "uuid",
85                           "refTable": "Controller"},
86                   "min": 0, "max": "unlimited"}},
87        "fail_mode": {
88          "type": {"key": {"type": "string",
89                           "enum": ["set", ["standalone", "secure"]]},
90                   "min": 0, "max": 1}},
91        "status": {
92          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
93          "ephemeral": true},
94        "other_config": {
95          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
96        "external_ids": {
97          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
98        "flood_vlans": {
99          "type": {"key": {"type": "integer",
100                           "minInteger": 0,
101                           "maxInteger": 4095},
102                   "min": 0, "max": 4096}}},
103      "indexes": [["name"]]},
104    "Port": {
105      "columns": {
106        "name": {
107          "type": "string",
108          "mutable": false},
109        "interfaces": {
110          "type": {"key": {"type": "uuid",
111                           "refTable": "Interface"},
112                   "min": 1, "max": "unlimited"}},
113        "trunks": {
114          "type": {"key": {"type": "integer",
115                           "minInteger": 0,
116                           "maxInteger": 4095},
117                   "min": 0, "max": 4096}},
118        "tag": {
119          "type": {"key": {"type": "integer",
120                           "minInteger": 0,
121                           "maxInteger": 4095},
122                   "min": 0, "max": 1}},
123        "vlan_mode": {
124          "type": {"key": {"type": "string",
125            "enum": ["set", ["trunk", "access", "native-tagged", "native-untagged"]]},
126          "min": 0, "max": 1}},
127        "qos": {
128          "type": {"key": {"type": "uuid",
129                           "refTable": "QoS"},
130                   "min": 0, "max": 1}},
131        "mac": {
132          "type": {"key": {"type": "string"},
133                   "min": 0, "max": 1}},
134        "bond_mode": {
135          "type": {"key": {"type": "string",
136            "enum": ["set", ["balance-tcp", "balance-slb", "active-backup", "stable"]]},
137          "min": 0, "max": 1}},
138        "lacp": {
139          "type": {"key": {"type": "string",
140            "enum": ["set", ["active", "passive", "off"]]},
141          "min": 0, "max": 1}},
142        "bond_updelay": {
143          "type": "integer"},
144        "bond_downdelay": {
145          "type": "integer"},
146        "bond_fake_iface": {
147          "type": "boolean"},
148        "fake_bridge": {
149          "type": "boolean"},
150        "status": {
151          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
152          "ephemeral": true},
153        "statistics": {
154          "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
155          "ephemeral": true},
156        "other_config": {
157          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
158        "external_ids": {
159          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}}},
160      "indexes": [["name"]]},
161    "Interface": {
162      "columns": {
163        "name": {
164          "type": "string",
165          "mutable": false},
166        "type": {
167          "type": "string"},
168        "options": {
169          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
170        "ingress_policing_rate": {
171          "type": {"key": {"type": "integer",
172                           "minInteger": 0}}},
173        "ingress_policing_burst": {
174          "type": {"key": {"type": "integer",
175                           "minInteger": 0}}},
176        "mac": {
177          "type": {"key": {"type": "string"},
178                   "min": 0, "max": 1}},
179        "external_ids": {
180          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
181        "ofport": {
182          "type": {"key": "integer", "min": 0, "max": 1},
183          "ephemeral": true},
184        "cfm_mpid": {
185          "type": {
186            "key": {"type": "integer"},
187            "min": 0,
188            "max": 1}},
189        "cfm_remote_mpids": {
190          "type": {
191            "key": {"type": "integer"},
192            "min": 0,
193            "max": "unlimited"},
194          "ephemeral": true},
195        "cfm_fault": {
196          "type": {
197            "key": { "type": "boolean"},
198            "min": 0,
199            "max": 1},
200          "ephemeral": true},
201        "lacp_current": {
202          "type": {"key": {"type": "boolean"},
203                   "min": 0, "max": 1},
204          "ephemeral": true},
205        "other_config": {
206          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"}},
207        "statistics": {
208          "type": {"key": "string", "value": "integer", "min": 0, "max": "unlimited"},
209          "ephemeral": true},
210        "status": {
211          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
212          "ephemeral": true},
213        "admin_state": {
214          "type": {"key": {"type": "string",
215                           "enum": ["set", ["up", "down"]]},
216                   "min": 0, "max": 1},
217          "ephemeral": true},
218        "link_state": {
219          "type": {"key": {"type": "string",
220                           "enum": ["set", ["up", "down"]]},
221                   "min": 0, "max": 1},
222          "ephemeral": true},
223        "link_resets": {
224          "type": {"key": {"type": "integer"},
225                   "min": 0, "max": 1},
226          "ephemeral": true},
227        "link_speed": {
228          "type": {"key": "integer", "min": 0, "max": 1},
229          "ephemeral": true},
230        "duplex": {
231          "type": {"key": {"type": "string",
232                           "enum": ["set", ["half", "full"]]},
233                   "min": 0, "max": 1},
234          "ephemeral": true},
235        "mtu": {
236          "type": {"key": "integer", "min": 0, "max": 1},
237          "ephemeral": true}},
238      "indexes": [["name"]]},
239    "QoS": {
240      "columns": {
241        "type": {
242          "type": "string"},
243        "queues": {
244          "type": {"key": {"type": "integer",
245                           "minInteger": 0,
246                           "maxInteger": 4294967295},
247                   "value": {"type": "uuid",
248                             "refTable": "Queue"},
249                   "min": 0, "max": "unlimited"}},
250        "other_config": {
251          "type": {"key": "string", "value": "string",
252                   "min": 0, "max": "unlimited"}},
253        "external_ids": {
254          "type": {"key": "string", "value": "string",
255                   "min": 0, "max": "unlimited"}}},
256      "isRoot": true},
257    "Queue": {
258      "columns": {
259        "dscp": {
260          "type": {"key": {"type": "integer",
261                           "minInteger": 0,
262                           "maxInteger": 63},
263                   "min": 0, "max": 1}},
264        "other_config": {
265          "type": {"key": "string", "value": "string",
266                   "min": 0, "max": "unlimited"}},
267        "external_ids": {
268          "type": {"key": "string", "value": "string",
269                   "min": 0, "max": "unlimited"}}},
270      "isRoot": true},
271    "Mirror": {
272      "columns": {
273        "name": {
274          "type": "string"},
275        "select_all": {
276          "type": "boolean"},
277        "select_src_port": {
278          "type": {"key": {"type": "uuid",
279                           "refTable": "Port",
280                           "refType": "weak"},
281                    "min": 0, "max": "unlimited"}},
282        "select_dst_port": {
283          "type": {"key": {"type": "uuid",
284                           "refTable": "Port",
285                           "refType": "weak"},
286                    "min": 0, "max": "unlimited"}},
287        "select_vlan": {
288          "type": {"key": {"type": "integer",
289                           "minInteger": 0,
290                           "maxInteger": 4095},
291                   "min": 0, "max": 4096}},
292        "output_port": {
293          "type": {"key": {"type": "uuid",
294                           "refTable": "Port",
295                           "refType": "weak"},
296                   "min": 0, "max": 1}},
297        "output_vlan": {
298          "type": {"key": {"type": "integer",
299                           "minInteger": 1,
300                           "maxInteger": 4095},
301                   "min": 0, "max": 1}},
302        "statistics": {
303          "type": {"key": "string", "value": "integer",
304                   "min": 0, "max": "unlimited"},
305          "ephemeral": true},
306        "external_ids": {
307          "type": {"key": "string", "value": "string",
308                   "min": 0, "max": "unlimited"}}}},
309    "NetFlow": {
310      "columns": {
311        "targets": {
312          "type": {"key": {"type": "string"},
313                   "min": 1, "max": "unlimited"}},
314        "engine_type": {
315          "type": {"key": {"type": "integer",
316                           "minInteger": 0,
317                           "maxInteger": 255},
318                   "min": 0, "max": 1}},
319        "engine_id": {
320          "type": {"key": {"type": "integer",
321                           "minInteger": 0,
322                           "maxInteger": 255},
323                   "min": 0, "max": 1}},
324        "add_id_to_interface": {
325          "type": "boolean"},
326        "active_timeout": {
327          "type": {"key": {"type": "integer",
328                           "minInteger": -1}}},
329        "external_ids": {
330          "type": {"key": "string", "value": "string",
331                   "min": 0, "max": "unlimited"}}}},
332    "sFlow": {
333      "columns": {
334        "targets": {
335          "type": {"key": "string", "min": 1, "max": "unlimited"}},
336        "sampling": {
337          "type": {"key": "integer", "min": 0, "max": 1}},
338        "polling": {
339          "type": {"key": "integer", "min": 0, "max": 1}},
340        "header": {
341          "type": {"key": "integer", "min": 0, "max": 1}},
342        "agent": {
343          "type": {"key": "string", "min": 0, "max": 1}},
344        "external_ids": {
345          "type": {"key": "string", "value": "string",
346                   "min": 0, "max": "unlimited"}}}},
347    "Controller": {
348      "columns": {
349        "target": {
350          "type": "string"},
351        "max_backoff": {
352          "type": {"key": {"type": "integer",
353                           "minInteger": 1000},
354                   "min": 0, "max": 1}},
355        "inactivity_probe": {
356          "type": {"key": "integer", "min": 0, "max": 1}},
357        "connection_mode": {
358          "type": {"key": {"type": "string",
359                   "enum": ["set", ["in-band", "out-of-band"]]},
360                   "min": 0, "max": 1}},
361        "local_ip": {
362          "type": {"key": {"type": "string"},
363                   "min": 0, "max": 1}},
364        "local_netmask": {
365          "type": {"key": {"type": "string"},
366                   "min": 0, "max": 1}},
367        "local_gateway": {
368          "type": {"key": {"type": "string"},
369                   "min": 0, "max": 1}},
370        "controller_rate_limit": {
371          "type": {"key": {"type": "integer",
372                           "minInteger": 100},
373                   "min": 0, "max": 1}},
374        "controller_burst_limit": {
375          "type": {"key": {"type": "integer",
376                           "minInteger": 25},
377                   "min": 0, "max": 1}},
378        "external_ids": {
379          "type": {"key": "string", "value": "string",
380                   "min": 0, "max": "unlimited"}},
381        "is_connected": {
382          "type": "boolean",
383          "ephemeral": true},
384        "role": {
385          "type": {"key": {"type": "string",
386                           "enum": ["set", ["other", "master", "slave"]]},
387                   "min": 0, "max": 1},
388          "ephemeral": true},
389        "status": {
390          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
391          "ephemeral": true}}},
392    "Manager": {
393      "columns": {
394        "target": {
395          "type": "string"},
396        "max_backoff": {
397          "type": {"key": {"type": "integer",
398                           "minInteger": 1000},
399                   "min": 0, "max": 1}},
400        "inactivity_probe": {
401          "type": {"key": "integer", "min": 0, "max": 1}},
402        "connection_mode": {
403          "type": {"key": {"type": "string",
404                   "enum": ["set", ["in-band", "out-of-band"]]},
405                   "min": 0, "max": 1}},
406        "external_ids": {
407          "type": {"key": "string", "value": "string",
408                   "min": 0, "max": "unlimited"}},
409        "is_connected": {
410          "type": "boolean",
411          "ephemeral": true},
412        "status": {
413          "type": {"key": "string", "value": "string", "min": 0, "max": "unlimited"},
414          "ephemeral": true}},
415      "indexes": [["target"]]},
416    "SSL": {
417      "columns": {
418        "private_key": {
419          "type": "string"},
420        "certificate": {
421          "type": "string"},
422        "ca_cert": {
423          "type": "string"},
424        "bootstrap_ca_cert": {
425          "type": "boolean"},
426        "external_ids": {
427          "type": {"key": "string", "value": "string",
428                   "min": 0, "max": "unlimited"}}},
429      "maxRows": 1}}}