]>
Commit | Line | Data |
---|---|---|
e6ccf245 | 1 | /* |
ef57eb7b | 2 | * Copyright (C) 1996-2016 The Squid Software Foundation and contributors |
e6ccf245 | 3 | * |
bbc27441 AJ |
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. | |
e6ccf245 | 7 | */ |
8 | ||
97066760 AR |
9 | #ifndef SQUID_AUTH_GADGETS_H |
10 | #define SQUID_AUTH_GADGETS_H | |
e6ccf245 | 11 | |
2f1431ea AJ |
12 | #if USE_AUTH |
13 | ||
5817ee13 | 14 | #include "auth/Config.h" |
56a49fda | 15 | #include "auth/User.h" |
602d9612 | 16 | #include "hash.h" |
a2ac85d9 | 17 | |
c6cf8dee AJ |
18 | namespace Auth |
19 | { | |
20 | class Scheme; | |
21 | } | |
924f73bc | 22 | class ConnStateData; |
97066760 | 23 | class StoreEntry; |
e6ccf245 | 24 | |
63be0a78 | 25 | /** |
26 | \ingroup AuthAPI | |
27 | \todo this should be a generic cachemgr API type ? | |
28 | */ | |
e6ccf245 | 29 | typedef void AUTHSSTATS(StoreEntry *); |
e6ccf245 | 30 | |
63be0a78 | 31 | /// \ingroup AuthAPI |
8a648e8d | 32 | void authenticateInit(Auth::ConfigVector *); |
0bcb6908 AJ |
33 | |
34 | /** \ingroup AuthAPI | |
35 | * Remove all idle authentication state. Intended for use by reconfigure. | |
36 | * | |
37 | * Removes the username cache contents and global configuration state. | |
38 | * Stops just short of detaching the auth components completely. | |
39 | * | |
40 | * Currently active requests should finish. Howevee new requests will not use | |
41 | * authentication unless something causes the global config to be rebuilt. | |
42 | * Such as a configure load action adding config and re-running authenticateInit(). | |
43 | */ | |
8a648e8d | 44 | void authenticateReset(void); |
0bcb6908 | 45 | |
8a648e8d | 46 | void authenticateRotate(void); |
a2ac85d9 | 47 | |
63be0a78 | 48 | /// \ingroup AuthAPI |
8a648e8d | 49 | void authenticateFreeProxyAuthUserACLResults(void *data); |
63be0a78 | 50 | /// \ingroup AuthAPI |
8a648e8d | 51 | int authenticateActiveSchemeCount(void); |
63be0a78 | 52 | /// \ingroup AuthAPI |
8a648e8d | 53 | int authenticateSchemeCount(void); |
a2ac85d9 | 54 | |
63be0a78 | 55 | /// \ingroup AuthAPI |
8a648e8d | 56 | void authenticateOnCloseConnection(ConnStateData * conn); |
e6ccf245 | 57 | |
d2123755 FC |
58 | std::vector<Auth::User::Pointer> authenticateCachedUsersList(); |
59 | ||
2f1431ea | 60 | #endif /* USE_AUTH */ |
97066760 | 61 | #endif /* SQUID_AUTH_GADGETS_H */ |
f53969cc | 62 |