![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/laminas/laminas-permissions-acl/ |
<?xml version="1.0" encoding="UTF-8"?> <files psalm-version="5.14.1@b9d355e0829c397b9b3b47d0c0ed042a8a70284d"> <file src="src/Acl.php"> <MixedArgument> <code>$child</code> <code>$childId</code> <code><![CDATA[$dfs['stack']]]></code> <code><![CDATA[$dfs['stack']]]></code> <code>$privilege</code> <code>$privilege</code> <code>$resource</code> <code>$resource</code> <code>$resource</code> <code>$resource</code> <code>$resource</code> <code>$role</code> <code>$role</code> <code>$role</code> <code>$visitor</code> </MixedArgument> <MixedArrayAccess> <code><![CDATA[$rule['assert']]]></code> <code><![CDATA[$rule['assert']]]></code> <code><![CDATA[$rule['type']]]></code> <code><![CDATA[$rule['type']]]></code> <code><![CDATA[$rules['allPrivileges']['type']]]></code> <code><![CDATA[$rules['byPrivilegeId'][$privilege]['type']]]></code> <code><![CDATA[$this->resources[$id]['children']]]></code> <code><![CDATA[$this->resources[$parentId]['parent']]]></code> <code><![CDATA[$this->resources[$resource->getResourceId()]['parent']]]></code> <code><![CDATA[$this->resources[$resource->getResourceId()]['parent']]]></code> <code><![CDATA[$this->resources[$resourceId]['children']]]></code> <code><![CDATA[$this->resources[$resourceId]['instance']]]></code> <code><![CDATA[$this->resources[$resourceId]['parent']]]></code> <code><![CDATA[$this->resources[$resourceId]['parent']]]></code> <code><![CDATA[$this->resources[$resourceParent->getResourceId()]['children']]]></code> <code><![CDATA[$this->rules['allResources']['byRoleId']]]></code> <code><![CDATA[$this->rules['allResources']['byRoleId']]]></code> <code><![CDATA[$this->rules['allResources']['byRoleId']]]></code> <code><![CDATA[$this->rules['allResources']['byRoleId']]]></code> <code><![CDATA[$this->rules['allResources']['byRoleId'][$roleIdCurrent]]]></code> <code><![CDATA[$this->rules['allResources']['byRoleId'][$roleIdCurrent]]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceIdCurrent]]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceIdCurrent]]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceIdCurrent]]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceIdCurrent]['byRoleId']]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceIdCurrent]['byRoleId']]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceIdCurrent]['byRoleId'][$roleIdCurrent]]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceIdCurrent]['byRoleId'][$roleIdCurrent]]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceId]]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceId]]]></code> <code><![CDATA[$visitor['allRoles']]]></code> <code><![CDATA[$visitor['byRoleId']]]></code> <code><![CDATA[$visitor['byRoleId'][$roleId]]]></code> </MixedArrayAccess> <MixedArrayAssignment> <code><![CDATA[$dfs['stack'][]]]></code> <code><![CDATA[$dfs['stack'][]]]></code> <code><![CDATA[$dfs['visited'][$role->getRoleId()]]]></code> <code><![CDATA[$dfs['visited'][$role->getRoleId()]]]></code> <code><![CDATA[$this->resources[$resourceParentId]['children']]]></code> <code><![CDATA[$this->resources[$resourceParentId]['children'][$resourceId]]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceId]]]></code> <code><![CDATA[$visitor['allRoles']]]></code> <code><![CDATA[$visitor['byRoleId']]]></code> <code><![CDATA[$visitor['byRoleId'][$roleId]]]></code> </MixedArrayAssignment> <MixedArrayOffset> <code><![CDATA[$dfs['visited'][$role->getRoleId()]]]></code> <code><![CDATA[$dfs['visited'][$role->getRoleId()]]]></code> <code><![CDATA[$rules['byPrivilegeId'][$privilege]]]></code> <code><![CDATA[$rules['byPrivilegeId'][$privilege]]]></code> <code><![CDATA[$rules['byPrivilegeId'][$privilege]]]></code> <code><![CDATA[$this->resources[$parentId]]]></code> <code><![CDATA[$this->resources[$parentId]]]></code> <code><![CDATA[$this->resources[$resourceParent->getResourceId()]]]></code> <code><![CDATA[$this->rules['allResources']['byRoleId'][$roleIdCurrent]]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceIdCurrent]]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceIdCurrent]]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceIdCurrent]]]></code> <code><![CDATA[$this->rules['byResourceId'][$resourceIdCurrent]['byRoleId'][$roleIdCurrent]]]></code> </MixedArrayOffset> <MixedAssignment> <code>$child</code> <code>$child</code> <code>$childId</code> <code>$children</code> <code><![CDATA[$dfs['stack'][]]]></code> <code><![CDATA[$dfs['stack'][]]]></code> <code>$parentId</code> <code>$parentId</code> <code>$privilege</code> <code>$privilege</code> <code>$privilege</code> <code>$privilege</code> <code>$resource</code> <code>$resource</code> <code>$resource</code> <code>$resource</code> <code>$resourceIdCurrent</code> <code>$resourceIdCurrent</code> <code>$resourceIdCurrent</code> <code>$resourceIdRemoved</code> <code>$resourceParent</code> <code>$resourcesRemoved[]</code> <code>$role</code> <code>$role</code> <code>$role</code> <code>$roleIdCurrent</code> <code>$roleIdCurrent</code> <code>$roleIdCurrent</code> <code>$roleIdCurrent</code> <code>$roleParent</code> <code>$roleParent</code> <code>$rule</code> <code>$rule</code> <code>$rule</code> <code>$rule</code> <code>$rules</code> <code>$rules</code> <code>$rules</code> <code>$rules</code> <code>$rules</code> <code>$visitor</code> <code>$visitor</code> </MixedAssignment> <MixedInferredReturnType> <code>ResourceInterface</code> <code>array|null</code> <code>string|null</code> </MixedInferredReturnType> <MixedMethodCall> <code>getResourceId</code> <code>getResourceId</code> <code>getResourceId</code> <code>getRoleId</code> <code>getRoleId</code> </MixedMethodCall> <MixedReturnStatement> <code><![CDATA[$rule['type']]]></code> <code><![CDATA[$this->resources[$resourceId]['instance']]]></code> <code><![CDATA[$visitor['allRoles']]]></code> <code><![CDATA[$visitor['allRoles']]]></code> <code><![CDATA[$visitor['byRoleId'][$roleId]]]></code> <code><![CDATA[$visitor['byRoleId'][$roleId]]]></code> </MixedReturnStatement> <PossiblyInvalidPropertyAssignmentValue> <code>$resource</code> <code>$role</code> </PossiblyInvalidPropertyAssignmentValue> <PossiblyNullArgument> <code><![CDATA[$dfs['stack']]]></code> <code><![CDATA[$dfs['stack']]]></code> </PossiblyNullArgument> <PossiblyNullArrayAccess> <code><![CDATA[$dfs['stack']]]></code> <code><![CDATA[$dfs['stack']]]></code> </PossiblyNullArrayAccess> <PossiblyNullArrayAssignment> <code><![CDATA[$rules['allPrivileges']]]></code> <code><![CDATA[$rules['byPrivilegeId']]]></code> </PossiblyNullArrayAssignment> <PossiblyNullReference> <code>getResourceId</code> <code>getResourceId</code> </PossiblyNullReference> <PossiblyUndefinedVariable> <code>$resourceParentId</code> </PossiblyUndefinedVariable> <PossiblyUnusedMethod> <code>getChildResources</code> </PossiblyUnusedMethod> <PossiblyUnusedReturnValue> <code>Acl</code> <code>Acl</code> </PossiblyUnusedReturnValue> <RedundantCastGivenDocblockType> <code>(string) $resource</code> <code>(string) $resource</code> </RedundantCastGivenDocblockType> <UnsupportedPropertyReferenceUsage> <code><![CDATA[$visitor =& $this->rules['allResources']]]></code> <code><![CDATA[$visitor =& $this->rules['byResourceId'][$resourceId]]]></code> </UnsupportedPropertyReferenceUsage> <UnsupportedReferenceUsage> <code><![CDATA[$rules =& $this->getRules($resource, $role)]]></code> <code><![CDATA[$rules =& $this->getRules($resource, $role, true)]]></code> </UnsupportedReferenceUsage> <UnusedForeachValue> <code>$child</code> <code>$resource</code> <code>$rule</code> <code>$rule</code> <code>$rules</code> <code>$rules</code> <code>$rules</code> <code>$rules</code> <code>$rules</code> </UnusedForeachValue> <UnusedVariable> <code>$rules</code> </UnusedVariable> </file> <file src="src/Assertion/AssertionAggregate.php"> <MixedAssignment> <code>$assertion</code> </MixedAssignment> <MixedMethodCall> <code>assert</code> <code>new $assertion()</code> </MixedMethodCall> <MixedOperand> <code>$assertion</code> </MixedOperand> </file> <file src="src/Assertion/AssertionManager.php"> <MissingReturnType> <code>validatePlugin</code> </MissingReturnType> <NonInvariantDocblockPropertyType> <code>$instanceOf</code> </NonInvariantDocblockPropertyType> <PossiblyUnusedMethod> <code>validatePlugin</code> </PossiblyUnusedMethod> </file> <file src="src/Assertion/ExpressionAssertion.php"> <InvalidNullableReturnType> <code>bool</code> </InvalidNullableReturnType> <MissingReturnType> <code>validateOperand</code> <code>validateOperator</code> </MissingReturnType> <MixedArgument> <code><![CDATA[$expression['operator']]]></code> <code>$left</code> <code>$left</code> <code>$right</code> <code>$right</code> <code>$right</code> <code>$right</code> </MixedArgument> <MixedAssignment> <code>$left</code> <code>$right</code> </MixedAssignment> <NullableReturnStatement> <code><![CDATA[static::evaluateExpression($left, $this->operator, $right)]]></code> </NullableReturnStatement> </file> <file src="src/Resource/GenericResource.php"> <RedundantCastGivenDocblockType> <code>(string) $resourceId</code> </RedundantCastGivenDocblockType> </file> <file src="src/Role/GenericRole.php"> <RedundantCastGivenDocblockType> <code>(string) $roleId</code> </RedundantCastGivenDocblockType> </file> <file src="src/Role/Registry.php"> <InvalidPropertyAssignmentValue> <code><![CDATA[$this->roles]]></code> </InvalidPropertyAssignmentValue> <MixedArgument> <code>$parentId</code> <code>$roleParentId</code> <code>$roleParentId</code> </MixedArgument> <MixedArrayAccess> <code><![CDATA[$this->roles[$childId]['parents'][$roleId]]]></code> <code><![CDATA[$this->roles[$parentId]['children'][$roleId]]]></code> </MixedArrayAccess> <MixedArrayAssignment> <code><![CDATA[$this->roles[$roleParentId]['children'][$roleId]]]></code> </MixedArrayAssignment> <MixedArrayOffset> <code>$roleParents[$roleParentId]</code> <code><![CDATA[$this->roles[$childId]]]></code> <code><![CDATA[$this->roles[$parentId]]]></code> <code><![CDATA[$this->roles[$roleParentId]]]></code> <code><![CDATA[$this->roles[$roleParentId]]]></code> </MixedArrayOffset> <MixedArrayTypeCoercion> <code><![CDATA[$this->roles[$roleParentId]]]></code> </MixedArrayTypeCoercion> <MixedAssignment> <code>$child</code> <code>$childId</code> <code>$parent</code> <code>$parent</code> <code>$parent</code> <code>$parentId</code> <code>$parentId</code> <code>$roleParentId</code> </MixedAssignment> <MixedInferredReturnType> <code>RoleInterface</code> <code>array</code> </MixedInferredReturnType> <MixedPropertyTypeCoercion> <code><![CDATA[$this->roles]]></code> </MixedPropertyTypeCoercion> <MixedReturnStatement> <code><![CDATA[$this->roles[$roleId]['instance']]]></code> <code><![CDATA[$this->roles[$roleId]['parents']]]></code> </MixedReturnStatement> <PossiblyUndefinedVariable> <code>$roleParentId</code> </PossiblyUndefinedVariable> <RedundantCastGivenDocblockType> <code>(string) $role</code> <code>(string) $role</code> </RedundantCastGivenDocblockType> <UndefinedInterfaceMethod> <code><![CDATA[$this->roles[$childId]]]></code> <code><![CDATA[$this->roles[$parentId]]]></code> <code><![CDATA[$this->roles[$roleId]]]></code> <code><![CDATA[$this->roles[$roleId]]]></code> <code><![CDATA[$this->roles[$roleId]]]></code> <code><![CDATA[$this->roles[$roleId]]]></code> <code><![CDATA[$this->roles[$roleId]]]></code> <code><![CDATA[$this->roles[$roleId]]]></code> <code><![CDATA[$this->roles[$roleParentId]]]></code> <code><![CDATA[$this->roles[$roleParentId]]]></code> </UndefinedInterfaceMethod> <UnusedForeachValue> <code>$child</code> <code>$parent</code> <code>$parent</code> </UnusedForeachValue> </file> <file src="test/AclTest.php"> <InvalidArgument> <code>new stdClass()</code> <code>new stdClass()</code> </InvalidArgument> <MissingReturnType> <code>testAclResourcePermissionsAreInheritedWithMultilevelResourcesAndDenyPolicy</code> <code>testAllowNullPermissionAfterResourcesExistShouldAllowAllPermissionsForRole</code> <code>testRemoveDenyWithNullResourceAppliesToAllResources</code> <code>testSetRuleWorksWithResourceInterface</code> </MissingReturnType> <MixedAssignment> <code>$roleParent</code> <code>$roleParent</code> </MixedAssignment> <MixedMethodCall> <code>getRoleId</code> </MixedMethodCall> <TooManyArguments> <code><![CDATA[new Resource\GenericResource('profiles', 'gallery')]]></code> </TooManyArguments> <UndefinedClass> <code><![CDATA[$assertion->assertReturnValue]]></code> <code><![CDATA[$assertion->assertReturnValue]]></code> </UndefinedClass> <UndefinedDocblockClass> <code>$assertion</code> <code>$assertion</code> <code><![CDATA[$assertion->lastAssertResource]]></code> <code><![CDATA[$assertion->lastAssertRole]]></code> <code><![CDATA[$assertion->lastAssertRole]]></code> </UndefinedDocblockClass> <UnusedForeachValue> <code>$roleParent</code> <code>$roleParent</code> </UnusedForeachValue> </file> <file src="test/Assertion/AssertionAggregateTest.php"> <MissingReturnType> <code>testClearAssertions</code> </MissingReturnType> </file> <file src="test/Assertion/CallbackAssertionTest.php"> <MissingClosureParamType> <code>$aclArg</code> <code>$aclArg</code> <code>$privilegeArg</code> <code>$privilegeArg</code> <code>$resourceArg</code> <code>$resourceArg</code> <code>$roleArg</code> <code>$roleArg</code> <code>$value</code> </MissingClosureParamType> <MissingClosureReturnType> <code><![CDATA[static fn($aclArg, $roleArg, $resourceArg, $privilegeArg) => $value]]></code> <code><![CDATA[static fn($value) => static fn($aclArg, $roleArg, $resourceArg, $privilegeArg) => $value]]></code> </MissingClosureReturnType> <UnusedClosureParam> <code>$aclArg</code> <code>$privilegeArg</code> <code>$resourceArg</code> <code>$roleArg</code> </UnusedClosureParam> </file> <file src="test/Assertion/ExpressionAssertionTest.php"> <MissingReturnType> <code>testExpressionsEvaluation</code> </MissingReturnType> <PossiblyUnusedMethod> <code>getExpressions</code> </PossiblyUnusedMethod> </file> <file src="test/TestAsset/ExpressionUseCase/BlogPost.php"> <PossiblyUnusedMethod> <code>getAuthorName</code> <code>getShortDescription</code> </PossiblyUnusedMethod> <PossiblyUnusedProperty> <code>$content</code> <code>$title</code> </PossiblyUnusedProperty> </file> <file src="test/TestAsset/ExpressionUseCase/User.php"> <PossiblyUnusedMethod> <code>isAdult</code> </PossiblyUnusedMethod> </file> <file src="test/TestAsset/ExtendedAclLaminas2234.php"> <PossiblyUnusedReturnValue> <code>bool|void</code> <code>bool|void</code> <code>bool|void</code> </PossiblyUnusedReturnValue> </file> <file src="test/TestAsset/StandardUseCase/UserIsBlogPostOwnerAssertion.php"> <ParamNameMismatch> <code>$blogPost</code> <code>$user</code> </ParamNameMismatch> <PossiblyUnusedProperty> <code>$lastAssertPrivilege</code> <code>$lastAssertResource</code> <code>$lastAssertRole</code> </PossiblyUnusedProperty> </file> </files>