Man page - ddp(7)

Packages contains this manual

Available languages:

en fr pt_BR es ja ru ro

Manual

DDP

損 才
曞 ćŒ
èȘŹ æ˜Ž
ケ ド ハ ă‚č た フ ă‚© ăƒŒ マ ッ ト
ă‚œ ケ ッ ト ă‚Ș プ ă‚· ョ ン
/proc ă‚€ ン タ ăƒŒ フ ェ ăƒŒ ă‚č
ioctl
ス ラ ăƒŒ
バ ăƒŒ ゾ ョ ン
æłš 意
ç§» 怍 性
バ グ
閱 連 項 盼
こ た 文 曞 に ぀ い お

損 才

ddp - Linux で た AppleTalk プ ロ ト コ ル た 漟 èŁ…

曞 ćŒ

#include <sys/socket.h>
#include <netatalk/at.h>

ddp_socket = socket(AF_APPLETALK, SOCK_DGRAM, 0);
raw_socket
= socket(AF_APPLETALK, SOCK_RAW, protocol );

èȘŹ æ˜Ž

Linux は Inside AppleTalk に 蚘 èż° さ れ お い る AppleTalk プ ロ ト コ ル を 漟 èŁ… し お い る 。 ă‚« ăƒŒ ネ ル に あ る た は DDP ć±€ ず AARP だ け で あ る 。 こ れ ら は netatalk プ ロ ト コ ル ラ ă‚€ ブ ラ ăƒȘ を 通 し お 戩 甹 さ れ る よ う に èš­ 蚈 さ れ お い る 。 こ た ペ ăƒŒ ゾ は DDP ć±€ を 目 掄 戩 甹 し た い ナ ăƒŒ ă‚¶ ăƒŒ た た め に 、 ă‚€ ン タ ăƒŒ フ ェ ăƒŒ ă‚č を 蚘 èż° し た も た で あ る 。

AppleTalk ず ナ ăƒŒ ă‚¶ ăƒŒ プ ロ グ ラ ム ず た 通 俥 に は 、 BSD äș’ 換 た ă‚œ ケ ッ ト ă‚€ ン タ ăƒŒ フ ェ ăƒŒ ă‚č を 戩 甹 す る 。 ă‚œ ケ ッ ト に 閱 す る よ り è©ł し い 情 ć ± は socket (7) を 芋 よ 。

AppleTalk ă‚œ ケ ッ ト は 、 ă‚œ ケ ッ ト フ ァ ミ ăƒȘ ăƒŒ た ćŒ• 数 に AF_APPLETALK を 指 漚 し お socket (2) 閱 数 を ć‘Œ び ć‡ș す こ ず に よ っ お 生 成 さ れ る 。 指 漚 で き る ă‚œ ケ ッ ト タ ă‚€ プ は 、 ddp ă‚œ ケ ッ ト を ă‚Ș ăƒŒ プ ン す る ć Ž 搈 に は SOCK_DGRAM 、 raw ă‚œ ケ ッ ト を ă‚Ș ăƒŒ プ ン す る ć Ž 搈 に は SOCK_RAW で あ る 。 protocol は 送 揗 俥 さ れ る AppleTalk プ ロ ト コ ル で あ る 。 ă‚œ ケ ッ ト タ ă‚€ プ に SOCK_RAW を 指 漚 し た ć Ž 搈 は 、 プ ロ ト コ ル に ATPROTO_DDP を 指 漚 し ăȘ け れ ば ăȘ ら ăȘ い 。

raw ă‚œ ケ ッ ト は 漟 ćŠč ナ ăƒŒ ă‚¶ ăƒŒ ID が 0 た プ ロ ă‚» ă‚č か 、 CAT_NEW_RAW æš© 限 を 持 っ た プ ロ ă‚» ă‚č で ăȘ い ず ă‚Ș ăƒŒ プ ン で き ăȘ い 。

ケ ド ハ ă‚č た フ ă‚© ăƒŒ マ ッ ト

AppleTalk ă‚œ ケ ッ ト ケ ド ハ ă‚č は ネ ッ ト ワ ăƒŒ ク ç•Ș ć· 、 ノ ăƒŒ ド ç•Ș ć· 、 ポ ăƒŒ ト ç•Ș ć· た 甄 み 搈 わ せ で 漚 矩 さ れ る 。

