Fix build with Heimdal and unrestrict again.diff -r1.7 -r1.8 pkgsrc/security/py-kerberos/Makefile
(joerg)
@@ -1,19 +1,19 @@ | @@ -1,19 +1,19 @@ | |||
1 | # $NetBSD: Makefile,v 1.7 2021/10/21 07:46:38 wiz Exp $ | 1 | # $NetBSD: Makefile,v 1.8 2021/12/10 22:42:35 joerg Exp $ | |
2 | 2 | |||
3 | DISTNAME= kerberos-1.3.1 | 3 | DISTNAME= kerberos-1.3.1 | |
4 | PKGNAME= ${PYPKGPREFIX}-${DISTNAME} | 4 | PKGNAME= ${PYPKGPREFIX}-${DISTNAME} | |
5 | PKGREVISION= 2 | 5 | PKGREVISION= 2 | |
6 | CATEGORIES= security python | 6 | CATEGORIES= security python | |
7 | MASTER_SITES= ${MASTER_SITE_PYPI:=k/kerberos/} | 7 | MASTER_SITES= ${MASTER_SITE_PYPI:=k/kerberos/} | |
8 | 8 | |||
9 | MAINTAINER= pkgsrc-users@NetBSD.org | 9 | MAINTAINER= pkgsrc-users@NetBSD.org | |
10 | HOMEPAGE= https://github.com/apple/ccs-pykerberos | 10 | HOMEPAGE= https://github.com/apple/ccs-pykerberos | |
11 | COMMENT= Python Kerberos implementation | 11 | COMMENT= Python Kerberos implementation | |
12 | LICENSE= apache-2.0 | 12 | LICENSE= apache-2.0 | |
13 | 13 | |||
14 | # uses krb5_free_keytab_entry_contents, which only mit-krb5 provides | 14 | # When updating, try to build with the following: | |
15 | KRB5_ACCEPTED= mit-krb5 | 15 | #CFLAGS+= -Werror=implicit-function-declaration | |
16 | 16 | |||
17 | .include "../../lang/python/egg.mk" | 17 | .include "../../lang/python/egg.mk" | |
18 | .include "../../mk/krb5.buildlink3.mk" | 18 | .include "../../mk/krb5.buildlink3.mk" | |
19 | .include "../../mk/bsd.pkg.mk" | 19 | .include "../../mk/bsd.pkg.mk" |
@@ -1,10 +1,10 @@ | @@ -1,10 +1,10 @@ | |||
1 | $NetBSD: distinfo,v 1.7 2021/10/26 11:17:46 nia Exp $ | 1 | $NetBSD: distinfo,v 1.8 2021/12/10 22:42:35 joerg Exp $ | |
2 | 2 | |||
3 | BLAKE2s (kerberos-1.3.1.tar.gz) = 87120c28fc13c67a6b30623755f18c459cb1ccf0faf57284ef8cc99ed5374cc2 | 3 | BLAKE2s (kerberos-1.3.1.tar.gz) = 87120c28fc13c67a6b30623755f18c459cb1ccf0faf57284ef8cc99ed5374cc2 | |
4 | SHA512 (kerberos-1.3.1.tar.gz) = 63608c6ee94bcade567de19bea5e139039b336e181a319184666a0d1a11b1b6cd10cebf7bab52adc67502788c1632ff36a2534de37b4d01a5a32d9003aa74c6e | 4 | SHA512 (kerberos-1.3.1.tar.gz) = 63608c6ee94bcade567de19bea5e139039b336e181a319184666a0d1a11b1b6cd10cebf7bab52adc67502788c1632ff36a2534de37b4d01a5a32d9003aa74c6e | |
5 | Size (kerberos-1.3.1.tar.gz) = 19126 bytes | 5 | Size (kerberos-1.3.1.tar.gz) = 19126 bytes | |
6 | SHA1 (patch-setup.py) = a9dbfbba526c9c82f2c3180e3469fc5040362ffe | 6 | SHA1 (patch-setup.py) = a9dbfbba526c9c82f2c3180e3469fc5040362ffe | |
7 | SHA1 (patch-src_kerberosbasic.h) = 7afb1da96ef6ecfcfa619ad8e6235e81d1cf87e9 | 7 | SHA1 (patch-src_kerberosbasic.h) = 4a8dea49295958709d8db9b272bb65f4a99baad1 | |
8 | SHA1 (patch-src_kerberosgss.c) = 8207233909e0342da5f9440184621ac1f5b7476d | 8 | SHA1 (patch-src_kerberosgss.c) = e2e41001a1ef7a50a23aac7884a1985a1794a9eb | |
9 | SHA1 (patch-src_kerberosgss.h) = e142a4bfc60e7cf0b944f1df461c806b14dbfb15 | 9 | SHA1 (patch-src_kerberosgss.h) = bedf261df0906057b692ad2265fbdc2b488b7932 | |
10 | SHA1 (patch-src_kerberospw.h) = fc856dc69a0fd9b0bcba4fd29dacf731de3be308 | 10 | SHA1 (patch-src_kerberospw.h) = 6d2ac5d9ab2970427a0906a68e557057779d5d0c |
@@ -1,22 +1,26 @@ | @@ -1,22 +1,26 @@ | |||
1 | $NetBSD: patch-src_kerberosbasic.h,v 1.1 2016/06/09 02:06:18 markd Exp $ | 1 | $NetBSD: patch-src_kerberosbasic.h,v 1.2 2021/12/10 22:42:35 joerg Exp $ | |
2 | 2 | |||
3 | Support heimdal | 3 | Support heimdal | |
4 | 4 | |||
5 | --- src/kerberosbasic.h.orig 2016-01-25 17:51:33.000000000 +0000 | 5 | --- src/kerberosbasic.h.orig 2021-01-07 23:03:04.000000000 +0000 | |
6 | +++ src/kerberosbasic.h | 6 | +++ src/kerberosbasic.h | |
7 | @@ -14,9 +14,15 @@ | 7 | @@ -14,11 +14,19 @@ | |
8 | * limitations under the License. | 8 | * limitations under the License. | |
9 | **/ | 9 | **/ | |
10 | 10 | |||
11 | +#ifdef HEIMDAL | 11 | +#ifdef HEIMDAL | |
12 | +#include <gssapi/gssapi.h> | 12 | +#include <gssapi/gssapi.h> | |
13 | +#include <gssapi/gssapi_krb5.h> | 13 | +#include <gssapi/gssapi_krb5.h> | |
14 | +#include <krb5.h> | 14 | +#include <krb5.h> | |
15 | +#else | 15 | +#else | |
16 | #include <gssapi/gssapi.h> | 16 | #include <gssapi/gssapi.h> | |
17 | #include <gssapi/gssapi_generic.h> | 17 | #include <gssapi/gssapi_generic.h> | |
18 | #include <gssapi/gssapi_krb5.h> | 18 | #include <gssapi/gssapi_krb5.h> | |
19 | +#endif | 19 | +#endif | |
20 | 20 | |||
21 | +#ifndef HEIMDAL | |||
21 | #define krb5_get_err_text(context,code) error_message(code) | 22 | #define krb5_get_err_text(context,code) error_message(code) | |
23 | +#endif | |||
22 | 24 | |||
25 | int authenticate_user_krb5pwd( | |||
26 | const char *user, const char *pswd, const char *service, |
@@ -1,18 +1,18 @@ | @@ -1,18 +1,18 @@ | |||
1 | $NetBSD: patch-src_kerberosgss.c,v 1.1 2016/06/09 02:06:18 markd Exp $ | 1 | $NetBSD: patch-src_kerberosgss.c,v 1.2 2021/12/10 22:42:35 joerg Exp $ | |
2 | 2 | |||
3 | Support heimdal | 3 | Support heimdal | |
4 | 4 | |||
5 | --- src/kerberosgss.c.orig 2016-01-25 17:51:33.000000000 +0000 | 5 | --- src/kerberosgss.c.orig 2021-01-07 23:03:04.000000000 +0000 | |
6 | +++ src/kerberosgss.c | 6 | +++ src/kerberosgss.c | |
7 | @@ -43,7 +43,7 @@ char* server_principal_details(const cha | 7 | @@ -43,7 +43,7 @@ char* server_principal_details(const cha | |
8 | int code; | 8 | int code; | |
9 | krb5_context kcontext; | 9 | krb5_context kcontext; | |
10 | krb5_keytab kt = NULL; | 10 | krb5_keytab kt = NULL; | |
11 | - krb5_kt_cursor cursor = NULL; | 11 | - krb5_kt_cursor cursor = NULL; | |
12 | + krb5_kt_cursor cursor; | 12 | + krb5_kt_cursor cursor; | |
13 | krb5_keytab_entry entry; | 13 | krb5_keytab_entry entry; | |
14 | char* pname = NULL; | 14 | char* pname = NULL; | |
15 | 15 | |||
16 | @@ -67,7 +67,7 @@ char* server_principal_details(const cha | 16 | @@ -67,7 +67,7 @@ char* server_principal_details(const cha | |
17 | KrbException_class, | 17 | KrbException_class, | |
18 | Py_BuildValue("((s:i))", "Cannot get default keytab", code) | 18 | Py_BuildValue("((s:i))", "Cannot get default keytab", code) | |
@@ -21,25 +21,46 @@ Support heimdal | @@ -21,25 +21,46 @@ Support heimdal | |||
21 | + goto end1; | 21 | + goto end1; | |
22 | } | 22 | } | |
23 | 23 | |||
24 | if ((code = krb5_kt_start_seq_get(kcontext, kt, &cursor))) { | 24 | if ((code = krb5_kt_start_seq_get(kcontext, kt, &cursor))) { | |
25 | @@ -77,7 +77,7 @@ char* server_principal_details(const cha | 25 | @@ -77,7 +77,7 @@ char* server_principal_details(const cha | |
26 | "((s:i))", "Cannot get sequence cursor from keytab", code | 26 | "((s:i))", "Cannot get sequence cursor from keytab", code | |
27 | ) | 27 | ) | |
28 | ); | 28 | ); | |
29 | - goto end; | 29 | - goto end; | |
30 | + goto end1; | 30 | + goto end1; | |
31 | } | 31 | } | |
32 | 32 | |||
33 | while ((code = krb5_kt_next_entry(kcontext, kt, &entry, &cursor)) == 0) { | 33 | while ((code = krb5_kt_next_entry(kcontext, kt, &entry, &cursor)) == 0) { | |
34 | @@ -115,9 +115,8 @@ char* server_principal_details(const cha | 34 | @@ -99,12 +99,20 @@ char* server_principal_details(const cha | |
35 | } | |||
36 | strcpy(result, pname); | |||
37 | krb5_free_unparsed_name(kcontext, pname); | |||
38 | +#ifdef HEIMDAL | |||
39 | + krb5_kt_free_entry(kcontext, &entry); | |||
40 | +#else | |||
41 | krb5_free_keytab_entry_contents(kcontext, &entry); | |||
42 | +#endif | |||
43 | break; | |||
44 | } | |||
45 | ||||
46 | krb5_free_unparsed_name(kcontext, pname); | |||
47 | +#ifdef HEIMDAL | |||
48 | + krb5_kt_free_entry(kcontext, &entry); | |||
49 | +#else | |||
50 | krb5_free_keytab_entry_contents(kcontext, &entry); | |||
51 | +#endif | |||
52 | } | |||
53 | ||||
54 | if (result == NULL) { | |||
55 | @@ -115,9 +123,8 @@ char* server_principal_details(const cha | |||
35 | } | 56 | } | |
36 | 57 | |||
37 | end: | 58 | end: | |
38 | - if (cursor) { | 59 | - if (cursor) { | |
39 | - krb5_kt_end_seq_get(kcontext, kt, &cursor); | 60 | - krb5_kt_end_seq_get(kcontext, kt, &cursor); | |
40 | - } | 61 | - } | |
41 | + krb5_kt_end_seq_get(kcontext, kt, &cursor); | 62 | + krb5_kt_end_seq_get(kcontext, kt, &cursor); | |
42 | +end1: | 63 | +end1: | |
43 | if (kt) { | 64 | if (kt) { | |
44 | krb5_kt_close(kcontext, kt); | 65 | krb5_kt_close(kcontext, kt); | |
45 | } | 66 | } |
@@ -1,23 +1,27 @@ | @@ -1,23 +1,27 @@ | |||
1 | $NetBSD: patch-src_kerberosgss.h,v 1.1 2016/06/09 02:06:18 markd Exp $ | 1 | $NetBSD: patch-src_kerberosgss.h,v 1.2 2021/12/10 22:42:35 joerg Exp $ | |
2 | 2 | |||
3 | Support heimdal | 3 | Support heimdal | |
4 | 4 | |||
5 | --- src/kerberosgss.h.orig 2016-01-25 17:51:33.000000000 +0000 | 5 | --- src/kerberosgss.h.orig 2021-01-07 23:03:04.000000000 +0000 | |
6 | +++ src/kerberosgss.h | 6 | +++ src/kerberosgss.h | |
7 | @@ -14,9 +14,16 @@ | 7 | @@ -14,11 +14,20 @@ | |
8 | * limitations under the License. | 8 | * limitations under the License. | |
9 | **/ | 9 | **/ | |
10 | 10 | |||
11 | +#ifdef HEIMDAL | 11 | +#ifdef HEIMDAL | |
12 | +#include <gssapi/gssapi.h> | 12 | +#include <gssapi/gssapi.h> | |
13 | +#include <gssapi/gssapi_krb5.h> | 13 | +#include <gssapi/gssapi_krb5.h> | |
14 | +#include <krb5.h> | 14 | +#include <krb5.h> | |
15 | +#define gss_krb5_nt_service_name GSS_KRB5_NT_PRINCIPAL_NAME | 15 | +#define gss_krb5_nt_service_name GSS_KRB5_NT_PRINCIPAL_NAME | |
16 | +#else | 16 | +#else | |
17 | #include <gssapi/gssapi.h> | 17 | #include <gssapi/gssapi.h> | |
18 | #include <gssapi/gssapi_generic.h> | 18 | #include <gssapi/gssapi_generic.h> | |
19 | #include <gssapi/gssapi_krb5.h> | 19 | #include <gssapi/gssapi_krb5.h> | |
20 | +#endif | 20 | +#endif | |
21 | 21 | |||
22 | +#ifndef HEIMDAL | |||
22 | #define krb5_get_err_text(context,code) error_message(code) | 23 | #define krb5_get_err_text(context,code) error_message(code) | |
24 | +#endif | |||
23 | 25 | |||
26 | #define AUTH_GSS_ERROR -1 | |||
27 | #define AUTH_GSS_COMPLETE 1 |
@@ -1,22 +1,26 @@ | @@ -1,22 +1,26 @@ | |||
1 | $NetBSD: patch-src_kerberospw.h,v 1.1 2016/06/09 02:06:18 markd Exp $ | 1 | $NetBSD: patch-src_kerberospw.h,v 1.2 2021/12/10 22:42:35 joerg Exp $ | |
2 | 2 | |||
3 | Support heimdal | 3 | Support heimdal | |
4 | 4 | |||
5 | --- src/kerberospw.h.orig 2015-03-26 21:53:18.000000000 +0000 | 5 | --- src/kerberospw.h.orig 2021-01-07 23:03:04.000000000 +0000 | |
6 | +++ src/kerberospw.h | 6 | +++ src/kerberospw.h | |
7 | @@ -15,9 +15,15 @@ | 7 | @@ -15,11 +15,19 @@ | |
8 | * | 8 | * | |
9 | **/ | 9 | **/ | |
10 | 10 | |||
11 | +#ifdef HEIMDAL | 11 | +#ifdef HEIMDAL | |
12 | +#include <gssapi/gssapi.h> | 12 | +#include <gssapi/gssapi.h> | |
13 | +#include <gssapi/gssapi_krb5.h> | 13 | +#include <gssapi/gssapi_krb5.h> | |
14 | +#include <krb5.h> | 14 | +#include <krb5.h> | |
15 | +#else | 15 | +#else | |
16 | #include <gssapi/gssapi.h> | 16 | #include <gssapi/gssapi.h> | |
17 | #include <gssapi/gssapi_generic.h> | 17 | #include <gssapi/gssapi_generic.h> | |
18 | #include <gssapi/gssapi_krb5.h> | 18 | #include <gssapi/gssapi_krb5.h> | |
19 | +#endif | 19 | +#endif | |
20 | 20 | |||
21 | +#ifndef HEIMDAL | |||
21 | #define krb5_get_err_text(context,code) error_message(code) | 22 | #define krb5_get_err_text(context,code) error_message(code) | |
23 | +#endif | |||
22 | 24 | |||
25 | int change_user_krb5pwd( | |||
26 | const char *user, const char* oldpswd, const char *newpswd |