0

Windows 8に保存され、OSXでアクセスされるclangを使用してコンパイルされたアプリケーションを実行しています。getaddrinfo() に他の入力が与えられた場合、アプリケーションは問題なく動作しますが、::1 以外のホスト名が指定され、サービス名が NULL として指定されている場合はクラッシュします。誰でもこれで私を助けることができますか?

編集:

ソースコードは次のとおりです。

addrinfo hints;
addrinfo *results;
int error;
tTestCaseInputs cases[] = {
     {"::1",  NULL},
     {"lanhostname",  NULL},
     {"facebook.com", NULL},
     {"ipv6.google.com",  NULL},
     {NULL,  NULL},     
};

tTestAddrInfo0 values[] = {
     {AI_PASSIVE | AI_NUMERICSERV,          AF_INET,    SOCK_STREAM,    IPPROTO_TCP},
};

for (long i = 0; i < ARRAYSIZE(values); ++ i) {
    // set hints
    for (long j = 0; j < ARRAYSIZE(cases); ++ j) {

            tTestCaseInputs *  testcase = &cases[j];

        if((error = getaddrinfo(testcase->uHost, testcase->uServ, &hints, &results)) == 0)
        {
            // Print and free results
        } else {
            // Print error
        }
    }
}

ソースコードは Windows 上で正常に動作します

4

0 に答える 0