1 --- a/source3/configure.in Mon Jan 18 12:38:09 2010 |
1 Source: Home brewed |
2 +++ b/source3/configure.in Sat Mar 13 19:19:27 2010 |
2 Fixes issues with differences of Solaris krb5 and MIT krb5 |
3 @@ -3282,6 +3360,22 @@ |
3 |
4 fi |
4 --- a/wscript_configure_system_mitkrb5 2013-06-13 09:21:03.000000000 +0000 |
5 fi |
5 +++ samba-4.1.12/wscript_configure_system_mitkrb5 2015-01-09 00:06:46.004441833 +0000 |
|
6 @@ -30,6 +30,8 @@ |
|
7 krb5_define_syslib(conf, "gssapi", conf.env['LIB_GSSAPI']) |
|
8 if 'gssapi_krb5' in conf.env['LIB_GSSAPI']: |
|
9 krb5_define_syslib(conf, "gssapi_krb5", conf.env['LIB_GSSAPI']) |
|
10 + if 'gss' in conf.env['LIB_GSSAPI']: |
|
11 + krb5_define_syslib(conf, "gss", conf.env['LIB_GSSAPI']) |
6 |
12 |
7 + if test x$FOUND_KRB5 = x"no"; then |
13 vendor = conf.cmd_and_log("%(path)s --vendor" % dict(path=conf.env.KRB5_CONFIG), dict()) |
8 + ################################################# |
14 conf.env.KRB5_VENDOR = vendor.strip().lower() |
9 + # see if this box has Solaris MIT kerberos implementation |
15 @@ -52,10 +53,10 @@ |
10 + AC_MSG_CHECKING(for Solaris MIT kerberos) |
|
11 + if test -x "$KRB5CONFIG" && $KRB5CONFIG --version | grep -s Solaris | grep -s MIT > /dev/null ; then |
|
12 + FOUND_KRB5=yes |
|
13 + KRB5_LIBS="`$KRB5CONFIG --libs | sed s/-lkrb5//`" |
|
14 + KRB5_LDFLAGS="-lkrb5 -lgss" |
|
15 + KRB5_CFLAGS="`$KRB5CONFIG --cflags`" |
|
16 + KRB5_CPPFLAGS="`$KRB5CONFIG --cflags`" |
|
17 + AC_MSG_RESULT(yes) |
|
18 + else |
|
19 + AC_MSG_RESULT(${KRB5CONFIG_VER_S}) |
|
20 + fi |
|
21 + fi |
|
22 + |
|
23 ac_save_CFLAGS=$CFLAGS |
|
24 ac_save_CPPFLAGS=$CPPFLAGS |
|
25 ac_save_LDFLAGS=$LDFLAGS |
|
26 # |
|
27 --- a/source3/libsmb/clikrb5.c 2010-11-16 06:25:10.974288877 -0800 |
|
28 +++ b/source3/libsmb/clikrb5.c 2010-11-16 06:44:09.764248834 -0800 |
|
29 @@ -912,8 +912,17 @@ |
|
30 } |
|
31 #endif |
|
32 |
16 |
33 - retval = krb5_mk_req_extended(context, auth_context, ap_req_options, |
17 conf.check_cfg(args="--cflags --libs", package="com_err", uselib_store="com_err") |
34 - &in_data, credsp, outbuf); |
18 conf.CHECK_FUNCS_IN('_et_list', 'com_err') |
35 + retval = krb5_mk_req_extended(context, auth_context, ap_req_options, |
19 -conf.CHECK_HEADERS('com_err.h', lib='com_err') |
36 +#if defined(HAVE_SHORT_KRB5_MK_ERROR_INTERFACE) |
20 +conf.CHECK_HEADERS('com_err.h', lib='com_err krb5') |
37 + /* MIT implementation does not use the |
21 |
38 + * 4-th. parameter (krb5_data *) by the |
22 conf.CHECK_HEADERS('krb5.h krb5/locate_plugin.h', lib='krb5') |
39 + * same way as Heimdal. Set to NULL . |
23 -conf.CHECK_HEADERS('gssapi.h gssapi/gssapi_generic.h gssapi/gssapi.h gssapi/gssapi_ext.h gssapi/gssapi_krb5.h', lib='gssapi') |
40 + */ |
24 +conf.CHECK_HEADERS('gssapi.h gssapi/gssapi_generic.h gssapi/gssapi.h gssapi/gssapi_ext.h gssapi/gssapi_krb5.h', lib='gssapi krb5') |
41 + NULL |
25 |
42 +#else |
26 conf.CHECK_FUNCS_IN('krb5_encrypt_data', 'k5crypto') |
43 + &in_data |
27 conf.CHECK_FUNCS_IN('des_set_key','crypto') |
44 +#endif |
28 @@ -80,7 +81,7 @@ |
45 + , credsp, outbuf); |
29 gsskrb5_extract_authz_data_from_sec_context |
46 if (retval) { |
30 gss_krb5_export_lucid_sec_context |
47 DEBUG(1,("ads_krb5_mk_req: krb5_mk_req_extended failed (%s)\n", |
31 gss_import_cred gss_export_cred |
48 error_message(retval))); |
32 - ''', 'gssapi gssapi_krb5') |
|
33 + ''', 'gssapi gssapi_krb5 krb5') |
|
34 conf.CHECK_FUNCS_IN('krb5_mk_req_extended krb5_kt_compare', 'krb5') |
|
35 conf.CHECK_FUNCS(''' |
|
36 krb5_set_default_in_tkt_etypes krb5_set_default_tgs_enctypes |
|
37 @@ -108,25 +109,25 @@ |
|
38 conf.CHECK_DECLS('''krb5_get_credentials_for_user |
|
39 krb5_auth_con_set_req_cksumtype''', |
|
40 headers='krb5.h', always=True) |
|
41 -conf.CHECK_VARIABLE('AP_OPTS_USE_SUBKEY', headers='krb5.h') |
|
42 -conf.CHECK_VARIABLE('KV5M_KEYTAB', headers='krb5.h') |
|
43 -conf.CHECK_VARIABLE('KRB5_KU_OTHER_CKSUM', headers='krb5.h') |
|
44 -conf.CHECK_VARIABLE('KRB5_KEYUSAGE_APP_DATA_CKSUM', headers='krb5.h') |
|
45 -conf.CHECK_VARIABLE('ENCTYPE_AES128_CTS_HMAC_SHA1_96', headers='krb5.h') |
|
46 -conf.CHECK_VARIABLE('ENCTYPE_AES256_CTS_HMAC_SHA1_96', headers='krb5.h') |
|
47 +conf.CHECK_VARIABLE('AP_OPTS_USE_SUBKEY', headers='krb5.h', lib='krb5') |
|
48 +conf.CHECK_VARIABLE('KV5M_KEYTAB', headers='krb5.h', lib='krb5') |
|
49 +conf.CHECK_VARIABLE('KRB5_KU_OTHER_CKSUM', headers='krb5.h', lib='krb5') |
|
50 +conf.CHECK_VARIABLE('KRB5_KEYUSAGE_APP_DATA_CKSUM', headers='krb5.h', lib='krb5') |
|
51 +conf.CHECK_VARIABLE('ENCTYPE_AES128_CTS_HMAC_SHA1_96', headers='krb5.h', lib='krb5') |
|
52 +conf.CHECK_VARIABLE('ENCTYPE_AES256_CTS_HMAC_SHA1_96', headers='krb5.h', lib='krb5') |
|
53 conf.CHECK_DECLS('KRB5_PDU_NONE', reverse=True, headers='krb5.h') |
|
54 -conf.CHECK_STRUCTURE_MEMBER('krb5_keytab_entry', 'key', headers='krb5.h', |
|
55 +conf.CHECK_STRUCTURE_MEMBER('krb5_keytab_entry', 'key', headers='krb5.h', lib='krb5', |
|
56 define='HAVE_KRB5_KEYTAB_ENTRY_KEY') |
|
57 -conf.CHECK_STRUCTURE_MEMBER('krb5_keytab_entry', 'keyblock', headers='krb5.h', |
|
58 +conf.CHECK_STRUCTURE_MEMBER('krb5_keytab_entry', 'keyblock', headers='krb5.h', lib='krb5', |
|
59 define='HAVE_KRB5_KEYTAB_ENTRY_KEYBLOCK') |
|
60 -conf.CHECK_STRUCTURE_MEMBER('krb5_address', 'magic', headers='krb5.h', |
|
61 +conf.CHECK_STRUCTURE_MEMBER('krb5_address', 'magic', headers='krb5.h', lib='krb5', |
|
62 define='HAVE_MAGIC_IN_KRB5_ADDRESS') |
|
63 -conf.CHECK_STRUCTURE_MEMBER('krb5_address', 'addrtype', headers='krb5.h', |
|
64 +conf.CHECK_STRUCTURE_MEMBER('krb5_address', 'addrtype', headers='krb5.h', lib='krb5', |
|
65 define='HAVE_ADDRTYPE_IN_KRB5_ADDRESS') |
|
66 -conf.CHECK_STRUCTURE_MEMBER('krb5_ap_req', 'ticket', headers='krb5.h', |
|
67 +conf.CHECK_STRUCTURE_MEMBER('krb5_ap_req', 'ticket', headers='krb5.h', lib='krb5', |
|
68 define='HAVE_TICKET_POINTER_IN_KRB5_AP_REQ') |
|
69 |
|
70 -conf.CHECK_TYPE('krb5_encrypt_block', headers='krb5.h') |
|
71 +conf.CHECK_TYPE('krb5_encrypt_block', headers='krb5.h', lib='krb5') |
|
72 |
|
73 conf.CHECK_CODE(''' |
|
74 krb5_context ctx; |
|
75 @@ -134,7 +135,7 @@ |
|
76 krb5_get_init_creds_opt_free(ctx, opt); |
|
77 ''', |
|
78 'KRB5_CREDS_OPT_FREE_REQUIRES_CONTEXT', |
|
79 - headers='krb5.h', link=False, |
|
80 + headers='krb5.h', lib='krb5', link=False, |
|
81 msg="Checking whether krb5_get_init_creds_opt_free takes a context argument") |
|
82 conf.CHECK_CODE(''' |
|
83 const krb5_data *pkdata; |
|
84 @@ -245,7 +246,7 @@ |
|
85 conf.CHECK_CODE('''#define KRB5_DEPRECATED 1 |
|
86 #include <krb5.h>''', |
|
87 'HAVE_KRB5_DEPRECATED_WITH_IDENTIFIER', addmain=False, |
|
88 - link=False, |
|
89 + link=False, lib='krb5', |
|
90 msg="Checking for KRB5_DEPRECATED define taking an identifier") |
|
91 |
|
92 conf.CHECK_CODE(''' |