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 <stefa...@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 <kra...@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 aurel...@aurel32.net http://www.aurel32.net