Skip to content

socket_listen

名称

socket_listen() - 监听一个 socket 连接

语法

int socket_listen( int s, string listen_callback );

描述

为了接收连接,需要先使用 socket_create() 创建 socket,并使用 socket_listen() 进入监听模式,最后使用 socket_accept() 接收连接。socket_listen() 仅仅在 STEAM 或 MUD 模式有效。

参数 `listen_callback` 是监听中的 socket 收到连接请求时驱动程序调用的函数名称,函数原型格式如下:

void listen_callback(int fd)

其中参数 `fd` 是正在监听中的 socket 连接。

返回值

成功时返回 EESUCCESS,失败(错误)时返回代表以下意义的负值:

错误

EEFDRANGE      连接描述符(Descriptor)超出范围
EEBADF         无效的连接描述符
EESECURITY     试图违反安全性
EEMODENOTSUPP  不支持的 Socket 模式
EENOADDR       Socket 没有绑定地址
EEISCONN       Socket 已连接
EELISTEN       监听有问题

参考

socket_accept(3), socket_connect(3), socket_create(3)

翻译

雪风(i@mud.ren)