From: Andreas Hansson Date: Mon, 10 Sep 2012 15:57:39 +0000 (-0400) Subject: Inet: Remove the SackRange and its use X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1f9c3bcb462f84b97b75f264553180523eaf6419;p=gem5.git Inet: Remove the SackRange and its use This patch aims to simplify the use of the Range class before introducing a more elaborate AddrRegion to replace the AddrRange. The SackRange is the only use of the range class besides address ranges, and the removal of this use makes for an easier modification of the range class. The functionlity that is removed with this patch is not used anywhere throughout the code base. --- diff --git a/src/base/inet.cc b/src/base/inet.cc index 7d7eb3f5a..d8d156478 100644 --- a/src/base/inet.cc +++ b/src/base/inet.cc @@ -254,29 +254,6 @@ TcpHdr::options(vector &vec) const return true; } -bool -TcpOpt::sack(vector &vec) const -{ - vec.clear(); - - const uint8_t *data = bytes() + sizeof(struct tcp_hdr); - int all = len() - offsetof(tcp_opt, opt_data.sack); - while (all > 0) { - const uint16_t *sack = (const uint16_t *)data; - int len = sizeof(uint16_t) * 2; - if (all < len) { - vec.clear(); - return false; - } - - vec.push_back(RangeIn(ntohs(sack[0]), ntohs(sack[1]))); - all -= len; - data += len; - } - - return false; -} - int hsplit(const EthPacketPtr &ptr) { diff --git a/src/base/inet.hh b/src/base/inet.hh index a957b8a71..4b7335591 100644 --- a/src/base/inet.hh +++ b/src/base/inet.hh @@ -380,8 +380,6 @@ class TcpPtr uint16_t cksum(const TcpPtr &ptr); -typedef Range SackRange; - struct TcpOpt : public tcp_opt { uint8_t type() const { return opt_type; } @@ -393,7 +391,6 @@ struct TcpOpt : public tcp_opt uint16_t mss() const { return ntohs(opt_data.mss); } uint8_t wscale() const { return opt_data.wscale; } - bool sack(std::vector &vec) const; uint32_t echo() const { return ntohl(opt_data.echo); } uint32_t tsval() const { return ntohl(opt_data.timestamp[0]); } uint32_t tsecr() const { return ntohl(opt_data.timestamp[1]); }