Skip to content
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

[ISSUE]: HDD Identifier 'hdd#:' is unsafe, use a more direct identifier instead #63

Open
1 task done
rlaphoenix opened this issue Nov 2, 2022 · 3 comments
Open
1 task done
Labels

Comments

@rlaphoenix
Copy link

rlaphoenix commented Nov 2, 2022

Checks

  • I have checked existing issues for duplicates and found none

Describe the issue

Using a numbered upon scan as an identifier is incredibly unsafe. If your system has changed in it's array of available drives, that number would have changed on the next CLI call.

While it wouldn't happen often, if you scan for drives, choose let's say hdd4: and then remove an HDD (let's say an external HDD), hdd4: may change to being hdd3:, so specifying hdd4: for the next call would be for a different drive. This would be disastrous if that now refers to a non-PS2 HDD. Even if there are checks in place.

If hdl-dump ever had a format HDD command, or such like it, it could be seriously disastrous.

It also becomes even more problematic when GUI wrappers to hdl-dump begin to be used. Especially in scenarios where long batch installations would be done. E.g., imagine batch query, cdvd_info2, and finally an inject_* call, via a batch ISO file list. Someone let it run in the background and bam! they eject a drive. Now their work E:/ drive is being used, or the program will fail, or something disastrous happens.

Console model

SCPH-30003 R

@rlaphoenix rlaphoenix added the bug label Nov 2, 2022
@AKuHAK
Copy link
Member

AKuHAK commented Nov 2, 2022

I agree that switch to UNC paths is safer, as always PRs are welcome, but I have one question. Are you sure that you have SCPH-30009R console? Such model does not exist.

@rlaphoenix
Copy link
Author

I agree that switch to UNC paths is safer, as always PRs are welcome, but I have one question. Are you sure that you have SCPH-30009R console? Such model does not exist.

I'm not familiar enough with the codebase nor C/C++ in general to do this. But yeah, UNC or something would be better. Even still though, depending which UNC path you use, it can still be indirect. \\.\PHYSICALDRIVE# is indirect still (but maybe Windows has things to deal with this? not sure) but \\.\D: could work.

I've fixed the model number.

@israpps
Copy link
Member

israpps commented Nov 2, 2022

9 is china

Wasn't SCPH-50009 the first chinese model? aka: Sony Lab Rat lol

During my journey coding hdl batch installer i've seen that numbered HDDs don't change that easy

example:
hdd4: is the PS2 HDD but hdd3: is a thumb drive

after removing the thumb drive the HDD remained as hdd4:

not sure if it was a coincidence, but i can confirm that it behaves that way for me

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants