[ccan] CCAN Update for 2015-07
Rusty Russell
rusty at rustcorp.com.au
Sat Aug 1 22:21:13 AEST 2015
Hi all!
You can tell when I'm working on a new ccan-using project,
as I get an excuse to work on ccan/tools :)
Module of the Month: ccan/asearch
=================================
This makes using the standard binary search bsearch() typesafe
and friendly (asort does a similar thing for qsort). Instead of
creating a "cmp(const void *, const void *)", use your real pointer
types and you'll get the typesafety you expect. It also adds a third
void * context argument which is occasionally useful (and horrible if
you need it and don't have it).
New modules:
============
crypto/ripemd160: simple RIPEMD160 routines (can use openssl)
order: Module for comparison callbacks (thanks David Gibson)
Minor updates & bugfixes:
========================
asort: Use order module definitions
avl: Use definitions from order module
bitmap: Don't crash if allocation fails in bitmap_alloc0() & friends
(thanks Kirill Smelkov)
crypto/sha256: add benchmarks, fix open-ssl variant
daemonize: check setsid() return value, use _exit
(thanks Maxim Zakharov)
lqueue: Allow a queueu to be initialized from an existing back element
lstack: Allow a stack to be initialized from an existing top element
ntdb: don't overlap with test filenames: avoid spurious ccanlint fails.
opt: add opt_usage_exit_fail helper for easy "bad usage" messages.
short_types: Fix warning in test with -Wextra
(thanks Joel Stanley)
Tools updates:
=============
ccanlint: handle circular test-depends.
modfiles: new tool to list files in a module.
create-ccan-tree: fix nested modules with -a
Cheers,
Rusty.
More information about the ccan
mailing list