ddp(7) Miscellaneous Information Manual ddp(7) NUME ddp - implementarea protocolului Linux AppleTalk SINOPSIS #include #include ddp_socket = socket(AF_APPLETALK, SOCK_DGRAM, 0); raw_socket = socket(AF_APPLETALK, SOCK_RAW, protocol); DESCRIERE Linux implementeaza protocoalele AppleTalk descrise in Inside AppleTalk. Doar stratul DDP i AARP sunt prezente in nucleu. Acestea sunt concepute pentru a fi utilizate prin intermediul bibliotecilor de protocol netatalk. Aceasta pagina documenteaza interfaa pentru cei care doresc sau trebuie sa utilizeze direct stratul DDP. Comunicarea dintre AppleTalk i programul utilizatorului funcioneaza folosind o interfaa de soclu compatibila cu BSD. Pentru mai multe informaii despre socluri, consultai socket(7). Un soclu AppleTalk este creat prin apelarea funciei socket(2) cu un argument al familiei de socluri AF_APPLETALK. Tipurile de soclu valide sunt SOCK_DGRAM pentru a deschide un soclu ddp sau SOCK_RAW pentru a deschide un soclu raw. protocol este protocolul AppleTalk care urmeaza sa fie primit sau trimis. Pentru SOCK_RAW trebuie sa specificai ATPROTO_DDP. Soclurile raw (brute) pot fi deschise numai de un proces cu ID utilizator efectiv 0 sau atunci cand procesul are capacitatea CAP_NET_RAW. Formatul adreselor O adresa de soclu AppleTalk este definita ca o combinaie a unui numar de reea, a unui numar de nod i a unui numar de port. struct at_addr { unsigned short s_net; unsigned char s_node; }; struct sockaddr_atalk { sa_family_t sat_family; /* familia de adrese */ unsigned char sat_port; /* port */ struct at_addr sat_addr; /* reea / nod */ }; sat_family este intotdeauna definit la AF_APPLETALK. sat_port conine portul. Numerele de porturi sub 129 sunt cunoscute ca porturi rezervate. Numai procesele cu ID utilizator efectiv 0 sau cu capacitatea CAP_NET_BIND_SERVICE pot efectua bind(2) la aceste socluri. sat_addr este adresa gazdei. Membrul net al struct at_addr conine reeaua gazda in ordinea octeilor de reea. Membrul node al struct at_addr conine numarul nodului gazdei, iar valoarea lui AT_ANYNET este un caracter joker i implica, de asemenea, ,,aceasta reea". Valoarea lui AT_ANYNODE este un caracter joker i implica, de asemenea, ,,acest nod". Valoarea lui ATADDR_BCAST este o adresa de difuzare locala a legaturii. Opiuni de soclu Nu sunt acceptate opiuni de soclu specifice protocolului. Interfee ,,/proc" IP accepta un set de interfee /proc pentru a configura anumii parametri AppleTalk globali. Parametrii pot fi accesai prin citirea sau scrierea de fiiere in directorul /proc/sys/net/atalk/. aarp-expiry-time Intervalul de timp (in secunde) inainte ca o intrare din cache AARP sa expire. aarp-resolve-time Intervalul de timp (in secunde) inainte ca o intrare din cache AARP sa fie rezolvata. aarp-retransmit-limit Numarul de retransmisiuni ale unei interogari AARP inainte ca nodul sa fie declarat mort. aarp-tick-time Rata temporizatorului (in secunde) pentru temporizatorul care controleaza AARP. Valorile implicite corespund specificaiilor i nu ar trebui sa fie modificate niciodata. Ioctl-uri Toate ioctl-urile descrise in socket(7) se aplica la DDP. ERORI-IEIRE EACCES Utilizatorul a incercat sa execute o operaie fara permisiunile necesare. Printre acestea se numara trimiterea la o adresa de difuzare fara ca fanionul de difuzare sa fie activat i incercarea de conectare la un port rezervat fara ID utilizator efectiv 0 sau CAP_NET_BIND_SERVICE. EADDRINUSE A incercat sa se conecteze la o adresa deja utilizata. EADDRNOTAVAIL A fost solicitata o interfaa inexistenta sau adresa sursa solicitata nu era locala. EAGAIN Operaia pe un soclu care nu blocheaza se va bloca. EALREADY O operaie de conectare pe un soclu care nu blocheaza este deja in curs de desfaurare. ECONNABORTED O conexiune a fost inchisa in timpul unui apel la accept(2). EHOSTUNREACH Nicio intrare din tabelul de direcionare nu corespunde adresei de destinaie. EINVAL S-a furnizat un argument nevalid. EISCONN connect(2) a fost apelat pe un soclu deja conectat. EMSGSIZE Datagrama este mai mare decat MTU-ul DDP. ENODEV Dispozitivul de reea nu este disponibil sau nu poate trimite IP. ENOENT SIOCGSTAMP a fost apelat pe un soclu unde nu a sosit niciun pachet. ENOMEM ENOBUFS Nu exista suficienta memorie disponibila. ENOPKG Un subsistem de nucleu nu a fost configurat. ENOPROTOOPT EOPNOTSUPP Opiunea de soclu pasata nu este valida. ENOTCONN Operaia este definita numai pe un soclu conectat, dar soclul nu era conectat. EPERM Utilizatorul nu are permisiunea de a stabili o prioritate ridicata, de a efectua o modificare a configuraiei sau de a trimite semnale catre procesul sau grupul solicitat. EPIPE Conexiunea a fost inchisa sau intrerupta in mod neateptat de celalalt capat. ESOCKTNOSUPPORT Soclul nu a fost configurat sau a fost solicitat un tip de soclu necunoscut. VERSIUNI AppleTalk este acceptat de Linux 2.0 sau o versiune ulterioara. Interfeele /proc exista incepand cu Linux 2.2. NOTE Fii foarte ateni cu opiunea SO_BROADCAST; aceasta nu este privilegiata in Linux. Este uor sa supraincarcai reeaua prin trimiterea neglijenta la adrese de difuzare. Compatibilitate Interfaa de baza pentru soclu AppleTalk este compatibila cu netatalk pe sistemele derivate din BSD. Multe sisteme BSD nu verifica SO_BROADCAST atunci cand trimit cadre de difuzare; acest lucru poate duce la probleme de compatibilitate. Modul de soclu brut este unic pentru Linux i exista pentru a oferi suport mai uor pachetului alternativ CAP i instrumentelor de monitorizare AppleTalk. ERORI Exista prea multe valori de eroare inconsecvente. Ioctl-urile utilizate pentru a configura tabelele de rutare, dispozitivele, tabelele AARP i alte dispozitive nu sunt inca descrise. CONSULTAI I recvmsg(2), sendmsg(2), capabilities(7), socket(7) TRADUCERE Traducerea in limba romana a acestui manual a fost facuta de Remus- Gabriel Chelu Aceasta traducere este documentaie gratuita; citii Licena publica generala GNU Versiunea 3 sau o versiune ulterioara cu privire la condiii privind drepturile de autor. NU se asuma NICIO RESPONSABILITATE. Daca gasii erori in traducerea acestui manual, va rugam sa trimitei un e-mail la . Pagini de manual de Linux 6.15 17 mai 2025 ddp(7)