linux-stable/lib
Johannes Berg 8aa26c575f netlink: make NLA_BINARY validation more flexible
Add range validation for NLA_BINARY, allowing validation of any
combination of combination minimum or maximum lengths, using the
existing NLA_POLICY_RANGE()/NLA_POLICY_FULL_RANGE() macros, just
like for integers where the value is checked.

Also make NLA_POLICY_EXACT_LEN(), NLA_POLICY_EXACT_LEN_WARN()
and NLA_POLICY_MIN_LEN() special cases of this, removing the old
types NLA_EXACT_LEN and NLA_MIN_LEN.

This allows us to save some code where both minimum and maximum
lengths are requires, currently the policy only allows maximum
(NLA_BINARY), minimum (NLA_MIN_LEN) or exact (NLA_EXACT_LEN), so
a range of lengths cannot be accepted and must be checked by the
code that consumes the attributes later.

Also, this allows advertising the correct ranges in the policy
export to userspace. Here, NLA_MIN_LEN and NLA_EXACT_LEN already
were special cases of NLA_BINARY with min and min/max length
respectively.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2020-08-18 12:28:45 -07:00
..
842 kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
crypto kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
dim kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
fonts kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
kunit kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
livepatch Kbuild updates for v5.9 2020-08-09 14:10:26 -07:00
lz4 lz4: fix kernel decompression speed 2020-08-14 19:56:56 -07:00
lzo kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
math lib/: replace HTTP links with HTTPS ones 2020-08-12 10:58:00 -07:00
mpi kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
pldmfw Add pldmfw library for PLDM firmware update 2020-07-28 17:07:06 -07:00
raid6 kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
reed_solomon kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
vdso vdso/treewide: Add vdso_data pointer argument to __arch_get_hw_counter() 2020-08-06 10:57:30 +02:00
xz lib/: replace HTTP links with HTTPS ones 2020-08-12 10:58:00 -07:00
zlib_deflate kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
zlib_dfltcc kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
zlib_inflate kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
zstd kbuild: trace functions in subdirectories of lib/ 2020-08-10 01:32:59 +09:00
.gitignore
argv_split.c
ashldi3.c
ashrdi3.c
asn1_decoder.c
assoc_array.c
atomic64.c
atomic64_test.c
audit.c
bcd.c
bch.c
bitmap.c lib/bitmap.c: fix bitmap_cut() for partial overlapping case 2020-08-12 10:57:59 -07:00
bitrev.c
bootconfig.c lib/bootconfig: Add override operator support 2020-08-03 16:22:28 -04:00
bsearch.c
btree.c
bucket_locks.c
bug.c
build_OID_registry
bust_spinlocks.c
check_signature.c
checksum.c arch, net: remove the last csum_partial_copy() leftovers 2020-07-20 17:45:32 -07:00
clz_ctz.c
clz_tab.c
cmdline.c
cmpdi2.c
compat_audit.c
cpu_rmap.c
cpumask.c lib: Restrict cpumask_local_spread to houskeeping CPUs 2020-07-08 11:39:01 +02:00
crc-ccitt.c
crc-itu-t.c
crc-t10dif.c crc-t10dif: clean up some more things 2020-06-18 17:26:43 +10:00
crc4.c
crc7.c
crc8.c
crc16.c
crc32.c docs: move remaining stuff under Documentation/*.txt to Documentation/staging 2020-06-19 14:17:05 -06:00
crc32defs.h
crc32test.c
crc64.c lib/: replace HTTP links with HTTPS ones 2020-08-12 10:58:00 -07:00
ctype.c
debug_info.c
debug_locks.c
debugobjects.c debugobjects: Convert to DEFINE_SHOW_ATTRIBUTE 2020-07-17 23:25:46 +02:00
dec_and_lock.c
decompress.c lib: Add zstd support to decompress 2020-07-31 11:49:08 +02:00
decompress_bunzip2.c lib/: replace HTTP links with HTTPS ones 2020-08-12 10:58:00 -07:00
decompress_inflate.c
decompress_unlz4.c
decompress_unlzma.c lib/: replace HTTP links with HTTPS ones 2020-08-12 10:58:00 -07:00
decompress_unlzo.c
decompress_unxz.c
decompress_unzstd.c lib: Add zstd support to decompress 2020-07-31 11:49:08 +02:00
devres.c lib: devres: add a comment about the devm_of_iomap() function 2020-07-10 14:15:55 +02:00
digsig.c
dump_stack.c
dynamic_debug.c dyndbg: export ddebug_exec_queries 2020-07-24 17:00:10 +02:00
dynamic_queue_limits.c
earlycpio.c
errname.c
error-inject.c
errseq.c
extable.c
fault-inject.c
fdt.c
fdt_addresses.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
flex_proportions.c
gen_crc32table.c
gen_crc64table.c
genalloc.c
generic-radix-tree.c
glob.c
globtest.c
hexdump.c
hweight.c
idr.c
inflate.c
interval_tree.c
interval_tree_test.c
iomap.c iomap: constify ioreadX() iomem argument (as in generic implementation) 2020-08-14 19:56:57 -07:00
iomap_copy.c
iommu-helper.c
iov_iter.c iov_iter: Move unnecessary inclusion of crypto/hash.h 2020-06-30 09:34:23 -04:00
irq_poll.c
irq_regs.c
is_single_threaded.c
kasprintf.c
Kconfig Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next 2020-08-05 20:13:21 -07:00
Kconfig.debug lib/Kconfig.debug: fix typo in the help text of CONFIG_PANIC_TIMEOUT 2020-08-12 10:58:02 -07:00
Kconfig.kasan kasan: update required compiler versions in documentation 2020-08-07 11:33:28 -07:00
Kconfig.kcsan kcsan: Re-add GCC as a supported compiler 2020-06-29 12:04:48 -07:00
Kconfig.kgdb kgdb: enable arch to support XML packet. 2020-07-09 20:09:28 -07:00
Kconfig.ubsan ubsan, kcsan: Don't combine sanitizer with kcov on clang 2020-06-11 20:03:59 +02:00
kfifo.c
klist.c
kobject.c kobject: Avoid premature parent object freeing in kobject_cleanup() 2020-07-10 14:14:37 +02:00
kobject_uevent.c
kstrtox.c kstrto*: do not describe simple_strto*() as obsolete/replaced 2020-08-12 10:58:00 -07:00
kstrtox.h
libcrc32c.c
linear_ranges.c
list-test.c
list_debug.c
list_sort.c
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
lockref.c
logic_pio.c
lru_cache.c
lshrdi3.c
Makefile lib/test_bits.c: add tests of GENMASK 2020-08-12 10:58:00 -07:00
memcat_p.c
memory-notifier-error-inject.c
memregion.c
memweight.c
muldi3.c
net_utils.c
netdev-notifier-error-inject.c
nlattr.c netlink: make NLA_BINARY validation more flexible 2020-08-18 12:28:45 -07:00
nmi_backtrace.c
nodemask.c
notifier-error-inject.c
notifier-error-inject.h
objagg.c
of-reconfig-notifier-error-inject.c
oid_registry.c
once.c
packing.c lib: packing: add documentation for pbuflen argument 2020-06-28 20:45:27 -07:00
parman.c
parser.c
pci_iomap.c
percpu-refcount.c
percpu_counter.c percpu_counter: add percpu_counter_sync() 2020-08-07 11:33:26 -07:00
percpu_test.c
plist.c
pm-notifier-error-inject.c
radix-tree.c treewide: Remove uninitialized_var() usage 2020-07-16 12:35:15 -07:00
random32.c random32: add a tracepoint for prandom_u32() 2020-08-13 15:11:14 -07:00
ratelimit.c
rbtree.c lib/: replace HTTP links with HTTPS ones 2020-08-12 10:58:00 -07:00
rbtree_test.c
refcount.c
rhashtable.c rhashtable: Restore RCU marking on rhash_lock_head 2020-07-28 17:09:49 -07:00
sbitmap.c sbitmap: Consider cleared bits in sbitmap_bitmap_show() 2020-07-01 10:53:00 -06:00
scatterlist.c
seq_buf.c seq_buf: Export seq_buf_printf 2020-06-15 18:22:43 -07:00
sg_pool.c
sg_split.c
sha1.c
show_mem.c
siphash.c
smp_processor_id.c
sort.c
stackdepot.c
stmp_device.c
string.c
string_helpers.c
strncpy_from_user.c
strnlen_user.c
syscall.c
test-kstrtox.c
test-string_helpers.c lib/test-string_helpers.c: Add string_upper() and string_lower() tests 2020-07-15 12:45:06 +03:00
test_bitfield.c
test_bitmap.c lib/test_bitmap.c: add test for bitmap_cut() 2020-08-12 10:57:59 -07:00
test_bitops.c lib/test_bitops: do the full test during module init 2020-08-12 10:57:59 -07:00
test_bits.c lib/test_bits.c: add tests of GENMASK 2020-08-12 10:58:00 -07:00
test_blackhole_dev.c
test_bpf.c bpf: revert "test_bpf: Flag tests that cannot be jited on s390" 2020-07-16 20:52:43 +02:00
test_debug_virtual.c
test_firmware.c Revert "test_firmware: Test platform fw loading on non-EFI systems" 2020-07-27 12:14:28 +02:00
test_fpu.c selftests/fpu: Add an FPU selftest 2020-06-29 10:02:23 +02:00
test_hash.c
test_hexdump.c
test_hmm.c mm/hmm/test: use the new migration invalidation 2020-07-28 16:20:33 -03:00
test_hmm_uapi.h mm/hmm: add tests for hmm_pfn_to_map_order() 2020-07-10 16:24:28 -03:00
test_ida.c
test_kasan.c kasan: adjust kasan_stack_oob for tag-based mode 2020-08-07 11:33:28 -07:00
test_kmod.c test_kmod: avoid potential double free in trigger_config_run_type() 2020-08-12 10:58:01 -07:00
test_linear_ranges.c
test_list_sort.c
test_lockup.c lib/test_lockup.c: fix return value of test_lockup_init() 2020-08-12 10:58:00 -07:00
test_memcat_p.c
test_meminit.c
test_min_heap.c
test_module.c
test_objagg.c test_objagg: Fix potential memory leak in error handling 2020-06-15 13:32:11 -07:00
test_overflow.c
test_parman.c
test_printf.c
test_rhashtable.c
test_siphash.c
test_sort.c
test_stackinit.c
test_static_key_base.c
test_static_keys.c
test_string.c
test_strscpy.c
test_sysctl.c
test_ubsan.c
test_user_copy.c
test_uuid.c
test_vmalloc.c lib/test_vmalloc.c: Add test cases for kvfree_rcu() 2020-06-29 11:59:26 -07:00
test_xarray.c
textsearch.c
timerqueue.c
ts_bm.c lib/: replace HTTP links with HTTPS ones 2020-08-12 10:58:00 -07:00
ts_fsm.c
ts_kmp.c
ubsan.c
ubsan.h
ucmpdi2.c
ucs2_string.c
usercopy.c
uuid.c
vsprintf.c lib/vsprintf: Force type of flags value for gfp_t 2020-08-01 12:52:57 +09:00
win_minmax.c
xarray.c
xxhash.c lib/: replace HTTP links with HTTPS ones 2020-08-12 10:58:00 -07:00