请输入您要查询的百科知识:

 

词条 WSAJoinLeaf()
释义

简述:将一个叶节点加入一个多点会晤,交换连接数据,根据提供的流描述确定所需的服务质量。

#include <winsock2.h>

SOCKET WSAAPI WSAJoinLeaf ( SOCKET s, const struct

sockaddr FAR * name, int namelen, LPWSABUF

lpCallerData, LPWSABUF lpCalleeData,

LPQOS lpSQOS, LPQOS lpGQOS, int iFlags );

s:标识一个多点套接口的描述字。

name:将与套接口连接的远端名字。

namelen:名字长度。

lpCallerData:一个指针,指向多点会晤创建时传送给远端的用户数据。

lpCalleeData:一个指针,指向多点会晤创建时从远端传送回来的用户数据。

lpSQOS:一个指向套接口s的流描述的指针,每个方向一个。

lpGQOS:一个指向套接口组(如果存在)流描述的指针。

iFlags:标志位,用于指定套接口作为发送者。接收者或身兼二者。

返回值:若无错误发生,WSAJoinLeaf()返回新创建的多点套接口的描述字。否则的话,将返回INVALID_SOCKET错误,应用程序可通过WSAGetLastError()来获取相应的错误代码。

错误代码:

WSANOTINITIALISED 在调用本API之前应成功调用WSAStartup()。

WSAENETDOWN 网络子系统失效。

WSAEADDRINUSE 指定的地址已经在使用中。

WSAEINTR 通过WSACancelBlockingCall()函数取消(阻塞)调用。

WSAEINPROGRESS 一个阻塞的WinSock调用正在进行中,或者服务提供者仍在处理一个回调函数

WSAEALREADY 在指定的套接口上正在运行一个非阻塞的WSAJoinLeaf()调用。

WSAEADDRNOTAVAIL 本地主机无法获得指定的地址。

WSAEAFNOSUPPORT 所指定地址族中的地址无法与本套接口一起使用。

WSAECONNREFUSED 加入试图被强制拒绝。

WSAEFAULT name或namelen参数不是用户地址空间的一个有效部分;namelen参数太小;lpCalleeData、 lpSQOS和lpGQOS的缓冲区太小; lpCallerData缓冲区太大。

WSAEINVAL 套接口已与一个地址捆绑。

WSAEINVAL 套接口未与一个地址捆绑。

WSAEISCONN 套接口已是多点会晤的一个成员。

WSAENETUNREACH 当前无法从本主机联系网络。

WSAENOBUFS 无可用缓冲区空间。套接口无法加入。

WSAENOTSOCK 描述字不是一个套接口。

WSAEOPNOTSUPP lpSQOS和lpGQOS中所指定的流描述无法满足。

WSAEPROTONOSUPPORT 服务提供者不支持lpCallerData参数。

WSAETIMEDOUT 加入试图超时,未建立多点会晤。

WSAEWOULDBLOCK 套接口被标志为非阻塞,但多点会晤加入操作无法立即完成。当用select()选为读连接后,可使用select()对套接口进行操作。

另请参阅: accept(), bind(), select(), WSAAccept(),WSAAsyncSelect(), WSAEventSelect(), WSASocket().

随便看

 

百科全书收录4421916条中文百科知识,基本涵盖了大多数领域的百科知识,是一部内容开放、自由的电子版百科全书。

 

Copyright © 2004-2023 Cnenc.net All Rights Reserved
更新时间:2024/12/23 9:24:49