Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/Remmina/Remmina.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGiovanni panozzo <giovanni@panozzo.it>2020-05-21 15:28:56 +0300
committerGiovanni panozzo <giovanni@panozzo.it>2020-05-21 15:28:56 +0300
commit9c1683a357634035b4eef38e3ea8e6728c90a85f (patch)
treed70b953ce9a7a25e3b913b108a20bb128bc1bb7d
parent7f1e16eabd3c142fcbc474d896b6cde731ac5bdd (diff)
Introduce remmina_plugin_debug() for plugins
-rw-r--r--plugins/exec/exec_plugin.c14
-rw-r--r--plugins/nx/nx_plugin.c14
-rw-r--r--plugins/nx/nx_plugin.h1
-rw-r--r--plugins/nx/nx_session_manager.c2
-rw-r--r--plugins/rdp/rdp_channels.c4
-rw-r--r--plugins/rdp/rdp_cliprdr.c20
-rw-r--r--plugins/rdp/rdp_event.c6
-rw-r--r--plugins/rdp/rdp_plugin.c54
-rw-r--r--plugins/rdp/rdp_plugin.h1
-rw-r--r--plugins/secret/src/glibsecret_plugin.c14
-rw-r--r--plugins/st/st_plugin.c15
-rw-r--r--plugins/vnc/vnc_plugin.c3
-rw-r--r--plugins/www/www_plugin.c100
-rw-r--r--plugins/www/www_plugin.h3
-rw-r--r--src/include/remmina/plugin.h2
15 files changed, 138 insertions, 115 deletions
diff --git a/plugins/exec/exec_plugin.c b/plugins/exec/exec_plugin.c
index 71d5ecef0..04b1532f2 100644
--- a/plugins/exec/exec_plugin.c
+++ b/plugins/exec/exec_plugin.c
@@ -56,6 +56,8 @@ typedef struct _RemminaPluginExecData {
} RemminaPluginExecData;
static RemminaPluginService *remmina_plugin_service = NULL;
+#define remmina_plugin_debug(fmt, ...) remmina_plugin_service->_remmina_debug(__func__, fmt __VA_OPT__(,) __VA_ARGS__)
+
static void
cb_child_watch( GPid pid, gint status)
@@ -111,7 +113,7 @@ static void remmina_plugin_exec_init(RemminaProtocolWidget *gp)
TRACE_CALL(__func__);
RemminaPluginExecData *gpdata;
- remmina_plugin_service->_debug("[%s] Plugin init", PLUGIN_NAME);
+ remmina_plugin_debug("[%s] Plugin init", PLUGIN_NAME);
gpdata = g_new0(RemminaPluginExecData, 1);
g_object_set_data_full(G_OBJECT(gp), "plugin-data", gpdata, g_free);
@@ -148,7 +150,7 @@ static gboolean remmina_plugin_exec_run(RemminaProtocolWidget *gp)
GtkDialog *dialog;
GIOChannel *out_ch, *err_ch;
- remmina_plugin_service->_debug("[%s] Plugin run", PLUGIN_NAME);
+ remmina_plugin_debug("[%s] Plugin run", PLUGIN_NAME);
RemminaPluginExecData *gpdata = GET_PLUGIN_DATA(gp);
remminafile = remmina_plugin_service->protocol_plugin_get_file(gp);
@@ -169,7 +171,7 @@ static gboolean remmina_plugin_exec_run(RemminaProtocolWidget *gp)
}
if (remmina_plugin_service->file_get_int(remminafile, "runasync", FALSE)) {
- remmina_plugin_service->_debug("[%s] Run Async", PLUGIN_NAME);
+ remmina_plugin_debug("[%s] Run Async", PLUGIN_NAME);
g_spawn_async_with_pipes( NULL,
argv,
NULL,
@@ -214,7 +216,7 @@ static gboolean remmina_plugin_exec_run(RemminaProtocolWidget *gp)
break;
}
gtk_widget_destroy(GTK_WIDGET(dialog));
- remmina_plugin_service->_debug("[%s] Run Sync", PLUGIN_NAME);
+ remmina_plugin_debug("[%s] Run Sync", PLUGIN_NAME);
g_spawn_sync (NULL, // CWD or NULL
argv,
NULL, // ENVP or NULL
@@ -227,7 +229,7 @@ static gboolean remmina_plugin_exec_run(RemminaProtocolWidget *gp)
NULL, // Exit status
&error);
if (!error) {
- remmina_plugin_service->_debug("[%s] Command executed", PLUGIN_NAME);
+ remmina_plugin_debug("[%s] Command executed", PLUGIN_NAME);
gtk_text_buffer_set_text (gpdata->log_buffer, stdout_buffer, -1);
}else {
g_warning("Command %s exited with error: %s\n", cmd, error->message);
@@ -245,7 +247,7 @@ static gboolean remmina_plugin_exec_run(RemminaProtocolWidget *gp)
static gboolean remmina_plugin_exec_close(RemminaProtocolWidget *gp)
{
TRACE_CALL(__func__);
- remmina_plugin_service->_debug("[%s] Plugin close", PLUGIN_NAME);
+ remmina_plugin_debug("[%s] Plugin close", PLUGIN_NAME);
remmina_plugin_service->protocol_plugin_signal_connection_closed(gp);
return FALSE;
}
diff --git a/plugins/nx/nx_plugin.c b/plugins/nx/nx_plugin.c
index 025bb15f1..c7b38de23 100644
--- a/plugins/nx/nx_plugin.c
+++ b/plugins/nx/nx_plugin.c
@@ -36,6 +36,7 @@
#include <errno.h>
#include <pthread.h>
+#include <stdarg.h>
#include "common/remmina_plugin.h"
#include <gtk/gtkx.h>
#include <time.h>
@@ -307,6 +308,17 @@ static gint remmina_plugin_nx_wait_signal(RemminaPluginNxData *gpdata)
return (gint)dummy;
}
+static void remmina_plugin_nx_log_callback(const gchar *fmt, ...)
+{
+ char buffer[256];
+ va_list args;
+ va_start(args, fmt);
+ vsnprintf(buffer, sizeof(buffer), fmt, args);
+ remmina_plugin_debug(buffer);
+ va_end(args);
+}
+
+
static gboolean remmina_plugin_nx_start_session(RemminaProtocolWidget *gp)
{
TRACE_CALL(__func__);
@@ -331,7 +343,7 @@ static gboolean remmina_plugin_nx_start_session(RemminaProtocolWidget *gp)
remmina_nx_session_set_encryption(nx,
remmina_plugin_nx_service->file_get_int(remminafile, "disableencryption", FALSE) ? 0 : 1);
remmina_nx_session_set_localport(nx, remmina_plugin_nx_service->pref_get_sshtunnel_port());
- remmina_nx_session_set_log_callback(nx, remmina_plugin_nx_service->_debug);
+ remmina_nx_session_set_log_callback(nx, remmina_plugin_nx_log_callback);
s2 = remmina_plugin_nx_service->protocol_plugin_start_direct_tunnel(gp, 22, FALSE);
if (s2 == NULL) {
diff --git a/plugins/nx/nx_plugin.h b/plugins/nx/nx_plugin.h
index 3217ee6c5..84cce9792 100644
--- a/plugins/nx/nx_plugin.h
+++ b/plugins/nx/nx_plugin.h
@@ -76,5 +76,6 @@ typedef struct _RemminaPluginNxData {
} RemminaPluginNxData;
extern RemminaPluginService *remmina_plugin_nx_service;
+#define remmina_plugin_debug(fmt, ...) remmina_plugin_nx_service->_remmina_debug(__func__, fmt __VA_OPT__(,) __VA_ARGS__)
G_END_DECLS
diff --git a/plugins/nx/nx_session_manager.c b/plugins/nx/nx_session_manager.c
index 14cb4fb3e..f122cf0b0 100644
--- a/plugins/nx/nx_session_manager.c
+++ b/plugins/nx/nx_session_manager.c
@@ -113,7 +113,7 @@ void remmina_nx_session_manager_on_row_activated(GtkTreeView *tree, GtkTreePath
{
TRACE_CALL(__func__);
RemminaPluginNxData *gpdata = GET_PLUGIN_DATA(gp);
- remmina_plugin_nx_service->_debug("Default response_id %d",
+ remmina_plugin_debug("Default response_id %d",
gpdata->default_response);
if (gpdata->default_response >= 0) {
diff --git a/plugins/rdp/rdp_channels.c b/plugins/rdp/rdp_channels.c
index e2c145d17..09e58adfd 100644
--- a/plugins/rdp/rdp_channels.c
+++ b/plugins/rdp/rdp_channels.c
@@ -79,7 +79,7 @@ void remmina_rdp_OnChannelConnectedEventHandler(rdpContext* context, ChannelConn
if (rfi->scale == REMMINA_PROTOCOL_WIDGET_SCALE_MODE_DYNRES) {
remmina_rdp_event_send_delayed_monitor_layout(rfi->protocol_widget);
}
- }remmina_plugin_service->_debug("Channel %s has been opened", e->name);
+ }remmina_plugin_debug("Channel %s has been opened", e->name);
}
void remmina_rdp_OnChannelDisconnectedEventHandler(rdpContext* context, ChannelConnectedEventArgs* e)
@@ -91,6 +91,6 @@ void remmina_rdp_OnChannelDisconnectedEventHandler(rdpContext* context, ChannelC
if (rfi->settings->SoftwareGdi)
gdi_graphics_pipeline_uninit(context->gdi, (RdpgfxClientContext*) e->pInterface);
}
- remmina_plugin_service->_debug("Channel %s has been closed", e->name);
+ remmina_plugin_debug("Channel %s has been closed", e->name);
}
diff --git a/plugins/rdp/rdp_cliprdr.c b/plugins/rdp/rdp_cliprdr.c
index 2eeb72efd..80ced4701 100644
--- a/plugins/rdp/rdp_cliprdr.c
+++ b/plugins/rdp/rdp_cliprdr.c
@@ -239,7 +239,7 @@ static UINT remmina_rdp_cliprdr_server_format_list(CliprdrClientContext *context
gp = clipboard->rfi->protocol_widget;
GtkTargetList *list = gtk_target_list_new(NULL, 0);
- remmina_plugin_service->_debug("format list from the server:");
+ remmina_plugin_debug("format list from the server:");
for (i = 0; i < formatList->numFormats; i++) {
format = &formatList->formats[i];
serverFormatName = format->formatName;
@@ -280,7 +280,7 @@ static UINT remmina_rdp_cliprdr_server_format_list(CliprdrClientContext *context
} else if (format->formatId == CF_METAFILEPICT) {
serverFormatName = "CF_METAFILEPICT";
}
- remmina_plugin_service->_debug("the server has clipboard format %d: %s", format->formatId, serverFormatName);
+ remmina_plugin_debug("the server has clipboard format %d: %s", format->formatId, serverFormatName);
}
/* Keep only one DIB format, if present */
@@ -452,12 +452,12 @@ static UINT remmina_rdp_cliprdr_server_format_data_response(CliprdrClientContext
pthread_mutex_lock(&clipboard->transfer_clip_mutex);
pthread_cond_signal(&clipboard->transfer_clip_cond);
if (clipboard->srv_clip_data_wait == SCDW_BUSY_WAIT) {
- remmina_plugin_service->_debug("clibpoard transfer from server completed.");
+ remmina_plugin_debug("clibpoard transfer from server completed.");
clipboard->srv_data = output;
} else {
// Clipboard data arrived from server when we are not busywaiting on main loop
// Unfortunately, we must discard it
- remmina_plugin_service->_debug("clibpoard transfer from server completed. Data discarded due to abort or timeout.");
+ remmina_plugin_debug("clibpoard transfer from server completed. Data discarded due to abort or timeout.");
clipboard->srv_clip_data_wait = SCDW_NONE;
}
pthread_mutex_unlock(&clipboard->transfer_clip_mutex);
@@ -481,7 +481,7 @@ void remmina_rdp_cliprdr_request_data(GtkClipboard *gtkClipboard, GtkSelectionDa
int rc;
time_t tlimit;
- remmina_plugin_service->_debug("A local application has requested remote clipboard data for local format id %d", info);
+ remmina_plugin_debug("A local application has requested remote clipboard data for local format id %d", info);
clipboard = &(rfi->clipboard);
if (clipboard->srv_clip_data_wait != SCDW_NONE) {
@@ -500,7 +500,7 @@ void remmina_rdp_cliprdr_request_data(GtkClipboard *gtkClipboard, GtkSelectionDa
pFormatDataRequest->requestedFormatId = clipboard->format;
clipboard->srv_clip_data_wait = SCDW_BUSY_WAIT;
- remmina_plugin_service->_debug("Requesting clipboard data with fotmat %d from the server", clipboard->format);
+ remmina_plugin_debug("Requesting clipboard data with fotmat %d from the server", clipboard->format);
rdp_event.type = REMMINA_RDP_EVENT_TYPE_CLIPBOARD_SEND_CLIENT_FORMAT_DATA_REQUEST;
rdp_event.clipboard_formatdatarequest.pFormatDataRequest = pFormatDataRequest;
@@ -582,7 +582,7 @@ CLIPRDR_FORMAT_LIST *remmina_rdp_cliprdr_get_client_format_list(RemminaProtocolW
gtkClipboard = gtk_widget_get_clipboard(rfi->drawing_area, GDK_SELECTION_CLIPBOARD);
if (gtkClipboard)
result = gtk_clipboard_wait_for_targets(gtkClipboard, &targets, &loccount);
- remmina_plugin_service->_debug("Sending to server the following local clipboard content formats");
+ remmina_plugin_debug("Sending to server the following local clipboard content formats");
if (result && loccount > 0) {
formats = (CLIPRDR_FORMAT *)malloc(loccount * sizeof(CLIPRDR_FORMAT));
srvcount = 0;
@@ -590,7 +590,7 @@ CLIPRDR_FORMAT_LIST *remmina_rdp_cliprdr_get_client_format_list(RemminaProtocolW
formatId = remmina_rdp_cliprdr_get_format_from_gdkatom(targets[i]);
if (formatId != 0) {
name = gdk_atom_name(targets[i]);
- remmina_plugin_service->_debug(" local clipboard format %s will be sent to remote as %d", name, formatId);
+ remmina_plugin_debug(" local clipboard format %s will be sent to remote as %d", name, formatId);
g_free(name);
formats[srvcount].formatId = formatId;
formats[srvcount].formatName = NULL;
@@ -751,7 +751,7 @@ void remmina_rdp_cliprdr_set_clipboard_data(RemminaProtocolWidget *gp, RemminaPl
if (gtkClipboard) {
targets = gtk_target_table_new_from_list(ui->clipboard.targetlist, &n_targets);
if (targets) {
- remmina_plugin_service->_debug("setting clipboard with owner to owner %p", gp);
+ remmina_plugin_debug("setting clipboard with owner to owner %p", gp);
gtk_clipboard_set_with_owner(gtkClipboard, targets, n_targets,
(GtkClipboardGetFunc)remmina_rdp_cliprdr_request_data,
(GtkClipboardClearFunc)remmina_rdp_cliprdr_empty_clipboard, G_OBJECT(gp));
@@ -814,7 +814,7 @@ void remmina_rdp_clipboard_free(rfContext *rfi)
void remmina_rdp_clipboard_abort_transfer(rfContext *rfi)
{
if (rfi && rfi->clipboard.srv_clip_data_wait == SCDW_BUSY_WAIT) {
- remmina_plugin_service->_debug("requesting clipboard transfer to abort");
+ remmina_plugin_debug("requesting clipboard transfer to abort");
/* Allow clipboard transfer from server to terminate */
rfi->clipboard.srv_clip_data_wait = SCDW_ABORTING;
usleep(100000);
diff --git a/plugins/rdp/rdp_event.c b/plugins/rdp/rdp_event.c
index 2f4fe89a6..2126e15e2 100644
--- a/plugins/rdp/rdp_event.c
+++ b/plugins/rdp/rdp_event.c
@@ -717,7 +717,7 @@ gboolean remmina_rdp_event_on_clipboard(GtkClipboard *gtkClipboard, GdkEvent *ev
* after receivina a RDP server format list in remmina_rdp_cliprdr_server_format_list()
* In the latter case, we must ignore owner change */
- remmina_plugin_service->_debug("owner-change event received");
+ remmina_plugin_debug("owner-change event received");
rfContext *rfi = GET_PLUGIN_DATA(gp);
if (rfi)
@@ -726,7 +726,7 @@ gboolean remmina_rdp_event_on_clipboard(GtkClipboard *gtkClipboard, GdkEvent *ev
if (gtk_clipboard_get_owner(gtkClipboard) != (GObject*)gp) {
/* To do: avoid this when the new owner is another remmina protocol widget of
* the same remmina application */
- remmina_plugin_service->_debug(" new owner is different than me: new=%p me=%p. Sending local clipboard format list to server.",
+ remmina_plugin_debug(" new owner is different than me: new=%p me=%p. Sending local clipboard format list to server.",
gtk_clipboard_get_owner(gtkClipboard), (GObject*)gp);
pFormatList = remmina_rdp_cliprdr_get_client_format_list(gp);
@@ -734,7 +734,7 @@ gboolean remmina_rdp_event_on_clipboard(GtkClipboard *gtkClipboard, GdkEvent *ev
rdp_event.clipboard_formatlist.pFormatList = pFormatList;
remmina_rdp_event_event_push(gp, &rdp_event);
} else {
- remmina_plugin_service->_debug(" ... but I'm the owner!");
+ remmina_plugin_debug(" ... but I'm the owner!");
}
return TRUE;
}
diff --git a/plugins/rdp/rdp_plugin.c b/plugins/rdp/rdp_plugin.c
index 2fd62f58a..bd94a555f 100644
--- a/plugins/rdp/rdp_plugin.c
+++ b/plugins/rdp/rdp_plugin.c
@@ -190,14 +190,14 @@ static gboolean remmina_rdp_tunnel_init(RemminaProtocolWidget *gp)
gint port;
rfContext *rfi = GET_PLUGIN_DATA(gp);
- remmina_plugin_service->_debug("Tunnel init");
+ remmina_plugin_debug("Tunnel init");
hostport = remmina_plugin_service->protocol_plugin_start_direct_tunnel(gp, 3389, FALSE);
if (hostport == NULL)
return FALSE;
remmina_plugin_service->get_server_port(hostport, 3389, &host, &port);
- remmina_plugin_service->_debug("protocol_plugin_start_direct_tunnel() returned %s", hostport);
+ remmina_plugin_debug("protocol_plugin_start_direct_tunnel() returned %s", hostport);
cert_host = host;
cert_port = port;
@@ -217,7 +217,7 @@ static gboolean remmina_rdp_tunnel_init(RemminaProtocolWidget *gp)
}
}
- remmina_plugin_service->_debug("Tunnel has been optionally initialized. Now connecting to %s:%d", host, port);
+ remmina_plugin_debug("Tunnel has been optionally initialized. Now connecting to %s:%d", host, port);
if (cert_host != host) g_free(cert_host);
g_free(host);
@@ -254,7 +254,7 @@ BOOL rf_auto_reconnect(rfContext *rfi)
}
/* A network disconnect was detected and we should try to reconnect */
- remmina_plugin_service->_debug("[%s] network disconnection detected, initiating reconnection attempt",
+ remmina_plugin_debug("[%s] network disconnection detected, initiating reconnection attempt",
rfi->settings->ServerHostname);
ui = g_new0(RemminaPluginRdpUiObject, 1);
@@ -272,13 +272,13 @@ BOOL rf_auto_reconnect(rfContext *rfi)
while (TRUE) {
/* Quit retrying if max retries has been exceeded */
if (rfi->reconnect_nattempt++ >= rfi->reconnect_maxattempts) {
- remmina_plugin_service->_debug("[%s] maximum number of reconnection attempts exceeded.",
+ remmina_plugin_debug("[%s] maximum number of reconnection attempts exceeded.",
rfi->settings->ServerHostname);
break;
}
/* Attempt the next reconnect */
- remmina_plugin_service->_debug("[%s] reconnection, attempt #%d of %d",
+ remmina_plugin_debug("[%s] reconnection, attempt #%d of %d",
rfi->settings->ServerHostname, rfi->reconnect_nattempt, rfi->reconnect_maxattempts);
ui = g_new0(RemminaPluginRdpUiObject, 1);
@@ -289,12 +289,12 @@ BOOL rf_auto_reconnect(rfContext *rfi)
/* Reconnect the SSH tunnel, if needed */
if (!remmina_rdp_tunnel_init(rfi->protocol_widget)) {
- remmina_plugin_service->_debug("[%s] unable to recreate tunnel with remmina_rdp_tunnel_init.",
+ remmina_plugin_debug("[%s] unable to recreate tunnel with remmina_rdp_tunnel_init.",
rfi->settings->ServerHostname);
} else {
if (freerdp_reconnect(rfi->instance)) {
/* Reconnection is successful */
- remmina_plugin_service->_debug("[%s] reconnected.", rfi->settings->ServerHostname);
+ remmina_plugin_debug("[%s] reconnected.", rfi->settings->ServerHostname);
rfi->is_reconnecting = FALSE;
return TRUE;
}
@@ -786,7 +786,7 @@ static void remmina_rdp_main_loop(RemminaProtocolWidget *gp)
}
}
freerdp_disconnect(rfi->instance);
- remmina_plugin_service->_debug("RDP client disconnected");
+ remmina_plugin_debug("RDP client disconnected");
}
int remmina_rdp_load_static_channel_addin(rdpChannels *channels, rdpSettings *settings, char *name, void *data)
@@ -925,24 +925,24 @@ int remmina_rdp_set_printers(void *user_data, unsigned flags, cups_dest_t *dest)
printer = (RDPDR_PRINTER *)calloc(1, sizeof(RDPDR_PRINTER));
printer->Type = RDPDR_DTYP_PRINT;
- remmina_plugin_service->_debug("Printer Type: %d", printer->Type);
+ remmina_plugin_debug("Printer Type: %d", printer->Type);
rfi->settings->RedirectPrinters = TRUE;
remmina_rdp_load_static_channel_addin(channels, rfi->settings, "rdpdr", rfi->settings);
- remmina_plugin_service->_debug("Destination: %s", dest->name);
+ remmina_plugin_debug("Destination: %s", dest->name);
if (!(printer->Name = _strdup(dest->name))) {
free(printer);
return 1;
}
- remmina_plugin_service->_debug("Printer Name: %s", printer->Name);
+ remmina_plugin_debug("Printer Name: %s", printer->Name);
if (s) {
gchar *d = remmina_rdp_find_prdriver(strdup(s), printer->Name);
if (d) {
printer->DriverName = strdup(d);
- remmina_plugin_service->_debug("Printer DriverName set to: %s", printer->DriverName);
+ remmina_plugin_debug("Printer DriverName set to: %s", printer->DriverName);
g_free(d);
} else {
/**
@@ -960,7 +960,7 @@ int remmina_rdp_set_printers(void *user_data, unsigned flags, cups_dest_t *dest)
printer->DriverName = _strdup(model);
}
- remmina_plugin_service->_debug("Printer Driver: %s", printer->DriverName);
+ remmina_plugin_debug("Printer Driver: %s", printer->DriverName);
if (!freerdp_device_collection_add(rfi->settings, (RDPDR_DEVICE *)printer)) {
free(printer->DriverName);
free(printer->Name);
@@ -1010,7 +1010,7 @@ static gboolean remmina_rdp_main(RemminaProtocolWidget *gp)
#if defined(PROXY_TYPE_IGNORE)
if (!remmina_plugin_service->file_get_int(remminafile, "useproxyenv", FALSE) ? TRUE : FALSE) {
- remmina_plugin_service->_debug("Not using system proxy settings");
+ remmina_plugin_debug("Not using system proxy settings");
rfi->settings->ProxyType = PROXY_TYPE_IGNORE;
}
#endif
@@ -1098,11 +1098,11 @@ static gboolean remmina_rdp_main(RemminaProtocolWidget *gp)
gchar *proxy_password = g_strdup(remmina_plugin_service->file_get_string(remminafile, "proxy_password"));
gchar *proxy_hostname = g_strdup(remmina_plugin_service->file_get_string(remminafile, "proxy_hostname"));
gint proxy_port = remmina_plugin_service->file_get_int(remminafile, "proxy_port", 80);
- remmina_plugin_service->_debug("proxy_type: %s", proxy_type);
- remmina_plugin_service->_debug("proxy_username: %s", proxy_username);
- remmina_plugin_service->_debug("proxy_password: %s", proxy_password);
- remmina_plugin_service->_debug("proxy_hostname: %s", proxy_hostname);
- remmina_plugin_service->_debug("proxy_port: %d", proxy_port);
+ remmina_plugin_debug("proxy_type: %s", proxy_type);
+ remmina_plugin_debug("proxy_username: %s", proxy_username);
+ remmina_plugin_debug("proxy_password: %s", proxy_password);
+ remmina_plugin_debug("proxy_hostname: %s", proxy_hostname);
+ remmina_plugin_debug("proxy_port: %d", proxy_port);
if (proxy_type && proxy_hostname) {
if (g_strcmp0(proxy_type, "no_proxy") == 0)
rfi->settings->ProxyType = PROXY_TYPE_IGNORE;
@@ -1112,7 +1112,7 @@ static gboolean remmina_rdp_main(RemminaProtocolWidget *gp)
rfi->settings->ProxyType = PROXY_TYPE_SOCKS;
else
g_warning("Invalid proxy protocol, at the moment only no_proxy, HTTP and SOCKS5 are supported");
- remmina_plugin_service->_debug("ProxyType set to: %d", rfi->settings->ProxyType);
+ remmina_plugin_debug("ProxyType set to: %d", rfi->settings->ProxyType);
rfi->settings->ProxyHostname = proxy_hostname;
if (proxy_username)
rfi->settings->ProxyUsername = proxy_username;
@@ -1391,12 +1391,12 @@ static gboolean remmina_rdp_main(RemminaProtocolWidget *gp)
if (remmina_plugin_service->file_get_int(remminafile, "shareprinter", FALSE)) {
#ifdef HAVE_CUPS
- remmina_plugin_service->_debug("Sharing printers");
+ remmina_plugin_debug("Sharing printers");
if (cupsEnumDests(CUPS_DEST_FLAGS_NONE, 1000, NULL, 0, 0, remmina_rdp_set_printers, rfi))
- remmina_plugin_service->_debug("All printers have been shared");
+ remmina_plugin_debug("All printers have been shared");
else
- remmina_plugin_service->_debug("Cannot share printers, are there any available?");
+ remmina_plugin_debug("Cannot share printers, are there any available?");
#endif /* HAVE_CUPS */
}
@@ -1829,7 +1829,7 @@ static gboolean remmina_rdp_close_connection(RemminaProtocolWidget *gp)
if (rfi && rfi->clipboard.srv_clip_data_wait == SCDW_BUSY_WAIT) {
- remmina_plugin_service->_debug("[RDP] requesting clipboard transfer to abort");
+ remmina_plugin_debug("[RDP] requesting clipboard transfer to abort");
/* Allow clipboard transfer from server to terminate */
rfi->clipboard.srv_clip_data_wait = SCDW_ABORTING;
usleep(100000);
@@ -1920,10 +1920,10 @@ static gboolean remmina_rdp_get_screenshot(RemminaProtocolWidget *gp, RemminaPlu
szmem = gdi->width * gdi->height * bytesPerPixel;
- remmina_plugin_service->_debug("allocating %zu bytes for a full screenshot", szmem);
+ remmina_plugin_debug("allocating %zu bytes for a full screenshot", szmem);
rpsd->buffer = malloc(szmem);
if (!rpsd->buffer) {
- remmina_plugin_service->_debug("could not set aside %zu bytes for a full screenshot", szmem);
+ remmina_plugin_debug("could not set aside %zu bytes for a full screenshot", szmem);
return FALSE;
}
rpsd->width = gdi->width;
diff --git a/plugins/rdp/rdp_plugin.h b/plugins/rdp/rdp_plugin.h
index 7042f1835..7ffa02426 100644
--- a/plugins/rdp/rdp_plugin.h
+++ b/plugins/rdp/rdp_plugin.h
@@ -66,6 +66,7 @@ typedef struct rf_context rfContext;
#define DEFAULT_QUALITY_9 0x80
extern RemminaPluginService *remmina_plugin_service;
+#define remmina_plugin_debug(fmt, ...) remmina_plugin_service->_remmina_debug(__func__, fmt __VA_OPT__(,) __VA_ARGS__)
struct rf_clipboard {
rfContext * rfi;
diff --git a/plugins/secret/src/glibsecret_plugin.c b/plugins/secret/src/glibsecret_plugin.c
index 3feda4951..58f1eac44 100644
--- a/plugins/secret/src/glibsecret_plugin.c
+++ b/plugins/secret/src/glibsecret_plugin.c
@@ -43,6 +43,8 @@
#include <remmina/plugin.h>
static RemminaPluginService *remmina_plugin_service = NULL;
+#define remmina_plugin_debug(fmt, ...) remmina_plugin_service->_remmina_debug(__func__, fmt __VA_OPT__(,) __VA_ARGS__)
+
static SecretSchema remmina_file_secret_schema =
{ "org.remmina.Password", SECRET_SCHEMA_NONE,
@@ -84,7 +86,7 @@ static void remmina_plugin_glibsecret_unlock_secret_service()
if (secretservice && defaultcollection) {
if (secret_collection_get_locked(defaultcollection)) {
lbl = secret_collection_get_label(defaultcollection);
- remmina_plugin_service->_debug("Requesting unlock of the default '%s' collection", lbl);
+ remmina_plugin_debug("Requesting unlock of the default '%s' collection", lbl);
objects = g_list_append(NULL, defaultcollection);
secret_service_unlock_sync(secretservice, objects, NULL, &ul, &error);
g_list_free(objects);
@@ -108,9 +110,9 @@ void remmina_plugin_glibsecret_store_password(RemminaFile *remminafile, const gc
NULL, &r, "filename", path, "key", key, NULL);
g_free(s);
if (r == NULL) {
- remmina_plugin_service->_debug("Password \"%s\" saved for file %s\n", key, path);
+ remmina_plugin_debug("Password \"%s\" saved for file %s\n", key, path);
}else {
- remmina_plugin_service->_debug("Password \"%s\" cannot be saved for file %s\n", key, path);
+ remmina_plugin_debug("Password \"%s\" cannot be saved for file %s\n", key, path);
g_error_free(r);
}
}
@@ -131,7 +133,7 @@ remmina_plugin_glibsecret_get_password(RemminaFile *remminafile, const gchar *ke
secret_password_free(password);
return p;
}else {
- remmina_plugin_service->_debug("Password cannot be found for file %s\n", path);
+ remmina_plugin_debug("Password cannot be found for file %s\n", path);
return NULL;
}
}
@@ -145,9 +147,9 @@ void remmina_plugin_glibsecret_delete_password(RemminaFile *remminafile, const g
path = remmina_plugin_service->file_get_path(remminafile);
secret_password_clear_sync(&remmina_file_secret_schema, NULL, &r, "filename", path, "key", key, NULL);
if (r == NULL)
- remmina_plugin_service->_debug("password \"%s\" deleted for file %s", key, path);
+ remmina_plugin_debug("password \"%s\" deleted for file %s", key, path);
else
- remmina_plugin_service->_debug("password \"%s\" cannot be deleted for file %s", key, path);
+ remmina_plugin_debug("password \"%s\" cannot be deleted for file %s", key, path);
}
gboolean remmina_plugin_glibsecret_init()
diff --git a/plugins/st/st_plugin.c b/plugins/st/st_plugin.c
index e5a4d7970..ae99d4d65 100644
--- a/plugins/st/st_plugin.c
+++ b/plugins/st/st_plugin.c
@@ -54,6 +54,7 @@ typedef struct _RemminaPluginData
} RemminaPluginData;
static RemminaPluginService *remmina_plugin_service = NULL;
+#define remmina_plugin_debug(fmt, ...) remmina_plugin_service->_remmina_debug(__func__, fmt __VA_OPT__(,) __VA_ARGS__)
static gboolean remmina_st_query_feature(RemminaProtocolWidget* gp, const RemminaProtocolFeature* feature)
{
@@ -67,7 +68,7 @@ static void remmina_plugin_st_on_plug_added(GtkSocket *socket, RemminaProtocolWi
TRACE_CALL(__func__);
RemminaPluginData *gpdata;
gpdata = (RemminaPluginData*) g_object_get_data(G_OBJECT(gp), "plugin-data");
- remmina_plugin_service->_debug("[%s] Plugin plug added on socket %d", PLUGIN_NAME, gpdata->socket_id);
+ remmina_plugin_debug("[%s] Plugin plug added on socket %d", PLUGIN_NAME, gpdata->socket_id);
remmina_plugin_service->protocol_plugin_signal_connection_opened(gp);
return;
}
@@ -75,14 +76,14 @@ static void remmina_plugin_st_on_plug_added(GtkSocket *socket, RemminaProtocolWi
static void remmina_plugin_st_on_plug_removed(GtkSocket *socket, RemminaProtocolWidget *gp)
{
TRACE_CALL(__func__);
- remmina_plugin_service->_debug("[%s] Plugin plug removed", PLUGIN_NAME);
+ remmina_plugin_debug("[%s] Plugin plug removed", PLUGIN_NAME);
remmina_plugin_service->protocol_plugin_signal_connection_closed(gp);
}
static void remmina_plugin_st_init(RemminaProtocolWidget *gp)
{
TRACE_CALL(__func__);
- remmina_plugin_service->_debug("[%s] Plugin init", PLUGIN_NAME);
+ remmina_plugin_debug("[%s] Plugin init", PLUGIN_NAME);
RemminaPluginData *gpdata;
gpdata = g_new0(RemminaPluginData, 1);
@@ -99,7 +100,7 @@ static void remmina_plugin_st_init(RemminaProtocolWidget *gp)
static gboolean remmina_plugin_st_open_connection(RemminaProtocolWidget *gp)
{
TRACE_CALL(__func__);
- remmina_plugin_service->_debug("[%s] Plugin open connection", PLUGIN_NAME);
+ remmina_plugin_debug("[%s] Plugin open connection", PLUGIN_NAME);
#define ADD_ARGUMENT(name, value) \
{ \
argv[argc] = g_strdup(name); \
@@ -176,7 +177,7 @@ static gboolean remmina_plugin_st_open_connection(RemminaProtocolWidget *gp)
ADD_ARGUMENT(NULL, NULL);
// Retrieve the whole command line
command_line = g_strjoinv(g_strdup(" "), (gchar **)&argv_debug[0]);
- remmina_plugin_service->_debug("[%s] starting %s", PLUGIN_NAME, command_line);
+ remmina_plugin_debug("[%s] starting %s", PLUGIN_NAME, command_line);
// Execute the external process st
g_spawn_command_line_async(command_line, &error);
g_free(command_line);
@@ -195,7 +196,7 @@ static gboolean remmina_plugin_st_open_connection(RemminaProtocolWidget *gp)
}
// Show attached window socket ID
if (!remmina_plugin_service->file_get_int(remminafile, "detached", FALSE)) {
- remmina_plugin_service->_debug("[%s] attached window to socket %d",
+ remmina_plugin_debug("[%s] attached window to socket %d",
PLUGIN_NAME, gpdata->socket_id);
return TRUE;
}
@@ -208,7 +209,7 @@ static gboolean remmina_plugin_st_open_connection(RemminaProtocolWidget *gp)
static gboolean remmina_plugin_st_close_connection(RemminaProtocolWidget *gp)
{
TRACE_CALL(__func__);
- remmina_plugin_service->_debug("[%s] Plugin close connection", PLUGIN_NAME);
+ remmina_plugin_debug("[%s] Plugin close connection", PLUGIN_NAME);
remmina_plugin_service->protocol_plugin_signal_connection_closed(gp);
return FALSE;
}
diff --git a/plugins/vnc/vnc_plugin.c b/plugins/vnc/vnc_plugin.c
index 5470ee05b..8ca23bf24 100644
--- a/plugins/vnc/vnc_plugin.c
+++ b/plugins/vnc/vnc_plugin.c
@@ -51,6 +51,7 @@
#define GET_PLUGIN_DATA(gp) (RemminaPluginVncData *)g_object_get_data(G_OBJECT(gp), "plugin-data")
static RemminaPluginService *remmina_plugin_service = NULL;
+#define remmina_plugin_debug(fmt, ...) remmina_plugin_service->_remmina_debug(__func__, fmt __VA_OPT__(,) __VA_ARGS__)
static int dot_cursor_x_hot = 2;
static int dot_cursor_y_hot = 2;
@@ -947,7 +948,7 @@ static void remmina_plugin_vnc_rfb_output(const char *format, ...)
g_free(f);
va_end(args);
- remmina_plugin_service->_debug("VNC returned: %s", vnc_error);
+ remmina_plugin_debug("VNC returned: %s", vnc_error);
}
static void remmina_plugin_vnc_chat_on_send(RemminaProtocolWidget *gp, const gchar *text)
diff --git a/plugins/www/www_plugin.c b/plugins/www/www_plugin.c
index 88c297494..2bb0022f8 100644
--- a/plugins/www/www_plugin.c
+++ b/plugins/www/www_plugin.c
@@ -70,7 +70,7 @@ typedef struct _RemminaPluginWWWData {
gboolean formauthenticated;
} RemminaPluginWWWData;
-static RemminaPluginService *remmina_plugin_service = NULL;
+RemminaPluginService *remmina_plugin_service = NULL;
void remmina_plugin_www_download_started(WebKitWebContext *context,
WebKitDownload *download, RemminaProtocolWidget *gp)
@@ -86,13 +86,13 @@ void remmina_plugin_www_download_started(WebKitWebContext *context,
void remmina_plugin_www_response_received(WebKitDownload *download, GParamSpec *ps, RemminaProtocolWidget *gp)
{
TRACE_CALL(__func__);
- remmina_plugin_service->_debug("Download response received");
+ remmina_plugin_debug("Download response received");
}
void remmina_plugin_www_notify_download(WebKitDownload *download, gchar *destination, RemminaProtocolWidget *gp)
{
TRACE_CALL(__func__);
- remmina_plugin_service->_debug("Download is finished");
+ remmina_plugin_debug("Download is finished");
const gchar *dest = webkit_download_get_destination(download);
www_utils_send_notification("www-plugin-download-completed-id", _("File downloaded"), dest);
//download(gp, webkit_download_get_response(download));
@@ -128,7 +128,7 @@ static gboolean remmina_plugin_www_decide_policy_cb(
void remmina_plugin_www_decide_nav(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp)
{
TRACE_CALL(__func__);
- remmina_plugin_service->_debug("Policy decision navigation");
+ remmina_plugin_debug("Policy decision navigation");
const gchar *url = NULL;
WebKitNavigationAction *a =
webkit_navigation_policy_decision_get_navigation_action(
@@ -136,25 +136,25 @@ void remmina_plugin_www_decide_nav(WebKitPolicyDecision *decision, RemminaProtoc
switch (webkit_navigation_action_get_navigation_type(a)) {
case WEBKIT_NAVIGATION_TYPE_LINK_CLICKED:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_LINK_CLICKED");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_LINK_CLICKED");
url = webkit_uri_request_get_uri(
webkit_navigation_action_get_request(a));
- remmina_plugin_service->_debug("url is %s ", url);
+ remmina_plugin_debug("url is %s ", url);
break;
case WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED");
break;
case WEBKIT_NAVIGATION_TYPE_BACK_FORWARD:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_BACK_FORWARD");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_BACK_FORWARD");
break;
case WEBKIT_NAVIGATION_TYPE_RELOAD:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_RELOAD");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_RELOAD");
break;
case WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED");
break;
case WEBKIT_NAVIGATION_TYPE_OTHER:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_OTHER");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_OTHER");
break;
default:
/* Do not navigate to links with a "_blank" target (popup) */
@@ -174,7 +174,7 @@ void remmina_plugin_www_decide_nav(WebKitPolicyDecision *decision, RemminaProtoc
void remmina_plugin_www_on_create(WebKitWebView *webview, WebKitNavigationAction *a, RemminaProtocolWidget *gp)
{
TRACE_CALL(__func__);
- remmina_plugin_service->_debug("New web-view");
+ remmina_plugin_debug("New web-view");
const gchar *url = NULL;
@@ -183,52 +183,52 @@ void remmina_plugin_www_on_create(WebKitWebView *webview, WebKitNavigationAction
switch (webkit_navigation_action_get_navigation_type(a)) {
case WEBKIT_NAVIGATION_TYPE_LINK_CLICKED:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_LINK_CLICKED");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_LINK_CLICKED");
url = webkit_uri_request_get_uri(
webkit_navigation_action_get_request(a));
- remmina_plugin_service->_debug("Downloading url %s ", url);
+ remmina_plugin_debug("Downloading url %s ", url);
WebKitDownload *d = webkit_web_view_download_uri(gpdata->webview, url);
break;
case WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED");
break;
case WEBKIT_NAVIGATION_TYPE_BACK_FORWARD:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_BACK_FORWARD");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_BACK_FORWARD");
break;
case WEBKIT_NAVIGATION_TYPE_RELOAD:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_RELOAD");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_RELOAD");
break;
case WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED");
/* Filter domains here */
/* If the value of “mouse-button” is not 0, then the navigation was triggered by a mouse event.
* test for link clicked but no button ? */
url = webkit_uri_request_get_uri(
webkit_navigation_action_get_request(a));
- remmina_plugin_service->_debug("Trying to open url: %s", url);
+ remmina_plugin_debug("Trying to open url: %s", url);
webkit_web_view_load_uri(gpdata->webview, url);
break;
case WEBKIT_NAVIGATION_TYPE_OTHER: /* fallthrough */
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_OTHER");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_OTHER");
/* Filter domains here */
/* If the value of “mouse-button” is not 0, then the navigation was triggered by a mouse event.
* test for link clicked but no button ? */
url = webkit_uri_request_get_uri(
webkit_navigation_action_get_request(a));
- remmina_plugin_service->_debug("Trying to open url: %s", url);
+ remmina_plugin_debug("Trying to open url: %s", url);
webkit_web_view_load_uri(gpdata->webview, url);
break;
default:
break;
}
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE is %d", webkit_navigation_action_get_navigation_type(a));
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE is %d", webkit_navigation_action_get_navigation_type(a));
}
void remmina_plugin_www_decide_newwin(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp)
{
TRACE_CALL(__func__);
- remmina_plugin_service->_debug("Policy decision new window");
+ remmina_plugin_debug("Policy decision new window");
const gchar *url = NULL;
@@ -241,54 +241,54 @@ void remmina_plugin_www_decide_newwin(WebKitPolicyDecision *decision, RemminaPro
switch (webkit_navigation_action_get_navigation_type(a)) {
case WEBKIT_NAVIGATION_TYPE_LINK_CLICKED:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_LINK_CLICKED");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_LINK_CLICKED");
url = webkit_uri_request_get_uri(
webkit_navigation_action_get_request(a));
- remmina_plugin_service->_debug("Downloading url %s ", url);
+ remmina_plugin_debug("Downloading url %s ", url);
WebKitDownload *d = webkit_web_view_download_uri(gpdata->webview, url);
break;
case WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_FORM_SUBMITTED");
break;
case WEBKIT_NAVIGATION_TYPE_BACK_FORWARD:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_BACK_FORWARD");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_BACK_FORWARD");
break;
case WEBKIT_NAVIGATION_TYPE_RELOAD:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_RELOAD");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_RELOAD");
break;
case WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED:
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_FORM_RESUBMITTED");
/* Filter domains here */
/* If the value of “mouse-button” is not 0, then the navigation was triggered by a mouse event.
* test for link clicked but no button ? */
url = webkit_uri_request_get_uri(
webkit_navigation_action_get_request(a));
- remmina_plugin_service->_debug("Trying to open url: %s", url);
+ remmina_plugin_debug("Trying to open url: %s", url);
webkit_web_view_load_uri(gpdata->webview, url);
break;
case WEBKIT_NAVIGATION_TYPE_OTHER: /* fallthrough */
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE_OTHER");
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE_OTHER");
/* Filter domains here */
/* If the value of “mouse-button” is not 0, then the navigation was triggered by a mouse event.
* test for link clicked but no button ? */
url = webkit_uri_request_get_uri(
webkit_navigation_action_get_request(a));
- remmina_plugin_service->_debug("Trying to open url: %s", url);
+ remmina_plugin_debug("Trying to open url: %s", url);
webkit_web_view_load_uri(gpdata->webview, url);
break;
default:
break;
}
- remmina_plugin_service->_debug("WEBKIT_NAVIGATION_TYPE is %d", webkit_navigation_action_get_navigation_type(a));
+ remmina_plugin_debug("WEBKIT_NAVIGATION_TYPE is %d", webkit_navigation_action_get_navigation_type(a));
webkit_policy_decision_ignore(decision);
}
gboolean remmina_plugin_www_decide_resource(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp)
{
TRACE_CALL(__func__);
- remmina_plugin_service->_debug("Policy decision resource");
+ remmina_plugin_debug("Policy decision resource");
WebKitResponsePolicyDecision *response_decision =
WEBKIT_RESPONSE_POLICY_DECISION(decision);
WebKitURIResponse *response =
@@ -305,7 +305,7 @@ gboolean remmina_plugin_www_decide_resource(WebKitPolicyDecision *decision, Remm
mime_type = webkit_uri_response_get_mime_type(response);
- remmina_plugin_service->_debug("The media type is %s", mime_type);
+ remmina_plugin_debug("The media type is %s", mime_type);
/* If WebKit can't handle the media type, start the download
* process */
@@ -329,7 +329,7 @@ gboolean remmina_plugin_www_decide_resource(WebKitPolicyDecision *decision, Remm
else if (!strncmp(mime_type, "application/octet-stream", 6))
type = WWW_WEB_VIEW_DOCUMENT_OCTET_STREAM;
- remmina_plugin_service->_debug("Document type is %i", type);
+ remmina_plugin_debug("Document type is %i", type);
/* FIXME: Maybe it makes more sense to have an API to query the media
* type when the load of a page starts than doing this here.
@@ -395,7 +395,7 @@ static gboolean remmina_plugin_www_load_failed_tls_cb(WebKitWebView *webview,
{
TRACE_CALL(__func__);
/* Avoid failing if certificate is not good. TODO: Add widgets to let the user decide */
- remmina_plugin_service->_debug("Ignoring certificate and return TRUE");
+ remmina_plugin_debug("Ignoring certificate and return TRUE");
return TRUE;
}
@@ -424,7 +424,7 @@ static void remmina_plugin_www_init(RemminaProtocolWidget *gp)
PLUGIN_NAME,
NULL);
cache_dir = g_build_path("/", datapath, "cache", NULL);
- remmina_plugin_service->_debug("WWW data path is %s", datapath);
+ remmina_plugin_debug("WWW data path is %s", datapath);
if (datapath) {
gchar *indexeddb_dir = g_build_filename(datapath, "indexeddb", NULL);
@@ -616,7 +616,7 @@ static void remmina_plugin_www_form_auth(WebKitWebView *webview,
remminafile = remmina_plugin_service->protocol_plugin_get_file(gp);
- remmina_plugin_service->_debug("load-changed emitted");
+ remmina_plugin_debug("load-changed emitted");
const gchar *const *dirs = g_get_system_data_dirs();
@@ -643,10 +643,10 @@ static void remmina_plugin_www_form_auth(WebKitWebView *webview,
switch (load_event) {
case WEBKIT_LOAD_STARTED:
- remmina_plugin_service->_debug("Load started");
+ remmina_plugin_debug("Load started");
break;
case WEBKIT_LOAD_REDIRECTED:
- remmina_plugin_service->_debug("Load redirected");
+ remmina_plugin_debug("Load redirected");
break;
case WEBKIT_LOAD_COMMITTED:
/* The load is being performed. Current URI is
@@ -654,18 +654,18 @@ static void remmina_plugin_www_form_auth(WebKitWebView *webview,
* load is requested or a navigation within the
* same page is performed
* uri = webkit_web_view_get_uri (webview); */
- remmina_plugin_service->_debug("Load committed");
+ remmina_plugin_debug("Load committed");
break;
case WEBKIT_LOAD_FINISHED:
/* Load finished, we can now set user/password
* in the HTML form */
- remmina_plugin_service->_debug("Load finished");
+ remmina_plugin_debug("Load finished");
if (gpdata && gpdata->formauthenticated == TRUE)
break;
if (remmina_plugin_service->file_get_string(remminafile, "username") ||
remmina_plugin_service->file_get_string(remminafile, "password")) {
- remmina_plugin_service->_debug("Authentication is enabled");
+ remmina_plugin_debug("Authentication is enabled");
if (www_js_file) {
error = NULL;
if (g_file_get_contents(www_js_file, &s_js, NULL, &error)) {
@@ -681,7 +681,7 @@ static void remmina_plugin_www_form_auth(WebKitWebView *webview,
if (!s_js || s_js[0] == '\0') {
break;
} else {
- remmina_plugin_service->_debug("Trying to send this JavaScript: %s", s_js);
+ remmina_plugin_debug("Trying to send this JavaScript: %s", s_js);
webkit_web_view_run_javascript(
webview,
s_js,
@@ -692,10 +692,10 @@ static void remmina_plugin_www_form_auth(WebKitWebView *webview,
}
} else {
if (error) {
- remmina_plugin_service->_debug("Unable to read file: %s\n", error->message);
+ remmina_plugin_debug("Unable to read file: %s\n", error->message);
g_error_free(error);
} else {
- remmina_plugin_service->_debug("Unable to read file. No error returned from glib.\n");
+ remmina_plugin_debug("Unable to read file. No error returned from glib.\n");
}
}
}
@@ -749,7 +749,7 @@ static gboolean remmina_plugin_www_open_connection(RemminaProtocolWidget *gp)
if (remmina_plugin_service->file_get_string(remminafile, "username") ||
remmina_plugin_service->file_get_string(remminafile, "password")) {
- remmina_plugin_service->_debug("Authentication is enabled");
+ remmina_plugin_debug("Authentication is enabled");
remmina_plugin_www_on_auth(gpdata->webview, NULL, gp);
}
@@ -811,7 +811,7 @@ static void remmina_plugin_www_save_snapshot(GObject *object, GAsyncResult *resu
screenshot = gdk_pixbuf_get_from_surface(surface, 0, 0, width, height);
if (screenshot == NULL)
- remmina_plugin_service->_debug("WWW: gdk_pixbuf_get_from_surface failed");
+ remmina_plugin_debug("WWW: gdk_pixbuf_get_from_surface failed");
pngstr = g_string_new(g_strdup_printf("%s/%s.png",
remmina_plugin_service->pref_get_value("screenshot_path"),
@@ -833,7 +833,7 @@ static void remmina_plugin_www_save_snapshot(GObject *object, GAsyncResult *resu
g_strdup_printf("%f", g_date_time_get_seconds(date)));
g_date_time_unref(date);
pngname = g_string_free(pngstr, FALSE);
- remmina_plugin_service->_debug("Saving screenshot as %s", pngname);
+ remmina_plugin_debug("Saving screenshot as %s", pngname);
cairo_surface_write_to_png(surface, pngname);
if (g_file_test(pngname, G_FILE_TEST_EXISTS))
diff --git a/plugins/www/www_plugin.h b/plugins/www/www_plugin.h
index c99298b17..bfa8a4b0f 100644
--- a/plugins/www/www_plugin.h
+++ b/plugins/www/www_plugin.h
@@ -47,6 +47,9 @@ typedef enum {
WWW_WEB_VIEW_DOCUMENT_OTHER
} WWWWebViewDocumentType;
+extern RemminaPluginService *remmina_plugin_service;
+#define remmina_plugin_debug(fmt, ...) remmina_plugin_service->_remmina_debug(__func__, fmt __VA_OPT__(,) __VA_ARGS__)
+
G_BEGIN_DECLS
void remmina_plugin_www_decide_nav(WebKitPolicyDecision *decision, RemminaProtocolWidget *gp);
diff --git a/src/include/remmina/plugin.h b/src/include/remmina/plugin.h
index 1b6c19a48..4886374da 100644
--- a/src/include/remmina/plugin.h
+++ b/src/include/remmina/plugin.h
@@ -211,7 +211,7 @@ typedef struct _RemminaPluginService {
gboolean (*pref_get_ssh_parseconfig)(void);
guint (*pref_keymap_get_keyval)(const gchar *keymap, guint keyval);
- void (*_debug)(const gchar *fmt, ...);
+ void (*_remmina_debug)(const gchar *func, const gchar *fmt, ...);
void (*log_print)(const gchar *text);
void (*log_printf)(const gchar *fmt, ...);