--- embedaddon/lighttpd/src/http_auth.h 2013/10/14 10:32:47 1.1.1.1 +++ embedaddon/lighttpd/src/http_auth.h 2016/11/02 10:35:00 1.1.1.2 @@ -1,5 +1,6 @@ #ifndef _HTTP_AUTH_H_ #define _HTTP_AUTH_H_ +#include "first.h" #include "server.h" #include "plugin.h" @@ -8,13 +9,15 @@ # define USE_LDAP # include #endif +#include typedef enum { AUTH_BACKEND_UNSET, AUTH_BACKEND_PLAIN, AUTH_BACKEND_LDAP, AUTH_BACKEND_HTPASSWD, - AUTH_BACKEND_HTDIGEST + AUTH_BACKEND_HTDIGEST, + AUTH_BACKEND_MYSQL } auth_backend_t; typedef struct { @@ -49,6 +52,23 @@ typedef struct { buffer *ldap_filter_pre; buffer *ldap_filter_post; #endif + + MYSQL *mysql_conn; + buffer *auth_mysql_host; + buffer *auth_mysql_user; + buffer *auth_mysql_pass; + buffer *auth_mysql_db; + buffer *auth_mysql_port; + buffer *auth_mysql_socket; + buffer *auth_mysql_users_table; + buffer *auth_mysql_col_user; + buffer *auth_mysql_col_pass; + buffer *auth_mysql_col_realm; + buffer *auth_mysql_domains_table; + buffer *auth_mysql_col_domain; + buffer *auth_mysql_domains_table_col_domain_id; + buffer *auth_mysql_users_table_col_domain_id; + } mod_auth_plugin_config; typedef struct { @@ -68,7 +88,7 @@ typedef struct { int http_auth_basic_check(server *srv, connection *con, mod_auth_plugin_data *p, array *req, const char *realm_str); int http_auth_digest_check(server *srv, connection *con, mod_auth_plugin_data *p, array *req, const char *realm_str); -int http_auth_digest_generate_nonce(server *srv, mod_auth_plugin_data *p, buffer *fn, char hh[33]); +int http_auth_digest_generate_nonce(server *srv, mod_auth_plugin_data *p, buffer *fn, char (*hh)[33]); int http_auth_match_rules(server *srv, array *req, const char *username, const char *group, const char *host); #endif