• Bug#1105219: marked as done (unblock: php-league-commonmark/2.7.0-1) (5

    From Debian Bug Tracking System@21:1/5 to All on Wed May 14 18:10:02 2025
    [continued from previous message]

    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1567 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Block/BlockContinue.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1856 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Block/BlockContinueParserInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 617 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Block/BlockContinueParserWithInlinesInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 2721 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Block/BlockStart.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1073 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Block/BlockStartParserInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 2357 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Block/DocumentBlockParser.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 2236 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Block/ParagraphParser.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1678 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Block/SkipLinesStartingWithLettersParser.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 14314 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Cursor.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1128 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/CursorState.php
    │ │ │ +drwxr-xr-x 0 root (0) root (0) 0 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Inline/
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 534 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Inline/InlineParserInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 2234 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Inline/InlineParserMatch.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1580 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/Inline/NewlineParser.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 2932 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/InlineParserContext.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 6733 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/InlineParserEngine.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 643 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/InlineParserEngineInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 12681 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/MarkdownParser.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 547 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/MarkdownParserInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1632 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/MarkdownParserState.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1076 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/MarkdownParserStateInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 449 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Parser/ParserLogicException.php
    │ │ │ +drwxr-xr-x 0 root (0) root (0) 0 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Reference/
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1633 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Reference/MemoryLimitedReferenceMap.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1158 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Reference/Reference.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 623 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Reference/ReferenceInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 2022 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Reference/ReferenceMap.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 787 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Reference/ReferenceMapInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 9238 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Reference/ReferenceParser.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 405 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Reference/ReferenceableInterface.php
    │ │ │ +drwxr-xr-x 0 root (0) root (0) 0 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/
    │ │ │ +drwxr-xr-x 0 root (0) root (0) 0 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/Block/
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1467 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/Block/DocumentRenderer.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1978 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/Block/ParagraphRenderer.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 701 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/ChildNodeRendererInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 687 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/DocumentRendererInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1263 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/HtmlDecorator.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 2869 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/HtmlRenderer.php
    │ │ │ +drwxr-xr-x 0 root (0) root (0) 0 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/Inline/
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 2012 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/Inline/NewlineRenderer.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1339 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/Inline/TextRenderer.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 728 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/MarkdownRendererInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 421 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/NoMatchingRendererException.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 662 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Renderer/NodeRendererInterface.php
    │ │ │ +drwxr-xr-x 0 root (0) root (0) 0 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Util/
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 3476 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Util/ArrayCollection.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1815 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Util/Html5EntityDecoder.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 4140 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Util/HtmlElement.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1468 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Util/HtmlFilter.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 4942 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Util/LinkParserHelper.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1641 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Util/PrioritizedList.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 10399 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Util/RegexHelper.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 2237 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Util/SpecReader.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 2619 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Util/UrlEncoder.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 738 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Util/Xml.php
    │ │ │ +drwxr-xr-x 0 root (0) root (0) 0 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Xml/
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 2222 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Xml/FallbackNodeXmlRenderer.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 1604 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Xml/MarkdownToXmlConverter.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 610 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Xml/XmlNodeRendererInterface.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 4166 2025-05-05 12:20:28.000000 ./usr/share/php/League/CommonMark/Xml/XmlRenderer.php
    │ │ │ +-rw-r--r-- 0 root (0) root (0) 39022 2025-05-05 14:16:52.000000 ./usr/share/php/League/CommonMark/autoload.php
    │ │ │ +drwxr-xr-x 0 root (0) root (0) 0 2025-05-05 14:16:52.000000 ./usr/share/pkg-php-tools/
    │ │ │ drwxr-xr-x 0 root (0) root (0) 0 2024-10-29 12:16:14.000000 ./usr/share/pkg-php-tools/autoloaders/
    │ │ │ -rw-r--r-- 0 root (0) root (0) 49 2024-07-23 10:20:01.000000 ./usr/share/pkg-php-tools/autoloaders/php-league-commonmark
    │ │ ├── ./usr/share/doc/php-league-commonmark/changelog.Debian.gz
    │ │ │ ├── changelog.Debian
    │ │ │ │ @@ -1,7 +1,15 @@
    │ │ │ │ +php-league-commonmark (2.7.0-1) unstable; urgency=medium
    │ │ │ │ +
    │ │ │ │ + [ Colin O'Dell ]
    │ │ │ │ + * Fix XSS in AttributesExtension
    │ │ │ │ + * Prepare to release 2.7.0
    │ │ │ │ +
    │ │ │ │ + -- David Prévot <taffit@debian.org> Mon, 05 May 2025 16:16:52 +0200
    │ │ │ │ +
    │ │ │ │ php-league-commonmark (2.6.2-1) unstable; urgency=medium
    │ │ │ │
    │ │ │ │ [ Colin O'Dell ]
    │ │ │ │ * Fix Attributes extension parsing regression (#1071)
    │ │ │ │ * Prepare to release 2.6.2
    │ │ │ │
    │ │ │ │ [ David Prévot ]
    │ │ ├── ./usr/share/doc/php-league-commonmark/changelog.gz
    │ │ │ ├── changelog
    │ │ │ │ @@ -2,14 +2,25 @@
    │ │ │ │ All notable changes to this project will be documented in this file.
    │ │ │ │ Updates should follow the [Keep a CHANGELOG](https://keepachangelog.com/) principles.
    │ │ │ │
    │ │ │ │ **Upgrading from 1.x?** See <https://commonmark.thephpleague.com/2.0/upgrading/> for additional information.
    │ │ │ │
    │ │ │ │ ## [Unreleased][unreleased]
    │ │ │ │
    │ │ │ │ +## [2.7.0]
    │ │ │ │ +
    │ │ │ │ +This is a **security release** to address a potential cross-site scripting (XSS) vulnerability when using the `AttributesExtension` with untrusted user input.
    │ │ │ │ +
    │ │ │ │ +### Added
    │ │ │ │ +- Added `attributes/allow` config option to specify which attributes users are allowed to set on elements (default allows virtually all attributes)
    │ │ │ │ +
    │ │ │ │ +### Changed
    │ │ │ │ +- The `AttributesExtension` blocks all attributes starting with `on` unless explicitly allowed via the `attributes/allow` config option
    │ │ │ │ +- The `allow_unsafe_links` option is now respected by the `AttributesExtension` when users specify `href` and `src` attributes
    │ │ │ │ +
    │ │ │ │ ## [2.6.2] - 2025-04-18
    │ │ │ │
    │ │ │ │ ### Fixed
    │ │ │ │
    │ │ │ │ - Fixed Attributes extension parsing regression (#1071)
    │ │ │ │
    │ │ │ │ ## [2.6.1] - 2024-12-29
    │ │ │ │ @@ -685,15 +696,16 @@
    │ │ │ │ **The following things have been deprecated and will not be supported in v3.0:**
    │ │ │ │
    │ │ │ │ - `Environment::mergeConfig()` (set configuration before instantiation instead)
    │ │ │ │ - `Environment::createCommonMarkEnvironment()` and `Environment::createGFMEnvironment()`
    │ │ │ │ - Alternative 1: Use `CommonMarkConverter` or `GithubFlavoredMarkdownConverter` if you don't need to customize the environment
    │ │ │ │ - Alternative 2: Instantiate a new `Environment` and add the necessary extensions yourself
    │ │ │ │
    │ │ │ │ -[unreleased]: https://github.com/thephpleague/commonmark/compare/2.6.1...2.6.2
    │ │ │ │ +[unreleased]: https://github.com/thephpleague/commonmark/compare/2.7.0...HEAD
    │ │ │ │ +[2.7.0]: https://github.com/thephpleague/commonmark/compare/2.6.2...2.7.0
    │ │ │ │ [2.6.2]: https://github.com/thephpleague/commonmark/compare/2.6.1...2.6.2
    │ │ │ │ [2.6.1]: https://github.com/thephpleague/commonmark/compare/2.6.0...2.6.1
    │ │ │ │ [2.6.0]: https://github.com/thephpleague/commonmark/compare/2.5.3...2.6.0
    │ │ │ │ [2.5.3]: https://github.com/thephpleague/commonmark/compare/2.5.2...2.5.3
    │ │ │ │ [2.5.2]: https://github.com/thephpleague/commonmark/compare/2.5.1...2.5.2
    │ │ │ │ [2.5.1]: https://github.com/thephpleague/commonmark/compare/2.5.0...2.5.1
    │ │ │ │ [2.5.0]: https://github.com/thephpleague/commonmark/compare/2.4.4...2.5.0
    │ │ ├── ./usr/share/php/League/CommonMark/Extension/Attributes/AttributesExtension.php
    │ │ │ @@ -15,18 +15,30 @@
    │ │ │ namespace League\CommonMark\Extension\Attributes;
    │ │ │
    │ │ │ use League\CommonMark\Environment\EnvironmentBuilderInterface;
    │ │ │ use League\CommonMark\Event\DocumentParsedEvent;
    │ │ │ use League\CommonMark\Extension\Attributes\Event\AttributesListener;
    │ │ │ use League\CommonMark\Extension\Attributes\Parser\AttributesBlockStartParser;
    │ │ │ use League\CommonMark\Extension\Attributes\Parser\AttributesInlineParser;
    │ │ │ -use League\CommonMark\Extension\ExtensionInterface;
    │ │ │ +use League\CommonMark\Extension\ConfigurableExtensionInterface; │ │ │ +use League\Config\ConfigurationBuilderInterface;
    │ │ │ +use Nette\Schema\Expect;
    │ │ │
    │ │ │ -final class AttributesExtension implements ExtensionInterface
    │ │ │ +final class AttributesExtension implements ConfigurableExtensionInterface
    │ │ │ {
    │ │ │ + public function configureSchema(ConfigurationBuilderInterface $builder): void
    │ │ │ + {
    │ │ │ + $builder->addSchema('attributes', Expect::structure([
    │ │ │ + 'allow' => Expect::arrayOf('string')->default([]),
    │ │ │ + ]));
    │ │ │ + }
    │ │ │ +
    │ │ │ public function register(EnvironmentBuilderInterface $environment): void
    │ │ │ {
    │ │ │ + $allowList = $environment->getConfiguration()->get('attributes.allow');
    │ │ │ + $allowUnsafeLinks = $environment->getConfiguration()->get('allow_unsafe_links');
    │ │ │ +
    │ │ │ $environment->addBlockStartParser(new AttributesBlockStartParser());
    │ │ │ $environment->addInlineParser(new AttributesInlineParser());
    │ │ │ - $environment->addEventListener(DocumentParsedEvent::class, [new AttributesListener(), 'processDocument']);
    │ │ │ + $environment->addEventListener(DocumentParsedEvent::class, [new AttributesListener($allowList, $allowUnsafeLinks), 'processDocument']);
    │ │ │ }
    │ │ │ }
    │ │ ├── ./usr/share/php/League/CommonMark/Extension/Attributes/Event/AttributesListener.php
    │ │ │ @@ -25,14 +25,27 @@
    │ │ │ use League\CommonMark\Node\Node;
    │ │ │
    │ │ │ final class AttributesListener
    │ │ │ {
    │ │ │ private const DIRECTION_PREFIX = 'prefix';
    │ │ │ private const DIRECTION_SUFFIX = 'suffix';
    │ │ │
    │ │ │ + /** @var list<string> */
    │ │ │ + private array $allowList;
    │ │ │ + private bool $allowUnsafeLinks;
    │ │ │ +
    │ │ │ + /**
    │ │ │ + * @param list<string> $allowList
    │ │ │ + */
    │ │ │ + public function __construct(array $allowList = [], bool $allowUnsafeLinks = true)
    │ │ │ + {
    │ │ │ + $this->allowList = $allowList;
    │ │ │ + $this->allowUnsafeLinks = $allowUnsafeLinks;
    │ │ │ + }
    │ │ │ +
    │ │ │ public function processDocument(DocumentParsedEvent $event): void
    │ │ │ {
    │ │ │ foreach ($event->getDocument()->iterator() as $node) {
    │ │ │ if (! ($node instanceof Attributes || $node instanceof AttributesInline)) {
    │ │ │ continue;
    │ │ │ }
    │ │ │
    │ │ │ @@ -46,15 +59,15 @@
    │ │ │
    │ │ │ if ($direction === self::DIRECTION_SUFFIX) {
    │ │ │ $attributes = AttributesHelper::mergeAttributes($target, $node->getAttributes());
    │ │ │ } else {
    │ │ │ $attributes = AttributesHelper::mergeAttributes($node->getAttributes(), $target);
    │ │ │ }
    │ │ │
    │ │ │ - $target->data->set('attributes', $attributes);
    │ │ │ + $target->data->set('attributes', AttributesHelper::filterAttributes($attributes, $this->allowList, $this->allowUnsafeLinks));
    │ │ │ }
    │ │ │
    │ │ │ $node->detach();
    │ │ │ }
    │ │ │ }
    │ │ │
    │ │ │ /**
    │ │ ├── ./usr/share/php/League/CommonMark/Extension/Attributes/Util/AttributesHelper.php
    │ │ │ @@ -135,8 +135,46 @@
    │ │ │
    │ │ │ if (isset($attributes['class'])) {
    │ │ │ $attributes['class'] = \implode(' ', $attributes['class']);
    │ │ │ }
    │ │ │
    │ │ │ return $attributes;
    │ │ │ }
    │ │ │ +
    │ │ │ + /**
    │ │ │ + * @param array<string, mixed> $attributes
    │ │ │ + * @param list<string> $allowList
    │ │ │ + *
    │ │ │ + * @return array<string, mixed>
    │ │ │ + */
    │ │ │ + public static function filterAttributes(array $attributes, array $allowList, bool $allowUnsafeLinks): array
    │ │ │ + {
    │ │ │ + $allowList = \array_fill_keys($allowList, true);
    │ │ │ +
    │ │ │ + foreach ($attributes as $name => $value) {
    │ │ │ + $attrNameLower = \strtolower($name);
    │ │ │ +
    │ │ │ + // Remove any unsafe links
    │ │ │ + if (! $allowUnsafeLinks && ($attrNameLower === 'href' || $attrNameLower === 'src') && \is_string($value) && RegexHelper::isLinkPotentiallyUnsafe($value)) {
    │ │ │ + unset($attributes[$name]);
    │ │ │ + continue;
    │ │ │ + }
    │ │ │ +
    │ │ │ + // No allowlist?
    │ │ │ + if ($allowList === []) {
    │ │ │ + // Just remove JS event handlers
    │ │ │ + if (\str_starts_with($attrNameLower, 'on')) {
    │ │ │ + unset($attributes[$name]);
    │ │ │ + }
    │ │ │ +
    │ │ │ + continue;
    │ │ │ + }
    │ │ │ +
    │ │ │ + // Remove any attributes not in that allowlist (case-sensitive)
    │ │ │ + if (! isset($allowList[$name])) {
    │ │ │ + unset($attributes[$name]);
    │ │ │ + }
    │ │ │ + }
    │ │ │ +
    │ │ │ + return $attributes;
    │ │ │ + }
    │ │ │ }

    --KvfobiQo61QIB6U6--

    --CdyG4hn2Ln0pjyR0
    Content-Type: application/pgp-signature; name="signature.asc"

    -----BEGIN PGP SIGNATURE-----

    iQEzBAABCAAdFiEEeHVNB7wJXHRI941mBYwc+UT2vTwFAmgjcpcACgkQBYwc+UT2 vTynjwgAgSwyvMYxhrAPxbcFpahSk5K1T10VM0aef6+CHz3ei98YOQorfDrykjNl wftmhiiv8JjKkqZQL1XgjI+PgjZnsFY45Vi3WVOXQlkkhDAcxPag2LU08ElSYB5f kykhk3qFRVGUYGBlhyPP1UmeDn3W9JgJwYg25llFd9n6Azxnb1Nk3E4sN/aXTdAu xwBrZhw84p9u3w9ADYFvRH4F6iFqJalTnoqcRGcwozgd2YlGMF0wb8B5rPfjz5Oo B+BEqXxzXxIsKoCwM7usxTnRovKCjqp/h4A6Rq+eiyFV5aAXYvZlkWnu5jCIp2Kj HOgo3z1UJULP4hFwvxyYejLT76tOqg==7qeT
    -----END PGP SIGNATURE-----

    --CdyG4hn2Ln0pjyR0--

    Received: (at 1105219-done) by bugs.debian.org; 14 May 2025 15:57:54 +0000 X-Spam-Checker-Version: SpamAssassin 3.4.6-bugs.debian.org_2005_01_02
    (2021-04-09) on buxtehude.debian.org
    X-Spam-Level:
    X-Spam-Status: No, score=-107.1 required=4.0 tests=BAYES_00,DKIM_SIGNED,
    DKIM_VALID,DKIM_VALID_AU,ONEWORDBODY,RCVD_IN_DNSWL_HI,SPF_HELO_NONE,
    SPF_NONE,TVD_SPACE_RATIO,USER_IN_DKIM_WELCOMELIST,
    USER_IN_DKIM_WHITELIST autolearn=ham autolearn_force=no
    version=3.4.6-bugs.debian.org_2005_01_02
    X-Spam-Bayes: score:0.0000 Tokens: new, 12; hammy, 96; neutral, 18; spammy, 0.
    spammytokens: hammytokens:0.000-+--H*F:U*sramacher,
    0.000-+--Hx-spam-relays-external:sk:sramach, 0.000-+--H*rp:U*sramacher,
    0.000-+--H*RT:sk:sramach, 0.000-+--H*r:sk:sramach
    Return-path: <sramacher@respighi.debian.org>
    Received: from muffat.debian.org ([2607:f8f0:614:1::1274:33]:38280)
    from C=NA,ST=NA,L=Ankh Morpork,O=Debian SMTP,OU=Debian SMTP CA,CN=muffat.debian.org,EMAIL=hostmaster@muffat.debian.org (verified)
    by buxtehude.debian.org with esmtps (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
    (Exim 4.94.2)
    (envelope-from <sramacher@respighi.debian.org>)
    id 1uFEUU-00BOk1-Jz
    for 1105219-done@bugs.debian.org; Wed, 14 May 2025 15:57:54 +0000 Received: from respighi.debian.org ([2a02:16a8:dc41:100::131]:51166)
    from C=NA,ST=NA,L=Ankh Morpork,O=Debian SMTP,OU=Debian SMTP CA,CN=respighi.debian.org,EMAIL=hostmaster@respighi.debian.org (verified)
    by muffat.debian.org with esmtps (TLS1.3:ECDHE_SECP256R1__RSA_PSS_RSAE_SHA256__AES_256_GCM:256)
    (Exim 4.94.2)
    (envelope-from <sramacher@respighi.debian.org>)
    id 1uFEUT-00ECqn-RE
    for 1105219-done@bugs.debian.org; Wed, 14 May 2025 15:57:53 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;
    d=respighi.debian.org; s=smtpauto.respighi; h=Date:From:Message-Id:
    Content-Transfer-Encoding:Content-Type:MIME-Version:Subject:To:Reply-To:Cc:
    Content-ID:Content-Description:In-Reply-To:References;
    bh=5bRdXg+fubkBz3BaoLY1WsiedlmO1YJGSCj1MJk46IU=; b=lWhQCrhGJkB46DPKiYmToW7wth
    dMEii0hBdLJnwsmc+iUHKdWLDnTBp0RO51ojEUmeJlWfRLZq+rYOBV9uLWAKEiKSz+ayg2Lah8tVg
    fW3Zj8GvZwCr5C3NFsNVTmFjpuuaAMrniAd1Jof22to0WL/ntHrIoH+dyMVYmuOuxfwCFuYNiFra8
    1sQ8jKhd4uFRlw9IHVduv/qFUh8523paiu/q3dOF6leI3hM4kpIYUdvqAisGTRei+pXiSbVPxn9+f
    S+D+wqdw5YTS3zwvRcSip5HZ0qNR+Orofnz4PglAeWfK7rwbn3z/lnCQVqEKXy0DQKD4wGhbETg3f
    Yw7vxxwg==;
    Received: from sramacher by respighi.debian.org with local (Exim 4.96)
    (envelope-from <sramacher@respighi.debian.org>)
    id 1uFEUS-002riG-17
    for 1105219-done@bugs.debian.org;
    Wed, 14 May 2025 15:57:52 +0000
    To: 1105219-done@bugs.debian.org
    Subject: unblock php-league-commonmark
    MIME-Version: 1.0
    Content-Type: text/plain; charset="UTF-8"
    Content-Transfer-Encoding: 8bit
    Message-Id: <E1uFEUS-002riG-17@respighi.debian.org>
    From: Sebastian Ramacher <sramacher@respighi.debian.org>
    Date: Wed, 14 May 2025 15:57:52 +0000
    X-CrossAssassin-Score: 43

    Unblocked.

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)