/mandos/release

To get this branch, use:
bzr branch http://bzr.recompile.se/loggerhead/mandos/release

« back to all changes in this revision

Viewing changes to mandos-monitor

  • Committer: Teddy Hogeborn
  • Date: 2017-09-03 08:26:36 UTC
  • mto: (237.7.594 trunk)
  • mto: This revision was merged to the branch mainline in revision 362.
  • Revision ID: teddy@recompile.se-20170903082636-fo3qw1uoahjxw0by
Fix memory leak in plymouth plugin

* plugins.d/plymouth.c (getargv): Change return type to non-const.
  (main/plymouth_args): Change type to non-const and default to NULL.
  (main): Don't change plymouthd_argv, instead conditionally use it if
  it is allocated or use plymouthd_default_argv if not.
  (main): Free plymouthd_argv, if allocated.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
#!/usr/bin/python3 -bb
 
1
#!/usr/bin/python
2
2
# -*- mode: python; coding: utf-8 -*-
3
3
#
4
4
# Mandos Monitor - Control and monitor the Mandos server
5
5
#
6
 
# Copyright © 2009-2019 Teddy Hogeborn
7
 
# Copyright © 2009-2019 Björn Påhlsson
 
6
# Copyright © 2009-2017 Teddy Hogeborn
 
7
# Copyright © 2009-2017 Björn Påhlsson
8
8
#
9
9
# This file is part of Mandos.
10
10
#
33
33
 
34
34
import sys
35
35
import os
36
 
import warnings
 
36
 
37
37
import datetime
38
38
 
39
39
import urwid.curses_display
59
59
domain = 'se.recompile'
60
60
server_interface = domain + '.Mandos'
61
61
client_interface = domain + '.Mandos.Client'
62
 
version = "1.8.8"
 
62
version = "1.7.16"
63
63
 
64
64
try:
65
65
    dbus.OBJECT_MANAGER_IFACE
444
444
        self.clients_dict = {}
445
445
 
446
446
        # We will add Text widgets to this list
447
 
        self.log = urwid.SimpleListWalker([])
 
447
        self.log = []
448
448
        self.max_log_length = max_log_length
449
449
 
450
450
        self.log_level = log_level
503
503
        if self.max_log_length:
504
504
            if len(self.log) > self.max_log_length:
505
505
                del self.log[0:len(self.log)-self.max_log_length-1]
506
 
        self.logbox.set_focus(len(self.logbox.body.contents)-1,
 
506
        self.logbox.set_focus(len(self.logbox.body.contents),
507
507
                              coming_from="above")
508
508
        self.refresh()
509
509
 
628
628
                            path=path)
629
629
 
630
630
        self.refresh()
631
 
        self._input_callback_tag = (
632
 
            GLib.io_add_watch(
633
 
                GLib.IOChannel.unix_new(sys.stdin.fileno()),
634
 
                GLib.PRIORITY_DEFAULT, GLib.IO_IN,
635
 
                self.process_input))
 
631
        self._input_callback_tag = (GLib.io_add_watch
 
632
                                    (sys.stdin.fileno(),
 
633
                                     GLib.IO_IN,
 
634
                                     self.process_input))
636
635
        self.main_loop.run()
637
636
        # Main loop has finished, we should close everything now
638
637
        GLib.source_remove(self._input_callback_tag)
639
 
        with warnings.catch_warnings():
640
 
            warnings.simplefilter("ignore", BytesWarning)
641
 
            self.screen.stop()
 
638
        self.screen.stop()
642
639
 
643
640
    def stop(self):
644
641
        self.main_loop.quit()