[Pce] Re: draft-ietf-pce-multipath-25 ietf last call Secdir review

"Andrew Stone (Nokia)" <andrew.stone@nokia.com> Wed, 03 June 2026 15:32 UTC

Return-Path: <andrew.stone@nokia.com>
X-Original-To: pce@mail2.ietf.org
Delivered-To: pce@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 5BBD3FA20BA0; Wed, 3 Jun 2026 08:32:47 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1780500767; bh=GRYPKLAK7ROjv4fZLJLOfQvlmeUqmjEmQnmA6T9KZzQ=; h=From:To:CC:Subject:Date:References:In-Reply-To; b=uGlxnkJQcy4JSmjZmAKzcsEhL7C1KICu13MlpqFmvNo7/KcBcg9L8TyvMUwVr1avZ iiORLTwLCgyuij8FVkGEvW4a7f+8XljZw39+NJY3+elPq5Xo1O9rcuM3r77Gf8ZDFT pxjsfm7kCQnb8ziohjf8XsyKjN8IDvtjOQRJRkh0=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: 2.904
X-Spam-Level: **
X-Spam-Status: No, score=2.904 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, GB_SUMOF=5, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_NONE=0.001] autolearn=no autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=nokia.com
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id jbZM8BJFpGnu; Wed, 3 Jun 2026 08:32:46 -0700 (PDT)
Received: from SN4PR2101CU001.outbound.protection.outlook.com (mail-southcentralusazon11012000.outbound.protection.outlook.com [40.93.195.0]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-384) server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 73314FA20A2B; Wed, 3 Jun 2026 08:32:02 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=pqzqtr3c72e4MNHWxwqVdZCnNlNM+N9vRjsTn7bJWU0abc9NN0cgKsaL/CUyTzOzOKDXqGYdRnbg4Xm4pgw0fkXrJzShZVEPaZ0gyCMbBlUsmkHSYwMiCbtI3Mhg+NEx8v1/X/yNpA+1F5ZayrD9DeCGdEOK/EMADodc+mOvqNIMJt+LbfRwP2YW3+o3pLus99tIc2P1fYC+Cr6Rycy4BM9XSAmzilWbbacIC+kIBxDX0Q6nDca6BL7jl4dLI/Lfx/zb79qHl2w2P2tJvpgI8Dj4qVag1pvaECnH6vPoCbgbIoqWh2YRTQchHDuWtFvZOgZEZOBFonydIUsGMqnr8Q==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=GRYPKLAK7ROjv4fZLJLOfQvlmeUqmjEmQnmA6T9KZzQ=; b=i9W1VwZsTPNTAGnMyrqP+X4d/lB3GZrGu0DZIU1mQGpEa63tbvdUwx0GGsWJPYRMYQtwgri6tzxTwn21FUwpGfPbhW/SqRDn1KQe6U2xH67vMArih7LDCJJfpix8Iub2k9/Ny1Ipz0F0x4wdKmsKAzXgUYzOQCzU+oeoO/zcFI2fqkKf3pOpH/MLnUXfzImxPxqP7wTaROCH8fXiTQ06P+g9twFXWSyw10aVrqtMgpMo7AIKtUCiEtegyZ0lF891LNDZ/dY8/ePsVMqzAlHOENVwkgVku4+qSk7jkyt9Ju+f59ENsd/8IQ9+E+vU/TkO5Q+iYtBY2DS/jznyHF6e4A==
ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nokia.com; dmarc=pass action=none header.from=nokia.com; dkim=pass header.d=nokia.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nokia.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=GRYPKLAK7ROjv4fZLJLOfQvlmeUqmjEmQnmA6T9KZzQ=; b=TDvsVfqlDHUMJQUlIhBJ5zGTn4YJJu9nN893BgZBbmxemkcZgWRSCO3h68S+mhDhm51YlfF3ip7yIXO8+c6RyBSZ6OWg38QrnIWlxOplTCyZySfToEHPUtAFOFxZDWigwRz+cPE9FV7nnghdGRuQu1CARbZveKHRJBe6r//pQojAYcgDiyuVAKC5IPAIBRPmHSIpgN0WWse5rV0tXNxsnZ2FqHN3Wp7ycATq5r/Dh67kGpAOlTN6jvJM6eKxqiDMWk5rb4xRKz7qwTk7TQGeb3P2B6JV4VE+cN+Qhnkk9CzPsq8VNv/RdcPpDLcR8R5lt0FgYlJ5T+tFLHYvkxHeqQ==
Received: from CH0PR08MB7353.namprd08.prod.outlook.com (2603:10b6:610:102::22) by LV8PR08MB8853.namprd08.prod.outlook.com (2603:10b6:408:188::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.21.92.7; Wed, 3 Jun 2026 15:31:53 +0000
Received: from CH0PR08MB7353.namprd08.prod.outlook.com ([fe80::1c9c:abf2:b11d:a495]) by CH0PR08MB7353.namprd08.prod.outlook.com ([fe80::1c9c:abf2:b11d:a495%4]) with mapi id 15.21.0092.006; Wed, 3 Jun 2026 15:31:53 +0000
From: "Andrew Stone (Nokia)" <andrew.stone@nokia.com>
To: "Samuel Sidor (ssidor)" <ssidor@cisco.com>, David Mandelberg <david@mandelberg.org>, "secdir@ietf.org" <secdir@ietf.org>
Thread-Topic: draft-ietf-pce-multipath-25 ietf last call Secdir review
Thread-Index: AQHc7hJykswCCP0xEUygmT8IG1/eR7YreuqrgAAEIBCAASjsAIAAWAfz
Date: Wed, 03 Jun 2026 15:31:53 +0000
Message-ID: <CH0PR08MB73538355803367A80BC29BA491132@CH0PR08MB7353.namprd08.prod.outlook.com>
References: <177991158535.1173153.17796402122309290957@dt-datatracker-5b4c8598b5-4ztf9> <BL3PR08MB734790C5CC4982FB80E8C8B691122@BL3PR08MB7347.namprd08.prod.outlook.com> <BL3PR08MB73472121E355DCACE2D15AD091122@BL3PR08MB7347.namprd08.prod.outlook.com> <IA0PR11MB7792788EB0B224703EC86006D0132@IA0PR11MB7792.namprd11.prod.outlook.com>
In-Reply-To: <IA0PR11MB7792788EB0B224703EC86006D0132@IA0PR11MB7792.namprd11.prod.outlook.com>
Accept-Language: en-US
Content-Language: en-CA
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-reactions: allow
authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=nokia.com;
x-ms-publictraffictype: Email
x-ms-traffictypediagnostic: CH0PR08MB7353:EE_|LV8PR08MB8853:EE_
x-ms-office365-filtering-correlation-id: b47f9dd9-a47e-491d-5902-08dec1853cff
x-ms-exchange-senderadcheck: 1
x-ms-exchange-antispam-relay: 0
x-microsoft-antispam: BCL:0;ARA:13230040|376014|1800799024|366016|22082099003|18002099003|13003099007|8096899003|3023799007|6133799003|11063799006|56012099006|4143699003|38070700021;
x-microsoft-antispam-message-info: omAHjULAjJ7R8qnSWlz+ngBkRSTEjvK+Olp6tlchRdvrF4YNQxbfU9hxetvniFt7Ap5Cb2zktFmLN6WsbFgaPcqjJ5yarN2ix/XJbShr0w80+9KoYZvH9cJo56wh9HzajoS1FLKqo1ZakdM9nK2SEa4icxHP9a7ruH8e2CSxcs4xD/+Cf08YQnT/ALHJSGS+94zBpTutQNaF9Bnwbk/R3jtlGrPjPT2n/VaQUaxyl8ZgQsHEYfsqkc1Wbac3SD86OfJsBIv+M3t5nu7ZAZ/4NY50tWWkUTFXf31ahj/nGuhyYjtztW2aZ7MWwdID+aDyQ4CfJvwTTGxl+aUflvoP+YncDmX107xDIFQd4aMhelGLEFkBXHIduIXvBt87fNHKPpWM9a12IoNqepZVGFl08P4fW3IHhRI2D+OdsZy7IBJ2/3d87qTNnnDZiops3qdnwWXZjnUi8/xuVc0UdvRKXrJWODMjlwuz8dJbCwEvP4WZRvQK84otIVeKrcpcBL2wmRwhpFbuO254tqF4lFoFuTl0vNSXXkRitydIXeIKl6GnuQILHCexHsLOntwvI+HiuPPrKD2gtQRLpZnvcvgdJI/A4GQPqj89tQDntsd1IIzAa4t6RcwKja6YjfnbLbYAIUqd8mp45vcnXIVWej16LU4XJLET7IheNEfPS6nc44UyvZLGw1Gbe1uJXGgm8oEZx5+f5uJogcviwuxqL6pafQ==
x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:CH0PR08MB7353.namprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(376014)(1800799024)(366016)(22082099003)(18002099003)(13003099007)(8096899003)(3023799007)(6133799003)(11063799006)(56012099006)(4143699003)(38070700021);DIR:OUT;SFP:1101;
x-ms-exchange-antispam-messagedata-chunkcount: 1
x-ms-exchange-antispam-messagedata-0: o43KgAGgHay79Fvt6Aq5lgrCIHM/Jv4QOjHiwAIZcVCxie5cYAfIVn8NMGRRuqsZoMKuGTX4F3tK3XI+5Boc8kbLE5cjZpiJJuAHU0EdhhLtc4Zp0lQq6RP4yHckB7qvlYcUa6WqfWw+NaxogYKUs19S53wpe9ZZ/hRLk+nBuGhHDX8PWAOmZXAFrHkkbuP2pkOJpATAk/sdtMJ7WyiSEpuDb20g0KtvUOX88FHUqdXBzcrLLdrPKPZptFnl99xqnkOA8Otrdc7hq2ezwO5TnrvORyEk4F2uO1GjKmWy2hSZ1K77fzl4S9cOhRDRhM7nKrK12Mr+qK5NbdPewhQS/JsJHCas3khrH/fpq2g+U8T5PCIDMN5+d3LSzGZCxnO4TFkDzIi4Y2nu2znvRCZkiILnRSr2AT4R2/QBUcwosvl02t1GUeZ4VO5vEleceaAFG4wU8vs0XRlUM0uiEH1XTCAEYszZ6l/6lobG09RJ0CCNe3eASNKZ9wjjS0BLHNIoOWfb9wdUGsutneOesVNOqwZBXuLjbLD6PDklSti27r1IZN4+WiDNiWbg7MPghSg6XhCXGjKiywI/q/1Bjm2bzH1pcprbYAo/54QswlWqIqD3WoLcdvajtn8F/4Q8a8uhhHcjvy9eFKHga73yiIsXkFBFobZNy9+k0zS8Gfi8RJUWEQQVcsiaX+0G5X0xWvXXEz6q3iwzKD4zZUnYkrJQi7v5imn5wjzfnoKrLVs7LDLfjQWd8q6+hy9vsU7Y7LZLYpbDTf3eHA5f7El3eB9bX9QSyQb0D8fOGBXxdm2MIl9HjxVLRCSxiGvLfSGFbNtfYwAFcepV5wlaE7CeHHQ0jq4PzxSgFhwOFLJHEWWdBFSb0OJAbNsJvonJkBPu4O7TG1lWf9kHOGMtQVK5JkLgN59MQzoxCwr7zZdlKlY5082lWB5tiWvC/EKfLa4sYJP8TOFjomcrrd+omjF1DW5WuGwLltJeN2gSITEywx+HgTgma4TcwWFrjzu0fAoTxjYyy87kviR+qCfNUWJfajx9h/reUMZXjXCltQBMrSCXvDxfiXACeO3mCNgZumEr+6Gocqe2LjEmKXdl81ZEBNdmr+E0IxWmbJVK2ncuEs+twzia7Bi9PufdnZUc+OkcvnUJhnkoKx2kiGp/ecKvZjPnC5DgyT63zl8/YFTK2aYzb+OQvsIiJe6PLlr2YjukX1I8b4yzsYYGfHQHAhs3B6WGtKnGGsN5xlucJ5qBpqw3vR9HLMnOrHkdKlmd92fyMEXg+yaEU2ojg9A8rl9bZvSapJUxDvswWSFDoEAmLRMhrsV7iVJOu/Xt/FGBzRW97A2Oa+J/5B4VGcRwnBlbmdcaPXtweWbi4FVj8lYzfqV8DC6avFvIbrkSCeNpcsHSvWT9U/zm9i5Y+FIv1yxQCKNMgy142/AvuhMDOJgZC6nkr7JoBWXn2lWFOvgqCxtb7N+x20TkJud2SrVBH2/CWpWBh9TupRc7qOl+5IZ44ZXYMDXYEALPCob7GfRV+EerA8MaqbMtNFrH74X0UlmGcHTy7k/8/SNBYGf7E+gX7lWKqMcn4ponnVwi4ZClIKIhT04ce/rhPNAv3Qp3/iwxw1nsNshqkPwHBr6UljGfIvnAnykL99txM5GUQigK/bUhs/SYNGGsH6HsZ+dsyRzYfKBhALoPGJ7iggqt0SCNfXjC25Df0KOHNoE+TEyWJcwEpMJ5YlZ577iOkbAL56PdgEED5rb0hi4HZp6P6UvWHZX1j+0=
Content-Type: multipart/alternative; boundary="_000_CH0PR08MB73538355803367A80BC29BA491132CH0PR08MB7353namp_"
MIME-Version: 1.0
X-OriginatorOrg: nokia.com
X-MS-Exchange-CrossTenant-AuthAs: Internal
X-MS-Exchange-CrossTenant-AuthSource: CH0PR08MB7353.namprd08.prod.outlook.com
X-MS-Exchange-CrossTenant-Network-Message-Id: b47f9dd9-a47e-491d-5902-08dec1853cff
X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Jun 2026 15:31:53.0881 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 5d471751-9675-428d-917b-70f44f9630b0
X-MS-Exchange-CrossTenant-mailboxtype: HOSTED
X-MS-Exchange-CrossTenant-userprincipalname: /1RKJb3YE0Lyy/L96zOEy1u2MuLd6FLywVAUPojKqUzex+V+MOcWaTXIrl9CWCeuZFlUJU4PeZy+9iHT0oVVew==
X-MS-Exchange-Transport-CrossTenantHeadersStamped: LV8PR08MB8853
Message-ID-Hash: EKCXFOBWB2UF477AXUODBBQ355KAJZTC
X-Message-ID-Hash: EKCXFOBWB2UF477AXUODBBQ355KAJZTC
X-MailFrom: andrew.stone@nokia.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-pce.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: "draft-ietf-pce-multipath.all@ietf.org" <draft-ietf-pce-multipath.all@ietf.org>, "last-call@ietf.org" <last-call@ietf.org>, "pce@ietf.org" <pce@ietf.org>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Pce] Re: draft-ietf-pce-multipath-25 ietf last call Secdir review
List-Id: Path Computation Element <pce.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/pce/jfws5kHB6TnDBC81F9YTrXufRrI>
List-Archive: <https://mailarchive.ietf.org/arch/browse/pce>
List-Help: <mailto:pce-request@ietf.org?subject=help>
List-Owner: <mailto:pce-owner@ietf.org>
List-Post: <mailto:pce@ietf.org>
List-Subscribe: <mailto:pce-join@ietf.org>
List-Unsubscribe: <mailto:pce-leave@ietf.org>

