1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243
|
.\" -*- nroff -*-
.\" Esta man page tem Copyright (C) 1998 Alan Cox.
.\" Permisso dada para is granted to distribute possibly modified copies
.\" of this page provided the header is included verbatim,
.\" e em caso de modificaes no-triviais, o autor e a data
.\" da modificao acrescentada ao cabealho.
.\" $Id: ddp.7,v 1.1 2000/10/20 13:05:11 ricardo Exp $
.TH DDP 7 "1/05/1999" "Pgina de Manual do Linux" "Manual do Programador Linux"
.SH NOME
ddp \- Implementao do protocolo Linux AppleTalk
.SH SINOPSE
.B #include <sys/socket.h>
.br
.B #include <netatalk/at.h>
.sp
.IB ddp_socket " = socket(PF_APPLETALK, SOCK_DGRAM, 0);"
.br
.IB raw_socket " = socket(PF_APPLETALK, SOCK_RAW, " protocol ");"
.SH DESCRIO
Linux implementa os protocolos Appletalk descritos em
.IR "Por dentro do Appletalk" .
Somente a camada DDP e o AARP esto presentes
no kernel. Eles so projetados para serem usados nas bibliotecas do protocolo
.B netatalk
.
Esta pgina documenta a interface para aqueles que desejam ou precisam
usar a camada DDP diretamente.
.PP
A comunicao entre Appletalk e o programa do usurio funciona usando uma interface de socket compatvel com BSD.
Para mais informaes sobre sockets, veja
.BR socket (7).
.PP
Um socket AppleTalk criado chamando-se a funo
.BR socket (2)
com um argumento
.B PF_APPLETALK
da famlia de socket. Tipos de sockets vlidos so
.B SOCK_DGRAM
para abrir um socket
.B ddp
ou
.B SOCK_RAW
para abrir um socket
.B raw
.
.I protocol
um protocolo Appletalk para ser recebido ou enviado. Para
.B SOCK_RAW
Voc deve especificar
.BR ATPROTO_DDP .
.PP
Raw sockets s podem ser abertos por um processo com um id efetivo de usurio igual a 0, ou quando o processo tem a propriedade
.B CAP_NET_RAW
.
.SH FORMATO DO ENDEREO
Um endereo de socket Appletalk definido como uma combinao de um nmero de rede,
um nmero de n e um nmero de porta.
.PP
.RS
.nf
.ta 4n 20n 32n
struct at_addr {
u_short s_net;
u_char s_node;
};
struct sockaddr_atalk {
sa_family_t sat_family; /* famlia de endereo */
u_char sat_port; /* porta */
struct at_addr sat_addr; /* rede/n */
};
.ta
.fi
.RE
.PP
.I sat_family
sempre setado para
.B AF_APPLETALK.
.I sat_port
contm a porta. Os nmeros de porta abaixo de 129 so conhecidos como
.B portas reservadas.
Apenas os processos com id efetivo de usurio igual a 0, ou com a propriedade
.B CAP_NET_BIND_SERVICE
podem realizar
.BR bind (2)
com esses sockets.
.I sat_addr
o endereo do host.
O membro
.I net
de
.B struct at_addr
contm a rede do host, em ordem de byte da rede. O valor de
.B AT_ANYNET
um coringa,
e tambm significa \(lqesta rede.\(rq
O membro
.I n
de
.B struct at_addr
contm o nmero do n do host. O valor de
.B AT_ANYNODE
um coringa,
e tambm significa \(lqeste n.\(rq O valor de
.B ATADDR_BCAST
um endereo local
de broadcast de link.
.\" XXX isso no faz sentido [johnl]
.SH OPES DE SOCKET
Nenhuma opo de socket especfica de protocolo suportada.
.SH SYSCTLS
IP suporta uma interface sysctl para configurar alguns parmetros globais do AppleTalk.
Os sysctls podem ser acessados pela leitura ou escrita nos arquivos
.B /proc/sys/net/atalk/*
ou com a interface
.BR sysctl (2)
.
.TP
.B aarp-expiry-time
O intervalo de tempo (em segundos) antes de uma entrada de cache AARP expirar.
.TP
.B aarp-resolve-time
O intervalo de tempo (em segundos) antes de uma entrada de cache AARP ser resolvida.
.TP
.B aarp-retransmit-limit
O nmero de retransmisses de uma pesquisa AARP antes que o n seja declarado
morto.
.TP
.B aarp-tick-time
A taxa do temporizador (em segundos) para o temporizador que controla o AARP.
.PP
Os valores padro casam com a especificao e nunca deveriam ser
alterados.
.SH IOCTLS
Todos os ioctls descritos em
.BR socket (7)
aplicam-se ao ddp.
.\" XXX Acrescenta um captulo sobre multicasting
.SH NOTAS
Seja muito cuidadoso com a opo
.B SO_BROADCAST
\- ela no privilegiada em Linux. fcil sobrecarregar a rede com transmisses
descuidadas para endereos de broadcast.
.SH VERSES
Appletalk suportado pelo Linux verso 2.0 ou superior. A interface
.B sysctl
nova
no Linux 2.2.
.SH ERROS
.\" XXX documenta todos os erros. Ns realmente corrigiramos os kernels para dar retornos de erro
.\" mais uniformes (ENOMEM vs ENOBUFS, EPERM vs EACCES etc.)
.TP
.B ENOTCONN
A operao s definida sobre um socket conectado, mas o socket no est
conectado.
.TP
.B EINVAL
Um argumento invlido foi passado.
.TP
.B EMSGSIZE
O datagrama maior que o MTU DDP.
.TP
.B EACCES
O usurio tentou executar uma operao sem as permisses necessrias. Isso
inclui envios a um endereo de broadcast sem ter a flag de broadcast setada,
e tentativas de executar um bind em uma porta reservada sem um id efetivo de usurio igual a 0 ou
.BR CAP_NET_BIND_SERVICE .
.TP
.B EADDRINUSE
Tentativa de executar um bind em um endereo j em uso.
.TP
.BR ENOMEM " and " ENOBUFS
No h memria disponvel.
.TP
.BR ENOPROTOOPT " and " EOPNOTSUPP
Uma opo de socket invlido foi passada.
.TP
.B EPERM
Usurio no tem permisso de setar alta prioridade, fazer uma mudana de configurao,
ou enviar sinais para um processo ou grupo requerido.
.TP
.B EADDRNOTAVAIL
Uma interface no existente foi requerida, ou o endereo de fonte requerida
no era local.
.TP
.B EAGAIN
Operation on a nonblocking socket would block.
.TP
.B ESOCKTNOSUPPORT
O socket foi desconfigurado, ou um tipo de socket desconhecido foi requerido.
.TP
.B EISCONN
.BR connect (2)
foi chamado sobre um socket j conectado.
.TP
.B EALREADY
Uma operao de conexo sobre um socket no-bloqueado j est em progresso.
.TP
.B ECONNABORTED
Uma conexo foi fechada durante um
.BR accept (2).
.TP
.B EPIPE
A conexo foi fechada ou desligada inesperadamente pelo outra extremidade.
.TP
.B ENOENT
.B SIOCGSTAMP
foi chamado sobre um socket onde nenhum pacote chegou.
.TP
.B EHOSTUNREACH
Nenhuma entrada da tabela de roteamento encontrou o endereo de destino.
.TP
.B ENODEV
O dispositivo de rede no est disponvel, ou no capaz de enviar IP.
.TP
.B ENOPKG
Um subsistema do kernel no foi configurado.
.SH COMPATIBILITY
A interface bsica do socket AppleTalk compatvel com
.B netatalk
em sistemas derivados do BSD. Muitos sistemas BSD falham na checagem de
.B SO_BROADCAST
quando enviam quadros de broadcast; isto pode levar a problemas de compatibilidade.
.PP
O
modo
de socket raw nico em Linux e existe para suportar o pacote alternativo CAP
e as ferramentas de monitoramento AppleTalk mais facilmente.
.SH ERROS
H muitos valores de erro inconsistentes.
.PP
Os ioctls usados para configurar tabelas de roteamento, dispositivos,
tabelas AARP e outros dispositivos ainda no foram descritos.
.SH VEJA TAMBM
.BR sendmsg (2),
.BR recvmsg (2),
.BR socket (7)
.SH TRADUZIDO POR LDP-BR em 21/08/2000.
\&\fR\&\f(CWRubens de Jesus Nogueira <darkseid99@usa.net> (traduo)\fR
\&\fR\&\f(CWAndr L. Fassone Canova <lonelywolf@blv.com.br> (reviso)\fR
|