-/* $Id: filter_auth_simple.cpp,v 1.23 2007-05-09 21:23:09 adam Exp $
- Copyright (c) 2005-2007, Index Data.
-
-This file is part of Metaproxy.
+/* This file is part of Metaproxy.
+ Copyright (C) 2005-2008 Index Data
Metaproxy is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free
for more details.
You should have received a copy of the GNU General Public License
-along with Metaproxy; see the file LICENSE. If not, write to the
-Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA
-02111-1307, USA.
- */
+along with this program; if not, write to the Free Software
+Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
+*/
#include "config.hpp"
// Read XML config.. Put config info in m_p.
-void mp::filter::AuthSimple::configure(const xmlNode * ptr)
+void mp::filter::AuthSimple::configure(const xmlNode * ptr, bool test_only)
{
std::string userRegisterName;
std::string targetRegisterName;
strerror(errno));
char buf[1000];
- while (fgets(buf, sizeof buf, fp)) {
+ while (fgets(buf, sizeof buf, fp))
+ {
if (*buf == '\n' || *buf == '#')
continue;
buf[strlen(buf)-1] = 0;
boost::split(tmp.dbs, databasesp, boost::is_any_of(","));
m_p->userRegister[buf] = tmp;
- if (0) { // debugging
+ if (0)
+ { // debugging
printf("Added user '%s' -> password '%s'\n", buf, passwdp);
std::list<std::string>::const_iterator i;
- for (i = tmp.dbs.begin(); i != tmp.dbs.end(); i++) {
+ for (i = tmp.dbs.begin(); i != tmp.dbs.end(); i++)
printf("db '%s'\n", (*i).c_str());
- }
}
}
+ fclose(fp);
}
Z_GDU *gdu = package.request().get();
mp::odr odr;
Z_APDU *apdu = odr.create_initResponse(gdu->u.z3950, err, addinfo);
- apdu->u.initResponse->implementationName = "YP2/YAZ";
*apdu->u.initResponse->result = 0; // reject
package.response() = apdu;
package.session().close();
std::list<std::string> authorisedTargets = m_p->targetsByUser[user];
std::list<std::string> targets;
- Z_OtherInformation *otherInfo = initReq->otherInfo;
- mp::util::get_vhost_otherinfo(otherInfo, targets);
+ Z_OtherInformation **otherInfo = &initReq->otherInfo;
+ mp::util::remove_vhost_otherinfo(otherInfo, targets);
// Check each of the targets specified in the otherInfo package
std::list<std::string>::iterator i;
YAZ_BIB1_ACCESS_TO_SPECIFIED_DATABASE_DENIED,
// ### It would be better to use the Z-db name
"all databases");
-
mp::odr odr;
- mp::util::set_vhost_otherinfo(&otherInfo, odr, targets);
+ mp::util::set_vhost_otherinfo(otherInfo, odr, targets);
package.move();
}