Previously long URI/URLs (> 1024 characters) would cause a stack corruption and crash Wine. After this MR, Wine will no longer crash but the URL is not opened either primarily due to `SHELL_Argify` limitations.
--
v3: shell32: Increase timeout for long URLs
https://gitlab.winehq.org/wine/wine/-/merge_requests/2383
Sorry, i can't get this to work. Maybe i messed something up in between. now got:
hint: Updates were rejected because the tip of your current branch is behind
hint: its remote counterpart. Integrate the remote changes (e.g.
hint: 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
Sigh....
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4143#note_49564
> Yeah, but this isn't necessarily about not trusting Windows apps, i.e. malice or malware, but rather that they can't be designed around it (since they assume Windows environment), so they would have privacy issues without even wanting to. At the very least maybe use
Of course Windows apps can be designed around it. In the Windows environment they'd retrieve a real hardware ID that should be handled with the same care.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4108#note_49556
On Sat Oct 21 10:27:59 2023 +0000, Jinoh Kang wrote:
> Okay, I've read the prior discussions regarding the rationale.
> Still, I don't think you should change the System UUID for *existing*
> prefixes. Perhaps we could use the registry to detect whether the
> prefix is new, and use the new algorithm for new prefixes. We could
> also record the UUID in the registry "permanently."
Maintaining any way of backward compat on this ID doesn't look feasible. E. g., the current way with a bug reports bios hashtag in serial field on my desktop due to missing fields not being handled. This ID is already non-unique, and maintaining these algorithms backwards would take unreasonable amount of effort (with arguably no gains). Probably more important, /etc/machine-id can be changed anytime by user or system resintall, it is not true hardware id. If anything firmly relies on HW id to persist forever, it is broken already.
Regarding the original discussion, I also don't really understand why we should necessarily obfuscate /etc/machine-id for uuid / serial reporting. App has access to the file anyway, and Wine neither sends the ID anywhere nor tracks the user, it is between the app and the user. On Windows fwiw it will get real motherboard serial and other information like that.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4108#note_49550
On Sat Oct 21 10:25:18 2023 +0000, Jinoh Kang wrote:
> This changes the system GUID. Some DRMs and copy protections like to
> assume that things like System UUIDs are permanent and never change.
> Changing this will break such apps and the user might have to
> reinstall/re-purchase them again.
Okay, I've read the prior discussions regarding the rationale.
Still, I don't think you should change the System UUID for *existing* prefixes. Perhaps we could use the registry to detect whether the prefix is new, and use the new algorithm for new prefixes. We could also record the UUID in the registry "permanently."
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4108#note_49548
Jinoh Kang (@iamahuman) commented about dlls/ntdll/unix/system.c:
> system_args.version = system_version;
> system_args.serial_len = get_smbios_string("/sys/class/dmi/id/product_serial", S(system_serial));
> system_args.serial = system_serial;
> - get_system_uuid(&system_args.uuid);
> + derive_machineid_to_uuid(&system_args.uuid);
This changes the system GUID. Some DRMs and copy protections like to assume that things like System UUIDs are permanent and never change. Changing this will break such apps and the user might have to reinstall/re-purchase them again.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/4108#note_49547