DRAC(Dynamic Relay Authorization)¤Ë¤Ä¤¤¤Æ¤ÎÆüËܸì¾ðÊó


Åö¥É¥­¥å¥á¥ó¥È¤Ë¤Ä¤¤¤Æ †

¡¡DRAC ¤Î¥¢¡¼¥«¥¤¥Ö¡Ú drac.tar.Z ¡ÛÉÕ°¤Î¡Ú PORTING¡Û¥É¥­¥å¥á¥ó¥È¤òÏÂÌõ¤·¤¿¤â¤Î¤Ç¤¹¡£

PORTING †

¡¡DRAC ¥Ñ¥Ã¥±¡¼¥¸¤Ï½ã¿è¤Ë¥³¥ó¥Ñ¥¤¥ë¤Î¥Æ¥¹¥È¤È¡¢¤ï¤¦¤«¤Ê Unix ¥ª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¾å¤Ç¤Î¤ß¥Æ¥¹¥È¤µ¤ì¤Þ¤·¤¿¡£¾ÜºÙ¤Ë¤Ä¤¤¤Æ¤Ï INSTALL ¥Õ¥¡¥¤¥ë¤ò»²¾È¤·¤Æ¤¯¤À¤µ¤¤¡£ËؤɤΥª¥Ú¥ì¡¼¥Æ¥£¥ó¥°¡¦¥·¥¹¥Æ¥à¤Ç¤Ï Makefile ¤ÎÀßÄê³Îǧ¡¦Êѹ¹¤¬É¬ÍפȤʤê¤Þ¤¹¡£

¡¡rpc.dracd ¤Ï IP ¥¢¥É¥ì¥¹¤òÉԳΤ«¤Ê¥Í¥Ã¥È¥ï¡¼¥¯¥Ð¥¤¥È¥ª¡¼¥À¡¼*1¤È¤·¤Æ°·¤¤¤Þ¤¹¡£¹½Â¤ÂÎ(struct) in_addr ¤È ÊÑ´¹µ¡Ç½ inet_addr() ¤ª¤è¤Ó inet_ntoa() ¤Ï¤³¤ì¤é¥Õ¥©¡¼¥Þ¥Ã¥È¤È¸ß´¹À­¤¬¤¢¤ê¤Þ¤¹¡£IP ¥¢¥É¥ì¥¹¤¬ RPC Àܳ¤ò¹Ô¤¦Á°¤Ë¥Û¥¹¥È¥Ð¥¤¥È¥ª¡¼¥À¡¼*2¤ËÊÑ´¹¤µ¤ì¤Æ¤¤¤Ê¤¯¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£¤½¤·¤Æ¡¢¼õ¿®¸å¤Ë¥Í¥Ã¥È¥ï¡¼¥¯¥Ð¥¤¥È¥ª¡¼¥À¡¼¤ËÊÑ´¹¤·¤Þ¤¹¡£¤½¤¦¤¹¤ë¤³¤È¤Ç¡¢¥Ó¥Ã¥¯¥¨¥ó¥Ç¥£¥¢¥ó*3¤ª¤è¤Ó¥ê¥È¥ë¥¨¥ó¥Ç¥£¥¢¥ó*4¤¤¤º¤ì¤âÀµ¤·¤¯Æ°ºî¤·¤Þ¤¹¡£

¡¡rpc.dracd.c ¤Ç¤Ï̵Â̤ʥ³¡¼¥É¥»¥¯¥·¥ç¥ó¤¬¤¢¤ì¤Ð¡¢Â¾¤Î¥·¥¹¥Æ¥à¤Î¤¿¤á¤Ë¾ò·ï¤òÍ¿¤¨¤ë¤è¤¦¤ËÊÔ½¸¤·¤Ê¤¯¤Æ¤Ï¤¤¤±¤Þ¤»¤ó¡£ËØ¤É¤Ï Makefile Ãæ¤Ëµ­½Ò¤·¤Æ¤¢¤ê¤Þ¤¹¡£

  • ¥Õ¥¡¥¤¥ëÆÉ¤ß¹þ¤ß(Include files)
  • RPC ¥µ¡¼¥Ð¡¦¥¤¥ó¥¿¡¼¥Õ¥§¡¼¥¹: svc_getreqset(), svc_fdset
  • ¥¯¥é¥¤¥¢¥ó¥È IP ¥¢¥É¥ì¥¹¤Î¼èÆÀ: svc_getrpccaller(), taddr2uaddr(), getnetconfigent(), freenetconfigent()
  • ¥á¥â¥ê¤Î¥¯¥ê¥¢¤È¥³¥Ô¡¼: memset(), memcpy()
  • ʸ»úÎó¤ÎÉÔÄêĹÊÑ´¹: fcntl()
  • ¥í¡¼¥«¥ë¥Û¥¹¥È̾¤Î¼èÆÀ: sysinfo()

*1 ¥Í¥Ã¥È¥ï¡¼¥¯¾å¤Ç¤Î¥Ç¡¼¥¿¤ÎÁ÷¤êÊý¡££²¥Ð¥¤¥È°Ê¾å¤Î¥Ç¡¼¥¿Î̤ò»ý¤Ä¿ôÃͥǡ¼¥¿¤òžÁ÷¤¹¤ë¤È¤­¤Ë»È¤ï¤ì¤Þ¤¹
*2 CPU¤¬°·¤¦¥Ç¡¼¥¿¡¦¥Ð¥¤¥È¤ÎÁ÷¤êÊý½ç½ø
*3 big endian = ¥á¥â¥ê¤Ø¥Ç¡¼¥¿¤ò³ÊǼ¤¹¤ëÊý¼°¡£0123h ¤ÎÃͤγÊǼ¤Ë¤Ï¡¢01h ¤ò 1 byte Ìܤˡ¢23h ¤ò 2 byte ÌÜ¤ËÆþ¤ì¤ë
*4 little endian ¾ÜºÙ¤Ï http://www.sophia-systems.co.jp/ice/yougoshu/0041.html

¥È¥Ã¥×   ÊÔ½¸ Åà·ë º¹Ê¬ ¥Ð¥Ã¥¯¥¢¥Ã¥× źÉÕ Ê£À½ ̾Á°Êѹ¹ ¥ê¥í¡¼¥É   ¿·µ¬ °ìÍ÷ ñ¸ì¸¡º÷ ºÇ½ª¹¹¿·   ¥Ø¥ë¥×   ºÇ½ª¹¹¿·¤ÎRSS
Last-modified: Mon, 04 Jul 2005 22:55:33 JST (7756d)