Newsgroups: php.internals Path: news.php.net Xref: news.php.net php.internals:121195 Return-Path: Delivered-To: mailing list internals@lists.php.net Received: (qmail 1577 invoked from network); 30 Sep 2023 15:18:57 -0000 Received: from unknown (HELO php-smtp4.php.net) (45.112.84.5) by pb1.pair.com with SMTP; 30 Sep 2023 15:18:57 -0000 Received: from php-smtp4.php.net (localhost [127.0.0.1]) by php-smtp4.php.net (Postfix) with ESMTP id 137DA180082 for ; Sat, 30 Sep 2023 08:18:57 -0700 (PDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on php-smtp4.php.net X-Spam-Level: X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.2 X-Spam-ASN: AS15169 209.85.128.0/17 X-Spam-Virus: No X-Envelope-From: Received: from mail-wr1-f45.google.com (mail-wr1-f45.google.com [209.85.221.45]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange ECDHE (P-256) server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by php-smtp4.php.net (Postfix) with ESMTPS for ; Sat, 30 Sep 2023 08:18:56 -0700 (PDT) Received: by mail-wr1-f45.google.com with SMTP id ffacd0b85a97d-3248e90f032so2496421f8f.1 for ; Sat, 30 Sep 2023 08:18:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1696087135; x=1696691935; darn=lists.php.net; h=content-transfer-encoding:to:subject:from:content-language :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=N8UVIHjicnwsMiufF5eh6hXyClx6b1yvf8xr44kLdak=; b=aMlQnvJtZOQgOqgE4oBisLF5ZY6nfG3sHQ2wuagxjGAzXmFI4mShGjlW5pc7XKVIfo gz+wzKQ4JlvcQgmwfErELd61wIwwU8p60l7oZF/IGQ2MzkRPKvMiISCijQ4xNZKz4JCH JxQk8DYl7WsRhvCDHy21IHYGKHGV655Xg9B6Kwg9IQ6Cu7q2u/J8pgqk7H4C2LyON6sK UZvOD5lWo/v+bo/e87z2TX9N58IvWlI1bnby0J3ivp4zD4fQJxtNnv7OS/5h8UcjnN7T bRUGmPtbTT0tXf34cPr6QAhAq5kzQYLee8my58Futj35NspvN8YZbrR/0XLZfz2hn6NI t1oA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1696087135; x=1696691935; h=content-transfer-encoding:to:subject:from:content-language :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=N8UVIHjicnwsMiufF5eh6hXyClx6b1yvf8xr44kLdak=; b=HhZqJiHPJ+26/OcXG7+3IMIEdKngvs2f/u70/AHTDULklo9kTiITlckyY2Ntfujdw+ o8obKG3MPz9uHJEu7lW7b52GH6MvnskeWLs3ScO9R6oXjZ/8UGFAoODlU0hluURQ0+V5 VkkNz5UFiTkuP+zvBKXGooMI7nkedSxzeHrJi6ecBv7CzPw3GgW+v3olwyT9GkvBX2gn 22iFZ6ULj4v3RVY9+V1r0WXGb3kdYer0DQDId4QZZsWh4VO47yf8jkssciEONO0AGxm9 4nrrnvGJYXALSTr2cPEjGCe5A5wfauHwoyPBCzLx+Pjf2dJRic/UTl2spczZvDOlpjtN fp6w== X-Gm-Message-State: AOJu0Yy83TJ9cqH9riXizDskzTcCyPwF+cz/QYCWe01z7X4/rzVdWwfc RPdkKwaiYZkg5w7QTeJMjQpMu8iC1/Q= X-Google-Smtp-Source: AGHT+IGcBkf7X2uIXo7R56MITPZNVaG84ec2Awk1CvK6GglhrZW73Vn+Ot10VhIXk9f+Bh91Wev9sg== X-Received: by 2002:a5d:56d0:0:b0:320:6f4:a200 with SMTP id m16-20020a5d56d0000000b0032006f4a200mr6374970wrw.10.1696087134921; Sat, 30 Sep 2023 08:18:54 -0700 (PDT) Received: from [192.168.0.59] (178-117-137-225.access.telenet.be. [178.117.137.225]) by smtp.gmail.com with ESMTPSA id v2-20020adff682000000b0030647449730sm23911226wrp.74.2023.09.30.08.18.54 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Sat, 30 Sep 2023 08:18:54 -0700 (PDT) Message-ID: Date: Sat, 30 Sep 2023 17:18:53 +0200 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Content-Language: en-US To: PHP Internals Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Subject: XSLTProcessor max depth From: dossche.niels@gmail.com (Niels Dossche) Hi internals I'm looking to address https://bugs.php.net/bug.php?id=71571. TL;DR: XSL has a maximum recursion depth, and it may even depend on the distro/OS config. For complex inputs you may reach this limit, but PHP offers no way to change that limit. As we already have methods in XSLTProcessor to configure certain things (e.g. setProfiling, setSecurityPrefs), it may be an idea to add `setMaxDepth(int $depth)` or something alike. Unfortunately, XSLTProcessor is non-final, so if a user class extends this class and coincidentally already has a method with the same name but incompatible signature, then they would get a compile error. What do you think? Kind regards Niels