我从 guardianproject page 下载了 openssl-android 文件夹并按照 README.android 文件中的步骤操作,但是当我导入新的 openssl tar 时我在第三步被阻止,因为它是在步骤 2 中写的我用正确的方式更改了 openssl.version 文件和 openssl.config 文件变量。 运行 import_openssl.sh 脚本时,我更新的 .patch 文件中的路径不正确导致了一些错误,但 handshake_cuttrough.patch 文件仍然存在一个问题,我首先更新了其中的路径,重新生成了补丁文件并重新启动具有相同错误但带有新消息的脚本: 这是踪迹:
./import_openssl.sh import ../openssl-1.0.1e.tar.gz
Applying patch progs.patch
patching file apps/openssl.c
Applying patch small_records.patch
patching file ssl/d1_pkt.c
patching file ssl/s23_srvr.c
patching file ssl/s3_both.c
patching file ssl/s3_pkt.c
patching file ssl/ssl.h
patching file ssl/ssl3.h
patching file ssl/ssltest.c
patching file test/testssl
Applying patch handshake_cutthrough.patch
patching file apps/s_client.c
patching file ssl/s3_clnt.c
patching file ssl/s3_lib.c
patching file ssl/ssl.h
Reversed (or previously applied) patch detected! Assume -R? [n] y
Hunk #2 FAILED at 1411.
1 out of 2 hunks FAILED -- saving rejects to file ssl/ssl.h.rej
Could not apply patches/handshake_cutthrough.patch. Fix source and run: /import_openssl.sh regenerate patches/handshake_cutthrough.patch
首先,我完全不知道检测到已反转(或先前已应用)补丁消息的含义!假设-R?以及除了 y 或 n 之外要回答什么。 其次,我几乎要忘记导入新的 openssl 版本 (1.0.1e) 并使用包中包含的版本 1.0.0 的想法。从那里我会问两个问题: 1)有人遇到过这些问题吗? 2) openssl1.0.0 和 openssl1.0.1e 之间是否存在重要的安全差异?
非常感谢您的建议。
最佳答案
First I don't have any idea of the meaning of the message Reversed (or previously applied) patch detected! Assume -R? and what to answer except y or n.
是的,这是在可用性等级上评价很高的补丁主义之一。当它询问您是否要反转它时,它会询问您是否要从源文件中删除以前应用的补丁。在我看来,它应该 (1) 如果不存在则添加它,或者 (2) 如果存在则继续。没有(3)折磨用户。如果我提供一个开关(可能是 -prompt
)或运行 unpatch
,那么我应该被问到 20 个问题。否则,只需应用该死的补丁即可。
Reversed (or previously applied) patch detected! Assume -R? [n] y
我相信您应该在这里输入 n
来回答“否”。它要求您删除以前应用的补丁。
关于android - 更新 guardianproject/openssl-android 中的 openssl 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18213903/