我遇到了问题并尝试调试它.我们购买了Verisign证书.当我们使用时:
openssl> s_client -connect myweb.com:443 -showcerts
Run Code Online (Sandbox Code Playgroud)
SSL握手永远不会完成,最后我们会看到错误:
Verify return code: 19 (self signed certificate in certificate chain)
Run Code Online (Sandbox Code Playgroud)
它显示3个---BEGIN/END CERTIFICATE---标签.链中的两个证书是Verisign签署的,但其中一个是自签名的.
如果有人可以解释这个自签名证书如何出现在CA签名证书中?
这个错误是否19 (self signed certificate in certificate chain)良性?如果没有,可能是什么原因造成的?
客户端在受信任存储中具有CA证书,但自签名证书没有任何内容.你认为这可能导致问题吗?如果是,我该怎么做:
我最近接受采访,要求写mystrcat(*s1, *s2, *s3)在那里s1,并s2在源字符串和串联的结果给出s3.我被告知,不要担心内存分配s3和假设s1,s2并且不是空/无效字符串.所以我写了下面的蹩脚(粗)程序.我被告知有问题s3或出现问题s3.你能告诉它它是什么/可能是什么?
void mystrcat(char *s1, char *s2, char *s3)
{
if (! (s1 || s2 || s3)) return; // one/more pointers are invalid
// copy string s1 into s3
while(*s1) {
*s3 = *s1;
s1++;
s3++;
}
// concatenate string s2 into s3
while(*s2) {
*s3 = *s2;
s2++;
s3++;
}
*s3 = '\0';
}
Run Code Online (Sandbox Code Playgroud)
你能告诉我这里有什么问题吗?做什么会更专业呢?