Eric Biggers
aa7624093c
crypto: chacha - add XChaCha12 support
...
Now that the generic implementation of ChaCha20 has been refactored to
allow varying the number of rounds, add support for XChaCha12, which is
the XSalsa construction applied to ChaCha12. ChaCha12 is one of the
three ciphers specified by the original ChaCha paper
(https://cr.yp.to/chacha/chacha-20080128.pdf : "ChaCha, a variant of
Salsa20"), alongside ChaCha8 and ChaCha20. ChaCha12 is faster than
ChaCha20 but has a lower, but still large, security margin.
We need XChaCha12 support so that it can be used in the Adiantum
encryption mode, which enables disk/file encryption on low-end mobile
devices where AES-XTS is too slow as the CPUs lack AES instructions.
We'd prefer XChaCha20 (the more popular variant), but it's too slow on
some of our target devices, so at least in some cases we do need the
XChaCha12-based version. In more detail, the problem is that Adiantum
is still much slower than we're happy with, and encryption still has a
quite noticeable effect on the feel of low-end devices. Users and
vendors push back hard against encryption that degrades the user
experience, which always risks encryption being disabled entirely. So
we need to choose the fastest option that gives us a solid margin of
security, and here that's XChaCha12. The best known attack on ChaCha
breaks only 7 rounds and has 2^235 time complexity, so ChaCha12's
security margin is still better than AES-256's. Much has been learned
about cryptanalysis of ARX ciphers since Salsa20 was originally designed
in 2005, and it now seems we can be comfortable with a smaller number of
rounds. The eSTREAM project also suggests the 12-round version of
Salsa20 as providing the best balance among the different variants:
combining very good performance with a "comfortable margin of security".
Note that it would be trivial to add vanilla ChaCha12 in addition to
XChaCha12. However, it's unneeded for now and therefore is omitted.
As discussed in the patch that introduced XChaCha20 support, I
considered splitting the code into separate chacha-common, chacha20,
xchacha20, and xchacha12 modules, so that these algorithms could be
enabled/disabled independently. However, since nearly all the code is
shared anyway, I ultimately decided there would have been little benefit
to the added complexity.
Reviewed-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Acked-by: Martin Willi <martin@strongswan.org>
Signed-off-by: Eric Biggers <ebiggers@google.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
2018-11-20 14:26:55 +08:00
..
842
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
fonts
lib/fonts: convert comments to utf-8
2018-08-23 18:48:43 -07:00
lz4
lib/lz4: update LZ4 decompressor module
2018-10-31 08:54:14 -07:00
lzo
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
mpi
lib/mpi: remove redundant variable esign
2018-08-07 17:51:39 +08:00
raid6
RAID/s390: Remove VLA usage
2018-07-04 08:37:50 +02:00
reed_solomon
reed_solomon: Fix kernel-doc
2018-07-10 15:00:52 -06:00
xz
lib/xz: Put CRC32_POLY_LE in xz_private.h
2018-10-02 08:44:59 +10:00
zlib_deflate
zlib_inflate
lib/zlib_inflate/inflate.c: remove fall through warnings
2018-10-31 08:54:13 -07:00
zstd
lib: zstd: clean up Makefile for simpler composite object handling
2018-03-26 02:01:27 +09: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
move libgcc.h to include/linux
2017-12-01 13:09:40 -08:00
ashrdi3.c
move libgcc.h to include/linux
2017-12-01 13:09:40 -08:00
asn1_decoder.c
ASN.1: check for error from ASN1_OP_END__ACT actions
2017-12-08 15:13:27 +00:00
assoc_array.c
lib/assoc_array: Remove smp_read_barrier_depends()
2017-12-04 10:52:56 -08:00
atomic64.c
atomics/generic: Define atomic64_fetch_add_unless()
2018-06-21 14:25:21 +02:00
atomic64_test.c
lib/atomic64_test.c: add a test that atomic64_inc_not_zero() returns an int
2017-07-14 15:05:13 -07:00
audit.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
bcd.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
bch.c
lib/bch: fix possible stack overrun
2018-10-12 09:17:46 +02:00
bitmap.c
lib/bitmap.c: simplify bitmap_print_to_pagebuf()
2018-10-31 08:54:12 -07:00
bitrev.c
bsearch.c
lib/bsearch.c: micro-optimize pivot position calculation
2017-07-10 16:32:35 -07:00
btree.c
btree: avoid variable-length allocations
2018-03-14 16:55:29 -07:00
bucket_locks.c
ila: make lockdep happy again
2018-08-16 12:14:42 -07:00
bug.c
lib/bug.c: exclude non-BUG/WARN exceptions from report_bug()
2018-03-09 16:40:01 -08:00
build_OID_registry
bust_spinlocks.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
chacha.c
crypto: chacha - add XChaCha12 support
2018-11-20 14:26:55 +08:00
check_signature.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
checksum.c
clz_ctz.c
clz_tab.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
cmdline.c
lib/cmdline.c: remove meaningless comment
2017-09-08 18:26:49 -07:00
cmpdi2.c
move libgcc.h to include/linux
2017-12-01 13:09:40 -08:00
compat_audit.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
cordic.c
cpu_rmap.c
cpumask.c
memblock: stop using implicit alignment to SMP_CACHE_BYTES
2018-10-31 08:54:16 -07:00
crc-ccitt.c
lib/crc-ccitt: Add CCITT-FALSE CRC16 variant
2018-01-08 10:08:33 +00:00
crc-itu-t.c
crc-t10dif.c
crc-t10dif: crc_t10dif_mutex can be static
2018-09-14 14:08:52 +08:00
crc4.c
docs: clean up and add rest of CRC functions to kernel-api.rst
2017-09-26 15:01:20 -06:00
crc7.c
crc8.c
docs: clean up and add rest of CRC functions to kernel-api.rst
2017-09-26 15:01:20 -06:00
crc16.c
crc32.c
lib/crc32: make core crc32() routines weak so they can be overridden
2018-09-10 16:09:27 +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
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
debug_info.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
debug_locks.c
locking/lockdep: Make global debug_locks* variables read-mostly
2018-10-19 07:53:18 +02:00
debugobjects.c
debugobjects: Remove redundant NULL pointer check
2018-08-02 13:53:04 +02:00
dec_and_lock.c
atomic: Add irqsave variant of atomic_dec_and_lock()
2018-06-12 23:33:24 +02:00
decompress.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
decompress_bunzip2.c
lib: Use existing define with polynomial
2018-07-27 19:16:38 +08:00
decompress_inflate.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
decompress_unlz4.c
decompress_unlzma.c
decompress_unlzo.c
decompress_unxz.c
devres.c
devres: Add devm_of_iomap()
2018-07-23 15:22:39 +10:00
digsig.c
lib/digsig: fix dereference of NULL user_key_payload
2017-10-12 17:16:40 +01:00
div64.c
A relatively calm cycle for the docs tree again.
2017-11-13 08:25:06 -08:00
dump_stack.c
printk: move dump stack related code to lib/dump_stack.c
2018-03-15 13:25:36 +01:00
dynamic_debug.c
dynamic-debug-howto: fix optional/omitted ending line number to be LARGE instead of 0
2017-11-17 16:10:01 -08:00
dynamic_queue_limits.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2017-11-15 11:56:19 -08:00
earlycpio.c
error-inject.c
error-injection: Add injectable error types
2018-01-12 17:33:38 -08:00
errseq.c
errseq: Always report a writeback error once
2018-04-27 08:51:26 -04:00
extable.c
lib/extable.c: use bsearch() library function in search_extable()
2017-07-10 16:32:35 -07:00
fault-inject.c
fault-inject: fix wrong should_fail() decision in task context
2017-08-10 15:54:06 -07: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
lib: optimize cpumask_next_and()
2018-02-06 18:32:44 -08:00
find_bit_benchmark.c
lib/find_bit_benchmark.c: avoid soft lockup in test_find_first_bit()
2018-05-11 17:28:45 -07:00
flex_array.c
flex_proportions.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
gcd.c
lib/gcd: add kernel-doc notation
2017-10-07 10:45:14 -06:00
gen_crc32table.c
lib/crc: Use consistent naming for CRC-32 polynomials
2018-07-27 19:04:33 +08:00
gen_crc64table.c
lib: add crc64 calculation routines
2018-08-22 10:52:48 -07:00
genalloc.c
lib/genalloc.c: make the avail variable an atomic_long_t
2017-11-17 16:10:02 -08:00
glob.c
globtest.c
hexdump.c
lib/hexdump.c: return -EINVAL in case of error in hex2bin()
2017-09-08 18:26:49 -07:00
hweight.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
idr.c
radix tree: Remove radix_tree_update_node_t
2018-10-21 10:46:44 -04:00
inflate.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
int_sqrt.c
lib: Add strongly typed 64bit int_sqrt
2018-02-04 10:17:21 +00:00
interval_tree.c
interval_tree_test.c
treewide: kmalloc() -> kmalloc_array()
2018-06-12 16:19:22 -07:00
iomap.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +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
ioremap: Update pgtable free interfaces with addr
2018-07-04 21:37:08 +02:00
iov_iter.c
iov_iter: Add I/O discard iterator
2018-10-24 00:41:07 +01:00
irq_poll.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
irq_regs.c
is_single_threaded.c
jedec_ddr_data.c
kasprintf.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
Kconfig
RISC-V Patches for the 4.20 Merge Window, Part 2 v2
2018-10-31 16:20:28 -07:00
Kconfig.debug
mm: remove CONFIG_HAVE_MEMBLOCK
2018-10-31 08:54:15 -07:00
Kconfig.kasan
s390/kasan: add option for 4-level paging support
2018-10-09 11:21:29 +02:00
Kconfig.kgdb
lib: update location of kgdb documentation
2017-05-16 08:44:22 -03:00
Kconfig.ubsan
lib/ubsan: remove null-pointer checks
2018-08-10 20:19:58 -07:00
kfifo.c
treewide: kmalloc() -> kmalloc_array()
2018-06-12 16:19:22 -07:00
klist.c
scsi: klist: Make it safe to use klists in atomic context
2018-07-02 16:20:23 -04:00
kobject.c
Driver core patches for 4.19-rc1
2018-08-18 11:44:53 -07:00
kobject_uevent.c
netns: restrict uevents
2018-05-01 10:22:41 -04:00
kstrtox.c
lib/kstrtox.c: delete unnecessary casts
2018-10-31 08:54:13 -07:00
kstrtox.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
lcm.c
libcrc32c.c
libcrc32c: Add crc32c_impl function
2018-03-26 15:09:38 +02:00
list_debug.c
lib/list_debug.c: print unmangled addresses
2018-04-11 10:28:35 -07:00
list_sort.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
llist.c
locking/atomics: COCCINELLE/treewide: Convert trivial ACCESS_ONCE() patterns to READ_ONCE()/WRITE_ONCE()
2017-10-25 11:01:08 +02:00
locking-selftest-hardirq.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-mutex.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-rlock-hardirq.h
locking-selftest-rlock-softirq.h
locking-selftest-rlock.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-rsem.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-rtmutex.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-softirq.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-spin-hardirq.h
locking-selftest-spin-softirq.h
locking-selftest-spin.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-wlock-hardirq.h
locking-selftest-wlock-softirq.h
locking-selftest-wlock.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest-wsem.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
locking-selftest.c
locking: Implement an algorithm choice for Wound-Wait mutexes
2018-07-03 09:44:36 +02:00
lockref.c
lockref: Add lockref_put_not_zero
2018-04-12 09:41:19 -07:00
logic_pio.c
lib: Add generic PIO mapping method
2018-03-21 17:18:34 -05:00
lru_cache.c
treewide: kzalloc() -> kcalloc()
2018-06-12 16:19:22 -07:00
lshrdi3.c
move libgcc.h to include/linux
2017-12-01 13:09:40 -08:00
Makefile
crypto: chacha20-generic - refactor to allow varying number of rounds
2018-11-20 14:26:55 +08:00
memcat_p.c
lib: Fix ia64 bootloader linkage
2018-10-16 13:45:44 +02:00
memory-notifier-error-inject.c
memweight.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
muldi3.c
move libgcc.h to include/linux
2017-12-01 13:09:40 -08:00
net_utils.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
netdev-notifier-error-inject.c
nlattr.c
netlink: Add strict version of nlmsg_parse and nla_parse
2018-10-08 10:39:04 -07: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
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
notifier-error-inject.c
notifier-error-inject.h
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
of-reconfig-notifier-error-inject.c
oid_registry.c
509: fix printing uninitialized stack memory when OID is empty
2017-12-08 15:13:28 +00:00
once.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2017-11-04 09:26:51 +09: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
PCI: Add SPDX GPL-2.0 when no license was specified
2018-01-26 11:45:16 -06:00
percpu-refcount.c
percpu-refcount: Introduce percpu_ref_resurrect()
2018-09-26 15:11:29 -06:00
percpu_counter.c
notifier: Remove notifier header file wherever not used
2018-08-30 12:56:40 +02:00
percpu_test.c
plist.c
pm-notifier-error-inject.c
prime_numbers.c
radix-tree.c
radix tree: Remove multiorder support
2018-10-21 10:46:48 -04:00
random32.c
treewide: Switch DEFINE_TIMER callbacks to struct timer_list *
2017-11-21 15:57:05 -08:00
ratelimit.c
lib/ratelimit.c: use deferred printk() version
2017-10-03 17:54:26 -07:00
rational.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
rbtree.c
lib/rbtree,drm/mm: add rbtree_replace_node_cached()
2017-12-14 16:00:48 -08:00
rbtree_test.c
treewide: kmalloc() -> kmalloc_array()
2018-06-12 16:19:22 -07:00
reciprocal_div.c
lib: reciprocal_div: implement the improved algorithm on the paper mentioned
2018-07-07 01:45:31 +02:00
refcount.c
Linux 4.18-rc5
2018-07-17 09:27:43 +02:00
rhashtable.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
2018-08-27 11:59:39 -07:00
sbitmap.c
treewide: kzalloc_node() -> kcalloc_node()
2018-06-12 16:19:22 -07:00
scatterlist.c
for-linus-20180629
2018-06-30 10:47:46 -07:00
seq_buf.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
sg_pool.c
lib/sg_pool.c: remove unnecessary null check when freeing object
2018-10-31 08:54:13 -07:00
sg_split.c
sha1.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
sha256.c
kernel/kexec_file.c: move purgatories sha256 to common code
2018-04-13 17:10:28 -07:00
show_mem.c
siphash.c
smp_processor_id.c
lib: do not use print_symbol()
2018-01-05 15:24:00 +01:00
sort.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
stackdepot.c
lib/stackdepot.c: use a non-instrumented version of memcmp()
2018-02-06 18:32:44 -08:00
stmp_device.c
string.c
lib: Fix ia64 bootloader linkage
2018-10-16 13:45:44 +02:00
string_helpers.c
mm: treewide: remove GFP_TEMPORARY allocation flag
2017-09-13 18:53:16 -07:00
strncpy_from_user.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
strnlen_user.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
syscall.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01: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
lib/test_bitmap.c: fix bitmap optimisation tests to report errors correctly
2018-05-18 17:17:12 -07:00
test_bpf.c
bpf: test_bpf: add init_net to dev for flow_dissector
2018-09-27 21:09:45 +02:00
test_debug_virtual.c
lib/test_debug_virtual.c: make struct pointer foo static
2018-08-22 10:52:48 -07:00
test_firmware.c
treewide: Use array_size() in vzalloc()
2018-06-12 16:19:22 -07:00
test_hash.c
test_hexdump.c
lib/test_hexdump.c: fix failure on big endian cpu
2018-08-22 10:52:48 -07:00
test_ida.c
test_ida: Fix lockdep warning
2018-10-15 16:31:29 -04:00
test_kasan.c
lib/test_kasan.c: add tests for several string/memory API functions
2018-10-26 16:25:18 -07:00
test_kmod.c
treewide: Use array_size() in vzalloc()
2018-06-12 16:19:22 -07:00
test_list_sort.c
lib/test: delete five error messages for failed memory allocations
2017-11-17 16:10:01 -08:00
test_memcat_p.c
lib: Fix ia64 bootloader linkage
2018-10-16 13:45:44 +02:00
test_module.c
test_overflow.c
test_overflow: Add shift overflow tests
2018-08-08 09:47:26 -06:00
test_parman.c
test_printf.c
Revert "lib/test_printf.c: call wait_for_random_bytes() before plain %p tests"
2018-06-25 13:44:20 +02:00
test_rhashtable.c
rhashtable: remove nulls_base and related code.
2018-06-22 13:43:27 +09:00
test_siphash.c
test_sort.c
lib/test_sort.c: add module unload support
2018-02-06 18:32:45 -08:00
test_static_key_base.c
test_static_keys.c
test_string.c
lib: add module support to string tests
2017-11-17 16:10:01 -08:00
test_sysctl.c
test_sysctl: test against int proc_dointvec() array support
2017-07-12 16:26:00 -07:00
test_ubsan.c
lib/test_ubsan.c: make test_ubsan_misaligned_access() static
2018-04-11 10:28:35 -07:00
test_user_copy.c
treewide: simplify Kconfig dependencies for removed archs
2018-03-26 15:55:57 +02:00
test_uuid.c
uuid: fix incorrect uuid_equal conversion in test_uuid_test
2017-07-21 09:38:30 +02:00
test_xarray.c
xarray: Add range store functionality
2018-10-21 10:46:46 -04:00
textsearch.c
textsearch: fix kernel-doc warnings and add kernel-api section
2018-04-16 18:53:13 -04:00
timerqueue.c
timerqueue: Document return values of timerqueue_add/del()
2017-12-29 23:13:10 +01:00
ts_bm.c
ts_fsm.c
textsearch: fix typos in library helpers
2017-10-22 03:14:07 +01:00
ts_kmp.c
textsearch: fix typos in library helpers
2017-10-22 03:14:07 +01:00
ubsan.c
lib/ubsan: remove returns-nonnull-attribute checks
2018-02-06 18:32:46 -08:00
ubsan.h
lib/ubsan: remove returns-nonnull-attribute checks
2018-02-06 18:32:46 -08:00
ucmpdi2.c
Add notrace to lib/ucmpdi2.c
2018-04-23 16:39:35 +01:00
ucs2_string.c
lib/ucs2_string.c: add MODULE_LICENSE()
2018-06-07 17:34:39 -07:00
usercopy.c
Fix misannotated out-of-line _copy_to_user()
2017-12-11 09:35:11 -05:00
uuid.c
Documentation: add UUID/GUID to kernel-api
2017-12-11 15:03:08 -07:00
vsprintf.c
Devicetree updates for 4.20:
2018-10-26 12:09:58 -07:00
win_minmax.c
License cleanup: add SPDX GPL-2.0 license identifier to files with no license
2017-11-02 11:10:55 +01:00
xarray.c
xarray: Add range store functionality
2018-10-21 10:46:46 -04:00
xxhash.c
lib: Add xxhash module
2017-08-15 09:02:07 -07:00