403Webshell
Server IP : 185.11.201.71  /  Your IP : 192.168.7.18
Web Server : Apache/2.4.29 (Ubuntu)
System : Linux tech-virtual-machine 4.15.0-213-generic #224-Ubuntu SMP Mon Jun 19 13:30:12 UTC 2023 x86_64
User : tech ( 1000)
PHP Version : 7.4.28
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
MySQL : OFF  |  cURL : OFF  |  WGET : ON  |  Perl : ON  |  Python : ON  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/share/apport/package-hooks/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/share/apport/package-hooks/source_network-manager.py
'''Apport package hook for Network Manager

(c) 2008 Canonical Ltd.
Contributors:
Matt Zimmerman <mdz@canonical.com>
Martin Pitt <martin.pitt@canonical.com>
Mathieu Trudel-Lapierre <mathieu.trudel-lapierre@canonical.com>
Thomas Bechtold <thomasbechtold@jpberlin.de>

This program is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 2 of the License, or (at your
option) any later version.  See http://www.gnu.org/copyleft/gpl.html for
the full text of the license.
'''

import os
import subprocess
from apport.hookutils import *

def _network_interfaces():
    interfaces = []
    output = command_output(['ls', '-1', '/sys/class/net'])
    for device in output.split('\n'):
       interfaces.append(device)

    return interfaces

def _device_details(device):
    details = command_output(['udevadm', 'info', '--query=all', '--path', '/sys/class/net/%s' % device])

    # add the only extra thing of use from hal we don't get from udev.
    details = details + "\nX: INTERFACE_MAC="
    details = details + command_output(['cat', '/sys/class/net/%s/address' % device])
    return details

def add_info(report, ui=None):
    attach_network(report)
    attach_wifi(report)

    #this is the old config file (still read by NM if available)
    attach_file_if_exists(report, '/etc/NetworkManager/nm-system-settings.conf', 'nm-system-settings.conf')

    #the new default config file
    attach_file_if_exists(report, '/etc/NetworkManager/NetworkManager.conf', 'NetworkManager.conf')

    # attach NetworkManager.state: it gives us good hints in rfkill-related bugs.
    attach_file_if_exists(report, '/var/lib/NetworkManager/NetworkManager.state', 'NetworkManager.state')

    for interface in _network_interfaces():
        key = 'NetDevice.%s' % interface
        report[key] = _device_details(interface)

    interesting_modules = { 'ndiswrapper' : 'driver-ndiswrapper',
                            'ath_hal' : 'driver-madwifi',
                            'b44' : 'driver-b44' }
    interesting_modules_loaded = []
    tags = []
    for line in open('/proc/modules'):
        module = line.split()[0]
        if module in interesting_modules:
            tags.append(interesting_modules[module])
            interesting_modules_loaded.append(module)

    if interesting_modules_loaded:
        report['InterestingModules'] = ' '.join(interesting_modules_loaded)
        report.setdefault('Tags', '')
        report['Tags'] += ' ' + ' '.join(tags)

    #add output of nmcli
    report['nmcli-nm'] = command_output(['nmcli', '-f', 'all', 'gen'])
    report['nmcli-dev'] = command_output(['nmcli', '-f', 'all', 'dev'])
    report['nmcli-con'] = command_output(['nmcli', '-f', 'all', 'con'])


## Only for debugging ##
if __name__ == '__main__':
    report = {}
    report['CrashDB'] = 'ubuntu'
    add_info(report, None)
    for key in report:
        print('%s: %s' % (key, report[key]))

Youez - 2016 - github.com/yon3zu
LinuXploit