apps/s_socket.c:648: error: UNINITIALIZED_VALUE
  The value read from in[_] was never initialized.
Showing all 1 steps of the trace


apps/s_socket.c:648:9: 
646.           ip[1] = in[1];
647.           ip[2] = in[2];
648. >         ip[3] = in[3];
649.       } else {                    /* do a gethostbyname */
650.           struct hostent *he;

static int host_ip(const char *str, unsigned char ip[4])
{
    unsigned int in[4];
    int i;
    if (sscanf(str, "%u.%u.%u.%u", &(in[0]), &(in[1]), &(in[2]), &(in[3])) ==
        4) {
        for (i = 0; i < 4; i++)
            if (in[i] > 255) {
                BIO_printf(bio_err, "invalid IP address\n");
                goto err;
            }
        ip[0] = in[0];
        ip[1] = in[1];
        ip[2] = in[2];
        ip[3] = in[3];
    } else {
        struct hostent *he;
        if (!ssl_sock_init())
            return (0);
        he = gethostbyname(str);
        if (he == NULL) {
            BIO_printf(bio_err, "gethostbyname failure\n");
            goto err;
        }
        if (he->h_addrtype != AF_INET) {
            BIO_printf(bio_err, "gethostbyname addr is not AF_INET\n");
            return (0);
        }
        ip[0] = he->h_addr_list[0][0];
        ip[1] = he->h_addr_list[0][1];
        ip[2] = he->h_addr_list[0][2];
        ip[3] = he->h_addr_list[0][3];
    }
    return (1);
 err:
    return (0);
}
['static int host_ip(const char *str, unsigned char ip[4])\n{\n    unsigned int in[4];\n    int i;\n    if (sscanf(str, "%u.%u.%u.%u", &(in[0]), &(in[1]), &(in[2]), &(in[3])) ==\n        4) {\n        for (i = 0; i < 4; i++)\n            if (in[i] > 255) {\n                BIO_printf(bio_err, "invalid IP address\\n");\n                goto err;\n            }\n        ip[0] = in[0];\n        ip[1] = in[1];\n        ip[2] = in[2];\n        ip[3] = in[3];\n    } else {\n        struct hostent *he;\n        if (!ssl_sock_init())\n            return (0);\n        he = gethostbyname(str);\n        if (he == NULL) {\n            BIO_printf(bio_err, "gethostbyname failure\\n");\n            goto err;\n        }\n        if (he->h_addrtype != AF_INET) {\n            BIO_printf(bio_err, "gethostbyname addr is not AF_INET\\n");\n            return (0);\n        }\n        ip[0] = he->h_addr_list[0][0];\n        ip[1] = he->h_addr_list[0][1];\n        ip[2] = he->h_addr_list[0][2];\n        ip[3] = he->h_addr_list[0][3];\n    }\n    return (1);\n err:\n    return (0);\n}']