linux/fs/smb/client
Linus Torvalds 1d18101a64 kernel-6.19-rc1.cred
-----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQRAhzRXHqcMeLMyaSiRxhvAZXjcogUCaSmOZQAKCRCRxhvAZXjc
 orJLAP9UD+dX6cicJDkzFZowDakmoIQkR5ZSDwChSlmvLcmquwEAlSq4svVd9Bdl
 7kOFUk71DqhVHrPAwO7ap0BxehokEAA=
 =Cli6
 -----END PGP SIGNATURE-----

Merge tag 'kernel-6.19-rc1.cred' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs

Pull cred guard updates from Christian Brauner:
 "This contains substantial credential infrastructure improvements
  adding guard-based credential management that simplifies code and
  eliminates manual reference counting in many subsystems.

  Features:

   - Kernel Credential Guards

     Add with_kernel_creds() and scoped_with_kernel_creds() guards that
     allow using the kernel credentials without allocating and copying
     them. This was requested by Linus after seeing repeated
     prepare_kernel_creds() calls that duplicate the kernel credentials
     only to drop them again later.

     The new guards completely avoid the allocation and never expose the
     temporary variable to hold the kernel credentials anywhere in
     callers.

   - Generic Credential Guards

     Add scoped_with_creds() guards for the common override_creds() and
     revert_creds() pattern. This builds on earlier work that made
     override_creds()/revert_creds() completely reference count free.

   - Prepare Credential Guards

     Add prepare credential guards for the more complex pattern of
     preparing a new set of credentials and overriding the current
     credentials with them:
      - prepare_creds()
      - modify new creds
      - override_creds()
      - revert_creds()
      - put_cred()

  Cleanups:

   - Make init_cred static since it should not be directly accessed

   - Add kernel_cred() helper to properly access the kernel credentials

   - Fix scoped_class() macro that was introduced two cycles ago

   - coredump: split out do_coredump() from vfs_coredump() for cleaner
     credential handling

   - coredump: move revert_cred() before coredump_cleanup()

   - coredump: mark struct mm_struct as const

   - coredump: pass struct linux_binfmt as const

   - sev-dev: use guard for path"

* tag 'kernel-6.19-rc1.cred' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs/vfs: (36 commits)
  trace: use override credential guard
  trace: use prepare credential guard
  coredump: use override credential guard
  coredump: use prepare credential guard
  coredump: split out do_coredump() from vfs_coredump()
  coredump: mark struct mm_struct as const
  coredump: pass struct linux_binfmt as const
  coredump: move revert_cred() before coredump_cleanup()
  sev-dev: use override credential guards
  sev-dev: use prepare credential guard
  sev-dev: use guard for path
  cred: add prepare credential guard
  net/dns_resolver: use credential guards in dns_query()
  cgroup: use credential guards in cgroup_attach_permissions()
  act: use credential guards in acct_write_process()
  smb: use credential guards in cifs_get_spnego_key()
  nfs: use credential guards in nfs_idmap_get_key()
  nfs: use credential guards in nfs_local_call_write()
  nfs: use credential guards in nfs_local_call_read()
  erofs: use credential guards
  ...
2025-12-01 13:45:41 -08:00
..
compress move asm/unaligned.h to linux/unaligned.h 2024-10-02 17:23:23 -04:00
Kconfig smb: client: Remove obsolete crypto_shash allocations 2025-10-15 22:10:28 -05:00
Makefile cifs: Move the SMB1 transport code out of transport.c 2025-08-06 12:01:54 -05:00
asn1.c smb3: add support for IAKerb 2025-01-31 12:51:44 -06:00
cached_dir.c smb: client: introduce close_cached_dir_locked() 2025-11-20 03:03:30 -06:00
cached_dir.h smb: client: remove cfids_invalidation_worker 2025-10-09 11:18:09 -05:00
cifs_debug.c smb: client: account smb directory cache usage and per-tcon totals 2025-10-01 21:49:53 -05:00
cifs_debug.h
cifs_fs_sb.h smb:client: smb: client: Add reverse mapping from tcon to superblocks 2025-03-31 21:12:31 -05:00
cifs_ioctl.h smb: minor fix to use SMB2_NTLMV2_SESSKEY_SIZE for auth_key size 2025-06-21 11:03:25 -05:00
cifs_spnego.c smb: use credential guards in cifs_get_spnego_key() 2025-11-04 12:36:48 +01:00
cifs_spnego.h
cifs_spnego_negtokeninit.asn1
cifs_swn.c smb: client: Return directly after a failed genlmsg_new() in cifs_swn_send_register_message() 2025-10-07 14:28:16 -05:00
cifs_swn.h
cifs_unicode.c cifs: prevent NULL pointer dereference in UTF16 conversion 2025-09-04 11:43:31 -05:00
cifs_unicode.h
cifsacl.c smb: client: Return a status code only as a constant in sid_to_id() 2025-10-13 08:26:22 -05:00
cifsacl.h smb: client: Correct typos in multiple comments across various files 2024-10-02 17:52:24 -05:00
cifsencrypt.c smb: client: Remove obsolete crypto_shash allocations 2025-10-15 22:10:28 -05:00
cifsfs.c vfs-6.19-rc1.inode 2025-12-01 09:02:34 -08:00
cifsfs.h cifs: update internal version number 2025-10-10 11:10:01 -05:00
cifsglob.h cifs: Call the calc_signature functions directly 2025-10-23 02:47:20 -05:00
cifspdu.h cifs: Correctly set SMB1 SessionKey field in Session Setup Request 2025-06-01 20:43:49 -05:00
cifsproto.h smb: client: handle lack of IPC in dfs_cache_refresh() 2025-10-29 20:13:05 -05:00
cifsroot.c
cifssmb.c cifs: Add the smb3_read_* tracepoints to SMB1 2025-11-20 03:12:05 -06:00
cifstransport.c smb: client: fix mid_q_entry memleak leak with per-mid locking 2025-08-13 11:36:05 -05:00
compress.c cifs: Fix collect_sample() to handle any iterator type 2025-08-11 23:20:07 -05:00
compress.h smb: client: compress: LZ77 code improvements cleanup 2024-09-15 10:42:45 -05:00
connect.c smb: client: fix memory leak in cifs_construct_tcon() 2025-11-25 18:00:06 -06:00
dfs.c smb: client: don't trust DFSREF_STORAGE_SERVER bit 2025-02-05 21:09:00 -06:00
dfs.h smb: client: get rid of kstrdup() in get_ses_refpath() 2025-02-05 21:09:07 -06:00
dfs_cache.c smb: client: handle lack of IPC in dfs_cache_refresh() 2025-10-29 20:13:05 -05:00
dfs_cache.h
dir.c smb: client: Use common code in cifs_do_create() 2025-10-07 13:31:27 -05:00
dns_resolve.c smb: client: provide dns_resolve_{unc,name} helpers 2025-01-19 19:34:00 -06:00
dns_resolve.h smb: client: provide dns_resolve_{unc,name} helpers 2025-01-19 19:34:00 -06:00
export.c
file.c smb: client: remove redudant assignment in cifs_strict_fsync() 2025-10-09 11:16:25 -05:00
fs_context.c cifs: fix memory leak in smb3_fs_context_parse_param error path 2025-11-20 03:06:25 -06:00
fs_context.h smb: client: set symlink type as native for POSIX mounts 2025-08-01 00:16:19 -05:00
fscache.c
fscache.h
inode.c vfs-6.19-rc1.inode 2025-12-01 09:02:34 -08:00
ioctl.c smb: minor fix to use SMB2_NTLMV2_SESSKEY_SIZE for auth_key size 2025-06-21 11:03:25 -05:00
link.c smb: client: Use MD5 library for M-F symlink hashing 2025-10-15 22:10:28 -05:00
misc.c cifs: parse_dfs_referrals: prevent oob on malformed input 2025-10-15 22:10:28 -05:00
namespace.c 13 smb3/cifs client fixes 2025-06-03 16:04:29 -07:00
netlink.c
netlink.h
netmisc.c cifs: Change translation of STATUS_PRIVILEGE_NOT_HELD to -EPERM 2025-01-29 16:52:25 -06:00
nterr.c cifs: Change translation of STATUS_NOT_A_REPARSE_POINT to -ENODATA 2025-01-26 23:12:03 -06:00
nterr.h cifs: Change translation of STATUS_NOT_A_REPARSE_POINT to -ENODATA 2025-01-26 23:12:03 -06:00
ntlmssp.h
readdir.c smb: client: account smb directory cache usage and per-tcon totals 2025-10-01 21:49:53 -05:00
reparse.c smb: client: fix spellings in comments 2025-09-02 20:37:17 -05:00
reparse.h cifs: Add support for creating reparse points over SMB1 2025-07-27 17:43:08 -05:00
rfc1002pdu.h cifs: Fix endian types in struct rfc1002_session_packet 2025-01-19 19:34:00 -06:00
sess.c smb: client: Consolidate cmac(aes) shash allocation 2025-10-15 22:10:28 -05:00
smb1ops.c cifs: Add fallback code path for cifs_mkdir_setinfo() 2025-10-09 23:01:24 -05:00
smb2file.c cifs: Do not add FILE_READ_ATTRIBUTES when using GENERIC_READ/EXECUTE/ALL 2025-04-01 04:58:09 -05:00
smb2glob.h smb: client: fix data loss due to broken rename(2) 2025-09-09 18:39:58 -05:00
smb2inode.c smb: client: fix refcount leak in smb2_set_path_attr 2025-11-04 16:03:56 -06:00
smb2maperror.c cifs: Change translation of STATUS_PRIVILEGE_NOT_HELD to -EPERM 2025-01-29 16:52:25 -06:00
smb2misc.c smb: client: Use SHA-512 library for SMB3.1.1 preauth hash 2025-10-15 22:10:28 -05:00
smb2ops.c smb: client: fix potential cfid UAF in smb2_query_info_compound 2025-10-28 08:41:36 -05:00
smb2pdu.c smb: client: validate change notify buffer before copy 2025-11-07 10:15:43 -06:00
smb2pdu.h smb: client: batch SRV_COPYCHUNK entries to cut round trips 2025-10-09 10:42:14 -05:00
smb2proto.h cifs: Call the calc_signature functions directly 2025-10-23 02:47:20 -05:00
smb2transport.c cifs: Call the calc_signature functions directly 2025-10-23 02:47:20 -05:00
smbdirect.c smb: client: let smbd_disconnect_rdma_connection() turn CREATED into DISCONNECTED 2025-11-11 11:05:35 -06:00
smbdirect.h smb: client: change smbd_deregister_mr() to return void 2025-10-13 08:26:22 -05:00
smbencrypt.c
smberr.h
trace.c cifs: #include cifsglob.h before trace.h to allow structs in tracepoints 2025-10-23 02:47:20 -05:00
trace.h smb: client: batch SRV_COPYCHUNK entries to cut round trips 2025-10-09 10:42:14 -05:00
transport.c smb: client: fix cifs_pick_channel when channel needs reconnect 2025-11-09 17:30:17 -06:00
unc.c
winucase.c
xattr.c smb: client: Omit one redundant variable assignment in cifs_xattr_set() 2025-10-13 08:26:22 -05:00