Настройка в WS-Security в gSOAP

Добавить в проект необходимые файлы из gSOAP:
http://www.sql.ru/forum/actualutils.aspx?action=gotomsg&tid=796891&msg=9608956

Добавить в проект библиотеку OpenSSL:

Добавить в PROJECT -> Build Settings в раздел Apple LLVM 5.1 - Preprocessing -> Preprocessor Macros флаги:

WITH_OPENSSL=1
DEBUG=1
WITH_DOM=1

Добавить в TARGETS -> Build Settings в раздел Search Paths -> Header Search Path значение:
$(SRCROOT)/Library/openssl/build/openssl.build/openssl/include

$(SRCROOT) это папка в которой лежит .xcodeproj файл.

Добавить в TARGETS -> Build Settings в раздел Linking -> Other Linker Flags значение:
  • -lssl
  • -lcrypto
http://lists.apple.com/archives/cocoa-dev/2008/Jun/msg01800.html

Если используется недоверенный сертификат (certificate that is not trusted because is self-signed) то надо закоментировать в файле stdsoap2.cpp строки:
         if (!ok)
         { soap_set_sender_error(soap, "SSL/TLS error", "SSL/TLS certificate host name mismatch in tcp_connect()", SOAP_SSL_ERROR);
           soap->fclosesocket(soap, sk);
           return SOAP_INVALID_SOCKET;
         }

Подробнее можно почитать в ~/Downloads/gsoap-2.8/gsoap/doc/wsse/html/wsse.html

--