+ new_set->hits = 0;
+ new_set->db = xstrdup(db);
+ init_delay(&new_set->search_delay);
+ init_delay(&new_set->present_delay);
+ init_delay(&new_set->fetch_delay);
+
+ db_sep = strchr(db, '?');
+ if (db_sep)
+ {
+ char **names;
+ char **values;
+ int no_parms = yaz_uri_to_array(db_sep+1, rr->stream, &names, &values);
+ int i;
+ for (i = 0; i < no_parms; i++)
+ {
+ const char *name = names[i];
+ const char *value = values[i];
+ if (!strcmp(name, "seed"))
+ srand(atoi(value));
+ else if (!strcmp(name, "search-delay"))
+ parse_delay(&new_set->search_delay, value);
+ else if (!strcmp(name, "present-delay"))
+ parse_delay(&new_set->present_delay, value);
+ else if (!strcmp(name, "fetch-delay"))
+ parse_delay(&new_set->fetch_delay, value);
+ else
+ {
+ rr->errcode = YAZ_BIB1_SERVICE_UNSUPP_FOR_THIS_DATABASE;
+ rr->errstring = odr_strdup(rr->stream, name);
+ }
+ }
+ }