Creator:
Enzo Matsumiya ematsumiya@suse.de @ SUSE Samba team
Members:
Henrique Carvalho henrique.carvalho@suse.com @ SUSE Samba team

Description

Split cifs.ko in 2 separate modules; one for SMB 1.0 and 2.0.x, and another for SMB 2.1, 3.0, and 3.1.1.

Goals

Primary

Start phasing out/deprecation of older SMB versions

Secondary

  • Clean up of the code (with focus on the newer versions)
  • Update cifs-utils
  • Update documentation
  • Improve backport workflow (see below)

Technical details

Ideas for the implementation.

  • fs/smb/client/{old,new}.c to generate the respective modules
    • Maybe don't create separate folders? (re-evaluate as things progresses!)
  • Remove server->{ops,vals} if possible
  • Clean up fs_context.* -- merge duplicate options into one, handle them in userspace utils
  • Reduce code in smb2pdu.c -- tons of functions with very similar init/setup -> send/recv -> handle/free flow
  • Restructure multichannel
    • Treat initial connection as "channel 0" regardless of multichannel enabled/negotiated status, proceed with extra channels accordingly
    • Extra channel just point to "channel 0" as the primary server, no need to allocate an extra TCPServerInfo for each one
  • Authentication mechanisms
    • Modernize algorithms (references: himmelblau, IAKERB/Local KDC, SCRAM, oauth2 (Azure), etc.

Looking for hackers with the skills:

kernel cifs samba smb

This project is part of:

Hack Week 24

Activity

  • 10 days ago: ematsumiya added keyword "kernel" to this project.
  • 10 days ago: ematsumiya added keyword "cifs" to this project.
  • 10 days ago: ematsumiya added keyword "samba" to this project.
  • 10 days ago: ematsumiya added keyword "smb" to this project.
  • 10 days ago: ematsumiya joined this project.
  • 10 days ago: hcarvalho started this project.
  • 10 days ago: hcarvalho originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    early stage kdump support by mbrugger

    [comment]: # (Please use the project descriptio...


    Contributing to Linux Kernel security by pperego

    Description

    A couple of weeks ago, I foun...


    FizzBuzz OS by mssola

    Project Description

    FizzBuzz OS (or just ...


    Linux on Cavium CN23XX cards by tsbogend

    Before Cavium switched to ARM64 CPUs they devel...


    Model checking the BPF verifier by shunghsiyu

    Project Description

    BPF verifier plays a ...