~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/security_context.h

Merge in security refactor.

Show diffs side-by-side

added added

removed removed

Lines of Context:
25
25
{
26
26
 
27
27
/**
28
 
  @class Security_context
 
28
  @class SecurityContext
29
29
  @brief A set of Session members describing the current authenticated user.
30
30
*/
31
31
 
32
 
class Security_context {
 
32
class SecurityContext {
33
33
public:
34
 
  Security_context() {}
35
 
  /*
36
 
    host - host of the client
37
 
    user - user of the client, set to NULL until the user has been read from
38
 
    the connection
39
 
    priv_user - The user privilege we are using. May be "" for anonymous user.
40
 
    ip - client IP
41
 
  */
 
34
  SecurityContext() {}
 
35
 
 
36
  const std::string& getIp() const
 
37
  {
 
38
    return ip;
 
39
  }
 
40
 
 
41
  void setIp(const char *newip)
 
42
  {
 
43
    ip.assign(newip);
 
44
  }
 
45
 
 
46
  const std::string& getUser() const
 
47
  {
 
48
    return user;
 
49
  }
 
50
 
 
51
  void setUser(const char *newuser)
 
52
  {
 
53
    user.assign(newuser);
 
54
  }
 
55
 
 
56
private:
42
57
  std::string user;
43
58
  std::string ip;
44
 
 
45
 
  void skip_grants();
46
 
  inline const char *priv_host_name()
47
 
  {
48
 
    return (ip.c_str() ? ip.c_str() : (char *)"%");
49
 
  }
50
59
};
51
60
 
52
61
} /* namespace drizzled */