The kerberos code in the nt_printer_publish and check_published_printers routines in source3/printing/nt_printing.c make the following call:
setenv(KRB5_ENV_CCNAME, "MEMORY:prtpub_cache", 1)
This overrides the library default kerberos cache for the process (for linux, /tmp/krb5cc_<uid>). If another routine relies on default kerberos cache settings (e.g. nss_ldap), this causes problems.
This can be resolved by calling unsetenv(KRB5_ENV_CCNAME) before exiting the nt_printer_publish and check_published_printers routines.
Günther, can you please comment if that is true for 3.6/4.0 also?
Yes, it is.
Created attachment 9067 [details]
proposed patch for master
Created attachment 9072 [details]
patch for 4.1.x
Same patch applies to v4.1 as well.
Günther, can you please look out for bugs like this, that have been fixed but not been closed in bugzilla?