-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Counter test inconsistencies #6
Comments
Thank you for pointing that out! Well, this test is made because I am a Minecraft dev. When making a packet-interpreting plugin, say a packet-based anti-cheat, there can be classes to be serialized while having no flags. |
Oh yeah I've done anticheats. I know what you mean. The transient and synthetic flags should be sufficient. For example, GSON skips any transient field, making it compatible with 99% of serialization libs. |
Kinda beyond my knowledge D: |
Issue
The counter test is not accurate.
Reasoning
Most higher end obfuscators add transient or cached fields. This is inconsistent with the test's logic. Instead, the test should check if the cached reflection fields are transient or synthetic to ensure these don't get added to serialization logic and so forth. Furthermore, the order of fields should be checked as any change in order will cause breaking changes in reflections. Order should be maintained.
The text was updated successfully, but these errors were encountered: