Printing with Acrobat Reader

Alexander Leidinger Alexander at Leidinger.net
Fri Apr 13 09:50:32 UTC 2007


Quoting "Rick C. Petty" <rick-freebsd at kiwi-computer.com> (from Thu, 12  
Apr 2007 10:51:01 -0500):

> [cc: line snipped]
>
> On Thu, Apr 12, 2007 at 04:28:37PM +0200, Oliver Fromme wrote:
>>
>> Alexander Leidinger wrote:
>>  > Oliver Fromme wrote:
>>  > > That's correct.  Obviously Adobe Reader performs some kind
>>  > > of sanity check on the path (if one is given), and for some
>>  > > reason it always prepends /compat/linux in that case.
>>  >
>>  > No linux application does this, it's the kernel. It tries with the
>>  > compat path first and then with the normal path. I don't know why it
>>  > does not work in acroread, I never investigated this issue. An
>>  > application should not be able to know if the command is from compat
>>  > or not.
>>
>> Adobe Reader does.  Dont ask me how and why, but it does.
>> Any other explanation of the symptom is even less likely.
>
> I get the sense that Acroread does something like the following:
>
> opendir("/usr/bin")  --> maps to /compat because /usr/bin exists there
> repeat:
> 	readdir()	--> still reading from /compat/linux/usr/bin
> "lpr" not found in /usr/bin/

This can be checked with ktrace/linux_kdump, but I think you may be right.

> I don't think our ABI layer checks for this kind of behavior.  Because

Right, it does not check for this.

> /compat/linux/usr/bin was found, it doesn't try to look in /usr/bin.  I've
> seen this behavior in Acroread since version 7 and maybe even earlier, in
> 6-STABLE so it's not due to recent linux ABI changes.

Correct.

> The ABI is performing similar to a unionfs but not quite, and maybe that's
> the problem-- I think we want all writes to happen to the underlying
> filesystem and all reads to check /compat first, but that may not be
> trivial to implement at the VFS layer?  I think I even tried using symlinks
> from /compat/linux/home to /home but the linux program sees:
> /home --> /home

Using symlinks will not work, as the directory where the links points  
too is also tested with the /compat/linux prefix first.

Bye,
Alexander.

-- 
[Prime Minister Joseph] Chamberlain loves
the working man, he loves to see him work.
		-- Winston Churchill

http://www.Leidinger.net    Alexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org       netchild @ FreeBSD.org  : PGP ID = 72077137


More information about the freebsd-emulation mailing list