Hi Samuel,

Proposed text looks good to me - thanks!

Andrew

From: Samuel Sidor (ssidor) <ssidor@cisco.com>
Date: Wednesday, June 3, 2026 at 6:16 AM
To: Andrew Stone (Nokia) <andrew.stone@nokia.com>; David Mandelberg <david@mandelberg.org>; secdir@ietf.org <secdir@ietf.org>
Cc: draft-ietf-pce-multipath.all@ietf.org <draft-ietf-pce-multipath.all@ietf.org>; last-call@ietf.org <last-call@ietf.org>; pce@ietf.org <pce@ietf.org>
Subject: Re: draft-ietf-pce-multipath-25 ietf last call Secdir review


CAUTION: This is an external email. Please be very careful when clicking links or opening attachments. See the URL nok.it/ext for additional information.



Thanks David for comments and Andrew for responding.

I agree with Andrew that this is already covered by RFC9256, but I can potentially add some informative statement to indicate that segment-list with weight 0 is considered invalid, e.g.

If the Weight value is 0, the corresponding Segment List is declared invalid per Section 5.1 of {{!RFC9256}} and carries no traffic. If all paths within an LSP have Weight 0, the sum of weights is zero, making the candidate path invalid per Section 2.11 of {{!RFC9256}}. Signaling a zero-weight path alongside paths with non-zero weights can be used to drain traffic from a path while retaining its forwarding instructions.

