8000 smb: refresh Kerberos credentials when ccache file changes by sudiptob2 · Pull Request #8577 · rclone/rclone · GitHub
[go: up one dir, main page]

Skip to content

smb: refresh Kerberos credentials when ccache file changes #8577

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Draft
wants to merge 4 commits into
base: master
Choose a base branch
from

Conversation

sudiptob2
Copy link
@sudiptob2 sudiptob2 commented May 30, 2025

Depends on #8559

What is the purpose of this change?

This PR enhances the SMB backend in Rclone to automatically refresh Kerberos credentials when the associated ccache file is updated. Previously, credentials were only loaded once per path and cached indefinitely, which caused issues when service tickets expired or the cache was renewed.

Changes

  • Track the mtime (modification time) of each Kerberos ccache file.
  • Reload the credentials and Kerberos client only if the file's mtime has changed.
  • Avoid redundant reloads by caching both client and load errors.
  • Refactor function calls to allow test injection.
  • Add a unit test to validate reload behavior when the ccache file is modified.

Checklist

  • I have read the contribution guidelines.
  • I have added tests for all changes in this PR if appropriate.
  • I have added documentation for the changes if appropriate.
  • All commit messages are in house style.
  • I'm done, this Pull Request is ready for review :-)

@sudiptob2 sudiptob2 force-pushed the feat/smb-kerberos-refresh branch from ceed2c3 to b2b9e7a Compare June 10, 2025 16:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant
0