<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
3
Yj                 @   s   d gZ ddlZddlZddlmZmZ eejd< ddlZddlZddl	Zddl
ZddlmZ ddlmZ ddlmZ dd	 Zd
d Zddd ZdS )
run_server    N)GObjectGLibZgobject)config)log)	FirewallDc             C   s   | j   dS )NT)reload)service r
   /usr/lib/python3.6/server.pysighup4   s    r   c             C   s   | j   d S )N)quit)mainloopr
   r
   r   sigterm8   s    r   Fc                sx  d}| rFddl m ddl  j   j j d fddytjjj	dd tj
 }tjjtjj|d	}t|tjj}tj }tjjj| | rtj ttd
rtj}ntj}|tjtjt| |tjtjt| |j  W nv t k
r   t!j"d Y nX t#k
r,   t!j$d Y n: t%k
rd } zt!j$d|j&j't(| W Y dd}~X nX |rt|j)  dS )zI Main function for firewall server. Handles D-Bus and GLib mainloop.
    Nr   )pformat
   c                 sr    j   t jdkrbtd tdt j  x( jD ]} tt| d t|  q8W td tj d S )Nr   zP
>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
zGARBAGE OBJECTS (%d):
z
  zP
<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
)ZcollectlenZgarbageprinttyper   timeout_add_seconds)x)gc
gc_collect
gc_timeoutr   r
   r   r   L   s    zrun_server.<locals>.gc_collectT)Zset_as_default)busunix_signal_addz
Stopping..z Raising SystemExit in run_serverzException %s: %s)*pprintr   r   enableZ	set_debugZ
DEBUG_LEAKdbusr   ZglibZDBusGMainLoopZ	SystemBusr	   ZBusNamer   ZDBUS_INTERFACEr   Z	DBUS_PATHr   ZMainLoopslipZset_mainloopr   hasattrr   Zunix_signal_add_fullZPRIORITY_HIGHsignalSIGHUPr   SIGTERMr   ZrunKeyboardInterruptr   Zdebug1
SystemExiterror	Exception	__class____name__strstop)Zdebug_gcr	   r   namer   r   er
   )r   r   r   r   r   r   A   sB    


()F)__all__sysr!   Zgi.repositoryr   r   modulesr   Zdbus.serviceZdbus.mainloop.glibZ	slip.dbusr   Zfirewallr   Zfirewall.core.loggerr   Zfirewall.server.firewalldr   r   r   r   r
   r
   r
   r   <module>   s   
	