{
int err;
- if (ccid->ccid_init == NULL)
- return -1;
-
ccids_write_lock();
err = -EEXIST;
if (ccids[ccid->ccid_id] == NULL) {
if (!try_module_get(ccid->ccid_owner))
goto out_err;
- if (ccid->ccid_init(sk) != 0)
+ if (ccid->ccid_init != NULL && ccid->ccid_init(sk) != 0)
goto out_module_put;
out:
ccids_read_unlock();