Remmina - The GTK+ Remote Desktop Client  v1.4.25
Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks. Remmina supports multiple network protocols in an integrated and consistent user interface. Currently RDP, VNC, NX, XDMCP and SSH are supported.
remmina_plugin_python_protocol_widget.c File Reference

Implementation of the Protocol Widget API. More...

Go to the source code of this file.

Functions

static PyObject * protocol_widget_get_viewport (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_get_width (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_set_width (PyRemminaProtocolWidget *self, PyObject *var_width)
 
static PyObject * protocol_widget_get_height (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_set_height (PyRemminaProtocolWidget *self, PyObject *var_height)
 
static PyObject * protocol_widget_get_current_scale_mode (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_get_expand (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_set_expand (PyRemminaProtocolWidget *self, PyObject *var_expand)
 
static PyObject * protocol_widget_has_error (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_set_error (PyRemminaProtocolWidget *self, PyObject *var_msg)
 
static PyObject * protocol_widget_is_closed (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_get_file (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_emit_signal (PyRemminaProtocolWidget *self, PyObject *var_signal)
 
static PyObject * protocol_widget_register_hostkey (PyRemminaProtocolWidget *self, PyObject *var_widget)
 
static PyObject * protocol_widget_start_direct_tunnel (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_start_reverse_tunnel (PyRemminaProtocolWidget *self, PyObject *var_local_port)
 
static PyObject * protocol_widget_start_xport_tunnel (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_set_display (PyRemminaProtocolWidget *self, PyObject *var_display)
 
static PyObject * protocol_widget_signal_connection_closed (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_signal_connection_opened (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_update_align (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_unlock_dynres (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_desktop_resize (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_panel_new_certificate (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_panel_changed_certificate (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_get_username (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_get_password (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_get_domain (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_get_savepassword (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_panel_authx509 (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_get_cacert (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_get_cacrl (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_get_clientcert (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_get_clientkey (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_save_cred (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_panel_show_listen (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_panel_show_retry (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_panel_show (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_panel_hide (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_ssh_exec (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_chat_open (PyRemminaProtocolWidget *self, PyObject *var_name)
 
static PyObject * protocol_widget_chat_close (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_chat_receive (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * protocol_widget_send_keys_signals (PyRemminaProtocolWidget *self, PyObject *args)
 
static PyObject * python_protocol_feature_new (PyTypeObject *type, PyObject *kws, PyObject *args)
 
static int python_protocol_feature_init (PyObject *self, PyObject *args, PyObject *kwds)
 
PyRemminaProtocolWidgetremmina_plugin_python_protocol_widget_create (void)
 Creates a new instance of PyRemminaProtocolWidget and initializes its fields. More...
 
void remmina_plugin_python_protocol_widget_init (void)
 Initializes the widget backend of the protocol plugin implementation. More...
 
void remmina_plugin_python_protocol_widget_type_ready (void)
 Initializes Python types used for protocol widgets. More...
 
static gboolean xport_tunnel_init (RemminaProtocolWidget *gp, gint remotedisplay, const gchar *server, gint port)
 
static void _on_send_callback_wrapper (RemminaProtocolWidget *gp, const gchar *text)
 
static void _on_destroy_callback_wrapper (RemminaProtocolWidget *gp)
 

Variables

static struct PyMethodDef python_protocol_widget_type_methods []
 
static PyTypeObject python_protocol_widget_type
 

Detailed Description

Implementation of the Protocol Widget API.

Author
Mathias Winterhalter
Date
19.11.2020

The RemminaPluginService provides an API for plugins to interact with Remmina. The module called 'remmina' forwards this interface to make it accessible for Python scripts.

This is an example of a minimal protocol plugin:

import remmina
class MyProtocol:
def __init__(self):
self.name = "MyProtocol"
self.description = "Example protocol plugin to explain how Python plugins work."
self.version = "0.1"
self.icon_name = ""
self.icon_name_ssh = ""
def init(self, handle):
print("This is getting logged to the standard output of Remmina.")
remmina.log_print("For debugging purposes it would be better to log the output to the %s window %s!" % ("debug", ":)"))
self.init_your_stuff(handle)
def open_connection(self, handle):
if not self.connect():
remmina.log_print("Error! Can not connect...")
return False
remmina.remmina_signal_connected(handle)
remmina.log_print("Connection established!")
return True
def close_connection(self, handle):
self.disconnect()
return True
plugin = MyProtocol()
remmina.register_plugin(plugin)
See also
http://www.remmina.org/wp for more information.

Definition in file remmina_plugin_python_protocol_widget.c.

Function Documentation

◆ _on_destroy_callback_wrapper()

static void _on_destroy_callback_wrapper ( RemminaProtocolWidget gp)
static

Definition at line 766 of file remmina_plugin_python_protocol_widget.c.

◆ _on_send_callback_wrapper()

static void _on_send_callback_wrapper ( RemminaProtocolWidget gp,
const gchar *  text 
)
static

Definition at line 760 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_chat_close()

static PyObject * protocol_widget_chat_close ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 790 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_chat_open()

static PyObject * protocol_widget_chat_open ( PyRemminaProtocolWidget self,
PyObject *  var_name 
)
static

Definition at line 772 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_chat_receive()

static PyObject * protocol_widget_chat_receive ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 799 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_desktop_resize()

static PyObject * protocol_widget_desktop_resize ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 570 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_emit_signal()

static PyObject * protocol_widget_emit_signal ( PyRemminaProtocolWidget self,
PyObject *  var_signal 
)
static

Definition at line 413 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_cacert()

static PyObject * protocol_widget_get_cacert ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 655 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_cacrl()

static PyObject * protocol_widget_get_cacrl ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 663 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_clientcert()

static PyObject * protocol_widget_get_clientcert ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 671 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_clientkey()

static PyObject * protocol_widget_get_clientkey ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 679 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_current_scale_mode()

static PyObject * protocol_widget_get_current_scale_mode ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 327 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_domain()

static PyObject * protocol_widget_get_domain ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 631 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_expand()

static PyObject * protocol_widget_get_expand ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 335 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_file()

static PyObject * protocol_widget_get_file ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 404 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_height()

static PyObject * protocol_widget_get_height ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 296 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_password()

static PyObject * protocol_widget_get_password ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 623 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_savepassword()

static PyObject * protocol_widget_get_savepassword ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 639 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_username()

static PyObject * protocol_widget_get_username ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 615 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_viewport()

static PyObject * protocol_widget_get_viewport ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 258 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_get_width()

static PyObject * protocol_widget_get_width ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 265 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_has_error()

static PyObject * protocol_widget_has_error ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 365 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_is_closed()

static PyObject * protocol_widget_is_closed ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 396 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_panel_authx509()

static PyObject * protocol_widget_panel_authx509 ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 647 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_panel_changed_certificate()

static PyObject * protocol_widget_panel_changed_certificate ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 597 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_panel_hide()

static PyObject * protocol_widget_panel_hide ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 732 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_panel_new_certificate()

static PyObject * protocol_widget_panel_new_certificate ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 579 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_panel_show()

static PyObject * protocol_widget_panel_show ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 723 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_panel_show_listen()

static PyObject * protocol_widget_panel_show_listen ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 696 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_panel_show_retry()

static PyObject * protocol_widget_panel_show_retry ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 714 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_register_hostkey()

static PyObject * protocol_widget_register_hostkey ( PyRemminaProtocolWidget self,
PyObject *  var_widget 
)
static

Definition at line 435 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_save_cred()

static PyObject * protocol_widget_save_cred ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 687 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_send_keys_signals()

static PyObject * protocol_widget_send_keys_signals ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 818 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_set_display()

static PyObject * protocol_widget_set_display ( PyRemminaProtocolWidget self,
PyObject *  var_display 
)
static

Definition at line 512 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_set_error()

static PyObject * protocol_widget_set_error ( PyRemminaProtocolWidget self,
PyObject *  var_msg 
)
static

Definition at line 373 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_set_expand()

static PyObject * protocol_widget_set_expand ( PyRemminaProtocolWidget self,
PyObject *  var_expand 
)
static

Definition at line 343 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_set_height()

static PyObject * protocol_widget_set_height ( PyRemminaProtocolWidget self,
PyObject *  var_height 
)
static

Definition at line 304 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_set_width()

static PyObject * protocol_widget_set_width ( PyRemminaProtocolWidget self,
PyObject *  var_width 
)
static

Definition at line 273 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_signal_connection_closed()

static PyObject * protocol_widget_signal_connection_closed ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 534 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_signal_connection_opened()

static PyObject * protocol_widget_signal_connection_opened ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 543 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_ssh_exec()

static PyObject * protocol_widget_ssh_exec ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 741 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_start_direct_tunnel()

static PyObject * protocol_widget_start_direct_tunnel ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 451 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_start_reverse_tunnel()

static PyObject * protocol_widget_start_reverse_tunnel ( PyRemminaProtocolWidget self,
PyObject *  var_local_port 
)
static

Definition at line 476 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_start_xport_tunnel()

static PyObject * protocol_widget_start_xport_tunnel ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 504 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_unlock_dynres()

static PyObject * protocol_widget_unlock_dynres ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 561 of file remmina_plugin_python_protocol_widget.c.

◆ protocol_widget_update_align()

static PyObject * protocol_widget_update_align ( PyRemminaProtocolWidget self,
PyObject *  args 
)
static

Definition at line 552 of file remmina_plugin_python_protocol_widget.c.

◆ python_protocol_feature_init()

static int python_protocol_feature_init ( PyObject *  self,
PyObject *  args,
PyObject *  kwds 
)
static

Definition at line 213 of file remmina_plugin_python_protocol_widget.c.

◆ python_protocol_feature_new()

static PyObject* python_protocol_feature_new ( PyTypeObject *  type,
PyObject *  kws,
PyObject *  args 
)
static

Definition at line 200 of file remmina_plugin_python_protocol_widget.c.

◆ remmina_plugin_python_protocol_widget_create()

PyRemminaProtocolWidget* remmina_plugin_python_protocol_widget_create ( void  )

Creates a new instance of PyRemminaProtocolWidget and initializes its fields.

Definition at line 230 of file remmina_plugin_python_protocol_widget.c.

◆ remmina_plugin_python_protocol_widget_init()

void remmina_plugin_python_protocol_widget_init ( void  )

Initializes the widget backend of the protocol plugin implementation.

Definition at line 243 of file remmina_plugin_python_protocol_widget.c.

◆ remmina_plugin_python_protocol_widget_type_ready()

void remmina_plugin_python_protocol_widget_type_ready ( void  )

Initializes Python types used for protocol widgets.

Definition at line 248 of file remmina_plugin_python_protocol_widget.c.

◆ xport_tunnel_init()

static gboolean xport_tunnel_init ( RemminaProtocolWidget gp,
gint  remotedisplay,
const gchar *  server,
gint  port 
)
static

Definition at line 496 of file remmina_plugin_python_protocol_widget.c.

Variable Documentation

◆ python_protocol_widget_type

PyTypeObject python_protocol_widget_type
static
Initial value:
= {
PyVarObject_HEAD_INIT(NULL, 0)
.tp_name = "remmina.RemminaProtocolWidget",
.tp_doc = "RemminaProtocolWidget",
.tp_basicsize = sizeof(PyRemminaProtocolWidget),
.tp_itemsize = 0,
.tp_flags = Py_TPFLAGS_DEFAULT,
}
static PyObject * python_protocol_feature_new(PyTypeObject *type, PyObject *kws, PyObject *args)
static struct PyMethodDef python_protocol_widget_type_methods[]
The Python abstraction of the protocol widget struct.
static int python_protocol_feature_init(PyObject *self, PyObject *args, PyObject *kwds)

Definition at line 218 of file remmina_plugin_python_protocol_widget.c.

◆ python_protocol_widget_type_methods

struct PyMethodDef python_protocol_widget_type_methods[]
static

Definition at line 148 of file remmina_plugin_python_protocol_widget.c.