if any above dlsym fails(for eg cam_driver_init), I think the init function will return. In that case, But `mfld_handle` is valid, thus when call function pointer of `cam_driver_init`, you'll get core dump.

So I'd suggest set a flag whether all symbols are successfully returned and use that flag to check.