X-Git-Url: http://sru.miketaylor.org.uk/?a=blobdiff_plain;f=src%2Ffilter_virt_db.cpp;h=663c1bef44ad152e15a195ddb5be505f89c45fe0;hb=77dee8966dd1304a0fb8540c3fc68d02dc6ce84a;hp=aa5af9db2287a1bd29cf520c71281dfe59978e60;hpb=f26cca046b4879a78261ea436c3e21bb3b851b52;p=metaproxy-moved-to-github.git diff --git a/src/filter_virt_db.cpp b/src/filter_virt_db.cpp index aa5af9d..663c1be 100644 --- a/src/filter_virt_db.cpp +++ b/src/filter_virt_db.cpp @@ -1,4 +1,4 @@ -/* $Id: filter_virt_db.cpp,v 1.11 2005-10-30 17:13:36 adam Exp $ +/* $Id: filter_virt_db.cpp,v 1.14 2005-11-14 23:35:22 adam Exp $ Copyright (c) 2005, Index Data. %LICENSE% @@ -16,11 +16,9 @@ #include "filter_virt_db.hpp" #include -#include #include #include -#include #include #include @@ -69,6 +67,8 @@ namespace yp2 { } } +using namespace yp2; + yf::Virt_db_set::Virt_db_set(yp2::Session &id, std::string setname, std::string vhost, bool named_result_sets) : m_backend_session(id), m_backend_setname(setname), m_vhost(vhost), @@ -133,15 +133,10 @@ void yf::Virt_db::Rep::present(Package &package, Z_APDU *apdu, bool &move_later) Ses_it it = m_sessions.find(package.session()); if (it == m_sessions.end()) { - Z_APDU *apdu = zget_APDU(odr, Z_APDU_close); - - *apdu->u.close->closeReason = Z_Close_protocolError; - apdu->u.close->diagnosticInformation = - odr_strdup(odr, "no session for present request"); - - package.response() = apdu; + package.response() = odr.create_close( + Z_Close_protocolError, + "no session for present request"); package.session().close(); - return; } if (it->second.m_use_vhost) @@ -218,13 +213,9 @@ void yf::Virt_db::Rep::search(Package &package, Z_APDU *apdu, bool &move_later) Ses_it it = m_sessions.find(package.session()); if (it == m_sessions.end()) { - Z_APDU *apdu = zget_APDU(odr, Z_APDU_close); - - *apdu->u.close->closeReason = Z_Close_protocolError; - apdu->u.close->diagnosticInformation = - odr_strdup(odr, "no session for search request"); - - package.response() = apdu; + package.response() = odr.create_close( + Z_Close_protocolError, + "no session for search request"); package.session().close(); return; @@ -458,14 +449,10 @@ void yf::Virt_db::process(Package &package) const { yp2::odr odr; - Z_APDU *apdu = zget_APDU(odr, Z_APDU_close); - - *apdu->u.close->closeReason = Z_Close_protocolError; - - apdu->u.close->diagnosticInformation = - odr_strdup(odr, "unsupported APDU in filter_virt_db"); - - package.response() = apdu; + package.response() = odr.create_close( + Z_Close_protocolError, + "unsupported APDU in filter_virt_db"); + package.session().close(); } if (move_later)