diff --git a/krb5-1.6.2-doublelog.patch b/krb5-1.6.2-doublelog.patch new file mode 100644 index 0000000..0773cf4 --- /dev/null +++ b/krb5-1.6.2-doublelog.patch @@ -0,0 +1,28 @@ +Skip over duplicate entries in a profile's file list (closes #231147). Files +are parsed in the order specified, so skipping a duplicate the second (or +subsequent) time it's seen shouldn't break any applications. + +diff -up krb5-1.6.2/src/util/profile/prof_init.c krb5-1.6.2/src/util/profile/prof_init.c +--- krb5-1.6.2/src/util/profile/prof_init.c 2007-07-23 15:55:00.000000000 -0400 ++++ krb5-1.6.2/src/util/profile/prof_init.c 2007-07-23 15:54:53.000000000 -0400 +@@ -23,7 +23,7 @@ typedef int32_t prof_int32; + errcode_t KRB5_CALLCONV + profile_init(const_profile_filespec_t *files, profile_t *ret_profile) + { +- const_profile_filespec_t *fs; ++ const_profile_filespec_t *fs, *fs2; + profile_t profile; + prf_file_t new_file, last = 0; + errcode_t retval = 0; +@@ -37,6 +37,11 @@ profile_init(const_profile_filespec_t *f + /* if the filenames list is not specified return an empty profile */ + if ( files ) { + for (fs = files; !PROFILE_LAST_FILESPEC(*fs); fs++) { ++ for (fs2 = files; fs2 != fs; fs2++) ++ if (strcmp(*fs2, *fs) == 0) ++ break; ++ if (fs2 != fs) ++ continue; + retval = profile_open_file(*fs, &new_file); + /* if this file is missing, skip to the next */ + if (retval == ENOENT || retval == EACCES) { diff --git a/krb5.spec b/krb5.spec index ba0db53..50a1f6a 100644 --- a/krb5.spec +++ b/krb5.spec @@ -80,6 +80,7 @@ Patch51: krb5-1.6-ldap-init.patch Patch52: krb5-1.6-ldap-man.patch Patch53: krb5-1.6-nodeplibs.patch Patch55: krb5-1.6.1-empty.patch +Patch56: krb5-1.6.2-doublelog.patch Patch60: krb5-1.6.1-pam.patch Patch61: krb5-trunk-manpaths.patch @@ -1194,6 +1195,7 @@ popd %patch52 -p0 -b .ldap_man %patch53 -p1 -b .nodeplibs #%patch55 -p1 -b .empty +#%patch56 -p1 -b .doublelog cp src/krb524/README README.krb524 gzip doc/*.ps