1 The generic system profile is for use on systems that don't have native
2 appletalk support. For those systems, it should still be possible to get
3 the AFP/tcp portion of netatalk to still work.
5 To do that, you will need the following information:
6 1) Endian order: If your machine does not specify the
7 byte-order in netinet/in.h, you may need to modify
10 2) Integer sizes: If your machine does not define intX_t and
11 u_intX_t, you will need to define them in
12 netatalk/endian.h. To ease matters, you can specify
13 _ISOC9X_SOURCE if you have inttypes.h, HAVE_64BIT_LONGS for
14 64 bit machines, or HAVE_32BIT_LONGS for 32 bit
15 machines. NOTE: you should only use HAVE_32/64BIT_LONGS on
16 machines that don't have a header file somewhere with the
17 integer sizes. If you have a file with all the relevant
18 bits, modify netatalk/endian.h to include it.
20 3) Quota/statfs information: You may be able to get away with
21 either BSD4_4 or __svr4__, but that's unlikely if your os
22 is some bizarre hybrid. If you don't have quota support,
23 just specify NO_QUOTA_SUPPORT. In addition, if you'll need
24 to specify the include file that gets statfs() (usually
25 either USE_VFS_H or USE_STATFS_H although BSD4_4 and
26 __svr4__ bring in a set of include files for that). Look at
27 etc/afpd/quota.c, unix.c, and unix.h for more information.
28 Finally, if you have a really old version of rquota, you
29 can define USE_OLD_RQUOTA as well.
31 4) path information for lock/spool/printer files. you'll need
32 to specify -D_PATH_LOCKDIR if include/atalk/paths.h doesn't
33 have the correct paths specified for printer info and lock
36 Beyond that, you should make sure that your operating system looks and
37 smells like a Un*x POSIXy operating system. The only operating systems
38 that netatalk supports that don't quite fit that description are
39 sunos 4 and ultrix. If your operating system is peculiar, you may need
40 to add in compatibility routines (libatalk/compat,
41 include/atalk/compat.h) to make it look more like the others.
43 If you would like native AppleTalk support, you will need kernel support
44 for your operating system. Look at the Solaris STREAMS module if your
45 operating system supports that framework. Otherwise, look at the ddp
46 code in FreeBSD, NetBSD, or OpenBSD if your operating system is BSDish
47 in nature. If your operating system looks different than these two
48 cases, you'll have to roll your own implementation.