summaryrefslogtreecommitdiff
path: root/src/server
diff options
context:
space:
mode:
Diffstat (limited to 'src/server')
-rw-r--r--src/server/common.h6
-rw-r--r--src/server/db.c15
-rw-r--r--src/server/server.c24
3 files changed, 21 insertions, 24 deletions
diff --git a/src/server/common.h b/src/server/common.h
index ffb98ec..4232de8 100644
--- a/src/server/common.h
+++ b/src/server/common.h
@@ -52,12 +52,8 @@ enum {
#endif
};
-AL_UNUSED_FUNCTION_PUSH
-
-static bool camu_is_url(str *s, u32 i)
+static inline bool camu_is_url(str *s, u32 i)
{
return al_str_cmp(s, &al_str_c("https://"), i, 8) == 0
|| al_str_cmp(s, &al_str_c("http://"), i, 7) == 0;
}
-
-AL_UNUSED_FUNCTION_POP
diff --git a/src/server/db.c b/src/server/db.c
index 3d44e11..fa768e2 100644
--- a/src/server/db.c
+++ b/src/server/db.c
@@ -1,3 +1,4 @@
+#define AL_LOG_SECTION "db"
#include <al/log.h>
#include <nnwt/file.h>
@@ -15,22 +16,20 @@ static void open_user(struct camu_server *server, struct nn_dir *camu_db, struct
if (!nn_file_open(&file, &path, 0)) {
goto out;
}
- str s;
- nn_file_read_as_str(&file, &s);
+ str buffer;
+ nn_file_read_as_str(&file, &buffer);
json_error_t error;
- json_t *root = json_loadb(s.data, s.length, 0, &error);
+ json_t *root = json_loadb(buffer.data, buffer.length, 0, &error);
+ al_str_free(&buffer);
if (!root) {
- al_log_error("server", "Failed to parse %.*s:%d:%d (%s).",
- al_str_fmt(&path), error.line, error.column, error.text);
- al_str_free(&s);
+ error("Failed to parse %.*s:%d:%d (%s).", al_str_x(&path), error.line, error.column, error.text);
goto out;
}
struct camu_user *user = al_alloc_object(struct camu_user);
al_str_from(&user->name, json_string_value(json_object_get(root, "username")));
- al_log_info("server", "Loaded user \"%.*s\"", al_str_fmt(&user->name));
+ info("Loaded user \"%.*s\"", al_str_x(&user->name));
al_array_push(server->users, user);
json_decref(root);
- al_str_free(&s);
out:
al_str_free(&path);
}
diff --git a/src/server/server.c b/src/server/server.c
index a1c3657..d7ff702 100644
--- a/src/server/server.c
+++ b/src/server/server.c
@@ -1,3 +1,4 @@
+#define AL_LOG_SECTION "server"
#include <al/log.h>
#include <al/lib.h>
@@ -106,7 +107,7 @@ static bool identify_callback(void *userdata, struct nn_rpc_connection *conn,
struct camu_server_node *node = al_alloc_object(struct camu_server_node);
node->conn = conn;
al_array_push(server->nodes, node);
- al_log_info("server", "New node.");
+ info("New node.");
break;
}
case CAMU_CLIENT: {
@@ -122,7 +123,7 @@ static bool identify_callback(void *userdata, struct nn_rpc_connection *conn,
}
client->user = user;
al_array_push(server->clients, client);
- al_log_info("server", "User \"%.*s\" logged in.", al_str_fmt(&user->name));
+ info("User \"%.*s\" logged in.", al_str_x(&user->name));
write_initial_user_state(server, user, rpacket);
break;
}
@@ -135,7 +136,7 @@ static bool identify_callback(void *userdata, struct nn_rpc_connection *conn,
sink->server = server;
al_array_push(server->sinks, sink);
handle_toggle_sink(server, &al_str_c("default"), sink, true);
- al_log_info("server", "New sink.");
+ info("New sink.");
break;
}
}
@@ -209,8 +210,9 @@ void handle_toggle_sink(struct camu_server *server, str *name, struct camu_serve
static void process_pending(struct camu_resource *resource)
{
array(struct lia_list_entry *) pending;
+ al_array_init(pending);
// resource->pending may be edited during a list_pump() call.
- al_array_clone(pending, resource->pending);
+ al_array_copy(pending, resource->pending);
resource->pending.count = 0;
struct lia_list_entry *entry;
al_array_foreach(pending, i, entry) {
@@ -282,7 +284,7 @@ static struct cch_entry *entry_from_post(struct camu_server *server, struct camu
}
}
if (!entry) {
- al_log_error("server", "Failed to load post media %.*s %u.", al_str_fmt(&post->unique_id), index);
+ error("Failed to load post media %.*s %u.", al_str_x(&post->unique_id), index);
return NULL;
}
entry->handler->maybe_spawn_worker(entry->handler, 0);
@@ -408,7 +410,7 @@ static void list_callback(void *userdata, u8 op, struct lia_list_entry *entry, v
}
switch (*(u8 *)opaque) {
case LIANA_META_CURRENT_CHANGED:
- al_log_info("server", "Now playing: %ls.", entry->name.data);
+ info("Now playing: %ls.", entry->name.data);
send_clients_current_changed(server, entry->list, entry);
break;
case LIANA_META_ADDED_ENTRY:
@@ -422,7 +424,7 @@ static void list_callback(void *userdata, u8 op, struct lia_list_entry *entry, v
send_clients_entry_seeked(server, entry->list, entry);
break;
case LIANA_META_ENTRY_ERRORED:
- al_log_error("server", "Failed to load: %ls.", entry->name.data);
+ error("Failed to load: %ls.", entry->name.data);
break;
case LIANA_META_ORDER_CHANGED:
break;
@@ -555,7 +557,7 @@ static void simple_search_portal_callback(void *userdata0, void *userdata1, stru
return;
}
// No return is the error case.
- al_log_warn("server", "Failed to process simple search request.");
+ warn("Failed to process simple search request.");
resource->load = LIANA_ENTRY_ERRORED;
}
#endif
@@ -746,7 +748,7 @@ static void connection_closed_callback(void *userdata, struct nn_rpc_connection
struct camu_server_node *node;
al_array_foreach(server->nodes, i, node) {
if (node->conn == conn) {
- al_log_info("server", "Node removed.");
+ info("Node removed.");
cleanup_node(node);
al_array_remove_at(server->nodes, i);
break;
@@ -756,7 +758,7 @@ static void connection_closed_callback(void *userdata, struct nn_rpc_connection
struct camu_server_client *client;
al_array_foreach(server->clients, i, client) {
if (client->conn == conn) {
- al_log_info("server", "User \"%.*s\" logged out.", al_str_fmt(&client->user->name));
+ info("User \"%.*s\" logged out.", al_str_x(&client->user->name));
cleanup_client(client);
al_array_remove_at(server->clients, i);
break;
@@ -766,7 +768,7 @@ static void connection_closed_callback(void *userdata, struct nn_rpc_connection
struct camu_server_sink *sink;
al_array_foreach(server->sinks, i, sink) {
if (sink->conn == conn) {
- al_log_info("server", "Sink removed.");
+ info("Sink removed.");
struct lia_list *list;
al_array_foreach(server->lists, j, list) {
lia_list_remove_sink(list, sink);