The ovsdb-idlc program is a command-line tool for translating Open
vSwitch database interface definition language (IDL) schemas into
other formats. It is used while building Open vSwitch, not at
installation or configuration time. Thus, it is not normally
installed as part of Open vSwitch.
The idl files used as input for most ovsdb-idlc commands have the
same format as the OVSDB schemas, specified in the OVSDB
specification, with a few additions:
"idlPrefix" member of <database-schema>
This member, which is required, specifies a string that is
prefixed to top-level names in C bindings. It should probably
end in an underscore.
"idlHeader" member of <database-schema>
This member, which is required, specifies the name of the IDL
header. It will be output on an #include line in the source
file generated by the C bindings. It should include the
bracketing "" or <>.
Commandsannotate schema annotations
Reads schema, which should be a file in JSON format
(ordinarily an OVSDB schema file), then reads and executes the
Python syntax fragment in annotations. The Python syntax
fragment is passed the JSON object as a local variable named
s. It may modify this data in any way. After the Python code
returns, the object as modified is re-serialized as JSON on
standard output.
c-idl-header idl
Reads idl and prints on standard output a C header file that
defines a structure for each table defined by the schema. If
a column name in idl is a C or C++ keyword, it will be
appended with an underscore.
c-idl-source idl
Reads idl and prints on standard output a C source file that
implements C bindings for the database defined by the schema.
If a column name in idl is a C or C++ keyword, it will be
appended with an underscore.
Options
This page is part of the Open vSwitch (a distributed virtual
multilayer switch) project. Information about the project can be
found at ⟨http://openvswitch.org/⟩. If you have a bug report for
this manual page, send it to bugs@openvswitch.org. This page was
obtained from the project's upstream Git repository
⟨https://github.com/openvswitch/ovs.git⟩ on 2018-02-02. (At that
time, the date of the most recent commit that was found in the repos‐
itory was 2018-02-01.) If you discover any rendering problems in
this HTML version of the page, or you believe there is a better or
more up-to-date source for the page, or you have corrections or
improvements to the information in this COLOPHON (which is not part
of the original manual page), send a mail to man-pages@man7.org
Open vSwitch November 2009 ovsdb-idlc(1)