I set the SMB_CTX_FLAG_USE_KERBEROS flag in the smbc context. I could authenticate to the share correctly and retrieve all the directory entries. However, the SPNEGO login to IPC$ (done by smbc_attr_server()) failed because smbc_attr_server() calls cli_full_connection() with flags set to 0. Is there any way to pass CLI_FULL_CONNECTION_USE_KERBEROS in the flags argument ? I set a breakpoint in smbc_attr_server() and noticed that cli->use_spnego is True but cli->use_kerberos is False (because flags is always 0 at the caller site). if (flags & CLI_FULL_CONNECTION_DONT_SPNEGO) cli->use_spnego = False; else if (flags & CLI_FULL_CONNECTION_USE_KERBEROS) cli->use_kerberos = True; This causes subsequent code to fail with the message "SPNEGO login failed: Logon failure".
Should be fixed by check-in 21132. I don't have an environment to test this, however. Please confirm that it is now working for you. Thanks, Derrell
Changes checked into 3.0.25rc1