qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Aurelien Jarno <aurelien@aurel32.net>
To: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
Cc: Anthony Liguori <aliguori@us.ibm.com>,
	qemu-devel@nongnu.org, Gerd Hoffmann <kraxel@redhat.com>
Subject: Re: [Qemu-devel] [PATCH] net: Remove unused net-checksum.c file
Date: Mon, 4 Apr 2011 00:18:06 +0200	[thread overview]
Message-ID: <20110403221805.GD13927@volta.aurel32.net> (raw)
In-Reply-To: <1301346030-10257-1-git-send-email-stefanha@linux.vnet.ibm.com>

On Mon, Mar 28, 2011 at 10:00:30PM +0100, Stefan Hajnoczi wrote:
> The common checksum functions were moved to net/checksum.c in commit
> 7200ac3c7c8eefe574193b49eeff09f120e11ec7 but the original net-checksum.c
> was never deleted from the source tree.  Remove it now since all users
> of the checksum functions link against net/checksum.o and net-checksum.c
> is not even compiled anymore.
> 
> Signed-off-by: Stefan Hajnoczi <stefanha@linux.vnet.ibm.com>
> ---
>  net-checksum.c |   86 --------------------------------------------------------
>  1 files changed, 0 insertions(+), 86 deletions(-)
>  delete mode 100644 net-checksum.c

Thanks, applied.

> diff --git a/net-checksum.c b/net-checksum.c
> deleted file mode 100644
> index 4956c5c..0000000
> --- a/net-checksum.c
> +++ /dev/null
> @@ -1,86 +0,0 @@
> -/*
> - *  IP checksumming functions.
> - *  (c) 2008 Gerd Hoffmann <kraxel@redhat.com>
> - *
> - *  This program is free software; you can redistribute it and/or modify
> - *  it under the terms of the GNU General Public License as published by
> - *  the Free Software Foundation; under version 2 of the License.
> - *
> - *  This program is distributed in the hope that it will be useful,
> - *  but WITHOUT ANY WARRANTY; without even the implied warranty of
> - *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
> - *  GNU General Public License for more details.
> - *
> - *  You should have received a copy of the GNU General Public License
> - *  along with this program; if not, see <http://www.gnu.org/licenses/>.
> - */
> -
> -#include "hw/hw.h"
> -#include "net.h"
> -
> -#define PROTO_TCP  6
> -#define PROTO_UDP 17
> -
> -uint32_t net_checksum_add(int len, uint8_t *buf)
> -{
> -    uint32_t sum = 0;
> -    int i;
> -
> -    for (i = 0; i < len; i++) {
> -	if (i & 1)
> -	    sum += (uint32_t)buf[i];
> -	else
> -	    sum += (uint32_t)buf[i] << 8;
> -    }
> -    return sum;
> -}
> -
> -uint16_t net_checksum_finish(uint32_t sum)
> -{
> -    while (sum>>16)
> -	sum = (sum & 0xFFFF)+(sum >> 16);
> -    return ~sum;
> -}
> -
> -uint16_t net_checksum_tcpudp(uint16_t length, uint16_t proto,
> -                             uint8_t *addrs, uint8_t *buf)
> -{
> -    uint32_t sum = 0;
> -
> -    sum += net_checksum_add(length, buf);         // payload
> -    sum += net_checksum_add(8, addrs);            // src + dst address
> -    sum += proto + length;                        // protocol & length
> -    return net_checksum_finish(sum);
> -}
> -
> -void net_checksum_calculate(uint8_t *data, int length)
> -{
> -    int hlen, plen, proto, csum_offset;
> -    uint16_t csum;
> -
> -    if ((data[14] & 0xf0) != 0x40)
> -	return; /* not IPv4 */
> -    hlen  = (data[14] & 0x0f) * 4;
> -    plen  = (data[16] << 8 | data[17]) - hlen;
> -    proto = data[23];
> -
> -    switch (proto) {
> -    case PROTO_TCP:
> -	csum_offset = 16;
> -	break;
> -    case PROTO_UDP:
> -	csum_offset = 6;
> -	break;
> -    default:
> -	return;
> -    }
> -
> -    if (plen < csum_offset+2)
> -	return;
> -
> -    data[14+hlen+csum_offset]   = 0;
> -    data[14+hlen+csum_offset+1] = 0;
> -    csum = net_checksum_tcpudp(plen, proto, data+14+12, data+14+hlen);
> -    data[14+hlen+csum_offset]   = csum >> 8;
> -    data[14+hlen+csum_offset+1] = csum & 0xff;
> -}
> -- 
> 1.7.4.1
> 
> 
> 

-- 
Aurelien Jarno                          GPG: 1024D/F1BCDB73
aurelien@aurel32.net                 http://www.aurel32.net

      reply	other threads:[~2011-04-03 22:18 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-28 21:00 [Qemu-devel] [PATCH] net: Remove unused net-checksum.c file Stefan Hajnoczi
2011-04-03 22:18 ` Aurelien Jarno [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110403221805.GD13927@volta.aurel32.net \
    --to=aurelien@aurel32.net \
    --cc=aliguori@us.ibm.com \
    --cc=kraxel@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=stefanha@linux.vnet.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).