LoadableModule.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2022 The Squid Software Foundation and contributors
3  *
4  * Squid software is distributed under GPLv2+ license and includes
5  * contributions from numerous individuals and organizations.
6  * Please see the COPYING and CONTRIBUTORS files for details.
7  */
8 
9 #ifndef SQUID_LOADABLE_MODULE_H
10 #define SQUID_LOADABLE_MODULE_H
11 
12 #include "SquidString.h"
13 
14 // wrapper for dlopen(3), libltdl, and friends
16 {
17 public:
18  LoadableModule(const String &aName);
19  ~LoadableModule(); // unloads if loaded
20 
21  bool loaded() const;
22  const String &name() const { return theName; }
23  const String &error() const { return theError; }
24 
25  void load(); // throws Texc
26  void unload(); // throws Texc
27 
28 protected:
31  void *theHandle;
32 
33 private:
34  void *openModule();
35  bool closeModule();
36  const char *errorMsg();
37 };
38 
39 #endif
40 
const char * errorMsg()
const String & name() const
const String & error() const
LoadableModule(const String &aName)
void * openModule()
bool loaded() const

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors