goquic编译运行

基本流程

go get -u -d github.com/devsisters/goquic
GOQUIC_BUILD=Release ./build_libs.sh

编译问题

由于没有njnia需要修改build_libs.sh文件中的以下部分

cd libquic/$BUILD_DIR
cmake -GNinja $OPT ../..
cd -
ninja -Clibquic/$BUILD_DIR
------------------------------
cd libquic/$BUILD_DIR
cmake $OPT ../..
make -j4
cd -

编译客户端/服务端

go build example/server.go
go build example/client.go

运行程序

./server -cert ssl.crt -key ssl.key -loglevel 0 -root /root/html/
./client -url http://127.0.0.1:8080/files/1M -loglevel 0

问题

goquic自带的client中有对证书进行校验,由于测试时证书是本地生成/签名的,因此会有校验失败的报错。

[root@vps goquic]# ./client -url http://127.0.0.1:8080/
2016/10/20 12:14:24 Verify failedx509: certificate signed by unknown authority

解决方法

client中注释掉证书校验部分代码,重新编译client。

-- /tmp/proof_verifier.go      2016-10-20 12:23:32.500833827 +0900
+++ ./proof_verifier.go 2016-10-20 12:23:44.585835315 +0900
@@ -107,6 +107,7 @@
                intmPool.AddCert(certs[i])
        }

+       /*
        verifyOpt := x509.VerifyOptions{
                DNSName:       string(job.hostname),
                Intermediates: intmPool,
@@ -115,6 +116,7 @@
                log.Fatal("Verify failed", err)
                return false
        }
+       */
        return true
 }

你可能感兴趣的:(goquic编译运行)