diff options
Diffstat (limited to 'community/python2-gnutls')
-rw-r--r-- | community/python2-gnutls/PKGBUILD | 23 | ||||
-rw-r--r-- | community/python2-gnutls/gnutls3.patch | 271 |
2 files changed, 294 insertions, 0 deletions
diff --git a/community/python2-gnutls/PKGBUILD b/community/python2-gnutls/PKGBUILD new file mode 100644 index 000000000..3a7c86a04 --- /dev/null +++ b/community/python2-gnutls/PKGBUILD @@ -0,0 +1,23 @@ +# $Id: PKGBUILD 74655 2012-08-01 13:54:20Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Maintainer: Hugo Doria <hugo@archlinux.org> +# Contributor: N3RD3X <n3rd3x@linuxmail.org> + +pkgname=python2-gnutls +pkgver=1.2.4 +pkgrel=2 +pkgdesc="Python wrapper for the GNUTLS library" +arch=('i686' 'x86_64') +url="http://cheeseshop.python.org/pypi/python-gnutls" +depends=('python2' 'gnutls') +license=('LGPL') +source=(http://pypi.python.org/packages/source/p/python-gnutls/python-gnutls-${pkgver}.tar.gz + gnutls3.patch) +md5sums=('e3536c421291a791869d875a41dcb26a' + '24bc95d9f5e71e9f5e180706cbb09248') + +build() { + cd ${srcdir}/python-gnutls-${pkgver} + patch -Np0 <$srcdir/gnutls3.patch + python2 setup.py install --root=${pkgdir} +} diff --git a/community/python2-gnutls/gnutls3.patch b/community/python2-gnutls/gnutls3.patch new file mode 100644 index 000000000..5110de2f2 --- /dev/null +++ b/community/python2-gnutls/gnutls3.patch @@ -0,0 +1,271 @@ +diff -ru gnutls/library/functions.py gnutls.fixed/library/functions.py +--- gnutls/library/functions.py 2011-08-19 04:48:14.000000000 +0100 ++++ gnutls.fixed/library/functions.py 2012-08-01 11:56:43.450975419 +0100 +@@ -4,7 +4,7 @@ + import sys + from ctypes import * + +-from gnutls.library import libgnutls, libgnutls_extra ++from gnutls.library import libgnutls + from gnutls.library.types import * + + +@@ -121,14 +121,6 @@ + gnutls_certificate_get_peers.argtypes = [gnutls_session_t, POINTER(c_uint)] + gnutls_certificate_get_peers.restype = POINTER(gnutls_datum_t) + +-gnutls_certificate_get_x509_cas = libgnutls.gnutls_certificate_get_x509_cas +-gnutls_certificate_get_x509_cas.argtypes = [gnutls_certificate_credentials_t, POINTER(POINTER(gnutls_x509_crt_t)), POINTER(c_uint)] +-gnutls_certificate_get_x509_cas.restype = None +- +-gnutls_certificate_get_x509_crls = libgnutls.gnutls_certificate_get_x509_crls +-gnutls_certificate_get_x509_crls.argtypes = [gnutls_certificate_credentials_t, POINTER(POINTER(gnutls_x509_crl_t)), POINTER(c_uint)] +-gnutls_certificate_get_x509_crls.restype = None +- + gnutls_certificate_send_x509_rdn_sequence = libgnutls.gnutls_certificate_send_x509_rdn_sequence + gnutls_certificate_send_x509_rdn_sequence.argtypes = [gnutls_session_t, c_int] + gnutls_certificate_send_x509_rdn_sequence.restype = None +@@ -221,10 +213,6 @@ + gnutls_certificate_type_set_priority.argtypes = [gnutls_session_t, POINTER(c_int)] + gnutls_certificate_type_set_priority.restype = c_int + +-gnutls_certificate_verify_peers = libgnutls.gnutls_certificate_verify_peers +-gnutls_certificate_verify_peers.argtypes = [gnutls_session_t] +-gnutls_certificate_verify_peers.restype = c_int +- + gnutls_certificate_verify_peers2 = libgnutls.gnutls_certificate_verify_peers2 + gnutls_certificate_verify_peers2.argtypes = [gnutls_session_t, POINTER(c_uint)] + gnutls_certificate_verify_peers2.restype = c_int +@@ -393,10 +381,6 @@ + gnutls_error_to_alert.argtypes = [c_int, POINTER(c_int)] + gnutls_error_to_alert.restype = c_int + +-gnutls_extra_check_version = libgnutls_extra.gnutls_extra_check_version +-gnutls_extra_check_version.argtypes = [c_char_p] +-gnutls_extra_check_version.restype = c_char_p +- + gnutls_fingerprint = libgnutls.gnutls_fingerprint + gnutls_fingerprint.argtypes = [gnutls_digest_algorithm_t, POINTER(gnutls_datum_t), c_void_p, POINTER(size_t)] + gnutls_fingerprint.restype = c_int +@@ -409,10 +393,6 @@ + gnutls_global_init.argtypes = [] + gnutls_global_init.restype = c_int + +-gnutls_global_init_extra = libgnutls_extra.gnutls_global_init_extra +-gnutls_global_init_extra.argtypes = [] +-gnutls_global_init_extra.restype = c_int +- + gnutls_global_set_log_function = libgnutls.gnutls_global_set_log_function + gnutls_global_set_log_function.argtypes = [gnutls_log_func] + gnutls_global_set_log_function.restype = None +@@ -461,86 +441,6 @@ + gnutls_hex_encode.argtypes = [POINTER(gnutls_datum_t), c_char_p, POINTER(size_t)] + gnutls_hex_encode.restype = c_int + +-gnutls_ia_allocate_client_credentials = libgnutls_extra.gnutls_ia_allocate_client_credentials +-gnutls_ia_allocate_client_credentials.argtypes = [POINTER(gnutls_ia_client_credentials_t)] +-gnutls_ia_allocate_client_credentials.restype = c_int +- +-gnutls_ia_allocate_server_credentials = libgnutls_extra.gnutls_ia_allocate_server_credentials +-gnutls_ia_allocate_server_credentials.argtypes = [POINTER(gnutls_ia_server_credentials_t)] +-gnutls_ia_allocate_server_credentials.restype = c_int +- +-gnutls_ia_enable = libgnutls_extra.gnutls_ia_enable +-gnutls_ia_enable.argtypes = [gnutls_session_t, c_int] +-gnutls_ia_enable.restype = None +- +-gnutls_ia_endphase_send = libgnutls_extra.gnutls_ia_endphase_send +-gnutls_ia_endphase_send.argtypes = [gnutls_session_t, c_int] +-gnutls_ia_endphase_send.restype = c_int +- +-gnutls_ia_extract_inner_secret = libgnutls_extra.gnutls_ia_extract_inner_secret +-gnutls_ia_extract_inner_secret.argtypes = [gnutls_session_t, c_char_p] +-gnutls_ia_extract_inner_secret.restype = None +- +-gnutls_ia_free_client_credentials = libgnutls_extra.gnutls_ia_free_client_credentials +-gnutls_ia_free_client_credentials.argtypes = [gnutls_ia_client_credentials_t] +-gnutls_ia_free_client_credentials.restype = None +- +-gnutls_ia_free_server_credentials = libgnutls_extra.gnutls_ia_free_server_credentials +-gnutls_ia_free_server_credentials.argtypes = [gnutls_ia_server_credentials_t] +-gnutls_ia_free_server_credentials.restype = None +- +-gnutls_ia_generate_challenge = libgnutls_extra.gnutls_ia_generate_challenge +-gnutls_ia_generate_challenge.argtypes = [gnutls_session_t, size_t, c_char_p] +-gnutls_ia_generate_challenge.restype = c_int +- +-gnutls_ia_get_client_avp_ptr = libgnutls_extra.gnutls_ia_get_client_avp_ptr +-gnutls_ia_get_client_avp_ptr.argtypes = [gnutls_ia_client_credentials_t] +-gnutls_ia_get_client_avp_ptr.restype = c_void_p +- +-gnutls_ia_get_server_avp_ptr = libgnutls_extra.gnutls_ia_get_server_avp_ptr +-gnutls_ia_get_server_avp_ptr.argtypes = [gnutls_ia_server_credentials_t] +-gnutls_ia_get_server_avp_ptr.restype = c_void_p +- +-gnutls_ia_handshake = libgnutls_extra.gnutls_ia_handshake +-gnutls_ia_handshake.argtypes = [gnutls_session_t] +-gnutls_ia_handshake.restype = c_int +- +-gnutls_ia_handshake_p = libgnutls_extra.gnutls_ia_handshake_p +-gnutls_ia_handshake_p.argtypes = [gnutls_session_t] +-gnutls_ia_handshake_p.restype = c_int +- +-gnutls_ia_permute_inner_secret = libgnutls_extra.gnutls_ia_permute_inner_secret +-gnutls_ia_permute_inner_secret.argtypes = [gnutls_session_t, size_t, c_char_p] +-gnutls_ia_permute_inner_secret.restype = c_int +- +-gnutls_ia_recv = libgnutls_extra.gnutls_ia_recv +-gnutls_ia_recv.argtypes = [gnutls_session_t, c_char_p, size_t] +-gnutls_ia_recv.restype = ssize_t +- +-gnutls_ia_send = libgnutls_extra.gnutls_ia_send +-gnutls_ia_send.argtypes = [gnutls_session_t, c_char_p, size_t] +-gnutls_ia_send.restype = ssize_t +- +-gnutls_ia_set_client_avp_function = libgnutls_extra.gnutls_ia_set_client_avp_function +-gnutls_ia_set_client_avp_function.argtypes = [gnutls_ia_client_credentials_t, gnutls_ia_avp_func] +-gnutls_ia_set_client_avp_function.restype = None +- +-gnutls_ia_set_client_avp_ptr = libgnutls_extra.gnutls_ia_set_client_avp_ptr +-gnutls_ia_set_client_avp_ptr.argtypes = [gnutls_ia_client_credentials_t, c_void_p] +-gnutls_ia_set_client_avp_ptr.restype = None +- +-gnutls_ia_set_server_avp_function = libgnutls_extra.gnutls_ia_set_server_avp_function +-gnutls_ia_set_server_avp_function.argtypes = [gnutls_ia_server_credentials_t, gnutls_ia_avp_func] +-gnutls_ia_set_server_avp_function.restype = None +- +-gnutls_ia_set_server_avp_ptr = libgnutls_extra.gnutls_ia_set_server_avp_ptr +-gnutls_ia_set_server_avp_ptr.argtypes = [gnutls_ia_server_credentials_t, c_void_p] +-gnutls_ia_set_server_avp_ptr.restype = None +- +-gnutls_ia_verify_endphase = libgnutls_extra.gnutls_ia_verify_endphase +-gnutls_ia_verify_endphase.argtypes = [gnutls_session_t, c_char_p] +-gnutls_ia_verify_endphase.restype = c_int +- + gnutls_init = libgnutls.gnutls_init + gnutls_init.argtypes = [POINTER(gnutls_session_t), gnutls_connection_end_t] + gnutls_init.restype = c_int +@@ -733,10 +633,6 @@ + gnutls_psk_free_server_credentials.argtypes = [gnutls_psk_server_credentials_t] + gnutls_psk_free_server_credentials.restype = None + +-gnutls_psk_netconf_derive_key = libgnutls.gnutls_psk_netconf_derive_key +-gnutls_psk_netconf_derive_key.argtypes = [c_char_p, c_char_p, c_char_p, POINTER(gnutls_datum_t)] +-gnutls_psk_netconf_derive_key.restype = c_int +- + gnutls_psk_server_get_username = libgnutls.gnutls_psk_server_get_username + gnutls_psk_server_get_username.argtypes = [gnutls_session_t] + gnutls_psk_server_get_username.restype = c_char_p +@@ -857,10 +753,6 @@ + gnutls_session_enable_compatibility_mode.argtypes = [gnutls_session_t] + gnutls_session_enable_compatibility_mode.restype = None + +-gnutls_session_get_client_random = libgnutls.gnutls_session_get_client_random +-gnutls_session_get_client_random.argtypes = [gnutls_session_t] +-gnutls_session_get_client_random.restype = c_void_p +- + gnutls_session_get_data = libgnutls.gnutls_session_get_data + gnutls_session_get_data.argtypes = [gnutls_session_t, c_void_p, POINTER(size_t)] + gnutls_session_get_data.restype = c_int +@@ -873,18 +765,10 @@ + gnutls_session_get_id.argtypes = [gnutls_session_t, c_void_p, POINTER(size_t)] + gnutls_session_get_id.restype = c_int + +-gnutls_session_get_master_secret = libgnutls.gnutls_session_get_master_secret +-gnutls_session_get_master_secret.argtypes = [gnutls_session_t] +-gnutls_session_get_master_secret.restype = c_void_p +- + gnutls_session_get_ptr = libgnutls.gnutls_session_get_ptr + gnutls_session_get_ptr.argtypes = [gnutls_session_t] + gnutls_session_get_ptr.restype = c_void_p + +-gnutls_session_get_server_random = libgnutls.gnutls_session_get_server_random +-gnutls_session_get_server_random.argtypes = [gnutls_session_t] +-gnutls_session_get_server_random.restype = c_void_p +- + gnutls_session_is_resumed = libgnutls.gnutls_session_is_resumed + gnutls_session_is_resumed.argtypes = [gnutls_session_t] + gnutls_session_is_resumed.restype = c_int +@@ -905,10 +789,6 @@ + gnutls_set_default_priority.argtypes = [gnutls_session_t] + gnutls_set_default_priority.restype = c_int + +-gnutls_sign_algorithm_get_name = libgnutls.gnutls_sign_algorithm_get_name +-gnutls_sign_algorithm_get_name.argtypes = [gnutls_sign_algorithm_t] +-gnutls_sign_algorithm_get_name.restype = c_char_p +- + gnutls_sign_callback_get = libgnutls.gnutls_sign_callback_get + gnutls_sign_callback_get.argtypes = [gnutls_session_t, POINTER(c_void_p)] + gnutls_sign_callback_get.restype = gnutls_sign_func +@@ -937,14 +817,6 @@ + gnutls_transport_set_errno.argtypes = [gnutls_session_t, c_int] + gnutls_transport_set_errno.restype = None + +-gnutls_transport_set_global_errno = libgnutls.gnutls_transport_set_global_errno +-gnutls_transport_set_global_errno.argtypes = [c_int] +-gnutls_transport_set_global_errno.restype = None +- +-gnutls_transport_set_lowat = libgnutls.gnutls_transport_set_lowat +-gnutls_transport_set_lowat.argtypes = [gnutls_session_t, c_int] +-gnutls_transport_set_lowat.restype = None +- + gnutls_transport_set_ptr = libgnutls.gnutls_transport_set_ptr + gnutls_transport_set_ptr.argtypes = [gnutls_session_t, gnutls_transport_ptr_t] + gnutls_transport_set_ptr.restype = None +@@ -1501,10 +1373,6 @@ + gnutls_x509_privkey_sign_hash.argtypes = [gnutls_x509_privkey_t, POINTER(gnutls_datum_t), POINTER(gnutls_datum_t)] + gnutls_x509_privkey_sign_hash.restype = c_int + +-gnutls_x509_privkey_verify_data = libgnutls.gnutls_x509_privkey_verify_data +-gnutls_x509_privkey_verify_data.argtypes = [gnutls_x509_privkey_t, c_uint, POINTER(gnutls_datum_t), POINTER(gnutls_datum_t)] +-gnutls_x509_privkey_verify_data.restype = c_int +- + gnutls_x509_rdn_get = libgnutls.gnutls_x509_rdn_get + gnutls_x509_rdn_get.argtypes = [POINTER(gnutls_datum_t), c_char_p, POINTER(size_t)] + gnutls_x509_rdn_get.restype = c_int +diff -ru gnutls/library/__init__.py gnutls.fixed/library/__init__.py +--- gnutls/library/__init__.py 2011-11-11 17:23:49.000000000 +0000 ++++ gnutls.fixed/library/__init__.py 2012-08-01 11:57:42.284290997 +0100 +@@ -53,6 +53,9 @@ + else: + raise RuntimeError('cannot find lib%s on this system' % name) + ++def do_nothing(*args, **kwargs): ++ pass ++ + + def initialize_gcrypt(): + from ctypes import c_void_p +@@ -104,7 +107,7 @@ + libgcrypt = load_library(name='gcrypt', version=11) + gcry_control = libgcrypt.gcry_control + else: +- gcry_control = libgnutls.gcry_control ++ gcry_control = do_nothing + + gcry_control(GCRYCTL_SET_THREAD_CBS, c_void_p(gcrypt_thread_callbacks_ptr)) + if system == 'cygwin': +@@ -117,12 +120,10 @@ + + + +-libgnutls = load_library(name='gnutls', version=26) +-libgnutls_extra = load_library(name='gnutls-extra', version=26) ++libgnutls = load_library(name='gnutls', version=28) + + initialize_gcrypt() + libgnutls.gnutls_global_init() +-libgnutls_extra.gnutls_global_init_extra() + + + from gnutls.library import constants +@@ -136,9 +137,6 @@ + if functions.gnutls_check_version(__need_version__) is None: + version = functions.gnutls_check_version(None) + raise RuntimeError("Found GNUTLS library version %s, but at least version %s is required" % (version, __need_version__)) +-if functions.gnutls_extra_check_version(__need_version__) is None: +- version = functions.gnutls_extra_check_version(None) +- raise RuntimeError("Found GNUTLS extra library version %s, but at least version %s is required" % (version, __need_version__)) + + + del get_system_name, library_locations, load_library, initialize_gcrypt |