17 #ifndef __AUTHENTICATION_CRAM_MD5_AUXPROP_HPP__
18 #define __AUTHENTICATION_CRAM_MD5_AUXPROP_HPP__
23 #include <sasl/sasl.h>
24 #include <sasl/saslplug.h>
46 static const char*
name() {
return "in-memory-auxprop"; }
50 synchronized (mutex) {
51 properties = _properties;
56 const std::string&
user,
57 const std::string&
name)
59 synchronized (mutex) {
60 if (properties.contains(user)) {
61 foreach (
const Property& property, properties.get(user)) {
62 if (property.
name == name) {
63 return property.values;
74 const sasl_utils_t* utils,
77 sasl_auxprop_plug_t** plug,
81 #if SASL_AUXPROP_PLUG_VERSION <= 4
87 sasl_server_params_t* sparams,
96 static sasl_auxprop_plug_t plugin;
100 static std::mutex mutex;
107 #endif // __AUTHENTICATION_CRAM_MD5_AUXPROP_HPP__
Definition: option.hpp:28
static Option< std::list< std::string > > lookup(const std::string &user, const std::string &name)
Definition: auxprop.hpp:55
Result< std::string > user(Option< uid_t > uid=None())
Definition: su.hpp:277
JSON::Object version()
Definition: version.hpp:32
std::list< std::string > values
Definition: auxprop.hpp:39
Definition: auxprop.hpp:36
static void load(const Multimap< std::string, Property > &_properties)
Definition: auxprop.hpp:48
Definition: auxprop.hpp:43
std::string name
Definition: auxprop.hpp:38
static int initialize(const sasl_utils_t *utils, int api, int *version, sasl_auxprop_plug_t **plug, const char *name)
Definition: multimap.hpp:30
static const char * name()
Definition: auxprop.hpp:46
#define flags
Definition: decoder.hpp:18