The structs are very small and just input parameters (the function should never change them), so can be easily passed as values instead of pointers. Making the code a bit easier to understand (the prototype alone makes clear that these are pure inputs), and - depending on cpu arch - gives compiler chance for better optimizations (register passing, l0 cache utilization, etc).
Signed-off-by: Enrico Weigelt, metux IT consult info@metux.net