
    Gkc                     j    d Z dZddlmZ ddlmZ ddlmZ  G d de          Z G d	 d
e          Z	dS )z%Copyright (c) 2012 Yaroslav HalchenkoGPL    )Lock   )Jail)Actionsc                       e Zd Zd ZdS )DummyActionsc                 *    |                                  S N)_Actions__checkBanselfs    :/usr/lib/python3/dist-packages/fail2ban/tests/dummyjail.pycheckBanzDummyActions.checkBan    s    		 	 	"	""    N)__name__
__module____qualname__r    r   r   r	   r	      s#        # # # # #r   r	   c                        e Zd ZdZd fd	Zd Zd Zd Zed             Z	d Z
d	 Zed
             Zej        d             Zed             Zd Z xZS )	DummyJailzBA simple 'jail' to suck in all the tickets generated by Filter's
	Nc                     t                      | _        g | _        t          t          |                               ||           t          |           | _        d S )N)namebackend)r   lockqueuesuperr   __init__r	   _DummyJail__actions)r   r   r   	__class__s      r   r   zDummyJail.__init__'   sK    ff$)$*	4!!tW!===%%$...r   c                 l    | j         5  t          | j                  cd d d            S # 1 swxY w Y   d S r   )r   lenr   r   s    r   __len__zDummyJail.__len__-   sy    y  
dj//                    )--c                 T    | j         5  | j         cd d d            S # 1 swxY w Y   d S r   )r   r   r   s    r   isEmptyzDummyJail.isEmpty1   su    y  j.                 s   !!c                 l    | j         5  t          | j                  cd d d            S # 1 swxY w Y   d S r   )r   boolr   r   s    r   isFilledzDummyJail.isFilled5   s{    y  
tz

                 r$   c                 *    t          | j                  S r   )r(   r   r   s    r   hasFailTicketszDummyJail.hasFailTickets9   s    	dj		r   c                 z    | j         5  | j                            |           d d d            d S # 1 swxY w Y   d S r   )r   r   append)r   tickets     r   putFailTicketzDummyJail.putFailTicket=   s    y  :V                 s   044c                     | j         5  	 | j                                        cd d d            S # t          $ r Y d d d            dS w xY w# 1 swxY w Y   d S NF)r   r   pop
IndexErrorr   s    r   getFailTicketzDummyJail.getFailTicketA   s    y  :>>           	                s+   A/
AAAAAAc                     dS r1   r   r   s    r   idlezDummyJail.idleH   s    	r   c                     d S r   r   )r   values     r   r6   zDummyJail.idleL   s    $r   c                     | j         S r   )r   r   s    r   actionszDummyJail.actionsP   s
    	r   c                     dS )NTr   r   s    r   isAlivezDummyJail.isAliveT   s    	r   )r   N)r   r   r   __doc__r   r#   r&   r)   propertyr+   r/   r4   r6   setterr:   r<   __classcell__)r    s   @r   r   r   $   s        & & & & & &         (       ( +  +   (      r   r   N)
__copyright____license__	threadingr   server.jailr   server.actionsr   r	   r   r   r   r   <module>rF      s   , 8             $ $ $ $ $ $# # # # #7 # # #
1 1 1 1 1 1 1 1 1 1r   