summaryrefslogtreecommitdiff
path: root/security/py-kerberos
diff options
context:
space:
mode:
authormarkd <markd@pkgsrc.org>2016-06-09 02:06:18 +0000
committermarkd <markd@pkgsrc.org>2016-06-09 02:06:18 +0000
commit6159262837b2f96dfd7017d05cbe9929a1c05658 (patch)
treed39b042869d1ae450a27f022696c1343d056c932 /security/py-kerberos
parent68f232fed32002458f7655ff8aac0db5fd2a4662 (diff)
downloadpkgsrc-6159262837b2f96dfd7017d05cbe9929a1c05658.tar.gz
Add py-kerberos 1.2.4
This Python package is a high-level wrapper for Kerberos (GSSAPI) operations. The goal is to avoid having to build a module that wraps the entire Kerberos.framework, and instead offer a limited set of functions that do what is needed for client/server Kerberos authentication based on RFC 4559.
Diffstat (limited to 'security/py-kerberos')
-rw-r--r--security/py-kerberos/DESCR5
-rw-r--r--security/py-kerberos/Makefile15
-rw-r--r--security/py-kerberos/PLIST6
-rw-r--r--security/py-kerberos/distinfo11
-rw-r--r--security/py-kerberos/patches/patch-setup.py15
-rw-r--r--security/py-kerberos/patches/patch-src_kerberosbasic.h22
-rw-r--r--security/py-kerberos/patches/patch-src_kerberosgss.c45
-rw-r--r--security/py-kerberos/patches/patch-src_kerberosgss.h23
-rw-r--r--security/py-kerberos/patches/patch-src_kerberospw.h22
9 files changed, 164 insertions, 0 deletions
diff --git a/security/py-kerberos/DESCR b/security/py-kerberos/DESCR
new file mode 100644
index 00000000000..9a7a4b8e74f
--- /dev/null
+++ b/security/py-kerberos/DESCR
@@ -0,0 +1,5 @@
+This Python package is a high-level wrapper for Kerberos (GSSAPI)
+operations. The goal is to avoid having to build a module that
+wraps the entire Kerberos.framework, and instead offer a limited
+set of functions that do what is needed for client/server Kerberos
+authentication based on RFC 4559.
diff --git a/security/py-kerberos/Makefile b/security/py-kerberos/Makefile
new file mode 100644
index 00000000000..e0bb4f6a047
--- /dev/null
+++ b/security/py-kerberos/Makefile
@@ -0,0 +1,15 @@
+# $NetBSD: Makefile,v 1.1 2016/06/09 02:06:18 markd Exp $
+
+DISTNAME= kerberos-1.2.4
+PKGNAME= ${PYPKGPREFIX}-${DISTNAME}
+CATEGORIES= security
+MASTER_SITES= ${MASTER_SITE_PYPI:=k/kerberos/}
+
+MAINTAINER= pkgsrc-users@NetBSD.org
+HOMEPAGE= https://svn.calendarserver.org/wiki/PyKerberos
+COMMENT= Python Kerberos implementation
+LICENSE= apache-2.0
+
+.include "../../lang/python/egg.mk"
+.include "../../mk/krb5.buildlink3.mk"
+.include "../../mk/bsd.pkg.mk"
diff --git a/security/py-kerberos/PLIST b/security/py-kerberos/PLIST
new file mode 100644
index 00000000000..04eb7daa025
--- /dev/null
+++ b/security/py-kerberos/PLIST
@@ -0,0 +1,6 @@
+@comment $NetBSD: PLIST,v 1.1 2016/06/09 02:06:18 markd Exp $
+${PYSITELIB}/${EGG_INFODIR}/PKG-INFO
+${PYSITELIB}/${EGG_INFODIR}/SOURCES.txt
+${PYSITELIB}/${EGG_INFODIR}/dependency_links.txt
+${PYSITELIB}/${EGG_INFODIR}/top_level.txt
+${PYSITELIB}/kerberos.so
diff --git a/security/py-kerberos/distinfo b/security/py-kerberos/distinfo
new file mode 100644
index 00000000000..71fca395765
--- /dev/null
+++ b/security/py-kerberos/distinfo
@@ -0,0 +1,11 @@
+$NetBSD: distinfo,v 1.1 2016/06/09 02:06:18 markd Exp $
+
+SHA1 (kerberos-1.2.4.tar.gz) = f9fcffd23b6082d71c2a073193ec5bb7547db25b
+RMD160 (kerberos-1.2.4.tar.gz) = e87105b0bc447fb06f6d81b5aab063326147345f
+SHA512 (kerberos-1.2.4.tar.gz) = 5e1e7b3b9e421d15c18b67c09127de957ac193315c8e2e5d417c0f9fb4ba0fe5ff2f7654bd675ffd87e3d2f588788041083f130a13c8f6112a23d778a3903b62
+Size (kerberos-1.2.4.tar.gz) = 19615 bytes
+SHA1 (patch-setup.py) = a9dbfbba526c9c82f2c3180e3469fc5040362ffe
+SHA1 (patch-src_kerberosbasic.h) = 7afb1da96ef6ecfcfa619ad8e6235e81d1cf87e9
+SHA1 (patch-src_kerberosgss.c) = 8207233909e0342da5f9440184621ac1f5b7476d
+SHA1 (patch-src_kerberosgss.h) = e142a4bfc60e7cf0b944f1df461c806b14dbfb15
+SHA1 (patch-src_kerberospw.h) = fc856dc69a0fd9b0bcba4fd29dacf731de3be308
diff --git a/security/py-kerberos/patches/patch-setup.py b/security/py-kerberos/patches/patch-setup.py
new file mode 100644
index 00000000000..84e5fd868d2
--- /dev/null
+++ b/security/py-kerberos/patches/patch-setup.py
@@ -0,0 +1,15 @@
+$NetBSD: patch-setup.py,v 1.1 2016/06/09 02:06:18 markd Exp $
+
+Support heimdal
+
+--- setup.py.orig 2016-01-25 17:55:44.000000000 +0000
++++ setup.py
+@@ -80,6 +80,8 @@ extra_link_args = getoutput("krb5-config
+
+ extra_compile_args = getoutput("krb5-config --cflags gssapi").split()
+
++if getoutput("krb5-config --version").find("heimdal") != -1:
++ extra_compile_args.append("-DHEIMDAL")
+
+ #
+ # Set up Extension modules that need to be built
diff --git a/security/py-kerberos/patches/patch-src_kerberosbasic.h b/security/py-kerberos/patches/patch-src_kerberosbasic.h
new file mode 100644
index 00000000000..cbdf5ffce94
--- /dev/null
+++ b/security/py-kerberos/patches/patch-src_kerberosbasic.h
@@ -0,0 +1,22 @@
+$NetBSD: patch-src_kerberosbasic.h,v 1.1 2016/06/09 02:06:18 markd Exp $
+
+Support heimdal
+
+--- src/kerberosbasic.h.orig 2016-01-25 17:51:33.000000000 +0000
++++ src/kerberosbasic.h
+@@ -14,9 +14,15 @@
+ * limitations under the License.
+ **/
+
++#ifdef HEIMDAL
++#include <gssapi/gssapi.h>
++#include <gssapi/gssapi_krb5.h>
++#include <krb5.h>
++#else
+ #include <gssapi/gssapi.h>
+ #include <gssapi/gssapi_generic.h>
+ #include <gssapi/gssapi_krb5.h>
++#endif
+
+ #define krb5_get_err_text(context,code) error_message(code)
+
diff --git a/security/py-kerberos/patches/patch-src_kerberosgss.c b/security/py-kerberos/patches/patch-src_kerberosgss.c
new file mode 100644
index 00000000000..c61c3806a28
--- /dev/null
+++ b/security/py-kerberos/patches/patch-src_kerberosgss.c
@@ -0,0 +1,45 @@
+$NetBSD: patch-src_kerberosgss.c,v 1.1 2016/06/09 02:06:18 markd Exp $
+
+Support heimdal
+
+--- src/kerberosgss.c.orig 2016-01-25 17:51:33.000000000 +0000
++++ src/kerberosgss.c
+@@ -43,7 +43,7 @@ char* server_principal_details(const cha
+ int code;
+ krb5_context kcontext;
+ krb5_keytab kt = NULL;
+- krb5_kt_cursor cursor = NULL;
++ krb5_kt_cursor cursor;
+ krb5_keytab_entry entry;
+ char* pname = NULL;
+
+@@ -67,7 +67,7 @@ char* server_principal_details(const cha
+ KrbException_class,
+ Py_BuildValue("((s:i))", "Cannot get default keytab", code)
+ );
+- goto end;
++ goto end1;
+ }
+
+ if ((code = krb5_kt_start_seq_get(kcontext, kt, &cursor))) {
+@@ -77,7 +77,7 @@ char* server_principal_details(const cha
+ "((s:i))", "Cannot get sequence cursor from keytab", code
+ )
+ );
+- goto end;
++ goto end1;
+ }
+
+ while ((code = krb5_kt_next_entry(kcontext, kt, &entry, &cursor)) == 0) {
+@@ -115,9 +115,8 @@ char* server_principal_details(const cha
+ }
+
+ end:
+- if (cursor) {
+- krb5_kt_end_seq_get(kcontext, kt, &cursor);
+- }
++ krb5_kt_end_seq_get(kcontext, kt, &cursor);
++end1:
+ if (kt) {
+ krb5_kt_close(kcontext, kt);
+ }
diff --git a/security/py-kerberos/patches/patch-src_kerberosgss.h b/security/py-kerberos/patches/patch-src_kerberosgss.h
new file mode 100644
index 00000000000..d8383118df7
--- /dev/null
+++ b/security/py-kerberos/patches/patch-src_kerberosgss.h
@@ -0,0 +1,23 @@
+$NetBSD: patch-src_kerberosgss.h,v 1.1 2016/06/09 02:06:18 markd Exp $
+
+Support heimdal
+
+--- src/kerberosgss.h.orig 2016-01-25 17:51:33.000000000 +0000
++++ src/kerberosgss.h
+@@ -14,9 +14,16 @@
+ * limitations under the License.
+ **/
+
++#ifdef HEIMDAL
++#include <gssapi/gssapi.h>
++#include <gssapi/gssapi_krb5.h>
++#include <krb5.h>
++#define gss_krb5_nt_service_name GSS_KRB5_NT_PRINCIPAL_NAME
++#else
+ #include <gssapi/gssapi.h>
+ #include <gssapi/gssapi_generic.h>
+ #include <gssapi/gssapi_krb5.h>
++#endif
+
+ #define krb5_get_err_text(context,code) error_message(code)
+
diff --git a/security/py-kerberos/patches/patch-src_kerberospw.h b/security/py-kerberos/patches/patch-src_kerberospw.h
new file mode 100644
index 00000000000..6dc18b0f1c3
--- /dev/null
+++ b/security/py-kerberos/patches/patch-src_kerberospw.h
@@ -0,0 +1,22 @@
+$NetBSD: patch-src_kerberospw.h,v 1.1 2016/06/09 02:06:18 markd Exp $
+
+Support heimdal
+
+--- src/kerberospw.h.orig 2015-03-26 21:53:18.000000000 +0000
++++ src/kerberospw.h
+@@ -15,9 +15,15 @@
+ *
+ **/
+
++#ifdef HEIMDAL
++#include <gssapi/gssapi.h>
++#include <gssapi/gssapi_krb5.h>
++#include <krb5.h>
++#else
+ #include <gssapi/gssapi.h>
+ #include <gssapi/gssapi_generic.h>
+ #include <gssapi/gssapi_krb5.h>
++#endif
+
+ #define krb5_get_err_text(context,code) error_message(code)
+