Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933632Ab0BYUeU (ORCPT ); Thu, 25 Feb 2010 15:34:20 -0500 Received: from mail-gw0-f46.google.com ([74.125.83.46]:38214 "EHLO mail-gw0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932934Ab0BYUeS (ORCPT ); Thu, 25 Feb 2010 15:34:18 -0500 DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type; b=WNJKrOsYZumMd4+ZgHtKYCKV2AgDHVsjUEdIZCH1JTkp+n21ZPmp+PQ8yRP69fljC/ +V69YVemdftJzobhcqTrxHhIK4U9nUsYiCET0d01EESYBidfBJpSJIjVUce0W5EexqwB Aor7KeqvR+IR+2zHWNdxBLaukBrwy10GH7ia8= Message-ID: <4B86DEC6.1090307@gmail.com> Date: Thu, 25 Feb 2010 15:34:14 -0500 From: William Allen Simpson User-Agent: Thunderbird 2.0.0.23 (Macintosh/20090812) MIME-Version: 1.0 To: Linus Torvalds , Andrew Morton CC: Linux Kernel Developers , Linux Kernel Network Developers , David Miller Subject: Re: [PATCH 0/7] tcp: bugs and cleanup for 2.6.33 References: <4B86DDCB.50608@gmail.com> In-Reply-To: <4B86DDCB.50608@gmail.com> Content-Type: multipart/mixed; boundary="------------040003010600050603030607" Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1780 Lines: 56 This is a multi-part message in MIME format. --------------040003010600050603030607 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Redefine two TCP header functions to accept TCP header pointer. When subtracting, return signed int to allow error checking. These functions will be used in subsequent patches that implement additional features. Signed-off-by: William.Allen.Simpson@gmail.com --- include/linux/tcp.h | 12 ++++++++++++ 1 files changed, 12 insertions(+), 0 deletions(-) --------------040003010600050603030607 Content-Type: text/plain; x-mac-type="54455854"; x-mac-creator="0"; name="len_th+2a3+2.6.33.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="len_th+2a3+2.6.33.patch" diff --git a/include/linux/tcp.h b/include/linux/tcp.h index 7fee8a4..d0133cf 100644 --- a/include/linux/tcp.h +++ b/include/linux/tcp.h @@ -223,6 +223,18 @@ static inline unsigned int tcp_optlen(const struct sk_buff *skb) return (tcp_hdr(skb)->doff - 5) * 4; } +/* Length of fixed header plus standard options. */ +static inline unsigned int tcp_header_len_th(const struct tcphdr *th) +{ + return th->doff * 4; +} + +/* Length of standard options only. This could be negative. */ +static inline int tcp_option_len_th(const struct tcphdr *th) +{ + return (int)(th->doff * 4) - sizeof(*th); +} + /* This defines a selective acknowledgement block. */ struct tcp_sack_block_wire { __be32 start_seq; -- 1.6.3.3 --------------040003010600050603030607-- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/