vswitchd/bridge.h \
vswitchd/mgmt.c \
vswitchd/mgmt.h \
- vswitchd/port.c \
- vswitchd/port.h \
vswitchd/proc-net-compat.c \
vswitchd/proc-net-compat.h \
vswitchd/ovs-vswitchd.c \
}
}
+static bool
+set_iface_policing(struct bridge *br UNUSED, struct iface *iface,
+ void *aux UNUSED)
+{
+ int rate = cfg_get_int(0, "port.%s.ingress.policing-rate", iface->name);
+ int burst = cfg_get_int(0, "port.%s.ingress.policing-burst", iface->name);
+ netdev_set_policing(iface->netdev, rate, burst);
+ return true;
+}
+
/* Calls 'cb' for each interfaces in 'br', passing along the 'aux' argument.
* Deletes from 'br' all the interfaces for which 'cb' returns false, and then
* deletes from 'br' any ports that no longer have any interfaces. */
}
LIST_FOR_EACH (br, struct bridge, node, &all_bridges) {
brstp_reconfigure(br);
+ iterate_and_prune_ifaces(br, set_iface_policing, NULL);
}
}
#include "mgmt.h"
#include "ovs-vswitchd.h"
#include "poll-loop.h"
-#include "port.h"
#include "proc-net-compat.h"
#include "process.h"
#include "signals.h"
cfg_read();
mgmt_init();
bridge_init();
- port_init();
mgmt_reconfigure();
need_reconfigure = false;
cfg_read();
bridge_reconfigure();
mgmt_reconfigure();
- port_reconfigure();
for (i = 0; i < n_conns; i++) {
unixctl_command_reply(conns[i], 202, NULL);
+++ /dev/null
-/* Copyright (c) 2009 Nicira Networks
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at:
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#include <config.h>
-
-#include "bridge.h"
-#include "cfg.h"
-#include "netdev.h"
-#include "ovs-vswitchd.h"
-#include "port.h"
-#include "svec.h"
-
-#define THIS_MODULE VLM_port
-#include "vlog.h"
-
-static int
-set_ingress_policing(const char *port_name)
-{
- int kbits_rate = cfg_get_int(0, "port.%s.ingress.policing-rate",
- port_name);
- int kbits_burst = cfg_get_int(0, "port.%s.ingress.policing-burst",
- port_name);
-
- return netdev_nodev_set_policing(port_name, kbits_rate, kbits_burst);
-}
-
-void
-port_init(void)
-{
- port_reconfigure();
-}
-
-void
-port_reconfigure(void)
-{
- struct svec ports;
- int i;
-
- svec_init(&ports);
- bridge_get_ifaces(&ports);
- for (i=0; i<ports.n; i++) {
- set_ingress_policing(ports.names[i]);
- }
-}
+++ /dev/null
-/* Copyright (c) 2009 Nicira Networks
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at:
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-#ifndef VSWITCHD_PORT_H
-#define VSWITCHD_PORT_H 1
-
-void port_init(void);
-void port_reconfigure(void);
-
-#endif /* port.h */