commit | feee371476d77bf7c3a6f07208eb71ef311e8f1f | [log] [tgz] |
---|---|---|
author | Rob Vaterlaus <rob.vaterlaus@bigswitch.com> | Mon Sep 30 11:24:19 2013 -0700 |
committer | Rob Vaterlaus <rob.vaterlaus@bigswitch.com> | Mon Sep 30 11:24:19 2013 -0700 |
tree | f4cf547b61e7a9b4b0fed25fd5d6ed50c8000cdf | |
parent | c6cc2ae911b944cd13c84271fbf5abbcca7ff4d2 [diff] |
Hierarchical error messages plus some more tweaks - hierarchical error messages for different error types - renamed ofp_stats_types to ofp_stats_type - renamed OFP_VENDOR to OFP_EXPERIMENTER in OF 1.0 input file - use ofp_capabilities enum in of_features_reply - use boolean type for l2_table_enable field in of_bsn_set_l2_table_(request|reply) - return Set<OFActionType> for actions field in of_features_reply - added DatapathId class that's returned for datapath_id field of of_features_reply - removed unused read/write routines from OFBufferId - added getOFVersioon method to factory classes/interfaces - renamed OFPT_MULTIPART_(REQUEST|REPLY) to OFPT_STATS_(REQUEST|REPLY) in OF 1.3 input file - renamed ofp_multipart_types to ofp_stats_type in OF 1.3 input file - tweaked python backend to work with consistent use of of_stats_xyz vs. of_multipart_xyz in 1.3
LoxiGen is a tool that generates OpenFlow protocol libraries for a number of languages. It is composed of a frontend that parses wire protocol descriptions and a backend for each supported language (currently C and Python, with Java on the way).
You can run LoxiGen directly from the repository. There's no need to install it, and it has no dependencies beyond Python 2.7+.
To generate the libraries for all languages:
make
To generate the library for a single language:
make c
The currently supported languages are c
and python
.
The generated libraries will be under the loxi_output
directory. This can be changed with the LOXI_OUTPUT_DIR
environment variable when using the Makefile.
Each generated library comes with its own set of documentation in the standard format for that language. Please see that documentation for more details on using the generated libraries.
Please fork the repository on GitHub and send us a pull request. You might also be interested in the INTERNALS file which has notes about how LoxiGen works.