vfs: check userland buffers before reading them.
[haiku.git] / src / servers / registrar / AuthenticationManager.h
blob849cd526b896ebdb98ee10f43d202f5b24b65ff2
1 /*
2 * Copyright 2008, Ingo Weinhold, ingo_weinhold@gmx.de. All Rights Reserved.
3 * Distributed under the terms of the MIT License.
4 */
5 #ifndef AUTHENTICATION_MANAGER_H
6 #define AUTHENTICATION_MANAGER_H
9 #include <OS.h>
12 namespace BPrivate {
13 class KMessage;
17 class AuthenticationManager {
18 public:
19 AuthenticationManager();
20 ~AuthenticationManager();
22 status_t Init();
24 private:
25 class FlatStore;
26 class User;
27 class Group;
28 class UserDB;
29 class GroupDB;
31 static status_t _RequestThreadEntry(void* data);
32 status_t _RequestThread();
34 status_t _InitPasswdDB();
35 status_t _InitGroupDB();
36 status_t _InitShadowPwdDB();
38 void _InvalidatePasswdDBReply();
39 void _InvalidateGroupDBReply();
40 void _InvalidateShadowPwdDBReply();
42 private:
43 port_id fRequestPort;
44 thread_id fRequestThread;
45 UserDB* fUserDB;
46 GroupDB* fGroupDB;
47 BPrivate::KMessage* fPasswdDBReply;
48 BPrivate::KMessage* fGroupDBReply;
49 BPrivate::KMessage* fShadowPwdDBReply;
53 #endif // AUTHENTICATION_MANAGER_H