X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fyazproxy%2Fmodule.h;h=5769d8c0efcbb2c916edb9d8202a101058effd69;hb=8b633921805ae0410a059fc30698735311ad1e6d;hp=d701209876109a65a3a36cc791fd07b2d6498e55;hpb=66663d272496cedff1da574891413f90ce716b85;p=yazproxy-moved-to-github.git diff --git a/include/yazproxy/module.h b/include/yazproxy/module.h index d701209..5769d8c 100644 --- a/include/yazproxy/module.h +++ b/include/yazproxy/module.h @@ -1,7 +1,7 @@ -/* $Id: module.h,v 1.3 2005-05-30 20:09:20 adam Exp $ - Copyright (c) 1998-2005, Index Data. +/* $Id: module.h,v 1.7 2006-03-30 10:33:06 adam Exp $ + Copyright (c) 1998-2006, Index Data. -This file is part of the yaz-proxy. +This file is part of the yazproxy. YAZ proxy 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 @@ -37,16 +37,17 @@ struct Yaz_ProxyModule_int0 { void *(*init)(void); // Init handler - returns module-specific handle void (*destroy)( // Destroy handler - void *handle // module-specific handle as returned by init - ); + void *handle // module-specific handle as returned by init + ); int (*authenticate)( // Authenticate handler. Returns YAZPROXY_RET_.. - void *handle, // module-specific handle as returned by init - const char *name, // target name (or NULL if default target) - void *element_ptr, // xmlnodePtr thing to XML config this - const char *user, // User ID (or NULL if no suppliied User ID) - const char *group, // Group ID (or NULL if no supplied Group ID) - const char *pw // Password (or NULL if no supplied password) + void *handle, // module-specific handle as returned by init + const char *name, // target name (or NULL if default target) + void *element_ptr, // xmlnodePtr thing to XML config this + const char *user, // User ID (or NULL if no suppliied User ID) + const char *group, // Group ID (or NULL if no supplied Group ID) + const char *pw, // Password (or NULL if no supplied password) + const char *peer_IP// IP address of client ); }; @@ -58,14 +59,24 @@ class Yaz_ProxyModules { Yaz_ProxyModules(); ~Yaz_ProxyModules(); int authenticate(const char *module_name, - const char *target_name, void *element_ptr, - const char *user, - const char *group, - const char *password); + const char *target_name, void *element_ptr, + const char *user, + const char *group, + const char *password, + const char *peer_IP); int add_module(const char *fname); void unload_modules(); private: Yaz_ProxyModule *m_list; + int m_no_open; }; #endif +/* + * Local variables: + * c-basic-offset: 4 + * indent-tabs-mode: nil + * End: + * vim: shiftwidth=4 tabstop=8 expandtab + */ +