diff --git a/source3/utils/net_registry.c b/source3/utils/net_registry.c index 19405e2..90276cd 100644 --- a/source3/utils/net_registry.c +++ b/source3/utils/net_registry.c @@ -958,14 +958,16 @@ static int net_registry_import(struct net_context *c, int argc, .createkey = (reg_import_callback_createkey_t)&import_create_key, .deletekey = (reg_import_callback_deletekey_t)&import_delete_key, .deleteval = (reg_import_callback_deleteval_t)&import_delete_val, - .setval.registry_value = (reg_import_callback_setval_registry_value_t) - &import_create_val, .setval_type = REGISTRY_VALUE, .data = &import_ctx }; int ret; + /* some compliers don't like to initialize the union in the declaration */ + import_callback.setval.registry_value = (reg_import_callback_setval_registry_value_t) + &import_create_val; + if (argc < 1 || argc > 2 || c->display_usage) { d_printf("%s\n%s", _("Usage:"), diff --git a/source3/utils/net_rpc_registry.c b/source3/utils/net_rpc_registry.c index 20a6bda..b2d2bd6 100644 --- a/source3/utils/net_rpc_registry.c +++ b/source3/utils/net_rpc_registry.c @@ -1959,12 +1959,15 @@ static NTSTATUS rpc_registry_import_internal(struct net_context *c, .createkey = (reg_import_callback_createkey_t)&import_create_key, .deletekey = (reg_import_callback_deletekey_t)&import_delete_key, .deleteval = (reg_import_callback_deleteval_t)&import_delete_val, - .setval.blob = (reg_import_callback_setval_blob_t)&import_create_val, .setval_type = BLOB, .data = &import_ctx }; int ret; + + /* some compliers don't like to initialize the union in the declaration */ + import_callback.setval.blob = (reg_import_callback_setval_blob_t)&import_create_val; + if (argc < 1 || argc > 2 || c->display_usage) { d_printf("%s\n%s", _("Usage:"),