Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
def _process_gibberish(self, packet):
[_, data] = packet
self.emit("received-gibberish", data)
_packet_handlers = {
"hello": _process_hello,
"new-window": _process_new_window,
"new-override-redirect": _process_new_override_redirect,
"draw": _process_draw,
"window-metadata": _process_window_metadata,
"configure-override-redirect": _process_configure_override_redirect,
"lost-window": _process_lost_window,
# "clipboard-*" packets are handled by a special case below.
Protocol.CONNECTION_LOST: _process_connection_lost,
Protocol.GIBBERISH: _process_gibberish,
}
def process_packet(self, proto, packet):
packet_type = packet[0]
if (isinstance(packet_type, str)
and packet_type.startswith("clipboard-")):
self._clipboard_helper.process_clipboard_packet(packet)
else:
self._packet_handlers[packet_type](self, packet)
gobject.type_register(XpraClient)
"jpeg-quality": _process_jpeg_quality,
"damage-sequence": _process_damage_sequence,
"buffer-refresh": _process_buffer_refresh,
"screenshot": _process_screenshot,
"desktop_size": _process_desktop_size,
"encoding": _process_encoding,
"ping": _process_ping,
"ping_echo": _process_ping_echo,
"set_deflate": _process_set_deflate,
"set-cursors": _process_set_cursors,
"set-notify": _process_set_notify,
"set-bell": _process_set_bell,
"disconnect": _process_disconnect,
# "clipboard-*" packets are handled below:
Protocol.CONNECTION_LOST: _process_connection_lost,
Protocol.GIBBERISH: _process_gibberish,
}
def process_packet(self, proto, packet):
packet_type = packet[0]
assert isinstance(packet_type, str)
if packet_type.startswith("clipboard-"):
if self.clipboard_enabled:
self._clipboard_helper.process_clipboard_packet(packet)
return
if proto is self._protocol:
handlers = self._authenticated_packet_handlers
else:
handlers = self._default_packet_handlers
handler = handlers.get(packet_type)
if not handler:
log.error("unknown or invalid packet type: %s", packet_type)
def _new_connection(self, listener, *args):
log.info("New connection received")
sock, addr = listener.accept()
self._potential_protocols.append(Protocol(sock, sock,
self.process_packet))
return True
def ready(self, conn):
log.debug("ready(%s)", conn)
self._protocol = Protocol(conn, self.process_packet)
self._protocol.set_compression_level(self.compression_level)
ClientSource(self._protocol)
self._protocol.start()
def init_packet_handlers(self):
self._packet_handlers = {
"challenge": self._process_challenge,
"disconnect": self._process_disconnect,
"hello": self._process_hello,
"set_deflate": self._process_set_deflate,
Protocol.CONNECTION_LOST: self._process_connection_lost,
Protocol.GIBBERISH: self._process_gibberish,
}
def ready(self, conn):
log.debug("ready(%s)", conn)
self._protocol = Protocol(conn, self.process_packet)
ClientSource(self._protocol)
self._protocol.start()
def init_packet_handlers(self):
self._packet_handlers = {
"challenge": self._process_challenge,
"disconnect": self._process_disconnect,
"hello": self._process_hello,
"set_deflate": self._process_set_deflate,
Protocol.CONNECTION_LOST: self._process_connection_lost,
Protocol.GIBBERISH: self._process_gibberish,
}
"shutdown-server": _process_shutdown_server,
"jpeg-quality": _process_jpeg_quality,
"damage-sequence": _process_damage_sequence,
"buffer-refresh": _process_buffer_refresh,
"screenshot": _process_screenshot,
"desktop_size": _process_desktop_size,
"encoding": _process_encoding,
"ping": _process_ping,
"ping_echo": _process_ping_echo,
"set_deflate": _process_set_deflate,
"set-cursors": _process_set_cursors,
"set-notify": _process_set_notify,
"set-bell": _process_set_bell,
"disconnect": _process_disconnect,
# "clipboard-*" packets are handled below:
Protocol.CONNECTION_LOST: _process_connection_lost,
Protocol.GIBBERISH: _process_gibberish,
}
def process_packet(self, proto, packet):
packet_type = packet[0]
assert isinstance(packet_type, str) or isinstance(packet_type, unicode), "packet_type is not a string: %s" % type(packet_type)
if packet_type.startswith("clipboard-"):
if self.clipboard_enabled:
self._clipboard_helper.process_clipboard_packet(packet)
return
if proto is self._protocol:
handlers = self._authenticated_packet_handlers
else:
handlers = self._default_packet_handlers
handler = handlers.get(packet_type)
if not handler:
def init_packet_handlers(self):
log("initializing packet handlers")
self._default_packet_handlers = {
"hello": self._process_hello,
Protocol.CONNECTION_LOST: self._process_connection_lost,
Protocol.GIBBERISH: self._process_gibberish,
}
self._authenticated_packet_handlers = {
"set-clipboard-enabled": self._process_clipboard_enabled_status,
"set-keyboard-sync-enabled": self._process_keyboard_sync_enabled_status,
"damage-sequence": self._process_damage_sequence,
"ping": self._process_ping,
"ping_echo": self._process_ping_echo,
"set-cursors": self._process_set_cursors,
"set-notify": self._process_set_notify,
"set-bell": self._process_set_bell,
}
self._authenticated_ui_packet_handlers = self._default_packet_handlers.copy()
self._authenticated_ui_packet_handlers.update({
#windows:
"map-window": self._process_map_window,
def init_packet_handlers(self):
self._packet_handlers = {
"challenge": self._process_challenge,
"disconnect": self._process_disconnect,
"hello": self._process_hello,
"set_deflate": self._process_set_deflate,
Protocol.CONNECTION_LOST: self._process_connection_lost,
Protocol.GIBBERISH: self._process_gibberish,
}