atalk.4 revision 1.2 1
2 .\" $NetBSD: atalk.4,v 1.2 1998/02/06 06:06:45 perry Exp $
3 .\"
4 .\" This file is derived from the atalk.4 man page in the Netatlk 1.4b2
5 .\" distribution. That distribution is covered by the following copyright:
6 .\"
7 .\" Copyright (c) 1990,1996 Regents of The University of Michigan.
8 .\" All Rights Reserved.
9 .\"
10 .\" Permission to use, copy, modify, and distribute this software and
11 .\" its documentation for any purpose and without fee is hereby granted,
12 .\" provided that the above copyright notice appears in all copies and
13 .\" that both that copyright notice and this permission notice appear
14 .\" in supporting documentation, and that the name of The University
15 .\" of Michigan not be used in advertising or publicity pertaining to
16 .\" distribution of the software without specific, written prior
17 .\" permission. This software is supplied as is without expressed or
18 .\" implied warranties of any kind.
19 .\"
20 .\" This product includes software developed by the University of
21 .\" California, Berkeley and its contributors.
22 .\"
23 .\" Research Systems Unix Group
24 .\" The University of Michigan
25 .\" c/o Wesley Craig
26 .\" 535 W. William Street
27 .\" Ann Arbor, Michigan
28 .\" +1-313-764-2278
29 .\" netatalk (a] umich.edu
30 .\"
31 .Dd November 14, 1997
32 .Dt ATALK 4
33 .Os NetBSD 1.3
34 .Sh NAME
35 .Nm atalk
36 .Nd AppleTalk Protocol Family
37 .Sh SYNOPSIS
38 .Fd #include <sys/types.h>
39 .Fd #include <netatalk/at.h>
40 .Sh DESCRIPTION
41 The
42 .Tn AppleTalk
43 Protocol Family provides presentation layer support for the AppleTalk
44 Datagram Delivery Protocol (DDP), using the SOCK_DGRAM socket type.
45 In addition, access to in-kernel AppleTalk routing tables and network
46 interface configurations is provided.
47 .Pp
48 The AppleTalk Protocol Suite provides support for four kinds of
49 physical media: LocalTalk (230kbps wire-or'd serial), Ethernet,
50 Token Ring, and asynchronous serial connections (using either
51 AppleTalk Remote Access
52 .Pq Tn ARA
53 or
54 .Tn PPP
55 ). Currently,
56 .Nx Ns 's
57 AppleTalk implimentataion supports only Ethernet.
58 .\" and Token Ring?
59 .\" If NetBSD supported it....
60 .Pp
61 AppleTalk packets are encapsulated on the ethernet using the EtherTalk
62 Link Access Protocol (ELAP). Local network address resolution is
63 handled using the AppleTalk Address Resolution Protocol (AARP).
64 Neither of these protocols is exposed to user-mode applications.
65 .Pp
66 .Sh ADDRESSING
67 AppleTalk addresses are three byte quantities, stored in network
68 byte order. The include file
69 .Aq Pa netatalk/at.h
70 defines the AppleTalk address format.
71
72 Sockets in the AppleTalk protocol family use the following address
73 structure:
74 .Bd -literal -offset indent
75 struct sockaddr_at {
76 u_int8_t sat_len;
77 u_int8_t sat_family;
78 u_int8_t sat_port;
79 struct at_addr sat_addr;
80 union {
81 struct netrange r_netrange;
82 char r_zero[8];
83 } sat_range;
84 };
85 .Ed
86 .Pp
87 The port of a socket may be set with
88 .Xr bind 2 .
89 The node for
90 .Xr bind
91 must always be
92 .Dv ATADDR_ANYNODE :
93 ``this node.'' The net
94 .\"may
95 must
96 be
97 .Dv ATADDR_ANYNET .
98 .\"or
99 .\".Dv ATADDR_LATENET .
100 .Dv ATADDR_ANYNET
101 coresponds to the machine's ``primary'' address (the first
102 configured).
103 .\".Dv ATADDR_LATENET
104 .\"causes the address in outgoing packets to be determined when a packet
105 .\"is sent, i.e. determined late.
106 .\".Dv ATADDR_LATENET
107 .\"is equivalent to opening one socket for each network interface.
108 The port of a socket and
109 .\"either
110 the primary address
111 .\"or
112 .\".Dv ATADDR_LATENET
113 are returned with
114 .Xr getsockname 2 .
115 .Sh PROTOCOLS
116 The AppleTalk protocol family is comprised of the
117 .Tn DDP
118 datagram delivery protocol,
119 AppleTalk Data Stream Protocol
120 .Pq Tn ADSP ,
121 AppleTalk Echo Protocol
122 .Pq Tn AEP ,
123 AppleTalk Filing Protocol
124 .Pq Tn AFP ,
125 AppleTalk Session Protocol
126 .Pq Tn ASP ,
127 AppleTalk Transaction Protocol
128 .Pq Tn ATP ,
129 Name Binding Protocol
130 .Pq Tn NBP ,
131 Printer Access Protocol
132 .Pq Tn PAP ,
133 and Zone Information Protocol
134 .Pq Tn ZIP .
135 .Pp
136 .Tn DDP
137 is implemented in the kernel as
138 .Dv SOCK_DGRAM
139 sockets in the
140 .Dv AF_APPLETALK
141 address family.
142 .Nx
143 implements all other
144 .Tn AppleTalk
145 protocols using the
146 .Tn Netatalk
147 package.
148 .Tn Netatalk
149 implements all functions except for
150 .Tn ADSP
151 and an
152 .Tn AFP
153 client.
154 .Tn AEP ,
155 .Tn NBP ,
156 and
157 .Tn ZIP
158 services are provided by the
159 .Tn atalkd
160 daemon.
161 .Tn ASP
162 and
163 .Tn ATP
164 services are provided by a user library.
165 .Tn PAP
166 and
167 .Tn AFP
168 services are provided by user programs and daemons.
169 .Pp
170 .Sh SEE ALSO
171 .\" .BR ddp (4P),
172 .\" .BR atp (3N),
173 .\" .BR asp (3N),
174 .Xr bind 2 ,
175 .Xr getsockname 2 ,
176 .Xr atalkd 8 .
177 .Rs
178 .%B Inside AppleTalk, second edition
179 .%A Gursharan S. Sidhu
180 .%A Richard F. Andrews
181 .%A Alan B. Oppenheimer
182 .Re
183