Use an opaque type for config arguments passed to callbacks, rather than void *.