1 This is the Tru64 README file for netatalk.
3 1. Unfortunately, AppleTalk is not available for Digital Unix or Tru64.
4 The reason for this is the kernel patches which Netatalk requires
5 cannot be ported to Tru64. If anyone has the kernel source of Tru64
6 they are welcomed to port the AppleTalk modules themselves.
8 As a result, only AppleShare over IP (ASIP) works with Tru64. That
9 is, the program afpd. papd and atalkd compile, but doesn't really
10 work. Anything that requires AppleTalk doesn't work.
12 2. Netatalk compiles on various versions of Tru64 V4.x . However, the
13 Tru64 C compiler does not seem to work. However, Netatalk has been
14 successfully compiled, linked and runned with gcc-2.95.3 . GNU Make
15 might also be required.
17 3. A peculiar bug in Netatalk has been noticed on a single Tru64
18 machine. However, because other Tru64 machines have not affected, a
19 patch will not be forthcoming until the circumstances where the bug
20 hits is isolated and a more elegant and appropriate patch can be
21 found. In the meantime, there is a description of the bug below. Any
22 users affected can attempt the workarounds provided. The user is
23 urged to report this to the mailing list so that this bug can be
28 It appears that memcpy() under Tru64 can fail under some
29 circumstances. This maybe due to the fact that Netatalk is compiled
30 with gcc, but since only gcc can compile Netatalk, this is a mute
34 The symptoms of this bug is that a 18432 byte file uploaded to
35 the server would upload correctly, but a 18433 byte file would
36 result in a sparse file many megabytes big (16MB+). However, due to
37 the low-level nature of memcpy(), there is no reason why other
38 symptoms could not occur.
41 There are two known workarounds at this stage.
42 - The first is to #define the macro HAVE_GCC_MEMCPY_BUG. This forces
43 netatalk to use bcopy() in a few (but not all) cases within the code
44 and is enough to stop the bug from occurring. This is the easiest
45 workaround and would merely alter the standard compilation steps to
47 ./configure --with-cflags="-DHAVE_GCC_MEMCPY_BUG"
51 - The second workaround is to manually remove the optimisation flag
52 "-O2" from within configure and/or configure.in. Although, this
53 isn't the preferred workaround, it shows that the compiler is
54 (at least) partially at fault.