Andrew - I assume that would still be compatible with draft-stone-spring-mpte-sr (last statement is specifically trying to cover that).

Thanks,
Samuel

From: Andrew Stone (Nokia) <andrew.stone@nokia.com>
Date: Tuesday, 2 June 2026 at 18:45
To: David Mandelberg <david@mandelberg.org>; secdir@ietf.org <secdir@ietf.org>
Cc: draft-ietf-pce-multipath.all@ietf.org <draft-ietf-pce-multipath.all@ietf.org>; last-call@ietf.org <last-call@ietf.org>; pce@ietf.org <pce@ietf.org>
Subject: Re: draft-ietf-pce-multipath-25 ietf last call Secdir review

Apologies, [3] should have been a link not to GitHub but the posted draft. Didn’t notice it in the browser history auto complete 😊

[3] https://datatracker.ietf.org/doc/html/draft-stone-spring-mpte-sr-01#name-load-balancing

From: Andrew Stone (Nokia) <andrew.stone@nokia.com>
Date: Tuesday, June 2, 2026 at 12:32 PM
To: David Mandelberg <david@mandelberg.org>; secdir@ietf.org <secdir@ietf.org>
Cc: draft-ietf-pce-multipath.all@ietf.org <draft-ietf-pce-multipath.all@ietf.org>; last-call@ietf.org <last-call@ietf.org>; pce@ietf.org <pce@ietf.org>
Subject: Re: draft-ietf-pce-multipath-25 ietf last call Secdir review

