Link Kit C-SDK  4.0.0
函数 | 变量
aiot_ra_api.c 文件参考

remote-access模块的API接口实现, 提供远程隧道的能力 更多...

#include <stdio.h>
#include "core_stdinc.h"
#include "core_log.h"
#include "aiot_sysdep_api.h"
#include "aiot_state_api.h"
#include "aiot_ra_api.h"
#include "aiot_ra_private.h"
#include "aiot_mqtt_api.h"
#include "core_mqtt.h"
aiot_ra_api.c 的引用(Include)关系图:

函数

void * aiot_ra_init (void)
 创建ra会话实例, 并以默认值配置会话参数 更多...
 
static void _release_all_service_info (LOCAL_SERVICES_S *local_services)
 
int32_t aiot_ra_setopt (void *handle, aiot_ra_option_t option, void *data)
 配置ra会话 更多...
 
int32_t aiot_ra_deinit (void **handle)
 结束ra会话, 销毁实例并回收资源 更多...
 
void remote_proxy_event_handle (ra_handle_t *ra_handle, aiot_ra_event_type type, REMOTE_PROXY_INFO_S *remote_proxy_info)
 
static void _switch_topic_handler (void *handle, const aiot_mqtt_recv_t *packet, void *userdata)
 
static int32_t _sub_switch_topic (void *handle)
 
static int32_t _unsub_switch_topic (void *handle)
 
void * remote_proxy_thread (void *params)
 
void * aiot_ra_start (void *handle)
 开始ra服务,作为线程开始运行 更多...
 
int32_t aiot_ra_stop (void *handle)
 停止ra服务,aiot_ra_start线程退出 更多...
 

变量

static const char * FMT_TOPIC_SWITCH = "/sys/%s/%s/secure_tunnel/notify"
 

详细描述

remote-access模块的API接口实现, 提供远程隧道的能力

函数说明

void* aiot_ra_init ( void  )

创建ra会话实例, 并以默认值配置会话参数

返回
void *
返回值
非NULLra实例的句柄
NULL初始化失败, 一般是内存分配失败导致

函数调用图:

static void _release_all_service_info ( LOCAL_SERVICES_S *  local_services)
static

函数调用图:

int32_t aiot_ra_setopt ( void *  handle,
aiot_ra_option_t  option,
void *  data 
)

配置ra会话

参数
[in]handlera会话句柄
[in]option配置选项, 更多信息请参考aiot_ra_option_t
[in]data配置选项数据, 更多信息请参考aiot_ra_option_t
返回
int32_t
返回值
<STATE_SUCCESS参数配置失败
>=STATE_SUCCESS参数配置成功

函数调用图:

int32_t aiot_ra_deinit ( void **  handle)

结束ra会话, 销毁实例并回收资源

参数
[in]handle指向ra会话句柄的指针
返回
int32_t
返回值
<STATE_SUCCESS执行失败
>=STATE_SUCCESS执行成功

函数调用图:

void remote_proxy_event_handle ( ra_handle_t *  ra_handle,
aiot_ra_event_type  type,
REMOTE_PROXY_INFO_S *  remote_proxy_info 
)
static void _switch_topic_handler ( void *  handle,
const aiot_mqtt_recv_t packet,
void *  userdata 
)
static

函数调用图:

static int32_t _sub_switch_topic ( void *  handle)
static

函数调用图:

static int32_t _unsub_switch_topic ( void *  handle)
static

函数调用图:

void* remote_proxy_thread ( void *  params)

函数调用图:

void* aiot_ra_start ( void *  handle)

开始ra服务,作为线程开始运行

参数
[in]handle指向ra会话句柄的指针
返回
int32_t*
返回值
<STATE_SUCCESS执行失败, 更多信息请参考 STATE_REMOTE_* 定义
>=STATE_SUCCESS执行成功

函数调用图:

int32_t aiot_ra_stop ( void *  handle)

停止ra服务,aiot_ra_start线程退出

参数
[in]handle指向ra会话句柄的指针
返回
int32_t*
返回值
<STATE_SUCCESS执行失败, 更多信息请参考 STATE_REMOTE_* 定义
>=STATE_SUCCESS执行成功

变量说明

const char* FMT_TOPIC_SWITCH = "/sys/%s/%s/secure_tunnel/notify"
static