Ошибка get_peer_certificate при использовании wolfSSL

Я новичок в использовании wolfSSL. Я пытаюсь скомпилировать набор кодов, используя gcc. gcc -o main main.c -lwolfssl

Я сталкиваюсь с ошибкой main.c:(.text+0x47b): undefined reference to 'wolfSSL_get_peer_certificate' collect2: error: ld returned 1 exit status при вводе оператора.

Фрагмент кода показывает местоположение ошибки:

        fprintf(stderr, "ERROR: failed to connect to wolfSSL
");
        return -1;
    }   
    ret = certverify(CERT_FILE,verifyCert);
    WOLFSSL_X509* webCert = wolfSSL_get_peer_certificate(ssl);

Я попытался изменить WOLFSSL_X509* webCert = wolfSSL_get_peer_certificate(ssl); команда, но это кажется правильным.

Я не слишком уверен, почему эта ошибка происходит. Может кто-нибудь помочь мне с этим?

Я использую Kali Linux 2019.4 для компиляции этого набора кодов.

Всего 1 ответ


@wolfSSL_new,

Похоже, что приложению не удается связать библиотеку, поэтому, пока имеются правильные заголовки, чтобы найти определения функций, последний шаг связывания функции - это то, что не удается. Где в вашей системе находится libwolfssl.so или libwolfssl.a? Это в /usr/local/lib/libwolfssl.so или /usr/local/lib/libwolfssl.a?

(.a - статическая библиотека, .so - библиотека общих объектов, это может быть либо, либо)

После того, как вы нашли, где это, попробуйте эту команду вместо этого (для примера я собираюсь предположить, что она находится в / usr / local / lib):

gcc main.c -o main -I/usr/local/include -L/usr/local/lib -lwolfssl

Дайте мне знать, если это решит ошибку компоновщика, которую вы видите.

[ОБНОВИТЬ]

Это было решено добавлением параметра конфигурации --enable-opensslextra

[КОНЕЦ ОБНОВЛЕНИЯ]

С Уважением,

К


Есть идеи?

10000