goto cleanup;
}
+ if (args->params.params_len > REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX) {
+ virReportError(VIR_ERR_RPC,
+ _("Too many migration parameters '%d' for limit '%d'"),
+ args->params.params_len, REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX);
+ goto cleanup;
+ }
+
if (!(dom = get_nonnull_domain(priv->conn, args->dom)))
goto cleanup;
goto cleanup;
}
+ if (args->params.params_len > REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX) {
+ virReportError(VIR_ERR_RPC,
+ _("Too many migration parameters '%d' for limit '%d'"),
+ args->params.params_len, REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX);
+ goto cleanup;
+ }
+
if (!(params = remoteDeserializeTypedParameters(args->params.params_val,
args->params.params_len,
0, &nparams)))
goto cleanup;
}
+ if (args->params.params_len > REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX) {
+ virReportError(VIR_ERR_RPC,
+ _("Too many migration parameters '%d' for limit '%d'"),
+ args->params.params_len, REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX);
+ goto cleanup;
+ }
+
if (!(params = remoteDeserializeTypedParameters(args->params.params_val,
args->params.params_len,
0, &nparams)))
goto cleanup;
}
+ if (args->params.params_len > REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX) {
+ virReportError(VIR_ERR_RPC,
+ _("Too many migration parameters '%d' for limit '%d'"),
+ args->params.params_len, REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX);
+ goto cleanup;
+ }
+
if (!(dom = get_nonnull_domain(priv->conn, args->dom)))
goto cleanup;
goto cleanup;
}
+ if (args->params.params_len > REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX) {
+ virReportError(VIR_ERR_RPC,
+ _("Too many migration parameters '%d' for limit '%d'"),
+ args->params.params_len, REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX);
+ goto cleanup;
+ }
+
if (!(params = remoteDeserializeTypedParameters(args->params.params_val,
args->params.params_len,
0, &nparams)))
goto cleanup;
}
+ if (args->params.params_len > REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX) {
+ virReportError(VIR_ERR_RPC,
+ _("Too many migration parameters '%d' for limit '%d'"),
+ args->params.params_len, REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX);
+ goto cleanup;
+ }
+
if (!(dom = get_nonnull_domain(priv->conn, args->dom)))
goto cleanup;
make_nonnull_domain(&args.dom, domain);
args.flags = flags;
+ if (nparams > REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX) {
+ virReportError(VIR_ERR_RPC,
+ _("Too many migration parameters '%d' for limit '%d'"),
+ nparams, REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX);
+ goto cleanup;
+ }
+
if (remoteSerializeTypedParameters(params, nparams,
&args.params.params_val,
&args.params.params_len) < 0) {
memset(&args, 0, sizeof(args));
memset(&ret, 0, sizeof(ret));
+ if (nparams > REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX) {
+ virReportError(VIR_ERR_RPC,
+ _("Too many migration parameters '%d' for limit '%d'"),
+ nparams, REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX);
+ goto cleanup;
+ }
+
if (remoteSerializeTypedParameters(params, nparams,
&args.params.params_val,
&args.params.params_len) < 0) {
memset(&args, 0, sizeof(args));
memset(&ret, 0, sizeof(ret));
+ if (nparams > REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX) {
+ virReportError(VIR_ERR_RPC,
+ _("Too many migration parameters '%d' for limit '%d'"),
+ nparams, REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX);
+ goto cleanup;
+ }
+
args.cookie_in.cookie_in_val = (char *)cookiein;
args.cookie_in.cookie_in_len = cookieinlen;
args.flags = flags;
memset(&args, 0, sizeof(args));
memset(&ret, 0, sizeof(ret));
+ if (nparams > REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX) {
+ virReportError(VIR_ERR_RPC,
+ _("Too many migration parameters '%d' for limit '%d'"),
+ nparams, REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX);
+ goto cleanup;
+ }
+
make_nonnull_domain(&args.dom, dom);
args.dconnuri = dconnuri == NULL ? NULL : (char **) &dconnuri;
args.cookie_in.cookie_in_val = (char *)cookiein;
memset(&args, 0, sizeof(args));
memset(&ret, 0, sizeof(ret));
+ if (nparams > REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX) {
+ virReportError(VIR_ERR_RPC,
+ _("Too many migration parameters '%d' for limit '%d'"),
+ nparams, REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX);
+ goto cleanup;
+ }
+
args.cookie_in.cookie_in_val = (char *)cookiein;
args.cookie_in.cookie_in_len = cookieinlen;
args.flags = flags;
memset(&args, 0, sizeof(args));
+ if (nparams > REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX) {
+ virReportError(VIR_ERR_RPC,
+ _("Too many migration parameters '%d' for limit '%d'"),
+ nparams, REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX);
+ goto cleanup;
+ }
+
make_nonnull_domain(&args.dom, domain);
args.cookie_in.cookie_in_len = cookieinlen;
args.cookie_in.cookie_in_val = (char *) cookiein;
*/
const REMOTE_NODE_MEMORY_PARAMETERS_MAX = 64;
+/* Upper limit on migrate parameters */
+const REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX = 64;
+
/* UUID. VIR_UUID_BUFLEN definition comes from libvirt.h */
typedef opaque remote_uuid[VIR_UUID_BUFLEN];
struct remote_domain_migrate_begin3_params_args {
remote_nonnull_domain dom;
- remote_typed_param params<>;
+ remote_typed_param params<REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX>;
unsigned int flags;
};
};
struct remote_domain_migrate_prepare3_params_args {
- remote_typed_param params<>;
+ remote_typed_param params<REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX>;
opaque cookie_in<REMOTE_MIGRATE_COOKIE_MAX>;
unsigned int flags;
};
};
struct remote_domain_migrate_prepare_tunnel3_params_args {
- remote_typed_param params<>;
+ remote_typed_param params<REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX>;
opaque cookie_in<REMOTE_MIGRATE_COOKIE_MAX>;
unsigned int flags;
};
struct remote_domain_migrate_perform3_params_args {
remote_nonnull_domain dom;
remote_string dconnuri;
- remote_typed_param params<>;
+ remote_typed_param params<REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX>;
opaque cookie_in<REMOTE_MIGRATE_COOKIE_MAX>;
unsigned int flags;
};
};
struct remote_domain_migrate_finish3_params_args {
- remote_typed_param params<>;
+ remote_typed_param params<REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX>;
opaque cookie_in<REMOTE_MIGRATE_COOKIE_MAX>;
unsigned int flags;
int cancelled;
struct remote_domain_migrate_confirm3_params_args {
remote_nonnull_domain dom;
- remote_typed_param params<>;
+ remote_typed_param params<REMOTE_DOMAIN_MIGRATE_PARAM_LIST_MAX>;
opaque cookie_in<REMOTE_MIGRATE_COOKIE_MAX>;
unsigned int flags;
int cancelled;