]> git.ipfire.org Git - thirdparty/squid.git/blame - src/auth/Gadgets.h
SourceFormat Enforcement
[thirdparty/squid.git] / src / auth / Gadgets.h
CommitLineData
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
18namespace Auth
19{
20class Scheme;
21}
924f73bc 22class ConnStateData;
97066760 23class StoreEntry;
e6ccf245 24
63be0a78 25/**
26 \ingroup AuthAPI
27 \todo this should be a generic cachemgr API type ?
28 */
e6ccf245 29typedef void AUTHSSTATS(StoreEntry *);
e6ccf245 30
63be0a78 31/// \ingroup AuthAPI
8a648e8d 32void 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 44void authenticateReset(void);
0bcb6908 45
8a648e8d 46void authenticateRotate(void);
a2ac85d9 47
63be0a78 48/// \ingroup AuthAPI
8a648e8d 49void authenticateFreeProxyAuthUserACLResults(void *data);
63be0a78 50/// \ingroup AuthAPI
8a648e8d 51int authenticateActiveSchemeCount(void);
63be0a78 52/// \ingroup AuthAPI
8a648e8d 53int authenticateSchemeCount(void);
a2ac85d9 54
63be0a78 55/// \ingroup AuthAPI
8a648e8d 56void authenticateOnCloseConnection(ConnStateData * conn);
e6ccf245 57
d2123755
FC
58std::vector<Auth::User::Pointer> authenticateCachedUsersList();
59
2f1431ea 60#endif /* USE_AUTH */
97066760 61#endif /* SQUID_AUTH_GADGETS_H */
f53969cc 62