Index: head/security/titus/Makefile =================================================================== --- head/security/titus/Makefile (revision 553501) +++ head/security/titus/Makefile (revision 553502) @@ -1,40 +1,35 @@ # Created by: Mark Felder # $FreeBSD$ PORTNAME= titus PORTVERSION= 0.3 -PORTREVISION= 5 +PORTREVISION= 6 CATEGORIES= security MAINTAINER= feld@FreeBSD.org COMMENT= TLS/SSL proxy server LICENSE= MIT USES= compiler:c++11-lang ssl USE_RC_SUBR= titus USE_GITHUB= yes GH_ACCOUNT= AGWA USERS= titus titus-keys GROUPS= nogroup MAKE_ENV+= MANDIR=${MANPREFIX}/man CFLAGS+= -I${OPENSSLINC} LDFLAGS+= -L${OPENSSLLIB} .include - -.if ${SSL_DEFAULT} == base -BROKEN_FreeBSD_12= member access into incomplete type 'dh_st' -BROKEN_FreeBSD_13= member access into incomplete type 'dh_st' -.endif post-patch: ${REINPLACE_CMD} 's|/var/lib/titus/empty|/var/empty|' ${WRKSRC}/titus.conf.example post-install: ${INSTALL_DATA} ${WRKSRC}/titus.conf.example ${STAGEDIR}${PREFIX}/etc/titus.conf.sample .include Index: head/security/titus/files/patch-dh.cpp =================================================================== --- head/security/titus/files/patch-dh.cpp (nonexistent) +++ head/security/titus/files/patch-dh.cpp (revision 553502) @@ -0,0 +1,15 @@ +--- dh.cpp.orig 2015-11-28 22:51:00 UTC ++++ dh.cpp +@@ -148,11 +148,7 @@ openssl_unique_ptr make_dh (const unsigned char* p + throw Openssl_error(ERR_get_error()); + } + +- if ((dh->p = BN_bin2bn(prime, prime_len, NULL)) == NULL) { +- throw Openssl_error(ERR_get_error()); +- } +- +- if ((dh->g = BN_bin2bn(generator, generator_len, NULL)) == NULL) { ++ if (!DH_set0_pqg(dh.get(), BN_bin2bn(prime, prime_len, NULL), NULL, BN_bin2bn(generator, generator_len, NULL))) { + throw Openssl_error(ERR_get_error()); + } + Property changes on: head/security/titus/files/patch-dh.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/security/titus/files/patch-rsa__client.cpp =================================================================== --- head/security/titus/files/patch-rsa__client.cpp (nonexistent) +++ head/security/titus/files/patch-rsa__client.cpp (revision 553502) @@ -0,0 +1,50 @@ +--- rsa_client.cpp.orig 2015-11-28 22:51:00 UTC ++++ rsa_client.cpp +@@ -85,7 +85,7 @@ int Rsa_client::rsa_private_encrypt (int flen, const u + int Rsa_client::rsa_finish (RSA* rsa) + { + delete reinterpret_cast(RSA_get_app_data(rsa)); +- if (const auto default_finish = RSA_get_default_method()->finish) { ++ if (const auto default_finish = RSA_meth_get_finish(RSA_get_default_method())) { + return (*default_finish)(rsa); + } else { + return 1; +@@ -94,14 +94,14 @@ int Rsa_client::rsa_finish (RSA* rsa) + + const RSA_METHOD* Rsa_client::get_rsa_method () + { +- static RSA_METHOD ops; +- if (!ops.rsa_priv_enc) { +- ops = *RSA_get_default_method(); +- ops.rsa_priv_enc = rsa_private_encrypt; +- ops.rsa_priv_dec = rsa_private_decrypt; +- ops.finish = rsa_finish; ++ static RSA_METHOD* ops = NULL; ++ if (ops == NULL) { ++ ops = RSA_meth_dup(RSA_get_default_method()); ++ RSA_meth_set_priv_enc(ops, rsa_private_encrypt); ++ RSA_meth_set_priv_dec(ops, rsa_private_decrypt); ++ RSA_meth_set_finish(ops, rsa_finish); + } +- return &ops; ++ return ops; + } + + openssl_unique_ptr Rsa_client::load_private_key (uintptr_t key_id, RSA* public_rsa) +@@ -111,12 +111,10 @@ openssl_unique_ptr Rsa_client::load_private_ + throw Openssl_error(ERR_get_error()); + } + +- rsa->n = BN_dup(public_rsa->n); +- if (!rsa->n) { +- throw Openssl_error(ERR_get_error()); +- } +- rsa->e = BN_dup(public_rsa->e); +- if (!rsa->e) { ++ const BIGNUM* n; ++ const BIGNUM* e; ++ RSA_get0_key(public_rsa, &n, &e, NULL); ++ if (!RSA_set0_key(rsa.get(), BN_dup(n), BN_dup(e), NULL)) { + throw Openssl_error(ERR_get_error()); + } + Property changes on: head/security/titus/files/patch-rsa__client.cpp ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property