Hi David, authors,

As a non-author, wg participant:

 The weight TLV is geared towards SR Policy, and since this draft has scoped towards SR Policy and not necessarily PCEP generic, I don’t think weight zero should or needs to be blocked as it’s not prohibited by RFC9256 and indirectly indicates it can be set [1].  Certainly, worth a remark on it though that divide by zero is a risk.

RFC 9256 formula for weight does not prohibit a zero value but if all/only weights are zero [2] then that divide by zero risk is there. In addition, section 5.1 [1] indicates an example of the SID List going invalid if it has a weight of zero. In other words, you can configure it / signal it, but the SID list goes invalid and should not forward (no different than if the label is an incorrect value). The top- level candidate path is only invalid once it has no valid segment list(s).

The reason I’m mentioning this as there could be some value in signalling a zero-weight SID list, to keep the forwarding instructions encoded but drain the traffic from that path. I have some remarks on it in [3]

Thanks
Andrew


[1] https://datatracker.ietf.org/doc/html/rfc9256#name-explicit-candidate-path

A segment list of an explicit candidate path MUST be declared invalid when any of the following is true:

  *   It is empty.
  *   Its weight is 0.
  *   It comprises a mix of SR-MPLS and SRv6 segment types.
  *   The headend is unable to perform path resolution for the first SID into one or more outgoing interface(s) and next-hop(s).
  *   The headend is unable to perform SID resolution for any non-first SID of type C through K into an MPLS label or an SRv6 SID.
  *   The headend verification fails for any SID for which verification has been explicitly requested.


