Skip to content

Tags: AlistGo/alist

Tags

v3.61.0

Toggle v3.61.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix(lanzou): handle acw_sc__v2 anti-crawler challenge on all requests (

…#9548)

The acw_sc__v2 challenge can be served on any pan.lanzoui.com request
(share page, iframe page, ajaxm.php), but it was only handled for the
first share page. This caused intermittent failures:

- "uid variable not find" when mydisk.php returned the challenge on init
- "not find data" when the iframe download page returned the challenge
- empty "failed get link" when ajaxm.php POST returned the challenge
  (the challenge HTML was parsed as JSON, zt=0 -> empty info)

Also fix HexXor, which was broken since the driver was introduced and
made every challenge unsolvable:

- bytes.NewBuffer(make([]byte, len(hex1))) prefixed the result with
  len(hex1) null bytes
- missing zero-padding produced a single hex char when xor result < 0x10,
  misaligning the whole string

Move the challenge solve/retry loop down into request() so every GET/POST
transparently handles it, and simplify getHtml accordingly.

beta

Toggle beta's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix(lanzou): handle acw_sc__v2 anti-crawler challenge on all requests (

…#9548)

The acw_sc__v2 challenge can be served on any pan.lanzoui.com request
(share page, iframe page, ajaxm.php), but it was only handled for the
first share page. This caused intermittent failures:

- "uid variable not find" when mydisk.php returned the challenge on init
- "not find data" when the iframe download page returned the challenge
- empty "failed get link" when ajaxm.php POST returned the challenge
  (the challenge HTML was parsed as JSON, zt=0 -> empty info)

Also fix HexXor, which was broken since the driver was introduced and
made every challenge unsolvable:

- bytes.NewBuffer(make([]byte, len(hex1))) prefixed the result with
  len(hex1) null bytes
- missing zero-padding produced a single hex char when xor result < 0x10,
  misaligning the whole string

Move the challenge solve/retry loop down into request() so every GET/POST
transparently handles it, and simplify getHtml accordingly.

v3.60.0

Toggle v3.60.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request #9477 from okatu-loli/feature/frp-support

feat(frp): add frpc support

v3.59.0

Toggle v3.59.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request #9474 from appfolder/driver-darkibox

feat(driver): add Darkibox driver

v3.58.0

Toggle v3.58.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
feat(wukong): add WuKongNetdisk driver with read-write support (#9449)

v3.57.0

Toggle v3.57.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request #9420 from okatu-loli/fix/archive-decomposs

feat(iso9660): Refactor path handling for secure file extraction

v3.56.0

Toggle v3.56.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
Merge pull request #9393 from okatu-loli/feat/update-alist-token

feat(settings): Add `SetToken` endpoint for updating token settings

v3.55.0

Toggle v3.55.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
fix(driver): Handle Lanzou anti-crawler challenge by recalculating co…

…okies (#9364)

- Detect and solve `acw_sc__v2` challenge to bypass anti-crawler validation
- Refactored request header initialization logic for clarity

v3.54.0

Toggle v3.54.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
refactor(webdav): Use ResolvePath instead of JoinPath (#9344)

- Changed the path concatenation method between `reqPath` and `src` and `dst` to use `ResolvePath`
- Updated the implementation of path handling in multiple functions
- Improved the consistency and reliability of path resolution

v3.53.0

Toggle v3.53.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
feat: Check usage before deleting storage (#9322)

* feat(storage): Added role and user path checking functionality

- Added `GetAllRoles` function to retrieve all roles
- Added `GetAllUsers` function to retrieve all users
- Added `firstPathSegment` function to extract the first segment of a path
- Checks whether a storage object is used by a role or user, and returns relevant information for unusing it

* fix(storage): Fixed a potential null value issue with not checking firstMount.

- Added a check to see if `firstMount` is null to prevent logic errors.
- Adjusted the loading logic of `GetAllRoles` and `GetAllUsers` to only execute when `firstMount` is non-null.
- Fixed the `usedBy` check logic to ensure that an error message is returned under the correct conditions.
- Optimized code structure to reduce unnecessary execution paths.