One of our tools reported that we copy a rather big structure around by value instead of pass by reference. This could impact the performance. You might want to look this. The biggest structure passed by value is: bin/default/librpc/gen_ndr/ndr_nbt_c.c:180: pass_by_value: Passing parameter _packet of type "struct netlogon_samlogon_response" (size 160 bytes) by value.