[OpenAFS] iTunes Update breaks OpenAFS for Windows on 32-bit Windows

Jeffrey Altman jaltman@secure-endpoints.com
Fri, 12 Jun 2009 10:00:40 -0400

Harald Barth wrote:
> Curious:
> * Would it be possible to rebase the itunes dll as part of OpenAFS startup?

Even if a standards Windows distribution shipped with the necessary
rebasing tool I would consider it highly inappropriate for
afsd_service.exe to walk the list of all modules loaded into its memory
space and alter the base addresses on disk of those modules that it
believes are in its way.  Altering the base address changes the module
header and invalidates the file's digital signature.

> * Would it be possible to start OpenAFS with a smaller cache (or two smaller
>   cache chunks) when getting the memory map failure? 

The current architecture does not support multiple cache files.  The
work necessary to do so has not been performed in the past because it
only affects 32-bit Windows and the additional cache space that would be
obtained would have been relatively small.

I did not implement a fallback mechanism to use a smaller cache size on
failure because altering the cache size results in the pre-cached data
being lost and hides the fact that something bad has been done to the
user's machine.

The improper basing of the mdnsNSP.dll adversely impacts all
applications that use large memory regions and the network stack.  The
problem was discovered by OpenAFS but users are going to
experience strange behavior with other applications as well.  The core
problem will still need to be addressed.

Jeffrey Altman