Home | History | Annotate | Line # | Download | only in man4
atalk.4 revision 1.5
      1 
      2 .\"	$NetBSD: atalk.4,v 1.5 1999/09/21 22:39:14 matt 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
     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 five kinds of
     49 physical media: LocalTalk (230kbps wire-or'd serial), Ethernet,
     50 FDDI, Token Ring, and asynchronous serial connections (using either
     51 AppleTalk Remote Access
     52 .Pq Tn ARA
     53 or
     54 .Tn PPP
     55 ).
     56 Currently,
     57 .Nx Ns 's
     58 AppleTalk implementataion supports Ethernet, FDDI, and Token Ring.
     59 .Pp
     60 AppleTalk packets are encapsulated on the ethernet using the EtherTalk
     61 Link Access Protocol (ELAP).
     62 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.
     69 The include file
     70 .Aq Pa netatalk/at.h
     71 defines the AppleTalk address format.
     72 
     73 Sockets in the AppleTalk protocol family use the following address
     74 structure:
     75 .Bd -literal -offset indent
     76 struct sockaddr_at {
     77 	u_int8_t	sat_len;
     78 	u_int8_t	sat_family;
     79 	u_int8_t	sat_port;
     80 	struct at_addr	sat_addr;
     81 	union {
     82 		struct netrange r_netrange;
     83 		char		r_zero[8];
     84 	} sat_range;
     85 };
     86 .Ed
     87 .Pp
     88 The port of a socket may be set with
     89 .Xr bind 2 .
     90 The node for
     91 .Xr bind 2
     92 must always be
     93 .Dv ATADDR_ANYNODE :
     94 ``this node.'' The net
     95 .\"may
     96 must
     97 be
     98 .Dv ATADDR_ANYNET .
     99 .\"or
    100 .\".Dv ATADDR_LATENET .
    101 .Dv ATADDR_ANYNET
    102 coresponds to the machine's ``primary'' address (the first
    103 configured).
    104 .\".Dv ATADDR_LATENET
    105 .\"causes the address in outgoing packets to be determined when a packet
    106 .\"is sent, i.e. determined late.
    107 .\".Dv ATADDR_LATENET
    108 .\"is equivalent to opening one socket for each network interface.
    109 The port of a socket and
    110 .\"either
    111 the primary address
    112 .\"or
    113 .\".Dv ATADDR_LATENET
    114 are returned with
    115 .Xr getsockname 2 .
    116 .Sh PROTOCOLS
    117 The AppleTalk protocol family is comprised of the
    118 .Tn DDP
    119 datagram delivery protocol,
    120 AppleTalk Data Stream Protocol
    121 .Pq Tn ADSP ,
    122 AppleTalk Echo Protocol
    123 .Pq Tn AEP ,
    124 AppleTalk Filing Protocol
    125 .Pq Tn AFP ,
    126 AppleTalk Session Protocol
    127 .Pq Tn ASP ,
    128 AppleTalk Transaction Protocol
    129 .Pq Tn ATP ,
    130 Name Binding Protocol
    131 .Pq Tn NBP ,
    132 Printer Access Protocol
    133 .Pq Tn PAP ,
    134 and Zone Information Protocol
    135 .Pq Tn ZIP .
    136 .Pp
    137 .Tn DDP
    138 is implemented in the kernel as
    139 .Dv SOCK_DGRAM
    140 sockets in the
    141 .Dv AF_APPLETALK
    142 address family.
    143 .Nx
    144 implements all other
    145 .Tn AppleTalk
    146 protocols using the
    147 .Tn Netatalk
    148 package.
    149 .Tn Netatalk
    150 implements all functions except for
    151 .Tn ADSP
    152 and an
    153 .Tn AFP
    154 client.
    155 .Tn AEP ,
    156 .Tn NBP ,
    157 and
    158 .Tn ZIP
    159 services are provided by the
    160 .Tn atalkd
    161 daemon.
    162 .Tn ASP
    163 and
    164 .Tn ATP
    165 services are provided by a user library.
    166 .Tn PAP
    167 and
    168 .Tn AFP
    169 services are provided by user programs and daemons.
    170 .Pp
    171 .Sh SEE ALSO
    172 .\" .BR ddp (4P),
    173 .\" .BR atp (3N),
    174 .\" .BR asp (3N),
    175 .Xr bind 2 ,
    176 .Xr getsockname 2 ,
    177 .Xr options 4 ,
    178 .Xr atalkd 8 .
    179 .Rs
    180 .%B Inside AppleTalk, second edition
    181 .%A Gursharan S. Sidhu
    182 .%A Richard F. Andrews
    183 .%A Alan B. Oppenheimer
    184 .Re
    185