X-Git-Url: http://lists.indexdata.com/cgi-bin?a=blobdiff_plain;f=src%2Futil.cpp;h=f0ea1d6da360b57a645bda9c05904e4e1c9b0de9;hb=d15eeaaabd7e3f92ffe0215bd930bbc92b380e0f;hp=cf9a6a02bcc0d5e3bdb7d34b3948f7777bcecb8b;hpb=b70b9ec78f0ab1c3ed3b432de986159129a0e4ed;p=metaproxy-moved-to-github.git diff --git a/src/util.cpp b/src/util.cpp index cf9a6a0..f0ea1d6 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -1,4 +1,4 @@ -/* $Id: util.cpp,v 1.25 2007-01-25 14:05:54 adam Exp $ +/* $Id: util.cpp,v 1.27 2007-04-13 09:57:51 adam Exp $ Copyright (c) 2005-2007, Index Data. See the LICENSE file for details @@ -10,7 +10,8 @@ #include #include #include -#include // for yaz_query_to_wrbuf() +#include +#include #include @@ -215,7 +216,7 @@ std::string mp_util::zQueryToString(Z_Query *query) query_str = std::string(wrbuf_buf(w), wrbuf_len(w)); // destroy wrbuf - wrbuf_free(w, 1); + wrbuf_destroy(w); } } @@ -291,14 +292,17 @@ int mp_util::get_or_remove_vhost_otherinfo( std::list &vhosts) { int cat; + const int *oid_proxy = yaz_string_to_oid(yaz_oid_std(), + CLASS_USERINFO, + OID_STR_PROXY); for (cat = 1; ; cat++) { // check virtual host const char *vhost = - yaz_oi_get_string_oidval(otherInformation, - VAL_PROXY, - cat /* categoryValue */, - remove_flag /* delete flag */); + yaz_oi_get_string_oid(otherInformation, + oid_proxy, + cat /* categoryValue */, + remove_flag /* delete flag */); if (!vhost) break; vhosts.push_back(std::string(vhost)); @@ -327,10 +331,15 @@ void mp_util::set_vhost_otherinfo( { int cat; std::list::const_iterator it = vhosts.begin(); + + const int *oid_proxy = yaz_string_to_oid(yaz_oid_std(), + CLASS_USERINFO, + OID_STR_PROXY); + for (cat = 1; it != vhosts.end() ; cat++, it++) { - yaz_oi_set_string_oidval(otherInformation, odr, - VAL_PROXY, cat, it->c_str()); + yaz_oi_set_string_oid(otherInformation, odr, + oid_proxy, cat, it->c_str()); } } @@ -338,12 +347,16 @@ void mp_util::set_vhost_otherinfo( Z_OtherInformation **otherInformation, ODR odr, const std::string vhost, const int cat) { - yaz_oi_set_string_oidval(otherInformation, odr, - VAL_PROXY, cat, vhost.c_str()); + const int *oid_proxy = yaz_string_to_oid(yaz_oid_std(), + CLASS_USERINFO, + OID_STR_PROXY); + + yaz_oi_set_string_oid(otherInformation, odr, + oid_proxy, cat, vhost.c_str()); } void mp_util::split_zurl(std::string zurl, std::string &host, - std::list &db) + std::list &db) { const char *zurl_cstr = zurl.c_str(); const char *sep = strchr(zurl_cstr, '/');