diff --git a/dev/bench/data.js b/dev/bench/data.js index 668cd3ca..c0203795 100644 --- a/dev/bench/data.js +++ b/dev/bench/data.js @@ -1,5 +1,5 @@ window.BENCHMARK_DATA = { - "lastUpdate": 1766330599976, + "lastUpdate": 1767241283692, "repoUrl": "https://github.com/Wikid82/Charon", "entries": { "Go Benchmark": [ @@ -5714,6 +5714,606 @@ window.BENCHMARK_DATA = { "extra": "465930 times\n4 procs" } ] + }, + { + "commit": { + "author": { + "email": "jhatfield82@gmail.com", + "name": "Jeremy", + "username": "Wikid82" + }, + "committer": { + "email": "noreply@github.com", + "name": "GitHub", + "username": "web-flow" + }, + "distinct": true, + "id": "03f079ce822c77bee43574d226d809b49febef11", + "message": "Merge pull request #437 from Wikid82/feature/issue-365-additional-security\n\nfix(security): complete SSRF remediation with defense-in-depth (CWE-918)", + "timestamp": "2025-12-31T23:19:09-05:00", + "tree_id": "6d1de059e1d615af68e6a3ad4ce3a537cedaf9cb", + "url": "https://github.com/Wikid82/Charon/commit/03f079ce822c77bee43574d226d809b49febef11" + }, + "date": 1767241282763, + "tool": "go", + "benches": [ + { + "name": "BenchmarkSecurityHandler_GetStatus", + "value": 106544, + "unit": "ns/op\t 29714 B/op\t 408 allocs/op", + "extra": "10000 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetStatus - ns/op", + "value": 106544, + "unit": "ns/op", + "extra": "10000 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetStatus - B/op", + "value": 29714, + "unit": "B/op", + "extra": "10000 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetStatus - allocs/op", + "value": 408, + "unit": "allocs/op", + "extra": "10000 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetStatus_NoSettings", + "value": 101844, + "unit": "ns/op\t 29101 B/op\t 365 allocs/op", + "extra": "10000 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetStatus_NoSettings - ns/op", + "value": 101844, + "unit": "ns/op", + "extra": "10000 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetStatus_NoSettings - B/op", + "value": 29101, + "unit": "B/op", + "extra": "10000 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetStatus_NoSettings - allocs/op", + "value": 365, + "unit": "allocs/op", + "extra": "10000 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ListDecisions", + "value": 314338, + "unit": "ns/op\t 79736 B/op\t 1201 allocs/op", + "extra": "3760 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ListDecisions - ns/op", + "value": 314338, + "unit": "ns/op", + "extra": "3760 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ListDecisions - B/op", + "value": 79736, + "unit": "B/op", + "extra": "3760 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ListDecisions - allocs/op", + "value": 1201, + "unit": "allocs/op", + "extra": "3760 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ListRuleSets", + "value": 69774, + "unit": "ns/op\t 22070 B/op\t 276 allocs/op", + "extra": "17170 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ListRuleSets - ns/op", + "value": 69774, + "unit": "ns/op", + "extra": "17170 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ListRuleSets - B/op", + "value": 22070, + "unit": "B/op", + "extra": "17170 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ListRuleSets - allocs/op", + "value": 276, + "unit": "allocs/op", + "extra": "17170 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_UpsertRuleSet", + "value": 197979, + "unit": "ns/op\t 29343 B/op\t 338 allocs/op", + "extra": "5882 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_UpsertRuleSet - ns/op", + "value": 197979, + "unit": "ns/op", + "extra": "5882 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_UpsertRuleSet - B/op", + "value": 29343, + "unit": "B/op", + "extra": "5882 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_UpsertRuleSet - allocs/op", + "value": 338, + "unit": "allocs/op", + "extra": "5882 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_CreateDecision", + "value": 174754, + "unit": "ns/op\t 23296 B/op\t 247 allocs/op", + "extra": "6988 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_CreateDecision - ns/op", + "value": 174754, + "unit": "ns/op", + "extra": "6988 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_CreateDecision - B/op", + "value": 23296, + "unit": "B/op", + "extra": "6988 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_CreateDecision - allocs/op", + "value": 247, + "unit": "allocs/op", + "extra": "6988 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetConfig", + "value": 46797, + "unit": "ns/op\t 14588 B/op\t 156 allocs/op", + "extra": "25615 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetConfig - ns/op", + "value": 46797, + "unit": "ns/op", + "extra": "25615 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetConfig - B/op", + "value": 14588, + "unit": "B/op", + "extra": "25615 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetConfig - allocs/op", + "value": 156, + "unit": "allocs/op", + "extra": "25615 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_UpdateConfig", + "value": 165930, + "unit": "ns/op\t 37195 B/op\t 351 allocs/op", + "extra": "6928 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_UpdateConfig - ns/op", + "value": 165930, + "unit": "ns/op", + "extra": "6928 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_UpdateConfig - B/op", + "value": 37195, + "unit": "B/op", + "extra": "6928 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_UpdateConfig - allocs/op", + "value": 351, + "unit": "allocs/op", + "extra": "6928 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetStatus_Parallel", + "value": 41543, + "unit": "ns/op\t 24880 B/op\t 305 allocs/op", + "extra": "29050 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetStatus_Parallel - ns/op", + "value": 41543, + "unit": "ns/op", + "extra": "29050 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetStatus_Parallel - B/op", + "value": 24880, + "unit": "B/op", + "extra": "29050 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_GetStatus_Parallel - allocs/op", + "value": 305, + "unit": "allocs/op", + "extra": "29050 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ListDecisions_Parallel", + "value": 227643, + "unit": "ns/op\t 80367 B/op\t 1204 allocs/op", + "extra": "5052 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ListDecisions_Parallel - ns/op", + "value": 227643, + "unit": "ns/op", + "extra": "5052 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ListDecisions_Parallel - B/op", + "value": 80367, + "unit": "B/op", + "extra": "5052 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ListDecisions_Parallel - allocs/op", + "value": 1204, + "unit": "allocs/op", + "extra": "5052 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_LargeRuleSetContent", + "value": 1017134, + "unit": "ns/op\t 780071 B/op\t 358 allocs/op", + "extra": "1161 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_LargeRuleSetContent - ns/op", + "value": 1017134, + "unit": "ns/op", + "extra": "1161 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_LargeRuleSetContent - B/op", + "value": 780071, + "unit": "B/op", + "extra": "1161 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_LargeRuleSetContent - allocs/op", + "value": 358, + "unit": "allocs/op", + "extra": "1161 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ManySettingsLookups", + "value": 111709, + "unit": "ns/op\t 29820 B/op\t 416 allocs/op", + "extra": "10000 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ManySettingsLookups - ns/op", + "value": 111709, + "unit": "ns/op", + "extra": "10000 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ManySettingsLookups - B/op", + "value": 29820, + "unit": "B/op", + "extra": "10000 times\n4 procs" + }, + { + "name": "BenchmarkSecurityHandler_ManySettingsLookups - allocs/op", + "value": 416, + "unit": "allocs/op", + "extra": "10000 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP_IPv4Private", + "value": 53.18, + "unit": "ns/op\t 0 B/op\t 0 allocs/op", + "extra": "22415506 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP_IPv4Private - ns/op", + "value": 53.18, + "unit": "ns/op", + "extra": "22415506 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP_IPv4Private - B/op", + "value": 0, + "unit": "B/op", + "extra": "22415506 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP_IPv4Private - allocs/op", + "value": 0, + "unit": "allocs/op", + "extra": "22415506 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP_IPv4Public", + "value": 104.9, + "unit": "ns/op\t 0 B/op\t 0 allocs/op", + "extra": "11473633 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP_IPv4Public - ns/op", + "value": 104.9, + "unit": "ns/op", + "extra": "11473633 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP_IPv4Public - B/op", + "value": 0, + "unit": "B/op", + "extra": "11473633 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP_IPv4Public - allocs/op", + "value": 0, + "unit": "allocs/op", + "extra": "11473633 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP_IPv6", + "value": 105.1, + "unit": "ns/op\t 0 B/op\t 0 allocs/op", + "extra": "11443614 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP_IPv6 - ns/op", + "value": 105.1, + "unit": "ns/op", + "extra": "11443614 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP_IPv6 - B/op", + "value": 0, + "unit": "B/op", + "extra": "11443614 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP_IPv6 - allocs/op", + "value": 0, + "unit": "allocs/op", + "extra": "11443614 times\n4 procs" + }, + { + "name": "BenchmarkNewSafeHTTPClient", + "value": 189.3, + "unit": "ns/op\t 560 B/op\t 5 allocs/op", + "extra": "6393715 times\n4 procs" + }, + { + "name": "BenchmarkNewSafeHTTPClient - ns/op", + "value": 189.3, + "unit": "ns/op", + "extra": "6393715 times\n4 procs" + }, + { + "name": "BenchmarkNewSafeHTTPClient - B/op", + "value": 560, + "unit": "B/op", + "extra": "6393715 times\n4 procs" + }, + { + "name": "BenchmarkNewSafeHTTPClient - allocs/op", + "value": 5, + "unit": "allocs/op", + "extra": "6393715 times\n4 procs" + }, + { + "name": "BenchmarkFormatDuration", + "value": 150.7, + "unit": "ns/op\t 8 B/op\t 1 allocs/op", + "extra": "7893568 times\n4 procs" + }, + { + "name": "BenchmarkFormatDuration - ns/op", + "value": 150.7, + "unit": "ns/op", + "extra": "7893568 times\n4 procs" + }, + { + "name": "BenchmarkFormatDuration - B/op", + "value": 8, + "unit": "B/op", + "extra": "7893568 times\n4 procs" + }, + { + "name": "BenchmarkFormatDuration - allocs/op", + "value": 1, + "unit": "allocs/op", + "extra": "7893568 times\n4 procs" + }, + { + "name": "BenchmarkExtractPort", + "value": 236.5, + "unit": "ns/op\t 144 B/op\t 1 allocs/op", + "extra": "5029021 times\n4 procs" + }, + { + "name": "BenchmarkExtractPort - ns/op", + "value": 236.5, + "unit": "ns/op", + "extra": "5029021 times\n4 procs" + }, + { + "name": "BenchmarkExtractPort - B/op", + "value": 144, + "unit": "B/op", + "extra": "5029021 times\n4 procs" + }, + { + "name": "BenchmarkExtractPort - allocs/op", + "value": 1, + "unit": "allocs/op", + "extra": "5029021 times\n4 procs" + }, + { + "name": "BenchmarkMailService_IsConfigured", + "value": 38397, + "unit": "ns/op\t 8088 B/op\t 166 allocs/op", + "extra": "30966 times\n4 procs" + }, + { + "name": "BenchmarkMailService_IsConfigured - ns/op", + "value": 38397, + "unit": "ns/op", + "extra": "30966 times\n4 procs" + }, + { + "name": "BenchmarkMailService_IsConfigured - B/op", + "value": 8088, + "unit": "B/op", + "extra": "30966 times\n4 procs" + }, + { + "name": "BenchmarkMailService_IsConfigured - allocs/op", + "value": 166, + "unit": "allocs/op", + "extra": "30966 times\n4 procs" + }, + { + "name": "BenchmarkMailService_BuildEmail", + "value": 2554, + "unit": "ns/op\t 969 B/op\t 28 allocs/op", + "extra": "431928 times\n4 procs" + }, + { + "name": "BenchmarkMailService_BuildEmail - ns/op", + "value": 2554, + "unit": "ns/op", + "extra": "431928 times\n4 procs" + }, + { + "name": "BenchmarkMailService_BuildEmail - B/op", + "value": 969, + "unit": "B/op", + "extra": "431928 times\n4 procs" + }, + { + "name": "BenchmarkMailService_BuildEmail - allocs/op", + "value": 28, + "unit": "allocs/op", + "extra": "431928 times\n4 procs" + }, + { + "name": "BenchmarkConstantTimeCompare/equal", + "value": 12.67, + "unit": "ns/op\t 0 B/op\t 0 allocs/op", + "extra": "91683272 times\n4 procs" + }, + { + "name": "BenchmarkConstantTimeCompare/equal - ns/op", + "value": 12.67, + "unit": "ns/op", + "extra": "91683272 times\n4 procs" + }, + { + "name": "BenchmarkConstantTimeCompare/equal - B/op", + "value": 0, + "unit": "B/op", + "extra": "91683272 times\n4 procs" + }, + { + "name": "BenchmarkConstantTimeCompare/equal - allocs/op", + "value": 0, + "unit": "allocs/op", + "extra": "91683272 times\n4 procs" + }, + { + "name": "BenchmarkConstantTimeCompare/different_first_char", + "value": 12.46, + "unit": "ns/op\t 0 B/op\t 0 allocs/op", + "extra": "96345896 times\n4 procs" + }, + { + "name": "BenchmarkConstantTimeCompare/different_first_char - ns/op", + "value": 12.46, + "unit": "ns/op", + "extra": "96345896 times\n4 procs" + }, + { + "name": "BenchmarkConstantTimeCompare/different_first_char - B/op", + "value": 0, + "unit": "B/op", + "extra": "96345896 times\n4 procs" + }, + { + "name": "BenchmarkConstantTimeCompare/different_first_char - allocs/op", + "value": 0, + "unit": "allocs/op", + "extra": "96345896 times\n4 procs" + }, + { + "name": "BenchmarkConstantTimeCompare/different_last_char", + "value": 12.46, + "unit": "ns/op\t 0 B/op\t 0 allocs/op", + "extra": "96270164 times\n4 procs" + }, + { + "name": "BenchmarkConstantTimeCompare/different_last_char - ns/op", + "value": 12.46, + "unit": "ns/op", + "extra": "96270164 times\n4 procs" + }, + { + "name": "BenchmarkConstantTimeCompare/different_last_char - B/op", + "value": 0, + "unit": "B/op", + "extra": "96270164 times\n4 procs" + }, + { + "name": "BenchmarkConstantTimeCompare/different_last_char - allocs/op", + "value": 0, + "unit": "allocs/op", + "extra": "96270164 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP", + "value": 59.7, + "unit": "ns/op\t 0 B/op\t 0 allocs/op", + "extra": "18171858 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP - ns/op", + "value": 59.7, + "unit": "ns/op", + "extra": "18171858 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP - B/op", + "value": 0, + "unit": "B/op", + "extra": "18171858 times\n4 procs" + }, + { + "name": "BenchmarkIsPrivateIP - allocs/op", + "value": 0, + "unit": "allocs/op", + "extra": "18171858 times\n4 procs" + } + ] } ] }