MySQL 8.0.40
Source Code Documentation
ACL_PROXY_USER Class Reference

#include <sql_auth_cache.h>

Inheritance diagram for ACL_PROXY_USER:
[legend]

Public Member Functions

 ACL_PROXY_USER ()=default
 
void init (const char *host_arg, const char *user_arg, const char *proxied_host_arg, const char *proxied_user_arg, bool with_grant_arg)
 
void init (MEM_ROOT *mem, const char *host_arg, const char *user_arg, const char *proxied_host_arg, const char *proxied_user_arg, bool with_grant_arg)
 
void init (TABLE *table, MEM_ROOT *mem)
 
bool get_with_grant ()
 
const char * get_user ()
 
const char * get_proxied_user ()
 
const char * get_proxied_host ()
 
void set_user (MEM_ROOT *mem, const char *user_arg)
 
void set_host (MEM_ROOT *mem, const char *host_arg)
 
bool check_validity (bool check_no_resolve)
 
bool matches (const char *host_arg, const char *user_arg, const char *ip_arg, const char *proxied_user_arg, bool any_proxy_user)
 
bool pk_equals (ACL_PROXY_USER *grant)
 
bool granted_on (const char *host_arg, const char *user_arg)
 
void print_grant (THD *thd, String *str)
 
void set_data (ACL_PROXY_USER *grant)
 
size_t get_user_length () const
 
size_t get_proxied_user_length () const
 
- Public Member Functions inherited from ACL_ACCESS
 ACL_ACCESS ()
 

Static Public Member Functions

static bool auth_element_equals (const char *a, const char *b)
 
static int store_pk (TABLE *table, const LEX_CSTRING &host, const LEX_CSTRING &user, const LEX_CSTRING &proxied_host, const LEX_CSTRING &proxied_user)
 
static int store_with_grant (TABLE *table, bool with_grant)
 
static int store_data_record (TABLE *table, const LEX_CSTRING &host, const LEX_CSTRING &user, const LEX_CSTRING &proxied_host, const LEX_CSTRING &proxied_user, bool with_grant, const char *grantor)
 

Private Types

enum  old_acl_proxy_users {
  MYSQL_PROXIES_PRIV_HOST , MYSQL_PROXIES_PRIV_USER , MYSQL_PROXIES_PRIV_PROXIED_HOST , MYSQL_PROXIES_PRIV_PROXIED_USER ,
  MYSQL_PROXIES_PRIV_WITH_GRANT , MYSQL_PROXIES_PRIV_GRANTOR , MYSQL_PROXIES_PRIV_TIMESTAMP
}
 

Private Attributes

const char * user
 
ACL_HOST_AND_IP proxied_host
 
const char * proxied_user
 
bool with_grant
 

Additional Inherited Members

- Public Attributes inherited from ACL_ACCESS
ACL_HOST_AND_IP host
 
ulong sort
 
Access_bitmask access
 

Member Enumeration Documentation

◆ old_acl_proxy_users

Enumerator
MYSQL_PROXIES_PRIV_HOST 
MYSQL_PROXIES_PRIV_USER 
MYSQL_PROXIES_PRIV_PROXIED_HOST 
MYSQL_PROXIES_PRIV_PROXIED_USER 
MYSQL_PROXIES_PRIV_WITH_GRANT 
MYSQL_PROXIES_PRIV_GRANTOR 
MYSQL_PROXIES_PRIV_TIMESTAMP 

Constructor & Destructor Documentation

◆ ACL_PROXY_USER()

ACL_PROXY_USER::ACL_PROXY_USER ( )
default

Member Function Documentation

◆ auth_element_equals()

static bool ACL_PROXY_USER::auth_element_equals ( const char *  a,
const char *  b 
)
inlinestatic

◆ check_validity()

bool ACL_PROXY_USER::check_validity ( bool  check_no_resolve)

◆ get_proxied_host()

const char * ACL_PROXY_USER::get_proxied_host ( )
inline

◆ get_proxied_user()

const char * ACL_PROXY_USER::get_proxied_user ( )
inline

◆ get_proxied_user_length()

size_t ACL_PROXY_USER::get_proxied_user_length ( ) const
inline

◆ get_user()

const char * ACL_PROXY_USER::get_user ( )
inline

◆ get_user_length()

size_t ACL_PROXY_USER::get_user_length ( ) const
inline

◆ get_with_grant()

bool ACL_PROXY_USER::get_with_grant ( )
inline

◆ granted_on()

bool ACL_PROXY_USER::granted_on ( const char *  host_arg,
const char *  user_arg 
)
inline

◆ init() [1/3]

void ACL_PROXY_USER::init ( const char *  host_arg,
const char *  user_arg,
const char *  proxied_host_arg,
const char *  proxied_user_arg,
bool  with_grant_arg 
)

◆ init() [2/3]

void ACL_PROXY_USER::init ( MEM_ROOT mem,
const char *  host_arg,
const char *  user_arg,
const char *  proxied_host_arg,
const char *  proxied_user_arg,
bool  with_grant_arg 
)

◆ init() [3/3]

void ACL_PROXY_USER::init ( TABLE table,
MEM_ROOT mem 
)

◆ matches()

bool ACL_PROXY_USER::matches ( const char *  host_arg,
const char *  user_arg,
const char *  ip_arg,
const char *  proxied_user_arg,
bool  any_proxy_user 
)

◆ pk_equals()

bool ACL_PROXY_USER::pk_equals ( ACL_PROXY_USER grant)

◆ print_grant()

void ACL_PROXY_USER::print_grant ( THD thd,
String str 
)

◆ set_data()

void ACL_PROXY_USER::set_data ( ACL_PROXY_USER grant)
inline

◆ set_host()

void ACL_PROXY_USER::set_host ( MEM_ROOT mem,
const char *  host_arg 
)

◆ set_user()

void ACL_PROXY_USER::set_user ( MEM_ROOT mem,
const char *  user_arg 
)

◆ store_data_record()

int ACL_PROXY_USER::store_data_record ( TABLE table,
const LEX_CSTRING host,
const LEX_CSTRING user,
const LEX_CSTRING proxied_host,
const LEX_CSTRING proxied_user,
bool  with_grant,
const char *  grantor 
)
static

◆ store_pk()

int ACL_PROXY_USER::store_pk ( TABLE table,
const LEX_CSTRING host,
const LEX_CSTRING user,
const LEX_CSTRING proxied_host,
const LEX_CSTRING proxied_user 
)
static

◆ store_with_grant()

int ACL_PROXY_USER::store_with_grant ( TABLE table,
bool  with_grant 
)
static

Member Data Documentation

◆ proxied_host

ACL_HOST_AND_IP ACL_PROXY_USER::proxied_host
private

◆ proxied_user

const char* ACL_PROXY_USER::proxied_user
private

◆ user

const char* ACL_PROXY_USER::user
private

◆ with_grant

bool ACL_PROXY_USER::with_grant
private

The documentation for this class was generated from the following files: