首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pjsip - PJSIP_ESESSIONINSECURE -错误

pjsip - PJSIP_ESESSIONINSECURE -错误
EN

Stack Overflow用户
提问于 2016-04-01 04:20:45
回答 2查看 716关注 0票数 1

我正在尝试设置支持FIPS的openssl,并使用pjsip对其进行测试。我把所有东西都建好了。我运行以下命令:

pjsua-x86_64-未知-linux-gnu --local-port=5060 --srtp-secure=1 --use-srtp=2 --null-audio

pjsua-x86_64-未知-linux-gnu --local-port=5061 --srtp-secure=1 --use-srtp=2 --null-audio

当我调用one节点时,我得到:

初始化媒体通道时出错:需要安全会话/传输(PJSIP_ESESSIONINSECURE) status=171142

我跟踪了代码中发生这种情况的位置。在文件中:

./pjsip/src/pjsua-lib/pjsua_media.c

代码语言:javascript
复制
if (acc->cfg.use_srtp != PJMEDIA_SRTP_DISABLED) {
        if (security_level < acc->cfg.srtp_secure_signaling) {
            err_code = PJSIP_SC_NOT_ACCEPTABLE;
            status = PJSIP_ESESSIONINSECURE;
            goto on_return;
        }
    }

有人知道我为什么不能通过这项检查吗?

EN

回答 2

Stack Overflow用户

发布于 2016-04-01 23:55:01

添加参数

代码语言:javascript
复制
--use-tls 

添加到程序调用

票数 0
EN

Stack Overflow用户

发布于 2019-03-13 22:02:17

确保在pjsip config_site.h中添加以下标志:

代码语言:javascript
复制
#define PJMEDIA_HAS_SRTP 1
#define PJSIP_HAS_TLS_TRANSPORT 1

此外,请确保创建一个具有TLS传输类型的终结点。你还需要确保你的sip地址有'sips‘前缀和;transport=tls。这在pjsua_call.c / get_secure_level函数中求值,该函数确定security_level,从而导致上面提到的条件失败。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36342989

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档