39 lines
34 KiB
JSON
39 lines
34 KiB
JSON
{
|
|
"schema_version": 1,
|
|
"channel": "homelab-runtime",
|
|
"command_id": "SUPPORT-260920-PVEPRO-PERMISSION-PROBE-RCA-READONLY-716R5",
|
|
"status": "OK",
|
|
"rc": 0,
|
|
"host": "pve01",
|
|
"mode": "read-only",
|
|
"component": "pvepro-permission-probe-rca-readonly",
|
|
"started_at_utc": "2026-09-19T23:18:35Z",
|
|
"finished_at_utc": "2026-09-19T23:18:36Z",
|
|
"reference_register_checked": true,
|
|
"reference_sha256": "5a3d8e5154c41cb582a4e0aca68090be1f0138918bf82131a948df326f9d8d66",
|
|
"error_register_checked": true,
|
|
"error_register_sha256": "3b09a553ec0f527ed3afeed4753f52a74ee3036045bbfb3c685e9f8af4ba7ba0",
|
|
"command_sha256": "ae1b7ad338972bbb7f0ac123023385e8bc3ade9b9b2ee2bc38dc1ac294069c5f",
|
|
"duplicate_failed_command_blocked": false,
|
|
"block_reason": null,
|
|
"execution_started": true,
|
|
"change_declared": false,
|
|
"result_contract_valid": true,
|
|
"result_contract_status": null,
|
|
"result_contract_error": null,
|
|
"command_rc": 0,
|
|
"changes_made": false,
|
|
"rollback_started": false,
|
|
"rollback_restored": null,
|
|
"mutation_outcome": "NO_MUTATION",
|
|
"sanitized": true,
|
|
"secrets_included": false,
|
|
"private_addresses_included": false,
|
|
"raw_evidence_retained_locally": true,
|
|
"raw_evidence_sha256": "197b2e2b0efef65e993c880421caec4aafa9a68efc30bd3e5c72526ae81910af",
|
|
"sanitized_output_sha256": "197b2e2b0efef65e993c880421caec4aafa9a68efc30bd3e5c72526ae81910af",
|
|
"output_truncated_in_json": false,
|
|
"full_sanitized_output_url": "https://git.gram1.ru/.well-known/homelab-runtime/latest.txt",
|
|
"output": "GUEST_QGA_TRANSPORT_RC=0\nGUEST_EXITCODE=0\nTRANSPORT_STDERR_SHA256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\nGUEST_OUTPUT_BEGIN\\nXF_SHA=d0c10d91d743e0a541d9a1b201080491dae0a8b1757866f113ef707b83403219\nSERVER_PHP_LINT_STATE_RC=0\nSERVER_PHP_LINT_STATE_STDERR_SHA256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\nSERVER_PHP_LINT_REFLECT_RC=0\nSERVER_PHP_LINT_REFLECT_STDERR_SHA256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\nPERMISSION_STATE_RC=0\nPERMISSION_STATE_STDERR_SHA256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\nPERMISSION_STATE_STDERR_BYTES=0\nPERMISSION_STATE_OUTPUT_BEGIN\nVISITOR_USER_ID=0\\nVISITOR_PERMISSION_COMBINATION_ID=1\\nVISITOR_HAS_general_view=true\\nVISITOR_HAS_general_viewProfile=true\\nVISITOR_HAS_forum_viewOthers=true\\nUSER_GROUPS=[{\"id\":1,\"title_sha256\":\"2ed52ce2083ecf6e72e527507e999a09018abef54808d1e9b7f98731406607ce\"},{\"id\":2,\"title_sha256\":\"2351ee992626bafb88f7985721ec0f56c7d2e242f753e542dee015f178fffea6\"},{\"id\":3,\"title_sha256\":\"35388e9f363dd162fc578afbef7005604b46f469b538cbf88f576aeec3f00299\"},{\"id\":4,\"title_sha256\":\"34d5166b62f8697fee6a7d193d637b1502aefa8f8c4a57f49839d9eda6799b32\"}]\\nGROUP_1_GLOBAL_PERMISSION_ROWS=[{\"permission_group_id\":\"forum\",\"permission_id\":\"viewContent\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"viewOthers\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"editProfile\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"search\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"submitWithoutApproval\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"useContactForm\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"usePush\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"view\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"viewMemberList\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"viewNode\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"viewProfile\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"profilePost\",\"permission_id\":\"view\",\"permission_value\":\"allow\",\"permission_value_int\":0}]\\nGROUP_2_GLOBAL_PERMISSION_ROWS=[{\"permission_group_id\":\"bookmark\",\"permission_id\":\"view\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"contentVote\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"deleteOwnPost\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"editOwnPost\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"editOwnPostTimeLimit\",\"permission_value\":\"use_int\",\"permission_value_int\":-1},{\"permission_group_id\":\"forum\",\"permission_id\":\"editOwnThreadTitle\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"markSolution\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"postReply\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"postThread\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"react\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"tagOwnThread\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"uploadAttachment\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"uploadVideo\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"viewAttachment\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"viewContent\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"viewOthers\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"forum\",\"permission_id\":\"votePoll\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"changeUsername\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"createTag\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"editProfile\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"editSignature\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"maxMentionedUsers\",\"permission_value\":\"use_int\",\"permission_value_int\":5},{\"permission_group_id\":\"general\",\"permission_id\":\"report\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"search\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"submitWithoutApproval\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"useContactForm\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"view\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"viewMemberList\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"viewNode\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"general\",\"permission_id\":\"viewProfile\",\"permission_value\":\"allow\",\"permission_value_int\":0},{\"permission_group_id\":\"profilePost\",\"permission_id\":\"view\",\"permission_value\":\"allow\",\"permission_value_int\":0}]\\nNODE_1_CONTENT_PERMISSION_ROWS=[]\\nNODE_2_CONTENT_PERMISSION_ROWS=[]\\nNODE_3_CONTENT_PERMISSION_ROWS=[]\\nNODE_8_CONTENT_PERMISSION_ROWS=[]\\nNODE_9_CONTENT_PERMISSION_ROWS=[]\\nNODE_11_CONTENT_PERMISSION_ROWS=[]\\nNODE_17_CONTENT_PERMISSION_ROWS=[]\\nNODE_18_CONTENT_PERMISSION_ROWS=[]\\nFORUM_2_EXISTS=true\\nFORUM_2_CAN_VIEW=true\\nFORUM_2_NODE_CACHE_SELECTED={\"type\":\"NULL\"}\\nFORUM_2_NODE_CACHE_SHA256=28859e345f55ce45426724100617830af221bdf3e01f4333ee34ba58d2df4429\\nFORUM_8_EXISTS=true\\nFORUM_8_CAN_VIEW=false\\nFORUM_8_NODE_CACHE_SELECTED={\"type\":\"NULL\"}\\nFORUM_8_NODE_CACHE_SHA256=28859e345f55ce45426724100617830af221bdf3e01f4333ee34ba58d2df4429\\nFORUM_9_EXISTS=true\\nFORUM_9_CAN_VIEW=false\\nFORUM_9_NODE_CACHE_SELECTED={\"type\":\"NULL\"}\\nFORUM_9_NODE_CACHE_SHA256=28859e345f55ce45426724100617830af221bdf3e01f4333ee34ba58d2df4429\\nFORUM_11_EXISTS=true\\nFORUM_11_CAN_VIEW=false\\nFORUM_11_NODE_CACHE_SELECTED={\"type\":\"NULL\"}\\nFORUM_11_NODE_CACHE_SHA256=28859e345f55ce45426724100617830af221bdf3e01f4333ee34ba58d2df4429\\nFORUM_17_EXISTS=true\\nFORUM_17_CAN_VIEW=false\\nFORUM_17_NODE_CACHE_SELECTED={\"type\":\"NULL\"}\\nFORUM_17_NODE_CACHE_SHA256=28859e345f55ce45426724100617830af221bdf3e01f4333ee34ba58d2df4429\\nFORUM_18_EXISTS=true\\nFORUM_18_CAN_VIEW=false\\nFORUM_18_NODE_CACHE_SELECTED={\"type\":\"NULL\"}\\nFORUM_18_NODE_CACHE_SHA256=28859e345f55ce45426724100617830af221bdf3e01f4333ee34ba58d2df4429\\nPERMISSION_COMBINATIONS=[{\"permission_combination_id\":1,\"user_id\":0,\"user_group_list\":\"1\"},{\"permission_combination_id\":3,\"user_id\":0,\"user_group_list\":\"2\"},{\"permission_combination_id\":4,\"user_id\":0,\"user_group_list\":\"2,3\"},{\"permission_combination_id\":5,\"user_id\":0,\"user_group_list\":\"2,3,4\"},{\"permission_combination_id\":6,\"user_id\":1,\"user_group_list\":\"2,3,4\"}]\\nPERMISSION_CACHE_CONTENT_COLUMNS=[\"permission_combination_id\",\"content_type\",\"content_id\",\"cache_value\"]\\nNODE_1_CACHE_ROWS=[{\"permission_combination_id\":1,\"content_type\":\"node\",\"content_id\":1,\"cache_sha256\":\"4bec2c76ac9f130abb1f5ea2adb6c09fad83598b881cf874e4bcd2fa36d372fe\"},{\"permission_combination_id\":3,\"content_type\":\"node\",\"content_id\":1,\"cache_sha256\":\"4bec2c76ac9f130abb1f5ea2adb6c09fad83598b881cf874e4bcd2fa36d372fe\"},{\"permission_combination_id\":4,\"content_type\":\"node\",\"content_id\":1,\"cache_sha256\":\"4bec2c76ac9f130abb1f5ea2adb6c09fad83598b881cf874e4bcd2fa36d372fe\"},{\"permission_combination_id\":5,\"content_type\":\"node\",\"content_id\":1,\"cache_sha256\":\"4bec2c76ac9f130abb1f5ea2adb6c09fad83598b881cf874e4bcd2fa36d372fe\"},{\"permission_combination_id\":6,\"content_type\":\"node\",\"content_id\":1,\"cache_sha256\":\"4bec2c76ac9f130abb1f5ea2adb6c09fad83598b881cf874e4bcd2fa36d372fe\"}]\\nNODE_2_CACHE_ROWS=[{\"permission_combination_id\":1,\"content_type\":\"node\",\"content_id\":2,\"cache_sha256\":\"1db2d92b6683fab36abb410478ea7864828287b034c4a1220b511dec129cd9b1\"},{\"permission_combination_id\":3,\"content_type\":\"node\",\"content_id\":2,\"cache_sha256\":\"aae61963956180efdfaeb74a16f86df49e50f4c4f60a61f58352dc76bf8550f6\"},{\"permission_combination_id\":4,\"content_type\":\"node\",\"content_id\":2,\"cache_sha256\":\"06e48530a9d18697dcb1ed6455218d7b6884507bbfff9a88eaf777b19ccaa72e\"},{\"permission_combination_id\":5,\"content_type\":\"node\",\"content_id\":2,\"cache_sha256\":\"06e48530a9d18697dcb1ed6455218d7b6884507bbfff9a88eaf777b19ccaa72e\"},{\"permission_combination_id\":6,\"content_type\":\"node\",\"content_id\":2,\"cache_sha256\":\"130f7985f1688afb3ec90c81573e91084152e2d0a53162565f013adcd577a299\"}]\\nNODE_3_CACHE_ROWS=[]\\nNODE_8_CACHE_ROWS=[]\\nNODE_9_CACHE_ROWS=[]\\nNODE_11_CACHE_ROWS=[]\\nNODE_17_CACHE_ROWS=[]\\nNODE_18_CACHE_ROWS=[]\\nNO_MUTATION=true\\n\nPERMISSION_STATE_OUTPUT_END\nPERMISSION_SOURCE_SNIPPETS=[{\"path\":\"/var/www/pvepro/src/XF/Entity/Forum.php\",\"start\":96,\"sha256\":\"ddb39a34ff5fd30c660b518f4a45c7fadf04122be5d13f2280516f23fe8bbf1e\",\"text\":\"\\tpublic function canCreatePoll(&$error = null)\\\\n\\t{\\\\n\\t\\treturn $this->TypeHandler->isThreadTypeCreatable('poll', $this);\\\\n\\t}\\\\n\\\\n\\tpublic function canViewThreadContent(): bool\\\\n\\t{\\\\n\\t\\treturn \\\\XF::visitor()->hasNodePermission($this->node_id, 'viewContent');\\\\n\\t}\\\\n\\\\n\\tpublic function canViewDeletedThreads()\\\\n\\t{\\\\n\\t\\treturn \\\\XF::visitor()->hasNodePermission($this->node_id, 'viewDeleted');\\\\n\\t}\\\\n\\\\n\\tpublic function canViewModeratedThreads()\\\\n\\t{\\\\n\\t\\treturn \\\\XF::visitor()->hasNodePermission($this->node_id, 'viewModerated');\\\\n\\t}\\\\n\\\\n\\tpublic function canUploadAndManageAttachments()\\\\n\\t{\\\\n\\t\\t$visitor = \\\\XF::visitor();\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/Forum.php\",\"start\":101,\"sha256\":\"3dc2b8ff5c5ea7bd3c4822e6e619962188500f72cce1c08290d0e251a8a69b09\",\"text\":\"\\tpublic function canViewThreadContent(): bool\\\\n\\t{\\\\n\\t\\treturn \\\\XF::visitor()->hasNodePermission($this->node_id, 'viewContent');\\\\n\\t}\\\\n\\\\n\\tpublic function canViewDeletedThreads()\\\\n\\t{\\\\n\\t\\treturn \\\\XF::visitor()->hasNodePermission($this->node_id, 'viewDeleted');\\\\n\\t}\\\\n\\\\n\\tpublic function canViewModeratedThreads()\\\\n\\t{\\\\n\\t\\treturn \\\\XF::visitor()->hasNodePermission($this->node_id, 'viewModerated');\\\\n\\t}\\\\n\\\\n\\tpublic function canUploadAndManageAttachments()\\\\n\\t{\\\\n\\t\\t$visitor = \\\\XF::visitor();\\\\n\\\\n\\t\\treturn ($visitor->user_id && $visitor->hasNodePermission($this->node_id, 'uploadAttachment'));\\\\n\\t}\\\\n\\\\n\\tpublic function canUploadVideos()\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/Forum.php\",\"start\":106,\"sha256\":\"76a6149417b8ae3acf5b3fb8aa8460374e307213d5aee0cf19b1bbfc05f70bdf\",\"text\":\"\\tpublic function canViewDeletedThreads()\\\\n\\t{\\\\n\\t\\treturn \\\\XF::visitor()->hasNodePermission($this->node_id, 'viewDeleted');\\\\n\\t}\\\\n\\\\n\\tpublic function canViewModeratedThreads()\\\\n\\t{\\\\n\\t\\treturn \\\\XF::visitor()->hasNodePermission($this->node_id, 'viewModerated');\\\\n\\t}\\\\n\\\\n\\tpublic function canUploadAndManageAttachments()\\\\n\\t{\\\\n\\t\\t$visitor = \\\\XF::visitor();\\\\n\\\\n\\t\\treturn ($visitor->user_id && $visitor->hasNodePermission($this->node_id, 'uploadAttachment'));\\\\n\\t}\\\\n\\\\n\\tpublic function canUploadVideos()\\\\n\\t{\\\\n\\t\\t$options = $this->app()->options();\\\\n\\\\n\\t\\tif (empty($options->allowVideoUploads['enabled']))\\\\n\\t\\t{\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/Forum.php\",\"start\":439,\"sha256\":\"246fbbf565d9c125c32fe9a72b0057837224d11ce188cedcb3ff224474a7b6c7\",\"text\":\"\\t\\treturn (!$prefix || isset($this->prefix_cache[$prefix]));\\\\n\\t}\\\\n\\\\n\\tpublic function getNodeListExtras()\\\\n\\t{\\\\n\\t\\tif (\\\\XF::visitor()->hasNodePermission($this->node_id, 'viewOthers'))\\\\n\\t\\t{\\\\n\\t\\t\\t$output = [\\\\n\\t\\t\\t\\t'discussion_count' => $this->discussion_count,\\\\n\\t\\t\\t\\t'message_count' => $this->message_count,\\\\n\\t\\t\\t\\t'hasNew' => $this->isUnread(),\\\\n\\t\\t\\t];\\\\n\\\\n\\t\\t\\tif ($this->last_post_date)\\\\n\\t\\t\\t{\\\\n\\t\\t\\t\\t$output['last_post_id'] = $this->last_post_id;\\\\n\\t\\t\\t\\t$output['last_post_date'] = $this->last_post_date;\\\\n\\t\\t\\t\\t$output['last_post_user_id'] = $this->last_post_user_id;\\\\n\\t\\t\\t\\t$output['last_post_username'] = $this->last_post_username;\\\\n\\t\\t\\t\\t$output['last_thread_id'] = $this->last_thread_id;\\\\n\\t\\t\\t\\t$output['last_thread_title'] = $this->app()->stringFormatter()->censorText($this->last_thread_title);\\\\n\\t\\t\\t\\t$output['last_thread_prefix_id'] = $this->last_thread_prefix_id;\\\\n\\t\\t\\t\\t$output['LastPostUser'] = $this->LastPostUser;\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/Forum.php\",\"start\":681,\"sha256\":\"61255e3d5c3e21701cd1dd66434d50648b6386391b9ccd3f3a7844f8c6276653\",\"text\":\"\\\\n\\tpublic function getNodeTypeApiData($verbosity = self::VERBOSITY_NORMAL, array $options = [])\\\\n\\t{\\\\n\\t\\t$result = parent::getNodeTypeApiData();\\\\n\\\\n\\t\\tif (\\\\XF::visitor()->hasNodePermission($this->node_id, 'viewOthers'))\\\\n\\t\\t{\\\\n\\t\\t\\t$result->includeExtra([\\\\n\\t\\t\\t\\t'is_unread' => $this->isUnread(),\\\\n\\t\\t\\t\\t'discussion_count' => $this->discussion_count,\\\\n\\t\\t\\t\\t'message_count' => $this->message_count,\\\\n\\t\\t\\t\\t'last_post_id' => $this->last_post_id,\\\\n\\t\\t\\t\\t'last_post_date' => $this->last_post_date,\\\\n\\t\\t\\t\\t'last_post_username' => $this->last_post_username,\\\\n\\t\\t\\t\\t'last_thread_id' => $this->last_thread_id,\\\\n\\t\\t\\t\\t'last_thread_title' => $this->app()->stringFormatter()->censorText($this->last_thread_title),\\\\n\\t\\t\\t\\t'last_thread_prefix_id' => $this->last_thread_prefix_id,\\\\n\\t\\t\\t]);\\\\n\\t\\t}\\\\n\\\\n\\t\\t$this->TypeHandler->addTypeConfigToApiResult($this, $result, $verbosity, $options);\\\\n\\\\n\\t\\tif ($verbosity > self::VERBOSITY_NORMAL)\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/Node.php\",\"start\":45,\"sha256\":\"f529a67e7eea7aeaaa2aa763ca2f0fe6c468844bf966dfcc39b823a912338d0c\",\"text\":\" */\\\\nclass Node extends Entity implements LinkableInterface, ViewableInterface\\\\n{\\\\n\\tuse BookmarkTrait;\\\\n\\\\n\\tpublic function canView(&$error = null)\\\\n\\t{\\\\n\\t\\t/** @var AbstractNode $data */\\\\n\\t\\t$data = $this->Data;\\\\n\\t\\tif (!$data)\\\\n\\t\\t{\\\\n\\t\\t\\treturn false;\\\\n\\t\\t}\\\\n\\\\n\\t\\treturn $data->canView($error);\\\\n\\t}\\\\n\\\\n\\tprotected function canBookmarkContent(&$error = null)\\\\n\\t{\\\\n\\t\\treturn ($this->node_type_id == 'Page' && $this->canView($error));\\\\n\\t}\\\\n\\\\n\\tpublic function isSearchEngineIndexable(): bool\"},{\"path\":\"/var/www/pvepro/src/XF/PermissionCache.php\",\"start\":18,\"sha256\":\"83682b6d6cd774d6b60bfd2d72099c03400cf0a67e071207e00d2ec55704f236\",\"text\":\"\\tpublic function __construct(AbstractAdapter $db)\\\\n\\t{\\\\n\\t\\t$this->db = $db;\\\\n\\t}\\\\n\\\\n\\tpublic function getPermissionSet($permissionCombinationId)\\\\n\\t{\\\\n\\t\\treturn new PermissionSet($this, $permissionCombinationId);\\\\n\\t}\\\\n\\\\n\\tpublic function getGlobalPerms($permissionCombinationId)\\\\n\\t{\\\\n\\t\\t// value will be null if we failed to retrieve the permissions\\\\n\\t\\tif (array_key_exists($permissionCombinationId, $this->globalPerms))\\\\n\\t\\t{\\\\n\\t\\t\\treturn $this->globalPerms[$permissionCombinationId];\\\\n\\t\\t}\\\\n\\\\n\\t\\t$cache = $this->db->fetchOne(\\\"\\\\n\\t\\t\\tSELECT cache_value\\\\n\\t\\t\\tFROM xf_permission_combination\\\\n\\t\\t\\tWHERE permission_combination_id = ?\\\\n\\t\\t\\\", $permissionCombinationId);\"},{\"path\":\"/var/www/pvepro/src/XF/PermissionCache.php\",\"start\":96,\"sha256\":\"9a73f7739703efac4ad1d89125e45a5ba275db71c7b5469935ba84d70a37ba82\",\"text\":\"\\t\\t$this->contentPerms[$permissionCombinationId][$contentType][$contentId] = $cache;\\\\n\\\\n\\t\\treturn $cache;\\\\n\\t}\\\\n\\\\n\\tpublic function cacheAllContentPerms($permissionCombinationId, $contentType)\\\\n\\t{\\\\n\\t\\tif (isset($this->globalCacheRun[$contentType][$permissionCombinationId]))\\\\n\\t\\t{\\\\n\\t\\t\\treturn;\\\\n\\t\\t}\\\\n\\t\\t$this->globalCacheRun[$contentType][$permissionCombinationId] = true;\\\\n\\\\n\\t\\t$permsResult = $this->db->fetchPairs(\\\"\\\\n\\t\\t\\tSELECT content_id, cache_value\\\\n\\t\\t\\tFROM xf_permission_cache_content\\\\n\\t\\t\\tWHERE permission_combination_id = ?\\\\n\\t\\t\\t\\tAND content_type = ?\\\\n\\t\\t\\\", [$permissionCombinationId, $contentType]);\\\\n\\\\n\\t\\tforeach ($permsResult AS $contentId => $cache)\\\\n\\t\\t{\\\\n\\t\\t\\t$cache = $this->decodePermissionCache($cache);\"},{\"path\":\"/var/www/pvepro/src/XF/PermissionCache.php\",\"start\":119,\"sha256\":\"f858e5eeea5f4858afe0028a9755e9152bb9e9dc30e0b71c81f181781e6fa3f4\",\"text\":\"\\\\n\\t\\t\\t$this->contentPerms[$permissionCombinationId][$contentType][$contentId] = $cache;\\\\n\\t\\t}\\\\n\\t}\\\\n\\\\n\\tpublic function cacheContentPermsByIds($permissionCombinationId, $contentType, array $contentIds)\\\\n\\t{\\\\n\\t\\tif (!$contentIds)\\\\n\\t\\t{\\\\n\\t\\t\\treturn;\\\\n\\t\\t}\\\\n\\\\n\\t\\tforeach ($contentIds AS $k => $contentId)\\\\n\\t\\t{\\\\n\\t\\t\\tif (isset($this->contentPerms[$permissionCombinationId][$contentType][$contentId]))\\\\n\\t\\t\\t{\\\\n\\t\\t\\t\\tunset($contentIds[$k]);\\\\n\\t\\t\\t}\\\\n\\t\\t}\\\\n\\t\\tif (!$contentIds)\\\\n\\t\\t{\\\\n\\t\\t\\treturn;\\\\n\\t\\t}\"},{\"path\":\"/var/www/pvepro/src/XF/PermissionCache.php\",\"start\":154,\"sha256\":\"42a826655f3bb839d8dc5040d1e55b4950bb9ac287052234e8a4284165534621\",\"text\":\"\\\\n\\t\\t\\t$this->contentPerms[$permissionCombinationId][$contentType][$contentId] = $cache;\\\\n\\t\\t}\\\\n\\t}\\\\n\\\\n\\tpublic function cacheMultipleContentPermsForContent(array $permissionCombinationIds, $contentType, $contentId)\\\\n\\t{\\\\n\\t\\tif (!$permissionCombinationIds)\\\\n\\t\\t{\\\\n\\t\\t\\treturn;\\\\n\\t\\t}\\\\n\\\\n\\t\\t$permsResult = $this->db->fetchPairs(\\\"\\\\n\\t\\t\\tSELECT permission_combination_id, cache_value\\\\n\\t\\t\\tFROM xf_permission_cache_content\\\\n\\t\\t\\tWHERE permission_combination_id IN (\\\" . $this->db->quote($permissionCombinationIds) . \\\")\\\\n\\t\\t\\t\\tAND content_type = ?\\\\n\\t\\t\\t\\tAND content_id = ?\\\\n\\t\\t\\\", [$contentType, $contentId]);\\\\n\\\\n\\t\\tforeach ($permsResult AS $permissionCombinationId => $cache)\\\\n\\t\\t{\\\\n\\t\\t\\t$cache = $this->decodePermissionCache($cache);\"},{\"path\":\"/var/www/pvepro/src/XF/Repository/PermissionCombinationRepository.php\",\"start\":76,\"sha256\":\"429db2743e8e412951196b3a59de919f708ef848a46e83e96aaf3f2ef619eae0\",\"text\":\"\\t\\t}\\\\n\\\\n\\t\\treturn $combination;\\\\n\\t}\\\\n\\\\n\\tpublic function updatePermissionCombinationForUser(User $user, $buildOnCreate = true)\\\\n\\t{\\\\n\\t\\t$combination = $this->getPermissionCombinationForUser($user);\\\\n\\t\\tif (!$combination->exists())\\\\n\\t\\t{\\\\n\\t\\t\\t$combination->setOption('rebuild_permission_cache', $buildOnCreate);\\\\n\\t\\t\\t$combination->save();\\\\n\\t\\t}\\\\n\\\\n\\t\\tif ($combination->permission_combination_id != $user->permission_combination_id)\\\\n\\t\\t{\\\\n\\t\\t\\t$user->fastUpdate('permission_combination_id', $combination->permission_combination_id);\\\\n\\t\\t}\\\\n\\\\n\\t\\treturn $combination;\\\\n\\t}\\\\n\\\\n\\tpublic function hasUserSpecificPermissions($userId)\"},{\"path\":\"/var/www/pvepro/src/XF/Repository/PermissionCombinationRepository.php\",\"start\":81,\"sha256\":\"4fec4370798eb11f995ade7a704717b70f93aa54d03d0c3bc04f3940a6e36201\",\"text\":\"\\tpublic function updatePermissionCombinationForUser(User $user, $buildOnCreate = true)\\\\n\\t{\\\\n\\t\\t$combination = $this->getPermissionCombinationForUser($user);\\\\n\\t\\tif (!$combination->exists())\\\\n\\t\\t{\\\\n\\t\\t\\t$combination->setOption('rebuild_permission_cache', $buildOnCreate);\\\\n\\t\\t\\t$combination->save();\\\\n\\t\\t}\\\\n\\\\n\\t\\tif ($combination->permission_combination_id != $user->permission_combination_id)\\\\n\\t\\t{\\\\n\\t\\t\\t$user->fastUpdate('permission_combination_id', $combination->permission_combination_id);\\\\n\\t\\t}\\\\n\\\\n\\t\\treturn $combination;\\\\n\\t}\\\\n\\\\n\\tpublic function hasUserSpecificPermissions($userId)\\\\n\\t{\\\\n\\t\\tif (!$userId)\\\\n\\t\\t{\\\\n\\t\\t\\treturn false;\\\\n\\t\\t}\"},{\"path\":\"/var/www/pvepro/src/XF/Repository/PermissionCombinationRepository.php\",\"start\":107,\"sha256\":\"686e2f2e9b0fec141232647ac675ef17b4f52e83651cdecb0b33e1bbfe4e615c\",\"text\":\"\\t\\t\\tUNION ALL\\\\n\\t\\t\\t(SELECT 1 FROM xf_permission_entry_content WHERE user_group_id = 0 AND user_id = ? LIMIT 1)\\\\n\\t\\t\\\", [$userId, $userId]);\\\\n\\t}\\\\n\\\\n\\tpublic function getPermissionCombinationsForUserGroup($userGroupId)\\\\n\\t{\\\\n\\t\\t$groupCombinations = $this->finder(PermissionCombinationUserGroupFinder::class)\\\\n\\t\\t\\t->where('user_group_id', $userGroupId)\\\\n\\t\\t\\t->with('PermissionCombination', true)\\\\n\\t\\t\\t->fetch();\\\\n\\\\n\\t\\treturn $groupCombinations->pluck(function ($groupCombination)\\\\n\\t\\t{\\\\n\\t\\t\\treturn [$groupCombination->permission_combination_id, $groupCombination->PermissionCombination];\\\\n\\t\\t});\\\\n\\t}\\\\n\\\\n\\tpublic function deleteUnusedPermissionCombinations()\\\\n\\t{\\\\n\\t\\t$db = $this->db();\\\\n\\\\n\\t\\t$preRegActionCondition = '';\"}]\nPERMISSION_WRITE_FLOW_HITS=[{\"path\":\"/var/www/pvepro/src/XF/Entity/PermissionEntryContent.php\",\"line\":17,\"text\":\"* @property string $permission_value\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/PermissionEntryContent.php\",\"line\":18,\"text\":\"* @property int $permission_value_int\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/PermissionEntryContent.php\",\"line\":20,\"text\":\"class PermissionEntryContent extends Entity\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/PermissionEntryContent.php\",\"line\":28,\"text\":\"$structure->shortName = 'XF:PermissionEntryContent';\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/PermissionEntryContent.php\",\"line\":38,\"text\":\"'permission_value' => ['type' => self::STR, 'required' => true,\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/PermissionEntryContent.php\",\"line\":41,\"text\":\"'permission_value_int' => ['type' => self::INT],\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/PermissionEntry.php\",\"line\":15,\"text\":\"* @property string $permission_value\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/PermissionEntry.php\",\"line\":16,\"text\":\"* @property int $permission_value_int\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/PermissionEntry.php\",\"line\":18,\"text\":\"class PermissionEntry extends Entity\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/PermissionEntry.php\",\"line\":26,\"text\":\"$structure->shortName = 'XF:PermissionEntry';\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/PermissionEntry.php\",\"line\":34,\"text\":\"'permission_value' => ['type' => self::STR, 'required' => true,\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/PermissionEntry.php\",\"line\":37,\"text\":\"'permission_value_int' => ['type' => self::INT, 'default' => 0],\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/User.php\",\"line\":1285,\"text\":\"\\\\XF::permissionCache()->cacheContentPermsByIds($this->permission_combination_id, 'node', $nodeIds);\"},{\"path\":\"/var/www/pvepro/src/XF/Entity/User.php\",\"line\":1289,\"text\":\"\\\\XF::permissionCache()->cacheAllContentPerms($this->permission_combination_id, 'node');\"},{\"path\":\"/var/www/pvepro/src/XF/Admin/Controller/UserGroupController.php\",\"line\":8,\"text\":\"use XF\\\\Repository\\\\PermissionEntryRepository;\"},{\"path\":\"/var/www/pvepro/src/XF/Admin/Controller/UserGroupController.php\",\"line\":50,\"text\":\"$entryRepo = $this->repository(PermissionEntryRepository::class);\"},{\"path\":\"/var/www/pvepro/src/XF/Admin/Controller/NodeController.php\",\"line\":13,\"text\":\"use XF\\\\Repository\\\\PermissionEntryRepository;\"},{\"path\":\"/var/www/pvepro/src/XF/Admin/Controller/NodeController.php\",\"line\":34,\"text\":\"$customPermissions = $this->repository(PermissionEntryRepository::class)->getContentWithCustomPermissions('node');\"},{\"path\":\"/var/www/pvepro/src/XF/Admin/Controller/PermissionController.php\",\"line\":12,\"text\":\"use XF\\\\Repository\\\\PermissionEntryRepository;\"},{\"path\":\"/var/www/pvepro/src/XF/Admin/Controller/PermissionController.php\",\"line\":170,\"text\":\"$customPermissions = $this->repository(PermissionEntryRepository::class)->getContentWithCustomPermissions('node');\"},{\"path\":\"/var/www/pvepro/src/XF/Admin/Controller/PermissionController.php\",\"line\":283,\"text\":\"* @return PermissionEntryRepository\"},{\"path\":\"/var/www/pvepro/src/XF/Admin/Controller/PermissionController.php\",\"line\":287,\"text\":\"return $this->repository(PermissionEntryRepository::class);\"},{\"path\":\"/var/www/pvepro/src/XF/Admin/Controller/ToolsController.php\",\"line\":16,\"text\":\"use XF\\\\Repository\\\\PermissionEntryRepository;\"},{\"path\":\"/var/www/pvepro/src/XF/Admin/Controller/ToolsController.php\",\"line\":233,\"text\":\"$permEntryRepo = $this->repository(PermissionEntryRepository::class);\"},{\"path\":\"/var/www/pvepro/src/XF/Admin/Controller/ModeratorController.php\",\"line\":13,\"text\":\"use XF\\\\Repository\\\\PermissionEntryRepository;\"},{\"path\":\"/var/www/pvepro/src/XF/Admin/Controller/ModeratorController.php\",\"line\":78,\"text\":\"$permissionEntryRepo = $this->repository(PermissionEntryRepository::class);\"},{\"path\":\"/var/www/pvepro/src/XF/Service/UpdatePermissionsService.php\",\"line\":6,\"text\":\"use XF\\\\Entity\\\\PermissionEntry;\"},{\"path\":\"/var/www/pvepro/src/XF/Service/UpdatePermissionsService.php\",\"line\":7,\"text\":\"use XF\\\\Entity\\\\PermissionEntryContent;\"},{\"path\":\"/var/www/pvepro/src/XF/Service/UpdatePermissionsService.php\",\"line\":10,\"text\":\"use XF\\\\Finder\\\\PermissionEntryContentFinder;\"},{\"path\":\"/var/www/pvepro/src/XF/Service/UpdatePermissionsService.php\",\"line\":11,\"text\":\"use XF\\\\Finder\\\\PermissionEntryFinder;\"},{\"path\":\"/var/www/pvepro/src/XF/Service/UpdatePermissionsService.php\",\"line\":137,\"text\":\"$finder = $this->finder(PermissionEntryContentFinder::class);\"},{\"path\":\"/var/www/pvepro/src/XF/Service/UpdatePermissionsService.php\",\"line\":145,\"text\":\"$finder = $this->finder(PermissionEntryFinder::class);\"},{\"path\":\"/var/www/pvepro/src/XF/Service/UpdatePermissionsService.php\",\"line\":177,\"text\":\"$entry = $this->em()->create(PermissionEntryContent::class);\"},{\"path\":\"/var/www/pvepro/src/XF/Service/UpdatePermissionsService.php\",\"line\":183,\"text\":\"$entry = $this->em()->create(PermissionEntry::class);\"},{\"path\":\"/var/www/pvepro/src/XF/Service/UpdatePermissionsService.php\",\"line\":195,\"text\":\"$entry->permission_value = 'use_int';\"},{\"path\":\"/var/www/pvepro/src/XF/Service/UpdatePermissionsService.php\",\"line\":196,\"text\":\"$entry->permission_value_int = intval($value);\"},{\"path\":\"/var/www/pvepro/src/XF/Service/UpdatePermissionsService.php\",\"line\":200,\"text\":\"$entry->permission_value = $value;\"},{\"path\":\"/var/www/pvepro/src/XF/Service/UpdatePermissionsService.php\",\"line\":201,\"text\":\"$entry->permission_value_int = 0;\"}]\nREFLECTION_RC=0\nREFLECTION_STDERR_SHA256=e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\nREFLECTION_OUTPUT_BEGIN\nCLASS_XF_PermissionCache_EXISTS=true\\nCTOR_XF_PermissionCache|required=1|total=1\\nMETHOD_XF_PermissionCache=getPermissionSet|static=false|required=1|total=1\\nMETHOD_XF_PermissionCache=cacheAllContentPerms|static=false|required=2|total=2\\nMETHOD_XF_PermissionCache=cacheContentPermsByIds|static=false|required=3|total=3\\nMETHOD_XF_PermissionCache=cacheMultipleContentPermsForContent|static=false|required=3|total=3\\nCLASS_XF_Repository_PermissionCombination_EXISTS=true\\nCTOR_XF_Repository_PermissionCombination|required=2|total=2\\nMETHOD_XF_Repository_PermissionCombination=getPermissionCombinationForUser|static=false|required=1|total=2\\nMETHOD_XF_Repository_PermissionCombination=getPermissionCombinationOrPlaceholder|static=false|required=1|total=2\\nMETHOD_XF_Repository_PermissionCombination=updatePermissionCombinationForUser|static=false|required=1|total=2\\nMETHOD_XF_Repository_PermissionCombination=hasUserSpecificPermissions|static=false|required=1|total=1\\nMETHOD_XF_Repository_PermissionCombination=getPermissionCombinationsForUserGroup|static=false|required=1|total=1\\nMETHOD_XF_Repository_PermissionCombination=deleteUnusedPermissionCombinations|static=false|required=0|total=0\\nCLASS_XF_Repository_Permission_EXISTS=true\\nCTOR_XF_Repository_Permission|required=2|total=2\\nMETHOD_XF_Repository_Permission=getGlobalPermissionListData|static=false|required=0|total=0\\nMETHOD_XF_Repository_Permission=getContentPermissionListData|static=false|required=1|total=1\\nMETHOD_XF_Repository_Permission=findPermissionsForList|static=false|required=0|total=0\\nMETHOD_XF_Repository_Permission=getPermissionsGrouped|static=false|required=0|total=0\\nMETHOD_XF_Repository_Permission=getPermissionHandlers|static=false|required=0|total=0\\nMETHOD_XF_Repository_Permission=getPermissionHandler|static=false|required=1|total=1\\nCLASS_XF_Entity_PermissionEntry_EXISTS=true\\nCTOR_XF_Entity_PermissionEntry|required=2|total=4\\nMETHOD_XF_Entity_PermissionEntry=setAsSaved|static=false|required=2|total=2\\nMETHOD_XF_Entity_PermissionEntry=clearCache|static=false|required=1|total=1\\nMETHOD_XF_Entity_PermissionEntry=setOption|static=false|required=2|total=2\\nMETHOD_XF_Entity_PermissionEntry=setOptions|static=false|required=1|total=1\\nMETHOD_XF_Entity_PermissionEntry=resetOption|static=false|required=1|total=1\\nMETHOD_XF_Entity_PermissionEntry=whenSaveable|static=false|required=1|total=1\\nMETHOD_XF_Entity_PermissionEntry=addCascadedSave|static=false|required=1|total=1\\nMETHOD_XF_Entity_PermissionEntry=removeCascadedSave|static=false|required=1|total=1\\nMETHOD_XF_Entity_PermissionEntry=save|static=false|required=0|total=2\\nMETHOD_XF_Entity_PermissionEntry=saveIfChanged|static=false|required=0|total=3\\nMETHOD_XF_Entity_PermissionEntry=preSave|static=false|required=0|total=0\\nCLASS_XF_Entity_PermissionEntryContent_EXISTS=true\\nCTOR_XF_Entity_PermissionEntryContent|required=2|total=4\\nMETHOD_XF_Entity_PermissionEntryContent=setAsSaved|static=false|required=2|total=2\\nMETHOD_XF_Entity_PermissionEntryContent=clearCache|static=false|required=1|total=1\\nMETHOD_XF_Entity_PermissionEntryContent=setOption|static=false|required=2|total=2\\nMETHOD_XF_Entity_PermissionEntryContent=setOptions|static=false|required=1|total=1\\nMETHOD_XF_Entity_PermissionEntryContent=resetOption|static=false|required=1|total=1\\nMETHOD_XF_Entity_PermissionEntryContent=whenSaveable|static=false|required=1|total=1\\nMETHOD_XF_Entity_PermissionEntryContent=addCascadedSave|static=false|required=1|total=1\\nMETHOD_XF_Entity_PermissionEntryContent=removeCascadedSave|static=false|required=1|total=1\\nMETHOD_XF_Entity_PermissionEntryContent=save|static=false|required=0|total=2\\nMETHOD_XF_Entity_PermissionEntryContent=saveIfChanged|static=false|required=0|total=3\\nMETHOD_XF_Entity_PermissionEntryContent=preSave|static=false|required=0|total=0\\n\nREFLECTION_OUTPUT_END\nPERMISSION_STATE_PROBE_OK=true\nTASK_COMPLETE=true\nTASK_RESULT=PASS_PVEPRO_PERMISSION_PROBE_RCA\nNO_MUTATION=true\\nGUEST_OUTPUT_END\nPERMISSION_PROBE_RCA_CLEAN=true\nTASK_COMPLETE=true\nTASK_RESULT=PASS_PVEPRO_PERMISSION_PROBE_RCA\nNO_MUTATION=true\nHOMELAB_RESULT_CONTRACT={\"version\":1,\"command_id\":\"SUPPORT-260920-PVEPRO-PERMISSION-PROBE-RCA-READONLY-716R5\",\"status\":\"OK\",\"changes_made\":false,\"rollback_started\":false,\"rollback_restored\":null}\n"
|
|
}
|