1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-11-20 00:21:35 +00:00

Add security/uacme

Lightweight client for the RFC8555 ACMEv2 protocol, written in plain
C with minimal dependencies (libcurl and one of GnuTLS, OpenSSL or
mbedTLS).  The ACMEv2 protocol allows a Certificate Authority (Let's
Encrypt is a popular one) and an applicant to automate the process
of verification and certificate issuance.  The protocol also provides
facilities for other certificate management functions, such as
certificate revocation.

WWW: https://github.com/ndilieto/uacme
This commit is contained in:
Tobias Kortkamp 2021-02-24 16:07:51 +00:00
parent 4b5b5d430f
commit b4f06d357e
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=566487
5 changed files with 74 additions and 0 deletions

View File

@ -1270,6 +1270,7 @@
SUBDIR += truecrypt
SUBDIR += tthsum
SUBDIR += u2f-devd
SUBDIR += uacme
SUBDIR += unhide
SUBDIR += unicornscan
SUBDIR += vanguards-tor

51
security/uacme/Makefile Normal file
View File

@ -0,0 +1,51 @@
# $FreeBSD$
PORTNAME= uacme
DISTVERSIONPREFIX= upstream/
DISTVERSION= 1.7
CATEGORIES= security www
MAINTAINER= tobik@FreeBSD.org
COMMENT= Lightweight C ACMEv2 client which uses external authenticators
LICENSE= GPLv3+
LICENSE_FILE= ${WRKSRC}/COPYING
LIB_DEPENDS= libcurl.so:ftp/curl
USES= gmake pkgconfig
USE_GITHUB= yes
GH_ACCOUNT= ndilieto
GNU_CONFIGURE= yes
CONFIGURE_ARGS= --datadir=${EXAMPLESDIR:H} \
--disable-maintainer-mode \
--sysconfdir=${PREFIX}/etc
OPTIONS_DEFINE= DOCS EXAMPLES MANPAGES UALPN
_OPENSSL_SAFE= ${(${OPSYS} == FreeBSD && ${OSVERSION} < 1200085 && ${SSL_DEFAULT} == base) || ${SSL_DEFAULT} == libressl || ${SSL_DEFAULT} == libressl-devel:?no:yes}
OPTIONS_DEFAULT= ${${_OPENSSL_SAFE} == no:?GNUTLS:OPENSSL} MANPAGES \
UALPN
OPTIONS_SINGLE= CRYPTO
OPTIONS_SINGLE_CRYPTO= GNUTLS MBEDTLS OPENSSL
OPTIONS_EXCLUDE= ${${_OPENSSL_SAFE} == no:?OPENSSL:}
OPTIONS_SUB= yes
CRYPTO_DESC= Crypto library
UALPN_DESC= Install the proxying ACMEv2 tls-alpn-01 responder ualpn(1)
GNUTLS_LIB_DEPENDS= libgnutls.so:security/gnutls
GNUTLS_CONFIGURE_WITH= gnutls
MANPAGES_BUILD_DEPENDS= asciidoc:textproc/asciidoc
MANPAGES_CONFIGURE_ENABLE= docs
MBEDTLS_BROKEN= needs mbedtls >= 2.25, 2.16.x lacks mbedtls_x509_crt_parse_der_with_ext_cb support
MBEDTLS_LIB_DEPENDS= libmbedtls.so:security/mbedtls
MBEDTLS_CONFIGURE_WITH= mbedtls=${LOCALBASE}
OPENSSL_USES= ssl
OPENSSL_CONFIGURE_WITH= openssl=${OPENSSLBASE}
UALPN_CONFIGURE_WITH= ualpn
post-install-DOCS-on:
@${MKDIR} ${STAGEDIR}${DOCSDIR}
${INSTALL_MAN} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR}
.include <bsd.port.mk>

3
security/uacme/distinfo Normal file
View File

@ -0,0 +1,3 @@
TIMESTAMP = 1611663220
SHA256 (ndilieto-uacme-upstream-1.7_GH0.tar.gz) = 32ca99851194cadb16c05f3c5d32892b0b93fc247321de2b560fa0f667e6cf04
SIZE (ndilieto-uacme-upstream-1.7_GH0.tar.gz) = 327941

9
security/uacme/pkg-descr Normal file
View File

@ -0,0 +1,9 @@
Lightweight client for the RFC8555 ACMEv2 protocol, written in plain
C with minimal dependencies (libcurl and one of GnuTLS, OpenSSL or
mbedTLS). The ACMEv2 protocol allows a Certificate Authority (Let's
Encrypt is a popular one) and an applicant to automate the process
of verification and certificate issuance. The protocol also provides
facilities for other certificate management functions, such as
certificate revocation.
WWW: https://github.com/ndilieto/uacme

10
security/uacme/pkg-plist Normal file
View File

@ -0,0 +1,10 @@
bin/uacme
%%UALPN%%bin/ualpn
%%MANPAGES%%man/man1/uacme.1.gz
%%UALPN%%%%MANPAGES%%man/man1/ualpn.1.gz
%%PORTDOCS%%%%DOCSDIR%%/README.md
%%MANPAGES%%%%PORTDOCS%%%%DOCSDIR%%/uacme.html
%%UALPN%%%%MANPAGES%%%%PORTDOCS%%%%DOCSDIR%%/ualpn.html
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/nsupdate.sh
%%PORTEXAMPLES%%%%EXAMPLESDIR%%/uacme.sh
%%UALPN%%%%PORTEXAMPLES%%%%EXAMPLESDIR%%/ualpn.sh