static int gdbserver_open(int port)

{

    struct sockaddr_in sockaddr;

    int fd, ret;



    fd = socket(PF_INET, SOCK_STREAM, 0);

    if (fd < 0) {

        perror("socket");

        return -1;

    }

#ifndef _WIN32

    fcntl(fd, F_SETFD, FD_CLOEXEC);

#endif



    socket_set_fast_reuse(fd);



    sockaddr.sin_family = AF_INET;

    sockaddr.sin_port = htons(port);

    sockaddr.sin_addr.s_addr = 0;

    ret = bind(fd, (struct sockaddr *)&sockaddr, sizeof(sockaddr));

    if (ret < 0) {

        perror("bind");

        close(fd);

        return -1;

    }

    ret = listen(fd, 0);

    if (ret < 0) {

        perror("listen");

        close(fd);

        return -1;

    }

    return fd;

}

static int gdbserver_open(int port)

{

    struct sockaddr_in sockaddr;

    int fd, ret;



    fd = socket(PF_INET, SOCK_STREAM, 0);

    if (fd < 0) {

        perror("socket");

        return -1;

    }

#ifndef _WIN32

    fcntl(fd, F_SETFD, FD_CLOEXEC);

#endif



    socket_set_fast_reuse(fd);



    sockaddr.sin_family = AF_INET;

    sockaddr.sin_port = htons(port);

    sockaddr.sin_addr.s_addr = 0;

    ret = bind(fd, (struct sockaddr *)&sockaddr, sizeof(sockaddr));

    if (ret < 0) {

        perror("bind");

        close(fd);

        return -1;

    }

    ret = listen(fd, 0);

    if (ret < 0) {

        perror("listen");

        close(fd);

        return -1;

    }

    return fd;

}

static int FUNC_0(int VAR_0)

{

    struct sockaddr_in VAR_1;

    int VAR_2, VAR_3;



    VAR_2 = socket(PF_INET, SOCK_STREAM, 0);

    if (VAR_2 < 0) {

        perror("socket");

        return -1;

    }

#ifndef _WIN32

    fcntl(VAR_2, F_SETFD, FD_CLOEXEC);

#endif



    socket_set_fast_reuse(VAR_2);



    VAR_1.sin_family = AF_INET;

    VAR_1.sin_port = htons(VAR_0);

    VAR_1.sin_addr.s_addr = 0;

    VAR_3 = bind(VAR_2, (struct VAR_1 *)&VAR_1, sizeof(VAR_1));

    if (VAR_3 < 0) {

        perror("bind");

        close(VAR_2);

        return -1;

    }

    VAR_3 = listen(VAR_2, 0);

    if (VAR_3 < 0) {

        perror("listen");

        close(VAR_2);

        return -1;

    }

    return VAR_2;

}

static int FUNC_0(int VAR_0)
{ struct sockaddr_in VAR_1; int VAR_2, VAR_3; VAR_2 = socket(PF_INET, SOCK_STREAM, 0); if (VAR_2 < 0) { perror("socket"); return -1; } #ifndef _WIN32
fcntl(VAR_2, F_SETFD, FD_CLOEXEC); #endif
socket_set_fast_reuse(VAR_2); VAR_1.sin_family = AF_INET; VAR_1.sin_port = htons(VAR_0); VAR_1.sin_addr.s_addr = 0; VAR_3 = bind(VAR_2, (struct VAR_1 *)&VAR_1, sizeof(VAR_1)); if (VAR_3 < 0) { perror("bind"); close(VAR_2); return -1; } VAR_3 = listen(VAR_2, 0); if (VAR_3 < 0) { perror("listen"); close(VAR_2); return -1; } return VAR_2; }