- if (cert->custom_cli_ext_records_count)
- {
- ret->custom_cli_ext_records = BUF_memdup(cert->custom_cli_ext_records, sizeof(custom_cli_ext_record) * cert->custom_cli_ext_records_count);
- if (ret->custom_cli_ext_records == NULL)
- goto err;
- ret->custom_cli_ext_records_count =
- cert->custom_cli_ext_records_count;
- }
-
- if (cert->custom_srv_ext_records_count)
- {
- ret->custom_srv_ext_records = BUF_memdup(cert->custom_srv_ext_records, sizeof(custom_srv_ext_record) * cert->custom_srv_ext_records_count);
- if (ret->custom_srv_ext_records == NULL)
- goto err;
- ret->custom_srv_ext_records_count =
- cert->custom_srv_ext_records_count;
- }
-
+ if (!custom_exts_copy(&ret->cli_ext, &cert->cli_ext))
+ goto err;
+ if (!custom_exts_copy(&ret->srv_ext, &cert->srv_ext))
+ goto err;