J. Bruce Fields
ea053e164c
nfsd: escape high characters in binary data
...
I'm exposing some information about NFS clients in pseudofiles. I
expect to eventually have simple tools to help read those pseudofiles.
But it's also helpful if the raw files are human-readable to the extent
possible. It aids debugging and makes them usable on systems that don't
have the latest nfs-utils.
A minor challenge there is opaque client-generated protocol objects like
state owners and client identifiers. Some clients generate those to
include handy information in plain ascii. But they may also include
arbitrary byte sequences.
I think the simplest approach is to limit to isprint(c) && isascii(c)
and escape everything else.
That means you can just cat the file and get something that looks OK.
Also, I'm trying to keep these files legal YAML, which requires them to
UTF-8, and this is a simple way to guarantee that.
Acked-by: Kees Cook <keescook@chromium.org>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
2019-07-03 17:52:50 -04:00
..
842
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
fonts
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
livepatch
livepatch: Proper error handling in the shadow variables selftest
2019-02-06 11:01:57 +01:00
lz4
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
lzo
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
math
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
mpi
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 26
2019-05-24 17:27:10 +02:00
raid6
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 83
2019-05-24 17:37:52 +02:00
reed_solomon
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
xz
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
zlib_deflate
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
zlib_inflate
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
zstd
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
.gitignore
lib: add crc64 calculation routines
2018-08-22 10:52:48 -07:00
argv_split.c
treewide: kmalloc() -> kmalloc_array()
2018-06-12 16:19:22 -07:00
ashldi3.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 120
2019-05-24 17:39:02 +02:00
ashrdi3.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 120
2019-05-24 17:39:02 +02:00
asn1_decoder.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 36
2019-05-24 17:27:11 +02:00
assoc_array.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 36
2019-05-24 17:27:11 +02:00
atomic64.c
atomics/generic: Define atomic64_fetch_add_unless()
2018-06-21 14:25:21 +02:00
atomic64_test.c
audit.c
bcd.c
bch.c
lib/bch: fix possible stack overrun
2018-10-12 09:17:46 +02:00
bitmap.c
lib: rework bitmap_parselist
2019-05-14 19:52:49 -07:00
bitrev.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
bsearch.c
kprobes: Prohibit probing on bsearch()
2019-02-13 08:16:41 +01:00
btree.c
bucket_locks.c
ila: make lockdep happy again
2018-08-16 12:14:42 -07:00
bug.c
build_OID_registry
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 36
2019-05-24 17:27:11 +02:00
bust_spinlocks.c
s390: use common bust_spinlocks()
2018-11-30 07:22:05 +01:00
chacha.c
crypto: chacha - add XChaCha12 support
2018-11-20 14:26:55 +08:00
check_signature.c
checksum.c
clz_ctz.c
clz_tab.c
cmdline.c
lib/cmdline.c: mark expected switch fall-throughs
2019-04-08 18:39:23 -05:00
cmpdi2.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 120
2019-05-24 17:39:02 +02:00
compat_audit.c
cpu_rmap.c
cpumask.c
treewide: add checks for the return value of memblock_alloc*()
2019-03-12 10:04:02 -07:00
crc-ccitt.c
crc-itu-t.c
crc-t10dif.c
crypto: shash - remove shash_desc::flags
2019-04-25 15:38:12 +08:00
crc4.c
crc7.c
crc8.c
crc16.c
crc32.c
lib/crc32.c: mark crc32_le_base/__crc32c_le_base aliases as __pure
2019-02-15 19:50:07 +01:00
crc32defs.h
lib/crc: Move polynomial definition to separate header
2018-07-27 19:04:33 +08:00
crc32test.c
crc64.c
lib: add crc64 calculation routines
2018-08-22 10:52:48 -07:00
ctype.c
debug_info.c
debug_locks.c
treewide: Add SPDX license identifier for missed files
2019-05-21 10:50:45 +02:00
debugobjects.c
debugobjects: call debug_objects_mem_init eariler
2018-12-28 12:11:45 -08:00
dec_and_lock.c
atomic: Add irqsave variant of atomic_dec_and_lock()
2018-06-12 23:33:24 +02:00
decompress.c
decompress_bunzip2.c
lib: Use existing define with polynomial
2018-07-27 19:16:38 +08:00
decompress_inflate.c
decompress_unlz4.c
decompress_unlzma.c
decompress_unlzo.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 95
2019-05-24 17:37:53 +02:00
decompress_unxz.c
devres.c
devres: always use dev_name() in devm_ioremap_resource()
2019-01-31 19:28:40 +01:00
digsig.c
crypto: shash - remove shash_desc::flags
2019-04-25 15:38:12 +08:00
dump_stack.c
dynamic_debug.c
RDMA/core: Introduce RDMA subsystem ibdev_* print functions
2019-05-01 12:29:28 -04:00
dynamic_queue_limits.c
earlycpio.c
error-inject.c
treewide: Switch printk users from %pf and %pF to %ps and %pS, respectively
2019-04-09 14:19:06 +02:00
errseq.c
errseq: Always report a writeback error once
2018-04-27 08:51:26 -04:00
extable.c
fault-inject.c
treewide: Add SPDX license identifier for missed files
2019-05-21 10:50:45 +02:00
fdt.c
fdt_empty_tree.c
fdt_ro.c
fdt_rw.c
fdt_strerror.c
fdt_sw.c
fdt_wip.c
find_bit.c
find_bit_benchmark.c
lib/find_bit_benchmark.c: align test_find_next_and_bit with others
2019-01-04 13:13:46 -08:00
flex_proportions.c
gen_crc32table.c
lib/crc: Use consistent naming for CRC-32 polynomials
2018-07-27 19:04:33 +08:00
gen_crc64table.c
lib: don't depend on linux headers being installed.
2018-12-29 11:36:44 -08:00
genalloc.c
lib/genalloc.c: include vmalloc.h
2019-01-05 13:54:53 -08:00
generic-radix-tree.c
generic radix trees
2019-03-12 10:04:02 -07:00
glob.c
globtest.c
hexdump.c
hweight.c
x86/kconfig: Disable CONFIG_GENERIC_HWEIGHT and remove __HAVE_ARCH_SW_HWEIGHT
2019-05-13 11:07:33 +02:00
idr.c
treewide: Add SPDX license identifier for missed files
2019-05-21 10:50:45 +02:00
inflate.c
interval_tree.c
treewide: Add SPDX license identifier for missed files
2019-05-21 10:50:45 +02:00
interval_tree_test.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
iomap.c
iomap: introduce io{read|write}64_{lo_hi|hi_lo}
2019-01-22 13:39:59 +01:00
iomap_copy.c
iommu-helper.c
iommu-helper: mark iommu_is_span_boundary as inline
2018-05-09 06:55:44 +02:00
ioremap.c
lib/ioremap: ensure break-before-make is used for huge p4d mappings
2018-12-28 12:11:50 -08:00
iov_iter.c
treewide: Add SPDX license identifier for missed files
2019-05-21 10:50:45 +02:00
irq_poll.c
lib/irq_poll: Support schedules in non-interrupt contexts
2019-02-19 20:52:19 -07:00
irq_regs.c
is_single_threaded.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 36
2019-05-24 17:27:11 +02:00
jedec_ddr_data.c
kasprintf.c
Kconfig
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
Kconfig.debug
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
Kconfig.kasan
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
Kconfig.kgdb
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
Kconfig.ubsan
treewide: Add SPDX license identifier - Makefile/Kconfig
2019-05-21 10:50:46 +02:00
kfifo.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 61
2019-05-24 17:36:45 +02:00
klist.c
scsi: klist: Make it safe to use klists in atomic context
2018-07-02 16:20:23 -04:00
kobject.c
kobject: clean up the kobject add documentation a bit more
2019-05-03 08:26:51 +02:00
kobject_uevent.c
kobject: Don't trigger kobject_uevent(KOBJ_REMOVE) twice.
2019-04-01 07:37:12 +02:00
kstrtox.c
lib/kstrtox.c: delete unnecessary casts
2018-10-31 08:54:13 -07:00
kstrtox.h
libcrc32c.c
crypto: shash - remove shash_desc::flags
2019-04-25 15:38:12 +08:00
list_debug.c
lib/list_debug.c: print unmangled addresses
2018-04-11 10:28:35 -07:00
list_sort.c
lib/list_sort: optimize number of calls to comparison function
2019-05-14 19:52:49 -07:00
llist.c
locking-selftest-hardirq.h
locking-selftest-mutex.h
locking-selftest-rlock-hardirq.h
locking-selftest-rlock-softirq.h
locking-selftest-rlock.h
locking-selftest-rsem.h
locking-selftest-rtmutex.h
locking-selftest-softirq.h
locking-selftest-spin-hardirq.h
locking-selftest-spin-softirq.h
locking-selftest-spin.h
locking-selftest-wlock-hardirq.h
locking-selftest-wlock-softirq.h
locking-selftest-wlock.h
locking-selftest-wsem.h
locking-selftest.c
locking/lockdep: Make it easy to detect whether or not inside a selftest
2019-02-28 07:55:43 +01:00
lockref.c
lockref: Add lockref_put_not_zero
2018-04-12 09:41:19 -07:00
logic_pio.c
lru_cache.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 91
2019-05-24 17:37:53 +02:00
lshrdi3.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 120
2019-05-24 17:39:02 +02:00
Makefile
lib: Move mathematic helpers to separate folder
2019-05-14 19:52:49 -07:00
memcat_p.c
lib: Fix ia64 bootloader linkage
2018-10-16 13:45:44 +02:00
memory-notifier-error-inject.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
memweight.c
muldi3.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 120
2019-05-24 17:39:02 +02:00
net_utils.c
netdev-notifier-error-inject.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
nlattr.c
netlink: add validation of NLA_F_NESTED flag
2019-05-04 01:27:11 -04:00
nmi_backtrace.c
printk/nmi: Prevent deadlock when accessing the main log buffer in NMI
2018-07-09 14:10:40 +02:00
nodemask.c
notifier-error-inject.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
notifier-error-inject.h
objagg.c
lib: objagg: fix handling of object with 0 users when assembling hints
2019-02-14 12:41:54 -05:00
of-reconfig-notifier-error-inject.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
oid_registry.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 36
2019-05-24 17:27:11 +02:00
once.c
packing.c
lib: Add support for generic packing operations
2019-05-03 10:49:17 -04:00
parman.c
parser.c
lib/parser.c: switch match_number() over to use match_strdup()
2018-10-31 08:54:12 -07:00
pci_iomap.c
percpu-refcount.c
treewide: Add SPDX license identifier for missed files
2019-05-21 10:50:45 +02:00
percpu_counter.c
notifier: Remove notifier header file wherever not used
2018-08-30 12:56:40 +02:00
percpu_test.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
plist.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 10
2019-05-21 11:28:45 +02:00
pm-notifier-error-inject.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
radix-tree.c
radix tree: Don't return retry entries from lookup
2018-12-06 08:26:16 -05:00
random32.c
lib: Correct comment of prandom_seed
2019-05-17 11:32:47 -07:00
ratelimit.c
rbtree.c
rbtree_test.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
refcount.c
refcount_t: Add ACQUIRE ordering on success for dec(sub)_and_test() variants
2019-02-04 09:03:31 +01:00
rhashtable.c
rhashtable: Fix cmpxchg RCU warnings
2019-05-16 09:45:20 -07:00
sbitmap.c
sbitmap: fix improper use of smp_mb__before_atomic()
2019-05-23 10:25:26 -06:00
scatterlist.c
lib/scatterlist: Provide a DMA page iterator
2019-02-11 15:02:33 -07:00
seq_buf.c
seq_buf: Use size_t for len in seq_buf_puts()
2018-12-22 08:21:03 -05:00
sg_pool.c
treewide: Add SPDX license identifier for missed files
2019-05-21 10:50:45 +02:00
sg_split.c
sha1.c
sha256.c
kernel/kexec_file.c: move purgatories sha256 to common code
2018-04-13 17:10:28 -07:00
show_mem.c
lib/show_mem.c: drop pgdat_resize_lock in show_mem()
2018-12-28 12:11:49 -08:00
siphash.c
lib/siphash.c: mark expected switch fall-throughs
2019-04-25 19:47:24 +02:00
smp_processor_id.c
kprobes: Prohibit probing on preemption checking debug functions
2019-02-13 08:16:40 +01:00
sort.c
lib/sort: avoid indirect calls to built-in swap
2019-05-14 19:52:49 -07:00
stackdepot.c
lib/stackdepot: Remove obsolete functions
2019-04-29 12:37:57 +02:00
stmp_device.c
string.c
lib/string: Add strscpy_pad() function
2019-04-08 16:44:21 -06:00
string_helpers.c
nfsd: escape high characters in binary data
2019-07-03 17:52:50 -04:00
strncpy_from_user.c
mm/uaccess: Use 'unsigned long' to placate UBSAN warnings on older GCC versions
2019-04-24 12:19:45 +02:00
strnlen_user.c
mm/uaccess: Use 'unsigned long' to placate UBSAN warnings on older GCC versions
2019-04-24 12:19:45 +02:00
syscall.c
syscalls: Remove start and number from syscall_get_arguments() args
2019-04-05 09:26:43 -04:00
test-kstrtox.c
test-string_helpers.c
test_bitfield.c
bitfield: add tests
2018-06-27 18:58:49 +03:00
test_bitmap.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
test_bpf.c
bpf: test_bpf: turn off preemption in function __run_once
2019-02-25 22:18:07 +01:00
test_debug_virtual.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
test_firmware.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
test_hash.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
test_hexdump.c
test_hexdump: use memcpy instead of strncpy
2018-11-30 12:13:15 -08:00
test_ida.c
test_ida: Fix lockdep warning
2018-10-15 16:31:29 -04:00
test_kasan.c
kasan: remove use after scope bugs detection.
2019-03-05 21:07:13 -08:00
test_kmod.c
lib/test_kmod.c: potential double free in error handling
2019-02-01 15:46:23 -08:00
test_list_sort.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
test_memcat_p.c
lib: Fix ia64 bootloader linkage
2018-10-16 13:45:44 +02:00
test_module.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
test_objagg.c
test_objagg: Uninitialized variable in error handling
2019-02-13 22:13:29 -08:00
test_overflow.c
test_overflow: Add shift overflow tests
2018-08-08 09:47:26 -06:00
test_parman.c
test_printf.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
test_rhashtable.c
rhashtable: move dereference inside rht_ptr()
2019-04-12 17:34:45 -07:00
test_siphash.c
test_sort.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
test_stackinit.c
lib: Introduce test_stackinit module
2019-03-04 09:29:52 -08:00
test_static_key_base.c
test_static_keys.c
test_string.c
treewide: Add SPDX license identifier for more missed files
2019-05-21 10:50:45 +02:00
test_strscpy.c
lib: Add test module for strscpy_pad
2019-04-08 16:44:21 -06:00
test_sysctl.c
tools/testing/selftests/sysctl/sysctl.sh: add proc_do_large_bitmap() test case
2019-05-14 19:52:51 -07:00
test_ubsan.c
lib/test_ubsan.c: VLA no longer used in kernel
2019-03-07 18:32:00 -08:00
test_user_copy.c
test_uuid.c
test_vmalloc.c
lib/test_vmalloc.c:test_func(): eliminate local `ret'
2019-05-14 19:52:49 -07:00
test_xarray.c
XArray: Fix xa_reserve for 2-byte aligned entries
2019-02-21 17:54:44 -05:00
textsearch.c
textsearch: fix kernel-doc warnings and add kernel-api section
2018-04-16 18:53:13 -04:00
timerqueue.c
ts_bm.c
ts_fsm.c
ts_kmp.c
ubsan.c
Merge branch 'core-objtool-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2019-05-06 11:39:17 -07:00
ubsan.h
ubsan: Remove vla bound checks.
2019-05-06 11:12:09 -07:00
ucmpdi2.c
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 120
2019-05-24 17:39:02 +02:00
ucs2_string.c
lib/ucs2_string.c: add MODULE_LICENSE()
2018-06-07 17:34:39 -07:00
usercopy.c
Remove 'type' argument from access_ok() function
2019-01-03 18:57:57 -08:00
uuid.c
vsprintf.c
treewide: Add SPDX license identifier for missed files
2019-05-21 10:50:45 +02:00
win_minmax.c
xarray.c
XArray: Fix xa_reserve for 2-byte aligned entries
2019-02-21 17:54:44 -05:00
xxhash.c