初解禁:供SDK服务端调用函数--02+

本文介绍了一个用于创建Unix域套接字的函数BuildUnixSocket。该函数接收一个字符串参数作为套接字文件路径,创建并绑定一个Unix域套接字,成功返回套接字描述符。
/****************************************************************************************************
 函 数 名:   BuildUnixSocket
 功能描述:   创建域套接字,将套接字与地址绑定
 输入参数:   pSrc 域套接字文件路径
 返 回 值:   -1, 失败; 非-1, 套接字描述符
*****************************************************************************************************/
LONG BuildUnixSocket(const CHAR *pSrc)
{
    LONG lFd;
    socklen_t sktSrcSize;
    struct sockaddr_un stSrcAddr;

    /* Src地址 */
    memset(&stSrcAddr, 0, sizeof(stSrcAddr));
    stSrcAddr.sun_family = AF_UNIX;
    strncpy(stSrcAddr.sun_path, pSrc, ADDR_LEN - 1);
    sktSrcSize = offsetof(struct sockaddr_un, sun_path) + strlen(pSrc);

    /* 配置域套接字地址文件 */
    unlink(pSrc);

    /* 创建域套接字 */
    if(FAIL == (lFd = socket(AF_UNIX, SOCK_DGRAM, 0)))
    {
        return FAIL;
    }

    /* 绑定域套接字文件 */
    if(FAIL == bind(lFd, (struct sockaddr *)&stSrcAddr, sktSrcSize))
    {
        return FAIL;
    }

    return lFd;
}

转载于:https://www.cnblogs.com/xuejianhui/articles/2749630.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值