ºìÁªLinuxÃÅ»§
Linux°ïÖú

¡¶unix»·¾³¸ß¼¶±à³Ì¡·ÖеÄopen·þÎñÆ÷ÎÊÌâ

·¢²¼Ê±¼ä:2009-05-03 16:16:39À´Ô´:ºìÁª×÷Õß:qq274255093
[i=s] ±¾Ìû×îºóÓÉ qq274255093 ÓÚ 2009-5-3 16:18 ±à¼­ [/i]

ÎÒÕýÔÚ¿´¡¶unix»·¾³¸ß¼¶±à³Ì¡·£¬ÔÚ²âÊÔ17Õ½ø³Ì¸ß¼¶Í¨ÐÅÖеÄopen·þÎñÆ÷2ʱ,·¢ÏÖÔÚserv_listenº¯ÊýÖеÄioctl(fd[1],I_PUSH,"connld")Ö´ÐÐʱ£¬×ÜÊÇ·µ»ØÐ¡ÓÚ0µÄÖµ£¬Òò´Ë·þÎñÆ÷¶Ë¸ù±¾½¨²»ÆðÀ´¡£´Ó´íÎóÀàÐÍ¿´£¬Êǵڶþ¡¢Èý¸ö²ÎÊý³öÁËÎÊÌâ¡£µ«ÊµÔÚÊÇÕÒ²»³öÊÇʲôԭÒò´í¡£
ÁíÍâÔÚ±àÒëʱ£¬×ÜÊǾ¯¸æËµfattachº¯ÊýûÓÐimplemented£¬²»ÖªµÀÔõô»ØÊÂ,¸Ð¾õÒѾ­°Ñ´ó¶àÊýÍ·ÎļþincludeÁË¡£
±¾ÈË»¹ÊDzËÄñ£¬ÔÚÍøÉÏËÑË÷ÁËһϣ¬ÎÊÕâ¸öÎÊÌâµÄÈË»¹Í¦¶àµÄ£¬¾ÍÊÇûÈ˻شð£¬Çë¸ßÊÖÏàÖú,¸Ð¼¤²»¾¡£¡£¡£¡

ÒÔÏÂÊÇÊéÉϸøµÄ´úÂ룺
******************************************************************
#include "apue.h"
#include
#include

/* pipe permissions: user rw, group rw, others rw */
#define FIFO_MODE (S_IRUSR|S_IWUSR|S_IRGRP|S_IWGRP|S_IROTH|S_IWOTH)

/*
* Establish an endpoint to listen for connect requests.
* Returns fd if all OK, <0 on error
*/
int
serv_listen(const char *name)
{
int tempfd;
int fd[2];

/*
* Create a file: mount point for fattach().
*/
unlink(name);
if ((tempfd = creat(name, FIFO_MODE)) < 0)
return(-1);
if (close(tempfd) < 0)
return(-2);
if (pipe(fd) < 0)
return(-3);
/*
* Push connld & fattach() on fd[1].
*/
if (ioctl(fd[1], I_PUSH, "connld") < 0) { /*¾ÍÊÇÕâ¾äÓÐÎÊÌ⣡£¡*/
close(fd[0]);
close(fd[1]);
return(-4);
}
if (fattach(fd[1], name) < 0) {
close(fd[0]);
close(fd[1]);
return(-5);
}
close(fd[1]); /* fattach holds this end open */

return(fd[0]); /* fd[0] is where client connections arrive */
}
******************************************************************
ÎÄÕÂÆÀÂÛ

¹²ÓÐ 8 ÌõÆÀÂÛ

  1. sunkien ÓÚ 2010-08-02 15:02:01·¢±í:

    ²»ÊǸßÊ־ͰïÖú¶¥

  2. gujingyu ÓÚ 2010-07-12 21:09:21·¢±í:

    ÊÔÊÔ4.3BSDµÄÔ´Âë°É ¹À¼ÆÄãµÄϵͳ²»Ö§³ÖSVR4±ê×¼°É

  3. qq274255093 ÓÚ 2009-05-08 13:09:44·¢±í:

    ¸ßÊÖÔÚÄÄÀï°¡£¿£¿

  4. qq274255093 ÓÚ 2009-05-05 20:12:05·¢±í:

    {:2_91:}×Ô¼º¶¥

  5. qq274255093 ÓÚ 2009-05-05 19:59:04·¢±í:

    ¸ßÊÖÔÚÄÄÀï°¡£¿£¿

  6. qq274255093 ÓÚ 2009-05-04 12:55:35·¢±í:

    ´óÏÀÃÇ£¬À´¿´¿´°É

  7. ufnhliou ÓÚ 2009-05-03 16:34:01·¢±í:

    ÎÒ²»ÊǸßÊÖ

  8. qq274255093 ÓÚ 2009-05-03 16:19:06·¢±í:

    ¸ßÊÖÔÚÄÄÀï°¡£¿£¿{:2_98:}