- char **names;
- char **values;
- int no_parms = yaz_uri_to_array(db_args.c_str(),
- odr, &names, &values);
- const char **x_names = (const char **)
- odr_malloc(odr, (1 + no_parms) * sizeof(*x_names));
- const char **x_values = (const char **)
- odr_malloc(odr, (1 + no_parms) * sizeof(*x_values));
- int no_x_names = 0;
- int i;
- for (i = 0; i < no_parms; i++)
- {
- const char *name = names[i];
- const char *value = values[i];
- assert(name);
- assert(value);
- if (!strcmp(name, "user"))
- param_user = value;
- else if (!strcmp(name, "password"))
- param_password = value;
- else if (!strcmp(name, "proxy"))
- param_proxy = value;
- else if (!strcmp(name, "cproxysession"))
- ;
- else if (!strcmp(name, "realm"))
- realm = value;
- else if (name[0] == 'x' && name[1] == '-')
- {
- x_names[no_x_names] = name;
- x_values[no_x_names] = value;
- no_x_names++;
- }
- else
- {
- BackendPtr notfound;
- char *msg = (char*) odr_malloc(odr, strlen(name) + 30);
- *error = YAZ_BIB1_TEMPORARY_SYSTEM_ERROR;
- sprintf(msg, "Bad database argument: %s", name);
- *addinfo = msg;
- return notfound;
- }
+ const char *name = names[i];
+ const char *value = values[i];
+ assert(name);
+ assert(value);
+ if (!strcmp(name, "user"))
+ param_user = value;
+ else if (!strcmp(name, "password"))
+ param_password = value;
+ else if (!strcmp(name, "proxy"))
+ proxy = value;
+ else if (!strcmp(name, "cproxysession"))
+ {
+ out_names[no_out_args] = name;
+ out_values[no_out_args++] = value;