1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-17 15:12:54 +08:00
osu-lazer/osu.Game/Online/API
Bartłomiej Dach 776fabd77c
Only use MD5 when performing metadata lookups
Both online and offline using the cache.

The rationale behind this change is that in the current state of
affairs, `TestPartiallyMaliciousSet()` fails in a way that cannot be
reconciled without this sort of change.

The test exercises a scenario where the beatmap being imported has an
online ID in the `.osu` file, but its hash does not match the online
hash of the beatmap. This turns out to be a more frequent scenario than
envisioned because of users doing stupid things with manual file editing
rather than reporting issues properly.

The scenario is realistic only because the behaviour of the endpoint
responsible for looking up beatmaps is such that if multiple parameters
are given (e.g. all three of beatmap MD5, online ID, and filename), it
will try the three in succession:

	f6b341813b/app/Http/Controllers/BeatmapsController.php (L260-L266)

and the local metadata cache implementation reflected this
implementation.

Because online ID and filename are inherently unreliable in this
scenario due to being directly manipulable by clueless or malicious
users, neither should not be used as a fallback.
2024-10-30 08:12:30 +01:00
..
Requests Only use MD5 when performing metadata lookups 2024-10-30 08:12:30 +01:00
APIAccess.cs Use IAPIProvider interface and correctly support scheduling from DummyAPIAccess 2024-08-30 18:35:31 +09:00
APIDownloadRequest.cs Fix NRT inspections 2024-08-30 13:41:34 +02:00
APIException.cs Fix remaining obvious CI inspections 2023-06-24 16:07:01 +02:00
APIMessagesRequest.cs Automated pass 2023-06-24 01:00:03 +09:00
APIMod.cs Fix the MOTHERLOAD of undetected issues that are now visible thanks to net6.0 2022-12-16 18:16:26 +09:00
APIRequest.cs Trigger request failure on receiving a null response for a typed APIRequest 2024-09-05 01:00:23 +09:00
APIRequestCompletionState.cs Remove redundant nullable suppression directives 2023-06-07 08:20:41 +03:00
ArchiveDownloadRequest.cs Automated #nullable processing 2022-06-17 16:37:17 +09:00
DummyAPIAccess.cs Use IAPIProvider interface and correctly support scheduling from DummyAPIAccess 2024-08-30 18:35:31 +09:00
IAPIProvider.cs Use IAPIProvider interface and correctly support scheduling from DummyAPIAccess 2024-08-30 18:35:31 +09:00
ModSettingsDictionaryFormatter.cs Update all dependencies (except for Moq) 2023-09-16 15:37:31 +09:00
OAuth.cs Fix broken locking in OAuth 2024-01-30 21:05:23 +01:00
OAuthToken.cs Automated #nullable processing 2022-06-17 16:37:17 +09:00
OsuJsonWebRequest.cs Automated pass 2023-06-24 01:00:03 +09:00
OsuWebRequest.cs Automated pass 2023-06-24 01:00:03 +09:00
RegistrationRequest.cs Add API level support for error message and redirect during registration flow 2023-01-13 15:32:53 +09:00