Libwiipy

Latest version: v0.2.2

Safety actively analyzes 623909 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

0.2.2

Further improvements to overall system stability and other minor adjustments have been made to enhance the user experience.

Changelog:
- Changed the NUS endpoint URL from `http://ccs.shop.wii.com/ccs/download` to `https://nus.cdn.shop.wii.com/ccs/download`, which massively improves NUS download speeds. Really should've figured this one out sooner...
- boot2 WADs are now dumped properly as type `ib` instead of type `Is`.
- The TMD instance method `get_title_type()` now returns `GameChannel` instead of `GameWithChannel` for a TID high of `00010004`, since this ID refers to channels installed by games and not the games themselves.

0.2.1

Changelog:
- Functions are now available for downloading the TMD, Ticket (for free titles), general WAD certificate (which is obtained by downloading the raw TMD and Ticket of System Menu 4.3U as it never changes), and encrypted contents for a title.
- boot2 WADs are now accepted as valid when loading WAD data into a WAD object, thanks to testing by rvtr confirming that these files work.

For more details about the main changes in libWiiPy v0.2.0, check the release notes [here](https://github.com/NinjaCheetah/libWiiPy/releases/tag/v0.2.0).

0.2.0

Changelog:
- Entirely restructured `wad.py`, `tmd.py`, `ticket.py`, `content.py`
- Added `title.py` for higher-level access to an entire WAD and all of its components without having to handle each one separately
- Fixed a bug in `content.py` and removed a mitigation for that bug in `crypto.py` that also caused issues
- Added support for for re-encryption of content and for that content to be loaded back into a ContentRegion
- Added support for dumping TMD, Ticket, ContentRegion, and WAD objects back into raw data for outputting
- Added support for creating blank objects of each type so that data can be loaded into them after creation, rather than forcing you to have that data beforehand (this allows `title.py` to actually function for creating a new WAD from loose files)
- Removed unnecessary instance attributes that didn't need to be exposed and would become poisoned upon any changes
- Removed some remaining instance methods that just retrieved instance attributes that you could already access
- Replaced `content.py`'s `get_enc_content()` and `get_content()` with `get_enc_content_by_id()`/`get_enc_content_by_cid()` and `get_content_by_id()` and `get_content_by_cid()` to allow getting content by either its content index or ID

Please be aware that for the most part, the API for libWiiPy v0.1.0 is entirely incompatible with libWiiPy v0.2.0. Fewer dramatic changes are likely to happen in the future, but this is just how prerelease software goes.

This release is also available [on PyPI](https://pypi.org/project/libWiiPy/0.2.0/).

0.1.0

Hello world!
Features
- Parse a TMD and retrieve all important keys contained in it about the title
- Parse a WAD and find all of the sizes and offsets for the data contained within in
- Extract the certificate, crl (if applicable), ticket, TMD, encrypted content region, and meta data (if applicable) from a WAD

This allows for basic functionally such as checking the Title ID or version of a title in a given WAD. Full encrypted content extraction and decryption will be coming in a later update.

Links

Releases

Has known vulnerabilities

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.