[2] https://datatracker.ietf.org/doc/html/rfc9256#name-instantiation-of-an-sr-poli  The fraction of the flows associated with a given segment list is w/⁠Sw, where w is the weight of the segment list and Sw is the sum of the weights of the segment lists of the selected path of the SR Policy.


[3] https://astone282.github.io/draft-stone-spring-mpte-sr/draft-stone-spring-mpte-sr.html#name-load-balancing )

From: David Mandelberg via Datatracker <noreply@ietf.org>
Date: Wednesday, May 27, 2026 at 3:53 PM
To: secdir@ietf.org <secdir@ietf.org>
Cc: draft-ietf-pce-multipath.all@ietf.org <draft-ietf-pce-multipath.all@ietf.org>; last-call@ietf.org <last-call@ietf.org>; pce@ietf.org <pce@ietf.org>
Subject: draft-ietf-pce-multipath-25 ietf last call Secdir review


CAUTION: This is an external email. Please be very careful when clicking links or opening attachments. See the URL nok.it/ext for additional information.



Document: draft-ietf-pce-multipath
Title: Path Computation Element Communication Protocol (PCEP) Extensions for
Signaling Multipath Information Reviewer: David Mandelberg Review result: Has
Nits

(nit) Could zero weights in the MULTIPATH-WEIGHT TLV trigger a denial of
service from dividing by zero? Would it make sense to require Weight to be
non-zero?

(nit) Section 3.4 says "If no opposite-direction path exists, then this field
MUST be set to 0, a value reserved to indicate the absence of a Path ID." What
should an implementation do if it receives a PATH-ATTRIB with multiple
MULTIPATH-OPPDIR-PATH TLVs, some of which have zero Opposite Direction Path ID
and some have non-zero Opposite Direction Path ID? If one implementation treats
that as no opposite path (ignoring the non-zeroes) and another implementation
ignores the zeroes, could that be a security issue?

Otherwise, looks good.