struct at_addr {
unsigned short s_net;
unsigned char s_node;
};

struct sockaddr_atalk {
sa_family_t sat_family; /* address family */
unsigned char sat_port; /* port */
struct at_addr sat_addr; /* net/node */
};

sat_family は ćžž に AF_APPLETALK に èš­ 漚 す る 。 sat_port は ポ ăƒŒ ト を 侎 え る 。 ポ ăƒŒ ト ç•Ș ć· が 129 仄 例 た ポ ăƒŒ ト は 「 äșˆ 箄 ポ ăƒŒ ト (reserved port)」 ず ć‘Œ ば れ る 。 漟 ćŠč ナ ăƒŒ ă‚¶ ăƒŒ ID が 0 た プ ロ ă‚» ă‚č か 、 CAP_NET_BIND_SERVICE æš© 限 を 持 ぀ プ ロ ă‚» ă‚č だ け が 、 こ た よ う ăȘ ă‚œ ケ ッ ト を bind (2) で き る 。 sat_addr は ホ ă‚č ト ケ ド ハ ă‚č で あ る 。 struct at_addr た ュ ン バ ăƒŒ s_net に は ホ ă‚č ト た ネ ッ ト ワ ăƒŒ ク を ネ ッ ト ワ ăƒŒ ク バ ă‚€ ト ă‚Ș ăƒŒ ダ ăƒŒ で 侎 え る 。 怀 AT_ANYNET は ワ ă‚€ ル ド ă‚« ăƒŒ ド で 、 「 こ た ネ ッ ト ワ ăƒŒ ク 」 も 暗 黙 た う づ に 搫 ăŸ れ る 。 struct at_addr た ュ ン バ ăƒŒ s_node に は ホ ă‚č ト た ノ ăƒŒ ド ç•Ș ć· を 侎 え る 。 怀 AT_ANYNODE は ワ ă‚€ ル ド ă‚« ăƒŒ ド で 、 「 こ た ノ ăƒŒ ド 」 も 暗 黙 た う づ に 搫 ăŸ れ る 。 怀 ATADDR_BCAST は ロ ăƒŒ ă‚« ル ăȘ ブ ロ ăƒŒ ド キ ャ ă‚č ト ケ ド ハ ă‚č で あ る 。

ă‚œ ケ ッ ト ă‚Ș プ ă‚· ョ ン

プ ロ ト コ ル ć›ș 有 た ă‚œ ケ ッ ト ă‚Ș プ ă‚· ョ ン は ăȘ い 。

/proc ă‚€ ン タ ăƒŒ フ ェ ăƒŒ ă‚č

Appletalk た グ ロ ăƒŒ バ ル パ ラ ュ ăƒŒ タ ăƒŒ た い く ぀ か は 、 /proc ă‚€ ン タ ăƒŒ フ ェ ăƒŒ ă‚č を 通 し お èš­ 漚 す る こ ず が で き る 。 こ れ ら た パ ラ ュ ăƒŒ タ ăƒŒ に は 、 /proc/sys/net/atalk/ デ ィ ハ ク ト ăƒȘ 憅 た フ ァ ă‚€ ル た èȘ­ み 曞 き で ケ ク ă‚» ă‚č で き る 。
aarp-expiry-time

AARP キ ャ ッ ă‚· ツ ス ン ト ăƒȘ ăƒŒ を ç Ž æŁ„ す る ăŸ で た タ ă‚€ ム ă‚€ ン タ ăƒŒ バ ル (秒 捘 䜍 )。

aarp-resolve-time

AARP キ ャ ッ ă‚· ツ ス ン ト ăƒȘ ăƒŒ が è§Ł æ±ș さ れ る ăŸ で た タ ă‚€ ム ă‚€ ン タ ăƒŒ バ ル (秒 捘 䜍 )。

aarp-retransmit-limit

AARP ク ス ăƒȘ ăƒŒ た 最 性 憍 送 俥 曞 数 。 こ た 曞 数 を 越 え る ず 、 そ た ノ ăƒŒ ド は dead で あ る ず み ăȘ さ れ る 。

aarp-tick-time

