summaryrefslogtreecommitdiff
path: root/utilities/automake.mk
Commit message (Collapse)AuthorAgeFilesLines
* dist-docs: New utility to generate a documentation bundle for the website.Ben Pfaff2014-12-021-1/+1
| | | | | | | | | | | | | | This utility isn't going to be as portable as most of the Open vSwitch utilities, unfortunately. I'm happy to take improvements to make it able to work with, e.g., the "man" program from BSD. (I haven't tested with that program, but I suspect that it is somewhat different from the GNU version.) The output of this program can already be viewed at: http://openvswitch.org/support/dist-docs/ Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Thomas Graf <tgraf@noironetworks.com>
* utilities: Add bash command-line completion script.Alex Wang2014-10-301-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch adds bash command-line completion script for ovs-appctl, ovs-dpctl, ovs-ofctl and ovsdb-tool command. Right now, the script can do the following: - display available completion or complete on unfinished user input (long option, subcommand, and argument). - once the subcommand (e.g. ofproto/trace) has been given, the script will print the subcommand format. - the script can convert between keywords like 'bridge/port/interface/dp' and the available record in ovsdb. The limitations are: - only support small set of important keywords (dp, datapath, bridge, switch, port, interface, iface). - does not support parsing of nested options (e.g. ovsdb-tool create [db [schema]]). - does not support expansion on repeatitive argument (e.g. ovs-dpctl show [dp...]). - only support matching on long options, and only in the format (--option [arg], i.e. should not use --option=[arg]). To use the script, either copy it inside /etc/bash_completion.d/ or manually run it via . ovs-command-compgen.bash. Also, a unit testsuite is provided as ovs-command-compgen-test.bash. It is suggested that this test script be run only inside tutorial/sandbox directory. For more info please refer to utilities/ovs-command-compgen.INSTALL.md. Signed-off-by: Alex Wang <alexw@nicira.com> Acked-by: Ben Pfaff <blp@nicira.com>
* docker: Integrate docker containers with Open vSwitch.Gurucharan Shetty2014-10-161-1/+3
| | | | | | | | | | | | | | Open vSwitch does not have native integration with Docker. INSTALL.Docker explains how Open vSwitch can be integrated with docker non-natively. ovs-docker is a helper script to add network interfaces to docker containers and to attach them as ports to OVS bridge. This script can be further enhanced as we understand different use cases. Signed-off-by: Gurucharan Shetty <gshetty@nicira.com> Acked-by: Ben Pfaff <blp@nicira.com>
* test-controller: Rename to ovs-testcontroller, again install.Ben Pfaff2014-08-261-0/+7
| | | | | | | | | | | mininet uses the Open vSwitch controller by default, for testing. CC: 757761@bugs.debian.org Reported-at: https://bugs.debian.org/757761 Requested-by: Tomasz Buchert <tomasz.buchert@inria.fr> Requested-by: Dariusz Dwornikowski <dariusz.dwornikowski@cs.put.poznan.pl> Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Justin Pettit <jpettit@nicira.com>
* ovs-ctl: Install manpage.Ben Pfaff2014-05-011-1/+1
| | | | | | | It seems that it is useful to admins after all. Reported-by: Brian Candler <b.candler@pobox.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* Makefile: Compile Linux-specific files based on __linux__ macro.Ben Pfaff2014-03-051-1/+1
| | | | | | | | | | | We want to conditionally compile several files based on whether we're building for a Linux host, so we need some Automake conditional for that. Previously this was based on whether Netlink is available and we're not on ESX (since ESX has Netlink but isn't Linux), but it's more straightforward to just test for Linux directly. CC: Luigi Rizzo <rizzo@iet.unipi.it> Signed-off-by: Ben Pfaff <blp@nicira.com>
* Makefile: Remove unnecessary includes of SSL_LIBS.Gurucharan Shetty2014-03-041-8/+7
| | | | | | | | | SSL_LIBS are needed for libopenvswitch and we include that in lib/automake.mk. It is not necessary to include it for every executable. Signed-off-by: Gurucharan Shetty <gshetty@nicira.com> Acked-by: Ben Pfaff <blp@nicira.com>
* openvswitch: Use libtool and allow building shared libsHelmut Schaa2013-12-171-8/+8
| | | | | | | | | | | | | | | | | | | | | | Currently openvswitch builds all libraries static only. However, libopenvswitch is linked into nearly all openvswitch executables making it hardly possible to run openvswitch on embedded devices (for example running OpenWrt). Convert openvswitch to use libtool for building its internal libs. This allows "--enable-shared" and "--enable-static" as configure arguments. Default is "--disable-shared" thus keeping the current behavior with the only change that static libs are installed by "make install". Since the openvswitch library interfaces are internal and thus not stable (yet) encode the openvswitch version into the library name: libopenvswitch-2.0.90.so Binary size is reduced to around 1/3 when using shared libs. Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* utilities: Regenerate ovs-lib if configuration changes.Ben Pfaff2013-11-191-0/+2
| | | | | | | | | | Otherwise running "configure" twice with different --prefix (etc.) will fail to update ovs-lib, so that "make install" installs an ovs-lib with the wrong paths. Reported-by: Andy Zhou <azhou@nicira.com> Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Andy Zhou <azhou@nicira.com>
* ovs-controller: Rename test-controller and do not install or package.Ben Pfaff2013-11-021-7/+0
| | | | | | | | | Too many users have incorrectly assumed that ovs-controller is a necessary or desirable part of an Open vSwitch deployment. This commit should fix the problem by renaming it test-controller and removing it from the default install and from packaging. Signed-off-by: Ben Pfaff <blp@nicira.com>
* utilities: a top like tool for ovs-dpctl dump-flows.Mark Hamilton2013-09-171-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This python script summarizes ovs-dpctl dump-flows content by aggregating the number of packets, total bytes and occurrence of the following fields: - Datapath in_port - Ethernet type - Source and destination MAC addresses - IP protocol - Source and destination IPv4 addresses - Source and destination IPv6 addresses - UDP and TCP destination port - Tunnel source and destination addresses Testing included confirming both mega-flows and non-megaflows are properly parsed. Bit masks are applied in the case of mega-flows prior to aggregation. Test --script parameter which runs in non-interactive mode. Tested syntax against python 2.4.3, 2.6 and 2.7. Confirmed script passes pep8 and pylint run as: pylint --disable=I0011 --include-id=y --reports=n This tool has been added to these distribution: - add ovs-dpctl-top to debian distribution - add ovs-dpctl-top to rpm distribution. - add ovs-dpctl-top to XenServer RPM. Signed-off-by: Mark Hamilton <mhamilton@nicira.com> Signed-off-by: Gurucharan Shetty <gshetty@nicira.com>
* utilities: New helper script ovs-dev.py.Ethan Jackson2013-07-091-0/+1
| | | | | | | | | ovs-dev.py is a script I've written to help perform common tasks necessary for developing Open vSwitch. It allows a developer to configure, build, and run the switch with a minimum of effort or knowledge of the various idiosyncrasies involved. Signed-off-by: Ethan Jackson <ethan@nicira.com>
* leak-checker: Remove because it cannot be made thread-safe.Ben Pfaff2013-06-171-5/+1
| | | | | | | | | The underlying glibc interface is deprecated because the interface itself is not thread-safe. That means that there's no way for a layer on top of it to be thread-safe. Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Ethan Jackson <ethan@nicira.com>
* utilities: New helper ovs-parse-backtrace.Ethan Jackson2012-10-171-0/+5
| | | | | | | | The new ovs-parse-backtrace utility makes the output of ovs-appctl backtrace more human readable by removing duplicate traces and converting addresses to function names. Signed-off-by: Ethan Jackson <ethan@nicira.com>
* config: Add explicit support for building on ESX.Ethan Jackson2012-10-091-1/+1
| | | | | | | | | | | | | The ESX userspace looks quite a bit like linux, but has some key differences which need to be specially handled in the build. To distinguish between ESX and systems which use the linux datapath module, this patch adds two new macros "ESX" and "LINUX_DATAPATH". It uses these macros to disable building code on ESX which only applies to a true Linux environment. In addition, it adds a new route-table-stub implementation which is required for the build to complete successfully on ESX. Signed-off-by: Ethan Jackson <ethan@nicira.com>
* ovs-pki: Remove "online PKI" features and ovs-pki-cgi.Ben Pfaff2012-08-061-3/+0
| | | | | | | | | | | | | | Debian bug #683665, Red Hat bug #845350, and CVE-2012-3449 all claim that ovs-pki's "incoming" directory is a security vulnerability. I do not think that this is the case, but I do not know of any users for this feature, so on balance I prefer to remove it and the ovs-pki-cgi program associated with it, just to be sure. CVE-2012-3449. Bug-report: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=683665 Bug-report: https://bugzilla.redhat.com/show_bug.cgi?id=84535 Reported-by: Andreas Beckmann <debian@abeckmann.de> Signed-off-by: Ben Pfaff <blp@nicira.com>
* Fix race condition in parallel execution of "make install".Ben Pfaff2012-07-231-1/+1
| | | | | | | | | | | | | ovs-vsctl is listed, incorrectly, in both bin_PROGRAMS and bin_SCRIPTS. This meant that "make install" with the -j option could try to install ovs-vsctl two times in parallel, a race that occasionally caused a build failure, e.g.: http://buildd.debian.org/status/fetch.php?pkg=openvswitch&arch=s390&ver=1.4.2%2Bgit20120612-5&stamp=1342851603 Debian bug #682384. CC: 682384@bugs.debian.org Reported-by: Bastian Blank <waldi@debian.org> Signed-off-by: Ben Pfaff <blp@nicira.com>
* ovs-l3ping: A new test utility that allows to detect L3 tunneling issuesAnsis Atteka2012-07-021-0/+6
| | | | | | | | | | | | | | | | | | ovs-l3ping is similar to ovs-test, but the main difference is that it does not require administrator to open firewall holes for the XML/RPC control connection. This is achieved by encapsulating the Control Connection over the L3 tunnel itself. This tool is not intended as a replacement for ovs-test, because ovs-test covers much broader set of test cases. Sample usage: Node1: ovs-l3ping -s 192.168.122.236,10.1.1.1 -t gre Node2: ovs-l3ping -c 192.168.122.220,10.1.1.2,10.1.1.1 -t gre Issue#11791 Signed-off-by: Ansis Atteka <aatteka@nicira.com>
* Fix "make distcheck" failure since we weren't cleaning up a generated file.Ben Pfaff2012-05-101-0/+1
| | | | Signed-off-by: Ben Pfaff <blp@nicira.com>
* ovs-ctl: Make "force-reload-kmod" warn when DHCP clients must be restarted.Ben Pfaff2012-05-011-1/+5
| | | | | | | | | | | | | This should make it more obvious when the admin needs to restart a DHCP client (or other daemon). Without this, unless the admin carefully reads the documentation, the first notice he gets about a need to restart the DHCP client can easily be when the lease expires and the machine drops off the network. Bug #5391. Tested-by: Gurucharan Shetty <gshetty@nicira.com> Suggested-by: Duffie Cooley <dcooley@nicira.com> Signed-off-by: Ben Pfaff <blp@nicira.com>
* idl: Move vswitch-idl to libopenvswitch.Ethan Jackson2012-03-191-1/+1
| | | | | | | This is cleaner then having multiple programs build the idl independently. Signed-off-by: Ethan Jackson <ethan@nicira.com>
* unixctl: New JSON RPC back-end.Ethan Jackson2012-02-211-5/+5
| | | | | | | | | | | | | The unixctl library had used the vde2 management protocol since the early days of Open vSwitch. As Open vSwitch has matured, several Python daemons have been added to the code base which would benefit from a unixctl implementations. Instead of implementing the old unixctl protocol in Python, this patch changes unixctl to use JSON RPC for which we already have an implementation in both Python and C. Future patches will need to implement a unixctl library in Python on top of JSON RPC. Signed-off-by: Ethan Jackson <ethan@nicira.com>
* utilites: rename ovs-lib.sh to ovs-libChris Wright2011-12-091-3/+3
| | | | | | | | Rename this helper script to simply ovs-lib, since it's primarily a library of helper functions. Signed-off-by: Chris Wright <chrisw@sous-sol.org> Signed-off-by: Ben Pfaff <blp@nicira.com>
* utilities: install ovs-lib.sh as data not a scriptChris Wright2011-12-091-1/+2
| | | | | | | | | | | | Currently, ovs-lib.sh is installed as an executable. It's meant to be sourced by external scripts, so install as data. Fixes rpmlint error: E: script-without-shebang /usr/share/openvswitch/scripts/ovs-lib.sh Could drop the .sh suffix in another commit. Signed-off-by: Chris Wright <chrisw@sous-sol.org> Signed-off-by: Ben Pfaff <blp@nicira.com>
* ovs-test: A new tool that allows to diagnose connectivity and performance issuesAnsis Atteka2011-11-181-0/+6
| | | | | | | | | This tool will be a replacement for the current ovs-vlan-test utility. Besides from connectivity issues it will also be able to detect performance related issues in Open vSwitch setups. Currently it uses UDP and TCP protocols for stressing. Issue #6976
* Implement automatic dependency generation for manpages.Ben Pfaff2011-10-261-9/+11
| | | | | This ensures that manpages actually get rebuilt if any of the lib/*.man fragments that they depend upon are modified.
* docs: Add Makefile rule to check syntax of manpages.Ben Pfaff2011-08-241-1/+1
| | | | | This should catch future nroff syntax errors immediately, instead of much later.
* ovs-benchmark: New utility.Ben Pfaff2011-07-271-0/+7
|
* utilities: Install ovs-parse-leaks utility by default.Ben Pfaff2011-07-261-2/+2
| | | | | | | | | We install this in the Debian packaging and I don't see a reason not to install it everywhere. (Oddly, we were already installing the manpage everywhere.) Signed-off-by: Ben Pfaff <blp@nicira.com>
* ovs-bugtool: Add plugins previously used only under XenServer.Ben Pfaff2011-07-131-4/+2
| | | | | | All of the xen-bugtool plugins that OVS has previously installed only under XenServer are equally useful with Debian and other distributions, so this commit installs and uses them everywhere.
* ovs-bugtool: Make available outside of Debian packages.Ben Pfaff2011-07-121-0/+4
| | | | | | ovs-bugtool is no longer Debian-specific, so install it everywhere. (On XenServer, specifically, we do not install it, because there xen-bugtool already exists.)
* utilities: Install ovs-save in scripts directory.Ben Pfaff2011-06-171-1/+1
| | | | | | | This way, the xenserver spec file and the upcoming RHEL 5.6 spec file don't have to install it by hand. Signed-off-by: Ben Pfaff <blp@nicira.com>
* Refactor initscripts into distro-independent and distro-specific pieces.Ben Pfaff2011-06-171-0/+6
| | | | This should make it easier to add OVS support to new distributions.
* ovs-openflowd: Rename test-openflowd and move to "tests" directory.Ben Pfaff2011-06-071-11/+0
| | | | | Too many users thought that they needed to run ovs-openflowd at the same time as ovs-vswitchd. I hope that this change discourages them.
* ofproto: Improve abstraction by adding function ofproto_parse_name().Ben Pfaff2011-05-111-1/+4
| | | | | This means that ovs-ofctl and ovs-openflowd don't have to use the dpif layer at all, making it easier to change the ofproto implementation.
* utilities: Add ovs-vlan-bug-workaround to make distcleanEthan Jackson2011-03-221-0/+1
| | | | This was causing and error during make distcheck for me.
* utilities: Fix typo in makefile that caused RPM build failure.Ben Pfaff2011-03-161-1/+1
| | | | I tested this against our autobuilder and it passed.
* ofproto: Remove controller discovery support.Ben Pfaff2011-03-161-7/+0
| | | | | | I've never heard of anyone actually using controller discovery. It adds a great deal of code to the source tree, and a little bit of complication to ofproto, so this commit removes it.
* Support vlan_group workaround implemented in XenServer kernels.Ben Pfaff2011-03-161-0/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Some Linux network drivers support a feature called "VLAN acceleration", associated with a data structure called a "vlan_group". A vlan_group is, abstractly, a dictionary that maps from a VLAN ID (in the range 0...4095) to a VLAN device, that is, a Linux network device associated with a particular VLAN, e.g. "eth0.9" for VLAN 9 on eth0. Some drivers that support VLAN acceleration have bugs that fall roughly into the following categories: * Some NICs strip VLAN tags on receive if no vlan_group is registered, so that the tag is completely lost. * Some drivers size their receive buffers based on whether a vlan_group is enabled, meaning that a maximum size packet with a VLAN tag will not fit if a vlan_group is not configured. * On transmit some drivers expect that VLAN acceleration will be used if it is available (which can only be done if a vlan_group is configured). In these cases, the driver may fail to parse the packet and correctly setup checksum offloading and/or TSO. The correct long term solution is to fix these driver bugs. To cope until then, we have prepared a patch to the Linux kernel network stack that works around these problems. This commit adds support for the workaround implemented by that patch. Signed-off-by: Ben Pfaff <blp@nicira.com> Acked-by: Jesse Gross <jesse@nicira.com>
* ovs-kill: Remove.Ben Pfaff2011-02-231-7/+0
| | | | | | | This utility isn't used anywhere (except INSTALL.Linux), so remove it. Signed-off-by: Ben Pfaff <blp@nicira.com> Coverity #10708.
* xenserver: Introduce "force-reload-kmod" to reload kernel module.Ben Pfaff2011-02-081-0/+1
| | | | | | | | | | Running "service openvswitch force-reload-kmod" will now save the kernel configuration state of Open vSwitch interfaces, stop the vswitch, unload the kernel module, reload the kernel module, restart the vswitch, and restore kernel configuration state. It is a reasonably safe way to upgrade or downgrade the Open vSwitch kernel module on a running system. Signed-off-by: Ben Pfaff <blp@nicira.com>
* utilities: Implement ovs-vlan-test scriptEthan Jackson2010-12-231-1/+9
| | | | | | This patch implements a script which may be used to check for connectivity issues caused by bugs in Linux drivers relating to VLAN traffic.
* ofproto: Add "ofproto/trace" command to help debugging flow tables.Ben Pfaff2010-12-091-0/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | With an appropriate flow table, output from a command like this: ovs-appctl ofproto/trace system@dp0 0 0 ffffffffffff000c29f49d5c080600010 80006040001000c29f49d5cac10008a000000000000ac1004df00000000000000000000000000000 0000000 resembles the following: Packet: -8:00:00.000000 00:0c:29:f4:9d:5c > ff:ff:ff:ff:ff:ff, ethertype ARP (0x 0806), length 60: arp who-has 172.16.4.223 tell 172.16.0.138 Flow: tunnel0:in_port0000:tci(0) mac00:0c:29:f4:9d:5c->ff:ff:ff:ff:ff:ff type080 6 proto1 tos0 ip172.16.0.138->172.16.4.223 port0->0 Rule: cookie=0 in_port=65534 OpenFlow actions=resubmit:1,mod_vlan_vid:5,resubmit:2,mod_vlan_pcp:6,strip_vlan Resubmitted flow: unchanged Rule: cookie=0 in_port=1 OpenFlow actions=resubmit:3,resubmit:4 Resubmitted flow: unchanged No match Resubmitted flow: unchanged No match Resubmitted flow: tunnel0:in_port0000:tci(vlan5,pcp0) mac00:0c:29:f4:9d: 5c->ff:ff:ff:ff:ff:ff type0806 proto1 tos0 ip172.16.0.138->172.16.4.223 port0->0 No match Final flow: tunnel0:in_port0000:tci(0) mac00:0c:29:f4:9d:5c->ff:ff:ff:ff:ff:ff t ype0806 proto1 tos0 ip172.16.0.138->172.16.4.223 port0->0 Datapath actions: set_tci(vid=5,pcp=0),set_tci(vid=5,pcp=6),strip_vlan
* utilities: Remove ovs-wdt.Ben Pfaff2010-08-251-3/+0
| | | | | | | | We used ovs-wdt at Nicira for a while when we were working on building hardware switches. We don't use it anymore, so remove it from the tree. CC: Simon Horman <horms@verge.net.au> Signed-off-by: Ben Pfaff <blp@nicira.com>
* utilities: Remove ovs-monitor.Ben Pfaff2010-08-251-1/+0
| | | | | | | | The ovs-monitor script is now more than adequately replaced by the --monitor option to the various daemons. CC: Simon Horman <horms@verge.net.au> Signed-off-by: Ben Pfaff <blp@nicira.com>
* ovs-parse-leaks: Add manpage.Ben Pfaff2010-08-251-0/+2
| | | | CC: Simon Horman <horms@verge.net.au>
* Build ovs-wdt or nlmon utilities only on Linux.Ben Pfaff2010-05-261-3/+5
| | | | These utilities are Linux-specific.
* Remove PCRE dependency.Ben Pfaff2010-02-251-1/+1
|
* ovsdb: Add simple constraints.Ben Pfaff2010-02-081-1/+1
|
* Merge branch 'master' into nextJustin Pettit2010-02-051-0/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: COPYING datapath/datapath.h lib/automake.mk lib/dpif-provider.h lib/dpif.c lib/hmap.h lib/netdev-provider.h lib/netdev.c lib/stream-ssl.h ofproto/executer.c ofproto/ofproto.c ofproto/ofproto.h tests/automake.mk utilities/ovs-ofctl.c utilities/ovs-vsctl.in vswitchd/ovs-vswitchd.conf.5.in xenserver/etc_init.d_vswitch xenserver/etc_xensource_scripts_vif xenserver/opt_xensource_libexec_interface-reconfigure