aboutsummaryrefslogtreecommitdiffstats
path: root/security/py-ed25519ll
diff options
context:
space:
mode:
authornivit <nivit@FreeBSD.org>2013-07-26 20:44:03 +0800
committernivit <nivit@FreeBSD.org>2013-07-26 20:44:03 +0800
commita22b2cd81734210069842d6a71a237eb7b06a08d (patch)
tree6fde6b59b31233d6a53ada18eba3c850a18ffe79 /security/py-ed25519ll
parent800ca8a8cb914cf4f349271eb0612d7809375566 (diff)
downloadfreebsd-ports-gnome-a22b2cd81734210069842d6a71a237eb7b06a08d.tar.gz
freebsd-ports-gnome-a22b2cd81734210069842d6a71a237eb7b06a08d.tar.zst
freebsd-ports-gnome-a22b2cd81734210069842d6a71a237eb7b06a08d.zip
ed25519ll is a low-level wrapper for the Ed25519 public key signature
system. It uses Extension() to compile a shared library that is not a Python extension module, and then uses ctypes to talk to the library. With luck it will only be necessary to compile ed25519ll once for each platform, reusing its shared library across Python versions. This wrapper also contains a reasonably performat pure-Python fallback. Unlike the reference implementation, the Python implementation does not contain protection against timing attacks. WWW: http://bitbucket.org/dholth/ed25519ll/ Build logs: http://goo.gl/zv5y7K
Diffstat (limited to 'security/py-ed25519ll')
-rw-r--r--security/py-ed25519ll/Makefile21
-rw-r--r--security/py-ed25519ll/distinfo2
-rw-r--r--security/py-ed25519ll/files/patch-ed25519ll__ed25519ct.py13
-rw-r--r--security/py-ed25519ll/files/patch-setup.py20
-rw-r--r--security/py-ed25519ll/pkg-descr11
-rw-r--r--security/py-ed25519ll/pkg-plist29
6 files changed, 96 insertions, 0 deletions
diff --git a/security/py-ed25519ll/Makefile b/security/py-ed25519ll/Makefile
new file mode 100644
index 000000000000..e7dc012e8b6c
--- /dev/null
+++ b/security/py-ed25519ll/Makefile
@@ -0,0 +1,21 @@
+# Created by: Nicola Vitale <nivit@FreeBSD.org>
+# $FreeBSD$
+
+PORTNAME= ed25519ll
+PORTVERSION= 0.6
+#PORTREVISION= 0
+CATEGORIES= security
+MASTER_SITES= CHEESESHOP
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER= nivit@FreeBSD.org
+COMMENT= Low-level ctypes wrapper for Ed25519 digital signatures
+
+LICENSE= MIT
+
+PYEASYINSTALL_ARCHDEP= yes
+
+USE_PYTHON= yes
+USE_PYDISTUTILS= easy_install
+
+.include <bsd.port.mk>
diff --git a/security/py-ed25519ll/distinfo b/security/py-ed25519ll/distinfo
new file mode 100644
index 000000000000..0b64d1b31b74
--- /dev/null
+++ b/security/py-ed25519ll/distinfo
@@ -0,0 +1,2 @@
+SHA256 (ed25519ll-0.6.tar.gz) = 7b75b7e6f4c7e7c172229aa78b13436ca9834ef5893598b49c7163d7ba55adf9
+SIZE (ed25519ll-0.6.tar.gz) = 74782
diff --git a/security/py-ed25519ll/files/patch-ed25519ll__ed25519ct.py b/security/py-ed25519ll/files/patch-ed25519ll__ed25519ct.py
new file mode 100644
index 000000000000..1cb59515b2e0
--- /dev/null
+++ b/security/py-ed25519ll/files/patch-ed25519ll__ed25519ct.py
@@ -0,0 +1,13 @@
+--- ./ed25519ll/ed25519ct.py.orig 2013-07-26 11:26:29.000000000 +0200
++++ ./ed25519ll/ed25519ct.py 2013-07-26 11:26:43.000000000 +0200
+@@ -15,9 +15,8 @@
+ __all__ = ['crypto_sign', 'crypto_sign_open', 'crypto_sign_keypair', 'Keypair',
+ 'PUBLICKEYBYTES', 'SECRETKEYBYTES', 'SIGNATUREBYTES']
+
+-plat_name = get_platform().replace('-', '_')
+ so_suffix = sysconfig.get_config_var('SO')
+-lib_filename = '_ed25519_%s%s' % (plat_name, so_suffix)
++lib_filename = '_ed25519%s' % (so_suffix)
+
+ try:
+ _ed25519 = ctypes.cdll.LoadLibrary(
diff --git a/security/py-ed25519ll/files/patch-setup.py b/security/py-ed25519ll/files/patch-setup.py
new file mode 100644
index 000000000000..617640bac1f4
--- /dev/null
+++ b/security/py-ed25519ll/files/patch-setup.py
@@ -0,0 +1,20 @@
+--- ./setup.py.orig 2013-07-26 11:26:23.000000000 +0200
++++ ./setup.py 2013-07-26 11:27:07.000000000 +0200
+@@ -10,8 +10,6 @@
+ README = open(os.path.join(here, 'README.txt')).read()
+ CHANGES = open(os.path.join(here, 'CHANGES.txt')).read()
+
+-plat_name = get_platform().replace('-', '_')
+-
+ setup(name='ed25519ll',
+ version='0.6',
+ description='A low-level ctypes wrapper for Ed25519 digital signatures.',
+@@ -33,7 +31,7 @@
+ tests_require=['nose'],
+ test_suite='nose.collector',
+ ext_modules=[
+- Extension('ed25519ll._ed25519_%s' % plat_name,
++ Extension('ed25519ll._ed25519',
+ sources=[
+ 'ed25519-supercop-ref10/ge_frombytes.c',
+ 'ed25519-supercop-ref10/fe_frombytes.c',
diff --git a/security/py-ed25519ll/pkg-descr b/security/py-ed25519ll/pkg-descr
new file mode 100644
index 000000000000..dc9293f6c276
--- /dev/null
+++ b/security/py-ed25519ll/pkg-descr
@@ -0,0 +1,11 @@
+ed25519ll is a low-level wrapper for the Ed25519 public key signature
+system. It uses Extension() to compile a shared library that is not a
+Python extension module, and then uses ctypes to talk to the library. With
+luck it will only be necessary to compile ed25519ll once for each
+platform, reusing its shared library across Python versions.
+
+This wrapper also contains a reasonably performat pure-Python
+fallback. Unlike the reference implementation, the Python implementation
+does not contain protection against timing attacks.
+
+WWW: http://bitbucket.org/dholth/ed25519ll/
diff --git a/security/py-ed25519ll/pkg-plist b/security/py-ed25519ll/pkg-plist
new file mode 100644
index 000000000000..a6eff708d3f4
--- /dev/null
+++ b/security/py-ed25519ll/pkg-plist
@@ -0,0 +1,29 @@
+@comment $FreeBSD$
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/EGG-INFO/PKG-INFO
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/EGG-INFO/SOURCES.txt
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/EGG-INFO/dependency_links.txt
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/EGG-INFO/native_libs.txt
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/EGG-INFO/not-zip-safe
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/EGG-INFO/top_level.txt
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/__init__.py
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/__init__.pyc
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/__init__.pyo
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/_ed25519.py
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/_ed25519.pyc
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/_ed25519.pyo
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/_ed25519.so
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/djbec.py
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/djbec.pyc
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/djbec.pyo
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/ed25519ct.py
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/ed25519ct.pyc
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/ed25519ct.pyo
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/ed25519py.py
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/ed25519py.pyc
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/ed25519py.pyo
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/test.py
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/test.pyc
+%%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll/test.pyo
+@dirrm %%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/ed25519ll
+@dirrm %%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%/EGG-INFO
+@dirrm %%PYTHON_SITELIBDIR%%/%%PYEASYINSTALL_EGG%%