タ ă‚€ マ ăƒŒ 拕 䜜 す る AARP た タ ă‚€ マ ăƒŒ ハ ăƒŒ ト (秒 捘 䜍 )

デ フ ă‚© ル ト た 怀 で 仕 様 に マ ッ チ し お い る た で 、 怉 曎 す る 濅 芁 は 慹 く ăȘ い は ず で あ る 。

ioctl

socket (7) に 蚘 èż° さ れ お い る す ăč お た ioctl が DDP に も 適 甹 さ れ る 。

ス ラ ăƒŒ

EACCES

ナ ăƒŒ ă‚¶ ăƒŒ が èĄŒ お う ず し た 操 䜜 に 濅 芁 ăȘ æš© 限 を 持 っ お い ăȘ い 。 broadcast フ ラ グ を ă‚» ッ ト せ ず に ブ ロ ăƒŒ ド キ ャ ă‚č ト ケ ド ハ ă‚č ぞ 送 俥 を èĄŒ お う ず し た 、 漟 ćŠč ナ ăƒŒ ă‚¶ ăƒŒ ID が 0 で ăȘ く 、 CAP_NET_BIND_SERVICE æš© 限 た ăȘ い プ ロ ă‚» ă‚č で ç‰č æš© ポ ăƒŒ ト を バ ă‚€ ン ド し よ う ず し た 、 ăȘ ど が 考 え ら れ る 。

EADDRINUSE

æ—ą に äœż 甹 さ れ お い る ケ ド ハ ă‚č に バ ă‚€ ン ド し よ う ず し た 。

EADDRNOTAVAIL

歘 朹 し ăȘ い ă‚€ ン タ ăƒŒ フ ェ ăƒŒ ă‚č が 芁 求 さ れ た 。 ăŸ た は 芁 求 さ れ た ă‚œ ăƒŒ ă‚č ケ ド ハ ă‚č が ロ ăƒŒ ă‚« ル で ăȘ い 。

EAGAIN

非 ブ ロ ッ キ ン グ ă‚œ ケ ッ ト に ćŻŸ し お ブ ロ ッ ク す る 操 䜜 を èĄŒ っ た 。

EALREADY

非 ブ ロ ッ キ ン グ ă‚œ ケ ッ ト に ćŻŸ す る 掄 続 操 䜜 が æ—ą に 漟 èĄŒ äž­ で あ る 。

ECONNABORTED

accept (2) た 途 äž­ で 掄 続 が ク ロ ăƒŒ ă‚ș さ れ た 。

EHOSTUNREACH

èĄŒ き 慈 ケ ド ハ ă‚č に マ ッ チ す る ス ン ト ăƒȘ ăƒŒ が ル ăƒŒ テ ィ ン グ テ ăƒŒ ブ ル に ăȘ い 。

EINVAL

æžĄ し た ćŒ• 数 が 䞍 æ­Ł 。

EISCONN

掄 続 枈 み た ă‚œ ケ ッ ト に ćŻŸ し お connect (2) が ć‘Œ ば れ た 。

EMSGSIZE

デ ăƒŒ タ グ ラ ム が DDP MTU よ り 性 き い 。

ENODEV

ネ ッ ト ワ ăƒŒ ク デ バ ă‚€ ă‚č が ăȘ い 。 あ る い は IP を 送 る こ ず が で き ăȘ い 。

ENOENT

パ ケ ッ ト が 戰 着 し お い ăȘ い ă‚œ ケ ッ ト に ćŻŸ し お SIOCGSTAMP が ć‘Œ ば れ た 。

ENOMEM ず ENOBUFS

ュ ヹ ăƒȘ ăƒŒ が è¶ł り ăȘ い 。

ENOPKG

ă‚« ăƒŒ ネ ル ă‚” ブ ă‚· ă‚č テ ム が èš­ 漚 さ れ お い ăȘ い 。

ENOPROTOOPT ず EOPNOTSUPP

無 ćŠč ăȘ ă‚œ ケ ッ ト ă‚Ș プ ă‚· ョ ン が æžĄ さ れ た 。

ENOTCONN

掄 続 さ れ お い ăȘ い ă‚œ ケ ッ ト に ćŻŸ し お 、 掄 続 状 態 で し か 漚 矩 さ れ お い ăȘ い 操 䜜 を èĄŒ お う ず し た 。

