[Bug 10018] Adobe Photoshop CS2 can't activate

wine-bugs at winehq.org wine-bugs at winehq.org
Mon Nov 12 12:26:27 CST 2007


http://bugs.winehq.org/show_bug.cgi?id=10018





--- Comment #16 from Anastasius Focht <focht at gmx.net>  2007-11-12 12:26:26 ---
Created an attachment (id=9132)
 --> (http://bugs.winehq.org/attachment.cgi?id=9132)
patch which briefly implements SMART_GET_VERSION and SMART_RCV_DRIVE_DATA

Hello,

Ok, I present two possible ways to work around the problem...

Seems Macrovision provided the code for adobe license manager .. sweet SafeDisc
memories *g*
The adobe license manager service uses two methods of gathering hardware data
needed to calculate the activation code.

1. S.M.A.R.T interface: SMART_GET_VERSION and SMART_RCV_DRIVE_DATA
2. SCSI interface: IOCTL_SCSI_GET_INQUIRY_DATA and IOCTL_SCSI_PASS_THROUGH

If S.M.A.R.T requests fail it uses the second "fallback" strategy, SCSI.
By using ATA PASS-THROUGH SCSI command it wraps an ATA IDENTIFY DEVICE command
to get drive controller data (essentially the same like (1))

Though it seems only drive model and serial number are actually used to derive
activation code.

============= RECOMMENDED WAY ================

Using the SCSI ATA PASSTHRU method:

Make your primary harddisk block device (/dev/hda or /dev/sda .. whatever,
owned by root) raw accessible to the wine user.
At least: chmod g+rw /dev/hda (sda), if you are in "disk" group.
If not: chmod a+rw /dev/hda (sda).
+r is not enough because the block device is unfortunately opened with default
READ_WRITE permissions requested.
Don't be scared .. "write" isn't used at all.

Make the following symlink in .wine/dosdevices: "ln -s /dev/hda c::"

Start Photoshop CS2 and wait for activation dialog. It should now show
activation code. Fill in required authorization code to activate your copy.

If successful you can remove the symlink and revoke permissions to hda/sda.

===================================================
Using the SMART method:

DISCLAIMER (just to avoid legal issues arising if people use faking IDENTIFY
data for activation purposes): I take no responsibility for any damage to any
computer equipment, legal action whatsoever, that arises, directly or
indirectly, from the using the patch.

The S.M.A.R.T patch is for educational purposes, presented as base for other
people to work on.
The ioctl used for SMART_RCV_DRIVE_DATA, HDIO_DRIVE_CMD + ATA_IDENTIFY_DEVICE
currently requires certain permissions (problematic without being root user).
Therefore I implemented a second method, faking the ATA_IDENTIFY_DEVICE data
without making an ioctl call to ATA driver.
This has the interesting effect of being completely hardware independent (user
can swap harddisks without changing activation code).
This setting is the default one. Needless to say that any modification to fake
IDENTIFY data changes activation code.
If you want to play with real ioctl, undefine FAKE_SMART_DISK_IDENTIFY in
dlls/ntdll/cdrom.c

The attached patch implements the necessary SMART stuff (either with real and
fake ioctl data)

You should have a symlink in .wine/dosdevices: "ln -s /dev/hda c::" in place
(for the FAKE_SMART_DISK_IDENTIFY case a symlink to any "harddisk like" block
device will be sufficient)

Start Photoshop CS2 and wait for activation dialog. It should now show
activation code. Fill in required authorization code to activate your copy.

If successful you can remove the symlink and revoke permissions to hda/sda.

=================

The product activation data is stored in "C:\windows\profiles\All
Users\Application Data\Adobe Systems\Product licenses\<xxx>.dat"
If you accidentally removed this file (by wiping out .wine) you need to
re-activate using same procedure.

Regards


-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list