cosmetics
This commit is contained in:
parent
f29f111fdc
commit
da0f380b18
@ -1318,7 +1318,7 @@ static int mongo_del_admin_user(const u08bits *usname)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int mongo_list_admin_users(void)
|
||||
static int mongo_list_admin_users(int no_print)
|
||||
{
|
||||
const char * collection_name = "admin_user";
|
||||
mongoc_collection_t * collection = mongo_get_collection(collection_name);
|
||||
@ -1352,6 +1352,7 @@ static int mongo_list_admin_users(void)
|
||||
bson_iter_t iter;
|
||||
bson_iter_t iter_realm;
|
||||
const char * value;
|
||||
ret = 0;
|
||||
while (mongoc_cursor_next(cursor, &item)) {
|
||||
if (bson_iter_init(&iter, item) && bson_iter_find(&iter, "name") && BSON_ITER_HOLDS_UTF8(&iter)) {
|
||||
value = bson_iter_utf8(&iter, &length);
|
||||
@ -1360,16 +1361,18 @@ static int mongo_list_admin_users(void)
|
||||
if (bson_iter_init(&iter_realm, item) && bson_iter_find(&iter_realm, "realm") && BSON_ITER_HOLDS_UTF8(&iter_realm)) {
|
||||
realm = bson_iter_utf8(&iter_realm, &length);
|
||||
}
|
||||
if(realm && *realm) {
|
||||
printf("%s[%s]\n", value, realm);
|
||||
} else {
|
||||
printf("%s\n", value);
|
||||
++ret;
|
||||
if(!no_print) {
|
||||
if(realm && *realm) {
|
||||
printf("%s[%s]\n", value, realm);
|
||||
} else {
|
||||
printf("%s\n", value);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
mongoc_cursor_destroy(cursor);
|
||||
ret = 0;
|
||||
}
|
||||
mongoc_collection_destroy(collection);
|
||||
bson_destroy(&query);
|
||||
|
||||
@ -1189,7 +1189,7 @@ static int mysql_del_admin_user(const u08bits *usname)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int mysql_list_admin_users(void)
|
||||
static int mysql_list_admin_users(int no_print)
|
||||
{
|
||||
int ret = -1;
|
||||
char statement[TURN_LONG_STRING_SIZE];
|
||||
@ -1207,12 +1207,14 @@ static int mysql_list_admin_users(void)
|
||||
} else if(mysql_field_count(myc)!=2) {
|
||||
TURN_LOG_FUNC(TURN_LOG_LEVEL_ERROR, "Unknown error retrieving MySQL DB information: %s\n",statement);
|
||||
} else {
|
||||
ret = 0;
|
||||
for(;;) {
|
||||
MYSQL_ROW row = mysql_fetch_row(mres);
|
||||
if(!row) {
|
||||
break;
|
||||
} else {
|
||||
if(row[0]) {
|
||||
++ret;
|
||||
if(row[0] && !no_print) {
|
||||
if(row[1] && row[1][0]) {
|
||||
printf("%s[%s]\n",row[0],row[1]);
|
||||
} else {
|
||||
@ -1221,7 +1223,6 @@ static int mysql_list_admin_users(void)
|
||||
}
|
||||
}
|
||||
}
|
||||
ret = 0;
|
||||
}
|
||||
|
||||
if(mres)
|
||||
|
||||
@ -920,7 +920,7 @@ static int pgsql_del_admin_user(const u08bits *usname)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int pgsql_list_admin_users(void)
|
||||
static int pgsql_list_admin_users(int no_print)
|
||||
{
|
||||
int ret = -1;
|
||||
char statement[TURN_LONG_STRING_SIZE];
|
||||
@ -934,9 +934,11 @@ static int pgsql_list_admin_users(void)
|
||||
TURN_LOG_FUNC(TURN_LOG_LEVEL_ERROR, "Error retrieving PostgreSQL DB information: %s\n",PQerrorMessage(pqc));
|
||||
} else {
|
||||
int i = 0;
|
||||
ret = 0;
|
||||
for(i=0;i<PQntuples(res);i++) {
|
||||
char *kval = PQgetvalue(res,i,0);
|
||||
if(kval) {
|
||||
++ret;
|
||||
if(kval && !no_print) {
|
||||
char *rval = PQgetvalue(res,i,1);
|
||||
if(rval && *rval) {
|
||||
printf("%s[%s]\n",kval,rval);
|
||||
@ -945,7 +947,6 @@ static int pgsql_list_admin_users(void)
|
||||
}
|
||||
}
|
||||
}
|
||||
ret = 0;
|
||||
}
|
||||
if(res) {
|
||||
PQclear(res);
|
||||
|
||||
@ -1288,7 +1288,7 @@ static int redis_del_admin_user(const u08bits *usname) {
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int redis_list_admin_users(void)
|
||||
static int redis_list_admin_users(int no_print)
|
||||
{
|
||||
int ret = -1;
|
||||
donot_print_connection_success = 1;
|
||||
@ -1320,22 +1320,25 @@ static int redis_list_admin_users(void)
|
||||
}
|
||||
}
|
||||
|
||||
ret = 0;
|
||||
for(isz=0;isz<keys.sz;++isz) {
|
||||
char *s = keys.secrets[isz];
|
||||
s += strlen("turn/admin_user/");
|
||||
u08bits realm[STUN_MAX_REALM_SIZE];
|
||||
password_t pwd;
|
||||
if(redis_get_admin_user((const u08bits*)s,realm,pwd) == 0) {
|
||||
if(realm[0]) {
|
||||
printf("%s[%s]\n",s,realm);
|
||||
} else {
|
||||
printf("%s\n",s);
|
||||
++ret;
|
||||
if(!no_print) {
|
||||
if(realm[0]) {
|
||||
printf("%s[%s]\n",s,realm);
|
||||
} else {
|
||||
printf("%s\n",s);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
clean_secrets_list(&keys);
|
||||
ret = 0;
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -1241,7 +1241,7 @@ static int sqlite_del_admin_user(const u08bits *usname)
|
||||
return ret;
|
||||
}
|
||||
|
||||
static int sqlite_list_admin_users(void)
|
||||
static int sqlite_list_admin_users(int no_print)
|
||||
{
|
||||
int ret = -1;
|
||||
char statement[TURN_LONG_STRING_SIZE];
|
||||
@ -1266,12 +1266,16 @@ static int sqlite_list_admin_users(void)
|
||||
const char* kval = (const char*) sqlite3_column_text(st, 0);
|
||||
const char* rval = (const char*) sqlite3_column_text(st, 1);
|
||||
|
||||
if (rval && *rval) {
|
||||
printf("%s[%s]\n", kval, rval);
|
||||
} else {
|
||||
printf("%s\n", kval);
|
||||
if(!no_print) {
|
||||
if (rval && *rval) {
|
||||
printf("%s[%s]\n", kval, rval);
|
||||
} else {
|
||||
printf("%s\n", kval);
|
||||
}
|
||||
}
|
||||
|
||||
++ret;
|
||||
|
||||
} else if (res == SQLITE_DONE) {
|
||||
break;
|
||||
} else {
|
||||
|
||||
@ -72,7 +72,7 @@ typedef struct _turn_dbdriver_t {
|
||||
int (*get_admin_user)(const u08bits *usname, u08bits *realm, password_t pwd);
|
||||
int (*set_admin_user)(const u08bits *usname, const u08bits *realm, const password_t pwd);
|
||||
int (*del_admin_user)(const u08bits *usname);
|
||||
int (*list_admin_users)(void);
|
||||
int (*list_admin_users)(int no_print);
|
||||
} turn_dbdriver_t;
|
||||
|
||||
/////////// USER DB CHECK //////////////////
|
||||
|
||||
@ -1536,7 +1536,7 @@ static void https_print_page_header(struct str_buffer *sb)
|
||||
str_buffer_append(sb,"<br>\r\n");
|
||||
}
|
||||
|
||||
static void https_finish_page(struct str_buffer *sb, ioa_socket_handle s)
|
||||
static void https_finish_page(struct str_buffer *sb, ioa_socket_handle s, int cclose)
|
||||
{
|
||||
str_buffer_append(sb,"</body>\r\n</html>\r\n");
|
||||
|
||||
@ -1544,6 +1544,9 @@ static void https_finish_page(struct str_buffer *sb, ioa_socket_handle s)
|
||||
send_str_from_ioa_socket_tcp(s,TURN_SOFTWARE);
|
||||
send_str_from_ioa_socket_tcp(s,"\r\n");
|
||||
send_str_from_ioa_socket_tcp(s,get_http_date_header());
|
||||
if(cclose) {
|
||||
send_str_from_ioa_socket_tcp(s,"Connection: close");
|
||||
}
|
||||
send_str_from_ioa_socket_tcp(s,"Content-Type: text/html; charset=UTF-8\r\nContent-Length: ");
|
||||
|
||||
send_ulong_from_ioa_socket_tcp(s,str_buffer_get_str_len(sb));
|
||||
@ -1574,18 +1577,31 @@ static void write_https_logon_page(ioa_socket_handle s)
|
||||
|
||||
https_print_top_page_header(sb);
|
||||
|
||||
str_buffer_append(sb,"<br><br>\r\n");
|
||||
str_buffer_append(sb,"<form action=\"");
|
||||
str_buffer_append(sb,form_names[AS_FORM_LOGON].name);
|
||||
str_buffer_append(sb,"\" method=\"POST\">\r\n");
|
||||
str_buffer_append(sb," <fieldset><legend>Admin user information:</legend> user name:<br><input required type=\"text\" name=\"");
|
||||
str_buffer_append(sb,HR_USERNAME);
|
||||
str_buffer_append(sb,"\" value=\"\"><br>password:<br><input required type=\"password\" name=\"");
|
||||
str_buffer_append(sb,HR_PASSWORD);
|
||||
str_buffer_append(sb,"\" value=\"\"><br><br><input type=\"submit\" value=\"Login\"></fieldset>\r\n");
|
||||
str_buffer_append(sb,"</form>\r\n");
|
||||
int we_have_admin_users = 0;
|
||||
const turn_dbdriver_t * dbd = get_dbdriver();
|
||||
if (dbd && dbd->list_admin_users) {
|
||||
int ausers = dbd->list_admin_users(1);
|
||||
if(ausers>0) {
|
||||
we_have_admin_users = 1;
|
||||
}
|
||||
}
|
||||
|
||||
https_finish_page(sb,s);
|
||||
if(!we_have_admin_users) {
|
||||
str_buffer_append(sb,"<br>To use the HTTPS admin connection, you have to set the database table <b><i>admin_user</i></b> with the admin user accounts.<br>\r\n");
|
||||
} else {
|
||||
str_buffer_append(sb,"<br><br>\r\n");
|
||||
str_buffer_append(sb,"<form action=\"");
|
||||
str_buffer_append(sb,form_names[AS_FORM_LOGON].name);
|
||||
str_buffer_append(sb,"\" method=\"POST\">\r\n");
|
||||
str_buffer_append(sb," <fieldset><legend>Admin user information:</legend> user name:<br><input required type=\"text\" name=\"");
|
||||
str_buffer_append(sb,HR_USERNAME);
|
||||
str_buffer_append(sb,"\" value=\"\"><br>password:<br><input required type=\"password\" name=\"");
|
||||
str_buffer_append(sb,HR_PASSWORD);
|
||||
str_buffer_append(sb,"\" value=\"\"><br><br><input type=\"submit\" value=\"Login\"></fieldset>\r\n");
|
||||
str_buffer_append(sb,"</form>\r\n");
|
||||
}
|
||||
|
||||
https_finish_page(sb,s,!we_have_admin_users);
|
||||
}
|
||||
}
|
||||
|
||||
@ -1676,7 +1692,7 @@ static void write_https_home_page(ioa_socket_handle s)
|
||||
str_buffer_append(sb,"</fieldset>\r\n");
|
||||
str_buffer_append(sb,"</form>\r\n");
|
||||
|
||||
https_finish_page(sb,s);
|
||||
https_finish_page(sb,s,0);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2132,7 +2148,7 @@ static void write_pc_page(ioa_socket_handle s)
|
||||
|
||||
str_buffer_append(sb,"\r\n</table>\r\n");
|
||||
|
||||
https_finish_page(sb,s);
|
||||
https_finish_page(sb,s,0);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2364,7 +2380,7 @@ static void write_ps_page(ioa_socket_handle s, const char* client_protocol, cons
|
||||
str_buffer_append_sz(sb,total_sz);
|
||||
str_buffer_append(sb,"<br>\r\n");
|
||||
|
||||
https_finish_page(sb,s);
|
||||
https_finish_page(sb,s,0);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2517,7 +2533,7 @@ static void write_users_page(ioa_socket_handle s, const u08bits *add_user, const
|
||||
str_buffer_append_sz(sb,total_sz);
|
||||
str_buffer_append(sb,"<br>\r\n");
|
||||
|
||||
https_finish_page(sb,s);
|
||||
https_finish_page(sb,s,0);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2651,7 +2667,7 @@ static void write_shared_secrets_page(ioa_socket_handle s, const char* add_secre
|
||||
str_buffer_append_sz(sb,total_sz);
|
||||
str_buffer_append(sb,"<br>\r\n");
|
||||
|
||||
https_finish_page(sb,s);
|
||||
https_finish_page(sb,s,0);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2784,7 +2800,7 @@ static void write_origins_page(ioa_socket_handle s, const char* add_origin, cons
|
||||
str_buffer_append_sz(sb,total_sz);
|
||||
str_buffer_append(sb,"<br>\r\n");
|
||||
|
||||
https_finish_page(sb,s);
|
||||
https_finish_page(sb,s,0);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -2937,7 +2953,7 @@ static void write_https_oauth_show_keys(ioa_socket_handle s, const char* kid)
|
||||
}
|
||||
}
|
||||
|
||||
https_finish_page(sb,s);
|
||||
https_finish_page(sb,s,0);
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -3173,7 +3189,7 @@ static void write_https_oauth_page(ioa_socket_handle s, const char* add_kid, con
|
||||
str_buffer_append_sz(sb,total_sz);
|
||||
str_buffer_append(sb,"<br>\r\n");
|
||||
|
||||
https_finish_page(sb,s);
|
||||
https_finish_page(sb,s,0);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -775,7 +775,7 @@ static int list_users(u08bits *realm, int is_admin)
|
||||
if (dbd) {
|
||||
if(is_admin) {
|
||||
if(dbd->list_admin_users) {
|
||||
(*dbd->list_admin_users)();
|
||||
(*dbd->list_admin_users)(0);
|
||||
}
|
||||
} else {
|
||||
if(dbd->list_users) {
|
||||
|
||||
Loading…
Reference in New Issue
Block a user