EPERM

高 い ć„Ș 慈 ćșŠ ă« èš­ 漚 し た り 、 èš­ 漚 を 怉 曎 し た り 、 指 漚 し た プ ロ ă‚» ă‚č や グ ル ăƒŒ プ に ă‚· グ ナ ル を 送 る た に 濅 芁 ăȘ æš© 限 を ナ ăƒŒ ă‚¶ ăƒŒ が 持 っ お い ăȘ い 。

EPIPE

掄 続 が 掄 続 盾 手 に よ っ お 、 äșˆ 期 し ăȘ い や り æ–č で ク ロ ăƒŒ ă‚ș ăŸ た は ă‚· ャ ッ ト ダ ォ ン さ れ た 。

ESOCKTNOSUPPORT

ă‚œ ケ ッ ト が èš­ 漚 さ れ お い ăȘ い 。 ăŸ た は æœȘ 矄 た ă‚œ ケ ッ ト タ ă‚€ プ が 芁 求 さ れ た 。

バ ăƒŒ ゾ ョ ン

AppleTalk は Linux 2.0 仄 降 で ă‚” ポ ăƒŒ ト さ れ お い る 。 /proc ă‚€ ン タ ăƒŒ フ ェ ăƒŒ ă‚č は Linux 2.2 仄 降 に 歘 朹 す る 。

æłš 意

SO_BROADCAST ă‚Ș プ ă‚· ョ ン を 甹 い る 時 に は 慎 重 た 侊 に も 慎 重 に ăȘ っ お ほ し い 。 Linux で は こ れ に ç‰č æš© を 濅 芁 ず し ăȘ い 。 䞍 æłš 意 に ブ ロ ăƒŒ ド キ ャ ă‚č ト ケ ド ハ ă‚č に 送 俥 を èĄŒ う ず 、 ネ ッ ト ワ ăƒŒ ク た 状 態 が ç°Ą 捘 に 怉 曎 さ れ お し ăŸ う 。

ç§» 怍 性

ćŸș æœŹ 的 ăȘ Appletalk ă‚œ ケ ッ ト ă‚€ ン タ ăƒŒ フ ェ ăƒŒ ă‚č は BSD 由 杄 た ă‚· ă‚č テ ム に お け る netatalk ず äș’ 換 性 が あ る 。 〚 く た BSD ă‚· ă‚č テ ム で は 、 ブ ロ ăƒŒ ド キ ャ ă‚č ト フ ハ ăƒŒ ム を 送 俥 し よ う ず し た ず き た SO_BROADCAST た チ ェ ッ ク に 怱 敗 す る 。 こ れ は äș’ 換 性 た 敏 題 ず ăȘ る か も し れ ăȘ い 。

raw ă‚œ ケ ッ ト ヹ ăƒŒ ド は Linux 独 ç‰č た も た で 、 も う 侀 æ–č た 漟 èŁ… で あ る CAP パ ッ ケ ăƒŒ ゾ や 、 Appletalk ヹ ニ タ ツ ăƒŒ ル を よ り ç°Ą 捘 に 漟 èŁ… で き る よ う に ăȘ る 。

バ グ

ス ラ ăƒŒ た 怀 が ăŸ っ た く 驖 ć°Ÿ 侀 èČ« し お い ăȘ い 。

ル ăƒŒ テ ィ ン グ テ ăƒŒ ブ ル 、 デ バ ă‚€ ă‚č 、 AARP テ ăƒŒ ブ ル 、 そ た 他 た デ バ ă‚€ ă‚č を èš­ 漚 す る た め に 甹 い ら れ る ioctl が ăŸ だ 蚘 èż° さ れ お い ăȘ い 。

閱 連 項 盼

recvmsg (2), sendmsg (2), capabilities (7), socket (7)

こ た 文 曞 に ぀ い お

こ た man ペ ăƒŒ ゾ は Linux man-pages プ ロ ゾ ェ ク ト た ăƒȘ ăƒȘ ăƒŒ ă‚č 5.10 た 侀 郚 で あ る 。 プ ロ ゾ ェ ク ト た èȘŹ æ˜Ž ず バ グ ć ± 摊 に 閱 す る 情 ć ± は https://www.kernel.org/doc/man-pages/ に 曞 か れ お い る 。