Take me to...
General
Malware Processor
- For obvious reasons - will not be fully disclosed.
- Virus detected - will reject with the message:
"Malware detected in file."
Hashing Processor
If another file on our DB was uploaded and approved + has the same hash: will reject with the message.
“File is a duplicate of an existing file. {firstFile.DisplayName ?? firstFile.FileName} on {firstFile.Project.Name}"
Verify Archive (Zip) Processor
Verifies the uploaded file has a specific extension (zip/jar etc…) message display message:
- "Invalid file extension, expected {0}."
- Zip file contains a /../ or ../ file, message display message:
- "Archive contains zipslip vunerability."
- "Archive contains zipslip vunerability."
- Validate the zip contents don’t contain blacklisted directories/extensions/files
- "Archive contains blacklisted files, extensions or directories: '{0}'."
Minecraft
Modpacks
Here are the different edge cases for modpacks (in "RejectionMessage"):
- Not a zip file: "Invalid file extension, expected zip."
- Internal/unexpected fingerprinting error: "Could not compute fingerprints on file."
- Doesn't contain a manifest.json file:
- Internal error - if manifest.json isn't fingerprinted: "Missing fingerprint for "manifest.json" file."
- Error parsing manifest.json: "<div>Error parsing manifest.json:</div><ul><li>[ERROR HERE]</li></ul>"
- If the manifest contains an unknown modloader: "Invalid mod loader XXX" (where XXX is the wrong modloader used)
- If the manifest is a Fabric modloader but the id isn't in the form of - fabric-x.y.z: "Invalid Fabric mod loader id {0}" (rejected)
- If the ProjectID of the manifest.json is not equal to the actual projectId of your project: "Invalid manifest: References project ID {0}, should be {1}."
If any of the following happens - Client Compatible turns to false:
- Modpack depends on two or more files of the same project: "Invalid file reference in manifest: File ID {0} references project ID {1}, which appears more than once."
- Modpack has a dependency to a fileId that isn't on our system: "Invalid file reference in manifest: File ID {0} does not exist."
- Modpack has a dependency to a fileId that isn't associated to the requested projectId: "Invalid file reference in manifest: File {0} (ID: {1}) does not belong to Project {2} (ID: {3})."
- Modpack has a dependency to a fileId that isn't compatible with the modpacks modloader: "File {0} is invalid for modpack {1} with mod loader {2}" (rejected) *new reject message
- Modpack has a dependency to a fileId that belongs to an projectId that isn't on CurseForge: "Invalid file reference in manifest: File ID {0} references invalid project ID {1}."
- Modpack has a dependency to a fileId that belongs to a different root category: "Invalid file reference in manifest: File ID {0} belongs to project ID {1}, which belongs to an invalid root category: {2}."
- We do not set clientCompatible to false if the dependency file has a bad status (e.g. not approved)
- If a Fabric modpack doesn't contain a Fabric API version: "Fabric modpack doesn't include FabricApi mod" (rejected)
Client Mod Processor (mods)
- VerifyArchiveAndComputeFingerprints
- ChildFile: .zip, .jar, .litemod extensions
- Non-ChildFile: .jar, .litemod extensions
- If zip filename is blacklisted
"The mod has a blacklisted file name." - Rejected
World of Warcraft
Addon Processor
- VerifyArchiveAndComputeFingerprints .zip extension
- Assure all Root items in the zip are folders - if we find a file:
- "Archive contains root level files." - UnderReview
- At least 1 root folder contains a file of the form:
- ROOTFOLDER/ROOTFOLDER.toc - if not:
- "Archive is missing {0} (name is case sensitive and must not be empty)" - UnderReview
- ROOTFOLDER/ROOTFOLDER.toc - if not:
Stardew Valley
ModProcessor
- VerifyArchiveAndComputeFingerprints .zip extension
- If the zip file doesn’t contain at least one manifest.json file:
- "Could not find manifest.json. This may be a texturepack or similar and needs installation instructions in the project description" - UnderReview
Minecraft Dungeons
PakProcessor
- If the uploaded file is not a zip that contains exactly 1 file with the .pak extension:
- "Must contain a single PAK file" - Rejected
- VerifyArchiveAndComputeFingerprints .zip extension