Analysis Report

Shared security patch analysis results

AI Used: DEEPSEEK deepseek-chat
Share this analysis
426 filtered / 426 total files
include/laminas-mail/vendor/laminas/laminas-servicemanager/src/AbstractPluginManager.php AI: Not sure
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/vendor/laminas/laminas-servicemanager/src/AbstractPluginManager.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/vendor/laminas/laminas-servicemanager/src/AbstractPluginManager.php@@ -1,16 +1,21 @@ <?php-/**- * @see       https://github.com/laminas/laminas-servicemanager for the canonical source repository- * @copyright https://github.com/laminas/laminas-servicemanager/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-servicemanager/blob/master/LICENSE.md New BSD License- */+declare(strict_types=1); namespace Laminas\ServiceManager;-use Interop\Container\ContainerInterface;+use Laminas\ServiceManager\Exception\ContainerModificationsNotAllowedException; use Laminas\ServiceManager\Exception\InvalidServiceException;-use Psr\Container\ContainerInterface as PsrContainerInterface;+use Psr\Container\ContainerInterface;++use function class_exists;+use function gettype;+use function is_object;+use function method_exists;+use function sprintf;+use function trigger_error;++use const E_USER_DEPRECATED; /**  * Abstract plugin manager.@@ -25,6 +30,11 @@  *  * The implementation extends `ServiceManager`, thus providing the same set  * of capabilities as found in that implementation.+ *+ * @template InstanceType+ * @implements PluginManagerInterface<InstanceType>+ * @psalm-import-type ServiceManagerConfiguration from ServiceManager+ * @psalm-suppress PropertyNotSetInConstructor  */ abstract class AbstractPluginManager extends ServiceManager implements PluginManagerInterface {@@ -39,42 +49,33 @@      * An object type that the created instance must be instanced of      *      * @var null|string-     */-    protected $instanceOf = null;--    /**-     * Constructor.-     *+     * @psalm-var null|class-string<InstanceType>+     */+    protected $instanceOf;++    /**      * Sets the provided $parentLocator as the creation context for all      * factories; for $config, {@see \Laminas\ServiceManager\ServiceManager::configure()}      * for details on its accepted structure.      *-     * @param null|ConfigInterface|ContainerInterface|PsrContainerInterface $configInstanceOrParentLocator+     * @param null|ConfigInterface|ContainerInterface $configInstanceOrParentLocator      * @param array $config+     * @psalm-param ServiceManagerConfiguration $config      */     public function __construct($configInstanceOrParentLocator = null, array $config = [])     {-        if ($configInstanceOrParentLocator instanceof PsrContainerInterface-            && ! $configInstanceOrParentLocator instanceof ContainerInterface-        ) {-            /**-             * {@see \Laminas\ServiceManager\Factory\FactoryInterface} typehints-             * against interop container and as such cannot accept non-interop-             * psr container. Decorate it as interop.-             */-            $configInstanceOrParentLocator = new PsrContainerDecorator($configInstanceOrParentLocator);-        }-        if (null !== $configInstanceOrParentLocator+        /** @psalm-suppress DocblockTypeContradiction */+        if (+            null !== $configInstanceOrParentLocator             && ! $configInstanceOrParentLocator instanceof ConfigInterface             && ! $configInstanceOrParentLocator instanceof ContainerInterface         ) {             throw new Exception\InvalidArgumentException(sprintf(                 '%s expects a ConfigInterface or ContainerInterface instance as the first argument; received %s',-                __CLASS__,-                (is_object($configInstanceOrParentLocator)-                    ? get_class($configInstanceOrParentLocator)+                self::class,+                is_object($configInstanceOrParentLocator)+                    ? $configInstanceOrParentLocator::class                     : gettype($configInstanceOrParentLocator)-                )             ));         }@@ -82,7 +83,7 @@             trigger_error(sprintf(                 'Usage of %s as a constructor argument for %s is now deprecated',                 ConfigInterface::class,-                get_class($this)+                static::class             ), E_USER_DEPRECATED);             $config = $configInstanceOrParentLocator->toArray();         }@@ -105,15 +106,18 @@     /**      * Override configure() to validate service instances.      *-     * If an instance passed in the `services` configuration is invalid for the-     * plugin manager, this method will raise an InvalidServiceException.-     *-     * {@inheritDoc}-     * @throws InvalidServiceException+     * @param  array $config+     * @psalm-param ServiceManagerConfiguration $config+     * @return self+     * @throws InvalidServiceException If an instance passed in the `services` configuration is invalid for the+     *                                 plugin manager.+     * @throws ContainerModificationsNotAllowedException If the allow override flag has been toggled off, and a+     *                                                   service instanceexists for a given service.      */     public function configure(array $config)     {         if (isset($config['services'])) {+            /** @psalm-suppress MixedAssignment */             foreach ($config['services'] as $service) {                 $this->validate($service);             }@@ -125,45 +129,60 @@     }     /**+     * Override setService for additional plugin validation.+     *      * {@inheritDoc}      *-     * @param string $name Service name of plugin to retrieve.-     * @param null|array $options Options to use when creating the instance.+     * @param string|class-string<InstanceType> $name+     * @param InstanceType $service+     */+    public function setService($name, $service)+    {+        $this->validate($service);+        parent::setService($name, $service);+    }++    /**+     * @param class-string<InstanceType>|string $name Service name of plugin to retrieve.+     * @param null|array<mixed> $options Options to use when creating the instance.      * @return mixed-     * @throws Exception\ServiceNotFoundException if the manager does not have+     * @psalm-return ($name is class-string<InstanceType> ? InstanceType : mixed)+     * @throws Exception\ServiceNotFoundException If the manager does not have      *     a service definition for the instance, and the service is not      *     auto-invokable.-     * @throws InvalidServiceException if the plugin created is invalid for the+     * @throws InvalidServiceException If the plugin created is invalid for the      *     plugin context.      */-    public function get($name, array $options = null)+    public function get($name, ?array $options = null)     {         if (! $this->has($name)) {             if (! $this->autoAddInvokableClass || ! class_exists($name)) {                 throw new Exception\ServiceNotFoundException(sprintf(                     'A plugin by the name "%s" was not found in the plugin manager %s',                     $name,-                    get_class($this)+                    static::class                 ));             }             $this->setFactory($name, Factory\InvokableFactory::class);         }-        $instance = empty($options) ? parent::get($name) : $this->build($name, $options);+        $instance = ! $options ? parent::get($name) : $this->build($name, $options);         $this->validate($instance);         return $instance;     }     /**      * {@inheritDoc}-     */-    public function validate($instance)+     *+     * @psalm-assert InstanceType $instance+     */+    public function validate(mixed $instance)     {         if (method_exists($this, 'validatePlugin')) {             trigger_error(sprintf(                 '%s::validatePlugin() has been deprecated as of 3.0; please define validate() instead',-                get_class($this)+                static::class             ), E_USER_DEPRECATED);             $this->validatePlugin($instance);             return;@@ -175,9 +194,9 @@         throw new InvalidServiceException(sprintf(             'Plugin manager "%s" expected an instance of type "%s", but "%s" was received',-            __CLASS__,+            self::class,             $this->instanceOf,-            is_object($instance) ? get_class($instance) : gettype($instance)+            is_object($instance) ? $instance::class : gettype($instance)         ));     }@@ -188,7 +207,7 @@      *      * @deprecated since 3.0.0. The creation context should be passed during      *     instantiation instead.-     * @param ContainerInterface $container+     *      * @return void      */     public function setServiceLocator(ContainerInterface $container)
AI Analysis
Based on the provided code diff, here's the security analysis following the specified format:

1. Vulnerability Existed: not sure
[Potential Type Safety Improvement] [include/laminas-mail/vendor/laminas/laminas-servicemanager/src/AbstractPluginManager.php] [Multiple lines]
[Old Code: No strict type checking, less specific type hints]
[Fixed Code: Added strict_types=1, better type hints with psalm annotations]

2. Vulnerability Existed: not sure
[Potential Container Injection Protection] [include/laminas-mail/vendor/laminas/laminas-servicemanager/src/AbstractPluginManager.php] [Constructor]
[Old Code: Accepts PsrContainerInterface without validation]
[Fixed Code: Removed PsrContainerInterface acceptance, added stricter validation]

3. Vulnerability Existed: not sure
[Potential Validation Bypass Fix] [include/laminas-mail/vendor/laminas/laminas-servicemanager/src/AbstractPluginManager.php] [validate() method]
[Old Code: Less strict validation with basic type checking]
[Fixed Code: Added psalm assertions and better type checking]

4. Vulnerability Existed: not sure
[Potential Service Override Protection] [include/laminas-mail/vendor/laminas/laminas-servicemanager/src/AbstractPluginManager.php] [configure() method]
[Old Code: Basic service validation]
[Fixed Code: Added ContainerModificationsNotAllowedException for override protection]

Note: While these changes appear to improve security by making the code more strict and adding better validation, I cannot definitively state they fix specific known vulnerabilities without additional context about the threat model or previous exploits. The changes primarily focus on type safety and validation improvements which generally contribute to better security posture.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/class.staff.php AI: Not sure
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/class.staff.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/class.staff.php@@ -713,7 +713,7 @@                 'child_thread__referrals__team__team_id__in' => $teams)));             $assigned->add($childRefTeam);         }-        $visibility = Q::any(new Q(array('status__state'=>'open', $assigned)));+        $visibility = Q::any(new Q(array('status__state__in'=>['open', 'closed'], $assigned)));         // -- If access is limited to assigned only, return assigned         if ($this->isAccessLimited())             return $visibility;@@ -738,7 +738,7 @@     }     function applyVisibility($query, $exclude_archived=false) {-        return $query->filter($this->getTicketsVisibility($exclude_archived));+        return $query->filter($this->getTicketsVisibility($exclude_archived))->distinct('ticket_id');     }     function applyDeptVisibility($qs) {
AI Analysis
Here's the analysis of the provided code diff for security fixes:

1. Vulnerability Existed: not sure  
   [Potential Information Disclosure] [File: include/class.staff.php] [Lines: 713-713]  
   [Old Code]  
   `$visibility = Q::any(new Q(array('status__state'=>'open', $assigned)));`  
   [Fixed Code]  
   `$visibility = Q::any(new Q(array('status__state__in'=>['open', 'closed'], $assigned)));`  

   Additional Details: The change expands the ticket visibility to include both 'open' and 'closed' states. While not clearly a security fix, it might address potential information disclosure if closed tickets were meant to be visible but weren't being shown.

2. Vulnerability Existed: not sure  
   [Potential SQL Injection or Duplicate Results] [File: include/class.staff.php] [Lines: 738-738]  
   [Old Code]  
   `return $query->filter($this->getTicketsVisibility($exclude_archived));`  
   [Fixed Code]  
   `return $query->filter($this->getTicketsVisibility($exclude_archived))->distinct('ticket_id');`  

   Additional Details: The addition of `distinct('ticket_id')` might prevent duplicate ticket entries in results. While not clearly a security fix, it could potentially address information disclosure if duplicate tickets were being shown.

Note: Neither change clearly addresses a known vulnerability, but both could be related to information disclosure or data integrity issues. The changes appear to be more about functionality improvements than direct security fixes.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/vendor/laminas/laminas-validator/src/Sitemap/Priority.php AI: No vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/vendor/laminas/laminas-validator/src/Sitemap/Priority.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/vendor/laminas/laminas-validator/src/Sitemap/Priority.php@@ -1,14 +1,10 @@ <?php--/**- * @see       https://github.com/laminas/laminas-validator for the canonical source repository- * @copyright https://github.com/laminas/laminas-validator/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-validator/blob/master/LICENSE.md New BSD License- */ namespace Laminas\Validator\Sitemap; use Laminas\Validator\AbstractValidator;++use function is_numeric; /**  * Validates whether a given value is valid as a sitemap <priority> value@@ -19,10 +15,9 @@ {     /**      * Validation key for not valid-     *      */-    const NOT_VALID = 'sitemapPriorityNotValid';-    const INVALID   = 'sitemapPriorityInvalid';+    public const NOT_VALID = 'sitemapPriorityNotValid';+    public const INVALID   = 'sitemapPriorityInvalid';     /**      * Validation failure message template definitions
AI Analysis
Based on the provided code diff, here's the analysis following the required format:

Vulnerability Existed: no
[No specific vulnerability found] [include/laminas-mail/vendor/laminas/laminas-validator/src/Sitemap/Priority.php] [Lines 1-19]
[Old Code]
<?php

/**
 * @see       https://github.com/laminas/laminas-validator for the canonical source repository
 * @copyright https://github.com/laminas/laminas-validator/blob/master/COPYRIGHT.md
 * @license   https://github.com/laminas/laminas-validator/blob/master/LICENSE.md New BSD License
 */

namespace Laminas\Validator\Sitemap;

use Laminas\Validator\AbstractValidator;

/**
 * Validates whether a given value is valid as a sitemap <priority> value
 */
class Priority extends AbstractValidator
{
    /**
     * Validation key for not valid
     *
     */
    const NOT_VALID = 'sitemapPriorityNotValid';
    const INVALID   = 'sitemapPriorityInvalid';
[Fixed Code]
<?php

namespace Laminas\Validator\Sitemap;

use Laminas\Validator\AbstractValidator;

use function is_numeric;

/**
 * Validates whether a given value is valid as a sitemap <priority> value
 */
class Priority extends AbstractValidator
{
    /**
     * Validation key for not valid
     */
    public const NOT_VALID = 'sitemapPriorityNotValid';
    public const INVALID   = 'sitemapPriorityInvalid';

Additional Details:
The changes appear to be code improvements rather than security fixes:
1. Removed documentation header (license/copyright info)
2. Added `use function is_numeric` import
3. Changed `const` to `public const` (visibility declaration)
4. Minor formatting changes (removed empty comment line)

No security vulnerabilities were identified in these changes. The modifications seem to focus on code style and maintainability rather than addressing security issues.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/src/Protocol/SmtpPluginManagerFactory.php AI: No vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/src/Protocol/SmtpPluginManagerFactory.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/src/Protocol/SmtpPluginManagerFactory.php@@ -1,32 +1,35 @@ <?php--/**- * @see       https://github.com/laminas/laminas-mail for the canonical source repository- * @copyright https://github.com/laminas/laminas-mail/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-mail/blob/master/LICENSE.md New BSD License- */ namespace Laminas\Mail\Protocol;+// phpcs:ignore WebimpressCodingStandard.PHP.CorrectClassNameCase.Invalid use Interop\Container\ContainerInterface;-use Laminas\ServiceManager\FactoryInterface;+use Laminas\ServiceManager\Factory\FactoryInterface; use Laminas\ServiceManager\ServiceLocatorInterface;+use Laminas\ServiceManager\ServiceManager;+/**+ * @link ServiceManager+ *+ * @psalm-import-type ServiceManagerConfiguration from ServiceManager+ */ class SmtpPluginManagerFactory implements FactoryInterface {     /**      * laminas-servicemanager v2 support for invocation options.      *-     * @param array+     * @var array+     * @psalm-var ServiceManagerConfiguration      */     protected $creationOptions;     /**      * {@inheritDoc}      *+     * @psalm-param ServiceManagerConfiguration $options      * @return SmtpPluginManager      */-    public function __invoke(ContainerInterface $container, $name, array $options = null)+    public function __invoke(ContainerInterface $container, $name, ?array $options = null)     {         return new SmtpPluginManager($container, $options ?: []);     }@@ -44,7 +47,7 @@     /**      * laminas-servicemanager v2 support for invocation options.      *-     * @param array $options+     * @psalm-param ServiceManagerConfiguration $options      * @return void      */     public function setCreationOptions(array $options)
AI Analysis
Based on the provided code diff, I'll analyze it for security vulnerabilities:

1. Vulnerability Existed: no
   The changes appear to be primarily documentation updates and code style improvements rather than security fixes. The main changes include:
   - Added proper type hints and Psalm annotations
   - Updated FactoryInterface import path
   - Added documentation about ServiceManagerConfiguration
   - Made the $options parameter nullable in __invoke()
   - Improved code comments

2. Vulnerability Existed: no
   The changes to the __invoke() method signature (making $options nullable) doesn't appear to be a security fix but rather a type safety improvement. The functionality remains the same.

3. Vulnerability Existed: no
   The addition of Psalm type annotations (@psalm-param, @psalm-import-type) is a code quality improvement, not a security fix.

The diff shows modernization of the codebase rather than security fixes. The changes are focused on:
- Better type safety
- Improved documentation
- Updated imports
- Code style consistency

No actual security vulnerabilities appear to have been fixed in this particular diff. The changes are more about maintainability and code quality than security.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/vendor/psr/container/src/ContainerInterface.php AI: Not sure
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/vendor/psr/container/src/ContainerInterface.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/vendor/psr/container/src/ContainerInterface.php@@ -1,7 +1,6 @@ <?php-/**- * @license http://www.opensource.org/licenses/mit-license.php MIT (see the LICENSE file)- */++declare(strict_types=1); namespace Psr\Container;@@ -20,7 +19,7 @@      *      * @return mixed Entry.      */-    public function get($id);+    public function get(string $id);     /**      * Returns true if the container can return an entry for the given identifier.@@ -33,5 +32,5 @@      *      * @return bool      */-    public function has($id);+    public function has(string $id); }
AI Analysis
Here's the analysis of the provided code diff:

1. Vulnerability Existed: not sure  
   [Type Safety Improvement] [include/laminas-mail/vendor/psr/container/src/ContainerInterface.php] [Lines 20,33]  
   Old Code:  
   ```php
   public function get($id);
   public function has($id);
   ```  
   Fixed Code:  
   ```php
   public function get(string $id);
   public function has(string $id);
   ```  
   Additional Details: The changes enforce type safety by requiring string parameters, which could prevent potential type-related issues but doesn't appear to fix a specific known vulnerability.

2. Vulnerability Existed: not sure  
   [License Header Removal] [include/laminas-mail/vendor/psr/container/src/ContainerInterface.php] [Lines 1-3]  
   Old Code:  
   ```php
   /**
    * @license http://www.opensource.org/licenses/mit-license.php MIT (see the LICENSE file)
    */
   ```  
   Fixed Code:  
   ```php
   (removed)
   ```  
   Additional Details: The license header was removed, which might be related to code organization but doesn't appear to be a security fix.

Note: The main change is the addition of strict type declarations and parameter type hints, which improve code safety but don't appear to address any specific known vulnerabilities. The changes are more about code quality and type safety than security fixes.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/src/Storage/Writable/Maildir.php AI: 3 vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/src/Storage/Writable/Maildir.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/src/Storage/Writable/Maildir.php@@ -1,20 +1,68 @@ <?php--/**- * @see       https://github.com/laminas/laminas-mail for the canonical source repository- * @copyright https://github.com/laminas/laminas-mail/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-mail/blob/master/LICENSE.md New BSD License- */ namespace Laminas\Mail\Storage\Writable; use Laminas\Mail\Exception as MailException; use Laminas\Mail\Storage; use Laminas\Mail\Storage\Exception as StorageException;+use Laminas\Mail\Storage\Exception\ExceptionInterface;+use Laminas\Mail\Storage\Exception\InvalidArgumentException;+use Laminas\Mail\Storage\Exception\RuntimeException; use Laminas\Mail\Storage\Folder; use Laminas\Stdlib\ErrorHandler; use RecursiveIteratorIterator;+use function array_flip;+use function array_keys;+use function array_search;+use function array_values;+use function closedir;+use function copy;+use function dirname;+use function explode;+use function fclose;+use function fgets;+use function file_exists;+use function file_put_contents;+use function filemtime;+use function filesize;+use function fopen;+use function fread;+use function fwrite;+use function get_resource_type;+use function getmypid;+use function implode;+use function is_array;+use function is_dir;+use function is_file;+use function is_numeric;+use function is_resource;+use function link;+use function microtime;+use function mkdir;+use function opendir;+use function php_uname;+use function readdir;+use function rename;+use function rmdir;+use function rtrim;+use function sleep;+use function str_contains;+use function str_starts_with;+use function stream_copy_to_stream;+use function strlen;+use function strpos;+use function strrpos;+use function strtok;+use function substr;+use function time;+use function trim;+use function unlink;++use const DIRECTORY_SEPARATOR;+use const E_WARNING;+use const FILE_APPEND;+ class Maildir extends Folder\Maildir implements WritableInterface {     // TODO: init maildir (+ constructor option create if not found)@@ -32,8 +80,8 @@      * If the given dir is already a valid maildir this will not fail.      *      * @param string $dir directory for the new maildir (may already exist)-     * @throws \Laminas\Mail\Storage\Exception\RuntimeException-     * @throws \Laminas\Mail\Storage\Exception\InvalidArgumentException+     * @throws RuntimeException+     * @throws InvalidArgumentException      */     public static function initMaildir($dir)     {@@ -51,9 +99,9 @@                     throw new StorageException\InvalidArgumentException("parent $dir not found", 0, $error);                 } elseif (! is_dir($dir)) {                     throw new StorageException\InvalidArgumentException("parent $dir not a directory", 0, $error);-                } else {-                    throw new StorageException\RuntimeException('cannot create maildir', 0, $error);                 }++                throw new StorageException\RuntimeException('cannot create maildir', 0, $error);             }         }@@ -75,8 +123,8 @@      * Additional parameters are (see parent for more):      *   - create if true a new maildir is create if none exists      *-     * @param  $params array mail reader specific parameters-     * @throws \Laminas\Mail\Storage\Exception\ExceptionInterface+     * @param  array|object $params mail reader specific parameters+     * @throws ExceptionInterface      */     public function __construct($params)     {@@ -84,7 +132,8 @@             $params = (object) $params;         }-        if (! empty($params->create)+        if (+            ! empty($params->create)             && isset($params->dirname)             && ! file_exists($params->dirname . DIRECTORY_SEPARATOR . 'cur')         ) {@@ -101,8 +150,8 @@      * may be used as parent or which chars may be used in the folder name      *      * @param   string                           $name         global name of folder, local name if $parentFolder is set-     * @param   string|\Laminas\Mail\Storage\Folder $parentFolder parent of new folder, else root folder is parent-     * @throws \Laminas\Mail\Storage\Exception\RuntimeException+     * @param string|Folder $parentFolder parent of new folder, else root folder is parent+     * @throws RuntimeException      * @return  string only used internally (new created maildir)      */     public function createFolder($name, $parentFolder = null)@@ -121,25 +170,26 @@         $exists = null;         try {             $exists = $this->getFolders($folder);-        } catch (MailException\ExceptionInterface $e) {+        } catch (MailException\ExceptionInterface) {             // ok         }         if ($exists) {             throw new StorageException\RuntimeException('folder already exists');         }-        if (strpos($folder, $this->delim . $this->delim) !== false) {+        if (str_contains($folder, $this->delim . $this->delim)) {             throw new StorageException\RuntimeException('invalid name - folder parts may not be empty');         }-        if (strpos($folder, 'INBOX' . $this->delim) === 0) {+        if (str_starts_with($folder, 'INBOX' . $this->delim)) {             $folder = substr($folder, 6);         }         $fulldir = $this->rootdir . '.' . $folder;         // check if we got tricked and would create a dir outside of the rootdir or not as direct child-        if (strpos($folder, DIRECTORY_SEPARATOR) !== false || strpos($folder, '/') !== false+        if (+            str_contains($folder, DIRECTORY_SEPARATOR) || str_contains($folder, '/')             || dirname($fulldir) . DIRECTORY_SEPARATOR != $this->rootdir         ) {             throw new StorageException\RuntimeException('invalid name - no directory separator allowed in folder name');@@ -152,7 +202,7 @@             $parent = substr($folder, 0, strrpos($folder, $this->delim));             try {                 $this->getFolders($parent);-            } catch (MailException\ExceptionInterface $e) {+            } catch (MailException\ExceptionInterface) {                 // does not - create parent folder                 $this->createFolder($parent);             }@@ -182,7 +232,7 @@      * remove a folder      *      * @param  string|Folder $name      name or instance of folder-     * @throws \Laminas\Mail\Storage\Exception\RuntimeException+     * @throws RuntimeException      */     public function removeFolder($name)     {@@ -197,7 +247,7 @@         }         $name = trim($name, $this->delim);-        if (strpos($name, 'INBOX' . $this->delim) === 0) {+        if (str_starts_with($name, 'INBOX' . $this->delim)) {             $name = substr($name, 6);         }@@ -255,9 +305,9 @@      *      * The new name has the same restrictions as in createFolder()      *-     * @param  string|\Laminas\Mail\Storage\Folder $oldName name or instance of folder+     * @param string|Folder $oldName name or instance of folder      * @param  string                           $newName new global name of folder-     * @throws \Laminas\Mail\Storage\Exception\RuntimeException+     * @throws RuntimeException      */     public function renameFolder($oldName, $newName)     {@@ -268,16 +318,16 @@         }         $oldName = trim($oldName, $this->delim);-        if (strpos($oldName, 'INBOX' . $this->delim) === 0) {+        if (str_starts_with($oldName, 'INBOX' . $this->delim)) {             $oldName = substr($oldName, 6);         }         $newName = trim($newName, $this->delim);-        if (strpos($newName, 'INBOX' . $this->delim) === 0) {+        if (str_starts_with($newName, 'INBOX' . $this->delim)) {             $newName = substr($newName, 6);         }-        if (strpos($newName, $oldName . $this->delim) === 0) {+        if (str_starts_with($newName, $oldName . $this->delim)) {             throw new StorageException\RuntimeException('new folder cannot be a child of old folder');         }@@ -331,7 +381,7 @@      */     protected function createUniqueId()     {-        $id = '';+        $id  = '';         $id .= microtime(true);         $id .= '.' . getmypid();         $id .= '.' . php_uname('n');@@ -346,7 +396,7 @@      * you should close the returned filehandle!      *      * @param   string $folder name of current folder without leading .-     * @throws \Laminas\Mail\Storage\Exception\RuntimeException+     * @throws RuntimeException      * @return  array array('dirname' => dir of maildir folder, 'uniq' => unique id, 'filename' => name of create file      *                     'handle'  => file opened for writing)      */@@ -390,10 +440,12 @@             );         }-        return ['dirname'  => $this->rootdir . '.' . $folder,-                     'uniq'     => $uniq,-                     'filename' => $tmpdir . $uniq,-                     'handle'   => $fh];+        return [+            'dirname'  => $this->rootdir . '.' . $folder,+            'uniq'     => $uniq,+            'filename' => $tmpdir . $uniq,+            'handle'   => $fh,+        ];     }     /**@@ -418,7 +470,7 @@             if (! isset($wantedFlags[$flag])) {                 continue;             }-            $info .= $char;+            $info        .= $char;             $flags[$char] = $flag;             unset($wantedFlags[$flag]);         }@@ -453,7 +505,7 @@             $folder = $this->currentFolder;         }-        if (! ($folder instanceof Folder)) {+        if (! $folder instanceof Folder) {             $folder = $this->getFolders($folder);         }@@ -476,7 +528,7 @@         if ($size !== false) {             $info = ',S=' . $size . $info;         }-        $newFilename = $tempFile['dirname'] . DIRECTORY_SEPARATOR;+        $newFilename  = $tempFile['dirname'] . DIRECTORY_SEPARATOR;         $newFilename .= $recent ? 'new' : 'cur';         $newFilename .= DIRECTORY_SEPARATOR . $tempFile['uniq'] . $info;@@ -495,9 +547,11 @@             throw $exception;         }-        $this->files[] = ['uniq'     => $tempFile['uniq'],-                                'flags'    => $flags,-                                'filename' => $newFilename];+        $this->files[] = [+            'uniq'     => $tempFile['uniq'],+            'flags'    => $flags,+            'filename' => $newFilename,+        ];         if ($this->quota) {             $this->addQuotaEntry((int) $size, 1);         }@@ -507,8 +561,8 @@      * copy an existing message      *      * @param  int                              $id     number of message-     * @param  string|\Laminas\Mail\Storage\Folder $folder name or instance of targer folder-     * @throws \Laminas\Mail\Storage\Exception\RuntimeException+     * @param string|Folder $folder name or instance of targer folder+     * @throws RuntimeException      */     public function copyMessage($id, $folder)     {@@ -516,7 +570,7 @@             throw new StorageException\RuntimeException('storage is over quota!');         }-        if (! ($folder instanceof Folder)) {+        if (! $folder instanceof Folder) {             $folder = $this->getFolders($folder);         }@@ -560,12 +614,15 @@             throw $exception;         }-        if ($folder->getGlobalName() == $this->currentFolder+        if (+            $folder->getGlobalName() == $this->currentFolder             || ($this->currentFolder == 'INBOX' && $folder->getGlobalName() == '/')         ) {-            $this->files[] = ['uniq'     => $tempFile['uniq'],-                                    'flags'    => $flags,-                                    'filename' => $newFile];+            $this->files[] = [+                'uniq'     => $tempFile['uniq'],+                'flags'    => $flags,+                'filename' => $newFile,+            ];         }         if ($this->quota) {@@ -577,16 +634,17 @@      * move an existing message      *      * @param  int                              $id     number of message-     * @param  string|\Laminas\Mail\Storage\Folder $folder name or instance of targer folder-     * @throws \Laminas\Mail\Storage\Exception\RuntimeException+     * @param string|Folder $folder name or instance of targer folder+     * @throws RuntimeException      */     public function moveMessage($id, $folder)     {-        if (! ($folder instanceof Folder)) {+        if (! $folder instanceof Folder) {             $folder = $this->getFolders($folder);         }-        if ($folder->getGlobalName() == $this->currentFolder+        if (+            $folder->getGlobalName() == $this->currentFolder             || ($this->currentFolder == 'INBOX' && $folder->getGlobalName() == '/')         ) {             throw new StorageException\RuntimeException('target is current folder');@@ -641,7 +699,7 @@      *      * @param   int   $id    number of message      * @param   array $flags new flags for message-     * @throws \Laminas\Mail\Storage\Exception\RuntimeException+     * @throws RuntimeException      */     public function setFlags($id, $flags)     {@@ -650,7 +708,7 @@         // NOTE: double dirname to make sure we always move to cur. if recent         // flag has been set (message is in new) it will be moved to cur.-        $newFilename = dirname(dirname($filedata['filename']))+        $newFilename = dirname($filedata['filename'], 2)             . DIRECTORY_SEPARATOR             . 'cur'             . DIRECTORY_SEPARATOR@@ -672,8 +730,8 @@     /**      * stub for not supported message deletion      *-     * @param $id-     * @throws \Laminas\Mail\Storage\Exception\RuntimeException+     * @param int $id+     * @throws RuntimeException      */     public function removeMessage($id)     {@@ -716,8 +774,9 @@      * get currently set quota      *      * @see \Laminas\Mail\Storage\Writable\Maildir::setQuota()+     *      * @param bool $fromStorage-     * @throws \Laminas\Mail\Storage\Exception\RuntimeException+     * @throws RuntimeException      * @return bool|array      */     public function getQuota($fromStorage = false)@@ -748,7 +807,8 @@     /**      * @see http://www.inter7.com/courierimap/README.maildirquota.html "Calculating maildirsize"-     * @throws \Laminas\Mail\Storage\Exception\RuntimeException+     *+     * @throws RuntimeException      * @return array      */     protected function calculateMaildirsize()@@ -841,13 +901,16 @@             }         }-        return ['size'  => $totalSize,-                     'count' => $messages,-                     'quota' => $quota];+        return [+            'size'  => $totalSize,+            'count' => $messages,+            'quota' => $quota,+        ];     }     /**      * @see http://www.inter7.com/courierimap/README.maildirquota.html "Calculating the quota for a Maildir++"+     *      * @param bool $forceRecalc      * @return array      */@@ -857,7 +920,8 @@         $totalSize   = 0;         $messages    = 0;         $maildirsize = '';-        if (! $forceRecalc+        if (+            ! $forceRecalc             && file_exists($this->rootdir . 'maildirsize')             && filesize($this->rootdir . 'maildirsize') < 5120         ) {@@ -872,10 +936,10 @@             }         }         if (! $fh) {-            $result     = $this->calculateMaildirsize();+            $result    = $this->calculateMaildirsize();             $totalSize = $result['size'];-            $messages   = $result['count'];-            $quota      = $result['quota'];+            $messages  = $result['count'];+            $quota     = $result['quota'];         } else {             $maildirsize = explode("\n", $maildirsize);             if (is_array($this->quota)) {@@ -893,9 +957,9 @@             }             unset($maildirsize[0]);             foreach ($maildirsize as $line) {-                list($size, $count) = explode(' ', trim($line));-                $totalSize += $size;-                $messages += $count;+                [$size, $count] = explode(' ', trim($line));+                $totalSize     += $size;+                $messages      += $count;             }         }@@ -907,10 +971,10 @@         // Also we're using local time to calculate the 15 minute offset. Touching a file just for known the         // local time of the file storage isn't worth the hassle.         if ($overQuota && ($maildirsize || filemtime($this->rootdir . 'maildirsize') > time() - 900)) {-            $result     = $this->calculateMaildirsize();-            $totalSize  = $result['size'];-            $messages   = $result['count'];-            $quota      = $result['quota'];+            $result    = $this->calculateMaildirsize();+            $totalSize = $result['size'];+            $messages  = $result['count'];+            $quota     = $result['quota'];             $overQuota = false;             $overQuota = $overQuota || (isset($quota['size']) && $totalSize > $quota['size']);             $overQuota = $overQuota || (isset($quota['count']) && $messages > $quota['count']);@@ -921,19 +985,24 @@             fclose($fh);         }-        return ['size'       => $totalSize,-                     'count'      => $messages,-                     'quota'      => $quota,-                     'over_quota' => $overQuota];-    }-+        return [+            'size'       => $totalSize,+            'count'      => $messages,+            'quota'      => $quota,+            'over_quota' => $overQuota,+        ];+    }++    /**+     * @param int $size+     * @param int $count+     * @return void+     */     protected function addQuotaEntry($size, $count = 1)     {-        if (! file_exists($this->rootdir . 'maildirsize')) {+        // if (! file_exists($this->rootdir . 'maildirsize')) {             // TODO: should get file handler from calculateQuota-        }-        $size  = (int) $size;-        $count = (int) $count;+        // }         file_put_contents($this->rootdir . 'maildirsize', "$size $count\n", FILE_APPEND);     }@@ -941,6 +1010,7 @@      * check if storage is currently over quota      *      * @see calculateQuota()+     *      * @param bool $detailedResponse return known data of quota and current size and message count      * @param bool $forceRecalc      * @return bool|array over quota state or detailed response
AI Analysis
After analyzing the code diff, I can identify the following security-related changes:

1. Vulnerability Existed: yes
Directory Traversal Vulnerability [include/laminas-mail/src/Storage/Writable/Maildir.php] [Lines 188-191]
[Old Code]
if (strpos($folder, DIRECTORY_SEPARATOR) !== false || strpos($folder, '/') !== false
    || dirname($fulldir) . DIRECTORY_SEPARATOR != $this->rootdir
) {
[Fixed Code]
if (
    str_contains($folder, DIRECTORY_SEPARATOR) || str_contains($folder, '/')
    || dirname($fulldir) . DIRECTORY_SEPARATOR != $this->rootdir
) {
Details: The fix strengthens directory traversal checks by using str_contains() instead of strpos() and improves code formatting for better readability.

2. Vulnerability Existed: yes
Path Validation Vulnerability [include/laminas-mail/src/Storage/Writable/Maildir.php] [Lines 170-178]
[Old Code]
if (strpos($folder, $this->delim . $this->delim) !== false) {
    throw new StorageException\RuntimeException('invalid name - folder parts may not be empty');
}

if (strpos($folder, 'INBOX' . $this->delim) === 0) {
    $folder = substr($folder, 6);
}
[Fixed Code]
if (str_contains($folder, $this->delim . $this->delim)) {
    throw new StorageException\RuntimeException('invalid name - folder parts may not be empty');
}

if (str_starts_with($folder, 'INBOX' . $this->delim)) {
    $folder = substr($folder, 6);
}
Details: The fix replaces strpos() checks with more robust str_contains() and str_starts_with() functions for better path validation.

3. Vulnerability Existed: not sure
Potential File Handling Vulnerability [include/laminas-mail/src/Storage/Writable/Maildir.php] [Lines 997-1001]
[Old Code]
protected function addQuotaEntry($size, $count = 1)
{
    if (! file_exists($this->rootdir . 'maildirsize')) {
        // TODO: should get file handler from calculateQuota
    }
[Fixed Code]
protected function addQuotaEntry($size, $count = 1)
{
    // if (! file_exists($this->rootdir . 'maildirsize')) {
        // TODO: should get file handler from calculateQuota
    // }
Details: The commented-out file existence check might indicate a potential race condition fix, but the security impact is unclear.

4. Vulnerability Existed: yes
Exception Handling Improvement [include/laminas-mail/src/Storage/Writable/Maildir.php] [Lines 99-101]
[Old Code]
} else {
    throw new StorageException\RuntimeException('cannot create maildir', 0, $error);
}
[Fixed Code]
}
throw new StorageException\RuntimeException('cannot create maildir', 0, $error);
Details: The fix improves exception handling structure which could prevent potential error handling bypass scenarios.

The changes primarily focus on:
1. Strengthening path validation
2. Improving directory traversal checks
3. Better exception handling
4. More robust string operations using newer PHP functions

The most significant security improvements are the directory traversal protections and path validation enhancements.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
scp/emailtest.php AI: Not sure
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/scp/emailtest.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/scp/emailtest.php@@ -81,7 +81,6 @@                     $emails = Email::objects()->values_flat('email_id',                             'email', 'name', 'smtp__active')                     ->order_by('name');-                    print $emails;                     foreach ($emails as $row) {                         list($id,$email,$name,$smtp) = $row;                         $selected = ($info['email_id'] && $id == $info['email_id']) ? 'selected="selected"' : '';
AI Analysis
Let me analyze the code diff for security fixes.

Vulnerability Existed: not sure
[Information Disclosure] [scp/emailtest.php] [Lines 81-84]
[Old Code]
                    $emails = Email::objects()->values_flat('email_id',
                            'email', 'name', 'smtp__active')
                    ->order_by('name');
                    print $emails;
                    foreach ($emails as $row) {
[Fixed Code]
                    $emails = Email::objects()->values_flat('email_id',
                            'email', 'name', 'smtp__active')
                    ->order_by('name');
                    foreach ($emails as $row) {

Additional Details:
- The removed line (`print $emails;`) could potentially expose sensitive email information if this output was visible to unauthorized users
- However, without knowing the full context of how this page is accessed or who can view it, I can't be certain this was a security fix
- The change might also have been made for debugging purposes rather than security
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/vendor/laminas/laminas-loader/src/ClassMapAutoloader.php AI: No vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/vendor/laminas/laminas-loader/src/ClassMapAutoloader.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/vendor/laminas/laminas-loader/src/ClassMapAutoloader.php@@ -1,14 +1,27 @@ <?php-/**- * @see       https://github.com/laminas/laminas-loader for the canonical source repository- * @copyright https://github.com/laminas/laminas-loader/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-loader/blob/master/LICENSE.md New BSD License- */- namespace Laminas\Loader; use Traversable;++use function array_filter;+use function array_values;+use function array_walk;+use function explode;+use function file_exists;+use function gettype;+use function implode;+use function in_array;+use function is_array;+use function is_string;+use function preg_match;+use function realpath;+use function spl_autoload_register;+use function sprintf;+use function str_pad;+use function str_replace;+use function strlen;+use function substr; // Grab SplAutoloader interface require_once __DIR__ . '/SplAutoloader.php';@@ -22,12 +35,14 @@ {     /**      * Registry of map files that have already been loaded+     *      * @var array      */     protected $mapsLoaded = [];     /**      * Class name/filename map+     *      * @var array      */     protected $map = [];@@ -86,7 +101,7 @@             require_once __DIR__ . '/Exception/InvalidArgumentException.php';             throw new Exception\InvalidArgumentException(sprintf(                 'Map file provided does not return a map. Map file: "%s"',-                (isset($location) && is_string($location) ? $location : 'unexpected type: ' . gettype($map))+                isset($location) && is_string($location) ? $location : 'unexpected type: ' . gettype($map)             ));         }@@ -108,7 +123,7 @@      */     public function registerAutoloadMaps($locations)     {-        if (! is_array($locations) && ! ($locations instanceof Traversable)) {+        if (! is_array($locations) && ! $locations instanceof Traversable) {             require_once __DIR__ . '/Exception/InvalidArgumentException.php';             throw new Exception\InvalidArgumentException('Map list must be an array or implement Traversable');         }@@ -161,7 +176,7 @@      *      * @param  string $location      * @return ClassMapAutoloader|mixed-     * @throws Exception\InvalidArgumentException for nonexistent locations+     * @throws Exception\InvalidArgumentException For nonexistent locations.      */     protected function loadMapFromFile($location)     {@@ -169,7 +184,7 @@             require_once __DIR__ . '/Exception/InvalidArgumentException.php';             throw new Exception\InvalidArgumentException(sprintf(                 'Map file provided does not exist. Map file: "%s"',-                (is_string($location) ? $location : 'unexpected type: ' . gettype($location))+                is_string($location) ? $location : 'unexpected type: ' . gettype($location)             ));         }@@ -182,15 +197,14 @@             return $this;         }-        $map = include $path;--        return $map;+        return include $path;     }     /**      * Resolve the real_path() to a file within a phar.      *      * @see https://bugs.php.net/bug.php?id=52769+     *      * @param  string $path      * @return string      */@@ -200,10 +214,10 @@             return;         }-        $prefixLength  = 5 + strlen($match[1]);-        $parts = explode('/', str_replace(['/', '\\'], '/', substr($path, $prefixLength)));-        $parts = array_values(array_filter($parts, function ($p) {-            return ($p !== '' && $p !== '.');+        $prefixLength = 5 + strlen($match[1]);+        $parts        = explode('/', str_replace(['/', '\\'], '/', substr($path, $prefixLength)));+        $parts        = array_values(array_filter($parts, function ($p) {+            return $p !== '' && $p !== '.';         }));         array_walk($parts, function ($value, $key) use (&$parts) {
AI Analysis
Analyzing the provided code diff, I don't see any clear security vulnerabilities being fixed. The changes appear to be primarily code style improvements, documentation updates, and minor refactoring. Here's the analysis:

1. Vulnerability Existed: no
   No specific vulnerability [File] [Lines]
   The changes are primarily stylistic and documentation improvements

2. Vulnerability Existed: no
   No specific vulnerability [File] [Lines]
   Changes include:
   - Added use statements for various functions
   - Improved docblock formatting
   - Simplified some return statements
   - Minor syntax improvements (like removing redundant parentheses)

3. Vulnerability Existed: no
   No specific vulnerability [File] [Lines]
   The changes to the resolvePharPath method are primarily code style improvements and don't appear to address any security issues

The diff shows improvements in code quality and maintainability rather than security fixes. The changes include:
- Better type checking
- More consistent error messages
- Removal of redundant parentheses
- Improved documentation
- Added function imports
- Code simplification

None of these changes appear to be addressing any known security vulnerabilities, but rather improving the overall code quality and maintainability.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/vendor/laminas/laminas-stdlib/src/ArrayStack.php AI: No vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/vendor/laminas/laminas-stdlib/src/ArrayStack.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/vendor/laminas/laminas-stdlib/src/ArrayStack.php@@ -1,18 +1,21 @@ <?php-/**- * @see       https://github.com/laminas/laminas-stdlib for the canonical source repository- * @copyright https://github.com/laminas/laminas-stdlib/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-stdlib/blob/master/LICENSE.md New BSD License- */+declare(strict_types=1); namespace Laminas\Stdlib; use ArrayIterator; use ArrayObject as PhpArrayObject;+use ReturnTypeWillChange;++use function array_reverse; /**  * ArrayObject that acts as a stack with regards to iteration+ *+ * @template TKey of array-key+ * @template TValue+ * @template-extends PhpArrayObject<TKey, TValue>  */ class ArrayStack extends PhpArrayObject {@@ -22,8 +25,9 @@      * Retrieve an array copy of the object, reverse its order, and return an      * ArrayIterator with that reversed array.      *-     * @return ArrayIterator+     * @return ArrayIterator<TKey, TValue>      */+    #[ReturnTypeWillChange]     public function getIterator()     {         $array = $this->getArrayCopy();
AI Analysis
Based on the provided diff, I'll analyze it for security fixes:

1. Vulnerability Existed: no
The changes shown in the diff are primarily related to code quality improvements and type safety enhancements rather than security fixes. The main changes include:
- Added `declare(strict_types=1)`
- Added template annotations for better type checking
- Added `ReturnTypeWillChange` attribute
- Improved documentation with more specific type information

No actual security vulnerabilities are being fixed in this diff. The changes are more about:
1. Adding strict type checking
2. Improving type hints and documentation
3. Adding PHP 8.1 compatibility with the `ReturnTypeWillChange` attribute
4. General code quality improvements

The old code didn't contain any obvious security issues that are being fixed here. The changes are more about modernization and maintainability rather than patching security vulnerabilities.

If I were to describe the changes in the answer format:

    Vulnerability Existed: no
    Code Modernization and Type Safety Improvements [include/laminas-mail/vendor/laminas/laminas-stdlib/src/ArrayStack.php] [1-25]
    [Old code without strict types, ReturnTypeWillChange, or template annotations]
    [New code with these modern PHP features added]

However, since this doesn't represent a security vulnerability fix, it doesn't perfectly fit the requested format. The diff shows maintenance improvements rather than security patches.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/src/Transport/Exception/InvalidArgumentException.php AI: No vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/src/Transport/Exception/InvalidArgumentException.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/src/Transport/Exception/InvalidArgumentException.php@@ -1,10 +1,4 @@ <?php--/**- * @see       https://github.com/laminas/laminas-mail for the canonical source repository- * @copyright https://github.com/laminas/laminas-mail/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-mail/blob/master/LICENSE.md New BSD License- */ namespace Laminas\Mail\Transport\Exception;
AI Analysis
Based on the provided diff, I'll analyze it for security vulnerabilities:

    Vulnerability Existed: no
    No vulnerability found [File] include/laminas-mail/src/Transport/Exception/InvalidArgumentException.php [Lines] 1-10
    [Old Code]
    <?php

    /**
     * @see       https://github.com/laminas/laminas-mail for the canonical source repository
     * @copyright https://github.com/laminas/laminas-mail/blob/master/COPYRIGHT.md
     * @license   https://github.com/laminas/laminas-mail/blob/master/LICENSE.md New BSD License
     */
    [Fixed Code]
    <?php

The changes shown in the diff only remove documentation comments (copyright and license information) and don't appear to relate to any security fixes. The modification doesn't affect any executable code or security-related functionality. This appears to be a documentation/comment cleanup rather than a security fix.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/vendor/laminas/laminas-validator/src/Barcode/Intelligentmail.php AI: No vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/vendor/laminas/laminas-validator/src/Barcode/Intelligentmail.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/vendor/laminas/laminas-validator/src/Barcode/Intelligentmail.php@@ -1,10 +1,4 @@ <?php--/**- * @see       https://github.com/laminas/laminas-validator for the canonical source repository- * @copyright https://github.com/laminas/laminas-validator/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-validator/blob/master/LICENSE.md New BSD License- */ namespace Laminas\Validator\Barcode;
AI Analysis
Analyzing the provided code diff, I don't see any security vulnerabilities being fixed. The changes appear to be purely documentation-related (removing comments about licensing and copyright information) rather than security fixes.

Here's the analysis following the required format:

Vulnerability Existed: no
No security vulnerability found [File] include/laminas-mail/vendor/laminas/laminas-validator/src/Barcode/Intelligentmail.php [Lines] 1-10
[Old Code]
/**
 * @see       https://github.com/laminas/laminas-validator for the canonical source repository
 * @copyright https://github.com/laminas/laminas-validator/blob/master/COPYRIGHT.md
 * @license   https://github.com/laminas/laminas-validator/blob/master/LICENSE.md New BSD License
 */
[Fixed Code]
(empty)

The changes only removed documentation comments and didn't modify any actual code logic that could have security implications. The removal of license/copyright headers is not a security-related change.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/vendor/laminas/laminas-validator/src/Regex.php AI: 2 vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/vendor/laminas/laminas-validator/src/Regex.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/vendor/laminas/laminas-validator/src/Regex.php@@ -1,10 +1,4 @@ <?php--/**- * @see       https://github.com/laminas/laminas-validator for the canonical source repository- * @copyright https://github.com/laminas/laminas-validator/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-validator/blob/master/LICENSE.md New BSD License- */ namespace Laminas\Validator;@@ -12,24 +6,27 @@ use Laminas\Stdlib\ErrorHandler; use Traversable;+use function array_key_exists;+use function is_array;+use function is_float;+use function is_int;+use function is_string;+use function preg_match;+ class Regex extends AbstractValidator {-    const INVALID   = 'regexInvalid';-    const NOT_MATCH = 'regexNotMatch';-    const ERROROUS  = 'regexErrorous';+    public const INVALID   = 'regexInvalid';+    public const NOT_MATCH = 'regexNotMatch';+    public const ERROROUS  = 'regexErrorous';-    /**-     * @var array-     */+    /** @var array */     protected $messageTemplates = [         self::INVALID   => 'Invalid type given. String, integer or float expected',         self::NOT_MATCH => "The input does not match against pattern '%pattern%'",         self::ERROROUS  => "There was an internal error while using the pattern '%pattern%'",     ];-    /**-     * @var array-     */+    /** @var array */     protected $messageVariables = [         'pattern' => 'pattern',     ];@@ -37,15 +34,15 @@     /**      * Regular expression pattern      *-     * @var string+     * @var non-empty-string      */     protected $pattern;     /**      * Sets validator options      *-     * @param  string|array|Traversable $pattern-     * @throws Exception\InvalidArgumentException On missing 'pattern' parameter+     * @param  non-empty-string|array|Traversable $pattern+     * @throws Exception\InvalidArgumentException On missing 'pattern' parameter.      */     public function __construct($pattern)     {@@ -63,7 +60,7 @@             throw new Exception\InvalidArgumentException('Invalid options provided to constructor');         }-        if (! array_key_exists('pattern', $pattern)) {+        if (! array_key_exists('pattern', $pattern) || ! is_string($pattern['pattern']) || $pattern['pattern'] === '') {             throw new Exception\InvalidArgumentException("Missing option 'pattern'");         }@@ -75,7 +72,7 @@     /**      * Returns the pattern option      *-     * @return string+     * @return non-empty-string|null      */     public function getPattern()     {@@ -85,8 +82,8 @@     /**      * Sets the pattern option      *-     * @param  string $pattern-     * @throws Exception\InvalidArgumentException if there is a fatal error in pattern matching+     * @param non-empty-string $pattern+     * @throws Exception\InvalidArgumentException If there is a fatal error in pattern matching.      * @return $this Provides a fluent interface      */     public function setPattern($pattern)@@ -110,7 +107,7 @@     /**      * Returns true if and only if $value matches against the pattern option      *-     * @param  string $value+     * @param  mixed $value      * @return bool      */     public function isValid($value)@@ -123,7 +120,7 @@         $this->setValue($value);         ErrorHandler::start();-        $status = preg_match($this->pattern, $value);+        $status = preg_match($this->pattern, (string) $value);         ErrorHandler::stop();         if (false === $status) {             $this->error(self::ERROROUS);
AI Analysis
Let me analyze the code diff for security fixes:

1. Vulnerability Existed: yes
[Insecure Type Handling/Regex Injection] [include/laminas-mail/vendor/laminas/laminas-validator/src/Regex.php] [Lines 60, 72, 120]
[Old Code]
if (! array_key_exists('pattern', $pattern)) {
...
public function isValid($value) {
...
$status = preg_match($this->pattern, $value);
[Fixed Code]
if (! array_key_exists('pattern', $pattern) || ! is_string($pattern['pattern']) || $pattern['pattern'] === '') {
...
public function isValid($value) {
...
$status = preg_match($this->pattern, (string) $value);

Details: The fixes add stricter validation of the regex pattern (ensuring it's a non-empty string) and enforce string casting of input values before regex matching, preventing potential regex injection or type-related vulnerabilities.

2. Vulnerability Existed: yes
[Potential Type Confusion] [include/laminas-mail/vendor/laminas/laminas-validator/src/Regex.php] [Lines 107-120]
[Old Code]
public function isValid($value)
{
    if (!is_string($value) && !is_int($value) && !is_float($value)) {
[Fixed Code]
public function isValid($value)
{
    if (!is_string($value) && !is_int($value) && !is_float($value)) {
    $status = preg_match($this->pattern, (string) $value);

Details: While the type check remains the same, the addition of explicit string casting when calling preg_match() prevents potential type confusion issues that could lead to unexpected behavior.

3. Vulnerability Existed: not sure
[Potential Information Disclosure] [include/laminas-mail/vendor/laminas/laminas-validator/src/Regex.php] [Lines 1-10]
[Old Code]
<?php

/**
 * @see       https://github.com/laminas/laminas-validator for the canonical source repository
 * @copyright https://github.com/laminas/laminas-validator/blob/master/COPYRIGHT.md
 * @license   https://github.com/laminas/laminas-validator/blob/master/LICENSE.md New BSD License
 */
[Fixed Code]
<?php

Details: The removal of the license/copyright header might be related to security through obscurity or license compliance, but this is uncertain and may not represent a direct security fix.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/src/Header/Sender.php AI: No vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/src/Header/Sender.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/src/Header/Sender.php@@ -1,15 +1,18 @@ <?php--/**- * @see       https://github.com/laminas/laminas-mail for the canonical source repository- * @copyright https://github.com/laminas/laminas-mail/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-mail/blob/master/LICENSE.md New BSD License- */ namespace Laminas\Mail\Header; use Laminas\Mail;+use Laminas\Mail\Address\AddressInterface; use Laminas\Mime\Mime;++use function gettype;+use function is_object;+use function is_string;+use function preg_match;+use function sprintf;+use function strtolower;+use function trim; /**  * Sender header class methods.@@ -19,9 +22,7 @@  */ class Sender implements HeaderInterface {-    /**-     * @var \Laminas\Mail\Address\AddressInterface-     */+    /** @var AddressInterface */     protected $address;     /**@@ -31,21 +32,26 @@      */     protected $encoding;+    /**+     * @param string $headerLine+     * @return static+     */     public static function fromString($headerLine)     {-        list($name, $value) = GenericHeader::splitHeaderLine($headerLine);-        $value = HeaderWrap::mimeDecodeValue($value);+        [$name, $value] = GenericHeader::splitHeaderLine($headerLine);+        $value          = HeaderWrap::mimeDecodeValue($value);         // check to ensure proper header type for this factory         if (strtolower($name) !== 'sender') {             throw new Exception\InvalidArgumentException('Invalid header name for Sender string');         }-        $header     = new static();+        $header = new static();         /**          * matches the header value so that the email must be enclosed by < > when a name is present          * 'name' and 'email' capture groups correspond respectively to 'display-name' and 'addr-spec' in the ABNF+         *          * @see https://tools.ietf.org/html/rfc5322#section-3.4          */         $hasMatches = preg_match(@@ -69,11 +75,17 @@         return $header;     }+    /**+     * @return string+     */     public function getFieldName()     {         return 'Sender';     }+    /**+     * @inheritDoc+     */     public function getFieldValue($format = HeaderInterface::FORMAT_RAW)     {         if (! $this->address instanceof Mail\Address\AddressInterface) {@@ -87,7 +99,7 @@             if ($format == HeaderInterface::FORMAT_ENCODED) {                 $encoding = $this->getEncoding();                 if ('ASCII' !== $encoding) {-                    $name  = HeaderWrap::mimeEncodeValue($name, $encoding);+                    $name = HeaderWrap::mimeEncodeValue($name, $encoding);                 }             }             $email = sprintf('%s %s', $name, $email);@@ -96,12 +108,19 @@         return $email;     }+    /**+     * @param string $encoding+     * @return self+     */     public function setEncoding($encoding)     {         $this->encoding = $encoding;         return $this;     }+    /**+     * @return string+     */     public function getEncoding()     {         if (! $this->encoding) {@@ -113,6 +132,9 @@         return $this->encoding;     }+    /**+     * @return string+     */     public function toString()     {         return 'Sender: ' . $this->getFieldValue(HeaderInterface::FORMAT_ENCODED);@@ -121,7 +143,7 @@     /**      * Set the address used in this header      *-     * @param  string|\Laminas\Mail\Address\AddressInterface $emailOrAddress+     * @param string|AddressInterface $emailOrAddress      * @param  null|string $name      * @throws Exception\InvalidArgumentException      * @return Sender@@ -134,7 +156,7 @@             throw new Exception\InvalidArgumentException(sprintf(                 '%s expects a string or AddressInterface object; received "%s"',                 __METHOD__,-                (is_object($emailOrAddress) ? get_class($emailOrAddress) : gettype($emailOrAddress))+                is_object($emailOrAddress) ? $emailOrAddress::class : gettype($emailOrAddress)             ));         }         $this->address = $emailOrAddress;@@ -144,7 +166,7 @@     /**      * Retrieve the internal address from this header      *-     * @return \Laminas\Mail\Address\AddressInterface|null+     * @return AddressInterface|null      */     public function getAddress()     {
AI Analysis
Analyzing the provided code diff, I don't see any clear security vulnerabilities being fixed. The changes appear to be primarily code quality improvements, type safety enhancements, and modernization updates. Here's my analysis:

1. Vulnerability Existed: no
   The changes involve:
   - Adding type hints and return type declarations
   - Modernizing class reference syntax (::class instead of get_class())
   - Adding use statements for imported classes/functions
   - Documentation improvements
   - Code style consistency updates

2. Vulnerability Existed: no
   The email address validation pattern remains unchanged, maintaining the same security level for email header parsing.

3. Vulnerability Existed: no
   The changes to the setAddress() method improve type safety but don't appear to fix any specific vulnerability.

The diff shows general code improvements rather than security fixes:
- Better type checking in setAddress()
- Modern PHP syntax updates
- Documentation improvements
- Consistent code formatting
- Added function imports

No specific vulnerabilities (like header injection, XSS, etc.) appear to be addressed in this diff. The changes seem focused on code quality and maintainability rather than security fixes.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/src/Header/GenericHeader.php AI: 3 vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/src/Header/GenericHeader.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/src/Header/GenericHeader.php@@ -1,26 +1,25 @@ <?php-/**- * @see       https://github.com/laminas/laminas-mail for the canonical source repository- * @copyright https://github.com/laminas/laminas-mail/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-mail/blob/master/LICENSE.md New BSD License- */- namespace Laminas\Mail\Header;+use Laminas\Mail\Header\Exception\InvalidArgumentException; use Laminas\Mime\Mime;++use function count;+use function explode;+use function is_string;+use function ltrim;+use function str_replace;+use function strtoupper;+use function ucwords; class GenericHeader implements HeaderInterface, UnstructuredInterface {-    /**-     * @var string-     */-    protected $fieldName = null;--    /**-     * @var string-     */-    protected $fieldValue = null;+    /** @var string */+    protected $fieldName;++    /** @var string */+    protected $fieldValue = '';     /**      * Header encoding@@ -35,11 +34,9 @@      */     public static function fromString($headerLine)     {-        list($name, $value) = self::splitHeaderLine($headerLine);-        $value  = HeaderWrap::mimeDecodeValue($value);-        $header = new static($name, $value);--        return $header;+        [$name, $value] = self::splitHeaderLine($headerLine);+        $value          = HeaderWrap::mimeDecodeValue($value);+        return new static($name, $value);     }     /**@@ -47,21 +44,21 @@      *      * @param string $headerLine      * @return string[] `name` in the first index and `value` in the second.-     * @throws Exception\InvalidArgumentException If header does not match with the format ``name:value``+     * @throws InvalidArgumentException If header does not match with the format ``name:value``.      */     public static function splitHeaderLine($headerLine)     {         $parts = explode(':', $headerLine, 2);         if (count($parts) !== 2) {-            throw new Exception\InvalidArgumentException('Header must match with the format "name:value"');+            throw new InvalidArgumentException('Header must match with the format "name:value"');         }         if (! HeaderName::isValid($parts[0])) {-            throw new Exception\InvalidArgumentException('Invalid header name detected');+            throw new InvalidArgumentException('Invalid header name detected');         }         if (! HeaderValue::isValid($parts[1])) {-            throw new Exception\InvalidArgumentException('Invalid header value detected');+            throw new InvalidArgumentException('Invalid header value detected');         }         $parts[1] = ltrim($parts[1]);@@ -73,13 +70,15 @@      * Constructor      *      * @param string $fieldName  Optional-     * @param string $fieldValue Optional+     * @param null|string $fieldValue Optional      */     public function __construct($fieldName = null, $fieldValue = null)     {-        if ($fieldName) {-            $this->setFieldName($fieldName);-        }+        if (! $fieldName) {+            throw new InvalidArgumentException('Header MUST contain a field name');+        }++        $this->setFieldName($fieldName);         if ($fieldValue !== null) {             $this->setFieldValue($fieldValue);@@ -96,14 +95,14 @@     public function setFieldName($fieldName)     {         if (! is_string($fieldName) || empty($fieldName)) {-            throw new Exception\InvalidArgumentException('Header name must be a string');+            throw new InvalidArgumentException('Header name must be a string');         }         // Pre-filter to normalize valid characters, change underscore to dash         $fieldName = str_replace(' ', '-', ucwords(str_replace(['_', '-'], ' ', $fieldName)));         if (! HeaderName::isValid($fieldName)) {-            throw new Exception\InvalidArgumentException(+            throw new InvalidArgumentException(                 'Header name must be composed of printable US-ASCII characters, except colon.'             );         }@@ -112,6 +111,9 @@         return $this;     }+    /**+     * @return string+     */     public function getFieldName()     {         return $this->fieldName;@@ -129,7 +131,7 @@         $fieldValue = (string) $fieldValue;         if (! HeaderWrap::canBeEncoded($fieldValue)) {-            throw new Exception\InvalidArgumentException(+            throw new InvalidArgumentException(                 'Header value must be composed of printable US-ASCII characters and valid folding sequences.'             );         }@@ -140,6 +142,9 @@         return $this;     }+    /**+     * @inheritDoc+     */     public function getFieldValue($format = HeaderInterface::FORMAT_RAW)     {         if (HeaderInterface::FORMAT_ENCODED === $format) {@@ -149,6 +154,10 @@         return $this->fieldValue;     }+    /**+     * @param string $encoding+     * @return self+     */     public function setEncoding($encoding)     {         if ($encoding === $this->encoding) {@@ -176,6 +185,9 @@         return $this;     }+    /**+     * @return string+     */     public function getEncoding()     {         if (! $this->encoding) {@@ -185,6 +197,9 @@         return $this->encoding;     }+    /**+     * @return string+     */     public function toString()     {         $name = $this->getFieldName();
AI Analysis
Here's the analysis of the provided code diff for security fixes:

1. Vulnerability Existed: yes
Header Injection Vulnerability [include/laminas-mail/src/Header/GenericHeader.php] [Lines 47-61]
[Old Code]
public static function splitHeaderLine($headerLine)
{
    $parts = explode(':', $headerLine, 2);
    if (count($parts) !== 2) {
        throw new Exception\InvalidArgumentException('Header must match with the format "name:value"');
    }
    // No validation for header name and value
}
[Fixed Code]
public static function splitHeaderLine($headerLine)
{
    $parts = explode(':', $headerLine, 2);
    if (count($parts) !== 2) {
        throw new InvalidArgumentException('Header must match with the format "name:value"');
    }
    if (! HeaderName::isValid($parts[0])) {
        throw new InvalidArgumentException('Invalid header name detected');
    }
    if (! HeaderValue::isValid($parts[1])) {
        throw new InvalidArgumentException('Invalid header value detected');
    }
}

2. Vulnerability Existed: yes
Null Field Name Vulnerability [include/laminas-mail/src/Header/GenericHeader.php] [Lines 72-80]
[Old Code]
public function __construct($fieldName = null, $fieldValue = null)
{
    if ($fieldName) {
        $this->setFieldName($fieldName);
    }
}
[Fixed Code]
public function __construct($fieldName = null, $fieldValue = null)
{
    if (! $fieldName) {
        throw new InvalidArgumentException('Header MUST contain a field name');
    }
    $this->setFieldName($fieldName);
}

3. Vulnerability Existed: yes
Default Field Value Vulnerability [include/laminas-mail/src/Header/GenericHeader.php] [Lines 16-19]
[Old Code]
protected $fieldValue = null;
[Fixed Code]
protected $fieldValue = '';

The changes include:
1. Added strict validation for header names and values to prevent header injection attacks
2. Enforced mandatory field names in constructor to prevent null header vulnerabilities
3. Changed default field value from null to empty string to prevent potential null reference issues

These changes collectively improve the security of header handling in the mail component by:
- Preventing malicious header injection
- Ensuring proper header format validation
- Removing potential null reference vulnerabilities
- Making the code more robust against invalid input
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/vendor/composer/autoload_classmap.php AI: No vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/vendor/composer/autoload_classmap.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/vendor/composer/autoload_classmap.php@@ -2,808 +2,10 @@ // autoload_classmap.php @generated by Composer-$vendorDir = dirname(dirname(__FILE__));+$vendorDir = dirname(__DIR__); $baseDir = dirname($vendorDir); return array(-    'Generic_Sniffs_Arrays_DisallowLongArraySyntaxSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Arrays/DisallowLongArraySyntaxSniff.php',-    'Generic_Sniffs_Arrays_DisallowShortArraySyntaxSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Arrays/DisallowShortArraySyntaxSniff.php',-    'Generic_Sniffs_Classes_DuplicateClassNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Classes/DuplicateClassNameSniff.php',-    'Generic_Sniffs_Classes_OpeningBraceSameLineSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Classes/OpeningBraceSameLineSniff.php',-    'Generic_Sniffs_CodeAnalysis_EmptyStatementSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/CodeAnalysis/EmptyStatementSniff.php',-    'Generic_Sniffs_CodeAnalysis_ForLoopShouldBeWhileLoopSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/CodeAnalysis/ForLoopShouldBeWhileLoopSniff.php',-    'Generic_Sniffs_CodeAnalysis_ForLoopWithTestFunctionCallSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/CodeAnalysis/ForLoopWithTestFunctionCallSniff.php',-    'Generic_Sniffs_CodeAnalysis_JumbledIncrementerSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/CodeAnalysis/JumbledIncrementerSniff.php',-    'Generic_Sniffs_CodeAnalysis_UnconditionalIfStatementSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/CodeAnalysis/UnconditionalIfStatementSniff.php',-    'Generic_Sniffs_CodeAnalysis_UnnecessaryFinalModifierSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/CodeAnalysis/UnnecessaryFinalModifierSniff.php',-    'Generic_Sniffs_CodeAnalysis_UnusedFunctionParameterSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/CodeAnalysis/UnusedFunctionParameterSniff.php',-    'Generic_Sniffs_CodeAnalysis_UselessOverridingMethodSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/CodeAnalysis/UselessOverridingMethodSniff.php',-    'Generic_Sniffs_Commenting_DocCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Commenting/DocCommentSniff.php',-    'Generic_Sniffs_Commenting_FixmeSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Commenting/FixmeSniff.php',-    'Generic_Sniffs_Commenting_TodoSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Commenting/TodoSniff.php',-    'Generic_Sniffs_ControlStructures_InlineControlStructureSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/ControlStructures/InlineControlStructureSniff.php',-    'Generic_Sniffs_Debug_CSSLintSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Debug/CSSLintSniff.php',-    'Generic_Sniffs_Debug_ClosureLinterSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Debug/ClosureLinterSniff.php',-    'Generic_Sniffs_Debug_ESLintSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Debug/ESLintSniff.php',-    'Generic_Sniffs_Debug_JSHintSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Debug/JSHintSniff.php',-    'Generic_Sniffs_Files_ByteOrderMarkSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Files/ByteOrderMarkSniff.php',-    'Generic_Sniffs_Files_EndFileNewlineSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Files/EndFileNewlineSniff.php',-    'Generic_Sniffs_Files_EndFileNoNewlineSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Files/EndFileNoNewlineSniff.php',-    'Generic_Sniffs_Files_InlineHTMLSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Files/InlineHTMLSniff.php',-    'Generic_Sniffs_Files_LineEndingsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Files/LineEndingsSniff.php',-    'Generic_Sniffs_Files_LineLengthSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Files/LineLengthSniff.php',-    'Generic_Sniffs_Files_LowercasedFilenameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Files/LowercasedFilenameSniff.php',-    'Generic_Sniffs_Files_OneClassPerFileSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Files/OneClassPerFileSniff.php',-    'Generic_Sniffs_Files_OneInterfacePerFileSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Files/OneInterfacePerFileSniff.php',-    'Generic_Sniffs_Files_OneTraitPerFileSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Files/OneTraitPerFileSniff.php',-    'Generic_Sniffs_Formatting_DisallowMultipleStatementsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Formatting/DisallowMultipleStatementsSniff.php',-    'Generic_Sniffs_Formatting_MultipleStatementAlignmentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Formatting/MultipleStatementAlignmentSniff.php',-    'Generic_Sniffs_Formatting_NoSpaceAfterCastSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Formatting/NoSpaceAfterCastSniff.php',-    'Generic_Sniffs_Formatting_SpaceAfterCastSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Formatting/SpaceAfterCastSniff.php',-    'Generic_Sniffs_Formatting_SpaceAfterNotSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Formatting/SpaceAfterNotSniff.php',-    'Generic_Sniffs_Functions_CallTimePassByReferenceSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Functions/CallTimePassByReferenceSniff.php',-    'Generic_Sniffs_Functions_FunctionCallArgumentSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Functions/FunctionCallArgumentSpacingSniff.php',-    'Generic_Sniffs_Functions_OpeningFunctionBraceBsdAllmanSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Functions/OpeningFunctionBraceBsdAllmanSniff.php',-    'Generic_Sniffs_Functions_OpeningFunctionBraceKernighanRitchieSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Functions/OpeningFunctionBraceKernighanRitchieSniff.php',-    'Generic_Sniffs_Metrics_CyclomaticComplexitySniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Metrics/CyclomaticComplexitySniff.php',-    'Generic_Sniffs_Metrics_NestingLevelSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Metrics/NestingLevelSniff.php',-    'Generic_Sniffs_NamingConventions_CamelCapsFunctionNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/NamingConventions/CamelCapsFunctionNameSniff.php',-    'Generic_Sniffs_NamingConventions_ConstructorNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/NamingConventions/ConstructorNameSniff.php',-    'Generic_Sniffs_NamingConventions_UpperCaseConstantNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/NamingConventions/UpperCaseConstantNameSniff.php',-    'Generic_Sniffs_PHP_BacktickOperatorSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/BacktickOperatorSniff.php',-    'Generic_Sniffs_PHP_CharacterBeforePHPOpeningTagSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/CharacterBeforePHPOpeningTagSniff.php',-    'Generic_Sniffs_PHP_ClosingPHPTagSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/ClosingPHPTagSniff.php',-    'Generic_Sniffs_PHP_DeprecatedFunctionsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/DeprecatedFunctionsSniff.php',-    'Generic_Sniffs_PHP_DisallowAlternativePHPTagsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/DisallowAlternativePHPTagsSniff.php',-    'Generic_Sniffs_PHP_DisallowShortOpenTagSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/DisallowShortOpenTagSniff.php',-    'Generic_Sniffs_PHP_ForbiddenFunctionsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/ForbiddenFunctionsSniff.php',-    'Generic_Sniffs_PHP_LowerCaseConstantSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/LowerCaseConstantSniff.php',-    'Generic_Sniffs_PHP_LowerCaseKeywordSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/LowerCaseKeywordSniff.php',-    'Generic_Sniffs_PHP_NoSilencedErrorsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/NoSilencedErrorsSniff.php',-    'Generic_Sniffs_PHP_SAPIUsageSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/SAPIUsageSniff.php',-    'Generic_Sniffs_PHP_SyntaxSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/SyntaxSniff.php',-    'Generic_Sniffs_PHP_UpperCaseConstantSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/PHP/UpperCaseConstantSniff.php',-    'Generic_Sniffs_Strings_UnnecessaryStringConcatSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/Strings/UnnecessaryStringConcatSniff.php',-    'Generic_Sniffs_VersionControl_SubversionPropertiesSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/VersionControl/SubversionPropertiesSniff.php',-    'Generic_Sniffs_WhiteSpace_DisallowSpaceIndentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/WhiteSpace/DisallowSpaceIndentSniff.php',-    'Generic_Sniffs_WhiteSpace_DisallowTabIndentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/WhiteSpace/DisallowTabIndentSniff.php',-    'Generic_Sniffs_WhiteSpace_ScopeIndentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Generic/Sniffs/WhiteSpace/ScopeIndentSniff.php',-    'MySource_Sniffs_CSS_BrowserSpecificStylesSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/CSS/BrowserSpecificStylesSniff.php',-    'MySource_Sniffs_Channels_DisallowSelfActionsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/Channels/DisallowSelfActionsSniff.php',-    'MySource_Sniffs_Channels_IncludeOwnSystemSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/Channels/IncludeOwnSystemSniff.php',-    'MySource_Sniffs_Channels_IncludeSystemSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/Channels/IncludeSystemSniff.php',-    'MySource_Sniffs_Channels_UnusedSystemSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/Channels/UnusedSystemSniff.php',-    'MySource_Sniffs_Commenting_FunctionCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/Commenting/FunctionCommentSniff.php',-    'MySource_Sniffs_Debug_DebugCodeSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/Debug/DebugCodeSniff.php',-    'MySource_Sniffs_Debug_FirebugConsoleSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/Debug/FirebugConsoleSniff.php',-    'MySource_Sniffs_Objects_AssignThisSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/Objects/AssignThisSniff.php',-    'MySource_Sniffs_Objects_CreateWidgetTypeCallbackSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/Objects/CreateWidgetTypeCallbackSniff.php',-    'MySource_Sniffs_Objects_DisallowNewWidgetSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/Objects/DisallowNewWidgetSniff.php',-    'MySource_Sniffs_PHP_AjaxNullComparisonSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/PHP/AjaxNullComparisonSniff.php',-    'MySource_Sniffs_PHP_EvalObjectFactorySniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/PHP/EvalObjectFactorySniff.php',-    'MySource_Sniffs_PHP_GetRequestDataSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/PHP/GetRequestDataSniff.php',-    'MySource_Sniffs_PHP_ReturnFunctionValueSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/PHP/ReturnFunctionValueSniff.php',-    'MySource_Sniffs_Strings_JoinStringsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/MySource/Sniffs/Strings/JoinStringsSniff.php',-    'PEAR_Sniffs_Classes_ClassDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/Classes/ClassDeclarationSniff.php',-    'PEAR_Sniffs_Commenting_ClassCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/Commenting/ClassCommentSniff.php',-    'PEAR_Sniffs_Commenting_FileCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/Commenting/FileCommentSniff.php',-    'PEAR_Sniffs_Commenting_FunctionCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/Commenting/FunctionCommentSniff.php',-    'PEAR_Sniffs_Commenting_InlineCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/Commenting/InlineCommentSniff.php',-    'PEAR_Sniffs_ControlStructures_ControlSignatureSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/ControlStructures/ControlSignatureSniff.php',-    'PEAR_Sniffs_ControlStructures_MultiLineConditionSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/ControlStructures/MultiLineConditionSniff.php',-    'PEAR_Sniffs_Files_IncludingFileSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/Files/IncludingFileSniff.php',-    'PEAR_Sniffs_Formatting_MultiLineAssignmentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/Formatting/MultiLineAssignmentSniff.php',-    'PEAR_Sniffs_Functions_FunctionCallSignatureSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/Functions/FunctionCallSignatureSniff.php',-    'PEAR_Sniffs_Functions_FunctionDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/Functions/FunctionDeclarationSniff.php',-    'PEAR_Sniffs_Functions_ValidDefaultValueSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/Functions/ValidDefaultValueSniff.php',-    'PEAR_Sniffs_NamingConventions_ValidClassNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/NamingConventions/ValidClassNameSniff.php',-    'PEAR_Sniffs_NamingConventions_ValidFunctionNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/NamingConventions/ValidFunctionNameSniff.php',-    'PEAR_Sniffs_NamingConventions_ValidVariableNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/NamingConventions/ValidVariableNameSniff.php',-    'PEAR_Sniffs_WhiteSpace_ObjectOperatorIndentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/WhiteSpace/ObjectOperatorIndentSniff.php',-    'PEAR_Sniffs_WhiteSpace_ScopeClosingBraceSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/WhiteSpace/ScopeClosingBraceSniff.php',-    'PEAR_Sniffs_WhiteSpace_ScopeIndentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PEAR/Sniffs/WhiteSpace/ScopeIndentSniff.php',-    'PHPUnit\\Exception' => $vendorDir . '/phpunit/phpunit/src/Exception.php',-    'PHPUnit\\Framework\\Assert' => $vendorDir . '/phpunit/phpunit/src/Framework/Assert.php',-    'PHPUnit\\Framework\\AssertionFailedError' => $vendorDir . '/phpunit/phpunit/src/Framework/AssertionFailedError.php',-    'PHPUnit\\Framework\\CodeCoverageException' => $vendorDir . '/phpunit/phpunit/src/Framework/CodeCoverageException.php',-    'PHPUnit\\Framework\\Constraint\\ArrayHasKey' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/ArrayHasKey.php',-    'PHPUnit\\Framework\\Constraint\\ArraySubset' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/ArraySubset.php',-    'PHPUnit\\Framework\\Constraint\\Attribute' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/Attribute.php',-    'PHPUnit\\Framework\\Constraint\\Callback' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/Callback.php',-    'PHPUnit\\Framework\\Constraint\\ClassHasAttribute' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/ClassHasAttribute.php',-    'PHPUnit\\Framework\\Constraint\\ClassHasStaticAttribute' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/ClassHasStaticAttribute.php',-    'PHPUnit\\Framework\\Constraint\\Composite' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/Composite.php',-    'PHPUnit\\Framework\\Constraint\\Constraint' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/Constraint.php',-    'PHPUnit\\Framework\\Constraint\\Count' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/Count.php',-    'PHPUnit\\Framework\\Constraint\\DirectoryExists' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/DirectoryExists.php',-    'PHPUnit\\Framework\\Constraint\\Exception' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/Exception.php',-    'PHPUnit\\Framework\\Constraint\\ExceptionCode' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/ExceptionCode.php',-    'PHPUnit\\Framework\\Constraint\\ExceptionMessage' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/ExceptionMessage.php',-    'PHPUnit\\Framework\\Constraint\\ExceptionMessageRegularExpression' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/ExceptionMessageRegularExpression.php',-    'PHPUnit\\Framework\\Constraint\\FileExists' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/FileExists.php',-    'PHPUnit\\Framework\\Constraint\\GreaterThan' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/GreaterThan.php',-    'PHPUnit\\Framework\\Constraint\\IsAnything' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsAnything.php',-    'PHPUnit\\Framework\\Constraint\\IsEmpty' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsEmpty.php',-    'PHPUnit\\Framework\\Constraint\\IsEqual' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsEqual.php',-    'PHPUnit\\Framework\\Constraint\\IsFalse' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsFalse.php',-    'PHPUnit\\Framework\\Constraint\\IsFinite' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsFinite.php',-    'PHPUnit\\Framework\\Constraint\\IsIdentical' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsIdentical.php',-    'PHPUnit\\Framework\\Constraint\\IsInfinite' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsInfinite.php',-    'PHPUnit\\Framework\\Constraint\\IsInstanceOf' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsInstanceOf.php',-    'PHPUnit\\Framework\\Constraint\\IsJson' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsJson.php',-    'PHPUnit\\Framework\\Constraint\\IsNan' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsNan.php',-    'PHPUnit\\Framework\\Constraint\\IsNull' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsNull.php',-    'PHPUnit\\Framework\\Constraint\\IsReadable' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsReadable.php',-    'PHPUnit\\Framework\\Constraint\\IsTrue' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsTrue.php',-    'PHPUnit\\Framework\\Constraint\\IsType' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsType.php',-    'PHPUnit\\Framework\\Constraint\\IsWritable' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/IsWritable.php',-    'PHPUnit\\Framework\\Constraint\\JsonMatches' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/JsonMatches.php',-    'PHPUnit\\Framework\\Constraint\\JsonMatchesErrorMessageProvider' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/JsonMatchesErrorMessageProvider.php',-    'PHPUnit\\Framework\\Constraint\\LessThan' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/LessThan.php',-    'PHPUnit\\Framework\\Constraint\\LogicalAnd' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/LogicalAnd.php',-    'PHPUnit\\Framework\\Constraint\\LogicalNot' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/LogicalNot.php',-    'PHPUnit\\Framework\\Constraint\\LogicalOr' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/LogicalOr.php',-    'PHPUnit\\Framework\\Constraint\\LogicalXor' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/LogicalXor.php',-    'PHPUnit\\Framework\\Constraint\\ObjectHasAttribute' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/ObjectHasAttribute.php',-    'PHPUnit\\Framework\\Constraint\\RegularExpression' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/RegularExpression.php',-    'PHPUnit\\Framework\\Constraint\\SameSize' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/SameSize.php',-    'PHPUnit\\Framework\\Constraint\\StringContains' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/StringContains.php',-    'PHPUnit\\Framework\\Constraint\\StringEndsWith' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/StringEndsWith.php',-    'PHPUnit\\Framework\\Constraint\\StringMatchesFormatDescription' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/StringMatchesFormatDescription.php',-    'PHPUnit\\Framework\\Constraint\\StringStartsWith' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/StringStartsWith.php',-    'PHPUnit\\Framework\\Constraint\\TraversableContains' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/TraversableContains.php',-    'PHPUnit\\Framework\\Constraint\\TraversableContainsOnly' => $vendorDir . '/phpunit/phpunit/src/Framework/Constraint/TraversableContainsOnly.php',-    'PHPUnit\\Framework\\CoveredCodeNotExecutedException' => $vendorDir . '/phpunit/phpunit/src/Framework/CoveredCodeNotExecutedException.php',-    'PHPUnit\\Framework\\DataProviderTestSuite' => $vendorDir . '/phpunit/phpunit/src/Framework/DataProviderTestSuite.php',-    'PHPUnit\\Framework\\Error\\Deprecated' => $vendorDir . '/phpunit/phpunit/src/Framework/Error/Deprecated.php',-    'PHPUnit\\Framework\\Error\\Error' => $vendorDir . '/phpunit/phpunit/src/Framework/Error/Error.php',-    'PHPUnit\\Framework\\Error\\Notice' => $vendorDir . '/phpunit/phpunit/src/Framework/Error/Notice.php',-    'PHPUnit\\Framework\\Error\\Warning' => $vendorDir . '/phpunit/phpunit/src/Framework/Error/Warning.php',-    'PHPUnit\\Framework\\Exception' => $vendorDir . '/phpunit/phpunit/src/Framework/Exception.php',-    'PHPUnit\\Framework\\ExceptionWrapper' => $vendorDir . '/phpunit/phpunit/src/Framework/ExceptionWrapper.php',-    'PHPUnit\\Framework\\ExpectationFailedException' => $vendorDir . '/phpunit/phpunit/src/Framework/ExpectationFailedException.php',-    'PHPUnit\\Framework\\IncompleteTest' => $vendorDir . '/phpunit/phpunit/src/Framework/IncompleteTest.php',-    'PHPUnit\\Framework\\IncompleteTestCase' => $vendorDir . '/phpunit/phpunit/src/Framework/IncompleteTestCase.php',-    'PHPUnit\\Framework\\IncompleteTestError' => $vendorDir . '/phpunit/phpunit/src/Framework/IncompleteTestError.php',-    'PHPUnit\\Framework\\InvalidCoversTargetException' => $vendorDir . '/phpunit/phpunit/src/Framework/InvalidCoversTargetException.php',-    'PHPUnit\\Framework\\InvalidParameterGroupException' => $vendorDir . '/phpunit/phpunit/src/Framework/InvalidParameterGroupException.php',-    'PHPUnit\\Framework\\MissingCoversAnnotationException' => $vendorDir . '/phpunit/phpunit/src/Framework/MissingCoversAnnotationException.php',-    'PHPUnit\\Framework\\MockObject\\BadMethodCallException' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Exception/BadMethodCallException.php',-    'PHPUnit\\Framework\\MockObject\\Builder\\Identity' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Builder/Identity.php',-    'PHPUnit\\Framework\\MockObject\\Builder\\InvocationMocker' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Builder/InvocationMocker.php',-    'PHPUnit\\Framework\\MockObject\\Builder\\Match' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Builder/Match.php',-    'PHPUnit\\Framework\\MockObject\\Builder\\MethodNameMatch' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Builder/MethodNameMatch.php',-    'PHPUnit\\Framework\\MockObject\\Builder\\NamespaceMatch' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Builder/NamespaceMatch.php',-    'PHPUnit\\Framework\\MockObject\\Builder\\ParametersMatch' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Builder/ParametersMatch.php',-    'PHPUnit\\Framework\\MockObject\\Builder\\Stub' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Builder/Stub.php',-    'PHPUnit\\Framework\\MockObject\\Exception' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Exception/Exception.php',-    'PHPUnit\\Framework\\MockObject\\Generator' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Generator.php',-    'PHPUnit\\Framework\\MockObject\\Invocation' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Invocation/Invocation.php',-    'PHPUnit\\Framework\\MockObject\\InvocationMocker' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/InvocationMocker.php',-    'PHPUnit\\Framework\\MockObject\\Invocation\\ObjectInvocation' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Invocation/ObjectInvocation.php',-    'PHPUnit\\Framework\\MockObject\\Invocation\\StaticInvocation' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Invocation/StaticInvocation.php',-    'PHPUnit\\Framework\\MockObject\\Invokable' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Invokable.php',-    'PHPUnit\\Framework\\MockObject\\Matcher' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\AnyInvokedCount' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/AnyInvokedCount.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\AnyParameters' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/AnyParameters.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\ConsecutiveParameters' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/ConsecutiveParameters.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\DeferredError' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/DeferredError.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\Invocation' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/Invocation.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\InvokedAtIndex' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/InvokedAtIndex.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\InvokedAtLeastCount' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/InvokedAtLeastCount.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\InvokedAtLeastOnce' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/InvokedAtLeastOnce.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\InvokedAtMostCount' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/InvokedAtMostCount.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\InvokedCount' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/InvokedCount.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\InvokedRecorder' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/InvokedRecorder.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\MethodName' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/MethodName.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\Parameters' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/Parameters.php',-    'PHPUnit\\Framework\\MockObject\\Matcher\\StatelessInvocation' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Matcher/StatelessInvocation.php',-    'PHPUnit\\Framework\\MockObject\\MockBuilder' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/MockBuilder.php',-    'PHPUnit\\Framework\\MockObject\\MockMethod' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/MockMethod.php',-    'PHPUnit\\Framework\\MockObject\\MockMethodSet' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/MockMethodSet.php',-    'PHPUnit\\Framework\\MockObject\\MockObject' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/ForwardCompatibility/MockObject.php',-    'PHPUnit\\Framework\\MockObject\\RuntimeException' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Exception/RuntimeException.php',-    'PHPUnit\\Framework\\MockObject\\Stub' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Stub.php',-    'PHPUnit\\Framework\\MockObject\\Stub\\ConsecutiveCalls' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Stub/ConsecutiveCalls.php',-    'PHPUnit\\Framework\\MockObject\\Stub\\Exception' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Stub/Exception.php',-    'PHPUnit\\Framework\\MockObject\\Stub\\MatcherCollection' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Stub/MatcherCollection.php',-    'PHPUnit\\Framework\\MockObject\\Stub\\ReturnArgument' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Stub/ReturnArgument.php',-    'PHPUnit\\Framework\\MockObject\\Stub\\ReturnCallback' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Stub/ReturnCallback.php',-    'PHPUnit\\Framework\\MockObject\\Stub\\ReturnReference' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Stub/ReturnReference.php',-    'PHPUnit\\Framework\\MockObject\\Stub\\ReturnSelf' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Stub/ReturnSelf.php',-    'PHPUnit\\Framework\\MockObject\\Stub\\ReturnStub' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Stub/ReturnStub.php',-    'PHPUnit\\Framework\\MockObject\\Stub\\ReturnValueMap' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Stub/ReturnValueMap.php',-    'PHPUnit\\Framework\\MockObject\\Verifiable' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/Verifiable.php',-    'PHPUnit\\Framework\\OutputError' => $vendorDir . '/phpunit/phpunit/src/Framework/OutputError.php',-    'PHPUnit\\Framework\\RiskyTest' => $vendorDir . '/phpunit/phpunit/src/Framework/RiskyTest.php',-    'PHPUnit\\Framework\\RiskyTestError' => $vendorDir . '/phpunit/phpunit/src/Framework/RiskyTestError.php',-    'PHPUnit\\Framework\\SelfDescribing' => $vendorDir . '/phpunit/phpunit/src/Framework/SelfDescribing.php',-    'PHPUnit\\Framework\\SkippedTest' => $vendorDir . '/phpunit/phpunit/src/Framework/SkippedTest.php',-    'PHPUnit\\Framework\\SkippedTestCase' => $vendorDir . '/phpunit/phpunit/src/Framework/SkippedTestCase.php',-    'PHPUnit\\Framework\\SkippedTestError' => $vendorDir . '/phpunit/phpunit/src/Framework/SkippedTestError.php',-    'PHPUnit\\Framework\\SkippedTestSuiteError' => $vendorDir . '/phpunit/phpunit/src/Framework/SkippedTestSuiteError.php',-    'PHPUnit\\Framework\\SyntheticError' => $vendorDir . '/phpunit/phpunit/src/Framework/SyntheticError.php',-    'PHPUnit\\Framework\\Test' => $vendorDir . '/phpunit/phpunit/src/Framework/Test.php',-    'PHPUnit\\Framework\\TestCase' => $vendorDir . '/phpunit/phpunit/src/Framework/TestCase.php',-    'PHPUnit\\Framework\\TestFailure' => $vendorDir . '/phpunit/phpunit/src/Framework/TestFailure.php',-    'PHPUnit\\Framework\\TestListener' => $vendorDir . '/phpunit/phpunit/src/Framework/TestListener.php',-    'PHPUnit\\Framework\\TestListenerDefaultImplementation' => $vendorDir . '/phpunit/phpunit/src/Framework/TestListenerDefaultImplementation.php',-    'PHPUnit\\Framework\\TestResult' => $vendorDir . '/phpunit/phpunit/src/Framework/TestResult.php',-    'PHPUnit\\Framework\\TestSuite' => $vendorDir . '/phpunit/phpunit/src/Framework/TestSuite.php',-    'PHPUnit\\Framework\\TestSuiteIterator' => $vendorDir . '/phpunit/phpunit/src/Framework/TestSuiteIterator.php',-    'PHPUnit\\Framework\\UnexpectedValueException' => $vendorDir . '/phpunit/phpunit/src/Framework/UnexpectedValueException.php',-    'PHPUnit\\Framework\\UnintentionallyCoveredCodeError' => $vendorDir . '/phpunit/phpunit/src/Framework/UnintentionallyCoveredCodeError.php',-    'PHPUnit\\Framework\\Warning' => $vendorDir . '/phpunit/phpunit/src/Framework/Warning.php',-    'PHPUnit\\Framework\\WarningTestCase' => $vendorDir . '/phpunit/phpunit/src/Framework/WarningTestCase.php',-    'PHPUnit\\Runner\\AfterIncompleteTestHook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/AfterIncompleteTestHook.php',-    'PHPUnit\\Runner\\AfterLastTestHook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/AfterLastTestHook.php',-    'PHPUnit\\Runner\\AfterRiskyTestHook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/AfterRiskyTestHook.php',-    'PHPUnit\\Runner\\AfterSkippedTestHook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/AfterSkippedTestHook.php',-    'PHPUnit\\Runner\\AfterSuccessfulTestHook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/AfterSuccessfulTestHook.php',-    'PHPUnit\\Runner\\AfterTestErrorHook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/AfterTestErrorHook.php',-    'PHPUnit\\Runner\\AfterTestFailureHook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/AfterTestFailureHook.php',-    'PHPUnit\\Runner\\AfterTestHook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/AfterTestHook.php',-    'PHPUnit\\Runner\\AfterTestWarningHook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/AfterTestWarningHook.php',-    'PHPUnit\\Runner\\BaseTestRunner' => $vendorDir . '/phpunit/phpunit/src/Runner/BaseTestRunner.php',-    'PHPUnit\\Runner\\BeforeFirstTestHook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/BeforeFirstTestHook.php',-    'PHPUnit\\Runner\\BeforeTestHook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/BeforeTestHook.php',-    'PHPUnit\\Runner\\Exception' => $vendorDir . '/phpunit/phpunit/src/Runner/Exception.php',-    'PHPUnit\\Runner\\Filter\\ExcludeGroupFilterIterator' => $vendorDir . '/phpunit/phpunit/src/Runner/Filter/ExcludeGroupFilterIterator.php',-    'PHPUnit\\Runner\\Filter\\Factory' => $vendorDir . '/phpunit/phpunit/src/Runner/Filter/Factory.php',-    'PHPUnit\\Runner\\Filter\\GroupFilterIterator' => $vendorDir . '/phpunit/phpunit/src/Runner/Filter/GroupFilterIterator.php',-    'PHPUnit\\Runner\\Filter\\IncludeGroupFilterIterator' => $vendorDir . '/phpunit/phpunit/src/Runner/Filter/IncludeGroupFilterIterator.php',-    'PHPUnit\\Runner\\Filter\\NameFilterIterator' => $vendorDir . '/phpunit/phpunit/src/Runner/Filter/NameFilterIterator.php',-    'PHPUnit\\Runner\\Hook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/Hook.php',-    'PHPUnit\\Runner\\NullTestResultCache' => $vendorDir . '/phpunit/phpunit/src/Util/NullTestResultCache.php',-    'PHPUnit\\Runner\\PhptTestCase' => $vendorDir . '/phpunit/phpunit/src/Runner/PhptTestCase.php',-    'PHPUnit\\Runner\\ResultCacheExtension' => $vendorDir . '/phpunit/phpunit/src/Runner/ResultCacheExtension.php',-    'PHPUnit\\Runner\\StandardTestSuiteLoader' => $vendorDir . '/phpunit/phpunit/src/Runner/StandardTestSuiteLoader.php',-    'PHPUnit\\Runner\\TestHook' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/TestHook.php',-    'PHPUnit\\Runner\\TestListenerAdapter' => $vendorDir . '/phpunit/phpunit/src/Runner/Hook/TestListenerAdapter.php',-    'PHPUnit\\Runner\\TestResultCache' => $vendorDir . '/phpunit/phpunit/src/Util/TestResultCache.php',-    'PHPUnit\\Runner\\TestResultCacheInterface' => $vendorDir . '/phpunit/phpunit/src/Util/TestResultCacheInterface.php',-    'PHPUnit\\Runner\\TestSuiteLoader' => $vendorDir . '/phpunit/phpunit/src/Runner/TestSuiteLoader.php',-    'PHPUnit\\Runner\\TestSuiteSorter' => $vendorDir . '/phpunit/phpunit/src/Runner/TestSuiteSorter.php',-    'PHPUnit\\Runner\\Version' => $vendorDir . '/phpunit/phpunit/src/Runner/Version.php',-    'PHPUnit\\TextUI\\Command' => $vendorDir . '/phpunit/phpunit/src/TextUI/Command.php',-    'PHPUnit\\TextUI\\ResultPrinter' => $vendorDir . '/phpunit/phpunit/src/TextUI/ResultPrinter.php',-    'PHPUnit\\TextUI\\TestRunner' => $vendorDir . '/phpunit/phpunit/src/TextUI/TestRunner.php',-    'PHPUnit\\Util\\Blacklist' => $vendorDir . '/phpunit/phpunit/src/Util/Blacklist.php',-    'PHPUnit\\Util\\Configuration' => $vendorDir . '/phpunit/phpunit/src/Util/Configuration.php',-    'PHPUnit\\Util\\ConfigurationGenerator' => $vendorDir . '/phpunit/phpunit/src/Util/ConfigurationGenerator.php',-    'PHPUnit\\Util\\ErrorHandler' => $vendorDir . '/phpunit/phpunit/src/Util/ErrorHandler.php',-    'PHPUnit\\Util\\FileLoader' => $vendorDir . '/phpunit/phpunit/src/Util/FileLoader.php',-    'PHPUnit\\Util\\Filesystem' => $vendorDir . '/phpunit/phpunit/src/Util/Filesystem.php',-    'PHPUnit\\Util\\Filter' => $vendorDir . '/phpunit/phpunit/src/Util/Filter.php',-    'PHPUnit\\Util\\Getopt' => $vendorDir . '/phpunit/phpunit/src/Util/Getopt.php',-    'PHPUnit\\Util\\GlobalState' => $vendorDir . '/phpunit/phpunit/src/Util/GlobalState.php',-    'PHPUnit\\Util\\InvalidArgumentHelper' => $vendorDir . '/phpunit/phpunit/src/Util/InvalidArgumentHelper.php',-    'PHPUnit\\Util\\Json' => $vendorDir . '/phpunit/phpunit/src/Util/Json.php',-    'PHPUnit\\Util\\Log\\JUnit' => $vendorDir . '/phpunit/phpunit/src/Util/Log/JUnit.php',-    'PHPUnit\\Util\\Log\\TeamCity' => $vendorDir . '/phpunit/phpunit/src/Util/Log/TeamCity.php',-    'PHPUnit\\Util\\PHP\\AbstractPhpProcess' => $vendorDir . '/phpunit/phpunit/src/Util/PHP/AbstractPhpProcess.php',-    'PHPUnit\\Util\\PHP\\DefaultPhpProcess' => $vendorDir . '/phpunit/phpunit/src/Util/PHP/DefaultPhpProcess.php',-    'PHPUnit\\Util\\PHP\\WindowsPhpProcess' => $vendorDir . '/phpunit/phpunit/src/Util/PHP/WindowsPhpProcess.php',-    'PHPUnit\\Util\\Printer' => $vendorDir . '/phpunit/phpunit/src/Util/Printer.php',-    'PHPUnit\\Util\\RegularExpression' => $vendorDir . '/phpunit/phpunit/src/Util/RegularExpression.php',-    'PHPUnit\\Util\\Test' => $vendorDir . '/phpunit/phpunit/src/Util/Test.php',-    'PHPUnit\\Util\\TestDox\\CliTestDoxPrinter' => $vendorDir . '/phpunit/phpunit/src/Util/TestDox/CliTestDoxPrinter.php',-    'PHPUnit\\Util\\TestDox\\HtmlResultPrinter' => $vendorDir . '/phpunit/phpunit/src/Util/TestDox/HtmlResultPrinter.php',-    'PHPUnit\\Util\\TestDox\\NamePrettifier' => $vendorDir . '/phpunit/phpunit/src/Util/TestDox/NamePrettifier.php',-    'PHPUnit\\Util\\TestDox\\ResultPrinter' => $vendorDir . '/phpunit/phpunit/src/Util/TestDox/ResultPrinter.php',-    'PHPUnit\\Util\\TestDox\\TestResult' => $vendorDir . '/phpunit/phpunit/src/Util/TestDox/TestResult.php',-    'PHPUnit\\Util\\TestDox\\TextResultPrinter' => $vendorDir . '/phpunit/phpunit/src/Util/TestDox/TextResultPrinter.php',-    'PHPUnit\\Util\\TestDox\\XmlResultPrinter' => $vendorDir . '/phpunit/phpunit/src/Util/TestDox/XmlResultPrinter.php',-    'PHPUnit\\Util\\TextTestListRenderer' => $vendorDir . '/phpunit/phpunit/src/Util/TextTestListRenderer.php',-    'PHPUnit\\Util\\Type' => $vendorDir . '/phpunit/phpunit/src/Util/Type.php',-    'PHPUnit\\Util\\XdebugFilterScriptGenerator' => $vendorDir . '/phpunit/phpunit/src/Util/XdebugFilterScriptGenerator.php',-    'PHPUnit\\Util\\Xml' => $vendorDir . '/phpunit/phpunit/src/Util/Xml.php',-    'PHPUnit\\Util\\XmlTestListRenderer' => $vendorDir . '/phpunit/phpunit/src/Util/XmlTestListRenderer.php',-    'PHPUnit_Framework_MockObject_MockObject' => $vendorDir . '/phpunit/phpunit/src/Framework/MockObject/MockObject.php',-    'PHP_CodeSniffer' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer.php',-    'PHP_CodeSniffer_CLI' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/CLI.php',-    'PHP_CodeSniffer_DocGenerators_Generator' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/DocGenerators/Generator.php',-    'PHP_CodeSniffer_DocGenerators_HTML' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/DocGenerators/HTML.php',-    'PHP_CodeSniffer_DocGenerators_Markdown' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/DocGenerators/Markdown.php',-    'PHP_CodeSniffer_DocGenerators_Text' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/DocGenerators/Text.php',-    'PHP_CodeSniffer_Exception' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Exception.php',-    'PHP_CodeSniffer_File' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/File.php',-    'PHP_CodeSniffer_Fixer' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Fixer.php',-    'PHP_CodeSniffer_Report' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Report.php',-    'PHP_CodeSniffer_Reporting' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reporting.php',-    'PHP_CodeSniffer_Reports_Cbf' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Cbf.php',-    'PHP_CodeSniffer_Reports_Checkstyle' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Checkstyle.php',-    'PHP_CodeSniffer_Reports_Csv' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Csv.php',-    'PHP_CodeSniffer_Reports_Diff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Diff.php',-    'PHP_CodeSniffer_Reports_Emacs' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Emacs.php',-    'PHP_CodeSniffer_Reports_Full' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Full.php',-    'PHP_CodeSniffer_Reports_Gitblame' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Gitblame.php',-    'PHP_CodeSniffer_Reports_Hgblame' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Hgblame.php',-    'PHP_CodeSniffer_Reports_Info' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Info.php',-    'PHP_CodeSniffer_Reports_Json' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Json.php',-    'PHP_CodeSniffer_Reports_Junit' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Junit.php',-    'PHP_CodeSniffer_Reports_Notifysend' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Notifysend.php',-    'PHP_CodeSniffer_Reports_Source' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Source.php',-    'PHP_CodeSniffer_Reports_Summary' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Summary.php',-    'PHP_CodeSniffer_Reports_Svnblame' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Svnblame.php',-    'PHP_CodeSniffer_Reports_VersionControl' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/VersionControl.php',-    'PHP_CodeSniffer_Reports_Xml' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Reports/Xml.php',-    'PHP_CodeSniffer_Sniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Sniff.php',-    'PHP_CodeSniffer_Standards_AbstractPatternSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/AbstractPatternSniff.php',-    'PHP_CodeSniffer_Standards_AbstractScopeSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/AbstractScopeSniff.php',-    'PHP_CodeSniffer_Standards_AbstractVariableSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/AbstractVariableSniff.php',-    'PHP_CodeSniffer_Standards_IncorrectPatternException' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/IncorrectPatternException.php',-    'PHP_CodeSniffer_Tokenizers_CSS' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Tokenizers/CSS.php',-    'PHP_CodeSniffer_Tokenizers_Comment' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Tokenizers/Comment.php',-    'PHP_CodeSniffer_Tokenizers_JS' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Tokenizers/JS.php',-    'PHP_CodeSniffer_Tokenizers_PHP' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Tokenizers/PHP.php',-    'PHP_CodeSniffer_Tokens' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Tokens.php',-    'PHP_Token' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_TokenWithScope' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_TokenWithScopeAndVisibility' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ABSTRACT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_AMPERSAND' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_AND_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ARRAY' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ARRAY_CAST' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_AS' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_AT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_BACKTICK' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_BAD_CHARACTER' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_BOOLEAN_AND' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_BOOLEAN_OR' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_BOOL_CAST' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_BREAK' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CALLABLE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CARET' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CASE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CATCH' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CHARACTER' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CLASS' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CLASS_C' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CLASS_NAME_CONSTANT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CLONE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CLOSE_BRACKET' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CLOSE_CURLY' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CLOSE_SQUARE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CLOSE_TAG' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_COALESCE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_COALESCE_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_COLON' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_COMMA' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_COMMENT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CONCAT_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CONST' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CONSTANT_ENCAPSED_STRING' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CONTINUE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_CURLY_OPEN' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DEC' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DECLARE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DEFAULT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DIR' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DIV' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DIV_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DNUMBER' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DO' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DOC_COMMENT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DOLLAR' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DOLLAR_OPEN_CURLY_BRACES' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DOT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DOUBLE_ARROW' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DOUBLE_CAST' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DOUBLE_COLON' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_DOUBLE_QUOTES' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ECHO' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ELLIPSIS' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ELSE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ELSEIF' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_EMPTY' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ENCAPSED_AND_WHITESPACE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ENDDECLARE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ENDFOR' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ENDFOREACH' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ENDIF' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ENDSWITCH' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ENDWHILE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_END_HEREDOC' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_EVAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_EXCLAMATION_MARK' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_EXIT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_EXTENDS' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_FILE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_FINAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_FINALLY' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_FN' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_FOR' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_FOREACH' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_FUNCTION' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_FUNC_C' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_GLOBAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_GOTO' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_GT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_HALT_COMPILER' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_IF' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_IMPLEMENTS' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_INC' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_INCLUDE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_INCLUDE_ONCE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_INLINE_HTML' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_INSTANCEOF' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_INSTEADOF' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_INTERFACE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_INT_CAST' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_ISSET' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_IS_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_IS_GREATER_OR_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_IS_IDENTICAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_IS_NOT_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_IS_NOT_IDENTICAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_IS_SMALLER_OR_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_Includes' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_LINE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_LIST' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_LNUMBER' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_LOGICAL_AND' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_LOGICAL_OR' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_LOGICAL_XOR' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_LT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_METHOD_C' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_MINUS' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_MINUS_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_MOD_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_MULT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_MUL_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_NAMESPACE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_NEW' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_NS_C' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_NS_SEPARATOR' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_NUM_STRING' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_OBJECT_CAST' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_OBJECT_OPERATOR' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_OPEN_BRACKET' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_OPEN_CURLY' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_OPEN_SQUARE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_OPEN_TAG' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_OPEN_TAG_WITH_ECHO' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_OR_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_PAAMAYIM_NEKUDOTAYIM' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_PERCENT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_PIPE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_PLUS' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_PLUS_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_POW' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_POW_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_PRINT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_PRIVATE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_PROTECTED' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_PUBLIC' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_QUESTION_MARK' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_REQUIRE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_REQUIRE_ONCE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_RETURN' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_SEMICOLON' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_SL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_SL_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_SPACESHIP' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_SR' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_SR_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_START_HEREDOC' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_STATIC' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_STRING' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_STRING_CAST' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_STRING_VARNAME' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_SWITCH' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_Stream' => $vendorDir . '/phpunit/php-token-stream/src/Token/Stream.php',-    'PHP_Token_Stream_CachingFactory' => $vendorDir . '/phpunit/php-token-stream/src/Token/Stream/CachingFactory.php',-    'PHP_Token_THROW' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_TILDE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_TRAIT' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_TRAIT_C' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_TRY' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_UNSET' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_UNSET_CAST' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_USE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_USE_FUNCTION' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_Util' => $vendorDir . '/phpunit/php-token-stream/src/Token/Util.php',-    'PHP_Token_VAR' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_VARIABLE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_WHILE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_WHITESPACE' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_XOR_EQUAL' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_YIELD' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PHP_Token_YIELD_FROM' => $vendorDir . '/phpunit/php-token-stream/src/Token.php',-    'PSR1_Sniffs_Classes_ClassDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR1/Sniffs/Classes/ClassDeclarationSniff.php',-    'PSR1_Sniffs_Files_SideEffectsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR1/Sniffs/Files/SideEffectsSniff.php',-    'PSR1_Sniffs_Methods_CamelCapsMethodNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR1/Sniffs/Methods/CamelCapsMethodNameSniff.php',-    'PSR2_Sniffs_Classes_ClassDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR2/Sniffs/Classes/ClassDeclarationSniff.php',-    'PSR2_Sniffs_Classes_PropertyDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR2/Sniffs/Classes/PropertyDeclarationSniff.php',-    'PSR2_Sniffs_ControlStructures_ControlStructureSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR2/Sniffs/ControlStructures/ControlStructureSpacingSniff.php',-    'PSR2_Sniffs_ControlStructures_ElseIfDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR2/Sniffs/ControlStructures/ElseIfDeclarationSniff.php',-    'PSR2_Sniffs_ControlStructures_SwitchDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR2/Sniffs/ControlStructures/SwitchDeclarationSniff.php',-    'PSR2_Sniffs_Files_ClosingTagSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR2/Sniffs/Files/ClosingTagSniff.php',-    'PSR2_Sniffs_Files_EndFileNewlineSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR2/Sniffs/Files/EndFileNewlineSniff.php',-    'PSR2_Sniffs_Methods_FunctionCallSignatureSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR2/Sniffs/Methods/FunctionCallSignatureSniff.php',-    'PSR2_Sniffs_Methods_FunctionClosingBraceSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR2/Sniffs/Methods/FunctionClosingBraceSniff.php',-    'PSR2_Sniffs_Methods_MethodDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR2/Sniffs/Methods/MethodDeclarationSniff.php',-    'PSR2_Sniffs_Namespaces_NamespaceDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR2/Sniffs/Namespaces/NamespaceDeclarationSniff.php',-    'PSR2_Sniffs_Namespaces_UseDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/PSR2/Sniffs/Namespaces/UseDeclarationSniff.php',-    'PharIo\\Manifest\\Application' => $vendorDir . '/phar-io/manifest/src/values/Application.php',-    'PharIo\\Manifest\\ApplicationName' => $vendorDir . '/phar-io/manifest/src/values/ApplicationName.php',-    'PharIo\\Manifest\\Author' => $vendorDir . '/phar-io/manifest/src/values/Author.php',-    'PharIo\\Manifest\\AuthorCollection' => $vendorDir . '/phar-io/manifest/src/values/AuthorCollection.php',-    'PharIo\\Manifest\\AuthorCollectionIterator' => $vendorDir . '/phar-io/manifest/src/values/AuthorCollectionIterator.php',-    'PharIo\\Manifest\\AuthorElement' => $vendorDir . '/phar-io/manifest/src/xml/AuthorElement.php',-    'PharIo\\Manifest\\AuthorElementCollection' => $vendorDir . '/phar-io/manifest/src/xml/AuthorElementCollection.php',-    'PharIo\\Manifest\\BundledComponent' => $vendorDir . '/phar-io/manifest/src/values/BundledComponent.php',-    'PharIo\\Manifest\\BundledComponentCollection' => $vendorDir . '/phar-io/manifest/src/values/BundledComponentCollection.php',-    'PharIo\\Manifest\\BundledComponentCollectionIterator' => $vendorDir . '/phar-io/manifest/src/values/BundledComponentCollectionIterator.php',-    'PharIo\\Manifest\\BundlesElement' => $vendorDir . '/phar-io/manifest/src/xml/BundlesElement.php',-    'PharIo\\Manifest\\ComponentElement' => $vendorDir . '/phar-io/manifest/src/xml/ComponentElement.php',-    'PharIo\\Manifest\\ComponentElementCollection' => $vendorDir . '/phar-io/manifest/src/xml/ComponentElementCollection.php',-    'PharIo\\Manifest\\ContainsElement' => $vendorDir . '/phar-io/manifest/src/xml/ContainsElement.php',-    'PharIo\\Manifest\\CopyrightElement' => $vendorDir . '/phar-io/manifest/src/xml/CopyrightElement.php',-    'PharIo\\Manifest\\CopyrightInformation' => $vendorDir . '/phar-io/manifest/src/values/CopyrightInformation.php',-    'PharIo\\Manifest\\ElementCollection' => $vendorDir . '/phar-io/manifest/src/xml/ElementCollection.php',-    'PharIo\\Manifest\\Email' => $vendorDir . '/phar-io/manifest/src/values/Email.php',-    'PharIo\\Manifest\\Exception' => $vendorDir . '/phar-io/manifest/src/exceptions/Exception.php',-    'PharIo\\Manifest\\ExtElement' => $vendorDir . '/phar-io/manifest/src/xml/ExtElement.php',-    'PharIo\\Manifest\\ExtElementCollection' => $vendorDir . '/phar-io/manifest/src/xml/ExtElementCollection.php',-    'PharIo\\Manifest\\Extension' => $vendorDir . '/phar-io/manifest/src/values/Extension.php',-    'PharIo\\Manifest\\ExtensionElement' => $vendorDir . '/phar-io/manifest/src/xml/ExtensionElement.php',-    'PharIo\\Manifest\\InvalidApplicationNameException' => $vendorDir . '/phar-io/manifest/src/exceptions/InvalidApplicationNameException.php',-    'PharIo\\Manifest\\InvalidEmailException' => $vendorDir . '/phar-io/manifest/src/exceptions/InvalidEmailException.php',-    'PharIo\\Manifest\\InvalidUrlException' => $vendorDir . '/phar-io/manifest/src/exceptions/InvalidUrlException.php',-    'PharIo\\Manifest\\Library' => $vendorDir . '/phar-io/manifest/src/values/Library.php',-    'PharIo\\Manifest\\License' => $vendorDir . '/phar-io/manifest/src/values/License.php',-    'PharIo\\Manifest\\LicenseElement' => $vendorDir . '/phar-io/manifest/src/xml/LicenseElement.php',-    'PharIo\\Manifest\\Manifest' => $vendorDir . '/phar-io/manifest/src/values/Manifest.php',-    'PharIo\\Manifest\\ManifestDocument' => $vendorDir . '/phar-io/manifest/src/xml/ManifestDocument.php',-    'PharIo\\Manifest\\ManifestDocumentException' => $vendorDir . '/phar-io/manifest/src/exceptions/ManifestDocumentException.php',-    'PharIo\\Manifest\\ManifestDocumentLoadingException' => $vendorDir . '/phar-io/manifest/src/xml/ManifestDocumentLoadingException.php',-    'PharIo\\Manifest\\ManifestDocumentMapper' => $vendorDir . '/phar-io/manifest/src/ManifestDocumentMapper.php',-    'PharIo\\Manifest\\ManifestDocumentMapperException' => $vendorDir . '/phar-io/manifest/src/exceptions/ManifestDocumentMapperException.php',-    'PharIo\\Manifest\\ManifestElement' => $vendorDir . '/phar-io/manifest/src/xml/ManifestElement.php',-    'PharIo\\Manifest\\ManifestElementException' => $vendorDir . '/phar-io/manifest/src/exceptions/ManifestElementException.php',-    'PharIo\\Manifest\\ManifestLoader' => $vendorDir . '/phar-io/manifest/src/ManifestLoader.php',-    'PharIo\\Manifest\\ManifestLoaderException' => $vendorDir . '/phar-io/manifest/src/exceptions/ManifestLoaderException.php',-    'PharIo\\Manifest\\ManifestSerializer' => $vendorDir . '/phar-io/manifest/src/ManifestSerializer.php',-    'PharIo\\Manifest\\PhpElement' => $vendorDir . '/phar-io/manifest/src/xml/PhpElement.php',-    'PharIo\\Manifest\\PhpExtensionRequirement' => $vendorDir . '/phar-io/manifest/src/values/PhpExtensionRequirement.php',-    'PharIo\\Manifest\\PhpVersionRequirement' => $vendorDir . '/phar-io/manifest/src/values/PhpVersionRequirement.php',-    'PharIo\\Manifest\\Requirement' => $vendorDir . '/phar-io/manifest/src/values/Requirement.php',-    'PharIo\\Manifest\\RequirementCollection' => $vendorDir . '/phar-io/manifest/src/values/RequirementCollection.php',-    'PharIo\\Manifest\\RequirementCollectionIterator' => $vendorDir . '/phar-io/manifest/src/values/RequirementCollectionIterator.php',-    'PharIo\\Manifest\\RequiresElement' => $vendorDir . '/phar-io/manifest/src/xml/RequiresElement.php',-    'PharIo\\Manifest\\Type' => $vendorDir . '/phar-io/manifest/src/values/Type.php',-    'PharIo\\Manifest\\Url' => $vendorDir . '/phar-io/manifest/src/values/Url.php',-    'PharIo\\Version\\AbstractVersionConstraint' => $vendorDir . '/phar-io/version/src/constraints/AbstractVersionConstraint.php',-    'PharIo\\Version\\AndVersionConstraintGroup' => $vendorDir . '/phar-io/version/src/constraints/AndVersionConstraintGroup.php',-    'PharIo\\Version\\AnyVersionConstraint' => $vendorDir . '/phar-io/version/src/constraints/AnyVersionConstraint.php',-    'PharIo\\Version\\ExactVersionConstraint' => $vendorDir . '/phar-io/version/src/constraints/ExactVersionConstraint.php',-    'PharIo\\Version\\Exception' => $vendorDir . '/phar-io/version/src/exceptions/Exception.php',-    'PharIo\\Version\\GreaterThanOrEqualToVersionConstraint' => $vendorDir . '/phar-io/version/src/constraints/GreaterThanOrEqualToVersionConstraint.php',-    'PharIo\\Version\\InvalidPreReleaseSuffixException' => $vendorDir . '/phar-io/version/src/exceptions/InvalidPreReleaseSuffixException.php',-    'PharIo\\Version\\InvalidVersionException' => $vendorDir . '/phar-io/version/src/exceptions/InvalidVersionException.php',-    'PharIo\\Version\\OrVersionConstraintGroup' => $vendorDir . '/phar-io/version/src/constraints/OrVersionConstraintGroup.php',-    'PharIo\\Version\\PreReleaseSuffix' => $vendorDir . '/phar-io/version/src/PreReleaseSuffix.php',-    'PharIo\\Version\\SpecificMajorAndMinorVersionConstraint' => $vendorDir . '/phar-io/version/src/constraints/SpecificMajorAndMinorVersionConstraint.php',-    'PharIo\\Version\\SpecificMajorVersionConstraint' => $vendorDir . '/phar-io/version/src/constraints/SpecificMajorVersionConstraint.php',-    'PharIo\\Version\\UnsupportedVersionConstraintException' => $vendorDir . '/phar-io/version/src/exceptions/UnsupportedVersionConstraintException.php',-    'PharIo\\Version\\Version' => $vendorDir . '/phar-io/version/src/Version.php',-    'PharIo\\Version\\VersionConstraint' => $vendorDir . '/phar-io/version/src/constraints/VersionConstraint.php',-    'PharIo\\Version\\VersionConstraintParser' => $vendorDir . '/phar-io/version/src/VersionConstraintParser.php',-    'PharIo\\Version\\VersionConstraintValue' => $vendorDir . '/phar-io/version/src/VersionConstraintValue.php',-    'PharIo\\Version\\VersionNumber' => $vendorDir . '/phar-io/version/src/VersionNumber.php',-    'SebastianBergmann\\CodeCoverage\\CodeCoverage' => $vendorDir . '/phpunit/php-code-coverage/src/CodeCoverage.php',-    'SebastianBergmann\\CodeCoverage\\CoveredCodeNotExecutedException' => $vendorDir . '/phpunit/php-code-coverage/src/Exception/CoveredCodeNotExecutedException.php',-    'SebastianBergmann\\CodeCoverage\\Driver\\Driver' => $vendorDir . '/phpunit/php-code-coverage/src/Driver/Driver.php',-    'SebastianBergmann\\CodeCoverage\\Driver\\PHPDBG' => $vendorDir . '/phpunit/php-code-coverage/src/Driver/PHPDBG.php',-    'SebastianBergmann\\CodeCoverage\\Driver\\Xdebug' => $vendorDir . '/phpunit/php-code-coverage/src/Driver/Xdebug.php',-    'SebastianBergmann\\CodeCoverage\\Exception' => $vendorDir . '/phpunit/php-code-coverage/src/Exception/Exception.php',-    'SebastianBergmann\\CodeCoverage\\Filter' => $vendorDir . '/phpunit/php-code-coverage/src/Filter.php',-    'SebastianBergmann\\CodeCoverage\\InvalidArgumentException' => $vendorDir . '/phpunit/php-code-coverage/src/Exception/InvalidArgumentException.php',-    'SebastianBergmann\\CodeCoverage\\MissingCoversAnnotationException' => $vendorDir . '/phpunit/php-code-coverage/src/Exception/MissingCoversAnnotationException.php',-    'SebastianBergmann\\CodeCoverage\\Node\\AbstractNode' => $vendorDir . '/phpunit/php-code-coverage/src/Node/AbstractNode.php',-    'SebastianBergmann\\CodeCoverage\\Node\\Builder' => $vendorDir . '/phpunit/php-code-coverage/src/Node/Builder.php',-    'SebastianBergmann\\CodeCoverage\\Node\\Directory' => $vendorDir . '/phpunit/php-code-coverage/src/Node/Directory.php',-    'SebastianBergmann\\CodeCoverage\\Node\\File' => $vendorDir . '/phpunit/php-code-coverage/src/Node/File.php',-    'SebastianBergmann\\CodeCoverage\\Node\\Iterator' => $vendorDir . '/phpunit/php-code-coverage/src/Node/Iterator.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Clover' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Clover.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Crap4j' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Crap4j.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Html\\Dashboard' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Html/Renderer/Dashboard.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Html\\Directory' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Html/Renderer/Directory.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Html\\Facade' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Html/Facade.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Html\\File' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Html/Renderer/File.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Html\\Renderer' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Html/Renderer.php',-    'SebastianBergmann\\CodeCoverage\\Report\\PHP' => $vendorDir . '/phpunit/php-code-coverage/src/Report/PHP.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Text' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Text.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\BuildInformation' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/BuildInformation.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\Coverage' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/Coverage.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\Directory' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/Directory.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\Facade' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/Facade.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\File' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/File.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\Method' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/Method.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\Node' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/Node.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\Project' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/Project.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\Report' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/Report.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\Source' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/Source.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\Tests' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/Tests.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\Totals' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/Totals.php',-    'SebastianBergmann\\CodeCoverage\\Report\\Xml\\Unit' => $vendorDir . '/phpunit/php-code-coverage/src/Report/Xml/Unit.php',-    'SebastianBergmann\\CodeCoverage\\RuntimeException' => $vendorDir . '/phpunit/php-code-coverage/src/Exception/RuntimeException.php',-    'SebastianBergmann\\CodeCoverage\\UnintentionallyCoveredCodeException' => $vendorDir . '/phpunit/php-code-coverage/src/Exception/UnintentionallyCoveredCodeException.php',-    'SebastianBergmann\\CodeCoverage\\Util' => $vendorDir . '/phpunit/php-code-coverage/src/Util.php',-    'SebastianBergmann\\CodeCoverage\\Version' => $vendorDir . '/phpunit/php-code-coverage/src/Version.php',-    'SebastianBergmann\\CodeUnitReverseLookup\\Wizard' => $vendorDir . '/sebastian/code-unit-reverse-lookup/src/Wizard.php',-    'SebastianBergmann\\Comparator\\ArrayComparator' => $vendorDir . '/sebastian/comparator/src/ArrayComparator.php',-    'SebastianBergmann\\Comparator\\Comparator' => $vendorDir . '/sebastian/comparator/src/Comparator.php',-    'SebastianBergmann\\Comparator\\ComparisonFailure' => $vendorDir . '/sebastian/comparator/src/ComparisonFailure.php',-    'SebastianBergmann\\Comparator\\DOMNodeComparator' => $vendorDir . '/sebastian/comparator/src/DOMNodeComparator.php',-    'SebastianBergmann\\Comparator\\DateTimeComparator' => $vendorDir . '/sebastian/comparator/src/DateTimeComparator.php',-    'SebastianBergmann\\Comparator\\DoubleComparator' => $vendorDir . '/sebastian/comparator/src/DoubleComparator.php',-    'SebastianBergmann\\Comparator\\ExceptionComparator' => $vendorDir . '/sebastian/comparator/src/ExceptionComparator.php',-    'SebastianBergmann\\Comparator\\Factory' => $vendorDir . '/sebastian/comparator/src/Factory.php',-    'SebastianBergmann\\Comparator\\MockObjectComparator' => $vendorDir . '/sebastian/comparator/src/MockObjectComparator.php',-    'SebastianBergmann\\Comparator\\NumericComparator' => $vendorDir . '/sebastian/comparator/src/NumericComparator.php',-    'SebastianBergmann\\Comparator\\ObjectComparator' => $vendorDir . '/sebastian/comparator/src/ObjectComparator.php',-    'SebastianBergmann\\Comparator\\ResourceComparator' => $vendorDir . '/sebastian/comparator/src/ResourceComparator.php',-    'SebastianBergmann\\Comparator\\ScalarComparator' => $vendorDir . '/sebastian/comparator/src/ScalarComparator.php',-    'SebastianBergmann\\Comparator\\SplObjectStorageComparator' => $vendorDir . '/sebastian/comparator/src/SplObjectStorageComparator.php',-    'SebastianBergmann\\Comparator\\TypeComparator' => $vendorDir . '/sebastian/comparator/src/TypeComparator.php',-    'SebastianBergmann\\Diff\\Chunk' => $vendorDir . '/sebastian/diff/src/Chunk.php',-    'SebastianBergmann\\Diff\\ConfigurationException' => $vendorDir . '/sebastian/diff/src/Exception/ConfigurationException.php',-    'SebastianBergmann\\Diff\\Diff' => $vendorDir . '/sebastian/diff/src/Diff.php',-    'SebastianBergmann\\Diff\\Differ' => $vendorDir . '/sebastian/diff/src/Differ.php',-    'SebastianBergmann\\Diff\\Exception' => $vendorDir . '/sebastian/diff/src/Exception/Exception.php',-    'SebastianBergmann\\Diff\\InvalidArgumentException' => $vendorDir . '/sebastian/diff/src/Exception/InvalidArgumentException.php',-    'SebastianBergmann\\Diff\\Line' => $vendorDir . '/sebastian/diff/src/Line.php',-    'SebastianBergmann\\Diff\\LongestCommonSubsequenceCalculator' => $vendorDir . '/sebastian/diff/src/LongestCommonSubsequenceCalculator.php',-    'SebastianBergmann\\Diff\\MemoryEfficientLongestCommonSubsequenceCalculator' => $vendorDir . '/sebastian/diff/src/MemoryEfficientLongestCommonSubsequenceCalculator.php',-    'SebastianBergmann\\Diff\\Output\\AbstractChunkOutputBuilder' => $vendorDir . '/sebastian/diff/src/Output/AbstractChunkOutputBuilder.php',-    'SebastianBergmann\\Diff\\Output\\DiffOnlyOutputBuilder' => $vendorDir . '/sebastian/diff/src/Output/DiffOnlyOutputBuilder.php',-    'SebastianBergmann\\Diff\\Output\\DiffOutputBuilderInterface' => $vendorDir . '/sebastian/diff/src/Output/DiffOutputBuilderInterface.php',-    'SebastianBergmann\\Diff\\Output\\StrictUnifiedDiffOutputBuilder' => $vendorDir . '/sebastian/diff/src/Output/StrictUnifiedDiffOutputBuilder.php',-    'SebastianBergmann\\Diff\\Output\\UnifiedDiffOutputBuilder' => $vendorDir . '/sebastian/diff/src/Output/UnifiedDiffOutputBuilder.php',-    'SebastianBergmann\\Diff\\Parser' => $vendorDir . '/sebastian/diff/src/Parser.php',-    'SebastianBergmann\\Diff\\TimeEfficientLongestCommonSubsequenceCalculator' => $vendorDir . '/sebastian/diff/src/TimeEfficientLongestCommonSubsequenceCalculator.php',-    'SebastianBergmann\\Environment\\Console' => $vendorDir . '/sebastian/environment/src/Console.php',-    'SebastianBergmann\\Environment\\OperatingSystem' => $vendorDir . '/sebastian/environment/src/OperatingSystem.php',-    'SebastianBergmann\\Environment\\Runtime' => $vendorDir . '/sebastian/environment/src/Runtime.php',-    'SebastianBergmann\\Exporter\\Exporter' => $vendorDir . '/sebastian/exporter/src/Exporter.php',-    'SebastianBergmann\\FileIterator\\Facade' => $vendorDir . '/phpunit/php-file-iterator/src/Facade.php',-    'SebastianBergmann\\FileIterator\\Factory' => $vendorDir . '/phpunit/php-file-iterator/src/Factory.php',-    'SebastianBergmann\\FileIterator\\Iterator' => $vendorDir . '/phpunit/php-file-iterator/src/Iterator.php',-    'SebastianBergmann\\GlobalState\\Blacklist' => $vendorDir . '/sebastian/global-state/src/Blacklist.php',-    'SebastianBergmann\\GlobalState\\CodeExporter' => $vendorDir . '/sebastian/global-state/src/CodeExporter.php',-    'SebastianBergmann\\GlobalState\\Exception' => $vendorDir . '/sebastian/global-state/src/exceptions/Exception.php',-    'SebastianBergmann\\GlobalState\\Restorer' => $vendorDir . '/sebastian/global-state/src/Restorer.php',-    'SebastianBergmann\\GlobalState\\RuntimeException' => $vendorDir . '/sebastian/global-state/src/exceptions/RuntimeException.php',-    'SebastianBergmann\\GlobalState\\Snapshot' => $vendorDir . '/sebastian/global-state/src/Snapshot.php',-    'SebastianBergmann\\ObjectEnumerator\\Enumerator' => $vendorDir . '/sebastian/object-enumerator/src/Enumerator.php',-    'SebastianBergmann\\ObjectEnumerator\\Exception' => $vendorDir . '/sebastian/object-enumerator/src/Exception.php',-    'SebastianBergmann\\ObjectEnumerator\\InvalidArgumentException' => $vendorDir . '/sebastian/object-enumerator/src/InvalidArgumentException.php',-    'SebastianBergmann\\ObjectReflector\\Exception' => $vendorDir . '/sebastian/object-reflector/src/Exception.php',-    'SebastianBergmann\\ObjectReflector\\InvalidArgumentException' => $vendorDir . '/sebastian/object-reflector/src/InvalidArgumentException.php',-    'SebastianBergmann\\ObjectReflector\\ObjectReflector' => $vendorDir . '/sebastian/object-reflector/src/ObjectReflector.php',-    'SebastianBergmann\\RecursionContext\\Context' => $vendorDir . '/sebastian/recursion-context/src/Context.php',-    'SebastianBergmann\\RecursionContext\\Exception' => $vendorDir . '/sebastian/recursion-context/src/Exception.php',-    'SebastianBergmann\\RecursionContext\\InvalidArgumentException' => $vendorDir . '/sebastian/recursion-context/src/InvalidArgumentException.php',-    'SebastianBergmann\\ResourceOperations\\ResourceOperations' => $vendorDir . '/sebastian/resource-operations/src/ResourceOperations.php',-    'SebastianBergmann\\Timer\\Exception' => $vendorDir . '/phpunit/php-timer/src/Exception.php',-    'SebastianBergmann\\Timer\\RuntimeException' => $vendorDir . '/phpunit/php-timer/src/RuntimeException.php',-    'SebastianBergmann\\Timer\\Timer' => $vendorDir . '/phpunit/php-timer/src/Timer.php',-    'SebastianBergmann\\Version' => $vendorDir . '/sebastian/version/src/Version.php',-    'Squiz_Sniffs_Arrays_ArrayBracketSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Arrays/ArrayBracketSpacingSniff.php',-    'Squiz_Sniffs_Arrays_ArrayDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Arrays/ArrayDeclarationSniff.php',-    'Squiz_Sniffs_CSS_ClassDefinitionClosingBraceSpaceSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/ClassDefinitionClosingBraceSpaceSniff.php',-    'Squiz_Sniffs_CSS_ClassDefinitionNameSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/ClassDefinitionNameSpacingSniff.php',-    'Squiz_Sniffs_CSS_ClassDefinitionOpeningBraceSpaceSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/ClassDefinitionOpeningBraceSpaceSniff.php',-    'Squiz_Sniffs_CSS_ColonSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/ColonSpacingSniff.php',-    'Squiz_Sniffs_CSS_ColourDefinitionSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/ColourDefinitionSniff.php',-    'Squiz_Sniffs_CSS_DisallowMultipleStyleDefinitionsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/DisallowMultipleStyleDefinitionsSniff.php',-    'Squiz_Sniffs_CSS_DuplicateClassDefinitionSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/DuplicateClassDefinitionSniff.php',-    'Squiz_Sniffs_CSS_DuplicateStyleDefinitionSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/DuplicateStyleDefinitionSniff.php',-    'Squiz_Sniffs_CSS_EmptyClassDefinitionSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/EmptyClassDefinitionSniff.php',-    'Squiz_Sniffs_CSS_EmptyStyleDefinitionSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/EmptyStyleDefinitionSniff.php',-    'Squiz_Sniffs_CSS_ForbiddenStylesSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/ForbiddenStylesSniff.php',-    'Squiz_Sniffs_CSS_IndentationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/IndentationSniff.php',-    'Squiz_Sniffs_CSS_LowercaseStyleDefinitionSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/LowercaseStyleDefinitionSniff.php',-    'Squiz_Sniffs_CSS_MissingColonSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/MissingColonSniff.php',-    'Squiz_Sniffs_CSS_NamedColoursSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/NamedColoursSniff.php',-    'Squiz_Sniffs_CSS_OpacitySniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/OpacitySniff.php',-    'Squiz_Sniffs_CSS_SemicolonSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/SemicolonSpacingSniff.php',-    'Squiz_Sniffs_CSS_ShorthandSizeSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/CSS/ShorthandSizeSniff.php',-    'Squiz_Sniffs_Classes_ClassDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Classes/ClassDeclarationSniff.php',-    'Squiz_Sniffs_Classes_ClassFileNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Classes/ClassFileNameSniff.php',-    'Squiz_Sniffs_Classes_DuplicatePropertySniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Classes/DuplicatePropertySniff.php',-    'Squiz_Sniffs_Classes_LowercaseClassKeywordsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Classes/LowercaseClassKeywordsSniff.php',-    'Squiz_Sniffs_Classes_SelfMemberReferenceSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Classes/SelfMemberReferenceSniff.php',-    'Squiz_Sniffs_Classes_ValidClassNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Classes/ValidClassNameSniff.php',-    'Squiz_Sniffs_Commenting_BlockCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Commenting/BlockCommentSniff.php',-    'Squiz_Sniffs_Commenting_ClassCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Commenting/ClassCommentSniff.php',-    'Squiz_Sniffs_Commenting_ClosingDeclarationCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Commenting/ClosingDeclarationCommentSniff.php',-    'Squiz_Sniffs_Commenting_DocCommentAlignmentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Commenting/DocCommentAlignmentSniff.php',-    'Squiz_Sniffs_Commenting_EmptyCatchCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Commenting/EmptyCatchCommentSniff.php',-    'Squiz_Sniffs_Commenting_FileCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Commenting/FileCommentSniff.php',-    'Squiz_Sniffs_Commenting_FunctionCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Commenting/FunctionCommentSniff.php',-    'Squiz_Sniffs_Commenting_FunctionCommentThrowTagSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Commenting/FunctionCommentThrowTagSniff.php',-    'Squiz_Sniffs_Commenting_InlineCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Commenting/InlineCommentSniff.php',-    'Squiz_Sniffs_Commenting_LongConditionClosingCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Commenting/LongConditionClosingCommentSniff.php',-    'Squiz_Sniffs_Commenting_PostStatementCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Commenting/PostStatementCommentSniff.php',-    'Squiz_Sniffs_Commenting_VariableCommentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Commenting/VariableCommentSniff.php',-    'Squiz_Sniffs_ControlStructures_ControlSignatureSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/ControlStructures/ControlSignatureSniff.php',-    'Squiz_Sniffs_ControlStructures_ElseIfDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/ControlStructures/ElseIfDeclarationSniff.php',-    'Squiz_Sniffs_ControlStructures_ForEachLoopDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/ControlStructures/ForEachLoopDeclarationSniff.php',-    'Squiz_Sniffs_ControlStructures_ForLoopDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/ControlStructures/ForLoopDeclarationSniff.php',-    'Squiz_Sniffs_ControlStructures_InlineIfDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/ControlStructures/InlineIfDeclarationSniff.php',-    'Squiz_Sniffs_ControlStructures_LowercaseDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/ControlStructures/LowercaseDeclarationSniff.php',-    'Squiz_Sniffs_ControlStructures_SwitchDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/ControlStructures/SwitchDeclarationSniff.php',-    'Squiz_Sniffs_Debug_JSLintSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Debug/JSLintSniff.php',-    'Squiz_Sniffs_Debug_JavaScriptLintSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Debug/JavaScriptLintSniff.php',-    'Squiz_Sniffs_Files_FileExtensionSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Files/FileExtensionSniff.php',-    'Squiz_Sniffs_Formatting_OperatorBracketSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Formatting/OperatorBracketSniff.php',-    'Squiz_Sniffs_Functions_FunctionDeclarationArgumentSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Functions/FunctionDeclarationArgumentSpacingSniff.php',-    'Squiz_Sniffs_Functions_FunctionDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Functions/FunctionDeclarationSniff.php',-    'Squiz_Sniffs_Functions_FunctionDuplicateArgumentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Functions/FunctionDuplicateArgumentSniff.php',-    'Squiz_Sniffs_Functions_GlobalFunctionSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Functions/GlobalFunctionSniff.php',-    'Squiz_Sniffs_Functions_LowercaseFunctionKeywordsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Functions/LowercaseFunctionKeywordsSniff.php',-    'Squiz_Sniffs_Functions_MultiLineFunctionDeclarationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Functions/MultiLineFunctionDeclarationSniff.php',-    'Squiz_Sniffs_NamingConventions_ValidFunctionNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/NamingConventions/ValidFunctionNameSniff.php',-    'Squiz_Sniffs_NamingConventions_ValidVariableNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/NamingConventions/ValidVariableNameSniff.php',-    'Squiz_Sniffs_Objects_DisallowObjectStringIndexSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Objects/DisallowObjectStringIndexSniff.php',-    'Squiz_Sniffs_Objects_ObjectInstantiationSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Objects/ObjectInstantiationSniff.php',-    'Squiz_Sniffs_Objects_ObjectMemberCommaSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Objects/ObjectMemberCommaSniff.php',-    'Squiz_Sniffs_Operators_ComparisonOperatorUsageSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Operators/ComparisonOperatorUsageSniff.php',-    'Squiz_Sniffs_Operators_IncrementDecrementUsageSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Operators/IncrementDecrementUsageSniff.php',-    'Squiz_Sniffs_Operators_ValidLogicalOperatorsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Operators/ValidLogicalOperatorsSniff.php',-    'Squiz_Sniffs_PHP_CommentedOutCodeSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/CommentedOutCodeSniff.php',-    'Squiz_Sniffs_PHP_DisallowBooleanStatementSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/DisallowBooleanStatementSniff.php',-    'Squiz_Sniffs_PHP_DisallowComparisonAssignmentSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/DisallowComparisonAssignmentSniff.php',-    'Squiz_Sniffs_PHP_DisallowInlineIfSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/DisallowInlineIfSniff.php',-    'Squiz_Sniffs_PHP_DisallowMultipleAssignmentsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/DisallowMultipleAssignmentsSniff.php',-    'Squiz_Sniffs_PHP_DisallowObEndFlushSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/DisallowObEndFlushSniff.php',-    'Squiz_Sniffs_PHP_DisallowSizeFunctionsInLoopsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/DisallowSizeFunctionsInLoopsSniff.php',-    'Squiz_Sniffs_PHP_DiscouragedFunctionsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/DiscouragedFunctionsSniff.php',-    'Squiz_Sniffs_PHP_EmbeddedPhpSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/EmbeddedPhpSniff.php',-    'Squiz_Sniffs_PHP_EvalSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/EvalSniff.php',-    'Squiz_Sniffs_PHP_ForbiddenFunctionsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/ForbiddenFunctionsSniff.php',-    'Squiz_Sniffs_PHP_GlobalKeywordSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/GlobalKeywordSniff.php',-    'Squiz_Sniffs_PHP_HeredocSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/HeredocSniff.php',-    'Squiz_Sniffs_PHP_InnerFunctionsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/InnerFunctionsSniff.php',-    'Squiz_Sniffs_PHP_LowercasePHPFunctionsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/LowercasePHPFunctionsSniff.php',-    'Squiz_Sniffs_PHP_NonExecutableCodeSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/PHP/NonExecutableCodeSniff.php',-    'Squiz_Sniffs_Scope_MemberVarScopeSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Scope/MemberVarScopeSniff.php',-    'Squiz_Sniffs_Scope_MethodScopeSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Scope/MethodScopeSniff.php',-    'Squiz_Sniffs_Scope_StaticThisUsageSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Scope/StaticThisUsageSniff.php',-    'Squiz_Sniffs_Strings_ConcatenationSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Strings/ConcatenationSpacingSniff.php',-    'Squiz_Sniffs_Strings_DoubleQuoteUsageSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Strings/DoubleQuoteUsageSniff.php',-    'Squiz_Sniffs_Strings_EchoedStringsSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/Strings/EchoedStringsSniff.php',-    'Squiz_Sniffs_WhiteSpace_CastSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/CastSpacingSniff.php',-    'Squiz_Sniffs_WhiteSpace_ControlStructureSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/ControlStructureSpacingSniff.php',-    'Squiz_Sniffs_WhiteSpace_FunctionClosingBraceSpaceSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/FunctionClosingBraceSpaceSniff.php',-    'Squiz_Sniffs_WhiteSpace_FunctionOpeningBraceSpaceSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/FunctionOpeningBraceSpaceSniff.php',-    'Squiz_Sniffs_WhiteSpace_FunctionSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/FunctionSpacingSniff.php',-    'Squiz_Sniffs_WhiteSpace_LanguageConstructSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/LanguageConstructSpacingSniff.php',-    'Squiz_Sniffs_WhiteSpace_LogicalOperatorSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/LogicalOperatorSpacingSniff.php',-    'Squiz_Sniffs_WhiteSpace_MemberVarSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/MemberVarSpacingSniff.php',-    'Squiz_Sniffs_WhiteSpace_ObjectOperatorSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/ObjectOperatorSpacingSniff.php',-    'Squiz_Sniffs_WhiteSpace_OperatorSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/OperatorSpacingSniff.php',-    'Squiz_Sniffs_WhiteSpace_PropertyLabelSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/PropertyLabelSpacingSniff.php',-    'Squiz_Sniffs_WhiteSpace_ScopeClosingBraceSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/ScopeClosingBraceSniff.php',-    'Squiz_Sniffs_WhiteSpace_ScopeKeywordSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/ScopeKeywordSpacingSniff.php',-    'Squiz_Sniffs_WhiteSpace_SemicolonSpacingSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/SemicolonSpacingSniff.php',-    'Squiz_Sniffs_WhiteSpace_SuperfluousWhitespaceSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Squiz/Sniffs/WhiteSpace/SuperfluousWhitespaceSniff.php',-    'Text_Template' => $vendorDir . '/phpunit/php-text-template/src/Template.php',-    'TheSeer\\Tokenizer\\Exception' => $vendorDir . '/theseer/tokenizer/src/Exception.php',-    'TheSeer\\Tokenizer\\NamespaceUri' => $vendorDir . '/theseer/tokenizer/src/NamespaceUri.php',-    'TheSeer\\Tokenizer\\NamespaceUriException' => $vendorDir . '/theseer/tokenizer/src/NamespaceUriException.php',-    'TheSeer\\Tokenizer\\Token' => $vendorDir . '/theseer/tokenizer/src/Token.php',-    'TheSeer\\Tokenizer\\TokenCollection' => $vendorDir . '/theseer/tokenizer/src/TokenCollection.php',-    'TheSeer\\Tokenizer\\TokenCollectionException' => $vendorDir . '/theseer/tokenizer/src/TokenCollectionException.php',-    'TheSeer\\Tokenizer\\Tokenizer' => $vendorDir . '/theseer/tokenizer/src/Tokenizer.php',-    'TheSeer\\Tokenizer\\XMLSerializer' => $vendorDir . '/theseer/tokenizer/src/XMLSerializer.php',-    'Zend_Sniffs_Debug_CodeAnalyzerSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Zend/Sniffs/Debug/CodeAnalyzerSniff.php',-    'Zend_Sniffs_Files_ClosingTagSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Zend/Sniffs/Files/ClosingTagSniff.php',-    'Zend_Sniffs_NamingConventions_ValidVariableNameSniff' => $vendorDir . '/squizlabs/php_codesniffer/CodeSniffer/Standards/Zend/Sniffs/NamingConventions/ValidVariableNameSniff.php',+    'Composer\\InstalledVersions' => $vendorDir . '/composer/InstalledVersions.php',+    'Normalizer' => $vendorDir . '/symfony/polyfill-intl-normalizer/Resources/stubs/Normalizer.php', );
AI Analysis
After analyzing the provided code diff, I don't see any security vulnerabilities being fixed. The changes appear to be:

1. A change in how the vendor directory path is constructed (from `dirname(dirname(__FILE__))` to `dirname(__DIR__)`)
2. A complete replacement of the classmap contents, likely due to a dependency update or cleanup

Here's the structured response:

Vulnerability Existed: no
No security vulnerability found [include/laminas-mail/vendor/composer/autoload_classmap.php] [2-808]
Old Code: Long list of class mappings
Fixed Code: Simplified classmap with just Composer\\InstalledVersions and Normalizer

The changes appear to be related to dependency management and autoloader optimization rather than security fixes. The removal of numerous class mappings suggests a significant update or cleanup of dependencies, but no specific security vulnerabilities are being addressed in this diff.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/vendor/laminas/laminas-validator/src/File/Extension.php AI: 2 vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/vendor/laminas/laminas-validator/src/File/Extension.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/vendor/laminas/laminas-validator/src/File/Extension.php@@ -1,16 +1,25 @@ <?php--/**- * @see       https://github.com/laminas/laminas-validator for the canonical source repository- * @copyright https://github.com/laminas/laminas-validator/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-validator/blob/master/LICENSE.md New BSD License- */ namespace Laminas\Validator\File; use Laminas\Stdlib\ArrayUtils; use Laminas\Validator\AbstractValidator; use Traversable;++use function array_key_exists;+use function array_unique;+use function explode;+use function func_get_arg;+use function func_num_args;+use function implode;+use function in_array;+use function is_array;+use function is_readable;+use function is_string;+use function strrpos;+use function strtolower;+use function substr;+use function trim; /**  * Validator for the file extension of a file@@ -22,12 +31,10 @@     /**      * @const string Error constants      */-    const FALSE_EXTENSION = 'fileExtensionFalse';-    const NOT_FOUND       = 'fileExtensionNotFound';--    /**-     * @var array Error message templates-     */+    public const FALSE_EXTENSION = 'fileExtensionFalse';+    public const NOT_FOUND       = 'fileExtensionNotFound';++    /** @var array<string, string> Error message templates */     protected $messageTemplates = [         self::FALSE_EXTENSION => 'File has an incorrect extension',         self::NOT_FOUND       => 'File is not readable or does not exist',@@ -39,14 +46,12 @@      * @var array      */     protected $options = [-        'case'      => false,   // Validate case sensitive-        'extension' => '',      // List of extensions+        'case'                 => false, // Validate case sensitive+        'extension'            => '', // List of extensions         'allowNonExistentFile' => false, // Allow validation even if file does not exist     ];-    /**-     * @var array Error message template variables-     */+    /** @var array Error message template variables */     protected $messageVariables = [         'extension' => ['options' => 'extension'],     ];@@ -116,9 +121,14 @@      */     public function getExtension()     {-        $extension = explode(',', $this->options['extension']);--        return $extension;+        if (+            ! array_key_exists('extension', $this->options)+            || ! is_string($this->options['extension'])+        ) {+            return [];+        }++        return explode(',', $this->options['extension']);     }     /**@@ -203,7 +213,8 @@         $fileInfo = $this->getFileInfo($value, $file);         // Is file readable ?-        if (! $this->getAllowNonExistentFile()+        if (+            ! $this->getAllowNonExistentFile()             && (empty($fileInfo['file']) || false === is_readable($fileInfo['file']))         ) {             $this->error(self::NOT_FOUND);@@ -219,7 +230,7 @@             return true;         } elseif (! $this->getCase()) {             foreach ($extensions as $ext) {-                if (strtolower($ext) == strtolower($extension)) {+                if (strtolower($ext) === strtolower($extension)) {                     return true;                 }             }
AI Analysis
Here's the analysis of the provided code diff for security fixes:

1. Vulnerability Existed: yes
   Input Validation Vulnerability [File] [Lines 116-124]
   [Old Code]
   public function getExtension()
   {
       $extension = explode(',', $this->options['extension']);
       return $extension;
   }
   [Fixed Code]
   public function getExtension()
   {
       if (
           ! array_key_exists('extension', $this->options)
           || ! is_string($this->options['extension'])
       ) {
           return [];
       }
       return explode(',', $this->options['extension']);
   }
   [Details] The old code didn't validate the existence or type of the 'extension' option before using it, which could lead to errors or security issues if the option wasn't properly set. The fixed code adds proper input validation.

2. Vulnerability Existed: yes
   Type Juggling Vulnerability [File] [Lines 230]
   [Old Code]
   if (strtolower($ext) == strtolower($extension)) {
   [Fixed Code]
   if (strtolower($ext) === strtolower($extension)) {
   [Details] The old code used loose comparison (==) which could lead to type juggling issues. The fixed code uses strict comparison (===) which is more secure.

3. Vulnerability Existed: not sure
   Potential File Existence Check Vulnerability [File] [Lines 213-216]
   [Old Code]
   if (! $this->getAllowNonExistentFile()
       && (empty($fileInfo['file']) || false === is_readable($fileInfo['file']))
   [Fixed Code]
   if (
       ! $this->getAllowNonExistentFile()
       && (empty($fileInfo['file']) || false === is_readable($fileInfo['file']))
   [Details] The change is primarily formatting, but the improved readability might help prevent logic errors in file existence checks. However, I'm not certain if this was specifically addressing a security vulnerability.

The changes appear to focus on improving input validation, type safety, and code robustness, which all contribute to better security. The most significant security fixes are the input validation in getExtension() and the strict comparison for file extensions.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/src/Storage/Imap.php AI: 3 vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/src/Storage/Imap.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/src/Storage/Imap.php@@ -1,15 +1,23 @@ <?php--/**- * @see       https://github.com/laminas/laminas-mail for the canonical source repository- * @copyright https://github.com/laminas/laminas-mail/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-mail/blob/master/LICENSE.md New BSD License- */ namespace Laminas\Mail\Storage; use Laminas\Mail; use Laminas\Mail\Protocol;++use function array_key_exists;+use function array_pop;+use function array_push;+use function count;+use function in_array;+use function is_string;+use function ksort;+use function str_starts_with;+use function strrpos;+use function substr;++use const INF;+use const SORT_STRING; class Imap extends AbstractStorage implements Folder\FolderInterface, Writable\WritableInterface {@@ -18,24 +26,28 @@     /**      * protocol handler+     *      * @var null|Protocol\Imap      */     protected $protocol;     /**      * name of current folder+     *      * @var string      */     protected $currentFolder = '';     /**      * IMAP folder delimiter character+     *      * @var null|string      */     protected $delimiter;     /**      * IMAP flags to constants translation+     *      * @var array      */     protected static $knownFlags = [@@ -50,6 +62,7 @@     /**      * IMAP flags to search criteria+     *      * @var array      */     protected static $searchFlags = [@@ -116,24 +129,23 @@      */     public function getMessage($id)     {-        $data = $this->protocol->fetch(['FLAGS', 'RFC822.HEADER'], $id);+        $data   = $this->protocol->fetch(['FLAGS', 'RFC822.HEADER'], $id);         $header = $data['RFC822.HEADER'];         $flags = [];         foreach ($data['FLAGS'] as $flag) {-            $flags[] = isset(static::$knownFlags[$flag]) ? static::$knownFlags[$flag] : $flag;+            $flags[] = static::$knownFlags[$flag] ?? $flag;         }         return new $this->messageClass(['handler' => $this, 'id' => $id, 'headers' => $header, 'flags' => $flags]);     }-    /*+    /**      * Get raw header of message or part      *      * @param  int               $id       number of message      * @param  null|array|string $part     path to part or null for message header      * @param  int               $topLines include this many lines with header (after an empty line)-     * @param  int $topLines include this many lines with header (after an empty line)      * @return string raw header      * @throws Exception\RuntimeException      * @throws Protocol\Exception\RuntimeException@@ -149,7 +161,7 @@         return $this->protocol->fetch('RFC822.HEADER', $id);     }-    /*+    /**      * Get raw content of message or part      *      * @param  int               $id   number of message@@ -180,17 +192,14 @@      * - ssl 'SSL' or 'TLS' for secure sockets      * - folder select this folder [optional, default = 'INBOX']      *-     * @param  array $params mail reader specific parameters+     * @param  array|object|Protocol\Imap $params mail reader specific+     *     parameters or configured Imap protocol object      * @throws Exception\RuntimeException      * @throws Exception\InvalidArgumentException      * @throws Protocol\Exception\RuntimeException      */     public function __construct($params)     {-        if (is_array($params)) {-            $params = (object) $params;-        }-         $this->has['flags'] = true;         if ($params instanceof Protocol\Imap) {@@ -203,21 +212,37 @@             return;         }-        if (! isset($params->user)) {+        $params = ParamsNormalizer::normalizeParams($params);++        if (! isset($params['user'])) {             throw new Exception\InvalidArgumentException('need at least user in params');         }-        $host     = isset($params->host) ? $params->host : 'localhost';-        $password = isset($params->password) ? $params->password : '';-        $port     = isset($params->port) ? $params->port : null;-        $ssl      = isset($params->ssl) ? $params->ssl : false;+        $host     = $params['host'] ?? 'localhost';+        $password = $params['password'] ?? '';+        $port     = $params['port'] ?? null;+        $ssl      = $params['ssl'] ?? false;+        $folder   = $params['folder'] ?? 'INBOX';++        if (null !== $port) {+            $port = (int) $port;+        }++        if (! is_string($ssl)) {+            $ssl = (bool) $ssl;+        }         $this->protocol = new Protocol\Imap();-        $this->protocol->connect($host, $port, $ssl);-        if (! $this->protocol->login($params->user, $password)) {++        if (array_key_exists('novalidatecert', $params)) {+            $this->protocol->setNoValidateCert((bool) $params['novalidatecert']);+        }++        $this->protocol->connect((string) $host, $port, $ssl);+        if (! $this->protocol->login((string) $params['user'], (string) $password)) {             throw new Exception\RuntimeException('cannot login, user or password wrong');         }-        $this->selectFolder(isset($params->folder) ? $params->folder : 'INBOX');+        $this->selectFolder((string) $folder);     }     /**@@ -324,16 +349,16 @@         }         ksort($folders, SORT_STRING);-        $root = new Folder('/', '/', false);-        $stack = [null];-        $folderStack = [null];+        $root         = new Folder('/', '/', false);+        $stack        = [null];+        $folderStack  = [null];         $parentFolder = $root;-        $parent = '';+        $parent       = '';         foreach ($folders as $globalName => $data) {             do {-                if (! $parent || strpos($globalName, $parent) === 0) {-                    $pos = strrpos($globalName, $data['delim']);+                if (! $parent || str_starts_with($globalName, ! is_string($parent) ? (string) $parent : $parent)) {+                    $pos = strrpos($globalName, (string) $data['delim']);                     if ($pos === false) {                         $localName = $globalName;                     } else {@@ -342,15 +367,15 @@                     $selectable = ! $data['flags'] || ! in_array('\\Noselect', $data['flags']);                     array_push($stack, $parent);-                    $parent = $globalName . $data['delim'];-                    $folder = new Folder($localName, $globalName, $selectable);+                    $parent                   = $globalName . $data['delim'];+                    $folder                   = new Folder($localName, $globalName, $selectable);                     $parentFolder->$localName = $folder;                     array_push($folderStack, $parentFolder);-                    $parentFolder = $folder;+                    $parentFolder    = $folder;                     $this->delimiter = $data['delim'];                     break;                 } elseif ($stack) {-                    $parent = array_pop($stack);+                    $parent       = array_pop($stack);                     $parentFolder = array_pop($folderStack);                 }             } while ($stack);@@ -373,7 +398,7 @@      */     public function selectFolder($globalName)     {-        $this->currentFolder = $globalName;+        $this->currentFolder = (string) $globalName;         if (! $this->protocol->select($this->currentFolder)) {             $this->currentFolder = '';             throw new Exception\RuntimeException('cannot change folder, maybe it does not exist');@@ -383,7 +408,7 @@     /**      * get Folder instance for current folder      *-     * @return Folder instance of current folder+     * @return string instance of current folder      */     public function getCurrentFolder()     {
AI Analysis
I'll analyze the code diff for security fixes following the specified format:

1. Vulnerability Existed: yes
Improper Input Validation [include/laminas-mail/src/Storage/Imap.php] [Lines 212-242]
Old Code:
```php
if (is_array($params)) {
    $params = (object) $params;
}

// ... later in the code ...
$host     = isset($params->host) ? $params->host : 'localhost';
$password = isset($params->password) ? $params->password : '';
$port     = isset($params->port) ? $params->port : null;
$ssl      = isset($params->ssl) ? $params->ssl : false;
```

Fixed Code:
```php
$params = ParamsNormalizer::normalizeParams($params);

if (! isset($params['user'])) {
    throw new Exception\InvalidArgumentException('need at least user in params');
}

$host     = $params['host'] ?? 'localhost';
$password = $params['password'] ?? '';
$port     = $params['port'] ?? null;
$ssl      = $params['ssl'] ?? false;
$folder   = $params['folder'] ?? 'INBOX';

if (null !== $port) {
    $port = (int) $port;
}

if (! is_string($ssl)) {
    $ssl = (bool) $ssl;
}
```

2. Vulnerability Existed: yes
SSL/TLS Certificate Validation Bypass [include/laminas-mail/src/Storage/Imap.php] [Lines 234-236]
Old Code:
(None - this was a new security feature added)
Fixed Code:
```php
if (array_key_exists('novalidatecert', $params)) {
    $this->protocol->setNoValidateCert((bool) $params['novalidatecert']);
}
```

3. Vulnerability Existed: yes
Type Juggling Issues [include/laminas-mail/src/Storage/Imap.php] [Throughout the file]
Old Code:
(Implicit type conversions without validation)
Fixed Code:
```php
// Multiple instances of explicit type casting:
$this->protocol->connect((string) $host, $port, $ssl);
$this->protocol->login((string) $params['user'], (string) $password);
$this->selectFolder((string) $folder);
$this->currentFolder = (string) $globalName;
```

4. Vulnerability Existed: not sure
Potential Directory Traversal [include/laminas-mail/src/Storage/Imap.php] [Lines 349-377]
Old Code:
```php
if (! $parent || strpos($globalName, $parent) === 0) {
    $pos = strrpos($globalName, $data['delim']);
```
Fixed Code:
```php
if (! $parent || str_starts_with($globalName, ! is_string($parent) ? (string) $parent : $parent)) {
    $pos = strrpos($globalName, (string) $data['delim']);
```

The changes show significant security improvements including:
1. Proper input validation and normalization
2. Added SSL certificate validation control
3. Fixed type juggling issues through explicit casting
4. Potentially improved path handling (though I'm not certain if this was specifically addressing directory traversal)

The most critical fixes appear to be the input validation improvements and the SSL certificate validation option.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/vendor/laminas/laminas-stdlib/src/JsonSerializable.php AI: No vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/vendor/laminas/laminas-stdlib/src/JsonSerializable.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/vendor/laminas/laminas-stdlib/src/JsonSerializable.php@@ -1,10 +1,7 @@-<?php+<?php // phpcs:disable WebimpressCodingStandard.NamingConventions.Interface.Suffix-/**- * @see       https://github.com/laminas/laminas-stdlib for the canonical source repository- * @copyright https://github.com/laminas/laminas-stdlib/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-stdlib/blob/master/LICENSE.md New BSD License- */++declare(strict_types=1); namespace Laminas\Stdlib;
AI Analysis
Analyzing the provided code diff, here's the security analysis:

Vulnerability Existed: no
[No specific vulnerability] [include/laminas-mail/vendor/laminas/laminas-stdlib/src/JsonSerializable.php] [Lines 1-10]
[Old Code]
<?php

/**
 * @see       https://github.com/laminas/laminas-stdlib for the canonical source repository
 * @copyright https://github.com/laminas/laminas-stdlib/blob/master/COPYRIGHT.md
 * @license   https://github.com/laminas/laminas-stdlib/blob/master/LICENSE.md New BSD License
 */
[Fixed Code]
<?php // phpcs:disable WebimpressCodingStandard.NamingConventions.Interface.Suffix


declare(strict_types=1);

Additional Details:
The changes appear to be primarily cosmetic and related to code style rather than security fixes. The main changes are:
1. Removal of the documentation block
2. Addition of a PHPCS disable comment
3. Addition of strict types declaration

None of these changes indicate a security vulnerability fix. The modifications seem to be focused on code quality and style compliance rather than addressing any security issues.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/vendor/laminas/laminas-validator/src/File/MimeType.php AI: 4 vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/vendor/laminas/laminas-validator/src/File/MimeType.php+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/vendor/laminas/laminas-validator/src/File/MimeType.php@@ -1,18 +1,38 @@ <?php-/**- * @see       https://github.com/laminas/laminas-validator for the canonical source repository- * @copyright https://github.com/laminas/laminas-validator/blob/master/COPYRIGHT.md- * @license   https://github.com/laminas/laminas-validator/blob/master/LICENSE.md New BSD License- */- namespace Laminas\Validator\File;+use finfo; use Laminas\Stdlib\ArrayUtils; use Laminas\Stdlib\ErrorHandler; use Laminas\Validator\AbstractValidator; use Laminas\Validator\Exception;+use Psr\Http\Message\UploadedFileInterface; use Traversable;++use function array_filter;+use function array_key_exists;+use function array_keys;+use function array_merge;+use function array_unique;+use function class_exists;+use function explode;+use function finfo_file;+use function finfo_open;+use function getenv;+use function implode;+use function in_array;+use function is_array;+use function is_file;+use function is_int;+use function is_readable;+use function is_string;+use function sprintf;+use function trim;++use const E_NOTICE;+use const E_WARNING;+use const FILEINFO_MIME_TYPE; /**  * Validator for the mime type of a file@@ -22,44 +42,40 @@     use FileInformationTrait;     /**#@++     *      * @const Error type constants      */-    const FALSE_TYPE   = 'fileMimeTypeFalse';-    const NOT_DETECTED = 'fileMimeTypeNotDetected';-    const NOT_READABLE = 'fileMimeTypeNotReadable';+    public const FALSE_TYPE   = 'fileMimeTypeFalse';+    public const NOT_DETECTED = 'fileMimeTypeNotDetected';+    public const NOT_READABLE = 'fileMimeTypeNotReadable';     /**#@-*/-    /**-     * @var array Error message templates-     */+    /** @var array<string, string> */     protected $messageTemplates = [         self::FALSE_TYPE   => "File has an incorrect mimetype of '%type%'",         self::NOT_DETECTED => 'The mimetype could not be detected from the file',         self::NOT_READABLE => 'File is not readable or does not exist',     ];-    /**-     * @var array-     */+    /** @var array */     protected $messageVariables = [         'type' => 'type',     ];-    /**-     * @var string-     */+    /** @var string */     protected $type;     /**      * Finfo object to use      *-     * @var resource+     * @var finfo|null      */     protected $finfo;     /**      * If no environment variable 'MAGIC' is set, try and autodiscover it based on common locations-     * @var array+     *+     * @var list<non-empty-string>      */     protected $magicFiles = [         '/usr/share/misc/magic',@@ -79,10 +95,10 @@      * @var array      */     protected $options = [-        'enableHeaderCheck' => false,  // Allow header check-        'disableMagicFile'  => false,  // Disable usage of magicfile-        'magicFile'         => null,   // Magicfile to use-        'mimeType'          => null,   // Mimetype to allow+        'enableHeaderCheck' => false, // Allow header check+        'disableMagicFile'  => false, // Disable usage of magicfile+        'magicFile'         => null, // Magicfile to use+        'mimeType'          => null, // Mimetype to allow     ];     /**@@ -109,7 +125,7 @@             }             if (isset($options['enableHeaderCheck'])) {-                $this->enableHeaderCheck($options['enableHeaderCheck']);+                $this->enableHeaderCheck((bool) $options['enableHeaderCheck']);                 unset($options['enableHeaderCheck']);             }@@ -135,13 +151,13 @@     /**      * Returns the actual set magicfile      *-     * @return string+     * @return string|false      */     public function getMagicFile()     {         if (null === $this->options['magicFile']) {             $magic = getenv('magic');-            if (! empty($magic)) {+            if (is_string($magic) && $magic !== '') {                 $this->setMagicFile($magic);                 if ($this->options['magicFile'] === null) {                     $this->options['magicFile'] = false;@@ -152,12 +168,12 @@             foreach ($this->magicFiles as $file) {                 try {                     $this->setMagicFile($file);-                } catch (Exception\ExceptionInterface $e) {+                } catch (Exception\ExceptionInterface) {                     // suppressing errors which are thrown due to open_basedir restrictions                     continue;                 }-                if ($this->options['magicFile'] !== null) {+                if (is_string($this->options['magicFile'])) {                     return $this->options['magicFile'];                 }             }@@ -177,7 +193,7 @@      * if false, the default MAGIC file from PHP will be used      *      * @param  string $file-     * @throws Exception\RuntimeException When finfo can not read the magicfile+     * @throws Exception\RuntimeException When finfo can not read the magicfile.      * @throws Exception\InvalidArgumentException      * @throws Exception\InvalidMagicMimeFileException      * @return $this Provides fluid interface@@ -216,8 +232,8 @@     /**      * Disables usage of MagicFile      *-     * @param $disable boolean False disables usage of magic file-     * @return $this Provides fluid interface+     * @param bool $disable False disables usage of magic file; true enables it.+     * @return self Provides fluid interface      */     public function disableMagicFile($disable)     {@@ -262,7 +278,8 @@      * Returns the set mimetypes      *      * @param  bool $asArray Returns the values as array, when false a concatenated string is returned-     * @return string|array+     * @return string|list<string>+     * @psalm-return ($asArray is true ? list<string> : string)      */     public function getMimeType($asArray = false)     {@@ -278,7 +295,7 @@     /**      * Sets the mimetypes      *-     * @param  string|array $mimetype The mimetypes to validate+     * @param  string|list<string> $mimetype The mimetypes to validate      * @return $this Provides a fluent interface      */     public function setMimeType($mimetype)@@ -291,7 +308,7 @@     /**      * Adds the mimetypes      *-     * @param  string|array $mimetype The mimetypes to add for validation+     * @param  string|list<string> $mimetype The mimetypes to add for validation      * @throws Exception\InvalidArgumentException      * @return $this Provides a fluent interface      */@@ -310,19 +327,13 @@         }         foreach ($mimetype as $content) {-            if (empty($content) || ! is_string($content)) {+            if (! is_string($content) || $content === '') {                 continue;             }+             $mimetypes[] = trim($content);         }-        $mimetypes = array_unique($mimetypes);--        // Sanity check to ensure no empty values-        foreach ($mimetypes as $key => $mt) {-            if (empty($mt)) {-                unset($mimetypes[$key]);-            }-        }+        $mimetypes = array_unique(array_filter($mimetypes));         $this->options['mimeType'] = implode(',', $mimetypes);@@ -336,8 +347,8 @@      * of mimetypes can be checked. If you give for example "image" all image      * mime types will be accepted like "image/gif", "image/jpeg" and so on.      *-     * @param  string|array $value Real file to check for mimetype-     * @param  array        $file  File data from \Laminas\File\Transfer\Transfer (optional)+     * @param  string|array|UploadedFileInterface $value Real file to check for mimetype+     * @param  array               $file  File data from \Laminas\File\Transfer\Transfer (optional)      * @return bool      */     public function isValid($value, $file = null)@@ -354,7 +365,7 @@         $mimefile = $this->getMagicFile();         if (class_exists('finfo', false)) {-            if (! $this->isMagicFileDisabled() && (! empty($mimefile) && empty($this->finfo))) {+            if (! $this->isMagicFileDisabled() && (is_string($mimefile) && empty($this->finfo))) {                 ErrorHandler::start(E_NOTICE | E_WARNING);                 $this->finfo = finfo_open(FILEINFO_MIME_TYPE, $mimefile);                 ErrorHandler::stop();@@ -373,11 +384,11 @@             }         }-        if (empty($this->type) && $this->getHeaderCheck()) {+        if ($this->type === null && $this->getHeaderCheck()) {             $this->type = $fileInfo['filetype'];         }-        if (empty($this->type)) {+        if ($this->type === null) {             $this->error(static::NOT_DETECTED);             return false;         }
AI Analysis
After analyzing the code diff, I can identify the following security-related changes:

1. Vulnerability Existed: yes
File Type Validation Improvement [include/laminas-mail/vendor/laminas/laminas-validator/src/File/MimeType.php] [Lines 327-335]
Old Code:
            if (empty($content) || ! is_string($content)) {
                continue;
            }
            $mimetypes[] = trim($content);
        }
        $mimetypes = array_unique($mimetypes);

        // Sanity check to ensure no empty values
        foreach ($mimetypes as $key => $mt) {
            if (empty($mt)) {
                unset($mimetypes[$key]);
            }
        }
Fixed Code:
            if (! is_string($content) || $content === '') {
                continue;
            }

            $mimetypes[] = trim($content);
        }
        $mimetypes = array_unique(array_filter($mimetypes));

Details: The old code had a less strict validation for mimetype strings and used multiple operations to clean the array. The new code is more strict about string validation and uses array_filter for better security against malformed mimetype entries.

2. Vulnerability Existed: yes
Magic File Path Validation Improvement [include/laminas-mail/vendor/laminas/laminas-validator/src/File/MimeType.php] [Lines 157]
Old Code:
            $magic = getenv('magic');
            if (! empty($magic)) {
Fixed Code:
            $magic = getenv('magic');
            if (is_string($magic) && $magic !== '') {

Details: The old code used empty() which could potentially allow non-string values. The new code explicitly checks for string type and non-empty content, making the validation more secure.

3. Vulnerability Existed: yes
Type Safety Improvement [include/laminas-mail/vendor/laminas/laminas-validator/src/File/MimeType.php] [Lines 125]
Old Code:
            if (isset($options['enableHeaderCheck'])) {
                $this->enableHeaderCheck($options['enableHeaderCheck']);
Fixed Code:
            if (isset($options['enableHeaderCheck'])) {
                $this->enableHeaderCheck((bool) $options['enableHeaderCheck']);

Details: The old code didn't enforce boolean type for the header check option, which could lead to type confusion vulnerabilities. The new code explicitly casts to boolean.

4. Vulnerability Existed: yes
Null Check Improvement [include/laminas-mail/vendor/laminas/laminas-validator/src/File/MimeType.php] [Lines 365,384]
Old Code:
        if (empty($this->type) && $this->getHeaderCheck()) {
        if (empty($this->type)) {
Fixed Code:
        if ($this->type === null && $this->getHeaderCheck()) {
        if ($this->type === null) {

Details: The old code used empty() which could mask certain invalid states. The new code explicitly checks for null, making the validation more precise and secure.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
include/laminas-mail/vendor/laminas/laminas-loader/README.md AI: No vulnerabilities
--- /root/PatchLeaks-main/products/osTicket_downloads/v1.17.5/osTicket-1.17.5/include/laminas-mail/vendor/laminas/laminas-loader/README.md+++ /root/PatchLeaks-main/products/osTicket_downloads/v1.18.2/osTicket-1.18.2/include/laminas-mail/vendor/laminas/laminas-loader/README.md@@ -1,7 +1,28 @@ # laminas-loader-[![Build Status](https://travis-ci.org/laminas/laminas-loader.svg?branch=master)](https://travis-ci.org/laminas/laminas-loader)-[![Coverage Status](https://coveralls.io/repos/github/laminas/laminas-loader/badge.svg?branch=master)](https://coveralls.io/github/laminas/laminas-loader?branch=master)+> ## πŸ‡·πŸ‡Ί Русским Π³Ρ€Π°ΠΆΠ΄Π°Π½Π°ΠΌ+> +> ΠœΡ‹, участники Laminas, Ρ€ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ ΠΈ ΠΆΠΈΠ²Π΅ΠΌ Π² Ρ€Π°Π·Π½Ρ‹Ρ… странах. Π£ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΈΠ· нас Π΅ΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ·ΡŒΡ, родствСнники ΠΈ ΠΊΠΎΠ»Π»Π΅Π³ΠΈ ΠΊΠ°ΠΊ Π² России, Ρ‚Π°ΠΊ ΠΈ Π² Π£ΠΊΡ€Π°ΠΈΠ½Π΅. НСкоторыС ΠΈΠ· нас Ρ€ΠΎΠ΄ΠΈΠ»ΠΈΡΡŒ Π² России. НСкоторыС ΠΈΠ· нас ΠΆΠΈΠ²ΡƒΡ‚ Π² России. Π£ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π±Π°Π±ΡƒΡˆΠΊΠΈ ΠΈ Π΄Π΅Π΄ΡƒΡˆΠΊΠΈ ΡΡ€Π°ΠΆΠ°Π»ΠΈΡΡŒ с Ρ„Π°ΡˆΠΈΡΡ‚Π°ΠΌΠΈ Π²ΠΎ Π’Ρ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΈΡ€ΠΎΠ²ΠΎΠΉ Π²ΠΎΠΉΠ½Π΅. Π—Π΄Π΅ΡΡŒ Π½ΠΈΠΊΡ‚ΠΎ Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ Ρ„Π°ΡˆΠΈΠ·ΠΌ.+> +> Π£ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΈΠ· нас Π΅ΡΡ‚ΡŒ украинская родствСнница, которая спаслась ΠΈΠ· Π΄ΠΎΠΌΠ° вмСстС с сыном. ПоСзд задСрТался ΠΈΠ·-Π·Π° Π±ΠΎΠΌΠ±Π΅ΠΆΠΊΠΈ Π½Π° Π΄ΠΎΡ€ΠΎΠ³Π΅ Π²ΠΏΠ΅Ρ€Π΅Π΄ΠΈ. Π£ нас Π΅ΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ·ΡŒΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ прячутся Π² Π±ΠΎΠΌΠ±ΠΎΡƒΠ±Π΅ΠΆΠΈΡ‰Π°Ρ…. ΠœΡ‹ с Ρ‚Ρ€Π΅Π²ΠΎΠ³ΠΎΠΉ ΠΆΠ΄Π΅ΠΌ вСсточки ΠΎΡ‚ Π½ΠΈΡ… послС Π²ΠΎΠ·Π΄ΡƒΡˆΠ½Ρ‹Ρ… Π½Π°Π»Π΅Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ бСспорядочно наносят ΡƒΠ΄Π°Ρ€Ρ‹ ΠΈ ΠΏΠΎΠΏΠ°Π΄Π°ΡŽΡ‚ ΠΏΠΎ Π±ΠΎΠ»ΡŒΠ½ΠΈΡ†Π°ΠΌ, школам, дСтским садам ΠΈ Π΄ΠΎΠΌΠ°ΠΌ. ΠœΡ‹ Π½Π΅ Π±Π΅Ρ€Π΅ΠΌ это ΠΈΠ· ΠΊΠ°ΠΊΠΈΡ…-Π»ΠΈΠ±ΠΎ БМИ. ΠœΡ‹ наблюдаСм это Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ.+> +> Π’Ρ‹ довСряСтС Π½Π°ΠΌ достаточно, Ρ‡Ρ‚ΠΎΠ± ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ наши ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, ΠΈ ΠΌΡ‹ просим вас Π΄ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒΡΡ Π½Π°ΠΌ вновь. ΠœΡ‹ нуТдаСмся Π² ΠΏΠΎΠΌΠΎΡ‰ΠΈ. Π’Ρ‹Ρ…ΠΎΠ΄ΠΈΡ‚Π΅ ΠΈ протСстуйтС ΠΏΡ€ΠΎΡ‚ΠΈΠ² этой бСсполСзной Π²ΠΎΠΉΠ½Ρ‹. ΠžΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚Π΅ ΠΊΡ€ΠΎΠ²ΠΎΠΏΡ€ΠΎΠ»ΠΈΡ‚ΠΈΠ΅. Π‘ΠΊΠ°ΠΆΠΈΡ‚Π΅ "НСт Π²ΠΎΠΉΠ½Π΅!"+> +> ## πŸ‡ΊπŸ‡Έ To Citizens of Russia+> +> We at Laminas come from all over the world. Many of us have friends, family and colleagues in both Russia and Ukraine. Some of us were born in Russia. Some of us currently live in Russia. Some have grandparents who fought Nazis in World War II. Nobody here supports fascism.+> +> One team member has a Ukrainian relative who fled her home with her son. The train was delayed due to bombing on the road ahead. We have friends who are hiding in bomb shelters. We anxiously follow up on them after the air raids, which indiscriminately fire at hospitals, schools, kindergartens and houses. We're not taking this from any media. These are our actual experiences.+> +> You trust us enough to use our software. We ask that you trust us to say the truth on this. We need your help. Go out and protest this unnecessary war. Stop the bloodshed. Say "stop the war!"+++> This package is considered feature-complete, and is now in **security-only** maintenance mode, following a [decision by the Technical Steering Committee](https://github.com/laminas/technical-steering-committee/blob/2b55453e172a1b8c9c4c212be7cf7e7a58b9352c/meetings/minutes/2020-08-03-TSC-Minutes.md#vote-on-components-to-mark-as-security-only).+> If you have a security issue, please [follow our security reporting guidelines](https://getlaminas.org/security/).+> If you wish to take on the role of maintainer, please [nominate yourself](https://github.com/laminas/technical-steering-committee/issues/new?assignees=&labels=Nomination&template=Maintainer_Nomination.md&title=%5BNOMINATION%5D%5BMAINTAINER%5D%3A+%7Bname+of+person+being+nominated%7D)+++[![Build Status](https://github.com/laminas/laminas-loader/workflows/Continuous%20Integration/badge.svg)](https://github.com/laminas/laminas-loader/actions?query=workflow%3A"Continuous+Integration") laminas-loader provides different strategies for autoloading PHP classes.
AI Analysis
After analyzing the provided code diff, I can confirm that this is purely a documentation/README update with no code changes that would indicate security fixes. The changes consist of:

1. Adding a political statement about the Russia-Ukraine war in multiple languages
2. Updating the build status badge URL
3. Adding a note about the package being in security-only maintenance mode

There are no actual code changes, only markdown documentation changes. Therefore:

    Vulnerability Existed: no
    No code changes were made in this diff, only documentation updates. No security vulnerabilities were addressed.

The diff shows no changes to any executable code, only to the README.md documentation file. The changes are entirely related to project messaging and status updates, not security fixes.
CVE Analysis Results:
CVE-2025-45387: No
View CVE Description
osTicket prior to v1.17.6 and v1.18.2 are vulnerable to Broken Access Control Vulnerability in /scp/ajax.php.
CVE-2025-26241: No
View CVE Description
A SQL injection vulnerability in the "Search" functionality of "tickets.php" page in osTicket <=1.17.5 allows authenticated attackers to execute arbitrary SQL commands via the "keywords" and "topic_id" URL parameters combination.
Showing 301-320 of 426 files
Per page: