我正在尝试为iDevice构建一个支持FIPS的OpenSSL。我正在使用FIPS 2.0设备和1.0.1源。第1步是OpenSSL FIPS对象模块,它运行得相当好。第2步是FIPS Capable OpenSSL。
要配置FIPS Capable OpenSSL,我们执行:
./config -no-dtls --with-fiplibdir=/usr/local/ssl/iphoneos/lib
-no-dtls
是必需的,因为Apple省略了STCP和朋友。我不想在此过程中使STCP和DTLS成为依赖项,因此-no-dtls
是显而易见的选择。此外,third party STCP肯定缺乏Xcode和交叉编译支持。
但是,-no-dtls
要求我们运行make depend
。 make depend
导致我:
openssl-1.0.1c jwalton$ make depend
making depend in crypto...
../util/domd: line 30: makedepend: command not found
mv: Makefile.new: No such file or directory
make[1]: *** [depend] Error 127
make: *** [depend] Error 1
我尝试在此系统上找到makedepend
(2012 MBP,Xcode 4.5),但其MIA:
$ find /Applications/Xcode.app/ -name makedepend 2>/dev/null
$ find /usr/ -name makedepend 2>/dev/null
$ find /bin/ -name makedepend 2>/dev/null
$
make depend
在这里至关重要。当我试图继续没有它时,我遇到了STCP问题。因此要求:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/llvm-gcc -I.. -I../.. -I../modes -I../asn1 -I../evp -I../../include -DOPENSSL_THREADS -D_REENTRANT -DDSO_DLFCN -DHAVE_DLFCN_H -arch armv7 -O3 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.0.sdk -fomit-frame-pointer -fno-common -c -o bss_dgram.o bss_dgram.c
bss_dgram.c:74:26: error: netinet/sctp.h: No such file or directory
bss_dgram.c: In function ‘BIO_new_dgram_sctp’:
bss_dgram.c:843: error: storage size of ‘auth’ isn’t known
bss_dgram.c:860: error: ‘SCTP_AUTH_CHUNK’ undeclared (first use in this function)
bss_dgram.c:860: error: (Each undeclared identifier is reported only once
bss_dgram.c:860: error: for each function it appears in.)
bss_dgram.c:860: error: invalid application of ‘sizeof’ to incomplete type ‘struct sctp_authchunk’
我去了X.org拿了包裹。由于缺少依赖性,包不会从源构建。我发现这种情况正在无限制地发生(我以前一直走在那条路上)。
我有什么选择?
答案 0 :(得分:4)
不,......应该是要配置FIPS Capable OpenSSL,我们执行:
./config -no-dtls --with-fiplibdir=/usr/local/ssl/iphoneos/lib
./config fips -no-dtls
......