|
|
|
@ -33,6 +33,7 @@ static int kernel_action_table(const char *action, unsigned int id) { |
|
|
|
int saved_errno; |
|
|
|
int fd; |
|
|
|
int i; |
|
|
|
ssize_t ret; |
|
|
|
|
|
|
|
fd = open(PREFIX "/control", O_WRONLY | O_TRUNC); |
|
|
|
if (fd == -1) |
|
|
|
@ -40,8 +41,8 @@ static int kernel_action_table(const char *action, unsigned int id) { |
|
|
|
i = snprintf(str, sizeof(str), "%s %u\n", action, id); |
|
|
|
if (i >= sizeof(str)) |
|
|
|
goto fail; |
|
|
|
i = write(fd, str, strlen(str)); |
|
|
|
if (i == -1) |
|
|
|
ret = write(fd, str, strlen(str)); |
|
|
|
if (ret == -1) |
|
|
|
goto fail; |
|
|
|
close(fd); |
|
|
|
|
|
|
|
@ -67,7 +68,7 @@ static int kernel_open_table(unsigned int id) { |
|
|
|
int saved_errno; |
|
|
|
int fd; |
|
|
|
struct rtpengine_command_noop cmd; |
|
|
|
int i; |
|
|
|
ssize_t ret; |
|
|
|
|
|
|
|
sprintf(str, PREFIX "/%u/control", id); |
|
|
|
fd = open(str, O_RDWR | O_TRUNC); |
|
|
|
@ -93,8 +94,8 @@ static int kernel_open_table(unsigned int id) { |
|
|
|
}, |
|
|
|
}; |
|
|
|
|
|
|
|
i = write(fd, &cmd, sizeof(cmd)); |
|
|
|
if (i <= 0) |
|
|
|
ret = write(fd, &cmd, sizeof(cmd)); |
|
|
|
if (ret <= 0) |
|
|
|
goto fail; |
|
|
|
|
|
|
|
return fd; |
|
|
|
@ -139,7 +140,7 @@ int kernel_setup_table(unsigned int id) { |
|
|
|
|
|
|
|
int kernel_add_stream(struct rtpengine_target_info *mti) { |
|
|
|
struct rtpengine_command_add_target cmd; |
|
|
|
int ret; |
|
|
|
ssize_t ret; |
|
|
|
|
|
|
|
if (!kernel.is_open) |
|
|
|
return -1; |
|
|
|
@ -157,7 +158,7 @@ int kernel_add_stream(struct rtpengine_target_info *mti) { |
|
|
|
|
|
|
|
int kernel_add_destination(struct rtpengine_destination_info *mdi) { |
|
|
|
struct rtpengine_command_destination cmd; |
|
|
|
int ret; |
|
|
|
ssize_t ret; |
|
|
|
|
|
|
|
if (!kernel.is_open) |
|
|
|
return -1; |
|
|
|
@ -176,7 +177,7 @@ int kernel_add_destination(struct rtpengine_destination_info *mdi) { |
|
|
|
|
|
|
|
int kernel_del_stream(const struct re_address *a) { |
|
|
|
struct rtpengine_command_del_target cmd; |
|
|
|
int ret; |
|
|
|
ssize_t ret; |
|
|
|
|
|
|
|
if (!kernel.is_open) |
|
|
|
return -1; |
|
|
|
@ -197,7 +198,7 @@ GList *kernel_list() { |
|
|
|
int fd; |
|
|
|
struct rtpengine_list_entry *buf; |
|
|
|
GList *li = NULL; |
|
|
|
int ret; |
|
|
|
ssize_t ret; |
|
|
|
|
|
|
|
if (!kernel.is_open) |
|
|
|
return NULL; |
|
|
|
@ -224,7 +225,7 @@ GList *kernel_list() { |
|
|
|
|
|
|
|
unsigned int kernel_add_call(const char *id) { |
|
|
|
struct rtpengine_command_add_call cmd; |
|
|
|
int ret; |
|
|
|
ssize_t ret; |
|
|
|
|
|
|
|
if (!kernel.is_open) |
|
|
|
return UNINIT_IDX; |
|
|
|
@ -240,7 +241,7 @@ unsigned int kernel_add_call(const char *id) { |
|
|
|
|
|
|
|
int kernel_del_call(unsigned int idx) { |
|
|
|
struct rtpengine_command_del_call cmd; |
|
|
|
int ret; |
|
|
|
ssize_t ret; |
|
|
|
|
|
|
|
if (!kernel.is_open) |
|
|
|
return -1; |
|
|
|
@ -256,7 +257,7 @@ int kernel_del_call(unsigned int idx) { |
|
|
|
|
|
|
|
unsigned int kernel_add_intercept_stream(unsigned int call_idx, const char *id) { |
|
|
|
struct rtpengine_command_add_stream cmd; |
|
|
|
int ret; |
|
|
|
ssize_t ret; |
|
|
|
|
|
|
|
if (!kernel.is_open) |
|
|
|
return UNINIT_IDX; |
|
|
|
@ -273,7 +274,7 @@ unsigned int kernel_add_intercept_stream(unsigned int call_idx, const char *id) |
|
|
|
|
|
|
|
int kernel_update_stats(const struct re_address *a, struct rtpengine_stats_info *out) { |
|
|
|
struct rtpengine_command_stats cmd; |
|
|
|
int ret; |
|
|
|
ssize_t ret; |
|
|
|
|
|
|
|
if (!kernel.is_open) |
|
|
|
return -1; |
|
|
|
|