Rechercher une page de manuel
ddp
Langue: ja
Version: 1999-05-01 (openSuse - 09/10/07)
Section: 7 (Divers)
Sommaire
̾Á°
ddp - Linux ¤Ç¤Î AppleTalk ¥×¥í¥È¥³¥ë¤Î¼ÂÁõ½ñ¼°
#include <sys/socket.h>#include <netatalk/at.h>
ddp_socket = socket(PF_APPLETALK, SOCK_DGRAM, 0);
raw_socket = socket(PF_APPLETALK, SOCK_RAW, protocol);
ÀâÌÀ
Linux ¤Ï Inside Appletalk ¤Ëµ½Ò¤µ¤ì¤Æ¤¤¤ë Appletalk ¥×¥í¥È¥³¥ë¤ò¼ÂÁõ¤·¤Æ¤¤¤ë¡£ ¥«¡¼¥Í¥ë¤Ë¤¢¤ë¤Î¤Ï DDP ÁØ¤È AARP ¤À¤±¤Ç¤¢¤ë¡£¤³¤ì¤é¤Ï netatalk ¥×¥í¥È¥³¥ë¥é¥¤¥Ö¥é¥ê¤òÄ̤·¤ÆÍøÍѤµ¤ì¤ë¤è¤¦¤ËÀ߷פµ¤ì¤Æ¤¤¤ë¡£ ¤³¤Î¥Ú¡¼¥¸¤Ï DDP ÁؤòľÀÜÍøÍѤ·¤¿¤¤¥æ¡¼¥¶¡¼¤Î¤¿¤á¤Ë¡¢ ¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤òµ½Ò¤·¤¿¤â¤Î¤Ç¤¢¤ë¡£Appletalk ¤È¥æ¡¼¥¶¡¼¥×¥í¥°¥é¥à¤È¤ÎÄÌ¿®¤Ë¤Ï¡¢ BSD ¸ß´¹¤Î¥½¥±¥Ã¥È¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤òÍøÍѤ¹¤ë¡£ ¥½¥±¥Ã¥È¤Ë´Ø¤¹¤ë¤è¤ê¾Ü¤·¤¤¾ðÊó¤Ï socket(7) ¤ò¸«¤è¡£
Appletalk ¥½¥±¥Ã¥È¤Ï¡¢ ¥½¥±¥Ã¥È¥Õ¥¡¥ß¥ê¡¼¤Î°ú¿ô¤Ë PF_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 { u_short s_net; u_char s_node; }; struct sockaddr_atalk { sa_family_t sat_family; /* address family */ u_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 ¤Ï¥í¡¼¥«¥ë¤Ê¥Ö¥í¡¼¥É¥¥ã¥¹¥È¥¢¥É¥ì¥¹¤Ç¤¢¤ë¡£
¥½¥±¥Ã¥È¥ª¥×¥·¥ç¥ó
¥×¥í¥È¥³¥ë¸ÇͤΥ½¥±¥Ã¥È¥ª¥×¥·¥ç¥ó¤Ï¤Ê¤¤¡£SYSCTL
Appletalk ¤Î¥°¥í¡¼¥Ð¥ë¥Ñ¥é¥á¡¼¥¿¤Î¤¤¤¯¤Ä¤«¤Ï¡¢ sysctl ¤òÄ̤·¤ÆÀßÄꤹ¤ë¤³¤È¤¬¤Ç¤¤ë¡£ ¤³¤ì¤é¤Î sysctl ¤Ø¥¢¥¯¥»¥¹¤¹¤ë¤Ë¤Ï¡¢ proc/sys/net/atalk/* ¥Õ¥¡¥¤¥ë¤òÆÉ¤ß½ñ¤¤¹¤ëÊýË¡¤È¡¢¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤ËÂФ·¤Æ sysctl(2) ¤òÍѤ¤¤ëÊýË¡¤¬¤¢¤ë¡£- aarp-expiry-time
- AARP ¥¥ã¥Ã¥·¥å¥¨¥ó¥È¥ê¤òÇË´þ¤¹¤ë¤Þ¤Ç¤Î¥¿¥¤¥à¥¤¥ó¥¿¡¼¥Ð¥ë (ÉÃñ°Ì)¡£
- aarp-resolve-time
- AARP ¥¥ã¥Ã¥·¥å¥¨¥ó¥È¥ê¤¬²ò·è¤µ¤ì¤ë¤Þ¤Ç¤Î¥¿¥¤¥à¥¤¥ó¥¿¡¼¥Ð¥ë (ÉÃñ°Ì)¡£
- aarp-retransmit-limit
- AARP ¥¯¥¨¥ê¡¼¤ÎºÇÂçºÆÁ÷¿®²ó¿ô¡£¤³¤Î²ó¿ô¤ò±Û¤¨¤ë¤È¡¢ ¤½¤Î¥Î¡¼¥É¤Ï dead ¤Ç¤¢¤ë¤È¤ß¤Ê¤µ¤ì¤ë¡£
- aarp-tick-time
- ¥¿¥¤¥Þ¡¼Æ°ºî¤¹¤ë AARP ¤Î¥¿¥¤¥Þ¡¼¥ì¡¼¥È (ÉÃñ°Ì)
¥Ç¥Õ¥©¥ë¥È¤ÎÃͤǻÅÍͤ˥ޥåÁ¤·¤Æ¤¤¤ë¤Î¤Ç¡¢ Êѹ¹¤¹¤ëɬÍפÏÁ´¤¯¤Ê¤¤¤Ï¤º¤Ç¤¢¤ë¡£
ioctl
socket(7) ¤Ëµ½Ò¤µ¤ì¤Æ¤¤¤ë¤¹¤Ù¤Æ¤Î ioctl ¤¬ ddp ¤Ë¤âŬÍѤµ¤ì¤ë¡£¥¨¥é¡¼
- ENOTCONN
- ¹Ô¤ª¤¦¤È¤·¤¿Áàºî¤ÏÀܳºÑ¤ß¤Î¥½¥±¥Ã¥È¤ËÂФ·¤Æ¤Î¤ßÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤â¤Î¤À¤¬¡¢ ¤½¤Î¥½¥±¥Ã¥È¤ÏÀܳ¤µ¤ì¤Æ¤¤¤Ê¤«¤Ã¤¿¡£
- EINVAL
- ÅϤ·¤¿°ú¿ô¤¬ÉÔÀµ¡£
- EMSGSIZE
- ¥Ç¡¼¥¿¥°¥é¥à¤¬ DDP MTU ¤è¤êÂ礤¤¡£
- EACCES
- ¥æ¡¼¥¶¤¬¹Ô¤ª¤¦¤È¤·¤¿Áàºî¤ËɬÍפʸ¢¸Â¤ò»ý¤Ã¤Æ¤¤¤Ê¤¤¡£ broadcast ¥Õ¥é¥°¤ò¥»¥Ã¥È¤»¤º¤Ë¥Ö¥í¡¼¥É¥¥ã¥¹¥È¥¢¥É¥ì¥¹¤ØÁ÷¿®¤ò¹Ô¤ª¤¦¤È¤·¤¿¡¢ ¼Â¸ú¥æ¡¼¥¶¡¼ ID ¤¬ 0 ¤Ç¤Ê¤¯¡¢ CAP_NET_BIND_SERVICE ¸¢¸Â¤Î¤Ê¤¤¥×¥í¥»¥¹¤ÇÆÃ¸¢¥Ý¡¼¥È¤ò¥Ð¥¤¥ó¥É¤·¤è¤¦¤È¤·¤¿¡¢¤Ê¤É¤¬¹Í¤¨¤é¤ì¤ë¡£
- EADDRINUSE
- ´û¤Ë»ÈÍѤµ¤ì¤Æ¤¤¤ë¥¢¥É¥ì¥¹¤Ë¥Ð¥¤¥ó¥É¤·¤è¤¦¤È¤·¤¿¡£
- ENOMEM ¤È ENOBUFS
- ¥á¥â¥ê¤¬Â¤ê¤Ê¤¤¡£
- ENOPROTOOPT ¤È EOPNOTSUPP
- ÅϤ·¤¿¥½¥±¥Ã¥È¥ª¥×¥·¥ç¥ó¤¬ÉÔÀµ¡£
- EPERM
- ¹â¤¤Í¥ÀèÅÙ¤ËÀßÄꤷ¤¿¤ê¡¢ÀßÄê¤òÊѹ¹¤·¤¿¤ê¡¢ »ØÄꤷ¤¿¥×¥í¥»¥¹¤ä¥°¥ë¡¼¥×¤Ë¥·¥°¥Ê¥ë¤òÁ÷¤ë¤Î¤ËɬÍפʸ¢¸Â¤ò ¥æ¡¼¥¶¤¬»ý¤Ã¤Æ¤¤¤Ê¤¤¡£
- EADDRNOTAVAIL
- ¸ºß¤·¤Ê¤¤¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤¬Í׵ᤵ¤ì¤¿¡£¤Þ¤¿¤Ï Í׵ᤵ¤ì¤¿¥½¡¼¥¹¥¢¥É¥ì¥¹¤¬¥í¡¼¥«¥ë¤Ê¤â¤Î¤Ç¤Ê¤¤¡£
- EAGAIN
- Èó¥Ö¥í¥Ã¥¥ó¥°¥½¥±¥Ã¥È¤ËÂФ·¤Æ¥Ö¥í¥Ã¥¯¤¹¤ëÁàºî¤ò¹Ô¤Ã¤¿¡£
- ESOCKTNOSUPPORT
- ¥½¥±¥Ã¥È¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¡£¤Þ¤¿¤Ï̤ÃΤΥ½¥±¥Ã¥È¥¿¥¤¥×¤¬Í׵ᤵ¤ì¤¿¡£
- EISCONN
- ÀܳºÑ¤ß¤Î¥½¥±¥Ã¥È¤ËÂФ·¤Æ connect(2) ¤¬¸Æ¤Ð¤ì¤¿¡£
- EALREADY
- Èó¥Ö¥í¥Ã¥¥ó¥°¥½¥±¥Ã¥È¤ËÂФ¹¤ëÀܳÁàºî¤¬´û¤Ë¼Â¹ÔÃæ¤Ç¤¢¤ë¡£
- ECONNABORTED
- accept(2) ¤ÎÅÓÃæ¤ÇÀܳ¤¬¥¯¥í¡¼¥º¤µ¤ì¤¿¡£
- EPIPE
- Àܳ¤¬ÀèÊý¤Ë¤è¤Ã¤Æ¡¢Ä̾ï°Ê³°¤Î¤ä¤êÊý¤Ç¥¯¥í¡¼¥º¤Þ¤¿¤Ï¥·¥ã¥Ã¥È¥À¥¦¥ó¤µ¤ì¤¿¡£
- ENOENT
- ¥Ñ¥±¥Ã¥È¤¬ÅþÃ夷¤Æ¤¤¤Ê¤¤¥½¥±¥Ã¥È¤ËÂФ·¤Æ SIOCGSTAMP ¤¬¸Æ¤Ð¤ì¤¿¡£
- EHOSTUNREACH
- ¹Ô¤À襢¥É¥ì¥¹¤Ë¥Þ¥Ã¥Á¤¹¤ë¥¨¥ó¥È¥ê¤¬¥ë¡¼¥Æ¥£¥ó¥°¥Æ¡¼¥Ö¥ë¤Ë¤Ê¤¤¡£
- ENODEV
- ¥Í¥Ã¥È¥ï¡¼¥¯¥Ç¥Ð¥¤¥¹¤¬¤Ê¤¤¡£¤¢¤ë¤¤¤Ï IP ¤òÁ÷¤ë¤³¤È¤¬¤Ç¤¤Ê¤¤¡£
- ENOPKG
- ¥«¡¼¥Í¥ë¤Î¥µ¥Ö¥·¥¹¥Æ¥à¤¬ÀßÄꤵ¤ì¤Æ¤¤¤Ê¤¤¡£
¥Ð¡¼¥¸¥ç¥ó
Appletalk ¤Ï Linux 2.0 °Ê¹ß¤Ç¥µ¥Ý¡¼¥È¤µ¤ì¤Æ¤¤¤ë¡£ sysctl ¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹¤Ï 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)Contenus ©2006-2023 Benjamin Poulain
Design ©2006-2023 Maxime Vantorre