kill-nag-connection.c

来自「MANTIS是由科罗拉多大学开发的传感器网络嵌入式操作系统。 这是mantis」· C语言 代码 · 共 58 行

C
58
字号
#include <errno.h>#include <string.h>#include <unistd.h>#include <sys/socket.h>#include <glib.h>#include "libbionet-internal.h"#include "bionet.h"void libbionet_kill_nag_connection(void) {    int it_worked = 1;    bionet_nxio_reset(libbionet_nag_nxio);    if (libbionet_nag_nxio->socket < 0) return;    // for the half-close scenario    if (shutdown(libbionet_nag_nxio->socket, 2) != 0) {        it_worked = 0;        if (errno != ENOTCONN) {            g_log(                BIONET_LOG_DOMAIN,                G_LOG_LEVEL_WARNING,                "libbionet_kill_nag_connection(): error shutting down socket file descriptor: %s",                strerror(errno)            );        }    }    if (close(libbionet_nag_nxio->socket) != 0) {        it_worked = 0;        g_log(            BIONET_LOG_DOMAIN,            G_LOG_LEVEL_WARNING,            "libbionet_kill_nag_connection(): error closing socket file descriptor: %s",            strerror(errno)        );    }    if (it_worked) g_log(BIONET_LOG_DOMAIN, G_LOG_LEVEL_DEBUG, "libbionet_kill_nag_connection(): successfully terminated connection to NAG");    libbionet_nag_nxio->socket = -1;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?