a552ababd4
This adds an 'eckey' command to generate an EC key, with an optional curve name argument, with P-256 as default. For the 'selfsigned' command, it adds an 'ec' algorithm argument to the '-newkey' option, and a '-pkeyopt ec_paramgen_curve:<curvename>' option, mirroring the way openssl specifies the curve name. Notice that curve names are not necessarily the same in mbedtls and openssl. In particular, secp256r1 works for mbedtls, but openssl uses prime256v1 instead. px5g uses mbedtls, but short NIST curve names P-256 and P-384 are specifically supported. Package size increased by about 900 bytes (arm). Signed-off-by: Eneas U de Queiroz <cotequeiroz@gmail.com>
70 lines
1.7 KiB
Makefile
70 lines
1.7 KiB
Makefile
#
|
|
# Copyright (C) 2010-2015 Jo-Philipp Wich <jo@mein.io>
|
|
#
|
|
# This is free software, licensed under the GNU General Public License v2.
|
|
# See /LICENSE for more information.
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=px5g
|
|
PKG_RELEASE:=9
|
|
PKG_LICENSE:=LGPL-2.1
|
|
|
|
PKG_USE_MIPS16:=0
|
|
|
|
PKG_MAINTAINER:=Jo-Philipp Wich <jo@mein.io>
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
|
|
define Package/px5g-mbedtls
|
|
SECTION:=utils
|
|
CATEGORY:=Utilities
|
|
SUBMENU:=Encryption
|
|
TITLE:=X.509 certificate generator (using mbedtls)
|
|
DEPENDS:=+libmbedtls
|
|
PROVIDES:=px5g
|
|
VARIANT:=mbedtls
|
|
endef
|
|
|
|
define Package/px5g-mbedtls/description
|
|
Px5g is a tiny standalone X.509 certificate generator.
|
|
It suitable to create key files and certificates in DER
|
|
and PEM format for use with stunnel, uhttpd and others.
|
|
endef
|
|
|
|
define Package/px5g-standalone
|
|
SECTION:=utils
|
|
CATEGORY:=Utilities
|
|
SUBMENU:=Encryption
|
|
TITLE:=X.509 certificate generator (standalone)
|
|
VARIANT:=standalone
|
|
endef
|
|
Package/px5g-standalone/description = $(Package/px5g-mbedtls/description)
|
|
|
|
define Build/Prepare
|
|
mkdir -p $(PKG_BUILD_DIR)
|
|
endef
|
|
|
|
TARGET_LDFLAGS += -lmbedtls -lmbedx509 -lmbedcrypto
|
|
|
|
ifeq ($(BUILD_VARIANT),standalone)
|
|
TARGET_LDFLAGS := -Wl,-Bstatic $(TARGET_LDFLAGS) -Wl,-Bdynamic
|
|
endif
|
|
|
|
TARGET_CFLAGS += -Wl,--gc-sections -Wall -Werror
|
|
|
|
define Build/Compile
|
|
$(TARGET_CC) $(TARGET_CPPFLAGS) $(TARGET_CFLAGS) -o $(PKG_BUILD_DIR)/px5g px5g.c $(TARGET_LDFLAGS)
|
|
endef
|
|
|
|
define Package/px5g-mbedtls/install
|
|
$(INSTALL_DIR) $(1)/usr/sbin
|
|
$(INSTALL_BIN) $(PKG_BUILD_DIR)/px5g $(1)/usr/sbin/px5g
|
|
endef
|
|
|
|
Package/px5g-standalone/install = $(Package/px5g-mbedtls/install)
|
|
|
|
$(eval $(call BuildPackage,px5g-mbedtls))
|
|
$(eval $(call BuildPackage,px5g-standalone))
|