From 2e313fbdea2e77025ea3b8364ed38b8374b52cfe Mon Sep 17 00:00:00 2001 From: Justin Pettit Date: Fri, 2 May 2008 17:43:16 -0700 Subject: [PATCH] Send the features request before the set config to be OpenFlow-compliant. --- controller/controller.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/controller/controller.c b/controller/controller.c index b345b676..8b69686b 100644 --- a/controller/controller.c +++ b/controller/controller.c @@ -288,6 +288,15 @@ send_features_request(struct switch_ *this) struct ofp_header *ofr; struct ofp_switch_config *osc; + /* Send OFPT_FEATURES_REQUEST. */ + b = buffer_new(0); + ofr = buffer_put_uninit(b, sizeof *ofr); + memset(ofr, 0, sizeof *ofr); + ofr->type = OFPT_FEATURES_REQUEST; + ofr->version = OFP_VERSION; + ofr->length = htons(sizeof *ofr); + queue_tx(this, b); + /* Send OFPT_SET_CONFIG. */ b = buffer_new(0); osc = buffer_put_uninit(b, sizeof *osc); @@ -299,15 +308,6 @@ send_features_request(struct switch_ *this) osc->miss_send_len = htons(OFP_DEFAULT_MISS_SEND_LEN); queue_tx(this, b); - /* Send OFPT_FEATURES_REQUEST. */ - b = buffer_new(0); - ofr = buffer_put_uninit(b, sizeof *ofr); - memset(ofr, 0, sizeof *ofr); - ofr->type = OFPT_FEATURES_REQUEST; - ofr->version = OFP_VERSION; - ofr->length = htons(sizeof *ofr); - queue_tx(this, b); - this->last_features_request = now; } } -- 2.30.2