Message ID | 40be28cc-8511-4623-73d7-f44f790a5145@virtuozzo.com |
---|---|
State | New |
Series | "Series without cover letter" |
Headers | show
Delivered-To: criupatchwork@gmail.com Received: from imap.gmail.com [108.177.119.109] by patchwork.criu.org with IMAP (fetchmail-6.4.8) for <root@localhost> (single-drop); Tue, 15 Dec 2020 07:43:38 +0100 (CET) Received: by 2002:aa6:c11a:0:b029:a4:55c9:6120 with SMTP id c26csp3523619lkp; Mon, 14 Dec 2020 22:43:33 -0800 (PST) X-Google-Smtp-Source: ABdhPJxbDzp/L8pL7BLoVXQ5hUM5z19TiEKXix2vnFG9e8eXUrcWftKuMus9YA6G3hjOuRlcMfdB X-Received: by 2002:a2e:2a46:: with SMTP id q67mr11447330ljq.331.1608014613310; Mon, 14 Dec 2020 22:43:33 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1608014613; cv=none; d=google.com; s=arc-20160816; b=Qj6wuvFWBZmO+zTZVVdKiUimL1HEvdqyA4cJaVkn28h/pNpX4cw1UnBSidJYFr2Z69 Cw92q+mYdr6q0xyffxFRxlCND+zjSP/nO5r0H2HnejEnIC0syT4bw/TDIdzULKz+ClOI IUpUZNOnSFQoUeJJ0Ne96fmKxBOYkIWVw/Xy6hRSwNskZb52njXjJRmmssozZ0Mhc4VE Q57QsTIUfTT9M1RIubt6ttvC7Xb6XN4xE31K9zk8+pcDA18Vn4qwPPLlD1kWyuI01olc +Dl0Gc2SiwvH1r8DzGrtcJEIr1bV/8qmUG8d0YUEPcDxjYQSKH8Bx4+MLdUDFj4cZr7m 8/qw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:sender:content-transfer-encoding:list-subscribe:list-help :list-post:list-archive:list-unsubscribe:list-id:precedence:subject :mime-version:content-language:user-agent:date:message-id:to:from; bh=t2v/VYA5kRjVaFmaltnU8ay30YflMK1OT8I7CzuxT5g=; b=qdf8/fvq60wzPis21XDp3QhcOhOFpjqSsW5mKzC+7RKRa+MWnCv/Js6wh1/cPhWn8J EGTHmPfMafr+eKW1JX8vLbg+Km5EZH37eoT3V5PELcxFbXfGd1w9IEpJtOF9dnnUozYt z4e069i1eT/yXUOLKlTjg/5dco+vteLKdbwY2TaYFhFRXHlGKWKQIsbO0uQBKay1Y0zw Db9Q4JeC0ryFuMiJQHSYKqGa16PdVPXg/rdMf+lZ/+9kp/75SALvo2S5Vc1c19wQq23i Sxj0M9XmnDoYM0KC8Bs7Rcvm59iJOtR0aUZwW1w8dWUzS3RBVTzGT1I/gD5Ez553mOIr srZw== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of devel-bounces@openvz.org designates 185.231.241.50 as permitted sender) smtp.mailfrom=devel-bounces@openvz.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Return-Path: <devel-bounces@openvz.org> Received: from mail.openvz.org (mail.openvz.org. [185.231.241.50]) by mx.google.com with ESMTPS id y127si281514lfa.101.2020.12.14.22.43.32 (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 14 Dec 2020 22:43:33 -0800 (PST) Received-SPF: pass (google.com: domain of devel-bounces@openvz.org designates 185.231.241.50 as permitted sender) client-ip=185.231.241.50; Authentication-Results: mx.google.com; spf=pass (google.com: domain of devel-bounces@openvz.org designates 185.231.241.50 as permitted sender) smtp.mailfrom=devel-bounces@openvz.org; dmarc=fail (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=virtuozzo.com Received: from localhost.localdomain (localhost [127.0.0.1]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 0BF6gx01026845; Tue, 15 Dec 2020 09:43:00 +0300 Received: from EUR03-DB5-obe.outbound.protection.outlook.com (mail-db5eur03lp2051.outbound.protection.outlook.com [104.47.10.51]) by mail.openvz.org (8.14.4/8.14.4) with ESMTP id 0BF6gvQH026842 for <devel@openvz.org>; Tue, 15 Dec 2020 09:42:57 +0300 Authentication-Results: virtuozzo.com; dkim=none (message not signed) header.d=none;virtuozzo.com; dmarc=none action=none header.from=virtuozzo.com; Received: from VI1PR0801MB1678.eurprd08.prod.outlook.com (2603:10a6:800:51::23) by VI1PR08MB3774.eurprd08.prod.outlook.com (2603:10a6:803:c5::32) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3654.15; Tue, 15 Dec 2020 06:42:59 +0000 Received: from VI1PR0801MB1678.eurprd08.prod.outlook.com ([fe80::b18d:c047:56c0:e0d3]) by VI1PR0801MB1678.eurprd08.prod.outlook.com ([fe80::b18d:c047:56c0:e0d3%9]) with mapi id 15.20.3654.024; Tue, 15 Dec 2020 06:42:59 +0000 From: Vasily Averin <vvs@virtuozzo.com> To: devel@openvz.org Message-ID: <40be28cc-8511-4623-73d7-f44f790a5145@virtuozzo.com> Date: Tue, 15 Dec 2020 09:42:57 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0 Content-Language: en-US X-Originating-IP: [185.231.240.5] X-ClientProxiedBy: AM3PR07CA0064.eurprd07.prod.outlook.com (2603:10a6:207:4::22) To VI1PR0801MB1678.eurprd08.prod.outlook.com (2603:10a6:800:51::23) MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 Received: from [172.16.24.21] (185.231.240.5) by AM3PR07CA0064.eurprd07.prod.outlook.com (2603:10a6:207:4::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.3676.12 via Frontend Transport; Tue, 15 Dec 2020 06:42:58 +0000 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: eebce6bd-9d0f-495d-3c89-08d8a0c4a9a5 X-MS-TrafficTypeDiagnostic: VI1PR08MB3774: X-MS-Exchange-Transport-Forked: True X-MS-Oob-TLC-OOBClassifiers: OLM:165; X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: sdjoSdwh/eEqh/DCfJr23yWq5giAigB4HJbnZenZCz6w3Ly/YF/C6pLT0V2mBIHngY1GrWaa9eWhUdfbDIVGf+B1ZKaObu/V09jnKg8L9LplWcq62nLcNcjzQsm9HIMCRmjTa6Ob+s/pJNA9WhowG4f3YIu9rRo9WvKS/Sq164Tk9nBlkl/iHqF2cP3x2oYl/sB44QjMgFcAiS1B9B5HbQG5tNO0AwM4/tYnzPrvDj5r97AjtV6OlRBlNz/Z6Nigg+EBBOk4Mh0jGrpMbU+pBM+yFrpJbeMP4L8FkkR987XddI5DDqGmpeqAd/DtOHUoCBWL6xmXMlf8kLN3h1DCg2bN6TxGtGmfFHpF2UgDb9Y= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:-1; SRV:; IPV:NLI; SFV:SKI; H:VI1PR0801MB1678.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:; DIR:INB; X-MS-Exchange-AntiSpam-MessageData: =?utf-8?B?bXZ3aENYOUYvQk55SFUyeWFQVTdoTm0xZzdvZEFLcUJmSlVxRzFaVlNnUzZG?= =?utf-8?B?eVZxampIb1ZnZUpCSG0wMzFSNkl1d1VrOTlqUXJrYW5LVlhQUU5DNmhFYmtJ?= =?utf-8?B?RGdFQmlnVXFPMzNMcGxCbmxTYkFxZnBqZVFmWjM4WEFZZTdHNjhlRER0cEhx?= =?utf-8?B?WitJazdPTTV4OEJDKzNuQS9zZ3ZYVzZtZGthcS9ZYWlqL1drVDRWSVRqUmxD?= =?utf-8?B?OWhVU2lDRlBLWjdpWWgwWnM4Y1IrajgwMzZpWTFRQS84RzNqaFhyT0ZrL3g2?= =?utf-8?B?WEJtMnE3WFhzMWE5L282NHB1MnNyM2haN25jQzIwRXJwR1NKbFRhQTljZmpm?= =?utf-8?B?dHNwWmZONTh3MnI0eFFGVExWZjI2WnJnbGNadFp4cHVRblo4Y2tXQ3FUNjZG?= =?utf-8?B?b1B4MytmVVdDL2VKMFZ0SHoycVEyeWVvZWNzZ1VzZU5DTDZqemY0TzdoN2pJ?= =?utf-8?B?SjJZb2JXZFNXdk1aNzZtNFYwbmg4cWRNZjlKcHdVNGpmbE5NR1VGTzBPeFlx?= =?utf-8?B?ZEJLaFJmMks0QUwrS2pBU0tBbGpCWTRKbkZ0QUFKRGhMSnN1cW5HdHQrd05L?= =?utf-8?B?UjhqaTRYSU5FbW83WmZTN09ydEJKb3d3SS9ZR0twckRRUFZTYms2dEFZNVNu?= =?utf-8?B?ZTVVUmUwODZiaFRnTTd2SFN2VUN5bUpoLzRNNlNnL3d5L29FL1dObUpaeDFN?= =?utf-8?B?T3UzTzMyLzVJRUYwWEJJRkszTFpwRXYwalNvRm9DUkZqZUtzQm95WDJxWmN5?= =?utf-8?B?OUFtZTh1NUdDN1RUM25laTkxZDZSeVhaNzFZQWw2b0JISllPNDlEM2VIbHNt?= =?utf-8?B?ODFlZXhBUXNwODVjb3JMUWduUWRESTlaUzJNb2lUek5mbVhuWnorUWt0b0N2?= =?utf-8?B?Y2tPOVVCTndaSWEvUjFIaXJCbXJUVFRqYStKY1A5bUxzazlGb0E0cG9uWnA4?= =?utf-8?B?VWx5WUY5a2FtLzJBa21FcDVSZmc5aGdYY0tmbk5GRktSbzlac1hsTDI2clhC?= =?utf-8?B?TitkdWFuUjFiVlpTVVpRMmFnVmhwbnVDZkVEQXVCQk5vaURKancwcTdHUHlR?= =?utf-8?B?VmI3cWdFQzlFbGpPMEl3cjJJa2Q0T0VhNnROeExpZDlrSjRaa3pOdVpzY2Zk?= =?utf-8?B?eDcvbWdSbC9XRDhSN0c2VjR0Zng5NW1VQW1KS0pJOG14OFhiVUN2dXhSS3Ry?= =?utf-8?B?L2hQSEtQYVZXYmZ6bG4rV0JNRzFZOHFIUGhDSkVEcXlDWG1aeERRUVRkdHNz?= =?utf-8?B?K0xidnUvRnpSSUVhcE4wUVIxK2pBcTUrUW5SbHlRK2tjYkU2eHBPVFJCU05Q?= =?utf-8?Q?PrEz9wMXRTAHnAD9plaEAUDYVolxIsfo5k?= X-OriginatorOrg: virtuozzo.com X-MS-Exchange-CrossTenant-AuthSource: VI1PR0801MB1678.eurprd08.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Dec 2020 06:42:59.1858 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 0bc7f26d-0264-416e-a6fc-8352af79c58f X-MS-Exchange-CrossTenant-Network-Message-Id: eebce6bd-9d0f-495d-3c89-08d8a0c4a9a5 X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: i0E9N6xSjB1pCCQ3ZnC735UHmabnRy+XkJJVK8CWC5cR+m2y9sfGk7OSETzOLW3UAJ8DETH5GiA+DoEtM4d+qg== X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR08MB3774 X-MS-Exchange-CrossPremises-AuthSource: VI1PR0801MB1678.eurprd08.prod.outlook.com X-MS-Exchange-CrossPremises-AuthAs: Internal X-MS-Exchange-CrossPremises-AuthMechanism: 06 X-MS-Exchange-CrossPremises-Mapi-Admin-Submission: X-MS-Exchange-CrossPremises-MessageSource: StoreDriver X-MS-Exchange-CrossPremises-BCC: X-MS-Exchange-CrossPremises-OriginalClientIPAddress: 185.231.240.5 X-MS-Exchange-CrossPremises-TransportTrafficType: Email X-MS-Exchange-CrossPremises-Antispam-ScanContext: DIR:Originating; SFV:SKI; SKIP:0; X-MS-Exchange-CrossPremises-SCL: -1 X-MS-Exchange-CrossPremises-Processed-By-Journaling: Journal Agent X-OrganizationHeadersPreserved: VI1PR08MB3774.eurprd08.prod.outlook.com Subject: [Devel] [PATCH RH7 3/4] ms/net: make skb_partial_csum_set() more robust against overflows X-BeenThere: devel@openvz.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: OpenVZ development <devel.openvz.org> List-Unsubscribe: <https://lists.openvz.org/mailman/options/devel>, <mailto:devel-request@openvz.org?subject=unsubscribe> List-Archive: <http://lists.openvz.org/pipermail/devel/> List-Post: <mailto:devel@openvz.org> List-Help: <mailto:devel-request@openvz.org?subject=help> List-Subscribe: <https://lists.openvz.org/mailman/listinfo/devel>, <mailto:devel-request@openvz.org?subject=subscribe> Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: devel-bounces@openvz.org Errors-To: devel-bounces@openvz.org |
diff --git a/net/core/skbuff.c b/net/core/skbuff.c index fa5ba0d..eef4100 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c @@ -3961,14 +3961,16 @@ EXPORT_SYMBOL_GPL(skb_complete_wifi_ack); */ bool skb_partial_csum_set(struct sk_buff *skb, u16 start, u16 off) { - if (unlikely(start > skb_headlen(skb)) || - unlikely((int)start + off > skb_headlen(skb) - 2)) { - net_warn_ratelimited("bad partial csum: csum=%u/%u len=%u\n", - start, off, skb_headlen(skb)); + u32 csum_end = (u32)start + (u32)off + sizeof(__sum16); + u32 csum_start = skb_headroom(skb) + (u32)start; + + if (unlikely(csum_start > U16_MAX || csum_end > skb_headlen(skb))) { + net_warn_ratelimited("bad partial csum: csum=%u/%u headroom=%u headlen=%u\n", + start, off, skb_headroom(skb), skb_headlen(skb)); return false; } skb->ip_summed = CHECKSUM_PARTIAL; - skb->csum_start = skb_headroom(skb) + start; + skb->csum_start = csum_start; skb->csum_offset = off; skb_set_transport_header(skb, start); return true;