• David Howells's avatar
    afs: Fix characters allowed into cell names · a45ea48e
    David Howells authored
    The afs filesystem needs to prohibit certain characters from cell names,
    such as '/', as these are used to form filenames in procfs, leading to
    the following warning being generated:
    
    	WARNING: CPU: 0 PID: 3489 at fs/proc/generic.c:178
    
    Fix afs_alloc_cell() to disallow nonprintable characters, '/', '@' and
    names that begin with a dot.
    
    Remove the check for "@cell" as that is then redundant.
    
    This can be tested by running:
    
    	echo add foo/.bar 1.2.3.4 >/proc/fs/afs/cells
    
    Note that we will also need to deal with:
    
     - Names ending in ".invalid" shouldn't be passed to the DNS.
    
     - Names that contain non-valid domainname chars shouldn't be passed to
       the DNS.
    
     - DNS replies that say "your-dns-needs-immediate-attention.<gTLD>" and
       replies containing A records that say 127.0.53.53 should be
       considered invalid.
       [https://www.icann.org/en/system/files/files/name-collision-mitigation-01aug14-en.pdf]
    
    but these need to be dealt with by the kafs-client DNS program rather
    than the kernel.
    
    Reported-by: syzbot+b904ba7c947a37b4b291@syzkaller.appspotmail.com
    Cc: stable@kernel.org
    Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    a45ea48e
cell.c 20.6 KB