myMPD
Internal API documentation
Loading...
Searching...
No Matches
utility.h
Go to the documentation of this file.
1/*
2 SPDX-License-Identifier: GPL-3.0-or-later
3 myMPD (c) 2018-2025 Juergen Mang <mail@jcgames.de>
4 https://github.com/jcorporation/mympd
5*/
6
11#ifndef MYMPD_WEB_SERVER_UTILITY_H
12#define MYMPD_WEB_SERVER_UTILITY_H
13
14#include "dist/mongoose/mongoose.h"
15#include "dist/sds/sds.h"
16#include "src/lib/list.h"
18
19#include <stdbool.h>
20
25 struct mg_connection *backend_nc;
26 //for websocket connections only
28 unsigned id;
29 time_t last_ws_ping;
30};
31
32bool webserver_enforce_acl(struct mg_connection *nc, sds acl);
33bool webserver_enforce_conn_limit(struct mg_connection *nc, int connection_count);
34struct mg_connection *get_nc_by_id(struct mg_mgr *mgr, unsigned long id);
35sds get_uri_param(struct mg_str *query, const char *name);
36sds print_ip(sds s, struct mg_addr *addr);
37bool get_partition_from_uri(struct mg_connection *nc, struct mg_http_message *hm, struct t_frontend_nc_data *frontend_nc_data);
38bool check_imagescache(struct mg_connection *nc, struct mg_http_message *hm,
39 struct t_mg_user_data *mg_user_data, const char *type, sds uri_decoded, int offset);
40sds webserver_find_image_file(sds basefilename);
41bool find_image_in_folder(sds *coverfile, sds music_directory, sds path, sds *names, int names_len);
42void webserver_handle_connection_close(struct mg_connection *nc);
43struct t_list *webserver_parse_arguments(struct mg_http_message *hm);
44
45#endif
Linked list implementation.
Webserver utility functions.
Definition utility.h:24
unsigned id
jsonrpc id (client id)
Definition utility.h:28
sds partition
partition
Definition utility.h:27
time_t last_ws_ping
last websocket ping from client
Definition utility.h:29
struct mg_connection * backend_nc
pointer to backend connection
Definition utility.h:25
Definition list.h:32
Definition mg_user_data.h:38
sds get_uri_param(struct mg_str *query, const char *name)
Definition utility.c:150
bool find_image_in_folder(sds *coverfile, sds music_directory, sds path, sds *names, int names_len)
Definition utility.c:257
bool get_partition_from_uri(struct mg_connection *nc, struct mg_http_message *hm, struct t_frontend_nc_data *frontend_nc_data)
Definition utility.c:173
bool check_imagescache(struct mg_connection *nc, struct mg_http_message *hm, struct t_mg_user_data *mg_user_data, const char *type, sds uri_decoded, int offset)
Definition utility.c:198
bool webserver_enforce_conn_limit(struct mg_connection *nc, int connection_count)
Definition utility.c:67
bool webserver_enforce_acl(struct mg_connection *nc, sds acl)
Definition utility.c:34
sds print_ip(sds s, struct mg_addr *addr)
Definition utility.c:130
struct t_list * webserver_parse_arguments(struct mg_http_message *hm)
Definition utility.c:100
sds webserver_find_image_file(sds basefilename)
Definition utility.c:226
void webserver_handle_connection_close(struct mg_connection *nc)
Definition utility.c:278
struct mg_connection * get_nc_by_id(struct mg_mgr *mgr, unsigned long id)
Definition utility.c:84