projects
/
openvswitch
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ovs-openflowd: Remove documentation for obsolete --mgmt-id option.
[openvswitch]
/
lib
/
vconn.c
diff --git
a/lib/vconn.c
b/lib/vconn.c
index d8807fda3e521b46d9a975138f3c408ba6724661..80ba471b9a49a8db9787cc19e440e5746a8e6fd5 100644
(file)
--- a/
lib/vconn.c
+++ b/
lib/vconn.c
@@
-25,6
+25,7
@@
#include <string.h>
#include "coverage.h"
#include "dynamic-string.h"
#include <string.h>
#include "coverage.h"
#include "dynamic-string.h"
+#include "fatal-signal.h"
#include "flow.h"
#include "ofp-print.h"
#include "ofpbuf.h"
#include "flow.h"
#include "ofp-print.h"
#include "ofpbuf.h"
@@
-273,6
+274,8
@@
vconn_open_block(const char *name, int min_version, struct vconn **vconnp)
struct vconn *vconn;
int error;
struct vconn *vconn;
int error;
+ fatal_signal_run();
+
error = vconn_open(name, min_version, &vconn);
while (error == EAGAIN) {
vconn_run(vconn);
error = vconn_open(name, min_version, &vconn);
while (error == EAGAIN) {
vconn_run(vconn);
@@
-607,6
+610,9
@@
int
vconn_send_block(struct vconn *vconn, struct ofpbuf *msg)
{
int retval;
vconn_send_block(struct vconn *vconn, struct ofpbuf *msg)
{
int retval;
+
+ fatal_signal_run();
+
while ((retval = vconn_send(vconn, msg)) == EAGAIN) {
vconn_run(vconn);
vconn_run_wait(vconn);
while ((retval = vconn_send(vconn, msg)) == EAGAIN) {
vconn_run(vconn);
vconn_run_wait(vconn);
@@
-621,6
+627,9
@@
int
vconn_recv_block(struct vconn *vconn, struct ofpbuf **msgp)
{
int retval;
vconn_recv_block(struct vconn *vconn, struct ofpbuf **msgp)
{
int retval;
+
+ fatal_signal_run();
+
while ((retval = vconn_recv(vconn, msgp)) == EAGAIN) {
vconn_run(vconn);
vconn_run_wait(vconn);
while ((retval = vconn_recv(vconn, msgp)) == EAGAIN) {
vconn_run(vconn);
vconn_run_wait(vconn);
@@
-1349,6
+1358,7
@@
check_nicira_action(const union ofp_action *a, unsigned int len)
switch (ntohs(nah->subtype)) {
case NXAST_RESUBMIT:
switch (ntohs(nah->subtype)) {
case NXAST_RESUBMIT:
+ case NXAST_SET_TUNNEL:
return check_action_exact_len(a, len, 16);
default:
return ofp_mkerr(OFPET_BAD_ACTION, OFPBAC_BAD_VENDOR_TYPE);
return check_action_exact_len(a, len, 16);
default:
return ofp_mkerr(OFPET_BAD_ACTION, OFPBAC_BAD_VENDOR_TYPE);
@@
-1457,7
+1467,7
@@
normalize_match(struct ofp_match *m)
enum { OFPFW_TP = OFPFW_TP_SRC | OFPFW_TP_DST };
uint32_t wc;
enum { OFPFW_TP = OFPFW_TP_SRC | OFPFW_TP_DST };
uint32_t wc;
- wc = ntohl(m->wildcards) & O
FP
FW_ALL;
+ wc = ntohl(m->wildcards) & O
VS
FW_ALL;
if (wc & OFPFW_DL_TYPE) {
m->dl_type = 0;
if (wc & OFPFW_DL_TYPE) {
m->dl_type = 0;